Convertidor de nivel lógico para H-bridge y UART para Raspberry Pi

2

Aquí está mi situación:

Estoy usando una Raspberry Pi para controlar un H-Bridge. El puente H no tolera que ambas entradas tengan un valor lógico alto, lo que provoca un cortocircuito a través de los transistores, evitando el paso del motor. Debido a que el puente H requiere una entrada de 5 V, abofetee este desastre:

Deshacerse de la entrada flotante en un convertidor de nivel lógico

Ahora, según tengo entendido, ese circuito hunde la corriente en el RPi, lo que no solo es peligroso, sino que también bloquea el Pi. No solo eso, sino que el RPi se inicia con los pines de salida flotantes, lo que hace que el convertidor de nivel lógico emita 5 V, cortocircuitando el puente H como se mencionó.

Primero, resolví el problema con un interruptor manual para desconectar el puente en H hasta que pudiera establecer los pines RPi como salidas, se toleró el hundimiento actual. Ahora, conecté UART también a través de este convertidor (TX) y un divisor de voltaje (RX) y simplemente bloquea el UART de Pi-s, creo que es porque el RPi no puede manejar tanta corriente. (UART funciona bien si las entradas de los motores del RPi están desconectadas)

Necesito un esquema para un convertidor de nivel lógico de 3.3V a 5V que funcione así:

1. on floating input, outputs 0V 
2. does not sink to input
3. uses PNP and NPN transistors
4. is relatively easy to build

Supongo que un divisor de voltaje está bien para eliminar la línea RX de 5 a 3.3

    
pregunta Ollosaurus rex

3 respuestas

2

Uh, no estoy completamente claro sobre el tema aquí. ¿Sabe que simplemente puede aplicar un desplegable estático directamente en los pines IO de la frambuesa pi? El rPi puede conducir fácilmente una carga de unos pocos kilo-ohms.

Simplemente ate el pin de salida a tierra con una resistencia de ~ 5-50K. De esa manera, cuando el pi no se establece como una salida, el pin se arrastrará a tierra, y cuando establezca los pines como una salida, el controlador de salida solo puede dominar el pull-down, y funcionará como normal.

En realidad, ¿qué puente H estás usando? El L298 común funcionará bien con entradas de nivel lógico de 3.3 V, es probable que el controlador de puente que esté utilizando también esté bien.

    
respondido por el Connor Wolf
1

Probablemente desee un circuito de búfer 74HCT125. Tiene un "habilitar" separado del valor de "datos". Por lo tanto, puede hacerlo para que no se "active" hasta que decida que debería hacer eso, por ejemplo, con un pull-up débil. La versión de HCT acepta cualquier cosa sobre 2V como "alta", incluso cuando lo alimenta con un VCC de 5V.

    
respondido por el Jon Watte
0

Esto no responde directamente a la pregunta, pero puede evitar la configuración de entrada peligrosa que corta los contactos de la batería a través de los transistores usando la lógica de control de este H-Bridge .

El truco de este h-brigde es que utiliza inteligentemente 3 señales de control para encender los transistores diagonales (para mover el motor hacia adelante y hacia atrás) sin permitirte girar ambos transistores verticales (ambos a la izquierda, ambos a la derecha o todos) cuatro transistores) a la vez, lo que evita que acorte los contactos de la batería.

El puente h que mencioné también usa optoacopladores entre los circuitos de lógica y puente, lo que también podría ayudar con la conversión de lógica de nivel.

    
respondido por el Ricardo

Lea otras preguntas en las etiquetas