104
ALEX ARCHELA ARQUITETURA EMBARCADA REATIVA DE HARDWARE E SOFTWARE PARA CONTROLE DE ROBÔ MÓVEL AUTÔNOMO Londrina 2014

ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

  • Upload
    vuthuy

  • View
    218

  • Download
    3

Embed Size (px)

Citation preview

Page 1: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

ALEX ARCHELA

ARQUITETURA EMBARCADA REATIVA DE HARDWARE E

SOFTWARE PARA CONTROLE DE ROBÔ MÓVEL

AUTÔNOMO

Londrina 2014

Page 2: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

ALEX ARCHELA

ARQUITETURA EMBARCADA REATIVA DE HARDWARE E

SOFTWARE PARA CONTROLE DE ROBÔ MÓVEL

AUTÔNOMO

Trabalho de Conclusão de Curso apresentado ao Departamento de Engenharia Elétrica da Universidade Estadual de Londrina, como requisito parcial à obtenção do título de Bacharel em Engenharia Elétrica. Orientador: Prof. Dr. Leonimer Flávio de Melo

Londrina 2014

Page 3: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

ALEX ARCHELA

ARQUITETURA EMBARCADA REATIVA DE HARDWARE E

SOFTWARE PARA CONTROLE DE ROBÔ MÓVEL

AUTÔNOMO

Trabalho de Conclusão de Curso apresentado ao Departamento de Engenharia Elétrica da Universidade Estadual de Londrina, como requisito parcial à obtenção do título de Bacharel em Engenharia Elétrica.

BANCA EXAMINADORA

____________________________________ Orientador: Prof. Dr. Leonimer Flávio de Melo

Universidade Estadual de Londrina - UEL

____________________________________ Prof. Dr. Aziz Elias Demian Junior

Universidade Estadual de Londrina - UEL

____________________________________ Prof. Dr. Francisco Granziera Júnior

Universidade Estadual de Londrina - UEL

Londrina, 16 de novembro de 2014.

Page 4: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller
Page 5: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

AGRADECIMENTO (S)

Agradeço a Deus pela oportunidade de desenvolver este trabalho. À

meu orientador, prof. Dr. Leonimer Flávio de Melo, pela orientação. Gostaria de

agradecer também ao técnico de laboratório pelo suporte necessário para o

desenvolvimento deste trabalho.

Page 6: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

ARCHELA, Alex. Arquitetura Embarcada Reativa de Hardware e Software para Controle de Robô Móvel Autônomo. 2014. 101. Trabalho de Conclusão de Curso (Graduação em Engenharia Elétrica) – Universidade Estadual de Londrina, Londrina, 2014.

RESUMO

Neste trabalho apresentar-se-á o estudo e desenvolvimento do projeto físico de um veículo terrestre autônomo, bem como o desenvolvimeto de um software capaz de fazer os tratamentos de dados necessários para que cada sensor trabalhe em comum acordo para o funcionamento deste. O desafio proposto a este projeto, foi construir um código capaz de reagir ao ambiente de forma que pudesse ser utilizado para desenvolvimento de robôs móveis de baixo custo. Portanto os recursos implementados no projeto são os menores possíveis, de forma que este reconhecimento ainda possa ser feito de forma satisfatória. Serão apresentados, ainda, as técnicas utilizadas para a construção do protótipo, comentando-se os resultados positivos e negativos de cada etapa até a obtenção do protótipo final. O veículo criado neste trabalho possui tanto o sistema de detecção de obstaculos, como um controle de velocidade de baixo custo baseado no controlador PID, de forma a possibilitar uma trajetória próxima da linear para o deslocamento do veículo. Palavras-chave: Robótica móvel. Controlador PID. PIC18F452. Sistema Embarcado. Veículo Terrestre Autônomo.

Page 7: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

ARCHELA, Alex. Embedded Reactive Architecture of Hardware and Software to Control Autonomous Mobile Robotics. 2014. 101. Trabalho de Conclusão de Curso (Graduação em Engenharia Elétrica) – Universidade Estadual de Londrina, Londrina, 2014.

ABSTRACT

In this work will be presented the study and development of the physic project of a autonomous terrestrial vehicle and the development of a software capable of do the treatment of necessary data so that each sensor works in concert for the operation of this prototype. The challenge posed to this project was to build a code capable of react to the ambient so that could be used to development a low cost mobile vehicle. Therefore, the resources implemented on this project are the smallest possible, such that this recon still can be made with a satisfactory way. Will be presented, yet, all the techniques used for the construction of the prototype, commenting the results positives and negatives for each step until obtain the final prototype. The vehicle build of this work has both the obstacle detection system as a low-cost speed control, based on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller. PIC18F452. Embedded System. Autonomous Land Vehicle.

Page 8: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

LISTA DE ILUSTRAÇÕES

Figura 2.1 – Robôs móveis Flo (esquerda) e Pearl (centro e direita), desenvolvidos

pelo projeto Nursebot ............................................................................................... 16

Figura 2.2 – Cadeira de rodas, iBot, desenvolvida pela parceria entre DEKA e

Johnson and Johnson’s Independence Technology ................................................. 17

Figura 2.3 – Aspirador de pó, Trilobite, desenvolvido pela Electrolux ..................... 18

Figura 2.4 – AIBO, robô móvel de entretenimento, desenvolvido pela Sony ........... 18

Figura 2.5 – R-Gator, veículo militar autônomo desenvolvido pela parceria entre

iRobot Corporation e John Deere ............................................................................. 19

Figura 2.6 – Inspector Bot, robô móvel autônomo desenvolvido pela Eventronic para

inspeção de tubos .................................................................................................... 19

Figura 2.7 – CleanBot, robô móvel autônomo desenvolvido pela Eventronic para

limpeza de tubos ...................................................................................................... 20

Figura 2.8 – Modelo de robô móvel com rodas acionado por tração diferencial ..... 20

Figura 2.9 – Planos de referência global e local do robô ......................................... 22

Figura 2.10 – Sistema de controle de velocidade de um motor DC ......................... 27

Figura 2.11 – Circuito equivalente do controle de um motor usando o método de

controle de tensão na armadura ............................................................................... 29

Figura 2.12 – Diagrama de blocos do sistema de controle de um motor DC por

controle da tensão de armadura. .............................................................................. 31

Figura 2.13 – Sinal PWM com diferentes razões cíclicas ........................................ 32

Figura 2.14 – Diagrama de blocos do método analógico de geração de PWM ....... 35

Figura 2.15 – Circuito analógico gerador de sinal triangular dente-de-serra ........... 35

Figura 2.16 – Circuito de ponte H com operação nos quatro quadrantes ............... 37

Figura 2.17 – Operação do primeiro quadrante da ponte H com tensão e corrente

positivas, sobre a carga ........................................................................................... 38

Figura 2.18 – Operação do primeiro quadrante da ponte H com tensão igual a zero,

sobre a carga ........................................................................................................... 39

Figura 2.19 – Operação do segundo quadrante com tensão negativa e corrente

positiva, sobre a carga ............................................................................................. 40

Figura 2.20 – Modo de operação do terceiro quadrante com a corrente sobre a

carga aumentando ................................................................................................... 41

Figura 2.21 – Modo de operação do terceiro quadrante com a corrente sobre a

Page 9: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

carga diminuindo ...................................................................................................... 41

Figura 2.22 – Circuito esquemático do funcionamento interno do CI L298 ............. 42

Figura 2.23 – Diagrama esquemático de blocos do controlador PID aplicado ........ 47

Figura 2.24 – Diagrama esquemático da implementação do controlador PID ......... 49

Figura 2.25 – Esquemático de funcionamento de um encoder óptico ..................... 50

Figura 2.26 – Esquemático das arquiteturas de Von Neumann e Harvard .............. 54

Figura 2.27 – Esquemático de montagem do circuito para utilização de um cristal

como entrada de clock no PIC18FXX2 .................................................................... 57

Figura 3.1 – Plataforma do robô móvel vista de baixo ............................................. 59

Figura 3.2 – Roda tipo castor usada no protótipo .................................................... 60

Figura 3.3 – Roda de tração do protótipo ................................................................ 61

Figura 4.1 – Primeiro modelo de alimentação, composto por pilhas alcalinas AA ... 63

Figura 4.2 – Alimentação por seis pilhas recarregáveis e três capacitores de

estabilização de tensão ............................................................................................ 64

Figura 4.3 – Alimentação realizada por baterias recarregáveis de celular e regulação

de tensão de alimentação do PIC realizada pela ponte H ........................................ 65

Figura 4.4 – Módulo de ponte H com CI L298N e dissipador de calor .................... 67

Figura 4.5 – Encoder óptico acoplado ao disco com ranhuras ................................ 68

Figura 4.6 – Disco com ranhuras para sensor de velocidade .................................. 69

Figura 4.7 – Módulo sensor de distância ................................................................. 70

Figura 4.8 – Motores de tração do protótipo ............................................................ 71

Figura 4.9 – Esquemático do circuito de utilização do microcontrolador ................. 72

Figura 4.10 – Placa do microcontrolador ................................................................. 73

Figura 5.1 – Fluxograma de funcionamento do programa do robô .......................... 74

Figura 6.1 – Robô móvel autônomo ........................................................................ 81

Page 10: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

LISTA DE TABELAS

Tabela 2.1 – Regra de Zigler-Nichols ...................................................................... 49

Tabela 2.2 – Valores dos capacitores para oscilação do cristal de clock ................ 57

Page 11: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

LISTA DE ABREVIATURAS E SIGLAS

PC Personal computer

DC Direct current

AC Alternating current

PID Proporcional integral derivativo

PIC Programmable Interface Controller

NASA National Aeronautics and Space Administration

PWM Power width modulation

CI Circuito integrado

DSP Digital signal processor

VLSI Very large scale integration

ASIC Application specific integrated circuit

ANSI American national standards institute

RAM Random access memory

EEPROM Electrically erasable programmable read only memory

RISC Reduced instruction set computer

CISC Complex instruction set computer

USART Universal synchronous asynchronous receiver transmitter

TTL Transistor-transistor logic

LED Light emitting diode

GND Ground

Page 12: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

SUMÁRIO

1 INTRODUÇÃO .......................................................................................... 12

1.1 DESCRIÇÃO DO PROJETO ............................................................................. 12

1.2 OBJETIVOS .................................................................................................. 13

1.3 JUSTIFICATIVA ............................................................................................. 13

2 REVISÃO BIBLIOGRÁFICA ..................................................................... 15

2.1 ESTADO DA ARTE ........................................................................................ 15

2.2 SISTEMA DE TRAÇÃO DIFERENCIAL ............................................................... 20

2.3 MODELAGEM CINEMÁTICA ............................................................................ 21

2.3.1 Referencial Local....................................................................................... 22

2.3.2 Cinemática Direta ...................................................................................... 23

2.3.3 Cinemática Indireta ................................................................................... 24

2.4 PARADIGMAS DAS ARQUITETURAS DE CONTROLE ........................................... 24

2.4.1 Paradigma Hierárquico .............................................................................. 25

2.4.2 Paradigma Reativo .................................................................................... 25

2.4.3 Paradigma Híbrido Deliberativo-Reativo ................................................... 26

2.5 SISTEMA DE CONTROLE ............................................................................... 26

2.6 MÁQUINAS ELÉTRICAS ................................................................................. 28

2.6.1 Motor Corrente Contínua ......................................................................... 28

2.6.1.1 Equivalente elétrico do motor DC série .................................................... 29

2.6.1.2 Função de transferência do motor DC ..................................................... 30

2.6.1.3 Problemas práticos do motor DC ............................................................. 32

2.7 PWM ......................................................................................................... 32

2.7.1 Circuito Gerador de PWM ......................................................................... 34

2.7.2 Módulo PWM no PIC18FXX2 .................................................................... 36

2.8 PONTE H..................................................................................................... 37

2.8.1 Operação do Primeiro Quadrante ............................................................. 38

2.8.2 Operação do Segundo Quadrante ............................................................ 39

2.8.3 Operação do Terceiro Quadrante ............................................................. 40

2.8.4 Operação do Quarto Quadrante ................................................................ 42

2.8.5 Ponte H L298N .......................................................................................... 42

2.9 CONTROLE .................................................................................................. 43

Page 13: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

2.9.1 Sistemas de Malha Aberta ........................................................................ 44

2.9.2 Sistemas de Malha Fechada ..................................................................... 44

2.9.3 Comparação Entre Sistemas de Malha Aberta e Fechada ....................... 44

2.9.4 Resposta Transitória e Estacionária .......................................................... 45

2.9.5 Controle para Motor DC ............................................................................ 45

2.10 PID ......................................................................................................... 46

2.10.1 Método de Ziegle-Nichols .......................................................................... 48

2.11 ENCODERS ÓPTICOS.................................................................................... 50

2.12 LINGUAGENS DE PROGRAMAÇÃO ................................................................... 51

2.12.1 Linguagem Assembly ................................................................................ 51

2.12.2 Compiladores ............................................................................................ 52

2.12.3 C ......................................................................................................... 52

2.13 PIC ......................................................................................................... 52

2.13.1 Arquiteturas dos Microcontroladores ......................................................... 53

2.13.2 RISC e CISC ............................................................................................. 54

2.13.3 Microcontroladores da Série PIC18F ........................................................ 55

2.13.3.1 Cristal ou ressonador cerâmico (XT) ........................................................ 56

2.13.3.2 Interrupções .............................................................................................. 58

2.14 ULTRASSOM HC-SR04 ................................................................................ 58

3 DESCRIÇÃO FÍSICA DO PROTÓTIPO .................................................... 59

3.1 MODELAGEM CINEMÁTICA ............................................................................ 61

3.2 PARADIGMA DAS ARQUITETURAS ................................................................... 62

4 HARDWARE ............................................................................................. 63

4.1 ALIMENTAÇÃO ............................................................................................. 63

4.2 PONTE H..................................................................................................... 65

4.3 SENSORES DE VELOCIDADE, SENSOR DE DISTÂNCIA E MOTORES .................... 67

4.3.1 Sensor de Velocidade ............................................................................... 68

4.3.2 Sensor de Distância .................................................................................. 69

4.3.3 Motores ..................................................................................................... 70

4.4 MICROCONTROLADOR .................................................................................. 71

5 SOFTWARE .............................................................................................. 74

Page 14: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

6 RESULTADOS OBTIDOS ........................................................................ 77

6.1 FUNCIONAMENTO ......................................................................................... 77

6.1.1 Detecção de Velocidade ........................................................................... 77

6.1.2 Correção da Velocidade ............................................................................ 79

6.1.3 Detecção de Obstáculos ........................................................................... 79

6.2 PROTÓTIPO COMPLETO ................................................................................ 80

7 CONCLUSÃO ........................................................................................... 83

REFERÊNCIAS......................................................................................... 84

APÊNDICES ............................................................................................. 87

APÊNDICE A – Rotina de frenagem e retorno .......................................... 88

ANEXOS ................................................................................................... 89

ANEXO A – Datasheet PIC18F452 ........................................................... 90

ANEXO B – Datasheet CI ponte-H L298N ................................................ 95

ANEXO C – Datasheet módulo HC-SR04 ................................................. 99

Page 15: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

12

1 INTRODUÇÃO

A robótica móvel é uma área de pesquisa que lida com o controle de

veículos autônomos ou semiautônomos. O que diferencia a robótica móvel de outras

áreas de pesquisa em robótica, tal como a robótica de manipuladores convencionais

e inteligência artificial é a sua ênfase nos problemas relacionados com a

compreensão de ambientes complexos de larga escala, isto é, regiões do espaço

que se modificam dinamicamente, compostos tanto de obstáculos estáticos como de

obstáculos móveis. Para operar de modo inteligente neste tipo de ambiente não

implica apenas em lidar com a aquisição incremental de conhecimento, a estimação

do erro de posição, a habilidade de reconhecer objetos e lugares importantes ou

familiares, e tempo de resposta real, mas também requer que todas estas funções

sejam executadas em conjunto. Este problema de ambientes complexos influencia

em todos robôs móveis (DUDEK & JENKIN, 2010).

1.1 DESCRIÇÃO DO PROJETO

O conteúdo deste trabalho se refere ao estudo e desenvolvimento do

projeto de um sistema de controle embarcado para um robô móvel. A platafroma

móvel trabalhada possui duas rodas tracionadas por motores DC independentes,

caracterizando um sistema por tração diferencial, e uma terceira roda do tipo castor,

posicionada fora do eixo, apenas para equilíbrio do protótipo.

O veículo autônomo desenvolvido possui capacidade de locomoção

para frente ou para trás. Este também possui um sistema de detecção de obstáculos

posicionados na frente do veículo, o qual reage evitando a colisão e modificando a

rota.

Um sistema de controle de velocidade do tipo PID foi implementado

para que o robô pudesse ter controle sobre à rota a ser traçada, este possibilita uma

movimentação aproximadamente retilínea do protótipo.

O erro de velocidade da protótipo é calculado sobre o eixo do motor,

por meio da utilização de um encoder óptico. Todos os dados são processados por

microcontrolador PIC18F452, fabricado pela Microchip Tecnology Inc..

A apresentação e análise dos resultados obtidos, assim como o

embasamento teórico, a metodologia, descrição detalhada do protótipo, hardware e

Page 16: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

13

software, serão comentados mais adiante neste trabalho.

1.2 OBJETIVOS

Os objetivos deste trabalho são estudar os processos e as

dificuldades envolvidas no desenvolvimento de um robô móvel autônomo.

Desenvolver um sistema embarcado de modo a possibilitar à plataforma capacidade

de locomoção frontal ou traseira controlada, ou seja, o resultado da movimentação

seja próximo o suficiente da rota desejada. Bem como, a detecção de objetos

(estáticos ou dinâmicos) posicionados à frete do veículo, de forma que este possa

evitar a colisão.

1.3 JUSTIFICATIVA

O surgimento da computação provou que a construção de máquinas

possibilita a execução de serviços que até então somente o homem era capaz de

fazer, de forma mais rápida e eficiente. As linhas de montagem automatizadas pelo

desenvolvimento da robótica de manipuladores deixa como prova estas vantagens

proporcionadas por estes estudos.

O estudo da robótica móvel não é diferente, projetos desenvolvidos

nesta área, como sondas robóticas, permitiram ao homem explorar e estudar com

mais detalhes planetas, com detalhes e por períodos que não seria vantajoso, ou

viável com a utilização de astronautas.

Entretanto, por mais que haja grandes estudos nesta área, os

protótipos desenvolvidos ainda não atingiram um grau de confiabilidade aliado ao

custo, que sejam interessantes para a comercialização em larga escala destes

objetos.

Outro ponto relevante ao estudo da robótica móvel é o rápido

desenvolvimento das tecnologias envolvidas no projeto deste, dentre as quais

podemos citar microprocessadores menores, mais leves e mais rápidos, sistemas de

comunicações sem fio capazes de sustentar o acompanhamento destes protótipos

sem conexões físicas, a busca por fontes energéticas mais eficientes, baterias de

maior duração, celulas combustível, entre outros. Estes fatores obrigam que as

pesquisas na área da robótica móvel sejam intermitentes, de forma que os projetos

Page 17: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

14

possam incorporar, à medida do possível, tecnologias mais novas e mais eficientes.

Este trabalho, estuda o protótipo composto por tração diferencial,

semelhante à modelagem cinemática de uma cadeiras de rodas. Acredita-se que

com o desenvolvimento de projetos nesta área, seja possível a adaptação para

protótipos de reintegração social, bem como, a longo prazo, veículos de tráfego

urbano mais seguros e eficientes, além de outras utilidades.

Page 18: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

15

2 REVISÃO BIBLIOGRÁFICA

A robótica móvel apresenta um alto grau de complexidade, a qual

pode envolver desde sistemas para tratamento de dados obtidos por sensores,

acionamento de motores, processadores, controladores, sistemas de potência,

interfaces, arquiteturas mecânicas, desenvolvimento de sensores ou mesmo de

fontes alternativas de alimentação. Devido à esse fator, robôs complexos são

usualmente desenvolvidos por equipes de pesquisa, a qual deve ser composta por

pesquisadores especializados em cada área.

Aliado à este fator, os robôs móveis são usualmente desenvolvidos

para execução de tarefas específicas, ou seja, o processo de adequação de um robô

móvel para uma tarefa diferente, exige uma mudança correspondente na arquitetura

do prototótipo, e por sua vez, uma alteração no projeto como um todo. Por este

motivo, a necessidade de execução de diferentes tarefas usualmente requerem a

contrução de um novo robô.

2.1 ESTADO DA ARTE

Nesta seção, será apresentado um breve histórico de alguns dos

protótipos de robôs móveis desenvolvidos pela comunidade científica, bem como

alguns produtos, desta área, existentes no mercado atual.

O interesse pela área da robótica móvel possui mais de 60 anos. Na

década de 50, Walter (1950) desenvolveu um protótipo capaz de seguir fontes

luminosas e “sentir” o caminho à ser traçado contornando o obstáculo (Walter,

1950).

Em Stanford, Nilsson (1969) desenvolveu o robô móvel SHARKEY, o

qual utilizava dois motores de passo em uma configuração cinemática diferencial

para se locomover, este, era equipado com sensores de distância, câmeras de vídeo

e sensores táteis além de ser conectado a dois computadores por links de rádio e de

vídeo. O robô SHAKEY utilizava programas para percepção, modelagem, e atuação

no ambiente. As tarefas desempenhadas pelo robô incluíam desviar de obstáculos e

detecção da movimentação de blocos coloridos. O robô móvel tinha grandes

dificuldades em processar e interpretar as informações sensoriais obtidas do

Page 19: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

16

ambiente e nunca foi capaz de completar uma seqüência completa de ações em um

ambiente real (Melo, 2007).

Segundo (Melo, 2007), novamente em Stanford, no final da década

de 70, Moravec (1990) desenvolveu outro robô móvel. A tarefa do robô era desviar

de obstáculos utilizando uma câmera de vídeo. O robô móvel CART conseguia

desviar dos obstáculos com sucesso, mas era muito lento e tinha problemas em se

localizar no ambiente necessitando de uma iluminação propícia para perceber os

obstáculos adequadamente. Também no final da década de 70 foi desenvolvido o

robô móvel HILARE em Toulouse, França (BRIOT, 1979). Este foi um dos primeiros

projetos de robô móvel desenvolvido na Europa. HILARE utilizava câmeras de vídeo,

sensores de distância a laser e ultrassom para navegar no ambiente. O

planejamento de trajetória era executado utilizando-se uma representação poligonal

do ambiente. Os sensores ultrassônicos eram utilizados para evitar os obstáculos

próximos. O sistema de visão era utilizado para detectar obstáculos distantes e tinha

a limitação de ser muito lento.

Em 1998, foi formada uma equipe multidisciplinar de três

universidades, dando origem ao projeto Nursebot (Pollack. et. al., 2002). O projeto

inicial tinha como objetivo desenvolver um robô móvel assistente para idosos. Em

três anos este grupo havia desenvolvido dois protótipos autônomos Flo (esquerda) e

Pearl (centro e direita) apresentados na figura 2.1.

Figura 2.1: Robôs móveis Flo (esquerda) e Pearl (centro e direita), desenvolvidos

pelo projeto Nursebot.

Fonte: Montemerlo et al. (2002, p. 588).

Page 20: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

17

Estes eram equipados com dois Pentium PCs, wireless Ethernet,

detectores de distância à laser SICK, sensores ultrassônicos, microfones para

reconhecimento de fala, caixas de som para síntese de fala, displays gráficos

sensíveis a toque, unidades centrais de atuação e sistemas de câmera stereo

(Montemerlo, 2002).

Em 2003, uma parceria entre a DEKA e Johnson and Johnson’s

Independence Technology desenvolveram uma cadeira de rodas motorizada

chamada iBOT (figura 2.2). Este robô móvel utilliza a tecnologia de um giroscópio, a

qual permite que ele se equilibre em apenas duas rodas, deste modo elevando o

assento. Com o sucessivo movimento de duas rodas sobre as outras duas, permitido

pelo iBOT, existe possibilidade do usuário subir escadas (Watanabe, 2009). Em

2009 a Johnson & Johnson retirou o produto das vendas e no final de 2013 o

suporte às unidades existentes também cessaram.

Figura 2.2: Cadeira de rodas, iBot, desenvolvida pela parceria entre DEKA e

Johnson and Johnson’s Independence Technology.

Fonte: http://en.wikipedia.org/wiki/IBOT.

Um aspirador de pó autônomo foi introduzido no mercado pela

Electrolux, no ano de 2001. Este produto, chamado Trilobite (figura 2.3), por

apresentar uma aparencia semelhante a um trilobita (artrópode característico do

Paleozóico), foi o primeiro aspirador de pó autônomo, comercialmente disponível. O

Trilobite possui a capacidade de mapear ambientes e evitar obstáculos, por meio de

sensores ultrassônicos e mais tarde infravermelho.

Page 21: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

18

Figura 2.3: Aspirador de pó, Trilobite, desenvolvido pela Electrolux.

Fonte: http://en.wikipedia.org/wiki/Electrolux_Trilobite

Na área de entretenimento, desenvolvido pela Sony, um robô de

estimação foi criado, chamado AIBO (figura 2.4). O primeiro protótipo foi anunciado

em meados de 1998 e o produto à venda foi lançado em maio de 1999. O primeiro

modelo lançado possuia um processador de 64-bits RISC, 16 Mbytes de RAM,

sensores de toque, câmera, distância, microfone, aceleração e velocidade angular,

auto-falante e atuadores na perna, pescoço, boca e cauda.

Figura 2.4: AIBO, robô móvel de entretenimento, desenvolvido pela Sony.

Fonte: http://en.wikipedia.org/wiki/AIBO#mediaviewer/File:AIBO_ERS111_210.jpg

O protótipo foi desenvolvido de forma ao robô adiquirir uma pseudo-

personalidade, de acordo com os estímulos recebidos, além de reconhecimento de

ambiente e comandos de voz para as línguas inglês, espanhol e japonês.

Page 22: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

19

Para operações militares a iRobot Corporation, juntamente com a

John Deere, desenvolveu a plataforma robótica não tripulada iRobot R-Gator (figura

2.5). Este veículo pode operar de modo autônomo patrulhando um perímetro ou

seguindo os pontos de passagem até chegar ao local previamente determinado.

Figura 2.5: R-Gator, veículo militar autônomo desenvolvido pela parceria entre

iRobot Corporation e John Deere.

Fonte: http://en.wikipedia.org/wiki/IRobot_R-Gator#mediaviewer/File:IRobot_John_Deere_R-

Gator.jpg

Este veículo que pesa aproximadamente 660 Kg, também possui

capacidade de seguir as tropas, ser operado à distância ou, caso necessário, ser

manualmente dirigido.

Modelos pequenos para inspeção e limpesa de tubos foram

desenvolvidos pela Eventronic, como é o exemplo do Inspector Bot (figura 2.6) e

CleanBot (figura 2.7).

Figura 2.6: Inspector Bot, robô móvel autônomo desenvolvido pela Eventronic para

inspeção de tubos.

Fonte: Secchi (2008, p. 8)

Page 23: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

20

Figura 2.7: CleanBot, robô móvel autônomo desenvolvido pela Eventronic para

limpeza de tubos.

Fonte: Secchi (2008, p. 8)

2.2 SISTEMA DE TRAÇÃO DIFERENCIAL

A tração diferencial consiste de duas rodas alinhadas em um eixo,

alimentadas por dois motores mecanicamente independentes. Este modelo

apresenta uma terceira roda, roda livre do tipo castor, posicionada sobre a reta

perpendicular, simétrico às rodas motorizadas, como pode ser observado na figura

2.8.

Figura 2.8: Modelo de robô móvel com rodas acionado por tração diferencial.

Fonte: Modificado de Melo (2007, p. 13).

Page 24: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

21

Este robô móvel é de simples estudo, porém possui uma grande

vantangem em termos de escalabilidade do sistema, i.e., uma vez desenvolvido o

controle para um protótipo de baixo custo, este pode ser facilmente adaptado para

sistemas mais robustos como sondas ou cadeida de rodas elétricas, sem alteração

no modelo de controle, nem cinemática.

Em contrapartida o robô móvel de tração diferencial possui um grau

de liberdade igual a dois, ou seja, este sistema não age de forma independente

sobre as variáveis de estado (x, y, θ) a que esse sistema está submetido (plano

horizontal), sendo necessária a utilização de manobras para realização de certas

trajetórias (Fierro & Lewis, 1998).

Para uma modelagem completa de um sistema robótico móvel, três

modelamentos são essenciais. Cinemático, determina a função de transferência das

variáveis que denominam a posição no ambiente a qual o robô está submetido, em

relação ao seu grau de liberdade de movimento. Dinâmico, são acrescentadas

consideração da massa e forças que agem sobre o sistema, gerando restrições no

sistema (Melo, 2007). Por fim, controle, este define trajetórias as quais a plataforma

móvel poderá se deslocar dentro do ambiente a que está submetida.

Abordagens mais específicas de um robô móvel sugerem a divisão

da modelagem cinemática e dinâmica em dois grupos cada. Os quais são o modelo

cinemático de estado (propriedades de capacidade de manobra do robô), a

configuração do modelo cinemático(teoria de sistemas não holonômicos), a

configuração do modelo dinâmico (descrição completa do sistema dinâmico) e o

modelo dinâmico de estado (resposta equivalente da configuração do modelo

dinâmico) (Campion, 1996).

2.3 MODELAGEM CINEMÁTICA

A cinemática é o estudo mais básico de modelos robóticos, esta

modelagem permite um entendimento prévio teórico de como o robô móvel poderá

se movimentar dadas as suas características mecânicas. Este estudo, comum

dentro da mecatrônica, não é especifico para robôs móveis. Manipuladores robóticos

são assuntos de pesquisas a mais de 30 anos (Melo, 2007).

Entretando existe uma diferença básica entre o estudo da cinemática

de sistemas robóticos móveis e manipuladores. Manipuladores estão fixos a um

Page 25: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

22

determinado ponto do ambiente, limitando sua movimentação ao conjunto de

movimentos possíveis de cada junta, enquanto robôs móveis se movimentam dentro

de um ambiente sem qualquer tipo de ligação física ao seu ponto de partida.

Existem dois tipos de cinemática a serem estudas, a direta e a

inversa.

2.3.1 Referencial Local

Antes de abordarmos os conceitos de cinemática direta e inversa

discutiremos o modelamento matemático que possibilita o cálculo da razão entre as

velocidades em relação ao referencial inicial global e o referencial local.

Para se calcular o vetor velocidade instantânea global (𝜉𝑓), em

relação ao vetor velocidade instantâneas local é preciso primeiramente definir o

referencial local a ser adotado, este, pode ser observado na figura 2.9.

Figura 2.9: Planos de referência global e local do robô.

Fonte: Melo (2007, p. 11).

Page 26: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

23

É importante enfatizar que o referencial móvel adotado para esse

estudo está posicionado sobre o ponto P da figura 2.9, i.e, o ponto médio do eixo

que passa pelas rodas motorizadas. Desta forma, podemos definir os vetores

velocidade intantânea relativa a cada referencial como:

𝜉𝐼 = [

θ

] ∴ 𝜉𝑅 = [

𝑅

𝑅

θ𝑅

]

(2.1)

Para se descrever o movimento do veículo em termos de suas

variáveis cinemáticas é preciso mapear o movimento ao longo dos eixos de

referência global em relação ao movimento ao longo dos eixos de referência local do

móvel. O mapeamento deve ser em função do posicionamento do móvel e dado em

função da matriz de rotação ortogonal (Cruz, 2007).

𝑅(θ) = [

cos θ sen θ 0− sen θ cos θ 0

0 0 1]

(2.2)

Onde θ é o ângulo formado entre a referência global e a referência

móvel adotada, deste modo substituindo (1) em (2) obtemos:

[

𝑅

𝑅

θ𝑅

] = [cos θ sen θ 0

− sen θ cos θ 00 0 1

] [

θ

]

(2.3)

2.3.2 Cinemática Direta

O estudo da cinemática direta, permite estimar o vetor velocidade

instantânea final do veículo em relação ao referencial inercial global (𝜉𝑓), a partir dos

valores locais de velocidade angular de rotação dos motores, distância entre rodas e

diâmetro delas.

Para determinação da cinemática direta do robô de tração diferencial

é preciso reescrever a equação de determinação de velocidades em relação ao

referencial global em função das variáveis conhecidas, i.e., o diâmetro de cada roda

Page 27: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

24

(D), a distância entre rodas (L) e velocidade angular de cada roda (𝜙1 e 2) (Melo,

2007):

[

θ

] = 𝐹𝑇−1 [0] = [

cos θ − sen θ 0sen θ cos θ 0

0 0 1]

[ 𝐷

2(𝜙1 + 2)

0𝐷

𝐿(𝜙1 − 2)]

(2.4)

2.3.3 Cinemática Indireta

A cinemática inversa é o processo contrário à direta, ou seja,

escolhe-se um ponto alvo ou uma trajetória a que o robô deverá percorrer, então

defini-se o processo de manobras a que o sistema móvel será submetido para

execução desta tarefa.

2.4 PARADIGMAS DAS ARQUITETURAS DE CONTROLE

Para o desenvolvimento de robôs móveis complexos, é essencial

definir uma arquitetura de controle. Esta deve englobar diferentes módulos de

harware e software, determinar como estes módulos deverão ser implantados, bem

como formalizar a relação entre eles. O processo de instanciação de uma arquitetura

é conhecido como organização de controle (Britto, 2008).

As arquiteturas de controle podem divididas em três paradigmas

principais. Estas são paradigma hierárquico, paradigma reativo e paradigma híbrido

deliberativo-reativo. São duas as abordagens para descrever estes paradigmas

(Britto, 2008):

Relação entre as primitivas sentir, planejar e agir. Sentir,

corresponde à recepção e análise dos dados captados pelos sensores. Planejar,

está relacionado à produção de funções que o robô decide executar, como escolher

trajetos. Agir, se relaciona com movimentação do protótipo ou produzir comandos

para outros atuadores.

Modo como os dados sensoriais são processados e distribuidos no

sistema. Os dados dos sensores podem ser processados independentemente para

cada função do robô ou então, capta-se toda a informação sensorial e depois, se

Page 28: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

25

processa a informação em um modelo global.

2.4.1 Paradigma Hierárquico

O paradigma hierárquico funciona de forma sequencial e organizada

(Britto, 2008). Primeiramente o robô capta todos os sinais possíveis pelos seus

sensores, em seguida ele organiza as informações processando elas de uma forma

global, criando o que é chamado modelo de mundo, em seguida há um

planejamento das possíveis ações e escolha da próxima tarefa, para, por fim, agir

realizando a diretiva.

Este modelo é adotado pela arquitetura NASREM (NASA Standart

Reference Model for Telebot Control System Architectures) [Albus et al., 1989].

Dentre as vantagens do paradigma hierárquico existe a precisão oferecida pelo

modelo de mundo para ambientes estáticos e capacitade de movimentos mais

complexos, entretanto há um grande gasto computacional e uma pequena robustez

para ambientes dinâmicos.

2.4.2 Paradigma Reativo

O paradigma reativo age de forma a responder a estimulos do

ambiente, sendo esta reação processada concorrentemente ou sequencialmente. O

acesso aos sensores são feitos de maneira independente para cada camada, sendo

que se uma delas deixar de funcionar as outras ainda continuam operando

normalmente.

Para o paradigma reativo, podemos dizer que não existe o

componente planejar, ficando este restrito a sentir o ambiente e reagir aos estímulos.

Dentre as arquiteturas que utilizam este modelo podemos citar Subsunção [Brooks,

1986], a baseada em Campos Potenciais [Murphy, 2000] e a arquitetura que será

apresentada mais adiante neste trabalho.

Este paradigma apresenta como vantagem a rápida execução do

sistema e rápida resposta a estímulos externos, tornando esta arquitura mais

robusta para ambientes dinâmicos, porém a inexistência de plajamento impossibilita

a execução de tarefas complexas.

Page 29: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

26

2.4.3 Paradigma Híbrido Deliberativo-Reativo

O paradigma híbrido age em duas etapas. Primeiro há um

planejamento da tarefa a ser cumprida em seguida o robô age para o cumprimento

desta tarefa, simultaneamente reagindo aos estímulos do ambiente captados pelos

seus sensores. Após o cumprimento da tarefa cria-se um novo planejamento.

Este modo possui a vantagem do planejamento ser independente da

parte sensorial e funções de ação, ou seja, este modelo alia a precisão e

possibilidade de tarefas complexas, do paradigma hierarquico, com o rápido

processamento de mudanças súbitas do ambiente, do paradigma reativo.

Pela aparente vantagem deste método existem diversas arquiteturas

que seguem este paradigma, dentre elas podemos citar AuRa [Arkin et al., 1987],

PyramidNet [Roisenberg et al., 2004], 3-Tiered [Bonasso et al., 1997], Saphira

[Konolige & Myers, 1998], dentre outras.

2.5 SISTEMA DE CONTROLE

Além das limitações constatadas por meio da análise da modelagem

cinemática e dinâmica existe um terceiro fator a ser considerado para o

funcionamento satisfatório de um protótipo móvel autônomo. Este fator é chamado

sistema de controle.

Os controladores de tragetória podem ser projetados como

controladores dinâmicos, ou cinemáticos. Nos controladores dinâmicos o modelo

dinâmico do robô deve ser obtido experimentalmente, cujos parâmetros variam

conforme mudanças estruturais, ou variação do peso. Nos controladores cinemáticos

(utilizados neste trabalho) determina-se a velociadade de referência para os eixos,

que serão aplicadas pelo controlador de velocidade (Borges, 2003).

Um sistema de variação de velocidade moderno precisa ter quatro

componentes (Krishnan, 2001):

Máquinas elétricas: Motores AC síncronos ou assíncronos ou

motores DC.

Conversores de potência: Retificadores, PWM, Inversores ou

cicloconversores.

Controladores: Estes são projetados de acordo com as

Page 30: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

27

especificações dos motores e conversores, de modo a

obedecer às especificações de projeto.

Carga: Juntas, rodas, esteiras, entre outros.

A não linearidade e a não igualdade entre os motores utilizados no

sistema de tração do robô móvel acarretam dois dos grandes problemas dos

sistemas de controle. Para a análise deste complexo estudo, far-se-á uso do sistema

de controle ilustrado na figura 2.10, para análise de cada componente sob a ótica do

surgimento, problemas acarretados, e possíveis soluções para a não linearidade e

não igualdade nos robôs móveis de tração diferencial.

Figura 2.10: Sistema de controle de velocidade de um motor DC.

Fonte: Adaptado de Bhagat & Bhaganagare (2009, p. 1).

O diagrama de blocos do sistema de controle de velocidade de um

motor DC é mostrado na figura 2.10. A velocidade do motor é obtida por um

comutador óptico e convertido em nível de tensão ou então, este sinal pode ser

entendido como frequência de rotação do motor por um microcontrolador.

A velocidade obtida é então comparada com a velocidade de

referência. O controle PID, então age no sinal de erro e gera um controle de

velocidade apropriado. O bloco do gerador PWM, então varia o ciclo ativo da tensão

de alimentação do motor, reajustando a velocidade (Bhagat & Bhaganagare, 2009).

Page 31: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

28

2.6 MÁQUINAS ELÉTRICAS

As máquinas elétricas usadas atualmente nas aplicações para

controle de velocidade são as seguintes:

Máquinas DC: Paralelo, série, composto, motores DC

excitados separadamente e máquinas de relutância

comutada.

Máquinas AC: Indução, síncrono de rotor enrolado, síncrono

de campo permanente, relutância síncrona e máquinas de

relutância comutada.

Máquinas especiais: Máquinas de relutância comutada.

Neste trabalho, entretanto trataremos apenas do estudo de motores

DC.

2.6.1 Motor Corrente Contínua

Máquinas de corrente contínua tem sido utilizadas a mais de um

século, porém com o surgimento de motores de indução estas perderam seu

espaço, devido a fatores tais como alto custo.

Com o advento dos retificadores controlados, como por exemplo

transistores bipolares, e facilidade de controle de velocidade oferecida por estes

componentes, esse motores tiveram uma grande volta na utilização industrial

(Krishnan, 2001).

Os motores DC tem sido muito utilizados na área de controle

industrial a um longo tempo, pois estes apresentam um alto torque inicial, uma alta

resposta de performance e facilidade de se implementar um sistema de controle. A

velocidade (em rpm) de um motor DC é dada pela relação (Singh et al., 2013):

𝑁𝑟 =𝑉 − 𝐼𝑎. 𝑅𝑎

𝑘𝜑

(2.5)

Onde V é a tensão de alimentação, 𝑅𝑎 e 𝐼𝑎 são respectivamente a

resistência e a corrente de armadura e 𝜑 o fluxo de campo. A potência, tensão e

velocidade fornecidas pela placa de identificação do motor são valores nominais, ou

Page 32: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

29

seja, para modo de operação contínuo após a estabilização do sistema. O torque de

eixo (𝑇0) da máquina é calculado, a partir da potência nominal (𝑃0), como (Krishnan,

2001):

𝑇0 = 𝑃0. 745.6

𝜔𝑚 [𝑁.𝑚]

(2.6)

𝜔𝑚 = 2𝜋𝑁𝑟

60 [𝑟𝑎𝑑/𝑠𝑒𝑐]

(2.7)

O cálculo da eficiência do motor é dado pela equação (2.8):

𝜂 = 𝑃0

𝑃𝑖

(2.8)

Este cálculo é importante para se estimar as perdas de energia

inerentes aos componentes de um robô, sem que haja algum trabalho realizado pelo

mesmo.

2.6.1.1 Equivalente elétrico do motor DC série

O circuito elétrico que representa o motor DC série com as

características citadas acima está ilustrado na figura 2.11.

Figura 2.11: Circuito equivalente do controle de um motor usando o método de

controle de tensão na armadura.

Fonte: Huang & Lee (2008, p. 401).

Page 33: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

30

Onde 𝑅𝑎, 𝐼𝑎, e V (𝑒𝑎) são elementos da equação (2.5) e

correspondem respectivamente à resistência e corrente de armadura e tensão de

alimentação. Ainda, 𝐿𝑎 é a autoindutância de armadura, 𝐼𝑓 é a corrente de campo, 𝑒𝑏

é a força eletromagnética de volta na armadura, T o torque de saída do motor, ω é a

velocidade angular do rotor, J o momento de inércia equivalente do eixo do motor

mais carga e B o coeficiente de fricção do eixo do motor mais carga.

2.6.1.2 Função de transferência do motor DC

Motores DC possuem a capacidade de controle de velocidade, o que

resulta na possibilidade de alterar a velocidade, o torque ou mesmo a direção de

rotação deste, idealmente, a qualquer momento.

Para efetuar o controle de velocidade, deve-se primeiro obter a

função de transferência do motor. Pode-se obter esta função por meio da análise do

circuito equivalente do motor. Como a força eletromagnética equivalente de volta no

motor (𝑒𝑏) é diretamente proporcional à velocidade angular do rotor (ω) (Huang &

Lee, 2008).

𝑒𝑏(𝑡) = 𝐾𝑏

𝑑𝜃(𝑡)

𝑑𝑡= 𝐾𝑏 . ω(t)

(2.9)

Usando a lei de Kirchhoff para a malha temos:

𝑒𝑎(𝑡) = 𝑅𝑎𝑖𝑎(𝑡) + 𝐿𝑎

𝑑𝑖𝑎(𝑡)

𝑑𝑡+ 𝑒𝑏(𝑡)

(2.10)

Aplicando a lei de Newton no torque do motor obtém-se:

𝑇𝑚(𝑡) = 𝐽𝑑2𝜃(𝑡)

𝑑𝑡2+ 𝐵

𝑑𝜃(𝑡)

𝑑𝑡= 𝐾𝑡𝑖𝑎(𝑡)

(2.11)

Calcula-se a transformada de Laplace para as equações (9), (10) e

(11), respectivamente, desta forma:

Page 34: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

31

𝐸𝑏(𝑠) = 𝐾𝑏Ω(𝑠) (2.12)

𝐸𝑎(𝑠) = (𝑅𝑎 + 𝐿𝑎𝑠)𝐼𝑎(𝑠) + 𝐸𝑏(𝑠) (2.13)

𝑇𝑚(𝑠) = 𝐵Ω(𝑠) + 𝐽𝑠Ω(𝑠) = 𝐾𝑇𝐼𝑎(𝑠) (2.14)

O modelo matemático da função de transferência de um motor DC é

ilustrado na figura 2.12.

Figura 2.12: Diagrama de blocos do sistema de controle de um motor DC por

controle da tensão de armadura.

Fonte: Huang & Lee (2008, p. 402).

Deste modo, como observado na figura 2.12 a função de

transferência do motor DC pode ser obtida como:

𝐺(𝑠) =Ω(𝑠)

𝐸𝑎(𝑠)=

𝐾𝑇

(𝑅𝑎 + 𝐿𝑎𝑠)(𝐽𝑠 + 𝐵) + 𝐾𝑏𝐾𝑇

(2.15)

Uma vez que se possua as especificações e a função de

transferência do motor, é possível contruir um sistema controlado capaz de ajustar a

tensão de entrada de tal modo que a frequência angular de saída do motor esteja

adequada às necessidades do projeto.

Page 35: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

32

2.6.1.3 Problemas práticos do motor DC

O motor DC é um componente não linear sua velocidade varia com a

mudança de demanda de carga, disturbios, etc. Além de que o torque varia muito

com a velocidade, partindo do máximo torque (velocidade zero) até zero (velocidade

de rotação sem carga alguma) (Jayavishrutha et al., 2014).

Somado à não linearidade dos motores, temos que os fatores

internos de um motor para outro mudam, i.e., os valores dos componentes do

circuito elétrico equivalente é diferente de um motor para outro e por consequência,

sua função de transferência. Alterando-se a velocidade de estabilização para as

mesmas tensões de entrada.

2.7 PWM

No caso de um único estado AC ou DC de conversão de

alimentação, controladores por controle de fase são usados para acionar máquinas

DC. Entretanto, sempre que a fonte for uma tensão DC constante, como uma

bateria, utiliza-se um tipo diferente de conversão de uma tensão fixa para uma

variável e por consequência realizar o controle de velocidade do motor DC. Esse

controle é feito comutando a fonte de alimentação entre ligado e desligado

(Krishnan, 2001).

O conversor capaz de realizar tal tarefa é chamado PWM (Pulse

Width Modulator), ou modulador por largura de pulso. O PWM é um circuito que gera

uma forma de onda quadrada para uma fonte de tensão de alimentação constante.

Figura 2.13: Sinal PWM com diferentes razões cíclicas.

Fonte: http://kababaka.com/artykuly/sciemnianie-led/

Page 36: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

33

Com o auxílio do sinal PWM ilustrado na figura 2.13, podemos

enfatizar três informações importantes sobre este sinal, a amplitude do pulso, a

frequência do sinal e a razão cíclica.

A amplitude do pulso de PWM é igual a tensão fornecida pela fonte

de alimentação menos as perdas internas do circuito gerador de PWM. Esta tensão

é a tensão que irá prover a velocidade máxima para o motor, quando não há

modulação, i.e., o motor está sob alimentação direta da fonte de tensão constante.

A frequência de operação do sinal (𝑇−1), que não se altera nos

sinais da figura 2.13, é obtida da seguinte forma:

𝑓𝑐 = 1

𝑡𝑜𝑛 + 𝑡𝑜𝑓𝑓 =

1

𝑇

(2.16)

Onde 𝑡𝑜𝑛 é tempo em que o sinal está ligado e 𝑡𝑜𝑓𝑓 o tempo em que

o sinal está desligado (Krishnan, 2001). A frequência de operação do sinal PWM não

tem efeito direto sobre a velocidade do motor, porém existem dois elementos

importantes a serem considerados quanto à sua escolha.

Para frequências baixas, o sinal médio sobre o motor DC é igual ao

de frequências altas, porém o tempo do ciclo ativo, ou reativo começam a ser

observáveis. Para casos extremos de frequência baixas o motor será acionado à

velocidade máxima e em seguida desligado até parar.

Sugere-se que a frequência de operação deva ser elevada de forma

que o motor trabalhe em torno do ponto desejado de sua curva de torque, sem que

este extrapole a de margem de erro aceitável de operação.

Para frequências altas, idealmente o sistema estabilizará cada vez

mais próximo do ponto desejado da curva de torque do motor, porém existe um fator

a ser considerado. A comutação de um sinal DC para zero, ou o caminho inverso,

gera frequências harmônicas indesejadas no circuito, isto é, com o aumento da

frequência aumenta-se também a amplitude das harmônicas na geração da onda

quadrada de forma a corromper o funcionamento ideal do sistema.

Como prática, sugere-se que a frequência do PWM seja muito maior

que a frequência de rotação do motor (Yedamale, 2003). Deste modo, garante-se

que o motor complete vários ciclos do PWM (sugere-se em torno de 10), antes que

este complete um ciclo de rotação.

Page 37: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

34

A razão cíclica do sinal PWM é usada para controlar a tensão média

de alimentação do motor, i.e., varia-se a razão cíclica do PWM para controlar a

velocidade de rotação do motor (Bhagat & Bhaganagare, 2009). A razão cíclica (D) é

dada como:

𝐷 = 𝑡𝑜𝑛

𝑇

(2.17)

Esta técnica usada por Bhagat e Bhaganagare em 2009, também é

usada neste trabalho no qual o controle PID controla a tensão por meio do erro. O

controle de tensão é aplicado ao gerador de PWM o qual, pode mudar a razão

cíclica conforme seja necessário. A vantagem do PWM é que os pulsos chegam com

a tensão máxima de alimentação e produzirá um torque maior no motor e superará

com maior facilidade as resistências internas do motor (Bhagat & Bhaganagare,

2009).

Como dito anteriormente, a tensão de saída, para alimentação do

motor durante o período ativo do PWM é igual a diferença entre a tensão de

alimentação e as perdas do circuito gerador de PWM, porém se considerarmos um

sistema ideal, teremos uma tensão média sobre o motor, durante um ciclo de PWM

igual a (Krishnan, 2001):

𝑉𝐷𝐶 = 𝑡𝑜𝑛

𝑇𝑉𝑠 = 𝐷. 𝑉𝑠 [𝑉]

(2.18)

Onde 𝑉𝑠 é a tensão de alimentação do circuito.

2.7.1 Circuito Gerador de PWM

O circuito gerador de PWM analógico é de simples montagem, o

qual é composto por um sinal dente-de-serra comparado com um sinal de referência,

como ilustra a figura 2.14.

Page 38: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

35

Figura 2.14: Diagrama de blocos do método analógico de geração de PWM.

Fonte: o próprio autor.

O amplificador operacional, ligado no seu formato de comparador,

irá comutar o sinal de saída para tensão máxima de alimentação, quando a onda

triangular tiver amplitude menor que o sinal de referência e apresentará um sinal de

saída nulo ou tensão mínima de alimentação, quando a onda triangular for maior que

o sinal de referência.

A módulo analógico capaz de gerar um sinal dente-de-serra está

ilustrado na figura 2.15.

Figura 2.15: Circuito analógico gerador de sinal triangular dente-de-serra.

Fonte: www.feng.pucrs.br/~stemmer/labeletronica/tr2/trab2_2.html

Este circuito apresenta na sua saída uma onda triangular composta

por duas fases. A primeira é uma rampa, que ocorre durante o carregamento do

capacitor, a segunda fase ocorre quando o capacitor acaba de se carregar, então

neste momento ocorre um rápido descarregamento do capacitor, fazendo com que o

Page 39: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

36

tempo de descarga seja despresível. A onda resultante é chamada dente-de-serra.

A frequência do sinal PWM resultante é igual a frequência do sinal

dente-de-serra, enquanto que a razão cíclica do PWM é regulada pelo nível de

tensão da tensão de referência do PWM. Deste modo, a razão cíclica em

porcentagem representa a porcentagem da razão entre a tensão de pico da função

dente-de-serra e a tensão do nível de referência.

2.7.2 Módulo PWM no PIC18FXX2

O PIC18FXX2, possui dois módulos de PWM, módulo CCP1 e

módulo CCP2, estes módulos são compostos por registradores de 8 bits cada, os

quais são respectivamente, CCPR1L e CCPR2L (LSByte) e CCPR1H e CCPR2H

(MSByte). Enquanto os registradores CCP1CON e CCP2CON, respectivamente,

controlam a operação de CCP1 e CCP2.

O modo PWM possui como recurso o timer 2 para os dois PWMs,

fazendo com que os dois módulos possuam a mesma taxa de atualização e

frequência de operação, sendo esta igual ao inverso do período do timer. A

resolução do PWM, na saída dos pinos CCP1 e CCP2 é de 10 bits (cada) os quais

são dados por CCPRXL (MSByte) concatenados com CCPXCON<5:4>.

O período é especificado no registrador PR2 e pode ser calculado

como:

𝑇𝑃𝑊𝑀 = ((𝑃𝑅2) + 1). 4. 𝑇𝑂𝑆𝐶 . (𝑇𝑀𝑅2𝑃𝑟𝑒𝑠𝑐𝑎𝑙𝑒𝑟) (2.19)

A resolução máxima que pode ser obtida, dada uma frequência de

operação fixa é dada por:

𝑃𝑊𝑀𝑅𝑒𝑠𝑜𝑙𝑢çã𝑜𝑀𝑎𝑥=

log (𝐹𝑜𝑠𝑐

𝐹𝑃𝑊𝑀)

log 2 [𝑏𝑖𝑡𝑠]

(2.20)

Os seguintes passos são sugeridos para a configuração do PWM

(Microchip Technology Inc., 2002):

Ajuste o perído do PWM por meio do registrador PR2.

Page 40: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

37

Ajuste o ciclo ativo do PWM por meio dos registradores

CCPR1L e CCP1CON<5:4> bits.

Faça o pino CCP1 uma saída colocando o bit “0” para o bit

TRISC<2>.

Ajuste o valor de pré-escala TMR2 e habilite o Timer2 por

meio do registrador T2CON.

Configure o módulo CCP1 para operação PWM.

2.8 PONTE H

O sinal PWM é capaz apenas de gerar tensões médias entre zero e

𝑉𝑠, deste modo o sentido de rotação de um motor DC conectado à saída do gerador

PWM é capaz de regirar apenas em um sentido, porém para movimentação de robôs

móveis de tração diferencial muitas vezes é impressindível que ao menos uma das

rodas gire no sentido contrário.

Para que o sentido de rotação do motor DC seja invertido, sem que

seja necessário alterar o módulo de geração PWM, utiliza-se um módulo chamado

ponte H.

Um exemplo do circuito de ponte H está ilustrado na figura 2.16.

Este circuito combinado com os sinais de PWM também podem ser chamados de

circuito “chopper” de quatro quadrantes.

Figura 2.16: Circuito de ponte H com operação nos quatro quadrantes.

Fonte: Krishnan (2001, p.126).

Page 41: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

38

É importante ressaltar que cada transistor deve ter um diodo de roda

livre ligado em anti-paralelo, pois transistores bipolares não suportam a tensão

reversa gerada pela indutância do motor após a comutação dos transistores.

2.8.1 Operação do Primeiro Quadrante

A operação do primeiro quadrante corresponde à uma tensão e

corrente positivas. Este efeito é obtido ao ativar os transistores 𝑇1 e 𝑇2

simultaneamente, deste modo a tensão no motor é igual ao da fonte, como ilustrado

na figura 2.17.

Figura 2.17: Operação do primeiro quadrante da ponte H com tensão e corrente

positivas, sobre a carga.

Fonte: Krishnan (2001, p.127).

Para se obter uma tensão de alimentação igual a zero, 𝑇1 ou 𝑇2

comutam para corte, deste modo a corrente no motor tenderá a baixar, ilustrado na

figura 2.18. Quando a corrente começa a baixar, a indutância do motor terá uma

tensão induzida reversa, assim o diodo 𝐷4 conduz até que a tensão chegue a

aproximadamente zero (Krishnan, 2001).

Page 42: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

39

Figura 2.18: Operação do primeiro quadrante da ponte H com tensão igual a zero,

sobre a carga.

Fonte: Krishnan (2001, p.127).

A tensão sobre o motor, portanto, será uma onda quadrada como o

sinal PWM, com a tensão média de alimentação do motor variando entre 𝑉𝑠 e 0, uma

vez que a razão cíclica varia entre 0 e 1.

2.8.2 Operação do Segundo Quadrante

A operação do segundo quadrante corresponde a uma corrente

positiva com uma tensão negativa, sobre os terminais do motor. Uma vez que os

transistores 𝑇1 e 𝑇2 comutam para o estado de corte, a nova configuração do sistema

fica como ilustrado na figura 2.19.

Page 43: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

40

Figura 2.19: Operação do segundo quadrante com tensão negativa e corrente

positiva, sobre a carga.

Fonte: Krishnan (2001, p.129).

A corrente induzida no motor deve continuar a passar até que a

energia neste chegue a zero. Portanto, os diodos 𝐷3 e 𝐷4 manterão a corrente do

motor na mesma direção, mas ao contrário do primeiro quadrante, a tensão nesta

configuração do circuito é negativa. Enquanto os diodos 𝐷3 e 𝐷4 estão conduzindo, a

fonte recebe energia da carga. Esta forma de recuperação de energia da carga é

conhecida como “regenerative braking” (Krishnan, 2001).

2.8.3 Operação do Terceiro Quadrante

A operação do terceiro quadrante provê corrente e tensão negativas.

O funcionamento deste quadrante é muito semelhante ao do primeiro, porém ao

invés dos trasistores 𝑇1 e 𝑇2 serem ativados, ativa-se 𝑇3 e 𝑇4. Resultando nos

circuitos ilustrados nas figuras 2.20 e 2.21.

Page 44: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

41

Figura 2.20: Modo de operação do terceiro quadrante com a corrente sobre a carga

aumentando.

Fonte: Krishnan (2001, p.130).

Figura 2.21: Modo de operação do terceiro quadrante com a corrente sobre a carga

diminuindo.

Fonte: Krishnan (2001, p.130).

Como resultado para a corrente e tensão na carga negativas, há

uma rotação do motor no sentido contrário ao do primeiro quadrante, possibilitando o

motor a girar em dois sentidos com apenas um PWM (positivo) variando a razão

cícica de 0 a 1.

Page 45: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

42

2.8.4 Operação do Quarto Quadrante

A operação do quarto quadrante corresponde a uma tensão positiva

e uma corrente negativa no motor. Sendo este semelhante ao segundo quadrante,

porém os diodos 𝐷1 e 𝐷2 são ativos neste caso.

2.8.5 Ponte H L298N

O CI L298 possui tensão limite de 46 V, corrente limite de 4 A,

proteção contra superaquecimento, alta imunidade contra ruído (1,5 V para bit “0”) e

baixa tensão de saturação, causando uma menor perda de tensão transferida da

fonte para o motor. Este circuito integrado monolítico possuí duas pontes H

completas e dois pinos habilitação das pontes, que são independentes dos sinais de

entrada (comutação dos transistores). O diagrama de blocos do circuito é mostrado

na figura 2.22.

Figura 2.22: Circuito esquemático do funcionamento interno do CI L298.

Fonte: Datasheet L298 (2000, p.1).

Os pinos 2:3 e 13:14 são, respectivamente, as saída para os dois

motores, enquanto os pinos 1 e 15, são conectados resistores para controlar a

corrente que irá para o motor. Os pinos 6 e 11, são responsáveis por habilitar ou

desabilitar a ponte A e B, respectivamente, e os pinos 5;7 e 10;12 controlam as

Page 46: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

43

entradas do TTLs das pontes A e B, i.e., o sentido de giro do motor.

O pino 8 corresponde ao terra do circuito, enquanto o pino 4

corresponde à alimentação do circuito, ou seja, o valor de tensão sobre o motor mais

a perda de saturação dos TTLs. Por fim, o pino 9 alimenta os blocos lógicos do

circuito. Sugere-se utilizar capacitores de 100 nF entre os pinos 4;8 e 9;8, de modo a

manter a alimentação do circuito mais estável (STMicroelectronics, 2000).

2.9 CONTROLE

A introdução do acionamento com velocidades variáveis aumentou a

produtividade e, no processo, a eficiência. O ganho de eficiência de um sistema

pode ser aumentada de 15 a 27% ao introduzir o acionamento com velocidades

variáveis no lugar da velocidade constante de operação. A energia poupada neste

sistema possui benefícios de conservação de recursos naturais, redução de poluição

atmosférica através de menores produções e consumo de energia, e competitividade

na economia (Krishnan, 2001).

O primeiro trabalho significativo em controle automático foi o de

James Watt, que construiu um controlador centrífugo para controle de velocidade de

uma máquina à vapor no século XVIII. Além disto, em 1922, Minorsky trabalhou em

controladores automáticos para pilotagem de navios e mostrou como poderia ser

“determinada” a estabilidade a partir das equações diferenciais que descrevem o

sistema. Em 1932, Nyquist desenvolveu um procedimento relativamente simples

para determinar a estabilidade de sistemas de malha-fechada com base na resposta

à entradas senoidais em regime permanente da malha-aberta. Em 1934, Hazen, que

introduziu o projeto de servomecanismos à relé capazes de seguir muito de perto

uma entrada variável (Ogata, 1985).

Na década de 1940, os métodos de resposta em frequência

possibilitaram o projeto de sistemas de controle realimentados lineares. Em 50, o

método do lugar das raízes em projeto de sistemas de controle foi completamente

desenvolvido (Ogata, 1985).

Os controladores são montados com circuitos analógicos e

integrados. A tendência atual é se usar microprocessadores, processadores de

sinais digitais [DSPs], VLSI e chips especiais customizados também conhecidos

como ASICs (Application Specific Integrated Circuits) para compor um grupo de

Page 47: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

44

funções do controlador. A capacidade computacional em tempo real destes

controladores permite algoritmos de controle complexos para serem implementados.

Também, permitem o controle remoto, portanto abrindo caminho para sistemas

flexíveis de manufatura e um alto grau de automação (Krishnan, 2001).

Os controladores incorporam as leis de controle de forma a controlar

as características do motor e suas interações. Muitas estratégias de controle tem

sido formuladas para acionamento de vários motores e os controladores

implementam seus algoritmos (Krishnan, 2001).

2.9.1 Sistemas de Malha Aberta

Sistemas de controle em malha-aberta são sistemas de controle nos

quais a saída não tem efeito na ação do controle. Isto é, em um sistema de controle

em malha-aberta, a saída nem é medida nem é realimentada para compensação

com a entrada (Ogata, 1985).

2.9.2 Sistemas de Malha Fechada

Um sistema de controle em malha-fechada é aquele no qual o sinal

de saída possui um efeito direto na ação de controle. Isto é, sistemas de controle em

malha-fechada são sistemas de controle com realimentação. O sinal erro atuante,

que é a diferença entre o sinal de entrada e o sinal realimentado, é alimentado no

controlador de modo a reduzir o erro e manter a saída do sistema em um valor

desejado. Em outras palavras, o termo “malha-fechada” implica o uso de ação de

realimentação com a finalidade de reduzir o erro do sistema (Ogata, 1985).

Um sistema de controle em malha fechada deve conter pelo menos

três componentes, sendo estes a planta, que é função de transferência do objeto a

ser controlado, um sensor para medir a saída da planta e o controlador, que gera o

sinal de entrada na planta (Doyle, 1990).

2.9.3 Comparação Entre Sistemas de Malha Aberta e Fechada

Os sistemas de controle em malha-fechada, possuem a vantagem

de ser mais robústo quanto à disturbios externos, ou variações internas, devido ao

Page 48: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

45

uso da realimentação, mesmo que estes possuam componentes de baixa precisão,

ainda é possível obter um controle satisfatório para determinados parâmetros de

exigência.

Quanto à estabilidade, controles de malha-aberta podem ser mais

fáceis de serem construídos de forma a se obter uma estabilidade satisfatória.

Entretanto, controles em malha-fechada muitas vezes possuem oscilações de

amplitude constante ou variável em torno do ponto de estabilidade desejado.

2.9.4 Resposta Transitória e Estacionária

A resposta temporal de um sistema de controle consiste em duas

partes: a resposta transitória e resposta estacionária. A primeira é aquela que vai do

estado inicial até o estado final, enquanto a resposta estacionária é a maneira como

a saída do sistema se comporta quando o tempo tende a infinito (Ogata, 1985).

2.9.5 Controle para Motor DC

A velocidade de um motor pode ser variada para atingir um certo

valor de velocidade angular, com a diminuição do fluxo de campo, com um aumento

da resistência de armadura, ou com o uso de um sistema de controle de velocidade

de mallha fechada, sendo o mais usado, pois não altera muito as características do

mecanismo e nem acrescenta muitas perdas por calor (Sarhan, 2014).

Existem dois tipo de controle de velocidade para motores DC.

Controle por campo, onde neste método a corrente de campo ou a corrente através

do estator é variada para controlar a velocidade do motor. Controle de armadura,

neste método, a tensão na armadura é variada para controlar a velocidade no motor

por meio de um sinal PWM (Bhagat & Bhaganagare, 2009).

Para se estudar a resposta de malha-aberta do motor DC, este foi

modelado como um sistema de primeira ordem. A função de transferência do motor

DC controlado por tensão na armadura é dado por (Bhagat & Bhaganagare, 2009):

𝜔(𝑠)

𝑉(𝑠)=

𝐾𝑚

𝑠𝑇 + 1

(2.21)

Page 49: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

46

Onde 𝜔 é a velocidade (rpm) do motor, V a tensão (V) na armadura,

𝐾𝑚 é a constante de ganho do motor (rpm/V) e T a constante de tempo do motor. É

importante ressaltar que a equação (2.21) é uma aproximação da equação (2.15),

quando se considera a indutância da armadura muito baixa. Neste caso (Huang &

Lee, 2008):

𝐾𝑚 = 𝐾𝑇

𝑅𝑎𝐵 + 𝐾𝑏𝐾𝑇

(2.22)

𝑇 = 𝑅𝑎𝐽

𝑅𝑎𝐵 + 𝐾𝑏𝐾𝑇

(2.23)

A medida de 𝐾𝑚 pode ser obtida, também, ao plotar o gráfico da

tensão da armadura pela velocidade do motor. A inclinação da curva é o valor de

𝐾𝑚.

Para se obter o valor da constante de tempo T, deve-se variar a

velocidade de saída do motor de zero ao máximo. O gráfico da frequência pela

tensão do conversor é chamado tensão de realimentação. A inclinação do gráfico é

o ganho do sistema em malha fechada (𝐾𝑇).

𝑇 =

1

2. 𝑓. 𝑙𝑛 (1 −𝑉𝑓𝑏

𝑉𝑚. 𝐾𝑚. 𝐾𝑇)

(2.24)

Deste modo, ao substituir os valores na equação (2.24), obtemos o

valor da constante de tempo (Bhagat & Bhaganagare, 2009).

2.10 PID

O desenvolvimento da teoria de controle já possui mais de 65 anos,

o controle PID tem sido um dos métodos de projeto de sistemas mais longos da

história. Entretanto, este método é extensivamente usado em diversos trabalhos

(Huang & Lee, 2008).

A combinação das ações de controle proporcional, integral e

derivativo, é chamado controle PID. Os controladores PID são de uso comum para

Page 50: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

47

regular o comportamento no domínio de tempo de muitos tipos diferentes de plantas

dinâmicas. Estes controladores são muito populares, pois pode-se obter boas

características de resposta para malhas-fechadas (Singh et al., 2013).

O termo proporcional serve para ajuste da saída do controlador de

acordo com a magnitude do erro. O integral é usado para remover o erro do estado

estacionário do sistema de controle e aumentar a resposta deste. O termo derivativo

é usado para prever a tendência do erro e melhorar a resposta do estado transitório

do sistema (Huang & Lee, 2008).

A figura 2.23, mostra um sistema realimentado, onde é assumido

uma planta de um motor DC que deve ter sua velocidade regulada.

Figura 2.23: Diagrama esquemático de blocos do controlador PID aplicado.

Fonte: Adaptado de Singh et al. (2013, p.23).

O controlador PID é colocado no caminho direto, para que sua saída

seja a tensão aplicada na armadura do motor, e a velocidade do motor é a

realimentação do sistema.

A velocidade de saída do motor é somada com um sinal de

referência, ou sinal de comando, de forma a se obter o sinal de erro. Deste modo, o

sinal de erro é o sinal de entrada do controlador PID (Singh et al., 2013).

𝑈(𝑡) = 𝐾𝑝. 𝑒(𝑡) + 𝐾𝑖 ∫𝑒(𝑡). 𝑑𝑡 + 𝐾𝑑

𝑑𝑒(𝑡)

𝑑𝑡

(2.25)

Page 51: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

48

Estas funções tem sido suficientes para a maioria dos processos.

Porque a estrutura do controlador PID é simples, este método de controle é o mais

usado na indústria até agora. O controlador PID é praticamente o ajuste apropriado

dos ganhos proporcional (𝐾𝑝), integral (𝐾𝑖) e derivativo (𝐾𝑑), de modo a se obter a

otimização do funcionamento do controle.

A função de transferência do controlador PID pode ser descrita pela

equação (2.26).

𝐶(𝑠) = 𝐾𝑝1 + (1

𝑇𝑖. 𝑠+ 𝑇𝑑. 𝑠)

(2.26)

Onde 𝑇𝑖 é o tempo de reset do integrador e 𝑇𝑑 é o tempo ou taxa de

derivação (Jayavishrutha et al., 2014). Para a determinação das constantes 𝐾𝑝, 𝑇𝑖 e

𝑇𝑑 existe um método utilizado em larga escala, este é o método de Ziegler-Nichols.

2.10.1 Método de Ziegle-Nichols

A determinação das constantes usando o método do maior ciclo

dado pelas regras de Ziegler-Nichols, o qual é resultado de um experimento

realizado com o controlador já instalado.

A determinação das constantes do PID usando este método é dado

da seguinte forma (Bhagat & Bhaganagare, 2009):

Complete a malha-fechada conectando o controlador antes da

planta.

Page 52: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

49

Figura 2.24: Diagrama esquemático da implementação do controlador PID.

Fonte: Adaptado de Bhagat & Bhaganagare (2009, p.8).

Os modulos integral e derivativo são desconectados. Inicia-se

um valor baixo de Kp.

Aumenta-se Kp até que a planta comece a apresentar

oscilações constantes.

Mede-se o tempo de período das oscilações (Pu) e o

correspondente ganho (Kpu).

Os valores obtidos são usados no tabela 2.1 de modo a se

obter os valores de Kp, Ti e Td.

Tabela 2.1: Regra de Zigler-Nichols.

Modo de Controle Método do Maior Período

𝑃𝑐𝑜𝑛𝑡𝑟𝑜𝑙𝑒 𝐾𝑝 = 0,5 𝐾𝑝𝑢

𝑃𝐼𝑐𝑜𝑛𝑡𝑟𝑜𝑙𝑒 𝐾𝑝 = 0,45 𝐾𝑝𝑢

𝑇𝑖 = 0,83 𝑃𝑢

𝑃𝐼𝐷𝑐𝑜𝑛𝑡𝑟𝑜𝑙𝑒

𝐾𝑝 = 0,6 𝐾𝑝𝑢

𝑇𝑖 = 0,5 𝐾𝑝𝑢

𝑇𝑑 = 0,125 𝑃𝑢

Fonte: Bhagat & Bhaganagare (2009, p.8).

Page 53: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

50

2.11 ENCODERS ÓPTICOS

Sensores podem ser classificados em dois grupos funcionais, sendo

esses proprioceptivo/exteroceptivo e passivo/ativo. Proprioceptivo se refere a

sensores que medem valores internos do robô móvel, como velocidade do motor.

Exteroceptivo se refere a que medem informações da ambiente externo, como

ultrassom (Siegwart, 2004).

Um tacômetro digital pode ser projetado utilizando um fotosensor

infra-vermelho em formato “U” e um microcontrolador. Sob condições normais a luz

emitida pelo diodo é focada no opto-transistor, durante a interrupção a condução

cessa (Jayavishrutha et al., 2014). O sistema é ilustrado na figura 2.25.

Figura 2.25: Esquemático de funcionamento de um encoder óptico.

Fonte: Adaptado de http://www.fem.unicamp.br/~instmed/Deformacao_Torque.htm

O eixo do motor é conectado no centro do disco de anteparo, deste

modo a frequência de rotação do anteparo é idêntica à do motor. Conforme o disco

de anteparo gira, um sinal de onda quadrada é obtido na saída do fotosensor, uma

vez que seu sensor comuta entre estados de corte e saturação.

Para se obter a frequência de rotação do motor é preciso conhecer

apenas o número de ranhuras que o disco de anteparo possui, assim o período de

rotação é igual ao tempo necessário para se obter o número de pulsos por revolução

na saída do foto transistor. Resultando na equação (2.27):

Page 54: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

51

𝑓𝑚𝑜𝑡𝑜𝑟 =1

𝑇=

1

𝜏. 𝑁

(2.27)

Onde 𝑓𝑚𝑜𝑡𝑜𝑟 é a frequência de rotação do motor (rad/s), T o período

de rotação do motor (s), 𝜏 período (s) do sinal na saída do foto transistor, N número

de ranhuras do anteparo.

Um número pequeno de ranhuras no disco de anteparo pode gerar

problemas de precisão no controle de velocidade, principalmente para rotações em

velocidades pequenas no eixo do motor. Entretanto, um número muito alto de

ranhuras, associado à uma rotação muito alta do eixo do motor geram problemas de

origem óptica, como efeito de Lau e Moiré, o que levam à necessidade de sistemas

mais robustos para análise destes sistemas.

2.12 LINGUAGENS DE PROGRAMAÇÃO

O primeiro computador eletrônico foi o ENIAC. Construído nos EUA

durante a II Guerra Mundial e concluído em 1946, tinha por finalidade calcular

rapidamente as tabelas de tiro para peças de artilharia e bombardeamento (Barros,

2003).

Os programas eram inseridos por meio de um leitor de cartões

perfurados (da IBM), sendo escritos diretamente em código-máquina. A linguagem

de máquina, sendo a única que os computadores são capazes de processar,

oferecem grandes dificuldades aos programadores, como longo tempo e grandes

custos de aprendizagem e cada máquina nova utiliza uma nova linguagem (Barros,

2003).

2.12.1 Linguagem Assembly

A descoberta do transistor permitiu a construção de computadores

mais compactos e rápidos. Porém, o modelo de programação em linguagem de

máquina não permitia o acompanhamento da programação com as novas máquinas.

Surge-se, então, a linguagem assembly.

A linguagem assembly é considerada uma linguagem de baixo nível,

muito próximo à linguagem de máquina. Um programa escrito em assembly seria

Page 55: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

52

traduzido para linguagem de máquina por um assembler, que recorreria a uma

tabela de tradução. O assembly permitiu aumentar o número de programadores e o

desenvolvimento de aplicações para computadores (Barros, 2003).

2.12.2 Compiladores

Em 1957 surgiu a primeira linguagem de alto nível, o Fortran. A partir

daí, surgiram outras linguagens de alto-nível (e.g. ALGOL, BASIC, COBOL, C), que

ofereciam aos programadores a possibilidade de escreverem programas em

linguagens próximas do inglês. Surgiram então os compiladores, aplicações capazes

de procurar erros de sintaxe e concepção nos textos dos programas e transformar as

instruções em linguagem quase-neural para linguagem de máquina (Barros, 2003).

2.12.3 C

A linguagem C foi desenvolvida na década de 1970 no laboratório

AT&T Bell Labs, por Brian Kernighan e Dennis M. Ritchie (Melo, 2011).

Em 1983, a ANSI (American National Standards Institute

estabeleceu um comite o qual teve como objetivo a produção de uma definição não-

ambígua e independente da máquina a ser utilizada, para a linguagem C. O

resultado foi o “ANSI standard for C” (Kernighan & Ritchie, 1988).

Existem vários compiladores no mercado para microcontroladores

da família PIC18F. Estes compiladores possuem recursos semelhantes e podem ser

usados para programas de alto nível. Dentre os compiladores podemos citar o

mikroC, PICC18, C18 e CCS.

2.13 PIC

O termo microcomputador é usado para descrever um sistema que

inclui no mínimo um microprocessador, memória programável, memória de dados e

pinos de entrada ou saída. Alguns sistemas de microcomputadores incluem

componentes adicionais como timers, contadores e conversores analógicos-digitais

(Ibrahim, 2008).

Microcomputadores compostos por apenas um chip de silício são

Page 56: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

53

chamados microcontroladores. Existem diversos microcontroladores no mercado,

porém abordaremos neste trabalho apenas a série PIC (Programmable Interface

Controller), produzida pela Microchip Technology Inc.

Outro termo para microcontroladores é controlador embarcado, pois

a maioria dos microcontroladores estão embarcados no dispositivo que eles

controlam (Ibrahim, 2008).

Microcontroladores tem sido tradicionalmente programados com o

uso da linguagem assembly. Embora esta linguagem seja rápida, ela possui muitas

desvantagens, como aprendizagem. A manutenção de um programa escrito usando

a linguagem assembly também é muito difícil (Ibrahim, 2008).

Microcontroladores são classificados pelo número de bits que estes

processam, sendo 8 bits os mais populares. Microcontroladores com 16 e 32 bits são

muito mais poderosos, mas são normalmente mais caros que os de 8 bits.

A memória RAM (Random Access Memory) é uma memória para

uso geral, que normalmente armazena os dados do usuário no programa. A memória

RAM é volatil e não pode reter dados caso a alimentação seja desligada. O

microcontrolador PIC18F452 (usado neste trabalho) possui 1536 bytes de RAM

(Ibrahim, 2008).

A memória EEPROM (Electrically Erasable Programmable Read

Only Memory) é uma memória não volátil que pode ser apagada e reprogramada

usando o dispositivo de programação correto. Esta memória é usada para salvar

informações, valores máximos e mínimos, identificação de dados, etc. Para o

PIC18F452 possui 256 bytes de memória EEPROM, onde cada byte pode ser

programado e apagado diretamente por aplicações de softwares (Ibrahim, 2008).

A memória Flash EEPROM, é semelhante à EEPROM, porém

normalmente mais rápida. O PIC18F452 possui 32 Kbytes desta memória. Nos

microcontroladores PIC, um ciclo de instrução toma quatro períodos de clock. Assim

o microcontrolador opera com uma taxa de clock que é um quarto da frequência

atual do oscilador. Os microcontroladores da série PIC18F podem operar em uma

frequência até 40 MHz.

2.13.1 Arquiteturas dos Microcontroladores

Existem duas arquiteturas convensionais para microncontroladores,

Page 57: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

54

estas são Von Newmann e Harvard, ilustradas na figura 2.26.

Figura 2.26: Esquemático das arquiteturas de Von Neumann e Harvard.

Fonte: Adaptado de Ibrahim (2008, p.13).

Arquitetura Von Neumann, usada por uma boa porcentagem dos

micontroladores, possui toda memória no mesmo barramento. Instrução e dados

também usam o mesmo barramento (Ibrahim, 2008).

Na arquitetura Harvard (usada nos microcontroladores PIC), código

e dados estão em barramentos diferentes, o que permite ser buscados

separadamente, resultando em uma melhor performance (Ibrahim, 2008).

2.13.2 RISC e CISC

RISC (Reduced Instruction Set Computer) e CISC (Complex

Instruction Set Computer) refere-se ao conjunto de instruções do microcontrolador.

Em um microcontrolador RISC de 8 bits, dados possuem tamanho de 8 bits, mas

palavras de instrução são maiores que 8 bits (normalmente 12, 14 ou 16 bits) e as

instruções ocupam uma palavra na memória do programa. Assim as instruções são

transmitidas e executadas em um único ciclo, o qual aumenta a performance. Nos

microcontroladores CISC, ambos dados e instruções são de 8 bits.

Microcontroladores CISC normalmente possuem mais de duas mil instruções. Dados

e código estão no mesmo barramento e não podem ser transmitidos

simultaneamente (Ibrahim, 2008).

Page 58: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

55

2.13.3 Microcontroladores da Série PIC18F

A Microchip Inc. tem desenvolvido a série de microcontroladores

PIC18F para uso de grande quantidade de pinos, alta densidade e aplicações

complexas. Dispositivos PIC18F proveem memória flash programável com tamanhos

de 8 a 128 kbytes e memória de dados de 256 a 4 kbytes, operando em uma

amplitude de 2,0 a 5,0 V, com velocidade de 40 MHz (Ibrahim, 2008).

As informações básicas dos microcontroladores da série PIC18F são

(Ibrahim, 2008):

77 instruções.

Código fonte compatível com PIC16.

Até 2 Mbytes de memória programável.

Dados de memória endereçados em até 4 kbytes.

DC para operação em 40 MHz.

Multiplicador hardware 8x8.

Níveis de prioridade de interrupção.

Instruções de 16 bits, caminho de dados de 8 bits.

Até dois timers/counters de 8 bits.

Até três timers/counters de 16 bits.

Até quatro interrupções externas.

Capacidade de até 25 mA (fonte).

Até cinco módulos capture/compare/PWM.

Módulo de porta serial Master synchronous (SPI e I²C).

Até dois módulos USART.

Portas paralelas escravas.

Conversor analógico-digital rápido de 10 bits.

Módulo programável de detecção de baixa voltagem (LVD).

Power-on reset (POR), power-up timer (PWRT) e oscilador

start-up timer (OST).

Watchdog timer (WDT) com oscilador RC.

Programação in-circuit.

O microcontrolador PIC18F452, possui quatro timers/counters, dois

módulos capture/compare/PWM , dois módulos seriais de comunicação, oito canais

Page 59: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

56

de conversão A/D 10 bits, 256 bytes de EEPROM.

O PIC18F452 possui cinco portas paralelas chamadas PORTA,

PORTB, PORTC, PORTD e PORTE, as quais, possuem na maioria dos pinos,

multiplas funções.

São oito as fontes de clock possíveis para o microcontrolador

PIC18F452, estas podem ser configuradas pelo registrador CONFIG1H, e são:

Cristal de baixa potência (LP).

Cristal ou ressonador cerâmico (XT).

Cristal de alta velocidade ou ressonador cerâmico (HS).

Cristal de alta velocidade ou ressonador cerâmico com PLL

(HSPLL).

Clock externo com Fosc/4 no OSC2 (EC).

Clock externo com I/O no OSC2 (porta RA6)(ECIO).

Resistor/capacitor externo com saída Fosc/4 no OSC2 (RC).

Resistor/capacitor externo com I/O no OSC2 (porta

RA6)(RCIO).

2.13.3.1 Cristal ou ressonador cerâmico (XT)

Para a utilização do cristal externo, este deve ser conectado entre os

pinos OSC1 e OSC2. Para aplicações onde precisão de tempo é importante, um

cristal deve ser usado. Se um cristal for usado é necessário utilizar capacitores em

paralelo com as entradas assim como mostra a figura 2.27. Os valores dos

capacitores estão na tabela 2.2.

Page 60: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

57

Figura 2.27: Esquemático de montagem do circuito para utilização de um cristal

como entrada de clock no PIC18FXX2.

Fonte: Ibrahim (2008, p.62).

Tabela 2.2: Valores dos capacitores para oscilação do cristal de clock.

Modo Frequência C1, C2 (pF)

LP 32 KHZ 33

200 KHz 15

XT

200 KHz 22-68

1,0 MHz 15

4,0 MHz 15

HS

4,0 MHz 15

8,0 MHz 15-33

20,0 MHz 15-33

25,0 MHz 15-33

Fonte: Ibrahim (2008, p.62).

Page 61: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

58

2.13.3.2 Interrupções

Um evento de interrupção requer que a CPU pare a execução do

programa normal e então execute um programa relacionado ao evento causando a

interrupção. Interrupções podem ser geradas internamente ou externamente

(Ibrahim, 2008). O microcontrolador PIC18452 possui interrupções por ações externa

nos pinos INT0, INT1, INT2, RB4:RB7 e timer0 overflow.

As interrupções da família PIC18F podem ser divididas em alta ou

baixa prioridades. Deste modo, aplicações que requerem mais atenção são

colocadas em alta prioridade, sendo assim, uma interrupção de alta prioridade pode

parar uma de baixa prioridade que está em progresso.

2.14 ULTRASSOM HC-SR04

O sensor de ultrassom provê uma função de medida de 2 a 400 cm,

com uma precisão de até 3 mm. Este módulo possui um transmissor de ultrassom,

um receptor e um circuito de controle. O qual funciona sob o seguinte princípio:

Um sinal de 10 µs (bit “1”) ativa o transmissor.

O módulo automaticamente emite oito ondas de 40 kHz e

detecta caso o sinal seja refletido de volta.

Se o sinal de elétrico no pino do módulo for alto (bit “1”) o

tempo em alto na saída terá o tempo que a onda demorou

para atingir o obstáculo e retornar ao dispositivo.

O teste de distância pode ser calculado pela seguinte equação.

𝑑 = (𝑡ℎ𝑖𝑔ℎ 𝑙𝑒𝑣𝑒𝑙 ∗ 340)/2 (2.28)

Page 62: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

59

3 DESCRIÇÃO FÍSICA DO PROTÓTIPO

Para o desenvolvimento deste trabalho foi utilizado uma plataforma

composta por duas rodas tracionadas por motores independentes e uma terceira

roda do tipo castor.

Figura 3.1: Plataforma do robô móvel vista de baixo.

Fonte: o próprio autor.

O protótipo possui uma distância entre as duas rodas de tração

(rodas amarelas na figura 3.1) de 14,05 ± 0,05 cm, medida do ponto central de uma

roda ao ponto central da outra. Porém a distância entre as rodas considerando o

ponto de apoio mínimo das rodas ao chão se dá em 12 ± 0,05 cm, sendo medido de

uma extremidade interna da roda à outra.

A terceira roda, do tipo castor (roda branca) está posicionada a uma

distância de 8,33 ± 0,05 cm do eixo das rodas motorizadas. Esta segunda medida se

dá em relação ao eixo vertical da roda castor, sem considerar o desvio de 1,3 ± 0,05

cm do eixo vertical da roda castor ao centro da roda. Este desvio pode ser

observado na figura 3.2.

Page 63: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

60

Figura 3.2: Roda tipo castor usada no protótipo.

Fonte: o próprio autor.

Este sistema de organização de controle se caracteriza como tração

diferencial, ou seja, a direção do protótipo é definida pela diferença de velocidade no

eixo de cada roda. Quando esta diferença se aproxima de zero, o robô móvel tende

a uma trajetória retilínea.

Page 64: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

61

Figura 3.3: Roda de tração do protótipo.

Fonte: o próprio autor.

As rodas motorizadas, mostrada na figura 3.3 apresentam um

diâmetro de 6,5 ± 0,05 cm e a roda castor, figura 3.2, de 3,0 ± 0,05 cm. Com essa

relação de distância entre rodas e diâmetro, podemos definir a modelagem

cinemática do protótipo.

3.1 MODELAGEM CINEMÁTICA

A função de transferência que descreve a modelagem cinemática do

protótipo estudado neste trabalho é definida pela equação (2.4), ao se substituir os

valores de diâmetro das rodas e distância entre elas obtemos.

[

θ

] = [cos θ − sen θ 0sen θ cos θ 0

0 0 1] [

3,25(𝜙1 + 2)

00,461(𝜙1 − 2)

]

(3.1)

A separação da forma matricial em um sistema de equações

diferenciais na equação (3.2) possibilita uma melhor compreensão sobre a

movimentação do protótipo.

Page 65: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

62

= 3,25 cos 𝜃 (𝜙1 + 2)

= 3,25 sen 𝜃 (𝜙1 + 2)

θ = 0,461 (𝜙1 − 2)

(3.2)

Desta forma pode-se observar claramente que o robô móvel não

possui capacidade de movimentação lateral, porém, ainda assim, este protótipo

possui maior capacidade de movimento que um automóvel comum, pois apresenta

capacidade de rotação em torno de seu eixo vertical.

Em termos de substituição das rodas do protótipo, pode-se dizer que

com o aumento do diâmetro das rodas obtêm-se uma maior velocidade linear final

para o protótipo, porém há uma perda na regulação do controle de velocidade e um

aumento na exigência do torque do motor para o funcionamento deste.

Na possível substituição do chassi do protótipo com uma maior

distância entre as rodas, o veículo apresentará uma maior estabilidade no

deslocamento retilíneo do veículo e maior confiabilidade quanto aos movimentos

curvilíneos, porém este exigirá do controle uma maior variação das velocidades de

eixo de cada motor para que uma trajetória curvilínea seja executada.

3.2 PARADIGMA DAS ARQUITETURAS

O protótipo de estudo foi desenvolvido de modo a se entender os

processos de desenvolvimento de robô móvel autônomo, para que esse processo

pudesse ter o melhor aproveitamento possível foi utilizado equipamentos de baixo

custo e alta escalabilidade. Deste modo, foi possível acompanhar cada etapa do

desenvolvimento do projeto, bem como as dificuldades envolvidas em cada parte

deste processo.

Devido ao uso de equipamentos de baixo custo optou-se pela

utilização do paradigma de arquitetura reativo. No qual o robô móvel tem

possibilidade de reação a estímulos gerados pelo ambiente e readaptação a estes,

mas não tem domínio sobre o ambiente.

Entretanto, por mais que projeto seja de forma simples, este possui

uma alta escalabilidade, ou seja, com o desenvolvimento deste projeto é possível a

reutilização dos módulos que o compõem este sistema para outros projetos mais

complexos, sem a necessidade de uma profunda readaptação do projeto.

Page 66: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

63

4 HARDWARE

O hardware deste trabalho foi divido em cinco módulos principais,

sendo estes, a alimentação, a ponte H, os sensores de velocidade, sensor de

distância e motores, e o microcontrolador.

4.1 ALIMENTAÇÃO

O módulo de alimentação do protótipo foi alvo de muitas variações

durante o desenvolvimento deste projeto. Alguns detalhes devem ser avaliados

cuidadosamente para a escolha da alimentação do robô móvel.

A alimentação máxima do PIC18F452 especificada, pelo datasheet

disponibilizado pelo fabricante, é de 7,5 V, porém para um acionamento seguro,

escolheu-se trabalhar com 5,0 V. A tensão de alimentação dos motores é 7,0 V,

portanto como opção de alimentação escolheu-se dividir a fonte de alimentação em

duas. Inicialmente foram utilizadas três pilhas alcalinas AA para alimentação do

microcontrolador, somando um total de 4,5 V e uma quarta pilha adicionada ao

sistema resultando em 6,0 V na alimentação dos motores. A figura 4.1 mostra as

pilhas utilizadas.

Figura 4.1: Primeiro modelo de alimentação, composto por pilhas alcalinas AA.

Fonte: o próprio autor.

Page 67: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

64

Este sistema apresentou uma grande falha quanto ao acionamento

do motor. A corrente de partida do motor é muito maior que a corrente deste quando

a velocidade está estabilizada. As pilhas deste sistema não eram suficientes para

suportar a corrente exigida do sistema para o acionamento do motor, como

consequência a tensão diminuía e o microcontrolador reiniciava.

Em um segundo momento foi utilizado três capacitores de 10 nF em

paralelo de modo a tentar estabilizar a tensão sobre o PIC, como resultado foi um

sistema capaz de operar satisfatoriamente.

Apesar das pilhas alcalinas AA, associadas aos capacitores

apresentarem um resultado satisfatório, optou-se pela substituição destas pelo uso

de baterias recarregáveis. A figura 4.2 mostra o segundo módulo de alimentação

ligado ao protótipo (ainda em fase de testes).

Figura 4.2: Alimentação por seis pilhas recarregáveis e três capacitores de

estabilização de tensão.

Fonte: o próprio autor.

A substituição pelas pilhas recarregáveis regrediu ao problema

original, no qual o módulo de alimentação não era capaz de suportar a corrente

exigida pelo motor.

Page 68: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

65

Por fim, foi proposto o uso de baterias de celular recarregáveis, no

qual se obteve um resultado satisfatório. Com a utilização de duas baterias, as quais

apresentam tensão em torno de 4,0 V cada, resultando em 8,0 V. A figura 4.3 mostra

a alimentação final do protótipo.

Figura 4.3: Alimentação realizada por baterias recarregáveis de celular e regulação

de tensão de alimentação do PIC realizada pela ponte H.

Fonte: o próprio autor.

Neste último modelo, a tensão de alimentação é colocada

integralmente sobre a ponte H (que atuará sobre os motores) o qual possui um

capacitor de 220 µF para regulação da tensão, deste modo, a bateria é capaz de

suprir os picos de corrente exigidos pelo motor sem comprometer o funcionamento

do robô. A tensão de alimentação do PIC18F452 é realizada por meio de um

regulador de tensão de 5,0 V integrado no módulo da ponte H e utiliza-se um

capacitor de 10 nF para estabilização da tensão.

4.2 PONTE H

Assim como o sistema de alimentação o módulo da ponte H também

passou por várias modificações até que se desenvolvesse um sistema capaz de

Page 69: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

66

responder satisfatoriamente. Como primeira tentativa, foi montado um circuito de

ponte H composto por transistores bipolares de junção NPN.

É importante destacar que, dentre os cuidado necessários para

montagem de uma ponte H com transistores bipolares, cada transistor deve ter um

diodo colocado em antiparalelo. Pois, no momento em que há comutação do

transistor de saturação para corte, existe uma tendência de se manter a corrente

constante no motor, o qual, para esse caso surgiria uma tensão reversa no transistor

levando-o à queima. Esse evento foi abordado no capítulo 2.6.1 deste trabalho.

Este circuito funcionava, porém o fato dos componentes usados não

serem ideais, o ganho das correntes de base não eram grandes o suficiente para a

saturação esperada no transistor. Como resultado, havia uma queda muito grande

sobre os transistores, da ordem de 1,5 V, resultando em uma tensão de excursão de

aproximadamente 3,0 V.

Uma segunda tentativa foi proposta, baseada no modelo de

configuração Darlington. O circuito de ponte H montado com transistores bipolares

na configuração Darlington apresentou um resultado aceitável, em questão de

excursão da tensão de alimentação por meio do PWM. Porém a necessidade do uso

de 16 transistores (8 para cada motor do protótipo) inviabilizou a utilização deste,

devido ao espaço ocupado pela montagem sobre a plataforma.

Com a intensão de reduzir o tamanho do espaço ocupado pela ponte

H sobre o robô móvel, realizamos a montagem da ponte H por meio do circuito

integrado (CI) L293, fabricado pela Texas Instruments Inc.. Este CI possui

internamente duas pontes H completas, deste modo se utilizava apenas um único CI

para montagem de todo o módulo da ponte H.

A utilização do CI L293 foi bastante satisfatória, resultando em uma

perda de tensão desprezível, entre a tensão de alimentação e a tensão sobre os

motores.

Entretanto, apesar de um resultado muito satisfatório, com a

substituição do CI L293 pelo módulo de ponte H, composto pelo CI L298N (fabricado

pela STMicroelectronics), possibilitou uma saída de tensão regulada de 5,0 V, deste

modo poder-se-ia utilizar uma única fonte de tensão para alimentação de todo o

protótipo. O módulo de ponte H utilizado neste trabalho está representado na figura

4.4.

Page 70: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

67

Figura 4.4: Módulo de ponte H com CI L298N e dissipador de calor.

Fonte: o próprio autor.

Os pinos OUT1 e OUT2 são as saídas para o motor da roda direita,

enquanto os pinos OUT3 e OUT4 são saídas para o motor da roda esquerda. Os

pinos ENA e ENB são, respectivamente, habilitam a ponte H para o lado direito e

esquerdo. Os quatro fios abaixo dos “enables” são as quatro entradas de ativação

das chaves da ponte H.

O bloco azul composto por três entradas/saídas são VCC, GND e

5,0 V o qual o VCC é a tensão de alimentação do motor provida pelas baterias e 5,0

V é a saída provida pelo regulador de tensão embutido no módulo da ponte H.

4.3 SENSORES DE VELOCIDADE, SENSOR DE DISTÂNCIA E MOTORES

Os sensores e motores podem ser considerados um único módulo,

pois estes interagem entre sí, porém é possível fazer uma análise separada de cada

um dos três de modo a se obter uma melhor abordagem o funcionamento de cada

parte.

Page 71: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

68

4.3.1 Sensor de Velocidade

Os sensores de velocidades usados neste protótipo são compostos

por um encoder óptico e um disco de anteparo de 20 ranhuras por revolução, ao se

considerar cada borda (subida ou decida) um evento, pode-se dizer que o sensor

envia 40 sinais, ao microcontrolador, a cada revolução. A figura 4.5 mostra o

encoder óptico e a figura 4.6 o disco de ranhuras, formando o módulo do sensor de

velocidade.

Figura 4.5: Encoder óptico acoplado ao disco com ranhuras.

Fonte: o próprio autor.

Page 72: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

69

Figura 4.6: Disco com ranhuras para sensor de velocidade.

Fonte: o próprio autor.

Considerando os valores de diâmetro das rodas que compõe o

protótipo pode-se calcular a sensibilidade, do sistema usado como sensor de

velocidade, em cm.

𝜎 =𝐷𝑟𝑜𝑑𝑎𝜋

𝑁𝑟𝑎𝑛ℎ𝑢𝑟𝑎𝑠= 0,5105 [𝑐𝑚]

(4.1)

Pode-se dizer, então, que as rodas podem apresentar uma diferença

de meio centímetro de distância, sem que o sistema seja capaz de perceber.

4.3.2 Sensor de Distância

O módulo de ultrassom usado para o desenvolvimento deste

trabalho está ilustrado na figura 4.7.

Page 73: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

70

Figura 4.7: Módulo sensor de distância.

Fonte: o próprio autor.

O módulo de ultrassom inclui o transmissor de ultrassom, o receptor

e circuito de controle. Deste modo, a utilização deste é feita a partir da alimentação

de 5 V entre VCC e GND, e um sinal de trigger de 10 us.

O sinal de trigger deve ser ativado sempre que se deseja acionar o

sensor. A resposta do sensor, caso haja algum objeto a sua frente em até 4 metros,

é dada pelo pino “echo”, sendo o tempo de estado em alto deste, o tempo no qual a

onda demorou a percorrer o trajeto de ida, reflexão e volta.

4.3.3 Motores

Os motores usados para o desenvolvimento deste projeto, por serem

motores de baixo custo, não apresentam curva de torque nem características dos

componentes do circuito equivalente, por este motivo, foi necessário desenvolver um

sistema de controle empiricamente, sem a curva de torque deste. O resultado desta

metodologia é um desenvolvimento trabalhoso e obtenção de um sistema não ótimo.

O motor utilizado é mostrado na figura 4.8.

Page 74: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

71

Figura 4.8: Motores de tração do protótipo.

Fonte: o próprio autor.

É possível observar nesta figura a conexão do motor com o disco

com ranhuras se já no eixo do motor do lado oposto à roda.

As correntes de pico sobre o motor são de aproximadamente 350

mA na aceleração do protótipo e 800 mA na frenagem deste. A frenagem consiste

em uma manobra para evitar a colisão do robô com objetos do ambiente, tal

procedimento será explicado com mais detalhes no capítulo 5 deste trabalho.

4.4 MICROCONTROLADOR

O microcontrolador é a parte central do robô móvel, ou seja, este

capta os sinais dos sensores, computa qual ação deve ser tomada, este também

controla as velocidades dos motores, altera trajetórias. O circuito que contém o

PIC18F452 está mostrado na figura 4.9.

Page 75: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

72

Figura 4.9: Esquemático do circuito de utilização do microcontrolador.

Fonte: o próprio autor.

O circuito com microcontrolador pode ser dividido em sessões. O

circuito responsável pela alimentação e tratamentos de dados do encoder esquerdo

se encontra na parte superior e o do encoder direito na parte inferior. Deste modo,

podemos observar que os pinos 33 e 34, são entradas para os sinais dos encoders

direito e esquerdo, respectivamente.

O ultrassom é ativado pelo sinal de trigger que sai do pino 35,

enquanto o sinal de echo do sensor é lido pelo pino 36. O LED posicionado ao lado

do sensor de ultrassom ativado pelo pino 37, o qual inverte o seu sinal a cada ciclo

completo da rotina, deste modo pode-se observar visualmente se o protótipo está

funcionando normalmente.

Utiliza-se um cristal de 8 MHz com dois capacitores de 15 pF para

controlar o clock do PIC. Coloca-se o pino 1 em nível lógico alto (“1”). A alimentação

Page 76: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

73

das baterias com o capacitor de 220 µF é usada para alimentar a ponte H que envia

de volta o sinal 5 V DC regulado para alimentação do microcontrolador.

A ponte H é controlada pelas seis pinos, sendo estes 16 e 17 sinais

de “enable”, 23 e 24 entradas para a ponte H direita e 19 e 20 entradas para a ponte

H esquerda.

A placa resultante da montagem do circuito é mostrada na figura

4.10.

Figura 4.10: Placa do microcontrolador.

Fonte: o próprio autor.

Page 77: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

74

5 SOFTWARE

O software do robô móvel é a parte central do protótipo, esta, é

responsável pelo processamento e compreensão dos sinais emitidos pelos

sensores, pela medição da velocidade, feita pelo sensor de velocidade e pela

regulagem da velocidade feita pelo controle PID, esta também determina a direção

de rotação dos motores.

A programação do software do microprocessador foi desenvolvido

em três ambientes de programação diferentes, sendo estes o MikroC (desenvolvido

pela MikroElektronika), o MPLAB X IDE (desenvolvido pela Microchip) e o PCWH

(desenvolvido pela Custom Computer Services, Inc.). Porém o programa final foi

desenvolvido por meio do ambiente de programação PCWH.

O programa foi escrito integralmente na linguagem C, pois esta, em

comparação com o assembly, apresenta inúmeras vantagens em termos de

aprendizagem, recursos de funções pré-criadas, facilidade de compreensão,

modificação e reutilização do código, entre outras. O compilador PCWH é um

compilador ANSI C para Microchip PIC® MCUs.

A gravação do microncontrolador foi realizada por meio da utilização

do gravador de PIC, ora PICKit2, ora PICKit3, por meio do “hex file” gerador pelo

compilador do código.

O programa desenvolvido para o funcionamento do robô móvel está

representado no fluxograma ilustrado na figura 5.1.

Figura 5.1: Fluxograma de funcionamento do programa do robô.

Fonte: o próprio autor.

Page 78: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

75

Como pode ser observado no fluxograma, o microcontrolador faz as

configurações iniciais ao ser ligado, após este momento, este entra em um loop no

qual se verifica a velocidade de cada roda, faz a regulação da velocidade, atualiza-

se a velocidade, verifica-se se existem obstáculos à frente, caso haja ativa-se a

mudança de direção, por fim reinicia-se o loop.

A velocidade é verificada por meio do número de pulsos no encoder

A, que foi considerado a referência, diferença de velocidade entre a roda A e a roda

B é considerado o erro de velocidade, este erro serve de entrada para o controlador

PID que calcula a correção necessária para alteração de velocidade na roda B. A

equação do controlador PID é representada pelas equações abaixo.

𝑉𝑒𝑙𝐵 = 𝑉𝑒𝑙𝐵 + 𝐶𝑓𝑎𝑡𝑜𝑟 𝑑𝑒 𝑐𝑜𝑟𝑟𝑒çã𝑜 (5.1)

𝐶𝑓𝑎𝑡𝑜𝑟 𝑑𝑒 𝑐𝑜𝑟𝑟𝑒çã𝑜 = 𝐸𝑟𝑟𝑜 ∗ 𝐾𝑝 + 𝐼 ∗ 𝐾𝑖 + 𝐷 ∗ 𝐾𝑑 (5.2)

A velocidade na roda B é alterada, neste momento inicia-se o

processo com o segundo sensor, o sensor de distância. Um sinal de “trigger” é

enviado ao módulo de ultrassom. A distância do obstáculo à frente (caso haja) é

calculada com relação ao tempo de nível lógico alto (bit “1”) no sinal de “echo”

(resposta do módulo ultrassom). Pela equação (5.3):

𝐷 = 𝑇𝑢𝑠/58 (5.3)

Onde D é a distância do objeto em relação à plataforma, 𝑇𝑢𝑠 o

tempo de duração do pulso de “echo”, equivalente ao tempo de ida e volta da onda

ultrassônica, divido por 58 (equação 2.28), o qual é dado pelo inverso da metade da

velocidade do som (0,017 cm/µs). Caso a distância para o obstáculo seja menor do

que a mínima estipulada (20 cm, para este caso) o veículo entra em uma sequência

de frenagem e parada, então faz um giro em torno de uma das rodas e retoma ao

início do loop.

Uma das desvantagens do código utilizado é leitura linear do código,

ou seja, quando este está regulando a velocidade não há verificação de obstáculos,

em seguida, quando este muda para a procura de obstáculos à frente a velocidade

Page 79: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

76

não é verificada. Desta forma existe a possibilidade de ocorrer falhas na verificação

de obstáculos ou na regulação da velocidade, sem que o robô móvel seja capaz de

detectar e corrigir.

Devido à inexistência de uma curva de torque, ou características do

circuito equivalente para o motor adotado, os valores das constantes do controlador

PID e os valores de PWM e duração da frenagem e rotação do protótipo tiveram que

ser levantados empiricamente.

Page 80: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

77

6 RESULTADOS OBTIDOS

Como resultado do estudo e desenvolvimento do protótipo

apresentado neste trabalho pode-se afirmar que por mais que os módulos de um

protótipo móvel sejam de conhecimento básico e de fácil entendimento da

engenharia, a combinação destes, aliado com o código, de forma a se obter um

resultado ótimo é de difícil obtenção.

Quanto ao resultado do estudo, sugere-se o desenvolvimento

individual de cada módulo, tanto no processo de hardware, como de software, com o

aumento do grau de complexidade acrescido pelo aumento de sensores e motores é

fácil o desenvolvedor perder a compreensão do trabalho como um todo, permitindo a

ocorrência de erros de programação ou de hardware.

Com a ocorrência de erros em sistemas complexos, é importante

que testes sejam realizados separadamente no hardware, com o um código já

testado e confiável, ou no software, com um hardware confiável, pois para sistemas

complexos os erros de software e hardware tendem a se confundir, inviabilizando o

desenvolvimento do trabalho.

6.1 FUNCIONAMENTO

O funcionamento do robô móvel, executado pela programação do

microcontrolador, desenvolvida neste trabalho, pode ser dividido em três partes

principais, estes são a medição da velocidade, a correção da velocidade e a

detecção de obstáculos.

6.1.1 Detecção de Velocidade

A detecção da velocidade do protótipo, como já abordado neste

trabalho, é medida por meio de pulsos gerados por encoder e um disco de ranhuras

acoplado ao eixo do motor. Á medida que a luz do LED passa pela ranhura do disco

o fototransistor satura e o microcontrolador recebe 5 V, em contrapartida, quando a

luz é impedida pelo anteparo um sinal de 0 V vai para o respectivo pino do

microcontrolador.

Page 81: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

78

Com a contínua rotação do motor o sinal no pino do PIC comuta

entre 0 e 5 V, resultando em uma onda quadrada de aproximadamente 50% (teórico)

de ciclo ativo. A medição do número de pulsos em um determinado período leva à

determinação da velocidade de rotação do motor e, por consequência, à velocidade

linear do protótipo.

O seguinte código foi implementado no programa do PIC18F452, o

qual utiliza desta técnica para determinação da velocidade de cada roda.

// Habilita chave global de interrupção para contagem de pulsos dos

//encoders.

enable_interrupts (GLOBAL);

//Pega a velocidade das rodas através dos encoders.

delay_ms (400); //Espera 400 ms.

//Desabilita a contagem de pulsos dos encoders.

Disable_interrupts (GLOBAL);

A rotina de interrupção é ativada por 400 ms. A cada comutação do

pino de entrada de 5 para 0 V, ou o contrário, ativa a rotina de interrupção da

respectiva porta, que realiza a contagem do número de pulsos de clock.

// Interrupção INT0, conta pulsos do encoder A.

// Cada vez que der um pulso no pino RB0, incrementa o contador de

//pulsos A.

#INT_EXT

void EXT_isr(VOID)

cntA++;

//Interrupção INT0, conta pulsos do encoder B.

//Cada vez que der um pulso no pino RB1, incrementa o contador de

//pulsos B.

#INT_EXT1

void EXT1_isr(VOID)

cntB++;

Duas mudanças de estados são feitas por ranhura do disco, deste

modo uma revolução completa do disco gerará 40 mudanças de estado. Sabe-se

também que uma rotação completa do motor leva a um deslocamento linear de

20,42 cm.

Page 82: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

79

6.1.2 Correção da Velocidade

O sistema de correção da velocidade é feito por meio de um

controlador PID digital. As constantes proporcional, integral e derivativa foram

obtidas empiricamente, devido à ausência das características físicas do motor, e por

consequência, ausência da função de transferência. Tais valores, apresentados na

seção anterior e declarados no código do PIC, são de funcionalidade apenas para

estes motores, ou seja, caso haja uma troca dos motores de tração será necessário

recalcular as constantes.

// Constantes do controlador PID.

const FLOAT Kp = 18.3; // Constante de proporção.

const FLOAT Ki = 0.3; // Constante de integral.

const FLOAT Kd = 0.002; // Constante de diferencial.

Após a medição da velocidade de rotação do motor, o erro é

calculado, como sendo a diferença de velocidade entre a rotação do motor A e B.

Desta forma, este passa pelo controlador PID.

I +=Err; //Add o erro ao I (Calcula a integral do erro).

D = Err – Err_Tmp; //Calcula o diferencial do erro.

Err_Tmp = Err; // Salva o erro atual.

Correcao = Err * Kp + I * Ki + D * Kd; // Calcula o ajuste da roda B.

VelB = VelB + ((SIGNED INT16) Correcao); //Calcula a nova velocidade.

Como é possível observar no código acima, a integral do erro é a

soma dos erros desde o início até o atual, pois a função do erro é um sinal digital. De

forma semelhante, a derivada do erro é a diferença entre o sinal anterior e o atual,

no intervalo de tempo. A correção da velocidade é então calculada o reajuste da

velocidade é feita de modo ao motor B apresentar uma velocidade mais próxima do

A.

6.1.3 Detecção de Obstáculos

A detecção de obstáculos é realizada mediante a um pulso de 20 µs

ao módulo de ultrassom, em seguida o microcontrolador espera o sinal de retorno do

Page 83: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

80

módulo. Uma vez que o ultrassom envia o sinal de resposta começa a contagem de

tempo a qual determina a duração do sinal de volta do detector de objetos.

//Detecta o obstáculo.

// Gera o sinal para iniciar a medida da distância.

output_high (TRIGGER); //Coloca o trigger em 5 V.

delay_us (20); //Espera 20 us.

output_low (TRIGGER); //Coloca o trigger em 0 V.

//Espera o sinal de Echo aparecer.

WHILE (input (ECHO) == 0);

//Captura a duração.

TempoI = get_timer1 (); // Pega o tempo inicial.

WHILE (input (ECHO) == 1); //Espera o sinal do echo acabar.

TempoF = get_timer1 (); //Pega o tempo final.

IF (TempoF >= Tempo I)

Dur = TempoF – TempoI; //Calcula a duração.

ELSE

Dur = TempoI – TempoF; //Calcula a duração.

Uma vez que o tempo de duração do pulso de volta é determinado o

sinal passa pela determinação do cálculo da distância em que o objeto se encontra

do protótipo.

//Calcula a distância (em cm). De acordo com o datasheet do sensor:

//Dist [cm] = Dur [us] / 58

Dist = Dur / 58;

O cálculo da distância é determinado de acordo com o datasheet do

módulo de ultrassom, no qual a distância em cm do obstáculo é a duração do pulso

de volta em µs divido por 58. A partir da distância determinada, o veículo decide

prosseguir ou retornar.

O processo de frenagem e retorno, assim como as constantes do

controlador PID, foi determinado empiricamente, o código para execução deste

procedimento encontra-se como apêndice A neste trabalho.

6.2 PROTÓTIPO COMPLETO

Quanto ao resultado do desenvolvimento do robô móvel, foi obtido

um protótipo capaz de detectar objetos no ambiente e evitar a colisão com estes.

Page 84: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

81

Tais objetos podem ser fixos ou móveis, devido à capacidade de reação do

protótipo.

Além do sistema de detecção de obstáculos, este veículo autônomo

também possui um sistema de detecção e controle de velocidade por meio de um

controlador PID. A utilização deste sistema proporciona a capacidade, explorada

pelo protótipo, de se desenvolver trajetórias próximas das retilíneas. A figura 6.1

mostra o protótipo final desenvolvido neste trabalho.

Figura 6.1: Robô móvel autônomo.

Fonte: o próprio autor.

A frente do protótipo foi definda como sendo o lado esquerdo, deste

modo as rodas direita e esquerda são respectivamente a superior e a inferior na

figura. Na parte traseira do protótipo está posicionado a ponte H (placa verde),

responsável pela orientação de rotação das rodas.

Os sensores de velocidade estão posicionados um de cada lado do

protótipo, entre a ponte H e a bateria, de onde saem os fios laranja, brando e verde.

A bateria, posicionada no centro do protótipo, gera a tensão e corrente de

Page 85: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

82

alimentação do protótipo.

O microcontrolador PIC18F452, responsável pelo tratamento de

todas as informações recebidas pelo robô, está posicionado na parte dianteira deste,

o qual possui em sua extremidade dianteira o módulo de ultrassom, responsável por

alertar o veículo autônomo a distância de um possível obstáculo posicionado à frente

do protótipo.

Page 86: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

83

7 CONCLUSÃO

É possível concluir neste trabalho que o desenvolvimento de um

robô móvel deve ser estudado sistematicamente em um processo gradual. A

separação do projeto completo em módulos possibilita a evolução mais rápida do

projeto, porém principalmente viabiliza um maior grau de escalabilidade do sistema.

Para construção de novos protótipos, considera-se importante a

construção do protótipo inicial sob arquitetura reativa, de modo que este possa

conviver de modo satisfatório com o meio em que está submetido, para então

acrescentar parte deliberativa, ou controle remoto, de acordo com a necessidade do

projeto. Esta organização facilita o desenvolvimento do projeto e complexidade e

compreensão e correção de erros.

Foi observado também que é possível a realização do controle de

motores genéricos de baixo grau de confiabilidade por meio de um controlador PID e

que para o caso da ausência dos parâmetros do motor, pode-se achar as constantes

do controlador empiricamente, como realizado neste trabalho.

A alimentação de um protótipo pode ser muitas vezes um grande

problema, quanto à sua duração, peso e capacidade de corrente. Para pequenos

protótipos, pudemos observar que baterias de celular apresentam um ótimo

resultado, pois estas apresentam um volume e peso menores, quando comparados

à outras formas de alimentação para pequenas tensões, mas apresentam também,

principalmente, uma ótima capacidade de corrente, possibilitando à alimentação de

motores de pequenas correntes sem quedas na tensão.

O protótipo desenvolvido neste trabalho possibilita a movimentação

do robô móvel em uma trajetória próxima da linear, sendo este também capaz de

detectar obstáculos posicionados à frente do protótipo e alterar a trajetória a fim de

evitar a colisão deste.

Para próximos trabalhos sugere-se utilizar o sistema de detecção e

controle de velocidade desenvolvido neste trabalho para geração de velocidade para

criação de trajetórias curvilíneas. Sugere-se também acrescentar sensores de

reconhecimento de obstáculos e o desenvolvimento do software de geração de

trajetórias ótimas para desvio.

Page 87: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

84

REFERÊNCIAS

AIBO. Wikipedia, the free encyclopedia. Disponível em:

<http://en.wikipedia.org/wiki/AIBO>. Acesso em: 13 nov. 2014.

BARROS, A. M. de S. ANSI C para quem tem pressa. 24 feb. 2003. Disponível em:

<http://www.dei.isep.ipp.pt/~abarros/docs/ANSI_C.pdf>. Acesso em: 12 out. 2014.

BHAGAT, N. A.; BHAGANAGARE, M. DC motor speed control using PID controllers.

2009. Disponível em:

<http://bhagatnikunj.weebly.com/uploads/1/0/4/6/10469153/esd_report.pdf>. Acesso em: 12

out. 2014.

BORGES, G. A.; LIMA, A. M. N.; DEEP, G. S.. Controladores cinemáticos de trajetória

para robôs móveis com tração diferencial. In: SIMPÓSIO BRASILEIRO DE

AUTOMAÇÃO INTELIGENTE, VI. Bauru. 2003.

BRITTO, R. de S. Uma arquitetura distribuída de hardware e software para controle de

um robô móvel autônomo. 2008. 68 f. Dissertação (Mestrado em Engenharia Elétrica e de

Computação) – Centro de Tecnologia, Universidade Federal do Rio Grande do Norte, Natal,

2008.

CAMPION, G.; BASTIN, G.; D’ANDRÉA-NOVEL, B.. Structural properties and

classification of kinematic and dynamics models of wheeled mobile robots. IEEE

transactions on robotics and automation. v. 12, n. 1, p. 47-62. 1996.

CRUZ, A. P. B. Modelagem dinâmica de uma estrutura de base holonômica para robôs

móveis: inclusão das não-linearidades de entrada. 2007. 118-f. Dissertação (Mestrado em

Engenharia Elétrica) – Universidade Federal da Bahia, Bahia, 2007.

DOYLE, J.; FRANCIS, B.; TANNENBAUM, A.; Feedback control theory. Macmillan

Publishing Co., 1990. Disponível em:

<http://www.control.utoronto.ca/people/profs/francis/dft.pdf>. Acesso em: 12 out. 2014.

DUDEK, G.; JENKIN, M.. Computational principles of mobile robotics. 2ª edição. New

York: Cambridge University Press, 2010.

ELECTROLUX TRILOBITE. Wikipedia, the free encyclopedia. Disponível em:

<http://en.wikipedia.org/wiki/Electrolux_Trilobite>. Acesso em: 13 nov. 2014.

FIERRO, R.; LEWIS, F. L.. Control of a nonholonomic mobile robot using neural networks.

IEEE transactions on neural networks. v. 9, n. 4, p. 589-600. 1998.

HUANG, G.; LEE, S.. PC-based PID speed control in DC motor. IEEE Transactions on

Audio, Language and Image Processing, -ICALIP 2008, Shanghai, 7-9., p. 400-407, jul 2008.

IBOT. Wikipedia, the free encyclopedia. Diponível em: <http://en.wikipedia.org/wiki/IBOT>. Acesso em: 13 nov. 2014.

IBRAHIM, D. Advanced PIC microcontroller projects in C: from USB to ZIGBEE with

the PIC 18F series. Burlington: Newnes, Elsevier, 2008.

Page 88: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

85

IROBOT R-GATOR. Wikipedia, the free encyclopedia. Disponível em:

<http://en.wikipedia.org/wiki/IRobot_R-Gator>. Acesso em: 13 nov. 2014.

JAYAVISHRUTHA, G.V.; PRIYA, P. J.; PRASATH, T. A.. Speed control of PMDC motor

with the combination of error amplifier and PID controller. International Journal of

Electrical & Electronics Engineering Advanced Research, v. 2, SP-1, feb. 2014.

KASPRZYK, L.. Led’s world. Disponível em: <kababaka.com/artykuly/sciemnianie-led/>.

Acesso em: 04 out. 2014.

KERNIGHAN, B. W.; RITCHIE, D. M.. The ANSI C programming language. 2ª edição.

Englewood Cliffs, NJ: Prentice Hall, 1988.

KRISHNAN, R. Eletric motor drives: modeling, analysis, and control. New Jersey: Prentice

Hall, 2001.

MEDIÇÃO de deformação, tensão, força e movimento. Disponível em:

<http://www.fem.unicamp.br/~instmed/Deformacao_Torque.htm>. Acesso em: 12 out. 2014.

MELO, J. L. G. G. de. Mini Curso: microcontrolador PIC 18F452 / PROTEUS, Curitiba,

2011. Disponível em:

<http://www.eletrica.ufpr.br/~james/Laboratorio%20V/arquivos/Mini%20Curso%20Microco

ntrolador.pdf>. Acesso em: 12 out. 2014.

MELO, L. F. de. Proposta de simulador virtual para sistema de navegação de robôs

móveis utilizando conceitos de prototipagem rápida. 2007. 264 f. Tese (Doutorado em

Engenharia Mecânica) – Departamento de projeto mecânico, Universidade Estadual de

Campinas, Campinas, 2007.

MICROCHIP. PIC18FXX2 Data Sheet: high-performance, enhanced flash microcontrollers

with 10-bit A/D. 2006. Disponível em:

<http://ww1.microchip.com/downloads/en/DeviceDoc/39564c.pdf>. Acesso em: 12 out.

2014.

MONTEMERLO, M.; PINEAU, J.; ROY, N.; THRUN, S.; VERMA, V. Experiences with a

mobile robotic guide for the elderly. National Conference on Artificial Intelligence. AAAI-

02 Proceedings. 2002, p. 587-592.

OGATA, K.. Engenharia de controle moderno. New Jersey: Prentice Hall, 1985.

ONDA triangular dente de serra. Disponível em:

<http://www.feng.pucrs.br/~stemmer/labeletronica/tr2/trab2_2.html>. Acesso em: 04 out.

2014.

POLLACK, M. E. Pearl: A mobile robotic assistant for the elderly. AAAI Technical

Report WS-02-02. 2002.

SARHAN, H. Software-based speed control of a DC motor using pulse-width modulation.

International Knowledge Sharing Platform: Journals & books hosting – conferences &

workshops solutions. Disponível em:

<http://www.iiste.org/Journals/index.php/CTI/article/view/13187>. Acesso em: 12 out. 2014.

Page 89: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

86

SECCHI, H. Uma introdução aos robôs móveis. Núcleo de estudos em robótica e

autômoção. Instituto Federal de Educação em Robótica e Automação. 2012.

SIEGWART, R.; NOURBAKHSH, I. R.. Introduction to autonomous mobile robots.

Massachusetts: The MIT press, 2004.

SINGH, A. P.; NARAYAN, U.; VERMA, A.. Speed control of DC motor using PID

controller based on Matlab. International Conference on Recent Trends in Applied

Sciences With Engineering Application, v. 4, n. 6. 22-28, 2013.

SINGH, V.; Garg, V. K.. Tuning of PID controller for speed control of DC motor using soft

computing techniques – A Review. International Journal of Applied Engineering

Research. Research India Publications. v. 9, n. 9, p. 1141-1148, 2014.

STMICROELECTRONICS. L298: dual full-bridge driver. Disponível em:

<http://www.tech.dmu.ac.uk/~mgongora/Resources/L298N.pdf>. Acesso em: 12 out. 2014.

ULTRASSONIC ranging module HC – SR04. Disponível em:

<http://users.ece.utexas.edu/~valvano/Datasheets/HCSR04b.pdf>. Acesso em: 12 out. 2014.

WALTER, W. G. An imitation of life. Scientific American, v. 182, n. 5, p. 42-45, 1950.

WATANABE, L. Independence Technology Discontinues the iBOT. Disponível em:

<http://www.mobilitymgmt.com/Articles/2009/02/01/Independence-Technology-

Discontinues-the-iBOT.aspx>. Acesso em: 13 nov. 2014.

YEDAMALE, P.; MICROCHIP TECHNOLOGY INC.. Brushless DC (BLDC) motor

fundamentals. Disponível em:

<http://electrathonoftampabay.org/www/Documents/Motors/Brushless%20DC%20(BLDC)%

20Motor%20Fundamentals.pdf>. Acesso em: 12 out. 2014.

Page 90: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

87

APÊNDICES

Page 91: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

88

APÊNDICE A

Rotina de Frenagem e Retorno

A rotina de frenagem e retorno, escrita na linguagem C para o compilador PCWH, está

descrita abaixo.

// Da meia volta se o objeto estiver muito perto.

IF (Dist < DIST_MIN)

// Desliga os motores.

set_pwm1_duty (170);

set_pwm2_duty (170);

// Inverte o sentido da roda A.

output_low (FRENTE_A);

output_high (TRAS_A);

// Inverte o sentido da roda B.

output_low (FRENTE_B);

output_high (TRAS_B);

delay_ms (150) ;

// Desliga os motores.

set_pwm1_duty (0);

set_pwm2_duty (0);

// Espera o motor parar.

delay_ms (200);

// Inverte o sentido da roda A.

output_low (FRENTE_A);

output_high (TRAS_A);

// Inverte o sentido da roda B.

output_high (FRENTE_B);

output_low (TRAS_B);

// Gira um pouco.

set_pwm2_duty (250); // Coloca uma velocidade baixa.

delay_ms (400); // Espera girar.

// Volta a andar para frente.

output_low (TRAS_A);

output_high (FRENTE_A);

// Reseta a velocidade.

VelA = VEL_INICIAL;

VelB = VEL_INICIAL;

// Reseta o PID para que ele não desestabilizar.

I = 0;

Err_Tmp = 0;

Page 92: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

89

ANEXOS

Page 93: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

90

ANEXO A

DataSheet PIC18F452

As primeiras cinco páginas do datasheet do PIC18F452, usado neste trabalho como

microcontrolador embarcado no robô móvel estão disponíveis abaixo:

Page 94: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

91

Page 95: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

92

Page 96: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

93

Page 97: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

94

Page 98: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

95

ANEXO B

DataSheet CI Ponte-H L298N

As primeiras quatro páginas do datasheet do CI L298N, usado neste trabalho como

base do módulo driver com dupla ponte-H, estão disponíveis abaixo:

Page 99: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

96

Page 100: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

97

Page 101: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

98

Page 102: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

99

ANEXO C

DataSheet Módulo HC-SR04

O datasheet do módulo HC-SR04, usado neste trabalho como sensor de distância está

disponível integralmente abaixo:

Page 103: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

100

Page 104: ARQUITETURA EMBARCADA REATIVA DE · PDF filebased on PID controller, so that a close to linear trajectory can be made for the vehicle displacement. Key words: Mobile Robotic. PID Controller

101