Sie sind auf Seite 1von 48

mc electronics

INTERNET OF THINGS
TELEMETRA Y CONTROL REMOTO A TRAVS
DE WI-FI UTILIZANDO EL STACK TCP/IP DE
MICROCHIP.
Ing. Alejandro Airoldi
Ing. Fernando Tagliaferri
mcelectronics.com.ar 2014. Todos los derechos reservados.

Introduccin

Ya sea que la llamemos la nube o the cloud todos sabemos que tener
nuestros productos on-line es, da a da, una necesidad ms importante.

En esta clase se explicarn los principales conceptos y consideraciones


necesarios para que nuestros productos y aplicaciones estn en la nube.

Durante la clase se usar una placa de demostracin especialmente


diseada para esta aplicacin y se presentarn diferentes servicios como
Ubidots y Amazon Web Services para alojar la informacin en la nube.

mcelectronics.com.ar 2014. Todos los derechos reservados.

Agenda

Introduccin y Diagrama en bloques del sistema


Funciones principales y algunas aplicaciones
Conexin de los dispositivos
Portabilidad a travs de las diferentes plataformas
Mdulo WI-FI MRF24WX0MA
Introduccin y diseo del hardware
Consideraciones importantes de montaje
Otros dispositivos
Sensor de temperatura
Regulador LDO, MCP2200 y cargador de batera
mcelectronics.com.ar 2014. Todos los derechos reservados.

Agenda

Conexin e interface de usuario


Paradigmas de diseo actuales
Servicios disponibles

Regulaciones y buenas prcticas


Entes de control nacionales e internacionales
Diseo eficiente del packaging
Ejemplos y Aplicaciones
Establecer la conexin a la red
Web Server embebido
Cloud Computing
mcelectronics.com.ar 2014. Todos los derechos reservados.

Para que sirve ?


Sirve para realizar telemetra y control remoto a travs de Internet.
Podemos, por ejemplo, monitorear la temperatura, presin, intensidad
de corriente o cualquier otra magnitud a travs 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 informacin desde cualquier terminal
conectado a internet, sea este una tablet, un telfono celular o una
computadora.

mcelectronics.com.ar 2014. Todos los derechos reservados.

80 mm

Dimensiones

40 mm

(+) Comparacin de
tamao con un telfono
celular.

mcelectronics.com.ar 2014. Todos los derechos reservados.

Diagrama en bloques

25LC1024
Sensor de
temperatura

T
PIC32MX360
Pulsador de
pnico

P
WI-FI

MCP2200
Cargador de
batera

C
USB
3.3v

Conexin PC

FUENTE
Y
BATERIA

mcelectronics.com.ar 2014. Todos los derechos reservados.

Opciones de conexin
PIC18F97J60
3.3V

PIC18F97J60

TX+
TXRX+
RX-

RJ-45

TC1262-3.3

XTAL

25 MHz

LDO (200mV)

VIN GND Vout


6V
3.3V
mcelectronics.com.ar 2014. Todos los derechos reservados.

Opciones de conexin
PIC18F4620 + ENC28J60

SPI

XTAL

10 MHz

ENC28J60

PIC18F4620

5V

XTAL

TX+
TXRX+
RX-

RJ-45

25 MHz

mcelectronics.com.ar 2014. Todos los derechos reservados.

Opciones de conexin
PIC32MX360F512L + ENC624J600
PIC18F4620

3.3V

SPI
ENC624J600

PIC32MX360F512L

XTAL

TX+
TXRX+
RX-

RJ-45

25 MHz
TC1262-3.3

XTAL

LDO (200mV)

8 MHz
VIN GND Vout
6V
3.3V
mcelectronics.com.ar 2014. Todos los derechos reservados.

Opciones de conexin
PIC32MX360F512L + MRF
PIC18F4620

3.3V
MRF24WB0MA/B
MRF24WG0MA/B

SPI
MRF24W

PIC32MX360F512L

TC1262-3.3

XTAL

8 MHz

LDO (200mV)

VIN GND Vout


6V
3.3V

mcelectronics.com.ar 2014. Todos los derechos reservados.

Mdulo WI-FI
MRF24WX0MA

MRF24WX0MA
2.8V to 3.6V (3.3V typical)
40C to +85C
Simple, four-wire SPI interface
RX mode - 156 mA (typical)
TX mode - 240 mA (+18 dBm typical)
ISM Band 2.400 to 2.484 GHz operation
Channels 1-11

MRF24WB0MB
MRF24WG0MB

MRF24WB0MA
MRF24WG0MA

mcelectronics.com.ar 2014. Todos los derechos reservados.

MRF24WX0MA

MRF24WB0MA
MRF24WG0MA
mcelectronics.com.ar 2014. Todos los derechos reservados.

MRF24WX0MA
SDI
SCK
SDO
SPI

GND

CS
3.3V

MRF24WB0MA
MRF24WG0MA
mcelectronics.com.ar 2014. Todos los derechos reservados.

Consideraciones
Importantes de
diseo

mcelectronics.com.ar 2014. Todos los derechos reservados.

MRF24WX0MA
28 mm

19,5 mm

NO
COMPONENTES

PCB
MRF

Es importante respetar el
rea libre de componentes y
evitar conexiones debajo de
la antena.

mcelectronics.com.ar 2014. Todos los derechos reservados.

MRF24WX0MA

Patrn de radiacin del


mdulo con respecto a
sus dimensiones.

mcelectronics.com.ar 2014. Todos los derechos reservados.

Otros dispositivos
Sensor de temperatura, regulador LDO, MCP2200
y cargador de batera.

Dispositivos analgicos de
Microchip

TC1262-3.3
Regulador de tensin de 3.3v - 500 mA. Mnima tensin de entrada
VIN = 3.5 v @ 300mA. Muy importante cuando se utiliza en sistemas
con batera.

MCP73838
Cargador para bateras de Li-ion de una celda. Incluye censado de
corriente y proteccin contra descarga inversa.

TC1047
Sensor de temperatura analgico. 10mV/C.

mcelectronics.com.ar 2014. Todos los derechos reservados.

Diagrama en bloques
VBAT
VBAT

3.3v

TC1262-3.3

VIN

MCP73838
Cargador de batera:
puede cargar la
batera mientras se
alimenta el resto del
circuito.

3.3v

PIC32MX

ANALOG

TC1047
Sensor de temperatura
analgico 10mV/C

mcelectronics.com.ar 2014. Todos los derechos reservados.

Diagrama en bloques
VBAT

3.3v

TC1262-3.3
USB
D+

D-

USART1
3.3v
TX

MCP2200

Conversor RS232
TTL a USB. Requiere
XTAL externo de 12
MHz.

RX

PIC32MX

ANALOG

TC1047
Sensor de temperatura
analgico 10mV/C

mcelectronics.com.ar 2014. Todos los derechos reservados.

Mdulo SIM908
Funciones GPS
Conexin e interface de usuario
Paradigmas de diseo actuales
Servicios disponibles

Paradigmas de diseo actuales


INTERFACE DE
USUARIO

SISTEMA EMBEBIDO

PIC18F4620

INTERFACE DE
USUARIO

PIC32MX360F512L

PIC18F4620

SISTEMA EMBEBIDO

PIC32MX360F512L

mcelectronics.com.ar 2014. Todos los derechos reservados.

Paradigmas de diseo actuales

INTERNET

RED PRIVADA

SmartStick
WIFI

181.28.150.210

ROUTER
192.168.1.100
PC

aws.amazon.com

mcelectronics.com.ar 2014. Todos los derechos reservados.

Regulaciones y buenas
prcticas
El diseo no termina en el hardware y el
software sino que debe contemplar normas
internacionales y buenas prcticas.

ROHS

Regulaciones
y buenas Y
REGULACIONES
prcticas
BUENAS PRCTICAS
Al momento de considerar exportar un producto electrnico
debemos tener en cuenta una serie de normas internacionales.
Estas normas tienen como objetivo reducir el uso de sustancias
peligrosas y tener un control sobre la emisin electromagntica.

Directiva ROHS:
La directiva 2002/95/CE de Restriccin de ciertas Sustancias
Peligrosas en aparatos elctricos y electrnicos, (RoHS del ingls
"Restriction of Hazardous Substances"), fue adoptada en febrero de
2003 por la Union Europea. Esta norma obliga a reducir el uso de las
siguientes sustancias:
Plomo
Mercurio
Cadmio
Cromo VI (Tambin conocido como cromo hexavalente)
PBB
PBDE

mcelectronics.com.ar 2014. Todos los derechos reservados.

FCC

Regulaciones
y buenas Y
REGULACIONES
prcticas
BUENAS PRCTICAS
La FCC es la Comisin Federal de Comunicaciones de los Estados Unidos. Uno
de sus objetivos es controlar y certificar los dispositivos electrnicos que hagan
uso del espectro radioelctrico.
En este caso la placa Smart Stick utiliza la red WI-FI con lo cual el mdulo de
comunicaciones utilizado debe estar previamente certificado por la FCC. El
fabricante de este mdulo es Microchip, con lo cual en la planilla de
exportacin de Fedex debemos aclarar que el mdulo utilizado tiene su
correspondiente FCC-ID y que no ha sido alterado su funcionamiento. De
otra forma el producto no es aceptado en la aduana de Estados Unidos.

Algo similar ocurre a nivel local, el rgano


contralor es la CNC (Comisin Nacional de
Comunicaciones), en este caso el trmite de
registro lo debe hacer quien importe el mdulo
al pas.

mcelectronics.com.ar 2014. Todos los derechos reservados.

PACK

Regulaciones
y buenas Y
REGULACIONES
prcticas
BUENAS PRCTICAS
Como premisa el packaging debe proteger al producto
en su interior. En este caso la proteccin no slo es
mecnica sino que tambin es esttica.
Proteccin esttica
Todas las placas se envan dentro de una bolsa antiesttica y anti humedad para
evitar daos elctricos durante la manipulacin al sacarlas de la caja.

