2014-10-30
Pablo Umanzor Arancibia | [email protected] Octubre 2014
ASTERISK DE LAS COSAS
V2.1 ElastixWorld 2014
2
Objetivos:
•Estado del arte : IoT , IoE
•Verticales de la industria
•Línea comercial, Línea investigación
• Asterisk funcionando en dispositivos embedded,
placas con bajos recursos, low power.
•Como enlazar IoT y Asterisk (mqtt)
•Demostraciones de uso
•Preguntas
.
Quien soy:
• Ingeniero Electrónico
• Asterisk – Networking – Homeautomation
• www.redlibre.cl
Background…
3
Concepto - Definición
Internet de las cosas o de todo
ITU IoT puede concebirse como una infraestructura global de la
sociedad de la información, que permite ofrecer servicios
avanzados mediante la interconexión de objetos (físicos y
virtuales) gracias a la interoperabilidad de tecnologías de la
información y la comunicación (TIC) presentes y futuras.
IEEE La Iot es un paradigma de comunicación reciente en el que los
objetos de la vida cotidiana estarán equipados con MicroC,
transceptores y stack de protocolos adecuados que los haga
capaces de comunicarse entre si y con los usuarios, por lo tanto
tiene como objetivo hacer que internet sea aun mas envolvente y
penetrante.
Cisco Cisco define IoE como el fenómeno que reúne a las personas,
los procesos, los datos y las cosas para lograr que las
conexiones en red sean más relevantes y valiosas que nunca, y
transforma la información en acciones que, a su vez, crean
nuevas capacidades, mejores experiencias y oportunidades
económicas sin precedentes para empresas, personas y países
4
Impacto económico 2013-2022 según Cisco
Internet de las cosas o de todo
19 Trillones USD
• 14.4T Sector Privado
•Cadena de suministros
•Innovación, Productividad
• 4.6T Sector Publico
•Ciudades, public facilities,
•Salud, educación, defensa militar
• 7.4T : M2M
• 4.6T : H2M
• 7.0T: H2H
.
5
Línea de investigación
•Escala Masiva
•Arquitectura
•Seguridad
•Privacidad
•Línea de oportunidad de negocios
•Sensores, Actuadores, Fuentes de energía
•Cosas de la vida cotidiana, objetos dentro de una casa por ej.
•Conectividad, Comunicaciones, necesidades de BW
•Tecnologia de base, Mysql, MongoDB, Non-sql, Frameworks.
•Integradores de sistemas, productos llave en mano.
.
Internet de las cosas o de todo
6
Linea de Investigación - IoT
Escala Masiva, > 50 Billones de objetos 2020
•Como los vamos a autenticar? , Mantener, proteger, como llamarlos
identificarlos.
•Que stack utilizar TCP/IP (vamos a enviar solo 5 bytes de info!!),
6LoWPAN o un nuevo protocolo?
•Como alimentarlos, su propia fuente de energía, como captarla, aire
radiofreq, Solar, térmica?
•Como procesar cantidades masivas de datos, en tiempo real? Quien
se hará cargo de esto?
Big Data & Arquitectura
•Transformar raw data en información util y conocimiento.
•Interferencia
.
7
Linea de Investigación - IoT
Robustez:
•Sensores/Actuadores pueden deteriorarse, perdidas de
sincronización de reloj, errores de aplicación, wake-up
schedule.
Seguridad:
•Sensores/Actuadores, alguien nos puede secuestrar nuestros
objetos y por lo tanto controlarlos
Privacidad:
•Nuestros Datos están seguros en la nube?
•Las compañías están preparadas para esto?
•Efecto co-lateral de la interferencia.
.
8
Línea de oportunidad de negocios - IoT
Fabricas:
•Sensores, Actuadores
• Fuentes de energía
Cosas de la vida cotidiana:
•Objetos dentro de una casa, lavadoras, refrigeradores, tv,
lámparas, sensores de humo, Appliances , Arduino.
(kickstarter, indiegogo)
Conectividad:
•Comunicaciones, Enlaces.
•Necesidades de BW, Personas vs Objetos.
Tecnología de base:
•Mysql, MongoDB, Non-sql
•Frameworks, Asterisk.
Integradores de sistemas:
•Productos llave en mano.
•Usabilidad, Aplicaciones simples de usar.
9
Problemas, Riesgos, Desafios - IoT
Legales: Objeto, cosa
Avalancha de datos: Modelo de trafico
Personas vs Modelo de trafico Objetos
Objetos zombies: Virus, malware.
Estandarización Comunicaciones: 802.15.4,
6LowWPAN, WIFI, BLE, Otros
Bajo costo acceso: Redes de acceso
Privacidad: Confiar en la nube, robo de datos
Ataques, denegación de servicio
Bloqueo: Ciudades inteligentes, fabricas
10
Placas y tarjetas bajo estudio
•Raspberry PI model B, Raspbian @ 40usd
•Mikrotik Routerboard, Metarouter, OpenWrt @ 80usd
•RB951G-2HnD (Gigabit, USB, 2GHz, 802.11n, dual chain)
•CPU Atheros AR9344 600MHz CPU, 128MB
•WrtNode, OpenWrt @ 25usd
•MTK MT7620N 580MHz MIPS CPU (MIPS24KEc)
•512Mbit DDR2 ram
•128Mbit SPI Flash rom
•300Mbit Wi-Fi 2T2R 802.11n 2.4 GHz
•23GPIOs
Asterisk en Dispositivos Embedded
MetaRouter Mikrotik
11
12
Que protocolo utilizar para…
13
MQTT
Principios de Diseño
•Mensajería Publish/Subcribe
•Construido para situaciones de bajo BW, alta latencia o redes no
confiables.
•Diseñado para dispositivos que pueden tener recursos limitados de
procesamiento
MQTT – Mosquitto
14
Mosquitto is an open source (BSD licensed) message broker that implements
the MQ Telemetry Transport protocol versions 3.1 and 3.1.1.
MQTT provides a lightweight method of carrying out messaging using a
publish/subscribe model.
This makes it suitable for "machine to machine" messaging such as with low power
sensors or mobile devices such as phones, embedded computers or
microcontrollers like the Arduino.
Mqtt vs HTTPS - Polling
15
Inicial HTTPS MQTT
WIFI 0.00218 0.00256
3G 0.02919 0.04162
Conexión
WIFI 0.1381 0,0112
3G 1,1149 0,795
Proyectos a desarrollar
Control a Distancia en situaciones que no sea posible
acceder a Internet directamente
Utilización de telefonía tradicional e IP (red fija, celular, SIP)
Acceso a controlar “cosas” mediante el teclado o mediante
control por voz
Asterisk como gateway entre el usuario y el mundo IoT
Asterisk trabajando como decodificador de DTMF o ASR.
Conexión contra un broker MQTT – Mosquitto.
Conexión de cosas al mismo broker para ser controladas vía
teléfono.
16
1717
Proyecto Inicial
Control Remoto
18
Funcionalidades
• Control a distancia desde cualquier lugar del mundo vía línea
telefónica
•Usar teclado del teléfono para controlar “Cosas”, DTMF
•Línea Telefónica Estándar con Tonos
Funcionamiento
•Detector de la señal de timbre
•Decodificador de tonos
•Circuito de control
•Simulación de teléfono descolgado
19
Diagrama Esquematico
2020
La historia …
Proyecto para final de semestre sistemas digitales.
Reunir los componentes no fue el problema, conseguir un
celular y una línea telefónica para hacer pruebas.
Problemas para decodificar los tonos, ruido de línea
Algunos operadores no pasaban los DTMF (hasta el dia de
hoy)
Debido a un problema de “información” el proyecto no fue
posible realizarlo
Solución propuesta con Asterisk
Implementación de un sistema mediante DTMF y ASR
con Asterisk
Telefonía
Asterisk PBX, Linux
IVR
Árbol básico
ASR
Vestec ASR engine
21
22
Solución propuesta con Asterisk+IoT
Script en Asterisk
<?php
require("/srv/phpMQTT.php");
$digito = $argv[1];
echo "$digito";
$mqtt = new phpMQTT("192.17.138.213", 1883, “Elastixwtest");
if ($mqtt->connect()) {
$mqtt->publish("test/uno","$digito",0);
$mqtt->close();
}
?>
23
Sketch Arduino
void setup() {
….
mqtt.subscribe("test/uno", Evento);
}
void loop() {
mqtt.monitor();
}
void Evento(const String& topic, const String& subtopic, const String& message) {
Char status = OK_recibido;
mqtt.publish("test/dos", status);
if (message == “verde") {
digitalWrite(led, HIGH);
} else if (message == “apagar"){
digitalWrite(led, LOW);
}
//digitalWrite(led, HIGH);
}
24
25
Enseñanzas destacadas del Laboratorio de pruebas
El Actuador y sensores pueden estar en
cualquier lugar del mundo donde exista
conexión a Internet (Satelital, GSM, wifi, etc)
Muy estable en condiciones anteriores, se
recibieron el 100% de las ordenes.
El modelo Publish/subscriber utilizando
software libre baja los costes con respecto a
soluciones propietarias
Es posible utilizar dtmf y control por voz
El consumo en stand by de energía y ancho
de banda son muy bajos (sin encriptación)
No se requiere de una IP publica para
funcionar eso es resuelto por el protocolo de
transporte.
2014-10-30
Remote control Technology
ASTERISK IOT + DEMO
V2.1 ElastixWorld 2014
27