3. Un sistema embebido o empotrado es
un sistema electrónico diseñado para
realizar pocas funciones y en algunos
casos en tiempo real. Al contrario de lo
que ocurre con las computadoras de
propósito general que están diseñados
para cubrir un amplio rango de
necesidades, los sistemas embebidos
se diseñan para cubrir necesidades
específicas.
Sistemas Embebidos
4. Características de los Sistemas Embebidos
• Bajo consumo eléctrico
• Tamaño reducido
• Operan en ambientes extremos
• Bajo costo por unidad
• Capacidad limitada de
procesamiento
5. En la actualidad se esta planteando la evolución
de los “sistemas embebidos” a “sistemas
inteligentes” en donde la principal diferencia
para considerarlos como inteligentes es que
deben estar conectados a otro dispositivo (M2M,
Comunicación Maquina a Maquina) o en especial
a internet.
Sistemas Inteligentes
6. Arduino es una plataforma de
electrónica abierta para la creación de
prototipos basada en software y
hardware flexibles y fáciles de usar.
Se creó para artistas, diseñadores,
aficionados y cualquiera interesado en
crear entornos u objetos interactivos.
Plataforma Arduino
11. • Conjunto de dispositivos físicos
como: vehículos, edificios y otros
artículos, que contienen: sistemas
electrónicos, sensores, software y
conectividad; que les permite
recolectar e intercambiar datos.
• "La infraestructura de la sociedad
de la información".
• Gartner, Inc estima que habrá
20.8 millardos de dispositivos IoT
para el 2020.
Internet de las Cosas
14. An easy way to connect your Arduino to the Cloud
Cloudino is an amazing full stack IoT platform, that provides
all necessary components to transform the existing
microcontrollers solutions (Atmel AVR, Microchip PIC, etc.)
to the IoT world in a simple and transparent way.
Cloudino
Small size Easy to use Low cost
21. Cloudino con Arduino
• The Arduino Uno
• Arduino Duemilanove or Diecimila
• Arduino Nano
• ATmega1280
• Arduino Mini
• Arduino Fio
• Arduino BT
• LilyPad Arduino
• Arduino Pro or Pro Mini
• Arduino NG or older
23. Blynk
Blynk es una plataforma que
permite de IoT que cualquiera
pueda controlar fácilmente su
proyecto Arduino o Cloudino con
un dispositivo con sistema iOS o
Android.
Los usuarios tendrán ahora la
posibilidad de crear una interfaz
gráfica de usuario de “arrastrar y
soltar” para su proyecto en cuestió
n de minutos.
24. Send Hello World text to the Blink LCD
//import Cloudino Object
require("Cloudino");
//Send Hello World to LCD
Cloudino.post("V0","Hola");
Cloudino.post("V1","Mundo");
Ejemplos de Blynk + JS
Hello World
25. Send Hello with Counter to the Blink LCD
//import Cloudino Object
require("Cloudino");
require("Timer");
var x=0;
setInterval(function(){
Cloudino.post("V0","Hola "+x);
x++;
},1000);
Ejemplos de Blynk + JS
Hello Counter
27. ¿Qué es JavaScript?
• JavaScript es el lenguaje de programación más popular en Internet
• JavaScript se ha diseñado para añadir interactividad a las páginas HTML
• JavaScript es un lenguaje de scripting
• Un lenguaje de scripting es un lenguaje de programación ligero
• JavaScript es un lenguaje interpretado, es decir, no necesita compilarse
para ejecutarse
• Todo el mundo puede usar JavaScript sin necesidad de adquirir una
licencia
28. • eval(text) //Evalúa y ejecuta la cadena text
• parseInt(str) //Convierte la cadena str a int
• parseFloat(str) //Convierte la cadena str a float
• reset() //Reinicia el interprete de JS
• restart() //Reinicia el Modulo
• require(name) //importa funciones adicionales
• print(text) //Envía texto al Serial
• dump() //Imprime objetos en memoria al Serial
Funciones predefinidas
29. La función require permite importar objetos y funciones adicionales.
Ejemplo:
require(“Cloudino”);
Cloudino.print(“Hello World”);
require(“GPIO”);
pinMode(1, OUTPUT);
digitalWrite(1,HIGH);
Función require
31. Object
• Object.dump()
• Object.clone()
Rand
• Math.rand()
• Math.randInt(min, max)
String
• String.indexOf(search) // find the position of a string in a string, -1 if not
• String.lastIndexOf(search) // find the last position of a string in a string, -1 if not
• String.substring(lo,hi)
• String.charAt(pos)
• String.charCodeAt(pos)
• String.fromCharCode(char)
• String.split(separator)
Función require
33. Math
• Math.abs(a)
• Math.round(a)
• Math.min(a,b)
• Math.max(a,b)
• Math.PI()
• Math.sqrt(a)
DHT11
• DHT11.read(pin) // Read DHT11 Temperature and Humidity sensor
Función require
34. Send Hello World text to the Cloudino Server Console
//import Cloudino Object
require("Cloudino");
//Send text to Server Console
Cloudino.print('Hello World');
Ejemplos de CloudinoJS
Hello World
35. Send Hello World text to the Cloudino Server Console every second
//import Cloudino Object
require("Cloudino");
require("Timer");
var x=0;
//Create timer every second (1000ms)
setInterval(function(){
//Send text to Server Console
Cloudino.print('Hello World '+x);
x++;
},1000);
Ejemplos de CloudinoJS
Timed Hello World
36. Turn the internal led ON and OFF every second
require("GPIO");
require("Timer");
pinMode(1, OUTPUT);
var led=0;
setInterval(function(){
digitalWrite(1, led);
led=led^1;
},1000);
Ejemplos de CloudinoJS
Blink
37. Read Analog Data and Post the data to defined IoT Server
//import Cloudino, Timer and GPIO
require("Cloudino");
require("Timer");
require("GPIO");
function read()
{
//read analog data
//return 10 bits value (0 - 1024)
//analog signal from (0 - 1 volts)
var s=analogRead();
//Post Analog data to defined Server
Cloudino.post("analog",s);
}
//Create timer every second (1000ms)
setInterval(read,1000);
Ejemplos de CloudinoJS
Read Analog
38. Turn On Led from Server Message "led”
//import Cloudino and GPIO
require("Cloudino");
require("GPIO");
//initialize digital pin 1 as an output (Internal led)
pinMode(1, OUTPUT);
function onLed(msg)
{
//if received message is "ON"
if(msg=="ON")
{
//turn the LED ON
digitalWrite(1,HIGH);
}else
{
//turn the LED OFF
digitalWrite(1,LOW);
}
}
//Register to receive messages with topic "led"
Cloudino.on("led",onLed);
Ejemplos de CloudinoJS
DigitalWrite and On Server
Messages