TRABAJO FIN DE ESTUDIOS - Biblioteca de la Universidad de ... · Control y monitorización de una...

268
TRABAJO FIN DE ESTUDIOS Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez PROYECTO FIN DE CARRERA Tutor: Carlos Elvira Izurrategui Curso 2011-2012

Transcript of TRABAJO FIN DE ESTUDIOS - Biblioteca de la Universidad de ... · Control y monitorización de una...

TRABAJO FIN DE ESTUDIOS

Control y monitorización de una plataforma móvil

Adrián Madorrán Ibáñez

PROYECTO FIN DE CARRERA

Tutor: Carlos Elvira Izurrategui

Curso 2011-2012

© El autor© Universidad de La Rioja, Servicio de Publicaciones, 2012

publicaciones.unirioja.esE-mail: [email protected]

Control y monitorización de una plataforma móvil, trabajo fin de estudiosde Adrián Madorrán Ibáñez, dirigido por Carlos Elvira Izurrategui (publicado por la

Universidad de La Rioja), se difunde bajo una LicenciaCreative 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.

“CONTROL Y MONITORIZACIÓN DE UNA

PLATAFORMA MÓVIL”

Director: D. Carlos Elvira Izurrategui Departamento de Ingeniería Eléctrica Universidad de La Rioja Alumno: Adrián Madorrán Ibáñez Ingeniería Técnica Industrial especializada en Electrónica Industrial Universidad de La Rioja Lugar y Fecha: Logroño, 6 de Junio de 2012

Dedicado a mis abuelos

maternos, Mª Paz y Francisco, que vieron nacer este proyecto, pero no lo han visto terminar.

Siempre en mi recuerdo.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

1 Índice general

Índice general 1 Índice general................................................................................................................... 3

2 Memoria .......................................................................................................................... 8

2.0 Hoja de identificación. ............................................................................................. 9

2.1 Objeto. ................................................................................................................... 12

2.2 Alcance. .................................................................................................................. 12

2.3 Antecedentes. ........................................................................................................ 13

2.4 Normas y referencias. ............................................................................................ 14

2.4.1 Disposiciones legales y normas aplicadas. ..................................................... 14

2.4.2 Bibliografía. .................................................................................................... 14

2.4.3 Programas de cálculo. .................................................................................... 15

2.4.4 Plan de gestión de la calidad aplicado durante la redacción del proyecto. .. 15

2.4.5 Otras referencias. ........................................................................................... 15

2.5 Definiciones y abreviaturas.................................................................................... 16

2.6 Requisitos del diseño. ............................................................................................ 17

2.6.1 Requisitos plataforma. ................................................................................... 17

2.6.2 Requisitos motores. ....................................................................................... 17

2.6.3 Requisitos encoders. ...................................................................................... 18

2.6.4 Requisitos etapa de potencia......................................................................... 18

2.6.5 Requisitos microcontrolador de 32 bits. ........................................................ 18

2.6.6 Requisitos microcontrolador de 8 bits. .......................................................... 18

2.6.7 Requisitos comunicaciones. ........................................................................... 19

2.6.8 Requisitos entorno PC. ................................................................................... 19

2.7 Análisis de soluciones. ........................................................................................... 20

2.7.1 Selección de plataforma y accesorios. ........................................................... 20

2.7.2 Selección del controlador principal. .............................................................. 25

2.7.3 Selección de comunicaciones con PC. ........................................................... 30

2.7.4 Selección del control distribuido. .................................................................. 31

2.7.5 Comunicación del control distribuido con el control principal. ..................... 33

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

2.7.6 Gestión del usuario ........................................................................................ 33

2.8 Resultados finales. ................................................................................................. 35

2.8.1 Líneas futuras. ................................................................................................ 37

2.9 Planificación. .......................................................................................................... 39

2.9.1 Lista de tareas. ............................................................................................... 40

2.9.2 Diagrama Gantt. ............................................................................................. 43

2.10 Orden de prioridad entre los documentos básicos. .............................................. 44

3 Anexos ............................................................................................................................ 45

3.1 Documentación de partida. ................................................................................... 49

3.1.1 Plataforma. .................................................................................................... 49

3.1.1.1 Chasis. ........................................................................................................ 49

3.1.1.2 Motores...................................................................................................... 51

3.1.1.3 Encoders..................................................................................................... 54

3.1.1.4 Etapa de potencia. ..................................................................................... 55

3.1.1.5 Baterías y cargador de baterías. ................................................................ 60

3.1.1.6 Ruedas. ....................................................................................................... 62

3.1.2 Control principal. ........................................................................................... 65

3.1.2.1 Starter Kit PIC32 ......................................................................................... 65

3.1.2.2 Comandos uso PIC32. ................................................................................ 66

3.1.2.2.1 Puertos I/O. .......................................................................................... 66

3.1.2.2.2 Comandos de interrupciones. .............................................................. 75

3.1.2.2.3 Comandos de temporizadores. ............................................................ 77

3.1.2.2.4 Comandos de SPI. ................................................................................ 80

3.1.2.2.5 Comandos de UART. ............................................................................ 83

3.1.2.3 Placa de expansión de puertos. ................................................................. 89

3.1.2.4 Placa conversor D/A. .................................................................................. 92

3.1.2.4.1 MCP4922. ............................................................................................. 92

3.1.2.4.2 TLE2425. ............................................................................................... 96

3.1.2.4.3 Conexionado. ....................................................................................... 98

3.1.2.5 Programa PIC32. ...................................................................................... 100

3.1.3 Control distribuido. ...................................................................................... 105

3.1.3.1 PIC 16F877. .............................................................................................. 105

3.1.3.2 Comandos uso PIC 16F877. ...................................................................... 108

3.1.3.2.1 Puertos I/O. ........................................................................................ 108

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

3.1.3.2.2 Comandos de interrupciones. ............................................................ 109

3.1.3.2.3 Comandos de contadores. ................................................................. 110

3.1.3.2.4 Comandos de SPI. .............................................................................. 111

3.1.3.3 Elementos de la placa. ............................................................................. 111

3.1.3.4 Conexionado. ........................................................................................... 114

3.1.3.5 Programador Enigma. .............................................................................. 115

3.1.3.6 Programa 16F877. .................................................................................... 118

3.1.3.6.1 Programa principal............................................................................. 118

3.1.3.6.2 Cabecera “MCP4922.h”. .................................................................... 120

3.1.3.6.3 Cabecera “Control.h”. ........................................................................ 122

3.1.4 Comunicaciones. .......................................................................................... 125

3.1.4.1 Comunicación bluetooth.......................................................................... 125

3.1.4.1.1 Especificaciones. ................................................................................ 125

3.1.4.1.2 Información técnica. .......................................................................... 129

3.1.4.1.3 Arquitectura del protocolo. ............................................................... 131

3.1.4.1.4 Principios operativos. ........................................................................ 133

3.1.4.1.5 Módulo eb301.................................................................................... 134

3.1.4.1.5.1 Dimensiones y patillaje. .............................................................. 135

3.1.4.1.5.2 Firmware. .................................................................................... 136

3.1.4.1.5.3 Led indicador. ............................................................................. 138

3.1.4.1.5.4 Conexionado con placa de expansión de puertos. ..................... 138

3.1.4.1.5.5 Comandos. .................................................................................. 141

3.1.4.1.6 Cable FTDI. ......................................................................................... 141

3.1.4.1.6.1 Experimentación. ........................................................................ 142

3.1.4.1.7 Otros módulos. .................................................................................. 142

3.1.4.1.7.1 Módulo integrado en PC. ............................................................ 142

3.1.4.1.7.2 Módulo USB. ............................................................................... 143

3.1.4.2 Comunicación SPI. .................................................................................... 143

3.1.4.2.1 Cable de comunicación. ..................................................................... 148

3.1.5 Gestión de usuario. ...................................................................................... 150

3.1.5.1 Aplicación en PC. ...................................................................................... 150

3.1.5.1.1 Borland C++ Builder 5.0 Profesional. ................................................. 150

3.1.5.1.2 Código. ............................................................................................... 151

3.1.5.1.3 Librería puerto serie. ......................................................................... 172

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

3.1.5.2 Aplicación en teléfono móvil. .................................................................. 177

3.1.5.2.1 Sistema operativo Android. ............................................................... 177

3.1.5.2.2 Aplicación S2 Bluetooth Terminal2. ................................................... 178

3.2 Cálculos. ............................................................................................................... 179

3.2.1 Cálculo de velocidad de motores y plataforma. .......................................... 179

3.2.2 Cálculo de la resistencia del led de la placa de control distribuido. ............ 179

3.3 Anexos de aplicación en el ámbito del proyecto distintos de los indicados en el documento básico: “Estudios con entidad propia”. ........................................................ 180

3.4 Otros documentos. .............................................................................................. 181

3.4.1 Manuales de usuario. ................................................................................... 181

3.4.1.1 Manual de usuario para control desde PC. .............................................. 181

3.4.1.1.1 Necesidades iniciales. ........................................................................ 181

3.4.1.1.2 Conexión con la plataforma. .............................................................. 181

3.4.1.1.3 Control de la plataforma. ................................................................... 185

3.4.1.1.4 Configuración eb101. ......................................................................... 192

3.4.1.1.5 Histórico de datos. ............................................................................. 193

3.4.1.2 Manual de usuario para control desde teléfono móvil. .......................... 195

3.4.1.2.1 Necesidades iniciales. ........................................................................ 195

3.4.1.2.2 Descarga de la aplicación. .................................................................. 195

3.4.1.2.3 Conexión con la plataforma. .............................................................. 197

3.4.1.2.4 Establecimiento de la comunicación y uso. ....................................... 201

3.4.2 Contenido del CD. ........................................................................................ 209

4 Planos ........................................................................................................................... 210

4.1 Circuito eléctrico de la placa de control distribuido: P1. ..................................... 212

4.2 Circuito impreso para la placa de control distribuido: P2. .................................. 213

5 Pliego de condiciones .................................................................................................. 214

5.1 Especificaciones de materiales y elementos constitutivos del objeto del proyecto. 216

5.1.1 Listado completo. ........................................................................................ 216

5.1.2 Calidades mínimas a exigir. .......................................................................... 221

5.1.3 Pruebas y ensayos a que debe someterse. .................................................. 222

5.2 Reglamentación y normativa aplicable incluyendo recomendaciones y normas de no obligado cumplimiento. .............................................................................................. 222

5.3 Aspectos del contrato. ......................................................................................... 222

5.3.1 Documentación base para la contratación de su materialización. .............. 223

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

5.3.2 Limitaciones en los suministros. .................................................................. 223

5.3.3 Criterios para las modificaciones al proyecto original. ................................ 225

6 Estado de mediciones .................................................................................................. 226

6.1 Capítulo 1: Plataforma. ........................................................................................ 228

6.2 Capítulo 2: Control Principal. ............................................................................... 230

6.3 Capítulo 3: Control Distribuido. ........................................................................... 231

6.4 Capítulo 4: Comunicaciones................................................................................. 235

6.5 Capítulo 5: Elementos Auxiliares. ........................................................................ 236

6.6 Capítulo 6: Mano de Obra.................................................................................... 238

7 Presupuesto ................................................................................................................. 239

7.1 Cuadros de precios unitarios de materiales, mano de obra y elementos auxiliares que componen las partidas o unidades de obra. ............................................................ 241

7.1.1 Capítulo 1: Plataforma. ................................................................................ 241

7.1.2 Capítulo 2: Control Principal. ....................................................................... 243

7.1.3 Capítulo 3: Control Distribuido. ................................................................... 244

7.1.4 Capítulo 4: Comunicaciones. ........................................................................ 248

7.1.5 Capítulo 5: Elementos auxiliares. ................................................................. 249

7.1.6 Capítulo 6: Mano de obra ............................................................................ 251

7.2 Cuadros de precios unitarios de las unidades de obra, de acuerdo con el “Estado de mediciones” y con la descomposición correspondiente de materiales, mano de obra y elementos auxiliares. ....................................................................................................... 252

7.2.1 Capítulo 1: Plataforma. ................................................................................ 252

7.2.2 Capítulo 2: Control Principal. ....................................................................... 254

7.2.3 Capítulo 3: Control Distribuido. ................................................................... 255

7.2.4 Capítulo 4: Comunicaciones. ........................................................................ 259

7.2.5 Capítulo 5: Elementos Auxiliares. ................................................................ 260

7.2.6 Capítulo 6: Mano de obra ............................................................................ 263

7.3 Presupuesto. ........................................................................................................ 264

2 Memoria

Director: D. Carlos Elvira Izurrategui Departamento de Ingeniería Eléctrica Universidad de La Rioja Alumno: Adrián Madorrán Ibáñez Ingeniería Técnica Industrial especializada en Electrónica Industrial Universidad de La Rioja Título: Control y programación de una plataforma móvil

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 9

2.0 Hoja de identificación.

Título: Control y programación de una plataforma móvil.

Director: D. Carlos Elvira Izurrategui

Profesor del departamento de Ingeniería Eléctrica de la Universidad de La Rioja.

Alumno: Adrián Madorrán Ibáñez

Ingeniería Técnica Industrial especializada en Electrónica Industrial.

Logroño, a 6 de Junio de 2012

D. Carlos Elvira Izurrategui Adrián Madorrán Ibáñez

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 10

Índice de memoria: 2 Memoria…………………………………………………………………………………………………………… 8

2.0 Hoja de identificación. ............................................................................................. 9

2.1 Objeto. ................................................................................................................... 12

2.2 Alcance. .................................................................................................................. 12

2.3 Antecedentes. ........................................................................................................ 13

2.4 Normas y referencias. ............................................................................................ 14

2.4.1 Disposiciones legales y normas aplicadas. ..................................................... 14

2.4.2 Bibliografía. .................................................................................................... 14

2.4.3 Programas de cálculo. .................................................................................... 15

2.4.4 Plan de gestión de la calidad aplicado durante la redacción del proyecto. .. 15

2.4.5 Otras referencias. ........................................................................................... 15

2.5 Definiciones y abreviaturas.................................................................................... 16

2.6 Requisitos del diseño. ............................................................................................ 17

2.6.1 Requisitos plataforma. ................................................................................... 17

2.6.2 Requisitos motores. ....................................................................................... 17

2.6.3 Requisitos encoders. ...................................................................................... 18

2.6.4 Requisitos etapa de potencia......................................................................... 18

2.6.5 Requisitos microcontrolador de 32 bits. ........................................................ 18

2.6.6 Requisitos microcontrolador de 8 bits. .......................................................... 18

2.6.7 Requisitos comunicaciones. ........................................................................... 19

2.6.8 Requisitos entorno PC. ................................................................................... 19

2.7 Análisis de soluciones. ........................................................................................... 20

2.7.1 Selección de plataforma y accesorios. ........................................................... 20

2.7.2 Selección del controlador principal. .............................................................. 25

2.7.3 Selección de comunicaciones con PC. ........................................................... 30

2.7.4 Selección del control distribuido. .................................................................. 31

2.7.5 Comunicación del control distribuido con el control principal. ..................... 33

2.7.6 Gestión del usuario ........................................................................................ 33

2.8 Resultados finales. ................................................................................................. 35

2.8.1 Líneas futuras. ................................................................................................ 37

2.9 Planificación. .......................................................................................................... 39

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 11

2.9.1 Lista de tareas. ............................................................................................... 40

2.9.2 Diagrama Gantt. ............................................................................................. 43

2.10 Orden de prioridad entre los documentos básicos. .............................................. 44

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 12

2.1 Objeto.

Objetivos del proyecto:

- Estudio y selección de componentes para el montaje de una plataforma móvil de bajo coste.

- Estudio y selección de la electrónica de control de la plataforma móvil.

- Desarrollo de la programación de algoritmos de control en lenguaje de alto nivel compatibles con la electrónica.

- Programación en lenguaje visual de un entorno para monitorizar la plataforma móvil.

Justificación de los objetivos:

- Lo primero de debemos hacer, es seleccionar los materiales más adecuados para la construcción de una plataforma móvil. Tener una base con al que comenzar a trabajar.

- Para que la plataforma se desplace, es necesario una parte electrónica que gestione la plataforma.

- A parte de la electrónica, es necesaria una programación de la misma para que todo se relacione adecuadamente.

- Para finalizar, necesitaremos un entorno desde donde gestionar la plataforma.

2.2 Alcance.

Debido a que este proyecto tiene carácter didáctico a nivel universitario, engloba, por lo tanto, partes de diseño, desarrollo, mejora y ejecución de un prototipo de plataforma móvil.

El producto desarrollado en este proyecto debe cumplir los siguientes requerimientos especificados:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 13

- Realización por parte del alumno de las placas de control distribuido. - Los elementos se seleccionarán de acuerdo a unos requisitos iniciales que se

pueden consultar en el punto “2.6. Requisitos del diseño”. - El usuario debe tener control en cualquier momento de la plataforma. - El control principal de la plataforma se realizara bajo PC.

2.3 Antecedentes.

Inicialmente se ha estudiado una serie de plataformas de diferentes fabricantes y tras este estudio se ha elegido la que mejores prestaciones nos ofrecía.

A continuación, se ha elegido la electrónica de potencia capaz de controlar los motores que hemos elegido.

Para poder tener un control de las tracciones se han estudiado tres posibilidades:

1-. Tracción delantera, gestionada por un único microcontrolador de alta capacidad (32 bits) que se comunica con un PC que maneja el usuario.

2-. Tracción delantera, gestionada por un microcontrolador de baja capacidad (8 bits) que se comunica con un microcontrolador de alta capacidad (32 bits) y este es controlado por un usuario mediante PC.

3-. Tracción total, control de tracción delantera mediante un microcontrolador de baja capacidad (8 bits) y control de tracción trasera mediante otro microcontrolador de baja capacidad (8 bits) y los dos microcontroladores gestionados a su vez por un tercero de alta capacidad (32 bits) que se comunica con un usuario mediante PC.

La elección principal que se ha adoptado es la tercera debido a que podemos tener un control total de la plataforma, pudiendo seleccionar en cualquier momento .

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 14

2.4 Normas y referencias.

A continuación se detallará la normativa y referencias que se han tenido en cuenta.

2.4.1 Disposiciones legales y normas aplicadas.

Dado que el proyecto carece de carácter comercial y es dedicado íntegramente como fin didáctico, no se aplican disposiciones legales ni normativas aplicadas especificas a tener en cuenta.

2.4.2 Bibliografía.

La principal bibliografía que va a ser consulta es:

[1] Microchip. PIC32 Starter Kit User’s Guide. USA: 2010. 78p. DS61159A.

[2] Microchip. MPLAB C32 C Compiler User’s Guide. USA: 2007. 114p. DS51686A.

[3] Microchip. MPLAB C32 C COMPILER LIBRARIES. USA: 2007. 106p. DS51685A.

[4] Microchip. PIC32 Peripheral Libraries for MPLAB C32 Compiler. USA: 2007. 325p. DS062507.

[5] Microchip. 32-Bit Languaje Tools Libraries. USA: 2009. 140p. DS51685C.

[6] Microchip. PIC32 Family Reference Manual (All Sections). USA: 2008. 438p. DS61127C.

[7] Microchip. MPLAB User Guide. USA: 2009. 352p. DS51519C.

[8] Microchip. Datasheet PIC 16f877. USA: 2001. 218p. DS30292C.

[9] Cánovas López, Andrés. Manual compilador C CCS. Valencia: 2010. 70p.

[10] Ingeniería de Microsistemas Programados S.L. EB301 Guía rápida. Bilbao: 2010. 28p.

[11] Microchip. Datasheet MCP4921-22. USA: 2004. 40p. DS21897A.

[12] López Pérez, Eric. INGENIERIA EN MICROCONTROLADORES: Protocolo SPI (Serial Peripheral Interface). México: 2009. 10p. [13] Dimension Engineering. Sabertooth 2x5 User’s Guide. USA: 2007. 19p.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 15

2.4.3 Programas de cálculo.

Para la realización de la placa de control que albergara el microcontrolador de baja capacidad (8 bits) se va a utilizar Orcad Family Release 9.2:

- Esquema: Capture CIS. - Placa: Layout.

Para la programación del microcontrolador de alta capacidad (32 bits) se va a utilizar MPLAB IDE v8.46.

Para la programación del microcontrolador de baja capacidad (8 bits) se va a utilizar MPLAB IDE v8.46 junto con el compilador PIC C Complier PCWHD (CCS).

El programador que se va a utilizar para enviar el código compilado al microcontrolador de baja capacidad (8 bits) es Enigma de libre distribución.

2.4.4 Plan de gestión de la calidad aplicado durante la redacción del proyecto.

No se va a llevar a cabo un plan de gestión de la calidad durante la redacción del proyecto, aunque sí que controlará por parte del director del proyecto que la redacción del proyecto se desarrolle satisfactoriamente.

2.4.5 Otras referencias.

Se van a enumerar otros recursos utilizados a la hora de la elaboración del proyecto:

[1] Curso básico PIC 16f877. (2011). Fecha de consulta: abril 10, 2010 desde http://es.scribd.com/doc/26562531/Curso-Basico-PIC16F877

[2] Foro de electrónica. (2010). Todopic, foro de electrónica desde http://todopic.mforos.com

[3] Curso básico PIC 16f877. (2010). Forosdeelectronica, foro de electrónica desde http://www.forosdeelectronica.com

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 16

[4] Foro de electrónica. (2010). Ucontrol, foro de electrónica desde http://www.ucontrol.com.ar/

[5] Elementos electrónicos. (2010). Microchip, fabricante desde http://www.microchip.com

[6] Elementos de la plataforma. (2010). Lynxmotion, fabricante desde http://www.lynxmotion.com/

[7] Librería de comunicación serie. (2011). Linux Communication desde http://lnxcomm.sourceforge.net/data/

[8] Compilador CCS. (2010). CCS desde www.ccsinfo.com

2.5 Definiciones y abreviaturas.

- 4WD: Tracción variable a las cuatro ruedas. - A: Amperios. - BT: Bluetooth. - Cm: Centímetros. - D/A: Digital a analógico. - DIP: Dual Inline Package (Encapsulado dual en línea). - H: En medidas High (alto). - IVA: Impuesto sobre el valor añadido. - Kbps: Kilo bits por segundo. - Kg: kilos. - Khz: Kilohercios = 1000 hercios. - L: En medidas Long (largo). - mA: mili amperio (10-3 A). - mAh: mili amperios hora. - MHz: mega hercios (106 Hercios). - Ni-Cad: Níquel Cadmio referente a baterías. - Ni-Mh: Níquel Metal hidruro referente a baterías. - R/C: Radio control. - Rpm: Revoluciones por minuto. - Smd: Superficial mount device (dispositivo de montaje superficial). - SPI: Serial Peripheral Interface (Bus serie de interfaz de periféricos). - USB: Universal Serial Bus (Bus serie universal). - V: Voltios. - Vdc: Voltios de tensión continua.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 17

- W: En medidas Wide (ancho). - μA: micro amperio (10-6 A). - μs: micro segundo (10-6 s).

2.6 Requisitos del diseño.

Se van a enumerar una serie de requisitos iniciales con los que se parte al inicio del proyecto y que determinan el camino a seguir para seleccionar los elementos que se van a utilizar.

2.6.1 Requisitos plataforma.

Los requisitos iniciales para la selección de la plataforma son:

- Materiales: deben ser ligeros y resistentes: aluminio, acero inoxidable, policarbonato,…

- Medidas: o Máximo: 45 cm L x 35 cm W x 15 cm H. o Mínimo: 20 cm L x 15 cm W x 7 cm H.

- Tracción: total a las cuatro ruedas. - Ruedas que se adapten a todo tipo de terreno u oruga.

2.6.2 Requisitos motores.

Los requisitos iniciales para la selección de los motores son:

- Tensión de alimentación: entre 6 y 12 Vdc. - Corriente máxima: 5A. - Par: mínimo 3.5 kg cm. - Rpm: mínimo 100. - Capacidad de colocar un encoder digital.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 18

2.6.3 Requisitos encoders.

Los requisitos iniciales para la selección de los encoders son:

- Mínimo 200 pulsos por revolución. - Frecuencias mayores de 10kHz aunque dependerá del motor que finalmente

se seleccione.

2.6.4 Requisitos etapa de potencia.

Los requisitos iniciales para la selección de la etapa de potencia son:

- Mínimo dos canales de control. - Corriente continua máxima: 5A. - Control analógico.

2.6.5 Requisitos microcontrolador de 32 bits.

Los requisitos iniciales para la selección del microcontrolador de 32 bits son:

- Frecuencia mínima: 40MHz. - Memoria mínima de programa: 16kB. - Memoria RAM mínima: 4kB. - Puertos SPI: mínimo 1.

2.6.6 Requisitos microcontrolador de 8 bits.

Los requisitos iniciales para la selección del microcontrolador de 8 bits son:

- Frecuencia mínima: 4MHz. - Memoria mínima de programa: 4kB. - Contadores programables: mínimo 2. - Puertos SPI: mínimo 1.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 19

2.6.7 Requisitos comunicaciones.

Los requisitos iniciales para la selección de las comunicaciones son:

- Comunicación entre microcontrolador de 32 bits y PC: debe ser una comunicación inalámbrica:

o Wifi. o Radio frecuencia. o Bluetooth. o ZigBee.

- Comunicación entre microcontrolador de 32 bits y microcontrolador de 8 bits: debe ser una comunicación alámbrica:

o UART (serie). o SPI (serie). o I2C

2.6.8 Requisitos entorno PC.

Los requisitos iniciales para la selección del entorno de gestión del PC son:

- Lenguaje de alto nivel: o C, C++. o Basic.

- Sistema operativo: Windows (XP, Vista, 7).

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 20

2.7 Análisis de soluciones.

Se va a dividir el análisis de soluciones en seis pasos:

2.7.1 Selección de plataforma y accesorios.

De acuerdo a los requisitos iniciales que nos marcan una pauta a la hora de buscar y seleccionar los materiales, se han encontrado los siguientes candidatos para la realización del proyecto.

1-. MMP-5 Mobile Robot Platform

Características:

- Cuatro motores de alta aceleración. - Chasis de aluminio con acabado en anodizado negro. - Batería 12V Ni-Cad 1400mAh. - Ruedas todoterreno (diámetro de rueda 10.8 cm). - Tamaño: 29.2 cm L x 28.45 cm W x 10.8 cm H. - Precio: 412€ IVA incluido.

Ilustración 1: Kit MMP-5.

2-. 4WD ATR Base Kit

Características:

- Cuatro motores. - Chasis de aluminio. - Baterías: 24V 4500 mAH Ni-MH 2x10.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 21

- Ruedas todoterreno. - Tamaño: 43.82 cm L x 31.12 cm W x 17.15 cm H. - Precio: 582€ IVA incluido.

Ilustración 2: Kit 4WD ATR.

3-. A4WD1 Rover

Características:

- Cuatro motores. - Chasis de aluminio y policarbonato negro. - Baterías: 7.2V 2800 mAh Ni-MH. - Ruedas todoterreno. - Tamaño: 22.2 cm L x 17.8 cm W x 8.9 cm H. - Precio: 240€ IVA incluido.

Ilustración 3: Kit 4WD ATR.

Por la relación calidad-precio y las características que nos ofrece, se ha elegido como base para trabajar la tercera opción: A4WD1 Rover.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 22

Para más información consúltese Anexos 3.1.1.1. Chasis.

Una vez que tenemos la plataforma, elegimos los motores del kit que más nos interesen de acuerdos a los requisitos iniciales. Los motores que nos ofrecen son los siguientes:

Ilustración 4: Motor GHM.

1-. Gear Head Motor GHM-03:

Características:

- 7.2vdc – 3.8A en carga. - Relación reducción: 30:1 - 291rpm - Par motor: (3.9 kg-cm) - Capacidad de colocar un encoder digital.

2-. Gear Head Motor GHM-16:

Características:

- 12vdc – 1.6A en carga - Relación reducción: 30:1 - 200rpm - Par motor: (4 kg-cm) - Capacidad de colocar un encoder digital.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 23

3-. Gear Head Motor GHM-04:

Características:

- 7.2vdc – 3.8A en carga. - Relación reducción: 50:1 - 175rpm - Par motor: (7.1 kg-cm) - Capacidad de colocar un encoder digital.

Dado que no nos interesa que la plataforma alcance gran velocidad se ha elegido la tercera opción: Gear Head Motor GHM-04. Estos motores no tienen una gran velocidad, pero si ofrecen un par motor mayor.

Para más información consúltese Anexos 3.1.1.2. Motores.

Un vez que tenemos los motores, seleccionamos los encoder que se adapten a ellos. El fabricante nos ofrece unos únicos encoders.

Características:

- Encoder = 100 ciclos por revolución. - Encoder = 400 pulsos cuadrados por revolución. - Frecuencia = mas de 30khz

Ilustración 5: Encoder para motor GHM.

Para más información consúltese Anexos 3.1.1.3. Encoders.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 24

A continuación, seleccionaremos las etapas de potencia que van a alimentar los motores.

Partiendo de la base que los motores se alimentan a 7.2V y que la corriente máxima esperada (según el fabricante) es de 3.8A, se ha seleccionado la siguiente etapa de potencia para los motores:

Sabertooth 2X5 Controladora dual de motores regenerativa:

Características:

- Control = Analógico, R/C, serie simplificado, serie paquetizado. - Canales = 2 (control dual). - Voltaje = 6.0vdc - 18.0vdc. - Corriente continua = 5A. - Corriente de pico = 10A. - Otros = Control síncrono regenerativo, frecuencia de conmutación por

ultrasonidos, protección térmica y de sobrecorriente y modo de protección para baterías de litio.

Ilustración 6: Etapa de potencia Sabertooth 2x5.

Para más información consúltese Anexos 3.1.1.4. Etapas de potencia.

Y por último, dado que las etapas de control tienen protección de litio y control regenerativo, vamos a utilizar unas baterías diferentes a las que el kit básico trae. Se ha seleccionado para el uso unas baterías de litio de 7.4V y 2100 mAh.

Para más información consúltese Anexos 3.1.1.5. Baterías y cargador de baterías.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 25

2.7.2 Selección del controlador principal.

Como controlador principal se va a seleccionar un microcontrolador que se comunicará con el PC y dependiendo de cómo hayamos integrado la tracción, se comunicará con otros microcontroladores o actuará en las etapas de potencia de los motores.

Por todo ello, se ha optado por escoger un microcontrolador del fabricante Microchip: PIC32MX320F032H-401/P para montaje smd en placa.

Las características principales son:

- Máxima velocidad: 40Mhz. - Memoria de programa: 32KB. - Memoria RAM: 8KB. - Tensión alimentación: 2.3V – 3.6V. - SPI-I2C: 2 canales. - Contadores de 16 bits: 5.

Ilustración 7: PIC32MX320F032H-401/MR.

Los microcontroladores se dispensan sin placa de expansión para poder acceder fácilmente a los puertos, por ello no es necesario una placa para conexión TQFP64. Para ello utilizaremos las del fabricante Proto Advantage PCB3006-1.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 26

Ilustración 8: PCB3006-1.

Dado el problema principal de soldar el microcontrolador a su placa por el pequeño tamaño y más tarde el mayor inconveniente, encontrar un programador que se puede utilizar, se optara por otra solución.

Para erradicar estos problemas se ha selecciona un kit de desarrollo de Microchip. En concreto es el PIC 32 Starter Kit. El kit nos ofrece las siguientes ventajas:

- MPLAB 8.x gratis. - MPLAB C32 COMPILER gratis hasta 64kb de código de programa. - Programación y depuración por medio del cable USB todo desde el propio

MPLAB.

El microcontrolador que incorpora es PIC32MX360F512L cuyas características principales son:

- Máxima velocidad: 80Mhz. - Memoria de programa: 512KB. - Memoria RAM: 32KB. - Tensión alimentación: 2.3V – 3.6V. - SPI-I2C: 2 canales para cada uno. - Contadores de 16 bits: 5.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 27

Ilustración 9: Características PIC32MX360F512L.

Para más información consúltese Anexos 3.1.2.1. Starter Kit PIC32.

Para acceder fácilmente a los puertos, se va a utilizar la placa de expansión de puertos que nos ofrece un acceso rápido a todos ellos.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 28

Ilustración 10: Placa de expansión para PIC 32 Starter Kit.

Para más información consúltese Anexos 3.1.2.3. Placa de expansión de puertos.

Para que el controlador principal pueda atacar a los motores mediante la etapa de potencia se necesita un conversor D/A.

Soluciones que se han estudiado:

- TLV5616IP: o Fabricante: Texas Instruments. o Resolución: 12 bits. o Número de canales: 1. o Tiempo ejecución: 3 μs. o Consumo: 2.1mW.

- MAX5302:

o Fabricante: Maxim. o Resolución: 12 bits. o Número de canales: 1. o Tiempo ejecución: 14 μs. o Consumo: 330mW.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 29

- MCP4922: o Fabricante: Microchip. o Resolución: 12 bits. o Número de canales: 2. o Tiempo ejecución: 4.5 μs. o Consumo: 3.5mW.

Por sus características y por ser el mismo fabricante que con lo que se va a trabajar se ha elegido como conversor el MCP4922.

Ilustración 11: MCP4922.

Como ha dicho conversor D/A se le puede acoplar tensión de referencia externa y aplica ganancia doble, se le aplicará una tensión de referencia de 2.5V. Para ello se utilizará un chip integrado de tierra virtual que nos dará una tensión analógica de 2.5V de salida. El dispositivo a utilizar es el TLE2425CPL del fabricante Texas Instruments.

Características:

- Alimentación: 5V - Salida: 2.5V - Consumo: Máximo 20mA. - Baja impedancia.

Ilustración 12: TLE2425CPL.

Para más información consúltese Anexos 3.1.2.4. Placa conversor D/A.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 30

2.7.3 Selección de comunicaciones con PC.

La única comunicación microcontrolador-PC se va a realizar con el PIC32. Para ello se ha seleccionado una comunicación bluetooth, inalámbrica, versátil y veloz.

El módulo bluetooth seleccionado para ir conectado en el PIC 32 es eb301:

- Fabricante: A7 Engineering. - Velocidad: hasta 250kbps. - Tensión: 3.3V/5V. - Consumo corriente: 125 μA – 60mA. - Antena integrada. - Potencia emisión: +6dBm. - Potencia recepción: -85dBm. - Conexión: RS-232 con microcontrolador.

Ilustración 13: eb301.

Para más información consúltese Anexos 3.1.4.1.5. Módulo eb301.

Para poder conectar el módulo eb101/301 se va a utilizar un cable USB a cable serie TTL (5V) del fabricante FTDI. El cable lo que hace es convertir la comunicación serie RS232 del módulo en una comunicación serie USB.

Ilustración 14: Cable FTDI TTL-232R-5V.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 31

Para más información consúltese Anexos 3.1.4.1.6. Cable FTDI.

En el PC se va a utilizar cualquier modulo que el PC disponga o el usuario desee usar.

En este caso se van a utilizar dos para comprobar que todo funciona correctamente:

- Módulo integrado en ordenador portátil. o Fabricante: Broadcom.

Ilustración 15: Bluetooth Broadcom.

- Módulo USB NW545. o Fabricante: Net Way. o Versión bluetooth: 2.0 + EDR. o Clase: 2 (10 metros).

Ilustración 16: Bluetooth NW545.

Para más información consúltese Anexos 3.1.4.1.7. Otros módulos.

2.7.4 Selección del control distribuido.

Para el control distribuido, se ha seleccionado, ya que se va a trabajar con el fabricante Microchip, un microcontrolador de este fabricante de la familia de 8 bits.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 32

Las necesidades primordiales es que disponga de comunicación SPI, dos contadores programables y con memoria suficiente para albergar el programa.

Por todo esto, se va a utilizar el microcontrolador de Microchip 16F877.

Características principales:

- Velocidad: Hasta 20MHz. - Puerto SPI: 1. - Contadores: 3. - Consumo: Máximo 6mA. - Memoria de programa 8k.

Ilustración 17: PIC 16F877.

Para más información consúltese Anexos 3.1.3.1. PIC 16F877.

Para poder acceder a los puertos del 16F877 se van a crear dos placas electrónicas iguales para su uso.

Dichas placas contarán con los siguientes elementos:

- Cristal oscilador: 20MHz. - Zócalo DIP de 40 pines. - Circuito de reset. - Led indicador de alimentación. - Conectores para todos los puertos del microcontrolador. - Condensadores para proteger la alimentación. - Varios conectores de alimentación para la placa y los encoders.

También se añadirán conversores D/A MCP4922 uno a cada placa para poder interactuar con las placas de potencia de los motores. Para ello se necesitará:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 33

- MCP4922. - TLE2425 - Zócalo DIP de 14 pines. - Conectores para los puertos.

Para más información consúltese Anexos 3.1.3.3. Elementos de la placa.

2.7.5 Comunicación del control distribuido con el control principal.

Para la comunicación del control distribuido con el control principal se va a utilizar comunicación alámbrica.

La comunicación empleada será SPI, seleccionada por su velocidad, el uso de pocos cables de comunicación y porque los microcontroladores seleccionados poseen los puertos necesarios para ello. Una de sus características principales es que permite una comunicación simultanea en los dos sentidos (full dúplex).

PIC 32 16F877

16F877

SCLKMOSIMISOSS1SS2

SCLK

MOSIMISO

SS

SCLKMISO

SSMOSI

Ilustración 18: Comunicación SPI.

Para más información consúltese Anexos 3.1.4.2. Comunicación SPI.

2.7.6 Gestión del usuario

La gestión del usuario de la plataforma se va a realizar de dos formas, una mediante PC con el uso de un software específico y otra mediante un teléfono móvil con el uso de un software genérico.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 34

1) Desde PC.

Se utilizará uno de los módulos bluetooth del apartado 2.7.3.

El software que se va a utilizar es Borland C++ Builder 5.0. Professional.

El programa contará con varias pestañas (ventanas):

o Pestaña de inicio, breve presentación.

o Pestaña de configuración de comunicación, donde se podrá configurar el puerto que se va a utilizar para la comunicación con la plataforma.

o Pestaña de control de la plataforma, desde donde se podrá controlar la plataforma de dos modos diferentes, uno manual y otro visual.

o Pestaña de configuración del módulo eb101/301, el usuario podrá configurar el módulo conectándolo con el cable USB.

o Pestaña de histórico, donde el usuario podrá visualizar, guardar o borrar los comandos y datos que se han enviado y recibido en la sesión de uso.

Para la ayuda de la configuración de los puertos serie, el programa se apoyará en las librerías de uso gratuito Linux Communication.

Para más información consúltese Anexos 3.1.5.1. Aplicación en PC y Anexos 3.4.1.1. Manual de usuario para control desde PC.

2) Desde teléfono móvil.

Se utilizará un teléfono móvil con sistema operativo Android 2.1. y el software gratuito (disponible en Android Market) S2 Bluetooth Terminal2.

Desde esta aplicación cualquier usuario con los conocimientos suficientes, será capaz de controlar la plataforma.

Para más información consúltese Anexos 3.1.5.2. Aplicación en teléfono móvil y Anexos 3.4.1.2. Manual de usuario para control desde teléfono móvil.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 35

2.8 Resultados finales.

Los resultados finales del proyecto se enumeran a continuación:

1) Selección de materiales:

Lo primero que se ha realizado es la selección de materiales para la construcción de la plataforma. La selección se ha realizado completamente y con los materiales elegidos se puede realizar el proyecto completamente.

2) Diseño y fabricación de las placas de control distribuido:

En el diseño de la placa se ha tenido en cuenta de dotarlo de dos salidas analógicas así como de medidas de filtrado de alimentación mediante condensadores, adicción de un circuito de reset y un led de estado de funcionamiento.

Una vez realizado el diseño, se han fabricado manualmente y posteriormente se ha realizado el soldado de componentes.

3) Control de la plataforma con el control distribuido:

Programación de los PIC 16F877 para que se comuniquen con el conversor D/A MCP4922 y que estos ofrezcan las consignas de movimiento a las etapas de potencia.

4) Lectura de encoders con el control distribuido y pequeño control proporcional:

Programación de los PIC 16F877 para leer los encoders y realizar un pequeño control proporcional.

5) Comunicación SPI entre PIC 16F877 y PIC32:

Debido a los diversos problemas de comunicación entre los PIC que no sabemos a qué causas se deben ya que no son errores sistemáticos y se producen aleatoriamente, se ha optado por probar con una placa de experimentación

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 36

industrial obteniendo los mismos resultados. Por falta de tiempo para terminar a tiempo el proyecto se ha decidido controlar la plataforma con el PIC32.

6) Comunicación bluetooth entre PIC32 y PC (o móvil):

Programación del PIC32 para comunicación bluetooth con el PC o teléfono móvil y comenzar con el envío/recepción de datos.

7) Dotación de salida analógica al PIC32:

Se ha dotado al PIC32 de un conversor D/A MCP4922 para poder proporcionar consignas de velocidad a la etapa de potencia y se ha programado la comunicación SPI con el conversor.

8) Creación de la aplicación de software de PC:

Se ha programado en Borland C++ Builder una aplicación específica para que cualquier usuario pueda controlar la plataforma. Se ha realizado dos manuales de uso, uno de control bajo PC y otro de control bajo teléfono móvil.

9) Montaje total plataforma:

Se ha montado la plataforma en su totalidad y se la ha dotado de una placa de control distribuido en su interior así como del PIC32 y su placa de expansión de puerto y el módulo bluetooth eb301 en la parte superior.

Problemas surgidos durante la realización del proyecto:

Problema: El led de la placa de control distribuido se enciende cuando no hay alimentación y el cable de comunicación SPI está conectado. Causa: Una de las líneas de SPI cuándo esta inactiva esta a nivel alto. Parece que internamente el PIC deriva la tensión de 3V a las líneas de alimentación haciendo que el led se ilumine. Solución: Dado que es un problema solamente estético, no lo hemos solucionado aunque podríamos haber puesto un diodo.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 37

Problema: En la comunicación SPI entre el PIC 16F877 y el PIC32 se generan ceros aleatorios que no siguen ningún patrón. Causa: No se ha conseguido localizar a que es debido el problema. Solución: Se ha abandonado la comunicación después de tres meses intentando conseguir una solución y debido también a la falta de tiempo para seguir investigando.

Problema: En el PIC32 después de recibir tres o cuatro bytes por la UART mediante el modulo bluetooth deja de entrar a la interrupción. Causa: La pila de la UART del PIC32 solo es capaz de almacenar cuatro bytes y se le está enviando ocho por lo que da un error de sobreescritura. Solución: Se envían los bytes de uno en uno para evitar que la pila se sature.

Problema: Cuando el PIC32 envía un dato al MCP4922, este no da la salida en voltios correspondiente. Siempre se sitúa entre 0 y 0.1V Causa: El pin LDAC (en SPI es SS) que hace que el MCP4922 recoja lo que se le envía no se pone a nivel bajo a tiempo y por lo tanto no se recoge ningún dato. Solución: En vez de utilizar la línea SS del puerto SPI, se utiliza un pin digital del PIC32 que pondremos manualmente a nivel bajo cuando enviemos un dato, dándole tiempo a que se estabilice a nivel bajo.

2.8.1 Líneas futuras.

Existen múltiples líneas futuras para este proyecto.

La primera línea que deberíamos seguir es la de dotar completamente a la plataforma de control distribuido y con tracción total a las cuatro ruedas haciendo una pequeña adaptación al programa del PIC32 y al software de PC.

Una vez que se haya implementado la tracción total podemos dotar la plataforma de muchos accesorios:

- Sensores delanteros y traseros para detección de obstáculos. - Sensor GPS para localización. - Sensor acelerómetro para comprobar la inclinación de los terrenos. - Cámara para poder recibir video de donde se dirige la plataforma. - Sensor de vibración por si recibiese algún golpe. - Sensor térmico para la detección de obstáculos.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 38

También podemos dotar a la plataforma de los siguientes elementos:

- Pinza delantera para coger objetos:

Ilustración 19: Pinza.

- Brazo robótico controlable:

Ilustración 20: Brazo.

- Pinza y cámara:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 39

Ilustración 21: Pinza y cámara.

2.9 Planificación.

A continuación se expone la planificación seguida en la realización del proyecto, tanto las tareas realizadas con sus fechas de inicio y fin como de diagrama de Gantt empleado en la elaboración del proyecto.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 40

2.9.1 Lista de tareas.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 41

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 42

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 43

2.9.2 Diagrama Gantt.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Memoria Página 44

2.10 Orden de prioridad entre los documentos básicos.

El orden de prioridad de los documentos dentro del proyecto de acuerdo a la norma UNE 157001:2002 será el siguiente:

1) Planos. 2) Pliego de Condiciones. 3) Presupuesto. 4) Memoria.

Respecto al documento Estudios con Entidad Propia no será añadido a este proyecto debido a que no se ha realizado ningún estudio con entidad propia (Prevención de riesgos laborales e Impacto ambiental).

3 Anexos

Director: D. Carlos Elvira Izurrategui Departamento de Ingeniería Eléctrica Universidad de La Rioja Alumno: Adrián Madorrán Ibáñez Ingeniería Técnica Industrial especializada en Electrónica Industrial Universidad de La Rioja Título: Control y programación de una plataforma móvil

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 46

Índice de Anexos 3 Anexos……………………………………………………………………………………………………………… 45

3.1 Documentación de partida……………………………………………………………………………… 49

3.1.1 Plataforma……………………………………………………………………………………………. 49

3.1.1.1 Chasis…………………………………………………………………………………………………… 49

3.1.1.2 Motores……………………………………………………………………………………………….. 51

3.1.1.3 Encoders………………………………………………………………………………………………. 54

3.1.1.4 Etapa de potencia. ……………………………..……………………………………………….. 55

3.1.1.5 Baterías y cargador de baterías…………………………………………………………… 60

3.1.1.6 Ruedas. ……………………………………………………………………………………………….. 62

3.1.2 Control principal…………………………………………………………………………………… 65

3.1.2.1 Starter Kit PIC32…………………………………………………………………………………… 65

3.1.2.2 Comandos uso PIC32……………………………………………………………………………. 66

3.1.2.2.1 Puertos I/O………………………………………………………………………………. 66

3.1.2.2.2 Comandos de interrupciones…………………………………………………… 75

3.1.2.2.3 Comandos de temporizadores…………………………………………………. 77

3.1.2.2.4 Comandos de SPI……………………………………………………………………… 80

3.1.2.2.5 Comandos de UART…………………………………………………………………. 83

3.1.2.3 Placa de expansión de puertos……………………………………………………………… 89

3.1.2.4 Placa conversor D/A……………………………………………………………………………… 92

3.1.2.4.1 MCP4922…………………………………………………………………………………. 92

3.1.2.4.2 TLE2425…………………………………………………………………………………… 96

3.1.2.4.3 Conexionado……………………………………………………………………………. 98

3.1.2.5 Programa PIC32…………………………………………………………………………............ 100

3.1.3 Control distribuido……………………………………………………………………………….. 105

3.1.3.1 PIC 16F877……………………………………………………………………………………………. 105

3.1.3.2 Comandos uso PIC 16F877……………………………………………………………………. 108

3.1.3.2.1 Puertos I/O………………………………………………………………………………. 108

3.1.3.2.2 Comandos de interrupciones…………………………………………………… 109

3.1.3.2.3 Comandos de contadores………………………………………………………… 110

3.1.3.2.4 Comandos de SPI……………………………………………………………………… 111

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 47

3.1.3.3 Elementos de la placa…………………………………………………………………………… 111

3.1.3.4 Conexionado………………………………………………………………………………………… 114

3.1.3.5 Programador Enigma……………………………………………………………………………. 115

3.1.3.6 Programa 16F877…………………………………………………………………………………. 118

3.1.3.6.1 Programa principal…………………………………………………………………… 118

3.1.3.6.2 Cabecera “MCP4922.h”……………………………………………………………. 120

3.1.3.6.3 Cabecera “Control.h”……………………………………………………………….. 122

3.1.4 Comunicaciones…………………………………………………………………………………… 125

3.1.4.1 Comunicación bluetooth………………………………………………………………………. 125

3.1.4.1.1 Especificaciones……………………………………………………………………….. 125

3.1.4.1.2 Información técnica…………………………………………………………………. 129

3.1.4.1.3 Arquitectura del protocolo………………………………………………………. 131

3.1.4.1.4 Principios operativos……………………………………………………………….. 133

3.1.4.1.5 Módulo eb301. ………………………………………………………………………….134

3.1.4.1.5.1 Dimensiones y patillaje. ……………………………………………………………..135

3.1.4.1.5.2 Firmware…………………………………………………………………………………. 136

3.1.4.1.5.3 Led indicador…………………………………………………………………………… 138

3.1.4.1.5.4 Conexionado con placa de expansión de puertos…………………….. 138

3.1.4.1.5.5 Comandos………………………………………………………………………………… 141

3.1.4.1.6 Cable FTDI………………………………………………………………………………… 141

3.1.4.1.6.1 Experimentación……………………………………………………………………… 142

3.1.4.1.7 Otros módulos. ………………………………………………………………………….142

3.1.4.1.7.1 Módulo integrado en PC………………………………………………………….. 142

3.1.4.1.7.2 Módulo USB…………………………………………………………………………….. 143

3.1.4.2 Comunicación SPI…………………………………………………………………………………. 143

3.1.4.2.1 Cable de comunicación. ……………………………………………………………..148

3.1.5 Gestión de usuario……………………………………………………………………………….. 150

3.1.5.1 Aplicación en PC…………………………………………………………………………………… 150

3.1.5.1.1 Borland C++ Builder 5.0 Profesional…………………………………………. 150

3.1.5.1.2 Código……………………………………………………………………………………… 151

3.1.5.1.3 Librería puerto serie………………………………………………………………… 172

3.1.5.2 Aplicación en teléfono móvil………………………………………………………………… 177

3.1.5.2.1 Sistema operativo Android……………………………………………………… 177

3.1.5.2.2 Aplicación S2 Bluetooth Terminal2…………………………………………… 178

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 48

3.2 Cálculos…………………………………………………………………………………………………………….. 179

3.2.1 Cálculo de velocidad de motores y plataforma…………………………………….. 179

3.2.2 Cálculo de la resistencia del led de la placa de control distribuido……….. 179

3.3 Anexos de aplicación en el ámbito del proyecto distintos de los indicados en el documento básico: “Estudios con entidad propia”……………………………………………………. 180

3.4 Otros documentos……………………………………………………………………………………………. 181

3.4.1 Manuales de usuario……………………………………………………………………………. 181

3.4.1.1 Manual de usuario para control desde PC……………………………………………. 181

3.4.1.1.1 Necesidades iniciales……………………………………………………………….. 181

3.4.1.1.2 Conexión con la plataforma……………………………………………………… 181

3.4.1.1.3 Control de la plataforma………………………………………………………….. 185

3.4.1.1.4 Configuración eb101………………………………………………………………… 192

3.4.1.1.5 Histórico de datos……………………………………………………………………. 193

3.4.1.2 Manual de usuario para control desde teléfono móvil………………………… 195

3.4.1.2.1 Necesidades iniciales……………………………………………………………….. 195

3.4.1.2.2 Descarga de la aplicación…………………………………………………………. 195

3.4.1.2.3 Conexión con la plataforma……………………………………………………… 197

3.4.1.2.4 Establecimiento de la comunicación y uso……………………………….. 201

3.4.2 Contenido del CD…………………………………………………………………………………. 209

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 49

3.1 Documentación de partida.

A continuación de detallarán todos los datos necesarios para la elaboración del proyecto.

3.1.1 Plataforma.

A continuación se detallan los elementos constituyentes de la plataforma así como sus características técnicas, valores de configuración, uso, etc.

3.1.1.1 Chasis.

Características principales:

- Chasis fabricado en aluminio y laxan negro. - Sistema clásico de control A4WD1. - Peso: 0,5kg. - Tamaño: 22.2 cm L x 17.8 cm W x 8.9 cm H.

Ilustración 22: Chasis.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 50

El kit del chasis contiene:

- Componentes de aluminio. - Paneles de lexan negro. - Dos hub de montaje hexagonal de 12mm a 6mm.

Ilustración 23: Adaptador de 12mm a 6mm.

- Un cable conector de batería.

Ilustración 24: Cable de batería.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 51

- Cuatro cables de alimentación de motores.

Ilustración 25: Cable alimentación de motor.

3.1.1.2 Motores.

Los motores que se han utilizado son motores de corriente continua de imanes permanentes.

Características:

- Tensión: 7.2 V. - Corriente sin carga: 200 mA. - Corriente en bloqueo: 3,8 A. - RPM: 175. - Reductora: 50:1. - Par: 7,1kg·cm - Diámetro exterior: 37mm. - Peso: 0,12kg. - Modelo: GHM-04. - Capacidad de colocar un encoder digital.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 52

Ilustración 26: GHM-04.

Para conectar los cables de alimentación al motor se deberá conectar como en la ilustración:

Ilustración 27: Cables de alimentación.

A continuación se refleja una hoja de características completas del motor:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 53

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 54

3.1.1.3 Encoders.

El encoder que se ha utilizado es un encoder relativo que solo proporciona pulsos.

Características:

- Alimentación: 5V. - 100 ciclos por revolución. - 400 pulsos cuadrados por revolución. - Frecuencia de salida mayor de 30 kHz. - Incluye cable de alimentación y salidas de los encoders. - Fabricante: US Digital. - Distribuidor: Lynxmotion.

Ilustración 28: Encoder digital.

Referencia de colores de los cables:

- Rojo: +5V. - Negro: Masa. - Verde: Salida A. - Amarillo: Salida B.

La salida B esta 90º desfasada respecto a la salida A.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 55

Ilustración 29: Cables del encoder.

Ilustración 30: Posición del encoder en el motor.

3.1.1.4 Etapa de potencia.

La etapa de potencia que se ha utilizado es una etapa de potencia basada en microcontrolador.

Características:

- Tensión de entrada: 6V a 18V.

- Admite baterías de NiMH, NiCd, Lipo o plomo.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 56

- Corriente soportada: 5A continuos o 10A de pico durante pocos segundos.

- Frecuencia de conmutación: 32 kHz.

- Control regenerativo, carga las baterías Lipo en los cambios de sentido.

- Protección térmica y de sobre corriente.

- Protección de baterías Lipo.

- Modos de entrada: analógico, R/C, serie simple y serie paquetizado.

- Peso: 19 gr.

- Tamaño: 45 x 40 x 13 mm.

Ilustración 31: Sabertooth 2x5.

Configuración del conmutador DIP para que:

- Soporte baterías Lipo. - Entrada analógica. - Canales de entrada independientes. - Respuesta de salida lineal.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 57

Ilustración 32: Configuración etapa potencia.

Conexión de los motores:

- Motor 1: Deberán conectar un cable en terminal M1A y el otro cable en el terminal M1B.

- Motor 2: Deberán conectar un cable en terminal M2A y el otro cable en el terminal M2B.

Ilustración 33: Conexión de los motores a la etapa de potencia.

Para la conexión de la batería, se deberá de conectar el cable rojo positivo en el terminal B+ y el cable negro negativo en el terminal B-.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 58

Ilustración 34: Conexión de la batería a la etapa de potencia.

Para conectar la salida de los terminales del conversor D/A MCP4922 a la placa de potencia se deberá tener en cuenta:

- Se conecta el PIC32: o Cable blanco (salida A) al terminal S1. o Cable azul (salida B) al terminal S2.

- Se conecta la placa del PIC 16F877:

o Cable azul (salida A) al terminal S1. o Cable amarillo (salida B) al terminal S2.

Todo deberá quedar montado de la siguiente manera:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 59

Ilustración 35: Conexionado general.

Ilustración 36: Vista general de conexiones.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 60

3.1.1.5 Baterías y cargador de baterías.

Las baterías que se han usado para alimentar la plataforma estarán compuestas de dos celdas Lipo.

Características:

- Tensión nominal: 3,7 V. - Capacidad: 2100 mAh. - Tamaño: 65 x 18 x 18 mm. - Terminales para soldadura.

Ilustración 37: Batería Lipo 3,7 V.

Para crear una batería de 7,4 V que se pueda utilizar, se soldarán dos celdas:

- El polo positivo de una celda con el polo negativo de otra.

- En el polo positivo libre, se soldará un cable rojo de cobre.

- En el polo negativo libre, se soldará un cable negro de cobre.

- Se protegerá las soldaduras con tubo termorretractil.

- Se protegerá el conjunto con tubo termorretractil y cinta aislante negra.

- Se soldará un conector Tamiya hembra.

- Colocamos una etiqueta con el número de batería, su tensión y su capacidad.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 61

Ilustración 38: Batería Lipo 7,4 V.

El cargador de baterías a utilizar, es un cargador para baterías Lipo, con conector Tamiya.

El modelo que se ha elegido es FU-CLI1000 del fabricante Fullwat:

- Este modelo de cargador detecta automáticamente el voltaje de la batería.

- Puede cargar packs de baterías de Li-Ion de entre 1 y 4 células o de baterías de Li-Po con más de 1000 mAh.

- El cargador se detendrá automáticamente cuando la batería este totalmente cargada.

- Los indicadores LED muestran como se encuentra el proceso de carga. Cuando se conecta el cargador los indicadores rojo y verde parpadean 2 veces y posteriormente se apagan. Mientras el cargador se encuentre en el proceso de carga el led rojo permanecerá encendido y cuando la batería esté cargada se encenderá el verde.

- La pinza roja es el polo positivo y la negra el negativo. Especificaciones:

- Voltaje de entrada: 100-240VAC 50-60Hz.

- Salida: Autoajustable en 4,2V, 8,4V, 12,6V y 16,8V dependiendo de la batería conectada.

- Corriente de carga: 1000 mA

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 62

Protecciones:

- Protección contra sobretensión.

- Protección contra cortocircuito.

- Protección contra inversión de polaridad.

Cuidado:

- Carga baterías de Ion-litio de 3,6V, 7,2V, 10,8V y 14,4V cuya capacidad sea superior a 1000 mAh.

- La batería cargada debe tener circuito de protección.

- No trate de desmontar el cargador. Hay altas tensiones en el interior.

- Este cargador está diseñado para uso interno.

Ilustración 39: Cargador baterías Lipo.

3.1.1.6 Ruedas.

Las ruedas que se han utilizado son ruedas todoterreno provistas de llanta de plástico con neumático.

Características:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 63

- Diámetro: 12 cm. - Anchura: 6 cm. - Se puede acoplar cualquier motor con eje de 6 mm. - Peso: 181 g.

Ilustración 40: Ruedas.

Para montar el neumático en la llanta, ejerceremos presión hasta que entre:

Ilustración 41: Ruedas: montaje 1.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 64

Ilustración 42: Ruedas: montaje 2.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 65

3.1.2 Control principal.

A continuación se detallan los elementos constituyentes del control principal así como sus características técnicas, valores de configuración, uso, etc.

3.1.2.1 Starter Kit PIC32

El Starter Kit PIC32 contiene:

- Microcontrolador PIC32MX360F512L junto con una pequeña placa de prototipos. - Cable USB. - CD con MPLAB y PIC32 Compiler.

Ilustración 43: Starter Kit PIC32.

Las características del PIC32MX360F512L son:

- Arquitectura de 32 bits. - Máxima velocidad: 80Mhz. - Memoria de programa: 512KB. - Memoria RAM: 32KB. - Tensión alimentación: 2.3V – 3.6V. - Temperatura de operación: -40 a 105 ºC. - Puertos GPIO: 85. - Canales DMA: 4.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 66

- Canales SPI: 2. - Canales I2C: 2. - Contadores de 16 bits: 5. - Total patillas: 100.

Ilustración 44: PIC32MX360F512L.

3.1.2.2 Comandos uso PIC32.

A continuación se detallan los comandos que se ha de utilizar.

3.1.2.2.1 Puertos I/O.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 67

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 68

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 69

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 70

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 71

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 72

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 73

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 74

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 75

3.1.2.2.2 Comandos de interrupciones.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 76

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 77

3.1.2.2.3 Comandos de temporizadores.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 78

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 79

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 80

3.1.2.2.4 Comandos de SPI.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 81

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 82

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 83

3.1.2.2.5 Comandos de UART.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 84

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 85

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 86

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 87

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 88

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 89

3.1.2.3 Placa de expansión de puertos.

Permitirá el acceso a todos los puertos del PIC32.

Características:

- Alimentación mediante USB. - Alimentación externa de 9 a 15V. - Ofrece salidas a 5V y 3.3V. - Dos puertos para insertar tarjetas PICTAIL hijas. - Conector JTAG. - Funciona con los kits: PIC32 Starter Kit (#DM320001), PIC32 USB Starter Kit II

(#DM320003-2), PIC32 Ethernet Starter Kit (DM320004), dsPIC33E USB Starter Kit (DM330012) o PIC24E USB Starter Kit (DM240012).

Ilustración 45: Placa expansión puertos PIC32.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 90

Ilustración 46: Puerto J10.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 91

Ilustración 47: Puerto J11.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 92

3.1.2.4 Placa conversor D/A.

Para dotar al PIC32 de dos salidas analógicas capaces de controlar las etapas de potencia que hacen que se muevan los motores, se optado por una europlaca en la que se han montado los siguientes componentes:

- Conversor A/D MCP4922. - Tensión de referencia TLE2425. - Zócalo de 14 patillas. - Cables de conexión.

A continuación se detallarán los elementos principales de la placa así como su conexionado en la placa y a la placa de expansión de puertos del PIC32.

3.1.2.4.1 MCP4922.

El MCP4922 es un conversor analógico digital del fabricante Microchip. Sus características más importantes son:

- Resolución: 12 bits. - Número de canales: 2. - Arquitectura: Resistencia-Cadena. - Polaridad de salida: Unipolar. - Referencia de tensión: Externo 2.7V a 5.5V. - Ganancia seleccionable: 1x o 2x. - Error de escala completa: 1% FSR. - Error de no linealidad integrada: ±2 LSB. - Soporta comunicación SPI hasta 20MHz. - Encapsulado fabricante: PDIP. - Tiempo ejecución: 4.5 μs. - Consumo: 3.5mW. - Temperatura de trabajo: -40ºC hasta 125ºC.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 93

Diagrama de bloques del conversor:

Ilustración 48: Diagrama bloques CP4922.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 94

Relación número de pin y puerto:

Ilustración 49: Patillaje CP4922.

Ilustración 50: Simbología y función.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 95

Registro de escritura del conversor MCP4922:

La secuencia de escritura es la siguiente:

Ilustración 51: Secuencia de escritura.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 96

3.1.2.4.2 TLE2425.

El dispositivo TLE2425 nos genera una tensión de 2.5V a partir de una tensión de alimentación de 5V que utilizaremos como tensión de referencia del conversor D/A.

Características:

- Alimentación: 5V - Salida: 2.5V - Consumo: Máximo 20mA. - Baja impedancia: 0.0075Ω.

Posición de las patillas según el empaquetado:

Ilustración 52: Patillas TLE2425.

Relación tensión de entrada tensión de salida:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 97

Ilustración 53: Relación Vi - Vo.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 98

3.1.2.4.3 Conexionado.

El conexionado de la placa se realizara de la siguiente manera:

Color Nº pin MCP4922 Nº pin TLE2425 PIC 32 (Puerto)

Gris 3 - PMD7 (J10)

Verde 4 - SCK1 (J10)

Amarillo 5 - SDO1 (J10)

Blanco 14 - -

Azul 10 - -

Marrón 8 - PMD4 (J10)

Rojo - IN +5V

Negro - COMMON GND

Ilustración 54: Conexiones europlaca.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 99

Ilustración 55: Conexiones europlaca 2.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 100

Ilustración 56: Conexiones europlaca 3.

3.1.2.5 Programa PIC32.

//Librerías incluidas #include <plib.h> // PIC32 Librería Periféricos #include <math.h> //Librería Matemática //CPU #define SYS_FREQ (80000000) #pragma FPLLIDIV = DIV_2, FPLLMUL = MUL_20, FPLLODIV = DIV_1 #define GetPeripheralClock() (SYS_FREQ/(1 << OSCCONbits.PBDIV)) //Puerto digital E modulo bluetooth #define PORTBLUE IOPORT_E #define PINS1 BIT_0 | BIT_1

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 101

#define PINS2 BIT_2 | BIT_3 | BIT_4 //SPI //#define DAC_CS BIT_11 //#define DAC_LDAC BIT_4 //#define DAC_CLK BIT_12 //#define DAC_DI BIT_10 //Comunicación bluetooth #define UART1_BAUD (9600) #define RX_BUFFER_SIZE 8 // Tamaño RX buffer unsigned char rx_buffer[RX_BUFFER_SIZE]; // RX buffer unsigned char SPI[RX_BUFFER_SIZE]; //Buffer para SPI general unsigned char SPI1[4]; //Buffer para SPI2 unsigned char SPI2[4]; //Buffer para SPI2 unsigned int RxCtr = 0; // Contador de caracteres recibidos unsigned char RSFlag = 0; // Bandera que indica si un dato ha sido recibido unsigned int conexión = 0, uart_aux = 0; int i, i_SPI1, i_SPI2, e_1, e_2; /* --------------------------------------------------------------------------------------------------------------------------- */ //FUNCIONES DE UTILIDAD //Función retardo tiempo en ms void delay_ms (unsigned int msec) unsigned int tWait, tStart; tWait = (SYS_FREQ/2000)*msec; tStart = ReadCoreTimer(); while ((ReadCoreTimer()-tStart)<tWait); //Función que convierte un dato recibido por bluetooth y lo convierte a decimal int CharToInt (unsigned char *c_char) int i_SPI = 0, i_cti = 0, i_mul = 0; for (i_cti=0;i_cti<4;i_cti++) i_mul = pow(16,i_cti); if (c_char[i_cti] == '0')i_SPI = i_SPI+0; if (c_char[i_cti] == '1')i_SPI = i_SPI+(4096/i_mul); if (c_char[i_cti] == '2')i_SPI = i_SPI+(8192/i_mul); if (c_char[i_cti] == '3')i_SPI = i_SPI+(12288/i_mul); if (c_char[i_cti] == '4')i_SPI = i_SPI+(16384/i_mul); if (c_char[i_cti] == '5')i_SPI = i_SPI+(20480/i_mul); if (c_char[i_cti] == '6')i_SPI = i_SPI+(24576/i_mul);

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 102

if (c_char[i_cti] == '7')i_SPI = i_SPI+(28672/i_mul); if (c_char[i_cti] == '8')i_SPI = i_SPI+(32768/i_mul); if (c_char[i_cti] == '9')i_SPI = i_SPI+(36864/i_mul); if (c_char[i_cti] == 'A')i_SPI = i_SPI+(40960/i_mul); if (c_char[i_cti] == 'B')i_SPI = i_SPI+(45056/i_mul); if (c_char[i_cti] == 'C')i_SPI = i_SPI+(49152/i_mul); if (c_char[i_cti] == 'D')i_SPI = i_SPI+(53248/i_mul); if (c_char[i_cti] == 'E')i_SPI = i_SPI+(57344/i_mul); if (c_char[i_cti] == 'F')i_SPI = i_SPI+(61440/i_mul); return(i_SPI); //Llamada a ISR, interrupción UART1 void __ISR(_UART1_VECTOR, ipl2)IntUart1Handler(void) if( mU1RXGetIntFlag() ) // Clear the RX interrupt Flag IFS0bits.U1RXIF = 0; // Store the data received rx_buffer[RxCtr] = ReadUART1(); RxCtr++; if (RxCtr == 8) RSFlag = 1; RxCtr = 0; delay_ms(10); void escribe_dac(int dato) mPORTESetBits(BIT_7); mPORTESetBits(BIT_4); mPORTEClearBits(BIT_7); delay_ms(1); putcSPI1(dato); delay_ms(1); mPORTESetBits(BIT_7); mPORTEClearBits(BIT_4); delay_ms(1); mPORTESetBits(BIT_4); delay_ms(1);

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 103

//--------------------------------------------------------------------------------------------------------- //Programa Principal int main(void) SYSTEMConfigPerformance(80000000L);

//Configuración de los contadores OpenTimer1(T1_ON | T1_SOURCE_EXT | T1_PS_1_1, 0X0000); ConfigIntTimer1(T1_INT_OFF); OpenTimer2(T2_ON | T2_SOURCE_EXT | T2_PS_1_1, 0X0000); ConfigIntTimer2(T2_INT_OFF); //Configuración del puerto digital E para modulo bluetooth y SPI mPORTESetPinsDigitalIn(BIT_0 | BIT_1); mPORTESetPinsDigitalOut(BIT_2 | BIT_3 | BIT_4 |BIT_7); //Configuración de la UART1 - Modulo Bluetooth UARTConfigure(UART1,UART_ENABLE_PINS_TX_RX_ONLY);

UARTSetFifoMode(UART1,UART_INTERRUPT_ON_TX_NOT_FULL | UART_INTERRUPT_ON_RX_NOT_EMPTY); UARTSetLineControl(UART1, UART_DATA_SIZE_8_BITS | UART_PARITY_NONE | UART_STOP_BITS_1);

UARTSetDataRate(UART1, GetPeripheralClock(), UART1_BAUD); UARTEnable(UART1, UART_ENABLE_FLAGS(UART_PERIPHERAL | UART_RX | UART_TX));

//Habilitamos las interrupciones para RX y TX INTEnable(INT_U1RX, INT_ENABLED); INTEnable(INT_U1TX, INT_DISABLED); //Prioridad de la UART ISR SetPriorityIntU1(UART_INT_PR2); SetSubPriorityIntU1(UART_INT_SUB_PR0); //Activamos el modo multi-vector INTConfigureSystem(INT_SYSTEM_CONFIG_MULT_VECTOR); //Habilitamos las interrupciones INTEnableInterrupts(); //Configuración de puerto SPI 1

SpiChnOpen(1, SPI_OPEN_MSTEN | SPICON_SSEN | SPICON_CKE | SPI_OPEN_MODE16 | SPICON_ON, 16);

DisableIntSPI1; //Programa escribe_dac(0x17FF); escribe_dac(0x97FF); while(conexión == 0)

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 104

if ((RSFlag == 1)&&(rx_buffer[0]=='#')) putsUART1(rx_buffer); RSFlag = 0; if ((RSFlag == 1)&&(rx_buffer[0]=='?')) RSFlag = 0; conexión = 1; RxCtr = 0; while (conexión == 1) if (RSFlag == 1) strcpy(SPI, rx_buffer); for (i=0;i<9;i++) SPI1[i]=SPI[i]; SPI2[i]=SPI[i+4]; i_SPI1 = CharToInt(SPI1); i_SPI2 = CharToInt(SPI2); escribe_dac(i_SPI1); escribe_dac(i_SPI2); RSFlag = 0; RxCtr = 0; delay_ms(1); else WriteTimer1(0); WriteTimer2(0); ConfigTimer1(T1_ON); ConfigTimer2(T2_ON); delay_ms(100); e_1 = ReadTimer1(); e_2 = ReadTimer2(); ConfigTimer1(T1_OFF); ConfigTimer2(T2_OFF); putsUART1(e_1); putsUART1(e_2); return 0;

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 105

3.1.3 Control distribuido.

A continuación se detallan los elementos constituyentes del control distribuido así como sus características técnicas, valores de configuración, uso, etc.

3.1.3.1 PIC 16F877.

Las características del PIC 16F877 son las siguientes:

- Arquitectura de 8 bits. - Velocidad: hasta 20MHz. - Memoria de programa 8k. - Encapsulado: PDIP. - Número de E/S programables: 33. - Puerto SPI: 1. - Contadores: 3. - Consumo: Máximo 6mA. - Número de pines: 40.

Ilustración 57: PIC16F877.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 106

Relación número de pin y puerto del PIC:

Ilustración 58: PIC16F877 puertos.

Características generales:

Ilustración 59: PIC16F877 características.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 107

Diagrama de bloques:

Ilustración 60: PIC16F877 diagrama de bloques.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 108

3.1.3.2 Comandos uso PIC 16F877.

3.1.3.2.1 Puertos I/O.

Comandos para el uso de puertos digitales:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 109

3.1.3.2.2 Comandos de interrupciones.

Funciones de interrupción:

Interrupciones primarias:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 110

Interrupciones de periféricos:

3.1.3.2.3 Comandos de contadores.

Comandos para el uso de los temporizadores como contadores:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 111

3.1.3.2.4 Comandos de SPI.

Comandos para el uso del puerto SPI:

3.1.3.3 Elementos de la placa.

El circuito eléctrico de la placa contendrá los siguientes elementos:

Resistencias:

- R1: 1kΩ. - R2: 10kΩ. - R3: 330Ω.

Condensadores:

- C1D: Cerámico 2,2μF. - C2D: Cerámico 2,2μF. - C3XTAL: 22pF. - C4XTAL: 22pF. - C5: Cerámico 2,2μF.

Diodos:

- D1: D1N4007. - D2: Diodo verde verde 5mm.

Cristal oscilador:

- CRYSTAL: 20MHz.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 112

Pulsador:

- RESET: Pulsador de 6 patillas.

Zócalos:

- J1 16F877: Zócalo de 40 patillas. - J19 MCP4922: Zócalo de 14 patillas.

TLE2425:

-J16 TLE2425: TLE2425 tensión de referencia.

Conectores:

- J3 PORTB: Conector para CI de 8 pines. - J4 PORTC: Conector para CI de 8 pines. - J5 PORTD: Conector para CI de 8 pines. - J6 PORTA: Conector para CI de 6 pines. - J15 CON5: Conector para CI de 5 pines. - J17 CON4: Conector para CI de 4 pines. - J8 PORTE: Conector para CI de 3 pines. - J13 AB1: Conector para CI de 2 pines. - J14 AB2: Conector para CI de 2 pines. - J2 ALIMENTACION: Conector para CI de 2 pines. - J10 ALIMENTACION: Conector para CI de 2 pines.

Pareja de pines de 2,54mm:

- J7 ENCODER1 - J9 ENCODER2 - J11 ENCAB1 - J12 ENCAB2

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 113

Ilustración 61: Disposición de elementos.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 114

Imagen real de la placa terminada:

Ilustración 62: Imagen real placa 16F877.

3.1.3.4 Conexionado.

El conexionado de cables y puertos de la placa queda de la siguiente manera:

Conectores de alimentación:

- Cable rojo de unos 20 cm para el polo positivo. - Cable negro de unos 20 cm para el polo negativo.

Conector puerto A:

- Bit 4: Cable verde al conector de la entrada A del encoder 1 (conector J15).

Conector puerto B:

- Bit 0: Cable verde a pin 2 del conector J17. - Bit 1: Cable verde a pin 3 del conector J17. - Bit 2: Cable verde a pin 4 del conector J17. - Bit 4: Cable verde a pin 1 del conector J15.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 115

Conector puerto C:

- Bit 0: Cable verde al conector de la entrada A del encoder 2 (conector J14). - Bit 3: Cable de comunicación SPI color verde. - Bit 4: Cable de comunicación SPI color amarillo. - Bit 5: Cable de comunicación SPI color blanco.

Conector puerto D:

- Sin conexiones.

Conector puerto E:

- Sin conexiones.

Los conectores J9 y J7 son los de alimentación de los encoders.

Los conectores J11 y J12 son los de conexión de salida de los encoders.

Conector J17:

- Pin 1: Alimentación, cable rojo que ir junto a los de alimentación de la placa. - Pin 2, 3 y 4: iguales que los del puerto B.

Conector J15:

- Pin 3: Cable amarillo, etapa de potencia entrada S1. - Pin 4: Cable azul, etapa de potencia entrada S2.

3.1.3.5 Programador Enigma.

El programador utilizado para programación del PIC 16F877 es Eclipse, un programador de libre distribución que permite programar microcontroladores PIC entre otros dispositivos.

Para ello, disponemos tanto del hardware como del software.

Entre sus características más importantes destacan:

- Programador con conexión USB al PC. - Funciona tanto en Win XP, como Vista y Win 7. - Programador ICSP, programa con solo cinco cables entre el PIC y el

programador Eclipse.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 116

Ilustración 63: Conexionado programador - PIC.

Ilustración 64: Eclipse hardware, imagen en 3D.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 117

Ilustración 65: Eclipse hardware, imagen real.

Ilustración 66: Eclipse software.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 118

3.1.3.6 Programa 16F877.

3.1.3.6.1 Programa principal. #include "16F877.h" #use delay (clock=20000000) #fuses HS,PUT,NOWDT,NOPROTECT,NOBROWNOUT,NOCPD,NOWRT,NOLVP //------------------- CABECERAS -------------------------------------------- //-------------------------------------------------------------------------- #include "mcp4922.h" #include "control.h" #include "math.h" #include "stdlib.h" #priority ssp #byte SSPCON1=0x0014 #bit SSPOV=SSPCON1.6 //------------------ VARIABLES GLOBALES ------------------------------------ //-------------------------------------------------------------------------- dbyte encodera, encoderb, i; float espacioa, espaciob, vela, velb; dbyte datoa, datob; byte puertoa = 0; // 0 = puerto A, 1 = puerto B byte puertob = 1; byte d=0; dbyte spidata1, spidata2; byte contspirot = 0; byte intspicont = 1; byte spicanal = 0; byte spinum; //------------------- GESTION DE INTERRUPCIONES ---------------------------- //-------------------------------------------------------------------------- #INT_SSP void spi_interrupcion() DISABLE_INTERRUPTS(int_ssp); if (SSPOV) SSPOV = 0; datoa = spi_read(); datoa = 0x7FFF; escribe_dac(puertoa, datoa); disable_interrupts(global); intspicont = 1;

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 119

else if (intspicont == 1) spidata1 = spi_read(); spinum = spidata1; intspicont = intspicont +1; else if (intspicont == 2) spidata2 = spi_read(); spinum = spidata2; for(contspirot=0;contspirot<=7;++contspirot) rotate_left(&spidata2,2); intspicont = 1; if(spicanal==0) datoa = spidata1 + spidata2; escribe_dac(puertoa, datoa); spicanal = 1; if(spicanal==1) datob = spidata1 + spidata2; escribe_dac(puertob, datob); spicanal = 0; ENABLE_INTERRUPTS(int_ssp); //------------------- PROGRAMA PRINCIPAL ----------------------------------- //-------------------------------------------------------------------------- void main() //Configuramos el Timer1 para que funcione como contador setup_timer_1(T1_DISABLED); //Paramos inicialmente el timer por si no lo esta setup_timer_1(T1_EXTERNAL|T1_DIV_BY_1); //Lo configuramos como contador de pulsos y sin preescaler //Configuramos el Timer0 para que funcione como contador setup_timer_0(RTCC_EXT_H_TO_L|RTCC_DIV_1); //Configuracion de los puertos digitales set_tris_c (0x08);

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 120

//Configuracion del puerto SPI setup_spi(SPI_SLAVE|SPI_SS_DISABLED|SPI_L_TO_H); //Configuracion de interrupciones enable_interrupts(global); ENABLE_INTERRUPTS(int_ssp); //Paramos inicialmente la base hasta nuevo aviso datoa = 0x17FF; //Obtenemos a la salida 2.5V datob = 0x97FF; //Obtenemos a la salida 2.5V escribe_dac(puertoa, datoa); escribe_dac(puertob, datob); inicializa_dac(); delay_ms(50); while(1) set_timer0(0); //Ponemos el timer0 a 0 set_timer1(0); //Lo ponemos a 0, habilitamos el timer1 delay_ms(100); //Esperamos un tiempo encodera = get_timer0(); encoderb = get_timer1(); spi_write (encodera); spi_write (encoderb); delay_ms(10);

3.1.3.6.2 Cabecera “MCP4922.h”.

//////////////// Driver para MCP4922 D/A Converter /////////////////////// //// //// //// inicializa_dac() Inicializa MCP4922 DAC una vez configurando //// //// //// //// escribe_dac(canal, long int) Seleccionar el canal y escribir //// //// la palabra de control y el voltaje de //// //// salida de 0 - 4095 con una Vref //// //// de 2.5V para ambos canales. //// //// Canal A = 0; Canal B = 1 //// ///////////////////////////////////////////////////////////////////////// #ifndef EEPROM_SELECT #define DAC_CS PIN_B0 #define DAC_CLK PIN_B1 #define DAC_DI PIN_B2 #define DAC_LDAC PIN_B4

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 121

#endif void inicializa_dac() output_high(DAC_CS); output_high(DAC_LDAC); output_high(DAC_CLK); output_high(DAC_DI); void escribe_dac(int8 canal, int16 dato) BYTE cmd[3]; BYTE i; cmd[0]=dato; cmd[1]=(dato>>8); if (canal == 0) cmd[2]=0x01; if (canal == 1) cmd[2]=0x09; output_high(DAC_LDAC); output_low(DAC_CLK); output_low(DAC_CS); for(i=0; i<=23; ++i) if(i<4 || (i>7 && i<12)) shift_left(cmd,3,0); else output_bit(DAC_DI, shift_left(cmd,3,0)); output_high(DAC_CLK); output_low(DAC_CLK); output_high(DAC_CS); output_low(DAC_LDAC); delay_us(10); output_HIGH(DAC_LDAC);

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 122

3.1.3.6.3 Cabecera “Control.h”.

#include "math.h" #define radio_r 6.0325 byte direc = 0x00; void calcula_velocidad (dbyte &encodera, dbyte &encoderb, float &espacioa, float &espaciob, float &vela, float &velb) set_timer0(0); //Ponemos el timer0 a 0 set_timer1(0); //Lo ponemos a 0, habilitamos el timer1 delay_ms(100); //Esperamos un tiempo encodera = get_timer0(); encoderb = get_timer1(); write_eeprom (direc, encodera); direc = direc+1; write_eeprom (direc, encoderb); direc = direc+1; espacioa = (encodera*PI*radio_r)/200; espaciob = (encoderb*PI*radio_r)/200; vela = espacioa*10; velb = espaciob*10; void control_p (dbyte &tension0a, dbyte &tension0b, dbyte pulsosa, dbyte pulsosb) dbyte errora, errorb, aux1; float aux; dbyte tension1a, tension1b; if (tension0a != 0x17FF) aux = 3*pulsosa; aux = aux/140; if (tension0a < 0x17FF) aux = aux*(-1); aux = aux+2.5; aux = aux*819; tension1a = aux; if (tension0a == 0x1000) tension1a = 65536 - tension1a; errora = tension0a - tension1a - 0x1000; if ((tension0a<0x17FF) && (errora > 30000) && (tension0a != 0x1000))

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 123

errora = 65536 - errora; if ((tension0a>0x17FF) && (errora > 30000)) errora = 65536 - errora; if ((tension0a-0x1000)>=tension1a) aux1 = tension0a - errora; if ((tension0a-0x1000)<tension1a) aux1 = tension0a + errora; if ((tension0a<0x17FF) && ((aux1>0x17FF) || (aux1<0x1000))) tension0a = 0x1000; else if ((tension0a > 0x17FF) && (aux1>0x1FFF)) tension0a = 0x1FFF; else tension0a = aux1; if (tension0b < 0x97FF) aux = 3*pulsosb; aux = aux*(-1); aux = aux/140; aux = aux+2.5; aux = aux*819; tension1b = aux; if (tension0b == 0x9000) tension1b = 65536 - tension1b; errorb = tension0b - 0x9000 - tension1b; if ((errorb > 30000) && (tension0b != 0x9000)) errorb = 65536 - errorb; if ((tension0b-0x9000)>=tension1b) aux1 = tension0b - errorb;

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 124

if ((tension0b-0x9000)<tension1b) aux1 = tension0b + errorb; tension0b = aux1; if ((tension0b>0x97FF) || (tension0b<0x9000)) tension0b = 0x9000; if (tension0b > 0x97FF) aux = 3*pulsosb; aux = aux/140; aux = aux+2.5; aux = aux*819; tension1b = aux; errorb = tension0b - 0x9000 - tension1b; if (errorb > 30000) errorb = 65536 - errorb; if ((tension0b-0x9000)>=tension1b) aux1 = tension0b - errorb; if ((tension0b-0x9000)<tension1b) aux1 = tension0b + errorb; tension0b = aux1; if (tension0b>0x9FFF) tension0b = 0x9FFF;

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 125

3.1.4 Comunicaciones.

A continuación se detallan las comunicaciones empleadas tanto guiadas como no guiadas, así como sus características, protocolos,…

3.1.4.1 Comunicación bluetooth.

Bluetooth es una especificación industrial para Redes Inalámbricas de Área Personal (WPAN) que posibilita la transmisión de voz y datos entre diferentes dispositivos mediante un enlace por radiofrecuencia en la banda ISM de los 2,4 GHz. Los principales objetivos que se pretenden conseguir con esta norma son:

- Facilitar las comunicaciones entre equipos móviles y fijos. - Eliminar cables y conectores entre éstos. - Ofrecer la posibilidad de crear pequeñas redes inalámbricas y facilitar la

sincronización de datos entre equipos personales.

Los dispositivos que con mayor frecuencia utilizan esta tecnología pertenecen a sectores de las telecomunicaciones y la informática personal, como PDA, teléfonos móviles, computadoras portátiles, ordenadores personales, impresoras o cámaras digitales.

Ilustración 67: Bluetooth logo.

3.1.4.1.1 Especificaciones.

Esta diseñado especialmente para dispositivos de bajo consumo, con una cobertura baja y basados en transceptores de bajo costo.

Gracias a este protocolo, los dispositivos que lo implementan pueden comunicarse entre ellos cuando se encuentran dentro de su alcance. Las comunicaciones se realizan por radiofrecuencia de forma que los dispositivos no tienen que estar alineados y pueden incluso estar en habitaciones separadas si la potencia de transmisión lo permite. Estos dispositivos se clasifican como "Clase 1", "Clase 2" o

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 126

"Clase 3" en referencia a su potencia de transmisión, siendo totalmente compatibles los dispositivos de una clase con los de las otras.

Ilustración 68: Clases bluetooth.

En la mayoría de los casos, la cobertura efectiva de un dispositivo de clase 2 se extiende cuando se conecta a un transceptor de clase 1. Esto es así gracias a la mayor sensibilidad y potencia de transmisión del dispositivo de clase 1, es decir, la mayor potencia de transmisión del dispositivo de clase 1 permite que la señal llegue con energía suficiente hasta el de clase 2. Por otra parte la mayor sensibilidad del dispositivo de clase 1 permite recibir la señal del otro pese a ser más débil.

Los dispositivos con Bluetooth también pueden clasificarse según su ancho de banda:

Ilustración 69: Versiones bluetooth.

Las especificaciones fueron formalizados por el Bluetooth Special Interest Group (SIG). El SIG se anunció formalmente el 20 de mayo de 1998. Hoy cuenta con una membresía de más de 14.000 empresas en todo el mundo. Fue creado por Ericsson, IBM, Intel, Toshiba y Nokia, y que posteriormente se sumaron muchas otras compañías. Todas las versiones de los estándares de Bluetooth están diseñadas para la compatibilidad hacia abajo. Que permite que el último estándar cubren todas las versiones anteriores.

Bluetooth v1.0 y v1.0B:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 127

Las versiones 1.0 y 1.0b han tenido muchos problemas, y los fabricantes tenían dificultades para hacer sus productos interoperables. Las versiones 1.0 y 1.0b también se incluyen hardware obligatoria la dirección del dispositivo Bluetooth (BD_ADDR) la transmisión en el proceso de conexión (el anonimato que hace imposible a nivel de protocolo), que fue un gran revés para algunos servicios previstos para su uso en entornos Bluetooth.

Bluetooth v1.1:

- Ratificado como estándar IEEE 802.15.1-2002.

- Muchos errores en las especificaciones 1.0b se corrigieron.

- Añadido soporte para canales no encriptados.

- Indicador de señal recibida (RSSI).

Bluetooth v1.2:

Esta versión es compatible con USB 1.1 y las principales mejoras son las siguientes:

- Una conexión más rápida y Discovery - Salto de frecuencia adaptable de espectro ensanchado (AFH), que mejora la

resistencia a las interferencias de radio frecuencia, evitando el uso de las frecuencias de lleno en la secuencia de saltos.

- Mayor velocidad de transmisión en la práctica, de hasta 721 kbit/s3 , que en v1.1.

- Conexiones Sincrónicas extendidas (ESCO), que mejoran la calidad de la voz de los enlaces de audio al permitir la retransmisión de paquetes corruptos, y, opcionalmente, puede aumentar la latencia de audio para proporcionar un mejor soporte para la transferencia de datos simultánea.

- Host Controller Interface (HCI) el apoyo a tres hilos UART. - Ratificado como estándar IEEE 802.15.1-2005. - Introdujo el control de flujo y los modos de retransmisión de L2CAP.

Bluetooth v2.0 + EDR:

Esta versión de la especificación principal Bluetooth fue lanzado en 2004 y es compatible con la versión anterior 1.2. La principal diferencia es la introducción de una velocidad de datos mejorada (EDR) para acelerar la transferencia de datos. La tasa nominal de EDR es de 3 Mbit / s, aunque la tasa de transferencia de datos práctica es de 2,1 Mbit /s. EDR utiliza una combinación de GFSK y Phase Shift Keying modulación (PSK) con dos variantes, π/4-DQPSK y 8DPSK. EDR puede proporcionar un menor consumo de energía a través de un ciclo de trabajo reducido.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 128

La especificación se publica como "Bluetooth v2.0 + EDR", lo que implica que EDR es una característica opcional. Aparte de EDR, hay otras pequeñas mejoras en la especificación 2.0, y los productos pueden reclamar el cumplimiento de "Bluetooth v2.0" sin el apoyo de la mayor tasa de datos. Por lo menos un dispositivo de estados comerciales "sin EDR Bluetooth v2.0" en su ficha técnica.

Bluetooth v2.1 + EDR:

Bluetooth Core Version especificación 2.1 + EDR es totalmente compatible con 1.2, y fue adoptada por el Bluetooth SIG el 26 de julio de 2007.

La función de titular de la 2.1 es Secure Simple Pairing (SSP): se mejora la experiencia de emparejamiento de dispositivos Bluetooth, mientras que el aumento del uso y la fuerza de seguridad. Vea la sección de enlace de abajo para más detalles.

2.1 permite a otras mejoras, incluida la "respuesta amplia investigación" (EIR), que proporciona más información durante el procedimiento de investigación para permitir un mejor filtrado de los dispositivos antes de la conexión, y oler subrating, lo que reduce el consumo de energía en modo de bajo consumo.

Bluetooth v3.0 + HS:

La versión 3.0 + HS de la especificación principal Bluetooth fue aprobado por el Bluetooth SIG el 21 de abril de 2009. Bluetooth 3.0 + HS soporta velocidades de transferencia de datos teórica de hasta 24 Mbit / s, aunque no a través del enlace Bluetooth sí mismo. En cambio, la conexión Bluetooth se utiliza para la negociación y el establecimiento y el tráfico de datos de alta velocidad se realiza en un colocated 802,11 enlace. Su principal novedad es AMP (Alternate MAC / PHY), la adición de 802,11 como un transporte de alta velocidad. Dos tecnologías se había previsto para AMP:. 802.11, UWB, pero UWB no se encuentra en la especificación.

La parte alta velocidad de la especificación no es obligatoria, y por lo tanto, los dispositivos sólo luce el "+ HS" en realidad se admiten los más de 802.11 de alta velocidad de transferencia de datos. Un dispositivo Bluetooth 3.0, sin el signo "+ HS" sufijo no apoyará a alta velocidad, y necesita sólo admiten una característica introducida en Bluetooth 3.0 + HS (o en CSA1).

Bluetooth v4.0:

El SIG de Bluetooth completado la especificación Bluetooth versión 4.0 Núcleo, que incluye Bluetooth clásico, la velocidad del Bluetooth de alta y protocolos Bluetooth de bajo consumo. Bluetooth de alta velocidad se basa en Wi-Fi, y Bluetooth clásico consta de protocolos Bluetooth legado. Esta versión ha sido adoptada el 30 de junio de 2010. Bluetooth baja energía (BLE) es un subconjunto de Bluetooth v4.0 con una

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 129

pila de protocolo completamente nuevo para la rápida acumulación de enlaces sencillos. Como alternativa a los protocolos estándar de Bluetooth que se introdujeron en Bluetooth v1.0 a v4.0 está dirigido a aplicaciones de potencia muy baja corriendo una célula de la moneda. Diseños de chips permiten dos tipos de implementación, de modo dual, de modo único y mejoradas versiones anteriores.

En una implementación de un solo modo de la pila de protocolo de energía de baja se lleva a cabo únicamente. RSE Nordic Semiconductor y Texas Instruments han dado a conocer solo las soluciones Bluetooth modo de baja energía.

En una puesta en práctica de modo dual, funcionalidad Bluetooth de bajo consumo se integra en un controlador Bluetooth clásico existente. En la actualidad (2011-03) las empresas de semiconductores han anunciado la disponibilidad de chips de cumplimiento de la norma: Atheros, CSR, Broadcom y Texas Instruments. Las acciones de arquitectura compatible con todas las de la radio actual Bluetooth clásico y la funcionalidad que resulta en un aumento del costo insignificante en comparación con Bluetooth Classic. El 12 de junio de 2007, Nokia y Bluetooth SIG anunciaron que Wibree formará parte de la especificación Bluetooth, como una tecnología de muy bajo consumo Bluetooth.

El 17 de diciembre de 2009, el Bluetooth SIG adoptado la tecnología Bluetooth de bajo consumo como el rasgo distintivo de la versión 4.0. Los nombres provisionales Wibree y Bluetooth ULP (Ultra Low energía) fueron abandonados y el nombre BLE se utilizó durante un tiempo. A finales de 2011, los nuevos logotipos "inteligente Bluetooth Ready" para los anfitriones y "Smart Bluetooth" para los sensores se presentó como la cara pública del general BLE.

Costo reducido de un solo modo de fichas, lo que permitirá a los dispositivos altamente integrada y compacta y con una ligera capa de enlace de proporcionar ultra-bajo la operación de energía en modo inactivo, la detección de dispositivos simples y confiables de punto a multipunto de transferencia de datos con avanzadas de ahorro de energía y seguridad conexiones encriptadas con el menor coste posible.

3.1.4.1.2 Información técnica.

La especificación de Bluetooth define un canal de comunicación de máximo 720 kb/s (1 Mbps de capacidad bruta) con rango óptimo de 10 m (opcionalmente 100 m con repetidores).

La frecuencia de radio con la que trabaja está en el rango de 2,4 a 2,48 GHz con amplio espectro y saltos de frecuencia con posibilidad de transmitir en Full Duplex con un máximo de 1600 saltos/s. Los saltos de frecuencia se dan entre un

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 130

total de 79 frecuencias con intervalos de 1Mhz; esto permite dar seguridad y robustez.

La potencia de salida para transmitir a una distancia máxima de 10 metros es de 0 dBm (1 mW), mientras que la versión de largo alcance transmite entre 20 y 30 dBm (entre 100 mW y 1 W).

Para lograr alcanzar el objetivo de bajo consumo y bajo costo, se ideó una solución que se puede implementar en un solo chip utilizando circuitos CMOS. De esta manera, se logró crear una solución de 9×9 mm y que consume aproximadamente 97% menos energía que un teléfono celular común.

El protocolo de banda base (canales simples por línea) combina conmutación de circuitos y paquetes. Para asegurar que los paquetes no lleguen fuera de orden, los slots pueden ser reservados por paquetes síncronos, un salto diferente de señal es usado para cada paquete. Por otro lado, la conmutación de circuitos puede ser asíncrona o síncrona. Tres canales de datos síncronos (voz), o un canal de datos síncrono y uno asíncrono, pueden ser soportados en un solo canal. Cada canal de voz puede soportar una tasa de transferencia de 64 kb/s en cada sentido, la cual es suficientemente adecuada para la transmisión de voz. Un canal asíncrono puede transmitir como mucho 721 kb/s en una dirección y 56 kb/s en la dirección opuesta, sin embargo, para una conexión síncrona es posible soportar 432,6 kb/s en ambas direcciones si el enlace es simétrico.

Arquitectura hardware:

El hardware que compone el dispositivo Bluetooth está compuesto por dos partes:

- un dispositivo de radio, encargado de modular y transmitir la señal

- un controlador digital, compuesto por una CPU, por un procesador de señales digitales (DSP - Digital Signal Processor) llamado Link Controller (o controlador de Enlace) y de las interfaces con el dispositivo anfitrión.

El LC o Link Controller está encargado de hacer el procesamiento de la banda base y del manejo de los protocolos ARQ y FEC de capa física. Además, se encarga de las funciones de transferencia (tanto asíncrona como síncrona), codificación de Audio y cifrado de datos.

El CPU del dispositivo se encarga de atender las instrucciones relacionadas con Bluetooth del dispositivo anfitrión, para así simplificar su operación. Para ello, sobre el CPU corre un software denominado Link Manager que tiene la función de comunicarse con otros dispositivos por medio del protocolo LMP.

Entre las tareas realizadas por el LC y el Link Manager, destacan las siguientes:

- Envío y Recepción de Datos.

- Empaginamiento y Peticiones.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 131

- Determinación de Conexiones.

- Autenticación.

- Negociación y determinación de tipos de enlace.

- Determinación del tipo de cuerpo de cada paquete.

- Ubicación del dispositivo en modo sniff o hold.

3.1.4.1.3 Arquitectura del protocolo.

Una WPAN proporciona los servicios necesarios para la operación en el seno de redes ad hoc. Ello incluye el establecimiento de conexiones síncronas y asíncronas (con o sin conexión) a nivel MAC. El sistema básico está formado por un transceptor de radiofrecuencia, el nivel de banda base y la pila de protocolos Bluetooth, y otorga conectividad a todo un rango de dispositivos.

La especificación principal cubre los cuatro niveles inferiores y sus protocolos asociados junto con el protocolo de descubrimiento de servicios(service discovery protocol, SDP), que toda aplicación Bluetooth necesita, y el perfil de acceso genérico.

Controlador bluetooth:

Los niveles inferiores de la pila de protocolos constituyen el controlador Bluetooth, que contiene los bloques fundamentales de la tecnología, sobre los cuales se apoyan los niveles superiores y los protocolos de aplicación. Este componente está estandarizado y puede interactuar con otros sistemas Bluetooth de más alto nivel, aunque la separación entre ambas entidades no es obligatoria.

El nivel de radiofrecuencia (RF) está formado por el transceptor físico y sus componentes asociados. Utiliza la banda ISM de uso no regulado a 2,4 GHz, lo que facilita la consecución de calidad en la señal y la compatibilidad entre transceptores.

Por encima de él se encuentra el nivel de banda base (baseband, BB), que controla las operaciones sobre bits y paquetes, realiza detección y corrección de errores, broadcast automático y cifrado como sus labores principales. También emite confirmaciones y peticiones de repetición de las transmisiones recibidas.

El tercer y último nivel de base es el nivel de gestión de enlace (link manager, LM), responsable del establecimiento y finalización de conexiones, así como de su autentificación en caso necesario. También realiza el control del tráfico y la planificación, junto con la gestión de consumo y supervisión del enlace.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 132

Anfitrión bluetooth:

El resto de niveles de base y los protocolos de aplicación residen en el anfitrión Bluetooth (también denominado host), que se comunica con el controlador utilizando un interfaz estándar. Ambas entidades pueden integrarse para su uso conjunto en sistemas embebidos, o se pueden utilizar de forma intercambiable. En cualquier caso, se asume que la capacidad de los buffers del controlador es modesta comparada con la del anfitrión, lo que puede tener consecuencias en la gestión de la calidad de servicio (quality of service, QoS) y la disponibilidad de canales, entre otros aspectos.

El nivel más importante del anfitrión es el protocolo de control y adaptación de enlace lógico (logical link control & adaptation protocol, L2CAP), encargado de controlar la comunicación proveniente de niveles superiores y la asocia a los sistemas de transporte de datos (definidos más abajo) multiplexando los canales L2CAP en enlaces lógicos y segmentando las tramas adecuadamente. Puede añadir opcionalmente detección de errores y retransmisión de paquetes a BB, así como control de flujo basado en protocolos de ventana deslizante, asignación de buffers y QoS.

Si bien estos son los componentes fundamentales de un sistema Bluetooth completo, no todos requerirán todas estas funcionalidades (en concreto, sistemas embebidos sencillos); no obstante, todo ello se define como obligatorio. A partir de aquí, las aplicaciones pueden añadir niveles de protocolo para adecuarse a funcionalidades específicas, tales como transmisión de voz o TCP/IP. Estas definiciones de perfiles están fuera del ámbito de la definición principal.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 133

Ilustración 70: Pila de protocolos bluetooth.

3.1.4.1.4 Principios operativos.

El nivel físico opera en la banda ISB de uso no regulado utilizando para ello un transceptor que ejecuta saltos de frecuencia (frequency hopping) en un conjunto amplio de portadoras. Es, por tanto, un sistema de espectro de dispersión basado en saltos (frequency hopping spread spectrum), diseñado para evitar interferencias y empobrecimiento (fading) de la señal. La complejidad del hardware se acota utilizando modulación en frecuencia en su forma binaria, de forma que se alcanzan cotas de transmisión de 1 Mbps (hasta un millón de símbolos, binarios por la modulación, por segundo). Utilizando técnicas de tasa de datos mejorada (enhanced data rate) puede llegarse hasta los 2-3 Mbps.

Un grupo de comunicación puede compartir el canal físico con muchos otros dispositivos, por lo que se sincroniza utilizando un reloj global y un patrón de saltos específico, ambos únicos. Debe haber exactamente un dispositivo maestro que ofrece la referencia de sincronización a partir de su reloj interno; el resto de dispositivos funcionan como esclavos. El reloj del maestro y su dirección de dispositivo única definen el patrón de saltos como una permutación aleatoria de 79 frecuencias en la banda ISM. Algunas de ellas pueden no utilizarse si presentan interferencias frecuentes. Esto favorece la existencia de grupos independientes

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 134

entre sí o diversas piconets que comparten un mismo canal, a la vez que aumenta la tolerancia a sistemas que no cambian nunca sus frecuencias de transmisión.

El canal físico se define a través de slots de tiempo que se utilizan para enviar paquetes entre los dispositivos. Estos envíos se realizan mediante un duplex basado en división de tiempo (time-division duplex), equivalente a Full Duplex.

Las comunicaciones existen como resultado de la interacción entre entidades de alto nivel, que se implementan según sus propias interfaces características y comportamiento definitorio.

- El gestor de recursos de banda base (baseband resource manager) controla el acceso al transceptor y planifica los accesos a los canales físicos definidos, que establece entre los dispositivos que lo solicitan. Incluye también servicios de análisis de las portadoras y los requerimientos de QoS, entre otros.

- El gestor de dispositivos es responsable del dispositivo en sí y de su comportamiento; en definitiva, todo aquello que no está relacionado directamente con el transporte de datos, incluyendo la detección de dispositivos y la gestión de los estados internos de descubrible y conectable.

- El gestor de enlace controla los canales y transportes lógicos junto con los canales físicos; se comunica con otros gestores de enlace utilizando el protocolo de gestor de enlace. También se encarga de la calidad de servicio, el cifrado y el control de la potencia de la transmisión.

- El controlador de enlace genera los paquetes a partir del payload y los parámetros de enlace y transporte, y extrae la información de los que recibe. Realiza el control de flujo, las confirmaciones y las peticiones de retransmisión.

- El controlador de canal coopera con los controladores de enlace tanto locales como remotos para crear canales y conexiones.

- El gestor de recursos de L2CAP gestiona el envío de paquetes a BB y realiza algunas verificaciones sobre los límites establecidos por QoS, si bien la arquitectura supone que las aplicaciones no intentan burlar estos límites, por lo que este control es bastante limitado.

3.1.4.1.5 Módulo eb301.

El sistema eb301 es una solución bluetooth completa que permite un rápido, flexible y potente interface serie para la transferencia punto a punto de todo tipo de información entre dos sistemas informáticos. Basado en el módulo eb101 de la firma A7 Engineering, Inc., hace posible la conexión, mediante enlace por RF, de dos equipos remotos evitando así la conexión de los mismos mediante cables.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 135

Características generales:

- Basado en el módulo eb101 de A7 Engineering Inc.

- Antena integrada en el propio circuito impreso.

- Conectividad con cualquier dispositivo bluetooth.

- Velocidad de transferencia continua de hasta 250K Baudios.

- Bajo consumo para aplicaciones alimentadas con baterías.

- Conector de 2x6 pines con paso 2.54mm para una sencilla conexión con la aplicación.

- Sencillo juego de comandos para las comunicaciones y el control.

- Admite niveles de voltaje de 3.3V/5V (existe una versión para niveles RS232).

- Dispone de taladros para el montaje definitivo sobre la aplicación.

- Se puede conectar directamente con cables USB-Serie estándar para su control directo desde el PC.

Especificaciones generales:

- Potencia del transmisor: +6dBm (máximo) o lo que es lo mismo 4mW.

- Sensibilidad del receptor: -85 dBm. O lo que es lo mismo 5pW.

- Rango de temperatura: -15º a 70ºC.

- Alimentación/niveles: 3.3V para niveles de 3.3V y/o 5V para niveles de 5V (existe una versión para niveles RS232 que se alimenta con 5.5V).

- Consumo: 125μA – 60mA.

- Bluetooth: Versión 2.00.

3.1.4.1.5.1 Dimensiones y patillaje.

La siguiente figura muestra las dimensiones del módulo eb301 y la numeración de sus patillas en el conector de 2x6. Se puede apreciar cómo sobre el mismo se integra el eb101.También se adjunta una imagen con la descripción de patillas.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 136

Ilustración 71: eb301: dimensiones y patillaje.

Ilustración 72: eb301: descripción de las patillas.

3.1.4.1.5.2 Firmware.

El módulo bluetooth eb101 de que consta el interface serie eb301 (en lo sucesivo eb101/eb301) dispone de un firmware interno que proporciona todas las funcionalidades necesarias para establecer una comunicación en escenarios donde dos equipos transfieran información entre sí empleando un enlace mediante RF, eliminando así la conexión de ambos mediante cables. Mediante una serie de sencillos comandos, el diseñador de aplicaciones se abstrae de los detalles propios del protocolo bluetooth y se asegura una correcta configuración y conexión con otros dispositivos basados en el módulo eb101 o con cualquier otro basado en el estándar bluetooth. Todo ello de una forma rápida, sencilla y fiable. El firmware soporta dos modos básicos de operación: El modo datos y el modo comandos. El modo de datos se emplea generalmente para la transferencia de datos entre dos equipos ya conectados o vinculados por RF, sin cables. El modo de

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 137

comandos proporciona un conjunto de comandos que permiten realizar una serie de funciones concretas y configuraciones.

Ilustración 73: eb301: Ejemplos de uso.

El firmware de los dispositivos eb101 viene de fábrica con unos ajustes por defecto:

- Baudios: 9600.

- Paridad: none.

- Flow: none.

- Security: off.

- Name: eb101.

- Passkey: 0000

Mediante los comandos apropiados cualquiera de estos ajustes predeterminados pueden ser modificados por el usuario. Los cambios realizados se mantendrán invariables hasta que se ejecute el comando rst factory, que restaura todos los valores de fábrica por defecto. También podemos restaurar los valores de fábrica por defecto mediante el pulsador. Para ello:

- Mantener accionado el pulsador y conectar la alimentación del dispositivo.

- Mantener el pulsador accionado hasta que el led se apague.

- A parir de ese momento el dispositivo queda en el modo comando (prompt >).

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 138

3.1.4.1.5.3 Led indicador.

Mediante una serie de señales, el led informa del estado del dispositivo eb101/eb301. Estas se describen en la siguiente imagen:

Ilustración 74: eb301: Led indicador.

3.1.4.1.5.4 Conexionado con placa de expansión de puertos.

Para conectar el módulo eb301 con la placa de expansión de puertos del PIC32 se ha fabricado un cable con las siguientes características:

Bluetooth Nombre - Color - Pin placa - Tipo E/S

1 - GND - NEGRO - GND - ALIMENTACION

2 - RMT_SWITCH - VERDE - PMD2 - SALIDA

3 - RTS - AMARILLO - U1RTS - ENTRADA

4 - RMT_LED - BLANCO - PMD0 - ENTRADA

5 - VCC - ROJO - +3.3V - ALIMENTACION

6 - BREAK - MARRON - PMD3 - SALIDA

7 - RXD - AZUL - U1TX - SALIDA

8 --------------------------------------------------------------------------------------------

9 - TXD - NARANJA - U1RX - ENTRADA

10 - STATUS - GRIS - PMD1 - ENTRADA

11 - CTS - MORADO - U1CTS - SALIDA

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 139

12 --------------------------------------------------------------------------------------------------

Los pines PMDO, PMD1, PMD2, PMD3 Y PMD4 corresponden con el puerto digital E (PMDO = BIT_E0, PMD1 = BIT_E1, PMD2 = BIT_E2, PMD3 = BIT_E3).

A continuación se exponen una serie de imágenes del cable fabricado:

Ilustración 75: eb301: cable conexión 1.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 140

Ilustración 76: eb301: cable conexión 2.

Ilustración 77: eb301: cable conexión 3.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 141

3.1.4.1.5.5 Comandos.

Si desea obtener más información acerca de los comandos y mas información acerca del modulo eb301, diríjase a la documentación que se proporciona con esta memoria de proyecto.

3.1.4.1.6 Cable FTDI.

Este cable de la firma FTDI Chip permite convertir un puerto USB en un puerto serie RS232 con señales de niveles TTL.

Ilustración 78: Cable FTDI.

Un extremo del cable se conecta a un puerto USB del PC. El extremo opuesto ofrece 6 conexiones con las 6 señales típicas de un interface RS232 con niveles TTL.

Ilustración 79: Cable FTDI 2.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 142

El conector que transporta esas señales y la distribución de las mismas es estándar y se conecta directamente con las patillas 1,3,5,7,9 y 11 del conector del módulo eb301 tal y como se muestra en la siguiente imagen.

Ilustración 80: Cable FTDI 3.

3.1.4.1.6.1 Experimentación.

Si desea obtener más información acerca de experimentación con el cable FTDI y el modulo eb301, diríjase a la documentación que se proporciona con esta memoria de proyecto.

3.1.4.1.7 Otros módulos.

Otros módulos utilizados en el proyecto son:

- EL módulo que integra el PC desde el que se lleva a cabo el control de la plataforma.

- Un módulo USB genérico.

3.1.4.1.7.1 Módulo integrado en PC.

En este caso se ha realizado el control desde PC mediante un portátil de la marca LG que trae integrado un módulo bluetooth de la marca Broadcom v2.0+EDR.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 143

Ilustración 81: Módulo Broadcom.

3.1.4.1.7.2 Módulo USB.

El módulo externo utilizado es USB NW545.

- Fabricante: Net Way. - Versión bluetooth: 2.0 + EDR. - Clase: 2 (10 metros).

Ilustración 82: NW545.

3.1.4.2 Comunicación SPI.

El Bus SPI (del inglés Serial Peripheral Interface) es un estándar de comunicaciones, usado principalmente para la transferencia de información entre circuitos integrados en equipos electrónicos. El bus de interfaz de periféricos serie o bus SPI es un estándar para controlar casi cualquier dispositivo electrónico digital que acepte un flujo de bits serie regulado por un reloj.

Incluye una línea de reloj, dato entrante, dato saliente y un pin de chip select, que conecta o desconecta la operación del dispositivo con el que uno desea comunicarse. De esta forma, este estándar permite multiplexar las líneas de reloj.

Muchos sistemas digitales tienen periféricos que necesitan existir pero no ser rápidos. La ventajas de un bus serie es que minimiza el número de

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 144

conductores, pines y el tamaño del circuito integrado. Esto reduce el coste de fabricar montar y probar la electrónica. Un bus de periféricos serie es la opción más flexible cuando se tiene tipos diferentes de periféricos serie. El hardware consiste en señales de reloj, data in, data out y chip select para cada circuito integrado que tiene que ser controlado. Casi cualquier dispositivo digital puede ser controlado con esta combinación de señales. Los dispositivos se diferencian en un número predecible de formas. Unos leen el dato cuando el reloj sube otros cuando el reloj baja. Algunos lo leen en el flanco de subida del reloj y otros en el flanco de bajada. Escribir es casi siempre en la dirección opuesta de la dirección de movimiento del reloj. Algunos dispositivos tienen dos relojes. Uno para capturar o mostrar los datos y el otro para el dispositivo interno.

Ilustración 83: Bus SPI: un maestro y un esclavo.

Ilustración 84: Bus SPI: un maestro y varios esclavos.

Ventajas:

- Comunicación Full Duplex. - Mayor velocidad de transmisión que con I²C o SMBus.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 145

- Protocolo flexible en que se puede tener un control absoluto sobre los bits transmitidos.

o No está limitado a la transferencia de bloques de 8 bits. o Elección del tamaño de la trama de bits, de su significado y

propósito. - Su implementación en hardware es extremadamente simple.

o Consume menos energía que I²C o que SMBus debido que posee menos circuitos (incluyendo las resistencias pull-up) y estos son más simples.

o No es necesario arbitraje o mecanismo de respuesta ante fallos. o Los dispositivos clientes usan el reloj que envía el servidor, no

necesitan por tanto su propio reloj. o No es obligatorio implementar un transceptor (emisor y receptor), un

dispositivo conectado puede configurarse para que solo envíe, sólo reciba o ambas cosas a la vez.

- Usa mucho menos terminales en cada chip/conector que una interfaz paralelo equivalente.

- Como mucho una única señal específica para cada cliente (señal SS), las demás señales pueden ser compartidas.

Desventajas:

- Consume más pines de cada chip que I²C, incluso en la variante de 3 hilos. - El direccionamiento se hace mediante líneas específicas (señalización fuera

de banda) a diferencia de lo que ocurre en I²C que se selecciona cada chip mediante una dirección de 7 bits que se envía por las mismas líneas del bus.

- No hay control de flujo por hardware. - No hay señal de asentimiento. El servidor podría estar enviando información

sin que estuviese conectado ningún cliente y no se daría cuenta de nada. - No permite fácilmente tener varios servidores conectados al bus. - Sólo funciona en las distancias cortas a diferencia de, por ejemplo, RS-

232, RS-485 o Bus CAN.

Modos de operación:

Existen cuatro modos de reloj definidos por el protocolo SPI, estos modos son :

- Modo A - Modo B - Modo C

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 146

- Modo D

Estos determinan el valor de la polaridad del reloj (CPOL = Clock Polarity) y el bit de fase del reloj (CPHA = Clock Phase). La mayoría de los dispositivos SPI pueden soportar al menos 2 modos de los 4 antes mencionados.

El BIT de Polaridad del reloj determina el nivel del estado de Idle del reloj y el BIT de Fase de reloj determina que flanco recibe un nuevo dato sobre el bus. El modo requerido para una determinada aplicación, esta dado por el dispositivo esclavo. La capacidad de multi-modo combinada con un simple registro de desplazamiento hace que el bus SPI sea muy versátil.

Polaridad del reloj (CPOL=Clock Polarity) :

Si CPOL está en un 0 lógico y ningún dato está siendo transferido (Estado Idle), el maestro mantiene la línea SCLK en bajo. Si CPOL está en un 1 lógico, el maestro desocupa la línea SCLK alta.

Fase Del Reloj (CPHA) :

CPHA, conjuntamente con CPOL, controlan cuando los nuevos datos son colocados en el bus. Si CPHA es igual a un ‘1’ lógico, los datos son desplazados sobre la línea MOSI según lo determinado por el valor de CPOL.

Para CPHA = 1:

Si CPOL = 1, los nuevos datos se colocados sobre la línea cuando el flanco del reloj es descendente y se leen cuando el flanco del reloj es ascendente .

Si CPOL = 0, los nuevos datos se ponen en la línea cuando el flanco del reloj es ascendente y se leen cuando el reloj tiene un flanco descendente.

Si CPHA = 0, el reloj de cambio es la OR de SCLK con la terminal Chip Select.

Tan pronto como el terminal Chip Select se coloca en un nivel lógico 0, los nuevos datos se ponen en la línea y el primer filo de del reloj se leen los datos. Si CPOL se activa a un nivel lógico ‘1’, el primer borde de reloj baja y los bits de datos subsecuentes se leen en cada filo de bajada sobre la línea de reloj.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 147

Cada nuevo bit se pone en la línea cuando el reloj tiene un flanco ascendente de Reloj. Si CPOL es cero, el primer filo de reloj ascendente y los bits de datos subsecuentes se leen en cada filo ascendente de reloj. Cada nuevo bit se coloca en la línea cuando el filo del reloj baja.

En resumen, Si CPHA=1, la transferencia (datos válidos leídos por el receptor) comienza en el segundo filo de reloj.

Si CPHA=0, la transferencia comienza en el primer filo de reloj. Todas las transferencias subsecuentes dentro del byte ocurren en cada filo de reloj.

Ilustración 85: Bus SPI: modo A.

Ilustración 86: Bus SPI: modo B.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 148

Ilustración 87: Bus SPI: modo C.

Ilustración 88: Bus SPI: modo D.

3.1.4.2.1 Cable de comunicación.

Para comunicar el PIC32 con el PIC 16F877 se ha fabricado un cable para la comunicación SPI.

Partiendo de los materiales:

- Cable apantallado multiconductor (4 cables internos). - 4 pines de 2,54 mm. - Cable termorretractil. - Estaño.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 149

En un extremo se han soldado los cables del cable apantallado a los pines de 2,54mm de la siguiente manera.

Ilustración 89: SPI: cable comunicación.

- Pin 1: Cable de color blanco. - Pin 2: Cable de color marrón. - Pin 3: Cable de color amarillo. - Pin 4: Cable de color verde.

El otro extremo del cable ira soldado al conector del puerto C de la placa de control distribuido como indica en el apartado 3.1.3.4, a excepción del cable marrón que ira conectado a la etapa de potencia a la entrada 0V.

Ilustración 90: SPI: cable de comunicación 2.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 150

3.1.5 Gestión de usuario.

A continuación de detallaran todos los elementos y programas que se utilizan para la gestión y manejo de la plataforma por parte de un usuario.

3.1.5.1 Aplicación en PC.

Una de las formas que tiene el usuario de controlar la plataforma es mediante una aplicación en PC, creada específicamente para este proyecto.

3.1.5.1.1 Borland C++ Builder 5.0 Profesional.

C++Builder es un entorno de desarrollo rápido de aplicaciones en lenguaje C++ para Windows inicialmente propiedad de la empresa Borland, y actualmente de la empresa Embarcadero quien compró de Borland la división Codegear encargada del producto. Codegear inicialmente se denominaba DTG='Developer Tools Group' hasta que adquirió el nombre oficial CodeGear previo a la venta.

C++Builder combina la biblioteca Visual Component Library y el IDE escrito en Delphi con un compilador de C++. El ciclo de lanzamiento es anual.

C++Builder incluye herramientas que permiten verdadero desarrollo visual de arrastrar-y-soltar componentes sobre la aplicación, haciendo el acto de programar algo mucho más fácil al incorporar constructor de interfaz gráfica WYSIWYG en su IDE.

Ilustración 91: C++ Builder 5.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 151

Ventajas:

- Usa el concepto de RAD: Rapid Application Develpment, Desarrollo Rápido de Aplicaciones.

- Gran cantidad de componentes incluidos en la distribución básica (más de 200 vs menos de 20 en un entorno Visual Basic 6).

- La biblioteca VCL y el código generado usan código nativo lo que le permite ejecutarse con gran velocidad.

- El compilador de C++ es de reciente actualización, incluye soporte al estándar ISO C++98, C++0x y TR1.

- Soporta las reconocidas bibliotecas Boost. - Actualizado anualmente. El roadmap de la compañía prevé versiones para

OSX y Linux.

Se ha elegido este entorno de desarrollo porque es fácil de usar, intuitiva, ya se poseía experiencia anterior y además existe un versión gratuita descargable de la página del desarrollador Embarcadero, donde podemos bajar la versión 5.5 gratis.

Página web: http://edn.embarcadero.com/article/20633#

3.1.5.1.2 Código.

//--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "U_Software.h" #define __WINDOWS_COM__ #include "com/serial.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; AnsiString Puerto, Puertoeb, aux, M1, M2, auxvisual; int i_aux, i_rec; //Usado como contador int Baudios, Baudioseb; char Parametros[3], Parametroseb[3], D_Rec[50], c_CC[8], aux_Rec[50], D_eb[300]; char paradaemer[8], aux_eb[300]; bool config_error, config_erroreb, conexion=false;

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 152

HANDLE h_fd, eb_fd; DCB dbc_Conf, eb_Conf; int i_env, y, x, aux_xy; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) //--------------------------------------------------------------------------- void __fastcall TForm1::Salir1Click(TObject *Sender) Close_Port(h_fd); Form1->Close(); //--------------------------------------------------------------------------- void __fastcall TForm1::FormCreate(TObject *Sender) Form1->Width=1200; Form1->Height=650; Form1->Top=70; Form1->Left=50; PageControl1->Width=1180; PageControl1->Height=590; PageControl1->Left=0; PageControl1->Top=0; BitBtn1->Width=83; BitBtn1->Height=33; BitBtn1->Left=1096; BitBtn1->Top=554; Configuracion->TabVisible=false; Control->TabVisible=false; eb101->TabVisible=false; Historico->TabVisible=false; Button1->Top=530; Button1->Left=1000; strcpy(c_CC, "@0A5F8H0"); strcpy(paradaemer, "17FF97FF"); //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) Configuracion->TabVisible=true; PageControl1->ActivePage=Configuracion; //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) config_error = false;

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 153

if (CBCOM->Text == "Seleccione")ShowMessage("Falta datos: COM"); config_error=true; if (CBBau->Text == "Seleccione")ShowMessage("Falta datos: Baudios"); config_error=true; if (CBCaract->Text == "Seleccione")ShowMessage("Falta datos: Tranmision"); config_error=true; if (config_error==false) Button3->Visible=true; Establececomunicacion1->Enabled=true; MConfig->Lines->Clear(); MConfig->Lines->Add("COM: " + Puerto); MConfig->Lines->Add("Baudios: " + CBBau->Text); MConfig->Lines->Add("Trama: " + CBCaract->Text); int i_aux = Puerto.Length (); char* c_COM = new char[i_aux+1]; strcpy (c_COM, Puerto.c_str ()); h_fd=Open_Port( c_COM ); Configure_Port(h_fd,Baudios,Parametros); dbc_Conf = Get_Configure_Port(h_fd); else config_error=false; ShowMessage("Configuracion incorrecta"); Button3->Visible=false; //--------------------------------------------------------------------------- void __fastcall TForm1::CBCOMChange(TObject *Sender) if (CBCOM->Text=="COM1") Puerto="COM1"; if (CBCOM->Text=="COM2") Puerto="COM2"; if (CBCOM->Text=="COM3") Puerto="COM3"; if (CBCOM->Text=="COM4") Puerto="COM4"; if (CBCOM->Text=="COM5") Puerto="COM5"; if (CBCOM->Text=="COM6") Puerto="COM6"; if (CBCOM->Text=="COM7") Puerto="COM7"; if (CBCOM->Text=="COM8") Puerto="COM8"; if (CBCOM->Text=="COM9") Puerto="COM9"; if (CBCOM->Text=="COM10") Puerto="COM10"; if (CBCOM->Text=="COM11") Puerto="COM11"; if (CBCOM->Text=="COM12") Puerto="COM12"; if (CBCOM->Text=="COM13") Puerto="COM13"; if (CBCOM->Text=="COM14") Puerto="COM14"; if (CBCOM->Text=="COM15") Puerto="COM15"; if (CBCOM->Text=="COM16") Puerto="COM16"; //---------------------------------------------------------------------------

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 154

void __fastcall TForm1::CBBauChange(TObject *Sender) if (CBBau->Text == "300")Baudios=300; if (CBBau->Text == "600")Baudios=600; if (CBBau->Text == "1200")Baudios=1200; if (CBBau->Text == "2400")Baudios=2400; if (CBBau->Text == "4800")Baudios=4800; if (CBBau->Text == "9600")Baudios=9600; if (CBBau->Text == "19200")Baudios=19200; if (CBBau->Text == "36400")Baudios=36400; if (CBBau->Text == "57600")Baudios=57600; if (CBBau->Text == "115200")Baudios=115200; if (CBBau->Text == "230400")Baudios=230400; if (CBBau->Text == "460800")Baudios=460800; //--------------------------------------------------------------------------- void __fastcall TForm1::CBCaractChange(TObject *Sender) if (CBCaract->Text == "8N1")Parametros[1]='8';Parametros[2]='N';Parametros[3]='1'; if (CBCaract->Text == "7E1")Parametros[1]='7';Parametros[2]='E';Parametros[3]='1'; if (CBCaract->Text == "7O1")Parametros[1]='7';Parametros[2]='O';Parametros[3]='1'; if (CBCaract->Text == "7S1")Parametros[1]='7';Parametros[2]='S';Parametros[3]='1'; //--------------------------------------------------------------------------- void __fastcall TForm1::Button4Click(TObject *Sender) CBBau->Text="9600"; CBCaract->Text="8N1"; //--------------------------------------------------------------------------- void __fastcall TForm1::BitBtn2Click(TObject *Sender) ShowMessage("8N1: Trama=8, Paridad=No, Stop=1\r" "7E1: Trama=7, Paridad=Par, Stop=1\r" "7O1: Trama=7, Paridad=Impar, Stop=1\r" "7S1: Trama=7, Paridad=SPACE, Stop=1"); //--------------------------------------------------------------------------- void __fastcall TForm1::Button3Click(TObject *Sender) char* B_Comu = new char[1]; aux = c_CC[0]; strcpy (B_Comu, aux.c_str ()); i_env = 1; Write_Port(h_fd,B_Comu,1); M_Enviado->Lines->Add(B_Comu);

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 155

IO_Blocking(h_fd,FALSE); T_Tout->Enabled=true; //--------------------------------------------------------------------------- void __fastcall TForm1::Button5Click(TObject *Sender) i_rec=Gets_Port(h_fd,D_Rec,50); M_Recibido->Lines->Add(D_Rec); if(i_rec!=0)MRec->Lines->Add(D_Rec); //--------------------------------------------------------------------------- void __fastcall TForm1::Timer1Timer(TObject *Sender) IO_Blocking(h_fd,FALSE); Timer1->Enabled=false; strcpy (aux_Rec, D_Rec); i_rec=Gets_Port(h_fd,D_Rec,50); M_Recibido->Lines->Add(D_Rec); if(i_rec!=0) if (strcmp(aux_Rec, D_Rec)!=0 && strcmp("ACK", D_Rec)!=0) if (RBManual->Checked) MRec->Lines->Add(D_Rec); Timer1->Enabled=true; //--------------------------------------------------------------------------- void __fastcall TForm1::RBVisualClick(TObject *Sender) RBVisual->Checked=true; if(conexion==true) Panel1->Enabled=false; EEnv->Enabled=false; Button6->Enabled=false; Button7->Enabled=false; Button8->Enabled=false; RGRec->Enabled=false; Button5->Enabled=false; BitBtn3->Enabled=false; Timer1->Enabled=false; Shape1->Enabled=true; Button13->Enabled=true;

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 156

TB_Giro->Enabled=true; TB_Vel->Enabled=true; Panel2->Enabled=true; //--------------------------------------------------------------------------- void __fastcall TForm1::RBManualClick(TObject *Sender) RBManual->Checked=true; if(conexion==true) Panel2->Enabled=false; Panel1->Enabled=true; EEnv->Enabled=true; Button6->Enabled=true; Button7->Enabled=true; Button8->Enabled=true; RGRec->Enabled=true; BitBtn3->Enabled=true; Shape1->Enabled=false; Button13->Enabled=false; TB_Giro->Enabled=false; TB_Vel->Enabled=false; Timer1->Enabled=true; if (RGRec->ItemIndex==0)Button5->Enabled=false; if (RGRec->ItemIndex==1)Button5->Enabled=true; //--------------------------------------------------------------------------- void __fastcall TForm1::Button7Click(TObject *Sender) if(EEnv->Text.Length()== 8) aux=EEnv->Text; if(strcmp(aux.c_str(), "17FF97FF")==0) Shape3->Brush->Color=clRed; Label13->Caption="Sistema Parado"; else Shape3->Brush->Color=clLime;

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 157

Label13->Caption="Sistema en Marcha"; char* B_Envio = new char[1]; aux = EEnv->Text.SubString(1,1); i_env = 2; strcpy (B_Envio, aux.c_str ()); Write_Port(h_fd,B_Envio,1); M_Enviado->Lines->Add(B_Envio); Timer2->Enabled=true; else ShowMessage("Error datos de envio: deben ser 8 caracteres"); //--------------------------------------------------------------------------- void __fastcall TForm1::RGRecClick(TObject *Sender) if (RGRec->ItemIndex==0)Button5->Enabled=false;Timer1->Enabled=true; if (RGRec->ItemIndex==1) Button5->Enabled=true; ShowMessage("La transmision se puede saturar"); Timer1->Enabled=false; //--------------------------------------------------------------------------- void __fastcall TForm1::BitBtn3Click(TObject *Sender) ShowMessage("La forma de envio de un dato es: xxxx%zzzz\r" "Donde:\r" "xxxx: numero en hexadecimal de movimineto del motor DD\r" "%: carater de segundo dato\r" "zzzz: numero en hexadecimal de movimineto del motor DI"); //--------------------------------------------------------------------------- void __fastcall TForm1::Button6Click(TObject *Sender) Timer1->Enabled=false; Button6->Enabled=false; Button8->Enabled=true; Button8->Caption="R&eanudar lectura datos"; //---------------------------------------------------------------------------

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 158

void __fastcall TForm1::Button8Click(TObject *Sender) Timer1->Enabled=true; Button6->Enabled=true; Button8->Enabled=false; //--------------------------------------------------------------------------- void __fastcall TForm1::Beb101Click(TObject *Sender) eb101->TabVisible=true; PageControl1->ActivePage=eb101; //--------------------------------------------------------------------------- void __fastcall TForm1::Button10Click(TObject *Sender) CBBaueb->Text="9600"; CBTReb->Text="8N1"; //--------------------------------------------------------------------------- void __fastcall TForm1::Button9Click(TObject *Sender) config_erroreb = false; if (CBCOMeb->Text == "Seleccione")ShowMessage("Falta datos: COM"); config_error=true; if (CBBaueb->Text == "Seleccione")ShowMessage("Falta datos: Baudios"); config_error=true; if (CBTReb->Text == "Seleccione")ShowMessage("Falta datos: Tranmision"); config_error=true; if (config_error==false) MConfigeb->Lines->Clear(); MConfigeb->Lines->Add("COM: " + Puertoeb); MConfigeb->Lines->Add("Baudios: " + CBBaueb->Text); MConfigeb->Lines->Add("Trama: " + CBTReb->Text); int i_auxeb = Puertoeb.Length (); char* c_COMeb = new char[i_auxeb+1]; strcpy (c_COMeb, Puertoeb.c_str ()); eb_fd = Open_Port( c_COMeb ); Configure_Port(eb_fd,Baudioseb,Parametroseb); eb_Conf = Get_Configure_Port(eb_fd); T_ebRec->Enabled=true; Button12->Visible=true; Button11->Enabled=true; Liberarpuerto1->Enabled=true; else

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 159

config_error=false; ShowMessage("Configuracion incorrecta"); //--------------------------------------------------------------------------- void __fastcall TForm1::CBCOMebChange(TObject *Sender) if (CBCOMeb->Text=="COM1") Puertoeb="COM1"; if (CBCOMeb->Text=="COM2") Puertoeb="COM2"; if (CBCOMeb->Text=="COM3") Puertoeb="COM3"; if (CBCOMeb->Text=="COM4") Puertoeb="COM4"; if (CBCOMeb->Text=="COM5") Puertoeb="COM5"; if (CBCOMeb->Text=="COM6") Puertoeb="COM6"; if (CBCOMeb->Text=="COM7") Puertoeb="COM7"; if (CBCOMeb->Text=="COM8") Puertoeb="COM8"; if (CBCOMeb->Text=="COM9") Puertoeb="COM9"; if (CBCOMeb->Text=="COM10") Puertoeb="COM10"; if (CBCOMeb->Text=="COM11") Puertoeb="COM11"; if (CBCOMeb->Text=="COM12") Puertoeb="COM12"; if (CBCOMeb->Text=="COM13") Puertoeb="COM13"; if (CBCOMeb->Text=="COM14") Puertoeb="COM14"; if (CBCOMeb->Text=="COM15") Puertoeb="COM15"; if (CBCOMeb->Text=="COM16") Puertoeb="COM16"; //--------------------------------------------------------------------------- void __fastcall TForm1::CBBauebChange(TObject *Sender) if (CBBaueb->Text == "300")Baudioseb=300; if (CBBaueb->Text == "600")Baudioseb=600; if (CBBaueb->Text == "1200")Baudioseb=1200; if (CBBaueb->Text == "2400")Baudioseb=2400; if (CBBaueb->Text == "4800")Baudioseb=4800; if (CBBaueb->Text == "9600")Baudioseb=9600; if (CBBaueb->Text == "19200")Baudioseb=19200; if (CBBaueb->Text == "36400")Baudioseb=36400; if (CBBaueb->Text == "57600")Baudioseb=57600; if (CBBaueb->Text == "115200")Baudioseb=115200; if (CBBaueb->Text == "230400")Baudioseb=230400; if (CBBaueb->Text == "460800")Baudioseb=460800; //--------------------------------------------------------------------------- void __fastcall TForm1::CBTRebChange(TObject *Sender) if (CBTReb->Text == "8N1")Parametroseb[1]='8';Parametroseb[2]='N';Parametroseb[3]='1'; if (CBTReb->Text == "7E1")Parametroseb[1]='7';Parametroseb[2]='E';Parametroseb[3]='1'; if (CBTReb->Text == "7O1")Parametroseb[1]='7';Parametroseb[2]='O';Parametroseb[3]='1'; if (CBTReb->Text == "7S1")Parametroseb[1]='7';Parametroseb[2]='S';Parametroseb[3]='1';

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 160

//--------------------------------------------------------------------------- void __fastcall TForm1::Timer2Timer(TObject *Sender) Timer2->Enabled=false; char* B2_Envio = new char[1]; aux=EEnv->Text.SubString(i_env,1); strcpy (B2_Envio, aux.c_str ()); Write_Port(h_fd,B2_Envio,1); M_Enviado->Lines->Add(B2_Envio); i_env = i_env+1; if (i_env != 9) Timer2->Enabled=true; //--------------------------------------------------------------------------- void __fastcall TForm1::BitBtn1Click(TObject *Sender) Close_Port(h_fd); //--------------------------------------------------------------------------- void __fastcall TForm1::T_ToutTimer(TObject *Sender) T_Tout->Enabled=false; aux=c_CC[i_env]; char* B2_Comu = new char[1]; strcpy (B2_Comu, aux.c_str ()); Write_Port(h_fd,B2_Comu,1); M_Enviado->Lines->Add(B2_Comu); i_env = i_env+1; if (i_env != 9) T_Tout->Enabled=true; else if (i_env == 9) T_Tread->Enabled=true; //--------------------------------------------------------------------------- void __fastcall TForm1::T_TreadTimer(TObject *Sender) T_Tread->Enabled=false;

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 161

Read_Port(h_fd,D_Rec,8); aux=D_Rec; if (strcmp(c_CC, D_Rec)==0) i_env = 1; Write_Port(h_fd, "?", 1); M_Enviado->Lines->Add("?"); T_TOK->Enabled=true; else ShowMessage("Fallo de establecimiento de configuracion"); //--------------------------------------------------------------------------- void __fastcall TForm1::Edit1MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_Ayuda->Lines->Clear(); M_Ayuda->Lines->Add("Probando"); //--------------------------------------------------------------------------- void __fastcall TForm1::Label1MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_Ayuda->Lines->Clear(); M_Ayuda->Lines->Add("Ayuda para: Seleccione Puerto Serie (COM)."); M_Ayuda->Lines->Add("Seleccione el en ComboBox el puerto serie (COM) al que este vinculado su dispositivo bluetooth."); //--------------------------------------------------------------------------- void __fastcall TForm1::Label11MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_Ayuda->Lines->Clear(); M_Ayuda->Lines->Add("Para obtener ayuda de un elemento, posicione el raton encima y aparecera en el siguiente recuadro."); //--------------------------------------------------------------------------- void __fastcall TForm1::Label2MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_Ayuda->Lines->Clear(); M_Ayuda->Lines->Add("Ayuda para: Seleccione Baudios."); M_Ayuda->Lines->Add("Seleccione el en ComboBox la velocidad en baudios a la transmite su dispositivo bluetooth.");

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 162

//--------------------------------------------------------------------------- void __fastcall TForm1::Label3MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_Ayuda->Lines->Clear(); M_Ayuda->Lines->Add("Ayuda para: Seleccione Transmision."); M_Ayuda->Lines->Add("Seleccione el en ComboBox la configuracion de transmision que utiliza su dispositivo bluetooth."); //--------------------------------------------------------------------------- void __fastcall TForm1::Button4MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_Ayuda->Lines->Clear(); M_Ayuda->Lines->Add("Ayuda para: Valor por Defecto."); M_Ayuda->Lines->Add("Al pulsar el boton, te cambia automaticamente los valores de Baudios y Configuracion de Tranmision a los valores por defecto: "); M_Ayuda->Lines->Add("Baudios: 9800"); M_Ayuda->Lines->Add("Configuracion: 8N1"); //--------------------------------------------------------------------------- void __fastcall TForm1::Button2MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_Ayuda->Lines->Clear(); M_Ayuda->Lines->Add("Ayuda para: Configurar."); M_Ayuda->Lines->Add("Al pulsar el boton, configura el puerto serie que tenemos vinculado con nuestro dispositivo bluetooth para que nos podamos comunicar con el."); //--------------------------------------------------------------------------- void __fastcall TForm1::Label6MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_Ayuda->Lines->Clear(); M_Ayuda->Lines->Add("Ayuda para: Valores de configuracion"); M_Ayuda->Lines->Add("En el cuadro mostrara con que valores se ha configurado el puerto serie que vamos a utilizar."); //--------------------------------------------------------------------------- void __fastcall TForm1::Label4MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_Ayuda->Lines->Clear(); M_Ayuda->Lines->Add("Ayuda para: Valores por defecto");

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 163

M_Ayuda->Lines->Add("En el cuadro muestra que valores tiene por defecto la configuracion del puerto serie que debemos utilizar, siempre y cuando no se haya cambiado."); //--------------------------------------------------------------------------- void __fastcall TForm1::Beb101MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_Ayuda->Lines->Clear(); M_Ayuda->Lines->Add("Ayuda para: eb101: configurar"); M_Ayuda->Lines->Add("Al pulsar el boton, nos llevara a la pestaña correspondiento donde podemos configurar el modulo eb101 externo."); //--------------------------------------------------------------------------- void __fastcall TForm1::T_TOKTimer(TObject *Sender) T_TOK->Enabled=false; Write_Port(h_fd,"?",1); M_Enviado->Lines->Add("?"); i_env = i_env+1; if (i_env != 8) T_TOK->Enabled=true; else if (i_env == 8) Control->TabVisible=true; Modomanual1->Enabled=true; Modovisual1->Enabled=true; eb101->TabVisible=true; Historico->TabVisible=true; Abrirhistoricoenviado1->Enabled=true; GuardarEnviado1->Enabled=true; Abrirhistoricorecibido1->Enabled=true; GuardarRecibido1->Enabled=true; BorrarTodo1->Enabled=true; PageControl1->ActivePage=Control; Timer1->Enabled=true; Button2->Enabled=false; Button3->Enabled=false; Button4->Enabled=false; Shape1->Enabled=false; Button13->Enabled=false; TB_Giro->Enabled=false; TB_Vel->Enabled=false; Shape2->Brush->Color=clLime; Label12->Caption="Sistema con conexion"; BitBtn5->Enabled=true; Panel1->Enabled=true;

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 164

conexion=true; //--------------------------------------------------------------------------- void __fastcall TForm1::BitBtn5Click(TObject *Sender) i_env = 2; char* B_Emergencia = new char[1]; aux = paradaemer[0]; strcpy (B_Emergencia, aux.c_str ()); M_Enviado->Lines->Add(B_Emergencia); i_env = 2; Write_Port(h_fd,B_Emergencia,1); T_PE->Enabled=true; TB_Vel->Position=0; TB_Giro->Position=0; Shape4->Left=185; Shape4->Top=185; E_M1->Text="17FF"; E_M2->Text="97FF"; Shape3->Brush->Color=clRed; Label13->Caption="Sistema Parado"; //--------------------------------------------------------------------------- void __fastcall TForm1::T_PETimer(TObject *Sender) T_PE->Enabled=false; char* B2_Emergencia = new char[1]; aux = paradaemer[i_env-1]; strcpy (B2_Emergencia, aux.c_str ()); M_Enviado->Lines->Add(B2_Emergencia); Write_Port(h_fd,B2_Emergencia,1); i_env = i_env+1; if (i_env != 9) T_PE->Enabled=true; //--------------------------------------------------------------------------- void __fastcall TForm1::Habilitarpestaa2Click(TObject *Sender) Control->TabVisible=true; PageControl1->ActivePage=Control; Modomanual1->Enabled=true; Modovisual1->Enabled=true;

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 165

//--------------------------------------------------------------------------- void __fastcall TForm1::Habilitarpestaa3Click(TObject *Sender) eb101->TabVisible=true; PageControl1->ActivePage=eb101; N6->Enabled=true; Configurar2->Enabled=true; //--------------------------------------------------------------------------- void __fastcall TForm1::Habilitarpestaa4Click(TObject *Sender) Historico->TabVisible=true; PageControl1->ActivePage=Historico; Abrirhistoricoenviado1->Enabled=true; GuardarEnviado1->Enabled=true; Abrirhistoricorecibido1->Enabled=true; GuardarRecibido1->Enabled=true; BorrarTodo1->Enabled=true; //--------------------------------------------------------------------------- void __fastcall TForm1::Habilitarpestaa1Click(TObject *Sender) Configuracion->TabVisible=true; PageControl1->ActivePage=Configuracion; //--------------------------------------------------------------------------- void __fastcall TForm1::BitBtn6Click(TObject *Sender) M_Enviado->Lines->Clear(); //--------------------------------------------------------------------------- void __fastcall TForm1::BitBtn7Click(TObject *Sender) M_Recibido->Lines->Clear(); //--------------------------------------------------------------------------- void __fastcall TForm1::BorrarTodo1Click(TObject *Sender) M_Enviado->Lines->Clear(); M_Recibido->Lines->Clear(); //---------------------------------------------------------------------------

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 166

void __fastcall TForm1::BitBtn8Click(TObject *Sender) if (SalvarE->Execute()) M_Enviado->Lines->SaveToFile(SalvarE->FileName); //--------------------------------------------------------------------------- void __fastcall TForm1::BitBtn10Click(TObject *Sender) if (SalvarR->Execute()) M_Recibido->Lines->SaveToFile(SalvarR->FileName); //--------------------------------------------------------------------------- void __fastcall TForm1::BitBtn9Click(TObject *Sender) if (AbrirE->Execute()) M_Enviado->Lines->Clear(); M_Enviado->Lines->LoadFromFile(AbrirE->FileName); //--------------------------------------------------------------------------- void __fastcall TForm1::BitBtn11Click(TObject *Sender) if (AbrirR->Execute()) M_Recibido->Lines->Clear(); M_Recibido->Lines->LoadFromFile(AbrirR->FileName); //--------------------------------------------------------------------------- void __fastcall TForm1::Shape1MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) Edit3->Text=(Y-150)*-1; Edit2->Text=X-150; //--------------------------------------------------------------------------- void __fastcall TForm1::T_ebRecTimer(TObject *Sender) IO_Blocking(eb_fd,FALSE);

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 167

T_ebRec->Enabled=false; strcpy(aux_eb, D_eb); i_rec=Gets_Port(eb_fd,D_eb,300); M_ebRec->Lines->Add(D_eb); if(i_rec!=0) if (strcmp(aux_eb, D_eb)!=0) M_ebRec->Lines->Add(D_eb); T_ebRec->Enabled=true; //--------------------------------------------------------------------------- void __fastcall TForm1::Button12Click(TObject *Sender) Close_Port(eb_fd); T_ebRec->Enabled=false; //--------------------------------------------------------------------------- void __fastcall TForm1::Button11Click(TObject *Sender) aux=EEnv->Text; char* B_ebEnvio = new char[1]; aux = E_ebEnv->Text.SubString(1,1); i_env = 2; strcpy (B_ebEnvio, aux.c_str ()); Write_Port(eb_fd,B_ebEnvio,1); M_Enviado->Lines->Add(B_ebEnvio); T_ebE->Enabled=true; //--------------------------------------------------------------------------- void __fastcall TForm1::T_ebETimer(TObject *Sender) T_ebE->Enabled=false; char* B2_ebEnvio = new char[1]; aux=E_ebEnv->Text.SubString(i_env,1); strcpy (B2_ebEnvio, aux.c_str ()); Write_Port(eb_fd,B2_ebEnvio,1); M_Enviado->Lines->Add(B2_ebEnvio); i_env = i_env+1; if (i_env != 9) T_ebE->Enabled=true; //---------------------------------------------------------------------------

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 168

void __fastcall TForm1::Label5MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_ebAyuda->Lines->Clear(); M_ebAyuda->Lines->Add("Ayuda para: Seleccione Puerto Serie (COM)."); M_ebAyuda->Lines->Add("Seleccione el en ComboBox el puerto serie (COM) al que este vinculado su dispositivo bluetooth eb301."); //--------------------------------------------------------------------------- void __fastcall TForm1::Label8MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_ebAyuda->Lines->Clear(); M_ebAyuda->Lines->Add("Ayuda para: Seleccione Baudios."); M_ebAyuda->Lines->Add("Seleccione el en ComboBox la velocidad en baudios a la transmite su dispositivo bluetooth eb301."); //--------------------------------------------------------------------------- void __fastcall TForm1::Label9MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_ebAyuda->Lines->Clear(); M_ebAyuda->Lines->Add("Ayuda para: Seleccione Transmision."); M_ebAyuda->Lines->Add("Seleccione el en ComboBox la configuracion de transmision que utiliza su dispositivo bluetooth eb301."); //--------------------------------------------------------------------------- void __fastcall TForm1::Button10MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_ebAyuda->Lines->Clear(); M_ebAyuda->Lines->Add("Ayuda para: Valor por Defecto."); M_ebAyuda->Lines->Add("Al pulsar el boton, te cambia automaticamente los valores de Baudios y Configuracion de Tranmision a los valores por defecto: "); M_ebAyuda->Lines->Add("Baudios: 9800"); M_ebAyuda->Lines->Add("Configuracion: 8N1"); //--------------------------------------------------------------------------- void __fastcall TForm1::Button9MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_ebAyuda->Lines->Clear(); M_ebAyuda->Lines->Add("Ayuda para: Configurar."); M_ebAyuda->Lines->Add("Al pulsar el boton, configura el puerto serie que tenemos vinculado con nuestro dispositivo bluetooth eb301 para que nos podamos comunicar con el.");

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 169

//--------------------------------------------------------------------------- void __fastcall TForm1::Button12MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_ebAyuda->Lines->Clear(); M_ebAyuda->Lines->Add("Ayuda para: Liberar puerto."); M_ebAyuda->Lines->Add("Al pulsar el boton, liberamos el puerto serie que tenemos vinculado con nuestro dispositivo bluetooth eb301."); //--------------------------------------------------------------------------- void __fastcall TForm1::Button11MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_ebAyuda->Lines->Clear(); M_ebAyuda->Lines->Add("Ayuda para: Enviar."); M_ebAyuda->Lines->Add("Al pulsar el boton, enviamos un comando a nuestro dispositivo bluetooth eb301."); //--------------------------------------------------------------------------- void __fastcall TForm1::E_ebEnvMouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_ebAyuda->Lines->Clear(); M_ebAyuda->Lines->Add("Ayuda para: Comando a enviar."); M_ebAyuda->Lines->Add("Aqui escribimos el comando que deseamos enviar a nuestro dispositivo eb301."); //--------------------------------------------------------------------------- void __fastcall TForm1::Label18MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_ebAyuda->Lines->Clear(); M_ebAyuda->Lines->Add("Ayuda para: Recibido."); M_ebAyuda->Lines->Add("Nos aparece representado la respuesta del que el modulo eb301 ofrece a nuestros comandos"); //--------------------------------------------------------------------------- void __fastcall TForm1::Label10MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_ebAyuda->Lines->Clear(); M_ebAyuda->Lines->Add("Ayuda para: Valores de configuracion"); M_ebAyuda->Lines->Add("En el cuadro mostrara con que valores se ha configurado el puerto serie que vamos a utilizar.");

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 170

//--------------------------------------------------------------------------- void __fastcall TForm1::Image2MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) M_ebAyuda->Lines->Clear(); M_ebAyuda->Lines->Add("Ayuda para: Conexion cable FTDI"); M_ebAyuda->Lines->Add("La imagen nos muestra como conectar el cable FTDI al modulo eb301"); //--------------------------------------------------------------------------- void __fastcall TForm1::TB_VelChange(TObject *Sender) if (TB_Vel->Position*-1 <= 2047) TB_Giro->Max = 2047-TB_Vel->Position*-1; TB_Giro->Min = TB_Giro->Max*-1; else TB_Giro->Max = TB_Vel->Position*-1-2047; TB_Giro->Min = TB_Giro->Max*-1; E_M1->Text= M1.IntToHex(TB_Vel->Position*-1+4096,4); E_M2->Text= M2.IntToHex(TB_Vel->Position*-1+36864,4); Shape4->Top = 185 + (2047-TB_Vel->Position*-1)/13.65; //--------------------------------------------------------------------------- void __fastcall TForm1::TB_GiroChange(TObject *Sender) Shape4->Left = 185 + TB_Giro->Position/13.65; if ((TB_Giro->Position<0)&&(TB_Vel->Position*-1>2047)) E_M1->Text = M1.IntToHex(TB_Vel->Position*-1+TB_Giro->Position+4096,4); if ((TB_Giro->Position<0)&&(TB_Vel->Position*-1<2047)) E_M1->Text = M1.IntToHex(TB_Vel->Position*-1-TB_Giro->Position+4096,4); if ((TB_Giro->Position>0)&&(TB_Vel->Position*-1>2047)) E_M2->Text = M2.IntToHex(TB_Vel->Position*-1-TB_Giro->Position+36864,4);

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 171

if ((TB_Giro->Position>0)&&(TB_Vel->Position*-1<2047)) E_M2->Text = M2.IntToHex(TB_Vel->Position*-1+TB_Giro->Position+36864,4); //--------------------------------------------------------------------------- void __fastcall TForm1::Button13Click(TObject *Sender) auxvisual=E_M1->Text+E_M2->Text; aux=auxvisual; if(strcmp(aux.c_str(), "17FF97FF")==0) Shape3->Brush->Color=clRed; Label13->Caption="Sistema Parado"; else Shape3->Brush->Color=clLime; Label13->Caption="Sistema en Marcha"; char* B_Enviov = new char[1]; aux = auxvisual.SubString(1,1); i_env = 2; strcpy (B_Enviov, aux.c_str ()); Write_Port(h_fd,B_Enviov,1); M_Enviado->Lines->Add(B_Enviov); T_Visual->Enabled=true; //--------------------------------------------------------------------------- void __fastcall TForm1::T_VisualTimer(TObject *Sender) T_Visual->Enabled=false; char* B2_Enviov = new char[1]; aux=auxvisual.SubString(i_env,1); strcpy (B2_Enviov, aux.c_str ()); Write_Port(h_fd,B2_Enviov,1); M_Enviado->Lines->Add(B2_Enviov); i_env = i_env+1; if (i_env != 9) T_Visual->Enabled=true; //---------------------------------------------------------------------------

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 172

3.1.5.1.3 Librería puerto serie.

La biblioteca "Linux Communication" (LnxComm) está diseñada para brindar un apoyo a los programadores que estén relacionados con el diseño y construcción de hardware. LnxComm nos permite crear una conexión con el puerto serie mediante unas pocas lineas de código. Otra de las ventajas de esta biblioteca es que nos permite crear programas que podrán ser compilados en sistemas operativos GNU-LINUX y WINDOWS brindando así mayor portabilidad a nuestros programas. La biblioteca está completamente desarrollada en Lenguaje C.

A continuación se exponen las funciones que nos ofrece la librería:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 173

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 174

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 175

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 176

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 177

3.1.5.2 Aplicación en teléfono móvil.

Otra de las formas que tiene el usuario de controlar la plataforma es mediante una aplicación en un teléfono móvil, descargada gratuitamente. La contra de este método es que el usuario tiene que estar experimentado en el uso de la plataforma.

3.1.5.2.1 Sistema operativo Android.

Android es un sistema operativo móvil basado en Linux, que junto con aplicaciones middleware está enfocado para ser utilizado en dispositivos móviles como teléfonos inteligentes, tabletas, Google TV y otros dispositivos. Es desarrollado por la Open Handset Alliance, la cual es liderada por Google. Este sistema por lo general maneja aplicaciones como Market (Marketing) o su actualización, PlayStore.

Fue desarrollado inicialmente por Android Inc., una firma comprada por Google en 2005. Es el principal producto de la Open Handset Alliance, un conglomerado de fabricantes y desarrolladores de hardware, software y operadores de servicio.10 Las unidades vendidas de teléfonos inteligentes con Android se ubican en el primer puesto en los Estados Unidos, en el segundo y tercer trimestres de 2010, con una cuota de mercado de 43,6% en el tercer trimestre. A nivel mundial alcanzó una cuota de mercado del 50,9% durante el cuarto trimestre de 2011, más del doble que el segundo sistema operativo (iOS de iPhone) con más cuota.

Tiene una gran comunidad de desarrolladores escribiendo aplicaciones para extender la funcionalidad de los dispositivos. A la fecha, se han sobrepasado las 400.000 aplicaciones (de las cuales, dos tercios son gratuitas) disponibles para la tienda de aplicaciones oficial de Android: Google Play, sin tener en cuenta aplicaciones de otras tiendas no oficiales para Android, como pueden ser la App Store de Amazon o la tienda de aplicaciones Samsung Apps de Samsung. Google Play es la tienda de aplicaciones en línea administrada por Google, aunque existe la

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 178

posibilidad de obtener software externamente. Los programas están escritos en el lenguaje de programaciónJava. No obstante, no es un sistema operativo libre de malware, aunque la mayoría de ello es descargado de sitios de terceros.

El anuncio del sistema Android se realizó el 5 de noviembre de 2007 junto con la creación de la Open Handset Alliance, un consorcio de 78 compañías de hardware, software y telecomunicaciones dedicadas al desarrollo de estándares abiertos para dispositivos móviles. Google liberó la mayoría del código de Android bajo la licencia Apache, una licencia libre y de código abierto.

La estructura del sistema operativo Android se compone de aplicaciones que se ejecutan en un framework Java de aplicaciones orientadas a objetos sobre el núcleo de las bibliotecas de Java en una máquina virtual Dalvik con compilación en tiempo de ejecución. Las bibliotecas escritas en lenguaje C incluyen un administrador de interfaz gráfica (surface manager), un framework OpenCore, una base de datos relacional SQLite, una Interfaz de programación de API gráfica OpenGL ES 2.0 3D, un motor de renderizado WebKit, un motor gráfico SGL, SSL y una biblioteca estándar de C Bionic. El sistema operativo está compuesto por 12 millones de líneas de código, incluyendo 3 millones de líneas de XML, 2,8 millones de líneas de lenguaje C, 2,1 millones de líneas de Java y 1,75 millones de líneas de C++.

Ilustración 92: Android.

3.1.5.2.2 Aplicación S2 Bluetooth Terminal2.

Esta aplicación es para Android OS2.1 o posterior. Se conecta con el dispositivo Bluetooth mediante RFCOMM(SPP). Es reprogramación de BluetoothChat (código de ejemplo de android.com). Se puede descargar gratuitamente desde Android Market del propio teléfono móvil.

Ilustración 93: S2 Bluetooth Terminal2.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 179

3.2 Cálculos.

3.2.1 Cálculo de velocidad de motores y plataforma.

Ilustración 94: Cálculo 1.

Velocidad del vehículo:

- 43.524 in/sec = 110.55 cm/sec = 3.96 km/h

3.2.2 Cálculo de la resistencia del led de la placa de control distribuido.

Datos iniciales:

- Tensión de alimentación: 5V. - Tensión del diodo: 1.7V. - Corriente del diodo: 10mA.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 180

Ilustración 95: Cálculo 2.

3.3 Anexos de aplicación en el ámbito del proyecto distintos de los indicados en el documento básico: “Estudios con entidad propia”.

No existen anexos de aplicación en el ámbito del proyecto distintos a los indicados en el documento Estudios con entidad propia.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 181

3.4 Otros documentos.

3.4.1 Manuales de usuario.

Se han desarrollado unos manuales de ayuda para el usuario.

3.4.1.1 Manual de usuario para control desde PC.

Este manual este diseñado para comenzar a utilizar la plataforma desde un PC para nuevos usuarios con un programa de software creado específicamente para ello..

3.4.1.1.1 Necesidades iniciales.

Inicialmente se necesitará:

- Un ordenador con Window XP, Vista o 7. - Que el ordenador disponga de comunicación blutooth ya sea integrada o por

USB. - Tener vinculado el modulo eb101 con el teléfono a utilizar (la contraseña de

vinculación es 0000).

3.4.1.1.2 Conexión con la plataforma.

Abrimos el programa de software de usuario específico para este proyecto y lo primero que nos encontramos es la pestaña de bienvenida:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 182

Ilustración 96: Software Plataforma.

Pulsamos en Continuar y pasaremos a la pestaña de establecimiento de la comunicación.

Ilustración 97: Software Plataforma 2.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 183

Aquí disponemos de varios botones, combobox y cuadros de dialogo que pasaremos a comentar a continuación.

Ilustración 98: Software Plataforma 3.

Zona 1: Combobox de configuración del puerto.

Podemos seleccionar el puerto donde tenemos vinculado el modulo bluetooth (en nuestro caso COM4).

Podemos seleccionar los baudios de comunicación (por defecto 9600).

Podemos configurar el tipo de transmisión (por defecto 8N1).

Si pulsamos en el botón ? obtendremos la ayuda para el tipo de transmisión:

Ilustración 99: Software Plataforma 4.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 184

Zona 2: Botón Por Defecto. Nos cambia, al pinchar, los valores por defecto que tenemos en la zona 1 (Baudios: 9600, Transmisión: 8N1).

Zona 3: Botón Configurar. Una vez que tenemos seleccionados los valores de la Zona 1, pinchamos en el botón para configurar el puerto que vamos a usar.

Zona 4: Cuadro de ayuda. En este cuadro, aparecerán diálogos de ayuda con solo posicionar el ratón encima de los nombres de los botones, combobox o cuadros.

Zona 5: Valores de configuración y valores por defecto.

En el cuadro de valores por defecto, tenemos los valores predefinidos si no se han variado las configuraciones.

En el cuadro valores de configuración aparecerán, una vez pulsado el botón Configurar, los valores que se están usando en la comunicación con el puerto.

Zona 6: Botón eb101: configurar. Con este botón, pasaremos directamente a la pestaña de configuración del eb101 desde donde podremos variar sus parámetros. Se explicará más adelante.

Imagen de nuestra configuración:

Ilustración 100: Software Plataforma 5.

Una vez configurado el puerto si no ha habido errores, aparecerá un nuevo botón:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 185

Ilustración 101: Software Plataforma 6.

Este botón, es el de Establecer Comunicación que nos permitirá conectarnos con la plataforma.

3.4.1.1.3 Control de la plataforma.

Una vez establecida la comunicación con la plataforma, automáticamente sino existen errores se habilitarán todas las pestañas y nos llevara a la pestaña de control:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 186

Ilustración 102: Software Plataforma 7.

Lo primero que llama la atención es un cuadro verde en el que pone Sistema con conexión. Si es sistema perdiese la conexión el cuadro se tornaría rojo y aparecerá Sistema sin conexión.

Debajo tenemos un cuadro rojo que pone Sistema Parado. Cuando la plataforma este parada aparecerá así, mientras en el momento en el que enviemos un dato de movimiento, tornará verde y pondrá Sistema en movimiento.

Existen dos zonas diferenciadas en la pestaña: Modo Manual y Modo Visual.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 187

Ilustración 103: Software Plataforma 8.

La Zona 1 es la zona del Modo Manual y la Zona 4 es la zona del Modo Visual.

En cuanto a la Zona 1 (Modo Manual):

Zona 2: Zona de envio de datos. Escribiremos el dato en el cuadro de texto y pulsaremos en botón Enviar. El tipo de dato que debemos enviar lo podemos ver pulsando en el botón ?:

Ilustración 104: Software Plataforma 9.

Los valores variaran hexadecimalmente entre 000 y FFF siendo:

- 7FF: motor parado. - FFF: motor a máxima tensión hacia adelante. - 000: motor a máxima tensión hacia atrás.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 188

Zona 3: Zona de recepción de datos. Aquí se muestran los valores leídos de los encoders. Podemos parar la lectura o comenzarla una vez parada con los botones de la parte inferior.

En el modo de recibo de datos, podemos poner la lectura manual o automática. No es recomendable ponerla manual ya que se puede saturar de datos la pila de entrada del puerto.

Por ejemplo, ponemos la plataforma a máxima velocidad:

Ilustración 105: Software Plataforma 10.

El sistema se pone en marcha:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 189

Ilustración 106: Software Plataforma 11.

Recibimos la lectura de los encoders:

Ilustración 107: Software Plataforma 12.

En cuanto a la Zona 4 (Modo Visual):

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 190

Zona 5: Zona de representación de trayectoria. En el cuadro existe un punto negro que nos indica la trayectoria teórica que va a seguir la plataforma. Los cuadros de texto denominados X e Y nos muestras las coordenadas del punto dentro del recuadro siendo 150 el máximo y -150 en mínimo.

Zona 6: Barra de velocidad. Con esta barra se puede regular la velocidad en línea recta de la plataforma.

Zona 7: Barra de giro. Con esta barra podemos regular el giro que realiza la plataforma.

Zona 8: Botón Enviar. Al pulsarlo enviaremos los datos de movimiento a la plataforma que estén representados en las barras de velocidad y giro.

Zona 9: Representación de dato enviado. En los cuadros se representa la velocidad enviada a los motores en código hexadecimal.

Movemos la barra de velocidad:

Ilustración 108: Software Plataforma 13.

Y la barra de velocidad:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 191

Ilustración 109: Software Plataforma 14.

Otras zonas que podemos apreciar:

Zona 10: Representación de lectura de los encoders. Aquí se muestras las lecturas de los encoders tanto en Modo Manual como en Modo Visual.

Zona 11: Botón parada de emergencia. Este botón para automáticamente la plataforma.

Pulsamos el botón de parada de emergencia:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 192

Ilustración 110: Software Plataforma 15.

3.4.1.1.4 Configuración eb101.

En la pestaña eb101, podemos conectarnos a través del cable FTDI con el módulo eb101 desde la propia aplicación y poder varias sus parámetros.

Ilustración 111: Software Plataforma 16.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 193

Al igual que en la pestaña de Configuración, aquí podemos seleccionar la configuración del puerto.

En los combobox seleccionamos el número de puerto, su velocidad en baudios y el tipo de transmisión que tenemos.

El botón Por Defecto nos pondrá automáticamente la velocidad a 9600 baudios y el tipo de transmisión en 8N1.

Una vez que tengamos seleccionados los parámetros, pulsamos en botón Configurar.

Disponemos de un cuadro de texto para enviar comandos al módulo eb101. Para saber que comandos enviar, revise la documentación del eb101.

En el memo se mostrarán los datos recibidos del módulo al PC.

En la imagen, se puede apreciar cómo se conecta el cable al módulo.

Cuadro de ayuda. En este cuadro, aparecerán diálogos de ayuda con solo posicionar el ratón encima de los nombres de los botones, combobox o cuadros.

3.4.1.1.5 Histórico de datos.

La última pestaña es un histórico de datos donde se pueden ver los datos recibidos y enviados en dos memos diferentes.

El usuario tiene la posibilidad de borrar los memos, guardarlos o carga un histórico:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 194

Ilustración 112: Software Plataforma 17.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 195

3.4.1.2 Manual de usuario para control desde teléfono móvil.

Este manual este diseñado para comenzar a utilizar la plataforma desde un teléfono móvil para usuarios ya experimentados en el uso de dicha plataforma.

3.4.1.2.1 Necesidades iniciales.

Inicialmente necesitamos una serie de requisitos:

- Tener experiencia previa en el uso de la plataforma, para conocer como se mueve y como se comporta.

- Teléfono móvil con comunicación bluetooth. - App para el teléfono que nos permita comunicaciones bluetooth. - Tener vinculado el modulo eb101 con el teléfono a utilizar (la contraseña de

vinculación es 0000).

En este manual se ha utilizado:

- Terminal Samsung Galaxy Spica (i5700) con sistema operativo Android 2.1. - App: S2 Terminal Bluetooth2.

A continuación se enseñara como descargar la aplicación desde el teléfono y como enviar los comandos necesarios para la inicialización de la comunicación con la plataforma y que comandos son necesarios para que se mueva.

3.4.1.2.2 Descarga de la aplicación.

Una vez que disponemos de conexión de datos en el móvil o conexión WIFI nos disponemos a descargar la aplicación.

Para ello, entramos en la App Market de Android:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 196

Ilustración 113: Market Android.

Y buscamos S2 Bluetooth Terminal2:

Ilustración 114: Market Android 2.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 197

Una vez encontrada la App, la descargamos gratuitamente:

Ilustración 115: Market Android 3.

Ya tenemos lista la App para poder trabajar con ella.

3.4.1.2.3 Conexión con la plataforma.

Lo primero que hacemos en conectar la conexión bluetooth de nuestro teléfono móvil. Si no lo hemos hecho al iniciar la aplicación nos aparecerá lo siguiente:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 198

Ilustración 116: S2 Bluetooth Terminal2.

Pulsamos en Si y se nos conectara la comunicación bluetooth automáticamente.

Una vez que ya tenemos la aplicación abierta no estamos conectados a ningún dispositivo:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 199

Ilustración 117: S2 Bluetooth Terminal2 2.

Para conectarnos al modulo de la plataforma, desplegamos el menú de la aplicación y pulsamos en Connect a device:

Ilustración 118: S2 Bluetooth Terminal2 3.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 200

Se nos desplegará a continuación la lista de dispositivos que tenemos vinculados con el dispositivo móvil. Pulsamos en eb101:

Ilustración 119: S2 Bluetooth Terminal2 4.

Ahora ya tenemos conexión directa con la plataforma.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 201

Ilustración 120: S2 Bluetooth Terminal2 5.

3.4.1.2.4 Establecimiento de la comunicación y uso.

Una vez establecida la conexión, deberemos sincronizarnos manualmente con la plataforma.

Para ello deberemos enviar una trama con las siguientes características:

- La trama tendrá 8 caracteres ASCII. - El primer carácter de la trama siempre deberá ser @ de lo contrario no

conseguiremos que la plataforma lo identifique. - Los 7 siguientes caracteres pueden ser cualquier carácter ASCII imprimible.

Por ejemplo: en este caso enviamos @010101234:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 202

Ilustración 121: S2 Bluetooth Terminal2 6.

La plataforma nos devolverá la trama enviada para que verifiquemos que todo ha llegado bien y que la comunicación funciona correctamente:

Ilustración 122: S2 Bluetooth Terminal2 7.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 203

Una vez comprobado que las tramas son iguales, deberemos enviar una trama de confirmación que dispondrá de:

- La trama será de 8 caracteres ASCII. - El primer carácter siempre será una ? de lo contrario no conseguiremos que

la plataforma lo identifique. - Los 7 siguientes caracteres pueden ser cualquier carácter ASCII imprimible.

Por ejemplo: en este caso enviamos ????????:

Ilustración 123: S2 Bluetooth Terminal2 8.

Ahora no nos devolverá nada y la plataforma estará lista para recibir comandos de movimiento para los motores.

Para el movimiento de los motores deberemos tener en cuenta lo siguiente:

- La trama de envío se compondrá de 8 caracteres ASCII. - El primer carácter siempre es un 1 y el quinto carácter siempre es un 9:

1xxx9yyy. - Los valores de xxx e yyy serán los que nos variaran la tensión a los motores

de a cuerdo a: o Los valores variaran hexadecimalmente entre 000 y FFF siendo:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 204

7FF: motor parado. FFF: motor a máxima tensión hacia adelante. 000: motor a máxima tensión hacia atrás.

o Pudiendo tomar cualquier valor hexadecimal entre 000 y FFF.

Después de enviar la trama de movimiento, la plataforma nos devolverá la lectura de los encoders.

Secuencia de ejemplo:

- Enviamos 17FF97FF que nos para la plataforma:

Ilustración 124: S2 Bluetooth Terminal2 9.

- Recibimos la lectura de los encoders:

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 205

Ilustración 125: S2 Bluetooth Terminal2 10.

- Enviamos 1FFF9FFF que nos pone los motores a máxima tensión hacia

adelante:

Ilustración 126: S2 Bluetooth Terminal2 11.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 206

- Recibimos lectura de los encoders:

Ilustración 127: S2 Bluetooth Terminal2 12.

- Enviamos 17FF97FF que nos para los motores:

Ilustración 128: S2 Bluetooth Terminal2 13.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 207

- Recibimos lectura de los encoders:

Ilustración 129: S2 Bluetooth Terminal2 14.

- Enviamos 10009000 que nos pone los motores a máxima tensión hacia atrás:

Ilustración 130: S2 Bluetooth Terminal2 15.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 208

- Recibimos lectura de los encoders:

Ilustración 131: S2 Bluetooth Terminal2 16.

NOTA: Se deben de enviar los caracteres ASCII de uno en uno, ya que la pila del PIC32 es solo de 4 bytes y puede saturarse.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Anexos Página 209

3.4.2 Contenido del CD.

A continuación se detalla la información anexa en el CD ordenada por carpetas:

DOCUMENTO:

Carpeta que contiene este documento.

ANEXOS:

Carpeta que contiene anexos de especial relevancia por la importancia en este proyecto.

DATASHEETS: Carpeta que contiene los datasheets de los componentes utilizados asi como guias y manuales de uso de los mismos.

DISEÑO DE PLACAS: Carpeta que contiene los archivos generados por ORCAD para la creación de las placas de control distribuido.

MANUALES USUARIO: Carpeta que contiene los manuales de usuario separados del documento.

PROGRAMA PIC32: Carpeta que contiene el programa que se ejecuta en el PIC32.

PROGRAMA PIC 16F877: Carpeta que contiene el programa que se ejecuta en el PIC 16F877.

SOFTWARE DE PC: Carpeta que contiene el software con el que el usuario puede la plataforma desde PC.

PLANOS:

Carpeta que contiene todos los planos en formato PDF por separado del documento.

4 Planos

Director: D. Carlos Elvira Izurrategui Departamento de Ingeniería Eléctrica Universidad de La Rioja Alumno: Adrián Madorrán Ibáñez Ingeniería Técnica Industrial especializada en Electrónica Industrial Universidad de La Rioja Título: Control y programación de una plataforma móvil

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Planos Página 211

Índice de planos 4 Planos ……………………………………………………………………………………………………………..210

4.1 Circuito eléctrico de la placa de control distribuido: P1…………………………………… 212

4.2 Circuito impreso para la placa de control distribuido: P2…………………………………. 213

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Planos Página 212

4.1 Circuito eléctrico de la placa de control distribuido: P1.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Planos Página 213

4.2 Circuito impreso para la placa de control distribuido: P2.

5 Pliego de condiciones

Director: D. Carlos Elvira Izurrategui Departamento de Ingeniería Eléctrica Universidad de La Rioja Alumno: Adrián Madorrán Ibáñez Ingeniería Técnica Industrial especializada en Electrónica Industrial Universidad de La Rioja Título: Control y programación de una plataforma móvil

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Pliego de condiciones Página 215

Índice del pliego de condiciones 5 Pliego de condiciones……………………………………………………………………………………….. 214

5.1 Especificaciones de materiales y elementos constitutivos del objeto del proyecto. ………………………………………………………………………………………………………………………….. 216

5.1.1 Listado completo………………………………………………………………………………….. 216

5.1.2 Calidades mínimas a exigir……………………………………………………………………. 221

5.1.3 Pruebas y ensayos a que debe someterse……………………………………………. 222

5.2 Reglamentación y normativa aplicable incluyendo recomendaciones y normas de no obligado cumplimiento……………………………………………………………………………………………… 222

5.3 Aspectos del contrato……………………………………………………………………………………….. 222

5.3.1 Documentación base para la contratación de su materialización…………. 223

5.3.2 Limitaciones en los suministros…………………………………………………………… 223

5.3.3 Criterios para las modificaciones al proyecto original…………………………… 225

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Pliego de condiciones Página 216

5.1 Especificaciones de materiales y elementos constitutivos del objeto del proyecto.

5.1.1 Listado completo.

A continuación se expondrá un listado completo de materiales y elementos constitutivos del objeto del Proyecto:

CÓDIGO UD RESUMEN REND. MED. TOTAL ____________________________________________________________________________________________ M01 u KIT A4WD1V2 ROBOT C01 PLATAFORMA 1,000 1,000 1,000 __________

1,000 M02 u CONECTOR HEXAGONAL DE 12MM A 6MM C01 PLATAFORMA 1,000 1,000 1,000 __________

1,000 M03 u CABLE CONECTOR BATERÍA CON CONMUTADOR C01 PLATAFORMA 1,000 1,000 1,000 __________

1,000 M04 u MOTOR 7.2V 50:1 175RPM C01 PLATAFORMA 4,000 1,000 4,000 __________

4,000 M05 u RUEDA TODOTERRENO C01 PLATAFORMA 2,000 1,000 2,000 __________

2,000 M06 u ENCODER DIGITAL C01 PLATAFORMA 4,000 1,000 4,000 __________

4,000 M07 u ETAPA DE POTENCIA SABERTOOTH 2X5A C01 PLATAFORMA 2,000 1,000 2,000 __________

2,000 M08 u BATERÍA LIPO 3.7V 2100 MAH C01 PLATAFORMA 4,000 1,000 4,000 __________

4,000 M09 u CONECTOR TAMIYA C01 PLATAFORMA 2,000 1,000 2,000 __________

2,000 M10 u PIC32 STARTER KIT C02 CONTROL PRINCIPAL 1,000 1,000 1,000 __________

1,000

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Pliego de condiciones Página 217

M11 u STARTER KIT I/O EXPANSION BOARD C02 CONTROL PRINCIPAL 1,000 1,000 1,000 __________

1,000 M12 u TIRA DE 32 PINES TORNEADOS C02 CONTROL PRINCIPAL 5,000 1,000 5,000 __________

5,000 M13 u PIC16F877 C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M14 u PLACA COBRE PARA INSOLAR 70X85MM C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M15 u ZÓCALO 40 PATILLAS C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M16 u ZÓCALO 14 PATILLAS C02 CONTROL PRINCIPAL 1,000 1,000 1,000 C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

3,000 M17 u MCP4922 C02 CONTROL PRINCIPAL 1,000 1,000 1,000 C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

3,000 M18 u TLE2425 C02 CONTROL PRINCIPAL 1,000 1,000 1,000 C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

3,000 M19 u LED VERDE 5MM C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M20 u RESISTENCIA 330 OHMS C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M21 u RESISTENCIA 1K OHMS C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M22 u RESISTENCIA 10K OHMS C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M23 u DIODO D1N4007 C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M24 u CONDENSADOR CERÁMICO 2.2uF C03 CONTROL DISTRIBUIDO 6,000 1,000 6,000 __________

6,000

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Pliego de condiciones Página 218

M25 u CONDENSADOR CERÁMICO 22pF C03 CONTROL DISTRIBUIDO 4,000 1,000 4,000 __________

4,000 M26 u CRISTAL OSCILADOR 20 MHZ C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M27 u PULSADOR 6 PATILLAS Y 2 POSICIONES C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M28 u CONECTOR CI MACHO 8 PINES C03 CONTROL DISTRIBUIDO 6,000 1,000 6,000 __________

6,000 M29 u CONECTOR CI HEMBRA 8 PINES C03 CONTROL DISTRIBUIDO 6,000 1,000 6,000 __________

6,000 M30 u CONECTOR CI MACHO 6 PINES C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M31 u CONECTOR CI HEMBRA 6 PINES C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 C04 COMUNICACIONES 2,000 1,000 2,000 __________

4,000 M32 u CONECTOR CI MACHO 5 PINES C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M33 u CONECTOR CI HEMBRA 5 PINES C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M34 u CONECTOR CI MACHO 4 PINES C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M35 u CONECTOR CI HEMBRA 4 PINES C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M36 u CONECTOR CI MACHO 3 PINES C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M37 u CONECTOR CI HEMBRA 3 PINES C03 CONTROL DISTRIBUIDO 2,000 1,000 2,000 __________

2,000 M38 u CONECTOR CI MACHO 2 PINES C03 CONTROL DISTRIBUIDO 8,000 1,000 8,000 __________

8,000

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Pliego de condiciones Página 219

M39 u CONECTOR CI HEMBRA 2 PINES C03 CONTROL DISTRIBUIDO 8,000 1,000 8,000 __________

8,000 M40 u PIN CABLE PARA CONECTOR CI C03 CONTROL DISTRIBUIDO 41,000 1,000 41,000 __________

41,000 M41 u PIN 2,54MM C03 CONTROL DISTRIBUIDO 16,000 1,000 16,000 C04 COMUNICACIONES 3,000 1,000 3,000 __________

19,000 M42 u TORNILLO DE ACERO PHILIPS 4X12MM C03 CONTROL DISTRIBUIDO 6,000 1,000 6,000 __________

6,000 M43 u TUERCA ACERO 4MM C03 CONTROL DISTRIBUIDO 6,000 1,000 6,000 __________

6,000 M44 u MÓDULO BLUETOOTH EB301 C04 COMUNICACIONES 1,000 1,000 1,000 __________

1,000 M45 u CABLE FTDI C04 COMUNICACIONES 1,000 1,000 1,000 __________

1,000 M46 u USB BLUETOOTH NW545 C04 COMUNICACIONES 1,000 1,000 1,000 __________

1,000 M47 m CABLE APANTALLADO MULTICONDUCTOR C04 COMUNICACIONES 0,600 1,000 0,600 __________

0,600 M48 m CABLE DOBLE COBRE C01 PLATAFORMA 0,300 1,000 0,300 __________

0,300 M49 u CARGADOR BATERIAS LIPO C05 ELEMENTOS AUXILIARES 1,000 1,000 1,000 __________

1,000 M50 m CABLE MULTIFIBRILAR ROJO C05 ELEMENTOS AUXILIARES 0,300 1,000 0,300 __________

0,300 M51 m CABLE MULTIFIBRILAR NEGRO C05 ELEMENTOS AUXILIARES 0,300 1,000 0,300 __________

0,300 M52 m CABLE MULTIFIBRILAR BLANCO C05 ELEMENTOS AUXILIARES 0,300 1,000 0,300 __________

0,300

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Pliego de condiciones Página 220

M53 m CABLE MULTIFIBRILAR AMARILLO C05 ELEMENTOS AUXILIARES 0,300 1,000 0,300 __________

0,300 M54 m CABLE MULTIFIBRILAR AZUL C05 ELEMENTOS AUXILIARES 0,300 1,000 0,300 __________

0,300 M55 m CABLE MULTIFIBRILAR VIOLETA C05 ELEMENTOS AUXILIARES 0,300 1,000 0,300 __________

0,300 M56 m CABLE MULTIFIBRILAR NARANJA C05 ELEMENTOS AUXILIARES 0,300 1,000 0,300 __________

0,300 M57 m CABLE MULTIFIBRILAR MARRÓN C05 ELEMENTOS AUXILIARES 0,300 1,000 0,300 __________

0,300 M58 m CABLE MULTIFIBRILAR GRIS C05 ELEMENTOS AUXILIARES 0,300 1,000 0,300 __________

0,300 M59 u BRIDA BLANCA C05 ELEMENTOS AUXILIARES 10,000 1,000 10,000 __________

10,000 M60 m CINTA AISLANTE NEGRA C05 ELEMENTOS AUXILIARES 0,500 1,000 0,500 __________

0,500 M61 m CINTA ADHESIVA DOBLE CARA C05 ELEMENTOS AUXILIARES 0,100 1,000 0,100 __________

0,100 M62 u PEGATINA BLANCA C05 ELEMENTOS AUXILIARES 2,000 1,000 2,000 __________

2,000 M63 m ESTAÑO C05 ELEMENTOS AUXILIARES 0,100 1,000 0,100 __________

0,100 M64 u EUROPLACA C02 CONTROL PRINCIPAL 2,000 1,000 2,000 __________

2,000 M65 m TUBO TERMORRETRACTIL C05 ELEMENTOS AUXILIARES 0,500 1,000 0,500 __________

0,500

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Pliego de condiciones Página 221

5.1.2 Calidades mínimas a exigir.

Las calidades mínimas a exigir en materiales comprados serán las que el fabricante proporcione.

En cuanto a las calidades mínimas de los elementos a fabricar, en las placas que alojaran el PIC 16F877 de control distribuido se deberá tener en cuenta:

- Las placas serán de cobre con un grosor mínimo de 1.6mm. - La pista de cobre deberá tener un grosor mínimo de 35μm. - Las pistas de cobre deberá tener una anchura mínima de 0.5mm. - Se deberán colocar obligatoriamente los condensadores C1D y C2D ya que eliminan el ruido en la alimentación del circuito. - Se deberá colocar obligatoriamente los condensadores C3XTAL y C4XTAL ya que eliminan el ruido en la frecuencia de oscilación del cristal.

A la hora de la elaboración del cable que conectará el PIC32 con el PIC 16F877 se deberá tener en cuenta:

- El cable obligatoriamente deberá ser apantallado, conectando la pantalla a la masa de ambas placas. - Los cables deberán ser mínimo de 1mm de diámetro y de aluminio. - Se deberá proteger las soldaduras con tubo termorretractil. - Se deberá dejar el mínimo de cable sin apantallar.

En cuanto a la realización del cable que conectará el módulo eb301 con el PIC32:

- Los cables deberán ser, mínimo, de 1mm de diámetro multifibrilar de aluminio. - Las soldaduras deberán ir protegidas con tubo termorretractil.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Pliego de condiciones Página 222

5.1.3 Pruebas y ensayos a que debe someterse.

Los materiales suministrados por otros fabricantes no serán sometidos a pruebas o ensayos ya que los fabricantes aseguran que están testeados y funcionan correctamente.

En las placas de control distribuido que alojan al PIC 16F877 se deberán realizar las siguientes pruebas una vez fabricadas y taladradas:

- Test de continuidad para la comprobación de las pistas de cobre. Con ello se comprobará que las pistas están aisladas unas de otras. - Una vez soldados los componentes, ser volverá a realizar un test de continuidad para evitar problemas.

En los cables de comunicación, tanto del PIC32 al PIC16F877 como el de PIC32 al módulo bluetooth eb101 se deberá realizar la siguiente prueba:

- Test de continuidad en los extremos para la comprobación de la correcta comunicación.

5.2 Reglamentación y normativa aplicable incluyendo recomendaciones y normas de no obligado cumplimiento.

No existe una reglamentación ni normativa aplicable ya que el proyecto tiene un fin académico y no un fin comercial.

Tampoco será necesario seguir recomendaciones o normas de no obligado cumplimiento que no hayan sido nombradas en el apartado 5.1.2.

5.3 Aspectos del contrato.

A continuación se expondrán los aspectos del contrato que se refieren directamente al Proyecto y que pudieran afectar a su objetivo.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Pliego de condiciones Página 223

5.3.1 Documentación base para la contratación de su materialización.

Los trabajos a realizar quedarán definidos en los siguientes documentos:

- Los Planos. - El Estado de Mediciones. - La Memoria. - Las especificaciones mencionadas en el apartado 5.1.

Los demás documentos tienen carácter informativo y no especifican como debe ser la realización de los trabajos.

5.3.2 Limitaciones en los suministros.

Se va especificar claramente donde empieza y dónde termina la responsabilidad del suministro y montaje.

En caso de limitación de suministros se podrá utilizar otros materiales de acuerdo a los siguientes criterios:

- Cable conector batería con conmutador: podrá ser sustituida por un cable con conmutador genérico o de otro fabricante siempre y cuando sea compatible. - Baterías lipo 3.7V 2100 mAh: podrán ser sustituidas por baterías lipo de menor o mayor capacidad siempre y cuando estén comprendidas en el rango de 1800 mAh y 3000 mAh. También podrán ser sustituidas por baterías lipo de 7.4V con conector Tamiya sin necesidad de que tengan que ser montadas. - Etapas de potencia Sabertooth 2x5A: Podrá ser sustituida por etapas de potencia Sabertooth 2x10A. La única diferencia consistirá en que la segunda aguantará hasta corrientes continuas de 10A. - PIC32 Starter Kit: Podrá ser sustituido por un PIC32 USB Starter Kit II o por un PIC32 Ethernet Starter Kit. El cambio no supondrá cambios ya que la placa de expansión de puertos seguirá siendo la misma.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Pliego de condiciones Página 224

- PIC 16F877: podrá ser sustituida por un PIC 16F877A equivalente en todo, mismo número de patillas y disposición de ellas. La únicas diferencias entre estos dos microcontroladores son: o El PIC 16F877A tiene una fuente de tensión de referencia (pueden generar una tensión analógica). o El PIC 16F877A tiene comparadores analógicos. o El PIC 16F877A tiene la posibilidad de escribir 14bits en una vez en su memoria flash. - Resistencia de 330Ω: podrá ser sustituida por una resistencia de 270Ω, el único cambio consistirá en que el consumo de corriente será mayor y el led lucirá con mayor intensidad. También se podrá sustituir por un potenciómetro ajustado a cualquiera de los dos valores. - Resistencia de 1kΩ: podrá ser sustituida por un potenciómetro ajustado a 1kΩ de resistencia. - Resistencia de 10kΩ: podrá ser sustituida por un potenciómetro ajustado a 10kΩ de resistencia. - Led verde 5mm: podrá ser sustituido por un led de 3mm o un led de 5mm o 3mm de cualquier otro color. - Condensador cerámico C5: podrá ser sustituido por un condensador electrolítico de la misma capacidad. - Tornillo acero Philips 4x12mm: podrá ser sustituido por tornillos de acero Philips de mayor longitud, pero nunca de menor longitud. - USB Bluetooth NW545: podrá ser sustituido por cualquier módulo bluetooth USB de cualquier otro fabricante. - Cargador de baterías lipo Fullwat: podrá ser sustituido por cualquier cargador de baterías lipo compatible. - Tubo termorretractil negro Ø=3,2mm: podrá ser sustituido por tubo termorretractil de cualquier otro color siempre que el diámetro este comprendido en el rango: min. 2,4mm - máx. 4,8mm.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Pliego de condiciones Página 225

- Brida blanca 10cm: podrá ser sustituida por bridas de otro color mientras se mantenga la longitud en 10cm. - Estaño sin plomo Ø=0.6mm: podrá ser sustituido por estaño sin plomo de cualquier otro diámetro.

Todos los materiales que no hayan sido citados antes no podrán ser modificados para que el objetivo del proyecto se realice satisfactoriamente. Por lo tanto no podrán ser sustituidos por otros materiales.

5.3.3 Criterios para las modificaciones al proyecto original.

Si en un futuro se decidiese modificar el proyecto original, se deberán crear en el documento Anexos un capitulo especifico para ello donde queden reflejadas todas y cada una de las modificaciones o adicciones que se vayan a implantar. También deberá quedar reflejado en presupuesto, añadiendo o eliminando materiales y horas de mano de obra.

Logroño, a 6 de Junio de 2012.

6 Estado de mediciones

Director: D. Carlos Elvira Izurrategui Departamento de Ingeniería Eléctrica Universidad de La Rioja Alumno: Adrián Madorrán Ibáñez Ingeniería Técnica Industrial especializada en Electrónica Industrial Universidad de La Rioja Título: Control y programación de una plataforma móvil

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Estado de mediciones Página 227

Índice de estado de mediciones 6 Estado de mediciones .................................................................................................. 226

6.1 Capítulo 1: Plataforma. ........................................................................................ 228

6.2 Capítulo 2: Control Principal. ............................................................................... 230

6.3 Capítulo 3: Control Distribuido. ........................................................................... 231

6.4 Capítulo 4: Comunicaciones................................................................................. 235

6.5 Capítulo 5: Elementos Auxiliares. ........................................................................ 236

6.6 Capítulo 6: Mano de Obra.................................................................................... 238

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Estado de mediciones Página 228

6.1 Capítulo 1: Plataforma.

CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL CÓDIGO RESUMEN UDS LONGITUD ANCHURA ALTURA PARCIALES CANTIDAD _____________________________________________________________________________________________________________ CAPÍTULO C01 PLATAFORMA M01 u KIT A4WD1V2 ROBOT Fabricante: Lynxmotion. Referencia: A4WD1-01. Contiene: Estructura realizada en aluminio y placas de lexan, dos conectores hexagonales de 12mm a 6mm (HUB-12), cable conector de la batería con conmutador (WH-01), cuatro cables de alimenta- ción para motores (MW-01) y 23 tornillos de montaje (PHS-09). _________________________ 1,00 M02 u CONECTOR HEXAGONAL DE 12MM A 6MM Fabricante: Lynxmotion. Referencia: HUB-12. Fabricados en acero. Distribuidos en parejas. Conversión de medidas de 12mm en las ruedas a 6mm para acople eje de motor. _________________________ 1,00 M03 u CABLE CONECTOR BATERÍA CON CONMUTADOR Fabricante: Lynxmotion. Referencia: WH-01. Fabricados en aluminio con conmutador de dos posiciones. En un extremo presenta un conector Ta- miya y en el otro extremo los cables están al aire. _________________________ 1,00 M04 u MOTOR 7.2V 50:1 175RPM Fabricante: Lynxmotion. Referencia: GHM-04. Motor de corriente continua. Funciona a una tensión nominal de 7,2V, contiene una reductora de 50:1 y alcanza una velocidad rotacional de 175rpm. _________________________ 4,00 M05 u RUEDA TODOTERRENO Fabricante: Lynxmotion. Referencia: TRC-01. Fabricados en dos partes, una llanta de polietileno y un neumático todoterreno. Contiene tornillos de montaje. Distribuidos en parejas. _________________________ 2,00 M06 u ENCODER DIGITAL Fabricante: Lynxmotion. Referencia: QME-01. Encoder digital con fijación superficial. 100 ciclos por revolución. 400 pulsos cuadrados por vuelta. Apto para frecuencias de más de 30kHz. Contiene cable de conexión. _________________________ 4,00 M07 u ETAPA DE POTENCIA SABERTOOTH 2X5A Fabricante: Lynxmotion. Referencia: DE-09. Etapa de potencia para controlar dos motores. Soporta corrientes de 10A de pico y 5A continuas. Tensión de alimentación entre 6 y 18 Vdc. _________________________ 2,00 M08 u BATERÍA LIPO 3.7V 2100 MAH Fabricante: VARTA. Referencia: - Batería lipo para montaje con terminales de fácil soldadura. Capacidad: 2100 mAh. Tensión: 3,7V. _________________________ 4,00

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Estado de mediciones Página 229

CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL CÓDIGO RESUMEN UDS LONGITUD ANCHURA ALTURA PARCIALES CANTIDAD ______________________________________________________________________________________________________________________________ M09 u CONECTOR TAMIYA Distribuido: Sel. Referencia: BE-6702 COP. Conectores Tamiya. Contiene dos partes, hembra y macho y sus pines para cables. _________________________ 2,00 M48 m CABLE DOBLE COBRE Distribuido: Sel. Referencia: - Cable doble rojo-negro de cobre. Diámetro 2,5mm. _________________________ 0,30

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Estado de mediciones Página 230

6.2 Capítulo 2: Control Principal.

CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL CÓDIGO RESUMEN UDS LONGITUD ANCHURA ALTURA PARCIALES CANTIDAD _____________________________________________________________________________________________________________ CAPÍTULO C02 CONTROL PRINCIPAL M10 u PIC32 STARTER KIT Fabricante: Microchip. Referencia: DM320001. Kit que contiene: microcontrolador PIC32MX360F512L, CD con MPLAB y compilador C32 y cable USB. _________________________ 1,00 M11 u STARTER KIT I/O EXPANSION BOARD Fabricante: Microchip. Referencia: DM320002. Placa de expansión de puertos para Starter Kit. Permite el acceso a todos los puertos del microcon- trolador. _________________________ 1,00 M12 u TIRA DE 32 PINES TORNEADOS Suministrador: RSONLINE. Referencia: 267-7416. Zócalo SIL pin torneado de 32 vías. _________________________ 5,00 M17 u MCP4922 Suministrador: RSONLINE. Fabricante: Microchip. Referencia: 402-881. Conversor D/A dual de 12 bits con comunicación SPI. _________________________ 1,00 M18 u TLE2425 Suministrador: RSONLINE. Fabricante: Texas Instruments Referencia: 661-9833. Tensión de referencia 2,5V 20mA 3 pins y encapsulado TO-92. _________________________ 1,00 M16 u ZÓCALO 14 PATILLAS Suministrador: RSONLINE. Referencia: 402-765. Zócalo DIL perfil bajo de 14 vías. _________________________ 1,00 M64 u EUROPLACA Distribuido: Sel. Referencia: - Europlaca de 2x3cm de epoxy con espesor de cobre 35um. _________________________ 2,00

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Estado de mediciones Página 231

6.3 Capítulo 3: Control Distribuido.

CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL CÓDIGO RESUMEN UDS LONGITUD ANCHURA ALTURA PARCIALES CANTIDAD _____________________________________________________________________________________________________________ CAPÍTULO C03 CONTROL DISTRIBUIDO M13 u PIC16F877 Suministrador: RSONLINE. Referencia: 698-9000. MCU 16F877 encapsulado PDIP. _________________________ 2,00 M14 u PLACA COBRE PARA INSOLAR 70X85MM Suministrador: RSONLINE. Referencia: 397-0097. Eurocard de una cara chapada de cobre fotorresistente. Espesor de placa 1,6mm. Espesor de cobre 35um. _________________________ 2,00 M15 u ZÓCALO 40 PATILLAS Suministrador: RSONLINE. Referencia: 228-0090. Zócalo DIP corto pines estampados 40 vías. _________________________ 2,00 M16 u ZÓCALO 14 PATILLAS Suministrador: RSONLINE. Referencia: 402-765. Zócalo DIL perfil bajo de 14 vías. _________________________ 2,00 M17 u MCP4922 Suministrador: RSONLINE. Fabricante: Microchip. Referencia: 402-881. Conversor D/A dual de 12 bits con comunicación SPI. _________________________ 2,00 M18 u TLE2425 Suministrador: RSONLINE. Fabricante: Texas Instruments Referencia: 661-9833. Tensión de referencia 2,5V 20mA 3 pins y encapsulado TO-92. _________________________ 2,00 M19 u LED VERDE 5MM Suministrador: RSONLINE. Referencia: 826-379. Led verde 5mm 10mA. _________________________ 2,00 M20 u RESISTENCIA 330 OHMS Suministrador: RSONLINE. Referencia: 135-825. Resistencia de película de carbón 330R y 0,25W. _________________________ 2,00 M21 u RESISTENCIA 1K OHMS Suministrador: RSONLINE. Referencia: 135-847. Resistencia de película de carbón 1kR y 0,25W. _________________________ 2,00

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Estado de mediciones Página 232

CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL CÓDIGO RESUMEN UDS LONGITUD ANCHURA ALTURA PARCIALES CANTIDAD _____________________________________________________________________________________________________________ M22 u RESISTENCIA 10K OHMS Suministrador: RSONLINE. Referencia: 148-736. Resistencia de película metálica 10kR y 0,25W. _________________________ 2,00 M23 u DIODO D1N4007 Suministrador: RSONLINE. Referencia: 628-9546. Diodo rectificador GS, 1A 1000Vrrm. _________________________ 2,00 M24 u CONDENSADOR CERÁMICO 2.2uF Suministrador: RSONLINE. Referencia: 537-4003. Condensador cerámico 50V 2,2uF _________________________ 6,00 M25 u CONDENSADOR CERÁMICO 22pF Suministrador: RSONLINE. Referencia: 652-9866. Condensador cerámico radial 100V 22pF _________________________ 4,00 M26 u CRISTAL OSCILADOR 20 MHZ Suministrador: RSONLINE. Referencia: 693-8759. Cristal oscilador de cuarzo 20MHz. _________________________ 2,00 M27 u PULSADOR 6 PATILLAS Y 2 POSICIONES Suministrador: RSONLINE. Referencia: 734-6763. Pulsador interruptor para PCB. _________________________ 2,00 M28 u CONECTOR CI MACHO 8 PINES Suministrador: SEL. Referencia: BTWM8 Conector macho para PCB con 8 contactos de 2,54mm. _________________________ 6,00 M29 u CONECTOR CI HEMBRA 8 PINES Suministrador: SEL. Referencia: BTWF8 Conector hembra para PCB para 8 contactos de 2,54mm. _________________________ 6,00 M30 u CONECTOR CI MACHO 6 PINES Suministrador: SEL. Referencia: BTWM6 Conector macho para PCB con 6 contactos de 2,54mm. _________________________ 2,00 M31 u CONECTOR CI HEMBRA 6 PINES Suministrador: SEL. Referencia: BTWF6 Conector hembra para PCB para 6 contactos de 2,54mm. _________________________

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Estado de mediciones Página 233

2,00

CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL CÓDIGO RESUMEN UDS LONGITUD ANCHURA ALTURA PARCIALES CANTIDAD _____________________________________________________________________________________________________________ M32 u CONECTOR CI MACHO 5 PINES Suministrador: SEL. Referencia: BTWM5 Conector macho para PCB con 5 contactos de 2,54mm. _________________________ 2,00 M33 u CONECTOR CI HEMBRA 5 PINES Suministrador: SEL. Referencia: BTWF5 Conector hembra para PCB para 5 contactos de 2,54mm. _________________________ 2,00 M34 u CONECTOR CI MACHO 4 PINES Suministrador: SEL. Referencia: BTWM4 Conector macho para circuito integrado con 4 contactos de 2,54mm. _________________________ 2,00 M35 u CONECTOR CI HEMBRA 4 PINES Suministrador: SEL. Referencia: BTWF4 Conector hembra para PCB para 4 contactos de 2,54mm. _________________________ 2,00 M36 u CONECTOR CI MACHO 3 PINES Suministrador: SEL. Referencia: BTWM3 Conector macho para PCB con 3 contactos de 2,54mm. _________________________ 2,00 M37 u CONECTOR CI HEMBRA 3 PINES Suministrador: SEL. Referencia: BTWF3 Conector hembra para PCB para 3 contactos de 2,54mm. _________________________ 2,00 M38 u CONECTOR CI MACHO 2 PINES Suministrador: SEL. Referencia: BTWM2 Conector macho para PCB con 2 contactos de 2,54mm. _________________________ 8,00 M39 u CONECTOR CI HEMBRA 2 PINES Suministrador: SEL. Referencia: BTWF2 Conector hembra para PCB para 2 contactos de 2,54mm. _________________________ 8,00 M40 u PIN CABLE PARA CONECTOR CI Suministrador: SEL. Referencia: - Pin para cable para conector hembra CI. _________________________ 41,00 M41 u PIN 2,54MM Suministrador: SEL. Referencia: - Pin 2,54mm macho para PCB.

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Estado de mediciones Página 234

_________________________ 16,00

CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL CÓDIGO RESUMEN UDS LONGITUD ANCHURA ALTURA PARCIALES CANTIDAD _____________________________________________________________________________________________________________ M42 u TORNILLO DE ACERO PHILIPS 4X12MM Suministrador: - Referencia: - Tornillo de acero Philips 4x12mm. _________________________ 6,00 M43 u TUERCA ACERO 4MM Suministrador: - Referencia: - Tuerca de acero 4mm. _________________________ 6,00

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Estado de mediciones Página 235

6.4 Capítulo 4: Comunicaciones.

CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL CÓDIGO RESUMEN UDS LONGITUD ANCHURA ALTURA PARCIALES CANTIDAD _____________________________________________________________________________________________________________ CAPÍTULO C04 COMUNICACIONES M44 u MÓDULO BLUETOOTH EB301 Distribuido: MSE Bilbao. Fabricante: A7 Eng. Referencia: - Modulo adaptador serie bluetooth 3V/5V. Antena integrada. _________________________ 1,00 M45 u CABLE FTDI Distribuido: MSE Bilbao. Fabricante: FTDI. Referencia: TTL-232R5V. Cable adaptador que convierte un puerto USB en un interface RS-232 con niveles TTL y 1.8 m de longitud. _________________________ 1,00 M46 u USB BLUETOOTH NW545 Distribuido: Beep. Fabricante: Netway Referencia: - Adaptador bluetooth USb, permite crear una conexión inalámbrica entre un PC y otro dispositivo. Versión 2.0 EDR. Adaptador clase 2 (10 metros máx.). _________________________ 1,00 M31 u CONECTOR CI HEMBRA 6 PINES Suministrador: SEL. Referencia: BTWF6 Conector hembra para PCB para 6 contactos de 2,54mm. _________________________ 2,00 M47 m CABLE APANTALLADO MULTICONDUCTOR Distribuido: Sel. Referencia: SHC4019 Cable apantallado con cuatro cables en su interior de aluminio. 4x0,19mm2 _________________________ 0,60 M41 u PIN 2,54MM Suministrador: SEL. Referencia: - Pin 2,54mm macho para PCB. _________________________ 3,00

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Estado de mediciones Página 236

6.5 Capítulo 5: Elementos Auxiliares.

CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL CÓDIGO RESUMEN UDS LONGITUD ANCHURA ALTURA PARCIALES CANTIDAD _____________________________________________________________________________________________________________ CAPÍTULO C05 ELEMENTOS AUXILIARES M49 u CARGADOR BATERIAS LIPO Distribuido: Sel. Fabricante: Fullwat. Referencia: FU-CLI1000. - Voltaje de entrada: 100-240VAC 50-60Hz - Salida: Autoajustable en 4,2V, 8,4V, 12,6V y 16,8V dependiendo de la batería conectada. - Corriente de carga: 1000 mA _________________________ 1,00 M50 m CABLE MULTIFIBRILAR ROJO Distribuido: Sel. Fabricante: - Referencia: MOWR. Cable multifibrilar de aluminio de color rojo. Diámetro 1mm. _________________________ 0,30 M51 m CABLE MULTIFIBRILAR NEGRO Distribuido: Sel. Fabricante: - Referencia: MOWBK. Cable multifibrilar de aluminio de color negro. Diámetro 1mm. _________________________ 0,30 M52 m CABLE MULTIFIBRILAR BLANCO Distribuido: Sel. Fabricante: - Referencia: MOWW. Cable multifibrilar de aluminio de color blanco. Diámetro 1mm. _________________________ 0,30 M53 m CABLE MULTIFIBRILAR AMARILLO Distribuido: Sel. Fabricante: - Referencia: MOWY. Cable multifibrilar de aluminio de color amarillo. Diámetro 1mm. _________________________ 0,30 M54 m CABLE MULTIFIBRILAR AZUL Distribuido: Sel. Fabricante: - Referencia: MOWB. Cable multifibrilar de aluminio de color azul. Diámetro 1mm. _________________________ 0,30 M55 m CABLE MULTIFIBRILAR VIOLETA Distribuido: Sel. Fabricante: - Referencia: MOWV. Cable multifibrilar de aluminio de color violeta. Diámetro 1mm. _________________________ 0,30 M56 m CABLE MULTIFIBRILAR NARANJA Distribuido: Sel. Fabricante: - Referencia: MOWO. Cable multifibrilar de aluminio de color naranja. Diámetro 1mm. _________________________ 0,30

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Estado de mediciones Página 237

CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL CÓDIGO RESUMEN UDS LONGITUD ANCHURA ALTURA PARCIALES CANTIDAD _____________________________________________________________________________________________________________ M57 m CABLE MULTIFIBRILAR MARRÓN Distribuido: Sel. Fabricante: - Referencia: MOWBR. Cable multifibrilar de aluminio de color marrón. Diámetro 1mm. _________________________ 0,30 M58 m CABLE MULTIFIBRILAR GRIS Distribuido: Sel. Fabricante: - Referencia: MOWGR. Cable multifibrilar de aluminio de color gris. Diámetro 1mm. _________________________ 0,30 M59 u BRIDA BLANCA Distribuido: Sel. Referencia: - Brida blanca de longitud 10cm. _________________________ 10,00 M60 m CINTA AISLANTE NEGRA Distribuido: Sel. Fabricante: - Referencia: - Cinta aislante negra de 1cm de anchura. _________________________ 0,50 M61 m CINTA ADHESIVA DOBLE CARA Distribuido: Sel. Referencia: - Cinta adhesiva de doble cara blanca de 1mm de grosor. _________________________ 0,10 M62 u PEGATINA BLANCA Distribuido: - Referencia: - Pegatina blanca de 2x5cm. _________________________ 2,00 M63 m ESTAÑO Distribuido: Sel. Referencia: - Estaño sin plomo con alma de resina de 0,6 mm de diámetro. _________________________ 0,10 M65 m TUBO TERMORRETRACTIL Distribuido: RSONLINE Referencia: 170-6383. Funda termorretractil negra de 3,2mm de diámetro. _________________________ 0,50

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Estado de mediciones Página 238

6.6 Capítulo 6: Mano de Obra.

CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL CÓDIGO RESUMEN UDS LONGITUD ANCHURA ALTURA PARCIALES CANTIDAD _____________________________________________________________________________________________________________ CAPÍTULO C06 MANO DE OBRA MO01 h MONTADOR PLATAFORMA Honorarios de un montador sin cualificación para la realización del montaje integro de la plataforma y conexión eléctrica de los componentes. _________________________ 15,00 MO02 h MONTADOR PLACAS ELECTRONICAS Honorarios de un montador con cualificación básica para la realización de las placas electrónicas, ta- ladrado, comprobación y soldado de componentes. _________________________ 10,00 MO03 h PROGRAMADOR PIC16F877 Honorarios de un programador con cualificación para la programación en lenguaje C de un PIC 16F877. _________________________ 30,00 MO04 h PROGRAMADOR PIC32 Honorarios de un programador con cualificación para la programación en lenguaje C de un PIC 32. _________________________ 30,00 MO05 h PROGRAMADOR SOFTWARE Honorarios de un programador con cualificación para la programación en lenguaje C de un entorno en Borland C++ Builder 5.0. Profesional para el manejo de la plataforma. _________________________ 50,00

7 Presupuesto

Director: D. Carlos Elvira Izurrategui Departamento de Ingeniería Eléctrica Universidad de La Rioja Alumno: Adrián Madorrán Ibáñez Ingeniería Técnica Industrial especializada en Electrónica Industrial Universidad de La Rioja Título: Control y programación de una plataforma móvil

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 240

Índice de presupuesto 7 Presupuesto……………………………………………………………………………………………………… 239

7.1 Cuadros de precios unitarios de materiales, mano de obra y elementos auxiliares que componen las partidas o unidades de obra………………………………………………………… 241

7.1.1 Capítulo 1: Plataforma………………………………………………………………………….. 241

7.1.2 Capítulo 2: Control Principal…………………………………………………………………. 243

7.1.3 Capítulo 3: Control Distribuido……………………………………………………………… 244

7.1.4 Capítulo 4: Comunicaciones…………………………………………………………………. 248

7.1.5 Capítulo 5: Elementos auxiliares…………………………………………………………… 249

7.1.6 Capítulo 6: Mano de obra…………………………………………………………………….. 251

7.2 Cuadros de precios unitarios de las unidades de obra, de acuerdo con el “Estado de mediciones” y con la descomposición correspondiente de materiales, mano de obra y elementos auxiliares. …………………………………………………………………………………………………..252

7.2.1 Capítulo 1: Plataforma………………………………………………………………………… 252

7.2.2 Capítulo 2: Control Principal…………………………………………………………………. 254

7.2.3 Capítulo 3: Control Distribuido…………………………………………………………….. 255

7.2.4 Capítulo 4: Comunicaciones…………………………………………………………………. 259

7.2.5 Capítulo 5: Elementos Auxiliares…………………………………………………………… 260

7.2.6 Capítulo 6: Mano de obra…………………………………………………………………….. 263

7.3 Presupuesto……………………………………………………………………………………………………… 264

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 241

7.1 Cuadros de precios unitarios de materiales, mano de obra y elementos auxiliares que componen las partidas o unidades de obra.

7.1.1 Capítulo 1: Plataforma.

CAPÍTULO C01 PLATAFORMA

CÓDIGO UD RESUMEN PRECIO _______________________________________________________________________________________________________ M01 u KIT A4WD1V2 ROBOT 65,72 Fabricante: Lynxmotion. Referencia: A4WD1-01. Contiene: Estructura realizada en aluminio y placas de lexan, dos conectores hexagonales de

12mm a 6mm (HUB-12), cable conector de la batería con conmutador (WH-01), cuatro cables de alimentación para motores (MW-01) y 23 tornillos de montaje (PHS-09).

SESENTA Y CINCO EUROS con SETENTA Y DOS CÉNTIMOS M02 u CONECTOR HEXAGONAL DE 12MM A 6MM 6,40 Fabricante: Lynxmotion. Referencia: HUB-12. Fabricados en acero. Distribuidos en parejas. Conversión de medidas de 12mm en las ruedas a 6mm para acople eje de motor. SEIS EUROS con CUARENTA CÉNTIMOS M03 u CABLE CONECTOR BATERÍA CON CONMUTADOR 3,96 Fabricante: Lynxmotion. Referencia: WH-01.

Fabricados en aluminio con conmutador de dos posiciones. En un extremo presenta un conector Tamiya y en el otro extremo los cables están al aire.

TRES EUROS con NOVENTA Y SEIS CÉNTIMOS M04 u MOTOR 7.2V 50:1 175RPM 17,56 Fabricante: Lynxmotion. Referencia: GHM-04. Motor de corriente continua. Funciona a una tensión nominal de 7,2V, contiene una reductora de 50:1 y alcanza una velocidad rotacional de 175rpm. DIECISIETE EUROS con CINCUENTA Y SEIS CÉNTIMOS M05 u RUEDA TODOTERRENO 20,00 Fabricante: Lynxmotion. Referencia: TRC-01.

Fabricados en dos partes, una llanta de polietileno y un neumático todoterreno. Contiene tornillos de montaje. Distribuidos en parejas.

VEINTE EUROS M06 u ENCODER DIGITAL 20,76 Fabricante: Lynxmotion. Referencia: QME-01.

Encoder digital con fijación superficial. 100 ciclos por revolución. 400 pulsos cuadrados por vuelta. Apto para frecuencias de más de 30kHz. Contiene cable de conexión.

VEINTE EUROS con SETENTA Y SEIS CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 242

M07 u ETAPA DE POTENCIA SABERTOOTH 2X5A 47,99 Fabricante: Lynxmotion. Referencia: DE-09.

Etapa de potencia para controlar dos motores. Soporta corrientes de 10A de pico y 5A continuas.Tensión de alimentación entre 6 y 18 Vdc.

CUARENTA Y SIETE EUROS con NOVENTA Y NUEVE CÉNTIMOS M08 u BATERÍA LIPO 3.7V 2100 MAH 8,00 Fabricante: VARTA. Referencia: - Batería lipo para montaje con terminales de fácil soldadura. Capacidad: 2100 mAh. Tensión: 3,7V. OCHO EUROS M09 u CONECTOR TAMIYA 1,00 Distribuido: Sel. Referencia: BE-6702 COP. Conectores Tamiya. Contiene dos partes, hembra y macho y sus pines para cables. UN EURO M48 m CABLE DOBLE COBRE 2,00 Distribuido: Sel. Referencia: - Cable doble rojo-negro de cobre. Diámetro 2,5mm. DOS EUROS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 243

7.1.2 Capítulo 2: Control Principal.

CAPÍTULO C02 CONTROL PRINCIPAL

CÓDIGO UD RESUMEN PRECIO _______________________________________________________________________________________________________ M10 u PIC32 STARTER KIT 39,99 Fabricante: Microchip. Referencia: DM320001. Kit que contiene: microcontrolador PIC32MX360F512L, CD con MPLAB y compilador C32 y cable USB. TREINTA Y NUEVE EUROS con NOVENTA Y NUEVE CÉNTIMOS M11 u STARTER KIT I/O EXPANSION BOARD 58,00 Fabricante: Microchip. Referencia: DM320002. Placa de expansión de puertos para Starter Kit. Permite el acceso a todos los puertos del micro- controlador. CINCUENTA Y OCHO EUROS M12 u TIRA DE 32 PINES TORNEADOS 1,04 Suministrador: RSONLINE. Referencia: 267-7416. Zócalo SIL pin torneado de 32 vías. UN EUROS con CUATRO CÉNTIMOS M17 u MCP4922 3,44 Suministrador: RSONLINE. Fabricante: Microchip. Referencia: 402-881. Conversor D/A dual de 12 bits con comunicación SPI. TRES EUROS con CUARENTA Y CUATRO CÉNTIMOS M18 u TLE2425 1,13 Suministrador: RSONLINE. Fabricante: Texas Instruments Referencia: 661-9833. Tensión de referencia 2,5V 20mA 3 pins y encapsulado TO-92. UN EUROS con TRECE CÉNTIMOS M16 u ZÓCALO 14 PATILLAS 0,15 Suministrador: RSONLINE. Referencia: 402-765. Zócalo DIL perfil bajo de 14 vías. CERO EUROS con QUINCE CÉNTIMOS M64 u EUROPLACA 0,43 Distribuido: Sel. Referencia: - Europlaca de 2x3cm de epoxy con espesor de cobre 35um. CERO EUROS con CUARENTA Y TRES CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 244

7.1.3 Capítulo 3: Control Distribuido.

CAPÍTULO C03 CONTROL DISTRIBUIDO

CÓDIGO UD RESUMEN PRECIO _______________________________________________________________________________________________________ M13 u PIC16F877 7,73 Suministrador: RSONLINE. Referencia: 698-9000. MCU 16F877 encapsulado PDIP. SIETE EUROS con SETENTA Y TRES CÉNTIMOS M14 u PLACA COBRE PARA INSOLAR 70X85MM 2,65 Suministrador: RSONLINE. Referencia: 397-0097. Eurocard de una cara chapada de cobre fotorresistente. Espesor de placa 1,6mm. Espesor de cobre 35um. DOS EUROS con SESENTA Y CINCO CÉNTIMOS M15 u ZÓCALO 40 PATILLAS 1,73 Suministrador: RSONLINE. Referencia: 228-0090. Zócalo DIP corto pines estampados 40 vías. UN EUROS con SETENTA Y TRES CÉNTIMOS M16 u ZÓCALO 14 PATILLAS 0,15 Suministrador: RSONLINE. Referencia: 402-765. Zócalo DIL perfil bajo de 14 vías. CERO EUROS con QUINCE CÉNTIMOS M17 u MCP4922 3,44 Suministrador: RSONLINE. Fabricante: Microchip. Referencia: 402-881. Conversor D/A dual de 12 bits con comunicación SPI. TRES EUROS con CUARENTA Y CUATRO CÉNTIMOS M18 u TLE2425 1,13 Suministrador: RSONLINE. Fabricante: Texas Instruments Referencia: 661-9833. Tensión de referencia 2,5V 20mA 3 pins y encapsulado TO-92. UN EUROS con TRECE CÉNTIMOS M19 u LED VERDE 5MM 0,19 Suministrador: RSONLINE. Referencia: 826-379. Led verde 5mm 10mA. CERO EUROS con DIECINUEVE CÉNTIMOS M20 u RESISTENCIA 330 OHMS 0,03 Suministrador: RSONLINE. Referencia: 135-825. Resistencia de película de carbón 330R y 0,25W. CERO EUROS con TRES CÉNTIMOS M21 u RESISTENCIA 1K OHMS 0,03 Suministrador: RSONLINE. Referencia: 135-847. Resistencia de película de carbón 1kR y 0,25W. CERO EUROS con TRES CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 245

M22 u RESISTENCIA 10K OHMS 0,06 Suministrador: RSONLINE. Referencia: 148-736. Resistencia de película metálica 10kR y 0,25W. CERO EUROS con SEIS CÉNTIMOS M23 u DIODO D1N4007 0,04 Suministrador: RSONLINE. Referencia: 628-9546. Diodo rectificador GS, 1A 1000Vrrm. CERO EUROS con CUATRO CÉNTIMOS M24 u CONDENSADOR CERÁMICO 2.2uF 0,82 Suministrador: RSONLINE. Referencia: 537-4003. Condensador cerámico 50V 2,2uF CERO EUROS con OCHENTA Y DOS CÉNTIMOS M25 u CONDENSADOR CERÁMICO 22pF 0,28 Suministrador: RSONLINE. Referencia: 652-9866. Condensador cerámico radial 100V 22pF CERO EUROS con VEINTIOCHO CÉNTIMOS M26 u CRISTAL OSCILADOR 20 MHZ 0,57 Suministrador: RSONLINE. Referencia: 693-8759. Cristal oscilador de cuarzo 20MHz. CERO EUROS con CINCUENTA Y SIETE CÉNTIMOS M27 u PULSADOR 6 PATILLAS Y 2 POSICIONES 1,46 Suministrador: RSONLINE. Referencia: 734-6763. Pulsador interruptor para PCB. UN EUROS con CUARENTA Y SEIS CÉNTIMOS M28 u CONECTOR CI MACHO 8 PINES 0,80 Suministrador: SEL. Referencia: BTWM8 Conector macho para PCB con 8 contactos de 2,54mm. CERO EUROS con OCHENTA CÉNTIMOS M29 u CONECTOR CI HEMBRA 8 PINES 0,80 Suministrador: SEL. Referencia: BTWF8 Conector hembra para PCB para 8 contactos de 2,54mm. CERO EUROS con OCHENTA CÉNTIMOS M30 u CONECTOR CI MACHO 6 PINES 0,60 Suministrador: SEL. Referencia: BTWM6 Conector macho para PCB con 6 contactos de 2,54mm. CERO EUROS con SESENTA CÉNTIMOS M31 u CONECTOR CI HEMBRA 6 PINES 0,60 Suministrador: SEL. Referencia: BTWF6 Conector hembra para PCB para 6 contactos de 2,54mm. CERO EUROS con SESENTA CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 246

M32 u CONECTOR CI MACHO 5 PINES 0,50 Suministrador: SEL. Referencia: BTWM5 Conector macho para PCB con 5 contactos de 2,54mm. CERO EUROS con CINCUENTA CÉNTIMOS M33 u CONECTOR CI HEMBRA 5 PINES 0,50 Suministrador: SEL. Referencia: BTWF5 Conector hembra para PCB para 5 contactos de 2,54mm. CERO EUROS con CINCUENTA CÉNTIMOS M34 u CONECTOR CI MACHO 4 PINES 0,40 Suministrador: SEL. Referencia: BTWM4 Conector macho para circuito integrado con 4 contactos de 2,54mm. CERO EUROS con CUARENTA CÉNTIMOS M35 u CONECTOR CI HEMBRA 4 PINES 0,40 Suministrador: SEL. Referencia: BTWF4 Conector hembra para PCB para 4 contactos de 2,54mm. CERO EUROS con CUARENTA CÉNTIMOS M36 u CONECTOR CI MACHO 3 PINES 0,35 Suministrador: SEL. Referencia: BTWM3 Conector macho para PCB con 3 contactos de 2,54mm. CERO EUROS con TREINTA Y CINCO CÉNTIMOS M37 u CONECTOR CI HEMBRA 3 PINES 0,35 Suministrador: SEL. Referencia: BTWF3 Conector hembra para PCB para 3 contactos de 2,54mm. CERO EUROS con TREINTA Y CINCO CÉNTIMOS M38 u CONECTOR CI MACHO 2 PINES 0,30 Suministrador: SEL. Referencia: BTWM2 Conector macho para PCB con 2 contactos de 2,54mm. CERO EUROS con TREINTA CÉNTIMOS M39 u CONECTOR CI HEMBRA 2 PINES 0,30 Suministrador: SEL. Referencia: BTWF2 Conector hembra para PCB para 2 contactos de 2,54mm. CERO EUROS con TREINTA CÉNTIMOS M40 u PIN CABLE PARA CONECTOR CI 0,08 Suministrador: SEL. Referencia: - Pin para cable para conector hembra CI. CERO EUROS con OCHO CÉNTIMOS M41 u PIN 2,54MM 0,10 Suministrador: SEL. Referencia: - Pin 2,54mm macho para PCB. CERO EUROS con DIEZ CÉNTIMOS M42 u TORNILLO DE ACERO PHILIPS 4X12MM 0,40 Suministrador: - Referencia: - Tornillo de acero Philips 4x12mm. CERO EUROS con CUARENTA CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 247

M43 u TUERCA ACERO 4MM 0,25 Suministrador: - Referencia: - Tuerca de acero 4mm. CERO EUROS con VEINTICINCO CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 248

7.1.4 Capítulo 4: Comunicaciones.

CAPÍTULO C04 COMUNICACIONES

CÓDIGO UD RESUMEN PRECIO _______________________________________________________________________________________________________ M44 u MÓDULO BLUETOOTH EB301 45,00 Distribuido: MSE Bilbao. Fabricante: A7 Eng. Referencia: - Modulo adaptador serie bluetooth 3V/5V. Antena integrada. CUARENTA Y CINCO EUROS M45 u CABLE FTDI 21,00 Distribuido: MSE Bilbao. Fabricante: FTDI. Referencia: TTL-232R5V. Cable adaptador que convierte un puerto USB en un interface RS-232 con niveles TTL y 1.8 m de longitud. VEINTIUN EUROS M46 u USB BLUETOOTH NW545 4,90 Distribuido: Beep. Fabricante: Netway Referencia: -

Adaptador bluetooth USb, permite crear una conexión inalámbrica entre un PC y otro dispositivo. Versión 2.0 EDR. Adaptador clase 2 (10 metros máx.).

CUATRO EUROS con NOVENTA CÉNTIMOS M31 u CONECTOR CI HEMBRA 6 PINES 0,60 Suministrador: SEL. Referencia: BTWF6 Conector hembra para PCB para 6 contactos de 2,54mm. CERO EUROS con SESENTA CÉNTIMOS M47 m CABLE APANTALLADO MULTICONDUCTOR 1,30 Distribuido: Sel. Referencia: SHC4019 Cable apantallado con cuatro cables en su interior de aluminio. 4x0,19mm2 UN EUROS con TREINTA CÉNTIMOS M41 u PIN 2,54MM 0,10 Suministrador: SEL. Referencia: - Pin 2,54mm macho para PCB. CERO EUROS con DIEZ CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 249

7.1.5 Capítulo 5: Elementos auxiliares.

CAPÍTULO C05 ELEMENTOS AUXILIARES

CÓDIGO UD RESUMEN PRECIO _______________________________________________________________________________________________________ M49 u CARGADOR BATERIAS LIPO 17,00 Distribuido: Sel. Fabricante: Fullwat. Referencia: FU-CLI1000. - Voltaje de entrada: 100-240VAC 50-60Hz - Salida: Autoajustable en 4,2V, 8,4V, 12,6V y 16,8V dependiendo de la batería conectada. - Corriente de carga: 1000 mA DIECISIETE EUROS M50 m CABLE MULTIFIBRILAR ROJO 0,15 Distribuido: Sel. Fabricante: - Referencia: MOWR. Cable multifibrilar de aluminio de color rojo. Diámetro 1mm. CERO EUROS con QUINCE CÉNTIMOS M51 m CABLE MULTIFIBRILAR NEGRO 0,15 Distribuido: Sel. Fabricante: - Referencia: MOWBK. Cable multifibrilar de aluminio de color negro. Diámetro 1mm. CERO EUROS con QUINCE CÉNTIMOS M52 m CABLE MULTIFIBRILAR BLANCO 0,15 Distribuido: Sel. Fabricante: - Referencia: MOWW. Cable multifibrilar de aluminio de color blanco. Diámetro 1mm. CERO EUROS con QUINCE CÉNTIMOS M53 m CABLE MULTIFIBRILAR AMARILLO 0,15 Distribuido: Sel. Fabricante: - Referencia: MOWY. Cable multifibrilar de aluminio de color amarillo. Diámetro 1mm. CERO EUROS con QUINCE CÉNTIMOS M54 m CABLE MULTIFIBRILAR AZUL 0,15 Distribuido: Sel. Fabricante: - Referencia: MOWB. Cable multifibrilar de aluminio de color azul. Diámetro 1mm. CERO EUROS con QUINCE CÉNTIMOS M55 m CABLE MULTIFIBRILAR VIOLETA 0,15 Distribuido: Sel. Fabricante: - Referencia: MOWV. Cable multifibrilar de aluminio de color violeta. Diámetro 1mm. CERO EUROS con QUINCE CÉNTIMOS M56 m CABLE MULTIFIBRILAR NARANJA 0,15 Distribuido: Sel. Fabricante: - Referencia: MOWO. Cable multifibrilar de aluminio de color naranja. Diámetro 1mm. CERO EUROS con QUINCE CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 250

M57 m CABLE MULTIFIBRILAR MARRÓN 0,15 Distribuido: Sel. Fabricante: - Referencia: MOWBR. Cable multifibrilar de aluminio de color marrón. Diámetro 1mm. CERO EUROS con QUINCE CÉNTIMOS M58 m CABLE MULTIFIBRILAR GRIS 0,15 Distribuido: Sel. Fabricante: - Referencia: MOWGR. Cable multifibrilar de aluminio de color gris. Diámetro 1mm. CERO EUROS con QUINCE CÉNTIMOS M59 u BRIDA BLANCA 0,10 Distribuido: Sel. Referencia: - Brida blanca de longitud 10cm. CERO EUROS con DIEZ CÉNTIMOS M60 m CINTA AISLANTE NEGRA 1,00 Distribuido: Sel. Fabricante: - Referencia: - Cinta aislante negra de 1cm de anchura. UN EUROS M61 m CINTA ADHESIVA DOBLE CARA 1,00 Distribuido: Sel. Referencia: - Cinta adhesiva de doble cara blanca de 1mm de grosor. UN EUROS M62 u PEGATINA BLANCA 0,05 Distribuido: - Referencia: - Pegatina blanca de 2x5cm. CERO EUROS con CINCO CÉNTIMOS M63 m ESTAÑO 3,00 Distribuido: Sel. Referencia: - Estaño sin plomo con alma de resina de 0,6 mm de diámetro. TRES EUROS M65 m TUBO TERMORRETRACTIL 2,51 Distribuido: RSONLINE Referencia: 170-6383. Funda termorretractil negra de 3,2mm de diámetro. DOS EUROS con CINCUENTA Y UN CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 251

7.1.6 Capítulo 6: Mano de obra

CAPÍTULO C06 MANO DE OBRA

CÓDIGO UD RESUMEN PRECIO _______________________________________________________________________________________________________ MO01 h MONTADOR PLATAFORMA 6,00

Honorarios de un montador sin cualificación para la realización del montaje integro de la plataforma y conexión eléctrica de los componentes.

SEIS EUROS MO02 h MONTADOR PLACAS ELECTRONICAS 8,00 Honorarios de un montador con cualificación básica para la realización de las placas electróni- cas, taladrado, comprobación y soldado de componentes. OCHO EUROS MO03 h PROGRAMADOR PIC16F877 30,00 Honorarios de un programador con cualificación para la programación en lenguaje C de un PIC 16F877. TREINTA EUROS MO04 h PROGRAMADOR PIC32 30,00 Honorarios de un programador con cualificación para la programación en lenguaje C de un PIC 32. TREINTA EUROS MO05 h PROGRAMADOR SOFTWARE 30,00

Honorarios de un programador con cualificación para la programación en lenguaje C de un entorno en Borland C++ Builder 5.0. Profesional para el manejo de la plataforma.

TREINTA EUROS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 252

7.2 Cuadros de precios unitarios de las unidades de obra, de acuerdo con el “Estado de mediciones” y con la descomposición correspondiente de materiales, mano de obra y elementos auxiliares.

7.2.1 Capítulo 1: Plataforma.

CAPÍTULO C01 PLATAFORMA CÓDIGO CANTIDAD UD RESUMEN PRECIO SUBTOTAL IMPORTE _____________________________________________________________________________________________________________ M01 u KIT A4WD1V2 ROBOT Fabricante: Lynxmotion. Referencia: A4WD1-01.

Contiene: Estructura realizada en aluminio y placas de lexan, dos conectores hexagonales de 12mm a 6mm (HUB-12), cable conector de la batería con conmutador (WH-01), cuatro cables de alimentación para motores

Sin descomposición

TOTAL PARTIDA 65,72

Asciende el precio total de la partida a la mencionada cantidad de SESENTA Y CINCO EUROS con SETENTA Y DOS CÉNTIMOS M02 u CONECTOR HEXAGONAL DE 12MM A 6MM Fabricante: Lynxmotion. Referencia: HUB-12.

Fabricados en acero. Distribuidos en parejas. Conversión de medidas de 12mm en las ruedas a 6mm para acople.

Sin descomposición

TOTAL PARTIDA 6,40

Asciende el precio total de la partida a la mencionada cantidad de SEIS EUROS con CUARENTA CÉNTIMOS M03 u CABLE CONECTOR BATERÍA CON CONMUTADOR Fabricante: Lynxmotion. Referencia: WH-01.

Fabricados en aluminio con conmutador de dos posiciones. En un extremo presenta un conector Tamiya.

Sin descomposición

TOTAL PARTIDA 3,96

Asciende el precio total de la partida a la mencionada cantidad de TRES EUROS con NOVENTA Y SEIS CÉNTIMOS M04 u MOTOR 7.2V 50:1 175RPM Fabricante: Lynxmotion. Referencia: GHM-04.

Motor de corriente continua. Funciona a una tensión nominal de 7,2V, contiene una reductora de 50:1 y alcanza una velocidad rotacional de 175rpm.

Sin descomposición

TOTAL PARTIDA 17,56

Asciende el precio total de la partida a la mencionada cantidad de DIECISIETE EUROS con CINCUENTA Y SEIS CÉNTIMOS M05 u RUEDA TODOTERRENO Fabricante: Lynxmotion. Referencia: TRC-01.

Fabricados en dos partes, una llanta de polietileno y un neumático todoterreno. Contiene tornillos de montaje.

Sin descomposición

TOTAL PARTIDA 20,00

Asciende el precio total de la partida a la mencionada cantidad de VEINTE EUROS M06 u ENCODER DIGITAL

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 253

Fabricante: Lynxmotion. Referencia: QME-01.

Encoder digital con fijación superficial. 100 ciclos por revolución. 400 pulsos cuadrados por vuelta.

Sin descomposición

TOTAL PARTIDA 20,76

Asciende el precio total de la partida a la mencionada cantidad de VEINTE EUROS con SETENTA Y SEIS CÉNTIMOS M07 u ETAPA DE POTENCIA SABERTOOTH 2X5A Fabricante: Lynxmotion. Referencia: DE-09.

Etapa de potencia para controlar dos motores. Soporta corrientes de 10A de pico y 5A continuas.

Sin descomposición

TOTAL PARTIDA 47,99

Asciende el precio total de la partida a la mencionada cantidad de CUARENTA Y SIETE EUROS con NOVENTA Y NUEVE CÉNTIMOS M08 u BATERÍA LIPO 3.7V 2100 MAH Fabricante: VARTA. Referencia: -

Batería lipo para montaje con terminales de fácil soldadura. Capacidad: 2100 mAh. Tensión: 3,7V.

Sin descomposición

TOTAL PARTIDA 8,00

Asciende el precio total de la partida a la mencionada cantidad de OCHO EUROS M09 u CONECTOR TAMIYA Distribuido: Sel. Referencia: BE-6702 COP. Sin descomposición

TOTAL PARTIDA 1,00

Asciende el precio total de la partida a la mencionada cantidad de UN EUROS M48 m CABLE DOBLE COBRE Distribuido: Sel. Referencia: - Sin descomposición

TOTAL PARTIDA 2,00

Asciende el precio total de la partida a la mencionada cantidad de DOS EUROS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 254

7.2.2 Capítulo 2: Control Principal.

CAPÍTULO C02 CONTROL PRINCIPAL

CÓDIGO CANTIDAD UD RESUMEN PRECIO SUBTOTAL IMPORTE _____________________________________________________________________________________________________________ M10 u PIC32 STARTER KIT Fabricante: Microchip. Referencia: DM320001. Sin descomposición

TOTAL PARTIDA 39,99

Asciende el precio total de la partida a la mencionada cantidad de TREINTA Y NUEVE EUROS con NOVENTA Y NUEVE CÉNTIMOS M11 u STARTER KIT I/O EXPANSION BOARD Fabricante: Microchip. Referencia: DM320002. Sin descomposición

TOTAL PARTIDA 58,00

Asciende el precio total de la partida a la mencionada cantidad de CINCUENTA Y OCHO EUROS M12 u TIRA DE 32 PINES TORNEADOS Suministrador: RSONLINE. Referencia: 267-7416. Sin descomposición

TOTAL PARTIDA 1,04

Asciende el precio total de la partida a la mencionada cantidad de UN EUROS con CUATRO CÉNTIMOS M17 u MCP4922 Suministrador: RSONLINE. Fabricante: Microchip. Referencia: 402-881. Sin descomposición

TOTAL PARTIDA 3,44

Asciende el precio total de la partida a la mencionada cantidad de TRES EUROS con CUARENTA Y CUATRO CÉNTIMOS M18 u TLE2425 Suministrador: RSONLINE. Fabricante: Texas Instruments Referencia: 661-9833. Sin descomposición

TOTAL PARTIDA 1,13

Asciende el precio total de la partida a la mencionada cantidad de UN EUROS con TRECE CÉNTIMOS M16 u ZÓCALO 14 PATILLAS Suministrador: RSONLINE. Referencia: 402-765. Sin descomposición

TOTAL PARTIDA 0,15

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con QUINCE CÉNTIMOS M64 u EUROPLACA Distribuido: Sel. Referencia: - Sin descomposición

TOTAL PARTIDA 0,43

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con CUARENTA Y TRES CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 255

7.2.3 Capítulo 3: Control Distribuido. CAPÍTULO C03 CONTROL DISTRIBUIDO

CÓDIGO CANTIDAD UD RESUMEN PRECIO SUBTOTAL IMPORTE _____________________________________________________________________________________________________________ M13 u PIC16F877 Suministrador: RSONLINE. Referencia: 698-9000. Sin descomposición

TOTAL PARTIDA 7,73

Asciende el precio total de la partida a la mencionada cantidad de SIETE EUROS con SETENTA Y TRES CÉNTIMOS M14 u PLACA COBRE PARA INSOLAR 70X85MM Suministrador: RSONLINE. Referencia: 397-0097. Sin descomposición

TOTAL PARTIDA 2,65

Asciende el precio total de la partida a la mencionada cantidad de DOS EUROS con SESENTA Y CINCO CÉNTIMOS M15 u ZÓCALO 40 PATILLAS Suministrador: RSONLINE. Referencia: 228-0090. Sin descomposición

TOTAL PARTIDA 1,73

Asciende el precio total de la partida a la mencionada cantidad de UN EUROS con SETENTA Y TRES CÉNTIMOS M16 u ZÓCALO 14 PATILLAS Suministrador: RSONLINE. Referencia: 402-765. Sin descomposición

TOTAL PARTIDA 0,15

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con QUINCE CÉNTIMOS M17 u MCP4922 Suministrador: RSONLINE. Fabricante: Microchip. Referencia: 402-881. Sin descomposición

TOTAL PARTIDA 3,44

Asciende el precio total de la partida a la mencionada cantidad de TRES EUROS con CUARENTA Y CUATRO CÉNTIMOS M18 u TLE2425 Suministrador: RSONLINE. Fabricante: Texas Instruments Referencia: 661-9833. Sin descomposición

TOTAL PARTIDA 1,13

Asciende el precio total de la partida a la mencionada cantidad de UN EUROS con TRECE CÉNTIMOS M19 u LED VERDE 5MM Suministrador: RSONLINE. Referencia: 826-379. Sin descomposición

TOTAL PARTIDA 0,19

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con DIECINUEVE CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 256

M20 u RESISTENCIA 330 OHMS Suministrador: RSONLINE. Referencia: 135-825. Resistencia de película de carbón 330R y 0,25W. Sin descomposición

TOTAL PARTIDA 0,03

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con TRES CÉNTIMOS M21 u RESISTENCIA 1K OHMS Suministrador: RSONLINE. Referencia: 135-847. Resistencia de película de carbón 1kR y 0,25W. Sin descomposición

TOTAL PARTIDA 0,03

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con TRES CÉNTIMOS M22 u RESISTENCIA 10K OHMS Suministrador: RSONLINE. Referencia: 148-736. Resistencia de película metálica 10kR y 0,25W. Sin descomposición

TOTAL PARTIDA 0,06

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con SEIS CÉNTIMOS M23 u DIODO D1N4007 Suministrador: RSONLINE. Referencia: 628-9546. Diodo rectificador GS, 1A 1000Vrrm. Sin descomposición

TOTAL PARTIDA 0,04

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con CUATRO CÉNTIMOS M24 u CONDENSADOR CERÁMICO 2.2uF Suministrador: RSONLINE. Referencia: 537-4003. Condensador cerámico 50V 2,2uF Sin descomposición

TOTAL PARTIDA 0,82

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con OCHENTA Y DOS CÉNTIMOS M25 u CONDENSADOR CERÁMICO 22pF Suministrador: RSONLINE. Referencia: 652-9866. Sin descomposición

TOTAL PARTIDA 0,28

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con VEINTIOCHO CÉNTIMOS M26 u CRISTAL OSCILADOR 20 MHZ Suministrador: RSONLINE. Referencia: 693-8759. Sin descomposición

TOTAL PARTIDA 0,57

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con CINCUENTA Y SIETE CÉNTIMOS M27 u PULSADOR 6 PATILLAS Y 2 POSICIONES Suministrador: RSONLINE. Referencia: 734-6763. Pulsador interruptor para PCB. Sin descomposición

TOTAL PARTIDA 1,46

Asciende el precio total de la partida a la mencionada cantidad de UN EUROS con CUARENTA Y SEIS CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 257

M28 u CONECTOR CI MACHO 8 PINES Suministrador: SEL. Referencia: BTWM8 Sin descomposición

TOTAL PARTIDA 0,80

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con OCHENTA CÉNTIMOS M29 u CONECTOR CI HEMBRA 8 PINES Suministrador: SEL. Referencia: BTWF8 Sin descomposición

TOTAL PARTIDA 0,80

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con OCHENTA CÉNTIMOS M30 u CONECTOR CI MACHO 6 PINES Suministrador: SEL. Referencia: BTWM6 Sin descomposición

TOTAL PARTIDA 0,60

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con SESENTA CÉNTIMOS M31 u CONECTOR CI HEMBRA 6 PINES Suministrador: SEL. Referencia: BTWF6 Sin descomposición

TOTAL PARTIDA 0,60

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con SESENTA CÉNTIMOS M32 u CONECTOR CI MACHO 5 PINES Suministrador: SEL. Referencia: BTWM5 Sin descomposición

TOTAL PARTIDA 0,50

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con CINCUENTA CÉNTIMOS M33 u CONECTOR CI HEMBRA 5 PINES Suministrador: SEL. Referencia: BTWF5 Sin descomposición

TOTAL PARTIDA 0,50

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con CINCUENTA CÉNTIMOS M34 u CONECTOR CI MACHO 4 PINES Suministrador: SEL. Referencia: BTWM4 Sin descomposición

TOTAL PARTIDA 0,40

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con CUARENTA CÉNTIMOS M35 u CONECTOR CI HEMBRA 4 PINES Suministrador: SEL. Referencia: BTWF4 Conector hembra para PCB para 4 contactos de 2,54mm. Sin descomposición

TOTAL PARTIDA 0,40

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con CUARENTA CÉNTIMOS M36 u CONECTOR CI MACHO 3 PINES Suministrador: SEL. Referencia: BTWM3 Sin descomposición

TOTAL PARTIDA 0,35

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con TREINTA Y CINCO CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 258

M37 u CONECTOR CI HEMBRA 3 PINES Suministrador: SEL. Referencia: BTWF3 Sin descomposición

TOTAL PARTIDA 0,35

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con TREINTA Y CINCO CÉNTIMOS M38 u CONECTOR CI MACHO 2 PINES Suministrador: SEL. Referencia: BTWM2 Sin descomposición

TOTAL PARTIDA 0,30

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con TREINTA CÉNTIMOS M39 u CONECTOR CI HEMBRA 2 PINES Suministrador: SEL. Referencia: BTWF2 Sin descomposición

TOTAL PARTIDA 0,30

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con TREINTA CÉNTIMOS M40 u PIN CABLE PARA CONECTOR CI Suministrador: SEL. Referencia: - Sin descomposición

TOTAL PARTIDA 0,08

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con OCHO CÉNTIMOS M41 u PIN 2,54MM Suministrador: SEL. Referencia: - Sin descomposición

TOTAL PARTIDA 0,10

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con DIEZ CÉNTIMOS M42 u TORNILLO DE ACERO PHILIPS 4X12MM Suministrador: - Referencia: - Sin descomposición

TOTAL PARTIDA 0,40

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con CUARENTA CÉNTIMOS M43 u TUERCA ACERO 4MM Suministrador: - Referencia: - Tuerca de acero 4mm. Sin descomposición

TOTAL PARTIDA 0,25

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con VEINTICINCO CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 259

7.2.4 Capítulo 4: Comunicaciones.

CAPÍTULO C04 COMUNICACIONES CÓDIGO CANTIDAD UD RESUMEN PRECIO SUBTOTAL IMPORTE _____________________________________________________________________________________________________________ M44 u MÓDULO BLUETOOTH EB301 Distribuido: MSE Bilbao. Fabricante: A7 Eng. Referencia: - Sin descomposición

TOTAL PARTIDA 45,00

Asciende el precio total de la partida a la mencionada cantidad de CUARENTA Y CINCO EUROS M45 u CABLE FTDI Distribuido: MSE Bilbao. Fabricante: FTDI. Referencia: TTL-232R5V. Sin descomposición

TOTAL PARTIDA 21,00

Asciende el precio total de la partida a la mencionada cantidad de VEINTIUN EUROS M46 u USB BLUETOOTH NW545 Distribuido: Beep. Fabricante: Netway Referencia: -

Adaptador bluetooth USB, permite crear una conexión inalámbrica entre un PC y otro dispositivo. Versión 2.0 EDR. Adaptador clase 2 (10 metros máx.).

Sin descomposición

TOTAL PARTIDA 4,90

Asciende el precio total de la partida a la mencionada cantidad de CUATRO EUROS con NOVENTA CÉNTIMOS M31 u CONECTOR CI HEMBRA 6 PINES Suministrador: SEL. Referencia: BTWF6 Sin descomposición

TOTAL PARTIDA 0,60

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con SESENTA CÉNTIMOS M47 m CABLE APANTALLADO MULTICONDUCTOR Distribuido: Sel. Referencia: SHC4019 Sin descomposición

TOTAL PARTIDA 1,30

Asciende el precio total de la partida a la mencionada cantidad de UN EUROS con TREINTA CÉNTIMOS M41 u PIN 2,54MM Suministrador: SEL. Referencia: - Sin descomposición

TOTAL PARTIDA 0,10

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con DIEZ CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 260

7.2.5 Capítulo 5: Elementos Auxiliares.

CAPÍTULO C05 ELEMENTOS AUXILIARES

CÓDIGO CANTIDAD UD RESUMEN PRECIO SUBTOTAL IMPORTE _____________________________________________________________________________________________________________ M49 u CARGADOR BATERIAS LIPO Distribuido: Sel. Fabricante: Fullwat. Referencia: FU-CLI1000. - Voltaje de entrada: 100-240VAC 50-60Hz - Salida: Autoajustable en 4,2V, 8,4V, 12,6V y 16,8V dependiendo de la batería conectada. Sin descomposición

TOTAL PARTIDA 17,00

Asciende el precio total de la partida a la mencionada cantidad de DIECISIETE EUROS M50 m CABLE MULTIFIBRILAR ROJO Distribuido: Sel. Fabricante: - Referencia: MOWR. Sin descomposición

TOTAL PARTIDA 0,15

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con QUINCE CÉNTIMOS M51 m CABLE MULTIFIBRILAR NEGRO Distribuido: Sel. Fabricante: - Referencia: MOWBK. Sin descomposición

TOTAL PARTIDA 0,15

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con QUINCE CÉNTIMOS M52 m CABLE MULTIFIBRILAR BLANCO Distribuido: Sel. Fabricante: - Referencia: MOWW. Sin descomposición

TOTAL PARTIDA 0,15

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con QUINCE CÉNTIMOS M53 m CABLE MULTIFIBRILAR AMARILLO Distribuido: Sel. Fabricante: - Referencia: MOWY. Sin descomposición

TOTAL PARTIDA 0,15

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con QUINCE CÉNTIMOS M54 m CABLE MULTIFIBRILAR AZUL Distribuido: Sel. Fabricante: - Referencia: MOWB. Sin descomposición

TOTAL PARTIDA 0,15

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con QUINCE CÉNTIMOS M55 m CABLE MULTIFIBRILAR VIOLETA Distribuido: Sel. Fabricante: - Referencia: MOWV. Sin descomposición

TOTAL PARTIDA 0,15

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con QUINCE CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 261

M56 m CABLE MULTIFIBRILAR NARANJA Distribuido: Sel. Fabricante: - Referencia: MOWO. Cable multifibrilar de aluminio de color naranja. Diámetro 1mm. Sin descomposición

TOTAL PARTIDA 0,15

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con QUINCE CÉNTIMOS M57 m CABLE MULTIFIBRILAR MARRÓN Distribuido: Sel. Fabricante: - Referencia: MOWBR. Sin descomposición

TOTAL PARTIDA 0,15

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con QUINCE CÉNTIMOS M58 m CABLE MULTIFIBRILAR GRIS Distribuido: Sel. Fabricante: - Referencia: MOWGR. Sin descomposición

TOTAL PARTIDA 0,15

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con QUINCE CÉNTIMOS M59 u BRIDA BLANCA Distribuido: Sel. Referencia: - Sin descomposición

TOTAL PARTIDA 0,10

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con DIEZ CÉNTIMOS M60 m CINTA AISLANTE NEGRA Distribuido: Sel. Fabricante: - Referencia: - Sin descomposición

TOTAL PARTIDA 1,00

Asciende el precio total de la partida a la mencionada cantidad de UN EUROS M61 m CINTA ADHESIVA DOBLE CARA Distribuido: Sel. Referencia: - Sin descomposición

TOTAL PARTIDA 1,00

Asciende el precio total de la partida a la mencionada cantidad de UN EUROS M62 u PEGATINA BLANCA Distribuido: - Referencia: - Pegatina blanca de 2x5cm. Sin descomposición

TOTAL PARTIDA 0,05

Asciende el precio total de la partida a la mencionada cantidad de CERO EUROS con CINCO CÉNTIMOS M63 m ESTAÑO Distribuido: Sel. Referencia: - Estaño sin plomo con alma de resina de 0,6 mm de diámetro. Sin descomposición

TOTAL PARTIDA 3,00

Asciende el precio total de la partida a la mencionada cantidad de TRES EUROS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 262

M65 m TUBO TERMORRETRACTIL Distribuido: RSONLINE Referencia: 170-6383. Funda termorretractil negra de 3,2mm de diámetro. Sin descomposición

TOTAL PARTIDA 2,51

Asciende el precio total de la partida a la mencionada cantidad de DOS EUROS con CINCUENTA Y UN CÉNTIMOS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 263

7.2.6 Capítulo 6: Mano de obra CAPÍTULO C06 MANO DE OBRA

CÓDIGO CANTIDAD UD RESUMEN PRECIO SUBTOTAL IMPORTE _____________________________________________________________________________________________________________ MO01 h MONTADOR PLATAFORMA

Honorarios de un montador sin cualificación para la realización del montaje integro de la plataforma y conexión

Sin descomposición

TOTAL PARTIDA 6,00

Asciende el precio total de la partida a la mencionada cantidad de SEIS EUROS MO02 h MONTADOR PLACAS ELECTRONICAS

Honorarios de un montador con cualificación básica para la realización de las placas electrónicas, taladrado.

Sin descomposición

TOTAL PARTIDA 8,00

Asciende el precio total de la partida a la mencionada cantidad de OCHO EUROS MO03 h PROGRAMADOR PIC16F877 Honorarios de un programador con cualificación para la programación en lenguaje C de un PIC 16F877. Sin descomposición

TOTAL PARTIDA 30,00

Asciende el precio total de la partida a la mencionada cantidad de TREINTA EUROS MO04 h PROGRAMADOR PIC32

Honorarios de un programador con cualificación para la programación en lenguaje C de un PIC 32.

Sin descomposición

TOTAL PARTIDA 30,00

Asciende el precio total de la partida a la mencionada cantidad de TREINTA EUROS MO05 h PROGRAMADOR SOFTWARE

Honorarios de un programador con cualificación para la programación en lenguaje C de un entorno en Borland C++

Sin descomposición

TOTAL PARTIDA 30,00

Asciende el precio total de la partida a la mencionada cantidad de TREINTA EUROS

Control y monitorización de una plataforma móvil Adrián Madorrán Ibáñez

Presupuesto Página 264

7.3 Presupuesto.

RESUMEN DE PRESUPUESTO

CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL

CAPITULO RESUMEN EUROS % _______________________________________________________________________________ ________

C01 PLATAFORMA ................................................................. 399,94 9,64 C02 CONTROL PRINCIPAL ...................................................... 108,77 2,62 C03 CONTROL DISTRIBUIDO ................................................... 75,04 1,81 C04 COMUNICACIONES .......................................................... 73,18 1,76 C05 ELEMENTOS AUXILIARES .................................................. 20,71 10,50 C06 MANO DE OBRA .......................................................... 3.470,00 83,66 ___________________

TOTAL EJECUCIÓN MATERIAL 4.147,64 13,00% Gastos generales ................................ 539,19 6,0% Beneficio industrial…… ........................ 248,86

______________________________________________

SUMA DE G.G. y B.I…………………………….. 788,05

18,00 % I.V.A. ...................................... 888,42

_____________________________________________

TOTAL PRESUPUESTO CONTRATA 5.824,11

_____________________________________________

TOTAL PRESUPUESTO GENERAL 5.824,11

Asciende el presupuesto general a la expresada cantidad de CINCO MIL OCHOCIENTOS VEINTICUATRO EUROS con ONCE CÉNTIMOS

LOGROÑO, a 6 de Junio de 2012.

EL INGENIERO TECNICO INDUSTRIAL

ADRIAN MADORRAN IBAÑEZ

Adrian
Cuadro de texto
Adrian
Cuadro de texto
Adrian
Cuadro de texto
Adrian
Cuadro de texto
Adrian
Cuadro de texto
Adrian
Cuadro de texto
Adrian
Cuadro de texto
Adrian
Cuadro de texto
Adrian
Cuadro de texto
Adrian
Cuadro de texto
Adrian
Cuadro de texto