aplicación estabilizadora del controlador PID

0

Me pregunto si un controlador PID es la forma correcta de implementar un estabilizador para una cámara o cualquier dispositivo. Si tuviera que agitar el dispositivo hacia arriba y hacia abajo y quisiera cancelar los movimientos acelerando de la manera opuesta usando un motor y un actuador lineal, ¿funcionaría un controlador pid? Puedo recopilar datos en tiempo real en Arduino o ingresar una gran variedad de datos de aceleración.

Quería basarlo en este laboratorio. enlace

Es un circuito que usa un controlador pid para mantener el brillo de una bombilla con el mismo brillo independientemente de la cantidad de resistencia que apliques con el potenciómetro.

El código me confunde porque cambia el punto de ajuste cada vez. Pensé que un controlador pid tiene una entrada, una salida deseada y la salida de cada iteración. ¿Por qué cambiaría el punto de ajuste?

Gracias por cualquier ayuda! Me aseguré de leer cada hilo pid aquí.

    
pregunta lightro

1 respuesta

3

La estabilización de la cámara es mucho más difícil de lo que parece. Un bucle PID es solo un ingrediente necesario. Dependiendo del rendimiento que requiera, es posible que también necesite feed-forward y mucho ancho de banda.

El primer problema es que un bucle PID puro es controlado por error. Si no hay ningún error, no hay un comando para corregir ningún movimiento. Por lo tanto, no obtendrá ninguna corrección hasta que haya suficiente error para efectuar una corrección, y esa cantidad de movimiento probablemente será visible.

Hay dos maneras de lidiar con esto. Una es tener un bucle PID lo suficientemente ajustado como para que una pequeña cantidad de movimiento efectúe una corrección, con el sensor ubicado con la cámara (dentro de la envolvente, donde detecta cómo se ve afectada la cámara). Seguirá habiendo errores, pero la esperanza es que el bucle responda lo suficiente como para que el movimiento resultante sea apenas visible. Eso requiere ancho de banda, y estoy bastante seguro de que un Arduino no está a la altura de la tarea. Uso un DSP de 200 MHz para obtener un bucle lo suficientemente ajustado.

La segunda forma de lidiar con el error es tratar de evitar que ocurra en primer lugar. Para eso, utilizarías feed-forward. Con la función de avance, necesitaría un sensor FUERA de la envolvente, donde detecta el movimiento que afectaría a esa parte de la plataforma de la cámara que no se está estabilizando. Este movimiento luego se envía hacia adelante para ordenar el bucle, con una ganancia que es lo suficientemente precisa para aplicar la cantidad de corrección necesaria para evitar cualquier error. Nuevamente, requerirá suficiente ancho de banda para reaccionar antes de que se vea cualquier movimiento, y establecer la cantidad precisa de ganancia de avance es crítico.

Con cualquier enfoque, se requieren sensores de alto ancho de banda. Ambas técnicas son a menudo necesarias para la estabilización de alta calidad.

    
respondido por el Mark

Lea otras preguntas en las etiquetas