Servo motor TowerPro SG90: agregando retroalimentación analógica

0

TL; DR: ¿Dónde exactamente conectaron Hexy guys el cable de retroalimentación ?

Me gustaría:

  1. Eliminar la limitación de 180 ° de esos servos. Hice eso con un tutorial de instructables ( TL; DR: retire la pieza de plástico de los engranajes y el potenciómetro para que gire 360º).
  2. Lea la posición actual a través de alguna señal analógica presente en el tablero de servos.

Lo que he intentado es conectar un par de pines del AA51880 a los pines analógicos A0 y A1 de un arduino:

EsteeselresultadoaltrazarlospinesRdbyPotde AA51880 :

Todaslascapturasdepantallasonsoloconlainicializacióndelservopredeterminadacodificadaen johnny-five.io con Firmata de Arduino:

  var servo = new five.Servo({
    pin: 9,
    startAt: 90
  });

No se codifican barridos ni movimientos para controlar este servo.

Luego, cuando perturbo el servo manualmente, el servo gira algunas veces solo (probablemente < AA51880 corrigiendo la posición) y las lecturas se ven así:

Yestoenunpuntodetiempoyposicióndiferente:

Tambiénobtengogirosespurioseincontroladosdelmotorcuandonoloaccionoenabsoluto.¿Esposiblequeestéinyectandoruidoaltablero?¿Deboagregarunaresistenciapullupenalgúnlugardemiconfiguración?

La pregunta es, dadas las lecturas anteriores, ¿hay alguna manera de leer de manera confiable el voltaje / posición de esos servos baratos que usan los ADC arduino mientras se elimina la limitación de 180 °?

    
pregunta brainstorm

1 respuesta

1

Conectamos el cable de retroalimentación analógica directamente al pin central del potenciómetro. Esto significa que debe estar atento a la impedancia de la entrada de lectura. Normalmente usamos un seguidor de voltaje de opamp para mitigar esto.

    
respondido por el ArcBotics

Lea otras preguntas en las etiquetas