Control y monitorización de una plataforma móvil

Anuncio
TRABAJO FIN DE ESTUDIOS
PROYECTO FIN DE CARRERA
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
Tutor: Carlos Elvira Izurrategui
Curso 2011-2012
Control y monitorización de una plataforma móvil, trabajo fin de estudios
de Adrián Madorrán Ibáñez, dirigido por Carlos Elvira Izurrategui (publicado por la
Universidad de La Rioja), se difunde bajo una Licencia
Creative Commons Reconocimiento-NoComercial-SinObraDerivada 3.0 Unported.
Permisos que vayan más allá de lo cubierto por esta licencia pueden solicitarse a los
titulares del copyright.
©
©
El autor
Universidad de La Rioja, Servicio de Publicaciones, 2012
publicaciones.unirioja.es
E-mail: [email protected]
“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
2.7.6
2.8
Líneas futuras. ................................................................................................ 37
Planificación. .......................................................................................................... 39
2.9.1
Lista de tareas. ............................................................................................... 40
2.9.2
Diagrama Gantt. ............................................................................................. 43
2.10
3
Gestión del usuario ........................................................................................ 33
Resultados finales. ................................................................................................. 35
2.8.1
2.9
Adrián Madorrán Ibáñez
Orden de prioridad entre los documentos básicos. .............................................. 44
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
3.1.3
Programa PIC32. ...................................................................................... 100
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
3.1.5.1
Gestión de usuario. ...................................................................................... 150
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
3.1.5.2
Adrián Madorrán Ibáñez
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
3.4.1.1
Manuales de usuario.................................................................................... 181
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
4
5
Contenido del CD. ........................................................................................ 209
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
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
6
7
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
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
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
2.0 Hoja de identificación.
Adrián Madorrán Ibáñez
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
Memoria
Adrián Madorrán Ibáñez
Página 9
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
Í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
2.9
Memoria
Líneas futuras. ................................................................................................ 37
Planificación. .......................................................................................................... 39
Página 10
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
2.9.1
Lista de tareas. ............................................................................................... 40
2.9.2
Diagrama Gantt. ............................................................................................. 43
2.10
Memoria
Orden de prioridad entre los documentos básicos. .............................................. 44
Página 11
Control y monitorización de una plataforma móvil
2.1 Objeto.
Adrián Madorrán Ibáñez
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:
Memoria
Página 12
Control y monitorización de una plataforma móvil
-
Adrián Madorrán Ibáñez
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 .
Memoria
Página 13
Control y monitorización de una plataforma móvil
2.4 Normas y referencias.
Adrián Madorrán Ibáñez
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.
Memoria
Página 14
Control y monitorización de una plataforma móvil
2.4.3 Programas de cálculo.
Adrián Madorrán Ibáñez
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
Memoria
Página 15
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
[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.
Memoria
Página 16
Control y monitorización de una plataforma móvil
-
W: En medidas Wide (ancho).
μA: micro amperio (10-6 A).
μs: micro segundo (10-6 s).
Adrián Madorrán Ibáñez
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.
Memoria
Página 17
Control y monitorización de una plataforma móvil
2.6.3 Requisitos encoders.
Adrián Madorrán Ibáñez
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.
Memoria
Página 18
Control y monitorización de una plataforma móvil
2.6.7 Requisitos comunicaciones.
Adrián Madorrán Ibáñez
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).
Memoria
Página 19
Control y monitorización de una plataforma móvil
2.7 Análisis de soluciones.
Adrián Madorrán Ibáñez
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.
Memoria
Página 20
Control y monitorización de una plataforma móvil
-
-
Ruedas todoterreno.
Tamaño: 43.82 cm L x 31.12 cm W x 17.15 cm H.
Precio: 582€ IVA incluido.
Adrián Madorrán Ibáñez
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.
Memoria
Página 21
Control y monitorización de una plataforma móvil
Para más información consúltese Anexos 3.1.1.1. Chasis.
Adrián Madorrán Ibáñez
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.
Memoria
Página 22
Control y monitorización de una plataforma móvil
3-. Gear Head Motor GHM-04:
Adrián Madorrán Ibáñez
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.
Memoria
Página 23
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Memoria
Página 24
Control y monitorización de una plataforma móvil
2.7.2 Selección del controlador principal.
Adrián Madorrán Ibáñez
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.
Memoria
Página 25
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Memoria
Página 26
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Memoria
Página 27
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Memoria
Página 28
Control y monitorización de una plataforma móvil
-
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.
Adrián Madorrán Ibáñez
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.
Memoria
Página 29
Control y monitorización de una plataforma móvil
2.7.3 Selección de comunicaciones con PC.
Adrián Madorrán Ibáñez
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.
Memoria
Página 30
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Memoria
Página 31
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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á:
Memoria
Página 32
Control y monitorización de una plataforma móvil
-
Adrián Madorrán Ibáñez
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).
SCLK
MOSI
MISO
PIC 32 SS1
SS2
SCLK
MISO
MOSI
SS
16F877
SCLK
MISO
MOSI
SS
16F877
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.
Memoria
Página 33
Control y monitorización de una plataforma móvil
1) Desde PC.
Adrián Madorrán Ibáñez
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.
Memoria
Página 34
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
Memoria
Página 35
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Memoria
Página 36
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Memoria
Página 37
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
Memoria
Página 38
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Memoria
Página 39
Control y monitorización de una plataforma móvil
2.9.1
Lista de tareas.
Memoria
Adrián Madorrán Ibáñez
Página 40
Control y monitorización de una plataforma móvil
Memoria
Adrián Madorrán Ibáñez
Página 41
Control y monitorización de una plataforma móvil
Memoria
Adrián Madorrán Ibáñez
Página 42
Control y monitorización de una plataforma móvil
2.9.2 Diagrama Gantt.
Memoria
Adrián Madorrán Ibáñez
Página 43
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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)
2)
3)
4)
Planos.
Pliego de Condiciones.
Presupuesto.
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).
Memoria
Página 44
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
Índice de Anexos
3
Anexos………………………………………………………………………………………………………………
3.1 Documentación de partida………………………………………………………………………………
3.1.1
45
49
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
Anexos
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
Página 46
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
3.1.5
Cable de comunicación. ……………………………………………………………..148
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
Anexos
3.1.5.2.1
Sistema operativo Android……………………………………………………… 177
3.1.5.2.2
Aplicación S2 Bluetooth Terminal2…………………………………………… 178
Página 47
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
Anexos
Contenido del CD…………………………………………………………………………………. 209
Página 48
Control y monitorización de una plataforma móvil
3.1 Documentación de partida.
Adrián Madorrán Ibáñez
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.
Anexos
Página 49
Control y monitorización de una plataforma móvil
El kit del chasis contiene:
-
Adrián Madorrán Ibáñez
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.
Anexos
Página 50
Control y monitorización de una plataforma móvil
-
Cuatro cables de alimentación de motores.
Adrián Madorrán Ibáñez
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:
-
Anexos
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.
Página 51
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
Anexos
Página 52
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 53
Control y monitorización de una plataforma móvil
3.1.1.3 Encoders.
Adrián Madorrán Ibáñez
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.
Anexos
Página 54
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 55
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
-
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:
-
Anexos
Soporte baterías Lipo.
Entrada analógica.
Canales de entrada independientes.
Respuesta de salida lineal.
Página 56
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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-.
Anexos
Página 57
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
Anexos
Página 58
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
Ilustración 35: Conexionado general.
Ilustración 36: Vista general de conexiones.
Anexos
Página 59
Control y monitorización de una plataforma móvil
3.1.1.5 Baterías y cargador de baterías.
Adrián Madorrán Ibáñez
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.
Anexos
Página 60
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
Anexos
Página 61
Control y monitorización de una plataforma móvil
Protecciones:
-
Protección contra sobretensión.
-
Protección contra cortocircuito.
-
Protección contra inversión de polaridad.
Adrián Madorrán Ibáñez
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:
Anexos
Página 62
Control y monitorización de una plataforma móvil
-
Adrián Madorrán Ibáñez
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.
Anexos
Página 63
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
Ilustración 42: Ruedas: montaje 2.
Anexos
Página 64
Control y monitorización de una plataforma móvil
3.1.2 Control principal.
Adrián Madorrán Ibáñez
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:
Anexos
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.
Página 65
Control y monitorización de una plataforma móvil
-
Canales SPI: 2.
Canales I2C: 2.
Contadores de 16 bits: 5.
Total patillas: 100.
Adrián Madorrán Ibáñez
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.
Anexos
Página 66
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 67
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 68
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 69
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 70
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 71
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 72
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 73
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 74
Control y monitorización de una plataforma móvil
3.1.2.2.2 Comandos de interrupciones.
Anexos
Adrián Madorrán Ibáñez
Página 75
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 76
Control y monitorización de una plataforma móvil
3.1.2.2.3 Comandos de temporizadores.
Anexos
Adrián Madorrán Ibáñez
Página 77
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 78
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 79
Control y monitorización de una plataforma móvil
3.1.2.2.4 Comandos de SPI.
Anexos
Adrián Madorrán Ibáñez
Página 80
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 81
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 82
Control y monitorización de una plataforma móvil
3.1.2.2.5 Comandos de UART.
Anexos
Adrián Madorrán Ibáñez
Página 83
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 84
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 85
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 86
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 87
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 88
Control y monitorización de una plataforma móvil
3.1.2.3 Placa de expansión de puertos.
Adrián Madorrán Ibáñez
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.
Anexos
Página 89
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
Ilustración 46: Puerto J10.
Anexos
Página 90
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
Ilustración 47: Puerto J11.
Anexos
Página 91
Control y monitorización de una plataforma móvil
3.1.2.4 Placa conversor D/A.
Adrián Madorrán Ibáñez
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:
-
Anexos
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.
Página 92
Control y monitorización de una plataforma móvil
Diagrama de bloques del conversor:
Adrián Madorrán Ibáñez
Ilustración 48: Diagrama bloques CP4922.
Anexos
Página 93
Control y monitorización de una plataforma móvil
Relación número de pin y puerto:
Adrián Madorrán Ibáñez
Ilustración 49: Patillaje CP4922.
Ilustración 50: Simbología y función.
Anexos
Página 94
Control y monitorización de una plataforma móvil
Registro de escritura del conversor MCP4922:
Adrián Madorrán Ibáñez
La secuencia de escritura es la siguiente:
Ilustración 51: Secuencia de escritura.
Anexos
Página 95
Control y monitorización de una plataforma móvil
3.1.2.4.2 TLE2425.
Adrián Madorrán Ibáñez
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:
Anexos
Página 96
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
Ilustración 53: Relación Vi - Vo.
Anexos
Página 97
Control y monitorización de una plataforma móvil
3.1.2.4.3 Conexionado.
Adrián Madorrán Ibáñez
El conexionado de la placa se realizara de la siguiente manera:
Color
Gris
Verde
Amarillo
Blanco
Azul
Marrón
Rojo
Negro
Nº pin MCP4922
3
4
5
14
10
8
-
Nº pin TLE2425
IN
COMMON
PIC 32 (Puerto)
PMD7 (J10)
SCK1 (J10)
SDO1 (J10)
PMD4 (J10)
+5V
GND
Ilustración 54: Conexiones europlaca.
Anexos
Página 98
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
Ilustración 55: Conexiones europlaca 2.
Anexos
Página 99
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
Ilustración 56: Conexiones europlaca 3.
3.1.2.5 Programa PIC32.
//Librerías incluidas
#include <plib.h>
#include <math.h>
// PIC32 Librería Periféricos
//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
Anexos
Página 100
Control y monitorización de una plataforma móvil
#define PINS2 BIT_2 | BIT_3 | BIT_4
Adrián Madorrán Ibáñez
//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);}
Anexos
Página 101
Control y monitorización de una plataforma móvil
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);}
Adrián Madorrán Ibáñez
}
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);
}
Anexos
Página 102
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
//--------------------------------------------------------------------------------------------------------//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)
{
Anexos
Página 103
Control y monitorización de una plataforma móvil
if ((RSFlag == 1)&&(rx_buffer[0]=='#'))
{
putsUART1(rx_buffer);
RSFlag = 0;
}
if ((RSFlag == 1)&&(rx_buffer[0]=='?'))
{
RSFlag = 0;
conexión = 1;
RxCtr = 0;
}
Adrián Madorrán Ibáñez
}
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;
}
Anexos
Página 104
Control y monitorización de una plataforma móvil
3.1.3 Control distribuido.
Adrián Madorrán Ibáñez
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.
Anexos
Página 105
Control y monitorización de una plataforma móvil
Relación número de pin y puerto del PIC:
Adrián Madorrán Ibáñez
Ilustración 58: PIC16F877 puertos.
Características generales:
Ilustración 59: PIC16F877 características.
Anexos
Página 106
Control y monitorización de una plataforma móvil
Diagrama de bloques:
Adrián Madorrán Ibáñez
Ilustración 60: PIC16F877 diagrama de bloques.
Anexos
Página 107
Control y monitorización de una plataforma móvil
3.1.3.2 Comandos uso PIC 16F877.
Adrián Madorrán Ibáñez
3.1.3.2.1 Puertos I/O.
Comandos para el uso de puertos digitales:
Anexos
Página 108
Control y monitorización de una plataforma móvil
3.1.3.2.2 Comandos de interrupciones.
Adrián Madorrán Ibáñez
Funciones de interrupción:
Interrupciones primarias:
Anexos
Página 109
Control y monitorización de una plataforma móvil
Interrupciones de periféricos:
Adrián Madorrán Ibáñez
3.1.3.2.3 Comandos de contadores.
Comandos para el uso de los temporizadores como contadores:
Anexos
Página 110
Control y monitorización de una plataforma móvil
3.1.3.2.4 Comandos de SPI.
Adrián Madorrán Ibáñez
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:
-
Anexos
CRYSTAL: 20MHz.
Página 111
Control y monitorización de una plataforma móvil
Pulsador:
-
Adrián Madorrán Ibáñez
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:
-
Anexos
J7 ENCODER1
J9 ENCODER2
J11 ENCAB1
J12 ENCAB2
Página 112
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
Ilustración 61: Disposición de elementos.
Anexos
Página 113
Control y monitorización de una plataforma móvil
Imagen real de la placa terminada:
Adrián Madorrán Ibáñez
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:
Anexos
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.
Página 114
Control y monitorización de una plataforma móvil
Conector puerto C:
-
Adrián Madorrán Ibáñez
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:
-
Anexos
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.
Página 115
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
Ilustración 63: Conexionado programador - PIC.
Ilustración 64: Eclipse hardware, imagen en 3D.
Anexos
Página 116
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
Ilustración 65: Eclipse hardware, imagen real.
Ilustración 66: Eclipse software.
Anexos
Página 117
Control y monitorización de una plataforma móvil
3.1.3.6 Programa 16F877.
Adrián Madorrán Ibáñez
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;
Anexos
Página 118
Control y monitorización de una plataforma móvil
}
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);
}
Adrián Madorrán Ibáñez
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);
Anexos
Página 119
Control y monitorización de una plataforma móvil
//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);
Adrián Madorrán Ibáñez
//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
Anexos
Página 120
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
#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);
}
Anexos
Página 121
Control y monitorización de una plataforma móvil
3.1.3.6.3 Cabecera “Control.h”.
Adrián Madorrán Ibáñez
#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))
Anexos
Página 122
Control y monitorización de una plataforma móvil
{
Adrián Madorrán Ibáñez
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;
Anexos
Página 123
Control y monitorización de una plataforma móvil
}
if ((tension0b-0x9000)<tension1b)
{
aux1 = tension0b + errorb;
}
tension0b = aux1;
if ((tension0b>0x97FF) || (tension0b<0x9000))
{
tension0b = 0x9000;
}
Adrián Madorrán Ibáñez
}
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;
}
}
}
Anexos
Página 124
Control y monitorización de una plataforma móvil
3.1.4 Comunicaciones.
Adrián Madorrán Ibáñez
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
Anexos
Página 125
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
"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:
Anexos
Página 126
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 127
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
Anexos
Página 128
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
Anexos
Página 129
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 130
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
-
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.
Anexos
Página 131
Control y monitorización de una plataforma móvil
Anfitrión bluetooth:
Adrián Madorrán Ibáñez
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.
Anexos
Página 132
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
Anexos
Página 133
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 134
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 135
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
Anexos
Página 136
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
>).
Anexos
Página 137
Control y monitorización de una plataforma móvil
3.1.4.1.5.3 Led indicador.
Adrián Madorrán Ibáñez
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
Anexos
Página 138
Control y monitorización de una plataforma móvil
12
Adrián Madorrán Ibáñez
--------------------------------------------------------------------------------------------------
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.
Anexos
Página 139
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
Ilustración 76: eb301: cable conexión 2.
Ilustración 77: eb301: cable conexión 3.
Anexos
Página 140
Control y monitorización de una plataforma móvil
3.1.4.1.5.5 Comandos.
Adrián Madorrán Ibáñez
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.
Anexos
Página 141
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 142
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
Anexos
Página 143
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
-
Anexos
Comunicación Full Duplex.
Mayor velocidad de transmisión que con I²C o SMBus.
Página 144
Control y monitorización de una plataforma móvil
-
-
-
Adrián Madorrán Ibáñez
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, RS232, RS-485 o Bus CAN.
Modos de operación:
Existen cuatro modos de reloj definidos por el protocolo SPI, estos modos son :
Anexos
Modo A
Modo B
Modo C
Página 145
Control y monitorización de una plataforma móvil
-
Modo D
Adrián Madorrán Ibáñez
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.
Anexos
Página 146
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 147
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
Anexos
Cable apantallado multiconductor (4 cables internos).
4 pines de 2,54 mm.
Cable termorretractil.
Estaño.
Página 148
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 149
Control y monitorización de una plataforma móvil
3.1.5 Gestión de usuario.
Adrián Madorrán Ibáñez
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.
Anexos
Página 150
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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;
Anexos
Página 151
Control y monitorización de una plataforma móvil
HANDLE h_fd, eb_fd;
DCB dbc_Conf, eb_Conf;
int i_env, y, x, aux_xy;
Adrián Madorrán Ibáñez
//--------------------------------------------------------------------------__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;
Anexos
Página 152
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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";}
}
//---------------------------------------------------------------------------
Anexos
Página 153
Control y monitorización de una plataforma móvil
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;}
}
//---------------------------------------------------------------------------
Adrián Madorrán Ibáñez
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);
Anexos
Página 154
Control y monitorización de una plataforma móvil
IO_Blocking(h_fd,FALSE);
T_Tout->Enabled=true;
Adrián Madorrán Ibáñez
}
//--------------------------------------------------------------------------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;
Anexos
Página 155
Control y monitorización de una plataforma móvil
TB_Giro->Enabled=true;
TB_Vel->Enabled=true;
Adrián Madorrán Ibáñez
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;
Anexos
Página 156
Control y monitorización de una plataforma móvil
Label13->Caption="Sistema en Marcha";
Adrián Madorrán Ibáñez
}
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";
}
//---------------------------------------------------------------------------
Anexos
Página 157
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
{
Anexos
Página 158
Control y monitorización de una plataforma móvil
config_error=false;
ShowMessage("Configuracion incorrecta");
Adrián Madorrán Ibáñez
}
}
//--------------------------------------------------------------------------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';}
Anexos
Página 159
Control y monitorización de una plataforma móvil
}
//---------------------------------------------------------------------------
Adrián Madorrán Ibáñez
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;
Anexos
Página 160
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.");
}
Anexos
Página 161
Control y monitorización de una plataforma móvil
//---------------------------------------------------------------------------
Adrián Madorrán Ibáñez
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");
Anexos
Página 162
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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;
Anexos
Página 163
Control y monitorización de una plataforma móvil
conexion=true;
Adrián Madorrán Ibáñez
}
}
//--------------------------------------------------------------------------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;
Anexos
Página 164
Control y monitorización de una plataforma móvil
}
//---------------------------------------------------------------------------
Adrián Madorrán Ibáñez
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();
}
//---------------------------------------------------------------------------
Anexos
Página 165
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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);
Anexos
Página 166
Control y monitorización de una plataforma móvil
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;
Adrián Madorrán Ibáñez
}
//--------------------------------------------------------------------------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;
}
}
//---------------------------------------------------------------------------
Anexos
Página 167
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.");
Anexos
Página 168
Control y monitorización de una plataforma móvil
}
//---------------------------------------------------------------------------
Adrián Madorrán Ibáñez
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.");
Anexos
Página 169
Control y monitorización de una plataforma móvil
}
//---------------------------------------------------------------------------
Adrián Madorrán Ibáñez
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);
Anexos
Página 170
Control y monitorización de una plataforma móvil
}
Adrián Madorrán Ibáñez
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;
}
}
//---------------------------------------------------------------------------
Anexos
Página 171
Control y monitorización de una plataforma móvil
3.1.5.1.3 Librería puerto serie.
Adrián Madorrán Ibáñez
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 GNULINUX 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:
Anexos
Página 172
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 173
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 174
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 175
Control y monitorización de una plataforma móvil
Anexos
Adrián Madorrán Ibáñez
Página 176
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.
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
Anexos
Página 177
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 178
Control y monitorización de una plataforma móvil
3.2 Cálculos.
Adrián Madorrán Ibáñez
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:
-
Anexos
Tensión de alimentación: 5V.
Tensión del diodo: 1.7V.
Corriente del diodo: 10mA.
Página 179
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 180
Control y monitorización de una plataforma móvil
3.4 Otros documentos.
Adrián Madorrán Ibáñez
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:
Anexos
Página 181
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 182
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 183
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
Anexos
Página 184
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
Anexos
Página 185
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 186
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
-
Anexos
7FF: motor parado.
FFF: motor a máxima tensión hacia adelante.
000: motor a máxima tensión hacia atrás.
Página 187
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
Anexos
Página 188
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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):
Anexos
Página 189
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
Anexos
Página 190
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
Anexos
Página 191
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 192
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
Anexos
Página 193
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
Ilustración 112: Software Plataforma 17.
Anexos
Página 194
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
Anexos
Página 195
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
Ilustración 113: Market Android.
Y buscamos S2 Bluetooth Terminal2:
Ilustración 114: Market Android 2.
Anexos
Página 196
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
Anexos
Página 197
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
Anexos
Página 198
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 199
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 200
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
Anexos
Página 201
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 202
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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:
-
Anexos
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:
Página 203
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
 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.
-
Anexos
Recibimos la lectura de los encoders:
Página 204
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Anexos
Página 205
Control y monitorización de una plataforma móvil
-
Recibimos lectura de los encoders:
Adrián Madorrán Ibáñez
Ilustración 127: S2 Bluetooth Terminal2 12.
-
Enviamos 17FF97FF que nos para los motores:
Ilustración 128: S2 Bluetooth Terminal2 13.
Anexos
Página 206
Control y monitorización de una plataforma móvil
-
Recibimos lectura de los encoders:
Adrián Madorrán Ibáñez
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.
Anexos
Página 207
Control y monitorización de una plataforma móvil
-
Recibimos lectura de los encoders:
Adrián Madorrán Ibáñez
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.
Anexos
Página 208
Control y monitorización de una plataforma móvil
3.4.2 Contenido del CD.
Adrián Madorrán Ibáñez
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.
Anexos
Página 209
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
Í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
Planos
Página 211
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
4.1 Circuito eléctrico de la placa de control distribuido: P1.
Planos
Página 212
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
4.2 Circuito impreso para la placa de control distribuido: P2.
Planos
Página 213
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
Í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
Pliego de condiciones
Página 215
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
C01
u
M02
C01
u
M03
C01
u
M04
C01
u
M05
C01
u
M06
C01
u
M07
C01
u
M08
C01
u
M09
C01
u
M10
C02
u
KIT A4WD1V2 ROBOT
PLATAFORMA
1,000
1,000
1,000
__________
1,000
CONECTOR HEXAGONAL DE 12MM A 6MM
PLATAFORMA
1,000
1,000
1,000
__________
1,000
CABLE CONECTOR BATERÍA CON CONMUTADOR
PLATAFORMA
1,000
1,000
1,000
__________
1,000
MOTOR 7.2V 50:1 175RPM
PLATAFORMA
4,000
1,000
4,000
__________
4,000
RUEDA TODOTERRENO
PLATAFORMA
2,000
1,000
2,000
__________
2,000
ENCODER DIGITAL
PLATAFORMA
4,000
1,000
4,000
__________
4,000
ETAPA DE POTENCIA SABERTOOTH 2X5A
PLATAFORMA
2,000
1,000
2,000
__________
2,000
BATERÍA LIPO 3.7V 2100 MAH
PLATAFORMA
4,000
1,000
4,000
__________
4,000
CONECTOR TAMIYA
PLATAFORMA
2,000
1,000
2,000
__________
2,000
PIC32 STARTER KIT
CONTROL PRINCIPAL
1,000
1,000
1,000
__________
1,000
Pliego de condiciones
Página 216
Control y monitorización de una plataforma móvil
M11
C02
u
M12
C02
u
M13
C03
u
M14
C03
u
M15
C03
u
M16
C02
C03
u
M17
C02
C03
u
M18
C02
C03
u
M19
C03
u
M20
C03
u
M21
C03
u
M22
C03
u
M23
C03
u
M24
C03
u
STARTER KIT I/O EXPANSION BOARD
CONTROL PRINCIPAL
Adrián Madorrán Ibáñez
1,000
1,000
1,000
__________
1,000
TIRA DE 32 PINES TORNEADOS
CONTROL PRINCIPAL
5,000
1,000
5,000
__________
5,000
PIC16F877
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
PLACA COBRE PARA INSOLAR 70X85MM
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
ZÓCALO 40 PATILLAS
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
ZÓCALO 14 PATILLAS
CONTROL PRINCIPAL
CONTROL DISTRIBUIDO
1,000
2,000
1,000
1,000
1,000
2,000
__________
3,000
MCP4922
CONTROL PRINCIPAL
CONTROL DISTRIBUIDO
1,000
2,000
1,000
1,000
1,000
2,000
__________
3,000
TLE2425
CONTROL PRINCIPAL
CONTROL DISTRIBUIDO
1,000
2,000
1,000
1,000
1,000
2,000
__________
3,000
LED VERDE 5MM
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
RESISTENCIA 330 OHMS
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
RESISTENCIA 1K OHMS
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
RESISTENCIA 10K OHMS
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
DIODO D1N4007
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
CONDENSADOR CERÁMICO 2.2uF
CONTROL DISTRIBUIDO
6,000
1,000
6,000
__________
6,000
Pliego de condiciones
Página 217
Control y monitorización de una plataforma móvil
M25
C03
u
M26
C03
u
M27
C03
u
M28
C03
u
M29
C03
u
M30
C03
u
M31
C03
C04
u
M32
C03
u
M33
C03
u
M34
C03
u
CONDENSADOR CERÁMICO 22pF
CONTROL DISTRIBUIDO
Adrián Madorrán Ibáñez
4,000
1,000
4,000
__________
4,000
CRISTAL OSCILADOR 20 MHZ
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
PULSADOR 6 PATILLAS Y 2 POSICIONES
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
CONECTOR CI MACHO 8 PINES
CONTROL DISTRIBUIDO
6,000
1,000
6,000
__________
6,000
CONECTOR CI HEMBRA 8 PINES
CONTROL DISTRIBUIDO
6,000
1,000
6,000
__________
6,000
CONECTOR CI MACHO 6 PINES
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
CONECTOR CI HEMBRA 6 PINES
CONTROL DISTRIBUIDO
COMUNICACIONES
2,000
2,000
1,000
1,000
2,000
2,000
__________
4,000
CONECTOR CI MACHO 5 PINES
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
CONECTOR CI HEMBRA 5 PINES
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
CONECTOR CI MACHO 4 PINES
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
M35
C03
u
M36
C03
u
M37
C03
u
M38
C03
u
CONECTOR CI HEMBRA 4 PINES
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
CONECTOR CI MACHO 3 PINES
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
CONECTOR CI HEMBRA 3 PINES
CONTROL DISTRIBUIDO
2,000
1,000
2,000
__________
2,000
CONECTOR CI MACHO 2 PINES
CONTROL DISTRIBUIDO
8,000
1,000
8,000
__________
8,000
Pliego de condiciones
Página 218
Control y monitorización de una plataforma móvil
M39
C03
u
M40
C03
u
M41
C03
C04
u
M42
C03
u
M43
C03
u
M44
C04
u
M45
C04
u
M46
C04
u
M47
C04
m
M48
C01
m
M49
C05
u
M50
C05
m
M51
C05
m
M52
C05
m
CONECTOR CI HEMBRA 2 PINES
CONTROL DISTRIBUIDO
Adrián Madorrán Ibáñez
8,000
1,000
8,000
__________
8,000
PIN CABLE PARA CONECTOR CI
CONTROL DISTRIBUIDO
41,000
1,000
41,000
__________
41,000
PIN 2,54MM
CONTROL DISTRIBUIDO
COMUNICACIONES
16,000
3,000
1,000
1,000
16,000
3,000
__________
19,000
TORNILLO DE ACERO PHILIPS 4X12MM
CONTROL DISTRIBUIDO
6,000
1,000
6,000
__________
6,000
TUERCA ACERO 4MM
CONTROL DISTRIBUIDO
6,000
1,000
6,000
__________
6,000
MÓDULO BLUETOOTH EB301
COMUNICACIONES
1,000
1,000
1,000
__________
1,000
CABLE FTDI
COMUNICACIONES
1,000
1,000
1,000
__________
1,000
USB BLUETOOTH NW545
COMUNICACIONES
1,000
1,000
1,000
__________
1,000
CABLE APANTALLADO MULTICONDUCTOR
COMUNICACIONES
0,600
1,000
0,600
__________
0,600
CABLE DOBLE COBRE
PLATAFORMA
0,300
1,000
0,300
__________
0,300
CARGADOR BATERIAS LIPO
ELEMENTOS AUXILIARES
1,000
1,000
1,000
__________
1,000
CABLE MULTIFIBRILAR ROJO
ELEMENTOS AUXILIARES
0,300
1,000
0,300
__________
0,300
CABLE MULTIFIBRILAR NEGRO
ELEMENTOS AUXILIARES
0,300
1,000
0,300
__________
0,300
CABLE MULTIFIBRILAR BLANCO
ELEMENTOS AUXILIARES
0,300
1,000
0,300
__________
0,300
Pliego de condiciones
Página 219
Control y monitorización de una plataforma móvil
M53
C05
m
M54
C05
m
M55
C05
m
M56
C05
m
M57
C05
m
M58
C05
m
M59
C05
u
M60
C05
m
M61
C05
m
M62
C05
u
M63
C05
m
M64
C02
u
M65
C05
m
CABLE MULTIFIBRILAR AMARILLO
ELEMENTOS AUXILIARES
Adrián Madorrán Ibáñez
0,300
1,000
0,300
__________
0,300
CABLE MULTIFIBRILAR AZUL
ELEMENTOS AUXILIARES
0,300
1,000
0,300
__________
0,300
CABLE MULTIFIBRILAR VIOLETA
ELEMENTOS AUXILIARES
0,300
1,000
0,300
__________
0,300
CABLE MULTIFIBRILAR NARANJA
ELEMENTOS AUXILIARES
0,300
1,000
0,300
__________
0,300
CABLE MULTIFIBRILAR MARRÓN
ELEMENTOS AUXILIARES
0,300
1,000
0,300
__________
0,300
CABLE MULTIFIBRILAR GRIS
ELEMENTOS AUXILIARES
0,300
1,000
0,300
__________
0,300
BRIDA BLANCA
ELEMENTOS AUXILIARES
10,000
1,000
10,000
__________
10,000
CINTA AISLANTE NEGRA
ELEMENTOS AUXILIARES
0,500
1,000
0,500
__________
0,500
CINTA ADHESIVA DOBLE CARA
ELEMENTOS AUXILIARES
0,100
1,000
0,100
__________
0,100
PEGATINA BLANCA
ELEMENTOS AUXILIARES
2,000
1,000
2,000
__________
2,000
ESTAÑO
ELEMENTOS AUXILIARES
0,100
1,000
0,100
__________
0,100
EUROPLACA
CONTROL PRINCIPAL
2,000
1,000
2,000
__________
2,000
TUBO TERMORRETRACTIL
ELEMENTOS AUXILIARES
0,500
1,000
0,500
__________
0,500
Pliego de condiciones
Página 220
Control y monitorización de una plataforma móvil
5.1.2 Calidades mínimas a exigir.
Adrián Madorrán Ibáñez
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.
Pliego de condiciones
Página 221
Control y monitorización de una plataforma móvil
5.1.3 Pruebas y ensayos a que debe someterse.
Adrián Madorrán Ibáñez
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.
Pliego de condiciones
Página 222
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Pliego de condiciones
Página 223
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Pliego de condiciones
Página 224
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
Pliego de condiciones
Página 225
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
Í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
Estado de mediciones
Página 227
Control y monitorización de una plataforma móvil
6.1 Capítulo 1: Plataforma.
Adrián Madorrán Ibáñez
CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL
CÓDIGO
RESUMEN
UDS LONGITUD ANCHURA ALTURA PARCIALES
CANTIDAD
_____________________________________________________________________________________________________________
M01
CAPÍTULO C01 PLATAFORMA
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 (MW-01) y 23 tornillos de montaje (PHS-09).
_________________________
M02
u
1,00
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.
_________________________
M03
u
1,00
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 y en el otro extremo los cables están al aire.
_________________________
M04
u
1,00
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.
_________________________
M05
u
RUEDA TODOTERRENO
4,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.
_________________________
M06
u
ENCODER DIGITAL
2,00
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.
_________________________
M07
u
ETAPA DE POTENCIA SABERTOOTH 2X5A
4,00
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.
_________________________
M08
u
BATERÍA LIPO 3.7V 2100 MAH
2,00
Fabricante: VARTA.
Referencia: Batería lipo para montaje con terminales de fácil soldadura. Capacidad: 2100 mAh. Tensión: 3,7V.
_________________________
4,00
Estado de mediciones
Página 228
Control y monitorización de una plataforma móvil
CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL
Adrián Madorrán Ibáñez
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.
_________________________
M48
m
CABLE DOBLE COBRE
Distribuido: Sel.
Referencia: Cable doble rojo-negro de cobre. Diámetro 2,5mm.
2,00
_________________________
0,30
Estado de mediciones
Página 229
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
6.2 Capítulo 2: Control Principal.
CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL
CÓDIGO
RESUMEN
UDS LONGITUD ANCHURA ALTURA PARCIALES
CANTIDAD
_____________________________________________________________________________________________________________
M10
CAPÍTULO C02 CONTROL PRINCIPAL
u
PIC32 STARTER KIT
Fabricante: Microchip.
Referencia: DM320001.
Kit que contiene: microcontrolador PIC32MX360F512L, CD con MPLAB y compilador C32 y cable
USB.
_________________________
M11
u
STARTER KIT I/O EXPANSION BOARD
1,00
Fabricante: Microchip.
Referencia: DM320002.
Placa de expansión de puertos para Starter Kit. Permite el acceso a todos los puertos del microcontrolador.
_________________________
M12
u
TIRA DE 32 PINES TORNEADOS
Suministrador: RSONLINE.
Referencia: 267-7416.
Zócalo SIL pin torneado de 32 vías.
M17
u
MCP4922
Suministrador: RSONLINE.
Fabricante: Microchip.
Referencia: 402-881.
Conversor D/A dual de 12 bits con comunicación SPI.
M18
u
TLE2425
Suministrador: RSONLINE.
Fabricante: Texas Instruments
Referencia: 661-9833.
Tensión de referencia 2,5V 20mA 3 pins y encapsulado TO-92.
M16
u
ZÓCALO 14 PATILLAS
Suministrador: RSONLINE.
Referencia: 402-765.
Zócalo DIL perfil bajo de 14 vías.
M64
u
EUROPLACA
Distribuido: Sel.
Referencia: Europlaca de 2x3cm de epoxy con espesor de cobre 35um.
1,00
_________________________
5,00
_________________________
1,00
_________________________
1,00
_________________________
1,00
_________________________
2,00
Estado de mediciones
Página 230
Control y monitorización de una plataforma móvil
6.3 Capítulo 3: Control Distribuido.
Adrián Madorrán Ibáñez
CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL
CÓDIGO
RESUMEN
UDS LONGITUD ANCHURA ALTURA PARCIALES
CANTIDAD
_____________________________________________________________________________________________________________
M13
CAPÍTULO C03 CONTROL DISTRIBUIDO
u
PIC16F877
Suministrador: RSONLINE.
Referencia: 698-9000.
MCU 16F877 encapsulado PDIP.
M14
u
PLACA COBRE PARA INSOLAR 70X85MM
_________________________
2,00
Suministrador: RSONLINE.
Referencia: 397-0097.
Eurocard de una cara chapada de cobre fotorresistente. Espesor de placa 1,6mm. Espesor de cobre
35um.
_________________________
M15
u
ZÓCALO 40 PATILLAS
Suministrador: RSONLINE.
Referencia: 228-0090.
Zócalo DIP corto pines estampados 40 vías.
M16
u
ZÓCALO 14 PATILLAS
Suministrador: RSONLINE.
Referencia: 402-765.
Zócalo DIL perfil bajo de 14 vías.
M17
u
MCP4922
Suministrador: RSONLINE.
Fabricante: Microchip.
Referencia: 402-881.
Conversor D/A dual de 12 bits con comunicación SPI.
M18
u
TLE2425
Suministrador: RSONLINE.
Fabricante: Texas Instruments
Referencia: 661-9833.
Tensión de referencia 2,5V 20mA 3 pins y encapsulado TO-92.
M19
u
LED VERDE 5MM
Suministrador: RSONLINE.
Referencia: 826-379.
Led verde 5mm 10mA.
M20
u
RESISTENCIA 330 OHMS
Suministrador: RSONLINE.
Referencia: 135-825.
Resistencia de película de carbón 330R y 0,25W.
M21
u
RESISTENCIA 1K OHMS
2,00
_________________________
2,00
_________________________
2,00
_________________________
2,00
_________________________
2,00
_________________________
2,00
_________________________
2,00
Suministrador: RSONLINE.
Referencia: 135-847.
Resistencia de película de carbón 1kR y 0,25W.
_________________________
2,00
Estado de mediciones
Página 231
Control y monitorización de una plataforma móvil
CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL
Adrián Madorrán Ibáñez
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.
M23
u
DIODO D1N4007
_________________________
2,00
Suministrador: RSONLINE.
Referencia: 628-9546.
Diodo rectificador GS, 1A 1000Vrrm.
_________________________
M24
u
CONDENSADOR CERÁMICO 2.2uF
2,00
Suministrador: RSONLINE.
Referencia: 537-4003.
Condensador cerámico 50V 2,2uF
_________________________
M25
u
CONDENSADOR CERÁMICO 22pF
Suministrador: RSONLINE.
Referencia: 652-9866.
Condensador cerámico radial 100V 22pF
M26
u
CRISTAL OSCILADOR 20 MHZ
Suministrador: RSONLINE.
Referencia: 693-8759.
Cristal oscilador de cuarzo 20MHz.
M27
u
PULSADOR 6 PATILLAS Y 2 POSICIONES
Suministrador: RSONLINE.
Referencia: 734-6763.
Pulsador interruptor para PCB.
M28
u
CONECTOR CI MACHO 8 PINES
Suministrador: SEL.
Referencia: BTWM8
Conector macho para PCB con 8 contactos de 2,54mm.
M29
u
CONECTOR CI HEMBRA 8 PINES
Suministrador: SEL.
Referencia: BTWF8
Conector hembra para PCB para 8 contactos de 2,54mm.
M30
u
CONECTOR CI MACHO 6 PINES
Suministrador: SEL.
Referencia: BTWM6
Conector macho para PCB con 6 contactos de 2,54mm.
M31
u
CONECTOR CI HEMBRA 6 PINES
Suministrador: SEL.
Referencia: BTWF6
Conector hembra para PCB para 6 contactos de 2,54mm.
Estado de mediciones
6,00
_________________________
4,00
_________________________
2,00
_________________________
2,00
_________________________
6,00
_________________________
6,00
_________________________
2,00
_________________________
Página 232
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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.
M33
u
CONECTOR CI HEMBRA 5 PINES
Suministrador: SEL.
Referencia: BTWF5
Conector hembra para PCB para 5 contactos de 2,54mm.
M34
u
CONECTOR CI MACHO 4 PINES
Suministrador: SEL.
Referencia: BTWM4
Conector macho para circuito integrado con 4 contactos de 2,54mm.
M35
u
CONECTOR CI HEMBRA 4 PINES
Suministrador: SEL.
Referencia: BTWF4
Conector hembra para PCB para 4 contactos de 2,54mm.
M36
u
CONECTOR CI MACHO 3 PINES
Suministrador: SEL.
Referencia: BTWM3
Conector macho para PCB con 3 contactos de 2,54mm.
M37
u
CONECTOR CI HEMBRA 3 PINES
Suministrador: SEL.
Referencia: BTWF3
Conector hembra para PCB para 3 contactos de 2,54mm.
M38
u
CONECTOR CI MACHO 2 PINES
Suministrador: SEL.
Referencia: BTWM2
Conector macho para PCB con 2 contactos de 2,54mm.
M39
u
CONECTOR CI HEMBRA 2 PINES
Suministrador: SEL.
Referencia: BTWF2
Conector hembra para PCB para 2 contactos de 2,54mm.
M40
u
PIN CABLE PARA CONECTOR CI
Suministrador: SEL.
Referencia: Pin para cable para conector hembra CI.
M41
u
PIN 2,54MM
_________________________
2,00
_________________________
2,00
_________________________
2,00
_________________________
2,00
_________________________
2,00
_________________________
2,00
_________________________
8,00
_________________________
8,00
_________________________
41,00
Suministrador: SEL.
Referencia: Pin 2,54mm macho para PCB.
Estado de mediciones
Página 233
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
_________________________
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.
M43
u
TUERCA ACERO 4MM
Suministrador: Referencia: Tuerca de acero 4mm.
_________________________
6,00
_________________________
6,00
Estado de mediciones
Página 234
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
6.4 Capítulo 4: Comunicaciones.
CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL
CÓDIGO
RESUMEN
UDS LONGITUD ANCHURA ALTURA PARCIALES
CANTIDAD
_____________________________________________________________________________________________________________
M44
CAPÍTULO C04 COMUNICACIONES
u
MÓDULO BLUETOOTH EB301
Distribuido: MSE Bilbao.
Fabricante: A7 Eng.
Referencia: Modulo adaptador serie bluetooth 3V/5V. Antena integrada.
M45
u
_________________________
1,00
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.
_________________________
M46
u
1,00
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.).
_________________________
M31
u
CONECTOR CI HEMBRA 6 PINES
Suministrador: SEL.
Referencia: BTWF6
Conector hembra para PCB para 6 contactos de 2,54mm.
M47
m
CABLE APANTALLADO MULTICONDUCTOR
Distribuido: Sel.
Referencia: SHC4019
Cable apantallado con cuatro cables en su interior de aluminio. 4x0,19mm2
M41
u
PIN 2,54MM
Suministrador: SEL.
Referencia: Pin 2,54mm macho para PCB.
1,00
_________________________
2,00
_________________________
0,60
_________________________
3,00
Estado de mediciones
Página 235
Control y monitorización de una plataforma móvil
6.5 Capítulo 5: Elementos Auxiliares.
Adrián Madorrán Ibáñez
CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL
CÓDIGO
RESUMEN
UDS LONGITUD ANCHURA ALTURA PARCIALES
CANTIDAD
_____________________________________________________________________________________________________________
M49
CAPÍTULO C05 ELEMENTOS AUXILIARES
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
_________________________
M50
m
CABLE MULTIFIBRILAR ROJO
Distribuido: Sel.
Fabricante: Referencia: MOWR.
Cable multifibrilar de aluminio de color rojo. Diámetro 1mm.
M51
m
CABLE MULTIFIBRILAR NEGRO
Distribuido: Sel.
Fabricante: Referencia: MOWBK.
Cable multifibrilar de aluminio de color negro. Diámetro 1mm.
M52
m
CABLE MULTIFIBRILAR BLANCO
Distribuido: Sel.
Fabricante: Referencia: MOWW.
Cable multifibrilar de aluminio de color blanco. Diámetro 1mm.
M53
m
CABLE MULTIFIBRILAR AMARILLO
Distribuido: Sel.
Fabricante: Referencia: MOWY.
Cable multifibrilar de aluminio de color amarillo. Diámetro 1mm.
M54
m
CABLE MULTIFIBRILAR AZUL
Distribuido: Sel.
Fabricante: Referencia: MOWB.
Cable multifibrilar de aluminio de color azul. Diámetro 1mm.
M55
m
CABLE MULTIFIBRILAR VIOLETA
Distribuido: Sel.
Fabricante: Referencia: MOWV.
Cable multifibrilar de aluminio de color violeta. Diámetro 1mm.
M56
m
CABLE MULTIFIBRILAR NARANJA
Distribuido: Sel.
Fabricante: Referencia: MOWO.
Cable multifibrilar de aluminio de color naranja. Diámetro 1mm.
1,00
_________________________
0,30
_________________________
0,30
_________________________
0,30
_________________________
0,30
_________________________
0,30
_________________________
0,30
_________________________
0,30
Estado de mediciones
Página 236
Control y monitorización de una plataforma móvil
CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL
Adrián Madorrán Ibáñez
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.
M58
m
CABLE MULTIFIBRILAR GRIS
Distribuido: Sel.
Fabricante: Referencia: MOWGR.
Cable multifibrilar de aluminio de color gris. Diámetro 1mm.
M59
u
BRIDA BLANCA
Distribuido: Sel.
Referencia: Brida blanca de longitud 10cm.
M60
m
CINTA AISLANTE NEGRA
Distribuido: Sel.
Fabricante: Referencia: Cinta aislante negra de 1cm de anchura.
M61
m
CINTA ADHESIVA DOBLE CARA
Distribuido: Sel.
Referencia: Cinta adhesiva de doble cara blanca de 1mm de grosor.
M62
u
PEGATINA BLANCA
_________________________
0,30
_________________________
0,30
_________________________
10,00
_________________________
0,50
_________________________
0,10
Distribuido: Referencia: Pegatina blanca de 2x5cm.
_________________________
M63
m
ESTAÑO
2,00
Distribuido: Sel.
Referencia: Estaño sin plomo con alma de resina de 0,6 mm de diámetro.
_________________________
M65
m
TUBO TERMORRETRACTIL
0,10
Distribuido: RSONLINE
Referencia: 170-6383.
Funda termorretractil negra de 3,2mm de diámetro.
_________________________
0,50
Estado de mediciones
Página 237
Control y monitorización de una plataforma móvil
6.6 Capítulo 6: Mano de Obra.
Adrián Madorrán Ibáñez
CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL
CÓDIGO
RESUMEN
UDS LONGITUD ANCHURA ALTURA PARCIALES
CANTIDAD
_____________________________________________________________________________________________________________
MO01
CAPÍTULO C06 MANO DE OBRA
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.
_________________________
MO02
h
MONTADOR PLACAS ELECTRONICAS
15,00
Honorarios de un montador con cualificación básica para la realización de las placas electrónicas, taladrado, comprobación y soldado de componentes.
_________________________
MO03
h
PROGRAMADOR PIC16F877
10,00
Honorarios de un programador con cualificación para la programación en lenguaje C de un PIC
16F877.
_________________________
MO04
h
PROGRAMADOR PIC32
30,00
Honorarios de un programador con cualificación para la programación en lenguaje C de un PIC 32.
_________________________
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.
_________________________
50,00
Estado de mediciones
Página 238
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
Í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
Presupuesto
Página 240
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
Presupuesto
Página 241
Control y monitorización de una plataforma móvil
M07
u
ETAPA DE POTENCIA SABERTOOTH 2X5A
Adrián Madorrán Ibáñez
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
Presupuesto
Página 242
Control y monitorización de una plataforma móvil
7.1.2 Capítulo 2: Control Principal.
Adrián Madorrán Ibáñez
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 microcontrolador.
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
Presupuesto
Página 243
Control y monitorización de una plataforma móvil
7.1.3 Capítulo 3: Control Distribuido.
Adrián Madorrán Ibáñez
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
Presupuesto
Página 244
Control y monitorización de una plataforma móvil
M22
u
RESISTENCIA 10K OHMS
Adrián Madorrán Ibáñez
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
Presupuesto
Página 245
Control y monitorización de una plataforma móvil
M32
u
CONECTOR CI MACHO 5 PINES
Adrián Madorrán Ibáñez
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
Presupuesto
Página 246
Control y monitorización de una plataforma móvil
M43
u
TUERCA ACERO 4MM
Adrián Madorrán Ibáñez
0,25
Suministrador: Referencia: Tuerca de acero 4mm.
CERO EUROS con VEINTICINCO CÉNTIMOS
Presupuesto
Página 247
Control y monitorización de una plataforma móvil
7.1.4 Capítulo 4: Comunicaciones.
Adrián Madorrán Ibáñez
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
Presupuesto
Página 248
Control y monitorización de una plataforma móvil
7.1.5 Capítulo 5: Elementos auxiliares.
Adrián Madorrán Ibáñez
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
Presupuesto
Página 249
Control y monitorización de una plataforma móvil
M57
m
CABLE MULTIFIBRILAR MARRÓN
Adrián Madorrán Ibáñez
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
Presupuesto
Página 250
Control y monitorización de una plataforma móvil
7.1.6 Capítulo 6: Mano de obra
Adrián Madorrán Ibáñez
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ónicas, 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
Presupuesto
Página 251
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
Presupuesto
u
ENCODER DIGITAL
Página 252
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
Presupuesto
Página 253
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
Presupuesto
Página 254
Control y monitorización de una plataforma móvil
7.2.3 Capítulo 3: Control Distribuido.
Adrián Madorrán Ibáñez
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
Presupuesto
Página 255
Control y monitorización de una plataforma móvil
M20
u
RESISTENCIA 330 OHMS
Suministrador: RSONLINE.
Referencia: 135-825.
Resistencia de película de carbón 330R y 0,25W.
Adrián Madorrán Ibáñez
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
Presupuesto
Página 256
Control y monitorización de una plataforma móvil
M28
u
CONECTOR CI MACHO 8 PINES
Suministrador: SEL.
Referencia: BTWM8
Adrián Madorrán Ibáñez
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
Presupuesto
Página 257
Control y monitorización de una plataforma móvil
M37
u
CONECTOR CI HEMBRA 3 PINES
Suministrador: SEL.
Referencia: BTWF3
Adrián Madorrán Ibáñez
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
Presupuesto
Página 258
Control y monitorización de una plataforma móvil
Adrián Madorrán Ibáñez
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
Presupuesto
Página 259
Control y monitorización de una plataforma móvil
7.2.5 Capítulo 5: Elementos Auxiliares.
Adrián Madorrán Ibáñez
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
Presupuesto
Página 260
Control y monitorización de una plataforma móvil
M56
m
Adrián Madorrán Ibáñez
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
Presupuesto
Página 261
Control y monitorización de una plataforma móvil
M65
m
Adrián Madorrán Ibáñez
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
Presupuesto
Página 262
Control y monitorización de una plataforma móvil
7.2.6 Capítulo 6: Mano de obra
Adrián Madorrán Ibáñez
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
Presupuesto
Página 263
Control y monitorización de una plataforma móvil
7.3 Presupuesto.
Adrián Madorrán Ibáñez
RESUMEN DE PRESUPUESTO
CONTROL Y PROGRAMACION DE UNA PLATAFORMA MOVIL
CAPITULO
RESUMEN
EUROS
_______________________________________________________________________________
C01
C02
C03
C04
C05
C06
%
________
PLATAFORMA ................................................................. 399,94
CONTROL PRINCIPAL ...................................................... 108,77
CONTROL DISTRIBUIDO ................................................... 75,04
COMUNICACIONES .......................................................... 73,18
ELEMENTOS AUXILIARES .................................................. 20,71
MANO DE OBRA .......................................................... 3.470,00
___________________
9,64
2,62
1,81
1,76
10,50
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
Presupuesto
Página 264
Descargar