Talaan ng mga Nilalaman:

Abot-kayang Rover na Kinokontrol ng Telepono: 6 na Hakbang
Abot-kayang Rover na Kinokontrol ng Telepono: 6 na Hakbang

Video: Abot-kayang Rover na Kinokontrol ng Telepono: 6 na Hakbang

Video: Abot-kayang Rover na Kinokontrol ng Telepono: 6 na Hakbang
Video: 12 ‘PARENTING MISTAKES’ NA NAKASISIRA NG BUHAY NG ANAK 2024, Disyembre
Anonim
Image
Image
Lumikha ng GUI
Lumikha ng GUI

Ilang sandali ay gumawa ako ng isang teleponong kinokontrol ng telepono gamit ang MotorAir. Nais kong muling bisitahin ang pangunahing ideya ngunit ang paggamit ng mas mura, mas malawak na magagamit na mga bahagi. Dahil din sa ito ay nakabatay sa Arduino, ito ay isang mahusay na springboard para sa higit pa sa isang rover na nagmamaneho sa paligid. Maaari kang magdagdag ng mga sensor, servo, atbp upang talagang maitaboy ang proyektong ito sa anumang direksyon na nais mo (tingnan kung ano ang ginawa ko doon?).

Hakbang 1: Lumikha ng GUI

Lumikha ng GUI
Lumikha ng GUI
Lumikha ng GUI
Lumikha ng GUI

Gumagamit ang proyektong ito ng remotexy.com na kung saan ay isang talagang cool na serbisyo na nagbibigay sa iyo ng isang drag'n'drop tagalikha ng GUI upang makagawa ng iyong sariling app upang makontrol ang iyong proyekto sa robotics mula sa iyong mobile device. Ginagawa nitong maisasagawa ang proyektong ito para sa maraming tao kung kanino ito maaaring hindi maabot ng iba. Maaari itong gumana sa iba't ibang mga microcontroller (karamihan sa mga arduino) at mga diskarteng wireless (Bluetooth, WiFi, ang cloud, Ethernet-- ok na ang isa ay hindi wireless).

Sumama ako sa isang 5V Arduino Pro Mini at HC-05 dahil mayroon na ako sa kanila mula sa ibang mga proyekto. Bagaman ang HC-05 ay katugma lamang sa Android kaya kung mayroon kang isang aparatong Apple maaari mong gamitin sa halip ang HM-10. Sa kabutihang palad ang kanilang mga abstract sa silid-aklatan at na-encapsulate ang lahat ng mga idiosyncrasies ng pagtatrabaho sa lahat ng iba't ibang mga teknolohiya upang maaari kang tumuon sa GUI at ang mga bahagi ng iyong proyekto na natatangi!

Kaya pinili ko muna ang nais kong pagsasaayos (kung ano ang ginagamit kong mga board). Susunod na hinila ko ang mga elemento ng kontrol na gusto ko mula sa kaliwang haligi at nagtakda ng ilang mga pag-aari para sa kanila sa kanang haligi. Pagkatapos ay na-click ko ang berdeng pindutan ng Kumuha ng Source Code at voila, ang karamihan ng gawain ay tapos na para sa akin. Na-install ko ang kanilang silid aklatan sa aking Arduino IDE, na-download ang code na nabuo at nagsimulang magtrabaho dito nang lokal sa aking IDE.

Hakbang 2: Ipasadya ang Code

Ang code na nilikha ng RemoteXY para sa amin ay kumukuha ng mga coordinate ng isang virtual na joystick at ginagawa itong naa-access sa aming Arduino sketch.

Ngayon kailangan naming magdagdag ng ilang karagdagang code upang makagawa ng isang bagay batay sa lokasyon ng joystick. Talaga kasama ang sketch …

  • ang RemoteXY code na kung saan ay lahat ng kailangan mo upang makuha ang mga koordinasyong virtual na joystick
  • isang mix function upang ihalo ang mga koordinasyon ng X at Y
  • isang function na paglipat upang magpadala ng mga utos sa motor control

sa pagpapaandar ng loop ang code ay nakakakuha ng kasalukuyang X at Y na mga koordinat ng joystick, ihinahalo ang mga ito upang matukoy ang bilis ng bawat pagpunta sa channel ng motor at pagkatapos ay magpapadala ng isang utos kasama ang motor controller upang paikutin ang bilis at direksyon na iyon.

Kung gumagamit ka ng isang Arduino Pro Mini kakailanganin mo ang isang FTDI breakout board bago mo mai-upload ang iyong sketch sa iyong Arduino dahil ang Arduino Pro Mini ay walang isang USB port. Gamitin lamang ang FTDI bilang go-pagitan ng USB at ng iyong Arduino.

Maaari mong makuha ang code na ginamit ko dito:

Hakbang 3: Ang Elektronika at Mga Kable

Ang Elektronika at Mga Kable
Ang Elektronika at Mga Kable
Ang Elektronika at Mga Kable
Ang Elektronika at Mga Kable
Ang Elektronika at Mga Kable
Ang Elektronika at Mga Kable

Sa proyektong ito, ginamit ko ang isang Arduino Pro Mini (5V), isang motor Controller ng TB6612FNG, at isang adapter ng Bluetooth na Bluetooth na HC-05. Magkasama, ginugol ko sa ilalim ng $ 13 sa mga bahaging ito … kahit na binili ko sila mga 1.5 taon na ang nakakalipas at ang lugar na nakuha ko sila mula sa hindi na dala. Ngunit paglakas ng loob, mahahanap pa rin sila sa Amazon at iba pang mga online store na medyo mura kung mamili ka sa paligid. Siyempre nakakakuha ka ng isang mas mahusay na presyo ng bawat board kung makakahanap ka ng isang multi-pack na gagana nang maayos kung gumawa ka ng isang pasadyang board upang i-plug ang lahat dahil nagmula ito sa isang 3 pack. Gayundin ang lahat ng mga board na ito ay napaka maraming nalalaman at pagkakaroon ng ilang labis na nakahiga sa paligid (o upang magamit bilang mga kapalit kung papalabasin mo ang usok) ay lubos na katumbas ng halaga sa aking palagay.

Ang Controller ng motor na TB6612FNG ay isang mahusay na motor controller para sa alinman sa chassis ng Runt Rover dahil ang mga motor na ginamit sa kanila ay kumukuha lamang ng 0.25A sa stall at ang motor controller ay maaaring hawakan 1.5A bawat channel.

Orihinal na sinubukan ko ito sa mga jumper wires na naka-plug sa isang solderless breadboard ngunit pagkatapos ay linisin ito sa pamamagitan ng pagkakaroon ng isang board na ginawa sa OSH Park. Ginawa itong mas malinis, mas siksik, at mas matibay. Ngayon ay kailangan ko lamang i-plug ang aking mga sangkap kung nais kong gamitin ang mga ito o madali ko silang hilahin upang mangutang para sa isa pang proyekto.

Hakbang 4: Ang Chassis

Ang Chassis
Ang Chassis
Ang Chassis
Ang Chassis
Ang Chassis
Ang Chassis

Nasasabik akong gamitin ang 6xAA na baterya tray na mayroong isang 9v na konektor ng baterya sa itaas dahil ang 9v ay tama sa butter zone ng karamihan sa mga board ng Arduino. Nais kong mawala ito sa daan ngunit madaling ma-access. Napagpasyahan kong ang paggamit ng ilang mga magnet ay magiging isang makinis na paraan upang mai-mount ang tray ng baterya. Kaya't nag-drill ako ng isang butas sa tray ng baterya upang matatag na mai-mount ang isang pang-akit, itinago ko ang square nut sa loob ng isa sa mga spring … ito ay isang maliit na snug ngunit mahusay na gumagana.

Upang mai-mount ang iba pang pang-akit sa loob ng chassis na natagpuan ko (sa lahat ng mga bagay) isang timing belt mount na gumagana nang perpekto. Dahil nakakaakit ang kabaligtaran ay gumamit ako ng isang magnet na countersunk sa hilagang bahagi, at isa na countersunk sa timog na bahagi. Ang mga flat head screw na ginamit ko upang mai-mount ang mga ito ay ganap na umaangkop sa countersink. Tinakpan ko ang magnet sa tray ng baterya ng ilang mga layer ng electrical tape. Bawasan nito ang lakas ng akit nang kaunti, at bibigyan lamang ito ng kaunting pag-unan kapag magkakasama sila, at kung sa ilang kadahilanan ay masira ang isa sa mga magnet, dapat itong gawing mas madaling paglilinis.

Hakbang 5: Ipares ang App sa Iyong Project

Kaya't nilikha ang iyong GUI, nakasulat ang iyong code at na-upload sa iyong Arduino, at ang proyekto mo ay wired up. Ngayon ay oras na upang mag-apply ng lakas sa iyong proyekto sa pamamagitan ng pagkonekta sa baterya. Susunod ay kakailanganin mong ipares ang iyong proyekto sa iyong telepono tulad ng gusto mo para sa anumang aparatong Bluetooth. Sa aking Android phone (pagpapatakbo ng Android OxygenOS) kailangan kong mag-swipe pababa nang dalawang beses mula sa tuktok ng screen, i-click ang gear, pagkatapos ang Bluetooth, at piliin ang HC-05 mula sa listahan ng mga magagamit na aparato. Pagkatapos ay ipinasok ko ang PIN na 1234.

Hakbang 6: Buksan ang App at Drive

Kapag naipares mo ang iyong proyekto sa telepono at bluetooth buksan ang Remote XY Free app (kung hindi mo pa nagagawa, ngayon ay isang magandang panahon upang mai-install ito mula sa Google Play Store). Kung ito ang iyong unang pagkakataon na patakbuhin ito kakailanganin mong i-click ang pindutang + sa kanang tuktok, pumili ng Bluetooth, pagkatapos ay piliin ang HC-05 mula sa listahan. Sa hinaharap, kapag binuksan mo ang Remote XY app makikita mo ang isang asul na HC-05 na pindutan na iyong na-tap upang ipasok ang interface ng proyekto.

Sa sandaling naipasok mo ang GUI na iyong dinisenyo nang mas maaga, maaari mong i-drag ang joystick sa paligid at dapat magsimulang gumalaw ang iyong rover! Binabati kita! Alam mong gumawa ng iyong sariling rover na kinokontrol ng telepono! Sa sandaling pamilyar ka sa pag-set up na ito maaari mong simulan ang pag-brainstorming ng mga ideya para sa iyong sariling mga add-on at pagpapahusay upang kunin ang simpleng rover na ito sa susunod na antas.

Inirerekumendang: