Logic Level Converter (3.3v - 5.0v) devolviendo HIGH para Low Volt. Y alta tensión lados cuando no hay nada enchufado. [Raspberry Pi]

1

El objetivo

Tengo una Raspberry Pi con la que me gustaría controlar mi máquina para correr. La salida de 3.3v de los puertos GPIO de Pi y la placa de control del motor de la máquina para correr solo reciben señales de 5v. Por eso, compré un convertidor de nivel lógico bidireccional

El problema

Puedes imaginar lo malo que sería si enganchara mi Pi a la cinta de correr y, en el acto, la cinta de correr está recibiendo un sólido 5v al cable de velocidad. Quiero evitar eso.

He conectado el LV a 3.3v y HV a 5v y he conectado a tierra a ambos lados del convertidor de nivel lógico. Ahora, desde el principio, tocando mi multímetro a Tierra + LV1 muestra 3.3v. Peor aún, tocar HV1 muestra 5v (lo que significa que el escenario de pesadilla hubiera ocurrido si se hubiera conectado).

Grabé un video de mí tocando diferentes partes del convertidor y diciendo los resultados.

Cosas que he reunido hasta aquí.

Si el GPIO de Raspberry Pi no está programado explícitamente para emitir una señal ALTA o BAJA, se convierte en una "antena". Afortunadamente, he aprendido que al establecer un pin explícitamente en BAJO y al conectarlo a LV1 se generará 0v en HV1. El problema es que la Pi necesita tiempo para iniciar e iniciar mi programa, por lo que me temo que si se produce un reinicio, la máquina para correr reciba 5v de velocidad completa durante 30 segundos mientras arranca.

Detalles adicionales

Para este proyecto, tengo cuatro cables que conecto desde mi Pi a la cinta de correr: Inclinación hacia arriba, Inclinación hacia abajo (ambas toman una señal sólida de 5v para activar), Velocidad (señal PWM 5v) y un tacómetro (? ) cable (el diagrama dice que podría usarse para seguir los pasos). De estos 4 cables, 3 son salidas y 1 de ellos son entradas.

Cualquier consejo es apreciado, ¡gracias por leer hasta aquí!

    
pregunta NessDan

1 respuesta

1

Agregue una resistencia desplegable (una resistencia de aproximadamente 1k a tierra) a cada entrada del cambiador de nivel que necesita proteger de una activación errónea. Como resultado, cuando el Pi no está conduciendo la línea, el valor predeterminado es bajo lógico, y las salidas del cambiador de nivel solo serán altas cuando el Pi esté activando activamente las entradas correspondientes en alto. Cuando esté alto, se extraerán aproximadamente 3.3 mA de los pines GPIO para superar el despliegue, que es dentro de los límites recomendados .

Nota: el desplazador de nivel incluye sus propios pullups (lo que hace que la salida se establezca por defecto a alta) , con valor 10k. Cuando la señal es baja, es necesario superar ambos pullup en cada canal (el pullup del LV directamente y el pullup del HV porque el FET realizará). Su resistencia desplegable debe tener un valor que sea lo suficientemente pequeño como para poder superar estos despliegues.

    
respondido por el Andrey Akhmetov

Lea otras preguntas en las etiquetas