Სარჩევი:

წვრილმანი საგანმანათლებლო მიკრო: ბიტიანი რობოტი: 8 ნაბიჯი (სურათებით)
წვრილმანი საგანმანათლებლო მიკრო: ბიტიანი რობოტი: 8 ნაბიჯი (სურათებით)

ვიდეო: წვრილმანი საგანმანათლებლო მიკრო: ბიტიანი რობოტი: 8 ნაბიჯი (სურათებით)

ვიდეო: წვრილმანი საგანმანათლებლო მიკრო: ბიტიანი რობოტი: 8 ნაბიჯი (სურათებით)
ვიდეო: MJC სკოლა. ჩვენ მზად ვართ დაგეხმაროთ გახდეთ პროგრამისტი. 2024, ივლისი
Anonim
წვრილმანი საგანმანათლებლო მიკრო: ცოტა რობოტი
წვრილმანი საგანმანათლებლო მიკრო: ცოტა რობოტი
წვრილმანი საგანმანათლებლო მიკრო: ცოტა რობოტი
წვრილმანი საგანმანათლებლო მიკრო: ცოტა რობოტი

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

როდესაც თქვენ შექმნით ამ რობოტს, შეგიძლიათ ისიამოვნოთ მისი მრავალფეროვანი სენსორებითა და გამტარებლებით, რათა გააკეთოთ ძირითადი, მაგრამ საკმაოდ მოწინავე საქმეები, რაც დამოკიდებულია თქვენს მიერ შექმნილ ვერსიაზე (მე მოგცემთ ორ ვერსიას). ამ რობოტით თქვენ აძლევთ თვალებს (180 ° -იანი ხედი!) და ფეხებს (შესაძლებელია ზუსტი მოძრაობით!) მიკრო: ბიტი, ხოლო მიკრო: ბიტი გაძლევთ დიდ მახასიათებლებს, როგორიცაა LED მატრიცა, რადიოკავშირი, ბლუთუს კომუნიკაცია, ამაჩქარებელი, კომპები, არამედ წვდომა ყველა იმ ნივთზე, როგორც MicroPython– ით, ასევე ვიზუალური პროგრამირების ენით, რომელიც მსგავსია ნულიდან (რეალურად ასევე C ++ და javascript– ში, მაგრამ მე ვხვდები, რომ ისინი ნაკლებად შესაფერისია განათლებისთვის).

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

ნაბიჯი 1: ნაჭრების შეგროვება

ნაჭრების შეგროვება
ნაჭრების შეგროვება

ამ პროექტისთვის მინიმალური დათვის გჭირდებათ:

  • 5 მმ სისქის MDF ხის და ლაზერული საჭრელი ჩონჩხისთვის
  • 1x18650 ლითიუმის ბატარეა, 1x ბატარეის დამცავი ენერგია და გამთიშველი
  • 1xMicro: ბიტ ბარათი და 1xMicro: ბიტი გაფართოების დაფა ტვინისთვის (თუმცა ორივე ადვილად შეიცვლება არდუინოთი)
  • 2x28BYJ-5V სტეპერიანი ძრავები, 2xA4988 სტეპერიანი მძღოლები და 2x განვითარების დაფა დრაივერების დასაყენებლად ფეხებისთვის
  • 1x TOF10120 და 1x მინი 9 გ სერვო ძრავა თვალებისთვის ზოგიერთი კაბელი და ხრახნები
  • 1x უნივერსალური ბორბალი, სიმაღლე = 15 მმ

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

იდეალურ შემთხვევაში, თქვენ ასევე გექნებათ თქვენს განკარგულებაში:

  • მულტიმეტრი
  • პურის დაფა
  • გასაყიდი რკინა

მათთვის, ისევე როგორც ლაზერული საჭრელი, შეამოწმეთ გაქვთ თუ არა რაიმე სამუშაო ადგილი თქვენს ადგილას! ეს შესანიშნავი ადგილებია შთამაგონებელ შემქმნელებთან შესახვედრად!

ნაბიჯი 2: ფეხების მომზადება

ფეხების მომზადება
ფეხების მომზადება
ფეხების მომზადება
ფეხების მომზადება
ფეხების მომზადება
ფეხების მომზადება
ფეხების მომზადება
ფეხების მომზადება

თქვენი პირველი მისია, თუ თქვენ მიიღებთ მას, იქნება ჩვენი სტეპერი ძრავის როტაცია მიკრო: ბიტის, როგორც კონტროლერის გამოყენებით! რატომ სტეპერიანი ძრავა? შემეძლო გამეყვანა DC ძრავით, მაგრამ მე ვცადე ისინი და მიჭირს იაფფასიანი ძრავების აყვანა დაბალი სიჩქარით. მე ასევე ვფიქრობდი, რომ კარგი იქნებოდა ზუსტად ვიცოდე რა სიჩქარით ბრუნავს ჩემი ბორბლები. ამ მიზეზების გამო სტეპერ ძრავები საუკეთესო ვარიანტი იყო.

ახლა, როგორ გავაკონტროლოთ 28BYJ ძრავა 4988 დრაივერის გამოყენებით? პასუხი არის … ცოტა გრძელი. მე ვერ მოვახერხე, რომ ეს სასწრაფოდ მოერგო ამ სასწავლო ინსტრუქციას, ამიტომ მე გავაკეთე სხვა მხოლოდ ამ მიზნით, რომელსაც აქ ნახავთ. მე გეპატიჟებით მიჰყევით ამ ნაბიჯებს ბოლომდე პატარა პროტოტიპების დაფის შექმნით 26x22 მმ დიდი 2x2 მმ ხვრელებით 17 მმ დაყენება მის გვერდებზე, როგორც ეს მოცემულია ზემოთ სურათზე (გაითვალისწინეთ, რომ როგორც მითითებულია სტატიაში ყვითელი მავთული მარცხნივ არის ის, რომ შეგახსენოთ SLP და RST ერთად შედუღება).

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

ნაბიჯი 3: მე ვხედავ შუქს !! (სურვილისამებრ)

Მე ვხედავ სინათლეს !! (სურვილისამებრ)
Მე ვხედავ სინათლეს !! (სურვილისამებრ)
Მე ვხედავ სინათლეს !! (სურვილისამებრ)
Მე ვხედავ სინათლეს !! (სურვილისამებრ)
Მე ვხედავ სინათლეს !! (სურვილისამებრ)
Მე ვხედავ სინათლეს !! (სურვილისამებრ)

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

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

ის რაც ჩვენ ახლა გვაინტერესებს არის ჩვენი რობოტის აღჭურვა სენსორებით, რათა ჩვენმა რობოტმა მოიპოვოს გარკვეული ინფორმაცია თავისი გარემოს შესახებ. არსებობს მრავალი სახის სენსორი, მაგრამ აქ ჩვენ ყურადღებას გავამახვილებთ სიახლოვის სენსორზე. როდესაც მე ვქმნიდი ამ რობოტს, ჩემი მიზანი იყო ის, რომ რობოტი არაფერში არ დაეჯახა, ამიტომ მინდოდა, რომ ის დაბრკოლებებს გრძნობდა. ამისათვის ასევე არსებობს რამდენიმე ვარიანტი. პირველი, ძალიან მარტივი, შეიძლება იყოს ბამპერების გამოყენება, მაგრამ მე ვხედავ ინფორმაციას გარემოს შესახებ ცოტა შეზღუდული. მეორე უკიდურეს შემთხვევაში, თქვენ შეიძლება იფიქროთ კამერის დამატებაზე (ან ლიდარზე ან კინექტზე!). მე მიყვარს კამერები, კომპიუტერული ხედვა და ყოველივე ეს, მაგრამ სამწუხაროდ Micro: bit არ უჭერს მხარს (ჩვენ უნდა გამოვიყენოთ ჟოლოს Pi ასეთი მოწყობილობების მხარდასაჭერად და არა მიკრო: ბიტი ან არდუინო).

რას ნიშნავს მიკრო: ბიტის მხარდაჭერა კამერასა და ბამპერებს შორის? არსებობს მცირე აქტიური სენსორები, რომლებიც აგზავნიან შუქს გარემოს და ამოწმებენ რა მიიღება მსოფლიოს შესახებ ინფორმაციის მისაღებად. ის, რაც მე უკვე ვიცოდი, იყო GP2Y0A41SK0F, რომელიც იყენებს სამკუთხედის მეთოდს დაბრკოლებებამდე მანძილის შესაფასებლად. თუმცა დავინტერესდი თუ ვიპოვი უკეთესს, ამიტომ ჩავატარე კვლევა და აღმოვაჩინე TOF10120 (და GY-VL53L0XV2, მაგრამ მე ჯერ არ მიმიღია:(). აქ არის კარგი სტატია თქვენთვის, რომ აღმოაჩინოთ იგი ძირითადად ეს სენსორი გამოსცემს ინფრაწითელ სიგნალს, რომელიც აისახება დაბრკოლებებზე და შემდეგ იღებს ასახულ სინათლეს. იმის მიხედვით, თუ რა დრო დასჭირდა შუქს წინ და უკან, სენსორს შეუძლია შეაფასოს დაბრკოლების მანძილი (აქედან გამომდინარე სახელი TOF = ფრენის დრო მისი მცირე ზომის, მანძილის დიაპაზონისა და სიმძლავრის მოთხოვნილების გამო გადავწყვიტე გამოვიყენო TOF10120.

მიუხედავად იმისა, რომ ჩემი პირველი იდეა იყო რობოტზე სამი მათგანის დაყენება (ერთი წინ და ორი გვერდით), ჩინურ ახალ წელს და COVID-19 პანდემიას არ სურდათ ეს ასე, რადგან როგორც ჩანს, ეს იწვევს პრობლემებს გადაზიდვებთან დაკავშირებით. ასე რომ, მე შემოვიფარგლე ერთი TOF10120– ით, რომლის ნახვაც მინდოდა გვერდებზე და რომ მქონდა რამდენიმე ძრავიანი ძრავა, გადავწყვიტე ჩემი სენსორი სერვოზე დამეყენებინა. ასე რომ, ახლა ორი რამ აკლია: როგორ გამოვიყენო TOF10120 მიკრო: ბიტით? და იგივე შეკითხვა სერვასთან დაკავშირებით.

საბედნიეროდ მიკრო: ბიტი აღჭურვილია I2C საკომუნიკაციო პროტოკოლით და ეს ჩვენს ცხოვრებას ნამდვილად ამარტივებს: შეაერთეთ წითელი მავთული 3.3 ვ -ზე, შავი მიწას, მწვანე მიწა SCL- ს და ლურჯი SDA- ს და ეს არის ტექნიკის ნაწილისთვის. პროგრამული უზრუნველყოფისთვის, მე გირჩევთ წაიკითხოთ ცოტაოდენი I2C კომუნიკაციის შესახებ და სცადოთ პითონის კოდი, რომელიც დავამატე მიკრო: bit. ამ პროგრამამ უნდა გამოგიწეროთ მანძილი, რომელიც იზომება სენსორით REPL– ზე (წაიკითხეთ შეაფასეთ ბეჭდვის მარყუჟი). Ის არის. ჩვენ უბრალოდ მივეცით მხედველობას ჩვენი მიკრო: ცოტა.

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

ნაბიჯი 4: ბატარეის ფარის გარჩევა

ბატარეის ფარის გარჩევა
ბატარეის ფარის გარჩევა
ბატარეის ფარის გარჩევა
ბატარეის ფარის გარჩევა
ბატარეის ფარის გარჩევა
ბატარეის ფარის გარჩევა

ახლა, როდესაც ჩვენ მოვამზადეთ ჩვენი გამტარებლები და სენსორები, დროა შევხედოთ ბატარეის მართვის სისტემას. იმისათვის, რომ თქვენ მეტი გაიგოთ ბატარეის ფარის შესახებ, რომელიც მე ავირჩიე, გირჩევთ წაიკითხოთ ეს სტატია. მე ვთვლი, რომ ეს არის ძალიან გასაგები და ხელმისაწვდომი. ამ სტატიიდან ჩვენ შეგვიძლია დავინახოთ ბატარეის ფარის მრავალი უპირატესობა, მაგრამ არის ერთი მნიშვნელოვანი ნაკლი, რომლის მიღებაც არ მსურდა: ჩართვის/გამორთვის გადამრთველი გავლენას ახდენს მხოლოდ USB გამომავალზე. ეს ნიშნავს, რომ თუ გამორთავთ გამორთვას, ყველა დანარჩენი 3.3V და 5V ქინძისთავები იკვებება. შედეგად, როდესაც ჩვენ ვიყენებთ ამ ქინძისთავებს ჩვენი რობოტისთვის, გადამრთველი საერთოდ არაფერს გააკეთებს…

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

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

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

ნაბიჯი 5: 3D დიზაინი და გაჭრა

3D დიზაინი და გაჭრა
3D დიზაინი და გაჭრა
3D დიზაინი და გაჭრა
3D დიზაინი და გაჭრა

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

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

აქედან რამდენიმე ვერსია გაცოცხლდა, რომელთაგან ორი შევარჩიე:

  • ერთი საკმაოდ მოწესრიგებული, სიახლოვის სენსორის გარეშე, რაც საშუალებას იძლევა არ გამოჩნდეს მავთულები. მიუხედავად იმისა, რომ ეს ვერსია არ არის ავტონომიური, ის მაინც შეიძლება დაპროგრამდეს Bluetooth– ის საშუალებით iPad– ის საშუალებით, ან შეიძლება დაპროგრამდეს მისი კონტროლი რადიო სიგნალების გამოყენებით, რომელიც შეიძლება გაგზავნილი იყოს სხვა მიკრო ბიტით, როგორც ეს ნაჩვენებია ზემოთ ვიდეოში.
  • ერთი გაცილებით ნაკლებად მოწესრიგებული, რაც საშუალებას იძლევა გაცილებით წინ წავიდეთ მობილურ რობოტიკაში, ვინაიდან ის საშუალებას გაძლევთ დაიჭიროთ დაბრკოლების მანძილი 180 ° -იანი ხედვით, სერვო ძრავზე აგებული სიახლოვის სენსორის წყალობით.

ამის გასაუმჯობესებლად, გადადით თქვენს საყვარელ Fablab– ში და გამოიყენეთ ლაზერული საჭრელი, რომელიც თქვენთვის სასურველი მოდელის მოჭრისთვისაა: პირველი, რომელიც შეესაბამება ფაილების დიზაინს 1_5mmMDF.svg და დიზაინი1_3mmMDF, რომლებიც შეესაბამება 5 მმ MDF– ში მოჭრილ ნაწილებს. ხე და 3 მმ -იანიდან მოჭრილი; მეორე შეესაბამება ფაილის დიზაინს2_5mmMDF.svg. დააყენეთ შავი კონტურები, რომლებიც უნდა მოიჭრას და წითელი უნდა იყოს ამოტვიფრული.

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

ნაბიჯი 6: მხეცის დამონტაჟება

მონტაჟი მხეცი
მონტაჟი მხეცი
მონტაჟი მხეცი
მონტაჟი მხეცი
მონტაჟი მხეცი
მონტაჟი მხეცი

ნაბიჯები, რომლებიც მე გავყევი რობოტის პირველი ვერსიის დასაყენებლად არის შემდეგი (სურათები ჩვეულებრივ უნდა იყოს სწორი თანმიმდევრობით):

  1. ამოიღეთ ძრავების ლურჯი თავსახური და გაჭერით ცოტა, რომ კაბელი ძრავის უკანა ნაწილიდან გამოვიდეს.
  2. დააინსტალირეთ ძრავები თითოეულ მხარეს M2 ხრახნებისა და ჭანჭიკების გამოყენებით.
  3. დაამონტაჟეთ პროტოტიპის დაფა გვერდებზე 2x2 მმ ხვრელების და ხრახნების და ჭანჭიკების გამოყენებით.
  4. განათავსეთ A4988 დრაივერები და დააფიქსირეთ საავტომობილო კაბელები, რომ ის მოწესრიგებული იყოს.
  5. დაამონტაჟეთ უნივერსალური ბორბალი ქვედა ნაწილის ქვეშ და დაამატეთ მხარეები.
  6. დააინსტალირეთ მიკრო გაფართოების დაფა: ბიტი ზედა ნაწილში.
  7. მოათავსეთ მოქნილი წინა საფარის ქვედა ნაწილი.
  8. განათავსეთ ბატარეის ფარი და შეაერთეთ ყველაფერი (ამის გაკეთება, რადგან მე ჯერ კიდევ ველოდებოდი გაფართოების დაფის მიწოდებას, რომელიც მინდოდა და რომ მე მქონდა მხოლოდ ერთი ქალი სათაურით, მე გადავიმუშავე IDE კაბელი ძველი კომპიუტერიდან არ მაქვს ჩემი კაბელები გამყარებული დაფაზე, რათა დაფაროს ეს ყველაფერი დასაკეცი წინა საფარით). მიუხედავად იმისა, რომ ჩემ მიერ მოწოდებული კოდი ძალიან ადვილია ადაპტირებისთვის, მისი უშუალოდ გამოყენებისთვის, თქვენ უნდა დააკავშიროთ მარცხენა ნაბიჯი 2 პინზე, მარჯვენა ნაბიჯი 8 – ზე, მარცხენა DIR –ზე 12 – ზე, მარჯვენა DIR –ზე 1 – ზე.
  9. ჩადეთ მიკრო: ბიტი გაფართოებაში.
  10. შეამოწმეთ რომ ყველაფერი მუშაობს MoveTest.py– ზე შემდგომ წასვლამდე.
  11. დააინსტალირეთ გადამრთველი ზედა ნაწილზე და დადეთ პლასტიკური ბიტი ლითიუმის უჯრედის გვერდით.
  12. ხრახნიანი წინა საფარის ზედა ნაწილი.
  13. დაამონტაჟეთ უკანა მხარე და თქვენ დაასრულეთ! ფუ! ამდენ ნაბიჯს არ ველოდი! გაცილებით ადვილია ამაზე ფიქრი და გაკეთება, ვიდრე სიტყვებით ახსნა! (და დარწმუნებული ვარ, რომ კვლავ იქნება დაკარგული ინფორმაცია!)

თუ თქვენ აშენებთ მეორე ვერსიას სიახლოვის სენსორით, მაშინ:

  1. მიჰყევით ზემოთ მოცემულ ინსტრუქციას. ერთადერთი განსხვავება ის იქნება, რომ მე –7 საფეხურზე თქვენ უნდა დაამატოთ M2 გამყოფი (თუმცა ეს არის ის, რაც მე გავაკეთე, მაგრამ ეს არ არის საჭირო), იგნორირება მოახდინეთ 8 – ე საფეხურზე და მე –13 საფეხურზე (რადგან წინა საფარი არ არის)
  2. დააინსტალირეთ servo ძრავა M2 ხრახნით და დააკავშირეთ servo- ს VCC და GND პირდაპირ ბატარეის ფარის 5V- ზე და შეაერთეთ საკონტროლო შეყვანა მიკრო 0: pin- ის ბიტზე.
  3. დააინსტალირეთ ხის ორი ნაჭერი, რომელიც სერვოს თავზე დაიდება ხრახნიანი, დაახურეთ TOF სენსორი, ასევე თეთრი პლასტმასის ნაჭერი, რომელსაც მოყვება სერვო.
  4. დააინსტალირეთ ეს ბოლო ერთეული სერვოზე და დააკავშირეთ სენსორი მიკრო: ბიტის I2C გამოყენებით, როგორც ეს აღწერილია მე –3 ნაბიჯში.

ნაბიჯი 7: პროგრამა

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

  • მაგალითი 1: განათავსეთ radioControl.py მიკრო: რობოტის ბიტზე და ReadAccelero.py სხვა მიკრო: ბიტზე რობოტის გასაკონტროლებლად მეორე მიკრო: ბიტის მიდრეკილების გამოყენებით.
  • მაგალითი 2: განათავსეთ Autonomous.py რობოტის მე -2 ვერსიაზე, ის შეისწავლის გარემოს.

ეს არის მხოლოდ ძირითადი მაგალითები, რომელთა გამოყენება შეგიძლიათ ბევრად, ბევრად წინ წასასვლელად. მაგალითად, მე ძალიან მომწონს ერთდროულად ლოკალიზაცია და რუქა და ჩვეულებრივ, ყველაფერი რაც თქვენ გჭირდებათ ამ რობოტის მე -2 ვერსიაში ამის გასაკეთებლად! მიუხედავად იმისა, რომ ჩემთვის ასეთი პროექტის განხორციელების ერთი დიდი ნაკლი არის ის, რომ მიკრო: ბიტიანი PWM დრაივერი არის პროგრამული უზრუნველყოფის დრაივერი, რომელიც იყენებს ერთსა და იმავე ტაიმერს ყველა არხისთვის, რაც იმას ნიშნავს, რომ ჩვენ მიერ დაყენებულ ყველა PWM– ს უნდა ჰქონდეს იგივე სიხშირე (რაც მე გავაკეთე არ ვიცი როდის დავწერე კოდის ნიმუში, თუმცა ავტონომიური წერისას აღმოვაჩინე რაღაც უცნაური.

ნაბიჯი 8: წინსვლა

ნუ დააყოვნებთ დიზაინის გაუმჯობესებას, ზოგიერთი პრობლემის გადაჭრას, რაც მე არ მინახავს. მაგალითად, მინდა საბოლოოდ:

  • დაამატეთ IR სენსორი რობოტის ბოლოში, რათა გაარკვიოს მიწა შავია თუ თეთრი, თუ ის მიაღწევს ჩემი სამუშაო მაგიდის ბოლოს.
  • შეცვალეთ ბატარეის მართვის სისტემა, რადგან მე ჯერ არ ვარ კმაყოფილი. მართლაც, ამ მომენტისთვის, ბატარეის დასატენად, საჭიროა რობოტის დაშლა, რომ ამოიღოს უჯრედი ან ბატარეის საფარი … ამიტომ ვგეგმავ: 1. რობოტის უკანა მხარეს დავამატო მინი USB კონექტორი, რომელიც მე დავუკავშირდები ბატარეის ფარს, რომ შევძლო მისი დატენვა; 2. გაჭერით ხვრელი ბოლოში, რომ ნახოთ LED- ები ბატარეის ფარიდან, რათა ნახოთ როდის დასრულდება დატენვა.
  • შეამოწმეთ არის თუ არა დასაშვები გზა PWM– ების გამოშვება სხვადასხვა სიხშირით.
  • სცადეთ VL53L0XV2 ჩაანაცვლოს TOF10120, რადგან ეს შეიძლება იყოს იაფი ვარიანტი, რაც მას კიდევ უფრო მეტი ადამიანისთვის გახდის ხელმისაწვდომს. მიუხედავად იმისა, რომ მე მეტი წავიკითხე ამ სენსორის შესახებ და როგორც ჩანს, კომპანიამ, რომელმაც ეს იაფად გააკეთა, გამიზნულად გაართულა საქმე…
  • შეამოწმეთ ბორბლების სხვადასხვა დიზაინი, რათა გახადონ ისინი უფრო გამძლე (ახლა მე ველოდები, რომ თუ ბორბლებს ბევრჯერ შევიყვან და გამოვა, ხე თანდათანობით დაზიანდება. შეძლებს გახანგრძლივებას)

დიდი მადლობა EPFL- ის მობილური რობოტიკის გუნდის ადამიანებს (ამჟამად ბიორობოტიკის ლაბორატორიის ნაწილია), რომლებიც ძალიან დამეხმარნენ ელექტრონიკისა და მექანიკის ცოდნის გაფართოებაში!

გირჩევთ: