Problemas al usar un sensor ultrasónico con Raspberry Pi

Estoy realizando un proyecto que necesita usar un sensor ultrasónico preciso, pero tengo problemas para trabajar con la frambuesa pi. El sensor que estoy usando es la serie Senscomp 600; el manual no está disponible en línea pero he publicado algunas páginas relevantes aquí. Me doy cuenta de que el sensor funciona con una lógica de 5 V, pero pensé que una señal de 3,3 V sería suficiente para configurar el puerto Trig en la lógica 1 (ya que fue suficiente para otro sensor lógico de 5 V que he usado en el pasado) y simplemente podría usar un divisor de voltaje para bajar la señal de eco de salida de 5V a 3.3V. Sin embargo, después de conectar el circuito, parece que no funciona. El problema podría ser que el sensor requiera un voltaje de activación más alto (dice +4 V en el manual, así que tal vez ese sea el mínimo), en cuyo caso, ¿cómo podría aumentar el voltaje de mi señal? No estoy muy familiarizado con esto, pero he leído sobre personas que usan un transistor para generar una señal de 5V usando un pin GPIO y el pin de 5V.

Alternativamente, el problema podría ser mi configuración. El manual requiere que se establezca una resistencia pull-up en una fuente de alimentación de 5 V, pero dado que la lógica es de 3,3 V para Raspberry Pis, tengo el pin Echo subido a 3,3 V. Aquí hay un diagrama de mi circuito:Circuito para sensor y Raspberry Pi

Soy bastante nuevo en los circuitos, pero según tengo entendido, el pin de eco con una resistencia de extracción actúa así:

Tire hacia arriba de la resistenciacuando el Switch (en este caso, el pin de eco del sensor) está abierto, la MCU (en este caso, Raspberry Pi) leerá VCC (lógica 1), y cuando el Switch está cerrado, la MCU leerá 0V (lógica 0 ). Si así es como funciona, subir hasta 3.3V debería funcionar perfectamente para la frambuesa pi (creo).

También tenga en cuenta que tengo el sensor conectado a una fuente de alimentación externa de 5 V y no consume energía de la frambuesa, como se sugiere en el manual. El código Python que estoy usando mide el tiempo desde que Trig se establece en True hasta que Echo se mide como True, luego lo multiplica por la velocidad del sonido. Cualquier consejo sobre lo que podría intentar sería muy apreciado. Como siempre, ¡muchas gracias!

Google3.3v level shifter
El problema aquí es que no sabes cuál es el problema. Necesita encontrar una manera, como usar un alcance, o incluso un capacitor en serie para acoplarse a la tarjeta de sonido de su computadora para determinar si el módulo ultrasónico está transmitiendo y señalando un eco o no. Una pequeña búsqueda en la web mostrará que, en general, se cree que las entradas de 3,3 V son suficientes para activar estos módulos. Además, tenga en cuenta que los entornos de software basados ​​en Linux (o multitarea) que normalmente se ejecutan en Raspberry Pi tienden a tener problemas con la sincronización precisa.
Voto para cerrar esta pregunta porque se abandonó hace mucho tiempo y faltan detalles críticos: se mencionan tanto un divisor de voltaje como un pull-up, pero los valores se dan solo para uno, y es probable que los dos sean incompatibles. Además, parece haber una violación de VIH en el gatillo que no ha sido investigada.

Respuestas (2)

esquemático

simular este circuito : esquema creado con CircuitLab

(cambiador de nivel del hombre pobre)

No soy un experto en electrónica pero creo que el problema es como dices. 3.3V no es suficiente para activar el disparo del sensor. Para esto, puede usar un transistor mosfet de canal N como el esquema. En principio, cualquier mosfet de canal N con Vgs(max) < 3V debería funcionar.

También puedes probar un circuito comercial como este: Convertidor de nivel lógico

esquemático

simular este circuito : esquema creado con CircuitLab