Glosario Blanca Rubio Díaz GLOSARIO DE SIGLAS Y ACRÓNIMOS ADC: Analog to Digital Conversion DAC: Digital to Analog Conversion DIO: Digital Input/Output DNS: Domain Name System ESC: Electronic Speed Control ESSIDD: Extended Service Set Identifier FPGA: Field Programmable Gate Array FTP: File Transfer Protocol GPIO: Global Purpose Input/Output GUI: Graphical User Interface IMU: Inertial Measurement Unit LED: Light Emitting Diode LSB: Least Significant Bit LUT: Lookup Table MSB: Most Significant Bit POSIX: Portable Operating System Interface PWM: Pulse Width Modulation SBC: Single Board Computer SD: Secure Digital TTL: Transistor-transistor logic UART: Universal Asynchronous Receiver-Transmitter UAV: Unmanned Aerial Vehicle USB: Universal Serial Bus 123 Bibliografía Blanca Rubio Díaz BIBLIOGRAFÍA [1] Sergio Esteban Roncero (2011), “Three-time Scale Singular Perturbation Control and Stability Analysis for a Radio-Control Helicopter”. Tesis Doctoral. Universidad de Sevilla. [2] Pablo Pujol Pérez (2007), “Aplicación de Tiempo Real para Sistemas de Control de Vuelo de un Helicóptero de Aeromodelismo”. Proyecto Fin de Carrera. Universidad de Sevilla. [3] José Manuel Santos García (2007), “Caja Aviónica para Teleoperación y Control desde Estación Base Terrestre Adaptable al Helicóptero Comercial de Radio Control X-CELLSPECTRA-G-3D”. Proyecto Fin de Carrera. Universidad de Sevilla. [4] Adrián Jiménez González (2007), “Implementación de Sensores de Altitud en Plataforma de Pruebas para Helicópteros RC”. Proyecto Fin de Carrera. Universidad de Sevilla. [5] Patricia Rodríguez Díaz-Peñalver (2008), “Diseño y programación de interfaz gráfica para comunicación, monitorización y control de vehículo aéreo no tripulado”. Proyecto Fin de Carrera. Universidad de Sevilla. [6] José Enrique Navarro Collado (2010), “Diseño e Implementación de Sensores de las Variables de Estado de un Helicóptero”. Proyecto Fin de Carrera. Universidad de Sevilla. [7] Javier Galnares Arias, Título por determinar. Proyecto Fin de Carrera. Universidad de Sevilla. [8] Manual de la Single Board Computer TS-7800 de Technologic Systems. [9] Manual del periférico PC/104 para CAD TS-9700 de Technologic Systems. [10]“Pololu Maestro Servo Controller Users Guide”, Pololu Corporation (2010). [11] Manual del RC Servo Multiplexer 4 Channel (Assembled), Pololu Corporation. [12] Instrucciones del controlador de velocidad digital para helicópteros de RC Throttle Jockey, Model Avionics. [13] Thunder Tiger Raptor R30 V.2 User’s Manual. [14] Oscilloscope CS328A Manual, Cleverscope. 124 Bibliografía Blanca Rubio Díaz [15] Alejandro Arias Alcaraz y Antonio Luque Estepa (2004), “Manual de MicroCap V Demo”, Circuitos Electrónicos, 2º Ingeniero de Telecomunicación, Universidad de Sevilla. [16] “555 Timer IC”, Wikipedia (2009). [17] “Manual de uso de Baterías de polímero de litio”, RCmaterial (2006) 125 Anexo A: Maestro Control Center Blanca Rubio Díaz ANEXO A: Maestro Control Center La interfaz USB del Maestro ofrece acceso a todas las opciones de configuración, así como soporte para control en tiempo real, realimentación y depuración. El Maestro Control Center es una herramienta gráfica que facilita el uso de la interfaz USB. Lo habitual en prácticamente cualquier proyecto es realizar las pruebas iniciales del Maestro mediante este programa. En función de cuál de las seis pestañas que presenta el Maestro Control Center seleccionemos, podremos realizar distintas pruebas con nuestro Mini Maestro: Pestaña de estado. Se emplea para controlar las salidas del Maestro y monitorizar su estado en tiempo real. Pestaña de errores. Indica problemas que el Maestro ha detectado durante su funcionamiento, bien por errores de comunicación o bien por fallos en un script. Pestaña de configuración de canales. Contiene controles para configurar muchos de los parámetros que caracterizan a los canales del Maestro, lo que definirá su operación desde el arranque. Pestaña de configuración serie. El Maestro dispone de tres interfaces serie diferentes; esta pestaña permite la configuración del modo de funcionamiento que desee el usuario. Pestaña de secuencia. Permite la creación de secuencias de movimientos sencillos para que sean reproducidas posteriormente en el Maestro. Pestaña de script. Permite la creación de un script, que no es más que una secuencia de comandos que serán ejecutados por el Maestro. A continuación describiremos el funcionamiento de las tres pestañas que nos interesan para el uso que queremos dar al Maestro en el marco del proyecto Hermes: la pestaña de estado, la de configuración de canales y la de configuración serie. Pestaña de Estado y Control en Tiempo Real Esta pestaña es muy útil para las pruebas preliminares del Maestro. Una vez configurado su funcionamiento con la pestaña de configuración serie, esta pestaña nos sirve para operar manualmente sobre los servos conectados a los canales del Maestro. 126 Anexo A: Maestro Control Center Blanca Rubio Díaz Figura 86: Pestaña de Estado y Control en Tiempo Real del Maestro Control Center Existe una fila de controles para cada uno de los 12 canales del Mini Maestro 12. Para un canal configurado como servo o salida, la casilla de verificación correspondiente habilita la salida, la barra deslizante nos permite ajustar el objetivo y la bola verde indica la posición actual del canal. La barra está automáticamente escalada de acuerdo con los valores mínimo y máximo especificados para el canal en la pestaña de configuración de canales. Para un canal configurado como entrada, la barra deslizante, la bola verde y las cajas de texto de Target y Position muestran el valor actual de la entrada. Para las entradas no disponemos de ningún tipo de control en la pestaña. Las entradas a los 12 canales son analógicas, con un rango comprendido entre 0 y 255.75, que representa tensiones desde 0 hasta 5 V. Pestaña de Configuración de Canales Al igual que en la pestaña de estado y control en tiempo real, en esta pestaña contamos con una fila de controles para configurar cada uno de los canales del Mini Maestro. 127 Anexo A: Maestro Control Center Blanca Rubio Díaz Figura 87: Pestaña de Configuración de Canales del Maestro Control Center Name. El usuario puede dar el nombre que desee a cada uno de los canales. Mode. El modo del canal es el parámetro clave que determina su operación. Hay tres opciones: o Servo. Viene activado por defecto, e indica que el canal funcionará como una señal PWM de salida hacia un servo de radiocontrol. o Entrada. Especifica que el canal se usará como entrada analógica, que se medirá continuamente como un valor entre 0 y 1023 (VCC) a una tasa máxima de 20 Hz. Los valores mostrados en las cajas de texto Target y Position de la pestaña de estado están expresadas en unidades de cuarto de microsegundo, por lo que el máximo valor de 1023 se representará como 255.75. o Salida. Especifica que el canal debería ser usado como una simple salida digital. En vez de indicar el ancho de pulso, el valor de posición del canal se usa para controlar si la salida está a nivel bajo (0 V) o alto (VCC). Por defecto, la salida estará a nivel bajo, salvo que el valor de posición sea igual o superior a 1500.00 μs. Rate. Especifica cuál de las dos tasas de pulso posibles se quiere aplicar a cada canal de servo. Las tasas disponibles se configuran con el Period y el Period Multiplier, explicados más adelante. Min y Max. Especifican los valores permitidos para la posición de un canal. Para canales configurados como servos, Min y Max se corresponden con los anchos de pulso mínimo y máximo permitidos para el servo, expresados en microsegundos. On startup or error. Esta opción especifica qué valor de objetivo debe sacarse por un canal al arranque (tras encender o resetear) o cuando se produce un error. o Off indica que el servo debe estar inicialmente apagado y debe apagarse cada vez que haya un error. o Ignore indica que el servo debe estar inicialmente apagado, pero su valor no cambiará con los errores. 128 Anexo A: Maestro Control Center Blanca Rubio Díaz o Go to indica una posición inicial por defecto para el servo. Éste se dirigirá hasta esta posición al encenderse el Maestro o cuando se produzca algún error. Speed. Esta opción indica la velocidad del servo en unidades de (0.25 μs) / (10 ms). Si el periodo empleado es distinto del que viene por defecto (20 ms), las unidades de velocidad serán diferentes, como vemos en la Tabla 34. Acceleration. Esta opción indica la aceleración del servo en unidades de (0.25 μs) / (10 ms) / (80 ms). Si el periodo empleado es distinto del que viene por defecto (20 ms), las unidades de aceleración serán diferentes, como vemos también en la Tabla 34. 8-bit neutral. Esta opción indica el valor del objetivo, en microsegundos, correspondiente a 127 (posición neutra) para los comandos de 8 bits. 8-bit range. Esta opción indica los valores de objetivos accesibles con comandos de 8 bits. Un valor 0 en 8 bits corresponde a un objetivo que resulta de restar a la posición neutra el rango definido, mientras que un valor de 254 supone un valor de objetivo igual a la suma de la posición neutra más el rango. Además, en el caso del Mini Maestro 12, aparecen dos opciones de configuración avanzadas comunes a todos los canales: Period. Establece el periodo de todos los pulsos de servo en milisegundos. Las unidades de velocidad y aceleración dependen del periodo configurado, tal como muestra la Tabla 34. Periodo (T) Tasa T=20 ms 50 Hz Unidades de Velocidad (0.25 μs) / (10 ms) Unidades de Aceleración (0.25 μs) / (10 ms)/ (80 ms) T=3-19 ms >50 Hz (0.25 μs) / T (0.25 μs) / T/ (8T) T=>20 ms <50 Hz (0.25 μs) / (T/2) (0.25 μs) / (T/2)/ (4T) Tabla 34: Unidades de velocidad y aceleración según periodo definido Period Multiplier. Permite seleccionar un periodo mayor para algunos de los canales, siempre que tome un valor mayor que 1. Así, se permite seleccionar, a parte del periodo previamente definido por el usuario, un periodo adicional resultante de multiplicar el primero por el multiplicador. Como resultado de analizar la señal PWM que nuestra receptora envía a los servos, detectamos que el período es de 20.5 ms. Puesto que el Maestro Control Center no permite introducir valores no enteros para el periodo y el multiplicador de periodo, tendremos que conformarnos con los 20 ms que vienen configurados por defecto. En cuanto a los valores máximo y mínimo permitidos para los objetivos, en prevención de posibles cambios en los servos entre distintos experimentos, dejaremos los especificados por defecto, que comprenden todo el rango posible. Lo que sí haremos será llevar a cabo una calibración de los servos al inicio de cada experimento, que determinará las posiciones extremas permitidas, y nos permitirá limitar el rango de giro por código durante la ejecución de nuestro programa. 129 Anexo A: Maestro Control Center Blanca Rubio Díaz Pestaña de Configuración Serie El Maestro dispone de tres interfaces serie. En primer lugar, las líneas TX y RX permiten al Maestro enviar y recibir bytes serie TTL (0-5 V) no invertidos. En segundo lugar, el Maestro aparece como dos puertos serie virtuales cuando lo conectamos mediante USB a un PC. Uno de estos puertos es el Command Port, y el otro el TTL Port. En Windows, puede determinarse el número de puerto COM de estos puertos mediante el Administrador de Dispositivos. En Linux, el Command Port suele aparecer como /dev/tty/ACM0, y el TTL Port como /DEV/ttyACM1. Las distintas opciones de configuración de la interfaz serie se controlan desde la pestaña de configuración serie del Maestro Control Center. Figura 88: Pestaña de Configuración Serie del Maestro Control Center El resto de parámetros de la pestaña de configuración serie nos permiten habilitar un byte de CRC al final de cada byte serie, asignar un número a nuestro dispositivo entre 0 y 127 para direccionarlo al usar el Pololu Protocol cuando tenemos distintos dispositivos conectados en serie, determinar a qué números de servo responderá el dispositivo en el Mini SSC Protocol, especificar el tiempo que debe transcurrir antes de que se produzca un Serial Timeout Error y, por último, desactivar la suspensión por defecto del Maestro cuando sólo está alimentado vía USB y detecta que el USB ha entrado en suspensión. En nuestro caso, el funcionamiento que requerimos del Maestro es el del USB Dual, así que éste será el único cambio que tendremos que hacer en la pestaña de configuración serie. Este cambio debe hacerse antes de empezar a probar el Mini Maestro en el ordenador de a bordo (que ejecuta Linux), por lo que primero se debe cambiar la configuración del Mini Maestro mediante el Maestro Control Center en un PC con Windows, y, una vez guardada la nueva configuración, se puede conectar el Mini Maestro por USB al ordenador de a bordo. 130 Anexo B: Configuración de la Red de Área Local Blanca Rubio Díaz ANEXO B: Configuración de la Red de Área Local Lo primero que tenemos que hacer es configurar el router para que la LAN tenga las propiedades que deseamos. Para ello, no tenemos más que escribir su dirección IP en la barra de direcciones de nuestro navegador, y nos aparecerá la pantalla de configuración. Establecemos la configuración deseada del router mediante los siguientes pasos: 1. Configuración de los parámetros inalámbricos. De esta pestaña lo más importante es elegir un nombre para la red (el SSID), así como un número de canal y el tipo de autenticación. Figura 89: Configuración del router Dl-524UP (I) 2. Configuración de la LAN. En esta pestaña debemos seleccionar un rango de direcciones IP, al que deben pertenecer las direcciones otorgadas al PC de tierra y al computador de a bordo para permitir su conexión. 131 Anexo B: Configuración de la Red de Área Local Blanca Rubio Díaz Figura 90: Configuración del router Dl-524UP (II) 3. Configuración de DHCP. De lo único que nos tenemos que preocupar en esta pestaña es de que el DHCP esté deshabilitado, puesto que la asignación de las direcciones IP del PC de tierra y el computador de a bordo será manual. Figura 91: Configuración del router Dl-524UP (III) 132 Anexo B: Configuración de la Red de Área Local Blanca Rubio Díaz Una vez configurada la red LAN, editamos los parámetros de conexión del PC de tierra. 1. Dentro de la pestaña “General” de la ventana “Propiedades de Conexión de Red Inalámbrica” del PC de tierra, marcamos “Protocolo Internet TCP/IP" y pulsamos sobre “Propiedades”. Editamos la pestaña “General” de la ventana que aparece, tal como muestra la Figura 92. Figura 92: Configuración de la conexión a la LAN del ordenador de tierra (I) 2. En la pestaña de “Redes Inalámbricas” de la ventana “Propiedades de Conexiones de Red Inalámbricas”, marcamos la opción de “Usar Windows para establecer mi configuración de red inalámbrica”. Pulsamos sobre el botón “Agregar” en el apartado de “Redes Preferidas”. 3. En la nueva ventana de “Propiedades de red inalámbrica”, en la pestaña de “Asociación” introducimos como nombre de red (SSID): waplpb y seleccionamos “Abierta” en “Autenticación de red” y “Deshabilitado” en “Cifrado de datos”. 133 Anexo B: Configuración de la Red de Área Local Blanca Rubio Díaz Figura 93: Configuración de la conexión a la LAN del ordenador de tierra (II) A continuación, modificamos los parámetros de conexión de la TS-7800 dando los pasos habituales para la conexión a una red LAN de un equipo con sistema operativo Debian que se enumeran en el Apartado 3.2.2.2. Para comprobar que la configuración es exitosa y la TS-7800 se ha conectado correctamente a waplpb, tecleamos >>ifconfig y >>iwconfig y nos debe aparecer el resultado que mostramos en la Figura 94 y la Figura 95. Figura 94: Configuración de las interfaces de red de la TS-7800 134 Anexo B: Configuración de la Red de Área Local Blanca Rubio Díaz Figura 95: Configuración de las interfaces de red inalámbricas de la TS-7800 135 Anexo C: Conexiones Telnet y FTP con la TS-7800 Blanca Rubio Díaz ANEXO C: Conexiones Telnet y FTP con la TS-7800 Conexión Telnet para operar con la TS-7800 Tal como adelantamos en el Apartado 3.2.2.2, la TS-7800 tiene que ser accedida desde un PC con un emulador de terminal. Para ello, una vez configurados los parámetros de red convenientemente, no tenemos más que recurrir al emulador de terminal PuTTy, gracias al cual podremos conectarnos como clientes al servidor Telnet instalado en la TS-7800. La conexión a un servidor Telnet desde un PC con PuTTY requiere únicamente que indiquemos la IP del servidor, el protocolo de comunicación y el número de puerto al que queremos conectarnos. Figura 96: Conexión Telnet a la TS-7800 mediante PuTTY (I) Una vez que procedemos a abrir la conexión, si todo va bien nos aparecerá la ventana que emula el terminal de la TS-7800, donde se nos pedirá el usuario y la contraseña con la que queramos trabajar. 136 Anexo C: Conexiones Telnet y FTP con la TS-7800 Blanca Rubio Díaz Figura 97: Conexión Telnet a la TS-7800 mediante PuTTY (II) Conexión FTP para intercambio de archivos con la TS-7800 Durante la fase de desarrollo, puede resultar más cómodo (dado que la TS-7800 no dispone de interfaz gráfica) editar los ficheros de código que componen la aplicación de a bordo en el PC con Windows XP y, posteriormente, cargar dichos ficheros en la TS-7800, compilarlos y ejecutarlos. Puesto que la TS-7800 trae un servidor FTP instalado de fábrica, la utilización de un cliente FTP como Filezilla puede facilitar en gran medida este intercambio de archivos entre ambos equipos. La conexión con Filezilla no precisa más que indicar la IP del servidor FTP al que queremos acceder, así como el modo de acceso, el usuario y la contraseña. Figura 98: Conexión FTP a la TS-7800 mediante Filezilla 137