Სარჩევი:

რობოტული ძაფის დისპენსერი არდუინოსთვის: 8 ნაბიჯი (სურათებით)
რობოტული ძაფის დისპენსერი არდუინოსთვის: 8 ნაბიჯი (სურათებით)

ვიდეო: რობოტული ძაფის დისპენსერი არდუინოსთვის: 8 ნაბიჯი (სურათებით)

ვიდეო: რობოტული ძაფის დისპენსერი არდუინოსთვის: 8 ნაბიჯი (სურათებით)
ვიდეო: როგორ კეთდება აბრეშუმის ძაფი | Making of silk 2024, ივლისი
Anonim
Image
Image

რატომ მოტორიზებული ინსტრუმენტი

3D პრინტერის ძაფები - ჩვეულებრივ თითქმის მყარი - იჭრება ექსტრუდერით, ხოლო როლი მოთავსებულია პრინტერთან ახლოს, თავისუფლად ბრუნავს. მე შევამჩნიე მნიშვნელოვანი განსხვავებები მატერიალურ ქცევებში გამოყენების დონიდან გამომდინარე, 1 კგ ძაფის რულონებად მოხსენიებული. ახალი (სრული) ძაფის ბოჭკო მიედინება თითქმის კარგად, მაგრამ ექსტრუდის მიერ გამოყენებული ძალა უნდა იყოს შედარებით აქტუალური: წონა მინიმუმ 1.5 კგ.

ექსტრუდერის ძრავა (უმეტეს შემთხვევაში Nema17 სტეპერი) აქვს საკმარისი ძალა სამუშაოს შესასრულებლად, მაგრამ ექსტრუდერის ორი სიჩქარე ძაფს უბიძგებს ძაფის ბოლომდე მუშაობისას, როდესაც აგროვებს ძაფის ნაწილაკებს გამოყენებული ძალების გამო; ეს მოითხოვს ექსტრუდერის ხშირ მოვლას, რათა თავიდან აიცილოთ საქშენების ჩაკეტვა. ეს ნაწილაკები, როგორც წესი, იშლება და აირია სუფთა ძაფს კვების დროს, ზრდის საქშენების პრობლემებს და უფრო ხშირად ხდის საქშენს; ეს ხდება უფრო ხშირად 0.3 მმ დიამეტრის საქშენებით.

როდესაც ძაფის ბორბალი ნახევრად გამოიყენება ან მეტი, მისი სპირალები მცირდება და ზოგიერთ გარემო პირობებში ძაფები ძალიან ხშირად იშლება. გრძელი ბეჭდვის სამუშაოები ხდება ნაკლებად საიმედო და სტრესული; მე არ შემიძლია პრინტერი მარტო დავტოვო მთელი ღამე მისი კონტროლის გარეშე. ამრიგად ძრავის ფიგურების მიერ ძაფის კვების კონტროლი რიგი საკითხების გადაჭრით.

ნაკრები ხელმისაწვდომია Tindie.com– ზე

ნაბიჯი 1: ნაკრების შინაარსი

ნაკრების შინაარსი
ნაკრების შინაარსი
ნაკრების შინაარსი
ნაკრების შინაარსი

ნაკრები მოიცავს ყველა 3D ბეჭდვით ნაწილს და მექანიკას ძრავის ძრავის დისპენსერის ასაწყობად. სამაგიეროდ არის ორი დამატებითი ნაწილი: ძრავა და ძრავის კონტროლერის დაფა.

ჩემს კონფიგურაციაში მე გამოვიყენე 12 V McLennan გადაცემათა კოლოფიანი ძრავა, მაგრამ 37 მმ დიამეტრის ნებისმიერი ძრავა შეიძლება სათანადოდ მოთავსდეს ძრავის საყრდენში.

საუკეთესო სპექტაკლები მიიღწევა TLE94112LE Arduino ფარით Infineon– ით (სრული მიმოხილვა აქ); ამ DC საავტომობილო კონტროლერის დაფას შეუძლია ერთდროულად 6 სხვადასხვა რობოტული დისპენსერის ნაკრების მხარდაჭერა.

მე გამოვცადე მთელი სისტემა როგორც Arduino UNO R3- ზე, ასევე Arduino თავსებადი დაფაზე XMC1100 Boot ნაკრები Infineon– ით და სისტემა ძალიან კარგად რეაგირებდა ორივე მიკრო კონტროლერის დაფაზე.

TLE94112LE ფარის გამოყენება რეკომენდირებულია, მაგრამ არა არსებითი. ნებისმიერი DC ძრავის კონტროლერი Arduino– სთვის - თქვენივე პროექტის ჩათვლით! - შეუძლია კარგად იმუშაოს ამ ინსტრუმენტთან ერთად

ნაკრები დაყოფილია კომპონენტების ორ ნაწილად, რადგან ორი ნაწილი აგებულია ერთად მუშაობისთვის. ბაზის პლატფორმა, მხარს უჭერს ძაფის როლს, რომელიც ბრუნავს ოთხ თავისუფალ საჭეზე. ბაზა დაფიქსირებულია წონის სენსორზე მბრუნავი მექანიზმის გასაკონტროლებლად, რაც იწვევს მის გააქტიურებას, აგრეთვე ძაფის მდგომარეობის მონიტორინგს: წონა, მეტრი და პროცენტი. ბევრი ინფორმაცია, ისევე როგორც სრული ბრძანების ნაკრები Arduino– დან არის ხელმისაწვდომი სერიული ტერმინალის საშუალებით.

ინსტრუმენტები გჭირდებათ

შეკრების დასასრულებლად გჭირდებათ პლასტიკური წებო ზოგიერთი ნაწილისთვის, ხრახნიანი და ალენის ხრახნების ნაკრები.

ნაბიჯი 2: პროექტი და დიზაინი

პროექტი და დიზაინი
პროექტი და დიზაინი
პროექტი და დიზაინი
პროექტი და დიზაინი
პროექტი და დიზაინი
პროექტი და დიზაინი

ეს პროექტი არის 3D პრინტერის ძაფის დისპენსერის სერიის მესამე ევოლუცია. რამდენიმე ხნის წინ მე შევქმენი მბრუნავი ბაზა ძაფის ნაკადის ოპტიმიზაციისთვის, როდესაც ის იშლება 3D პრინტერის ექსტრუდერის მიერ.

მეორე მოდელი მოიცავდა წონის სენსორს Arduino დაფით ძაფის გამოყენების მონიტორინგისთვის. ეს ბოლო პროექტი მოიცავს ძაფის ავტომატურ გათავისუფლებას 3D პრინტერის სამუშაოს საჭიროებიდან გამომდინარე. იგი ემყარება წონის ვირტუალურ ცვალებადობას, როდესაც ექსტრუდერი იწყებს ძაფის მიზიდვას. ეს მოვლენა იწვევს მიკრო კონტროლერს წონის სენსორის საშუალებით და ძრავის ძრავის მოძრავი რულეტი იწყებს მასალის გამოშვებას, შემდეგ შენელდება და ჩერდება.

კომპონენტები ექსპორტირებულია STL ფორმატში და 3D ბეჭდვით, შემდეგ დახვეწილი და აწყობილი ერთად. მე შევქმენი პერსონალური მხარდაჭერა მოძრაობის ნაწილის ბაზაზე გასაზომად. უფრო გრძელი ალუმინის სარკინიგზო ხაზი ასევე გამოიყენებოდა არდუინოს და საავტომობილო ფარის მხარდასაჭერად, რათა მთელი ინსტრუმენტი კომპაქტური და მოსახერხებელი ყოფილიყო.

დიზაინის შექმნისას მივყევი ვარაუდების სერიას:

  • ავტომატიზირებული ძრავის გაკეთება თითქმის მარტივი და ადვილია რეპროდუცირებისთვის
  • შეძლებისდაგვარად შეამცირეთ არა-3D დასაბეჭდი კომპონენტების რაოდენობა მის შესაქმნელად
  • მაქსიმალურად შეამცირეთ სტრესი დაბეჭდვისას ექსტრუდერზე
  • გამოიყენეთ დაბალი ღირებულება და ადვილად დასაპროგრამებელი მიკრო კონტროლერის დაფა
  • გამოიყენეთ წონის დატვირთვის სენსორი, რათა გააკონტროლოთ ძაფის მოხმარება და ძაფის კვება მართეთ გარემოს ხმაური, რომელიც ერევა ძაფის წონის ზომებში

ეს არის შედეგი, რასაც მივაღწიე.

ნაბიჯი 3: ბაზის შეკრება

ბაზის შეკრება
ბაზის შეკრება
ბაზის შეკრება
ბაზის შეკრება
ბაზის შეკრება
ბაზის შეკრება

პირველი ნაბიჯი არის ბაზის აწყობა წონის სენსორით.

  1. ჩადეთ პატარა ტარების ღერძის მილი ტარების ხვრელში
  2. დააყენეთ ორი გამყოფი დისკი ტარების მხარეზე
  3. გააცანით კომპონენტები "U" ზომის ტარების საყრდენის შიგნით ხვრელების გასწორებაში
  4. ჩადეთ ალენის ხრახნი ერთ მხარეს, ხოლო სარეცხი და კაკალი მეორე მხარეს დახურეთ კაკალი ზედმეტი ძალისხმევის გარეშე

თქვენ უნდა გაიმეოროთ ოპერაცია ოთხივე ტარების საყრდენზე. შემდეგ შეამოწმეთ შეკრება: საკისრები თავისუფლად უნდა ბრუნავდეს.

ახლა ალენის ხრახნებით დააფიქსირეთ ოთხი საყრდენი საყრდენი ზედა ბაზაზე ოთხი მარეგულირებელი ხვრელით. გასწორეთ ტარების საყრდენები, რომ შეინარჩუნონ ისინი პარალელურად. დაარეგულირეთ მანძილი თქვენი ძაფის რულონების სიგანის მიხედვით.

შემდეგი ნაბიჯი არის წონის სენსორის ბარის შეკრება, რომელიც იკავებს ქვედა და ზედა ფუძეს ერთად. წონის სენსორს აქვს ორი განსხვავებული ალენის ხრახნი ორივე მხარეს და თქვენ უნდა მიმართოთ მას ისე, რომ მაქსიმალური წონის ეტიკეტი იკითხებოდეს, როდესაც ბაზა სწორად არის განლაგებული. ქვედა ბაზას აქვს ორი დამატებითი გვერდითი ხვრელი წონის სენსორის A/D გამაძლიერებლის დასაფიქსირებლად. HX711 IC- ზე დაფუძნებული გამაძლიერებელი იკვებება და შეუერთდება Arduino დაფას ოთხი მავთულის საშუალებით, როგორც ეს მოცემულია თანდართული სენსორის მონაცემების ფურცელში.

ბოლო ნაბიჯი არის სრული ზედა ბაზის შეკრება წონის სენსორზე, რომელიც უკვე დაფიქსირებულია ქვედა ნაწილზე.

პირველი კომპონენტი დაყენებულია!

ნაბიჯი 4: Spool მოძრავი ძრავის ნაწილების შეკრება

Spool Motion ძრავის ნაწილების აწყობა
Spool Motion ძრავის ნაწილების აწყობა
Spool Motion ძრავის ნაწილების აწყობა
Spool Motion ძრავის ნაწილების აწყობა
Spool Motion ძრავის ნაწილების აწყობა
Spool Motion ძრავის ნაწილების აწყობა

კოჭის მოძრაობის ძრავის აწყობის უადვილესი პროცედურაა ოთხი უმნიშვნელოვანესი კომპონენტის ცალკე შეკრება და საბოლოო შენობის დასრულება:

გადაცემული DC ძრავა საავტომობილო გადაცემის ყუთში

DC ძრავა უნდა იყოს დამონტაჟებული სტრუქტურის საყრდენის ცენტრალურ ნაწილში; ძრავის ხრახნამდე უნდა გადაწყვიტოთ რომელი იქნება თქვენთვის სასურველი მხარე, თუ სად უნდა მოათავსოთ გადაცემათა კოლოფი, რომ სწორად გაასწოროს ორი მკლავი, რომელიც ძრავას და მოძრავ დიდ მექანიზმს იტევს.

ამოძრავებული დიდი გადაცემათა კოლოფი

დიდი გადაცემათა კრახი უნდა იყოს ხრახნიანი კონუსური ბლოკით ოთხი ალენის ხრახნით. ეს გადაცემა დაბლოკილია მბრუნავ ღერძზე თხილით; კონუსური ნაწილი დაიკავებს ძაფის კოჭას, რომელიც მეორე მხარეს არის ჩაკეტილი მსგავსი საკეტი თხილით სხვა მოწყვეტილი კონუსური ბლოკის შიგნით. ეს ხსნარი არა მხოლოდ ატარებს მოძრავი მექანიზმს, არამედ მიმართავს მთელ წონას ბაზისკენ და ეს არის სისტემის ტარის წონა.

კოჭის საკეტის დამჭერი

ეს არის მოწყვეტილი კონუსური ბლოკი, რომელიც ამოძრავებულ მექანიზმთან ერთად ანალოგიურ საკეტს შეინარჩუნებს მოძრაობის მექანიზმს ძაფის კოჭასთან. ტაქტიკის თვალსაზრისით ეს არის ძაფის ბორბალი, რომელიც ასრულებს შენობას, ხოლო მოძრაობა ორი მხარის საყრდენი თავისუფალია გადაადგილება მეორე მხარეს.

