INHOUDSOPGAWE:

Arduino - Balans - Balanseringsrobot - Hoe om te maak ?: 6 stappe (met foto's)
Arduino - Balans - Balanseringsrobot - Hoe om te maak ?: 6 stappe (met foto's)

Video: Arduino - Balans - Balanseringsrobot - Hoe om te maak ?: 6 stappe (met foto's)

Video: Arduino - Balans - Balanseringsrobot - Hoe om te maak ?: 6 stappe (met foto's)
Video: Мониторинг солнечных панелей с помощью blynk iot 2.0 2024, Julie
Anonim
Image
Image

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

Samestelling van die robot
Samestelling van die robot

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

Samestelling van die robot
Samestelling van die robot
Samestelling van die robot
Samestelling van die robot
Samestelling van die robot
Samestelling 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

Verbindings
Verbindings
Verbindings
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?

Hoe werk balansering?
Hoe werk balansering?
Hoe werk balansering?
Hoe werk balansering?
Hoe werk balansering?
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

Bronkode en biblioteke
Bronkode en biblioteke
Bronkode en biblioteke
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

  1. Maak Kp, Ki en Kd gelyk aan nul.
  2. 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).
  3. 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.
  4. 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

Vir ondersteuning
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: