Përmbajtje:

Mikro edukative DIY: bit Robot: 8 hapa (me fotografi)
Mikro edukative DIY: bit Robot: 8 hapa (me fotografi)

Video: Mikro edukative DIY: bit Robot: 8 hapa (me fotografi)

Video: Mikro edukative DIY: bit Robot: 8 hapa (me fotografi)
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Korrik
Anonim
Mikro edukative DIY: robot pak
Mikro edukative DIY: robot pak
Mikro edukative DIY: robot pak
Mikro edukative DIY: robot pak

Ky udhëzues do t'ju tregojë se si të ndërtoni një robot relativisht të arritshëm, të aftë dhe të lirë. Qëllimi im në hartimin e këtij roboti ishte të propozoja diçka që shumica e njerëzve mund ta përballonin, që ata të mësonin shkencat kompjuterike në një mënyrë tërheqëse ose të mësonin rreth saj.

Pasi ta keni ndërtuar këtë robot, mund të shijoni shumëllojshmërinë e sensorëve dhe aktivizuesve të tij për të bërë gjëra themelore, por edhe mjaft të avancuara në varësi të versionit që keni ndërtuar (do të jap dy versione). Me këtë robot ju i jepni sytë (pamje 180 °!) Dhe këmbët (me lëvizje të saktë të mundshme!) Mikro: bit ndërsa mikro: bit ju jep karakteristika të shkëlqyera si matrica LED, komunikimi me radio, komunikimi bluetooth, përshpejtues, compas, por edhe qasje në të gjitha ato gjëra ose me MicroPython ose me një gjuhë programimi vizuale të ngjashme me gërvishtjen (në fakt edhe në C ++ dhe javascript por i gjej ato më pak të përshtatshme për arsim).

Unë gjithashtu do të punoj në këtë udhëzues në mënyrë që të mund t'i vendos lexuesit dhe krijuesit në rrugën e duhur për të zbuluar më shumë rreth robotikës celulare, elektronikës, projektimit dhe prerjes së drurit. Për ta bërë këtë, unë projektova gjithçka që të ishte sa më modulare. Për shembull, unë nuk do të përdor asnjë zam për të lejuar që të mblidhen dhe çmontohen lirshëm, duke i bërë përmirësimet si dhe korrigjimin më të lehtë. Unë gjithashtu do t'i bëj hapat sa më shumë që të mundem, në mënyrë që ju të kuptoni progresivisht atë që po ndodh, të kontrolloni që gjërat po funksionojnë ashtu siç duhet dhe të arrijë në fund me një robot që punon.

Hapi 1: Mbledhja e Copave

Mbledhja e Copave
Mbledhja e Copave

Për këtë projekt, minimumi i ariut që ju nevojitet është:

  • Druri MDF i trashë 5 mm dhe një prestar lazer për skeletin
  • 1x18650 bateri litiumi, 1x mburojë baterie për energjinë dhe një ndërprerës
  • 1xMicro: Kartë bit dhe 1xMicro: bord zgjatues bit për trurin (edhe pse të dy mund të zëvendësohen lehtësisht nga një Arduino)
  • 2x28BYJ-5V motorë stepper, 2xA4988 stepper motorë dhe 2x bord zhvillimi për të montuar drejtuesit për këmbët
  • 1x TOF10120 dhe 1x Mini 9g Servo motor për sytë Disa kabllo dhe vida
  • 1x rrotë universale, lartësi = 15mm

Midis atyre, vetëm tre pjesë nuk janë standarde, prandaj këtu janë lidhjet për t'i gjetur ato: gjeni tabelën e zgjerimit që kam përdorur këtu (por unë do t'ju rekomandoja që ta përdorni këtë në vend të tij për versionin e pastër të robotit. Ju do të duhet të të ndryshojë pothuajse asgjë në dizajn dhe do ta bëjë lidhjen shumë më të thjeshtë me kthesat e kokave femra-femra), mburoja e baterisë këtu dhe rrota universale këtu.

Në mënyrë ideale, ju gjithashtu do të keni në dispozicionin tuaj:

  • Një multimetër
  • Një dërrasë buke
  • Një hekur bashkues

Për ata si dhe prestar lazer, kontrolloni nëse keni ndonjë fablab rreth vendit tuaj! Ato janë vende të mrekullueshme për të takuar disa krijues frymëzues!

Hapi 2: Përgatitja e këmbëve

Përgatitja e këmbëve
Përgatitja e këmbëve
Përgatitja e këmbëve
Përgatitja e këmbëve
Përgatitja e këmbëve
Përgatitja e këmbëve
Përgatitja e këmbëve
Përgatitja e këmbëve

Misioni juaj i parë, nëse e pranoni, do të jetë që ta bëni motorin tonë stepper të rrotullohet duke përdorur mikro: bitin si kontrollues! Pse një motor stepper? Mund të kisha shkuar për motor DC me zvogëlues, por i provova dhe e kam të vështirë të marr motorë të lirë për të punuar me shpejtësi të ulët. Unë gjithashtu mendova se do të ishte mirë të dija saktësisht me çfarë shpejtësie rrotat e mia po rrotullohen. Për ato arsye motorët stepper ishin opsioni më i mirë.

Pra, tani, si të kontrolloni një motor 28BYJ duke përdorur një shofer 4988? Përgjigja është… pak e gjatë. Unë nuk arrita ta bëj atë të përshtatet mirë në këtë udhëzues, kështu që bëra një tjetër vetëm për këtë qëllim që do të gjeni këtu. Ju ftoj të ndiqni ato hapa deri në fund me krijimin e një bordi të vogël prototipues 26x22mm të madh me vrima 2x2mm 17 mm për ta montuar në anët siç tregohet në foton më sipër (Vini re se siç thuhet në artikullin e referuar tela e verdhë në të majtë që qëndron jashtë është vetëm për t'ju kujtuar të lidhni SLP dhe RST së bashku).

Pasi e punova këtë me një motor me bordin e prototipimit, unë gjithashtu krijova PCB -në time për t'i bërë gjërat pak më të rregullta. I bashkëngjita skedarin përkatës easyEDA. Shtë një skedar txt, por akoma mund ta hapni me platformën e redaktimit pa pagesë easyEDA.

Hapi 3: Unë Shoh Dritën !! (Opsionale)

Unë shoh Dritën !! (Opsionale)
Unë shoh Dritën !! (Opsionale)
Unë shoh Dritën !! (Opsionale)
Unë shoh Dritën !! (Opsionale)
Unë shoh Dritën !! (Opsionale)
Unë shoh Dritën !! (Opsionale)

Nëse thjesht doni të ndërtoni dhe asgjë më shumë, hidheni te paragrafi i fundit i këtij hapi për të parë se si të lidhni një TOF10120 me mikro: bit. Nëse jo ndiqni.

Si mikro: biti ynë nuk vjen me asnjë aparat fotografik ose sensor afërsie, e bën atë të verbër për çdo aplikacion robotik celular. Ajo vjen me një emetues dhe receptor radio, i cili do të na lejojë të ndërtojmë skeletin mbi atë që kemi tashmë dhe të marrim një robot me telekomandë. Por a nuk do të ishte mirë të bëjmë robotin tonë autonom? Po do të ishte! Pra, le të shohim se si të arrijmë atje.

Ajo që ne jemi të interesuar tani është të pajisim robotin tonë me sensorë, që roboti ynë të marrë disa informacione rreth mjedisit të tij. Ka shumë lloje të sensorëve në dispozicion, por këtu ne do të përqendrohemi në sensorin e afërsisë. Kur po hartoja këtë robot, qëllimi im ishte kryesisht që roboti të mos përplaset në asgjë, prandaj doja që ai të ndiejë pengesa. Për këtë ka edhe disa opsione. Një e parë, shumë e thjeshtë, mund të jetë përdorimi i parakolpave, por unë e gjej informacionin për mjedisin pak të kufizuar. Nga ana tjetër, mund të mendoni të shtoni një aparat fotografik (ose një Lidar ose një kinect!). Unë i dua kamerat, shikimin e kompjuterit dhe të gjitha ato gjëra, por për fat të keq Micro: bit nuk i mbështet ato (ne do të duhet të përdorim një mjedër Pi për të mbështetur pajisje të tilla, jo një mikro: bit ose Arduino).

Pra, çfarë mbështet mikro: biti që është midis një kamere dhe parakolpave? Ka sensorë të vegjël aktivë që dërgojnë dritë në mjedis dhe kontrollojnë atë që merret për të marrë disa informacione rreth botës. Ajo që unë tashmë e njihja ishte GP2Y0A41SK0F e cila përdor një metodë të trekëndëzimit për të vlerësuar distancën nga pengesat. Sidoqoftë, pyesja veten nëse mund të gjeja ndonjë gjë më të mirë, kështu që bëra disa kërkime dhe përfundova duke zbuluar TOF10120 (dhe GY-VL53L0XV2, por ende nuk e kam marrë:(). Këtu është një artikull i bukur për ta zbuluar. Në thelb ky sensor lëshon një sinjal infra të kuqe që reflekton mbi pengesat dhe më pas merr dritën e reflektuar. Në varësi të kohës që drita mori për të shkuar mbrapa dhe me radhë, sensori mund të vlerësojë distancën e pengesës (prandaj emri TOF = koha e fluturimit). Për madhësinë e tij të vogël, distancën dhe kërkesën për fuqi vendosa të përdor TOF10120.

Ndërsa ideja ime e parë ishte të vendosja tre nga ata në robot (një përpara dhe dy në anët), viti i ri kinez dhe pandemia COVID-19 nuk e donin atë në atë mënyrë pasi dukej se shkaktonte probleme me dërgesat. Kështu, meqë isha i kufizuar në një TOF10120, që doja të shihja edhe në anët dhe se kisha disa motorë servo të shtrirë përreth, vendosa të montoj sensorin tim në një servo. Pra, dy gjëra mungojnë tani: si ta përdor TOF10120 me mikro: bit? Dhe e njëjta pyetje me servo.

Për fat të mirë mikro: bit është i pajisur me protokoll komunikimi I2C dhe e bën jetën tonë vërtet të lehtë: lidhni tela të kuq në 3.3V, të zezë në tokë, të gjelbër në SCL dhe blu në SDA dhe kjo është e gjitha për pjesën e harduerit. Për programin kompjuterik, ju inkurajoj të lexoni pak rreth komunikimit I2C dhe të provoni kodin python që e bashkëngjita në mikro: bit. Ai program duhet t'ju printojë distancën e matur nga sensori në REPL (Lexo Evaluate Print Loop). Kjo eshte. Ne vetëm i dhamë shikimin mikro -s tonë: bit.

Tani le ta bëjmë të kthejë qafën nëse më lejoni të vazhdoj analogjitë e mia me anatominë e kafshëve. Mendimi i vetëm që do të na duhet është të drejtojmë një servo motor me mikro: bit. Kjo pjesë po zgjat, kështu që unë do t'ju jap këtë lidhje e cila ka të gjithë informacionin që ju nevojitet dhe kodin që kam përdorur për ta testuar atë. Nëse dëshironi, shtova gjithashtu një kod të thjeshtë për të kontrolluar servo duke përdorur pin0. Vetëm mos harroni të fuqizoni servo -në tuaj me 5V dhe jo 3.3V.

Hapi 4: Hekimi i Mburojës së Baterisë

Hacking mburojën e baterisë
Hacking mburojën e baterisë
Hacking mburojën e baterisë
Hacking mburojën e baterisë
Hacking mburojën e baterisë
Hacking mburojën e baterisë

Tani që i kemi bërë aktivizuesit dhe sensorët tanë gati, është koha të shikojmë sistemin e menaxhimit të baterisë. Për të mësuar më shumë rreth mburojës së baterisë që zgjodha, ju këshilloj të lexoni këtë artikull. Më duket shumë e qartë dhe e arritshme. Nga ky artikull ne mund të shohim shumë përparësi të kësaj mburoje të baterisë, por ka një pengesë të rëndësishme që nuk doja ta pranoja: çelësi ON/OFF ndikon vetëm në daljen USB. Kjo do të thotë që nëse fikni çelësin, të gjitha kunjat e tjerë 3.3V dhe 5V do të mundësohen. Si rezultat, ndërsa ne po i përdorim ato kunjat për robotin tonë, çelësi nuk do të bëjë asgjë fare…

Por unë dua të jem në gjendje të fik robotin tim për të mos e zbrazur baterinë time për asgjë, kështu që më duhej të hakoja mburojën e baterisë. Nuk do të jetë e bukur, por funksionon dhe nuk kushton asgjë. Prandaj dua që një ndërprerës të hapë ose mbyllë qarkun në mënyrë që të izolojë qelizën time të baterisë nga mburoja e baterisë. Unë nuk kam pajisje për të prekur PCB, por kam copa plastike përreth. Pra, tani imagjinoni që kam prerë një copë plastike në mënyrë që të mund të vendoset në një skaj të qelizës sime të baterisë në mburojë si në imazhin e parë më sipër. Qarku tani është hapur dhe bateria ime është ruajtur në mënyrë të sigurt.

Po, por unë nuk dua të duhet të hap robotin për të hyrë në mburojën e baterisë për të vënë dhe hequr këtë copë plastike! Lehtë: merrni një çelës dhe ngjitni dy sheshe të vegjël alumini në secilën prej telave të lidhur me çelësin. Tani ngjitni ato dy pjesë alumini në copën e plastikës në mënyrë që të keni dy copa alumini të izoluara nga njëra -tjetra dhe në mënyrë që alumini të ekspozohet në pjesën e jashtme të sistemit tuaj. Normalisht që duhet bërë. Futni krijimin tuaj të ri në mburojën e baterisë pranë qelizës dhe çelësi duhet t'ju lejojë të hapni ose mbyllni qarkun e lidhur me qelizën.

Një gjë e fundit: për ta bërë më të lehtë montimin dhe çmontimin e robotit, unë do t'ju këshilloja të ngjitni titujt femra në mburojën e baterisë. Në këtë mënyrë ju lehtë mund të lidhni dhe shkëputni atë që ndërtoni me motorët dhe drejtuesit e tyre.

Hapi 5: Dizajnimi dhe Prerja 3D

Dizajn 3D dhe Prerje
Dizajn 3D dhe Prerje
Dizajn 3D dhe Prerje
Dizajn 3D dhe Prerje

E vetmja gjë që mungon tani është ndërtimi i strukturës që do të mbajë të gjithë përbërësit tanë së bashku. Për ta bërë këtë, unë përdor platformën online tinkercad. Ky është një mjedis vërtet i këndshëm për të bërë një CAD bazë, e cila shpesh është e mjaftueshme për të hartuar gjëra për prerësin lazer.

Pas ca kohësh duke menduar, ishte koha për të ngatërruar. Për ta bërë këtë, fillova të bashkoj modele 3D të pjesëve të ndryshme që kisha (së pari duke mbajtur servo dhe TOF jashtë ekuacionit). Kjo përfshin baterinë dhe mburojën, motorët stepper dhe drejtuesit e motorëve, dhe natyrisht mikro: bitin me bordin e tij shtesë. I bashkëngjit të gjitha modelet përkatëse 3D si skedarë stl. Për të lehtësuar procesin, vendosa ta bëj robotin tim simetrik. Si rezultat, bisedova me gjysmën e robotit dhe arrita modelin e treguar në imazhin e mësipërm.

Nga kjo erdhën në jetë disa versione, nga të cilat zgjodha dy:

  • Njëra mjaft e rregullt, pa sensorin e afërsisë, i cili lejon që të mos shfaqen tela. Ndërsa nuk është autonom, ky version mund të programohet akoma përmes bluetooth -it përmes një iPad për shembull, ose mund të programohet të kontrollohet duke përdorur sinjale radio që mund të dërgohen për shembull nga një mikro: bit tjetër, siç tregohet në videon e mësipërme.
  • Një gjë shumë më pak e pastër e cila lejon të shkosh shumë më tej në robotikën e lëvizshme pasi lejon të kapësh distancën e pengesës me një pamje 180 ° falë sensorit të afërsisë të ndërtuar në një motor servo.

Për ta ndërtuar këtë, shkoni te Fablab -i juaj i preferuar dhe përdorni prerësin lazer që gjeni për të prerë modelin e preferencës tuaj: e para që korrespondon me skedarët design1_5mmMDF.svg dhe design1_3mmMDF të cilat korrespondojnë përkatësisht me pjesët që duhen prerë në MDF 5mm dru dhe ato që duhen prerë nga ai 3mm; e dyta korrespondojnë me skedarin design2_5mmMDF.svg. Vendosni që konturet e zeza të priten dhe ato të kuqe të gdhenden.

Shënim anësor: Unë shtova modelin e kuq vetëm për ta stimuluar atë. Ky është një funksion mbushës Hilbert që e krijova duke përdorur kodin e bashkuar të pythonit.

Hapi 6: Montimi i Bishës

Montimi i Bishës
Montimi i Bishës
Montimi i Bishës
Montimi i Bishës
Montimi i Bishës
Montimi i Bishës

Hapat që ndoqa për të montuar versionin e parë të robotit janë këto (fotografitë normalisht duhet të jenë në rendin e duhur):

  1. Hiqeni kapakun blu të motorëve dhe priteni pak për ta bërë kabllon të dalë nga pjesa e pasme e motorit.
  2. Montoni motorët në secilën anë duke përdorur vida dhe bulona M2.
  3. Montoni bordin e prototipit në anët duke përdorur vrimat 2x2mm dhe disa vida dhe bulona.
  4. Vendosni drejtuesit A4988 dhe ngjitni kabllot e motorit për ta mbajtur atë të rregullt.
  5. Montoni rrotën universale nën pjesën e poshtme dhe shtoni anët.
  6. Montoni bordin e zgjerimit të mikro: bit në pjesën e sipërme.
  7. Montoni pjesën e poshtme të kapakut fleksibël të përparmë.
  8. Vendoseni mburojën e baterisë dhe lidhni gjithçka (për ta bërë këtë, pasi unë ende isha duke pritur për dorëzimin e bordit shtesë që doja dhe që kisha vetëm një me titujt femra që dilnin jashtë, unë riciklova një kabllo IDE nga një kompjuter i vjetër për të arritur kabllot e mia nuk ngjiten në dërrasë për të mbuluar të gjitha këto nga kapaku i palosshëm i përparmë). Megjithëse kodi që kam dhënë është shumë i lehtë për tu përshtatur, për ta përdorur atë drejtpërdrejt, do t'ju duhet të lidhni HAPIN e majtë me kunjin 2, HAPIN e djathtë në kunjin 8, DIR të majtë në kunjin 12, DIR djathtas në kunjin 1.
  9. Vendosni mikro: bit në shtesën.
  10. Provoni që gjithçka po funksionon me MoveTest.py para se të vazhdoni më tej.
  11. Montoni çelësin në pjesën e sipërme dhe vendoseni bitin plastik pranë qelizës së litiumit.
  12. Vidhosni pjesën e sipërme të kapakut të përparmë.
  13. Ngjiteni pjesën e pasme dhe mbaroni! Few! Nuk e prisja kaq hapa! Soshtë shumë më e lehtë të mendosh për të dhe ta bësh atë sesa ta shpjegosh me fjalë! (Dhe jam i sigurt se akoma do të mungojnë informacionet!)

Nëse po ndërtoni versionin e dytë me sensorin e afërsisë, atëherë:

  1. Ndiqni udhëzimet e mësipërme. Dallimi i vetëm do të jetë se do të duhet të shtoni disa ndarës M2 në hapin 7 (megjithëse kjo është ajo që kam bërë, por nuk kërkohet), injoroni hapin 8 dhe hapin 13 (pasi nuk ka kapak të përparmë)
  2. Montoni servo motorin me vida M2 dhe lidhni VCC dhe GND të servo drejtpërdrejt në 5V të mburojës së baterisë dhe lidhni hyrjen kontrolluese me pin 0 të mikro: bit.
  3. Montoni dy pjesët e drurit që do të shkojnë në krye të servo me një vidë, vidhosni sensorin TOF në këtë si dhe copën e bardhë plastike që vjen me servo.
  4. Montoni këtë njësi të fundit në servo dhe lidhni sensorin duke përdorur I2C mikro: bit siç përshkruhet në hapin 3.

Hapi 7: Programi

Kjo eshte ! Ju keni një robot që mund ta programoni ose në mikro: python ose në kod kodimi. Kam bashkangjitur këtu disa shembuj të kodit që kam përdorur për të bërë videot e mësipërme:

  • Shembull 1: Vendosni radioControl.py në mikro: bitin e robotit dhe ReadAccelero.py në një mikro: bit tjetër për të kontrolluar robotin duke përdorur prirjen e mikro: bitit të dytë.
  • Shembull 2: Vendosni Autonomous.py në versionin 2 të robotit do të eksplorojë mjedisin.

Këta janë vetëm shembujt bazë që mund t'i përdorni për të shkuar shumë, shumë më tej. Për shembull, më pëlqen shumë lokalizimi dhe hartografimi i njëkohshëm, dhe normalisht ka gjithçka që ju nevojitet në versionin 2 të këtij roboti për ta bërë këtë! Edhe pse një pengesë e madhe për mua për të bërë një projekt të tillë është se drejtuesi mikro: bit PWM është një drejtues softueri i cili përdor të njëjtin kohëmatës për të gjitha kanalet, që do të thotë se të gjitha PWM -të që kemi vendosur duhet të kenë të njëjtën frekuencë (që është diçka që bëra nuk e di kur kam shkruar kodet e mostrës edhe pse kam zbuluar diçka të çuditshme kur kam shkruar Autonomous.py).

Hapi 8: Shkoni më tej

Mos hezitoni të përmirësoni modelin, zgjidhni disa probleme që nuk i kam parë. Për shembull, do të doja që në fund:

  • Shtoni një sensor IR në fund të robotit për ta bërë atë të zbulojë nëse toka është e zezë ose e bardhë ose nëse po arrin në fund të tryezës sime.
  • Ndryshoni sistemin e menaxhimit të baterisë pasi nuk jam i kënaqur ende me të. Në të vërtetë, për momentin, për të rimbushur baterinë, duhet të çmontoni robotin për të nxjerrë qelizën ose mburojën e baterisë jashtë … Prandaj po planifikoj të: 1. shtoj një lidhës mini-USB në pjesën e pasme të robotit që unë do të lidhem me mburojën e baterisë, në mënyrë që ta rimbush atë; 2. Pritini një vrimë në pjesën e poshtme për të parë LED -të nga mburoja e baterisë për të parë kur të ketë mbaruar karikimi.
  • Kontrolloni nëse ekziston një mënyrë e pranueshme për të nxjerrë PWM me frekuenca të ndryshme.
  • Provoni VL53L0XV2 për të zëvendësuar TOF10120 pasi mund të jetë një opsion më i lirë i cili do ta bënte atë të arritshëm edhe për më shumë njerëz. Edhe pse lexova më shumë për këtë sensor dhe duket se kompania që e bëri këtë lirë e bëri me qëllim shumë të vështirë të merrej me…
  • Provoni modele të ndryshme për rrotat për t'i bërë ato më të qëndrueshme (Tani për tani unë do të prisja që nëse i fus rrotat brenda dhe jashtë shumë herë, druri do të dëmtohet në mënyrë progresive. Nëse e bëj drurin më elastik duke modifikuar modelin që mund të të jetë në gjendje ta bëjë atë të zgjasë më gjatë)

Një falënderim i madh për njerëzit nga ekipi i robotikës Mobile (tani pjesë e laboratorit Biorobotics) të EPFL që më ndihmuan shumë të zgjeroja njohuritë e mia për elektronikë dhe mekanikë!

Recommended: