Taula de continguts:

Robot autònom: 7 passos
Robot autònom: 7 passos

Vídeo: Robot autònom: 7 passos

Vídeo: Robot autònom: 7 passos
Vídeo: Невероятное Изобретение - Этот Дрон Изменит Все 2024, De novembre
Anonim
Robot autònom
Robot autònom

Què he fet?

● Un robot que es pot entrenar per caminar (avançar) per diferents superfícies. El bot representa una criatura senzilla amb 4 potes sense genolls que lluita per avançar. Sap que pot orientar cadascuna de les potes només de 3 maneres possibles. Ara ha d’esbrinar els millors passos possibles que pot seguir per seguir movent-se. Atès que el seu moviment també depèn de la fricció amb la superfície, creiem que per a cada superfície que camini, hi haurà un conjunt de passos diferents (no necessàriament únics, però molt probablement similars) per maximitzar el seu esforç per avançar.

Per a què serveix?

● S’utilitza millor per visualitzar els patrons de caminar d’un ROBOT AI.

Pas 1: el diagrama de flux

El diagrama de flux
El diagrama de flux

Aquí un desglossament de tot el projecte. A grans trets, el projecte consta de components electrònics de dues parts amb estructura mecànica del robot i l'altra és l'algorisme que s'executa en ordinador i el codi que s'executa en arduino.

Pas 2: COMPONENTS MAJORS IMPLICATS:

Electrònica

Arduino UNO (!)

Sensor d'ultrasons

Servomotors

Mòdul Bluetooth

Codificació

IDE Arduino

Teraterm

Llibreta Jupyter

Q- algorisme d'aprenentatge

Pas 3: MUDUL V1:

M MODDUL V1
M MODDUL V1

Aprenentatge de reforç: mitjançant ANN (Artificial Neural Network) vam planejar entrenar el nostre robot i vam plantejar dos mètodes possibles.

Restriccions: cada pota (servomotor) està obligada a prendre només 3 posicions possibles de 60, 90 i 120 graus. Supòsits: considerem que el moviment del bot constituirà 4 estats (un estat és una determinada orientació dels quatre servos), és a dir, hi haurà 4 estats diferents del robot que considerarem com a 4 passos respectivament que ens donen un cicle de moviment, en que el bot avançarà una mica més endavant. Aquest cicle es repetirà ad infinitum per mantenir el bot en moviment.

Però l’únic problema va ser el nombre d’iteracions que s’haurien d’avaluar: tenim 3 orientacions possibles per a cada motor i hi ha 4 motors diferents que el converteixen en 3 ^ 4 = 81 estats en què el robot pot existir en un sol pas o estat. Hem de fer 4 passos diferents per completar un moviment complex, la qual cosa significa 81 ^ 4 = 43, 046, 721 possibles combinacions que s'han de comprovar per obtenir la màxima eficiència d'un cicle de moviment. Suposem que es necessiten 5 segons per entrenar un sol estat, trigarien 6,8250 anys en completar la formació.

Pas 4: MUDUL V2:

Algorisme Q-learning

Es va desenvolupar un primer algorisme d’aprenentatge de reforç per entrenar coses amb estat finit i trobar els camins més curts. font:

Math of Algorithm: hi ha 81 estats possibles per a cada pas en què pot estar el bot, anomenem aquests estats com a números de l'1 al 81 i ara el que volem saber és el valor de transició, és a dir, el canvi de posició del robot (distància moguda)) mentre es mou d'un estat aleatori s1 a algun altre estat s2 (s1, s2 d'aquests 81 estats). El podem veure com una matriu que té 81 files i 81 columnes on un element de matriu serà igual al valor de la distància des de la qual es va moure corresponent al seu número de fila i columna. Aquests valors poden ser positius o negatius en funció de l'acció del robot en paraules reals. Ara trobarem un bucle tancat d’estats on la distància que recorre sempre és positiva. Avaluarem valors de matriu de 81x81 que són 81 ^ 2 = 6561; ara, si trigem 5 segons a obtenir aquest valor emmagatzemat a la matriu, Preneu 9.1125 hores només per fer tota una matriu i, a continuació, es podria esbrinar fàcilment un bucle de passos per maximitzar l'eficiència del moviment.

Pas 5: PROBLEMES IMPLICATS -

  1. Per a alguns estats, el moviment del bot era molt desigual i afectava el valor del sensor dels ultrasons, el bot s'inclinaria i recolliria la distància d'una paret distant.
  2. El problema de la desconnexió del portàtil i el reinici de l’arduino feia que entrenés a partir del valor 0 era molt irritant.
  3. Veure el robot durant cinc hores en forma continuada va ser molt exhaustiu.

Pas 6: MUDUL A1 i A2:

  • La part mecànica inclou el tauler del xassís amb quatre servos fixats. Hem fet servir palets de gelat per fer potes.
  • La nostra tasca principal és fer un seguiment de la distància del bot des de la seva posició inicial.
  • El nostre primer enfocament va ser utilitzar el sensor giroscòpic i utilitzar l’acceleració del bot mentre es mou per extreure la seva velocitat i posteriorment la seva posició.
  • Problema: va resultar massa complicat d’implementar. Alternativa: vam restringir el moviment del bot a una sola dimensió i vam utilitzar un sensor d'ultrasons per mesurar la distància d'una paret cap endavant.
  • El mòdul HC05-Bluetooth es va utilitzar durant el període d'entrenament per transmetre la velocitat de transició a distància entre dos passos al PC i allà les dades es van emmagatzemar en una matriu.

Pas 7: enllaç a vídeos:

Enllaç a vídeos
Enllaç a vídeos

Passos del nadó:

Foto d'entrenament:

Gairebé recta:

Vídeo del robot ballant:

Vide0 final:

Recomanat: