Turinys:

Nuotoliniu būdu valdomo „Arduino“balansavimo roboto sukūrimas: „B-robot EVO“: 8 žingsniai
Nuotoliniu būdu valdomo „Arduino“balansavimo roboto sukūrimas: „B-robot EVO“: 8 žingsniai

Video: Nuotoliniu būdu valdomo „Arduino“balansavimo roboto sukūrimas: „B-robot EVO“: 8 žingsniai

Video: Nuotoliniu būdu valdomo „Arduino“balansavimo roboto sukūrimas: „B-robot EVO“: 8 žingsniai
Video: „Micro:bit“ mikrokontroleris vaikų programavimo mokymui 2024, Lapkritis
Anonim
Image
Image
Nuotoliniu būdu valdomo „Arduino“balansavimo roboto sukūrimas: „B-robotas EVO“
Nuotoliniu būdu valdomo „Arduino“balansavimo roboto sukūrimas: „B-robotas EVO“
Nuotoliniu būdu valdomo „Arduino“balansavimo roboto sukūrimas: „B-robotas EVO“
Nuotoliniu būdu valdomo „Arduino“balansavimo roboto sukūrimas: „B-robotas EVO“

Sekite daugiau autoriaus:

Pybot: „Python + 3D“spausdinta robotų ranka
Pybot: „Python + 3D“spausdinta robotų ranka
Pybot: „Python + 3D“spausdinta robotų ranka
Pybot: „Python + 3D“spausdinta robotų ranka
Paprastas motorizuotas besisukantis ekranas („Arduino“pagrindu + valdomas iš jūsų išmaniojo telefono)
Paprastas motorizuotas besisukantis ekranas („Arduino“pagrindu + valdomas iš jūsų išmaniojo telefono)
Paprastas motorizuotas besisukantis ekranas („Arduino“pagrindu + valdomas iš jūsų išmaniojo telefono)
Paprastas motorizuotas besisukantis ekranas („Arduino“pagrindu + valdomas iš jūsų išmaniojo telefono)
Robotų rankos griebtuvas
Robotų rankos griebtuvas
Robotų rankos griebtuvas
Robotų rankos griebtuvas

Apie: Mums patinka robotai, pasidaryk pats ir juokingas mokslas. „JJROBOTS“tikslas - priartinti „Open“robotų projektus prie žmonių, pateikiant techninę įrangą, gerą dokumentaciją, statybos instrukcijas+kodą, „kaip tai veikia“informaciją … Daugiau apie „jjrobots“»

------------------------------------------------

ATNAUJINIMAS: čia yra nauja ir patobulinta šio roboto versija: „B-robotas EVO“su naujomis funkcijomis

------------------------------------------------

Kaip tai veikia?

„B-ROBOT EVO“yra nuotoliniu būdu valdomas savaime balansuojantis arduino robotas, sukurtas naudojant 3D spausdintas dalis. Turėdamas tik du ratus, „B-ROBOT“visą laiką gali išlaikyti pusiausvyrą naudodamas vidinius jutiklius ir varydamas variklius. Galite valdyti savo robotą, priversti jį judėti ar suktis, siunčiant komandas per išmanųjį telefoną, planšetinį kompiuterį ar kompiuterį, kol jis palaiko pusiausvyrą.

Šis savaime balansuojantis robotas 200 kartų per sekundę nuskaito savo inercinius jutiklius (akselerometrus ir giroskopus, integruotus į MPU6000 lustą). Jis apskaičiuoja savo požiūrį (kampą horizonto atžvilgiu) ir lygina šį kampą su tiksliniu kampu (0º, jei nori išlaikyti pusiausvyrą nejudėdamas, arba teigiamą ar neigiamą kampą, jei nori judėti pirmyn arba atgal). Naudodamas skirtumą tarp tikslinio kampo (tarkime 0º) ir tikrojo kampo (tarkime, 3º), jis valdo valdymo sistemą ir siunčia varikliams tinkamas komandas, kad išlaikytų pusiausvyrą. Komandos varikliams yra pagreitis. Pavyzdžiui, jei robotas yra pasviręs į priekį (roboto kampas yra 3º), jis siunčia komandą varikliams įsibėgėti į priekį, kol šis kampas bus sumažintas iki nulio, kad būtų išlaikyta pusiausvyra.

1 žingsnis: šiek tiek daugiau …

Šiek tiek giliau…
Šiek tiek giliau…
Šiek tiek giliau…
Šiek tiek giliau…
Šiek tiek giliau…
Šiek tiek giliau…

Fizinė problema, kurią išsprendžia B-ROBOT, vadinama atvirkštine švytuokle. Tai tas pats mechanizmas, kurio reikia norint išlaikyti pusiausvyrą virš rankos. Sukimosi taškas yra po objekto masės centru. Daugiau informacijos apie apverstą švytuoklę rasite čia. Matematinis problemos sprendimas nėra lengvas, tačiau mums nereikia jo suprasti, kad išspręstume roboto pusiausvyros problemą. Turime žinoti, kaip elgtis, kad atkurtume roboto pusiausvyrą, kad galėtume įdiegti valdymo algoritmą problemai išspręsti.

Valdymo sistema yra labai naudinga robotikoje (pramoninė automatika). Iš esmės tai yra kodas, gaunantis informaciją iš jutiklių ir taikinių komandų kaip įvestis ir sukuriantis išvesties signalus, kad būtų galima valdyti roboto pavaras (mūsų pavyzdyje pateiktus variklius), kad būtų galima reguliuoti sistemą. Mes naudojame PID valdiklį (proporcingas + išvestinis + integralus). Šio tipo valdymas turi 3 konstantas kP, kD, kI koreguoti. Iš Vikipedijos: „PID valdiklis apskaičiuoja„ klaidos “vertę kaip skirtumą tarp išmatuotos [įvesties] ir norimos nustatytos vertės. Valdiklis bando sumažinti klaidą, sureguliuodamas [išvestį]. Taigi, jūs nurodote PID, ką matuoti („Įvestis“), kur norite, kad šis matavimas būtų („Nustatytoji vertė“), ir kintamąjį, kurį norite koreguoti, kad tai įvyktų („Išvestis“).

Tada PID sureguliuoja išvestį, bandydamas įvestį atitikti nustatytą vertę. Pavyzdžiui, vandens rezervuarą, kurį norime užpildyti iki tam tikro lygio, įvesties, nustatytosios vertės ir išvesties būtų lygis pagal vandens lygio jutiklį, norimą vandens lygį ir į baką pumpuojamą vandenį. kP yra proporcinė dalis ir yra pagrindinė kontrolės dalis, ši dalis yra proporcinga klaidai. kD yra išvestinė dalis ir taikoma klaidos išvestinei priemonei. Ši dalis priklauso nuo sistemos dinamikos (priklauso nuo roboto, variklių svorio, inercijos …). Paskutinis, kI taikomas klaidos integralui ir naudojamas nuolatinėms klaidoms sumažinti, tai yra tarsi galutinės išvesties apdaila (pagalvokite apie RC automobilio vairo apdailos mygtukus, kad automobilis važiuotų visiškai tiesiai, kI pašalina poslinkį tarp reikalaujamo tikslo ir faktinės vertės).

„B-ROBOT“prie vairo išvesties pridedama vartotojo vairo komanda (vienas variklis su teigiamu ženklu, kitas-su neigiamu ženklu). Pavyzdžiui, jei vartotojas siunčia vairo komandą 6, kad pasuktų į dešinę (nuo -10 iki 10), prie kairės variklio vertės turime pridėti 6 ir iš dešiniojo variklio atimti 6. Jei robotas nejuda pirmyn ar atgal, vairavimo komandos rezultatas yra roboto sukimasis

2 žingsnis: Ką apie nuotolinio valdymo pultą?

"pakrovimas =" tingus"

Rekomenduojamas: