INHOUDSOPGAWE:
2025 Outeur: John Day | [email protected]. Laas verander: 2025-01-23 12:53
In hierdie tutoriaal leer ons hoe u 'n Arduino -balans (balans) -robot kan maak wat homself balanseer. Eerstens kan u na die video -tutoriaal hierbo kyk.
Stap 1: Vereiste hardeware
Arduino Board (Uno) -
MPU-6050 GY521 Acc+Gyro-https://bit.ly/2swR0Xo
DC 6V 210RPM Encoder Gear Motor Set -
L298N -motorbestuurder -
Skakelknoppie -
M3 Hex -skroefdraad -moerset met skroefdraad -
Akriel Perspex -blad -
3.7v 18650 herlaaibare Li-ion+laaier-https://bit.ly/2LNZQcl
9V -battery -
Jumper Wires -
Hot Glue Gun -
Arduino Starter Kit en toebehore (opsioneel): Arduino Board & SCM Supplies #01 -
Arduino Board & SCM Supplies #02 -
Arduino Basic Learning Starter Kit #01 -
Arduino Basic Learning Starter Kit #02 -
Arduino Basic Learning Starter Kit #03 -
Mega 2560 Starter Kit met tutoriaal -
Sensormodule -kit vir Arduino #01 -
Sensormodule -kit vir Arduino #02 -
Stap 2: Montering van die robot
- Boor vier hoeke van 3 akrielvelle. (Prent 1 en 2)
- Tussen elke akrielvel sal ongeveer 8 cantimeter / 3.15 duim wees. (Prent 3)
- Robotafmetings (ongeveer) 15 cm x 10 cm x 20 cm. (Prent 4)
- Die GS -motor en die wiele word in die middel (middellyn) van die robot geplaas. (Prent 5)
- Die motorbestuurder van L298N word in die middelste middellyn van die robot op die eerste verdieping geplaas. (Prent 6)
- Die Arduino -bord word op die tweede verdieping van die robot geplaas.
- Die MPU6050 -module word op die boonste verdieping van die robot geplaas. (Prent 7)
Stap 3: Verbindings
Toets die MPU6050 en maak seker dat dit werk! Koppel eers die MPU6050 aan die Arduino en toets die verbinding met behulp van die kodes in die onderstaande handleiding. Die daha moet op die seriële monitor vertoon word
Instruksies handleiding - MPU6050 GY521 6 -as versnellingsmeter+gyro
YouTube -tutoriaal - MPU6050 GY521 6 -as versnellingsmeter + gyro
Die L298N -module bied die +5V wat die Arduino benodig, solank die ingangsspanning +7 V of groter is. Ek het egter gekies om 'n aparte kragbron vir die motor te hê
Stap 4: Hoe werk balansering?
- Om die robot in balans te hou, moet die motors die val van die robot teenwerk.
- Hierdie aksie vereis terugvoer en 'n regstellende element.
- Die terugvoerelement is die MPU6050, wat beide versnelling en rotasie in al drie as gee, wat deur die Arduino gebruik word om die huidige oriëntasie van die robot te ken.
- Die regstellende element is die motor- en wielkombinasie.
- Die selfbalanserende robot is in wese 'n omgekeerde slinger.
- Dit kan beter gebalanseer word as die massamiddelpunt hoër is as die asas.
- Daarom het ek die battery bo -op geplaas.
- Die hoogte van die robot is egter gekies op grond van die beskikbaarheid van materiaal.
Stap 5: Bronkode en biblioteke
Die kode wat vir die balansrobot ontwikkel is, is te ingewikkeld. Maar dit is nie nodig om bekommerd te wees nie. Ons sal slegs 'n paar data verander.
Ons benodig vier eksterne biblioteke om selfbalanserende robot te laat werk
- Die PID -biblioteek maak dit maklik om die P-, I- en D -waardes te bereken.
- Die LMotorController -biblioteek word gebruik om die twee motors met die L298N -module aan te dryf.
- Die I2Cdev -biblioteek en MPU6050_6_Axis_MotionApps20 -biblioteek is vir die lees van data van die MPU6050.
Laai biblioteke af
PID -
LMotorController -
I2Cdev -
MPU6050 -
Kry die bronkode -
Wat is PID?
- In die beheerteorie is 'n spesiale beheerder genaamd 'n PID nodig om 'n paar veranderlikes (in hierdie geval, die posisie van die robot) konstant te hou.
- P vir proporsioneel, I vir integraal en D vir afgeleide. Elkeen van hierdie parameters het 'winste' wat normaalweg Kp, Ki en Kd genoem word.
- PID bied regstelling tussen die gewenste waarde (of invoer) en die werklike waarde (of uitset). Die verskil tussen die invoer en die uitset word 'fout' genoem.
- Die PID -beheerder verminder die fout tot die kleinste moontlike waarde deur die uitset voortdurend aan te pas.
- In ons Arduino-selfbalanserende robot word die invoer (wat die gewenste kanteling is, in grade) deur sagteware bepaal.
- Die MPU6050 lees die huidige kanteling van die robot en voer dit aan die PID -algoritme wat berekeninge uitvoer om die motor te beheer en die robot in 'n regop posisie te hou.
PID vereis dat die winste Kp-, Ki- en Kd -waardes 'ingestel' is op optimale waardes
Ons pas die PID -waardes in plaas daarvan handmatig aan
- Maak Kp, Ki en Kd gelyk aan nul.
- Pas Kp aan. Te min Kp laat die robot omval (nie genoeg regstelling nie). Te veel Kp laat die robot wild heen en weer gaan. 'N Goed genoeg Kp laat die robot effens heen en weer gaan (of 'n bietjie swaai).
- Sodra die Kp ingestel is, pas Kd aan. 'N Goeie Kd -waarde verminder die ossillasies totdat die robot byna bestendig is. Die regte hoeveelheid Kd sal die robot ook laat staan, selfs al word hy gedruk.
- Stel laastens die Ki. Die robot sal ossilleer as dit aangeskakel word, selfs al is die Kp en Kd ingestel, maar sal mettertyd stabiliseer. Die korrekte Ki -waarde sal die tyd wat die robot neem om te stabiliseer, verkort.
Voorstel vir beter resultate
Ek beveel aan dat u 'n soortgelyke robotraamwerk maak met die materiaal wat in hierdie projek gebruik word om die bronkode vir die Balance Robot stabiel en doeltreffend te laat werk.
Stap 6: Vir ondersteuning
- U kan inteken op die my YouTube -kanaal vir meer tutoriale en projekte.
- U kan ook inteken vir ondersteuning. Dankie.
Besoek my YouTube -kanaal -
Aanbeveel:
Maak Nixie -klok met Arduino in MDF -houtkas: 11 stappe (met foto's)
Maak 'n Nixie -klok met Arduino in MDF -houtkas: in hierdie instruksie sal ek wys hoe u 'n Nixie -klok met Arduino met 'n kring kan maak, so eenvoudig as moontlik. Almal word in 'n MDF -houtkas geplaas. Na voltooiing lyk die horlosie soos 'n produk: mooi en stewig. Kom ons kyk
Maak 'n pasgemaakte Arduino -toetsbank met draadomwikkeling: 7 stappe (met foto's)
Maak 'n pasgemaakte Arduino -toetsbank met draadomwikkeling: hierdie instruksie sal u 'n maklike manier wys om 'n Arduino Nano aan verskillende PCB -uitbreekborde op te dra. Hierdie projek het ontstaan tydens my soeke na 'n effektiewe, maar nie-vernietigende manier om verskeie modules met mekaar te verbind. Ek het vyf modules gehad wat ek wou
Scan nabygeleë voorwerpe om 'n 3D -model te maak met behulp van ARDUINO: 5 stappe (met foto's)
Scan nabygeleë voorwerpe om 'n 3D-model te maak met behulp van ARDUINO: Hierdie projek is spesifiek deur die HC-SR04 ultrasoniese sensor te gebruik om na voorwerpe in die omgewing te soek. Om 'n 3D -model te maak, moet u die sensor in loodregte rigting vee. U kan die Arduino programmeer om alarm te maak wanneer die sensor 'n voorwerp opspoor
Maak jou plant nat met 'n Arduino: 5 stappe (met foto's)
Maak jou plant nat met 'n Arduino: Het jy 'n kamerplant waarvan jy hou, maar vergeet om dit te gereeld nat te maak? Hierdie instruksie sal verduidelik hoe u 'n plantwaterstelsel met Arduino kan maak, en hoe u u plant 'n bietjie meer persoonlikheid kan gee. Nadat u hierdie instruksies gevolg het
Maak 'n webverbinde robot (vir ongeveer $ 500) (met behulp van 'n Arduino en Netbook): 6 stappe (met foto's)
Maak 'n met die internet gekoppelde robot (vir ongeveer $ 500) (met behulp van 'n Arduino en Netbook): hierdie instruksie sal u wys hoe u u eie gekoppelde robot kan bou (met behulp van 'n Arduino mikrobeheerder en Asus eee pc). Waarom sou u 'n web wil hê Gekoppelde robot? Om mee te speel natuurlik. Ry u robot dwarsdeur die kamer of oor die telling