Diseño de una plataforma modular para el desarrollo ágil de

240
TRABAJO FIN DE ESTUDIOS Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en módulos XBee programables Sebastián Pastor Volosín PROYECTO FIN DE CARRERA Tutor: Carlos Alberto Rodríguez González Curso 2011-2012

Transcript of Diseño de una plataforma modular para el desarrollo ágil de

Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en módulos XBee programablesTRABAJO FIN DE ESTUDIOS
Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado
en módulos XBee programables
Curso 2011-2012
© El autor © Universidad de La Rioja, Servicio de Publicaciones, 2012
publicaciones.unirioja.es E-mail: [email protected]
Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en módulos XBee programables, trabajo fin de estudios
de Sebastián Pastor Volosín, dirigido por Carlos Alberto Rodríguez González (publicado por la Universidad de La Rioja), se difunde bajo una Licencia
Creative Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported. Permisos que vayan más allá de lo cubierto por esta licencia pueden solicitarse a los
titulares del copyright.
para el desarrollo ágil de aplicaciones
inalámbricas basado en módulos XBee Programables
Sebastián Pastor Volosín
A mi abuelo, Sebastián Pastor García.
Agradecimientos
Quisiera agradecer a Digi International Spain S.A. sin cuya colaboración no podría
haber tenido lugar el presente proyecto, habiéndose hecho cargo de los materiales y
equipamientos necesarios para la realización de pruebas y prototipos. Asimismo,
agradecer a toda la plantilla por la ayuda y apoyo recibidos en todo momento a lo
largo del proyecto.
No puede faltar una dedicatoria a mi familia y amistades que no han cesado de
apoyarme en todo momento. Gracias a todos.
UNIVERSIDAD DE LA RIOJA
Índice General Diseño de una plataforma modular para el desarrollo ágil de aplicaciones
inalámbricas basado en módulos XBee Programables
Sebastián Pastor Volosín
1.-ÍNDICE GENERAL
-4- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
1- Índice General
2- Memoria........................................................................................................... 12
2.2- Introducción ............................................................................................. 13
2.3- Objeto ....................................................................................................... 14
2.6.1- Normativa consultada ....................................................................... 20
2.6.2- Bibliografía utilizada .......................................................................... 22
2.8.1- Hardware ........................................................................................... 30
2.8.2- Firmware ........................................................................................... 34
2.9.1- Hardware (General) ........................................................................... 35
2.9.2- Placa base .......................................................................................... 40
2.9.4- Placa de expansión de entradas y salidas ......................................... 54
2.9.5- Placa de sensores .............................................................................. 58
2.10- Resultados finales ..................................................................................... 63
2.10.1- Hardware (General) ........................................................................... 63
2.10.2- Placa base .......................................................................................... 66
2.10.4- Placa de expansión de entradas y salidas ......................................... 76
1.-ÍNDICE GENERAL
-5- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
2.10.5- Placa de sensores .............................................................................. 81
2.10.6- Firmware ........................................................................................... 89
2.11- Planificación ............................................................................................ 103
3- ANEXOS .......................................................................................................... 109
3.2- ANEXO I: Diferentes tecnologías de comunicación implementadas ...... 111
3.2.1- Serial Communications Interface .................................................... 111
3.2.2- SPI .................................................................................................... 113
3.2.3- I2C .................................................................................................... 115
3.3.1- Introduction..................................................................................... 123
3.3.3- USBDM for JS16 (Supports HCS12, HCS08, Coldfire V1) ................ 124
3.3.4- USB Driver Installation .................................................................... 129
4- Planos ............................................................................................................. 143
4.1- Índice de planos ...................................................................................... 143
4.2- Plano 1 - Placa principal - Conector del bus de expansión ..................... 144
4.3- Plano 2 - Placa principal - Fuentes y reguladores ................................... 145
4.4- Plano 3 -Placa principal - Módulos XBee ................................................ 146
4.5- Plano 4 - Placa principal - Depurador y puerto serie .............................. 147
4.6- Plano 5 - Placa principal - Expansor e indicadores ................................. 148
4.7- Plano 6 - Placa principal – PCB ............................................................... 149
4.8- Plano 7 - Placa HMI - Conector del bus de expansión ............................ 150
4.9- Plano 8 - Placa HMI - Expansor, pulsadores e indicadores ..................... 151
4.10- Plano 9 - Placa HMI - Pantalla de cristal líquido ..................................... 152
4.11- Plano 10 - Placa HMI – PCB..................................................................... 153
4.12- Plano 11 - Placa de Expansión de E/S - Conectores y Expansor de GPIOs
154
4.13- Plano 12 - Placa de Expansión de E/S - Configuraciones posibles .......... 155
4.14- Plano 13 - Placa de Expansión de E/S – Entradas/Salidas Digitales ....... 156
1.-ÍNDICE GENERAL
-6- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
4.15- Plano 14 - Placa de Expansión de E/S – PCB ........................................... 157
4.16- Plano 15 - Placa de Sensores – Conectores ............................................ 158
4.17- Plano 16 - Placa de Sensores - ADCs e Interfaces de sensores resistivos
159
4.18- Plano 17 - Placa de Sensores - Interfaces de Sensores en Lazo de
Corriente 160
4.19- Plano 18 - Placa de Sensores - Interfaz de sensores de tensión ............ 161
4.20- Plano 19 - Placa de Sensores - Sensores en placa .................................. 162
4.21- Plano 20 - Placa de Sensores – PCB ........................................................ 163
5- Pliego de condiciones .................................................................................... 165
5.1- Índice del pliego de condiciones ............................................................ 165
5.2- Introducción ........................................................................................... 166
5.6- Condiciones facultativas ......................................................................... 169
5.7.1- Materiales ....................................................................................... 170
5.8.1- Condiciones de fabricación del circuito impreso ............................ 170
5.8.2- Funcionamiento normal del equipo ................................................ 173
5.8.3- Mantenimiento de la Placa ............................................................. 173
5.9- Condiciones económicas ........................................................................ 174
5.9.2- Jornadas y salarios........................................................................... 174
6.1- Índice del estado de las mediciones ....................................................... 176
6.2- Capítulo C01 – Diseño Hardware ............................................................ 177
1.-ÍNDICE GENERAL
-7- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
6.3- Capítulo C02 – Prototipado Placa Principal ............................................ 178
6.4- Capítulo C03 – Prototipado Placa HMI ................................................... 181
6.5- Capítulo C04 – Protitpado Placa de Expansión de E/S ........................... 182
6.6- Capítulo C05 – Protitpado Placa de sensores ......................................... 183
6.7- Capítulo C06 – Desarrollo de Firmware .................................................. 185
6.8- Capítulo C07 – Documentación .............................................................. 185
7- Presupuesto ................................................................................................... 187
7.1- Índice del presupuesto ........................................................................... 187
7.2- Cuadro de precios unitarios de materiales y mano de obra .................. 188
7.3- Cuadro de precios unitarios de las unidades de obra ............................ 190
7.3.1- Cuadro de precios unitarios totales (Nº 1)...................................... 190
7.3.2- Cuadro de precios unitarios descompuestos (Nº 2) ....................... 196
7.3.3- Presupuestos parciales .................................................................... 209
1.-ÍNDICE GENERAL
-8- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
1.1- Índice de tablas Tabla 1 - Características principales de Zigduino ....................................................... 17
Tabla - 2 Comparativa conectores Jack ..................................................................... 40
Tabla 3 - Comparativa de montaje de pilas alcalinas ................................................ 41
Tabla 4 - Especificaciones del estándar USB .............................................................. 42
Tabla 5 - Especificaciones del estándar USB .............................................................. 45
Tabla 6 - Especificaciones LED Vishay y Osram ......................................................... 46
Tabla 7 - Comparativa de pulsadores. ....................................................................... 47
Tabla 8 - Comparativa entre expansores de GPIOs. .................................................. 48
Tabla 9 - Comparativa entre pantallas LCD. .............................................................. 52
Tabla 10 - Comparativa entre acelerómetros ............................................................ 60
Tabla 11 - Comparativa de RTCs comerciales ............................................................ 61
Tabla 12 - Comparativa entre memorias no volátiles ............................................... 62
Tabla 13 - Funcionalidades reservadas de los pines del módulo XBee ..................... 64
Tabla 14 – Pinout del conector del bus de expansión ............................................... 65
Tabla 15 - Tensión de salida en función de resistencias. ........................................... 68
Tabla 16 - Componentes en función de configuración .............................................. 79
Tabla 17 - Sensores disponibles según versión ......................................................... 81
Tabla 18 - Asignación de canales a las interfaces ...................................................... 83
Tabla 19 - Registros de los expansores de GPIOs ...................................................... 89
Tabla 20 - Mapa de registros del DS1337 .................................................................. 91
Tabla 21 - Configuraciones de alarma disponibles .................................................... 92
Tabla 22 - Direcciones disponibles del ADC128D818 ................................................ 94
Tabla 23 - Mapa de memoria del ADC128D818 ........................................................ 95
Tabla 24 - Mapa de memoria del MMA8453Q .......................................................... 98
Tabla 25 - Registro PL_STATUS ................................................................................ 101
Tabla 26 - Tolerancias a aplicar por el fabricante .................................................... 173
1.-ÍNDICE GENERAL
-9- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
1.2- Índice de imágenes Imagen 1 - Placa XBee Shield para Arduino .............................................................. 16
Imagen 2 - Plataforma Arduino ................................................................................. 16
Imagen 3 - Zigduino y sus componentes ................................................................... 17
Imagen 4 – Waspmote ............................................................................................... 18
Imagen 5 - Vista general de la placa base del Waspmote ......................................... 18
Imagen 6 - Encapsulado QFP ..................................................................................... 31
Imagen 7 – Captura d epantalla de kiCad eeschema y editor de librería. ................ 36
Imagen 8 - Captura de pantalla de gEDA. .................................................................. 37
Imagen 9 – Captura de pantalla de FreePCB ............................................................. 37
Imagen 10 - TinkerKit para Arduino ........................................................................... 39
Imagen 11 - Placas de desarrollo para módulos Rabbit ............................................ 39
Imagen 12 - Freescale Tower System ........................................................................ 39
Imagen 13 - Phoenix Contact 1710085 ...................................................................... 41
Imagen 14 - Phoenix Contact 1792863 ...................................................................... 41
Imagen 15 - TE Connectivity 1986484-2 .................................................................... 41
Imagen 16 - Keystone 5231 ....................................................................................... 41
Imagen 17 - Keystone 55 ........................................................................................... 41
Imagen 18 - Eagle Plastic 12BH411P-GR .................................................................... 41
Imagen 19 - Eagle Plastic 12BH341P-R-GR ................................................................ 41
Imagen 20 - Conectores USB estándar. ..................................................................... 42
Imagen 21 - Conectores MicroUSB A (izq.) y B (der.) ................................................ 43
Imagen 22 - Conector microUSB ................................................................................ 43
Imagen 23 - Regulador Zener básico. ........................................................................ 43
Imagen 24 - Módulos S2B con distintas variantes de antena ................................... 45
Imagen 25 - Módulo XBee S2C ................................................................................... 45
Imagen 26 - Circuito de excitación de un LED con alimentación variable ................. 46
Imagen 27 - LED SMD de huella 1206. ....................................................................... 46
Imagen 28 - Pulsador KMS231GLFS ........................................................................... 47
Imagen 29 - Pulsador TL3301NF16 ............................................................................ 47
Imagen 30 - Pulsador TL3300CF16 ............................................................................ 47
Imagen 31 - Circuito típico de aplicación de un MAX2322 ........................................ 50
Imagen 32 - Ejemplo de puente USB a RS-232 utilizando un FTDI230x. ................... 51
Imagen 33 - Electronic Assembly EA DOGM132B...................................................... 52
Imagen 34 - Displaytech S4128M .............................................................................. 52
Imagen 35 – Electronic Assembly DOGL128B ............................................................ 52
Imagen 36 - Distintos modelos de PTCs ..................................................................... 54
Imagen 37 - Pinout y configuración interna de un ULN2803 .................................... 55
Imagen 38 - Circuito básico de un optoacoplador. .................................................... 57
Imagen 39 - 25LC080A ............................................................................................... 62
Imagen 40 - DS1971-F3+ ............................................................................................ 62
1.-ÍNDICE GENERAL
-10- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
Imagen 41 - MR25H256CDC ...................................................................................... 62
Imagen 44 - Esquema de conexión final del LM22657-ADJ ....................................... 67
Imagen 45 – Conexiones recomendadas para el MIC5239 ....................................... 69
Imagen 46 - Esquema de conexionado del MIC5239 ................................................ 69
Imagen 47 - Medidas del módulo SMT (en pulgadas), en rojo los pines que se
corresponden con el S2B ................................................................................................ 70
Imagen 48 - Esquema de conexiones recomendado para el buzzer ......................... 71
Imagen 49 - Esquema de conexionado de los pulsadores ......................................... 71
Imagen 50 - Conexiones de 1/4 74LV125 para su utilización como adaptador de
niveles lógicos ................................................................................................................. 73
Imagen 51 - Conexión de un LED para minimizar consumo ...................................... 74
Imagen 52 - Conexión de los pulsadores ................................................................... 75
Imagen 53 - Detalle del circuito de control de la retroiluminación........................... 75
Imagen 54 - Configuración interna del CDA3S06 ...................................................... 76
Imagen 55 - Esquema de las entradas digitales ......................................................... 77
Imagen 56 - Pinout del ULN2803 ............................................................................... 77
Imagen 57 - Configuración interna del ULN2803 ...................................................... 77
Imagen 58 - Relé G5V-1 ............................................................................................. 78
Imagen 59 - Conexionado del diodo indicador del relé ............................................. 78
Imagen 60 – Diagrama de conexiones internas del LTV849 ...................................... 78
Imagen 61 - Conexiones entre componentes de la placa expansora de entradas y
salidas ............................................................................................................................. 79
Imagen 65 - Configuración S/ Colector Abierto ......................................................... 80
Imagen 66 - Señales de los conectores frontales ...................................................... 80
Imagen 67 - Señales del conector derecho ............................................................... 81
Imagen 68 - Señales del conector izquierdo .............................................................. 81
Imagen 69 - Interfaz para sensores 0-10V ................................................................. 83
Imagen 70 - Interfaz para sensores 4-20 mA ............................................................. 84
Imagen 71 - Interfaz de sensores de resistencia variable ......................................... 84
Imagen 72 – Cristal CMR200T .................................................................................... 85
Imagen 73 - Conexiones del RTC DS1337 .................................................................. 85
Imagen 74 - Temperatura vs Tensión de Salida ......................................................... 87
Imagen 75 - Orientaciones capaces de ser detectadas por el MMA8453Q ............ 101
Imagen 76 - Diagrama de Gantt de la planificación ................................................ 106
UNIVERSIDAD DE LA RIOJA
Memoria Diseño de una plataforma modular para el desarrollo ágil de aplicaciones
inalámbricas basado en módulos XBee Programables
Sebastián Pastor Volosín
5.-MEMORIA
-12- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
2- Memoria
2.3- Objeto ....................................................................................................... 14
2.6.1- Normativa consultada ....................................................................... 20
2.6.2- Bibliografía utilizada .......................................................................... 22
2.8.1- Hardware ........................................................................................... 30
2.8.2- Firmware ........................................................................................... 34
2.9.1- Hardware (General) ........................................................................... 35
2.9.2- Placa base .......................................................................................... 40
2.9.4- Placa de expansión de entradas y salidas ......................................... 54
2.9.5- Placa de sensores .............................................................................. 58
2.10- Resultados finales ..................................................................................... 63
2.10.1- Hardware (General) ........................................................................... 63
2.10.2- Placa base .......................................................................................... 66
2.10.4- Placa de expansión de entradas y salidas ......................................... 76
2.10.5- Placa de sensores .............................................................................. 81
2.10.6- Firmware ........................................................................................... 89
2.11- Planificación ............................................................................................ 103
5.-MEMORIA
-13- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
2.2- Introducción Los módulos XBee programables surgen ante la necesidad de determinados clientes
de Digi International Inc. de ejecutar aplicaciones de usuario en sus módulos XBee no
programables. Anteriormente esta tarea era realizada por un microprocesador externo
que mediante un puerto serie se comunicaba con el módulo para la transmisión y/o
recepción de tramas XBee.
Si bien los módulos no programables siguen gozando de una amplia aceptación en
el sector de las comunicaciones inalámbricas, el hecho de necesitar de un
microprocesador externo hace que el diseño de una aplicación simple sea
sensiblemente más complejo ya que existen infinidad de microprocesadores distintos
con sus características específicas y requisitos de diseño propios.
Los módulos XBee programables se diferencian de sus variantes no-programables
en la inclusión en el mismo encapsulado de un microprocesador de la familia HCS08 de
Freescale capaz de correr aplicaciones de usuario, comunicado a través de un puerto
serie con un microprocesador de Ember idéntico al de la variante no-programable que
se encarga de gestionar las comunicaciones inalámbricas XBee. Además, el fabricante
proporciona un entorno de desarrollo integrado en Eclipse que facilita la utilización de
los periféricos del microprocesador de Freescale e implementa la pila o stack del
protocolo XBee/ZigBee en lenguaje C lo que facilita el desarrollo del software.
Con estos módulos, desarrollar una aplicación que haga uso del protocolo XBee se
vuelve mucho más sencillo, ya que el diseño no requiere la inclusión de un
microprocesador externo ni del desarrollo software de la capa de comunicaciones
XBee. En resumen, el usuario sólo tiene que preocuparse de desarrollar la aplicación
que correrá el microprocesador de Freescale y el hardware que necesita el módulo
XBee programable.
El citado microprocesador de Freescale amplía las posibilidades de interacción del
módulo XBee ya que además de GPIOs (General Purpose Input-Output,
Entradas/Salidas de propósito general) posee interfaces SPI (Serial Peripheral
Interface), SCI (Serial Communications Interface) e I 2 C (Inter-Integrated Circuits). Con
estas interfaces es posible comunicarse con una gran cantidad de dispositivos
comerciales como memorias, sensores, actuadores y un largo etcétera.
Es a partir de estas capacidades de expansión que surge la idea de desarrollar una
plataforma hardware que permita desarrollar de forma fácil, rápida y barata
aplicaciones finales o prototipos. Pudiendo conectar distintos dispositivos e interactuar
con ellos a través de las citadas interfaces del módulo XBee programable.
5.-MEMORIA
-14- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
2.3- Objeto El presente proyecto tiene como objeto diseñar una plataforma hardware que
permita el desarrollo ágil de aplicaciones inalámbricas basadas en módulos XBee
programables. Esta plataforma se compondrá de:
• Una placa base que proporcionará lo necesario para el funcionamiento del
módulo XBee programable, un puerto de expansión que permita conectar
otras placas con fines específicos que interactúen con dicho módulo y
opcionalmente hardware de depuración de software (debugger).
• Una serie de placas que conectadas al puerto de expansión de la placa base
permitan la interacción del módulo XBee programable con dispositivos
externos. Como placas de expansión se han especificado inicialmente cuatro
variantes:
• Una tarjeta de expansión de entradas y salidas basada en un expansor I2C, la
cual debe contar con distintas opciones de montaje que permitan obtener
salidas a colector abierto, salidas a relé, entradas opto-acopladas y/o
entradas-salidas digitales con protección contra sobrecorriente y
sobrevoltaje.
permita la interacción con el microprocesador mediante una pantalla de
cristal líquido (LCD, Liquid Crystal Display) con cuatro indicadores luminosos
y cuatro botones de propósito general.
• Una tarjeta que permita conectar sensores de tensión (0-10 Voltios),
corriente (4-20 miliamperios), resistivos y de salidas digitales. Además
contará con otros sensores y dispositivos periféricos montados en placa.
• Firmware específico que gobierne la interacción entre los periféricos de las
placas de expansión y el módulo. Dicho firmware se integrará en el SDK
(Software Development Kit, Kit de desarrollo de software) del XBee
programable.
Todo el hardware resultante deberá ser versátil y de bajo coste, además el diseño
se realizará con herramientas gratuitas y preferiblemente libres (OpenHardware,
hardware abierto, libre) que permitan modificaciones posteriores por parte de
terceros.
5.-MEMORIA
-15- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
2.4- Alcance Se encuentra dentro del alcance del proyecto el diseño del hardware y firmware
atendiendo a las especificaciones detalladas en el apartado 2.7-Requisitos de diseño.
Los detalles referentes a qué dispositivos y configuraciones permite cada tarjeta se
definen en el apartado 2.10-Resultados finales.
Por otra parte, está fuera del alcance del proyecto la producción en serie del
hardware, distribución y/o venta del producto; si bien se tendrán en cuenta estos
aspectos en lo referente a obtener un diseño capaz de ser producido en serie y a un
coste bajo.
2.5- Antecedentes En el mercado existen diversas compañías que ofrecen soluciones modulares
inalámbricas. La mayoría utilizan un microprocesador para controlar las entradas y
salidas del sistema e incorporan una radio ZigBee para las comunicaciones
inalámbricas. A continuación se analizan algunas opciones disponibles en el mercado.
2.5.1- Arduino Los módulos Arduino son una plataforma de microcontroladores de Atmel con una
serie de APIs y librerías libres, muy extendida en el mundo de los microcontroladores
por su facilidad de programación.
Se trata de una plataforma de electrónica abierta para la creación de prototipos
basada en software y hardware flexibles y fáciles de usar. Se creó para artistas,
diseñadores, aficionados y cualquiera interesado en crear entornos u objetos
interactivos.
Un módulo Arduino puede tomar información del entorno a través de sus pines de
entrada de toda una gama de sensores y puede afectar aquello que le rodea
controlando luces, motores y otros actuadores. El micro-controlador en la placa
Arduino se programa mediante el lenguaje de programación Arduino (basado
en Wiring) y el entorno de desarrollo Arduino (basado en Processing). Los proyectos
hechos con Arduino pueden ejecutarse sin necesidad de conectar a un ordenador, si
bien tienen la posibilidad de hacerlo y comunicar con diferentes tipos de software
(p.ej. Flash, Processing, MaxMSP).
Para el uso de los módulos ZigBee se utiliza una placa llamada XBee Shield. Ésta se
coloca encima de la placa de desarrollo Arduino, y permite la conexión de los módulos
XBee directamente con el Arduino, además ofrece una serie de librerías para su control
y manejo.
A continuación se muestran dos imágenes que nos muestran las soluciones que
propone Atmel para el desarrollo de aplicaciones ZigBee.
5.-MEMORIA
-16- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
Imagen 1 - Placa XBee Shield para Arduino
Imagen 2 - Plataforma Arduino
2.5.2- Zigduino El proyecto Zigduino es una plataforma compatible con Arduino que integra una
radio 802.15.4 on-board. La radio puede ser configurada para soportar cualquier
protocolo basado en el estándar 802.15.4 incluyendo ZigBee, Route Under
MAC/5LoWPAN y RF4CE. Incorpora además un conector RP-SMA para una antena
externa.
5.-MEMORIA
-17- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
Imagen 3 - Zigduino y sus componentes
La placa opera con tensión de 3,3 V pero todos los pines de entradas y salidas son
compatibles con 5 V. Además, el módulo Zigduino es compatible con las librerías, IDE y
cualquier shield de Arduino que soporte lógica de 3,3 V.
Características principales
Microcontrolador Atmega128RFA1
7-18V
De voltaje de entrada (máximo) 6-30V (transitorios de 20V y V-60)
Digital pines I / O 14 + auxiliar 3
Pines de entrada analógica 6 (0-1.8V)
E / S Protección ± 30V transitoria y -2.5V a 5.8 V continuos
Corriente CC por pin de E/S 20 mA
Corriente CC a 5 V por pin 250 mA
Corriente CC a 3,3 V por pin 200 mA
Memoria Flash 128 KB de los cuales 2 KB son utilizados por el gestor de arranque
SRAM 16 KB
EEPROM 4 KB
Potencia de transmisión RF 3.5 dBm
Sensibilidad del receptor -100 DB
Ganancia de la antenna 2 dBi
Consumo de corriente 30 mA (transmisión, USB, no hay conexiones de E / S)
15 mA (transmisión, sin USB, sin conexiones de E / S)
6 mA (radio, no USB, no hay conexiones de E / S)
250 mA (en espera)
5.-MEMORIA
-18- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
Las líneas de alimentación disponibles en el módulo son los siguientes:
• VIN: La tensión de entrada cuando está conectado a una fuente externa.
• 5V: Tensión regulada de 5 V utilizada para alimentar componentes en la
placa y shields externos.
• 3V3: Tensión regulada a 3,3 V que alimenta el microcontrolador, derivada de
la fuente regulada de 5 V a través de un segundo regulador. La corriente
máxima que proporciona es de 200 mA
• GND: Referencia común a las tensiones.
2.5.3- Waspmote El conjunto de placas Waspmote desarrollado por la empresa Libelium consiste en
un conjunto de placas apilables gobernadas por un microcontrolador ATmega1281.
Como característica destacable, incluyen un socket para añadir un módulo XBee Pro,
facilitando enormemente el desarrollo e implementación de redes de sensores
inalámbricas.
Waspmote
La empresa fabricante ofrece una amplia variedad de placas de sensores para cubrir
un amplio espectro de aplicaciones. Algunos ejemplos de placas que ofrece:
5.-MEMORIA
-19- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
Detección de gases Eventos Agricultura
• Monóxido de carbono
• Pluviómetro
5.-MEMORIA
-20- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
2.6- Normas y referencias
• UNE 157001: Criterios generales para la elaboración de proyectos.
• UNE 20620: espesores de los materiales con recubrimiento metálico y sus
tolerancias están especificadas en la norma.
• UNE 20552: especifica las tolerancias sobre el espesor total en la zona de
contactos.
• UNE 20-621 84/3: respecto a la anchura de las pistas, según la intensidad
que por ellas circule.
• UNE 20-620/84: diámetros de taladros vienen especificados en la norma
• UNE 20-612/2: recoge varios tipos de ensayos que se pueden realizar a los
materiales, como pueden ser los ensayos de espesor, adherencia, porosidad,
etc.
• UNE 20-524/1, UNE 20-524/2 y UNE 20-524/3: En lo referente a distancias
entre taladros para la colocación de componentes.
• UNE 20-514-82: Reglas de seguridad para los aparatos electrónicos de
norma.
• UNE 20902: referente a la técnica de circuitos impresos.
• UNE-EN 60249: en la cual se citan los materiales base para circuitos
impresos.
• UNE 20598 78 (1): referente a las fuentes de alimentación estabilizada de
CC.
• UNE 20598 78 (2): referente a las fuentes de alimentación estabilizada de CC
Características nominales y de funcionamiento.
• UNE 20589 79 (3): referente a fuentes de alimentación estabilizada de CC
Ensayos generales excepto de radio de inferencia. Ensayos de
radiointerferencia.
proyectos, que establece las consideraciones generales que permitan
precisar las características que deben satisfacer los proyectos de productos,
obras y edificios, instalaciones, servicios o software, para que sean
conformes al fin a que están destinados.
• DIN 40801: referente a circuitos impresos, fundamentos, orificios y
espesores.
• DIN 40804: referente a circuitos impresos, conceptos.
• DIN 41494: referente a las formas de construcción para dispositivos
electrónicos.
• MI BT029: referente a instalaciones de pequeñas tensiones, menores de 50
voltios.
5.-MEMORIA
-21- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
• MI BT031: referente a las condiciones generales de instalación, de utilización
así como de los requisitos a cumplir a la hora del diseño.
• Directiva RoHS: esta directiva regula la utilización de algunas sustancias
peligrosas en equipamientos eléctricos y electrónicos. Esta lista de
sustancias se conoce como RoHS (Restriction of Hazardous Substances).
• DIRECTIVA 2002/95/CE DEL PARLAMENTO EUROPEO Y DEL CONSEJO de 27
de enero de 2003 sobre restricciones a la utilización de determinadas
sustancias peligrosas en aparatos eléctricos y electrónicos.
• REAL DECRETO 2008/2005: de 25 de febrero, sobre aparatos eléctricos y
electrónicos y la gestión de sus residuos.
• REACH EC/1907/2006: que regula el registro, la evaluación, la autorización y
la restricción de sustancias y elementos químicos de los productos
fabricados para garantizar la salud y la seguridad.
• FCC 15.105 RFI (Interfaces de Radio Frecuencia) los componentes de
radiofrecuencia incluidos deben cumplir los límites para la Clase B de
dispositivos digitales, según lo acordado en la parte 15 subparte B de las
reglas FCC. Estos límites deben estar diseñados para proporcionar
protección frente interferencias dañinas en ambientes residenciales.
• FCC 15.19: los dispositivos de radiofrecuencia deben cumplir con la parte 15
de las reglas FCC, asegurando la ausencia de interferencias dañinas
producidas por el equipo, pero aceptando cualquier interferencia recibida.
• EIA/TIA-232, EIA/TIA-485 e ISO 11898: lo referente a la capa física de las
comunicaciones serie del interfaz, en cuestión de niveles y timing.
• ANSI C: estándar publicado por el Instituto Nacional de Estándares para la
programación en lenguaje C para garantizar la portabilidad del código
desarrollado.
5.-MEMORIA
-22- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
2.6.2- Bibliografía utilizada
Booksurge Llc, Octubre 2010. ISBN: 1-4196-8592-9.
• KERNIGHAN, Brian; RITCHIE, Dennis. The C Programming Language. 2º
Edición. Prentice Hall PTR, Upper Saddle River, New Jersey USA: 47º
impression, February 2011. ISBN: 0-13-110362-8
• 24AA32A/24LC32A 32K I 2 C™Serial EEPROM [Product Datasheet PDF].
Microchip Technology Inc.: August 2006.
• 74LV125 Quad buffer/line driver; 3-state [Product Datasheet PDF]. NXP
Semiconductors: Revision 03, 7 April 2009.
• ADC128D818 12-Bit, 8-Channel, ADC System Monitor with Temperature
Sensor, Internal/External Reference, and I2C Interface. National
Semiconductor: January 2011.
• AN4077: MMA845xQ Design Checklist and Board Mounting Guidelines
[PDF]. Freescale Semiconductor Inc.: Rev0, September 2010.
• APPLICATION NOTE 3517 Estimating Super Capacitor Backup Time on
Trickle-Charger Real-Time Clocks [PDF]. Maxim Integrated Products: April
2005.
• APPLICATION NOTE 3816 Selecting a Backup Source for Real-Time Clocks.
Maxim Integrated Products: April 2006.
• APPLICATION NOTE 58 Crystal Considerations with Maxim Real-Time Clocks
(RTCs) [PDF]. Maxim Integrated Products: Mar 2001.
• BAT64 Schottky Diode [Product Datasheet PDF]. Infineon Technologies AG:
February 2006.
• BC817; BC817W; BC337 45 V, 500 mA NPN general-purpose transistors
[Product Datasheet PDF]. NXP Semiconductors: Revision 06, November
2009.
• Bob Perrin. I/O For Embedded Controllers [PDF]. Circuit Cellar. September
1999.
• Bob Wolbert. Application Note 9: Design Considerations for 5V to 3.3V Pass
Regulators [PDF]. MICREL Inc: San Jose, CA USA.
• Bob Wolbert. Micrel’s Guide to Designing with Lowe-Dropout Voltage
Regulators [PDF]. MICREL Inc: San Jose, CA USA, Aug 2008.
• Bruce Hunter and Patrick Rowland. Digital Designer’s Guide to Linear Voltage
Regulators and Thermal Management [PDF]. Texas Instruments: April 2003.
• BSP 315 SIPMOS®Small-Signal Transistor [Product Datasheet PDF]. SIEMENS
Semiconductor Group: September 1996.
(Product Datasheet PDF]. Comchip Technology Corporation.
5.-MEMORIA
-23- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
• CMR200T Tuning Fork Crystal Units (SMD – Cylinder Type). Citizen Micro
HumanTech.
• Coin Type PAS Capacitor PAS414HR [Product Datasheet PDF]. Taiyo Yuden:
Revision cap01_reli-PRP2, January 2012.
• Crystal SMD JXS53P4 (4 pad version). Jauch Quartz America: Bremerton, WA
USA, April 2006.
• DS1337 I 2 C Serial Real-Time Clock [Product Datasheet PDF]. Maxim
Integrated Products: Rev 071609, July 2009.
• ES1A-ES1D [Product Datasheet PDF]. Fairchild Semiconductor Corporation:
2010.
• G5V-1 PCB Relay Ultra-miniature, Highly Sensitive SPDT Relay for Signal
Circuits [Product Datasheet PDF]. Omron: Revision N/D, 2007.
• KMS Series Microminiature SMT Side Actuated [Product Datasheet PDF]. C&K
Components: Revision A. 2012.
• LCD Module Product Specification Product: 64128M Series LCD Module (128
x 64 DOTS) [Product Datasheet PDF]. Displaytech Ltd: Version 1.0, March
2008.
with Precision Enable [Product Datasheet PDF]. National Semiconductor
Corporation: December 2010.
Datasheet PDF]. LITEON: Reference 115, 2012.
• MC9S08JS16 Series [Product Datasheet PDF]. Freescale Semiconductor Inc.:
Rev 4, April 2009.
Semiconductor: Revision 2, May 2008.
• MCP6L1/1R/2/4 2.8 MHz, 200 uA Op Amps [Product Datasheet PDF].
Microchip Technology Inc.: Rev 0, February 2009.
• MCP9700/9700A MCP9701/9701A Low-Power Linear Active Thermistor™ ICs
[Product Datasheet PDF]. Microchip Technology Inc.: Rev 0, March 2009.
• MIC5239 LDO Regulator [Product Datasheet PDF]. MICREL Inc.: San Jose, CA
USA: 2003.
PDF]. Freescale Semiconductor Inc.: Revision 4.1, August 2011.
• MV25 Terminal [Product Datasheet PDF]. Italtronic: January, 2006.
• PCA9535; PCA9535C 16-bit I2C-bus and SMBus, low power I/O port with
interrupt [Product Datasheet PDF]. NXP Semiconductors: Revision 05,
September 2008.
5.-MEMORIA
-24- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
• PCA9538 8-bit I2C-bus and SMBus low power I/O port with interrupt and
reset [Product Datasheet PDF]. NXP Semiconductors: Revision 05, 05th May
2009.
• PCB Land Pattern Design and Surface Mount Guidelines for QFN Packages
[Techincal Brief PDF]. Intersil: Revision TB389.6, April 2009.
• Piezoelectronic Buzzers Pin terminal/Lead Without oscillator circuit PS Series
[Product Datasheet PDF]. TDK: May 2011.
• Recommended P.C.B. Layout for SSM (Double Vertical). Samtec: Rev D.
• SS32 thru SS36 [Product Datasheet PDF]. Vishay General Semiconductor,
Revision 11th Mar 2011.
• SSM-SM Series Catalogue [Catalogue PDF]. Samtec.
• ST7565R 65 x 132 Dot Matrix LCD Controller/Driver [Product Datasheet PDF].
Sitronix Technology Corporation: Version 1.7, June 207.
• TL3300 SERIES [Product Catalogue PDF]. E-Switch LAMB INDUSRIES.
• TSV321-TSV358-TSV324 General purpose input/output rail-to-rail low power
operational amplifiers [Product Datasheet PDF]. STMicroelectronics:
Revision 5, February 2008.
Sink Driver [Product Datasheet PDF]. Toshiba Corporation: Rev N/D, August
2011.
• XBee®/XBee-PRO® ZB RF Modules [PDF]. Digi International Inc. 11001 Bren
Road East Minnetonka, MN USA: Rev C, December 2012.
5.-MEMORIA
-25- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
2.7- Definiciones y abreviaturas 1-Wire: protocolo de comunicaciones en serie diseñado por Dallas Semiconductor.
Está basado en un bus, un maestro y varios esclavos de una sola línea de datos en la
que se alimentan. Por supuesto, necesita una referencia a tierra común a todos los
dispositivos.
API: Application Programming Interface, Interfaz de programación de interfaces
implementado en un programa software y que permite interactuar con otros software
(aplicaciones, librerías y sistemas operativos).
BDM: Background Debug Mode, modo disponible en algunos microprocesadores
que permite la depuración de errores en circuito.
Bootloader: Gestor de arranque, programa sencillo que no tiene la totalidad de las
funcionalidades de un sistema operativo, y que está diseñado exclusivamente para
preparar todo lo que necesita el sistema operativo para funcionar.
CA: Corriente alterna.
CC: Corriente continua.
Debugger: Depurador. Programa utilizado para detectar y corregir errores en
aplicaciones.
DFN: Dual-Flat no-leads. Encapsulado de dispositivos SMT. Ver SMD, SMC, SMT.
DIP: Dual in-line Package. Encapsulado de dispositivos through-hole. Ver THT.
EEPROM: Memoria programable de sólo lectura, borrable eléctricamente, memoria
no volátil.
electrónico.
FIM: Módulos de interfaz flexible: microcontrolador independiente del ordenador
que permite la implementación de protocolos simples de comunicación.
Firmware: software (programas, estructura de datos) de bajo nivel, fijo y
relativamente pequeño que controla la parte hardware. Está muy condicionado al
hardware para el que esté destinado.
Flash: Tecnología de almacenamiento que permite la lecto-escritura de múltiples
posiciones de memoria en la misma operación. Permite velocidades de
5.-MEMORIA
-26- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
funcionamiento muy superiores frente a la tecnología EEPROM primigenia, que sólo
permitía actuar sobre una única celda de memoria en cada operación de programación
Footprint: esquema que indica el número y tamaño de pads que necesita
determinado encapsulado electrónico para su soldadura en un PCB. Ver PCB, Pad,
SMD, SMT, THT.
Full-dúplex: los sistemas full dúplex proveen comunicación en las dos direcciones, y
simultáneamente.
g: Unidad de aceleración equivalente a la aceleración terrestre media.
Gerber: fichero de fabricación que indica las capas de una PCB.
GND: Tensión de referencia.
Half-dúplex: los sistemas half dúplex proveen comunicación en las dos direcciones,
pero no simultáneamente.
HMI: Human-Machine Interface, Interfaz Hombre-Máquina. Medio con que el
usuario puede comunicarse con una máquina, un equipo o una computadora, y
comprende todos los puntos de contacto entre el usuario y el equipo. Normalmente
suelen ser fáciles de entender y fáciles de accionar.
Host: ordenador principal de una red, que ofrece fuentes de información, servicios
y aplicaciones a otros nodos de la red.
I2C, I2C o IIC: Inter Integrated Circuits, bus serie multi maestro single-ended
inventado por Philips, usado para comunicar periféricos de baja velocidad a un sistema
embebido.
IEEE 802.11: conjunto de estándares que definen las comunicaciones en una red de
área local wireless (WLAN) en las bandas de frecuencia de 2.4, 3.6 y 5GHz IEEE 802.3:
estándar físico y de conexión para redes de área local con redes de ordenadores,
basado en frames.
IEEE: Instituto de ingenieros eléctricos y electrónicos, dedicado a la innovación
tecnológica y a la estandarización de protocolos.
Layout: proceso de creación de un circuito impreso en términos geométricos
correspondiendo con los modelos de metal, óxido y semiconductor, conectando
diversos componentes con pistas de cobre.
LCD: Liquid Crystal Display. Pantalla de cristal líquido.
5.-MEMORIA
-27- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
LDO: Low-Dropout. Regulador de voltaje CC capaz de operar con una diferencia de
tensiones entre entrada y salida muy pequeña.
LED: Light Emitting Diode. Diodo emisor de luz.
Mesh: estructura de red en la que cada nodo puede ejercer de router
independiente, independientemente de si está conectado o no a otra red.
MMU: Unidad de manejo de memoria, componente hardware que se encarga de
los accesos a la memoria que requiere el procesador.
Multicast: entrega de mensajes en una red de ordenadores de forma simultánea,
que crea copias en otros elementos de la red.
Netlist: fichero utilizado por aplicaciones de diseño de circuitos impresos para
determinar las conexiones entre nodos y pads.
NVRAM: memoria de acceso asíncrono que no pierde su información cuando no
está alimentada; la más usada hoy en día es la memoria Flash.
Pad: zona de un PCB en el cual se suelda un componente. Ver PCB.
PC: Personal Computer, ordenador personal.
PCB: Printed Circuit Board, placa de circuito impreso; tecnología de fabricación de
dispositivos electrónicos que consiste en una placa de material aislante sobre la cual se
trazan pistas de material conductor, para la interconexión de componentes
electrónicos.
por Microchip Technology.
Pinout: distribución de pines en componentes electrónicos.
Placement: parte del diseño de un circuito impreso que consiste en la colocación de
los componentes en el PCB de forma que se facilite su posterior conexionado.
Polling: Sondeo.- Método de control de terminales en una red multipunto,
consistente en que cada terminal es interrogado por el Host, por turno, para conocer
su disposición a transmitir o recibir.
PTC: Positive Temperature Coefficient. Tipo de termistor con coeficiente térmico
positive.
5.-MEMORIA
-28- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
QFN: Quad-flat no-leads. Encapsulado de dispositivos SMT. Ver SMD, SMC, SMT.
RF: Radio frecuencia.
RoHS: Restriction of Hazardous Substances, directiva regula la utilización de algunas
sustancias peligrosas en equipamientos eléctricos y electrónicos.
Royalties: pagos para utilizar un producto bajo propiedad intelectual.
RPSMA: Reverse Polarity SubMiniature version A. Tipo de conector utilizado en
radiofrecuencia.
RTC: Real-Time Clock. Reloj en tiempo real, dispositivo que mantiene la cuenta del
paso del tiempo en un sistema digital.
SCI: Serial Communications Interface. Comunicación serie asíncrona utilizada entre
microprocesadores y periféricos. Consta de dos señales TxD y RxD.
SDK: Software Development Kit, kit de desarrollo de software. Conjunto de
herramientas para el desarrollo de software orientado a desarrolloadores.
Single-ended: método de transmisión de señales eléctricas en cables: uno porta el
voltaje variables que representa la señal, y el otro se conecta a la tensión de
referencia.
SMT: Surface Mountage Technology, tecnología de montaje superficial mediante la
cual los componentes electrónicos no requieren de agujeros en la placa base para su
montaje.
SO: Small outilne. Encapsulado de dispositivos SMT. Ver SMD, SMC, SMT.
SOIC: Small-outline integrated circuit. Encapsulado de dispositivos SMT. Ver SMD,
SMC, SMT.
SPI: Serial Peripheral Interface, estándar de comunicación serie creado por
Motorola, que opera en full-dúplex.
SRAM: Static Random Access Memory. Memoria estática de acceso aleatorio. Tipo
de memoria basada en semiconductores que a diferencia de la memoria DRAM, es
capaz de mantener los datos, mientras esté alimentada, sin necesidad de circuito de
refresco. Sin embargo, sí son memorias volátiles, es decir que pierden la información si
se les interrumpe la alimentación eléctrica.
Termistor: Componente cuya resistencia varía sensiblemente con la temperatura.
5.-MEMORIA
-29- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
Through-hole: ver THT.
THT: tecnología through-hole, con la que se realiza un orificio desde la capa
superior a la inferior de un PCB, atravesando las intermedias.
TIA/EIA RS-232: estándar para comunicaciones serie single ended y con señales de
control, ampliamente usado en puertos serie de ordenadores.
TIA/EIA RS-422: estándar basado en un par diferencial que define las características
eléctricas de transmisores y receptores para su uso en sistemas multipunto. Acepta
múltiples receptores pero sólo un transmisor.
TIA/EIA RS-485: estándar basado en un par diferencial que define las características
eléctricas de transmisores y receptores para su uso en sistemas multipunto. Acepta
múltiples receptores y transmisores.
Timekeeping: Capacidad de un RTC para la cuenta del tiempo cuando se desconecta
de la alimentación principal. Ver RTC.
TSSOP: Thin-shrink small outline package. Encapsulado de dispositivos SMT. Ver
SMD, SMC, SMT.
integrados digitales.
UART: Universal Asynchronous Receiver/Transmitter, transmisor/receptor
asíncrono universal: transforma un flujo de datos paralelo en una comunicación serie.
UFL: conector para antenas de radiofrecuencia de hasta 6 GHz, de tamaño reducido
para montaje superficial.
entre un controlador host y dispositivos externos.
Vcc: Tensión de alimentación.
XBee: nombre comercial de Digi International para una familia de módulos de radio
que opera como utilizando la capa física de ZigBee.
Zener: diodo preparado para trabajar en inversa con una tensión límite (tensión
Zener). Normalmente utilizado como regulador de tensión.
ZigBee: especificación para un conjunto de protocolos de alto nivel, usando radios
basadas en el estándar IEEE802.15.4-2003 para Redes de Área personales wireless de
baja velocidad
5.-MEMORIA
-30- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
2.8- Requisitos de diseño Las características del proyecto plantean una serie de requisitos que se detallan a
continuación.
2.8.1- Hardware
2.8.1.1- Modularidad Se diseñará un conjunto de placas compuesto por una placa base o principal que se
será capaz de interactuar con otras placas de expansión diseñadas para tal fin. Las
placas a diseñar deberán ser de carácter modulares, esto implica que con la excepción
de la placa base, las demás no sean interdependientes. A su vez, cuando sea posible
los dispositivos que componen las placas podrán ser montados o no en función de la
necesidad del usuario final sin que ello interfiera en el correcto funcionamiento de las
demás placas conectadas al conjunto.
2.8.1.2- Bus de expansión La interconexión de las placas se realizará mediante un conector que llevará las
señales de un bus de expansión, permitiendo la interacción entre placas. Este bus será
común a todas las placas y deberá definirse en función de las necesidades de cada
placa en lo que respecta a señales, dejando margen para el diseño de futuras placas de
expansión. Esto fija las funcionalidades de los pines del módulo XBee, limitando las
capacidades debido a la multiplexación de funcionalidades en un mismo pin del
módulo. Pero por otra parte permite una homogenización del diseño que evita
incompatibilidades entre placas.
En el peor de los casos, si un usuario requiriese utilizar un pin definido para un uso
específico (por ejemplo, los pines dedicados al puerto SPI) para otras funcionalidades
que permite el módulo XBee; seguirá siendo capaz de hacerlo pero limitaría la
conexión de placas que sí utilizasen dichas señales.
En ningún momento una placa intermedia debe dejar de conectar el bus de
expansión entre el conector superior y el inferior; incluyendo los pines no conectados.
Ya que aunque sus dispositivos no hagan uso de ellas, podrían ser utilizadas por otras
placas intermedias conectadas en el mismo bus.
2.8.1.3- Placas de circuito impreso (PCBs) Las placas deberán cumplir ciertos requisitos respecto al diseño de su PCB (Printed
Circuit Board) a fin de obtener un conjunto homogéneo. Todas las placas serán
preferentemente del mismo tamaño y tendrán en sus cuatro esquinas perforaciones
que permitan la colocación de separadores o step-offs. También es necesario que el
conector del puerto de expansión esté situado siempre en el mismo sitio y en ambas
caras de las placas intermedias.
5.-MEMORIA
-31- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
En el caso de las placas que solo puedan conectarse al final del conjunto (top-only) o
al principio (bottom-only) como el caso de la placa de interfaz hombre-máquina (HMI,
Human-Machine Interface) y la placa base sólo será necesario un conector para el
puerto en la cara inferior o superior, respectivamente.
2.8.1.4- Componentes electrónicos Los componentes electrónicos a utilizar en las placas se escogerán atendiendo a los
siguientes criterios siempre que no impidan el cumplimiento de los demás requisitos
de diseño o pérdida de funcionalidades:
• Conseguir una buena relación precio/calidad sin perjuicio de la funcionalidad
del hardware.
• Siempre que sea posible utilizar componentes de bajo consumo de potencia.
• Utilizar en la medida de lo posible componentes conocidos y/o probados en
diseños similares.
• Se evitarán siempre que sea posible los componentes through-hole ya que
encarecen la producción y su uso y producción se considera obsoleto. En su
lugar, tendrán preferencia los componentes de montaje superficial o SMD
(Surface Mountage Device) que facilitan enormemente la producción en
serie. Sin embargo, se evitarán los encapsulados de difícil soldadura como
ser los QFP o QFN ya que dificultan el desarrollo del prototipo.
Imagen 6 - Encapsulado QFP
En la medida de lo posible, el prototipo se orientará de manera que los costes de
producción de un kit básico de placa base + placa de expansión permita un margen de
beneficio aceptable sin superar los U$S 9999 finales. Este límite supone una barrera
comercial para vender kits de desarrollo en el mercado de aficionados y no superarlo
amplía las posibilidades de colocación en el mercado.
5.-MEMORIA
-32- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
2.8.1.5- Software de diseño El hardware debe ser desarrollado íntegramente utilizando software de distribución
libre y gratuita para facilitar la modificación del mismo por parte de terceros. Este
aspecto es interesante ya que la posibilidad de modificar un diseño existente amplía la
versatilidad del proyecto dando lugar a numerosas bifurcaciones y aplicaciones
distintas basadas en el diseño original.
Asimismo, los ficheros generados se licenciarán con una licencia que permita la libre
distribución como ser Creative Commons, GNU Public License o Berkeley Software
Distribution.
2.8.1.6- Placa base La placa base debe incluir todo lo necesario para el correcto funcionamiento del
módulo XBee y su interacción con las placas de expansión. Esta placa también es la
encargada de regular la entrada de potencia y alimentar a las demás tarjetas de
expansión a través del bus.
2.8.1.6.1- Alimentación
La alimentación de la placa podrá realizarse a través de distintas fuentes:
• Jack de alimentación (corriente continua no regulada 6-30 V).
• Terminal blocks (corriente continua no regulada 6-30 V).
• Baterías alcalinas AAA (en placa).
• Conector USB (Universal Serial Bus).
Se definen como necesarias dos alimentaciones reguladas:
• 3,3 V para alimentar al módulo XBee y periféricos de las placas de
expansión.
• 5 V para la eventual alimentación de dispositivos externos, circuitos
integrados que lo requieran y relés. La inclusión de esta tensión es opcional,
pudiendo evitar montarla si no hay dispositivos que la requieran.
Para obtener estas tensiones, es necesario estimar el consumo de ambas fuentes y
determinar los reguladores a incluir, atendiendo al factor de minimizar el consumo de
la propia fuente de alimentación.
2.8.1.6.2- Módulo XBeeProgramable
El mismo diseño debe ser válido para todas las versiones disponibles del XBee
programable (S2B y S2C de 32 y 128 kilobits de memoria de programa en cada
versión). También debe ser posible tanto soldar el módulo a la placa en el caso de un
diseño final como poder remplazar el módulo sin soldadura como es el caso de las
placas de desarrollo XBIB.
5.-MEMORIA
-33- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
2.8.1.6.3- Botones e indicadores luminosos
La placa base debe ofrecer la posibilidad de montar botones que activen las señales
de Reset y Commissioning del módulo XBee, sin que su no-montaje impida el
funcionamiento correcto del módulo.
Por otra parte, se debe ofrecer la posibilidad de montar LEDs (Light Emmiting Diode,
Diodo Emisor de Luz) indicadores de:
• Tensión de 3,3 V.
• Tensión de alimentación externa.
• Actividad USB (sólo versión con depurador).
• Señal Association del módulo para identificar el estado del enlace con la red.
2.8.1.6.4- Debugger y puerto serie Debe existir una opción de montaje que incluya un debugger o depurador en la
misma placa a través del puerto USB. Asimismo, debe ser posible tener un puerto serie
capaz de comunicarse con el interfaz serie del módulo XBee. Dicho depurador y puerto
serie puede ser un diseño preexistente pero no deberá interferir con el espíritu de
Open Hardware del proyecto.
Esta característica facilitará el diseño de las aplicaciones sin necesidad de hardware
externo. Las tareas de depuración podrán ser realizadas con el entorno CodeWarrior y
la versión de desarrollo de la placa; y una vez diseñado y probado el firmware, puede
utilizarse una placa sin debugger en la que el módulo funcionará de manera idéntica.
2.8.1.6.5- Expansor de entradas y salidas
Se contempla la posibilidad de incluir opcionalmente en la placa base un expansor
de entradas y salidas ruteadas al puerto de expansión para poder ser utilizadas por
placas de expansión.
2.8.1.7- Placa de expansión de entradas y salidas La placa de expansión de entradas y salidas debe ofrecer al menos cuatro
configuraciones distintas con el mismo PCB en función de si se montan o no
determinados componentes. Las opciones deben ser:
• Al menos 8 salidas a relé.
• Al menos 8 salidas a colector abierto.
• Al menos 8 entradas optoacopladas.
• Al menos 8 entradas/salidas digitales con protección frente a
sobrecorrientes, sobretensiones y descargas electrostáticas.
En el caso de tratarse de entradas, deben ser capaces de generar una interrupción
identificable en el programa de usuario.
5.-MEMORIA
-34- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
La placa debe disponer de algún tipo de conectores suficientemente versátiles que
permitan conectar las entradas y salidas con dispositivos externos de forma robusta y
fiable.
2.8.1.8- Placa de sensores La placa de sensores debe incluir acondicionadores de señal que permitan leer la
salida de sensores estándar de 0-10 V, 4-20 mA, sensores de resistencia variable,
digitales (sensores todo/nada) y un sensor de temperatura montado en la misma
placa. No se incluirán filtros ya que sería necesario conocer de antemano las
características de los sensores a conectar y el ambiente de trabajo.
El número mínimo de sensores posibles será:
• 2 de tensión 0-10 V.
• 2 de lazo de corriente 4-20 mA.
• 4 Digitales.
• 3 de resistencia variable.
Debe incluir también conectores versátiles que permitan conectar los sensores de
manera robusta y fiable.
Además, se incluirán los siguientes periféricos como opción de montaje:
• Reloj en tiempo real (RTC , Real Time Clock) con alarmas capaces de generar
interrupciones hardware.
• Acelerómetro de 3 ejes.
2.8.1.9- Placa de interfaz hombre-máquina Esta placa dispondrá de un LCD preferentemente compatible con el controlador
ST7565R, disponible en la API (Application Programming Interface, Interfaz de
programación de aplicaciones) del Programmable XBee.
También debe incluir al menos cuatro botones y al menos cuatro LEDs indicadores
de propósito general. Los botones deberán ser capaces de generar una interrupción en
la aplicación de usuario.
2.8.2- Firmware El firmware que permite controlar los distintos dispositivos que se incluyan, deberá
ser desarrollado de forma que no rompa el estilo de programación del SDK actual.
Deberá ser documentado e integrado en dicho SDK de manera análoga a los
componentes existentes.
5.-MEMORIA
-35- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
2.9- Análisis de soluciones
2.9.1- Hardware (General) A continuación se detallan soluciones que afectan a todas las tarjetas diseñadas en
carácter general.
2.9.1.1- Software de diseño Las placas a realizar no requieren una complejidad excesiva. Se requiere un
software que permita crear un esquemático a partir del cual obtener un netlist que sea
posible convertir a un fichero de layout. La mayoría de las suites disponibles son
capaces de hacer todo esto permitiendo crear módulos y footprints a partir de
plantillas o desde cero. Debido a las especificaciones, se descartan las opciones de
pago, aunque como se comprueba más adelante, las capacidades de las versiones
gratuitas son más que suficientes para el diseño requerido.
2.9.1.1.1- kiCad
Se trata de una suite software licenciada bajo GPL para la creación de esquemáticos
y placas de circuito impreso. Se encuentra en un estado maduro de desarrollo y es
mantenido por un amplio grupo de desarrolladores y usuarios.
Se compone de un gestor de proyectos que a su vez lanza los otros cuatro sub-
programas componentes de la suite:
• Eeschema: para la creación de esquemáticos.
• Pcbnew: para la creación de layouts o circuitos impresos.
• Gerberview: para el visionado y modificación de los ficheros gerber,
necesarios para la industrialización de los circuitos impresos.
• Cvpcb: selector de footprints (huellas) para asociarlos con los componentes
listados en el netlist generado por Eeschema.
Además incorpora soporte 3D en colaboración con el software Wings3D que
permite crear formas tridimensionales.
5.-MEMORIA
-36- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
Imagen 7 – Captura d epantalla de kiCad eeschema y editor de librería.
2.9.1.1.2- gEDA Es otra suite de desarrollo de placas de circuito impreso, al igual que kiCad se
encuentra licenciado bajo GPL y está mantenido por una gran comunidad de
desarrolladores. Tiene versiones disponibles para Windows, MacOS y Linux.
Esta suite se subdivide en varios programas:
• gschem: herramienta gráfica de creación y edición de esquemáticos.
• gnetlist: es la herramienta que se encarga de generar el netlist a partir de la
salida de gschem y los ficheros .sym (symbol).
• gattrrib: es el editor de atributos de esquemáticos, creando una hoja de
cálculo mostrando todos los componentes en filas, con sus atributos listados
en columnas.
• gpcb: se trata de la herramienta para la edición de la placa de circuito
impreso y generación de ficheros gerber.
• gsymchek: es el revisor de símbolos de gEDA, con esta herramienta se
puede comprobar la validez de los módulos a utilizar por la suite.
5.-MEMORIA
-37- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
Imagen 8 - Captura de pantalla de gEDA.
2.9.1.1.3- FreePCB Es un editor de PCBs que corre solo bajo Windows y licenciado también bajo GPL.
Ha sido diseñado para ser fácil de entender y utilizar mientras es capaz de obtener
resultados profesionales. Sin embargo, tiene la gran desventaja de que el netlist debe
ser importado desde otro programa como ser OrCAD Capture, eeschema o geschem.
Imagen 9 – Captura de pantalla de FreePCB
5.-MEMORIA
-38- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
2.9.1.2- Placas de circuito impreso (PCBs) Las dimensiones de las placas deberán ser las mismas para todas ellas para asegurar
una estética uniforme. Como el componente de mayor tamaño será la pantalla LCD a
escoger, ésta placa será la que determine el tamaño de las demás. Como se ha dicho
en las especificaciones, deberá contar con cuatro separadores o step-offs en las
esquinas para proporcionar estabilidad mecánica al conjunto montado de placas.
Debido a que no hay líneas de alta velocidad como ser señales de vídeo o
radiofrecuencia implicadas, no serán necesarios planos de masa o de tensión. Por ello
debería ser suficiente con dos capas de pistas: una en la cara inferior y otra en la
superior.
Los componentes se dispondrán preferentemente en la cara superior y si es
necesario se podrá utilizar la cara inferior, aunque no se recomienda ya que poblar
ambas caras aumenta el coste de producción.
2.9.1.3- Conector del bus de expansión La interconexión entre placas debe ser fiable y robusta, para ello existen diversas
soluciones como se han observado en los antecedentes. El kit TinkerKit de Arduino por
ejemplo, utiliza tiras de pines through-hole de paso 2.54 mm hembras con el terminal
macho suficientemente largo para conectarse con la placa principal del Arduino.
Por otra parte, el diseño de referencia de los kits Rabbit de Digi International,
utilizan conectores SMD cuadrados de 2x25 pines hembra tanto por la cara superior
como por la inferior. Para conectar dos placas entre sí, utilizan un conector macho-
macho del mismo paso y de espigas suficientemente largas para llegar a ambos
conectores.
Finalmente, el diseño del Freescale Tower System rompe con el típico conector
macho-hembra vertical incluyendo dos placas laterales en las cuales se insertan tanto
la placa principal como las secundarias, recordando su sistema al ensamblaje de un PC.
Este sistema, si bien robusto resulta considerablemente más caro que los anteriores ya
que implica dos placas más, conectores más caros y un límite al número de placas
apilables en un mismo sistema.
5.-MEMORIA
-39- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
Imagen 10 - TinkerKit para
Tower System
Debido a que en los módulos XBee todos los pines tienen múltiples funcionalidades
(salvo los pines destinados a alimentación, masa y tensión de referencia) se deberán
conectar al bus de expansión todos ellos. El modelo de montaje superficial S2C tiene
37 pines lo cual nos deja un mínimo de 40 terminales si consideramos las tensiones de
alimentación y masa. Aún así es recomendable dejar en el conector pines adicionales
para contemplar un posible evolución en futuras versiones, la inclusión de placas
auxiliares que necesiten utilizar señales entre sí o bien un diseño por parte de terceros
en el que interes mantener compatibilidad con el presente proyecto.
5.-MEMORIA
-40- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
2.9.2- Placa base
2.9.2.1- Alimentación Como se definen en las especificaciones de diseño, las posibles conexiones de
alimentación del sistema serán:
2.9.2.1.1- Jack de alimentación (corriente continua no regulada 6-30 V)
Existen gran cantidad de conectores tipo Jack de distintos diámetros, polos,
robustez y precio, en este caso se trataría de un Jack de dos polos, tipo hembra y capaz
de soportar una corriente máxima de 2 amperios. Las dimensiones de los contactos se
deberán determinar en función de la disponibilidad de fuentes de potencia
comerciales. Como se trata de una alimentación bipolar en CC solo serán necesarios
dos contactos para positivo y negativo.
A continuación se detallan distintas opciones comerciales:
Kycon KLDVHCX0202ALT
Kycon KLDVHCX0202B
Kycon KLDVX0202B
Switchcraft 732A
Diám. contacto interior 2 mm 2.5 mm 2.5 mm 1.3 mm
Diám. contacto exterior 5.7 mm 6 mm 6.4 mm 1.27 mm
Largo del contacto 4.4 mm 4.4 mm 8 mm 4.4 mm
Tipo Vertical Vertical Vertical Recto en panel
Corriente nominal 5 A 5 A 3.5 A 5 A
Tensión nominal 24 V 16 V 24 V 12 V
Tabla - 2 Comparativa conectores Jack
2.9.2.1.2- Terminal blocks
Como en el caso anterior, existe una amplia oferta en el mercado en este tipo de
conectores. Sin embargo, se tratan de unos conectores mucho más estandarizados y
flexibles ya que no se debe considerar un conector tipo macho como en el caso
anterior. Además del paso entre pines, se deberá tener en cuenta la tensión y
corriente nominales capaz de soportar.
Como se trata de una alimentación bipolar en CC solo serán necesarios dos
contactos para positivo y negativo.
A continuación se detallan distintas opciones comerciales:
Phoenix Contact 1710085
Phoenix Contact 1792863
TE Connectivity 1986484-2
Tipo SMD/SMT Through-Hole Enchufable Through-Hole
Corriente nominal 32 A 10 A 16 A
Tensión nominal 500 V 30 V 300 V
Tabla - 2 Comparativa Terminal Blocks
5.-MEMORIA
-41- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
Imagen 13 - Phoenix Contact
2.9.2.1.3- Baterías alcalinas. El uso de baterías alcalinas garantiza disponibilidad y facilidad de compra en todo el
mundo, ya que utilizar tipo de baterías específico encarece el producto y crea una
barrera que no es de interés en este proyecto.
Debido a que se recomienda que el módulo XBee Programable trabaje con una
alimentación nominal de 3,3 V, el mínimo número de pilas de 1,5 V a conectar serían 3
para obtener 4,5 V que podrán ser regulados a 3,3 V. Por otra parte, si se colocase una
pila más para llegar a una tensión de 6 V podría alimentarse además el regulador de 5
V y así alimentar a los dispositivos que requieran esta alimentación.
La inclusión de pilas alcalinas en los diseños electrónicos es muy sencilla ya que hay
una gran cantidad de fabricantes que ofrecen soluciones para el montaje en placa. Sin
embargo, hay que determinar el número de pilas a colocar y su tamaño.
A continuación se listan algunas posibilidades comerciales:
Keystone – 5231
Keystone – 55
Eagle Plastic 12BH411P-GR
Eagle Plastic 12BH611-GR
Eagle Plastic 12BH341P-R-GR
Tipo de Batería A, AA, 9V AAA AAA 9 V AA
Número Cualquiera (clip) Cualquiera (clip)
4 1 4
Tabla 3 - Comparativa de montaje de pilas alcalinas
Imagen 16 - Keystone 5231
5.-MEMORIA
-42- Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
módulos XBee Programables. Volumen 1 de 1
2.9.2.1.4- Conector USB
El conector USB cumple la doble función de alimentar a los dispositivos y
proporcionar comunicación con el debugger y puerto serie de la placa principal. Si bien
el USB se trata de un estándar, existen variantes en lo que se refiere al conector que se
detallarán más adelante en esta sección. Solo se tendrán en cuenta las variantes en
placa que estén especificadas en el estándar o sean de uso masivo en componentes de
electrónica de consumo, ya que utilizar un tipo de conector específico encarece la
producción y se aleja del espíritu OpenHardware del proyecto.
Imagen 20 - Conectores USB estándar.
Estándar USB
Externo Sí
Corriente máxima 500 a 900 mA
Señal de datos Ancho 1 bit Ancho de banda 1.5/12/180/5000 Mbits/s
Cable 4 hilos en par trenzado
Pines 4 (1 alimentación, 2 datos, 1 masa) Tabla 4 - Especificaciones del estándar USB
Conector USB tipo A y B
Están muy extendidos en electrónica de consumo pero actualmente su uso se ha
visto reducido ya que las opciones micro USB y mini USB ocupan menos espacio y
cumplen la misma función. El estándar tipo A está pensado para equipos que estarían
permanentemente conectados, como ser un ratón, teclado, un hub USB, etc. Por otra
parte, el estándar B está orientado a equipos que requieran una conexión ocasional,
como es el caso de las impresoras y por lo tanto es más robusto que el A.
Conector mini y micro USB
Se trata de variantes más pequeñas del estándar USB orientadas a equipos
portables como ser teléfonos móviles, PDAs, tablets, discos duros externos, etc. Es de
destacar que el estándar mini USB está actualmente obsoleto mientras que el mini USB
ha sido aceptado en 2009 como estándar por la mayoría de fabricantes de telefonía
móvil (incluyendo Hewlett-Packard, HTC, LG, Motorola, Nokia, Research In Motion,
Diseño de una plataforma modular para el desarrollo ágil de aplicaciones inalámbricas basado en
Samsung y Sony Ericsson); lo cual lo convierte en un estándar muy extendido y abarata
costes.
2.9.2.2- Reguladores de tensión Para obtener una tensión regulada existen distintas so
de las tensiones, corrientes, consumos y nivel
La opción más sencilla y barata es el típico regulador por diodo Zener, en el cual el
diodo trabaja en inversa y absorbe el exceso de corriente, manteniendo un nivel
constante e igual a su tensión Zener entre cátodo y áno
corriente con una resistencia en serie para evitar mal funcionamiento.
Esta no suele ser una opción viable ya que el consumo del propio regulador es muy
alto, disipando calor y bajando enormemente su rendimiento.
Por otra parte, en la mayoría de los diseños electrónicos se utilizan reguladores de
tensión integrados que proporcionan tensiones y corrientes de muy ampli
Dichos reguladores están disponibles en varian
(1,5V; 3V; 5V, etc.) o ajustables mediante resistencias.
Hoy en día es más común encontrar en las fuentes de alimentación reguladores
integrados, normalmente son componentes muy pare