projeto de um protÓtipo de um manipulador …siaibib01.univali.br/pdf/rodrigo hungria...
TRANSCRIPT
UNIVERSIDADE DO VALE DO ITAJAÍ
CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR
CURSO DE ENGENHARIA DE COMPUTAÇÃO
PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR
TELEOPERADO
Área Sistemas Microcontrolados
Por
Rodrigo Hungria Martins
Henrique Simas, Dr. Orientador
São José, junho de 2008
UNIVERSIDADE DO VALE DO ITAJAÍ
CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR
CURSO DE ENGENHARIA DE COMPUTAÇÃO
PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR
TELEOPERADO
Área Sistemas Microcontrolados
Por
Rodrigo Hungria Martins
Proposta de trabalho apresentada ao Responsável pela Coordenação de Trabalho de Conclusão do Curso de Engenharia de Computação da Universidade do Vale do Itajaí - São José, para o desenvolvimento durante as disciplinas de Trabalho de Conclusão de Curso do 9o período e do 10o período.
Orientador: Henrique Simas
São José, junho de 2008
DEDICATÓRIA
Dedico meu esforço não só a este trabalho a qual lhes apresento, mas também a toda minha graduação, primeiramente aos meus pais, o senhor Gentil Antonio Alves Martins e a senhora Débora Moraes Hungria Martins, que me deram apoio e segurança e me ofereceram essa inesquecível oportunidade na vida, a qual se tornou o bem mais valioso que um ser humano poderia ter o conhecimento; Aproveito a oportunidade para lembrar também de todos meus tios e tias, sem exceções, que sempre me deram força e incentivos que foram de extrema importância para chegar ao fim desta longa caminhada. Lembro também em memória da minha avó senhora Abigail de Paula Assis que com certeza estaria muito orgulhosa de seu neto. E não esqueçam meus pais sempre amarei vocês para toda a eternidade.
AGRADECIMENTOS
Aos familiares, namorada, e amigos que sempre me apoiaram e confiaram em minha
capacidade, tiveram paciência e compreensão comigo durante esse período, aos colegas do curso,
pela troca de experiências. Agradeço e em especial ao professor Henrique Simas pela excelente
orientação, e aos professores Paulo Roberto Valim e Anita Fernandes pelo apoio fornecido
durante a execução do projeto e aos professores Rafael Cancian e Raimundo Teive pelas
observações construtivas ao meu trabalho.
SUMÁRIO
LISTA DE ABREVIATURAS ............................................................. VI
LISTA DE FIGURAS .......................................................................... VII
LISTA DE EQUAÇÕES ........................................................................ ix RESUMO ................................................................................................. x ABSTRACT ............................................................................................ xi 1 INTRODUÇÃO .................................................................................... 1
1.1 APRESENTAÇÃO .......................................................................................... 1
1.2 OBJETIVOS .................................................................................................... 2
1.2.1 OBJETIVO GERAL ................................................................................................................ 2
1.2.2 OBJETIVOS ESPECÍFICOS .................................................................................................. 2
1.3 ESCOPO E DELIMITAÇÃO DO TRABALHO ........................................... 2
1.4 RESULTADOS ESPERADOS ....................................................................... 3
1.5 JUSTIFICATIVA ............................................................................................ 3
1.6 METODOLOGIA ........................................................................................... 4
2 FUNDAMENTAÇÃO TEÓRICA ...................................................... 5
2.1 MANIPULADORES MECÂNICOS .............................................................. 5
2.2 ESTRUTURA DE MANIPULADORES MECÂNICOS ............................... 6
2.2.1 ELO ........................................................................................................................................ 7
2.2.2 JUNTA .................................................................................................................................... 7
2.2.3 EFETUADOR ......................................................................................................................... 9
2.2.4 SENSORES ........................................................................................................................... 10
2.2.5 AQUISIÇÃO DE DADOS .................................................................................................... 10
2.2.6 ATUADORES ....................................................................................................................... 11
2.3 DESCRIÇÃO DE POSIÇÃO E ORIENTAÇÃO ........................................ 11
2.3.1 LOCALIZAÇÃO DE UM PONTO NO ESPAÇO ................................................................. 11 2.4 TRANSFORMAÇÕES HOMOGÊNEAS .................................................... 13 2.5 DESCRIÇÃO DA CINEMÁTICA DE UM MANIPULADOR .................. 15 2.5.1 NOTAÇÃO DE DENAVIT–HARTENBERG ........................................................................ 15 2.6 TELEOPERAÇÃO ....................................................................................... 17 2.7 SISTEMA DE CONTROLE DE MANIPULADORES ............................... 19 2.7.1 CONTROLE DO ATUADOR ............................................................................................... 19 2.7.2 CONTROLE PROPORCIONAL, INTEGRAL E DERIVATIVO .......................................... 21 2.8 CONCLUSÃO ............................................................................................... 22 3 DESENVOLVIMENTO .................................................................... 23
3.1 INTERFACE DE CONDICIONAMENTO DOS SINAIS ANALÓGICOS 24 3.2 CONVERSOR ANALÓGICO DIGITAL ..................................................... 27 3.3 SINAL PWM .................................................................................................. 28
3.4 MONTAGEM DA PONTE H ....................................................................... 29 3.5 SISTEMA DE CONTROLE .......................................................................... 32 3.6 CONCLUSÃO ................................................................................................ 34 4 RESULTADOS ................................................................................... 35
4.1 INTERFACE DE CONDICIONAMENTO DE SINAL ANALÕGICO ..... 35 4.2 CONVERSÃO ANALÓGICO/DIGITAL .................................................... 36 4.3 SINAL PWM .................................................................................................. 37 4.4 MONTAGEM DA PONTE H ....................................................................... 40 4.5 SISTEMA DE CONTROLE .......................................................................... 41 4.6 INTEGRAÇÃO DO SISTEMA ..................................................................... 42 5 CONCLUSÃO ..................................................................................... 47
REFERÊNCIAS BIBLIOGRÁFICAS ................................................. 48
ANEXOS ................................................................................................. 51
LISTA DE ABREVIATURAS
AMPOP Amplificador Operacional A/D Analógico / Digital CI Circuito Integrado CPP Capture/Compare/PWM DC Corrente Contínua PI Proporcional – Integral PID Proporcional – Integral – Derivativo PWM Pulse width modulation RIA Robotic Industries Assiociation SCARA Selective Compliance Assembly Robot Arm TCC Trabalho de Conclusão de Curso UNIVALI Universidade do Vale do Itajaí
LISTA DE FIGURAS
Figura 1: Manipulador robótico SCARA. ........................................................................ 6
Figura 2: Estrutura de um braço manipulador robótico. ................................................... 7
Figura 3: Junta de revolução ............................................................................................. 8
Figura 4: Junta prismática................................................................................................. 8
Figura 5: Junta esférica ..................................................................................................... 9
Figura 6: Modelo de garra de dois dedos ....................................................................... 10
Figura 7: Vetor PA, associado ao ponto P. .................................................................... 12
Figura 8: Aproximação de PAna direção AY . ................................................................ 12
Figura 9: Projeções de PA nas direções AAA ZYX ˆ,ˆ,ˆ
. ..................................................... 13
Figura 10: Localização do ponto P em relação à A e B. ......................................... 14
Figura 11: Mapeamento Geral. ....................................................................................... 14
Figura 12: Matriz transformação homogênea ................................................................. 15
Figura 13: Parâmetros de elo e juntas ............................................................................. 16
Figura 14: Braço mecânico Teleoperado ........................................................................ 18
Figura 15: Seqüência de acionamento de um motor elétrico com controle de malha
fechada. ........................................................................................................................... 20
Figura 16: Digrama em blocos de um sistema de malha fechada de um manipulador. . 20
Figura 17: Diagrama de Blocos do projeto ..................................................................... 23
Figura 18: Ponte de Wheatstone ..................................................................................... 24
Figura 19: Configuração do ampop como amplificador inversor................................... 25
Figura 20: Esquemático do circuito de condicionamento de sinal analógico................. 26
Figura 21: Circuito Analógico no Proto-Board. ............................................................. 26
Figura 22: Pinagem do PIC 16F877A ............................................................................ 27
Figura 23: Ponte H com transistores .............................................................................. 30
Figura 24: Diagrama de Bloco do CI L298 .................................................................... 31
Figura 25: Descrição dos pinos do CI L298 ................................................................... 31
Figura 26: Calibração do potenciômetro em 5V. ........................................................... 35
Figura 27: Leitura do potenciômetro com 3,0V. ............................................................ 36
Figura 28: Declarações de variáveis ............................................................................... 36
Figura 29: Código responsável por configurar as entradas A/D .................................... 37
Figura 30: Código responsável por indicar e ler o canal desejado ................................. 37
Figura 31: Configuração do TIMER2 e dos canais PWM.............................................. 38
Figura 32: Código que determina o valor da onda do PWM .......................................... 38
Figura 33: Duty_Cycle com valor 0x00;......................................................................... 39
Figura 34: Duty_Cycle com valor 0x40;......................................................................... 39
Figura 35: Duty_Cycle com valor 0xBF; ........................................................................ 40
Figura 36: Circuito de teste da ponte H .......................................................................... 40
Figura 37: Cálculo do novo erro ..................................................................................... 42
Figura 38: Gerar o sinal PWM a partir do sinal analógico ............................................. 42
Figura 39: Sensor de referência, no duty_cycle do PWM .............................................. 43
Figura 40: Sensor de referência, no duty_cycle do PWM .............................................. 43
Figura 41: Teste controle malha fechada. ....................................................................... 45
Figura 42: Tempo de resposta ........................................................................................ 45
Figura 43: Teleoperação do Manipulador escravo ......................................................... 46
LISTA DE EQUAÇÕES
Equação 1 ....................................................................................................................... 12
Equação 2 ....................................................................................................................... 15
Equação 3 ....................................................................................................................... 15
Equação 4 ....................................................................................................................... 17
Equação 5 ....................................................................................................................... 22
Equação 6 ....................................................................................................................... 25
RESUMO
MARTINS, Rodrigo. Projeto de um Protótipo de um Manipulador Teleoperado,
São José, 2008. Trabalho de Conclusão de Curso (Graduação em Engenharia de
Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade do
Vale do Itajaí, São José, 2008.
Este trabalho apresenta o projeto e a construção de um manipulador tele operado de dois
graus de liberdade, controlado por microcontrolador. No microcontrolador é
implementada uma estratégia de controle a qual permite a ação sobre os motores do
manipulador a partir da medição de um sensor de posição. O sistema de comando
(manipulador gerador de referências) o manipulador construídos têm uma configuração
cinemática do tipo SCARA, e funcionam como mestre escravo, caracterizando um
sistema tele operado. São apresentadas ao longo dos capítulos a fundamentação teórica,
a metodologia adotada e as fases deste projeto. Ao final são discutidos os resultados,
abordando os aspectos didáticos e de aplicação do sistema desenvolvido.
Palavras - chave: Manipuladores, Sistemas tele operação, Controle digital.
ABSTRACT
This paper presents the design and construction of a remote operated manipulator of
two degrees of freedom, controlled by microcontroller. In the microcontroller is
implemented a strategy of control which allows the action on the manipulator engine
from the measurement of a sensor position. The command system (references
manipulator generator) and the manipulator have a kinematic configuration of the type
SCARA, and act as master slave system featuring a remote operate. The chapters
content theoretical grounds, the methodology and the steps of this project. In the end,
the final results are discussed addressing the educational aspects and the
implementation of the developed system.
Keywords: Manipulator, Remote operated system, Digital control.
1 INTRODUÇÃO
1.1 APRESENTAÇÃO
O homem sempre buscou ferramentas alternativas para facilitar e automatizar
suas tarefas, em especial aquelas que lhes causam risco à saúde e esforço físico
excessivos.
As primeiras aparições da robótica surgiram em 270 a.C., com o relógio de água
com figuras móveis, projetado pelo engenheiro grego Ctesibius (OLIVEIRA, 2004). Os
estudos foram evoluindo até os dias atuais. Nesta caminhada surgem nomes de grandes
gênios da humanidade como o Leonardo da Vinci, que dedicou parte de seus projetos a
área da robótica (OLIVEIRA, 2004).
Conceitualmente um manipulador mecânico é uma máquina programável de
propósito geral. Os manipuladores são comparáveis ao braço humano, quanto à forma e
capacidade de movimento. Estes manipuladores executam atividades industriais
rotineiras, como pintura, montagem, carga, etc. (MACIEL & ASSIS & DORNELES,
1999)
Os manipuladores apresentam-se como uma ferramenta com alto grau de
versatilidade e flexibilidade, motivos que os tornaram elemento importante no processo
de automação industrial. De acordo com a aplicação, várias estruturas de robôs
manipuladores foram desenvolvidas e entre elas surge o manipulador tele operado.
Aproveitando o avanço tecnológico e visando a proteção dos seres humanos que
atuam trabalhando em locais impróprios ou insalubres (exemplo centrais nucleares e
altas profundidades marítimas), desenvolveu-se de manipuladores teleoperados.
O primeiro manipulador tele operado que se tem conhecimento surgiu na década
de 40, criado por Oak Ridge e Argonne National. O manipulador mecânico era
controlado remotamente e foi desenvolvido para manipular materiais radioativos.
(ZHAI & MILGRAM, 1992)
O desenvolvimento da robótica vem ganhando espaço nas últimas décadas,
principalmente pelo grande avanço da eletrônica, que vem trazendo ao mercado,
processadores digitais cada vez mais rápidos e eficientes, além de outros dispositivos
como sensores e atuadores com uma maior eficiência, permitindo que se desenvolvam
manipuladores mecânicos ainda mais poderosos
Neste trabalho é desenvolvido um sistema de controle de um manipulador que é
controlado remotamente. A estrutura que fornece os sinais a serem reproduzidos é
semelhante ao manipulador a ser controlado, quando a sua estrutura, porém é composta
apenas de sensores. A estrutura de referência sempre esta próxima ao operador,
enquanto a estrutura que estiver sendo controlada esta próxima a tarefa a ser realizada.
No Capítulo 2 é apresentada uma pequena introdução sobre o estudo da robótica, bem
como seus percussores, além de descrever os principais pontos de conhecimento para o
desenvolvimento deste projeto. No Capítulo 3 serão descritos as etapas do
desenvolvimento, enquanto no Capítulo 4 serão apresentados os resultados obtidos.
.
1.2 OBJETIVOS
1.2.1 Objetivo geral
Desenvolver um sistema robótico tele operado utilizando um microcontrolador.
Este sistema será composto de um manipulador mestre constituído de sensores, e um
segundo manipulador (denominado escravo) que será construído utilizando atuadores e
sensores, cuja interface será programada sobre um microcontrolador.
1.2.2 Objetivos Específicos
• Desenvolver um manipulador SCARA (Selective Compliance Assembly
Robot Arm) didático com 2 graus de liberdade e de pequeno porte
(escravo);
• Desenvolver um sistema de geração de referências, um manipulador
SCARA (mestre);
• Desenvolvimento de um sistema de integração mestre escravo
microcontrolado; e
• Desenvolver uma estratégia de controle adequada ao projeto.
1.3 ESCOPO E DELIMITAÇÃO DO TRABALHO
O trabalho foi desenvolvido no âmbito educacional, objetivando o ensino e a
pesquisa na área de robótica no curso de Engenharia de Computação da UNIVALI. Para
isto toda a eletrônica e programação desenvolvidas neste trabalho serão abertas,
possibilitando aos alunos modificarem o sistema e alterarem a forma de controle e
atuação do manipulador.
Com o desenvolvimento de dois manipuladores, pretendeu-se fazer com que o
manipulador escravo, conseguisse reproduzir os movimentos do manipulador mestre, a
partir de um sistema de controle digital.
1.4 RESULTADOS ESPERADOS
O projeto previu a construção de dois manipuladores mecânicos, com estruturas
semelhantes, lembrando que o manipulador mestre não apresenta atuadores (ex.
motores), sendo composto apenas de sensores.
O manipulador escravo por sua vez possui sensores e atuadores o que lhe
permite através de um sistema de controle, executar os movimentos equivalentes ao
manipulador mestre, proporcionando ao sistema funcionar de forma teleoperada.
1.5 JUSTIFICATIVA
Usualmente os manipuladores teleoperados vêm substituindo o homem em
várias tarefas, que são realizadas em ambientes hostis ou insalubres.
As aplicações de braços manipuladores, em sua grande maioria encontram-se
nas indústrias. Porém com o aumento da tecnologia, os manipuladores vêm ganhando
grande importância nas áreas aeroespaciais, automotivas, militar, policial e até mesmo
na medicina. Hoje os manipuladores mecânicos têm uma importância fundamental no
desenvolvimento de qualquer país e, num futuro próximo, será o pilar de sustentação
das grandes inovações tecnológicas, justificando-se assim os elevados investimentos
que estão sendo realizados nesta área, tanto investimentos em pesquisas quanto em
desenvolvimento de novos equipamentos.
Contudo, o mercado tende a se desenvolver tecnologicamente, e com isso
aumentar o emprego dos manipuladores no seu cotidiano, sendo essa a justificativa
deste trabalho: obtenção de conhecimento desta tecnologia e a concepção de um
protótipo tele operado, utilizado atualmente nas indústrias.
1.6 METODOLOGIA
Para o desenvolvimento desse trabalho foi estudada a teoria básica de sistemas
robóticos identificando os principais aspectos na modelagem numérica e as estruturas
básicas de robôs e seus principais parâmetros.
Dentre os parâmetros dos robôs manipuladores (ângulo de junta, ângulo entre
elos consecutivos, tipos de juntas e o deslocamento das juntas) foram identificadas
características como o grau de liberdade, cinemática e a sua representação de acordo
com a notação de Denavit – Hartenberg, que é um método sistemático para descrever as
relações de rotação e translação entre cada dois elos adjacentes.
Concluído o estudo da cinemática foi desenvolvido um sistema de controle
digital, utilizando um microcontrolador. O sistema de controle utilizado foi um controle
de malha fechada.
O sistema controlará todas as juntas presentes no manipulador de forma
independente, sendo capaz de fazer com que o atuador (motor DC - Corrente Continua),
presentes em cada junta atue separadamente.
A forma mais comum de acionamento de motores DC é por meio de
microcontroladores é através da técnica de modulação por largura de pulso (PWM –
Pulse width modulation), onde esta técnica permite variar a tensão de acionamento dos
motores e, conseqüentemente a sua velocidade, e para o controle da direção, é proposta
uma solução clássica utilizando uma ponte H.
A ponte H é baseada em transistores que operam como chave. O princípio de
funcionamento é descrito pelo chaveamento de dois dos quatros transistores que
constituem a ponte, e dependendo do chaveamento o sentido da drenagem do transistor
faz com que a corrente flua pelo motor no sentido ou horário ou anti-horário, fazendo
com que o motor gire no mesmo sentido.
2 FUNDAMENTAÇÃO TEÓRICA
Neste Capítulo serão apresentados os conceitos principais que darão suporte para
o desenvolvimento do trabalho de conclusão de curso. Inicialmente serão estudados os
manipuladores mecânicos, as estruturas de um manipulador mecânicos, a descrição de
posição e orientação de um ponto no espaço, transformação homogênea, cinemática de
um manipulador, tele operação e sistema de controle digital.
2.1 MANIPULADORES MECÂNICOS
O advento, no Século XIX, de máquinas-ferramenta capazes de produzir
componentes com elevada precisão, a disponibilidade de várias fontes de energia para
atuação - hidráulica pneumática e elétrica -, os conceitos sobre transmissão mecânica,
motores, suspensões, a disponibilidade de sensores, etc., tudo isto permitiu construir,
entre outras, máquinas que permitiam emular o "braço humano". É do aparecimento
dessas máquinas e da sua evolução que serão tratadas a seguir. (PIRES, 2002)
A Robotic Industries Assiociation (RIA)
define Robô industrial como um “manipulador
multifuncional reprogramavel, projetado para
movimentar materiais, partes, ferramentas ou peças
especiais, através de diversos movimentos
programados para o desempenho de uma variedade
de tarefas” (RIVIN, 1988)
Do ponto de vista dos mecanismos, o braço humano é constituído por uma junta
de três graus de liberdade - o ombro, seguida de uma junta de um grau de liberdade - o
cotovelo - e, por fim, outra junta com três graus de liberdade - o punho. Tem, portanto,
sete graus de liberdade o que o caracteriza como redundante, ou seja, possui maior
mobilidade maior que a exigida para o posicionamento da mão no espaço cartesiano.
(PIRES, 2002)
Um problema intrínseco aos manipuladores são as chamadas configurações
singulares. A existência de configurações singulares significa a perda de mobilidade
nesses pontos, logo, uma estrutura livre de singularidades seria, em primeira análise,
preferível. No entanto, a grande maioria dos robôs manipuladores tem geralmente seis
eixos: os necessários para atingir qualquer posição/orientação no espaço de trabalho do
robô. Se as configurações singulares forem conhecidas, é possível evitar passar por elas,
mantendo assim, o robô manipulador controlado. (PIRES, 2002)
Como num "braço humano", os robôs manipuladores usam geralmente as
primeiras juntas para posicionar a estrutura formada pelas juntas seguintes, denominada
“punho”, que é utilizada para orientar o elemento-terminal, ou efetuador. As juntas
utilizadas para posicionamento formam a estrutura denominada “braço”: no homem,
correspondem às juntas do ombro e do cotovelo. Um robô manipulador também usa as
juntas do braço para a função de posicionamento e as juntas do punho para a função de
orientação. Em robótica de manipulação, existem cinco tipos principais de braços:
cartesiano, cilíndrico, polar, antropomórfico e SCARA (Selective Compliance Assembly
Robot Arm) (PIRES, 2002). Neste trabalho foi desenvolvido um manipulador baseado
na estrutura SCARA que pode ser observado na Figura 1.
Figura 1: Manipulador robótico SCARA.
FONTE: Oliveira (2004)
2.2 ESTRUTURA DE MANIPULADORES MECÂNICOS
Os robôs manipuladores são geralmente constituídos por um conjunto de corpos
rígidos, (chamados elos), interligados em uma cadeia cinemática aberta através de
juntas, as quais são acionadas por atuadores de modo a posicionar a extremidade livre
da cadeia (órgão terminal, efetuador, garra ou ferramenta) em relação à outra
extremidade, que é fixa (base do manipulador). A estrutura de um manipulador com a
identificação de cada peça que o constitui é mostrada na Figura 2.
Figura 2: Estrutura de um braço manipulador robótico.
FONTE: Adaptado de Carrara (2007)
2.2.1 Elo
Um elo pode ser definido com um corpo rígido que define a relação geométrica
entre dois eixos de juntas adjacentes (BIANCHI, 2007) na cadeia cinemática.
Para identificar os elos usa-se geralmente números inteiros, de acordo com a
seguinte convenção: a base do manipulador é o elo zero, e os elos seguintes são
numerados em ordem crescente na cadeia cinemática até a ferramenta.
2.2.2 Junta
Uma junta pode ser definida como a interligação entre dois elos vizinhos na
cadeia cinemática. A partir do seu eixo se dá a movimentação relativa entre dois elos
vizinhos. Para identificar juntas usam-se geralmente números inteiros, de acordo com a
seguinte convenção: a junta mais próxima da base do manipulador é a junta 1, e as
juntas seguintes são numeradas em ordem crescente na cadeia cinemática, da base até a
ferramenta. O grau de liberdade para um manipulador se define pelo número de junta.
(GOZZI, 2006). As juntas se apresentam basicamente de três tipos:
• Juntas de revolução: A junta de revolução, ilustrada na Figura 3, também são
chamadas de juntas rotacionais. Estas juntas giram em torno de uma linha
imaginária, chamada de eixo de rotação. Elas giram como uma cadeira giratória
e abrem e fecham como uma dobradiça. (GOZZI, 2006)
Figura 3: Junta de revolução
FONTE: Adaptado de Santos (2002)
• Juntas prismáticas: As juntas prismáticas são juntas lineares ou deslizantes que
se movem em linha reta sem girar conforme observado na Figura 4. São
compostas de duas hastes que deslizam entre si de forma telescópica. Elas se
estendem, retraem ou movem-se para dentro e para fora como um elevador
hidráulico num posto de gasolina, ou ainda ao longo de um trilho como um carro
de máquina de escrever. (GOZZI, 2006)
Figura 4: Junta prismática
FONTE Adaptado de Santos (2002)
• Juntas esféricas: As juntas esféricas funcionam como a combinação de 3 juntas
de revolução, realizando a rotação em torno de três eixos conforme observado na
Figura 5. No corpo humano existem algumas juntas esféricas como a junta entre
o ombro e o braço, o braço e o punho, o tronco e as pernas. (GOZZI, 2006)
Figura 5: Junta esférica
FONTE: Adaptado de Santos (2002)
2.2.3 Efetuador
Na robótica, efetuador (GROOVER, 1986) é usado para descrever a mão ou
ferramenta que esta conectada ao pulso, como por exemplo, uma pistola de solda,
garras, pulverizadores de tintas, entre outros. O órgão terminal é o responsável por
realizar a manipulação de objetos em diferentes tamanhos, formas e materiais, porém
esta manipulação depende da aplicação ao qual se destina.
É válido ressaltar que os órgãos terminais requerem cuidados ao serem projetados,
pois é necessário controlar a força que esta sendo aplicada num objeto. Para isso, alguns
órgãos terminais são dotados de sensores que fornecem informações sobre os objetos.
Existe uma grande variedade de modelos de garras que podem ser utilizados em
diversas aplicações como, por exemplo:
• Garra de dois dedos;
• Garra para objetos cilíndricos; e
• Garra articulada.
A garra de dois dedos, como pode ser visualizada na Figura 6, é um modelo simples
e com movimentos paralelos ou rotacionais. Este modelo de garra proporciona pouca
versatilidade na manipulação dos objetos, pois existe limitação na abertura dos dedos.
Figura 6: Modelo de garra de dois dedos
FONTE: Carrara (2007)
2.2.4 Sensores
Os sensores fornecem parâmetros sobre o comportamento do manipulador,
geralmente em relação à posição e velocidade dos elos em função do tempo. Desta
maneira os sensores detectam posição e/ou velocidade do manipulador ou a força
exercida pela ferramenta, no projeto utilizam apenas os sensores de posição.
• Posição: Os sensores de posição, o próprio nome já diz, detectam a posição das
juntas do manipulador, para esta função existem três principais tipos, os
potenciômetros, resolvers e encoders, no trabalho serão utilizados
potenciômetros.
Potenciômetros: São utilizados na sua grande maioria como sensor de posição
rotacional em aplicações de baixa velocidade, e o seu princípio de funcionamento é o
mesmo do divisor de tensão de resistência variável.
2.2.5 Aquisição de dados
O sistema de aquisição de dados é um circuito de condicionamento e conversão
analógico/digital (A/D) dos sinais fornecidos pelos sensores. O sistema analógico
transporta o sinal analógico dos sensores até o controlador do manipulador. Durante o
transporte do sinal analógico, o circuito permite realizar um condicionamento do sinal.
Com o condicionamento pode-se regular a tensão que chegará ao controlador.
Este controlador realizará então a transformação do sinal analógico em sinal digital
(código numérico que pode ser manipulado).
2.2.6 Atuadores
São componentes que realizam a conversão da energia elétrica, hidráulica,
pneumática em energia mecânica para movimentar o manipulador através dos sistemas
de transmissão. A potência mecânica gerada pelos atuadores é enviada aos elos para que
os mesmos se movimentem. Cada tipo de atuador tem um modo de atuação e aplicação
mais indicados:
Atuadores Hidráulicos: utilizam um fluido à pressão para movimentar o braço.
Usados em robôs grandes. Grande potência e velocidade, mas baixa precisão.
Atuadores Elétricos: motores elétricos (de passo, servos, Corrente Continua ou
Corrente Alternada) ou músculos artificiais. Usados em robôs de médio porte.
Atuadores Pneumáticos: utilizam um gás à pressão para movimentar o braço.
Usados em robôs de pequeno porte. Baixa precisão. Limitados a operações do tipo
pega-e-coloca.
No projeto desenvolvido o tipo de efetuador utilizado é um motor elétrico de
corrente continua de 12 Volts.
2.3 DESCRIÇÃO DE POSIÇÃO E ORIENTAÇÃO
A modelagem de robôs manipuladores é feita através da descrição dos seus elos e
das relações entre eles. Para sistematizar a descrição destas relações, são utilizadas
ferramentas de Álgebra Linear e Geometria Analítica. (SCIAVICCO & SILICIANO,
2000)
2.3.1 Localização de um ponto no espaço
Para que se possa localizar um ponto no espaço é necessário considerar a
existência de um sistema de coordenadas. O sistema de coordenadas é formado por três
vetores ortonormais que representam as três dimensões do espaço físico.
Para se localizar o ponto P, é necessário um sistema de coordenadas neste caso
chamado de A. Observando a Figura 7, verifica-se que a posição do ponto P em
relação à origem do sistema A é igual ao comprimento do vetor cuja base está na
origem do sistema A e a ponta está no ponto P. Por conveniência, denomina-se o
vetor como PA , pois o vetor representa o ponto P em relação ao sistema A. (LAGES,
2007)
Figura 7: Vetor PA, associado ao ponto P.
FONTE: Lages (2007)
Para ter a localização do ponto P em relação ao sistema A, é feita a descrição
do vetor PA no sistema A. A descrição é obtida pela aproximação do vetor PA nas
direções, AAA ZYX ˆ,ˆ,ˆ .
Supondo que Y seja uma aproximação qualquer de PA na direção AY , como
ilustrado a Figura 8. E a Equação 1 representa numericamente esta aproximação.
Figura 8: Aproximação de PAna direção AY .
FONTE: LAGES (2007)
Ey - Y Ey Y PP AA=⇒+=
Equação 1
onde: Ey é o erro cometido na aproximação.
O conjunto das aproximações de PA nestas três direções ( AAA ZYX ˆ,ˆ,ˆ ) é
exatamente igual à PA , ilustrado na Figura 9. O ponto P pode ser descrito no sistema de
coordenadas A por
=
pz
py
px
PA.
Figura 9: Projeções de PA nas direções AAA ZYX ˆ,ˆ,ˆ
.
FONTE: Lages (2007)
Tipicamente em um sistema robótico existirão diversos sistemas de coordenadas
associadas aos diversos objetos no espaço de trabalho do manipulador e aos seus
próprios elos. (LAGES, 2007)
2.4 TRANSFORMAÇÕES HOMOGÊNEAS
Segundo Lages, 2007, a transformação homogênea é uma modelagem
matemática que possibilita conhecer-se algum ponto de interesse em relação a um
sistema de coordenadas. Através das transformadas homogêneas é possível obter um
mapeamento de um ponto P definido no sistema de coordenadas B, em relação a um
sistema de coordenadas A, conforme ilustrado na Figura 10.
Figura 10: Localização do ponto P em relação à A e B.
FONTE: Lages (2007)
Assim, dados dois sistemas de coordenadas referenciais A e B e um ponto
P, conhecendo as coordenadas BP do mesmo no referencial B, as coordenadas AP do
ponto P no referencial A podem ser obtidas, desde que se conheça a posição APB e a
orientação ARB de B em relação à A, através de um mapeamento de BP para AP
conforme ilustrado na Figura 11.
Figura 11: Mapeamento Geral.
FONTE: Lages (2007)
A matriz de transformação homogênea pode ilustrada conforme Figura 12, sendo
escrita por uma matriz 4 X 4 de acordo com a Equação 2, e simplificando-a tem-se a
Equação 3.
Figura 12: Matriz transformação homogênea
FONTE: Santos (2002)
Equação 2
Equação 3
Onde BAT é a matriz de transformação homogênea que representa de modo
compacto a posição e orientação de B em relação à A. A linha inferior das
equações matriciais 2 e 3 foram acrescentadas de modo a resultar numa matriz BAT
quadrada 4x4 para a qual exista matriz inversa. (LAGES, 2007)
Os vetores de posição 4x1 (último elemento igual a 1) são vetores de coordenadas
homogêneas. Para fins de simplificação, usa-se a nomenclatura AP tanto para vetores de
posição 3x1, como para vetores em coordenadas homogêneas. (SCIAVICCO &
SILICIANO, 2000)
2.5 DESCRIÇÃO DA CINEMÁTICA DE UM MANIPULADOR
Um manipulador pode ser modelado como um sistema de elos articulados
através de juntas no espaço tridimensional. O estudo de seu movimento (cinemática)
está relacionado com a descrição das variáveis de posição, das juntas e ao modo com
esses variáveis variam em função do tempo (velocidade e aceleração). A notação de
Denavit-Hartenberg é uma ferramenta utilizada para sistematizar a descrição da
cinemática de posição dos sistemas mecânicos articulados com n graus de liberdade.
(ROMANO, 2002)
2.5.1 Notação de Denavit–Hartenberg
A notação Denavit-Hartenberg é uma destas convenções que permite solucionar
o problema da cinemática direta. Para esta solução é necessário caracterizar
B A B
A B
A
T
P R =
1 0 0 0
BBA
BA
A P P R
P
=
1*
10001
matematicamente os elos do manipulador através de referenciais e parâmetros
cinemáticos atribuídos de acordo com convenções apropriadas, observado na Figura 13.
(KAUTZMANN, 2005)
Figura 13: Parâmetros de elo e juntas
FONTE: Kautzmann (2005)
Descrição Cinemática de Elos:
• Comprimento do elo i: ai, distância entre zi e zi+1 medida ao longo do
eixo xi.
• Ângulo de torção do elo i: iθ , ângulo entre zi e zi+1 medido em torno do
eixo xi.
Descrição Cinemática de Juntas:
• Deslocamento da junta i: di, distância entre xi-1 e xi medida ao longo do
eixo zi.
• Ângulo da junta i: iθ , ângulo entre xi-1 e xi medido em torno do eixo zi.
• Variável da junta i: iθ , é igual ao ângulo da junta i se a junta i for
rotacional ou é igual ao deslocamento da junta di se a junta i for prismática. Grandeza
que varia ao acionar o atuador da junta i, resultando no movimento relativo entre os elos
i-1 e i. (KAUTZMANN, 2005)
A Equação 4 demonstra a representação da notação de Denavit-Hartenberg em
uma matriz 4X4.
.
Equação 4
2.6 TELEOPERAÇÃO
A tele operação é definida como o controle contínuo e direto de uma máquina
remota (TOURINO, 2000). Inicialmente desenvolvida para a manipulação de materiais
radioativos, a tele operação permite que um operador exerça força e realize movimentos
através de dados visuais, sonoros ou táteis. Com a introdução da tele operação, foi
possível o desenvolvimento de interfaces capazes de prover uma interação satisfatória
entre homem e máquina, permitindo que serviços de grande destreza fossem realizados.
A tele operação requer a sinergia entre homem e máquina, pois o operador está
envolvido no controle e na supervisão do sistema através da interface homem-máquina,
visto na Figura 14.
Figura 14: Braço mecânico Teleoperado
FONTE: Zhai & Milgram (1992)
A interface homem-máquina integra todas as informações necessárias à operação
do sistema, que são relevantes ao operador, incluindo a exibição de imagens de vídeo,
modelos virtuais e páginas gráficas de controle. Esta característica torna a interface
homem-máquina uma peça fundamental do sistema.
A interface homem-máquina tem como objetivo principal proporcionar um
controle supervisionado realista e intuitivo permitindo:
• Monitorar continuamente a operação via displays baseados em vídeo ou
ambientes virtuais; e
• Intervir interativamente e modificar os objetos pela aplicação de
comandos de controle usando o mouse.
No projeto foi usado o modelo mais tradicional de tele operação que é o modelo
mestre-escravo. Neste caso, o operador humano observa o ambiente de trabalho remoto
através de um sistema de vídeo e manipula o braço robótico por meio de um
“console”(no projeto o manipulador mestre), que controla o braço escravo no local
remoto. (ZHAI & MILGRAM, 1992)
2.7 SISTEMA DE CONTROLE DE MANIPULADORES
A unidade de controle representa o "cérebro" do manipulador. Ela recebe os
sinais de entrada dos sensores dos manipuladores e transmitem sinais de saída para os
atuadores dos manipuladores. Pode-se trabalhar com dois tipos de sistemas de controle:
malha aberta e malha fechada.
O controlador é a parte do manipulador que é responsável por operar o braço
mecânico e mantém contato com seu ambiente. O dispositivo em si é composto por
hardware e software, combinados para possibilitar ao manipulador executar suas tarefas.
(ZORZI, 2004)
2.7.1 Controle do atuador
O controle do acionador ou atuador é o controle de cada eixo do manipulador.
Cada eixo de movimento inclui, pelo menos, uma articulação, um vínculo e um
acionador. Em alguns manipuladores, os eixos incluem dispositivos de transferência de
movimento assim como unidades para identificar a posição relativa dos vínculos. Um
eixo que contém tais unidades possui controle de malha fechada.
Os sinais de controle provêm de um computador (quando se fala em
computador, deve-se ter em mente que pode ser também um microcontrolador, ou um
microprocessador – sistema de controle) que envia um sinal digital. O sinal digital é
convertido em sinal analógico (geralmente por conversores A/D ou pela técnica de
PWM), uma vez que os acionadores de manipuladores geralmente trabalham com sinais
analógicos.
Mas isso ainda não é suficiente, pois a potência necessária para acionar os
atuadores é relativamente alta, e o sinal que sai do conversor A/D é baixo, então se usa
um amplificador (unidade de potencia), conforme a Figura 15.
Figura 15: Seqüência de acionamento de um motor elétrico com controle de malha fechada.
FONTE: Adaptado Zorzi (2004)
Após efetuar a ação do atuador, existe um sensor que envia uma resposta. A
resposta serve de parâmetro para identificar se houve ou não o movimento. Contudo
esse sensor retorna um valor ao computador, conforme Figura 16, formando então uma
malha fechada.
Para se entender o conceito de malha fechada é necessário recordar o de
realimentação. Realimentação consiste em se tomar uma medida do estado atual do
dispositivo a ser controlado e comparar essa medida com um valor pré-definido. Essa
comparação vai resultar em um erro. O controlador vai tomar as providências
necessárias para que esse erro seja reduzido à zero.
O circuito de malha fechada é ilustrado na Figura 16, através de um digrama em
blocos.
Figura 16: Digrama em blocos de um sistema de malha fechada de um manipulador.
FONTE: Carrara (2007)
Em um controle de malha fechada, busca-se medir e corrigir eventuais erros,
objetivando assim fazer com a saída do processo siga uma referência desejada.
A seguir são apresentadas algumas estruturas de controle clássica utilizadas em
robôs manipuladores.
2.7.2 Controle proporcional, integral e derivativo
A combinação das ações de controle proporcional, integral e derivativa
precedente para gerar um só sinal de controle, dá origem ao que se chama de
controlador proporcional-integral-derivativo ou simplesmente PID. O objetivo é
aproveitar as características particulares de cada uma destas ações a fim de se obter uma
melhora significativa do comportamento transitório e em regime permanente do sistema
controlado. (BAZANELLA & SILVA, 2000)
Desta forma tem-se três parâmetros de sintonia no controlador: o ganho
proporcional (ação proporcional), o tempo integral (ação integral) e o tempo
derivativo (ação derivativa). (BAZANELLA & SILVA, 2000)
A ação proporcional de um circuito de controle permite verificar as entradas de
dados, e realizar um cálculo, onde o resultado é um valor de erro. Então na ação
proporcional esse erro é multiplicado por uma constante ( ), gerando o valor de
atuação do controle.
A ação integral está diretamente ligada à precisão do sistema sendo responsável
pelo erro nulo em regime permanente. O efeito desestabilizador do controlador PI
(proporcional-integral) é contrabalançado pela ação derivativa que tende a aumentar a
estabilidade relativa do sistema ao mesmo tempo em que torna a resposta do sistema
mais rápida devido ao seu efeito antecipatório. (OGATA, 2003)
A implementação do controlador PID pode ser feita através de aproximações
numéricas das derivadas e da integral que aparecem na lei de controle. Desta forma, é
possível descrever cada uma das ações por uma equação de recorrência. As equações de
recorrência descrevem as operações matemáticas a serem programadas no
microcontrolador ou no microcomputador onde será implementado o PID digital.
(BAZANELLA & SILVA, 2000)
Considerando que um período de amostragem, Ts, é selecionado, então o sinal de
controle é atualizado apenas nos instantes de tempo t = kTs = k, para a saída do sistema
y(k), o sinal de referência yr(k), o sinal de controle u(k) e o erro e(k). (IRIGOITE, 2006)
A Equação 5 é referente à forma clássica da lei de controle analógico, onde Kc,
Ti, Td são os ganhos do controlador. (IRIGOITE, 2006)
Equação 5
Contudo consegue-se entender como funciona o sistema de controle e os
parâmetros que os constituem, ficando claro como cada um desse parâmetros atuam no
sistema de controle.
2.8 CONCLUSÃO
Este capítulo apresentou os principais pontos necessários para o
desenvolvimento do projeto. Foram vistos os principais aspectos que envolvem o estudo
da robótica. No Capítulo 3, será apresentado o desenvolvimento do projeto bem como
as etapas que se sucederam para concretizá-lo.
3 DESENVOLVIMENTO
O projeto do manipulador tele operado funcionará através de um sistema de
geração de trajetória, o manipulador mestre, e terá seu movimento repetido por um
manipulador escravo. Os manipuladores enviam informações sobre suas posições
utilizando uma interface de condicionamento de sinais analógico, esta realiza a função
de condicionamento e filtro do sinal.
O sinal analógico percorre a interface de condicionamento até ser lido pelo
microcontrolador, o mesmo é o “cérebro” do sistema, onde o ele armazena as funções
de conversão analógica/digital, saída PWM e sistema de controle.
Lido o sinal analógico pelo microcontrolador, é executa o algoritmo de controle,
que resulta num regime de erro, do qual o valor é transmitido pelo canal PWM,
passando por uma ponte H, até chegar ao atuador do manipulador escravo a fim de fazer
com que a posição deste atinja a mesma do manipulador mestre. A Figura 17 mostra os
principais blocos do circuito a serem desenvolvidos.
Figura 17: Diagrama de Blocos do projeto
Com o projeto do circuito dividido em blocos, é possível identificar as diversas
tarefas que serviram como orientação e indicadores no desenvolvimento do projeto.
As tarefas foram definidas do seguinte modo:
• Interface de condicionamento dos sinais analógicos;
• Conversor Analógico Digital (A/D);
• Sinal PWM;
• Montagem da Ponte H; e
• Sistema de Controle digital.
3.1 INTERFACE DE CONDICIONAMENTO DOS SINAIS
ANALÓGICOS
A interface de condicionamento dos sinais analógicos faz com que o sinal
emitido pelo sensor do manipulador mestre chegue até o microcontrolador.
A interface de condicionamento dos sinais analógicos é um circuito analógico
que realiza uma filtragem e um condicionamento do sinal (tirando os ruídos) e
garantindo que o sinal chegará ao microcontrolador em uma faixa de tensão pré-
determinada. No caso deste projeto a tensão varia de 0 a 5 Volts.
Para a montagem deste circuito utilizam-se resistores de 10KΩ e amplificadores
operacionais (LM324) que estão trabalhando como um amplificador inversor. O ponto
inicial do circuito é criar uma ponte de Wheatstone conforme a Figura 18.
Figura 18: Ponte de Wheatstone
FONTE: Adaptado Romano (2002)
A ponte é constituída de dois resistores conhecidos R1 e R4, pelo sensor de
posição do manipulador mestre que é um potenciômetro na posição R2 e um trimpot na
posição R3. Os pontos 1 e 2 são as saídas para a continuidade do circuito analógico,
visto que este circuito é alimentado com 5V em V e aterrado em V0. Com a ponte
alimentada em 5V deve-se obter a saída de 0V quando R2 estiver no mínimo e 5V
quando o mesmo no seu valor máximo.
Dando continuidade à montagem do circuito, os pontos 1 e 2 são ligados a parte
positiva de dois amplificadores operacionais (Ampop) diferentes.
Como dito anteriormente os ampops estão trabalhando como amplificadores
inversores de tensão de ganho 1. Para o calculo do ganho foi utilizada a Equação 6,
onde R1é conectado na realimentação e R2 na entrada negativa, conforme a Figura 19.
iVR
RV *
2
10 −=
Equação 6
Figura 19: Configuração do ampop como amplificador inversor
As saídas dos ampops atravessam um resistor de 10KΩ e entram em outro
ampop, mas agora uma das saídas entra na parte positiva e a outra saída na parte
negativa, existe também uma resistência de 10 KΩ que interliga a entrada negativa do
ampop com sua saída.
Novamente utilizando a saída do ampop passando por um resistor e ligando – o
na entrada negativa de um quarto ampop e utilizando um trimpot (R2, chamado de
span) interligando a entrada e a saída do ampop, devidamente ajustado, com isso obtém-
se na saída é o sinal que alimentará o microcontrolador, finalizando o circuito
analógico. Conforme demonstrado na Figura 20.
Figura 20: Esquemático do circuito de condicionamento de sinal analógico.
Na Figura 21 observa-se o circuito analógico montado em um Proto-Board.
Figura 21: Circuito Analógico no Proto-Board.
Com o sinal do sensor atravessando a interface de condicionamento de sinal
analógica devidamente configurada, pode-se garantir que o sinal está adequado, sem
ruído e na margem de tensão especificada, estando ideal para ser recebido pelo
microcontrolador.
3.2 CONVERSOR ANALÓGICO DIGITAL
A conversão Analógica Digital (A/D) se faz necessária, pois o microcontrolador
trabalha com sinais digitais, e o sinal transmitido pelo sensor é analógico. A conversão
A/D é realizada diretamente pelo microcontrolador que tem pinos específicos para tal
função. O código para a conversão e a implementação do projeto foram escritos na
linguagem C e compilada na ferramenta MPLAB disponibilizada pela fabricante do
microcontrolador a Microchip.
Para implementação do projeto o microcontrolador mais indicado é PIC16F73
de 22 pinos que possui 2 canais PWM e 5 canal A/D, que são necessários para o
desenvolvimento do projeto. Porém por disponibilidade e maior facilidade de encotra-lo
no mercado utilizou se o PIC16F877A, ambos da microchip.
Na programação do código para a conversão A/D, o primeiro passo a ser
configurado são os pinos que estarão sendo utilizados como entrada do sinal Analógico,
bem como os pinos que servirão como referências (Vref+ e Vref-). As referências são os
valores de tensão máxima e tensão mínima, que as entradas analógicas podem receber.
No caso do presente projeto os pinos de números 2, 3, 7 e 8 do microcontrolador
(PIC16F877A) são conhecidos como AN0, AN1, AN4, e AN5, conforme Figura 22 e
estão configurados como sendo entradas dos valores dos sensores. Os pinos AN0 e AN4
são utilizados como entradas para a o sinal dos sensores do manipulador mestre e o
AN1 e AN5 configurados para receber o sinal dos sensores do manipulador escravo. As
referências Vref+ e Vref- recebem 5V e 0V e estão configuradas nos pinos 5 (AN3) e
4(AN2) respectivamente.
Figura 22: Pinagem do PIC 16F877A
FONTE: MICROCHIP(2003)
Após as configurações deve-se realizar de fato a conversão, para isto utilizam-se
os comandos ma linguagem C, primeiramente deve-se indicar qual canal será
convertido. A realização deste procedimento é executada pelo comando
SET_ADC_CHANNEL(pino). Após indicar o canal a ser trabalhado, deve-se converter
então o sinal. O sinal é convertido no momento de sua leitura, portanto é necessário
salvar o valor lido em uma variável, o procedimento é realizando utilizando o seguinte
exemplo: variável = READ_ADC ().
Ao término da leitura do valor analógico do canal em questão, o valor
armazenado é um valor digital o que possibilita a manipulação do mesmo pelo
microcontrolador.
3.3 SINAL PWM
No projeto o valor emitido pelo canal PWM é transmitido em função dos valores
lidos nos pinos A/D do microcontrolador, porém antes de enviar um sinal PWM devem-
se configurar os pinos 14 e 15 do microcontrolador, onde os mesmo têm as funções CPP
(CAPTURE/COMPARE/PWM).
Os pinos com função de CPP podem trabalhar como uma saída PWM, porém
utiliza-se os códigos na linguagem C para configurá-lo de tal maneira. Para isto utiliza-
se o comando SETUP_CPPx(modo), onde x é o canal a ser configurado e o modo é
uma variável ou constante inteira de 8 bits, tais como CCP_OFF( módulo CCP
desligado) e CCP_PWM (configura o modo de geração de sinal PWM), no projeto o
microcontrolador que está sendo utilizado, tem apenas dois canais PWM, onde cada
canal está sendo usados para acionar um atuador.
Após configurar os pinos para PWM, deve-se configurar o TIMER2, que é o
timer do microcontrolador responsável pela freqüência do sinal do PWM. Para se
configurar o TIMER2 utiliza-se a sentença setup_timer_2 (modo, per, os), onde modo
pode ser T2_DISABLE (desliga o timer 2), T2_DIV_BY_1 (TIMER2 ligado com
prescalar dividindo por 1), T2_DIV_BY_4 (TIMER2 ligado com prescalar dividindo
por 4) e T2_DIV_BY_16(TIMER2 ligado com prescalar dividindo por 16).
O parâmetro per é utilizado para especificar um período de contagem para o
TIMER2. A contagem do temporizador inicia em 0 e cada vez que ele chegar a uma
contagem igual ao valor de per, o temporizador é reiniciado.
O parâmetro os é utilizado para especificar o numero de vezes que o contado per
será reiniciado para gerar uma interrupção (TMR2IF), no caso do projeto utiliza-se, por
exemplo: setup_timer_2 (T2_DIV_BY_4, 254, 1), onde se tem o período do clock do
PWM equivalente a um quarto do clock de operação do microcontrolador (20kH), a
contagem para reiniciar o contador do TIMER2 inicia em 0 e vai até o valor 254, e se
repete essa contagem apenas uma vez para gerar a interrupção do PWM.
Outra configuração importante a ser realizada para o funcionamento do PWM é
a configuração do o ciclo ativo do módulo CCP no modo PWM, para configurar o ciclo
ativo utiliza-se a sintaxe set_pwmx_duty(valor), onde x é o canal CPP e o valor é uma
variável ou constante inteira de 8 ou 16 bits. O valor utilizado no projeto é o resultado
de uma função de controle que é uma variável de 8 bits.
3.4 MONTAGEM DA PONTE H
A montagem da ponte H é um ponto crítico do projeto, pois além de ser
responsável por realizar os movimentos em ambos os sentidos (horário e anti-horário)
do motor. A ponte H é acionada pelo sinal do PWM, que permite também controlar a
velocidade de rotação do motor.
Para a montagem da ponte H, foram utilizados 2 transistores do tipo TIP 107 e 2
do tipo 102. Os TIP 107 são do tipo PNP. O transistor ser do tipo PNP representa que
quando a base do mesmo estiver ativa o transistor está na sua região ativa. O TIP 102 é
do tipo NPN, isso significa que quando a base está em nível lógico 0, o transistor está na
região ativa. Fora os casos descritos os transistores estarem em estado de corte ou
saturação.
Para o funcionamento adequado da ponte H primeiramente deve-se alimentar o
circuito com uma tensão adequada ao motor e ligar os transistores Q1 e Q3 com a
mesma entrada enquanto liga-se Q2 á Q4, e os mesmo tem sinal negado em relação a
Q1 e Q3. conforme como a Figura 23.
Figura 23: Ponte H com transistores
O procedimento de ligar as entradas invertidas é necessário, pois, por exemplo,
quando entrada 1 estiver com sinal ativo, tem que os transistores Q1 e Q4 estão na
região ativa possibilitando a passagem da corrente emitida pela alimentação do circuito,
enquanto os transistores Q2 e Q3 estão em região de corte ou saturação.
Durante o desenvolvimento do projeto foi observado que a ponte H com os
transistores estavam aquecendo e não apresentado o comportamento esperado. Em
busca de uma solução, substituiu-se a ponte H por um CI L298 (Dual full-bridge driver)
com a mesma função. O CI têm duas pontes Hs integrada. A Figura 24 ilustra o
diagrama de blocos do CI.
Figura 24: Diagrama de Bloco do CI L298
FONTE: STMicroeletronics (2000)
A descrição dos pinos do CI L298 e sua ligação com o motor pode ser visto na
Figura 25.
Figura 25: Descrição dos pinos do CI L298
FONTE: STMicroeletronics (2000)
A Tabela 1 mostra as saídas do CI L298 em função das entradas, considerando o
pino Enable ativo (nível lógico 1), pois caso esteja desabilitado (nível lógico 0), a ponte
H estará desabilitada.
Tabela 1: Saídas do CI L298 em função das entradas
Entrada 1
IN1 (Pino 5)
Entrada 2
IN2 (Pino 7)
Sentido
STATUS
0 0 Parado - (Break)
1 0 Horário - (Forward)
0 1 Anti- Horário - (Reverse)
1 1 Parado - (Break)
3.5 SISTEMA DE CONTROLE
O sistema de controle é o responsável por verificar os valores dos sensores e
gerar um valor de saída para o canal PWM. Este valor é utilizado na função
set_pwmx_duty(valor), onde a saída PWM está ligada a ponte H, que aciona o motor.
No projeto foi desenvolvido um sistema de controle PI (proporcional-integral), porém
no primeiro momento foi desenvolvido um código de controle proporcional (regime de
erro), que não obteve o desempenho esperado.
Para o desenvolvimento do controle proporcional dividiu-se a implementação
em duas partes, esta divisão na implementação foi realizada para que o
microcontrolador não trabalhe com valores negativos.
A primeira implementação é executada quando o valor o sensor de atuação
(sensor fixo no manipulador mestre) for maior que o sensor de referência (sensor fixo
no manipulador escravo), então se tem a multiplicação do ganho proporcional, neste
caso 1 pela subtração do valor do sensor de atuação com o valor do sensor de referência.
A segunda implementação do controle proporcional é realizada quando o valor
do sensor referência é maior que o valor do sensor de atuação. Então sistema realiza
subtração do valor do sensor de referência pelo valor do sensor de atuação, também é
multiplicado o resultado da subtração pelo ganho proporcional 1.
Porém apenas o valor do erro, para ação de controle não era o suficiente para a
atuação adequada do motor, pois sabendo que os sensores trabalham num valor de 0 a
255 em decimal (0x00 – 0xFF), quando a diferença de posição de ambos for a máxima,
ou seja, um sensor no valor 0 e outro no valor 0xFF têm-se a diferença (erro) como
0xFF, fazendo com que o motor rotacione com sua velocidade máxima em um
determinado sentido independente de qual sensor estava em 0xFF.
Para corrigir a falha, dividiu-se a diferença (erro) por 2, obtendo então um valor
de erro na faixa de 0x00 a 0x7F. Para determinar em qual sentido o motor deve
rotacionar foi elaborada a seguinte estratégia. Quando o valor do sensor de atuação for
maior que o valor do sensor de referência realiza-se a subtração de 0x7F pelo erro
dividido por 2.
No caso do valor do sensor de referência ser o maior, realiza-se então a soma de
0x7F com o erro dividido por 2. Através desta estratégia de implementação consegue-se
fazer o motor rotacionar em ambos os sentidos, procurando rotacionar o sensor de
atuação para a mesma posição do sensor de referência.
Contudo pode-se observar que quando os sensores estiverem na mesma posição,
o valor do erro for igual á 0, então a saída do PWM recebe o valor de 0x7F onde motor
permanecerá parado, pois o PWM encontra-se com 50% do ciclo em alta e 50% do ciclo
em baixa.
O sistema de controle proporcional apresenta um bom resultado, como poderá
ser visto mais adiante no Capítulo 4 que trata dos resultados. Porém, quando o erro
apresentava um valor muito próximo de 0 zero. o mesmo não conseguia fazer com que o
motor se movimente, conseqüentemente o sensor de atuação não irá chegar à posição
desejada. A solução foi a implementação de uma ação integral (I) caracterizando um
controlador PI.
De acordo com OGATA (2003), o controlador PI (Proporcional-Integral) tem
como dinâmica com característica de 1 ordem. Onde no projeto se demonstrou
adequada ao controle de um motor DC que tem dinâmica predominante de segunda
ordem.
Para a construção do controle PI, manteve-se o mesmo procedimento para o
cálculo do erro, porém para obter o valor final do erro que o PWM irá atuar, acrescenta-
se ao erro o valor do erro anterior multiplicado por um fator, no projeto fator foi de 0,1,
quando o sensor de referencia maior que o sensor de atuação.
No caso do sensor de atuação maior que o valor do sensor de referencia o
resultado final é dado pela subtração no erro do valor do erro anterior multiplicado pelo
fator.
3.6 CONCLUSÃO
O Capítulo 3 apresentou os principais pontos do desenvolvimento do projeto,
bem com as principais configurações utilizadas. Contudo conseguiu-se projetar o
esquemático do circuito conforme anexo. No Capítulo 4 serão apresentados os
resultados parciais e finais obtidos no projeto utilizando a montagem do circuito
realizada em proto-board.
4 RESULTADOS
Este capítulo apresenta os resultados obtidos no decorrer do projeto. Para
apresentá-los de uma forma seqüencial, segui-se os passos de desenvolvimento, que
podem ser observados através do diagrama de blocos que está na Figura 17,
acrescentando a esta seqüencia a integração do sistema. Por ordem, o primeiro resultado
a ser discutido refere-se à montagem da interface de condicionamento de sinal.
4.1 INTERFACE DE CONDICIONAMENTO DE SINAL
ANALÕGICO
O principal resultado obtido na interface de condicionamento é um circuito
analógico, onde o esquemático e o circuito montado em um proto-board podem ser
observados respectivamente nas Figura 20 e 21. Com o circuito montado os resultados
obtidos puderam ser observados utilizando um osciloscópio.
O osciloscópio foi ligado ao circuito no ponto em que o mesmo estará conectado
ao microcontrolador. Para validar o circuito analógico, foram realizadas duas etapas de
calibração.
De acordo com o desenvolvimento, o primeiro passo de calibração do sistema é
ter o potenciômetro no seu ponto mínimo e sua saída deve estar em 0V.
O segundo ponto de calibração é colocar o potenciômetro no seu ponto máximo
e ter uma tensão de saída de 5V (Figura 26). Para tal teste utiliza-se o circuito montado
no proto-board da Figura 21, com um osciloscópio conectado na saída do circuito.
Figura 26: Calibração do potenciômetro em 5V.
Outro teste realizado foi a leitura do potenciômetro em um ponto qualquer de
sua posição, obtendo no multímetro um valor intermediário de 0 a 5V que na Figura 27
é lido 3.0V.
Figura 27: Leitura do potenciômetro com 3,0V.
Após verificar a leitura de um valor intermediário pode-se garantir que o circuito
está adequadamente calibrado.
4.2 CONVERSÃO ANALÓGICO/DIGITAL
A conversão realizada pelo microcontrolador resulta em uma variável do tipo
unsigned char (tamanho 8bits não sinalizado), para cada canal lido. Então o primeiro
passo é declarar as variáveis que receberam os valores dos sensores, conforme o código
apresentado na Figura 28.
//Variáveis que recebem os valores do manipulador mestre
unsigned char referência_1, referência_2;
//Variáveis que recebem os valores do manipulador escravo
unsigned char valorAtuador_1, valorAtuador_2;
Figura 28: Declarações de variáveis
Declaradas as variáveis que armazenaram os valores lidos, deve-se então configurar
os canais A/D utilizados no projeto bem como os canais que servirão como referências
(Vref+ e Vref-).
Para efetuar a configuração utiliza-se a função SETUP_ADC_PORTS(),
responsável por configurar as entradas analógicas do conversor A/D interno. E a função
SETUP_ADC() configura o conversor A/D interno, conforme visto na Figura 29.
//as entradas analógicas do conversor A/D interno
setup_adc_ports(AN0_AN1_AN4_AN5_VREF_VREF);
// AN0_AN1_AN4_AN5_VREF_VREF //configure com que AN0, AN1, AN4,
//AN5 como entrada e que AN2 //e AN3 //como Vref- //e Vref+,
//respectivamente;
//o conversor AD interno; for delay(clock=2000000), 20MHz/16 =1,25MHz
setup_adc(ADC_CLOCK_DIV_16);
Figura 29: Código responsável por configurar as entradas A/D
Com as devidas configurações efetuadas, deve-se então indicar o canal a ser lido,
utilizando a função SET_ADC_CHANNE, ler o canal com a função READ_ADC() e
armazená-lo em uma variável, ilustrada na Figura 30
SET_ADC_CHANNEL(0); //indica que será trabalhado o canal 0
delay_ms(10); //pausa para o microcontrolador configurar
referência_1 = Read_ADC(); //referência_1 armazena o valor do canal 0
Figura 30: Código responsável por indicar e ler o canal desejado
4.3 SINAL PWM
A validação do sinal PWM realizou através da leitura das saídas dos sinais do
canal PWM. A leitura é realizada através do osciloscópio plugado ao pino de saída do
sinal. Porém antes de ter o sinal adequado necessita configurar o microcontrolador, para
tal função.
Sabendo que os pinos com a função de PWM podem operar com outras
funcionalidades (CPP), o primeiro passo é configurar o microcontrolador para o modo
PWM. Para realizar a configuração é utilizado o comando SETUP_CPPx(modo), onde
x é o canal a ser configurado e o modo neste caso é CPP_PWM, indicando que o canal
x, trabalhará em modo PWM.
Porém, apenas a configuração não garante o funcionamento adequado do canal
PWM, sendo necessário configurar uma base de tempo para o PWM. A base de tempo é
configurada através da função setup_timer_2. O código responsável pela configuração é
vista na Figura 31.
//Configura o timer do pwm: setup_timer_2 (modo, per, os)
setup_timer_2(T2_DIV_BY_4,254,1);
//T2_DIV_BY_4: TIMER2 ligado com
//prescalar dividindo por 4;
//254: período de contagem de 0 a 254
//1 numero de vezes que o contador
// será reiniciado
setup_ccp1(CCP_PWM);
setup_ccp2(CCP_PWM);
Figura 31: Configuração do TIMER2 e dos canais PWM
Outra variável importante é a quantidade de tempo que a onda do PWM
permanecerá em alta. O valor de operação é definido pela variável duty_cycle, utilizada
na função SET_PWMx_DUTY(duty_cycle), onde x é o canal PWM em questão. Para
validar a saída PWM utilizou-se 5 valores em hexadecimal (0x00, 0x40, 0x7F, 0xBF,
0xFF) para o duty_cycle. Sabendo que o duty_cycle aceita apenas valores de 0 a 255 em
decimal ou 0 a 0xFF em hexadecimal. O código de validação é visto na Figura 32:
//Define o valor de saída do PWM
SET_PWM1_DUTY(duty_cycle);
Figura 32: Código que determina o valor da onda do PWM
Quando o duty_cycle do PWM tem o valor igual a 0, tem-se que o tempo de
permanência do sinal PWM em nível lógico alto é zero, conforme visto no osciloscópio
que é ilustrado na Figura 33.
Figura 33: Duty_Cycle com valor 0x00;
Quando o duty_cycle é configurado com o valor de 0x40 em hexadecimal, tem-se
o sinal de saída permanecendo ¼ do tempo total do pulso PWM em alto, conforme visto
na Figura 34
Figura 34: Duty_Cycle com valor 0x40;
No caso da Figura 35, quando o duty_cycle é configurado com o valor de 0x8F
em hexadecimal, tem-se o sinal de saída permanecendo ¾ do tempo total do pulso
PWM em alto.
Figura 35: Duty_Cycle com valor 0xBF;
Através dos testes descritos, pode-se observar que o sinal PWM emitido pelo
microcontrolador condiz com o esperado.
4.4 MONTAGEM DA PONTE H
Para a montagem da ponte H foi utilizado o CI L928. Porém para validar, testar e
ganhar conhecimento do funcionamento deste CI foi montado um circuito de teste em
um proto-board junto com o módulo digital 8810, de eletrônica encontrado nos
Laboratório de Eletrônica da Univali, conforme Figura 36, onde, consegui-se simular e
analisar as entradas e saídas da ponte. O principal resultado obtido foi a rotação em do
motor, que estará conectado na saída do CI, em ambos os sentidos.
Figura 36: Circuito de teste da ponte H
Para montar o circuito de teste seguiram-se as ligações sugeridas na Figura 25.
Porém para simular as de entradas do sinal PWM, foram utilizadas as chaves existentes
no módulo. Com os testes pode verificar que o CI foi capaz de executar as tarefas as
quais estará submetido quando integrado ao projeto.
4.5 SISTEMA DE CONTROLE
O sistema de controle tem como resultado, uma ação de controle, que é gerada a
partir de um erro que é calculado através das diferenças de valores dos sensores de
referencia e de atuação.
Para o cálculo do valor do erro num primeiro momento, utiliza-se o controle
proporcional, e depois de calculado o mesmo era enviado para ao motor a fim de gerar
um movimento até que o erro atinja o valor 0.
Contudo, o controle proporcional inicialmente desenvolvido apresentou alguns
problemas. O principal foi que quando o erro era próximo de 0, o sinal emitido pelo
PWM não tinha torque suficiente para fazer com que o motor rotacione-se. Para a
solução deste problema desenvolveu-se o controle proporcional-integral, A inclusão do
termo integral no sistema de controle, ocasionou a inserção no código do erro anterior.
O Erro Anterior inicialmente tem valor 0, mas após a primeira interação o valor
do Erro Anterior recebe o valor erro da interação em questão. Porém o valor só será
introduzido no cálculo do próximo erro. Contudo o valor do erro anterior a atuar no erro
é apenas 0,1 do erro anterior. Na Figura 37 pode ser visto o novo cálculo do erro, a
configuração do valor do PWM e a atualização do valor do erro anterior.
//Sistema de controle
if (referencia_1 > valorAtuador_1)
erro_M1 = (referencia_1-valorAtuador_1)/2+ (Erro_antM1/10);
erro_M1 = 0x7F + erro_M1;
if (valorAtuador_1 > referencia_1)
erro_M1 = (valorAtuador_1-referencia_1)/2+ (Erro_antM1/10);
erro_M1 = 0x7F - erro_M1;
// configura o valor do PWM
SET_PWM1_DUTY(erroM1);
Erro_antM1 = erroM1;
Figura 37: Cálculo do novo erro
Com a implementação do código do controle proporcional integral obteve-se
grande sucesso no projeto, não apresentando mais os problemas apresentados quando se
utilizava apenas o controle proporcional, contudo pode-se dizer que o controle
proporcional integral é eficaz para projeto.
4.6 INTEGRAÇÃO DO SISTEMA
A seguir estarão sendo apresentados os resultados finais do projeto onde, todos os
resultados apresentados até o momento estarão sendo integrados, gerando então o
resultado final deste projeto.
A primeira etapa de integração do sistema é a integração via software para gerar o
sinal PWM a partir do sinal analógico lido pelo microcontrolador. Para tal tarefa,
inseriu-se o valor lido do sensores de referência (sensor do manipulador mestre) no
valor duty_cycle do PWM, enquanto o sensor de atuação (sensor do manipulador
escravo) deve permanecer desconectado, o código para tal tarefa esta demonstrado na
Figura 38:
//Define o valor de saída do PWM
SET_PWM1_DUTY(referência_1);
Figura 38: Gerar o sinal PWM a partir do sinal analógico
Através da modificação do valor do duty_cycle obteve-se um sinal PWM variante
de acordo com o valor lido no sensor de referência. O valor lido pelo sensor de
referência pode variar de é 0V a 5V. A porcentagem do valor lido, tendo 5V como
100%, será o equivalente a porcentagem de tempo em que pulso permanece com nível
lógico alto. Na Figura 39, visto que valor lido é próximo de 5V, tem-se também o sinal
PWM com permanecendo próximo a 100% em nível alto.
Figura 39: Sensor de referência, no duty_cycle do PWM
Outra leitura feita pelo sensor de referência é vista na Figura 40, onde o valor
lido é próximo de 0V, onde conseqüentemente tem-se o sinal de saída do PWM com
uma maior porcentagem do tempo em nível baixo (nível lógico 0).
Figura 40: Sensor de referência, no duty_cycle do PWM
Com o sinal PWM devidamente configurado, inicia-se então a integração entre o
sinal PWM e a ponte H. Para ativar a ponte H é necessário conectar as duas entradas de
sinais e colocar em nível lógico alto o pino enable.
Para os pinos de entradas, conectou-se o sinal do PWM, porém conectando
diretamente o sinal PWM em ambas as entrada, a saída da ponte será nula, pois de
acordo com a Tabela 1, quando as entradas apresentam valores iguais tem-se o motor
parado, estado break.
Para solucionar o problema descrito anteriormente inseriu-se uma porta not, em
uma das entradas da ponte H. Através da inserção da porta not é possível garantir que as
entradas sempre estarão invertidas, e o break só será gerado pelo PWM, quando o
mesmo tiver com 50% do tempo em nível lógico alto e os outros 50% em nível lógico
baixo, esse break é realizado devido a alta freqüência de atuação do PWM, não tendo
tempo suficiente para o motor rotacionar.
Os testes desta etapa apresentaram resultados bastante satisfatórios são eles:
• Valor do sensor de referência no seu mínimo, o motor rotacinou com
velocidade máxima no sentindo anti-horário (reverse);
• Valor do sensor de referência com 1,8V, o motor rotacinou com
velocidade baixa no sentindo anti-horário (reverse);
• Valor do sensor de referência com 2,5V, o motor não rotacinou, ou seja,
ficou parado (break);
• Valor do sensor de referência com 3,8V, o motor rotacinou com
velocidade baixa no sentindo horário (Forward); e
• Valor do sensor de referência com 5,0V, o motor rotacinou com
velocidade máxima no sentindo horário (Forward).
Com a finalização desta etapa do desenvolvimento, obteve-se um sistema de
controle proporcional de malha aberta. Para construir o sistema de malha fechada
necessita-se então de uma variável com o valor de atuação do motor. Para isto inseriu-se
o sensor de atuação.
O sensor de atuação está conectado diretamente ao motor, e quando o sensor é
lido pelo microcontrolador ontem a posição atual do motor.
A partir do valor lido pelo sensor de atuação pode-se desenvolver o sistema de
controle de malha fechado. Para tal sistema, é necessária a leitura de ambos os sensores,
pois o objetivo final do sistema de malha fechada é garantir que ambos os sensores
apresentem o mesmo valor lido.
Com a leitura de ambos os sensores e com a verificação que os valores lidos são
diferentes, sabe-se que os sensores não estão na mesma posição. Neste caso deve-se
fazer com que o motor atue em uma determinada direção com o intuito de rotacionar o
sensor do atuador até aposição do sensor de referência. O sensor de atuação está
acoplado ao motor. Na Figura 41 observa-se a saída do valor do PWM no osciloscópio e
os sensores de atuação e de referência para o teste de controle são movimentados pelo
operador do testes, facilitando a observação dos resultados.
Figura 41: Teste controle malha fechada.
Para finalizar o projeto utilizou-se o código de controle apresentado na Seção
4.5, obtendo um movimento no manipulador escravo, semelhante ao que o operador
realiza no manipulador mestre. A Figura 42 apresenta a medição do tempo de resposta
malha de controle proporcional integral implementada no microcontrolador. Conforme
pode ser observada a resposta do manipulador escravo é atrasada em aproximadamente
125ms em relação ao sinal de referencia.
Figura 42: Tempo de resposta
Na Figura 43 pode se observar o manipulador escravo na mesma posição do
manipulador mestre após atuação dos seus motores, ou seja, obteve-se a tele operação
do manipulador escravo, contudo através do testes utilizando um transferidor pode se
observar um erro máximo entre o manipuladores de 5° .
Figura 43: Teleoperação do Manipulador escravo
Com a apresentação dos resultados do projeto pode – se afirmar, que os objetivos
propostos foram alcançados. A principal prova é a tele operação do manipulador
escravo que tem um manipulador mestre como sistema de referência.
5 CONCLUSÃO
Este trabalho apresentou o projeto e o desenvolvimento de um sistema robótico tele
operado de dois graus de liberdade.
Para o desenvolvimento do projeto foi realizado inicialmente um estudo sobre as
necessidades do sistema. Nesta etapa foram definidos o tipo e modelo de
microcontrolador mais adequado, assim como, também foram desenvolvidos circuitos
analógicos para condicionamento de sinais.
Dentre os desenvolvimentos realizados destacam-se o projeto de circuitos
analógicos e digitais tais como a Ponte H, circuitos condicionadores de sinal, interfaces
analógicas e do sistema para funcionamento do microcontrolador. Muitas das
implementações foram pensadas inicialmente na aplicação na forma analógica, porém,
por conta de limitações encontradas, a maioria das soluções foram implementadas na
forma digital. Também se destacam o desenvolvimento de um protótipo de um
manipulador SCARA para servir de manipulador tele operado e do sistema de geração
de referência (manipulador mestre).
De acordo com os objetivos definidos neste projeto os resultados obtidos atenderam
as expectativas pretendidas.
Este projeto tem caráter didático e pode vir a servir de ferramenta de ensino em
disciplinas dos cursos de Engenharia de Computação, Engenharia Industrial-Mecânica e
Ciência da Computação. Como perspectivas futuras o projeto permite aos alunos
interessados incluírem novas funcionalidades aos manipuladores onde sugere-se os
seguintes pontos:
• Aplicar novas estratégias de controle;
• Desenvolver programação adicional no microcontrolador para inclusão de novas
funcionalidades;
• Incluir novas juntas, aumentando o grau de liberdade;
• Incluir um efetuador, ou uma ferramenta; e
• Trocar o microcontrolador, por outro componente, por exemplo, um FPGA.
REFERÊNCIAS BIBLIOGRÁFICAS
BAZANELLA, Alexandre S.; SILVA, João M. G. Ajuste de Controladores PID.
Apostila online Universidade Federal do Rio Grande do Sul. Porto Alegre – RS, 2000.
Disponível em <http://www.ece.ufrgs.br/~jmgomes/pid/Apostila/apostila/ >. Acesso em
10/06/2006
BIANCHI, Reinaldo A. C. Cinemática Direta para manipuladores. Notas de aula do
Mestrado em Inteligência Artificial Aplicadas a Automação Centro Universitário da
FEI, 2007 disponível em <http://www.fei.edu.br/~rbianchi/robotica/ROBOTICA-MS-
04-A-Cinematica Direta.pdf> acessado em 10/08/2007
CARRARA, Valdemir. Apostila de Robótica, Universidade de Braz Cubas, Mogi das
Cruzes – SP, 2007. Disponível em <www.dem.inpe.br/~val/cursos/rb_apostila.pdf>
Acessado em 10/08/2007.
GOZZI, Giuliano. Curso Automação Industrial Aula 2 – Estrutura e características
Gerais dos Robôs. Notas de aula FATESP – Faculdade de Tecnologia Álvares de
Azevedo. São Paulo Disponível em <http://www.faatesp.edu.br/publicacoes/aula3.pdf >
acessado em 12/05/2006.
GROOVER, M. P.; ODREY, N. G ; WEISS, M.; Nagel, R. N. Industrial Robotics:
Technology, Programming, and Applications. McGraw-Hill Higher Education, 1986.
IRIGOITE, Adriano M., Projeto de Hardware para o controle de uma plotter de
pincel. Trabalho de Conclusão de curso Engenharia de Computação Universidade do
Vale do Itajaí, São José, 2006.
KAUTZMANN, Gabriel. Projeto e construção de um ambiente computacional para
simulação de robôs manipuladores. Trabalho de Curso de Conclusão de Curso
Ciência da Computação. Universidade do Vale do Itajaí, São José, 2005.
LAGES, Walter F. Descrições e Transformações Espaciais. Notas de Aulas do
Programa de Pós-Graduação em Engenharia Elétrica. Universidade do Rio Grande do
Sul – RS, Brasil disponível em <http://www.ece.ufrgs.br/~fetter/ele00070/spatial.pdf>
acessado em 30/09/2007.
MACIEL, A.; ASSIS, G. A.; DORNELES, R. V. Modelagem, Visualização e
Simulação de Manipuladores Mecânicos. In Conferencia Latinoamericana em
Informática. Assunción, 1999.
MICROCHIP, PIC16F877A datasheet. 2003. Disponível em
<http://ww1.microchip.com/downloads/en/DeviceDoc/39582b.pdf>. Acesso em: 7 de
novembro de 2007.
OGATA, Katsuhiko. Engenharia de Controle Moderno, Pearson Brasil, 4ª.
Edição,2003.
OLIVEIRA, André Schneider. Estudo de Robótica Fixa e Desenvolvimento de um
Manipulador Industrial Didático. Trabalho de Conclusão de Curso Engenharia de
Computação da Universidade do Vale do Itajaí, São José, 2004.
PIRES, J. Norberto. Das máquinas gregas à moderna robótica industrial.
Departamento de Engenharia Mecânica da Universidade de Coimbra, Portugal, 2002.
Disponível em
<http://robotics.dem.uc.pt/norberto/publico/gregosxxi_final.pdf>. Acesso em
08/05/2006.
RIVIN, Eugene I. Mechanical Desing of Robots, McGraw Hill Book Company, New
York, 1988.
ROMANO, Victor Ferreira. Robótica Industrial – Aplicação na indústria de
manufatura e de processos. São Paulo. Editora Edgard Blücher Ltda, 2002.
SANTOS, Vitor M. F. Robótica industrial. Notas de Aula Mestrado Integrado em
Engenharia Mecânica/Mestrado em Engenharia de Automação Industrial. Departamento
de Engenharia Mecânica da Universidade de Aveiro, Portugal: 2002. Disponível em
<http://www.mec.ua.pt/activities/disciplinas/RoboticaIndustrial/GuiaoRoboticaIndustria
l2001-2002.pdf>. Acesso em: 11/06/2007.
SCIAVICCO, Lorenzo. SILICIANO, Bruno. Modeling and control of robot
manipulators. The McGrraw-Hill International Editions, Inc. 2000.
STMicroeletronics, datasheet Dual full-bridge driver, 2000 disponível em
<http://www.st.com/stonline/books/pdf/docs/1773.pdf>acessado 07/07/2008
TOURINO, Sérgio. R. G. Guiagem do robô móvel para Inspeção de Tubulações
Industriais Soldadas via Internet, Relatório de Projeto de Graduação, 1999,
disponível em <http://graco.unb.br/~tourino/xr4000/parcial.html> acessado em
30/09/2007.
ZHAI, S.; MILGRAM, P. Human Robot Synergism and Virtual Telerobotic
Control. Proc. HFAC. Canadá. 1992.
ZORZI, Cleber. Controlador PID Digital de Velocidade de um Motor de Corrente
Contínua. Trabalho de Conclusão de Curso, do Curso de Engenharia de Computação.
Universidade São Francisco. Itatiba - São Paulo, 2004. Disponível em
<http://www.usf.br/cursos/graduacao/producao_download.asp?arquivo=91>. Acesso em
10/06/2007.
ANEXOS