Este documento presenta el módulo 4 de un curso de especialización en IoT. El módulo se centra en las capas de sensores y durante 10 días cubrirá el uso de tarjetas de desarrollo como WaspMote, Raspberry Pi y Arduino. Con Arduino, los estudiantes aprenderán sobre I/O digital y analógico, protocolos de comunicación y el uso de sensores y actuadores como displays LCD y motores. El proyecto final involucrará el desarrollo de una aplicación usando la tarjeta NodeMCU.
1. Curso “Especialización en IoT”
pucv.cl
Docentes:
Guelis Montenegro Zamora
Víctor Cárdenas Schweiger
Módulo 4: Capas de Sensores
2. Agenda
Día 1
⮚ Introducción a los sistemas embebidos
⮚ Tarjetas de desarrollo
• WaspMote
• Raspberry PI
Día 2
⮚ Tarjeta de desarrollo: Arduino
• Señales digitales de I/O
• Declaraciones de control
Día 3
⮚ Tarjeta de desarrollo: Arduino
• Sensores y actuadores
• Señal PWM
2
3. Agenda
Día 4
⮚ Tarjeta de desarrollo: Arduino
• Señales análogas
Día 5
⮚ Tarjeta de desarrollo: Arduino
• Protocolos de comunicación: I2C, UART y SPI
• Display LCD I2C
Día 6, 7, 8 y 9
⮚ Tarjeta de desarrollo: NodeMCU
• Proyecto de aplicación
Día 10
⮚ Aspectos para el desarrollo de la solución 3
6. Sensores
•Variables que miden los sensores:
• Temperatura
• Humedad
• PH
• Luminosidad
• Nivel
• Velocidad
• Distancia
6
7. Sensores
•Los sensores generan una señal que nos permite la comunicación con el mundo
electrónico:
• Voltaje
• Corriente
• Resistencia variable
• Capacitor variable
• Frecuencia
•Dependiendo de la plataforma que se utilice para controlar el proceso, será necesario
adaptar los niveles de voltaje y corriente.
7
8. Sensor Infrarrojo
•Un Sensor infrarrojo corresponde a un dispositivo que mide la radiación electromagnética
infrarroja de los cuerpos.
•Esta radiación infrarroja abarca longitudes de onda desde los 700 nm a 1 mm, desde 430 THz
a 300 GHz.
8
9. Sensor Infrarrojo
•Sensores pasivos:
• Formados por un fototransistor que mide la radiación de los objetos.
• Sensores activos:
• Formados por un emisor (LED Infrarrojo) y un receptor (fototransistor).
9
10. Sensor Infrarrojo Activo
•Sensores reflexivos: el fototransistor mide la radiación que proviene del reflejo
de la luz emitida por el LED. Esta configuración es sensible a la luz ambiental.
10 Detección de obstáculos
12. Sensor Infrarrojo Activo
•Sensores modulados: la señal que emite el LED es modulada
• Para evitar interferencias con la luz ambiente, se modula la señal del emisor sobre una onda portadora.
• La frecuencia de la portadora y la codificación de los “1” y “0” dependerá del protocolo utilizado por el
fabricante.
• Ejemplos: RC-5 y RC-6 de Philips, SIRC de Sony, NEC de Nippon Electronic Company
12
13. Sensores Infrarrojos Pasivos
•PIR: Passive Infrared: Detector de movimiento pasivo.
•Reaccionan frente a determinadas fuentes de energía,
como el calor del cuerpo humano o de animales.
•Detectan la diferencia de calor entre el calor emitido por
el cuerpo humano y el espacio alrededor.
13
14. Sensores Infrarrojos Pasivos
•Está compuesto por:
• Sensor piroeléctrico: detecta las radiaciones infrarrojas y las
transforma en una señal eléctrica
• Lente de Fresnel: lente óptico delgado, formado por anillos
concéntricos. Se encarga de ampliar la señal antes de que llegue
al sensor.
•La detección está acotada a un área especificada para
cada sensor.
14
15. Sensores Infrarrojos Pasivos
•Usos:
• Sistemas de iluminación
• Sistemas de apertura
automática
• Sistemas de seguridad
15
•HC-SR501:
• Ángulo de medición: 100°
• Voltaje de operación: 4,5 – 20V
• Se puede ajustar la sensibilidad y el tiempo de
retardo.
• Envía un “1” cuando se detecta un
movimiento.
16. Buzzer
•Un buzzer es un elemento que emite un sonido cuando se energiza.
•Convierte una señal eléctrica en una onda de sonido.
•Existen dos tipos de buzzer:
• Activo: Posee oscilador interno
• Pasivo: No posee oscilador interno, por lo que la frecuencia del sonido debe entregarse de manera
externa.
•Se utilizan las funciones: tone(pin,frecuencia) y noTone(pin)
16
19. Ejercicio 1
•Programe una aplicación que encienda un led y un buzzer cuando se
detecte una persona y los apague cuando la persona no esté presente.
•Conecte el PIR en el pin 3 del Arduino, el buzzer en el pin 4 y un el led en
el pin 5.
19
20. Ejercicio 2
•Cree un programa que encienda una alarma sonora y visual cuando se
presione la tecla ON/OFF de un control remoto y se apague cuando se
presione por segunda vez.
20
23. Actuadores: Motor
•Un motor es un elemento electromecánico
•Transforma energía eléctrica a energía mecánica
•Está compuesto de 2 partes:
• Estator
• Rotor
23
24. Actuadores: Motores paso a paso
•El rotor gira un cierto ángulo
por cada paso.
•Son motores precisos, en los
que se controla la posición
•Pasos: 1,8°, 2°, 2,5°, 5°
entre otros
24
Paso Bobina A Bobina B Bobina C Bobina D
1 ON OFF OFF OFF
2 ON ON OFF OFF
3 OFF ON OFF OFF
4 OFF ON ON OFF
5 OFF OFF ON OFF
6 OFF OFF ON ON
7 OFF OFF OFF ON
8 ON OFF OFF ON
•Ejemplo: medios pasos
25. Actuadores: Motor de CC
• Las bobinas del estator son alimentadas
con voltaje continuo.
• Dependiendo de la polaridad del voltaje
aplicado, será la dirección de giro del
rotor.
• La regulación de la velocidad se logra
variando:
• El ángulo de disparo de un rectificador
controlado
• El ancho de pulso de una PWM
25
26. Modulación por ancho de pulso - PWM
● Es una técnica utilizada en electrónica basada en una señal periódica de
tipo tren de pulsos, que posee 2 niveles de amplitud y cuyo ancho de pulso
puede ser variado por el programador/usuario manteniendo el periodo
original.
26
29. Modulación por ancho de pulso - PWM
• Solo los pines digitales con el símbolo ~
pueden generar una señal PWM
• Frecuencia del PWM:
• Pines 3, 9, 10 y 11: 490 [Hz]
• Pines 5 y 6: 980 [Hz]
• Instrucción:
analogWrite(pin,value);
value: ciclo de trabajo entre 0 (0%) y 255 (100%)
29
32. Ejemplo
• Diseñe un programa en Arduino UNO, en el que se considera como entrada los
pines 12 y 13; y como salida el pin 3 donde se implementa un led.
• La idea es variar la intensidad del led mediante 3 opciones:
• Si el pin 12 está activado que se genere una señal PWM de 33% de ciclo de trabajo.
• Si el pin 13 está activado que se genere una señal PWM de 67% de ciclo de trabajo.
• Para cualquier otro caso, que se genere una señal PWM de 100% de ciclo de trabajo.
32
33. Actividad 2: 30 minutos
Control de velocidad de un Motor de CC
• Diseñe un programa en Arduino UNO, que controle la velocidad de un motor de
corriente continua, dependiendo de la entrada que está activada:
• Considere que las entradas son los pines 3 y 4 y que el motor se encuentra
conectado al pin 9.
Entrada Motor
00 El motor está quieto
01 Gira a 1/5 de su velocidad nominal
10 Gira a 1/2 de su velocidad nominal
11 Gira a la velocidad nominal
33