როგორც სურათებშია ნაჩვენები, კოჭის საკეტის დამჭერი აგებულია ორ ნაწილად. ჯერ ჩადეთ M4 კაკალი ბლოკის უფრო დიდ ნაწილში, შემდეგ მეორე ნაწილი (საფარი) დააწებეთ ბლოკებს ერთად. კაკალი ჩაკეტილია საკეტის საყრდენის შიგნით, რომელიც ხრახნიანი იქნება ხრახნიანი ღერძით.

საკისრების ყუთი

ტარების ყუთს აქვს ორი ფუნქცია: უზრუნველყოს გადამცემი მექანიზმების კარგი მხარდაჭერა და გლუვი და ჩუმი მოძრაობა. ტარების ყუთის ასაწყობად მიჰყევით ამ მარტივ ნაბიჯებს:

  1. მიამაგრეთ პირველი M4 კაკალი ხრახნიანი კოჭის დამჭერი ღერძის ორი ბოლოდან ერთზე
  2. ჩადეთ პირველი საყრდენი
  3. ჩადეთ გამყოფი
  4. ჩადეთ მეორე საყრდენი
  5. ხრახნიანი მეორე კაკალი და დაბლოკეთ ზომიერად. შიდა პლასტიკური გამყოფი ეწინააღმდეგება საკმარის ძალას, რომ შეინარჩუნოს ნივთები ასევე დიდი ხნის განმავლობაში.
  6. ჩადეთ აწყობილი საკისრები ტარების ყუთში. ეს უნდა გაკეთდეს იძულებით უკეთესი შედეგის მისაღწევად, ასე რომ არ გააფართოვოთ ყუთის შიდა ნაწილი პლასტმასის ნაწილების დახვეწისას.

ჩვენ მზად ვართ კომპონენტების საბოლოო შეკრებისთვის!

ნაბიჯი 5: მოძრავი ძრავის შეკრების დასრულება

სრულდება მოძრავი ძრავის შეკრება
სრულდება მოძრავი ძრავის შეკრება
სრულდება მოძრავი ძრავის შეკრება
სრულდება მოძრავი ძრავის შეკრება
სრულდება მოძრავი ძრავის შეკრება
სრულდება მოძრავი ძრავის შეკრება

ჩვენ ვაპირებთ სტრუქტურის შეკრების დასრულებას, შემდეგ შეგვიძლია გადავიდეთ მოძრაობის შესამოწმებლად. ახლა თქვენ კვლავ გჭირდებათ რამდენიმე წებო. საყრდენი ყუთი - აწყობილი წინა საფეხურზე - უნდა ჩასვათ ყუთის საყრდენის ხვრელში ორი მკლავის ძრავის საყრდენის და, შესაძლოა, წებოვანი იყოს ყუთის საფარის ხრახნამდე.

გაფრთხილება: არ დააწებოთ ყუთის საფარი, მხოლოდ გაახუროთ იგი. საფარი მნიშვნელოვანია მტვრის დაცვისთვის და უნდა მოიხსნას ნებისმიერი შემდგომი მოვლის ოპერაციისთვის.

როდესაც ეს დაყენება დასრულებულია ამოძრავებული მექანიზმის (უფრო დიდი) დამატებამდე დაამატეთ მცირე გამყოფი რგოლი: ის ინარჩუნებს დიდ გადაცემათა კოლოფს საავტომობილო გადაცემათა კოლოფთან, რომელიც მოქმედებს როგორც სარეცხი მანქანა ამოძრავებს მოძრავი ასამბლეის დასაფიქსირებლად.

შემდეგ ჩადეთ მძღოლის მექანიზმი (პატარა) ძრავის ლილვში. გაითვალისწინეთ, რომ არის ძრავის ბრტყელი მხარე ასევე გადაცემათა კოლოფის ცენტრალურ ხვრელში, რომ გადააადგილოთ გადაცემათა კოლოფი DC ძრავით.

ბოლო ნაბიჯი, ჩასვით დიდი ამოძრავებული მექანიზმი, როგორც ნაჩვენებია სურათებში და ჩაკეტეთ იგი ხრახნიანი ღერძით ორი M4 კაკლით.

მექანიკის შენობა დასრულებულია!

ნაბიჯი 6: ბონუსი: როგორ გამოვიყენე მხარდაჭერა ნაკრების მართვისთვის

ბონუსი: როგორ დავაყენე მხარდაჭერა ნაკრების მართვისთვის
ბონუსი: როგორ დავაყენე მხარდაჭერა ნაკრების მართვისთვის
ბონუსი: როგორ დავაყენე მხარდაჭერა ნაკრების მართვისთვის
ბონუსი: როგორ დავაყენე მხარდაჭერა ნაკრების მართვისთვის
ბონუსი: როგორ დავაყენე მხარდაჭერა ნაკრების მართვისთვის
ბონუსი: როგორ დავაყენე მხარდაჭერა ნაკრების მართვისთვის

ნაკრების ადგილზე შესანარჩუნებლად მე გავაკეთე ძალიან მარტივი სტრუქტურა, რომელიც დაფუძნებულია ორ ალუმინის კვადრატულ მილზე, როგორც ბაზის, ისე მოძრაობის სტრუქტურის შესანარჩუნებლად. ბაზა დაფიქსირებულია ოთხი ხრახნით ორ ლიანდაგზე (დაახლოებით 25 სმ სიგრძის) და რამდენიმე პატარა 3D დაბეჭდილი საყრდენით მაქვს მოძრავი ძრავის თავისუფალი გადაადგილება, რათა ძაფის როლის ჩასმა და მოხსნა ადვილი იყოს.

ნებისმიერს შეუძლია აირჩიოს საკუთარი გადაწყვეტა იმისდა მიხედვით, თუ როგორ არის ორგანიზებული მისი სამუშაო მაგიდა.

ნაბიჯი 7: გაყვანილობა და დაკავშირება არდუინოსთან

Image
Image
გაყვანილობა და დაკავშირება არდუინოსთან
გაყვანილობა და დაკავშირება არდუინოსთან

როგორც ნაკრების შინაარსის საფეხურშია განმარტებული, მე გამოვიყენე Infineon TLE94112LE DC საავტომობილო ფარი არდუინოსთვის და გამოვცადე ძრავა როგორც Arduino UNO R3- ზე, ასევე Infineon XMC110 ჩატვირთვის ნაკრებზე.

თუ თქვენ გააკონტროლებთ ძრავას (გჭირდებათ PWM მახასიათებლები) თქვენი არჩეული DC კონტროლერის დაფით, უბრალოდ მიამაგრეთ ინსტრუქცია თქვენი ფარის ტექნიკურ მახასიათებლებთან.

შენიშვნა TLE04112LE Arduino Shield– ზე

ერთ -ერთი ლიმიტი, რაც მე განვიცადე Arduino– ს სხვა საავტომობილო კონტროლის ფარებთან არის ის, რომ ისინი იყენებენ ერთიდაიგივე მიკრო კონტროლერის მახასიათებლებს (ანუ PWM და GPIO ქინძისთავები); ეს ნიშნავს, რომ თქვენი დაფა ეძღვნება ამ ამოცანებს, ხოლო სხვა რესურსები (MPU და GPIO) ხელმისაწვდომია სხვა მიზნებისთვის.

გზის შესამოწმებლად TLE94122LE Arduino ფარს ხელის ჩამორთმევის შესაძლებლობა, IC– ის ყველაზე აშკარა უპირატესობა, რომელსაც დაფა ემყარება, არის მხოლოდ მისი სისრულე. არდუინოს დაფა ფარს დაუკავშირდება SPI პროტოკოლის საშუალებით მხოლოდ ორი ქინძისთავის გამოყენებით. ყველა ბრძანება, რომელსაც თქვენ უგზავნით ფარს, მუშავდება ავტონომიურად TLE94112LE IC მიერ MPU რესურსების მოხმარების გარეშე. Infineon დაფის კიდევ ერთი გამორჩეული თვისება არის ექვსამდე დავარცხნილი ძრავის კონტროლირებადი სამი პროგრამირებადი PWM არხი. ეს ნიშნავს, რომ Arduino– ს შეუძლია დააყენოს ერთი ან მეტი ძრავა, დაიწყოს ისინი და გააგრძელოს მუშაობა სხვა ამოცანებზე. ეს ფარი გამოჩნდა სრულყოფილად, რომ მხარი დაუჭიროს ექვსამდე ძაფის რულონს ერთდროულად. მოძრაობა მხოლოდ ერთ -ერთი ამოცანაა, რომელიც ექვემდებარება MPU- ს. მხედველობაში მიიღება ექვს სხვადასხვა ძაფის ძაფის მართვის შესაძლებლობა ერთი Arduino + ფარის მიკროკონტროლერის ღირებულებაზე თითოეული ძაფის კონტროლერზე 5 ევროზე ნაკლები.

წონის სენსორი

გარკვეული ექსპერიმენტების ჩატარების შემდეგ დავინახე, რომ შესაძლებელი იყო მთელი სისტემის კონტროლი - მონიტორინგი და ავტომატური კვება - ერთი სენსორით; დატვირთვის უჯრედს (წონის სენსორს) შეუძლია დინამიურად შეაფასოს ძაფის კოჭის წონის ვარიაციები, რომელიც გვაწვდის ყველა საჭირო ინფორმაციას.

მე გამოვიყენე იაფი დატვირთვის უჯრედი 0-5 კგ დიაპაზონში, პატარა დაფასთან ერთად HX711 AD გამაძლიერებელზე, IC სპეციფიკური დატვირთვის უჯრედების სენსორების მართვისთვის. არ ყოფილა დამაკავშირებელი პრობლემები, რადგან ის არის კარგად მომუშავე Arduino ბიბლიოთეკაში.

სამი ნაბიჯი ტექნიკის დასაყენებლად

  1. ჩადეთ ფარი არდუინოს დაფაზე ან Infineon XMC110 ჩატვირთვის ნაკრები
  2. შეაერთეთ ძრავის მავთულები ფარის Out1 და Out2 ხრახნიან კონექტორებთან
  3. შეაერთეთ სიმძლავრე და სიგნალები HX711 AD წონის სენსორის გამაძლიერებელიდან არდუინოს ქინძისთავებთან. ამ შემთხვევაში მე გამოვიყენე 2 და 3 ქინძისთავები, მაგრამ ყველა უფასო ქინძისთავები კარგად არის.

გაფრთხილება: პუნქტები 8 და 10 დაცულია TLE94113LE ფარის მიერ SPI კავშირისთვის

Სულ ეს არის! მზად ხართ პროგრამული უზრუნველყოფის დასაყენებლად? Განაგრძე.

ნაბიჯი 8: პროგრამული უზრუნველყოფის და კონტროლის ბრძანების ნაკრები

პროგრამული უზრუნველყოფის და კონტროლის ბრძანების ნაკრები
პროგრამული უზრუნველყოფის და კონტროლის ბრძანების ნაკრები
პროგრამული უზრუნველყოფის და კონტროლის ბრძანების ნაკრები
პროგრამული უზრუნველყოფის და კონტროლის ბრძანების ნაკრები
პროგრამული უზრუნველყოფის და კონტროლის ბრძანების ნაკრები
პროგრამული უზრუნველყოფის და კონტროლის ბრძანების ნაკრები
პროგრამული უზრუნველყოფის და კონტროლის ბრძანების ნაკრები
პროგრამული უზრუნველყოფის და კონტროლის ბრძანების ნაკრები

სრული დოკუმენტირებული პროგრამული უზრუნველყოფის ჩამოტვირთვა შესაძლებელია GitHub საცავიდან 3DPrinterFilamentDispenserAndMonitor

აქ ჩვენ განვიხილავთ მხოლოდ ყველაზე მნიშვნელოვან ნაწილებს და საკონტროლო ბრძანებებს.

Arduino UNO– ზე არსებული ქინძისთავების რაოდენობამ განაპირობა მიზეზი, მე გადავწყვიტე სისტემის კონტროლი USB სერიული ტერმინალის საშუალებით; ვინაიდან ყველა მოტორიზებული ერთეული ემყარება წონის სენსორს, ექვსი განსხვავებული ძაფის დისპენსერის კონტროლი მოითხოვს მონაცემების წაკითხვას წონის ექვსი სენსორიდან. თითოეული ჩამტვირთავი უჯრედი "მოიხმარს" ორ ქინძისთავს, პინ 0 და 1 დაცულია სერიისთვის (Tx/Rx), ხოლო 8 და 10 პინები დაცულია TLE94112LE ფარის დამაკავშირებელ SPI არხზე.

სისტემის სტატუსი

საკონტროლო პროგრამული უზრუნველყოფა მუშაობს ოთხი სხვადასხვა მდგომარეობის მიხედვით, განსაზღვრული ძაფში.ჰ:

#განსაზღვრეთ SYS_READY "მზადაა" // სისტემა მზადაა

#განსაზღვრეთ SYS_RUN "გაშვებული" // ძაფის გამოყენება #განსაზღვრეთ SYS_LOAD "დატვირთვა" // როლი ჩატვირთული #განსაზღვრეთ SYS_STARTED "დაწყებული" // აპლიკაცია დაწყებული // სტატუსის კოდები #განსაზღვრეთ STAT_NONE 0 #განსაზღვრეთ STAT_READY 1 #განსაზღვრეთ STAT_LOAD 2 #define 3

სტატუსი: დაიწყო

ეს სტატუსი ჩნდება აპარატურის გადატვირთვის შემდეგ ან როდესაც სისტემა ჩართულია. ჩართვის (და დაყენების () ზარი, როდესაც ესკიზი იწყება) ინიციალებს შიდა ნაგულისხმევ მნიშვნელობებს და უნდა დაიწყოს პლატფორმაზე დამატებითი წონის გარეშე, რადგან ინიციალიზაციის თანმიმდევრობის ნაწილი არის აბსოლუტური ტარის შეძენა ფიზიკური ნულოვანი წონის მისაღწევად რა

სტატუსი: მზადაა

მზა მდგომარეობა ხდება რბილი გადატვირთვის შემდეგ (გაგზავნილი სერიული ტერმინალიდან). იგი მსგავსია ფიზიკურ რეზექტთან, მაგრამ ტარი არ არის გათვლილი; გადატვირთვის ბრძანება ასევე შეიძლება გაშვებული იყოს სისტემის გაშვებისას.

სტატუსი: ჩატვირთვა

დატვირთვის სტატუსი ხდება მაშინ, როდესაც დატვირთვის ბრძანება იგზავნება ტერმინალით. ეს ნიშნავს, რომ ძაფის როლი დატვირთულია და გამოითვლება დინამიური ტარი. ძაფის ზუსტი წონა მიიღება რულონის დაყენების გზით, რომელიც აკლებს საავტომობილო ერთეულის წონას და ცარიელ რულონს.

სტატუსი: გაშვებული

ეს სტატუსი შესაძლებელს ხდის წონის ავტომატურ გამოთვლას და ძაფების ავტომატურ დისპენსერს.

ტერმინალური შეტყობინებები

პროგრამული უზრუნველყოფის ამჟამინდელი ვერსია უბრუნებს ადამიანის წაკითხულ შეტყობინებებს ტერმინალში, ბრძანებების შესაბამისად. სიმებიანი შეტყობინებები განისაზღვრება სათაურის ორ ფაილში: commands.h (ბრძანებასთან დაკავშირებული შეტყობინებები და პასუხები) და filament.h (სტრიქონები, რომლებიც ანალიზატორის მიერ გამოიყენება რთული შეტყობინებების შესაქმნელად).

ბრძანებები

ორი განსხვავებული ფაილი ჩართულია ბრძანების მენეჯმენტში: commands.h მათ შორის ყველა ბრძანება და დაკავშირებული პარამეტრები და filament.h მათ შორის ყველა მუდმივი და განმარტება, რომელიც გამოიყენება შეწონილი სისტემისა და ანალიზატორის მიერ.

მიუხედავად იმისა, რომ შიდა გამოთვლები ხდება ავტომატურად პროგრამული უზრუნველყოფის მიერ, მე განვახორციელე მთელი რიგი ბრძანებები სისტემის ქცევის დასადგენად და ზოგიერთი პარამეტრის ხელით გასაკონტროლებლად.

ბრძანების საკვანძო სიტყვები მგრძნობიარეა ასოებისათვის და უნდა გაიგზავნოს ტერმინალიდან. თუ ბრძანება არ შეესაბამება მიმდინარე სტატუსს, იგი არ არის აღიარებული არასწორი ბრძანების შეტყობინება ბრუნდება სხვაგვარად ბრძანება შესრულებულია.

სტატუსის ბრძანებები

შეცვალეთ სისტემის ამჟამინდელი სტატუსი და ქცევაც არის ადაპტირებული

ძაფის ბრძანებები

ცალკეული ბრძანებების გამოყენებით შესაძლებელია ძაფის და რულონის მახასიათებლების დადგენა ბაზარზე არსებული ყველაზე გავრცელებული წონისა და ზომის მიხედვით.

ერთეულების ბრძანებები

ეს არის რამდენიმე ბრძანება, რათა დადგინდეს საზომი ერთეულების ვიზუალიზაცია გრამში ან სანტიმეტრში. ფაქტობრივად, შესაძლებელია ამ ბრძანებების აღმოფხვრა და მონაცემების ყოველთვის წარმოდგენა ორივე ერთეულში.

საინფორმაციო ბრძანებები

აჩვენეთ ინფორმაციის ჯგუფები სისტემის სტატუსის მიხედვით

საავტომობილო ბრძანებები

აკონტროლეთ ძრავა ძაფის კვებაზე ან გაყვანაზე.

ყველა საავტომობილო ბრძანება მიჰყვება აჩქარების/შენელების გზას. ორი ბრძანება feed და pull ასრულებს მოკლე თანმიმდევრობას, როგორც განსაზღვრულია motor.h– ში მუდმივი FEED_EXTRUDER_DELAY– ით, ხოლო feedc და pullc ბრძანებები მუშაობს უსასრულოდ, სანამ არ მიიღება გაჩერების ბრძანება.