Proteccin mecnica
En este caso se pens el tamao de la caja para que entre un nmero entero de
ellas en un contenedor de FedEx. La caja debe indicar su contenido y el
correspondiente FCC-ID.

Diseo eficiente y racional


Por otro lado es fundamental incluir manuales, notas de aplicacin y ejemplos
que ayuden a entender el funcionamiento de la placa. Esto ahorrar muchas
horas de soporte humano.

mcelectronics.com.ar 2014. Todos los derechos reservados.

PACK

PACK

Regulaciones
y buenas Y
REGULACIONES
prcticas
BUENAS PRCTICAS

mcelectronics.com.ar 2014. Todos los derechos reservados.

Ejemplos y Aplicaciones
La idea de esta seccin es hacer una descripcin de
las funciones principales y las posibles aplicaciones de
la placa. Todos los ejemplos estn programados en C
para el XC32 de Microchip.

Ejemplos y Aplicaciones
Que necesitamos ?
Para realizar las prcticas necesitamos una placa SmartStick WI-FI o WebServer Plus WI-FI. Una
red con conexin 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 batera y
comunicarse con el PIC a travs del
MCP2200. Se puede realizar debugging
por medio de un COM Virtual.
SmartStick WI-FI

MCE Stick USB Lite


mcelectronics.com.ar 2014. Todos los derechos reservados.

Software de Microchip
MPLAB X
www.microchip.com/mplab
Compilador XC32
www.microchip.com/xc32
MLA (Ethernet)
www.microchip.com/mla
mcelectronics.com.ar 2014. Todos los derechos reservados.

Microchip TCP-IP Stack

mcelectronics.com.ar 2014. Todos los derechos reservados.

Microchip TCP-IP Stack


Maindemo.c
TCPIPConfig.h
CustomHTTPApp.c
GenericTCPClient.c
mcelectronics.com.ar 2014. Todos los derechos reservados.

Conexin a la red

TCPIPConfig.h
Seleccionamos los servicios del
Stack y el tipo de conexin a la red.
En el caso de WI-FI se debe definir
el SSID y las credenciales
de acceso.

mcelectronics.com.ar 2014. Todos los derechos reservados.

WebServer Embebido

2
PIC

TCP
STACK

web
HTTPPrint.h
VARIABLES
DINMICAS

Variables dinmicas

Funciones Callback
CustomHTTPApp.c
void HTTPPrint_HOSTNAME (void)
{
TCPPutString(sktHTTP, variable)
}

nombre
~ HOSTNAME ~

CustomHTTPApp.c
mcelectronics.com.ar 2014. Todos los derechos reservados.

WebServer Embebido

web
.html
.jpg
.gif
.css
.fla

MPFS

Eeprom?

SI

.BIN

NO
.C

MPLAB
C:\Microchip Solutions\Microchip\TCPIP Stack\Utilities\MPFS2.jar
mcelectronics.com.ar 2014. Todos los derechos reservados.

WebServer Embebido

MPFS
Genera la imagen del sitio en .bin, .c
o .asm dependiendo del dispositivo
de destino.

mcelectronics.com.ar 2014. Todos los derechos reservados.

Pasos fundamentales

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 PIC
6 - Cargar la web (mpfsupload)

mcelectronics.com.ar 2014. Todos los derechos reservados.

Cloud Computing

mcelectronics.com.ar 2014. Todos los derechos reservados.

Cloud Computing
GenericTCPClient.c
// Defines the server to be accessed for this application
static BYTE ServerName[] =
"www.mcelectronics.com.ar";
// Defines the URL to be requested by this HTTP client
static ROM BYTE RemoteURL[] = /script.php?temp=10";

/script.php?variable=valor
TCP/IPSTACK

mcelectronics.com.ar 2014. Todos los derechos reservados.

Cloud Computing
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"];

SERVIDOR REMOTO

?>

mcelectronics.com.ar 2014. Todos los derechos reservados.

Ubidots

mcelectronics.com.ar 2014. Todos los derechos reservados.

Ubidots

Token
http://translate.ubidots.com/api/postvalue/?token=0MiJaxYS6ikWwlnTkKjQ
C7cc0bR2gl&variable=53f6959b76254261753155fb&value=30
ID de la variable

Variable

mcelectronics.com.ar 2014. Todos los derechos reservados.

BONUS

Control con GET

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)
mcelectronics.com.ar 2014. Todos los derechos reservados.

BONUS

Envo de e-mails
SMTPBegin
Usage()

Setear los parametros


del mensaje

Setear Headers del


mensaje

Escribir el mensaje

SMTPSendMail()

SMTPEndUsa
ge()

NO

SMTPisBusy(
)

done
mcelectronics.com.ar 2014. Todos los derechos reservados.

Consultas

alejandro.airoldi@mcelectronics.com.ar

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.
mcelectronics.com.ar 2014. Todos los derechos reservados.

Das könnte Ihnen auch gefallen