- Mga Materyal na Kinakailangan:
- Pag-print ng 3D ng Mga Kinakailangan na Bahagi (Opsyonal):
- Skematika at Hardware:
- Pagse-set up ng iyong Android Application:
- Programming ang iyong Arduino:
- Nagtatrabaho:
Nais mo bang bumuo ng isang Pagsubaybay sa Mukha Robotic Arm o Robot sa pamamagitan lamang ng paggamit ng Arduino at hindi anumang iba pang mga programa tulad ng OpenCV, mga pangunahing kaalaman sa C # atbp? Pagkatapos basahin kasama, sa proyektong ito ipapatupad namin ang pagtuklas ng mukha sa pamamagitan ng paghahalo sa lakas ng Arduino at Android. Sa proyektong ito, lilipat ang mobile camera kasama ang iyong mukha sa tulong ng mga servos. Ang bentahe ng paggamit ng Android Mobile Phone dito ay hindi mo kailangang mamuhunan sa isang module ng camera at ang buong gawain sa pagtuklas ng imahe ay maaaring gawin sa mismong telepono, hindi mo kailangan ng iyong Arduino na nakakonekta sa iyong computer upang gumana ito. Dito ginamit namin ang Bluetooth Module kay Arduino upang makipag-usap sa Mobile nang wireless.
Ang application ng Android na ginamit sa proyektong ito ay nilikha gamit ang Pagproseso ng Android, maaari mong direktang mai-install ang application sa pamamagitan ng pag-download ng APK file (basahin pa para sa link) o ilagay sa iyong cap ng programa at gawin ang iyong sariling mas kaakit-akit na Application ng Android gamit ang ibinigay na Processing Code karagdagang sa Tutorial. Matuto nang higit pa tungkol sa Pagproseso sa pamamagitan ng pagsuri sa aming nakaraang Mga Proyekto sa Pagproseso.
Sa pagtatapos ng tutorial na ito magkakaroon ka ng isang Mini Ikiling at Span Robotic Arm na maaaring subaybayan ang iyong mukha at ilipat kasama nito. Maaari mong gamitin ito (na may karagdagang pagsulong) upang i-record ang iyong mga video sa vlog o mag-selfie gamit ang likurang kamera ng iyong mobile phone dahil inilalagay nito ang iyong mukha nang eksakto sa gitna ng iyong mobile screen. Kaya !! Parang nakakainteres? Suriin ang Demo Video sa dulo ng tutorial na ito upang makita itong gumana. Tingnan natin kung paano tayo makakagawa ng isa…
Sinubukan ko ang aking makakaya upang gawing simple ang proyektong ito hangga't maaari, ang sinumang may pinakamaliit na kaalaman sa hardware o coding ay maaaring gumamit ng mga alituntuning ito upang gumana ang proyektong ito sa hindi oras. Gayunpaman sa sandaling magawa mo ito iminumungkahi ko sa iyo na mawala sa likod ng mga code upang malaman mo talaga kung ano ang gumagana sa bagay na ito at kung paano.
Mga Materyal na Kinakailangan:
- Arduino Nano
- Servo motor na SG90 - 2No
- Android Telepono na may disenteng camera
- HC-05 / HC-06 Bluetooth Module
- Computer para sa programa
- 3D printer (opsyonal)
- 9V Baterya
Pag-print ng 3D ng Mga Kinakailangan na Bahagi (Opsyonal):
Upang mai-pan at ikiling ang aming mobile phone kailangan namin ng ilang mga istrakturang mekanikal tulad ng isang mobile holder at ilang mga servo bracket. Maaari kang gumamit ng isang karton upang gumawa ng isa, dahil mayroon akong isang 3D printer nagpasya akong i-print ang 3D sa mga bahaging ito.
Ang 3D na pag-print ay isang kamangha-manghang tool na maaaring magbigay ng maraming kapag pagbuo ng mga proyekto ng prototype o pag-eksperimento sa mga bagong disenyo ng mekanikal. Kung hindi mo pa natuklasan ang mga pakinabang ng isang 3D printer o kung paano ito gumagana maaari mong basahin ang Gabay sa mga nagsisimula sa 3D na pag-print.
Kung pagmamay-ari mo o may access sa isang 3D printer pagkatapos ay maaari mong gamitin ang mga STL file na maaaring ma-download mula dito upang direktang mai-print at tipunin ang mga ito. Gayunpaman ilang mga bahagi tulad ng may hawak ng mobile phone ay maaaring mangailangan ng ilang mga pagbabago batay sa mga sukat ng iyong telepono. Dinisenyo ko ito para sa aking mobile phone sa MOTO G. Gumamit ako ng isang napaka-pangunahing printer ng aking upang mai-print ang lahat ng mga bahagi. Ang printer ay FABX v1 mula sa 3ding na nagmumula sa isang abot-kayang presyo na may dami ng naka-print na 10 cubic cm. Ang murang presyo ay kasama ng isang trade off na may mababang resolusyon sa pag-print at walang pagpapaandar sa SD card o pag-print sa pagpapatuloy. Gumagamit ako ng software na tinatawag na Cura upang mai-print ang mga STL file. Ang mga setting na ginamit ko upang i-print ang mga materyales ay ibinibigay sa ibaba maaari mong gamitin ang pareho o baguhin ang mga ito batay sa iyong printer.
Sa sandaling nai-print mo ang lahat ng kinakailangang mga materyales maaari mong ma-secure ang mga ito sa posisyon sa pamamagitan ng paggamit ng mga turnilyo at ilang mainit na pandikit. Matapos mong makumpleto ang pagpupulong dapat magmukhang ganito sa ibaba.
Skematika at Hardware:
Ang Circuit para sa pagsubaybay sa Mukha sa proyekto ng Smart Phone ay ipinapakita sa imahe sa ibaba:
Ang Circuit Binubuo ng dalawang mga motor ng Servo, kung saan ang isa ay ginagamit upang ilipat ang mobile phone pakaliwa / pakanan at ang iba pa ay ginagamit upang ikiling / ibaba ang mobile phone. Ang direksyon kung saan kailangang lumipat ang servo ay ituturo ng Arduino Nano na mismo ay nakakakuha ng impormasyon mula sa module ng Bluetooth (HC-05). Ang buong circuit ay pinalakas ng isang 9V na baterya.
Ang circuit na ito ay maaaring konektado madali sa iyong breadboard o maaari mo ring solder ang mga ito sa isang maliit na Perf board tulad ng nagawa ko rito.
Pagse-set up ng iyong Android Application:
Tulad ng, sinabi ko nang mas maaga ang pangunahing utak na nagtatrabaho sa likod ng proyektong ito ay ang Android application na ito. Ang android application na ito ay binuo gamit ang Processing Android. Maaari mong direktang mai-install ang application na ito sa iyong mobile phone at ilunsad iyon sa pamamagitan ng pagsunod sa mga hakbang sa ibaba.
- I-download ang APK file mula rito.
- Lakas sa circuit na ipinakita sa itaas.
- Sa iyong mga setting ng telepono maghanap para sa module ng Bluetooth na pinangalanang "HC-05"
- Kung pinangalanan mo ito ng iba pa bukod sa "HC-05" baguhin ito pabalik sa HC-05 dahil pagkatapos lamang gagana ang application.
- Ipares ang iyong module ng Bluetooth gamit ang password na "1234" o "0000".
- Ngayon, ilunsad ang Application sa portrait mode. Dapat mong makita ang screen ng iyong camera at din ang "Nakakonekta sa: HC-05" sa tuktok ng iyong screen.
- Subukang ilipat ang iyong camera sa isang mukha at isang berdeng kahon ay dapat na lumitaw sa tuktok nito at ang posisyon nito ay ipapakita rin sa kaliwang sulok sa itaas ng iyong screen tulad ng ipinakita sa ibaba.
Maaari mong kunin ang Arduino Face Tracking Project na ito sa susunod na antas sa pamamagitan ng pagdadala ng maraming mga pagsulong kung saan hindi mo kakailanganing i-code ang iyong sariling Android application. Ang paglikha ng isang Android application ay maaaring mahirap pakinggan ngunit magtiwala ka sa akin sa tulong ng Pagproseso maaari mong malaman ito sa walang oras. Ang kumpletong code sa pagproseso na ginagamit upang buuin ang application na ito ay maaaring ma-download dito. Malaya kang gumawa ng anumang pagsulong sa iyong sariling pagkamalikhain. Suriin sa ibaba ang mga proyekto upang malaman ang tungkol sa Pagproseso:
- Virtual Reality gamit ang Arduino at Pagproseso
- Ping Pong Game gamit ang Arduino
- Kinokontrol ng Smart Phone FM Radio gamit ang Pagproseso.
- Arduino Radar System gamit ang Processing at Ultrasonic Sensor
Programming ang iyong Arduino:
Ang application ng Android ay makakakita ng mukha at ang posisyon nito sa screen; magpapasya ito kung aling direksyon ang dapat nitong ilipat batay sa posisyon ng mukha upang ang mukha ay makarating sa gitna ng screen. Ang direksyon na ito ay ipinapadala sa Arduino sa pamamagitan ng Module ng Bluetooth.
Ang programa ng Arduino para sa proyektong ito ay medyo simple, kailangan lang naming makontrol ang direksyon ng dalawang servo motor batay sa mga halagang natanggap mula sa Bluetooth Module. Ang kumpletong code ay matatagpuan sa pagtatapos ng tutorial na ito, naipaliwanag ko rin ang ilang mahahalagang linya sa ibaba.
Sa ibaba ng linya ng code ay nagtatatag ng isang serial na koneksyon sa mga pin D12 bilang RX at D11 bilang TX. Samakatuwid ang pin D12 ay dapat na konektado sa TX ng module ng BT at ang pin D11 sa RX ng module ng BT.
SoftwareSerial cam_BT (12, 11); // RX, TX
Pagkatapos ay nasimulan na namin ang module ng Bluetooth sa isang rate ng baud na 9600. Siguraduhin na ang module mo ay gumagana rin sa parehong rate ng baud. Iba pa baguhin ito nang naaayon.
cam_BT.begin (9600); // simulan ang komunikasyon sa Bluetooth sa 9600 baudrate cam_BT.println ("Handa nang kumuha ng mga utos");
Binabasa ng linya sa ibaba kung ano ang papasok sa pamamagitan ng module ng Bluetooth. Gayundin ang data ay nai-save sa variable na "BluetoothData".
kung (cam_BT.available ()) // Basahin kung ano ang papasok sa pamamagitan ng Bluetooth {BluetoothData = cam_BT.read (); Serial.print ("Papasok mula sa BT:"); Serial.println (BluetoothData); }
Batay sa natanggap na data mula sa Bluetooth ang direksyon ng motor ay kinokontrol. Upang buksan ang isang motor na naiwan ang motor ay ang pagbawas ng isang halaga ng 2 mula sa dating posisyon. Maaari mong taasan ang halagang ito ng 2 hanggang 4 o 6 kung kailangan mo ng braso upang mas mabilis na kumilos. Ngunit, maaari itong lumikha ng ilang mga haltak na ginagawang hindi matatag ang camera.
kung (BluetoothData == 49) // Lumiko sa Kaliwa {pos1 + = 2; servo1.write (pos1);} kung (BluetoothData == 50) // Turn Right {pos1- = 2; servo1.write (pos1);} kung (BluetoothData == 51) // Turn Up {pos2- = 2; servo2.write (pos2);} kung (BluetoothData == 52) // Turn Down {pos2 + = 2; servo2.write (pos2);}
Nagtatrabaho:
Kapag handa na kami sa aming hardware, code at Android Application oras na nito para sa ilang aksyon. Lakas lamang ang iyong Arduino at buksan ang android application. Ang Application ay awtomatikong kumokonekta sa HC-05 (dapat mapangalanan HC-05) module ng Bluetooth at maghihintay para sa isang mukha upang makita. Ilagay lamang ang telepono sa aming may-hawak ng mobile at umupo sa harap nito. Dapat mong mapansin ang iyong servo motors na gumagalaw ang iyong telepono upang ang iyong mukha ay mailagay sa gitna ng screen. Lumipat ngayon sa loob ng saklaw ng camera at susundan ng iyong mobile phone ang iyong mga paggalaw. Maaari mo ring subukan ito sa pamamagitan ng paglalagay at paglipat ng anumang larawan.
Ang kumpletong pagtatrabaho ng proyekto ay ipinapakita sa video sa ibaba. Maaari kang bumuo ng maraming