Мазмуну:

Arduino Mothbot: 11 кадам (сүрөттөр менен)
Arduino Mothbot: 11 кадам (сүрөттөр менен)

Video: Arduino Mothbot: 11 кадам (сүрөттөр менен)

Video: Arduino Mothbot: 11 кадам (сүрөттөр менен)
Video: ECE 450 Lab 7: Mothbot 2024, Июль
Anonim
Arduino Mothbot
Arduino Mothbot
Arduino Mothbot
Arduino Mothbot

Бул долбоордун максаты-Arduino Duemilanove микроконтроллер тактасын колдонуу менен жөнөкөй жарык ээрчүүчү роботту долбоорлоо жана куруу. Мен чынында арзан, курулушу жөнөкөй жана ар кандай кадамдар үчүн көрсөтмөлөрдүн толук топтомуна ээ болгон робот долбоору менен бөлүшкүм келди. Мен ийгиликке жеттим деп үмүттөнөм жана бул көрсөтмөнү андан да жакшыраак кылуу боюнча комментарийлерди алгым келет.

Бул роботтун дизайны Массимо Банзинин "Arduino менен баштоо" китебин колдонууга багытталган жана [makezine.com Make] менен жарыяланган. Мен ошондой эле серверлерди иштетүү үчүн кодду колдондум: Arduino менен башкарылуучу Servo роботун кантип жасоо керек (SERB). Arduino Mothbot жалпысынан абдан тез жасала турган робот. Бардык бөлүктөрдөн баштайсыз жана импровизациянын кереги жок деп ойлосоңуз, долбоорду курууга бир саат кетиши керек. Эгерде сиз нускамаларды аткарсаңыз жана кодду көчүрсөңүз. Бирок, эгер сиз бир эле учурда бир гана функцияны куруп, жолдо текшерип көрсөңүз, анда бул долбоор кыйла узакка созулушу мүмкүн. Узун тректин артыкчылыгы, балким, сиз көп нерсени үйрөнөсүз жана жолдо көңүл ачасыз.

1 -кадам: Бөлүктөрүңүздү жана шайманыңызды чогултуңуз

Бул роботту жасоо сизге буга чейин эч качан мындай кылган эмес болсоңуз, болжол менен $ 80 бөлүгүн түзөт. Менде иштеген электроника көп болгондуктан, мен үчүн баалар кыйла төмөн болду. Бирок, кайсы бөлүктөрдү алууну, кайдан заказ кылууну билбей туруп, нускоочу көрсөтмөлөрдү аткаруунун канчалык капа болоорун билем, ошондуктан мен сиз үчүн бардык жумушту аткардым. Бөлүктөрдү чарчы кылып алгандан кийин, бул долбоорду жасоо оңой болмок. Төмөнкү бөлүктөрдүн тизмесин алуу үчүн менин проектимдеги вики үчүн төмөнкү шилтемеге өтүңүз

Эми сиз кээ бир шаймандарды алгыңыз келиши мүмкүн. Бул долбоордо ширетилбеген нан тактасы болгондуктан, сиз көптөгөн кооз электроникалык жабдууларсыз жасай аласыз. Калган нерселерди гараждан таба аласыз деп үмүттөнөбүз: 1. Ийненин мурчтары 2. Сым кескичтери 3. Жалпак бурама айдоочу 4. Кичи Филлипс (4 жактуу) бурагыч 5. Түзөлүүчү ачкыч же 11/32 " алты бурчтуу ачкыч 6. Бургулоо 7. 1/16 ", 5/32" жана 7/32 "бургулоочу биттер 8. Араа (милдеттүү эмес) 9. Коопсуздук көз айнектери Электр шаймандарын колдонууда коопсуз ыкмаларды колдонуңуз.

2 -кадам: Пландоо этапы

Пландоо этапы
Пландоо этапы
Пландоо этапы
Пландоо этапы

Бул долбоорду баштоодон мурун мен Instructablesдин айланасында башка көптөгөн долбоорлорду карап чыктым. Мен дагы Массимо Банзинин "Arduino менен баштоо" китебин окууга бир аз убакыт бөлдүм. Бул долбоордо дээрлик бардыгы ушул веб -сайттан же китептен мисалдан жасалат. Мен долбоорду башталгыч роботко жеткиликтүү кылуу максатында ушундайча иштеп чыккам.

Пландоо этабында мен аппараттык жабдууларды жана коддоону гана карап койбостон, электрониканын үй тапшырмасын да аткардым. Мен бул долбоордун электроникасынын жөнөкөй схемасын түзгүм келди, ошондо мен аны куруп жатып эмне болуп жатканын ээрчип алам. Сиз сүрөттө ар кандай компоненттерди, электр линияларын жана Arduino казыктарын көрө аласыз. Бул так диаграмма жана бул долбоордун электроникасы канчалык жөнөкөй экенин көрсөтөт деп үмүттөнөбүз.

3 -кадам: Servosду Arduino менен туташтыруу

Серваларды Arduino менен туташтыруу
Серваларды Arduino менен туташтыруу
Серваларды Arduino менен туташтыруу
Серваларды Arduino менен туташтыруу
Серваларды Arduino менен туташтыруу
Серваларды Arduino менен туташтыруу

Эгерде сиз робот кура турган болсоңуз, анда аны кантип айлантуу керектигин ойлонушуңуз керек. Кыязы, сиз аны алдыга, артка, оңго, солго жөнөтүп, токтотууну каалайсыз. Эгер сиз аны туура кыймылга кантип буйрук кылууну түшүнө албасаңыз, анда сиз бардык сенсорлорду туташтырганда эч нерсе кыла албайсыз. Төмөндө моторду Arduino менен туташтыруу кадамдары келтирилген.

1. Солярсыз нан тактасын орнотууда эң биринчи жасалуучу нерсе - бул серво үчүн жерди (GND) жана кубаттуулукту (+6V) орнотуу. Мен тактадагы Arduinoго эң жакын турган эки узун тилкени колдонууну чечтим. 2. Жер менен электр чубалгылары аныкталгандан кийин Arduino тактасынын жерин solderless breadboardдагы жер тилкесине туташтырыңыз. Азырынча электрди солярсыз нанга туташтырбаңыз. 3. Ар бир серводо үч зым бар, алардан чыгат. Меники ар биринде кара, кызыл жана ак зым бар. Кара - жерге, кызыл - бийликке, ак - башкаруу зымы. Бирдей өлчөмдөгү ар бир серво үчүн үч секирүүчү зымды кесип алыңыз (бардыгы 6). 4. Өткөргүч зымдарды servo зымдардын аягына, андан кийин ар бир сервону solderless breadboardго бекиткиле. 5. Эми секиргичтерди колдонуп, жерди жана электр энергиясын туташтыруу үчүн ар бир серводон жерге жана электр энергиясын туташтырыңыз. 6. Эми ар бир серводон башкаруу зымдарын Arduinoго туташтырыңыз. Сандык чыгууга (PWM) 3 сол сервону туташтырыңыз жана оң servo санариптик чыгууга (PWM) 11. 7. Акырында, 4АА батареяларынан жерге жана кубаттуулукту ширетилбеген нан аянтына жана кубатка туташтырыңыз. Эгерде Arduino күчү жок же азырынча программалана элек болсо, серво кыймылдай баштаса, кабатыр болбоңуз. 8. Кодду колдонуу менен сиз моторлорду алдыга, артка, солго же оңго багытталган функцияларды колдонуп иштете алышыңыз керек.

4 -кадам: Моторлорду сыноо

Менин оюмча, Arduino Mothbotту бириктирүүдө колдонгон кээ бир тест коддорун кошуу маанилүү. Эгерде сиз кызыкдар болсоңуз жана ойлонууга убакыт бөлгүңүз келсе, бул коддун үзүндүлөрү башка долбоорлордо пайдалуу жана пайдалуу болот деп ойлойм. Төмөндө кандайдыр бир кодду жайгаштыруудан мурун, төмөнкүлөр Arduino менен башкарылуучу Servo роботту кантип жасоо (SERB) аттуу дагы бир чоң долбоорго негизделгенин билдиргим келет. Мен ошол көрсөтмөлөрдү аткаруудан көп нерсени үйрөндүм жана керек болгон жерде кредит бергим келди.

github.com/chrisgilmerproj/Mothbot/blob/master/motor_test1.pde

5 -кадам: Күйгүзүү/Өчүрүү баскычын интеграциялоо

Күйгүзүү/Өчүрүү баскычын бириктирүү
Күйгүзүү/Өчүрүү баскычын бириктирүү
Күйгүзүү/Өчүрүү баскычын бириктирүү
Күйгүзүү/Өчүрүү баскычын бириктирүү
Күйгүзүү/Өчүрүү баскычын бириктирүү
Күйгүзүү/Өчүрүү баскычын бириктирүү
Күйгүзүү/Өчүрүү баскычын бириктирүү
Күйгүзүү/Өчүрүү баскычын бириктирүү

Эми сиз роботту бир баскычты басуу менен күйгүзүп же өчүрүүнү каалап жаткандырсыз. Arduino өзү кодду чыңалмайынча чексиз циклде иштетет, бул роботту столго туташтырганда жана ал сизден качып баштаганда абдан капа болот! Баскычты интеграциялоо - бул процесстеги чоң кадам, анткени сиз дагы башка нерселер үчүн баскычтарды колдонууну үйрөнөсүз, мисалы, робот дубалга тийгенде бамперди түзө аласыз. менин сүрөттөрүмдүн көбү үчүн солярсыз нан. Бул жөн гана мен ар кандай кадамдарды көрсөтүп жатканымда сүрөттү ачык -айкын кылууга жардам берет. Баштоо үчүн, дагы бир жумуш кылардан мурун, servo моторлорунан электр энергиясын ажыратыңыз. Бул долбоорго бир нерсе кошкон сайын муну унутпаңыз. Эми сиз роботту күйгүзүп, өчүрүүнү кааласаңыз болот, тескерисинче, роботту кубаттуулукту туташтыргандан кийин дароо кыймылга киришине. Күйгүзүү/өчүрүү баскычынын (жана кийинчерээк сенсорлордун) күчү болушу үчүн, solderless breadboardдун карама -каршы жагындагы тилкени аныктаңыз. Узун секиргич зымдын жардамы менен Arduinoдон келген кубаттуулукту (+5V) жаңы эле аныкталган тилкеге туташтырыңыз. Эки секирүүчү зымды учурдагы которгучка туташтырып, бир четин (+5V) кубатына туташтырыңыз6. Учурдагы которгучтун экинчи учун кичинекей тилкеге solderless breadboardдун ортосуна сайыңыз.7. Ошол эле тилкеден 10К Ом резисторун тилкеге, экинчи учун жерге туташтырыңыз8. Акыр -аягы, бир учунда коммутатор жана резистор менен тилкенин зымын туташтырып, экинчи учун 7 Arduino санариптик киришке 7 коюңуз. Эми код менен роботту күйгүзүү жана өчүрүү үчүн баскычты колдоно билүү керек. Эгерде сиз кодду LED менен колдонсоңуз (санариптик чыгаруу 13) сиз роботтун бортундагы LEDдин күйүп-өчкөнүн көрөсүз. Бул ажыратылган моторлорго күчүңүз болсо, Arduino кодун текшерүүнүн эң сонун жолу.

6 -кадам: On/Off баскычын текшерүү

Бул жаңы код күйгүзүү/өчүрүү баскычын колдонуу жана борттогу светодиодду өчүрүү үчүн маалыматты камтыйт.

github.com/chrisgilmerproj/Mothbot/blob/master/motor_test2.pde

7 -кадам: Жарык сенсорлорун интеграциялоо

Жарык сенсорлорун интеграциялоо
Жарык сенсорлорун интеграциялоо
Жарык сенсорлорун интеграциялоо
Жарык сенсорлорун интеграциялоо
Жарык сенсорлорун интеграциялоо
Жарык сенсорлорун интеграциялоо

Эгерде жарык сенсорлору жок болсо, Arduino Mothbot кандай болмок? Бул жөнөкөй долбоордун максаты - эң жаркыраган жарыкка тартылган робот жасоо. Бул үчүн биз фото-резистор деп аталган кээ бир жарык сенсорлорун бириктиришибиз керек.

1. Дагы, бул кадамды жасоодон мурун, сервоприводдон электрди ажыратыңыз 2. Жарык сенсорлорун орнотуу эки жолу жасалат. Бул убактылуу которгуч менен дээрлик бирдей орнотуу. Чындыгында, бул ошол эле орнотуу, бирок бул жолу сиз убактылуу алмаштыруунун ордуна жарык сенсорун (фото-резистор) колдоносуз. 3. Бул робот айдап бара турган багытты тандоо үчүн эки жарык сенсорун колдонгону үчүн, ар бир жарык сенсорун soldersless breadboardдун карама -каршы жагына же мүмкүн болушунча алысыраак орнотуу сунушталат. 4. Жарык сенсорунун бир учун электр линиясына (+5В), экинчи учун тактанын ортосуна кичинекей тилкеге туташтырыңыз. 5. Ошол эле тилкеге 10k Ом резисторду туташтырыңыз 6. Эми кичинекей тилкеден (фото резистор менен кадимки резистор туташкан жерде) секирүүчү зымды туташтырып, экинчи учун аналогдук киришке сайыңыз. 7. Сол сенсорду Arduinoдогу 0 аналогдук киришке, ал эми оң сенсорду аналогдук 1ге туташтырыңыз. 8. Сиз азыр серволорду жылдыруу үчүн жарык сенсорлорун колдоно билишиңиз керек.

8 -кадам: Акыркы код

Акыркы код
Акыркы код
Акыркы код
Акыркы код

Бул жерде Arduino Mothbotту иштетүү үчүн колдонулган акыркы код. Кодго мен Arduino сериялык портуна басуу билдирүүлөрүн коштум. Эгерде сизде Arduino компьютериңиздин USB порту аркылуу туташкан болсо, анда робот кайсы жолго барууну пландап жатканын айткан басма сөздөрдү көрө алышыңыз керек. Сиз роботтун жүрүм -турумун тууралоо үчүн жарык сенсорунун босогосун жөнгө салгыңыз келиши мүмкүн. Босого негизинен сенсорлорго жана жайгашкан жериңдин жарыгына жараша болот.

github.com/chrisgilmerproj/Mothbot/blob/master/mothbot.pde

9 -кадам: Mothbot Денесин куруңуз

Mothbot Денесин куруңуз
Mothbot Денесин куруңуз
Mothbot Денесин куруңуз
Mothbot Денесин куруңуз
Mothbot Денесин куруңуз
Mothbot Денесин куруңуз

Сиз куруп жаткан робот чындыгында өзүн кармана албаса, анда анын пайдасы жок. Ушул себептен улам денеге муктаж. Мен муну мүмкүн болушунча жөнөкөй курулуш долбоору кылуу үчүн болгон күчүмдү жумшадым. Туура өлчөөлөрдү табуу үчүн, сиз өзүңүз бир аз иштешиңиз керек. Мен карылыктын "эки жолу өлчөө, бир жолу кесүү" ыкмасын сунуштайм.1. Роботтун корпусу мен 6 дюймдук 24 дюймдук жабдуулар дүкөнүнөн сатып алган кичинекей терек жыгачынан жасалган. Мен аппараттык дүкөндө берилген араны колдонуп, 6 "x 8" ге чейин кыскарттым. Андан кийин мен ар бир серво үчүн серво кашаанын бекитилиши үчүн тактайдын маңдайына көзөнөктөрдү бурдум. Бул үчүн мен 5/32 дюймдук бургулоочу битти колдондум.3. Ошондой эле роботту тең салуучу дөңгөлөк үчүн тактанын арт жагындагы тешикти бургуладым. Бул үчүн мен 7/32 дюймдук бургу колдонгом. Мен гайка менен болттун айкалышын колдонбогондуктан, дөңгөлөгүм менен катуу сүрүлүүнү туура көрүш үчүн бир аз кичине бургулоочу битти колдонууну чечтим. Анан кронштейндерди гайкалар жана болттар менен тактага бекиттим. Бул жалпак баш бурагычтын жана жөнгө салынуучу ачкычтын жардамы менен жасалган. Кронштейндерди бекиткенден кийин мен ар бир сервону гайкалар жана болттор менен кронштейндерге бекитип койгом. 6. Акыры, мен дөңгөлөктү бүтүндөй түрттүм.

10 -кадам: Дөңгөлөктөрдү жасоо

Дөңгөлөктөрдү жасоо
Дөңгөлөктөрдү жасоо
Дөңгөлөктөрдү жасоо
Дөңгөлөктөрдү жасоо

Дөңгөлөктөр мен үчүн татаал маселе болчу. Менде чындыгында күбөлөндүрүлгөн робот дөңгөлөктөрү бар болчу, бирок алар а) өтө оор жана б) аларды тандаган серволорума тиркөөгө эч кандай мүмкүнчүлүгүм жок экенин түшүндүм. Мына ошондо мен окшош долбоор үчүн орто мектепте кумуралардын капкагын колдонгондугумду эстедим. Ошентип, ал дүкөнгө ылайыктуу робот дөңгөлөк альтернативасын издеп жөнөдү. Ар бир дөңгөлөк Ziploc Twist 'n Loc контейнеринин капкагынан жасалган. Башка жакшы капкактар - бул жаңгак майы кумуралары же башка тамак -аш товарлары. Мен тамак -ашты текке кетирүүнү жактабайм, бирок капкагыңызды сактаңыз, ошондо сиз робот долбооруңузга туура келген өлчөмдү таба аласыз. Мен калган контейнерлерди чогулткан бөлүктөрүмдү кармоо үчүн колдондум.1. Биринчи кылганым дөңгөлөктөр үчүн каалаган серво мүйүзүн тандоо болду. Мен төрт мүйүзү барларды тандадым жана аларды сатып алганымда менин серволорума кошулду. Эч нерсе кылардан мурун, дөңгөлөктүн ортосунан тешик жасаңыз. Мен муну сиздин 5/32 бургуңуз менен кылууну сунуштайм. Сизге мүйүздү servo менен туташтырган бурамага жетүү үчүн бул керек болот. Эми капкагын мүйүзгө бурап коюңуз. Мен ар бири менен кошо төрт бураманы колдондум капкактарды мүйүздөргө туташтыруу үчүн servo. Эгер сиз мага окшоп капкактан кичинекей тешиктерди алдын ала бурсаңыз оңой болушу мүмкүн. Мен бул үчүн 1/16 дюймдук бургу колдонгом. Бирок этият болуңуз, бул пластмассаны оор бургулоо жана кичине бургулоо кыйын болушу мүмкүн. Эми мүйүздөрдү кичинекей Филлипс (4 жактуу) бурагычтын жардамы менен сервоприёмниктерге туташтырыңыз. Акырында, сизге көбүрөөк тартылуу үчүн резиналарды ар бир дөңгөлөккө ороп коюңуз. Мен резина боюмду азык -түлүк дүкөнүнөн сатып алган продукциямдан алдым. Балким, сизде бир нече киши жатат. Бул учурда бүт кузовду жана дөңгөлөктөрдү чогултуу керек.

11 -кадам: Arduino Mothbotту бүтүрүү

Arduino Mothbot аяктоо
Arduino Mothbot аяктоо

Корпус жана дөңгөлөктөр чогултулганда, роботтун корпусунун үстүнө Arduino жана solderless нан тактасын коюу оңой. Программаны өзгөртүү керек болсо, Arduinoдогу USB кирүүсүнө дагы эле жете алаарыңызды текшериңиз. Мен аларды денеге жабыш үчүн ар биринин астына кара электр лента колдондум. Электр лентасын алып салуу оңой жана абдан жакшы кармайт.1. Сиз курган роботтун корпусунун чокусуна Arduino жана solderless breadboard тасмасын коюңуз. Кайра лента колдонуу менен 4АА батарейка кармагыч менен 9В батарейканы корпуска туташтыруу жакшы идея. Зымдардын жеткенин текшериңиз.3. Серво зымдарын солярсыз нан тактасына туташтырыңыз, эгер сиз аларды мурда алып салсаңыз. Arduino кубатын туташтырыңыз5. Серво моторунун кубатын туташтырыңыз6. Эми роботту жерге коюп, күйгүзүү/өчүрүү баскычын басыңыз! Ал азыр жанданып, бөлмөнүн айланасындагы жарыкты кубалашы керек:) Келечектеги кошумча долбоор катары мен жөнөкөй бамперди же дубалдын сенсорун камтыйт элем. Бул которуу болмок, бул долбоордо колдонулган On/Off баскычы сыяктуу. Бирок, баскыч басылганда, роботко артка, солго же оңго бурулуп, программаны улантууну айтат. Бул бүткөндөн кийин, бул робот башка сенсорлор жана түзмөктөр үчүн кичинекей сыноо платформасы болмок.

Сунушталууда: