Convierta 3.3V PWM de Beaglbone negro a 5V PWM

Tengo un Beaglebone Black revC. Quiero usar un motor sin escobillas ( EMAX XA2212/1400KV ) con ESC ( hobbywing skywalker 20 ). El voltaje Vpp de Beaglebones es de 3,3 V y el ESC da (da un pitido con un intervalo de aproximadamente 2 segundos) " La señal del acelerador es irregular " señal de problema. Creo que este ESC acepta solo 5V Vpp . ¿Cómo se puede arreglar esto? ¿Cómo puedo cambiar 3.3V PWM a 5V PWM?

La premisa de su pregunta es probablemente errónea. Es probable que su problema sea una señal realmente inestable. Tenga en cuenta que usar un sistema Linux multitarea para controlar algo controlado por un ESC es probablemente una mala idea.

Respuestas (2)

Hay muchísimas maneras de hacer esto, pero dependerá de sus limitaciones, como la velocidad de cambio, las pérdidas aceptables, etc.

Algo como esto funcionaría. Cuando el GPIO está alto, Q1 está encendido, bajando la puerta de M1 y, por lo tanto, encendiéndolo:

esquemático

simular este circuito : esquema creado con CircuitLab

Una opción alternativa sería usar un circuito de amplificador operacional (no inversor podría ser más adecuado para mantener las cosas simples). Sin embargo, tenga en cuenta los requisitos de tiempo .

Otra opción sería utilizar un circuito inversor CMOS (dos MOSFET; uno tipo n y otro tipo p). El inversor CMOS, naturalmente, invertirá su señal, así que simplemente invierta su PWM en el software (en lugar de dejar la salida como "PWM_output=125", escriba "PWM_output_inverted=255-PWM_output"). El inversor CMOS reinvertirá su señal a la polaridad correcta. Nuevamente, recuerde tener en cuenta las restricciones de tiempo para cambiar la frecuencia.

Un amplificador operacional es la elección equivocada. Un búfer CMOS en una familia lógica apropiada podría ser el adecuado. Sin embargo, es más probable que toda la premisa de la pregunta esté equivocada. Los ESC generalmente se construyen con MCU que están felices de aceptar una señal de 3.3v.