Problemilla electrónico.

Aló, veréis, hace tiempo compramos un detector de presencia para el negocio (por si estamos en la trastienda) pero el problema que tiene es o que no detecta o que detecta demasiado y no para. La solución que le he encontrado es hacer que suene y con un microcontrolador "desactivar" el altavoz durante X tiempo una vez detecte algo tras unos 5 segundos sonando. Por ahora he probado con el Arduino Mega (ya se que es matar una mosca a cañonazos pero es para hacer más fáciles las pruebas, pienso ponerle un PIC) y me detecta perfectamente cuando el detector envía la señal al altavoz (hago un analogRead en un pin en el que va el positivo del altavoz y normalmente me da 0 y cuando detecta algo salta a los 500-700 (cosa que tiene bastante sentido teniendo en cuenta que envía unos 2,7V).

El código ideal seria:

...

if (pindelsensor > 400) //si detecta algo
     {
        delay(5000); // que suene unos 5 segundos
        código_que_pare_el_altavoz;  //he probado todas las combinaciones de HIGH y LOW tanto en el pin receptor como en el que hace de GND.
        delay(tiempocallado);
        ...
     }


El problema es que lee desde el cable que envía el "sonido" por lo que no puedo copiar el valor y enviarlo por otro pin cuando me interese.

¿Alguna idea (¿transistor?)?

Un saludo.
Y por qué no usas el pin que va del sensor de presencia directamente a tu placa y ya desde la placa activas un pin para encender el altavoz?

Según entiendo ahora mismo tienes pinchado por así decirlo el cable que va al altavoz también a la placa no?
luciferfran escribió:Y por qué no usas el pin que va del sensor de presencia directamente a tu placa y ya desde la placa activas un pin para encender el altavoz?

Según entiendo ahora mismo tienes pinchado por así decirlo el cable que va al altavoz también a la placa no?


Por que al altavoz se le envía unos datos de sonido (tiene dos posiciones, un "ding-dong" y un "hello, welcome"), al final lo más simple será usar un pic (tengo un 12c508) con el que detectaré cuando suena y haré que corte la corriente de las pilas durante X tiempo.

A lo segundo, tienes razón
2 respuestas