Sección del sitio web oficial de la bicicleta de equilibrio de código abierto Wildfire
https://www.firebbs.cn/forum.php?mod=forumdisplay&fid=129&page=1
Referencia
No
Video de referencia (este líder de grupo es bueno)
https://www.bilibili.com/video/BV1j7411z7uX
Plataforma de hardware
Plataforma de desarrollo
KEIL5, STM32F103X control principal, descarga SWD para el programa (cualquier descargador servirá, puede descargarlo y puede descargarlo con un puerto serie)
Desarrollo (1)
El bucle de velocidad del PID en cascada en el automóvil es una retroalimentación positiva (cuando una persona salta hacia adelante en la calle, si su pie acelera para caminar, evitará la calle, si camina hacia atrás, acelerará la calle, así es. retroalimentación positiva)
Empiece a afinar
Primero determine el ángulo mecánico del automóvil (después de instalar la batería, estos definitivamente afectarán el centro de gravedad del automóvil)
No estoy seguro, el auto ha estado temblando, no me importa
Tengo un error importante aquí. Un lado del motor sigue vibrando hacia adelante y hacia atrás. Revisé AIN1 y AIN2 y sigue saltando hacia adelante y hacia atrás. Solo presionando el botón RESET puede ser normal.
Esto aumenta la dificultad de la depuración El problema se encuentra, pero lo he ajustado de 4 a 5 horas y todavía no puedo encontrar una solución No sé si hay una soldadura virtual en el hardware.
Primero determine el centro de gravedad del automóvil
Aquí hay alrededor de -2,5 (en posición vertical el automóvil, observe la pantalla OLED y luego empuje lentamente hacia adelante para ver qué valor del ángulo de inclinación es casi el que el automóvil golpeará directamente la calle, de manera similar empuje lentamente hacia atrás para ver qué valor llega a la calle)
Luego adelante + atrás / 2 = mediana mecánica
He probado KP y KD, ambos son signos negativos son comentarios positivos
KP Yo uso -360 aquí, ha habido una oscilación. Reducir
Mi KD obtuvo -0.8 El efecto de erección ya es muy bueno, pero no hay fluctuaciones de alta frecuencia y continúa aumentando
-1,8 aparece jitter
Probé algunos más y descubrí que la amplitud y la probabilidad de la fluctuación son relativamente pequeñas cuando Vertical_Kd = -1.7;, así que lo elegí
Entonces Vertical_Kp = -320 * 0.6, // anillo vertical KP, = -192
Vertical_Kd = -1.7 * 0.6; // -1.02
Luego ajusta el bucle de velocidad
Para probar la memoria del bucle de velocidad, primero comente el bucle vertical y el bucle de velocidad
Entre ellos Ki = 1/200 * Kp
Al girar hacia una rueda, si la otra rueda está en la dirección opuesta y a la misma velocidad, entonces la polaridad es incorrecta. Este es de hecho el fenómeno de mi lado.
modificar
Gira una rueda, cuando las dos ruedas están en la misma dirección y continúan acelerando hasta el máximo, entonces se determina la polaridad del bucle de velocidad, y es un número positivo
Aumente Kp y Ki hasta que la velocidad tienda a 0 mientras el automóvil esté en equilibrio, y el efecto de regresar a la posición original después de moverse sea bueno
Prueba, quita el comentario del anillo vertical de allí, tenemos que usarlo
El efecto está bien, pero todavía es un poco de ida y vuelta.
El efecto es mejor, sigue afinando
Todavía no funciona, todavía hay swing hacia adelante y hacia atrás
Pero con 0.5, 0.49 no es tan bueno como 0.48. Probé 0.47 y es casi lo mismo. Pero todavía hay un poco de ir y venir. Debería ser que el centro de gravedad no se haya determinado.
A continuación, hagamos el anillo de dirección. Primero juzgue la polaridad. Anote el anillo de velocidad y el anillo vertical, y juzgue la polaridad del anillo de dirección por separado
Gire el automóvil, si siente que puede girar el automóvil (el automóvil gira para usted), entonces la polaridad es incorrecta
Continúe girando el automóvil, obviamente puede sentir que el automóvil obstruye su rotación, esta polaridad es correcta
Comience a cambiar los parámetros del bucle sexual y vuelva al comentario
Al final elegí Kp = -1, y se siente bastante bien
El último parámetro ajustado no es bueno, pero aún se mueve hacia adelante y hacia atrás. Debería ser un problema de mediana mecánica. Ajústelo más tarde.