Professional Documents
Culture Documents
HERRAMIENTAS DE SOFTWARE
TÍTULO EXPERIENCIA
- PTRRZA
FECHA REALIZACIÓN
07/ 12 / 2017
PROFESOR:
NOTA:
1
ÍNDICE
1.-INTRODUCCIÓN ………………………………………………………………Pág.4.
2.1.-Implementación de SIMULINK………………………………………..…Pág.5.
3.2-Terminales digitales………………………………………………………...Pág.7
3.3.-Pines de alimentación………………………………………………………Pág.8
3.3.2.-Fuente de 5V…………………………………………………………….Pág.8
2.2.3.-Fuente de 3V……………………………………………………………..
Pág.8
3.4.-Otros Pines…………………………………………………………………
Pág.8
3.4.1.- AREF…………………………………………………………………….
Pág.8
2
4.1.-Sensor de temperatura y humedad [DIGITAL]………………………. Pág.9
4.4.-Programación de Arduino…………………………………………..….....Pág.12
6.-MATLAB………………………………………………………………………….Pág.17
7.-EXCEL…………………………………………………………………………….Pág.17
8.-THINGSPEAK…………………………………………………………………...Pág.18
10.-CONCLUSIÓN…………………………………………………………………..Pág.20
11.-BIBLIOGRAFÍA…………………………………………………………...……Pág.21
3
1.-INTRODUCCIÓN.
4
2.- DESARROLLO DEL PROYECTO.
2.1.-Implementación de SIMULINK.
Para modelar aplicando IOT al proyecto se actualizó las librerías para trabajar con
ARDUINO ya que SIMULINK no posee aquella librería.
5
Fig.2.2-Actualización Simulink.
- Microcontrolador: ATmega328
- Voltage: 5V
- Entradas Analogicas: 6
- Flash Memory: 32 KB (ATmega328) de los cuales 0.5 KB son utilizados para el arranque
- SRAM: 2 KB (ATmega328)
- EEPROM: 1 KB (ATmega328)
6
3.1.-Entradas y salidas digitales/analógicas.
Arduino incorpora terminales digitales (señales discretas) pero de tal forma que
tenemos un gran abanico de valores con los que trabajar ( Desde 255 valores de luz en un
fotosensor, siendo 0 ausencia de luz y 254 el máximo valor lumínico).
3.2-Terminales digitales.
Las terminales digitales de una placa Arduino pueden ser utilizadas para entradas o
salidas de propósito general a través de los comandos de programación pinMode(),
digitalRead(), y digitalWrite(). Cada terminal tiene una resistencia pull-up que puede
activarse o desactivarse utilizando digitalWrite() (con un valor de HIGH o LOW,
respectivamente) cuando el pin esta configurado como entrada. La corriente máxima por
salida es 40 mA.
3.2.1.- Serial: 0 (RX) y 1 (TX). Utilizado para recibir (RX) y transmitir (TX) datos
serie TTL. En el Arduino Diacemila, estas terminales están conectadas a las
correspondientes patas del circuito integrado conversor FTDI USB a TTL serie. En el
Arduino BT, están conectados al las terminales correspondientes del modulo Bluetooth
WT11. En el Arduino Mini y el Arduino LilyPad, están destinados para el uso de un
módulo serie TTL externo (por ejemplo el adaptador Mini-USB).
7
3.2.4.- SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Estas terminales soportan
comunicación SPI. Aunque esta funcionalidad esta proporcionada por el hardware, no está
incluida actualmente el lenguaje Arduino.
3.2.5.- LED: 13. En el Diacemila y el LilyPad hay un led en placa conectado al pin
digital 13. cuando el pin tiene valor HIGH, el LED está encendido, cuando el pin está en
LOW, está apagado
3.2.6.-Pines analógicos.
3.3.-Pines de alimentación.
3.3.3.-Fuente de 3V. Una fuente de 3.3 voltios generada por el chip FTDI de la
placa.
3.4.-Otros Pines.
3.4.1.- AREF. Referencia de voltaje para las entradas analógicas. Utilizada con la
función analogReference().
8
3.4.2.- Reset. Resetea el microcontrolador. Utilizada típicamente para añadir un
botón de reset a shields que bloquean el de la placa principal.
Para implementar el proyecto lo primero que se analizó fueron las características del
ARDUINO UNO y los sensores que se ulizados, debido a que se requiere una correcta
lectura.
Fig.8.-Sensor DHT11.
4.1.1.-Características generales.
- Tamaño reducido.
- Voltaje de operación: 3V-5.5V
- Rango Humedad: 20-90% de Humedad Relativa (+-5%).
- Rango temperatura : 0-50ºC (+-2°C).
9
- Resolución Humedad: 1RH / 8 bits
- Resolución Temperatura: 1ºC / 8 bits.
- Sensor montado en una board con el hardware necesario para su uso.
- Tamaño: 3.1cm x 1.4cm
Su dualidad análogo-digital hizo analizar las ventajas de una sobre la otra. Se eligió
la entrada analoga por mayor flexibilidad al momento de implementar la programación
sobre el microcontrolador.
10
-Posee un potenciómetro para ajustar la sensibilidad.
11
El sensor de Humedad/Temperatura conectado al pin digital 2, y el sensor de ruido al pin
análogo A0, con sus respectivas conexiones a Vcc y Gnd como se puede apreciar en la
figura.
4.4.-Programación de Arduino.
12
dht.begin(); //Se inicia el sensor
}
void loop() {
float h = dht.readHumidity(); //Se lee la humedad
float t = dht.readTemperature(); //Se lee la temperatura
Se puede apreciar que los datos están separados por una coma, definidas así para su
posterior proceso de transferencia.
5.-IMPLEMENTACIÓN SIMULINK.
Se implementaron los bloques en SIMULINK para obtener los datos medidos por
Arduino. Para ello se hace uso del Query Instrument, que cumple la función de recibir los
13
datos entregados por el microprocesador y enviarlo al bloque Math Function, que trabaja
en el modo Transpose. La información finalmente es almacenada por el bloque To
WorkSpace y visualizada en el SCOPE.
Para configurar este bloque, es importante comprender que se está trabajando con
múltiples señales y por ende se tiene que implementar en base a estas características.
14
se declara mal la cantidad de datos se generará una inconsistencias pese a que el
microcontrolador este midiendo correctamente.
15
Fig.5.3.- Parámetros del bloque To Workspace.
Este bloque es la interfaz de SIMULINK con EXCEL, ya que sin esta herramientas
no se hubiera podido obtener las mediciones en una tabla ordenada. Los datos
sencillamente serían mostrados de forma errónea o desordenada.
16
Arduino, acción fundamental para evitar inconsistencias en la comunicación con el
microcontrolador.
Fig.5.4.-Mediciones de SIMULINK.
Los datos medidos por SIMULINK, nos muestra temperatura (Azul) entre 24 C y
C, mientras la humedad (Amarillo) rondando en los 68 % aproximadamente, asimismo
el ruido (Rojo) generado por el ambiente oscila como máximo en tormo los 29 db,
considerado dentro del margen normal para un entorno laboral.
6.-MATLAB
Matlab contiene la matriz generada por SIMULINK. Los datos son guardados en formato
EXCEL, para subirlo al IOT.
17
Fig.6.-Matriz generada por Simulink.
7.-EXCEL.
Para poder subir esta información a Thingspeak, fue necesario recopilar 3000 muestras.
Fig.7.-Datos en Excel
8.-THINGSPEAK.
Se procedió a subir datos a Thinkspeak, para ello se creó una canal, con tres labels.
18
Si se sube los datos de forma convencional se generará un error, ya que Thingspeak
exige tres condiciones:
2.-Primera Columna debe ser la Fecha-hora Formato: MYSQL, ISO 8601 o Eproch.
Las otras columnas serán los datos y pueden ser recolectadas por Simulik (To
Workspace) o Matlab. Deben coincidir con la cantidad de labels de Thinkspeak.
Teniendo presente esto se procede a subir los datos entregados por los sensores a la
nube del internet de las cosas.
19
Se crea así un canal público con las muestras obtenidas por Simulink cuya dirección es:
https://thingspeak.com/channels/379923
20
10.-CONCLUSIÓN.
Este proyecto ayudo a entender mejor el concepto de la IOT, sus ventajas asimismo
descubrir sus desventajas. Tener noción del avance tecnológico que está presente hoy en día
y ver las implicancias que tiene para el futuro.
Esto también nos llevó a ver que existe la fragilidad de la seguridad en la IOT y
posiblemente sea uno de los mayores problemas que posea el desarrollo de esta tecnología a
mediano plazo.
Pese a todo la IOT, es desarrollada para optimizar las decisiones ya que se trabaja
en tiempo real y esta misma ayudará a solucionarlo.
21
11.-BIBLIOGRAFÍA.
[1] http://www.iescamp.es/miarduino/2016/01/21/placa-arduino-uno/
[2 ] https://docs.google.com/file/d/0B0hsUkhqWH97NnM5QWZlN0ZsYVE/edit
[3] http://www.iescamp.es/miarduino/2016/01/21/placa-arduino-uno/
[4] http://www.networkworld.es/m2m/el-futuro-del-iot-sera-fascinante-y-
potencialmente-catastrofico
[5] https://www.mathworks.com/help/simulink/slref/mathfunction.html
[6] https://www.youtube.com/watch?v=gV7l2YOSOQ4
22