გაშვებული რეჟიმის ბრძანებები

გაშვებული სტატუსი იღებს ორ რეჟიმს; რეჟიმი ადამიანი მხოლოდ პერიოდულად კითხულობს წონას და ძრავა მოძრაობს მანამ, სანამ ძრავის კონტროლის ბრძანება არ გაიგზავნება. რეჟიმი ავტომატურად ასრულებს ორ საკვების ბრძანებას, როდესაც ექსტრუდერს მეტი ძაფები სჭირდება.

პრინციპი ემყარება წონის მაჩვენებლებს, რომლებიც კონტექსტურია ამ კონკრეტულ გარემოში. ჩვენ ველით, რომ ძაფის მოხმარება შედარებით ნელია, 3D პრინტერები თითქმის ნელია და ნორმალური წონის რხევები დამოკიდებულია გარემოს ვიბრაციაზე (უკეთესია, თუ მთელ ნივთს არ დააყენებთ 3D პრინტერზე)

როდესაც ექსტრუდერი ძაფს იჭერს, წონის სხვაობა მკვეთრად იზრდება (50 გ ან მეტი) ძალიან მცირე დროში, ჩვეულებრივ ორ ან სამ კითხვას შორის. ეს ინფორმაცია გაფილტრულია პროგრამული უზრუნველყოფით, რომელიც "გამოაკლებს", რომ საჭიროა ახალი ძაფები. ძრავის მუშაობისას არასწორი კითხვების თავიდან ასაცილებლად, ძრავის გაშვებისას საერთოდ იგნორირდება.

გამოყენების ლოგიკა

პროგრამის ლოგიკა განაწილებულია.ino ძირითადში (Arduino ესკიზი) სამი ფუნქციის მიხედვით: setup (), loop () და parseCommand (commandString)

ესკიზი იყენებს ორ ცალკეულ კლასს: FilamentWeight კლასს, რათა მართოს ძაფის ყველა გამოთვლა და სენსორის კითხვა HX711 IC და MotorControl კლასების საშუალებით, რომელიც აერთიანებს TLE94112LE Arduino ფარის დაბალი დონის მეთოდებს.

აწყობა()

გაშვებული ერთხელ როდესაც ჩართვისას ან ტექნიკის გადატვირთვის შემდეგ ინიციალიზირეთ კლასების შემთხვევები, დააყენეთ აპარატურა და ტერმინალური კომუნიკაცია.

მარყუჟი ()

მთავარი მარყუჟის ფუნქცია მართავს სამ სხვადასხვა მდგომარეობას.

მიუხედავად იმისა, რომ წონის სენსორებისა და ძრავების ორი კლასი შედარებით რთულია, არის უპირატესობა, რომ შედეგად მიღებული ესკიზი მართლაც ადვილი გასაგები და მართვადია.

  1. შეამოწმეთ (ავტომატურ რეჟიმში) საჭიროა თუ არა ექსტრუდერს მეტი ძაფები
  2. თუ ძრავა მუშაობს, შეამოწმეთ აპარატურის შეცდომები (დაბრუნდა TLE94112LE- ით)
  3. თუ არსებობს სერიული მონაცემები, გაანალიზეთ ბრძანება

parseCommand (commandString)

ანალიზის ფუნქცია ამოწმებს სერიიდან მომდინარე სტრიქონებს და როდესაც ბრძანება აღიარებულია მაშინვე მუშავდება.

თითოეული ბრძანება მოქმედებს როგორც სახელმწიფო მანქანა, რომელიც გავლენას ახდენს სისტემის ზოგიერთ პარამეტრზე; ამ ლოგიკის დაცვით ყველა ბრძანება მცირდება სამ თანმიმდევრულ მოქმედებად:

  1. გაგზავნეთ ბრძანება FilamentWeight კლასში (წონის ბრძანებები) ან MotorControl კლასში (საავტომობილო ბრძანებები)
  2. ახორციელებს გაანგარიშებას წონის მნიშვნელობების განახლების ან შიდა პარამეტრების განახლების მიზნით
  3. შესრულების დასრულების შემდეგ აჩვენეთ ტერმინალი და ინფორმაციის გამომუშავება

დააინსტალირეთ HX711 Arduino ბიბლიოთეკა, გადმოწერეთ პროგრამა GitHub– დან და ატვირთეთ თქვენს Arduino დაფაზე და ისიამოვნეთ!

გირჩევთ: