SlideShare una empresa de Scribd logo
1 de 39
Descargar para leer sin conexión
Ya eres parte de la evolución
Solid Day
Javier Solis Gonzalez
@softjei
#sgnext
Sistemas Embebidos
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
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
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
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
Tipos de Arduino
Boarduino Kit Arduino Uno DIY Arduino
Arduino LilyPad Arduino Yun Arduino KMega 2560
<<
Componentes del Arduino
Arduino IDE
Arduino Código
• 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
Arduino y el Internet de las cosas
Cloudino
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
Cloudino Platform
Cloud Service
New IoT Network Layer
Existing Hardware Solutions
Users / Apps
Cloudino API
Arduino
Cloudino Server
CoAP
MQTT
Context
Broker
Cloud
Networking
3.3v
Processing
TTL
5v
Websocket
TCP
TCP
TCP
TCP
UDP
UDP
TCP
Serial
Web
Site
Device
Manager
Rule
Manager
Data
Storage
Cloudino Architecture
Cloudino WiFi Connector
JavaScript InterpreterArduino Programmer
Sensors / Actuators
WebServer
Web Configuration
WiFi Access Point
Cloud Updates
Web
IDE
Blynk
TCP
TCP
GPIO
GPIO
WiFi Cloud Connector Configuration
Cloudino Server
Cloudino
• Simple Message Router
• Simple Timer API
• Console Messaging
ArduinoAPI
+
Cloudino + Arduino
• Simple Message Router
• Simple Timer API
• Console Messaging
ArduinoAPI
+
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
Cloudino + Blynk
• Simple Message Router
• Simple Timer API
• Console Messaging
ArduinoAPI
+
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.
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
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
Cloudino + JavaScript
• Simple Message Router
• Simple Timer API
• Console Messaging
ArduinoAPI
13
+
¿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
• 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
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
Cloudino
• Cloudino.post(topic,data)
• Cloudino.print(txt)
• Cloudino.on(topic, funct)
GPIO
• HIGH=1;
• LOW=0;
• INPUT=0;
• OUTPUT=1;
• INPUT_PULLUP=2;
• pinMode(pin,mode)
• digitalWrite(pin,value)
• digitalRead(pin)
• analogRead()
• analogWrite(pin,value)
Función require
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
Array
• Array.contains(obj)
• Array.remove(obj)
• Array.join(separator)
Timer
• setInterval(funct,time_ms)
• clearInterval(id)
• setTimeout(funct,time_ms)
• clearTimeout(id)
JSON
JSON.stringify(obj) // convert to JSON.
Función require
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
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
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
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
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
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
¿Preguntas?
Javier Solis Gonzalez
@softjei
#sgnext

Más contenido relacionado

Similar a Solid Day - Cloudino

Globant Wearables & Internet of Things - Presentación Mar del Plata Agosto 2014
Globant Wearables & Internet of Things - Presentación Mar del Plata Agosto 2014Globant Wearables & Internet of Things - Presentación Mar del Plata Agosto 2014
Globant Wearables & Internet of Things - Presentación Mar del Plata Agosto 2014Pablo Vittori
 
Windows y .NET en la Internet of Things by Pablo Garcia
Windows y .NET en la Internet of Things by Pablo GarciaWindows y .NET en la Internet of Things by Pablo Garcia
Windows y .NET en la Internet of Things by Pablo Garcia.NET Conf UY
 
Arduino Day 2017 - IoT Colombia. Internet de las Cosas: Lleva tu realidad a l...
Arduino Day 2017 - IoT Colombia. Internet de las Cosas: Lleva tu realidad a l...Arduino Day 2017 - IoT Colombia. Internet de las Cosas: Lleva tu realidad a l...
Arduino Day 2017 - IoT Colombia. Internet de las Cosas: Lleva tu realidad a l...IoT Colombia
 
Redes de Computadoras
Redes de ComputadorasRedes de Computadoras
Redes de Computadorashugo3
 
Diapositiva de Estudio: ppt - IoT Fácil con ESP8266.pdf
Diapositiva de Estudio: ppt - IoT Fácil con ESP8266.pdfDiapositiva de Estudio: ppt - IoT Fácil con ESP8266.pdf
Diapositiva de Estudio: ppt - IoT Fácil con ESP8266.pdfjorgejvc777
 
Introducción a IoT Con NodeJS y IoT Hub
Introducción  a IoT Con NodeJS y IoT HubIntroducción  a IoT Con NodeJS y IoT Hub
Introducción a IoT Con NodeJS y IoT HubLuis Valencia
 
[Arqui1]practica2 200815555
[Arqui1]practica2 200815555[Arqui1]practica2 200815555
[Arqui1]practica2 200815555AnGeo Gomez
 
ORIGIN STACK EL APLIANCE DE VIRTUALIZACIÓN ENTERPRISE
ORIGIN STACK EL APLIANCE DE VIRTUALIZACIÓN ENTERPRISE ORIGIN STACK EL APLIANCE DE VIRTUALIZACIÓN ENTERPRISE
ORIGIN STACK EL APLIANCE DE VIRTUALIZACIÓN ENTERPRISE Telecomputer
 
CROL - Proyecto CoDiCe TIC Robótica Arduino.pdf
CROL - Proyecto CoDiCe TIC Robótica Arduino.pdfCROL - Proyecto CoDiCe TIC Robótica Arduino.pdf
CROL - Proyecto CoDiCe TIC Robótica Arduino.pdfEdwin4321
 
Presentacion Hardprocessing
Presentacion HardprocessingPresentacion Hardprocessing
Presentacion HardprocessingASOLIF
 
Dynamics saturday madrid 2018 conectalo como puedas - juanan&amp;adri
Dynamics saturday madrid 2018   conectalo como puedas - juanan&amp;adriDynamics saturday madrid 2018   conectalo como puedas - juanan&amp;adri
Dynamics saturday madrid 2018 conectalo como puedas - juanan&amp;adriDemian Raschkovan
 

Similar a Solid Day - Cloudino (20)

Globant Wearables & Internet of Things - Presentación Mar del Plata Agosto 2014
Globant Wearables & Internet of Things - Presentación Mar del Plata Agosto 2014Globant Wearables & Internet of Things - Presentación Mar del Plata Agosto 2014
Globant Wearables & Internet of Things - Presentación Mar del Plata Agosto 2014
 
Windows y .NET en la Internet of Things by Pablo Garcia
Windows y .NET en la Internet of Things by Pablo GarciaWindows y .NET en la Internet of Things by Pablo Garcia
Windows y .NET en la Internet of Things by Pablo Garcia
 
Arduino Day 2017 - IoT Colombia. Internet de las Cosas: Lleva tu realidad a l...
Arduino Day 2017 - IoT Colombia. Internet de las Cosas: Lleva tu realidad a l...Arduino Day 2017 - IoT Colombia. Internet de las Cosas: Lleva tu realidad a l...
Arduino Day 2017 - IoT Colombia. Internet de las Cosas: Lleva tu realidad a l...
 
Redes de Computadoras
Redes de ComputadorasRedes de Computadoras
Redes de Computadoras
 
Arduino day
Arduino dayArduino day
Arduino day
 
Diapositiva de Estudio: ppt - IoT Fácil con ESP8266.pdf
Diapositiva de Estudio: ppt - IoT Fácil con ESP8266.pdfDiapositiva de Estudio: ppt - IoT Fácil con ESP8266.pdf
Diapositiva de Estudio: ppt - IoT Fácil con ESP8266.pdf
 
Introducción a IoT Con NodeJS y IoT Hub
Introducción  a IoT Con NodeJS y IoT HubIntroducción  a IoT Con NodeJS y IoT Hub
Introducción a IoT Con NodeJS y IoT Hub
 
Tarjeta arduino
Tarjeta arduinoTarjeta arduino
Tarjeta arduino
 
Tarjeta arduino
Tarjeta arduinoTarjeta arduino
Tarjeta arduino
 
2-CapaPercepción.pdf
2-CapaPercepción.pdf2-CapaPercepción.pdf
2-CapaPercepción.pdf
 
Perspectivas IoT con arduino
Perspectivas IoT con arduinoPerspectivas IoT con arduino
Perspectivas IoT con arduino
 
Domotica #Skype4 b #IoT #Azure #Windows10IoTCore
Domotica #Skype4 b #IoT #Azure #Windows10IoTCoreDomotica #Skype4 b #IoT #Azure #Windows10IoTCore
Domotica #Skype4 b #IoT #Azure #Windows10IoTCore
 
[Arqui1]practica2 200815555
[Arqui1]practica2 200815555[Arqui1]practica2 200815555
[Arqui1]practica2 200815555
 
ORIGIN STACK EL APLIANCE DE VIRTUALIZACIÓN ENTERPRISE
ORIGIN STACK EL APLIANCE DE VIRTUALIZACIÓN ENTERPRISE ORIGIN STACK EL APLIANCE DE VIRTUALIZACIÓN ENTERPRISE
ORIGIN STACK EL APLIANCE DE VIRTUALIZACIÓN ENTERPRISE
 
Asterisk de las cosas
Asterisk de las cosasAsterisk de las cosas
Asterisk de las cosas
 
CROL - Proyecto CoDiCe TIC Robótica Arduino.pdf
CROL - Proyecto CoDiCe TIC Robótica Arduino.pdfCROL - Proyecto CoDiCe TIC Robótica Arduino.pdf
CROL - Proyecto CoDiCe TIC Robótica Arduino.pdf
 
Anexo meteo pi (1)
Anexo meteo pi  (1)Anexo meteo pi  (1)
Anexo meteo pi (1)
 
Presentacion Hardprocessing
Presentacion HardprocessingPresentacion Hardprocessing
Presentacion Hardprocessing
 
Dynamics saturday madrid 2018 conectalo como puedas - juanan&amp;adri
Dynamics saturday madrid 2018   conectalo como puedas - juanan&amp;adriDynamics saturday madrid 2018   conectalo como puedas - juanan&amp;adri
Dynamics saturday madrid 2018 conectalo como puedas - juanan&amp;adri
 
Andruino
AndruinoAndruino
Andruino
 

Más de Software Guru

Hola Mundo del Internet de las Cosas
Hola Mundo del Internet de las CosasHola Mundo del Internet de las Cosas
Hola Mundo del Internet de las CosasSoftware Guru
 
Estructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso realesEstructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso realesSoftware Guru
 
Building bias-aware environments
Building bias-aware environmentsBuilding bias-aware environments
Building bias-aware environmentsSoftware Guru
 
El secreto para ser un desarrollador Senior
El secreto para ser un desarrollador SeniorEl secreto para ser un desarrollador Senior
El secreto para ser un desarrollador SeniorSoftware Guru
 
Cómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto idealCómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto idealSoftware Guru
 
Automatizando ideas con Apache Airflow
Automatizando ideas con Apache AirflowAutomatizando ideas con Apache Airflow
Automatizando ideas con Apache AirflowSoftware Guru
 
How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:Software Guru
 
Introducción al machine learning
Introducción al machine learningIntroducción al machine learning
Introducción al machine learningSoftware Guru
 
Democratizando el uso de CoDi
Democratizando el uso de CoDiDemocratizando el uso de CoDi
Democratizando el uso de CoDiSoftware Guru
 
Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0Software Guru
 
Taller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJSTaller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJSSoftware Guru
 
El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...Software Guru
 
¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?Software Guru
 
Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.Software Guru
 
Pruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOpsPruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOpsSoftware Guru
 
Elixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivosElixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivosSoftware Guru
 
Así publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stressAsí publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stressSoftware Guru
 
Achieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goalsAchieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goalsSoftware Guru
 
Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19Software Guru
 
De lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseñoDe lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseñoSoftware Guru
 

Más de Software Guru (20)

Hola Mundo del Internet de las Cosas
Hola Mundo del Internet de las CosasHola Mundo del Internet de las Cosas
Hola Mundo del Internet de las Cosas
 
Estructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso realesEstructuras de datos avanzadas: Casos de uso reales
Estructuras de datos avanzadas: Casos de uso reales
 
Building bias-aware environments
Building bias-aware environmentsBuilding bias-aware environments
Building bias-aware environments
 
El secreto para ser un desarrollador Senior
El secreto para ser un desarrollador SeniorEl secreto para ser un desarrollador Senior
El secreto para ser un desarrollador Senior
 
Cómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto idealCómo encontrar el trabajo remoto ideal
Cómo encontrar el trabajo remoto ideal
 
Automatizando ideas con Apache Airflow
Automatizando ideas con Apache AirflowAutomatizando ideas con Apache Airflow
Automatizando ideas con Apache Airflow
 
How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:How thick data can improve big data analysis for business:
How thick data can improve big data analysis for business:
 
Introducción al machine learning
Introducción al machine learningIntroducción al machine learning
Introducción al machine learning
 
Democratizando el uso de CoDi
Democratizando el uso de CoDiDemocratizando el uso de CoDi
Democratizando el uso de CoDi
 
Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0Gestionando la felicidad de los equipos con Management 3.0
Gestionando la felicidad de los equipos con Management 3.0
 
Taller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJSTaller: Creación de Componentes Web re-usables con StencilJS
Taller: Creación de Componentes Web re-usables con StencilJS
 
El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...El camino del full stack developer (o como hacemos en SERTI para que no solo ...
El camino del full stack developer (o como hacemos en SERTI para que no solo ...
 
¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?¿Qué significa ser un programador en Bitso?
¿Qué significa ser un programador en Bitso?
 
Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.Colaboración efectiva entre desarrolladores del cliente y tu equipo.
Colaboración efectiva entre desarrolladores del cliente y tu equipo.
 
Pruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOpsPruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOps
 
Elixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivosElixir + Elm: Usando lenguajes funcionales en servicios productivos
Elixir + Elm: Usando lenguajes funcionales en servicios productivos
 
Así publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stressAsí publicamos las apps de Spotify sin stress
Así publicamos las apps de Spotify sin stress
 
Achieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goalsAchieving Your Goals: 5 Tips to successfully achieve your goals
Achieving Your Goals: 5 Tips to successfully achieve your goals
 
Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19Acciones de comunidades tech en tiempos del Covid19
Acciones de comunidades tech en tiempos del Covid19
 
De lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseñoDe lo operativo a lo estratégico: un modelo de management de diseño
De lo operativo a lo estratégico: un modelo de management de diseño
 

Último

ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 

Último (19)

ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 

Solid Day - Cloudino

  • 1. Ya eres parte de la evolución Solid Day Javier Solis Gonzalez @softjei #sgnext
  • 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
  • 7. Tipos de Arduino Boarduino Kit Arduino Uno DIY Arduino Arduino LilyPad Arduino Yun Arduino KMega 2560
  • 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
  • 12. Arduino y el 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
  • 15. Cloudino Platform Cloud Service New IoT Network Layer Existing Hardware Solutions
  • 16. Users / Apps Cloudino API Arduino Cloudino Server CoAP MQTT Context Broker Cloud Networking 3.3v Processing TTL 5v Websocket TCP TCP TCP TCP UDP UDP TCP Serial Web Site Device Manager Rule Manager Data Storage Cloudino Architecture Cloudino WiFi Connector JavaScript InterpreterArduino Programmer Sensors / Actuators WebServer Web Configuration WiFi Access Point Cloud Updates Web IDE Blynk TCP TCP GPIO GPIO
  • 17. WiFi Cloud Connector Configuration
  • 19. Cloudino • Simple Message Router • Simple Timer API • Console Messaging ArduinoAPI +
  • 20. Cloudino + Arduino • Simple Message Router • Simple Timer API • Console Messaging ArduinoAPI +
  • 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
  • 22. Cloudino + Blynk • Simple Message Router • Simple Timer API • Console Messaging ArduinoAPI +
  • 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
  • 26. Cloudino + JavaScript • Simple Message Router • Simple Timer API • Console Messaging ArduinoAPI 13 +
  • 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
  • 30. Cloudino • Cloudino.post(topic,data) • Cloudino.print(txt) • Cloudino.on(topic, funct) GPIO • HIGH=1; • LOW=0; • INPUT=0; • OUTPUT=1; • INPUT_PULLUP=2; • pinMode(pin,mode) • digitalWrite(pin,value) • digitalRead(pin) • analogRead() • analogWrite(pin,value) 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
  • 32. Array • Array.contains(obj) • Array.remove(obj) • Array.join(separator) Timer • setInterval(funct,time_ms) • clearInterval(id) • setTimeout(funct,time_ms) • clearTimeout(id) JSON JSON.stringify(obj) // convert to JSON. 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