Sensores


1.   Mando de infrarrojos.
Se conecta a una entrada analógica, por ejemplo C0.
Ø  Nos devuelve un valor para cada tecla pulsada, asociado a una variable por ejemplo b0.
Ø  El comando empleado para leer los códigos almacenados en la variable b0 es irin[200], C.0, b0, (siendo 200 el tiempo empleado entre lectura y lectura, en este caso 0.2s.
Ø  El comando empleado para mostrar en pantalla los valores de b0 es debug b0.
 
 
 Secuencia para activar el mando





2.   Sensor óptico reflexivo CNY70.
Es un sensor óptico reflexivo que tiene una construcción compacta dónde el emisor de luz y el receptor se colocan en la misma dirección para detectar la presencia de un objeto utilizando la  reflexión del infrarrojo sobre el objeto. La distancia de detección varía entre 0,3 a 5 mm.
Ø  Se conecta a una entrada analógica, por ejemplo C0.
Ø  Nos devuelve un valor dependiendo del color del objeto encontrado, asociado a una variable por ejemplo b0.
Ø  El comando empleado para leer la variable b0 asociada al sensor óptico es readadc C.0, b0.
Ø  El comando empleado para leer en pantalla los valores de b0 es debug.


CNY70

3.   Sensor piroeléctrico de movimiento PIR.
Es un dispositivo piroeléctrico que mide los cambios en los niveles de radiación infrarroja emitida por los objetos a su alrededor hasta una distancia máxima de 6 metros. Como repuesta al movimiento, el sensor cambia el estado lógico de un “pin” de bajo a alto.
Ø Se conecta a una entrada digital, por ejemplo pin5, pin6, pin7.
Ø Nos devuelve un estado lógico “0” o “1” según detecte o no movimiento.
Ø Hay que tener en cuenta que si medimos con el polímetro, comprobaremos que se obtiene un nivel bajo "0" con una tensión de unos 2v, es decir, en ausencia de movimiento y un nivel alto "1" con unos 3,5v cuando hay presencia de movimiento.
Ø El comando que suele emplearse con este sensor es "if".
Ø Este sensor permite regular el ángulo de detección y tiempo de retardo, es decir, desde que recibe hasta que emite la señal.




4.   Sensor de temperatura DS18B20.
Es un sensor analógico que nos indica la temperatura con un rango de -55ºC a 125ºC con un error de 0,5ºC. Precaución de suministrar por encima de 5v o no funcionará.
Ø  El comando empleado para leer la temperatura es readtemp.
Ø  El sensor se conecta a una entrada analógica, por ejemplo C.0.
Ø  El valor de la temperatura se almacena en una variable, por ejemplo b0.
Ø  Para leer la temperatura y almacenarla se emplea readtemp C.0, b0
Ø  El comando empleado para leer en pantalla los valores de b0 es debug b0.
Ø  Ejemplo: readtemp C.0, b0 (sólo lee grados sin decimales)





5. Sensor de llama regulable.

Es un sensor que puede detectar fuegos con longitud de onda entre 760 a 1100 nm con sensibilidad ajustable. El ángulo de detección es regulable hasta 60º.
Puede trabajar de forma analógica y digital. Para ello se conecta siempre a Vcc (positivo), GND (negativo) y por último, bien a AO (analógico) o DO (digital).
Ø  Si se conecta a analógico utilizaremos las entradas C.0, C.1 o C.2 y emplearemos como siempre el comando readadc.
Ø  Si se conecta a digital utilizaremos las entradas pin5, pin6 o pin7 y emplearemos el estado “0” o “1”. Ejemplo; pin5=1 o pin5=0.


6. Sensor Reed o de proximidad.

Se trata de un sensor digital que actúa como interruptor abierto o cerrado según se toquen entre sí los contactos con un imán que llevan las partes en su interior.
Ø  Al ser un sensor digital utilizaremos las entradas pin5, pin6 o pin7 y emplearemos el estado “0” o “1”. Ejemplo; If pin5=1 o If pin5=0.




7. Interruptor de inclinación.

Se trata de un sensor digital que actúa como interruptor abierto o cerrado según se supere o no una inclinación de 10º. En principio sus contactos están abiertos (NA), y al inclinarse se cierran.
Ø  Al ser un sensor digital utilizaremos las entradas pin5, pin6 o pin7 y emplearemos el estado “0” o “1”. Ejemplo; If pin5=1 o If pin5=0.



8. Sensor fotoeléctrico de infrarrojos.

Se trata de un sensor analógico que permite contar las veces que un objeto pasa entre los extremos. Se conecta a Vcc (positivo), GND (negativo) y por último a OUT (salida).
Ø  El comando empleado para contar los pulsos es count.
Ø  La entrada utilizada para conectar el sensor puede ser C.0, C.1 o C.2.
Ø  La variable empleada para almacenar los pulsos puede ser w1, w2,…
Ø  El comando empleado será count C.1,tiempo en ms, w1
Ø  El comando empleado para leer en pantalla los valores de w1 es debug w1.


9. Sensor de reflectancia QTR-1ª.

Es un sensor óptico reflexivo que tiene una construcción compacta dónde el emisor de luz y el receptor se colocan en la misma dirección para detectar la presencia de un objeto utilizando la  reflexión del infrarrojo sobre el objeto. La distancia de detección varía entre 0,3 a 5 mm.
Ø  Se conecta a una entrada analógica, por ejemplo C0.
Ø  Nos devuelve un valor dependiendo del color del objeto encontrado, asociado a una variable por ejemplo b0.
Ø  El comando empleado para leer la variable b0 asociada al sensor óptico es readadc C.0, b0.
Ø  El comando empleado para leer en pantalla los valores de b0 es debug.


10. Fototransistor y fotodiodo.

Es un sistema analógico formado por un LED emisor de infrarrojos y un fototransistor. Los 2 componentes se separan una determinada distancia y consiste en emitir una luz y recibirla. Si el haz de luz se corta, se puede utilizar el valor arrojado para controlar algo.
Ø  El fototransistor se conecta a una entrada analógica, por ejemplo C0.
Ø  El fotodiodo se conecta entre los terminales + y -.
Ø  El fototransistor nos devuelve un valor dependiendo de la luz que reciba, asociado a una variable por ejemplo b0.
Ø  El comando empleado para leer la variable b0 asociada al sensor es readadc C.0, b0.
Ø  El comando empleado para leer en pantalla los valores de b0 es debug.



11. LDR(Light dependant resistance).

Es un sistema analógico formado por una resistencia variable que depende de la luz, es decir, a mayor cantidad de luz, menor será la resistencia del elemento y viceversa.
Ø  Se conecta a una entrada analógica, por ejemplo C0.
Ø  Nos devuelve un valor dependiendo de la cantidad de luz recibida, asociado a una variable por ejemplo b0.
Ø  El comando empleado para leer la variable b0 asociada a la LDR es readadc C.0, b0.
Ø  El comando empleado para leer en pantalla los valores de b0 es debug.





12. Sensor detector de lluvia o humedad.

Es un sensor que puede detectar la presencia de lluvia.
Ø  Puede trabajar de forma analógica y digital. Para ello se conecta siempre a Vcc (positivo), GND (negativo) y por último, bien a AO (analógico) o DO (digital).
Ø  Si se conecta a analógico utilizaremos las entradas C.0, C.1 o C.2 y emplearemos como siempre el comando readadc.
Ø  Si se conecta a digital utilizaremos las entradas pin5, pin6 o pin7 y emplearemos el estado “0” o “1”. Ejemplo; pin5=1 o pin5=0.

13. Módulo sensor detector de sonido.

Es un sensor que sirve para detectar sonidos. Es ajustable en su sensibilidad y por lo tanto va conectado a una entrada analógica.
Ø  Para ello se conecta siempre a Vcc (positivo), GND (negativo) y por último, bien a AO (analógico).
Ø  Utilizaremos las entradas C.0, C.1 o C.2 y emplearemos como siempre el comando readadc.



14. Sensor detector de vibración.

Es un sensor que puede detectar movimientos.
Ø  Puede trabajar de forma analógica y digital. Para ello se conecta siempre a Vcc (positivo), GND (negativo) y por último, bien a AO (analógico) o DO (digital).
Ø  Si se conecta a analógico utilizaremos las entradas C.0, C.1 o C.2 y emplearemos como siempre el comando readadc.
Ø  Si se conecta a digital utilizaremos las entradas pin5, pin6 o pin7 y emplearemos el estado “0” o “1”. Ejemplo; pin5=1 o pin5=0.


15. Sensor ultrasonidos HC-SR04.
Mediante este sensor podemos determinar la distancia hasta un objeto u obstáculo.
Lo que hace el sensor es enviar un sonido, éste rebota en un objeto y es recibido de nuevo por el sensor. Sabiendo el tiempo que ha tardado, la velocidad del sonido que es una constante y mediante una simple operacióm matemática podemos averiguar la distancia.
Se puede emplear una frecuencia de 8MHz o 16 MHz. Incluso con la frecuencia por defecto 4MHz.
En el siguiente ejemplo se emplea con 8MHz pero en caso de emplear un servo hay que utilizar  la frecuencia por defecto 4MHz.
En tal caso la fórmula sería: w1=w0*5/116, es decir se divide el resultado de 8MHz entre 2.

Para más información sobre el sensor visitar el enlace del blog


Características




  • Voltaje de alimentacion: 5V DC

  • Angulo efectivo: 15°
  • Distancia efectiva de medicion: 2cm – 500 cm
  • Resolucion: 0.3 cm.
  • Frecuencia 8MHz (setfreq m8) o 16MHz (setfreq m16). 
  • Frecuencia por defecto 4MHz (No se usa ningún comando especial).


  • Nombres de las conexiones del sensor:

    - VCC = +5VDC
    - Trig = Entrada de Trigger de sensor. Emite pulso
    - Echo = Salida de Echo de sensor. Recibe pulso.
    - GND = Tierra 0V.

    La forma de conectarlo puede ser de 2 formas diferentes:

    1. Uniendo Echo y Trigger mediante una resistencia de 4,7K.
    2. Con 2 cables independientes Echo y Trigger.


    1. Uniendo Echo y Trigger mediante una resistencia de 4,7K o 10K

    A continuación vamos a explicar la primera forma de conexión.
    Para su correcto funcionamiento según el montaje realizado por mí, es necesario soldar una resistencia de 4,7kOhm entre Echo y Trigger.

    HC-SR04 con placa Picaxe
    Resistencia soldada a las conexiones Echo y Trigger.

    De sesta forma ahorremos un cable a la hora de conectarlo. Resulta  muy cómodo.

     Conexión a la placa Picaxe

    La conexión a la placa Picaxe es muy simple. Sólo es necesario:

    • Vcc: Positivo de la placa
    • GND: Negativo de la placa
    • Trigger: Conexión que sea reversible (Input y Output) y analógica. En este caso hemos tomado C.1, aunque podríamos haber cogido C.0 o C.2.
    • Echo: Está conectada indirectamente a través de la resistencia de 4,7KOhm o 10KOhm.

    1. Conexión con 1 solo cable.
    Esquema de conexiones con Resistencia de 4,7K entre Echo y Trigger
    Códigos de programación con distintas frecuencias

    Control HCSR04 con un cable y Frecuencia por defecto 4MHz
    '(USAR ESTA FRECUENCIA CON SERVO)
    symbol Distancia = w0
    symbol operaciondistancia = w1
    let Distancia = 0
    let operaciondistancia = 0
    ultrasonidos:
    pulsout C.0,2 'Emitimos pulso en la entrada C.0
    pulsin C.0,1,operaciondistancia 'Recibimos pulso
    pause 10
    Distancia=operaciondistancia*5/29 ' Obtenemos la distancia en cm
    debug
    pause 200
    goto ultrasonidos 'Repetimos la medición


    Control HCSR04 con un cable y Frecuencia 8MHz
    Hacemos el siguiente cambio:
    Distancia=operaciondistancia*5/58 ' Obtenemos la distancia en cm


    Control HCSR04 con un cable y Frecuencia 16MHz

    Hacemos el siguiente cambio:
    Distancia=operaciondistancia*5/116 ' Obtenemos la distancia en cm



    2. Conexión con 2 cables independientes

    Con 2 cables independientes.


    Consideraciones:
    Para programar este sensor con el chip Picaxe 18M2+, lo que hay que hacer es básicamente:

    - La frecuencia por defecto es 4MHz aunque se puede emplear la frecuencia a 8MHz y a 16MHZ. A 8MHz es incompatible con el servo.
    - Enviar un pulso de 2ms mediante pulsout (Trigger).
    - Recibir el pulso durante 1ms (Echo) y almacenar el valor capturado en una variable w0.
    - Operar para transformar ese valor en la distancia al objeto en cm.
    - Visualizarlo en pantalla, si fuera necesario.


    La segunda forma de conectarlo es con 2 cables independientes, uno para Trigger y otro para Echo.

    No hay que olvidar que Trigger debe ser una salida. Al ser reversibles muchas de las conexiones del chip 18M2+, podemos utilizar C.1 como salida aunque habitualmente sea una entrada analógica.

    En la siguiente imagen podemos ver cómo conectarlo.

    'Control HCSR04 con dos cable (Trig y Echo) y Frecuencia por defecto 4MHz 

    '(USAR ESTA FRECUENCIA CON SERVO)

    symbol Distancia = w0
    symbol operaciondistancia = w1
    let Distancia = 0
    let operaciondistancia = 0

    ultrasonidos:
    pulsout C.1,2 'Emitimos pulso en la entrada C.0 (Trig)
    pulsin C.0,1,operaciondistancia 'Recibimos pulso (Echo)
    pause 10
    Distancia=operaciondistancia*5/29 ' Obtenemos la distancia en cm
    debug
    pause 200
    goto ultrasonidos 'Repetimos la medición


    Si empleamos como Trigger a cualquier salida habitual como B.0, no habría que configurarla con el comando output, como hemos hecho con C.1.
    Esto es debido a que esas son salidas por defecto (B.0-B.7)  y C.1 es entrada por defecto.


    16. Sensor infrarrojos SHARP.
    Mediante este sensor podemos determinar la distancia hasta un objeto u obstáculo. Tenemos la opción de utilizarlo analógico y digital.

    El sensor analógico debe leer mediante una variable un valor y traducirlo a una distancia, es decir, necesita una calibración para saber que distancia indica cada valor obtenido.

    El inconveniente de estos sensores analógicos es que les afecta el color del objeto, variando el valor mostrado a pesar de encontrarse a la misma distancia del objeto.

    Ø  Se conecta a una entrada analógica, por ejemplo C0.
    Ø  Nos devuelve un valor dependiendo del color del objeto encontrado, asociado a una variable por ejemplo b0.
    Ø  El comando empleado para leer la variable b0 asociada al sensor óptico es readadc C.0, b0.
    Ø  El comando empleado para leer en pantalla los valores de b0 es debug.
    La otra opción es el sensor digital. Este tipo de sensores nos devuelve un 0 o un 1 según encuentre obstáculo o no. Evidentemente cada tipo tiene un rango de actuación o detección. fuera de este rango no detectará aunque exista objeto.vAdemás suele incorporar un pequeño led que indica la presencia o no de objeto.

    17. Sensor detector de campos magnéticos mediante efecto Hall.
    El sensor de efecto Hall sirve para la medición de campos magnéticos o corrientes magnéticas o para la determinación de la posición. Si fluye corriente por un sensor Hall y se aproxima a un campo magnético que fluye en dirección vertical al sensor, crea un voltaje saliente proporcional al producto de la fuerza del campo y de la corriente.
    Ø  Puede trabajar de forma analógica y digital. Para ello se conecta siempre a Vcc (positivo), GND (negativo) y por último, bien a AO (analógico) o DO (digital).
    Ø  Si se conecta a analógico utilizaremos las entradas C.0, C.1 o C.2 y emplearemos como siempre el comando readadc.
    Ø  Si se conecta a digital utilizaremos las entradas pin5, pin6 o pin7 y emplearemos el estado “0” o “1”. Ejemplo; pin5=1 o pin5=0.






    

    No hay comentarios:

    Publicar un comentario

    En este espacio puedes comentar la entrada publicada o hacer preguntas o sugerencias