Conversión a nivel lógico para servos

0

Estoy intentando espiar el estado de las comunicaciones servas con un receptor RC y, opcionalmente, cambiar la salida. Desafortunadamente mi controlador es 3.3v mientras que la lógica servo es ~ 5v. Estoy tratando de averiguar cuál es la forma más fácil de hacer esto.

El circuito que he encontrado es el siguiente: receptor - > traductor - > mux (traductor / controlador) - > traductor - > servo

¿Esto tiene sentido y mantendrá un nivel razonable de integridad de la señal?

Sé que el Ardupilot hace algo similar pero, por lo que puedo decir, todo el dispositivo funciona con 5v, por lo que no se necesita un cambio de nivel lógico

    
pregunta pdel

2 respuestas

1

Comenzaría convirtiendo su señal de 3.3V a 5V. Esto puede ser bastante fácil, dependiendo de la impedancia de entrada de la línea de control del servo.

Si tiene varias líneas para convertir de 3.3V a 5V, buscaría una solución de un solo chip. Por ejemplo, el 74HCT244 es un búfer de 8 canales con umbrales de entrada TTL. Un cero lógico es un voltaje de entrada inferior a 0,8 V y uno lógico es un voltaje de entrada superior a 2,1 V. Esto encaja perfectamente con sus señales de 3.3V.

Tenga en cuenta que el chip traductor de nivel se alimenta desde el riel de 5V.

Si solo tiene unos pocos canales (o solo uno), un método simple es usar un pequeño MOSFET de canal N y una resistencia pullup como un cambio de nivel no inversor. Para hacer esto, conecte la compuerta MOSFET al riel de 3.3V, la fuente va a su señal de 3.3V, el drenaje va a una resistencia pullup desde el riel de 5V. Obviamente, la señal de 5V proviene del desagüe.

simular este circuito : esquema creado usando CircuitLab

Esto es barato y puede ser muy pequeño: solo dos componentes por canal.

    
respondido por el Dwayne Reid
1

La palanca de cambio de nivel más simple es un MOSFET y una resistencia. Tenga en cuenta que el FET específico es intercambiable, siempre que sea un canal N. Además, es posible que desee reducir el valor de la resistencia de 10k, si la frecuencia PWM en su servo es realmente alta.

simular este circuito : esquema creado usando CircuitLab

    
respondido por el justinrjy

Lea otras preguntas en las etiquetas