Taula de continguts:
Vídeo: Robot d'equilibri automàtic - Algorisme de control PID: 3 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:10
Aquest projecte es va concebre perquè m’interessava aprendre més sobre els algorismes de control i com implementar de manera efectiva bucles PID funcionals. El projecte encara està en fase de desenvolupament, ja que encara s’ha d’afegir un mòdul Bluetooth que permetrà controlar el robot des d’un telèfon intel·ligent Bluetooth.
Els motors de corrent continu N20 utilitzats eren relativament barats i, per tant, tenen una quantitat considerable de joc. Això provoca una petita quantitat de sacsejada a mesura que els motors superen el "flojament" ja que apliquen el parell a les rodes. Per tant, és gairebé impossible aconseguir un moviment perfectament suau. El codi que he escrit és raonablement senzill, però demostra eficaçment les capacitats de l'algorisme PID.
Resum del projecte:
El xassís del robot s’imprimeix en 3D mitjançant una impressora Ender 3 i està dissenyat per ajustar-se a pressió.
El robot està controlat per un Arduino Uno que pren les dades del sensor del MPU6050 i controla els motors de corrent continu mitjançant un controlador de motor extern. Funciona amb una bateria de 7.4V i 1500mAh. El controlador del motor ho regula a 5 V per alimentar l'Arduino i subministra 7,4 V als motors.
El programari s'ha escrit des de zero amb l'ajut de les biblioteques 'Arduino-KalmanFilter-master' i 'Arduino-MPU6050-master' de gitHub.
Subministraments:
- Parts impreses en 3D
- Arduino UNO
- Sensor MPU6050 de 6 eixos
- Controlador de motor D. C
- Motors N20 DC (x2)
- Bateria de 9V
Pas 1: construcció de robots
Impressió i muntatge
Tota la construcció hauria de ser ajustada a pressió, però he utilitzat superglue per assegurar els components i assegurar-me que el robot sigui completament rígid en fer equilibris.
He dissenyat les peces de Fusion 360 i he optimitzat cada peça per imprimir sense suports per permetre toleràncies més estretes i un acabat superficial més net.
Els paràmetres utilitzats a la impressora Ender 3 eren: 0,16 mm de capes d’alçada al 40% d’ompliment de totes les parts.
Pas 2: robot d'impressió 3D
Xassís (x1)
Roda esquerra (x2)
Carcassa del motor esquerre (x2)
Carcassa Arduino (x1)
Pas 3: Algorisme de control PID
He escrit un algoritme de control PID des de zero amb les biblioteques 'Arduino-KalmanFilter-master' i 'Arduino-MPU6050-master' de gitHub.
La premissa de l'algorisme és la següent:
- Llegiu dades brutes de MPU6050
- Utilitzeu el filtre Kalman per analitzar les dades del giroscopi i l’acceleròmetre per cancel·lar les inexactituds en les lectures del giroscopi a causa de l’acceleració del sensor. Això retorna un valor relativament suavitzat per al to del sensor en graus fins a dos decimals.
- Calculeu l’error de l’angle, és a dir: l’angle entre el sensor i el punt de consigna.
- Calculeu l’error proporcional com a (constant de proporcionalitat x error).
- Calculeu l'error integral com la suma corrent de (constant d'integració x error).
- Calcula l’error derivat tan constant com [(constant de diferenciació) x (canvi d’error / canvi de temps)]
- Suma tots els errors per donar la velocitat de sortida que s’enviarà als motors.
- Calculeu quina direcció voleu girar els motors en funció del signe de l'angle d'error.
- El bucle s’executarà indefinidament i es basarà en la sortida a mesura que l’entrada varia. Es tracta d’un bucle de retroalimentació, que utilitza els valors de sortida com a nous valors d’entrada per a la següent iteració.
El pas final és sintonitzar els paràmetres Kp, Ki i Kd del bucle PID.
- Un bon punt de partida és augmentar lentament Kp fins que el robot oscil·li al voltant del punt d’equilibri i pugui caure.
- A continuació, inicieu Kd al voltant de l'1% del valor de Kp i augmenteu lentament fins que desapareguin les oscil·lacions i el robot llisqui suaument quan s'empeny.
- Finalment, comenceu amb Ki al voltant del 20% de Kp i varieu fins que el robot "superi" el punt de consigna per captar activament una caiguda i tornar a la vertical.
Recomanat:
Robot d'equilibri automàtic de 2 rodes: 4 passos
Robot d'equilibri automàtic de 2 rodes: segons la meva modesta opinió, no sou un autèntic fabricant, tret que no construïu el vostre propi robot d'equilibri automàtic de 2 rodes. :-) Així que, aquí està … i, el més important, funciona !!! Aquest projecte sembla molt senzill. En el seu lloc, requereix un bon nivell de coneixement o
Robot d'equilibri / robot de 3 rodes / robot STEM: 8 passos
Robot d'equilibri / robot de 3 rodes / robot STEM: hem construït un robot d'equilibri combinat i de 3 rodes per a ús educatiu a les escoles i programes educatius extraescolars. El robot es basa en un Arduino Uno, un blindatge personalitzat (es proporcionen tots els detalls de la construcció), un paquet de bateries Li Ion (tot constr
Plataforma Stewart d'equilibri de boles controlades PID: 6 passos
Plataforma Stewart d’equilibri de pilota controlada per PID: motivació i concepte general: com a físic en formació, m’atrau naturalment i intento comprendre els sistemes físics. He estat entrenat per resoldre problemes complexos dividint-los en els seus ingredients més bàsics i essencials, després
Creació d’un robot d’equilibri Arduino controlat remotament: robot B EVO: 8 passos
Creació d’un robot d’equilibri Arduino controlat remotament: robot B EVO: ------------------------------------ -------------- ACTUALITZACIÓ: aquí hi ha una versió nova i millorada d’aquest robot: el robot B EVO, amb noves funcions. -------------------------------------- Com funciona? B-ROBOT EVO és un sistema remot control
Robot d'equilibri automàtic mitjançant algoritme PID (STM MC): 9 passos
Robot d’equilibri automàtic mitjançant algoritme PID (STM MC): recentment s’ha treballat molt en l’equilibri automàtic d’objectes. El concepte d’autoequilibri va començar amb l’equilibri del pèndol invertit. Aquest concepte es va estendre també al disseny d’avions. En aquest projecte, hem dissenyat una petita modificació