1 / 22

Comunicación entre Motes

Jean Paul Berríos jeanpaul@elo.utfsm.cl. Comunicación entre Motes. NesC. Lenguaje de programación orientado a componentes. El usuario crea un componente ayundándose de otros ya creados. Componente. Configuración e Implementación ( miaplicacion.nc) ‏ Módulos (miaplicacionM.nc) ‏

gus
Download Presentation

Comunicación entre Motes

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Jean Paul Berríos jeanpaul@elo.utfsm.cl Comunicación entre Motes

  2. NesC Lenguaje de programación orientado a componentes. • El usuario crea un componente ayundándose de otros ya creados

  3. Componente • Configuración e Implementación ( miaplicacion.nc)‏ • Módulos (miaplicacionM.nc)‏ • librerias (.h)‏ • Lógicamente •  3 partes •  Configuración •  Implementación •  Módulos

  4. El componente La biblioteca de componentes de TinyOS incluye protocolos de red, servicios distribuidos, drivers de sensores y herramientas de adquisición de datos. "Un componente posee tres grandes secciones que son: Configuration, Implementation, Module. Estas tres secciones han de estar obligatoriamente presentes en cualquier componente aunque puedan estar vacías."

  5. Tipos de Datos uint16_t , es un entero sin signo de 16 bit uint8_t , entero de 8 bit bool , booleano ( TRUE , FALSE )‏ result_t , es un boolean pero ( SUCCES , FAIL )‏ Tipos de C

  6. Instalación TinyOS 1.1.10 (Windows)‏ Borrar todas las versiones previas de Cygwin. Ir a http://www.tinyos.net/dist-1.1.0/tinyos/windows/ Descargar: tinyos-1.1.11-3is.exe 166M Ó tinyos-1.1.11-2bis.zip 165M Instalar *.exe, incluye Cygwin, NesC Java software.

  7. Instalación TinyOS 1.1.10 (Windows)‏ Java Communication API package Contiene soporte para los puertos paralelos y seriales de PC en windows Se necesita instalar la API antes que intentar ejecutar un programa Java en el PC para el intercambio de datos con un mote http://java.sun.com/products/javacomm/downloads/index.html Click en“Download Version 2.0 for Microsoft Windows and Solaris/x86” Descargar para plataforma Windows. Descomprimir en un directorio“commapi”. Ir a “commapi”, y abrir “Readme.html”.

  8. JVM (Java Virtual Machine)‏ Se pueden tener múltiples máquinas virtuales instaladas en un PC. Copiar el comm.jar a: java/j2sdk1.4.0/jre/lib/ext/ Cuando se instala un jdk: C:\Program Files\Java\jdk1.5.0_01 C:\Program Files\Java\jre1.5.0_01 Para ejecutar una aplicación se usará jre C:\Program Files\Java\jre1.5.0_01\bin\java http://www.tinyos.net/windows-1_1_0.html

  9. Instalación (Wizard) TinyOS 1.1.9 en Windows http://www.tinyos.net/windows-1_1_0.html Llenar formulario Una manera fácil de instalar todo lo necesario para TinyOS 1.1.9 es descargando todos los archivos de http://tinyos.net/telosbel cual es un wizard que incluye todo lo necesario para el desarrolo con telosb. Autorun.inf 09-Dec-2004 15:02 1k Data1.cab 09-Dec-2004 15:32 161M Setup.skin 09-Dec-2004 15:32 67k TinyOS.msi 09-Dec-2004 15:32 1.3M setup.exe 09-Dec-2004 15:33 4.3M tinyos-1.1.9telosb-1.cygwin.noarch.rpm

  10. Wizard TinyOS 1.1.10 (Windows)‏ Incluye todos los paquetes descritos en esta ventana

  11. Instalación TinyOS 1.1.10 (Ubuntu)‏ Descargar desde el siguiente link: http://www.tinyos.net/dist-1.1.0/tinyos/linux/ Son paquetes .rpm (RedHat)‏ Se debe utilizar alien para convertirlos en paquete debian Luego descargar nesc Se puede bajar vía CVS (el paquete rpm) actualizado

  12. Instalación TinyOS 2.0 Ubuntu edgy Editar el archivo /etc/apt/sources.list con cualquier editor de texto ejm: nano /etc/apt/sources.list Agregar la siguiente dirección: deb http://tinyos.stanford.edu/tinyos/dists/ubuntu edgy main Guardar y salir (CTRL+O) y (CTRL X). Actualizar los repositorios: $ apt-get update Instalar los paquetes: $ apt-get install tinyos tinyos-avr tinyos-msp430 tinyos-tools nesc

  13. Instalación TinyOS 2.0 Ubuntu edgy Agregar al final de gedit $HOME/.bashrc las siguientes lineas: TOSROOT=/opt/tinyos-2.x TOSDIR=$TOSROOT/tos CLASSPATH=$TOSROOT/support/sdk/java/tinyos.jar:. MAKERULES=$TOSROOT/support/make/Makerules PATH=/opt/msp430/bin:$PATH export TOSROOT TOSDIR CLASSPATH MAKERULES PATH # Java export JDKROOT=/usr/lib/jvm/java-1.5.0-sun export JAVAXROOT=$JDKROOT # Ubuntu 6.10 comes with gcc 4.1 which is currently broken with TOSSIM so we'll # use gcc/g++ 4.0 export CC=gcc-4.0 export CXX=g++-4.0

  14. Script para fácil manejo entre versionesTinyOS 1.1 y TinyOS 2 http://5secondfuse.com/tinyos/install.html Agregar en archivo .bashrc # http://5secondfuse.com/tinyos/install.html if [ -f ~/.bash_tinyos ]; then . ~/.bash_tinyos fi Crear archivo .bash_tinyos en home del usuario Referencia: http://5secondfuse.com/tinyos/.bash_tinyos

  15. Instalación TinyOS 2.0 Ubuntu edgy Links http://doutdex.wordpress.com/tag/tinyos/ http://jeanpaulberrios.wordpress.com/tinyos/ http://5secondfuse.com/tinyos/install.html

  16. Xubuntos CD live XubunTOS Xubuntu 6.10 TinyOS 2.0.1 paquetes Debian + TinyOS 1.x CVS repositorio Referencia: http://toilers.mines.edu/Public/XubunTOS

  17. Estructura Tiny OS 1.1

  18. Directorios TinyOS /apps – Aplicaciones /tos/interfaces – Interfaces que ofrecen los interfaces al menos para las componentes primitivos. /tos/system – Las componentes primitivos del TinyOs /tos/types – ficheros que contiene los tipos de datos ej: AM.h contiene la estructura de un mensaje TOSMsg )‏

  19. Un ejemplo de la aplicación blink Compilar aplicación en XUBUNTOS cd /opt/tinyos-1.x/apps/blink make pc Ejecutar aplicación Tossim: cd /opt/tiny-1X/apps/Blink/build ./main –p 1 1 uso: ./main [-h|--help] [-r <static|simple>] [-p sec] num_nodes In the projects, we will use “–r simple” which is default “-p pause-seconds” num_nodes =1 Creación de documentación: cd /opt/tiny-1X/nest/apps/blink $make pc docs cd /opt/tiny-1X/nesc/index.html

  20. TOSSIM simulación Compilo para PC : make pc /build/pc tendre el ejecutable Invocacion: ./ejecutable [parametros] node motas -nodbgout No debug por la stdout -gui Espera a TinyViz -b Arranca los motes en n segundos

  21. IDE para programar NesC Emacs Eclipse plugin CATANA

  22. FIN

More Related