Paso 6: código de
El código básicamente implementa un controlador PID para la inclinación. Tiene un término integral alta, que hace que el bot a adelantar cuando está corrigiendo de un codazo. Tiende a null a la tendencia del bot a la deriva a lo largo, equilibrio vertical pero no estacionaria. Esta es la línea fundamental que resume los términos PID:
velocidad = tilt_rads_estimate * TILT_FACT +
tilt_int_rads * TILT_INT_FACT +
gyro_rads_per_sec * D_TILT_FACT;
Hay varios lugares que usted necesita para modificar en el código para que funcione con tu bot:
La constante GYRO_V_PER_DEG_PER_SEC define cuánto la salida de su particular giro cambia de un cambio de un grado por segundo en tasa de rotación. Me pareció que mina al final de la curva de bell en la hoja de datos.
Asimismo, la constante ACCEL_V_PER_G define el valor para el acelerómetro.
También puede utilizar el formulario de entradas las macetas para modificar otros valores como el desplazamiento X, que se inclina el bot al revés o remite. Esto debe ser ajustado correctamente otra cosa no se balanceará el bot.
El pulsador hace que el bot entrar en modo calibración durante 10 segundos. Para usarlo, poner el bot en su parte posterior y presione el botón y deje durante 10 segundos. Se calibrará automáticamente el punto nulo de tasa de giro.