Kazalo:

Samohodni robot: 7 korakov
Samohodni robot: 7 korakov

Video: Samohodni robot: 7 korakov

Video: Samohodni robot: 7 korakov
Video: ROBOT S7 - самоходный робот-паллетообмотчик итальянской компании Robopac #shorts 2024, Julij
Anonim
Samohodni robot
Samohodni robot

Kaj sem naredil?

● Robot, ki ga je mogoče usposobiti za hojo (premikanje naprej) po različnih površinah. Bot prikazuje preprosto bitje s 4 nogami brez kolen, ki se težko premika naprej. Ve, da lahko vsako nogo usmeri le na 3 možne načine. Zdaj mora ugotoviti najboljše možne korake, ki jih lahko sprejme za nadaljnje gibanje. Ker je njegovo gibanje odvisno tudi od trenja s površino, verjamemo, da bo za vsako drugačno površino, po kateri hodi, na voljo drugačen (ne nujno edinstven, a najverjetneje podoben) niz korakov, ki bodo povečali njegovo prizadevanje za premikanje naprej.

Za kaj se uporablja?

● Najbolje ga je uporabiti za vizualizacijo vzorcev hoje za AI ROBOT.

Korak: Diagram poteka

Diagram poteka
Diagram poteka

Tu je razčlenitev celotnega projekta. Na splošno je projekt v dveh delih elektronika z mehansko strukturo robota, drugi pa je algoritem, ki teče preko računalnika, in koda, ki teče preko arduina.

2. korak: VKLJUČENE VEČJE KOMPONENTE:

Elektronika

Arduino UNO (!)

Ultrazvočni senzor

Servo motorji

Bluetooth modul

Kodiranje

Arduino IDE

Teraterm

Beležnica Jupyter

Algoritem učenja Q

3. korak: MODUL V1:

MODUL V1
MODUL V1

Okrepitveno učenje: Z uporabo ANN (Umetna nevronska mreža) smo načrtovali usposabljanje našega robota in prišli smo do dveh možnih metod.

Omejitve: Vsaka noga (servo motor) je omejena na le 3 možne položaje 60, 90 in 120 stopinj. Predpostavke: Menimo, da bo gibanje robota sestavljeno iz 4 stanj (stanje je določena orientacija vseh štirih servomotorjev), tj. Obstajala bodo 4 različna stanja robota, ki jih bomo obravnavali kot 4 korake, kar nam daje en cikel gibanja, v ki ga bo bot premaknil nekaj razdalje naprej. Ta cikel se bo ponavljal do neskončnosti, da bo bot ostal pri gibanju.

Edina težava pa je bilo število ponovitev, ki jih je treba oceniti - za vsak motor imamo 3 možne orientacije in 4 različne motorje naredijo 3^4 = 81 stanj, v katerih lahko robot obstaja v enem samem koraku ali stanju. Za dokončanje enega kompleksnega gibanja moramo narediti 4 različne korake, kar pomeni 81^4 = 43, 046, 721 možnih kombinacij, ki jih je treba preveriti za največjo učinkovitost za en cikel gibanja. Recimo, da traja 5 sekund za usposabljanje ene države, kar bi trajalo 6,8250 let za dokončanje usposabljanja!

4. korak: MODUL V2:

Algoritem učenja Q

Algoritem zgodnjega okrepitvenega učenja, razvit za usposabljanje stvari s končnim stanjem in iskanje najkrajših poti. vir:

Matematika algoritma: Obstaja 81 možnih stanj za vsak korak, v katerem je lahko bot, ta stanja poimenujemo kot številke od 1 do 81, zdaj pa želimo vedeti vrednost prehoda, kar pomeni spremembo položaja robota (razdalja se premakne), medtem ko se premakne iz naključnega stanja s1 v neko drugo stanje s2 (s1, s2 iz teh 81 stanj). Lahko ga vidimo kot matriko z 81 vrsticami in 81 stolpcem, kjer bo element matrike enak vrednosti razdalje, s katere se je premaknil, kar ustreza številki vrstice in stolpca. Te vrednosti so lahko pozitivne ali negativne, odvisno od delovanja robota v resnični besedi. Zdaj bomo našli zaprto zanko stanj, kjer je razdalja, ki jo prevozi, vedno pozitivna. Ocenjevali bomo vrednosti matrike 81x81, ki so 81^2 = 6561, zdaj, če vzamemo 5 sekund, da te vrednosti shranimo v matriko, bo 9.1125 ur potrebujete le za izdelavo celote matrice, nato pa lahko preprosto ugotovite zaporedje korakov za največjo učinkovitost premikanja.

5. korak: VKLJUČENI PROBLEMI -

  1. V nekaterih primerih je bilo gibanje robota zelo neenakomerno in je vplivalo na vrednost ultrazvoka senzorja, bot bi se nagnil in pobral razdaljo od oddaljene stene.
  2. Problem prekinitve povezave z prenosnim računalnikom in ponovni zagon arduina, ki je omogočal trening z vrednosti 0, je bil zelo razdražljiv.
  3. Ogled robotskega vlaka neprekinjenih 5 ur je bil zelo izčrpen.

6. korak: MODUL A1 in A2:

  • Mehanski del vključuje ohišje s štirimi servomotorji. Za izdelavo nog smo uporabili sladoledne palice.
  • Naša glavna naloga - spremljati oddaljenost bota od njegovega začetnega položaja.
  • Naš prvi pristop je bil uporaba žiroskopskega senzorja in pospeševanje bota pri njegovem premikanju, da se izvleče njegova hitrost in nato njegov položaj.
  • Težava - izkazalo se je za preveč zapleteno za izvedbo! Alternativa - gibanje bota smo omejili samo na 1 dimenzijo in uporabili ultrazvočni senzor za merjenje razdalje od stene naravnost spredaj.
  • Modul HC05-Bluetooth je bil v času usposabljanja uporabljen za prenos hitrosti prehoda razdalje med dvema korakoma na osebni računalnik in tam so bili podatki shranjeni v matriki.

7. korak: Povezava do videoposnetkov:

Povezava do videoposnetkov
Povezava do videoposnetkov

Otroški koraki:

Posnetek usposabljanja:

Skoraj naravnost:

Videoposnetek plesnega robota:

Končni Vide0:

Priporočena: