Cov txheej txheem:
- Khoom siv
- Kauj ruam 1: Taw qhia
- Kauj Ruam 2: Cov Khoom Siv thiab Cov Khoom Muag Siv Hauv Txoj Haujlwm no
- Kauj Ruam 3: Yuav Ua Li Cas?
- Kauj ruam 4: Schematics
- Kauj Ruam 5: Yuav Ua Li Cas?
- Kauj Ruam 6: Pseudo-Code
- Kauj ruam 7: Code
- Kauj Ruam 8: Txuas Sab Nraud
Video: Pob Taug Xyuas Neeg Hlau: 8 Kauj Ruam
2024 Tus sau: John Day | [email protected]. Kawg hloov kho: 2024-01-30 09:25
Yog li hauv qhov no, Kuv yuav qhia yuav ua li cas thiaj ua tau lub pob taug qab neeg hlau uas yog neeg hlau yuav txheeb xyuas lub pob thiab ua raws nws. Nws yog lub hauv paus txheej txheem kev tshuaj xyuas uas siv tau uas tuaj yeem siv hauv ntiaj teb niaj hnub no. Yog li, tsuas yog cia peb cia li dhia hauv thiab pib tsim …
NCO TSEG: Nov yog qhov haujlwm uas tau xa mus rau Deakin University, Tsev Kawm Ntawv ntawm IT, SIT-210 Embedded Systems Development
Khoom siv
www.hackster.io/junejarohan/ball-tracking-robot-7a9865
Kauj ruam 1: Taw qhia
Kev saib xyuas niaj hnub no muab qhov teeb meem tseem ceeb uas yog nws nyob ntawm kev koom tes ntawm tib neeg uas raws li peb txhua tus paub tuaj yeem cuam tshuam tau yooj yim, yog li nws yog qhov tseem ceeb tshaj plaws uas peb yuav tsum tshawb pom cov kab ke uas tuaj yeem saib xyuas thaj tsam ntawm tus kheej thiab tsis tu ncua. Thiab peb tseem xav txheeb xyuas yam tsis txaus ntseeg lossis tsis xav tau thiab txaus ntshai thaum ua ib txhij txiav txim siab thiab teb raws li. Yog li cov khoom taug qab nrog kev siv cov txuj ci ntse thiab cov khoos phis tawj yog qhov tseem ceeb thiab tseem ceeb kom ua tiav kev saib xyuas lub tshuab.
Ib qho kev saib xyuas sab nraum zoov yuav tsum muaj peev xwm taug qab cov khoom txav hauv nws qhov kev pom, cais cov khoom no thiab txheeb xyuas qee yam ntawm lawv cov haujlwm. Kuv tau tsim txoj hauv kev los taug qab thiab cais cov khoom no hauv cov xwm txheej tiag. Kev taug qab lub hom phiaj hauv ib lub koob yees duab tau ua tiav siv qhov kev rho tawm tom qab, ua raws los ntawm kev sib tham hauv cheeb tsam. Qhov no suav nrog ntau qhov cues suav nrog qhov nrawm, qhov ntau thiab deb ntawm cov thawv ciam.
Kauj Ruam 2: Cov Khoom Siv thiab Cov Khoom Muag Siv Hauv Txoj Haujlwm no
Kho vajtse Cheebtsam Siv:
- Raspberry Pi (x1)
- Raspberry Pi Lub Koob Yees Duab Module (x1)
- Ultrasonic Sensor (x3)
- SparkFun Dual H-Choj tsav tsheb L298 (x1)
- DC Tsav (x1)
- Khoom noj khoom haus (x1)
- Txuas Txuas
Siv Software:
QhibCV
Cov Cuab Yeej Siv Tes:
Nab hab sej
Kauj Ruam 3: Yuav Ua Li Cas?
Ib qho kev saib xyuas sab nraum zoov yuav tsum muaj peev xwm taug qab cov khoom txav hauv nws qhov kev pom, cais cov khoom no thiab txheeb xyuas qee yam ntawm lawv cov haujlwm. Kuv tau tsim txoj hauv kev los taug qab thiab cais cov khoom no hauv cov xwm txheej tiag. Kev taug qab lub hom phiaj hauv ib lub koob yees duab tau ua tiav siv qhov kev rho tawm tom qab, ua raws los ntawm kev sib tham hauv cheeb tsam. Qhov no suav nrog ntau qhov cues suav nrog qhov nrawm, qhov ntau thiab deb ntawm cov thawv ciam.
Qhov tseem ceeb tshaj thaum tshawb pom cov duab thav duab los ntawm tus ncej yog kom tsis txhob muaj cov thav duab poob zoo li tus bot tuaj yeem nkag mus rau hauv lub xeev limbo yog tias tus bot tsis pom qhov kev taw qhia ntawm kev txav ntawm lub pob vim yog thav duab poob. Yog tias lub pob tawm ntawm thaj tsam ntawm lub koob yees duab, nws yuav nkag mus rau qhov peb hu ua lub xeev limbo, qhov xwm txheej ntawd, tus bot ua 360-degree tig los saib qhov chaw nyob ib puag ncig nws kom txog thaum lub pob rov qab los ntawm tus ncej lub koob yees duab thiab tom qab ntawd pib txav mus rau nws qhov kev coj.
Txog kev tshuaj xyuas cov duab, Kuv tab tom noj txhua tus ncej thiab tom qab ntawd npog nws nrog cov xim xav tau. Tom qab ntawd kuv pom txhua qhov nkhaus thiab pom qhov loj tshaj plaws ntawm lawv thiab khi nws hauv ib lub duab plaub. Thiab qhia lub duab plaub ntawm daim duab tseem ceeb thiab nrhiav qhov chaw ntawm qhov chaw nruab nrab ntawm lub duab plaub.
Thaum kawg, tus bot sim coj cov kev sib koom ntawm lub npas mus rau qhov nruab nrab ntawm nws txoj haujlwm sib koom ua ke. Nov yog qhov neeg hlau ua haujlwm li cas. Qhov no tuaj yeem txuas ntxiv txhim kho los ntawm kev siv IoT lub cuab yeej zoo li cov khoom siv photon uas tuaj yeem qhia rau koj paub thaum pom ib qho thiab pom tias tus neeg hlau ua raws nws lossis thaum tus neeg hlau tau poob txoj hauv kev thiab tam sim no tau rov qab los rau hauv paus..
Rau lub hom phiaj ntawm kev ua cov duab, koj yuav tsum teeb tsa OpenCV software ntawm koj tus raspberry pi uas yog qhov nyuaj heev rau kuv.
Koj tuaj yeem tau txais cov ntaub ntawv xav tau los nruab OpenCV los ntawm qhov txuas no: nyem qhov no
Kauj ruam 4: Schematics
Saum toj no kuv tau muab cov lej rau kuv qhov project thiab nrog nws yog Printed Circuit Board (PCB).
Thiab ntawm no yog qee qhov kev sib txuas tseem ceeb uas koj yuav tsum tau ua:
• Ua ntej tshaj plaws Raspberry Pi Lub Koob Yees Duab module tau txuas ncaj qha rau Raspberry Pi.
• Lub Ultrasonic sensors VCC txuas nrog rau lub davhlau ya nyob twg ib yam yog nrog GND (hauv av) thiab ob qhov chaw nres nkoj ntxiv ntawm lub ntsuas hluav taws xob ultrasonic txuas nrog GPIO pins ntawm Raspberry Pi.
• Cov Motors tau txuas nrog siv H-Choj.
• Lub Hwj Huam tau siv lub Roj Teeb.
Kuv kuj tau ntxiv cov vis dis aus uas tuaj yeem pab nrog kev nkag siab ntawm kev ua haujlwm ntawm lub ntsuas ultrasonic thiab nws ua haujlwm li cas.
thiab kuj koj tuaj yeem ua raws qhov txuas no yog tias koj tsis tuaj yeem pom cov vis dis aus saum toj no.
Kauj Ruam 5: Yuav Ua Li Cas?
Kuv tau ua qhov haujlwm no piav qhia txog cov neeg hlau yooj yim uas tuaj yeem taug qab pob. Tus neeg hlau siv lub koob yees duab los ua cov duab los ntawm kev thaij duab thiab taug qab pob. Txhawm rau taug qab pob ntau yam zoo li nws cov xim, qhov loj me, cov duab siv.
Neeg Hlau pom xim tawv tawv thiab tom qab ntawd tshawb rau lub pob ntawm cov xim ntawd thiab ua raws nws. Kuv tau xaiv Raspberry Pi ua tus tswj hwm micro hauv txoj haujlwm no vim nws tso cai rau peb siv nws lub koob yees duab thiab muab kev hloov pauv tau zoo raws li nws siv cov lus nab nab uas yog tus neeg siv zoo heev thiab nws tseem cia peb siv OpenCV lub tsev qiv ntawv los tshuaj xyuas cov duab.
H-Choj tau siv los hloov qhov kev taw qhia ntawm kev sib hloov ntawm lub cav lossis kom nres lawv.
Txog kev tshuaj xyuas cov duab, Kuv tab tom noj txhua tus ncej thiab tom qab ntawd npog nws nrog cov xim xav tau. Tom qab ntawd kuv pom txhua qhov nkhaus thiab pom qhov loj tshaj plaws ntawm lawv thiab khi nws hauv ib lub duab plaub. Thiab qhia lub duab plaub ntawm daim duab tseem ceeb thiab nrhiav qhov chaw ntawm qhov chaw nruab nrab ntawm lub duab plaub.
Thaum kawg, tus bot sim coj cov kev sib koom ntawm lub pob mus rau qhov nruab nrab ntawm nws txoj haujlwm sib koom ua ke. Nov yog qhov neeg hlau ua haujlwm li cas. Qhov no tuaj yeem txuas ntxiv txhim kho los ntawm kev siv IoT lub cuab yeej zoo li cov khoom siv photon uas tuaj yeem qhia rau koj paub thaum pom ib qho thiab pom tias tus neeg hlau ua raws nws lossis thaum tus neeg hlau tau poob txoj hauv kev thiab tam sim no tau rov qab los rau hauv paus.. Thiab txhawm rau ua qhov no peb yuav siv lub vev xaib software online uas txuas cov cuab yeej thiab tso cai rau lawv ua qee yam kev ua tshwj xeeb uas yog IFTTT ua rau.
Kauj Ruam 6: Pseudo-Code
Nov yog pseudo-code rau kev tshawb pom ntu siv OpenCV qhov uas peb pom lub pob.
Kauj ruam 7: Code
Saum toj no yog cov ntawv luv ntawm cov cai thiab hauv qab no yog cov ncauj lus kom ntxaws ntawm cov cai.
# ntshuam cov pob khoom tsim nyog
Peb YUAV TSHUAJ TUS NEEG YUAV TSUM PAUB
los ntawm picamera.array ntshuam PiRGBArray #Raws li muaj teeb meem daws teeb meem hauv raspberry pi, yuav tsis tuaj yeem ntes ntas los ntawm VideoCapture
los ntawm picamera ntshuam PiCamera ntshuam RPi. GPIO li GPIO ntshuam sijhawm ntshuam numpy li np
Tam sim no peb teeb tsa HARDWARE thiab muab tus lej PIN txuas rau RASPBERRY PI
GPIO.setmode (GPIO. BOARD)
GPIO_TRIGGER1 = 29 #Left ultrasonic sensor
GPIO_ECHO1 = 31
GPIO_TRIGGER2 = 36 #Pem hauv ntej ultrasonic sensor
GPIO_ECHO2 = 37
GPIO_TRIGGER3 = 33 #Right ultrasonic sensor
GPIO_ECHO3 = 35
MOTOR1B = 18 #Left Tsav
MOTOR1E = 22
MOTOR2B = 21 #Right Lub Cev
MOTOR2E = 19
LED_PIN = 13 #Yog tias nws pom lub pob, tom qab ntawd nws yuav ci ntsa iab
# Teeb tus pin raws li qhov tso tawm thiab tawm tswv yim
GPIO.setup (GPIO_TRIGGER1, GPIO. OUT) # Trigger GPIO.setup (GPIO_ECHO1, GPIO. IN) # Echo GPIO.setup (GPIO_TRIGGER2, GPIO. OUT) # Trigger GPIO.setup (GPIO_ECHO2, GPIO. IN) GPIO.setup (GPIO_TRIGGER3, GPIO. OUT) # Ua rau GPIO.setup (GPIO_ECHO3, GPIO. IN) GPIO.setup (LED_PIN, GPIO. OUT)
# Teeb tsa qhov tsis raug (Tsawg)
GPIO.output (GPIO_TRIGGER1, Cuav) GPIO.output (GPIO_TRIGGER2, Cuav) GPIO.output (GPIO_TRIGGER3, Cuav)
Qhov kev ua haujlwm no siv tag nrho ULTRASONIC SENSORS khaws cov kev ncua deb ntawm cov haujlwm uas nyob ntawm peb lub pob
# Tso cai rau kev daws teeb meem
def sonar (GPIO_TRIGGER, GPIO_ECHO): pib = 0 nres = 0 # Teeb tus pin raws li cov zis thiab cov tswv yim GPIO.setup (GPIO_TRIGGER, GPIO. OUT) # Ua rau GPIO.setup (GPIO_ECHO, GPIO. IN) # Echo # Teeb tsa kom yuam kev (Tsawg) GPIO.output (GPIO_TRIGGER, Cuav) #Tso cai rau kev teeb tsa lub sijhawm.s pw (0.01) #thaum nyob deb> 5: #Xa 10us mem tes los ua GPIO.output (GPIO_TRIGGER, Tseeb) time.sleep (0.00001) GPIO. cov zis (GPIO_TRIGGER, Cuav) pib = time.time () thaum GPIO.input (GPIO_ECHO) == 0 thiab time.time ()
Tau txais DC MOTORS los ua haujlwm nrog RASPBERRY PI
GPIO.setup (MOTOR1B, GPIO. OUT)
GPIO.setup (MOTOR1E, GPIO. OUT)
GPIO.setup (MOTOR2B, GPIO. OUT) GPIO.setup (MOTOR2E, GPIO. OUT)
Kev txiav txim siab ua haujlwm kom ua haujlwm rau tus neeg hlau thiab ua kom nws txav mus rau qhov sib txawv
def rau pem hauv ntej ():
GPIO.output (MOTOR1B, GPIO. HIGH) GPIO.output (MOTOR1E, GPIO. LOW) GPIO.output (MOTOR2B, GPIO. HIGH) GPIO.output (MOTOR2E, GPIO. LOW) def thim rov qab (): GPIO.output (MOTOR1B), GPIO. LOW) GPIO.output (MOTOR1E, GPIO. HIGH) GPIO.output (MOTOR2B, GPIO. LOW) GPIO.output (MOTOR2E, GPIO. HIGH) def rightturn (): GPIO.output (MOTOR1B, GPIO. LOW) GPIO.output (MOTOR1E, GPIO. HIGH) GPIO.output (MOTOR2B, GPIO. HIGH) GPIO.output (MOTOR2E, GPIO. LOW) def leftturn (): GPIO.output (MOTOR1B, GPIO. HIGH) GPIO.output (MOTOR1E), GPIO. LOW) GPIO.output (MOTOR2B, GPIO. LOW) GPIO.output (MOTOR2E, GPIO. HIGH)
def nres ():
GPIO.output (MOTOR1E, GPIO. LOW) GPIO.output (MOTOR1B, GPIO. LOW) GPIO.output (MOTOR2E, GPIO. LOW) GPIO.output (MOTOR2B, GPIO. LOW)
Ua Lub Koob Yees Duab Ua Haujlwm Ua Haujlwm thiab Hloov Kho Lub Teeb
#CAMERA CAPTURE
#initialize lub koob yees duab thiab rub qhov siv rau lub koob yees duab nyoos ntes lub koob yees duab = PiCamera () camera.resolution = (160, 120) camera.framerate = 16 rawCapture = PiRGBArray (lub koob yees duab, loj = (160, 120)) # tso cai rau lub koob yees duab kom sov lub sijhawm.s pw (0.001)
Tam sim no ua tiav lub ntsiab lus qhov twg lub hauv paus pib ua raws lub pob thiab zam txhua yam xwm txheej hauv txoj kev
thaum (1 <10): {#distance los ntawm pem hauv ntej ultrasonic sensor nrug C = sonar (GPIO_TRIGGER2, GPIO_ECHO2) #distance los ntawm txoj cai ultrasonic sensor nrug R = sonar (GPIO_TRIGGER3, GPIO_ECHO3) #distance los ntawm sab laug ultrasonic sensor nrug L = sonar (GPIO_TRIGGER1), GPIO_ECHO1) yog (nrug C = 8: rightturn () lub sij hawm. Pw tsaug zog (0.00625) nres () lub sij hawm. 0: leftturn () time.sleep (0.00625) elif distanceL> = 8: leftturn () time.sleep (0.00625) stop () time.sleep (0.0125) forward () time.sleep (0.00625) stop () time.sleep (0.0125) rightturn () time.sleep (0.00625) stop () time.sleep (0.0125) else: stop () time.sleep (0.01) else: #lwm yam nws txav mus rau tom ntej () time.sleep (0.00625) yog (nrug C> 10): #it coj kev sib koom tes ntawm lub pob mus rau nruab nrab ntawm lub koob yees duab lub tswv yim xav. yog (centre_x = 20): yog (centre_x0): chij = 1 sab laug () time.sleep (0.025) rau pem hauv ntej () time.sleep (0.00003125) tsum tsum () time.sleep (0.00625) else: stop () time.sleep (0.01)
lwm tus:
#yog tias nws pom lub pob thiab nws ze heev nws taws teeb coj. GPIO.output (LED_PIN, GPIO. HIGH) time.sleep (0.1) nres () time.sleep (0.1) # cv2.imshow ("kos", thav duab) rawCapture.truncate (0) # tshem cov kwj deg hauv kev npaj rau ncej tom ntej}
Ua qhov NECESSARY CLEANUPS
GPIO.cleanup () #free tag nrho GPIO pins
Kauj Ruam 8: Txuas Sab Nraud
Txuas mus rau qhov ua yeeb yaj kiab video: nyem qhov no (Youtube)
Txuas mus rau Txoj Cai ntawm Git-hub: nyem qhov no (Git-Hub)
Pom zoo:
RC Taug Qab Neeg Hlau Siv Arduino - Kauj Ruam Ib kauj ruam: 3 Kauj Ruam
RC Tracked Robot Siv Arduino - Kauj Ruam Ib Nrab: Hav guys, Kuv rov qab los nrog lwm tus neeg hlau txias chassis los ntawm BangGood. Vam tias koj tau dhau los ntawm peb cov phiaj xwm yav dhau los - Spinel Crux V1 - Tus Cwj Pwm Tswj Tus Neeg Hlau, Spinel Crux L2 - Arduino Xaiv thiab Muab Neeg Hlau nrog Robotic caj npab thiab Badland Braw
Ntsuas Neeg Hlau / 3 Log Neeg Hlau / STEM Neeg Hlau: 8 Kauj Ruam
Ntsuas Cov Neeg Hlau / 3 Log Neeg Hlau / STEM Neeg Hlau: Peb tau tsim ua ke sib npaug thiab 3 lub log neeg hlau rau kev kawm siv hauv tsev kawm ntawv thiab tom qab kawm ntawv cov haujlwm. Tus neeg hlau yog ua raws Arduino Uno, tus tiv thaiv kev tiv thaiv (txhua qhov kev tsim kho cov ntsiab lus muab), Li -Ion roj teeb pob (txhua qhov tsim tawm
Tig Ib Lub Pob Ntseg Rau Hauv Lub Pob Ntseg Pob Ntseg (tsis cuam tshuam) Tsis tas ua kom lub mloog pob ntseg puas: 9 kauj ruam
Tig Ib Lub Pob Ntseg Rau Hauv Lub Pob Ntseg (tsis cuam tshuam) Tsis Ua Lub Pob Ntseg: Qhov no yog lub tswv yim kuv tau tawm ntawm xiav tom qab ib tus phooj ywg muab rau kuv qee lub pob ntseg supercheap tawg. Nws yog lub khoos phis tawj microphone uas tuaj yeem txuas nrog lub mloog pob ntseg yuav luag txhua lub mloog pob ntseg (Kuv nyiam qhov no vim tias kuv tuaj yeem ua game nrog lub mloog pob ntseg siab thiab
Hloov Dav Hlau Dav Hlau Tshem Tawm Lub Pob Ntseg Rau Lub Pob Ntseg Pob Ntseg: 6 Cov Kauj Ruam (nrog Duab)
Hloov Lub Suab nrov Tshem Tawm Lub Pob Ntseg rau Lub Pob Ntseg Lub Pob Ntseg: Puas tau muaj lub sijhawm los muaj qee lub suab nrov no tshem tawm lub mloog pob ntseg los ntawm lub dav hlau? portable li xws li ce
Txhim Kho Hauv Pob Ntseg Pob Ntseg (Pob Ntseg-Pob Nyiaj): 6 Cov Kauj Ruam
Txhim Kho Pob Ntseg Hauv Pob Ntseg (Pob Ntseg Pob Ntseg): Cov pob ntseg pob ntseg tsis haum rau kuv pob ntseg. Tab sis muaj kev daws teeb meem yooj yim rau qhov ntawd