Sisukord:

Arduino - tasakaal - tasakaalustav robot - Kuidas teha?: 6 sammu (piltidega)
Arduino - tasakaal - tasakaalustav robot - Kuidas teha?: 6 sammu (piltidega)

Video: Arduino - tasakaal - tasakaalustav robot - Kuidas teha?: 6 sammu (piltidega)

Video: Arduino - tasakaal - tasakaalustav robot - Kuidas teha?: 6 sammu (piltidega)
Video: NOOBS PLAY CLASH ROYALE FROM START LIVE 2024, Juuli
Anonim
Image
Image

Selles õpetuses õpime, kuidas valmistada Arduino tasakaalustavat (tasakaalu) robotit, mis tasakaalustab ennast. Kõigepealt saate vaadata ülaltoodud videoõpetust.

Samm: nõutav riistvara

Roboti kokkupanek
Roboti kokkupanek

Arduino juhatus (Uno) -

MPU-6050 GY521 Acc+Gyro-https://bit.ly/2swR0Xo

DC 6V 210RPM kodeerija hammasrataste mootorikomplekt -

L298N mootorijuht -

Lülitusnupp -

M3 kuuskantne keermestatud vahekruvimutrite komplekt -

Akrüülist Perspexi leht -

3.7v 18650 Li-ion+laadija-https://bit.ly/2LNZQcl

9V aku -

Jumper Traadid -

Kuumliimipüstol -

Arduino stardikomplekt ja tarvikud (valikuline): Arduino Board & SCM tarvikud #01 -

Arduino Board & SCM tarvikud #02 -

Arduino Basic Learning Stardikomplekt #01 -

Arduino Basic Learning Stardikomplekt #02 -

Arduino Basic Learning Stardikomplekt #03 -

Mega 2560 stardikomplekt koos õpetustega -

Andurimooduli komplekt Arduino jaoks #01 -

Andurimooduli komplekt Arduino jaoks #02 -

Samm: roboti kokkupanek

Roboti kokkupanek
Roboti kokkupanek
Roboti kokkupanek
Roboti kokkupanek
Roboti kokkupanek
Roboti kokkupanek
  • Puurige 3 akrüüllehe nelja nurka. (Pilt 1 ja 2)
  • Iga akrüüllehe vahele jääb umbes 8 kantimeetrit / 3,15 tolli. (Pilt 3)
  • Roboti mõõtmed (umbes) 15 cm x 10 cm x 20 cm. (Pilt 4)
  • Alalisvoolumootor ja rattad asetatakse roboti keskele (keskjoonele). (Pilt 5)
  • L298N mootorijuht paigutatakse roboti esimese korruse keskele (keskjoonele). (Pilt 6)
  • Arduino tahvel paigutatakse roboti teisele korrusele.
  • MPU6050 moodul paigutatakse roboti ülemisele korrusele. (Pilt 7)

Samm: ühendused

Ühendused
Ühendused
Ühendused
Ühendused

Testige MPU6050 ja veenduge, et see töötab! Ühendage MPU6050 kõigepealt Arduinoga ja katsetage ühendust, kasutades allolevas õpetuses olevaid koode. Daha tuleks kuvada jadamonitoril

Instructables Tutorial - MPU6050 GY521 6 telje kiirendusmõõtur+güroskoop

YouTube'i õpetus - MPU6050 GY521 6 telje kiirendusmõõtur + güroskoop

L298N moodul võib pakkuda Arduinole vajalikku +5 V, kuni selle sisendpinge on +7 V või suurem. Siiski valisin mootorile eraldi toiteallika

Samm 4: Kuidas tasakaalustamine toimib?

Kuidas tasakaalustamine toimib?
Kuidas tasakaalustamine toimib?
Kuidas tasakaalustamine toimib?
Kuidas tasakaalustamine toimib?
Kuidas tasakaalustamine toimib?
Kuidas tasakaalustamine toimib?
  • Roboti tasakaalus hoidmiseks peavad mootorid vastu pidama roboti kukkumisele.
  • See toiming nõuab tagasisidet ja parandavat elementi.
  • Tagasiside element on MPU6050, mis annab kiirenduse ja pöörlemise kõigil kolmel teljel, mida Arduino kasutab roboti praeguse orientatsiooni tundmiseks.
  • Korrigeeriv element on mootori ja ratta kombinatsioon.
  • Isetasakaalustav robot on sisuliselt ümberpööratud pendel.
  • Seda saab paremini tasakaalustada, kui massi keskpunkt on rataste telgede suhtes kõrgem.
  • Sellepärast panin aku ülaosale.
  • Roboti kõrgus valiti aga materjalide kättesaadavuse alusel.

Samm: lähtekood ja teegid

Lähtekood ja raamatukogud
Lähtekood ja raamatukogud
Lähtekood ja raamatukogud
Lähtekood ja raamatukogud

Tasakaaluroboti jaoks välja töötatud kood on liiga keeruline. Kuid muretsemiseks pole põhjust. Muudame ainult mõningaid andmeid.

Vajame nelja välist raamatukogu, et isetasakaalustav robot töötaks

  • PID -raamatukogu abil on P, I ja D väärtuste arvutamine lihtne.
  • LMotorController raamatukogu kasutatakse kahe mootori juhtimiseks koos L298N mooduliga.
  • Teek I2Cdev ja raamatukogu MPU6050_6_Axis_MotionApps20 on mõeldud MPU6050 -st andmete lugemiseks.

Laadige alla raamatukogud

PID -

LMotorController -

I2Cdev -

MPU6050 -

Hankige lähtekood -

Mis on PID?

  • Juhtimisteoorias vajab mõne muutuja (antud juhul roboti positsiooni) stabiilsena hoidmine spetsiaalset kontrollerit nimega PID.
  • P - proportsionaalne, I integraal ja D - tuletis. Igal neist parameetritest on “võimendused”, mida tavaliselt nimetatakse Kp, Ki ja Kd.
  • PID parandab soovitud väärtuse (või sisendi) ja tegeliku väärtuse (või väljundi) vahel. Sisendi ja väljundi erinevust nimetatakse veaks.
  • PID -regulaator vähendab vea väikseima võimaliku väärtuseni, reguleerides pidevalt väljundit.
  • Meie Arduino isetasakaalustavas robotis on sisend (soovitud kalle, kraadides) seadistatud tarkvara abil.
  • MPU6050 loeb roboti praegust kallet ja edastab selle PID -algoritmile, mis teeb arvutusi mootori juhtimiseks ja roboti püstiasendis hoidmiseks.

PID eeldab, et võimenduste Kp, Ki ja Kd väärtused “häälestatakse” optimaalsetele väärtustele

Selle asemel reguleerime PID väärtusi käsitsi

  1. Tehke Kp, Ki ja Kd võrdseks nulliga.
  2. Reguleerige Kp. Liiga väike Kp paneb roboti ümber kukkuma (ei piisa parandustest). Liiga palju Kp paneb roboti metsikult edasi -tagasi liikuma. Piisavalt hea Kp paneb roboti kergelt edasi -tagasi liikuma (või pisut võnkuma).
  3. Kui Kp on seatud, reguleerige Kd. Hea Kd väärtus vähendab võnkumisi, kuni robot on peaaegu stabiilne. Samuti hoiab õige kogus Kd robotit püsti isegi surudes.
  4. Lõpuks määrake Ki. Robot võngub sisselülitamisel isegi siis, kui Kp ja Kd on seatud, kuid stabiliseerub aja jooksul. Õige Ki väärtus lühendab roboti stabiliseerumiseks kuluvat aega.

Soovitus paremate tulemuste saamiseks

Soovitan teil luua sarnane robotraam, kasutades selles projektis kasutatud materjale, et Balance Roboti lähtekood töötaks stabiilselt ja tõhusalt.

6. samm: toetuse saamiseks

Toetuse saamiseks
Toetuse saamiseks
  • Rohkem õpetuste ja projektide jaoks saate tellida minu YouTube'i kanali.
  • Samuti saate toetuse tellida. Aitäh.

Külastage minu YouTube'i kanalit -

Soovitan: