Upload
eduardo-carlos-muniz
View
68
Download
3
Embed Size (px)
DESCRIPTION
wifi
Citation preview
INTERNET OF THINGS
TELEMETRÍA Y CONTROL REMOTO A TRAVÉS DE WI-FI UTILIZANDO EL STACK TCP/IP DE MICROCHIP.Ing. Alejandro AiroldiIng. Fernando Tagliaferri
electronicsmc
mcelectronics.com.ar ©2014. Todos los derechos reservados.
Introducción
Ya sea que la llamemos la nube o “the cloud” todos sabemos que tener nuestros productos on-line es, día a día, una necesidad más importante.
En esta clase se explicarán los principales conceptos y consideraciones necesarios para que nuestros productos y aplicaciones estén en la nube.
Durante la clase se usará una placa de demostración especialmente diseñada para esta aplicación y se presentarán diferentes servicios como Ubidots y Amazon Web Services para alojar la información en la nube.
mcelectronics.com.ar ©2014. Todos los derechos reservados.
Agenda
Introducción y Diagrama en bloques del sistema Funciones principales y algunas aplicaciones Conexión de los dispositivos Portabilidad a través de las diferentes plataformas
Módulo WI-FI MRF24WX0MAIntroducción y diseño del hardware
Consideraciones importantes de montaje
Otros dispositivos
Sensor de temperatura Regulador LDO, MCP2200 y cargador de batería
mcelectronics.com.ar ©2014. Todos los derechos reservados.
Conexión e interface de usuario Paradigmas de diseño actuales Servicios disponibles
Regulaciones y buenas prácticas Entes de control nacionales e internacionales
Diseño eficiente del packaging
Ejemplos y AplicacionesEstablecer la conexión a la redWeb Server embebidoCloud Computing
Agenda
mcelectronics.com.ar ©2014. Todos los derechos reservados.
Para que sirve ?
Sirve para realizar telemetría y control remoto a través de Internet. Podemos, por ejemplo, monitorear la temperatura, presión, intensidad de corriente o cualquier otra magnitud a través de una interface web.
Esta interface web puede ser almacenada dentro del sistema (microcontrolador + memoria) o bien puede estar en la nube.
Es posible acceder a la información desde cualquier terminal conectado a internet, sea este una tablet, un teléfono celular o una computadora.
mcelectronics.com.ar ©2014. Todos los derechos reservados.
Dimensiones
(+) Comparación de tamaño con un teléfono celular.
40 mm
80 m
m
mcelectronics.com.ar ©2014. Todos los derechos reservados.
C
25LC1024
FUENTE Y
BATERIA
WI-FI
USB
PPulsador de pánico
Cargador de batería
MCP2200
Sensor de temperatura
Diagrama en bloques
mcelectronics.com.ar ©2014. Todos los derechos reservados.
TPIC32MX360
Conexión PC
3.3v
Opciones de conexión
mcelectronics.com.ar ©2014. Todos los derechos reservados.
PIC18F97J60
PIC18F97J60RJ-45
TX+TX-RX+RX-
3.3V
25 MHzXTAL
TC1262-3.3
VIN6V
GND Vout3.3V
LDO (200mV)
Opciones de conexión
mcelectronics.com.ar ©2014. Todos los derechos reservados.
PIC18F4620 + ENC28J60
RJ-45
TX+TX-RX+RX-
5V
25 MHzXTAL
ENC
28J6
0
PIC
18F4
620
10 MHzXTAL
SPI
Opciones de conexión
mcelectronics.com.ar ©2014. Todos los derechos reservados.
PIC32MX360F512L + ENC624J600
RJ-45
TX+TX-RX+RX-
25 MHzXTALPIC
18F4
620
8 MHzXTAL
SPIENC624J600
PIC32MX360F512L
3.3V
TC1262-3.3
VIN6V
GND Vout3.3V
LDO (200mV)
Opciones de conexión
mcelectronics.com.ar ©2014. Todos los derechos reservados.
PIC32MX360F512L + MRF
PIC
18F4
620
8 MHzXTAL
SPIMRF24W
PIC32MX360F512L
3.3V
TC1262-3.3
VIN6V
GND Vout3.3V
LDO (200mV)
MRF24WB0MA/BMRF24WG0MA/B
Módulo WI-FI MRF24WX0MA
MRF24WX0MA
mcelectronics.com.ar ©2014. Todos los derechos reservados.
MRF24WB0MBMRF24WG0MB
MRF24WB0MAMRF24WG0MA
2.8V to 3.6V (3.3V typical)40°C to +85°CSimple, four-wire SPI interfaceRX mode - 156 mA (typical)TX mode - 240 mA (+18 dBm typical)ISM Band 2.400 to 2.484 GHz operationChannels 1-11
MRF24WX0MA
mcelectronics.com.ar ©2014. Todos los derechos reservados.
MRF24WB0MAMRF24WG0MA
MRF24WX0MA
mcelectronics.com.ar ©2014. Todos los derechos reservados.
SDI
GND
3.3V
SCKSDO
CS
SPI
MRF24WB0MAMRF24WG0MA
Consideraciones Importantes de diseño
mcelectronics.com.ar ©2014. Todos los derechos reservados.
MRF24WX0MA
mcelectronics.com.ar ©2014. Todos los derechos reservados.
MRF
PCB
NO COMPONENTES
Es importante respetar el área libre de componentes y evitar conexiones debajo de la antena.
28 mm
19,5 mm
mcelectronics.com.ar ©2014. Todos los derechos reservados.
MRF24WX0MA
Patrón de radiación del módulo con respecto a sus dimensiones.
Otros dispositivosSensor de temperatura, regulador LDO, MCP2200 y cargador de batería.
Dispositivos analógicos de Microchip
TC1262-3.3 Regulador de tensión de 3.3v - 500 mA. Mínima tensión de entrada
VIN = 3.5 v @ 300mA. Muy importante cuando se utiliza en sistemas con batería.
MCP73838 Cargador para baterías de Li-ion de una celda. Incluye censado de
corriente y protección contra descarga inversa.
TC1047 Sensor de temperatura analógico. 10mV/C.
mcelectronics.com.ar ©2014. Todos los derechos reservados.
Diagrama en bloques
TC1262-3.3
ANALOG
Cargador de batería: puede cargar la batería mientras se alimenta el resto del circuito. TC1047
3.3v
3.3v
Sensor de temperatura analógico 10mV/C
VBAT
VIN
MCP73838
VBAT
PIC32MX
mcelectronics.com.ar ©2014. Todos los derechos reservados.
Diagrama en bloques
TC1262-3.3
ANALOGTC1047
3.3v
3.3v
Sensor de temperatura analógico 10mV/C
VBAT
mcelectronics.com.ar ©2014. Todos los derechos reservados.
PIC32MX
TX
RX
D-D+
Conversor RS232 TTL a USB. Requiere XTAL externo de 12 MHz.
USART1
MCP2200
USB
Módulo SIM908 Funciones GPS
Conexión e interface de usuarioParadigmas de diseño actualesServicios disponibles
Paradigmas de diseño actuales
mcelectronics.com.ar ©2014. Todos los derechos reservados.
PIC
18F4
620
PIC32MX360F512L
INTERFACE DE USUARIO
PIC
18F4
620
PIC32MX360F512L
INTERFACE DE USUARIO
SISTEMA EMBEBIDO SISTEMA EMBEBIDO
Paradigmas de diseño actuales
mcelectronics.com.ar ©2014. Todos los derechos reservados.
INTERNET
ROUTER
PC
181.28.150.210
192.168.1.100
RED PRIVADA
aws.amazon.com
SmartStick WIFI
Regulaciones y buenas prácticasEl diseño no termina en el hardware y el software sino que debe contemplar normas internacionales y buenas prácticas.
Al momento de considerar exportar un producto electrónicodebemos tener en cuenta una serie de normas internacionales.Estas normas tienen como objetivo reducir el uso de sustanciaspeligrosas y tener un control sobre la emisión electromagnética.
Directiva ROHS:
La directiva 2002/95/CE de Restricción de ciertas SustanciasPeligrosas en aparatos eléctricos y electrónicos, (RoHS del inglés"Restriction of Hazardous Substances"), fue adoptada en febrero de2003 por la Union Europea. Esta norma obliga a reducir el uso de lassiguientes sustancias:
PlomoMercurioCadmioCromo VI (También conocido como cromo hexavalente)PBBPBDE
mcelectronics.com.ar ©2014. Todos los derechos reservados.
REGULACIONES Y BUENAS PRÁCTICAS
Regulaciones y buenas prácticasROHS
La FCC es la Comisión Federal de Comunicaciones de los Estados Unidos. Unode sus objetivos es controlar y certificar los dispositivos electrónicos que haganuso del espectro radioeléctrico.
En este caso la placa Smart Stick utiliza la red WI-FI con lo cual el módulo decomunicaciones utilizado debe estar previamente certificado por la FCC. Elfabricante de este módulo es Microchip, con lo cual en la planilla deexportación de Fedex debemos aclarar que el módulo utilizado tiene sucorrespondiente FCC-ID y que no ha sido alterado su funcionamiento. Deotra forma el producto no es aceptado en la aduana de Estados Unidos.
Algo similar ocurre a nivel local, el órganocontralor es la CNC (Comisión Nacional deComunicaciones), en este caso el trámite deregistro lo debe hacer quien importe el móduloal país.
REGULACIONES Y BUENAS PRÁCTICAS
mcelectronics.com.ar ©2014. Todos los derechos reservados.
Regulaciones y buenas prácticasFCC
Como premisa el packaging debe proteger al productoen su interior. En este caso la protección no sólo esmecánica sino que también es estática.
Protección estática
Todas las placas se envían dentro de una bolsa antiestática y anti humedad paraevitar daños eléctricos durante la manipulación al sacarlas de la caja.
Protección mecánica
En este caso se pensó el tamaño de la caja para que entre un número entero deellas en un contenedor de FedEx. La caja debe indicar su contenido y elcorrespondiente FCC-ID.
Diseño eficiente y racional
Por otro lado es fundamental incluir manuales, notas de aplicación y ejemplosque ayuden a entender el funcionamiento de la placa. Esto ahorrará muchashoras de soporte humano.
REGULACIONES Y BUENAS PRÁCTICAS
Regulaciones y buenas prácticasPACK
mcelectronics.com.ar ©2014. Todos los derechos reservados.
PAC
K
mcelectronics.com.ar ©2014. Todos los derechos reservados.
REGULACIONES Y BUENAS PRÁCTICAS
Regulaciones y buenas prácticasPACK
Ejemplos y Aplicaciones La idea de esta sección es hacer una descripción de las funciones principales y las posibles aplicaciones de la placa. Todos los ejemplos están programados en C para el XC32 de Microchip.
Ejemplos y AplicacionesQue necesitamos ?Para realizar las prácticas necesitamos una placa SmartStick WI-FI o WebServer Plus WI-FI. Una red con conexión wireless disponible y un cable USB para realizar debugging desde la PC (en la PC debe estar instalado el driver de la placa y el HyperTerminal o similar). Puede reprogramar el firmware con un programador MCE Smart Stick Lite o compatible.
miniUSB
Se utiliza para cargar la batería y comunicarse con el PIC a través del
MCP2200. Se puede realizar debugging por medio de un COM Virtual.
mcelectronics.com.ar ©2014. Todos los derechos reservados.SmartStick WI-FI MCE Stick USB Lite
Software de Microchip
mcelectronics.com.ar ©2014. Todos los derechos reservados.
MPLAB Xwww.microchip.com/mplab
Compilador XC32www.microchip.com/xc32
MLA (Ethernet)www.microchip.com/mla
Microchip TCP-IP Stack
mcelectronics.com.ar ©2014. Todos los derechos reservados.
Microchip TCP-IP Stack
mcelectronics.com.ar ©2014. Todos los derechos reservados.
Maindemo.c
TCPIPConfig.h
CustomHTTPApp.c
GenericTCPClient.c
Conexión a la red
mcelectronics.com.ar ©2014. Todos los derechos reservados.
TCPIPConfig.hSeleccionamos los servicios del Stack y el tipo de conexión a la red. En el caso de WI-FI se debe definir el SSID y las credenciales de acceso.
1
WebServer Embebido
mcelectronics.com.ar ©2014. Todos los derechos reservados.
VARIABLES DINÁMICAS
webPIC
TCP STACK
HTTPPrint.h
Funciones CallbackCustomHTTPApp.c
void HTTPPrint_HOSTNAME (void){
TCPPutString(sktHTTP, variable)}
Variables dinámicas
nombre~ HOSTNAME ~
CustomHTTPApp.c
2
WebServer Embebido
mcelectronics.com.ar ©2014. Todos los derechos reservados.
2
.html
.jpg
.gif
.css
.fla
web
MPFS Eeprom?SI
.BIN
NO
.C
MPLAB
C:\Microchip Solutions\Microchip\TCPIP Stack\Utilities\MPFS2.jar
WebServer Embebido
mcelectronics.com.ar ©2014. Todos los derechos reservados.
2
MPFSGenera la imagen del sitio en .bin, .c o .asm dependiendo del dispositivo de destino.
Pasos fundamentales
mcelectronics.com.ar ©2014. Todos los derechos reservados.
1 - Modificar el Stack (MPLAB)2 - Modificar la web (notepad)3 - Compilar la web (MPFS)4 - Compilar el stack (MPLAB X+XC32)5 - Cargar el .hex en el PIC6 - Cargar la web (mpfsupload)
2
Cloud Computing
mcelectronics.com.ar ©2014. Todos los derechos reservados.
3
Cloud Computing
mcelectronics.com.ar ©2014. Todos los derechos reservados.
3
GenericTCPClient.c// Defines the server to be accessed for this applicationstatic BYTE ServerName[] = "www.mcelectronics.com.ar";
// Defines the URL to be requested by this HTTP clientstatic ROM BYTE RemoteURL[] = “/script.php?temp=10";
/script.php?variable=valor
TCP/IPSTACK
Cloud Computing
mcelectronics.com.ar ©2014. Todos los derechos reservados.
3
SERVIDOR REMOTO
script.php<?php
$dbhost = 'localhost';$dbuser = 'mceweb';$dbpass = ‘123456'; // NOTA: Reemplace password
$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Ocurrió un error al conectarse al servidor mysql');
$dbname = 'mceweb_test';mysql_select_db($dbname);
$sql = 'INSERT INTO web'.'(temp) '.'VALUES ('.$_GET["temp"].')';mysql_select_db('mceweb_test');
$retval = mysql_query( $sql, $conn );
mysql_close($conn);
echo $_GET["temp"];
?>
Ubidots
mcelectronics.com.ar ©2014. Todos los derechos reservados.
3
Ubidots
mcelectronics.com.ar ©2014. Todos los derechos reservados.
3
http://translate.ubidots.com/api/postvalue/?token=0MiJaxYS6ikWwlnTkKjQC7cc0bR2gl&variable=53f6959b76254261753155fb&value=30
ID de la variable Variable
Token
Control con GET
mcelectronics.com.ar ©2014. Todos los derechos reservados.
BONUS
CustomHTTPApp.c
HTTP_IO_RESULT HTTPExecuteGet(void){
BYTE *ptr;BYTE filename[20];MPFSGetFilename(curHTTP.file, filename, 20);if(!memcmppgm2ram(filename, "lights.htm",10)){
ptr = HTTPGetROMArg(curHTTP.data, (ROM BYTE*) "lights");if(ptr)
LED4_IO = (*ptr==’1’);}
return HTTP_IO_DONE;}
#if defined(HTTP_USE_POST)
Envío de e-mails
mcelectronics.com.ar ©2014. Todos los derechos reservados.
BONUS
SMTPBeginUsage()
Setear los parametros del mensaje
Setear Headers del mensaje
Escribir el mensaje
SMTPSendMail()
SMTPisBusy()
NOSMTPEndUsa
ge()
done
Consultas
mcelectronics.com.ar ©2014. Todos los derechos reservados.
The Microchip name and logo, the Microchip logo, dsPIC, FlashFlex, KEELOQ, KEELOQ logo, MPLAB, PIC, PICmicro, PICSTART, PIC32 logo, rfPIC, SST, SST Logo, SuperFlash and UNI/O are registered trademarks of Microchip Technology Incorporated in the U.S.A. and other countries. All other trademarks mentioned herein are property of their respective companies.