Anda di halaman 1dari 120

INSTITUTO POLITCNICO NACIONAL

ESCUELA SUPERIOR DE INGENIERA MECNICA Y


ELCTRICA
UNIDAD TICOMAN

DESARROLLO DE UNA PLATAFORMA STEWART BASADA
EN MICROCONTROLADORES, PARA SIMULAR EL
COMPORTAMIENTO DE UNA AERONAVE EN TRES
GRADOS DE LIBERTAD

T E S I S

Que para obtener el Ttulo de:
INGENIERO EN AERONUTICA

P R E S E N T A :
HCTOR ADRIN CASTILLO HERNNDEZ
ASESORES
M.EN C. SERGIO RIVERA VEGA
M.EN C. JORGE SANDOVAL LEZAMA

MXICO, D.F. NOVIEMBRE 2013
INSTITUTO POLITCNICO NACIONAL
ESCUELA SUPERIOR DE INGENIERA MECNICA Y ELCTRICA
UNIDAD TICOMN
QUE PARA OBTENER EL TTULO DE:
POR LA OPCIN DE TITULACIN:
DEBER PRESENTAR:
INGENIERO EN AERONUTICA
TESIS INDIVIDUAL
ELC. PASANTE:
CASTILLO HERNNDEZ HCTOR ADRIN
"DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE LIBERTAD"
CAPTULO I
CAPTULO 11
CAPTULO IIl
CAPITULO IV
CAPTULO V
DICE
1 'TRODUCCIN
PLATAFORMA STEWART
LAU CHPAD MSP430 (SISTEMA DE DESARROLLO BASADO E
MICROCONTROLADOR DE TEXAS INSTRUMENTS)
PROGRAMACIN DEL MICROCONTROLADOR
SERVOACTUADORES
DESARROLLO DE PROYECTO Y PRUEBAS
CO CLUSIONES
ANEXOS
GLOSARIO
Mxico, DF., a 15 de octubre de 2013.
ASESORES
VALLEZAMA
l. P. N.
ESCUEL.,4 SvPERIOil DE
INGEN<ERIA v
UN<DAD T:COIMN
DIRECCIN
..
AGRADECIMIENTO.

A mis padres y hermanos por haberme ayudado en conseguir esta meta, y por
darme el apoyo cuando ms lo necesitaba.
A mi asesor el M. en C. Jorge Sandoval por haberme mostrado uno de los caminos
para lograr este gran objeti vo.
Y a todas aquellas personas que estuvieron involucrados directa o indirectamente.
GRACIAS.

INDICE
INTRODUCCIN
PLANTEAMIENTO DEL PROBLEMA
OBJETIVO
ALCANCE
JUSTIFICACION
CAPTULO 1. PLATAFORMA STEWART
1.1 ANTECEDENTES LOS INICIOS DE LA PLATAFORMA STEWART 1
1.2. TIPOS DE PLATAFORMA STEWART. 2
1.3 APLICACIONES 5
1.4 PRINCIPALES CARCTERISTICAS (VENTAJAS Y DESVENTAJAS) 8
CAPTULO 2. LAUNCHPAD MSP-EXP430G2


2.1 SISTEMAS DE DESARROLLO BASADO EN MICROCONTROLADORES 10
2.2 MICROCONTROLADOR 11
2.3 MICROCONTROLADOR TEXAS INSTRUMENTS (MSP430) 12
2.4 LAUNCH PAD MSP-EXP430G2. 13
2.4.1 MICROCONTROLADOR FAMILIA MSP430x2xx. 14
2.5 ARQUITECTURA DELA FAMILIA MSP430 DE TEXAS INSTRUMENTS 17
2.5.1 UNIDAD CENTRAL DE PROCESAMIENTO 17
2.5.2 REGISTROS DEL MICROCONTROLADOR 18
2.6 LOS PERIFRICOS. 21

2.7 SISTEMA DE RELOJ. 22
2.8 CIRCUITO BROWNOUT 23
2.9 ENTRADAS Y SALIDAS DIGITALES 23
2.10 TEMPORIZADOR DEL PERRO GUARDIN WATCHDOG TIMER(WDT+). 25
2.11 TIMERS 26
2.11.1 MODOS DE TEMPORIZADOR TIMER_A 26
2.11.2 REGISTROS TIMER_A. 27
2.11.3 MODO CAPTURA-COMPARA 29
2.12 INTERRUPCIONES 29
2.13 MODOS DE OPERACIN DE CONSUMO DEL MICROCONTROLADOR 31
CAPITULO 3. PROGRAMACION DEL MICROCONTROLADOR
3.1 SOFTWARE Y LENGUAJES DE PROGRAMACIN. 32
3.1.1CARACTERSTICAS: 34
3.2 LENGUAJE EN C 37
3.3 EL LENGUAJE ENSAMBLADOR 38
3.4 ENTORNOS DE PROGRAMACION CON LA FAMILIA MSP430 DE TEXAS
INSTRUMENTS
39
3.5 EL CODE COMPOSER STUDIO (CCS) PARA MSP430 40
3.6 COMO CREAR UN PROYECTO CON CODE COMPOSER STUDIO 43
CAPITULO 4. SERVOACTUADORES
4.1 CONCEPTO Y DEFINICION DE SERVOACTUADOR 47
4.2 CARACTERSTICAS Y ARQUITECTURA DE SERVOACTUADOR 47

4.3 SERVOACTUADOR DE MODELISMO 48
4.4 FUNCION DE TRANSFERENCIA DE SERVOS DE MODELISMO 52
4.5 SISTEMAS DE LAZO ABIERTO 54
4.6 CONTROL BASICO DE LAZO CERRADO 55
4.7 TIPOS DE SEALES 57
4.8 MODULACIN POR PULSOS 62
CAPITULO 5. DESARROLLO DE PROYECTO Y PRUEBAS
5.1 METODOS PARA ANALISIS Y DISEO DE CONTROL 71
5.2 CONTROL DE POSICIN DE UN AEROPLANO 73
5.3 LA SIMPLIFICACIN DE LOS SISTEMAS LINEALES 81
CONCLUSIONES 88
ANEXOS 92
BIBLIOGRAFA 105


INTRODUCCIN

Durante aos el hombre a buscado la forma de facilitar y hacer mas sencillo el trabajo, por
medio de herramientas que le permitan las mejoras en procesos, proteccim y superacin de
los resultados.
Desde la revolucin industrial los avances tecnolgicos se han ido desarrollando con tal rapidez
e innovacin que hoy en dia esta existe en todas las profesiones del planeta.
En la actualidad no es suficiente haber cursado una especialidad sin haber tenido la experiencia
y adquirido el conocimiento, no solo de los conceptos tericos, sino tambin de los mecanismos
didcticos.
La creacin de material didctico facilita el aprendizaje y adquisicin de conocimientos por parte
del alumno, y el perfeccionamiento de tcnicas y estrategias del profesorado, dando como
resultado la creacin de profesionistas mejor preparados.
La evolucin de la presente investigacin tiene como objetivo desarrollar las habilidades del
alumno por medio del material didctico que sea capaz de cumplir con esta finalidad.
Una plataforma Stewart recrear el comportamiento de una aeronave en tres grados de libertad,
como tambin las perturbaciones a la que es sometida la aeronave en vuelo.
Por falta de equipamiento en el laboratorio Elctrica-Electrnica, y a que la adquisicin de los
equipos para realizar prcticas es de elevado costo, se ha optado por desarrollar proyectos de
bajo costo que ayuden a la realizacin de prcticas.
Haciendo una comparacin de las caractersticas entre el instrumental de alto costo y el creado
en el instituto, se concluye que en beneficio de los alumnos se obtendrn resultados similares.



PLANTEAMIENTO DEL PROBLEMA
En base a la necesidad de mejorar el diseo y desempeo de las aeronaves, se ha buscado por
medio de la simulacin, someter a las aeronaves a situaciones en las que ellas se encuentran
durante vuelo, y as poder conocer el comportamiento de los vehculos, por lo que busca
construir una plataforma real de 3 grados de libertad, lo anterior con el fin de representar los
entornos de vuelo de la aeronave, analizando por medio de hardware y software el movimiento
de la plataforma. Dicha plataforma deber tener un costo mnimo.
OBJETIVO
Se desarrollar una Plataforma Stewart controlada por una interface electrnica basada en un
microcontrolador de ultra-bajo consumo de energa, con el fin de experimentar el
comportamiento cualitativo de un aeromodelo.
ALCANCE
Con el desarrollo de una plataforma empleada como simulador de vuelo en 3 grados de libertad,
los alumnos de la ESIME podrn realizar anlisis y pruebas las cuales les ayuden a entender y
conocer el comportamiento de las aeronaves de forma cualitativa, as como tambin sirva de
base para la materia de octavo semestre Sistemas de Control en Aeronaves.
JUSTIFICACION
Debido a que los clculos para disear y construir una aeronave se realizan fuera de las
condiciones de vuelo a las que son sometidas, se han presentado situaciones en las cuales
estas no estn acondicionadas para responder adecuadamente. As mismo en la ESIME Unidad
Ticomn se cuenta con 20 tarjetas LaunchPad de Texas Instruments de reciente adquisicin
(Noviembre 2011), que sern utilizadas para el desarrollo de esta tesis. As se pretende que la
plataforma sirva de base para realizacin de prcticas en los cursos de Sistemas Electrnicos
Digitales y Sistemas de Control en Aeronaves, por el cual este trabajo de tesis posibilita
estudiar, desarrollar e implementar posibles aplicaciones en el desarrollo de prcticas de
laboratorio en las mencionadas materias.










DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN UN
MICROCONTROLADOR DE ULTRA-BAJO CONSUMO DE ENERGA
CAPTULO
1
PLATAFORMA STEWART

CAPTULO
1
PLATAFORMA STEWART


DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



1
CAPITULO 1
1.1 ANTECEDENTES LOS INICIOS DE LA PLATAFORMA STEWART
El mecanismo es una estructura cinemtica compuesta por 2 plataformas y seis actuadores, en
la cual la plataforma de base es fija, mientras que la plataforma superior y las 6 actuadores son
mviles. Los seis actuadores unen ambas plataformas que a su vez se ensamblan por medio de
juntas esfricas y/o universales. Hay tres puntos en la plataforma superior, en cada punto salen
2 actuadores. Estos actuadores tienen un mecanismo que les permite modificar su longitud
individualmente, esto permite posicionar y orientarla plataforma superior. Dicha plataforma
cuenta con seis grados de libertad en relacin con la base, de manera que se puede mover en
tres direcciones lineales y tres direcciones angulares individual o en combinacin.

Figura 1.0: Esquema de una Plataforma Stewart-Gough.
HISTORIA DE LA PLATAFORMA STEWART
En su artculo de 1965, Stewart describe un mecanismo, el cual tiene 6 grados de libertad
(DOF) por su significado en ingles, controlada por 6 motores teniendo cada uno un tope en
tierra. El propuso que el mecanismo seria utilizado como simulador de vuelo para la formacin
de pilotos de helicpteros.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



2
Aunque los dispositivos en paralelo o manipuladores de enlace paralelo se denominan a
menudo Plataformas Stewart. Stewart no fue el inventor original de este tipo de mecanismo.
El mecanismo propuesto por Stewart es solo una configuracin diferente del sistema de 6 jacks
desarrollado por Gough en 1947. Gough fue uno de los evaluadores de el articulo de Stewart y
en su revisin el afirma que el diseo una maquina de prueba de llanta similar en 1949 la cual
ya se haba construido y entrado en operacin en 1954 y en 1955 respectivamente. El trabajo
de Stewart fue publicado junto con las comunicaciones de los evaluadores, asi como la
respuesta del autor. Stewart reconoce el hecho de que el no era consciente de la mquina de
prueba de llantas de Gough y tambin afirma que, aunque su mecanismo de simulacin de
vuelo es similar, fue diseado usando un enfoque diferente.
Irnicamente, Gough tambin no es reconocido como el inventor original de este tipo de
mecanismo. Conforme a Merlet los manipuladores paralelos han sido conocidos por un largo
tiempo y la invencin actual es atribuida al matemtico Cauchy, quien escribi un artculo sobre
el movimiento posible y rigidez de un octaedro articulado.
No obstante el redescubrimiento de el manipulador paralelo por Stewart en 1965, provoc una
llama que hoy en da aun arde. Merlet reporta que el inters principal en este tipo de robot
comenz alrededor de 1987 y desde esa fecha el nmero de trabajos sobre este tema se ha
incrementado drsticamente debido a sus ventajas inherentes de capacidad de carga y rigidez
espacial. Las plataformas Stewart son convenientes para una amplia gama de aplicaciones. Se
cree que la investigacin y desarrollo de dispositivos paralelos es actualmente el ms popular
tema en el rea de robots manipuladores.
1.2. TIPOS DE PLATAFORMA STEWART.

Merlet define un manipulador paralelo como un mecanismo de lazo cerrado en el cual un
extremo es conectado por lo menos a 2 cadenas cinemticas independientes. El tambin define
un manipulador completamente paralelo como un manipulador de lazo cerrado con n grados de
libertad (GDL) conectados a la base por n cadenas independientes, el cual tiene como mximo
2 enlaces y se acciona por un actuador rotativo.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



3
De acuerdo a Merlet, diversos diseos de manipuladores paralelos son posibles. Todos tienen
en comn su bajo costo, ya que la mayora de los componentes son standart, aunque el
ensamble del manipulador debe ser hecho con cuidado.
Hay 2 categorias principales de manipuladores paralelos, manipuladores planos y espaciales.
Buscando en la primera categora, un manipulador paralelo plano es un tipo de manipulador de
lazo cerrado. Huag y otros investigaron la destreza del espacio de trabajo de un manipulador
elemental de lazo cerrado con un grado de libertad.Gosselin y Wang consideraron un
manipulador de lazo cerrado con 2 grados de libertad que consiste en una cadena de 5 barras.
Bajpai y Roth determinaron el lugar de trabajo de la misma cadena de 5 barras con un tercer
grado de libertad adicional, como la base de un manipulador montado sobre una articulacin
rotativa. Los manipuladores de lazo cerrado mencionados hasta ahora tienen actuadores
eslabones, y de acuerdo a la definicin de Merlet, estos mecanismos no son manipuladores
paralelos como estos son conectados al suelo a travs de 2 cadenas cinemtica linealmente
dependientes.
Gosselin and Wang tambin considera un manipulador paralelo plano de 3 grados de libertad
con 3 actuadores eslabones. Ver que este manipulador de lazo cerrado tiene 2 cadenas
cinemticas independientes conectadas a la plataforma mvil con la base , este puede ser
clasificado como un manipulador paralelo.
La literatura tambin es muy rica en cuanto a diferentes diseos de plataformas planas Stewart
(manipuladores paralelos planos con actuadores lineales). Haug y otros determinaron el espacio
de trabajo de una plataforma plana Stewart con 3 grados de libertad. Algunos investigadores
tambin consideran una plataforma plana Stewart de 3 grados de libertad con una plataforma
mvil triangular. Lee encontr que el optimo diseo en cuanto a la estabilidad de la plataforma,
es una plataforma mvil equiltera. La segunda categora de los manipuladores paralelos es
mecanismo espacial. Dependiendo el diseo , estos mecanismos pueden tener 3 a 6 grados de
libertad.
Por ejemplo, Wang y Gosselin explicaron que los dispositivos de 3 y 4 grados de libertad son
por lo regular utilizados simuladores de vuelo. Los mecanismos de 5 grados de libertad estn
tambin disponibles y utilizadas para tareas donde las herramientas asimtricas estn siendo
utilizadas.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



4
Como se ha sealado en el trabajo original por Stewart, hay diversos diseos posibles para
proporcionar 6 grados de libertad. Uno de los diseos obvios es un cardn de 3 ejes
superpuesto sobre un sistema deslizante de 3 ejes lineales. Stewart rechaz esta opcin,
porque el quera lograr el ms simple y cohesivo diseo con las ms altas capacidades en un
amplio rango de aplicaciones.
El original mecanismo propuesto por Stewart esta comprendido por un plano triangular, llamada
plataforma, de la cual cada una de sus esquinas son conectadas a traves de una articulacin de
3 ejes ( articulacin esfrica) a una de las 3 piernas del mecanismo. Cada pierna se conecta a
tierra por medio de una articulacin de 2 ejes (articulacin universal). Tres actuadores
adicionales son conectados a las 3 piernas del dispositivo. Cada actuador adicional tiene un
extremo conectado a una articulacin giratoria en el extremo exterior de un cilindro de cada
pata. El otro extremo de cada actuador adicional se conecta a la base del conjunto universal.

Figura 1.0 Plataforma Stewart Original. Arreglo general de sistema de una pierna.
Las conexiones bases de los 2 gatos tienen un eje en comn y los ejes restantes son
paralelos el uno del otro. El eje comn no es controlado dentro del sistema de una sola pierna,
pero el plano que contiene la pierna puede girar alrededor de ella, asi permitiendo un
movimiento de 3 ejes en la articulacin de la plataforma de apoyo.
La mquina de prueba de neumticos de Gough, tambin utilizo 6 actuadores, pero estos se
dispusieron de manera diferente. Cada actuador se uni por separado a la plataforma superior
Gough utilizo el mismo conjunto de sistema para unir los actuadores a la plataforma y la base.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



5
Wang y Hsieh concuerdan que las ventajas de la Plataforma Stewart sobre los manipuladores
seriales esta en su capacidad de carga y rigidez. Merlet dems explica que la proporcin que
hay entre carga y peso se debe a la distribucin equitativa de la carga de la plataforma.
Cada enlace de las 6 piernas de la plataforma es sometido a solo 1/6 de su peso total. Merlet
contribuye la rigidez de la plataforma a la tensin de los enlaces que son en su mayora de
traccin y compresin, que fcilmente puede ser manejada por actuadores lineales.
De acuerdo a Merlet, otra ventaja de los manipuladores paralelos es que la posicin de las
extremidades es mucho menos sensible al error sobre los sensores articulados que a los
enlaces de los robots seriales. Geng y otros explican que la razn de mayor precisin de
manipuladores paralelos es porque la posicin de error sobre cada actuador es el promedio
hacia afuera de ser acomulado en una extremidad. Merlet tambin menciona que la alta
precisin de posicionamiento de estos manipuladores es tambin debido a su alta rigidez la cual
asegura que las deformaciones de los enlaces son mnimas. El hace hincapi que la ventaja
ms importante de los manipuladores paralelos es su bajo costo. Liu dice que es relativamente
barato comercialmente la tecnologa servo-actuador la cual se ha utilizado para muchas
plataformas. Esta nota es interesante ya que tiene como objetivo lograr el diseo ms simple
con las mas altas capacidades para un amplio rango de aplicaciones.
La arquitectura de los manipuladores es muy diferente a la de los manipuladores seriales.
Merlet con razn establece que la mayora de los problemas tericos referente a las plataformas
paralelas todava tiene que abordarse, adems tambin menciona que hay una dualidad entre
los manipuladores paralelos y enlaces seriales, como los problemas fciles para los
manipuladores seriales son con frecuencia difciles de resolver para manipuladores paralelos y
viceversa. [1]
1.3 APLICACIONES
En la actualidad la Plataforma Stewart tiene varias aplicaciones en diferentes campos entre las
cuales se encuentra:
- En el mbito aeroespacial, la simulacin de condiciones reales en aviones y naves
espaciales se convirti en una necesidad para la formacin de pilotos, como tambin para el
diseo y fabricacin de aeronaves. Entre los simuladores se encuentran el ACFS (Advanced
Concept Flight Simulator) de la NASA.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



6
En su interior se encuentran los mandos de una aeronave comn, estos mandos estn
ligados al entorno virtual de las pantallas del simulador y a los movimientos de la plataforma
de 6 grados de libertad que sirven como base para simular el movimiento de la aeronave.
Este simulador cuenta con una gran flexibilidad para simular diferentes modelos de aviones
en diferentes condiciones. Tambin se encuentra la empresa Flight Safety la cual ha
fabricado varios simuladores de entrenamiento en aviacin.

Figura 1. Simulador de movimiento de Flight Safety.
- Para aumentar el almacenamiento de energa solar, se utiliza una Plataforma Stewart,
localizada bajo paneles fotovoltaicos, orientados continuamente en direccin hacia el sol
para poder incrementar el desempeo de las celdas.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



7

Figura 1.3: Robot Hexapod para el posicionamiento de reflectores solares.
- En la medicina se han ocupado, como base, para asistentes quirrgicos robticos.
Descartan el trabajo un poco al azar en la fabricacin de prtesis y la localizacin de los
puntos de fijacin de estas en las estructuras seas. Estos mecanismos utilizan imgenes
como topografas computarizadas escaneadas del paciente, este sistema las convierte en
slidos virtuales similares a los huesos y articulaciones del paciente. Posteriormente la
informacin de la ciruga es transmitida al control del robot. Posiblemente el asistente
quirrgico ms popular sea el Da Vinci de arquitectura serial desarrollado en 1998 en el
hospital Torre Mdica.

Figura 1.4: Robot DA VINCI para asistencia quirrgica.
- Adems otras de las aplicaciones de las Plataformas Stewart es en el mbito acadmico
como elemento Mecatrnico, en el cual se unen las Ingenieras Mecnica, Electrnica, de

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



8
Control e Informtica. En la investigacin se puede utilizar para recrear movimientos
naturales (terremotos, oleaje, vibraciones etc..
- Tambin es ampliamente utilizado en Mecanizado, ensamble, soldadura e industria
automotriz tal es el caso del robot FANUC.

Figura 1.5: Robot FANUC F-200iB.
- Adems se puede emplear para el posicionamiento de telescopios. [2]
1.4 PRINCIPALES CARCTERISTICAS (VENTAJAS Y DESVENTAJAS)
Ventajas:
- Capacidad de manipular cargas superiores a su propio peso, lo que otorga una alta
eficiencia energtica: Ya que si se coloca una carga en la placa mvil esta se
repartir entre sus 6 actuadores de tal forma que cada uno de ellos soporta una
fraccin de carga.
- Mayor Precisin: Debido a la disposicin de sus miembros no hay errores
acumulados. Ya que en los robots seriales incrementan la incertidumbre debido al
error de posicionamiento.
- Velocidades de operacin superiores. Por tener que mover menos inercia, los
actuadores se mueven ms rpido.
- Mayor manejo de grados de libertad con menos componentes. En el caso de los
seriales, a mayor cantidad de grados de libertad implica tener ms miembros en la
cadena Cinemtica, esto no ocurre en el caso de los paralelos.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



9
Desventajas:
- El espacio de trabajo suele ser ms pequeo que el de los seriales y su clculo no
es sencillo.
- La cinemtica de los mecanismos paralelos es ms complicada y no se conoce un
modelo general, si lo hay para estructuras seriales.














DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN UN
MICROCONTROLADOR DE ULTRA-BAJO CONSUMO DE ENERGA
CAPTULO
2
LAUNCHPAD
MSP-EXP430G2

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



10
CAPITULO 2
2.1 SISTEMAS DE DESARROLLO BASADO EN MICROCONTROLADORES
Un campo de gran inters en la industria es el desarrollo de aplicaciones para lo que se conoce
como sistemas embebidos, esto es, sistemas complejos basados en microcontroladores. En el
mercado existen una gran disposicin de fabricantes y desarrolladores diversos fabricantes de
este tipo de dispositivos, as como de perifricos asociados, software de desarrollo, equipos
para depuracin y pruebas, etc.
El fabricante ms conocido es, seguramente, Microchip Technologies (fabricante de los
famosos PIC's) que dispone de microcontroladores de 8, 16 y 32 bits y cuya amplia gama de
productos se adapta casi a cualquier necesidad que pueda ocurrrsenos. Tambin tienen
disponibles otro tipo de dispositivos tales como conversores analgico-digital, placas para
comunicaciones inalmbricas.Microchip PIC es una prueba de que las arquitecturas antiguas
nunca mueren apenas van mejorando con la edad, la proliferacin en ms y ms dispositivos
con mejores tasas de precio / rendimiento.

Otro fabricante importante es Atmel, con dispositivos similares a los de Microchip o Motorola,
evidentemente, que fabrica una gama de microcontroladores especficos denominados DSP
(Digital Signal Processor) que habitualmente se emplean en el procesado de seal de audio en
tiempo real.
Tambin existen en el mercado kits de desarrollo muy populares basados en algunos de estos
microcontroladores, por ejemplo Arduino que fabrica diversos kits basados en los micros de
Atmel.

Estos dispositivos tienen la ventaja de que incluyen en una misma placa todos los componentes
necesarios para comenzar un desarrollo hardware/software, adems utilizan un lenguaje de
programacin muy sencillo denominado "Arduino language", a su vez basado en "Wiring" y
escrito en una mezcla de C/C++. Ojo los kits de Arduino no se programan en C/C++ como
algunos pretenden; lo que si es posible es desarrollar bibliotecas escritas en C/C++ para que
puedan ser utilizadas dentro de un programa escrito en Arduino Language.

La TI MSP430 es el ltimo, pero no quiere decir menos importante, en nuestra ronda de chips
que debe hacer su "lista corta" de 2010. Por un lado que todava hay tiempo para entrar en el.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



11
Elija entre los dispositivos de potencia ultra-baja y herramientas favoritas MSP430x1xx,
MSP430F2xx, MSP430x4xx, MSP430F5xx, CC430Fxxxx. Texas Instruments tambin tiene un
increble centro de formacin para todos los DSPs y Microcontroladores.
TI, tambin goza de una creciente comunidad de apoyo para el MPS430, aunque todava no
coincide con la de la AVR o el Microchip PIC.Incluye el compilador GNU C (GCC), el
ensamblador y enlazador (binutils), el depurador (GDB), y algunas otras herramientas
necesarias para hacer un completo entorno de desarrollo para el MSP430. La compaa
tambin ha mostrado un poco de diversin, ideas innovadoras en los kits de desarrollo, como
el eZ430-Chronos , primer entorno de desarrollo adaptable del mundo dentro de un reloj
deportivo. El kit permite a los desarrolladores aprovechar fcilmente el lder de integracin,
ultra-baja potencia y las capacidades inalmbricas de TI.
La noticia ms importante para MSP430 TI se produjo en julio de 2009 - Nueva MSP430 MCU
embebida con USB de alta velocidad y el consumo de energa ultra bajo ms importantes del
mundo.
Con la amplia adopcin de la conectividad USB, los diseadores estn buscando soluciones de
procesamiento integrados inteligentes que aportan ventajas nicas a sus aplicaciones, como la
vida til de la batera, portabilidad y versatilidad. Proporcionar conectividad sencilla, avanzada,
con una slida cartera, el nuevo microcontrolador MSP430F55xx familia (MCU) incrustado con
USB de alta velocidad (12 Mbps) es la respuesta de TI a esta necesidad.
2.2 MICROCONTROLADOR
Recibe el nombre de controlador el dispositivo que se emplea para el gobierno de uno o varios
procesos, es un circuito que integra en el mismo encapsulado la CPU, la memoria central, los
puertos de entrada y salida digitales, diversos mdulos para el control de perifricos y
generador de pulsos de reloj que sincronizan el funcionamiento de todos el sistema.
Son sistemas capaces de leer, interpretar luego ejecutar de forma secuencial las instrucciones
contenidas en el programa.
Los microcontroladores son usados en sistemas tiempo real donde requiere una respuesta a
eventos dentro de un tiempo prescrito.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



12
2.3 MICROCONTROLADOR TEXAS INSTRUMENTS (MSP430)
La familia de microcontroladores (C) MSP430 de Texas Instruments de ultra-bajo consumo de
energa consta de varios dispositivos que ofrecen diferentes conjuntos de perifricos orientados
a diferentes aplicaciones. La arquitectura, combinada con cinco modos de bajo consumo de
energa se ha optimizado para lograr una vida prolongada de la batera en aplicaciones de
mediciones porttiles. El dispositivo cuenta con un poderoso CPU (Central Processing Unit-
Unidad de Procesamiento Central) de arquitectura RISC (Reduced Instruction Set Computer-Set
Reducido de Instrucciones para la Computadora) de 16 bits, y generadores de constantes que
contribuyen a la eficiencia del cdigo. El Oscilador Digitalmente Controlado (DCO-Digitally
Controller Oscillator) permite despertar al microcontrolador desde un modo de bajo consumo de
energa a un modo activo en menos de 1 s.
Los microcontroladores que estn basados en procesadores tipo RISC de 16 bits, son la
solucin industrial de menor consumo entre microcontroladores de 8 a 16 bits alimentado por
bateras, sus principales aplicaciones incluyen la medicin, la instrumentacin porttil y los
sensores inteligentes.
Actualmente hay 4 familias del MSP430 disponibles:
- MSPx1xx: Ofrece una amplia gama de dispositivos de propsito general desde las versiones
simples para complementar sistemas para procesamiento de seales. Hay una amplia gama
de perifricos, algunos incluyen un multiplicador de hardware, el cual puede ser utilizado
como un procesador digital de seales rudimentario. Los paquetes viene de 2 a 64 pines.
- MSPx2xx: El ms nuevo de toda la familia de uso general introducido en el 2005. Su CPU
puede ejecutarse a 16 MHz, el doble de velocidad de los dispositivos anteriores, mientras
consume la mitad de corriente a la misma velocidad. Algunos viene en paquetes de 14 pines
PDIP (Packages Dual In line Pin-Paquete de Pin en Doble Linea), que es atractivo para el
que construye circuitos con la mano. No requiere de un cristal por su baja frecuencia de
reloj. Las resistencias Pull-up y Pull-down se proporcionan en las entradas para reducir el
nmero de componentes externos necesarios. Hay muchas opciones para las entradas
analgicas.
Incluso el ms pequeo de los dispositivos que es el de 14 pines ofrece un ADC (Analog-to-
Digital Converter-Convertidor Analgico-Digital) sigma delta de 16 bits.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



13
- MSPx3xx: La familia original que incluye controladores de pantallas LCD es ahora obsoleto.
- MSPx4xx: Pueden controlar pantallas de hasta 160 segmentos, muchos de ellos son ASSP
(Aplication Specific Standart Products-Aplicacin Especfica para Productos Standart), pero
tambin hay dispositivos de propsito general, sus paquetes viene de 48-113 pines, muchos
de los cuales son necesarios para la LCD.
- MSP430X: La arquitectura original MSP430 para que se pueda tratar como memoria extra,
pero con otras mejoras tambin. [3]
Para poder distinguir un microcontrolador se necesita conocer la siguiente nomenclatura:

Figura 2.0 Nomenclatura del Microcontrolador.
2.4 LAUNCH PAD MSP-EXP430G2.
Es una herramienta fcil de usar destinado a usuarios principiantes o experimentados para
crear aplicaciones basadas en el microcontrolador. El LaunchPad tiene un socket Dual In line
Package (DIP) integrado que admite hasta 20 pines permitiendo que los dispositivos MSP430

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



14
se coloquen en la junta de la LauchPad, tambin es una herramienta de emulacin flash,
incorporado permite interfaz directa a una PC para fcil programacin, depuracin y evaluacin.
Con esta tarjeta nosotros tenemos la posibilidad de debuguear, es decir, mientras se este
desarrollando el cdigo se pueden hacer pruebas para ver su funcionalidad y realizar los
cambios pertinentes. Puede utilizarse para crear soluciones interactivas gracias a sus botones
abordo, LEDs y pines extras de entrada y salida para una fcil integracin de dispositivos
externos.
Incluye:
- Junta de desarrollo de LaunchPad (MSP-EXP430G2)
- Cable USB mini.
- 2 dispositivos Flash MSP430.
- Conectores de PCB de 10 pines (2 machos y 2 hembras).
- Cristal 32 KHz. [4]


2.4.1 MICROCONTROLADOR FAMILIA MSP430x2xx.

Las series MSP430G2x13 y MSP430G2x53 son microcontroladores de seal mixta de ultra-
bajo consumo de energa que permiten procesar hasta 16 MIPS (Millones de Instrucciones
por Segundo) usando voltajes que van desde 1.8 a 3.6 V. Dentro de sus opciones incluyen un
comparador analgico verstil, hasta 24 pines E/S, capaz para el uso de comunicacin
universal en serie. Adems los miembros MSP430G2x53 tienen un convertidor analgico-
digital de 10 bits.
A continuacin se muestra una tabla con las caractersticas tcnicas generales
pertenecientes a la familia MSP430 de las series MSP430G2x13 a MSP430G2x53 que
pueden ser utilizadas con la LaunchPad de Texas Instruments. [5]






DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



15
CARACTERSTICAS DE LA PLACA DE LAUNCHPAD.


Figura 2.1 Launchpad MSP-EXP430G2.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES, PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES
GRADOS DE LIBERTAD"



TABLA 2.0 Familia MSP430x2xx
MICROCONTROLADORES MSP430
MSP430G2211 MSP430G2231 MSP430G2452 MSP430G2553
- Bajo voltaje de alimentacin en el
rango 1.8 a 3.6 V.
- Bajo consumo de energa:
o Modo Activo: 200 A a 1 MHz,
con 2.2 V de alimentacin.
o Modo Standby: 0.5 A
o Modo apagado: 0.1 A.
- 5 modos de ahorro de energa
- Ultrarrpido levantamiento de
modo Standby en menos de 1
s.
- Arquitectura 16 bit RISC.
- Duracin de ciclo de instruccin
62.5 ns.
- Configuraciones bsicas de reloj.
- Frecuencias internas de hasta 16
MHz con frecuencia calibrada.
- Internos de muy baja energa
Oscilador.
- Cristal de 32 KHz.
- Fuente externa de reloj digital
- 16 bit Timer_A con 2 registros
C/C/M.
- Detector BOR.
- Comparador de seal analgica
- Proteccin de cdigo
programable.
- Chip de emulacin lgica con
interfaz Spy-by Wire.

- Bajo voltaje de alimentacin en el rango
1.8 a 3.6 V.
- Ultra bajo consumo de energa:
o Modo Activo: 220 A a 1 MHz, con 2.2 V
de alimentacin.
o Modo Standby: 0.5 A
o Modo apagado: 0.1 A.
- 5 modos de ahorro de energa
- Ultrarrpido levantamiento de modo
Standby en menos de 1 s.
- Arquitectura 16 bit RISC.
- Duracin de ciclo de instruccin 62.5 ns.
- Configuraciones bsicas de reloj.
- Frecuencias internas de hasta 16 MHz
con frecuencia calibrada.
- Internos de muy baja energa Oscilador.
- Cristal de 32 KHz.
- Fuente externa de reloj digital
- 16 bit Timer_A con 2 registros C/C/M.
- Interfaz Universal Serial (USI)
- Detector BOR.
- 10 bit ADC con referencia interna
muestreo, retencin y Autoscan.
- Programacin serial abordo.
- Proteccin de cdigo programable por
fusibles de seguridad.
- Chip de emulacin lgica con interfaz Spy-
by Wire.
- Programacin serial abordo.
- Bajo voltaje de alimentacin en el rango 1.8 a 3.6 V.
- Ultra bajo consumo de energa:
o Modo Activo: 220 A a 1 MHz, con 2.2 V de alimentacin.
o Modo Standby: 0.5 A
o Modo apagado: 0.1 A.
- 5 modos de ahorro de energa
- Ultrarrpido levantamiento de modo Standby en menos de 1
s.
- Arquitectura 16 bit RISC.
- Duracin de ciclo de instruccin 62.5 ns.
- Configuraciones bsicas de reloj.
- Frecuencias internas de hasta 16 MHz con 4 frecuencias
calibradas.
- Internos de muy baja energa Oscilador.
- Cristal de 32 KHz.
- Fuente externa de reloj digital.
- 2 16 bit Timer_A con 3 registros C/C/M.
- Hasta 24 pin I/O sentido tctil activado.
- Interface Universal de Comunicaciones Seriales Serial
(USCI).
- Universal Asncrono Receptor Transmisor (UART).
- Sncrono Interface Serial Perifrico (SPI).
- 10 bit 200 Ksps ADC con referencia interna muestreo
retencin y Autoscan.
- On chip comparador analgico.
- Detector (BOR).
- Proteccin de cdigo programable por fusibles de seguridad.
- Chip de emulacin lgica con interfaz Spy-by Wire.
- Programacin serial abordo.

- Bajo voltaje de alimentacin en el rango 1.8 a 3.6 V.
- Ultra bajo consumo de energa:
o Modo Activo: 220 A a 1 MHz, con 2.2 V de alimentacin.
o Modo Standby: 0.5 A
o Modo apagado: 0.1 A.
- 5 modos de ahorro de energa
- Ultrarrpido levantamiento de modo Standby en menos de
1 s.
- Arquitectura 16 bit RISC.
- Duracin de ciclo de instruccin 62.5 ns.
- Configuraciones bsicas de reloj.
- Frecuencias internas de hasta 16 MHz con 4 frecuencias
calibradas.
- Internos de muy baja energa Oscilador.
- Cristal de 32 KHz.
- Fuente externa de reloj digital.
- 2 16 bit Timer_A con 3 registros C/C/M.
- Hasta 24 pin I/O sentido tctil activado.
- Interface Universal de Comunicaciones Seriales Serial
(USCI).
- Universal Asncrono Receptor Transmisor (UART).
- Sncrono Interface Serial Perifrico (SPI).
- 10 bit 200 Ksps ADC con referencia interna muestreo
retencin y Autoscan.
- On chip comparador analgico.
- Detector (BOR).
- Proteccin de cdigo programable por fusibles de
seguridad.
- Chip de emulacin lgica con interfaz Spy-by Wire.


DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"


17
2.5 ARQUITECTURA DELA FAMILIA MSP430 DE TEXAS INSTRUMENTS
La arquitectura del MSP430 incorpora una CPU tipo RISC (Reduced Instruction Set Computer-
Computador con Conjunto de Instrucciones Reducidas), perifricos y un sistema de reloj
flexible que se interconectan utilizando una memoria Von-Neumann, atreves del MAB
(Memory Address Bus-Bus de Direcciones de Memoria) y del MDB (Memory Data Bus-Bus de
Memoria de Datos), estos buses nos permiten transmitir y recibir los datos desde cualquiera
de los dispositivos que estn integrados en el microcontrolador, como lo es la memoria RAM,
memoria flash, puertos 1 y 2, Timer A2, etc.. A continuacin se muestra la arquitectura de
forma general de los microcontroladores MSP430 de la familia MSP430x2xx.

Figura 2.2 Arquitectura MSP430x2xx
2.5.1 UNIDAD CENTRAL DE PROCESAMIENTO
La CPU (Central Processing Unit-Unidad Central de Procesamiento) ejecuta las instrucciones
almacenadas en la memoria. Incluye el ALU (Arithmetic Logic Unit-Unidad Lgica Aritmtica),
la cual se encarga de realizar el computo, adems tiene un conjunto de 16 registros
designados como R0-R15, que proporcionan una reduccin en el tiempo de ejecucin de cada
instruccin. El tiempo que lleva la operacin registro a registro es un ciclo de reloj de la CPU.
Los perifricos estn conectados a la CPU por medio de buses de control, direccin y datos, y
pueden ser manejados con todas las instrucciones.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"


18
2.5.2 REGISTROS DEL MICROCONTROLADOR
La CPU contiene registros de propsito especfico (controlar las funciones del
microcontrolador, segn la informacin), y de propsito general (sirve para poner datos que
queremos). Los registros de propsito especficos R0-R3 son dedicados como contador de
programa (PC- Program-Counter), Puntero de Pila (SP-Stack Pointer), Registro de Estado
(SR-Status Register) y un Generador de Constantes (CG-Constant Generator),
respectivamente. Los registros restantes R4-R15 son de propsito general.

Figura 2.3 Registros del CPU.



DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"


19
CONTADOR DEL PROGRAMA (PC/R0)
Este registro contiene la direccin de la prxima instruccin a ser ejecutada. Cada instruccin
requiere un nmero par de bytes (dos, cuatro o seis). El ciclo usual de ejecucin es que el
contenido de la PC se colocan en el bus de direccin y la siguiente instruccin se extrae
desde esta direccin. El valor de la PC se incrementa automticamente en 2 despus de cada
extraccin, de modo que est listo para la siguiente palabra. La PC ahora esta lista con la
direccin de la siguiente instruccin cuando la actual ha sido ejecutada. As las instrucciones
se ejecutan secuencialmente al menos que haya un salto explcito. En este caso la direccin
de la nueva instruccin se produce como resultado de la operacin actual y se escribe sobre
el valor de la PC. Las subrutinas e interrupciones tambin modifican el PC, pero en estos
casos el valor anterior se guarda en la pila y es restaurada posteriormente.
PUNTERO DE PILA (SP/R1)
Cuando una subrutina es llamada, la CPU salta a la subrutina, ejecuta el cdigo, y ms tarde
regresa a la instruccin. Por lo tanto debe mantener un registro de los contenidos de la PC
antes de saltar a la subrutina, de modo que esta pueda volver despus. Este es el propsito
principal de la Pila. Utiliza un esquema de pre-decremento, post-incremento, en donde su
mayor ventaja es que el elemento que se encuentra en la parte mas alta de la pila esta
disponible.
EL REGISTRO DE ESTADO (SR/R2)
Este registro contiene un registro de banderas (bits individuales), cuyas funciones caen en 3
categorias. Las banderas comnmente utilizadas son C,Z,N y V las cuales dan informacin
acerca de la ltima operacin lgica o aritmtica. La bandera Z se establece si el resultado fue
cero y limpia si era distinto de cero. Las decisiones que afectan el flujo de control en el
programa, pueden hacerse comprobando estos bits. El grupo final de bits es CPUOff,
OSCOFF, SCG0 y SCG1 que controlan los modos de operacin del microcontrolador.
Establecer diferentes combinaciones de estos bits ponen al MCU en uno de sus modos de
bajo consumo. A continuacin se describe brevemente los bits del Registro de Estado.



DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"


20
- V.- bit de desbordamiento.Se activa si el resultado de una operacin excede el rango de
la variable (incluido el signo).
- SCG1 (System Clock Generator).- bit 1 de control del generador de reloj del sistema.
Este bit y el siguiente controlan 4 estados de actividad del reloj del sistema, por lo tanto
influyen en el procesador del sistema.
- SCG0 (System Clock Generator 0).- bit 0 de control del generador de reloj del sistema.
- OSCOff (Oscillator).-bit de apagado del cristal Oscilador. Si es puesto a 1, el oscilador
externo entra en modo de apagado, todas las actividades concluyen.
- CPUoff.-bit apagado de la CPU. Si es puesto en 1 la CPU entra en modo de apagado, la
ejecucin del programa se detiene.
- GIE (Generator Interrupt Enable).- bit de habilitacinde la interrupcin general. Puesto
a 1 todas las interrupciones enmascarables son controladas. Si esta deshabilitada
todas las interrupciones enmascarables son ignoradas.
- N (Negative) bit negativo se prende cuando el resultado es
negativo.
- Z (Zero) bit cero se prende cuando el resultado es cero.
- C (Carry) bit acarreo se prende cuando el resultado es de
acarreo.

Figura 2.4 Ubicacin de los bits de estado en el registro (SR/R2). (Fuente: Texas Instruments)
Nota: Los bits de estado (V,N,Z y C) solo se pueden cambiar por ciertas instrucciones.
Registros Generadores de Constantes CG1 y CG2 (R2 y R3).

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"


21
Las seis constantes comnmente usadas son generadas con los Registros Generadores de
Constantes R2 y R3 sin requerir instrucciones especiales, cdigo adicional para las seis
constantes, ni cdigo de acceso a memoria parra obtener la constante.

Tabla 2.1 Valores de Generadores de Constantes CG1, CG2. (Fuente Texas Instruments)
REGISTROS DE PROPSITO GENERAL R4 A R15
Los doce registros de propsito general pueden ser utilizados como registro de datos,
punteros de direccin, o pueden indexar valores, los cuales pueden ser accedidos mediante
instrucciones de byte o Word. [3]
2.6 LOS PERIFRICOS.
Un periferico es un circuito electronic digital, incluido en un microcontrolador, que realiza una
funcin o tarea especifica. Los perifricos de un microcontrolador permiten ahorro de espacio
y dinero en muchas alicaciones electrnicas.
Los dispositivos perifricos estn conectados al CPU a travs de buses de direccin, datos y
control. Estos estn para interfase con el mundo exterior (como los pines de entra y salida
(E/S) de propsito general, controladores de LCD, entradas analgicas digitales (A/D) y
salidas de Modulacin de Ancho de Pulso) y para tareas internas como el de conservar
diferentes bases de tiempo (temporizadores).


DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"


22
2.7 SISTEMA DE RELOJ.
Los microcontroladores cuentan con una amplia gama de relojes. Un cristal de reloj de baja
frecuencia se ejecuta continuamente a 32 KHz y se utiliza para activar el dispositivo
peridicamente. La CPU se sincroniza por medio de un DCO (Digitally Controlled Oscilator-
Oscilador Digitalmente Controlado), el cul reinicia en menos de 1 s. Por esta razn los
MSP430 pueden despertar desde un mode de Standby (espera) llevar a cabo sus tareas, y
volver a un modo de bajo consumo de manera rpida.
Los MSP430 satisfacen las demandas de alto rendimiento, bajo consumo, y una frecuencia
precisa mediante el uso de tres relojes internos. Estos relojes internos son los siguientes:
- MCLK (Master Clock): Se utiliza para alimentar el CPU. Suministrado por un oscilador
interno de control digital 1.1 MHz.
- SMCLK (Sub Main Clock): Es utilizado para alimentar perifricos de alta velocidad.
Tambin controlado por el mismo oscilador del MCLK.
- ACLK (Auxiliary Clock): Utilizado para alimentar perifricos de baja velocidad. Proviene
de un oscilador de cristal de baja frecuencia, tpicamente de 32 KHz.
Nota: Tome en cuenta que el ACLK necesita un cristal externo.
El MCLK y el SMCLK pueden trabajar de frecuencias de 1 MHz, 8 MHz, 12 MHz hasta 16
MHz recordando que a mayor frecuencia habr mayor consumo de energa, la frecuencia
ms ptima es la frecuencia de 12 MHz.
Tambin hay 4 fuentes disponibles en el BCS para conducir cada uno de los 3 relojes.
- LFXT1CLK: El nombre de esta fuente implica su uso con un cristal de baja frecuencia, y
esto es a menudo el caso. Un cristal de 32768 Hz se puede conectar a su MSP430 para,
el tiempo de alta precisin de bajo consumo. En algunos dispositivos x2xx, esta fuente
tambin tiene un modo de alta frecuencia que se pueden utilizar cristales de 400 kHz a
16 MHz, suponiendo que el chip se alimenta con una tensin lo suficientemente grande
para manejar la frecuencia. Adems, otros resonadores y seales externas se pueden
utilizar para esta fuente.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"


23
- XT2CLK: Una vez ms, esta fuente es el nombre de su uso implcito con un segundo
cristal, pero en este caso slo un cristal de alta frecuencia. Tambin se puede utilizar
otros resonadores y seales externas. Esta fuente no est disponible en todos los
dispositivos x2xx.
- DCOCLK: La fuente interna es el oscilador controlado digitalmente. Aunque no es tan
preciso y estable como fuentes de cristal, el DCO es an bastante buena y puede ser
configurada para operar en una amplia gama de frecuencias.
- VLOCLK: El MSP430 incluye un segundo oscilador interno de energa, aplicaciones de
muy bajos de muy baja frecuencia. El VLO puede correr ms lento que el reloj cristalino
LFXT1, y por lo general se utiliza en alrededor de 12 kHz. Esta fuente no est disponible
en todos los dispositivos x2xx. [6]
2.8 CIRCUITO BROWNOUT
El circuito Brownout es implementado para proveer la seal interna correcta de reset al
dispositivo durante la secuencia de encendido y apagado del microcontrolador.
2.9 ENTRADAS Y SALIDAS DIGITALES
El microcontrolador cuenta con 2 puertos P1 y P2 de 8 bits los cuales pueden ser
configurados como entrada o salida, sus principales caractersticas son las siguientes:
- Los bits de todas las entradas y salidas pueden ser programados indepenientemente.
- Cualquier combinacin de entrada, salida o condicin de interrupcin es posible.
- Cada entrada o salida tiene una resistencia individual de pullup/pull down.
- Capacidad para seleccin del flanco para interrupcin.
A continuacin se presentan los registros para las terminales de Entrada/Salida digitales
microcontroladores MSP430x2xx. Los registros son secciones especiales de la memoria que
configura el dispositivo y nos dice cuando sucede algo importante. Cada pin se puede
configurar y controlar de forma individual:
- Registro de entrada PxIN: es un registro de solo lectura. Cada bit del registro refleja
PxIN refleja el valor de la seal de entrada en el pin correspondiente. Todo el PxIN

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"


24
byte lee el valor de todas las entradas de ese puerto a la vez.Tenga en cuenta que es
un sistema digital, por lo que hay slo dos valores que se pueden leer, un 0 o un
1. Estos valores corresponden a los voltajes de Vss (0) y Vcc (1), que son generaly 0
V y entre 1,8 y 3,6 V, respectivamente. Hay un umbral particular integrado en el
dispositivo de tal manera que cualquier tensin sobre ese valor se lee como un 1 y
cualquier voltaje de lectura a continuacin se lee como un 0. Para evitar daos en el
chip, que sin duda debe nunca tratar de leer las tensiones fuera del rango entre Vss
y Vcc directamente. [3] [5] [7]
- Registro de salida PxOUT: Cada bit del registro PxOUT representa el valor que se
obtendr sobre el pin correspondiente cuando se le ha seleccionado la funcin de E/S,
la direccin escogida sea salida y el resistor pull-up/pull-down este desactivado, el bit
correspondiente en el registro PxOUT escoge a que resistor estar conectado. [3] [5]
[7]
- Registro de direccin PxDIR: Escoge la direccin del pin correspondiente, sin
considerar la funcin seleccionada para el pin, es decir que ser un pin de entrada
aunque la funcin seleccionada sea lo contrario. [3] [5] [7]
- Registro de habilitacin del resistor pull-up/pull-down PxREN: Activa o desactiva el
resistor pull-up/pull-down del pin correspondiente. Con el mismo bit del registro
PxOUT se escoge si la patilla es conectada al resistor pull-up o pull-down. [3] [5] [7]
Nota: Cabe aclarar que todos los pines de los puertos cuentan con resistencia interna
Pull-up/Pull-down; Pull-up te obliga que se haga 1; Pull-down te fuerza a tierra; si esta
mas cerca de le voltaje de 3.7 volts te lleva a Pull-up, de lo contrario te llevar a Pull-
down.
- Registro de interrupcin PxI (Interrupt) PxIES (Interrupt Edge Select )y PxIFG
(Interrupt flag): Mandaran un mensaje a la CPU para mantener lo que se esta
haciendo y cuidar de la Circunstancia Especial. Una vez que la alarma se ha
cumplido, la CPU vuelve a donde estaba antes. Para habilitar este comportamiento,
para habilitar este comportamiento se ha establecido el bit PxI para el pin se establece
en 1. PxIES bit se determina si la bandera se activa por el pin que va de 0 a 1 (el bit
IES se establece en 0), el conjunto de bits IES se establece en 1. En otras palabras la

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"


25
bandera se activa cuando hay un flanco de pendiente positiva ascendente, un
negativo cuando se activa la alarma. [3] [5] [7]
- Bits de seleccin de funcin PxSEL y PxSEL: Los pines del puerto frecuentemente
son multiplexados con otros dispositivos perifricos. Cada bit en PxSEL y PxSEL2 es
utilizado para escoger en el pin correspondiente la funcin requerida. [3] [5] [7]
De que forma podemos cambiar los bits:
En un programa tenemos que inicializar el pin de ser una salida: P1DIR = BIT4; (Una forma
equivalente de hacer esto es utilizar un operador lgico.
El valor de P1OUT podra ser 0 o 1, por lo que si nos importa en qu estado el LED comienza
en deberamos establecer que:
P1OUT = 0;
(Una prctica mejor es inicializar el estado de salida antes de que cambiemos el pin de salida.)
Ahora tenemos un pin de salida fijado en 0, manteniendo el apagado LED. Para encenderlo, le
damos el comando:
P1OUT | = BIT4;
Para desactivarlo.
P1OUT & = ~ BIT4;
Para cambiar su estado (si fuera el, en caso de apagado):
P1OUT ^ = BIT4; [6]

2.10 TEMPORIZADOR DEL PERRO GUARDIN WATCHDOG TIMER(WDT+).
El principal propsito de el Watchdog Timer es proteger al sistema cuando ocurra un
problema en la ejecucin del software. Si el intervalo de tiempo expira , un reset al sistema es
generado. Si la funcin de Watchdog no es necesaria en una aplicacin, el modulo puedes
ser configurado como un contador de intervalos y puede generar interrupciones en espacios
de tiempo seleccionados.
Puede ser configurado ya sea como Whatchdog o un contador de tiempo con el WDTCTL
tambin contiene control de bits para configurar el pin RST/NMI. [5]


DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"


26
2.11 TIMERS
Podemos configurar los relojes en el MSP430, de forma que podemos utilizarlos para
impulsar los Perifricos. Hay que tomar en cuenta que hay un sistema de Timer_B disponible
en algunos dispositivos que comparten muchos aspectos del Timer_A. [8]
Un contador de tiempo es un mecanismo de conteo que esta ligada a algn tipo de intervalo
regular proporcionada por un reloj.
Timer_A es un temporizador/contador de 16 bits con 3 registros captura/compara. Puede dar
soporte a la captura/comparacin mltiple, salidas PWM, y medidas de intervalos de tiempo.
Tambin posee capacidad de interrupcin. Adems tiene capacidad de generar
interrupciones por diferentes eventos. Por el desbordamiento del contador o por las
condiciones de cada uno del captura/comparacin. El Timer tambin nos ayuda a realizar
ciertos eventos y nos ayuda a consumir menos energa, y la CPU hace un evento a la vez,
adems de consumir mas energa.
Principales caractersticas:
- La fuente de reloj es seleccionable y configurable.
- Salidas configurables con capacidad PWM.
- Un solo registro de interrupcin para una rpida decodificacin de todas las
interrupciones del Timer_A. [5]
2.11.1 MODOS DE TEMPORIZADOR TIMER_A
Modo Continuo (Continuos Mode): El contador se mueve libremente a travs de su gama
completa de 0x0000 a 0xFFFF en el momento en que se desborda y retorna a o nuevamente.
El periodo es de 2
16
= 65536 unidades. Este modo es mas conveniente para las entradas de
captura y tambin se utiliza cuando los canales proporcionan salidas con diferente
frecuencias, o que no son peridicas en absoluto. [3]
Modo up (Up Mode). A igual que el modo continuo cuenta y se da vuelta a cero, sin embargo
nos permite elegir hasta hasta que nivel del contador llega antes de regresar a 0. Por lo reglar
este modo se usa cuando todos los canales proporcionan salidas a la misma frecuencia a
menudo para la modulacin de ancho de pulso. [8]

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"


27
Modo Arriba/Abajo (Up/Down Mode): Parecido al modo en el que puede programar el lmite
superior, la diferencia radica en que en lugar a regresar inmediatamente a cero se da vuelta
y genera una cuenta regresiva a cero. Se trata de un modo especializado, utilizado para la
modulacin de ancho de pulso centrado. [8]
Tambin el Timer_A tiene la caracterstica de establecer puntos de control en su contabilidad
Texas Instruments (TI) llama a estos puestos de control Registros de Captura/Compara. El
uso ms bsico de estos registros es establecer valores en los que el contador de banderas
genere un caso particular. De hecho uno de estos registros es lo que se utiliza para
establecer el lmite superior de arriba modo arriba/abajo. [8]
Este tipo de registro en el modo de comparacin, se pone un valor que se compara con la
cuenta actual del Timer_A. Si los valores son iguales nos indicara que es caso para el
procesador. El modo captura se comporta de manera diferente, el timer espera algn tipo de
seal ( por lo regular algn tipo de entrada) y luego registra el valor actual del contador del
tiempo en el registro sin detener el temporizador, parecido a la funcin de vuelta de un
cronometro. [8]
2.11.2 REGISTROS TIMER_A.
Hay tantas maneras de como utilizar el Timer_A , en la que hay una cantidad de registros a
utilizar. Por lo menos hay 7 registros utilizados en cualquier dispositivo con el perifrico
Timer_A. A continuacin se describen cada uno de ellos.
- TACTL - El Registro de Control Timer_A se utiliza para establecer el vnculo entre el
temporizador y un reloj y seleccione el modo utilizado.
o Los bits TASSELx (Clock Source Select) (8 y 9) nos dice que temporizador del
reloj se usar como su fuente.
o La frecuencia de reloj se puede dividir por un factor de ms de 2, 4, 8 o el uso de
los bits de divisin de entrada IDx (Input Divider) (6 y 7). (Tenga en cuenta que
este es un nuevo fraccionamiento, de cualquier divisin de hecho la fuente de reloj
para el reloj en s,. Usted podra tener una divisin total de hasta 64 desde su
fuente de reloj para este perifrico)
o Los bits de Modo de Control MCX (Mode Control) (4 y 5) seleccionar el modo
particular de la hora de usar. Tenga en cuenta especialmente que el

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"


28
establecimiento de estos bits a 0 (el valor predeterminado en el Power on reset
POR) detiene el cronmetro completamente.
o TACLR Clear es el bit 2. Si se escribe un 1 en este bit, se restablece el
temporizador. El MSP430 reiniciar automticamente este bit a cero despus de
restablecer el temporizador.
o TAIE y TAIFG (bits 0 y 1) el control de la capacidad de que el temporizador
interrumpe desencadenantes; ms en esto pronto!
- TAR - La Timer_A Registro es el contador actual, la lectura de este registro indica el valor
actual del contador.
- TACCRx Los registros Timer_A Capture / Compare, de los cuales hay dos en los
dispositivos de la lnea de valor (TACCR0 y TACCR1) son donde se almacenan
determinados valores que queremos usar. A modo de comparacin, escribimos los
valores aqu donde queremos que el temporizador para indicar un evento. En particular,
TACCR0 se utiliza para almacenar el valor al que queremos Timer_A a contar en modo
arriba y modo arriba / abajo. En el modo de captura, el procesador registrar el valor de
TAR cuando el MSP430 es sealado para ello.
- TACCTLx Los registros Timer_A Capture / Compare de control corresponden a los
registros TACCRx. Estos establecen el comportamiento de cmo se utilizan los CCR.
o Modo Captura CMx (Capture Mode) (bits 14 y 15) cambio de qu tipo o tipos de
las seales dicen al temporizador realizar una captura.
o Seleccionar entrada Captura / Compara CCISx (Capture/Compare) (bits 12 y 13),
seleccione el que se toman las seales de entrada.
o SCS y SCCI (bits 11 y 10, respectivamente) cambian la sincronicidad, el
temporizador normalmente trabaja de forma asncrona para las seales de
entrada.
o PAC (bit 8) cambia si se utiliza el modo de captura (1) o el modo (0) Comparar.
o OUTMODx (bits 5-7) seleccionar varios modos de salida de la seal del CCR
cuando el temporizador seala una captura o comparar evento.
o CCIE y CCIFG (bits 4 y 0) son ms interrupciones asociadas al CCR.
o CCI y OUT (bits 3 y 2) son la entrada y la salida para el CCR.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"


29
o COV (bit 1) es el desbordamiento de la captura, este bit se pone a 1 si dos
capturas se indican antes de que el primer valor de la captura es capaz de ser
ledo.
- TAIV - El Timer_A interrupcin vectorial Registro, ya que hay varios tipos de
interrupciones que pueden ser marcados por Timer_A, este registro contiene informacin
sobre lo que las interrupciones han marcado.
o Los nicos bits utilizados aqu son bits 1-3 (TAIVx), que muestran el tipo de
interrupcin que ha sucedido, lo que nos permite realizar diferentes acciones para
resolver los diferentes tipos de interrupciones. [8]
2.11.3 MODO CAPTURA-COMPARA
Modo Captura: el modo captura es seleccionado cuando CAP=1. El modo captura es
utilizado para registrar eventos de tiempo. Este puede ser utilizado para velocidades
computacionales o mediciones de tiempo. Las entradas Captura son conectadas en pines
externos o seales internas y son seleccionados por medio de CCISx. Sirve para leer las
seales cuadradas, si queremos ver la seal.
Modo Compara: El modo compara es seleccionado cuando CAP=0. Es utilizado para
generar una seal de salida PWM o interrupciones en intervalos especficos de tiempo.
Obtener seales cuadradas.
2.12 INTERRUPCIONES
Las interrupciones son usualmente generadas por hardware aunque pueden ser inicializadas
por software, a menudo indican que ha ocurrido un evento que requiere una respuesta
urgente. Un paquete de datos podra haber sido recibido, y necesita ser procesado antes de
que llegu el prximo paquete. El procesador deja de hacer lo que esta llevando acabo,
almacena informacin suficiente para reanudar mas adelante y procede a ejecutar una ISR
(Interrup Service Routine-Rutina de Servicio de Interrupcin), regresa a su actividad anterior
cuando el ISR ha concluido. As un ISR es como una subrutina llamada por hardware.
Un segundo uso de las interrupciones, que es importante en el MSP430, es despertar al
procesador de un estado de bajo consumo.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"


30
El cdigo para manejar las interrupciones es llamado controlador de interrupciones o rutina de
servicio de interrupcin (ISR). Cada interrupcin tiene una bandera, que se eleva cuando la
condicin de la interrupcin ocurre.
Hay 3 tipos de interrupciones:
- Reset del sitema (Reset)
- NMI (No Maskable Interrupt-Interrupcin No Enmascarable)
- Enmascarable
La mayora de las interrupciones son enmascarables, lo que significa que solo son eficaces si
el bit GIE (General Interrupt Enable- Habilitacin General de Interrupcin) se establece en el
registro de estado (SR). Son generadas por perifricos que tienen la capacidad de
interrumpir.Las interrupciones no enmascarables solo pueden ser habilitadas o deshabilitadas
individualmente por los bits (NMIIE, ACCVIE, OFIE). Cuando una NMI es aceptada, todos los
bits son automticamente reseteados. Una NMI puede ser generada por tres fuentes:
- Un flanco negativo en el pin RST/NMI cuando esta configurado en el modo de
interrupcin no enmascarable.
- Cuando ocurre una falla en el oscilador.
- Cuando ocurre una violacin de acceso a la memoria flash.
Cada terminal en los puertos P1 y P2 tienen la capacidad de interrupcin, se puede configurar
mediante los registros PxIFG (Port x Interrupt Flag Register), PxIE (Port x Interrupt Enable
Register), y PxIES (Port x Interrupt Edge Select Register). [3]






DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"


31
2.13 MODOS DE OPERACIN DE CONSUMO DEL MICROCONTROLADOR
Los microcontroladores MSP430 cuentan con un modo activo y cinco modalidades de bajo
consumo que son seleccionadas mediante software. Una interrupcin puede activar el
dispositivo en cualquiera de los 5 modos de bajo consumo dar servicio a la interrupcin y
regresar al modo de bajo consumo en el cual estaba el microcontrolador.
o Modo activo: Todos los relojes estn activos, la CPU.
o Modo de bajo consumo 0(LMP0-Low Power Mode 0):
- El CPU y el MCLK esta deshabilitado.
- ACLK (Auxiliary Clock) y SMCLK (Sub-Main Clock) permanecen activos.
o Modo de bajo consumo 1 (LMP1-Low Power Mode 1)
- El CPU y el MCLK estn deshabilitados.
- ACLK y SMCLK permanecen activos.
- El generador DCO (Digital Controller Oscilator) deshabilitado si no es
utilizado por el SMCLK.
o Modo de bajo consumo 2 (LMP2-Low Power Mode 2)
- El CPU, MCLK y SMCLK estn deshabilitados.
- El DCO esta habilitado.
- ACLK permanece activo.
o Modo de bajo consumo 3 (LMP3-Low Mode Power 3)
- El CPU, MCLK, SMCLK y DCO deshabilitados.
- ACLK permanece activo.
o Modo de bajo consumo 4 (LMP4-Low Mode Power 4)
- El CPU, MCLK, SMCLK, ACLK y el DCO estn deshabilitados.









DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN UN
MICROCONTROLADOR DE ULTRA-BAJO CONSUMO DE ENERGA
CAPTULO
3
PROGRAMACIN DEL
MICROCONTROLADOR

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



32
CAPITULO 3
3.1 SOFTWARE Y LENGUAJES DE PROGRAMACIN.
Un lenguaje de programacin consiste en todos los smbolos, caracteres y reglas de uso que
permiten a las personas "comunicarse" con las computadoras. Existen varios cientos de
lenguajes y dialectos de programacin diferentes. Algunos se crean para una aplicacin
especial, mientras que otros son herramientas de uso general ms flexibles que son apropiadas
para muchos tipos de aplicaciones. En todo caso los lenguajes de programacin deben tener
instrucciones que pertenecen a las categoras ya familiares de entrada/salida,
clculo/manipulacin de textos, lgica/comparacin y almacenamiento / recuperacin.
Aunque todos los lenguajes de programacin tienen un conjunto de instrucciones que permiten
realizar dichas operaciones, existe una marcada diferencia en los smbolos, caracteres y
sintaxis de los lenguajes de mquina, lenguajes ensambladores y lenguajes de alto nivel.
Son herramientas que nos permiten crear programas y software. Entre ellos tenemos: C#,
Delphi, C, PHP, Perl, Python,Visual Basic, Pascal, Java, entre otros.
La programacin consiste en desarrollar programas para procesar informacin, se utiliza para
designar la creacin de programas a pequea escala, el desarrollo de sistemas complejos se
denomina ingeniera de software.
Una computadora es totalmente intil si no dispone de un programa capaz de procesar
informacin, para que se realice dicho procesamiento de informacin habr sido necesario
pensar, construir, y crear un programa y ejecutar dicho programa o aplicacin en la
computadora.
Para el desarrollo de grandes sistemas informticos se divide el trabajo en tareas que diversos
programadores desarrollaran, al terminar se unen las piezas para completar el sistema en s, la
programacin tambin se aplica para el desarrollo de grandes sistemas en las ingenieras de
software.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



33
La programacin tiene como objetivo el tratamiento de la informacin correctamente, con lo que
se espera que un programa de el resultado correcto y no uno errneo, cada aplicacin debe
funcionar segn lo esperado en trminos de programacin.
Otro objetivo fundamental de la programacin es que sean de cdigos claros y legibles, con lo
que si un programador inicia un programa y no lo termina, otro programador sea capaz de
entender la codificacin y poder terminarlo, en programacin existen ciertas normas no escritas
de cmo han de nombrarse los componentes, objetos o controles de cada sistema, as como
sus variables que deben ser relativas al termino al cual se van a vincular.
Por ltimo la programacin pretende que sus programas sean tiles y eficientes, de muchs
formas diferentes, la programacin nos dar el mismo resultado de un programa, un buen
programador llegara al mismo resultado con un mnimo de cdigo y de la forma ms clara y
lgica posible, un cdigo claro y legible facilita el mantenimiento de la aplicacin o sistema.
Una computadora funciona bajo control de un programa el cual debe estar almacenado en la
unidad de memoria o unidades de almacenamiento como por ejemplo, el disco duro.
Los lenguajes de programacin de una computadora en particular se conocen como cdigo de
mquinas o lenguaje de mquinas. Estos lenguajes codificados en una computadora especfica
no podrn ser ejecutados en otra computadora diferente.
Para que estos programas funcionen para diferentes computadoras hay que realizar una
versin para cada una de ellas, lo que implica el aumento del costo de desarrollo. Por otra
parte, los lenguajes de programacin en cdigo de mquina son verdaderamente difciles de
entender para una persona, ya que estn compuestos de cdigos numricos sin sentido
nemotcnico.
Los lenguajes de programacin facilitan la tarea de programacin, ya que disponen de formas
adecuadas que permiten ser ledas y escritas por personas, a su vez resultan independientes
del modelo de computadora utilizada, representan en forma simblica y en manera de un texto
los cdigos que podrn ser ledos por una persona.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



34
Existen estrategias que permiten ejecutar en una computadora un programa realizado en un
lenguaje de programacin simblico. Los procesadores del lenguaje son los programas que
permiten el tratamiento de la informacin en forma de texto, representada en los lenguajes de
programacin simblicos.
Hay lenguajes de programacin que utilizan compilador, la ejecucin de un programa con un
compilador requiere de dos etapas:
- 1) Traducir el programa simblico a cdigo mquina.
- 2) Ejecucin y procesamiento de los datos.
Otros lenguajes de programacin utilizan un programa intrprete o traductor, el cual analiza
directamente la descripcin simblica del programa fuente y realiza las instrucciones dadas. El
intrprete en los lenguajes de programacin simula una mquina virtual, donde el lenguaje de
mquina es similar al lenguaje fuente.
La ventaja del proceso interprete es que no necesita de dos fases para ejecutar el programa, sin
embargo su inconveniente es que la velocidad de ejecucin es ms lenta ya que debe analizar
e interpretar las instrucciones contenidas en el programa fuente. Los lenguajes de programacin
estn conformados por una serie de reglas sintcticas y semnticas que sern utilizadas por el
programador y a travs de las cuales crear un programa o subprograma, las instrucciones que
forman dicho programa son conocidas como cdigo fuente.
Los lenguajes de programacin pueden clasificarse de diversas maneras, como por ejemplo
segn su nivel de abstraccin: lenguaje de bajo nivel; lenguaje de nivel medio y lenguaje de alto
nivel. Tambin puede haber lenguajes segn la forma de ejecucin, encontrndonos as con l
y lenguajes interpretados.
3.1.1CARACTERSTICAS:
Existen muchos lenguajes de programacin, que responden a necesidades especficas y que
poseen caractersticas y funcionalidades especficas. Por lo tanto, la eleccin del lenguaje de
programacin depende, sobre todo, de los requerimientos a satisfacer, as como de los recursos

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



35
existentes para la comprensin y la prctica del lenguaje. Criterios de seleccin de un lenguaje
de programacin.
1. Utilidad: fcil de aprender, fcil de usar por un programador experimentado.
2. Rendimiento: velocidad de ejecucin de los programas, velocidad de ejecucin del
compilador.
3. Portabilidad y flexibilidad a posibilidad de desarrollar el lenguaje y su implementacin,
existencia de bibliotecas de funciones, clases, etc.
4. Continuidad: continuidad del fabricante, continuidad del lenguaje, continuidad de
implementacin, existencia de una norma internacional para definir el lenguaje,
conformidad de implementacin con respecto a la norma, existencia de varios
fabricantes para un mismo lenguaje.
- Basic y Pascal que son herramientas de programacin, idneas para la inicializacin de
los programadores.
- C y C++ que sirven para la programacin de sistemas.
- Cobol, que es una herramienta de programacin orientada hacia sistemas de gestin
empresarial como nominas y contabilidad.
- Fortran, que son lenguajes especficos para clculos matemticos y o numricos.
- Herramientas de programacin para ambientes grficos como son Visual Basic, Delphi y
Visual C.
- HTML y Java, que permiten la creacin de pginas WEB para Internet.
CLASIFICACIN:
Lenguajes de bajo nivel.
Son lenguajes totalmente dependientes de la mquina, es decir que el programa que se realiza
con este tipo de lenguajes no se pueden migrar o utilizar en otras maquinas, al estar
prcticamente diseados a la medida del hardware, aprovechan al mximo las caractersticas
del mismo.
Dentro de este grupo se encuentran:

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



36
El lenguaje maquina: este lenguaje ordena a la mquina las operaciones fundamentales para su
funcionamiento, consiste en la combinacin de 0's y 1's para formar las ordenes entendibles por
el hardware de la maquina, es mucho ms rpido que los lenguajes de alto nivel, la desventaja
es que son bastantes difciles de manejar y usar, adems de tener cdigos fuente enormes
donde encontrar un fallo es casi imposible.
El lenguaje ensamblador es un derivado del lenguaje maquina y est formado por abreviaturas
de letras y nmeros llamadas mnemotcnicos, con la aparicin de este lenguaje se crearon los
programas traductores para poder pasar los programas escritos en lenguaje ensamblador a
lenguaje mquina, como ventaja con respecto al cdigo mquina es que los cdigos fuentes
eran ms cortos y los programas creados ocupaban menos memoria, las desventajas de este
lenguaje siguen siendo prcticamente las mismas que las del lenguaje ensamblador, aadiendo
la dificultad de tener que aprender un nuevo lenguaje difcil de probar y mantener.
Lenguajes de alto nivel
Se encuentran ms cercanos al lenguaje natural que al lenguaje mquina, estn dirigidos a
solucionar problemas mediante el uso de EDDs (Estructuras Dinmicas de Datos), son
estructuras que pueden cambiar de tamao durante la ejecucin del programa, permiten crear
estructuras de datos que se adapten a las necesidades reales de un programa, son lenguajes
independientes de la arquitectura de la computadora, es decir que en principio, un programa
escrito en un lenguaje de alto nivel, se puede migrar de una mquina a otra sin ningn tipo de
problema.
Estos lenguajes permiten al programador olvidarse por completo del funcionamiento interno de
la maquinas para la que estn diseando el programa, solo necesitan un traductor que
entiendan el cdigo fuente como las caractersticas de la maquina, suelen usar diferentes tipos
de datos para la programacin, hay lenguajes de propsito general y de propsito especifico.
Lenguajes de Medio nivel
Estos lenguajes se encuentran en un punto medio entre los dos anteriores, dentro de estos
lenguajes podra situarse C ya que puede acceder a los registros del sistema, trabajar con

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



37
direcciones de memoria, todas ellas caractersticas de lenguajes de bajo nivel y a la vez realizar
operaciones de alto nivel.
GENERACIONES
- Primera generacin: lenguaje maquina.
- Segunda generacin: se crearon los primeros lenguajes ensambladores.
- Tercera generacin: se crean los primeros lenguajes de alto nivel.
- Cuarta generacin: son lenguajes capaces de generar cdigo por si solos, con lo cuales
se pueden realizar aplicaciones sin ser un experto en el lenguaje, aqu tambin se
encuentran los lenguajes orientados a objetos, haciendo posible la reutilizacin de
partes del cdigo para otros programas.
- Quinta generacin: aqu se encuentran los lenguajes orientados a la inteligencia artificial,
etos lenguajes todava estn poco desarrollados.
3.2 LENGUAJE EN C
El lenguaje de programacin en C, es un lenguaje conocido como de alto nivel, es que es un
lenguaje estructurado, lo que permite generar cdigo claro y sencillo, ya que est basado en la
modularidad, est estructurado en tres partes fundamentales, las cuales son, una librera
estndar, un programa compilador y un procesador.
La librera estndar en el lenguaje de programacin C, no es ms que libreras realizadas en
cdigo objeto y puede haber sido realizada en otro lenguaje diferente que el C, etas libreras se
deben colocar el un programa de lenguaje programacin en C, en la instruccin conocida como
INCLUDE.
El programa compilador en el lenguaje de programacin en C, es el que tiene como funcin
traducir las instrucciones del programa fuente en C al lenguaje conocido por las computadoras,
el llamado lenguaje maquina, el compilador, depura y detecta los posibles errores en el lenguaje
fuente, y es capaz de notificar el error ocurrido al programador, mediante un mensaje de texto.
En el lenguaje de programacin en C, el preprocesador es un componente perteneciente
propiamente al lenguaje C, el cual transforma el programa fuente traduciendo cada instruccin

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



38
del programa fuente, de la siguiente forma: Elimina los comentarios colocados por el
programador, incluye en el programa fuente el contenido de los archivos que se encuentran
declarados en el INCLUDE, a estos archivos se le suele llamar cabeceras, y por ltimo,
sustituye los valores de las constantes declaradas en l define, por su flexibilidad y por ser un
lenguaje de alto nivel, es empleado por muchos programadores.
3.3 EL LENGUAJE ENSAMBLADOR
Los traductores se pueden dividir a grandes rasgos en dos grupos, segn la relacin que haya
entre el lenguaje fuente y el objeto. Cuando el lenguaje fuente es, en esencia, una
representacin simblica de un lenguaje numrico de mquina, el traductor se llama
ensamblador y el lenguaje fuente se llama lenguaje ensamblador. Cuando el lenguaje fuente es
un lenguaje de alto nivel como el C o Pascal, y el lenguaje objeto es un lenguaje de mquina
numrico o una representacin simblica de uno de ellos, el traductor se llama compilador.
Un lenguaje ensamblador puro es aquel en que cada sentencia produce exactamente una
instruccin mquina. En otras palabras, hay una correspondencia biunvoca entre las
instrucciones de mquina y las sentencias del programa en ensamblador. Si cada lnea de un
programa en ensamblador contuviera una sentencia ensamblador y si cada palabra de mquina
contuviera una instruccin de mquina, entonces un programa de n lneas escrito en
ensamblador producira un programa en lenguaje de mquina que ocupara n palabras.
La razn por la que se usa el lenguaje ensamblador en lugar de programar el lenguaje mquina
(octal o hexadecimal) consiste en que es mucho ms fcil programar en ensamblador. Es muy
diferente usar nombres y direcciones simblicas que hacerlo en binario u octal. La mayora de la
gente puede recordar que las abreviaturas para la adicin, la sustraccin, la multiplicacin y la
divisin son ADD, SUB, MUL y DIV, pero pocos pueden recordar que las instrucciones mquina
son 24576, 57344, 28672 y 29184. El programador en lenguaje ensamblador slo tiene que
recordar los nombres simblicos ADD, SUB, MUL, DIV, ya que el ensamblador los traduce a las
instrucciones mquina. Por el contrario, el programador en lenguaje mquina debe recordar, o
consultar constantemente, los valores numricos.
En cuanto a las direcciones, el programador en lenguaje ensamblador puede dar nombres
simblicos a las posiciones de memoria y dejarle al ensamblador la tarea de suministrar los
valores numricos correctos. El programador en lenguaje mquina debe trabajar siempre con

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



39
los valores numricos de las direcciones. En consecuencia, nadie programa hoy en da en
lenguaje mquina, aunque se hacia hace aos, antes de que se inventaran los ensambladores.
Los lenguajes ensambladores tienen otra propiedad, adems de la correspondencia uno a uno
entre las sentencias en ensamblador y las instrucciones mquina, que los distngue de los
lenguajes de alto nivel. El programador en ensamblador tiene acceso a todos los recursos e
instrucciones de la mquina a la que se aplica, pero no el programador en un lenguaje de alto
nivel. Por ejemplo si la mquina tiene un indicador de desbordamiento, el programador en
lenguaje ensamblador puede examinarlo; uno en Pascal no puede hacerlo directamente. Es
decir, que todo lo que puede hacerse en lenguaje mquina puede hacerse tambin en lenguaje
ensamblador, pero muchas instrucciones, registros y otras cosas por el estilo no estn
disponibles para que el programador en lenguaje de alto nivel las use. Los lenguajes para la
programacin de sistemas suelen ser un hbrido entre ambos tipos, con la sintaxis de un
lenguaje de alto nivel pero con las posibilidades de acceso a la mquina de un lenguaje
ensamblador.
Una diferencia final, consiste en que un programa en lenguaje ensamblador slo puede correr
en una familia de mquinas, mientras que un programa escrito en lenguaje de alto nivel puede,
en potencia, correr en muchas mquinas. La habilidad de poder mover software de una
mquina a otra, resulta de gran importancia prctica para muchas aplicaciones. [9]
3.4 ENTORNOS DE PROGRAMACION CON LA FAMILIA MSP430 DE TEXAS
INSTRUMENTS
Texas Instruments ofrece consejos para experimentar el hardware que soportan grandes y
pequeas fichas de MSP430. TI tambin proporciona herramientas de desarrollo de software,
tanto de forma directa, y en conjunto con los socios. Uno de ellos es la cadena de herramientas
IAR C/C + + compilador y entorno de desarrollo integrado o IDE.
Una edicin Kickstart se puede descargar de forma gratuita en TI o IAR, sino que se limita a 8
KB de C/C + + cdigo en el compilador y depurador.
TI tambin combina una versin de su propio compilador y herramientas con su Eclipse Code
Composer Studio IDE basado. Se vende versiones con todas las funciones, y ofrece una
versin gratuita para su descarga, que tiene un lmite de tamao de cdigo de 16 KB. CCS

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



40
soporta emuladores en circuito, e incluye un simulador y otras herramientas, sino que tambin
puede funcionar con otros procesadores vendidos por TI.
3.5 EL CODE COMPOSER STUDIO (CCS) PARA MSP430
DESCRIPCIN
Code Composer Studio (CCStudio) es un entorno de desarrollo integrado (IDE) de Texas
Instruments (TI) incrustado familias de procesadores. CCStudio comprende un conjunto de
herramientas utilizadas para desarrollar y depurar aplicaciones embebidas. Incluye
compiladores para cada una de las familias de TI del dispositivo, el editor de cdigo fuente,
proyecto de entorno de compilacin, depurador, profiler, simuladores, sistema operativo en
tiempo real y muchas otras caractersticas. El IDE intuitiva proporciona una nica interfaz de
usuario que le llevar a travs de cada paso del flujo de desarrollo de
aplicaciones. Herramientas e interfaces familiares permiten a los usuarios para empezar ms
rpido que nunca antes y agregar funcionalidad a sus aplicaciones gracias a sofisticadas
herramientas de productividad.
Code Composer Studio est basado en la plataforma de software de cdigo abierto Eclipse. El
marco de software Eclipse fue desarrollado originalmente como un marco abierto para la
creacin de herramientas de desarrollo. Eclipse ofrece un marco excelente software para la
creacin de entornos de desarrollo de software y se est convirtiendo en un marco estndar
utilizado por muchos vendedores de software embebido.CCStudio combina las ventajas de la
plataforma de software Eclipse con funciones de depuracin integradas avanzadas de TI que
resulta en un entorno de desarrollo rico en caractersticas de peso para desarrolladores de
sistemas integrados.
Code Composer Studio permite ejecutar tanto en PC Windows y Linux. No todas las funciones o
dispositivos son compatibles con Linux consulte Soporte de Hosting Linux para ms detalles.
CARACTERISTICAS
Hay muchas caractersticas incluidas en el Code Composer Studio IDE. Las siguientes son
algunas de las caractersticas clave que pueden ser de su inters.
Explorador de recursos.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



41
El Explorador de recursos proporciona un acceso rpido a las tareas comunes como la creacin
de nuevos proyectos, as como permitir a los usuarios navegar a travs de extensos ejemplos
proporcionados como parte de controlSUITE , StellarisWare y otros.
Grace - perifricos de generacin de cdigo
Grace es una caracterstica de Code Composer Studio que permite a los usuarios generar
MSP430 conjunto de perifricos hasta el cdigo en cuestin de minutos. El cdigo generado es
completamente comentado y fcil de leer cdigo C.
SYS / BIOS
SYS / BIOS es un sistema operativo avanzado, en tiempo real para su uso en una amplia gama
de procesadores TI digitales de seal (DSP), microprocesadores ARM, y los
microcontroladores. Est diseado para su uso en aplicaciones embebidas que necesitan
programacin en tiempo real, la sincronizacin, y la instrumentacin. Proporciona multitarea
preventiva, la abstraccin del hardware y la gestin de memoria. SYS / BIOS es libre de
regalas y se incluye con Code Composer Studio.
Compilador
Code Composer Studio incluye C / C + + compiladores adaptado para las arquitecturas de
dispositivos integrados de TI. Los compiladores de C6000 y C5000 dispositivos
procesadores de seales digitales sacar el mximo partido del potencial de rendimiento de gran
alcance de esas arquitecturas.Compiladores para la TI ARM y microcontroladores MSP430,
sin sacrificar el rendimiento total, son ms sensibles a las necesidades de tamao de cdigo de
los dominios de aplicacin. El compilador para tiempo real C2000 microcontroladores de TI
tiene la mejor ventaja de las muchas prestaciones y caractersticas de tamao de cdigo
disponibles en esta arquitectura.
La Ley de Control de acelerador (CLA) C-compilador tambin es compatible con CCSv4 y
CCSv5. Para obtener ms informacin sobre el CLA-C Compiler, por favor haga clic aqu .
Soporte para C + + no podra ser mejor, sobre todo ahora que EABI est lanzando. EABI
(interfaz de aplicacin binaria extendido) es un moderno conjunto de normas para la

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



42
organizacin de compilador de cdigo generado. Normas eabi incluyen el formato de archivo de
objeto ELF, el mismo formato usado en Linux. Los niveles ms altos de programacin
disponible slo en C + +, a travs de plantillas y la funcin in-guarnicin, ver una gran mejora
debido a la EABI. Apoyo EABI est actualmente disponible para ARM, C6000 DSP MSP430 y
compiladores, y pronto estar disponible en los otros compiladores TI.
OPCIONES DE LICENCIA
Hay varias opciones de licencia para el Code Composer Studio:
- Evaluacin - sin lmite de licencias limitadas que pueden ser utilizados para la evaluacin
herramientas y dispositivos de TI.
- Nodo bloqueado - una licencia que est ligado a un equipo especfico.
- Flotante - licencias que se pueden compartir entre varios equipos.
- Cdigo de tamao limitado - cdigo de calibre licencia limitada 16KB libre para MSP430.
[10]
El Code Composer Studio dispone de una licencia gratuita que llega justo a los 16 kBytes de
Flash del microcontrolador MSP430G2553 incluido en los ltimos Launchpad de versin 1.5. De
hecho, actualmente, no hay ningn microcontrolador dentro de la serie value line de la familia
MSP430 que tenga ms de 16kBytes de Flash.
Por tanto, en rigor, no es necesario hacer nada de lo que viene a continuacin para trabajar con
el Launchpad. No obstante la opcin propuesta tiene otras ventajas:

- Pude emplearse para compilar programas para otros microcontroladores de la familia
MSP430 que soportan ms de 16kB de Flash.
- Se trata de un entorno basado en Eclipse, lo cual es muy prctico para los que ya
conocen este entorno de programacin, a parte de la calidad que tiene el entorno
Eclipse en si mismo.
Usar el entorno Eclipse para todos los procesadores con que uno trabaja evita la
necesidad de aprender distintos entornos de programacin propietarios.
- Se trata de un entorno portable. Esto es, se puede mover de un ordenador a otro en un
pendrive o en un disco duro porttil.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



43
Desgraciadamente tambin hay un par de inconvenientes:
- Los ejemplos que proporciona Texas Instruments, y muchos ejemplos disponibles en
internet, se han realizado para los dos entornos preferidos IAR Embedded
Workbench o Code Composer Studio. Es por ello que normalmente tendrn que
hacerse algunas modificaciones en el cdigo para que compile usando las herramientas
propuestas. Eso incluye, especialmente, el procedimiento de definicin de las Rutinas de
Servicio de Interrupcion.
- Para depurar programas, o cargarlos en la placa Launchpad, son necesarios los drivers
USB de la placa y un par de ficheros DLL se soporte.

3.6 COMO CREAR UN PROYECTO CON CODE COMPOSER STUDIO
Nos vamos a Development Tools


Nos aparecer de un lado el Launch Pad (MSP-EXP430G2) y la placa MSP-EXP430FR5739.
Del lado derecho se despliega un men con los dispositivos con los cuales uno puede trabajar
adems de venir ejemplos que nos pueden ayudar a aprender de mejor manera el entorno de
CCS (Code Composer Studio).

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



44

Aparecer una pantalla como la siguiente.

Le damos nombre seleccionamos en family MSP430, en variante elegimos MSP430G2231 y
posteriormente elegimos en Project templates and examples seleccionamos Empty Project
(with main.c) y damos finish.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



45


Te puedes meter en Proyect Explorer, dar click al proyecto, habr un apartado que dice
Includes darle click y buscar el modelo del dispositivo que se este utilizando en este caso es un
MSP430G2231 nos vendr como configurar los perifricos del dispositivo.








DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



46
PROGRAMA PARA PRENDER Y APAGAR LEDS DE LA PLACA MSP-EXP430G2

#include <msp430g2553.h> // Indicar que tipo de c se esta trabajando
void main (void) {
volatile unsigned int i=0;

WDTCTL = WDTPW | WDTHOLD; //Evita que se reinicie el c
P1DIR=0x41; // Selecciona la direccin del pin E/S sin tomar en cuenta la funcin
P1OUT=0X01;
for(;;){
i=10000;
do(i--);
while(i!=0);
P1OUT^=0X41;
}}
Para compilarlo vamos a Project y seleccionamos Build Project o seleccionamos para
compilarlo, despus de la compilacin vamos a la imagen para asi poder correr el programa
de nuestra LaunchPad.

Fig. 3.1 LaunchPad prende LED.




























DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN UN
MICROCONTROLADOR DE ULTRA-BAJO CONSUMO DE ENERGA
CAPTULO
4
SERVOACTUADORES


DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



47
CAPITULO 4
4.1 CONCEPTO Y DEFINICION DE SERVOACTUADOR
DEFINCION ACTUADOR.
Un ACTUADOR dispositivo que convierte una magnitud elctrica en una salida, generalmente
mecnica, que puede provocar un efecto sobre el proceso automatizado.El actuador mas
comn es el actuador manual o humano. Es decir, una persona mueve o acta un dispositivo
para promover su funcionamiento.Con el tiempo, se hizo conveniente automatizar la actuacin
de dispositivos, por lo que diferentes dispositivos hicieron su aparicin. Actualmente hay
bsicamente dos tipos de actuadores.
Lineales
Rotatorios

Los actuadores lineales generan una fuerza en lnea recta, tal como hara un pistn. Los
actuadores rotatorios generan una fuerza rotatoria, como lo hara un motor elctrico. En este
artculo nos concentraremos en los actuadores rotatorios.
Como ya se mencion, hay tres tipos de actuadores:

Neumticos
Elctricos
Hidrulicos

4.2 CARACTERSTICAS Y ARQUITECTURA DE SERVOACTUADOR
Funcionamiento del actuador Rotatorio

El objetivo final del actuador rotatorio es generar un movimiento giratorio. El movimiento debe
estar limitado a un ngulo mximo de rotacin. Normalmente se habla de actuadores de cuarto
de vuelta, o 90; fraccin de vuelta para ngulos diferentes a 90, por ejemplo 180. La variable
bsica a tomar en cuenta en un actuador rotatorio es el torque o par; tambin llamado
momento. Y es expresado en lb-in, lb-pie, N-m, etc.
Las caractersticas de los actuadores son la potencia, el control, el peso y volumen, la precisin,
la velocidad, el mantenimiento, y el costo entre otros.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



48
Los actuadores se clasifican en tres grandes grupos, de acuerdo con la energa que utilizan, la
cual puede ser de tipo neumtico, Hidrulico o elctrico.
Los actuadores son utilizados en los servomecanismos para producir el movimiento de los
elementos de los servomecanismos de acuerdo con las rdenes proporcionadas la unidad de
control, este tipo de actuadores son utilizados en la robtica empleando la energa neumtica,
hidrulica o elctrica.

Los actuadores de tipo neumticos, son aquellos que utilizan el aire comprimido como fuente
de energa, en ellos, la fuente de energa es aire comprimido entre 5 y 10 bar, y tienen gran
aplicacin en el control de movimientos rpidos, pero de precisin limitada, como podra ser en
los aparatos de rehabilitacin fsica.

Actuadores Hidrulicos, son recomendados en los manipuladores que tienen una gran
capacidad de carga, junto a una precisa regulacin de velocidad. Este tipo de actuadores
utilizan aceites minerales a una presin comprendida entre los 50 y 100 bar, y que en ocasiones
puede llegar a superar los 300 bar. Su diferencia estriba en el grado de comprensibilidad de los
aceites utilizados es menor al del aire, por lo que la precisin obtenida en este caso es mayor,
debido a esto, resulta ms fcil en ellos lograr un control continuo, pudiendo posicionar su eje
en todo un rango de valores con una notable precisin.

Actuadores Elctricos Este tipo de actuadores, son los ms usados en la actualidad debido a
su facilidad de control. En este caso, se utiliza en el propio motor un sensor de posicin
(Encoder) para poder realizar su control. [11]

4.3 SERVOACTUADOR DE MODELISMO

El servo es un potente dispositivo que dispone en su interior de un pequeo motor con un
reductor de velocidad y multiplicador de fuerza, tambin dispone de un circuito que controla el
sistema. El ngulo de giro del eje es de 180 en la mayora de ellos, pero puede ser fcilmente
modificado para tener un giro libre de 360, como un motor standard. El motor servo es el
encargado de dar movilidad al robot.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



49

Figura 4.0 SERVOACTUADOR

Para controlar un servo se debe aplicar un pulso de duracin y frecuencia especficos. Todos
los servos disponen de tres cables, dos para alimentacin Vcc y Gnd (4.8 a 6 ) y un tercero para
aplicar el tren de pulsos de control, que hace que el circuito de control diferencial interno ponga
el servo en la posicin indicada, dependiendo del ancho del pulso. En la figura 4.2 es posible
apreciar ejemplos del posicionamiento del eje del servo dependiendo del ancho del pulso,
donde se logra 0, 90 y 180 con anchos de pulso de 0.5, 1.5 y 2.5 [ms] respectivamente.

Figura 4.1 Ejemplos de posicionamiento de un servo. [12]

Los servomecanismos tienen internamente una serie de componentes que en conjunto
caracterizan su funcionamiento. Estos son: circuito de control, potencimetro interno y el tope
mecnico en el eje de salida. Segn se modifquen, se pueden obtener diferentes
comportamientos. A continuacin se enumeran dichos componentes y las caractersticas que se
aaden o se eliminan:

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



50

Figura 4.2 Componentes de un servomotor de modelismo.

1. Con Control: El circuito de control se encarga de recibir la modulacin tipo pulsos y
ordenar al motor situarse en una posicin relacionada con la anchura del pulso recibido.
Para ello es necesario que est el potencimetro. Si ste no se encuentra, el circuito de
control slo puede mover el eje del motor hacia la izquierda o hacia la derecha. Esta
caracterstica se puede emplear para evitar usar etapas de potencia para mover el
motor, el inconveniente es que se manejan seales de control ms complicadas.

2. Sin control: Al quitar el circuito de control se tendr que usar un circuito de potencia
externo, pero ahora la seal de control ser ms sencilla, no ser obligatorio generar
modulacin. Otros inconvenientes se encuentran a la hora de cerrar el bucle. Para ello
es necesario utilizar el potencimetro pero el valor de ste hay que procesarlo con un
circuito exterior.

3. Con potencimetro: Establece un tipo de tope mecnico. Con l se pueden realizar
bucles cerrados de control. Cuando se tiene el circuito de control el bucle se cerrar
internamente. Esto es muy til en aeromodelismo, ya que, por control remoto indicamos
la posicin que debe tomar el eje y el propio servomotor se encarga de buscarla y
posicionar su eje en ella. De esa forma, no hay que transmitir datos desde el avin hasta

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



51
el mando de control remoto. Si no hay circuito de control el bucle se tendr que cerrar
externamente.

4. Sin potencimetro: Se elimina el primer tope mecnico y la posibilidad de cerrar el
bucle. Si se mantiene el circuito de control se puede realizar un control izquierda-
derecha en bucle abierto por medio de los pulsos, evitando poner un circuito de potencia
externo.
5. Con topes mecnicos: Slo se tienen giros limitados, su aplicacin es muy til en
brazos robots, pinzas, manipuladores, mecanismos ON/OFF, aeromodelismo, etc..
6. Sin topes mecnicos: Se eliminar el tope del rodamiento y el potencimetro, por lo
tanto se pierde la posibilidad de cerrar el bucle internamente. [13]

DAR ANGULO DESEADO AL SERVO MOTOR

El cable de control se usa para comunicar el ngulo. El ngulo est determinado por la duracin
de un pulso que se aplica al alambre de control. El servo espera ver un pulso cada 20
milisegundos (.02 segundos). La longitud del pulso determinar los giros de motor. Un pulso de
1.5 ms., por ejemplo, har que el motor se torne a la posicin de 90 grados (llamado la posicin
neutra). Si el pulso es menor de 1.5 ms., entonces el motor se acercar a los 0 grados. Si el
pulso es mayor de 1.5ms, el eje se acercar a los 180 grados.

Como se observa en la figura, la duracin del pulso indica o dictamina el ngulo del eje
(mostrado como un crculo verde con flecha). Ntese que las ilustraciones y los tiempos reales
dependen del fabricante de motor, sin embargo, el principio es el mismo. [14]


DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



52

Figura 4.3

4.4 FUNCION DE TRANSFERENCIA DE SERVOS DE MODELISMO

Un sistema de control esta formado por subsistemas y procesos (o Planta) unidos con el fin de
controlar las salidas de los procesos. Una ventaja que presentan los sistemas de control es
poder mover equipos grandes con una precisin que de otra forma seria imposible. [15]



En general se controlan variables como la temperatura de los sistemas trmicos; la posicin y la
velocidad de los sistemas mecnicos y voltaje, corriente o frecuencia de los sistemas elctricos.
En la actualidad los sistemas de control tienen uso general en el agua, navegacin y control de
proyectiles, naves espaciales asi como tambin en aviones y barcos.
La funcin de cualquier sistema de control es el de regular automticamente la salida y
guardarla en el valor deseado. Como se explica en el diagrama de bloque anterior el valor
deseado es la entrada al sistema. Si la entrada se cambia, la salida debe responder y cambiar y
ajustarse al nuevo valor. Si ocurre un disturbio en la salida, sin ningn cambio en la entrada, la
salida debe retomar el valor correcto.
Alguna informacin en algun sistema puede ser representado como un bloque simple. En
trminos generales la entrada se designara como i y la salida o.



Se presenta la funcin de transferencia de un Servo Futaba S-148 Linear Servo [16]:
950 40
950
2
+ +
=
s s
nsferencia FuncinTra

Fig. 4.4 Respuesta de la funcion de transferencia.

Nos relaciona la salida de un sistema con su entrada, en este caso la respuesta que tiene el servo a un estmulo que recibe, a
continuacin vemos la respuesta que nos da:

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



54
4.5 SISTEMAS DE LAZO ABIERTO

Un sistema sin regulacion es llamado un sistema de lazo abierto. Vamos a tomar un servo-
motor como un ejemplo. La velocidad del servo depende del voltaje y la corriente suministrada
en el. Un sistema tpico puede utilizar un potencimentro que hace girar un ngulo (i entrada)
para producir un voltaje (V) y esto es amplificado con un amplificador de potencia produciendo
energa elctrica (P) que conduce la velocidad del motor(N salida).

El diagrama de bloques se muestra como:



Consideremos el ejemplo del servo nuevamente. Suponer que el motor lleva una carga, y que la
carga de repente se incrementa, esto hara que el motor sea mas lento, ya que no habra
suficiente energa para mantenerlo a la velocidad original. Nosotros ahora tendramos un error
entre la velocidad seleccionada con el potencimetro y la velocidad actual del motor. Para que
la velocidad sea de nuevo el valor correcto, tenemos que subir la potencia esto lo hacemos de
forma automtica, nosotros necesitamos un sistema de lazo cerrado. Los sistemas de lazo
abierto son incapaces de mantener una salida correcta en todo menos en los casos mas
simples.

A continuacin algunos ejemlos de control en lazo abierto.









DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



55
Entrada Modelo Salida
Dinamica del
vehculo
ngulo del acelerador Rendimiento del motor RPM
Presin en el pedal del
freno
Sistema de freno Desaceleracin
Economa
Mejora del producto Base de clientes
Participacin del
mercado
Politica de impuestos
Comportamiento del
cliente
GDP(Gross Domestic
Product) Crecimiento
del Producto
Domestico
Medicina
Operacin Fisioloda Resultado clnico
Vacuna Bioqumica/Inmunologa
Inmunidad de la
enfermedad
Deportes Swing de golf
Dinmica de proyectiles
balsticos
Posicin de la bola

Tabla 4.0 Ejemplos de lazo abierto.

4.6 CONTROL BASICO DE LAZO CERRADO

Vamos a considerar de nuevo el ejemplo del servo motor. Nosostros deseamos controlar el
angulo del eje o. La entrada del potencimetro produce un voltaje Vi y la salida del
potencimetro produce un voltaje Vo para representar el ngulo del eje. Si los 2 voltajes son
iguales el eje se encuentra en el angulo correcto. Por el contrario si hay un error los voltajes son
diferentes. El amplificador diferencial actua como un dispositivo sumador y produce un voltaje
Ve representando el error.

El error es suministrado al amplificador de potencia y la energa es enviada al motor y gira en la
direccin del ngulo correcto cuando las tensiones se igualan el error es cero y se deja de
suministrar energa al motor. El error en cualquiera de las direcciones puede ser corregida si el
amplificador de energa es capaz de producir una corriente positiva o negativa.


DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



56


Tenga en cuenta como el voltaje del potencimetro de salida se alimenta de nuevo al dispostivo
del sumador de manera que el error es Ve=Vi-Vo. Esto es una retrtoalimentacin negativa y esto
es esencial para que el sistema responda al error. [17]

A continuacin unos ejemplos de lazo cerrado:

Sistema Entrada Controlador Salida Medicin
Control
direccional de
aeronaves de
gran tamao
joystick Microprocesador
ngulo del
aleron
Posicin angular
encoder
Freno por cable
ngulo del pedal
del freno
Microprocesador
Freno de presin
hidrulica
Acelermetro (+
sensores en las
ruedas)
Aula
Concepto que se
les ensee
Profesor
Comprensin del
estudiante
Numero de
espacios en
blanco, nivel de
ruido
Ducha
termosttica
Marcar
temperatura
Vavulas
mecanicas
Temperatura del
agua
Temperatura del
sensor (sin
valvula)
Neumticos de
bicicleta
Presin
requerida para
trazar/marcar
Ciclista con
bomba
Presin actual
en llantas
Manmetro, o un
dedo o pulgar
Tabla 4.1 Ejemplos de Lazo Cerrado.











DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



57
4.7 TIPOS DE SEALES
SEAL ELECTRICA.

Entenderemos por seal elctrica a una magnitud elctrica cuyo valor depende del tiempo. As,
v(t) es una tensin cuya amplitud depende del tiempo e i(t) es una corriente cuya intensidad
depende del tiempo. Por lo regular se designa la palabra seal para referirse a magnitudes que
varan de alguna forma en el tiempo. Interpretaremos a las magnitudes constantes como casos
particulares de seales elctricas.
SEALES CONSTANTES Y VARIANTES.

Como su nombre lo indica, las seales constantes son aquellas que no varan en el tiempo, su
representacin grafica es por lo tanto una lnea recta horizontal. Las seales variantes son
aquellas que cambian su valor de alguna manera con el tiempo.

Fig. 4.0 Seales constantes y variantes.
SEALES CONTINUAS Y ALTERNAS

Desde el punto de vista grfico, las seales continuas son aquellas que siempre tienen el
mismo signo, es decir, son siempre positivas o nulas, o siempre negativas o nulas. En el caso
de una corriente, esto significa que la misma siempre circular en el mismo sentido, aunque
pueda variar su intensidad. Una seal continua, puede o no puede ser constante Las seales
que estn representadas en la parte de arriba son seales continuas, aunque una sea variante.
Las seales alternas son aquellas que, por el contrario a las continuas, varan el signo de su
magnitud. Una seal alterna nunca puede ser constante.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



58

Fig. 4.1 Seales Continuas y Alternas.
SEALES PERIDICAS

Las seales peridicas son aquellas a las cuales se les puede encontrar un patrn de
repetitividad, es decir, que despus de un determinado tiempo, vuelve a repetirse uno a uno los
valores anteriores, una y otra vez. A este patrn se le reconoce como ciclo de onda. El tiempo
de demora un ciclo en desarrollarse se denomina periodo, y se mide en segundos.
Se denomina frecuencia de la seal a la cantidad de ciclos que pueden desarrollarse en un
segundo. Se miden en ciclos por segundo o Hertz (Hz). La relacin existente entre la frecuencia
y el periodo de una seal es:
T
f
1
=

Fig. 4.2 Seales Peridicas.



DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



59
CARACTERISTICAS PARTICULARES DE LAS SEALES PERIODICAS.

Se pueden definir otros parmetros que identifican a una seal peridica:
- Amplitud de pico: Es el valor mximo que tiene una seal, considerada desde el valor
cero.
- Amplitud pico a pico: Es la diferencia entre el valor mximo y el valor mnimo de una
seal.
- Valor eficaz: Es el valor equivalente al de una seal continua constante capaz de
desarrollar la misma potencia que la seal peridica.
- Valor medio: Es el promedio de todos los valores de una seal tomados en un ciclo.
Para seales simtricas como la senoidal, el valor medio es nulo.


Fig. 4.3 Seal Periodica Senoidal.

Desfasaje: Cuando una seal es comparada con una referencia (por ejemplo otra seal), es
posible observar un corrimiento horizontal; se denomina ngulo de desfasaje o simplemente
desfasaje.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



60

Fig. 4.4 Seal desfasada.

SEALES DE PRUEBA (Seal senoidal).

La seal senoidal es la ms comn de las seales de prueba. A esta seal se le puede atribuir
una doble simetra: una respecto al eje tiempo, y otra respecto al punto medio de la onda
(simetra impar).
SEAL RECTANGULAR Y CUADRADA.

Es muy utilizada paa realizar determinadas mediciones e implementar controles en sistemas de
conmutacin. Se caracteriza por tener solamente 2 valores posibles. Se le puede definir
amplitud, perodo, frecuencia y desfasaje. [18]


Fig.4.5 Seal Cuadrada.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



61
Se pueden clasificar en 2 tipos de seales:
- Seales analgicas: Pueden ser representadas mediante funciones que toman un
nmero infinito de valores en cualquier intervalo de tiempo considerado. Cuando estos
lmites coinciden con los lmites que admite un determinado dispositivo, se dice que la
seal est normalizada. La ventaja de trabajar con seales normalizadas es que se
aprovecha mejor la relacin seal/ruido del dispositivo. Para transmitir seales
analgicas se emplean sistemas de transmisin analgicos, y la informacin va
contenida en la propia forma de onda.

- Seales digitales: Son variables elctricas con dos niveles bien diferenciados que se
alternan en el tiempo transmitiendo informacin segn un cdigo previamente acordado.
Cada nivel elctrico representa uno de dos smbolos: 0 1, V o F, etc.

Los niveles especficos dependen del tipo de dispositivos utilizado. Por ejemplo si se
emplean componentes de la familia lgica TTL (transistor-transistor-logic) los niveles son
0 V y 5 V, aunque cualquier valor por debajo de 0,8 V es correctamente interpretado
como un 0 y cualquier valor por encima de 2 V es interpretado como un 1 (los niveles de
salida estn por debajo de 0,4 V y por encima de 2,4 V respectivamente). En el caso de
la familia CMOS (complementary metal-oxide-semiconductor), los valores dependen de
la alimentacin.
Para alimentacin de +5 V, los valores ideales son tambin 0 V y 5 V, pero se reconoce
un 0 hasta 2,25 V y un 1 a partir de 2,75 V.Pueden ser representadas mediante
funciones que toman un nmero finito de valores en cualquier intervalo de tiempo.
Las seales digitales necesitarn sistemas de transmisin digitales donde la informacin
estar contenida en los pulsos codificados, y no en la forma de onda.

Existen fuentes de informacin que generan seales tpicamente analgicas, como la voz y
otras digitales como las computadoras, pero en ambos casos es posible transmitir la seal tanto
en analgico como en digital.
Las seales que no sufren ningn proceso de modulacin ni desplazamiento en frecuencia, se
denominan seales en banda base. En el caso de las seales digitales se denominan cdigos
en banda base o cdigos de lnea.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



62
La representacin en frecuencia de una seal muestra cmo se distribuye la energa de la seal
entre las distintas senoides que la componen. Una seal analgica, en general, estar
compuesta por suma de muchas, posiblemente infinitas, seales senoidales de distintas
frecuencias, por lo que:


Fig. 4.6 Representacin en frecuencia.

Para seales digitales el espectro en frecuencia tambin variar en funcin del cdigo de lnea
utilizado. De forma general, las seales digitales se basan en la forma de onda cuadrada, cuya
representacin en frecuencia se muestra en la siguiente grfica. [19]



4.8 MODULACIN POR PULSOS

En la modulacin de pulsos, lo que se vara es alguno de los parmetros de un tren de pulsos
uniformes, bien sea su amplitud, duracin o posicin. En este tipo de modulacin se distinguen
dos clases: modulacin analgica de pulsos, en que la informacin se transmite bsicamente en
forma analgica, pero la transmisin tiene lugar a intervalos discretos de tiempo y modulacin
digital de pulsos en que la seal de informacin es discreta, tanto en amplitud como en tiempo,
permitiendo la transmisin digital como una secuencia de pulsos codificados, todos de la misma
amplitud. Este tipo de transmisin no tiene contraparte en los sistemas de onda continua. En la

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



63
modulacin digital, la seal de informacin es un flujo binario compuesto por seales binarias,
es decir cuyos niveles de voltaje slo son dos y corresponden a ceros y unos. En la modulacin
analgica de pulsos, la seal no necesariamente es de dos niveles, sino que el nivel de la seal
puede tener cualquier valor real, si bien la seal es discreta, en el sentido de que se presenta a
intervalos definidos de tiempo, con amplitudes, frecuencias, o anchos de pulso variables. Los
esquemas de modulacin de pulsos son varios, los ms importantes:

Modulacin por amplitud de pulsos (PAM).
Modulacin por duracin o anchura de pulsos (PWM o PDM).
Modulacin por posicin de pulsos (PPM).
Modulacin por codificacin de pulsos (PCM)

MODULACIN POR AMPLITUD DE PULSOS

Este tipo de modulacin es la consecuencia inmediata del muestreo de una seal analgica. Si
una seal analgica, por ejemplo de voz, se muestrea a intervalos regulares, en lugar de tener
una serie de valores continuos, se tendrn valores discretos a intervalos especficos,
determinados por la, que debe ser como mnimo del doble de la frecuencia mxima de la seal
muestreada.

Fig. 4.7 Muestreo de una seal analogical.

En la figura anterior, una seal analgica (a), se multiplica, por ejemplo mediante un mezclador,
por un tren de pulsos (b), de amplitud constante y se tiene como resultado un tren de pulsos (c)
modulado en amplitud. La envolvente de este tren de pulsos modulados se corresponde con la
seal analgica. Para recuperar sta, basta con filtrar a paso bajo el tren de pulsos (c).


DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



64

Fig. 4.8 Recuperacin de una seal PAM.

La transmisin de las seales moduladas por amplitud de pulsos impone condiciones severas
respecto a las respuestas en magnitud y fase del sistema, a causa de la corta duracin de los
pulsos. Por otra parte, el comportamiento de un sistema PAM respecto al ruido nunca puede ser
superior al de transmisin en banda base. Sin embargo, la modulacin por amplitud de pulsos
es el primer paso indispensable en la conversin de seales analgicas a digitales,
entendindose aqu por seal digital aqulla que solamente tiene dos niveles. La seal PAM es
una seal discreta, no necesariamente digital.

TIPOS DE MODULACIONES ANALGICAS DE PULSOS

Adems de la modulacin por amplitud de pulsos, pueden variarse otros parmetros del tren de
pulsos sin modulacin: la duracin de los pulsos y su posicin relativa.
Modulacin por duracin o anchura de pulsos (PWM1 o PDM2). En este caso, las muestras
de la seal se emplean para variar la anchura o duracin de los pulsos. Aunque no es muy
utilizado, en la actualidad se emplea en transmisores modulados en amplitud, en que la
modulacin se realiza primero en esta forma. Esta tcnica permite aumentar la eficiencia del
transmisor.
Modulacin por posicin de pulsos. En este caso, la seal moduladora produce un
desplazamiento de los pulsos respecto a la posicin de stos en ausencia de modulacin.


DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



65

Fig. 4.9 Modulaciones por duracin y posicin de pulsos.

MODULACIN POR CODIFICACIN DE PULSOS (PCM)

Este tipo de modulacin, sin duda la ms utilizada de todas las modulaciones de pulsos es,
bsicamente, el mtodo de conversin de seales analgicas a digitales (CAD). PCM siempre
conlleva modulacin previa de amplitud de pulsos. Una seal analgica se caracteriza por el
hecho de que su amplitud puede tomar cualquier valor entre un mnimo y un mximo, de forma
continua. Una seal PAM tambin puede tener cualquier valor, pero en intervalos discretos.
Esto significa que el posible nmero de valores de amplitud es infinito. Por otra parte, la
amplitud de una seal digital slo puede tener un nmero finito de valores, por lo general dos
(cero y uno). Una seal analgica puede convertirse a digital mediante un proceso de muestreo
y cuantificacin. El muestreo la convierte en una seal PAM, la cuantificacin redondea el valor
de la amplitud al nmero permisible ms cercano, generalmente en el intervalo (0, 2n) y lo
codifica en un cierto nmero de bits. En realidad, no es estrictamente necesario transmitir con
toda exactitud las amplitudes de las muestras. En el caso de seales de voz o de imagen, el
receptor ltimo es el odo o el ojo, que detectan slo diferencias finitas, de modo que la seal
original continua, puede aproximarse por una seal formada por un conjunto de amplitudes
discretas seleccionadas de forma tal que el error sea mnimo. [20]



DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



66
GENERACION DE UNA SEAL POR MEDIO DEL MICROCONTROLADOR DE TEXAS
Es muy sencillo de realizar, pero a la vez nos permite hacer muchas cosas diferentes, desde
cambiar el brillo de una bombilla hasta ajustar la velocidad de un motor. Puede generar un
voltaje analgico, o incluso sintetizar sonidos, todo desde el uso del temporizador con 2
interrupciones.
La modulacin por anchura de pulso, PWM (Pulse Width Modulation), es una de los sistemas
ms empleados para el control de servos. Este sistema consiste en generar una onda cuadrada
en la que se vara el tiempo que el pulso est a nivel alto, manteniendo el mismo perodo
(normalmente), con el objetivo de modificar la posicin del servo segn se desee.
Para la generacin de una onda PWM en un microcontrolador, lo ms habitual es usar un timer
y un comparador (interrupciones asociadas), de modo que el microcontrolador quede libre para
realizar otras tareas, y la generacin de la seal sea automtica y ms efectiva. El mecanismo
consiste en programar el timer con el ancho del pulso (el perodo de la seal) y al comparador
con el valor de duracin del pulso a nivel alto. Cuando se produce una interrupcin de overflow
del timer, la subrutina de interrupcin debe poner la seal PWM a nivel alto y cuando se
produzca la interrupcin del comparador, sta debe poner la seal PWM a nivel bajo. En la
actualidad, muchos microcontroladores, como el 68HC08, disponen de hardware especfico
para realizar esta tarea, eso s, consumiendo los recursos antes mencionados (timer y
comparador).
PWM PARA RECORRER TODO EL RANGO DE OPERACIN DEL SERVO
El sistema de control de un servo se limita a indicar en que posicin se debe situar. Esto se
lleva a cabo mediante una serie de pulsos tal que la duracin del pulso indica el ngulo de giro
del motor. Cada servo tiene sus mrgenes de operacin, que se corresponden con el ancho del
pulso mximo y mnimo que el servo entiende. Los valores ms generales se corresponden con
pulsos de entre 1 ms y 2 ms de anchura, que dejaran al motor en ambos extremos (0 y 180).
El valor 1.5 ms indicara la posicin central o neutra (90), mientras que otros valores del pulso
lo dejan en posiciones intermedias. Estos valores suelen ser los recomendados, sin embargo,
es posible emplear pulsos menores de 1 ms o mayores de 2 ms, pudindose conseguir ngulos
mayores de 180. Si se sobrepasan los lmites de movimiento del servo, ste comenzar a

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



67
emitir un zumbido, indicando que se debe cambiar la longitud del pulso. El factor limitante es el
tope del potencimetro y los lmites mecnicos constructivos.
El perodo entre pulso y pulso (tiempo de OFF) no es crtico, e incluso puede ser distinto entre
uno y otro pulso. Se suelen emplear valores ~ 20 ms (entre 10 ms y 30 ms). Si el intervalo entre
pulso y pulso es inferior al mnimo, puede interferir con la temporizacin interna del servo,
causando un zumbido, y la vibracin del eje de salida. Si es mayor que el mximo, entonces el
servo pasar a estado dormido entre pulsos. Esto provoca que se mueva con intervalos
pequeos.
Es importante destacar que para que un servo se mantenga en la misma posicin durante un
cierto tiempo, es necesario enviarle continuamente el pulso correspondiente. De este modo, si
existe alguna fuerza que le obligue a abandonar esta posicin, intentar resistirse. Si se deja de
enviar pulsos (o el intervalo entre pulsos es mayor que el mximo) entonces el servo perder
fuerza y dejar de intentar mantener su posicin, de modo que cualquier fuerza externa podra
desplazarlo.
SEAL BASICA PWM
Para una onda cuadrada, la seal se enciende y apaga a intervalos regulares. Cuando usted
mira a una onda cuadrada, se ve que la seal es alta para la misma cantidad de tiempo que es
baja. Para una onda cuadrada, la longitud del pulso es la mitad de la longitud de un ciclo, por lo
que tiene un ciclo de trabajo del 50%. Una seal PWM simplemente ajusta el ciclo de servicio
mientras se mantiene la misma frecuencia de pulsos. Creamos una seal PWM utilizando dos
interrupciones en un temporizador.
Si es necesario, podemos usar la misma interrupcin y ajustar cuando la interrupcin se
produce en el software, pero los mdulos del temporizador en el MSP430 tienen por lo menos
dos interrupciones que podemos utilizar.Una interrupcin se establecer la frecuencia global de
nuestra seal, mientras que el otro ser establecer el ciclo de trabajo. [21]
Para la construccin de la plataforma se empleo seis servos VTS-05A.



DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



68
CODIGO PARA GENERAR LAS 6 SALIDAS PWM PARA MOVER LA PLATAFORMA:
#include "msp430g2553.h"
#define MCU_CLOCK 1100000
#define PWM_FRECUENCY 50
unsigned int PWM_Period = 20000; // Periodo PWM
unsigned int PWM_Duty = 0;

void main (void){
WDTCTL = WDTPW + WDTHOLD; // Apagar Wachdog
TA0CCTL1 = OUTMOD_7;
TA1CCTL1 = OUTMOD_7;
TA1CCTL2 = OUTMOD_7; // TACCR1 reset/set
TA0CTL = TASSEL_2 + MC_1;
TA1CTL = TASSEL_2 + MC_1; // SMCLK, modo arriba
TA1CTL = TASSEL_2 + MC_1;
TA0CCR0 = PWM_Period-1; // TA0CCR0 PWM periodo
TA1CCR0 = PWM_Period-1; // TA1CCR0 PWM periodo
TA1CCR0 = PWM_Period-1; // TA1CCR0 PWM periodo
TA0CCR1 = PWM_Duty; // TA0CCR1 PWM ciclo de Trabajo
TA1CCR1 = PWM_Duty; // TA1CCR1 PWM ciclo de
TA1CCR2 = PWM_Duty; // TA1CCR1 PWM ciclo de trabajo
P1DIR |= BIT2 + BIT6; // P1.2 y P1.6 = salida Puerto 1
P1SEL |= BIT2 + BIT6; // P1.2 y P1.6 = TA0 para salida del Timer PWM
P2DIR |= BIT1 + BIT2; // P2.1 y P2.2 = salida Puerto 2
P2SEL |= BIT1 + BIT2; // P2.1 y P2.2 = TA1 para salida del Timer PWM
P2DIR |= BIT4 + BIT5; // P2.4 y P2.5 = salida Puerto 2
P2SEL |= BIT4 + BIT5; // P2.4 y P2.5 = TA1 para salida del Timer PWM

while(1){

TA0CCR1 = 540; // Te lleva a 0
o

TA1CCR1 = 1370; // Te lleva a 90
o

TA1CCR2 = 2300; // Te lleva a 180
o

__delay_cycles(1000000); // Retraso de un milln de microsegundos


TA0CCR1 = 960;
TA1CCR1 = 955;
TA1CCR2 = 2207;
__delay_cycles(1000000);

TA0CCR1 = 1380;
TA1CCR1 = 1785;
TA1CCR2 = 2114;
__delay_cycles(1000000);


TA0CCR1 = 1800;
TA1CCR1 = 2300;
TA1CCR2 = 2021;
__delay_cycles(1000000);


DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



69
TA0CCR1 = 2300;
TA1CCR1 = 679;
TA1CCR2 = 1928;
__delay_cycles(1000000);

TA0CCR1 = 2025;
TA1CCR1 = 818;
TA1CCR2 = 2150;
__delay_cycles(1000000);

TA0CCR1 = 750;
TA1CCR1 = 957;
TA1CCR2 = 1835;
__delay_cycles(1000000);

TA0CCR1 = 2090;
TA1CCR1 = 1096;
TA1CCR2 = 1742;
__delay_cycles(1000000);

TA0CCR1 = 1370;
TA1CCR1 = 1235;
TA1CCR2 = 1649;
__delay_cycles(1000000);

TA0CCR1 = 2300;
TA1CCR1 = 1374;
TA1CCR2 = 1556;
__delay_cycles(1000000);

TA0CCR1 = 540;
TA1CCR1 = 1525;
TA1CCR2 = 1463;
__delay_cycles(1000000);

TA0CCR1 = 784;
TA1CCR1 = 1680;
TA1CCR2 = 1370;
__delay_cycles(1000000);

TA0CCR1 = 1028;
TA1CCR1 = 1835;
TA1CCR2 = 1185;
__delay_cycles(1000000);

TA0CCR1 = 1990;
TA1CCR1 = 1900;
TA1CCR2 = 1000;
__delay_cycles(1000000);

TA0CCR1 = 1680;
TA1CCR1 = 2145;

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



70
TA1CCR2 = 815;
__delay_cycles(1000000);

TA0CCR1 = 1370;
TA1CCR1 = 2300;
TA1CCR2 = 1232;
__delay_cycles(1000000);

TA0CCR1 = 1060;
TA1CCR1 = 1990;
TA1CCR2 = 630;
__delay_cycles(1000000);

TA0CCR1 = 2300;
TA1CCR1 = 540;
TA1CCR2 = 1370;
__delay_cycles(1000000);

TA0CCR1 = 1370;
TA1CCR1 = 2300;
TA1CCR2 = 630;
__delay_cycles(1000000);

TA0CCR1 = 2300;
TA1CCR1 = 2300;
TA1CCR2 = 2300;
__delay_cycles(1500000);

TA0CCR1 = 540;
TA1CCR1 = 540;
TA1CCR2 = 540;
__delay_cycles(2375000);

TA0CCR1 = 1370;
TA1CCR1 = 1370;
TA1CCR2 = 1370;
__delay_cycles(3000000);
}}



















DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN UN
MICROCONTROLADOR DE ULTRA-BAJO CONSUMO DE ENERGA

CAPTULO
5
DESARROLLO DE PROYECTO Y
PRUEBAS

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



71
CAPITULO 5
5.1 METODOS PARA ANALISIS Y DISEO DE CONTROL
Existen 2 mtodos para el anlisis y diseo de sistemas de control, el primero se conoce como
tcnica clsica, o tcnica en el dominio de frecuencia. Este mtodo se basa en la
conversin de la ecuacin diferencial de un sistema en una funcin de transferencia, generando
asi un modelo matematico del sistema que algebraicamente relaciona una representacin de la
salida con una representacin de la entrada. La sustitucin de una ecuacin diferencal con una
ecuacin algebraica no solo simplifica el modelado de subsistemas individuales, si no tambin
simplifica el modelado de subsistemas interconectados.
La desventaja bsica del mtodo clsico es su limitada aplicabilidad: se puede aplicar solo a
sistemas lineales, invariantes con el tiempo o a un sistema que se puedan aproximar como
tales.
Una ventaja importante de las tcnicas en el dominio de la frecuencia es que rpidamente dan
informacin de la estabilidad y la respuesta transitoria. Asi de inmediato podemos ver el efecto
de variar los parmetros de un sistema hasta conseguir un diseo aceptable.
Con la llegada de la exploracin espacial, los requerimientos de los sistemas de control
aumentaron en alcance. El modelado de sistemas mediante el uso de ecuaciones diferenciales
lineales, invariantes con el tiempo, asi como las funciones de transferencia subsiguintes se hizo
inadecuado. El mtodo en el espacio de estados (tambin conocido como mtodo moderno
o en el dominio de tiempo) es un mtodo unificado para modelar, analizar y disear una
amplia variedad de sistemas. Por ejemplo, se puede usar el mtodo en el espacio de estados
para reresentar sistemas no lineales, pueden manejarse comodamente sistemas con
condiciones iniciales diferentes de cero. Los sistemas variantes con el tiempo (por ejemplo los
proyectiles con variantes niveles de combustible; el ascenso de un avin que vuela a diferentes
altitudes) pueden ser representados en el espacio de estados. Numerosos sistemas no tienen
solo una entrada y una salida. Los sistemas de mutiples entradas y salidas (por ejemplo, un
vehiculo con direccin de entrada y velocidad de entrada que produzca una direccin de salida
y una velocidad de salida) pueden ser representadas de manera compacta en el espacio de
estados con un modelo semejante en forma y complejidad al empleado para los sistemas de
una sola entrada y un sola salida.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



72
Un sistema lineal posee dos propiedades: superposicin y homogeneidad. La propiedad de
superposicin significa que la respuesta de salida a la suma de entradas es la suma de las
respuestas de las entrada individuales. Asi, si una entrada de r1(t) produce una salida de c1(t) y
una entrada de r2(t) produce una salida c2(t) entonces una entrada de r1(t)+ r2(t) produce una
salida de c1(t)+ c2(t). La propiedad de homogeniedad describe la respuesta del sistema a la
multiplicacin de la entrada por un escalar. Especificamente, en un sistema lineal, la propiedad
de homogeniedad esta demostrada si para un entrada de r1(t) que produce una salida c1(t), una
entrada de Ar1(t) produce una salida de Ac1(t); esto es, la multiplicacin de una entrada por un
escalar, produce una respuesta que se multiplica por el mismo escalar.
Si los sistemas fueran no linealies antes de hallar su funcin de tranferencia primero debemos
linealizarlo.
El primer paso es reconocer el componente no lineal y escribir la ecuacin diferencial no lineal.
Cuando hacemos lineal una ecuacin dferencial no lineal, lo hacemos para entrada pequea
seal alrededor de la solucin en estado estable cuando la entrada es pequea seal es igual
a cero. Esta solucin en estado estable se llama equilibrio y esta seleccionada como segundo
escaln en el proceso de linealizacin, a continuacin hacemos lineal la ecuacin diferencial no
lineal y luego tomamos la transformada de Laplace de la ecuacin diferencial linealizada,
suponiendo condiciones iniciales de cero. Por ultimo separamos las variables de entrada y
salida, y formamos la funcin de transferencia.
Una ventaja que presentan la representacin en el espacio de estados sobre la representacin
de la funcin de transferencia es la capacidad para representar sistemas que tengan no
linealidades. La capacidad para representar sistemas no lineales no implica la capacidad de
resolver sus ecuaciones de estado para las variantes de estado y la salida. [15]
Para nuestro caso podemos ejemplicamos el control del ngulo de alabeo de un avin, se
obtinen por el uso de torque desarrollado por los alerones. Un modelo lineal del sistema de
control para un pequeo vehiculo experimental se muestra a continuacin:

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



73

Donde q(t) es el flujo del fluido en un cilindro hidrulico y el objetivo es mantener un pequeo
ngulo de alabeo debido a las perturbaciones. Seleccionar una ganancia apropiada que
reducira el efecto de la perturbacin mientras se alcanza una respuesta transitoria deseable
KK1<35 G(s) esta dada por:
9 4
1
) (
2
+ +
=
s s
s G
5.2 CONTROL DE POSICIN DE UN AEROPLANO
Cada vez que volamos en un avin comercial, experimentamos de primera mano los beneficios
de los sistemas de control automtico. Estos sistemas ayudan a los pilotos por la mejora de la
manipulacin de las cualidades de la aeronave a travs de una amplia gama de condiciones de
vuelo y proporcionando al piloto alivio (para emergencias tales como ir al bao) durante los
vuelos largos. La relacin especial entre vuelo y los controles se inici en los primeros trabajos
de la Hermanos Wright. Usando tneles de viento, los hermanos Wright aplicaron tcnicas
sistematicas de diseo para hacer su sueo de vuelo con motor en una realidad. Este enfoque
sistemtico de diseo contribuyo a su xito.
Otro aspecto importante de su enfoque era su nfasis en controles de vuelo, los hermanos
insistieron en que la aeronave fuera piloto controlado. Observando el control de las aves su
movimiento de rotacin al girar sus alas, los hermanos Wright construyeron una aeronave con
mecanismos mecanicos que retorcan sus alas del avion. Hoy en da ya no usamos deformacin
del ala como un mecanismo para realizar una maniobra de giro; en cambio, el control de
movimiento rodando con alerones, como se muestra a continuacin:

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



74

Fig. 5.1 El control del ngulo de balanceo de un avin con deflexiones diferencial de los
alerones.
Los hermanos Wright tambin usaron elevadores (ubicados hacia adelante) para el control
longitudinal (movimiento de cabeceo) y timones de control lateral (movimiento de guiada).
Aviones de hoy siguen utilizando los dos elevadores y timones, a pesar de los elevadores se
encuentran generalmente en la cola (hacia atrs). Se produjo el primer vuelo controlado
alimentado sin ayuda, en 1903 con el Wright Flyer I (alias Kitty Hawk). El primer avin prctico,
el Flyer III, poda volar ochos y permanecer en el aire durante media hora. Control de vuelo de
tres ejes fue un mayor contribucin de los hermanos Wright. Una historia concis en el punto de
vista se presenta en Stevens y Lewis [27]. El deseo de seguir volando ms rpido, ms ligero y
ms foment la evolucin en el control de vuelo automtico.
El desafo de hoy es desarrollar una sola etapa a la rbita de las aeronaves / naves espaciales
que puede despegar y aterrizar en una pista estndar. El tema principal es el control del
movimiento de rotacin automtica de un avin.
Comenzamos considerando el modelo de la dinmica lateral de un avin en movimiento a lo
largo de una trayectoria de vuelo constante alas niveladas. Por dinmica lateral, nos referimos
al movimiento actitud de la aeronave sobre la velocidad de avance. Un modelo matemtico
preciso describe el movimiento (traslacin y rotacin) de una aeronave es un conjunto
complicado de ecuaciones diferenciales no lineales, vaiables en el tiempo. Para nuestros
propsitos, se requiere un modelo dinmico simplificado para el proceso de diseo piloto
automtico. Un modelo simplificado puede consistir en una funcin de transferencia que
describe la relacin entrada / salida entre la deflexin del alern y el angulo de alabeo del avin.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



75
La obtencin de dicha funcin de transferencia requerira muchas simplificaciones prudentes a
la alta fidelidad original, modelo matemtico no lineal.
Supongamos que tenemos una aeronave rgida con un plano de simetra. Se supone que el
avin que circula a Mach (<3) velocidades subsnicas o supersnicas baja. Esto permite que
hagamos una aproximacin de la tierra plana. Ignoramos los efectos giroscpicos del rotor
debido a hilado de masas en la aeronave (por ejemplo, hlices o turbinas). Estos supuestos nos
permiten desacoplar el movimiento longitudinal de rotacin (pitching) del lateral movimiento de
rotacin (balanceo y guiada). Por supuesto, tambin tenemos que considerar una linealizacin
de las ecuaciones no lineales de movimiento. Para lograr esto, se consideran slo las
condiciones de vuelo en estado estacionario.
Para este ejemplo se supone que el avin est volando a baja velocidad en una constante,
actitud alas niveladas, y queremos disear un piloto automtico para controlar el movimiento de
alabeo.
Podemos declarar el objetivo de control de la siguiente manera:
Objetivo de control: Regular el ngulo de alabeo a cero grados y mantener la orientacin a
vuelo recto y nivelado en presencia de una perturbacin externa impresindible. Identificando la
variable a controlar como la variable que se desea controlar ngulo de alabeo del avin
(denotado por ).
El objetivo es disear un sistema de control de tal manera que los polos del sistema en lazo
cerrado dominantes tengan satisfactoria frecuencia propia.
Por ejemplo podramos disear un sistema de control del piloto automtico de un avin en vuelo
recto y nivelado para conseguir un exceso del 20% a una entrada escaln con un mnimo de
movimiento oscilatorio y tiempo de respuesta rpido (es decir, un corto perodo de tiempo a
pico). Despus implementamos el controlador en el sistema de control de la aeronave y
realizamos pruebas o simulaciones del comportamiento de la aeronave con ordenadores de alta
fidelidad, despus de lo cual los pilotos nos dicen si le gusta el rendimiento de la aeronave. Si el
rendimiento general no es satisfactoria, cambiamos la especificacin de dominio de tiempo (en
este caso, una especificacin de rebasamiento por ciento) y redisear hasta lograr una
sensacin y rendimiento que los pilotos aceptaran (y en ltima instancia, pasajeros). A pesar de

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



76
la simplicidad de este enfoque y de muchos aos investigacin, las especificaciones de diseo
de sistemas precisos de control que proporcionan las caractersticas aceptables de vuelo en
todos los casos aun no estn disponibles [27].
Las especificaciones de diseo de control que figuran en este ejemplo puede parecer un tanto
artificial. En realidad, las especificaciones seran mucho ms implicados y, en muchos formas,
conocidas con menor precisin.
Especificaciones para el diseo de control
- Especificacin de diseo1 Porcentaje de sobrecarga de menos de 20% para una entrada
escaln unitario.
- Especificacin de diseo 2 Rpido tiempo de respuesta, medido por el tiempo a pico.
Al hacer los supuestos simplificadores descritos anteriormente y linealizar alrededor de la
condicin de vuelo recto y nivelado, podemos obtener un modelo de funcin de transferencia
que describa el ngulo de salida de alabeo, (s), para la entrada de defleccin del alern, n(s).
La funcin de transferencia tiene la forma:
(1)
El movimiento lateral (alabeo / guiada) tiene tres modos: modo balanceo holands (Dutch roll),
divergencia en espiral, y divergencia direccional.
El modo balanceo holandes, que recibe su nombre de sus similitudes con el movimiento de un
patinador de velocidad de hielo, se caracteriza por un movimiento de alabeo/guiada. El centro
de masa del avin sigue una trayectoria casi recta, y un impulso del timn puede excitar este
modo. La divergencia en espiral se caracteriza por un movimiento de guiada principalmente.
Este es un modo dbil, pero puede causar a un avin entrar en picada en espiral. La
divergencia direccional este modo es casi un moviiento puro de alabeo. Este es el movimiento
que nos interesa para nuestro diseo de piloto automtico. El denominador de la funcin de

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



77
transferencia en la ecuacin de arriba muestra dos modos de primer orden (modos hundimiento
en espiral y balanceo) y un modo de segundo orden (modo de balanceo holands).
En general los coeficientes c0, b0, b1, d0, e0, f0, f1 y la ganancia k son funciones complicadas de
derivadas de estabilidad. Los derivados de la estabilidad son funciones decondiciones de vuelo
y la configuracin de la aeronave, sino que son diferentes para los diferentes tipos de eronaves.
El acoplamiento entre el balanceo y guiada est incluido en la ecuacin ya antes
mencionada.En la ecuacin de funcin de transferencia de la ecuacin, el polo en s = -d0 se
asocia con el modo de espiral. El polo en s =-e0 se asocia con el modo de divergencia.
Generalmente, e0 >> d0. Para un F-16 volando a 500 pies / s en vuelo recto y nivelado tenemos
e0 = 3,57 y d0 = 0.0128 [27]. Los polos complejos conjugados dados por el termino s
2
+f1s + f0
representa el movimiento de balanceo holands.
Para pequeos ngulos de ataque (como con el vuelo recto y nivelado), el modo balanceo
holands generalmente anula la funcin de transferencia con el terminos2 + b1s + b0. Esta es
una aproximacin, pero es consistente con las otras hiptesis simplificadoras. Adems,
podemos ignorar el modo de espiral, ya que es esencialmente un movimiento de guiada
dbilmente acoplado para el movimiento de alabeo. El cero en s = c0 representa un efecto de la
gravedad que hace que la aeronave se deslice lateral a medida que mueva.
Se supone que este efecto es insignificante, ya que es ms pronunciado en una maniobra de
giro lento en la que se permite el deslizamiento incrementado, y asumimos que el deslizamiento
lateral de la aeronave es pequea o cero. Por lo tanto, podemos simplificar la ecuacin de la
funcin de transferencia para obtener un solo grado de libertad de aproximacin:
(2)
Para nuestros aviones seleccionamos e0 = 1,4 y k = 11,4. El asociado constante de tiempo de la
divergencia direccional es = 1/e0 = 0,7 s. Estos valores representan un movimiento de
respuesta de balanceo bastante rpido.
Para el modelo de actuador del alern, por lo general utilizamos un sencillo sistema de primer
orden:

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



78
(3)
Donde, e(s) = d (s) - (s) En este caso seleccionamos p = 10. Esto corresponde a un tiempo
constante = 1/p = 0,1 s. Este es un valor tpico consistente con una respuesta rpida.
Necesitamos tener un actuador con una respuesta rpida para que la dinmica del avin
controlado sea el elemento dominante de la respuesta del sistema. Un actuador lento es similar
a un retardo de tiempo que puede causar problemas de rendimiento y estabilidad.
Para una simulacin de alta fidelidad, tendramos que desarrollar un modelo exacto de la
dinmica de giro. El giro , tpicamente un giro integracin, se caracteriza generalmente por una
respuesta rpida. Para mantener la coherencia con el resto de los supuestos simplificadores,
ignoramos la dinmica de giro en el proceso de diseo. Esto significa que suponemos que mide
el sensor el ngulo de alabeo con precisin. El modelo de giro se obtine por una funcin de
transferencia de una unidad:
(4)
Por lo tanto nuestro modelo de sistema fsico est dado por las ecuaciones (2), (3) y (4). El
controlador seleccionamos para este diseo es un controlador proporcional,

la configuracin del sistema se muestra en la siguiente figura. El parmetro clave de seleccin
es el siguiente:



DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



79
La funcin de transferencia en bucle cerrado es:
K s s s
K
s
s
s T
d
114 14 4 . 11
114
) (
) (
) (
2 3
+ + +
= =
|
|
(5)
Queremos determinar analticamente los valores de K que nos darn la respuesta deseada, es
decir, un porcentaje de overshoot de menos de 20% y un tiempo a pico rpido. A travs del
software de matlab vemos el comportamiento de la respuesta del sistema de tercer orden, al
variar el paramentro de K asignndole valores de 0.10, 0.16 y 0.20.
Se observ que a medida que disminuye K, aumenta el factor de amortiguamiento, lo que lleva
a una reduccin en el porcentaje de sobrecarga.
El anlisis analtico sera ms fcil si nuestro sistema de circuito cerrado fuera un sistema de
segundo orden (ya que tenemos relaciones de valor entre el tiempo de establecimiento,
porcentaje de sobrecarga, la frecuencia natural y el factor de amortiguamiento), sin embargo,
tenemos un sistema de tercer orden, dada por T(s) en la ecuacin (5). Podramos considerar la
aproximacin de la funcin de transferencia de tercer orden mediante una funcin de
transferencia de segundo orden a veces esto es un muy buen enfoque de ingeniera para el
anlisis. Hay muchos mtodos disponibles para obtener las funciones de transferencia
aproximados. Aqu se utiliza el mtodo algebraico que intenta hacer coincidir la respuesta de
frecuencia del sistema que se aproxime lo ms posible al sistema real.







DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES, PARA SIMULAR EL
COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE LIBERTAD"
















Fig. 5.2 Respuesta Escaln de un modelo de avin de tercer orden con K=0.10; 0.16 y 0.20.


DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



81
5.3 LA SIMPLIFICACIN DE LOS SISTEMAS LINEALES
Es muy til para estudiar sistemas complejos con funciones de transferencia de orden superior
mediante el uso de modelos aproximados de orden inferior. Por ejemplo, un sistema de cuarto
orden podra ser aproximado por un sistema de segundo. Varios mtodos estn disponibles
para la reduccin del orden de una funcin de transferencia de los sistemas.
Una forma relativamente sencilla de eliminar un cierto polo insignificante de una funcin de
transferencia es observar un polo que tiene una parte real negativa, que es mucho ms
negativa que los otros polos. Por lo tanto, se espera que el polo insignificante afecte a la
respuesta transitoria.
Por ejemplo, si tenemos un sistema con funcin de transferencia:
K s s s
K
s
s
s T
d
114 14 4 . 11
114
) (
) (
) (
2 3
+ + +
= =
|
|

se puede prescindir con seguridad el impacto del polo en s = -114. Sin embargo, debemos
mantener la respuesta en estado estacionario del sistema, por lo que reducir el sistema a:
3 2
114
1
114
4 . 11
114
14
1
1
) (
s
K
s
K
s
K
s T
+ + +
=
Un enfoque ms sofisticado de aproximacin para que coincida con la respuesta de frecuencia
de la funcin de transferencia de orden reducido con la respuesta de frecuencia de la funcin de
transferencia original tanto como sea posible, el mtodo de aproximacin asociado se basa
estrictamente en la manipulacin algebraica y se presenta aqu. Vamos a dejar que el sistema
de orden superior se describe por la funcin de transferencia:

en el que los polos estn en la izquierda del plano s y m n.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



82

La funcin de transferencia aproximada de orden inferior es donde p g < n. Observe que la
ganancia constante, K, es la misma para el sistema original y aproximada, lo que garantiza la
misma respuesta de estado estacionario. El mtodo descrito se basa en la seleccin de ci y di,
de tal manera que GL (s) tiene una respuesta de frecuencia muy cerca de la de GH(s). Esto es
equivalente a indicar que se requiere GH (jw) / GL(jw) para desviar la menor cantidad de la
unidad para varias frecuencias. Los coeficientes c y d se obtienen mediante el uso de las
ecuaciones:


Donde M(s) y ) (s A son el numerador y denominador de GH (jw) / GL (jw) respectivamente.
Definos tambin:
(6)
(7)
y una ecuacin anloga para
q 2
A las soluciones de los coeficientes para la c y d son obtenidos
por la ecuacin:
q q
M
2 2
A = (8)

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



83
para q = 1,2, ... hasta el nmero requerido para solucionar para los coeficientes
desconocidos.Supongamos que nuestra funcin de transferencia aproximada es dada, por el
sistema de segundo orden:
s d s d
s G
L
2 1
1
1
) (
+ +
=
El objetivo es encontrar los valores adecuados de d1 y d2 nosostros definimos ) ( ) ( s y s M A cmo
el numerador y denominador de T(s)/GL(s) definimos:


Entonces, formando el conjunto de ecuaciones algebraicas:
,...., 2 , 1 ,
2 2
= A = q M
q q

podemos despejar los parmetros desconocidos de la funcin aproximada. El ndice q se
incrementa hasta que se obtienen suficientes para resolver ecuaciones para los coeficientes
desconocidos de la funcin aproximada. En este caso, q = 1,2, ya que tiene dos parmetros d1 y
d2 para calcular:
Tenemos que:
( )
0 ...... ) ( ) (
2 ) (
2 ) (
1 ) (
4 ) 3 (
2
2
2
) 2 (
1
1
2 1
= = =
= =
+ = =
+ + =
s M s M
d
ds
M d
s M
s d
ds
dM
s M
s d s d s M
s

Evaluando de esta manera los rendimientos en s=0

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



84
0 ... ) 0 ( ) 0 (
2 ) 0 (
) 0 (
) 4 ( ) 3 (
) 2 (
1
) 1 (
= = =
=
=
M M
d M
d M

Similarmente,
K ds
d
s
s
K K ds
d
s
s
K
s
K K ds
d
s
K
s
s
K
s
K
s
114
6
) (
114
6
114
8 . 22
) (
114
3
114
8 . 22
114
14
) (
114 114
4 . 11
114
14
1 ) (
3
3
) 3 (
2
2
) 2 (
2 ) 1 (
3
2
=
A
= A
+ =
A
= A
+ + =
A
= A
+ + + = A

Evaluando en s=0:
0 ... ) 0 ( ) 0 (
,
114
6
) 0 (
,
114
8 . 22
) 0 (
,
114
14
) 0 (
) 5 ( ) 4 (
) 3 (
) 2 (
) 1 (
= = A = A
= A
= A
= A
K
K
K

Empleando la ecuacin (6) para q=1 y q=2 reendimientos:
( ) ( )
2
1 2
2 1 ) 1 ( ) 2 (
2
2
2
) 0 ( ) 0 (
1
) 0 (
2
) 0 ( ) 0 (
d d
M M M M M M
M + = + =
Y
2
2
) 4 ( ) 1 ( ) 3 ( ) 2 ( ) 2 ( ) 3 ( ) 1 ( ) 4 (
4
! 0 ! 4
) 0 ( ) 0 (
! 1 ! 3
) 0 ( ) 0 (
! 2 ! 2
) 0 ( ) 0 (
! 3 ! 1
) 0 ( ) 0 (
! 4 ! 0
) 0 ( ) 0 (
d
M M M M M M M M M M
M = + + =

Utilizando la ecuacin (7), encontramos que:

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



85
2
2
) 114 (
196
114
8 . 22
K K
+

= A y
2
4
) 114 (
96 . 101
K
= A

Formando el conjunto de ecuaciones algebraicasen la ecuacin (8),
2 2
A = M y
4 4
A = M
Obtenemos:
2
2
1 2
) 114 (
196
114
8 . 22
2
K K
d d +

= + y
2
2
2
) 114 (
96 . 101
K
d =
Resolviendo
1
d y
2
d
K
K
d
114
96 . 296 196
1

=
K
d
114
097 . 10
2
=

Donde elegimos siempre el valor positivo de
1
d y
2
d , entonces GL (s) tiene polos en el
semiplano izquierdo Por lo tanto (despus de algunas manipulaciones) la funcin de
transferencia es aproximada:

K Ks s
K
s G
L
29 . 11 91 . 2 92 . 1
29 , 11
) (
2
+ +
= (9)

Requerimos que K <0,65 para que el coeficiente del trmino s sigue siendo un nmero real.





Fig. 5.3 Respuesta Escaln, comparacin de un modelo de avin de tercer orden vs. la aproximacin de segundo orden.


DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



87
El sistema de aproximacin de segundo orden nos ha permitido profundizar acerca de la
relacin entre el parmetro K y la respuesta del sistema, midiendo el porcentaje de exceso y el
tiempo pico. Por supuesto, la ganancia K=0.16 es solo un punto de partida en el diseo porque
nosotros en realidad tenemos un sistema de tercer rden, y hay que tomar en cuenta el efecto
del tercer polo (que hemos ignorado hasta ahora). La respuesta escaln del sistema de
segundo orden es una buena aproximacin de la respuesta escaln del sistema original. [22]

Nuestra funcin de transferencia de segundo orden deseado puede ser escrito como:

n
n
n
L
s s
s G
2 2
2
2
) (
e ,e
e
+ +
= (10)

Comparando coeficientes en ecuaciones (9) y (10):
K
n
29 . 11
2
= e y . 065 . 0
043 . 0
2
=
K
, (11)
La especificacin del diseo que el porcentaje de overshoot P.O ser menor que 20% impica
que nosotros queremos 0.45. Asi se desprende la solucin de la ecuacin

2
1
100 . .
, t,
= e O P

Para =0.45 en la ecuacin (11) y resolviendo K:
K=0.16
Con K=0.16 calculamos:
K
n
29 . 11 = e =1.34
Posteriormente estimamos el tiempo pico TP :
s T
n
P
62 . 2
1
2
=

=
, e
t






DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



88
CONCLUSIONES

Se llev a cabo la construccin de una Plataforma a nivel de Hardware y Software, as como a
nivel de estrutura con 6 servos con el fin de que los alumnos aprecien los movimientos que una
aeronave en forma cualitativa.

El aporte que se hace es generar, implementar el cdigo para generar el PWM en el c, y por
medio de cambio de valores en el software el alumno manipule a posicin de la Plataforma;
esto puede ayudarles a desarrollar el diseo de control de una aeronave.

La plataforma al igual que la aeronave implica un trabajo multidisciplinario, son varios sistemas,
(alimentacin de voltaje CD, servos, estructura/Plataforma, cableado, interfase (Launchpad)),
los cuales se componen de subsistemas. Los subsistemas deben de estar en sincrona para
poder generar una respuesta deseada del sistema, si algn subsistema falla por consiguiente el
sistema fallar.

El aspecto importante aqu es el diseo de fabricacin e implementacin de la plataforma desde
el punto de visto elctrico-electrnico que sirve como una plataforma o sistema de
experimentacin en la materia de control en la carrera de Ingeniera Aeronutica. Ya que en los
textos de control se presentan teoras, solo hace falta demostrarlo fsicamente.

Se comprob experimentalmnete la respuesta en frecuencia de la Plataforma aplicando un tren
de pulsos de 50Hz y con D.C. que variaban del 6% al 14%. Por software se vari los retardos
para pasar del 6% al 14%, primero con 2 segundos, 1 segundo hasta llegar a1 milisegundo.

Se investig varias empresas dedicadas al diseo de plataformas para el apendizaje a nivel
licenciatura, para que la escuela tenga diversas opciones de ensear a sus alumnos las
conocimientos bases que se deben de tener en la asignatura de Sistemas de Control en
Aeronaves a travs hardware y software. Una de esas empresas es Quanser Lab Workstation
Support from Simulink, que ofrece equipo el cul ayudar a los alumnos a desarrollar las
habilidades necesarias para su desenvolvimiento laboral, adems de ser de utilidad para
desarrollo de trabajos de posgrado.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



89
Otra opcin que tambin tiene la escuela es el desarrollo de una Plartaforma a travs de
microcontroladores, la cual puede ayudar a la enseanza de los alumnos de octavo semestre
en la materia de Sistemas de Control en Aeronaves, adems, esto busca alentar a los alumnos
a generar herramientas, para los laboratorios de la escuela, para su propio aprendizaje basado
en proyectos en la academia Elctrico-Electrnica. Este Plataforma posteriormente puede ser
de utilidad para llevar acab futuros proyectos encaminados a Control.

El trabajo a futuro, a llevar a cabo es Implementar sensores tales como acelermetros y
girscopos a la plataforma con el propsito de cuantificar y poder desarrollar estructuras de
control tipo P, PI, PID; as como utilizar software tipo CAE (Computer Aided Engineering) tal
como Matlab/Simmulink para realizar anlisis y diseo de sistemas de control (leyes de
control).

La opcin que ofrece es Quanser Lab Workstation Support from Simulink es de un costo mas
elevado a comparacin que brinda la U.P. Ticomn, ya que costo de una pieza arrebasa los
$75,000.00 pesos, a esto hay que agregarla el costo de una licencia para adquierir su software.
En cambio el costo del desarrollo de lan Plataforma es de menos de $1500.00 pesos, tomando
en cuenta que el software se descarga gratuitamente sin necesidad de pagar una licencia, al
mismo tiempo el alumno aprender a desarrollar sus capacidades y habilidades en la
generacin de proyectos, que ayuden a entender de mejor manera las asignaturas.

Se verific el consumo de energa del c (Launchpad) en trminos del ahorro o duracin de las
bateras de alimentacin del c.Se puede utilizar en aplicaciones de aeromodelos al tener
menos consumo de energa mayor duracin de la misin o autonoma.

Consideramos que los modelos matemticos son aproximaciones, el inters del trabajo no se
centro en el modelo matemtico, pero si en el enfoque cualitativo, sobre el comportamiento de
la plataforma y de ls servos.

La instrumentacin a travs de sensores y la retroalimentacin se deja a trabajo futuro para
personas que leyeron el trabajo y estn interesadas.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



90
Quanser Lab Workstation Support from
Simulink
Plataforma Stewart Desarrollado en
la U.P. Ticomn
- Ensea cuanto reducir las iteraciones y
desarrollar un sistema de control ms
fcil.

- Proporciona componenetes mezclados
que ayudan a crear sistemas para
satisfacer las necesidades en el aula.
Con estas estaciones, se puede
desarrollar la enseanza en clase de
larga duracin, de licenciatura o
realizar investigaciones en curso a
nivel de maestra.

- Llevar a cabo experimentos de control
con sistemas lineales, el movimiento
rotatorio, mecatrnica y robtica para
la aplicacin y evaluacin de
informacin utilizando controladores
PID.

- Tarjetas basadas en PCI o USB-
basado, compatible con MATLAB y
Simulink, para la adquisicin de datos
y la optimizacin del sistema de
control.

- Quanser software QUARC, integrado
con Simulink, para la conectividad en
tiempo real entre los modelos de
Simulink y hardware Quanser.

- Quanser, muestra una variedad de
implementaciones de control como en
tiempo real Con Simulink, se puede
ajustar los parmetros del controlador
y monitorear las seales de la marcha,
directamente desde Simulink. Los
estudiantes adquieren experiencia
prctica, tales como la creacin rpida
de prototipos de control y hardware-in-
the-loop de prueba y simulacin.

- El costo del software para una licencia
es de $ 7,000.00 pesos. Costo del
equipo (QUBE-Servo (USB) - Rotary
- Ensea el posicionamimento de
una aeronave de forma
cualitativa.

- Ayudar a ver el
comportamiento en 3 o 6 grados
de libertad de un objeto.

- Ayudar a la enseanza en
sistemas de lazo abierto en
temas de control.

- A futuro se puede utilizar para
realizar investigaciones de
posgrago empleando otro tipo de
control (P, PI, PID).

- Esta basado en una tarjeta de
Texas Instruments (LaunPad
MSP430).

- Emplea un microcontrolador de
Texas Instruments de 16 bits.

- El alumno adquirir los
conocimientos bases, para poder
emplear en su mayora todos los
perifricos del micro y entender
el funcionamiento de cada uno
de ellos.

- Aprender a manejar el entorno
de desarrollo Code Composer
Studio (CCS) para la
programacin del
microcontrolador.

- El costo de IDE es gratuito
descargado desde el sitio web
de Texas Instrument.

- El costo que llev la plataforma
fue de menos de $1200.00
pesos.


DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



91
Servo Experiment) es de $75,000.00
pesos con impuestos.

- A futuro adquirir otros sistemas con
costos de $75,000 pesos cada uno.




- A futuro, posibilidad de construir
varios, posibilidad de desarrollo e
implementacin de algoritmos de
control.




















DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



92
ANEXOS

TABLA 2. FUNCION DE PINES.




DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



93


DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



94



















DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



95









DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



96





DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



97





DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



98
TIMER_A MODO CONTROL






DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



99


DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



100






DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



101




DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



102














DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



103







DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



104



DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



105
BIBLIOGRAFA

[1] L. du Plessis, "REVIEW OF STEWART PLATFORMS - UPeTD," 1999. [Online]. Available:
http://upetd.up.ac.za/thesis/available/etd-06012009-
145209/unrestricted/01chapter1.pdf.
[2] D. A. Ramirez Rodrguez, "DISEO DE UNA PLATAFORMA ROBTICA PARALELA DE," 2010.
[Online]. Available:
http://www.bdigital.unal.edu.co/3185/1/danielandresramirezrodriguez.2010.pdf.
[3] J. H. Davies, MSP430 Microcontroller Basic, ELSEVIER, 2008.
[4] T. I. "MSP-EXP430G2 LaunchPad Experimenter," julio 2010. [Online]. Available:
http://www.ti.com/tool/MSP-EXP430G2.
[5] T. Instruments, "MSP430x2xx Family User's Guide," Diciembre 2012. [Online]. Available:
http://www.ti.com/lit/ug/slau144j/slau144j.pdf.
[6] D. Olson, "SCIENTIFIC INSTRUMENTS USING THE TI MSP430," 20 July 2010. [Online].
Available: http://mspsci.blogspot.com.ar/2010/07/tutorial-08-beating-heart-bcs-
part-i.html.
[7] D. Olson, "Tutorial 02: The MSP430 Township and Registers," SCIENTIFIC INSTRUMENTS
USING THE TI MSP430, 12 July 2010. [Online]. Available:
http://mspsci.blogspot.com.ar/2010/07/tutorial-02-msp430-township-and.html.
[8] D. Olson, "Tutorial 09: Timers," SCIENTIFIC INSTRUMENTS USING THE TI MSP430, 01 agosto
2010. [Online]. Available: http://mspsci.blogspot.com.ar/2010/08/tutorial-09-
timers.html.
[9] UPIICSA, "QUE ES UN LENGUAJE DE PROGRAMACIN," [Online]. Available:
http://www.sites.upiicsa.ipn.mx/polilibros/portal/Polilibros/P_terminados/Polilibr
oFC/Unidad_III/Unidad%20III_4.htm#IrInicioUnidad.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



106
[10] T. Instruments, "Code Composer Studio (CCStudio) Integrated Development Environment
(IDE) v5," [Online]. Available: http://www.ti.com/tool/ccstudio.
[11] E. Vildsola C., "Actuadores," [Online]. Available:
http://www.aie.cl/files/file/comites/ca/abc/actuadores.pdf.
[12] UTFSM, "SERVOMOTORES," Diciembre 2003. [Online]. Available:
http://www2.elo.utfsm.cl/~mineducagv/docs/ListaDetalladadeModulos/servos.pdf.
[13] Andres, "Servomecanismos," [Online]. Available:
http://www.iearobotics.com/personal/andres/proyectos/pucho/documentacion/ca
pitulo3.pdf.
[14] t. robot, "El servo motor," [Online]. Available:
http://www.todorobot.com.ar/documentos/servomotor.pdf.
[15] N. S. Nise, Sistemas de Control para Ingeniera, California: Compaia Editorial Continental,
2006.
[16] Andrisani, "Simulink Models of the Futaba S148 Servo," [Online]. Available:
https://engineering.purdue.edu/~andrisan/Courses/AAE451%20Fall2000/Servo.ht
ml.
[17] D. J. Dunn, "Instrumentation and Control Tutorial 3 Transfer Function Manipulation,"
[Online]. Available: http://www.freestudy.co.uk/control/t3.pdf.
[18] ITESCAM, "Caractersticas de seales elctricas," 30 05 2008. [Online]. Available:
http://www.itescam.edu.mx/principal/sylabus/fpdb/recursos/r87835.PDF.
[19] R. Estepa, "Transmisin y Digitalizacin," Diciembre 2004. [Online]. Available:
http://trajano.us.es/~rafa/ARSS/apuntes/tema5.pdf.
[20] C. Prez Vega, "Modulacin de Pulsos," Departamento de Ingeniera de Comunicaciones,
[Online]. Available: http://personales.unican.es/perezvr/pdf/CH7ST_Web.pdf.

DESARROLLO DE UNA PLATAFORMA STEWART BASADA EN MICROCONTROLADORES,
PARA SIMULAR EL COMPORTAMIENTO DE UNA AERONAVE EN TRES GRADOS DE
LIBERTAD"



107
[21] D. Olson, "SCIENTIFIC INSTRUMENTS USING THE TI MSP430," 25 Abril 2013. [Online].
Available: http://mspsci.blogspot.com.ar/search?updated-min=2013-01-
01T00:00:00-05:00&updated-max=2014-01-01T00:00:00-05:00&max-results=3.
[22] R. C.Dorf and R. H. Bishop, Modern Control Systems, Pearson International Edition, 2008.

Anda mungkin juga menyukai