ancabi
Posts: 5
Joined: Wed Jun 26, 2013 3:15 pm

Error detección de interrupciones

Fri Sep 13, 2019 10:32 am

Buenas, estoy haciendo un proyecto en el que la Raspberry está alimentada por 2 baterias de 12V y mediante el Zero2Go Omini me convierte a los 5V, utilizo ese shield para poder leer el nivel de la bateria para activa la carga.

Tengo 2 botones que activan un modulo de reles para girar el motor hacia un lado u otro y unos finales de carrera para detener el motor en caso que choque contra algo.

El problema viene cuando al accionar el motor de 24V, la tensión baja debiado al alto consumo y se disparan todos los eventos de los sensores, el método lee si el sensor está presionado (o ya se ha soltado) y hasta que no termina de leer todas esas interrupciones, no lee una real que pasaría si en ese periodo se presiona un sensor, es decir, durante un par de segundos (al iniciar el motor) no se detiene por el aluvión de interrupciones.

las interrupciones las leo así:

GPIO.add_event_detect(snsrLateralDer, GPIO.BOTH, callback=stopMotor, bouncetime=300)

y un diagrama sencillo para ilustrar el circuito:

Image

Saludos

Return to “Español”