Siguenos en ...

Google+facebooktwitter

youtubepinterest RSS aquihayapuntes

Últimos Tutoriales

Licencia

Creative Commons

 

Todo el contenido de este sitio está bajo una licencia de Creative Commons

 

Comandar un PIC a través de Internet

 

Comandar un PIC a través de InternetConectar un Microcontrolador a una red Ethernet y recibir o enviarle instrucciones al PIC desde una página WEB a través del protocolo HTTP no es nada novedoso a estas alturas. Para ello tenemos dos opciones; la primera es utilizar un controlador externo que implementa ya todo lo necesario para la comunicación Ethernet, el Microcontrolador se conecta al módulo Ethernet a través de una interfaz como RS-232, SPI, etc. En este grupo se encuentran dispositivos como: ENC28J60, ENC624J600, Rabbit, EZ Web Lynx, SitePlayer, etc. La otra opción es utilizar un Microcontrolador que lleve ya integrado el controlador Ethernet, Microchip dispone de varios PICs con estas características como el PIC18F67J60, PIC18f97J60, PIC32MX795FXXX, etc.

 

Las ventajas y desventajas de utilizar una opción u otra son hasta cierto punto obvias, en el caso de utilizar un módulo externo puedes utilizar cualquier Microcontrolador para realizar una aplicación que envíe y reciba datos desde Internet, al estar todo lo referente a la comunicación Ethernet en el módulo externo, no necesitas implementar nada más que tú aplicación en el Microcontrolador y las funciones necesarias para el envío de datos serie al controlador, con el consiguiente ahorro de recursos en el PIC, como inconveniente lógicamente está el que tienes que utilizar un componente Hardware más en tú circuito.

 

Si se utiliza un Microcontrolador que incorpore el controlador Ethernet te ahorras el tener que utilizar un componente extra para la gestión de la comunicación Ethernet, pero como inconvenientes tendrás que solo podrás utilizar un número reducido de PICs en tus proyectos y que lógicamente tendrás que incluirle a tú código el conjunto de librerías o Stack TCP/IP que suministre el desarrollador del compilador que utilices y como estarás suponiendo, si es que no las conoces ya, no son nada “livianas” en cuanto a tamaño , con el consiguiente consumo de recursos por parte del PIC.  En realidad dada la complejidad del Stack lo que se hace es adaptar tú aplicación para que funcione dentro del conjunto de librerías TCP/IP.

 

En mi opinión el uso de un controlador externo es una manera fácil y sencilla de conectar un Microcontrolador o cualquier otro dispositivo a una red Ethernet pero difiere bastante en cuanto al desarrollo del código de la aplicación si en vez de ello utilizamos un Microcontrolador con el controlador Ethernet incluido y por tanto no se puede comparar una cosa con la otra.


En este artículo vamos a ver como utilizar un controlador Ethernet externo concretamente el SitePlayer SP1 que fabrica la empresa NetMedia. Algunas de sus características son las siguientes:

 

Características Principales

  • Servidor WEB completo en un módulo de reducido tamaño (22x33mm), cuyo cerebro es tan solo un Microcontrolador de 8 bits concretamente el 89C51 de Philips al que se le ha añadido una interfaz Ethernet.
  • Dispone de un puerto de 8 pines que permite su conexión directa a circuitos de entrada y salida, también pueden configurarse cuatro PWMs o DACs de 8 bits, generadores de frecuencia, o contadores de eventos.
  • El dispositivo cumple con el estándar 10BaseT con corrección automática de la polaridad por hardware.
  • 64 KBites de memoria flash de los cuales 48 KBites están disponibles para albergar las páginas web, cuya carga se hace vía Ethernet.
  • El Firmware del dispositivo es actualizable vía Ethernet.
  • Soporte para los siguientes protocolos de comunicación: ARP, ICPM, IP, UDP, TCP, DHCP.
  • La IP del dispositivo la podemos configurar de forma estática o de forma dinámica a través de un servidor DHCP.
  • Interfaz serie con un Baud Rate configurable entre 300 y 115.200 bits por segundo.
  • Controles .OCX  para facilitar la creación de aplicaciones de escritorio en Visual Basic, Java, C ó C++ y para el monitoreo y control remoto del SitePlayer.
  • 768 bytes para los SiteObjetos (veremos más adelante lo que es esto), los cuales pueden ser del tipo bit, byte, integer, long y string.
  • Las páginas web que posteriormente se alojarán en el SitePlayer deben de cumplir el estándar HTML y se pueden crear por medio del bloc de Notas o con cualquiera de los múltiples programas del tipo WYSIWYG que existen como FrontPage, Dreamweaver, etc.
  • La conexión del dispositivo a una red Ethernet se realiza a través de un conector RJ-45 apantallado con filtros para evitar interferencias.

 

Comenzando

Para empezar a trabajar con el SitePlayer lo primero que tenemos que tener además de disponer del dispositivo en sí, es bajarnos las aplicaciones de escritorio y la documentación (muy completa) desde la página del fabricante NetMedia.

Desde la sección de descargas nos bajaremos la versión completa que incluye el Site Linker V1.1
Una vez instalado el paquete se nos habrán instalado varias aplicaciones, todas ellas muy sencillas de utilizar: SitePlayerPCDemo, SiteLinker, Serial Port Tester y UPDsendtest. Vamos hacer una pequeña descripción de cada una de ellas.

  • Serial Port Tester: como su propio nombre indica es una aplicación que nos permite testear la interfaz serie que incorpora el SitePlayer, además desde ella podemos ajustar determinados parámetros de configuración en el SitePlayer como la dirección IP del dispositivo, Obtener la dirección MAC, hacer un Reset, Obtener o cambiar el valor de determinadas posiciones de memoria, etc. La conexión al SitePlayer se realiza a través de un puerto serie libre que tengamos en nuestro ordenador y un convertidor de niveles como el MAX232 para adaptar los niveles TTL en los que trabaja el SitePlayer a la norma RS232 requerida por el PC.

 

Serial Port Test

 

  • SitePlayerPCDemo: es un emulador software del SitePlayer y nos permite depurar nuestro proyecto, antes de descargarlo definitivamente en el SitePlayer. En si es un servidor WEB local que nos permite visualizar en el navegador las páginas tal y como si lo estuviéramos haciendo realmente a través del SitePlayer.

 

SitePlayerPCDemo

 

  • SiteLinker: un proyecto para el SitePlayer no consta sólo de los archivos en html de las páginas que queremos cargar en él, además hay que crear otra serie de archivos como el archivo de definiciones (.SPD) y otros, que veremos en un ejemplo más adelante. Pues bien el SiteLinker tiene dos funciones, la primera es enlazar todos esos archivos en un solo archivo binario y que tendrá de extensión (.SPB) este será el archivo que hay que cargar en el SitePlayer  y que se transferirá a él vía Ethernet a través de este mismo programa.

 

StePlayerLinker

 

Como se ve en la figura de arriba si hacemos clic sobre la pestaña Download tenemos tres opciones:

 

1)  Make DownLoad: solamente hará el linkado de los archivos y generará el archivo binario con extensión (.spb).
2)  Download SitePlayer: enviará al SitePlayer vía Ethernet el archivo binario que seleccionemos.
3)  Make and DownLoad: hará los dos pasos anteriores en uno, nos pedirá que seleccionemos un archivo de definiciones (.SPD), generará el archivo binario (.spb) y lo cargará en el SitePlayer.
  • UDPsendtest: el SitePlayer también tiene la funcionalidad de poder enviar mensajes UDP a cualquier combinación de direcciones MAC/IP que queramos. Está aplicación permite visualizar los paquetes UDP enviados por el SitePlayer.

 

UDPSendTester

 

 

© 2007-2017 AquiHayapuntes.com