Академический Документы
Профессиональный Документы
Культура Документы
Faculdade de Tecnologia
Bacharelado em Engenharia da Computação
JULHO - 2010
UNIVERSIDADE FEDERAL DO AMAZONAS
Faculdade de Tecnologia
Bacharelado em Engenharia da Computação
___________________________________________
Agradecimentos
Agradeço ao prof. Dr.-Ing Vicente Ferreira de Lucena Júnior por acreditar em meu potencial e
pela oportunidade de aprendizado que me proporcionou durante o estágio. Também devo
agradecer ao prof. Dr. João Edgar Chaves Filho por me proporcionar o material necessário para
trabalho disponibilizando o kit utilizado na realização das minhas atividades.
Agradeço a aluna de mestrado Gisele Silva que colaborou tirando dúvidas que surgiam no
decorrer do trabalho bem como disponibilização de documentação e também a aluna Ana
Cristina Franco da Silva que colaborou e me apoiou durante todo o trabalho.
Agradeço a minha família e amigos pelo apoio e conselhos nos momentos mais difíceis, e pelo
apoio que me deram no decorrer de toda graduação proporcionando assim um ambiente perfeito
de estudo e trabalho.
Lista de Figuras
Figura 1 - Pêndulo de Furuta. [1] .................................................................................................... 9
Figura 2 - Pêndulo com carro na base. [2] ...................................................................................... 9
Figura 3 – Placa 6713 DSK. ......................................................................................................... 13
Figura 4 - Interface de escolha de controle, feita em Visual Basic............................................... 14
Figura 5 - Visão geral das peças que compõem o sistema. [3] ..................................................... 18
Figura 6 - Encoder1 e Encoder2. .................................................................................................. 19
Figura 7 – Experimento 1: Controle de um motor DC. ................................................................ 19
Figura 8 - Encoder óptico. ............................................................................................................ 20
Figura 9 - Montagem da haste que formará o pêndulo. ................................................................ 20
Figura 10 - Visão frontal dos cabos. ............................................................................................. 21
Figura 11 - Visão superior dos cabos. ........................................................................................... 21
Figura 12 - Montagem do pêndulo que será fixado no motor....................................................... 22
Figura 13 - Haste de balanço. ....................................................................................................... 22
Figura 14 - Pendubot finalizado. ................................................................................................... 22
Figura 15 - Fixação do fio do encoder. ......................................................................................... 23
Figura 16 - Fixação frontal do fio. ................................................................................................ 23
Figura 17 - Fixação lateral do fio. ................................................................................................. 23
Figura 18 - Fixação do fio não utilizado. ...................................................................................... 23
Figura 19 - Estrutura em "L" para fixação do motor. ................................................................... 23
Figura 20 - Peças para montar estrutura em "L". .......................................................................... 24
Figura 21 - Conexão de alumínio com encoder na extremidade. ................................................. 24
Figura 22 - Pêndulo de Furuta finalizado. .................................................................................... 24
Figura 23 - Fixação traseira dos fios. ............................................................................................ 25
Figura 24 - Fixação lateral dos fios............................................................................................... 25
Figura 25 - Fixação frontal dos fios. ............................................................................................. 25
Figura 26 - Menu principal. .......................................................................................................... 26
Figura 27 - Menu de instalação. .................................................................................................... 26
Figura 28 - Ícone do 6713DSK Diagnostics Utility...................................................................... 27
Figura 29 - Software de diagnóstico. ............................................................................................ 27
Figura 30 - Failed: Waiting for USB Enumeration. ...................................................................... 28
Figura 31 - Modificando o compilador do Matlab........................................................................ 29
Figura 32 - Menu de configuração do Simulink. .......................................................................... 30
Figura 33 - Configuração do Device Type. .................................................................................. 31
Figura 34 - Configuração do Real-Time Workshop. .................................................................... 31
Figura 35 - Re-build do sistema. ................................................................................................... 32
Figura 36 - Ícone para o Code Composer Studio.......................................................................... 33
Figura 37 - Code Composer Studio. ............................................................................................. 33
Figura 38 - Conectando o CCS com o kit. .................................................................................... 34
Figura 39 - CCS conectado com o kit. .......................................................................................... 34
Figura 40 - Realizar teste de memória. ......................................................................................... 35
Figura 41 - Limpeza da memória. ................................................................................................. 35
Figura 42 - Abrindo um projeto. ................................................................................................... 36
Figura 43 - Embarcando um projeto no DSP. ............................................................................... 36
Figura 44 - Loading program. ....................................................................................................... 37
Figura 45 - Iniciando a placa. ....................................................................................................... 37
Figura 46 - Mensagem de erro no LCD. ....................................................................................... 38
Figura 47 - Reiniciando o DSP. .................................................................................................... 38
Figura 48 - Mensagem do LCD para o PenduBot Top. ................................................................ 39
5
Sumário
1. Introdução ............................................................................................................................... 8
2. O que pode ser feito com o kit? ............................................................................................ 11
3. Descrição dos componentes do kit ........................................................................................ 13
3.1 Exemplos de Controladores ................................................................................................ 13
3.1.1 Controlando através do Switch da placa ................................................................. 13
3.1.2 Controlando através de uma interface do Visual Basic (VB) ................................. 14
3.1.3 Controlando através do Simulink no Matlab ........................................................... 15
3.2 Lista de Peças ................................................................................................................. 16
3.2.1 Peças que acompanham o kit .................................................................................. 16
3.2.2 Itens Requeridos...................................................................................................... 17
3.2.3 Itens Recomendados ............................................................................................... 17
4. Montagem do hardware ........................................................................................................ 18
4.1 Experimento 1: Controle do motor DC .......................................................................... 18
4.2 Experimento 2: Pêndulo de Reação ............................................................................... 20
4.3 Experimento 3: Pendubot ............................................................................................... 21
4.4 Experimento 4: Pêndulo de Furuta ................................................................................. 23
5. Instalação dos softwares ....................................................................................................... 25
5.1 Instalação e teste do conteúdo do CD ............................................................................ 26
5.2 Instalação e configuração dos softwares necessários e conexões externas .................... 28
5.2.1 Instalação e configuração ........................................................................................ 28
5.2.2 Configuração de conexão externa ........................................................................... 30
6. Executando os exemplos do kit ............................................................................................. 32
6.1 Comunicação via USB, com inicialização pelo switch da placa.................................... 32
6.1.1 Experimento do Pendubot ....................................................................................... 38
6.1.2 Experimento do Pêndulo de Furuta......................................................................... 40
6.2 Comunicação via USB, com inicialização pela interface do Visual Basic .................... 40
6.2.1 Resultados para Pendubot e Pêndulo de Furuta ...................................................... 42
6.3 Comunicação via porta paralela, com inicialização pelo Matlab/Simulink ................... 42
6.3.1 Experimento do Pendubot ....................................................................................... 44
6.3.2 Experimento do Pêndulo de Furuta......................................................................... 44
Considerações Finais .................................................................................................................... 46
Bibliografia ................................................................................................................................... 47
8
1. Introdução
O que é um pêndulo invertido? Pêndulo invertido é um sistema que tem sua massa acima
do seu ponto de pivô. Um pêndulo normal é estável ao pendurar para baixo, um pêndulo
invertido é inerente instável, e deve ser balançado ativamente a fim de permanecer ereto,
aplicando um torque no ponto de pivô ou movendo o ponto de pivô na horizontal. O pêndulo
invertido é um problema dentro da dinâmica e teoria de controle, onde serve como base para
testes de algoritmos de controle como: controladores PD, PID, redes neurais, algoritmos
genéticos, etc. O que deixa o sistema complexo são as ligações múltiplas, necessitando de forças
de balanceamento para manter todo o sistema em um ponto de equilíbrio. Existem diversos
modelos de pêndulos invertidos (veja dois exemplos nas Figuras 1 e 2), sendo que os mais
utilizados em pesquisa são: o PenduBot, o Pêndulo de Furuta, o Pêndulo de Reação e o Pêndulo
invertido com um carro mantendo o equilíbrio na base.
Figura 1 - Pêndulo de Furuta. [1] Figura 2 - Pêndulo com carro na base. [2]
O kit utilizado no desenvolvimento deste trabalho pode ser utilizado nos mais diversos
níveis de aprendizado. Ele pode ser utilizado como uma ferramenta de demonstração dos
importantes conceitos de dinâmica e controle, domínio da freqüência e espaço de estados,
controle digital, mecatrônica, programação em tempo real, controle linear e não linear, controle
inteligente e robótica. Podendo também ser utilizado em áreas de pesquisa como:
• Controle hibrido;
O kit pode ser utilizado para observar posição e controle de velocidade, compensação de
fricção, controle de balanço, monitoramento e regulação, identificação do problema,
escalonamento dos ganhos e rejeição de distúrbios. Cada problema citado acima pode ser
modificado, pois os códigos de cada planta são fornecidos, então além de observar os resultados
os estudantes podem propor melhorias nos controladores, programá-las e verificar os ganhos
obtidos com as modificações realizadas. Abaixo será mostrada uma descrição dos problemas
propostos e que podem ser utilizados pelos estudantes para desenvolvimento de projetos com
implementação de seus próprios algoritmos.
• Identificação: o primeiro passo no design de um sistema de controle é
desenvolver o modelo matemático do sistema a ser controlado. O kit vem com
quatro sistemas distintos como exemplo: um motor DC com carregamento de
inércia, um pêndulo de reação, um Pendubot e um pêndulo de Furuta. A equação
dinâmica para essas plantas são dadas em termos de certos parâmetros, como a
massa das hastes, momentos de inércia, constantes de torque, etc. Métodos de
identificação podem ser aplicados para determinar os valores numéricos destes
parâmetros para mais tarde usá-los no design do controlador.
• Compensação de fricção: o efeito da fricção das escovas com os rolamentos do
motor geralmente resulta em um comportamento indesejado e é necessário ser
compensado pelo controlador. O controle e modelagem da fricção é interesse de
pesquisas atuais e o kit é um bom meio para verificação experimental dos
resultados teóricos dessa área.
• Controle de posição e velocidade: o kit pode ser configurado para controlar um
motor DC. Controle de posição e velocidade do sistema é naturalmente o primeiro
exercício de laboratório para estudantes iniciantes.
• Balanceamento: um exercício de laboratório mais desafiante é configurar o kit
para o pendulo de reação ou o Pendubot. Estes sistemas podem ser usados para
investigar estabilização e também a configuração de equilíbrio ou a configuração
de pendulo invertido. Há exemplos de controladores desenvolvidos para
balancear os três experimentos de pêndulos invertidos para varias configurações
de equilíbrio. O estudante pode também desenvolver controles adicionais usando
12
outros métodos como controle com lógica Fuzzy, pseudo linearização, controle
robusto, etc.
• Balanço: o problema de encontrar o ponto de equilíbrio do pêndulo de reação, do
Pendubot e do Pêndulo de Furuta é interessante visto a não linearidade e
instabilidade do sistema. Há controladores implementados para resolver este
problema, mas o estudante deve desenvolver os próprios controladores utilizando
algoritmos diferentes como: lógica Fuzzy, métodos de aprendizagem de
máquinas, redes neurais, controladores PID, etc.
• Balanço e balanceamento: embora pareçam iguais estes dois problemas são
distintos, o balanço é a ação de modificar a posição do pêndulo em busca do
ponto de equilíbrio e o balanceamento é a ação de manter o pêndulo no ponto de
equilíbrio, uma vez que ele já foi encontrado. Combinando esses dois problemas
tem-se o cenário ideal para estudar os chamados controles híbridos.
13
Todos os três controladores requerem que as hastes estejam em repouso antes que o
algoritmo seja iniciado. Como foi dito, os códigos para esse exemplo são encontrados no
diretório bootcode. É recomendado que o estudante leia o código fonte e o arquivo readme.txt
para se familiarizar com este exemplo.
a. Chapa de baixo
b. Chapa base
c. Plástico do topo
d. Duas peças de LCD
e. Motor e encoder ótico
f. Peças da conexão 1 do Pendubot
g. Peças da conexão 2 do Pendubot
h. Peças do acoplador da conexão 2 do Pendubot
i. Peças da conexão do pêndulo de reação
j. Peças da roda de reação
k. Quatro extensões para a configuração do pêndulo de reação
l. Peça da base do pêndulo de Furuta
m. Peça de cima do pêndulo de Furuta
n. Conexão 1 do pêndulo de Furuta
12) CD de instalação com os códigos de exemplo do kit
1) Pentium II ou mais novo rodando Windows 2000/XP, com porta USB. Opcional: Se
usando a placa DSP para aquisição de dados, então também precisará um porta paralela
no PC.
2) Mesa limpa para permitir que os pés de borracha tenham aderência.
3) Instrumentos:
a. Soquete de ½ polegada;
b. Chaves Allen de 7/64, 3/32 e 5/64 polegadas;
c. Pequena chave de fenda;
d. Chave de fenda plana, três milímetros de precisão.
4) Fita para prender os cabos;
a. Matlab 6.0;
b. Simulink;
c. Toolbox da Real-Time Workshop;
d. Microsoft Visual C++ 6.0 ou Microsoft Visual Studio .NET 2002-2003.
4. Montagem do hardware
O Mechatronics Control Kit vem com um conjunto de peças que torna possível a
montagem de uma base onde ficam posicionadas todas as placas e LCD e mais as peças que
montam os experimentos. Algumas das peças são utilizadas para mais de um experimento o que
não torna possível a montagem de mais de um experimento ao mesmo tempo. Na Figura 5 é
mostrada uma visão geral das peças que compõem o sistema.
Depois que o kit está montado como mostrado na Figura 5, o que resta fazer é montar o
experimento desejado. As peças remanescentes são as que compõem os experimentos. Nas
próximas subseções será mostrado como funciona a montagem de cada experimento. Vale
ressaltar que todas as peças, inclusive parafusos e chaves já vêem incluídas no kit.
O motor é adicionado na parte frontal do kit e o cabo deve ser ligado no encoder1 da placa
(Figura 6).
Como pode ser observado na Figura 6, o usuário não terá problemas em identificar o
local de conexão, pois em frente de cada conexão da placa tem o nome especificando qual porta
ela representa. Para todos os experimentos, com exceção do Pêndulo de Reação, o motor será
ligado no encoder1 e o sensor ótico será ligado no encoder2.
Depois de adicionado o motor e o cabo ligado na placa, o sistema do usuário deverá se
parecer como o da Figura 7.
Depois disso o estudante deve pegar a haste maior e fixar a roda e o motor nela, de tal
modo que o motor conseguirá rodar essa roda (Figura 9). Como foi demonstrado na Figura 5,
para realizar essa tarefa o estudante necessitará usar a Inertia Wheel Link e a Flywheel.
IMPORTANTE: Nesse experimento o estudante não pode esquecer. O motor será ligado no
ENCODER2 e o sensor ótico será ligado no ENCODER1.
Uma coisa importante, na qual o estudante deve estar atento é no posicionamento dos
fios. Quando o pêndulo é executado o motor aplica um torque para que consiga levar a haste
para o ponto de equilíbrio, se no caminho para o ponto de equilíbrio existir algum distúrbio
(como a haste esbarrar em um fio) o torque que havia sido calculo e aplicado não será mais
suficiente, então a haste não alcançará o ponto de equilíbrio, o calculo terá que ser feito
novamente para que o motor aplique outro valor de torque. Em um caso extremo, por exemplo,
se a haste sempre esbarrar no fio, o pêndulo nunca chegará ao ponto de equilíbrio. Nas Figuras
10 e 11 o estudante pode observar como é o modo ideal de prender os fios para o caso desse
experimento.
Figura 10 - Visão frontal dos cabos. Figura 11 - Visão superior dos cabos.
Depois de feita a montagem apresentada na Figura 12, o estudante pode fixar essa peça
no motor e adicionar a haste de balanço (Figura 13) na parte frontal do US Digital Encoder, e a
configuração final é mostrada na Figura 14.
Como foi dito na subseção anterior, um ponto importante é o cuidado com a fixação dos
fios, então nas Figura 14, 15, 16 e 17 será apresentado o método mais conveniente de fixação
para o Pendubot.
O quarto experimento é o pêndulo de Furuta. Para este experimento o kit terá uma
configuração diferente da configuração inicial. O motor será retirado da base e instalado no topo
de uma peça em forma de “L” (Figura 19). Essa peça em forma de “L” não vem montada, o
estudante deve montá-la utilizando as peças mostradas na Figura 20.
Essa peça será fixada no eixo do motor. O motor deve ser fixado no topo da estrutura em
“L”. O estudante primeiramente deverá fixar o motor, e em seguida fixar a peça mostrada na
Figura 21, no eixo do motor. No topo da peça mostrada na Figura 21 deverá ser fixada a haste
mostrada na Figura 13. A configuração final deverá ficar igual à Figura 22.
Figura 23 - Fixação traseira dos fios. Figura 24 - Fixação lateral dos fios.
Nessa subseção será demonstrado como proceder na instalação do conteúdo do CD. Este
conteúdo é o que garante o funcionamento e comunicação da placa com o computador. Depois
de inserido o CD do Code Composer Studio no driver abrirá um menu com opções de
documentação e instalação (Figura 26).
Depois de clicado na primeira opção Install Products abrirá outro menu com os softwares
que devem ser instalados. Na Figura 27 esse menu é mostrado juntamente com a ordem que deve
ser instalado cada componente.
Depois de instalada cada opção terá sido criado dois ícones no Desktop: 6713 DSK
CCStudio v3.1 e 6713DSK Diagnostics Utility v3.1. Depois de esses passos terem sido seguidos
o cabo USB da placa já poderá ser ligado no computador para reconhecimento do driver. O
driver é reconhecido automaticamente, mas deve ser instalado utilizando a opção de procurar em
disco, depois de selecionada essa opção o Windows irá encontrar o driver automaticamente e
27
instalá-lo. Para realizar um teste de conexão e verificar se o driver foi instalado com sucesso, o
usuário deverá clicar no ícone do programa de diagnóstico (Figura 28).
Depois de clicado no ícone, será aberto um software que realiza um teste completo na
placa e conexões. Este software (Figura 29) realizará testes na memória flash da placa, na
comunicação USB, memória externa, leds, etc.
Para utilizar o software apresentado na Figura 29, o usuário deve primeiro conectar a
placa ao computador, através da porta USB. Depois de realizada a conexão o usuário pode abrir
o software e apenas dar um clique na opção Start. Quando feito isso, o software irá iniciar um
diagnóstico completo do sistema informando possíveis falhas ou informando se o diagnóstico foi
finalizado com sucesso.
Existem alguns erros que podem ocorrer quando o software tentar comunicar com a
placa, dentre eles os principais são:
• Mensagem: Failed: Requires Win98, Win2k or WinXP. Problema: O sistema operacional
não suporta conexões USB.
• Mensagem: Failed: USB device is NOT enumerated or plugged in. Problema: Windows
não conseguiu encontrar o DSK. Pode ser checado o cabo de energia e o cabo USB.
• Mensagem: Failed: Load USB Application. Problema: Não foi possível carregar a
aplicação de emulação. O controlador de emulação da placa pode estar com problemas.
28
• Mensagem: Failed: USB Channel in use by another app. Problema: Uma outra aplicação
está utilizando o mesmo canal de comunicação que o DSK utiliza. Somente uma
aplicação por vez é permitida para comunicar com o DSK. Checar por aplicações ativas
no computador.
• Mensagem: Failed: Waiting for USB Enumeration. Problema: Esta é a mensagem de
status que indica que o Code Composer Studio está esperando pela comunicação USB, o
usuário não precisa clicar no botão de Close (Figura 30) ao menos que esteja obvio que
alguma coisa de errado aconteceu, caso em que a barra de progresso não se mova mais.
Existem duas opções de funcionamento dos exemplos, porque os exemplos são divididos
em duas partes, a primeira parte são os exemplos programados em C que serão embarcados na
placa através da conexão USB, a segunda parte são os exemplos desenvolvidos no Simulink e
são executados através da porta paralela.
Para a primeira opção são necessários apenas os softwares disponibilizados no CD de
instalação do kit (discutidos na seção anterior). Para a segunda opção são necessários a
instalação de softwares extras como:
• Matlab 7.0;
• Simulink;
• Microsoft Visual C++ 6.0 Standard Edition;
• Real Time Windows Target;
• WinCon 3.0.
29
Para realizar uma conexão entre o Matlab/Simulink e uma placa externa algumas
configurações são necessárias. O usuário deve abrir o modelo do Simulink e acessar o menu
Tools Real-Time Workshop Options. Esse menu abrirá uma tela (Figura 32) de
configuração.
Ao clicar no menu opções do Simulink o usuário terá opções de modificar tipo do device,
implementações de hardware, arquivos de instalação, etc. A primeira opção a ser modificada é o
tipo de device, nessa opção o usuário deve escolher “32-bit Real-Time Windows Target” (Figura
33).
31
Depois de selecionado o device type a tela do usuário deve se parecer com a Figura 33.
Agora o usuário deve abrir a opção Real-Time Workshop para verificar se os arquivos de
compilação estão corretos, normalmente esses arquivos são estabelecidos automaticamente
quando o device type é escolhido, mas é aconselhável fazer uma checagem depois de
configurado o passo anterior. A tela do usuário deve se parecer com a Figura 34.
projeto no Code Composer Studio. Na instalação um ícone (Figura 36) para o CCS foi criado no
Desktop.
Depois de clicado no ícone o CCS será aberto e tentará testar a conexão com a placa na
abertura, então a placa deve estar devidamente plugada e ligada antes de o usuário abrir o
software, a tela inicial do programa é apresentada na Figura 37.
Depois de aberto o CCS, o usuário precisa conectá-lo com a placa para poder enviar
informações para a placa. Como pode ser observado no topo da Figura 37 ao abrir o CCS o
software realiza uma checagem de conexão, mas não conecta. A opção de conexão é
mostrada na Figura 38.
34
Depois de clicado na opção de conectar a tela do usuário deverá se parecer com a Figura
39.
Depois que o CCS foi conectado com o kit o usuário precisa iniciar um teste de memória
que irá mapear a testar se a placa está pronta para receber os arquivos. A opção para realizar esse
teste é mostrada na Figura 40.
35
Depois de realizado o teste há uma opção para limpar a placa. Esta opção não é
obrigatória sempre que o usuário vai executar um exemplo. Ela pode ser usada apenas se o
usuário deseja limpar a memória para adicionar um novo projeto, mas não tem necessidade
sempre realizar essa limpeza. A Figura 41 mostra a opção de limpeza.
Depois de realizado todos os passos anteriores é hora do usuário decidir qual projeto
deseja embarcar e abri-lo. Na Figura 42 mostra o local de abertura do projeto.
36
Quando o botão de Load Program for clicado, abrirá uma tela pedindo para que o
caminho do arquivo *.out seja especificado e depois os arquivos serão passados para a placa
(Figura 44).
Depois de carregado o programa para a placa o usuário precisa iniciar a placa. Na Figura
45 será mostrado onde o usuário necessita clicar para executar a placa.
Como foi mencionado anteriormente para esse exemplo de conexão as decisões quanto
ao pêndulo são dependentes da configuração do switch da placa. Então o usuário deve configurar
o switch, de acordo com a Tabela 1, para qual pêndulo ele deseja executar. De acordo com o
pêndulo desejado, uma mensagem será mostrada no LCD da placa identificando a opção
escolhida. A mensagem variará de acordo com o nome do pêndulo escolhido, como será
mostrado nas subseções seguintes, ou irá mostrar uma mensagem de erro, caso o usuário escolha
uma opção do switch que não contenha exemplos configurados (Figura 46).
38
Como foi mencionado anteriormente e pode ser observado na Figura 46, foi escolhida
uma configuração do switch que não havia exemplos configurados, então a mensagem diz que
está opção não está em uso e para o usuário modificar a configuração do switch e reiniciar o
DSP. O DSP é reiniciado utilizando o CCS, na Figura 47 será mostrado onde o DSP pode ser
reiniciado.
Essa opção de reiniciar a placa é utilizada para modificar o exemplo a ser executado. Se o
usuário iniciar o pêndulo de Furuta, por exemplo, e depois quiser observar o Pendubot, o usuário
não necessita embarcar o programa novamente, basta ele modificar o switch e depois reiniciar o
DSP, que o Pendubot será iniciado.
Depois de realizar os passos descritos na seção 6.1, o usuário já pode iniciar os exemplos
de pêndulo. O primeiro iniciado foi o Pendubot. Nessa seção serão apresentados os resultados
39
mostrados no LCD. Na seção anterior foi dito como abrir um projeto. Para utilizar esse método
de conexão o projeto que precisa ser aberto é o Boot Code, que está no CD de exemplos dentro
do diretório BootCode. Depois de aberto o projeto o usuário posiciona o switch da placa para a
posição do PenduBot (Tabela 1) e então embarca o arquivo bootflsh.out. Existem dois modos de
execução do PenduBot, o primeiro modo o pêndulo alcança a posição de equilíbrio no topo, ou
seja ele fica completamente ereto, no segundo modo, o pêndulo para na metade da
circunferência e equilibra a haste nesse ponto. Na Figura 48 será mostrada a mensagem do LCD
para o caso de escolha ter sido a posição de equilíbrio do topo.
Na Figura 50 será mostrada a mensagem do LCD para o Pendubot Mid, quando ele
estabiliza no centro da circunferência ao invés do topo.
40
6.2 Comunicação via USB, com inicialização pela interface do Visual Basic
Nessa seção será discutido como utilizar a interface do Visual Basic para executar os
exemplos. A comunicação será realizada da mesma forma da seção anterior, ou seja, todos os
passos que foram mostrados na seção anterior serão usados nessa seção. A única diferença é o
projeto que será embarcado. Nessa seção o arquivo a ser embarcado se encontra no diretório
41
esquerdo. O botão Download Gains irá enviar esses dados para o programa que executará o
torque do motor para estabilizar o pêndulo.
No lado direito logo acima da simulação há um botão chamado Friction OFF, este botão
é importante para o funcionamento correto do pêndulo. Como foi mencionada anteriormente, a
fricção causada pelas escovas do motor afetam a estabilização do pêndulo, então é necessário ter
um calculo de compensação da fricção para o modelo funcionar corretamente, esse botão
habilita e desabilita o controlador da compensação de fricção, dessa forma o estudante pode
avaliar a importância dessa compensação. Ao desabilitar a compensação o pêndulo não consegue
estabilizar e mantendo a compensação habilitada o pêndulo estabiliza em poucos segundos.
Finalizando, há dois botões no topo do lado direito, Start e Halt, como o nome mesmo
diz, esses botões servem para ligar e desligar a execução.
Nesta seção será discutido como fazer a comunicação via porta paralela através do
Matlab/Simulink. Este modo de conexão tem uma inicialização um pouco diferente. O primeiro
passo é posicionar todos os switches da placa para a posição DOWN, então o usuário deve
embarcar o código Boot Code. Seguindo os passos da seção 6.1 o usuário deve embarcar o
código que se encontra no diretório BootCode, mas o usuário não deve iniciar o DSP. O passo da
Figura 45 não deve ser feito. Ao invés de iniciar o DSP o usuário pode fechar o CCS. Ao fechar
o CCS o DSP estará configurado para aquisição de dados e mostrará uma mensagem no LCD
(Figura 54).
43
Esse modo se chama aquisição de dados, pois neste método de comunicação o programa
que realiza os cálculos não é embarcado na placa, o Matlab realiza uma troca de informações. A
placa envia sinais de posição e torque através dos sensores para o Matlab, o Matlab realiza os
cálculos necessários e envia um sinal de volta a placa com os novos valores, ou seja, os cálculos
são realizados no computador e não no DSP.
Depois de realizado os passos anteriores agora o usuário pode abrir os modelos do
Simulink para iniciar a comunicação. Supondo que o usuário já realizou as configurações
mostradas na seção 5.2, então o usuário pode abrir o modelo que se encontra no diretório
Matlab\RTW\WindowsTarget\WindowsTarget 2.5\Examples. Como foi explicado anteriormente,
para a realização deste trabalho só foi utilizado o Windows Target, pois o WinCon não estava
disponível. No diretório estão os modelos de todos os pêndulos, o usuário deve escolher qual
pêndulo ele deseja executar e abrir o modelo. Depois de o modelo estar aberto o usuário precisa
se conectar (Figura 55).
Com este diagrama o estudante pode modificar valores para verificar o comportamento,
bem como criar seus próprios controladores. O estudante pode criar controladores com
inteligência artificial (redes neurais, lógica Fuzzy ou algoritmos genéticos), pode trocar para
controladores PID, PD e etc. O Simulink tem a possibilidade de inserir osciloscópios para
analisar as ondas de saída e entrada dos sinais que são enviados e recebidos pelo Matlab. O
diagrama traz a liberdade para o estudante modificar e criar.
Considerações Finais
No referido estágio foi dada a oportunidade de ter uma visão de como será o trabalho de
um engenheiro, pois o trabalho foi pegar um equipamento novo, aprender sobre ele, descobrir
como funciona, montá-lo e deixá-lo em pleno funcionamento. Para isso foi preciso utilizar
conceitos aprendidos ao longo do curso de Engenharia de Computação como: eletrônica,
comunicação via porta USB, comunicação via porta paralela, programação em C, a utilização de
ferramentas como o Matlab e teoria de controle. Outro fator relevante foi a oportunidade de
trabalhar mantendo comunicação com os engenheiros fabricantes do equipamento, pois no
decorrer do trabalho foram solicitados mais de uma vez e foi possível perceber como funciona a
cooperação entre engenheiros fabricantes e consumidores e como eles tentam resolver os
problemas.
Como resultado final do trabalho, pode-se dizer que agora o Laboratório de Automação
Industrial e Robótica da UFAM dispõem de um equipamento que irá beneficiar professores e
estudantes que estão na área de sistemas de controle.
47
Bibliografia
[1] http://www.hedisc.ietec.org/uploads/Plantas/furuta_photo.jpg
Acessado em: 27/07/2010
[2] http://www.lara.unb.br/~gaborges/pesquisa/controle/pendulo/pendulo1.jpg
Acessado em: 27/07/2010