projeto de um protÓtipo de um manipulador …siaibib01.univali.br/pdf/rodrigo hungria...

67
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

Upload: trankhanh

Post on 08-Nov-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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

Page 2: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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

Page 3: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 4: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 5: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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

Page 6: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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

Page 7: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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í

Page 8: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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

Page 9: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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

Page 10: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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

Page 11: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 12: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 13: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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

Page 14: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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

Page 15: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 16: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 17: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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

Page 18: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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

Page 19: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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:

Page 20: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

• 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

Page 21: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 22: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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).

Page 23: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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)

Page 24: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 25: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 26: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 27: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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

Page 28: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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)

Page 29: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 30: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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)

Page 31: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 32: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 33: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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)

Page 34: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 35: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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;

Page 36: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

• 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.

Page 37: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 38: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 39: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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)

Page 40: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 41: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 42: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 43: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 44: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 45: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 46: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 47: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 48: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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-).

Page 49: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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 é

Page 50: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 51: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 52: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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

Page 53: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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;

Page 54: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

// 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.

Page 55: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 56: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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

Page 57: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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° .

Page 58: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 59: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 60: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 61: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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

Page 62: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

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.

Page 63: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade

ANEXOS

Page 64: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade
Page 65: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade
Page 66: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade
Page 67: PROJETO DE UM PROTÓTIPO DE UM MANIPULADOR …siaibib01.univali.br/pdf/Rodrigo Hungria Martins.pdf · Computação) – Centro de Ciências e Tecnológicas da Terra e Mar. Universidade