diego nunes bertolani sintonia do controle de …repositorio.ufes.br/bitstream/10/6205/1/diego...

102
UNIVERSIDADE FEDERAL DO ESP ´ IRITO SANTO CENTRO TECNOL ´ OGICO PROGRAMA DE P ´ OS-GRADUAC ¸ ˜ AO EM ENGENHARIA EL ´ ETRICA DIEGO NUNES BERTOLANI SINTONIA DO CONTROLE DE CONFIGURAC ¸ ˜ AO DE ROB ˆ OS M ´ OVEIS MULTIARTICULADOS VIA ALGORITMO GEN ´ ETICO VIT ´ ORIA - ES 2013

Upload: others

Post on 19-Dec-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

UNIVERSIDADE FEDERAL DO ESPIRITO SANTOCENTRO TECNOLOGICO

PROGRAMA DE POS-GRADUACAO EM ENGENHARIA ELETRICA

DIEGO NUNES BERTOLANI

SINTONIA DO CONTROLE DE CONFIGURACAO DEROBOS MOVEIS MULTIARTICULADOS VIA ALGORITMO

GENETICO

VITORIA - ES2013

DIEGO NUNES BERTOLANI

SINTONIA DO CONTROLE DE CONFIGURACAO DEROBOS MOVEIS MULTIARTICULADOS VIA ALGORITMO

GENETICO

Dissertacao apresentada ao Programa de Pos-Graduacaoem Engenharia Eletrica do Centro Tecnologico daUniversidade Federal do Espırito Santo, como requisitoparcial para obtencao do Grau de Mestre em EngenhariaEletrica com enfase em Robotica e Automacao.

Orientador: Prof. Dr. Ing. Edson de Paula FerreiraCo-orientador: Prof. Dr. Anselmo Frizera Neto

VITORIA - ES2013

DIEGO NUNES BERTOLANI

SINTONIA DO CONTROLE DE CONFIGURACAO DEROBOS MOVEIS MULTIARTICULADOS VIA ALGORITMO

GENETICO

Dissertacao submetida ao programa de Pos-Graduacao em Engenharia Eletrica do CentroTecnologico da Universidade Federal do Espırito Santo, como requisito parcial para aobtencao do Grau de Mestre em Engenharia Eletrica.

Aprovada em 30 de outubro de 2013.

COMISSAO EXAMINADORA

Dados Internacionais de Catalogacao-na-publicacao (CIP)

(Biblioteca Setorial Tecnologica,

Universidade Federal do Espırito Santo, ES, Brasil)

Bertolani, Diego Nunes, 1987-

B546s Sintonia do controle de configuracao de robos moveis

multiarticulados via algoritmo genetico / Diego Nunes Bertolani. - 2013.

134 f. : il.

Orientador: Edson de Paula Ferreira.

Coorientador: Anselmo Frizera Neto.

Dissertacao (Mestrado em Engenharia Eletrica) - Universidade

Federal do Espırito Santo, Centro Tecnologico.

1. Algoritmos geneticos. 2. Robos moveis. 3. Robos - Sistemas

de controle. 4. Sistemas inteligentes de controle. I. Ferreira, Edson

de Paula. II. Frizera Neto, Anselmo. III. Universidade Federal do

Espırito Santo. Centro Tecnologico. IV. Tıtulo.

CDU: 621.3

”E preciso amar as pessoas como se nao houvesse amanha, porquese voce parar para pensar, na verdade nao ha.”

(Renato Russo).

AgradecimentosPrimeiramente gostaria de agradecer a Deus por tornar possıvel este momento tao es-

pecial, sem ele nada disso faria sentido, nas horas mais difıceis ele me iluminou e me deuforcas para continuar firme e forte na batalha.

Nao menos importantes sao meus amados pais, Sebastiao e Jaceneia que sempre apoiaramas minhas decisoes, confiaram e acreditaram em mim. Serei eternamente grato pela educacaoe compreensao em todos os momentos. Sou muito honrado por ser filho destas duas pessoasincrıveis. Meu respeito por voces e enorme. Agradeco tambem aos meus irmaos, Rodrigo eAlynne, por dividirem comigo grandes experiencias de vida.

Agradeco a minha namorada, Mayara Paes Santos, que nos momentos onde tudo pareciadar errado sempre me estimulou e confiou na minha capacidade, e tambem pelo amor e car-inho de todos os dias. Agradeco tambem ao meu sogro Carlos, e a minha sogra Marcia, pelaexperiencia e pelos conselhos.

Ao meu orientador, Edson de Paula Ferreira, pela paciencia, sabedoria, pelos conselhos eensinamentos, aprendi muito com voce, professor. E ao meu coorientador, Anselmo FrizeraNeto, por estar, na hora que mais precisei, apto e disposto a ajudar.

Aos meus amigos do Mestrado, principalmente ao incomparavel Joao Coelho, por sem-pre estarem junto comigo, nos trabalhos, exercıcios, brincadeiras, churrascos, festas, enfim,por toda convivencia e amizade. Mesmo que a vida nos leve para caminhos diferentes, es-pero nunca deixar de ser amigo de todos que fizeram esta fase da minha vida valer tanto apena.

Aos professores da Pos-Graduacao que me ensinaram muita coisa, passo por esta etapamais sabio e forte e aos professores da banca, que aceitaram o convite de participar daavaliacao desta dissertacao.

A CAPES pelo apoio financeiro concedido, sem o qual esta pesquisa nao teria sidopossıvel.

Diego Nunes Bertolani

Resumo

Este trabalho propoe uma estrategia para a sintonia de controladores lineares, via Al-goritmos Geneticos, no espaco de configuracoes de Robos Moveis Multiarticulados, para oproblema do controle de movimentos a re. Como em todo sistema nao linear e complexo, ocontrole linear em malha fechada e necessario para prover robustez ao sistema com contro-ladores nao lineares ou inversas aproximadas a esquerda da planta, em malha aberta. Parao problema em questao, os controladores nao lineares propostos na literatura tem os ganhosdos controladores lineares ajustados empiricamente em valores constantes, para movimentosque percorrem uma ampla gama de valores dos angulos de configuracao, sempre objeti-vando evitar a situacao de engavetamento ou jacknife da composicao. Esta abordagem temconduzido a resultados em regime transitorio ou estacionario pouco satisfatorios. Assim,neste trabalho e feito um estudo sistematico da sintonia de ganhos no entorno de particoesadequadas do espaco de configuracoes, visando identificar a variabilidade dos ganhos emfuncao do melhor desempenho obtido em cada particao. O estudo e sistematizado tendocomo base experimental dois controladores nao lineares propostos para um robo ou veıculomultiarticulado em escala, composto de um elemento trator e dois trailers passivos ou semmotorizacao. A estrategia proposta tem como ferramenta basica de implementacao uma in-terface desenvolvida para possibilitar versatilidade na analise de diversas estruturas linearesa multiplos ganhos ajustaveis, diversas estruturas de controle nao linear e diversas possibili-dades de plantas realizadas via modelo analıtico ou aproximacoes numericas, por exemplo,neurais e fuzzy. Alem do escopo deste trabalho, a identificacao do vetor de ganhos para os es-tornos das diversas particoes do espaco de configuracoes deve conduzir a sıntese de mais umelemento em cascata na estrutura global de controle, sob a forma de um interpolador de gan-hos, possivelmente fuzzy, que devera proporcionar um desempenho satisfatorio na execucaode manobras mais complexas, que demandam movimentos mais amplos, rapidos e precisos.

Palavras - chave: Algoritmos Geneticos, Robos Moveis Multiarticulados, Sintonia.

Abstract

This work proposes a strategy for tuning linear controllers via genetic algorithms in thespace of configurations of Multiarticulated Mobile Robots to the problem of backward mo-tion control. As in any nonlinear system and complex, the linear closed-loop control is neces-sary to provide robustness to the system nonlinear controllers or approximate left inverse ofthe plant in open loop. For this problem, the nonlinear controllers proposed in the literaturehave gains of linear controllers empirically adjusted how constant values for movements thatcover a wide range of values of the angle configuration, always aiming to avoid the situationof pileup or jacknife composition. This approach has led to results in transitional or sta-tionary unsatisfactory. Thus, this work is done a systematic study of tuning gains in aroundappropriate partitions of the configuration space, to identify the variability of earnings dueto the best performance obtained in each partition. The study is based on systematic ex-perimental two nonlinear controllers proposed for a robot or multiarticulated vehicle scale,consisting of one element tractor and two trailers liabilities or without motorization. Theproposed strategy has how the basic tool for implementing an developed interface to allowversatility in the analysis of various linear structures with multiple adjustable gains, variouscontrol structures, and various nonlinear plants made possible through the analytical modelor numerical approximations, for example, neural, and fuzzy. Beyond the scope of this study,the identification of vector gains for several reversals of partitions configuration space shouldresult in the synthesis of a further cascade element in the overall control in the form of aninterpolation of gains, possibly fuzzy which should provide a satisfactory performance in theexecution of more complex maneuvers that require larger movements, fast and accurate.

Keywords: Genetic Algorithms, Multiarticulated Mobile Robots, Tuning.

Lista de Figuras

1.1 Exemplos de Veıculos Multiarticulados . . . . . . . . . . . . . . . . . . . 23

1.2 Cadeia cinematica generica de um RMMA. . . . . . . . . . . . . . . . . . 24

1.3 Sistema Completo de Navegacao de um RMMA. . . . . . . . . . . . . . . 27

1.4 Representacao do Algoritmo Genetico na sintonia de controlador linear. . . 30

2.1 Truck-Trailer-Trailer antes do processo de instrumentacao. . . . . . . . . . 32

2.2 Automodelo Globe Liner, elemento trator. . . . . . . . . . . . . . . . . . . 34

2.3 VMA montado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

2.4 Placa devidamente montada. . . . . . . . . . . . . . . . . . . . . . . . . . 36

2.5 Representacao do sistema embarcado e dos subsistemas do prototipo. . . . 37

2.6 Local de instalacao do encoder, destaque para o fototransistor e o amplifica-dor operacional. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

2.7 Controlador Eletronico de Velocidade. . . . . . . . . . . . . . . . . . . . . 40

2.8 (a) Resposta inicial do sistema de direcao (b) Primeira correcao (c) Segundacorrecao (d) Resposta final do sistema corrigido. . . . . . . . . . . . . . . . 42

2.9 Potenciometro instalado na junta articulada. . . . . . . . . . . . . . . . . . 43

2.10 Fluxograma das principais rotinas do firmware. . . . . . . . . . . . . . . . 45

2.11 Arquitetura de processamento e comunicacao. . . . . . . . . . . . . . . . . 47

2.12 (a) Transceptor TRF 2.4Ghz (b) Layout da placa de circuito (c) Modulo decomunicacao montado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

2.13 Datagrama de comunicacao. . . . . . . . . . . . . . . . . . . . . . . . . . 48

ix

2.14 Placa USB conectada ao computador. . . . . . . . . . . . . . . . . . . . . 50

3.1 Representacao do veıculo de testes - configuracao convexa. . . . . . . . . . 54

3.2 Representacao do veıculo de testes - configuracao nao convexa. . . . . . . . 54

3.3 Controlador Feedback. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

3.4 Controlador Feedforward. . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

3.5 Parametros de desempenho utilizados neste trabalho. . . . . . . . . . . . . 59

3.6 Representacao de um PID basico. . . . . . . . . . . . . . . . . . . . . . . 60

4.1 Bloco Uniform Random Number. . . . . . . . . . . . . . . . . . . . . . . . 65

4.2 (a) ∆θ1 sem ruıdo de medicao expresso em radianos (b) ∆θ1 com ruıdo demedicao expresso em radianos - Manobra: [θ1,θ2] = [11.57,18]→ [13]. . 66

4.3 (a) ∆θ2 sem ruıdo de medicao expresso em radianos (b) ∆θ2 com ruıdo demedicao expresso em radianos - Manobra: [θ1,θ2] = [11.57,18]→ [13]. . 67

4.4 Bloco Band-Limited White Noise. . . . . . . . . . . . . . . . . . . . . . . 67

4.5 Bloco Backlash. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

4.6 Analise da influencia das folgas em: (a) Comportamento real (b) Simulacaocom a inclusao da folga (c) Simulacao sem a inclusao da folga - Manobra:[θ1,θ2] = [0,0]→ [−5]. . . . . . . . . . . . . . . . . . . . . . . . . . . 69

4.7 Bloco Transport Delay. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

4.8 Analise da influencia do atraso de comunicacao em numero de iteracoes: (a)Comportamento real do prototipo (b) Modelo com atraso = 0 (c) Modelocom atraso = 2 (d) Modelo com atraso = 4 (e) Modelo com atraso = 6. -Manobra: [θ1,θ2] = [0,0]→ [−5]. . . . . . . . . . . . . . . . . . . . . 72

4.9 Medicao do atraso de configuracao existente entre θ1 e θ2 para as seguintessituacoes: (a) Caso real (b) Caso simulado - Manobra: [θ1,θ2] = [0,0]→[−5]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

4.10 Estimacao do atraso de configuracao: (a) Dependente de θ2 inicial (b) De-pendente de θ1 inicial. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

4.11 Bloco Variable Time Delay. . . . . . . . . . . . . . . . . . . . . . . . . . . 75

4.12 Bloco Saturation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

4.13 Modelo cinematico: (a) Calculo de θ1 (b) Calculo de θ2. . . . . . . . . . . 76

4.14 Modelo completo com inclusao de efeitos dinamicos. . . . . . . . . . . . . 77

4.15 (a) Modelo cinematico (b) Comportamento real do prototipo (c) Modelo ade-quado utilizado para simulacao - Manobra: [θ1,θ2] = [3.9,6]→ [1]. . . . 78

4.16 (a) Modelo Cinematico (b) Comportamento real do prototipo (c) ModeloAdequado Utilizado para Simulacao - Manobra: [θ1,θ2] = [7.77,12]→ [7]. 79

4.17 (a) Modelo cinematico (b) Comportamento real do prototipo (c) Modelo ade-quado utilizado para simulacao - Manobra: [θ1,θ2] = [11.57,18]→ [13]. 80

4.18 (a) Modelo Cinematico (b) Comportamento real do prototipo (c) Modeloadequado utilizado para simulacao - Manobra: [θ1,θ2] = [15.28,24]→ [19]. 81

4.19 (a) Modelo cinematico (b) Comportamento real do prototipo (c) Modelo ade-quado utilizado para simulacao - Manobra: [θ1,θ2] = [11.57,18]→ [23]. 82

5.1 Fluxograma de funcionamento basico dos Algoritmos Geneticos. . . . . . . 86

5.2 Exemplo de implementacao da roleta como metodo de selecao. . . . . . . . 88

5.3 Exemplo de implementacao do torneio como metodo de selecao. . . . . . . 88

5.4 Distribuicao dos indivıduos antes e depois do metodo de classificacao. . . . 89

5.5 Crossover entre dois cromossomos (indivıduos). . . . . . . . . . . . . . . . 90

5.6 Processo biologico de mutacao em um cromossomo. . . . . . . . . . . . . 91

5.7 Tela inicial do software A4G. . . . . . . . . . . . . . . . . . . . . . . . . . 92

5.8 Identificacao de regioes na tela inicial do Software A4G. . . . . . . . . . . 93

5.9 Exemplo de funcionamento do software A4G. . . . . . . . . . . . . . . . . 101

6.1 Particionamento do espaco de configuracao na realizacao dos testes. . . . . 103

6.2 Manobra de fechamento. . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

6.3 Manobra de abertura. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

6.4 (a) Teste real do sistema com comutacao de ganhos proporcionais (b) Com-portamento simulado do sistema com comutacao de ganhos proporcionais -Manobra de abertura: [θ1,θ2] = [0,00,0]→ [36]. . . . . . . . . . . . . . 119

6.5 (a) Teste real do sistema com comutacao de ganhos proporcionais (b) Com-portamento simulado do sistema com comutacao de ganhos proporcionais -Primeira manobra de abertura: [θ1,θ2] = [0,00,0]→ [48]. . . . . . . . . 120

6.6 (a) Teste real do sistema com comutacao de ganhos proporcionais (b) Com-portamento simulado do sistema com comutacao de ganhos proporcionais -Segunda manobra de abertura: [θ1,θ2] = [0,00,0]→ [48]. . . . . . . . . 121

6.7 (a) Primeiro teste real do sistema com comutacao de ganhos proporcionais(b) Segundo teste real do sistema com comutacao de ganhos proporcionais(c) Comportamento simulado do sistema com comutacao de ganhos propor-cionais - Manobra de fechamento: [θ1,θ2] = [22,30,36]→ [0]. . . . . . 122

Lista de Tabelas

2.1 Caracterısticas do modulo de comunicacao. . . . . . . . . . . . . . . . . . 49

6.1 Respostas do sistema na sintonia adhoc para controlador Feedforward NaoLinear em simulacao. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

6.2 Respostas do sistema na sintonia adhoc para controlador Feedback Nao Li-near em simulacao. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

6.3 Bateria de testes para sintonia do controlador Feedforward. . . . . . . . . . 112

6.4 Bateria de testes para sintonia do controlador Feedback. . . . . . . . . . . . 115

xiii

Lista de Sımbolos

ξ - Coeficiente de amortecimento do sistema

∆θi - Variacao do i-esimo angulo de configuracao do robo []

γ - Angulo de configuracao responsavel pelo direcionamento das rodas do elementotruck do robo []

ϑ - Termo referente ao deslocamento do robo a cada iteracao [m]

θ1 - Angulo de configuracao entre o primeiro elemento passivo e o elemento truck dorobo []

θ2 - Angulo de configuracao entre o segundo e o primeiro elemento passivo do robo []

θi - Angulo de configuracao entre o i-esimo elemento e o elemento imediatamente ante-rior de uma cadeia articulada []

Ai - Distancia entre eixos do i-esimo elemento da cadeia articulada [m]

Bi - Distancia entre o eixo do i-esimo elemento e o ponto de engate do proximo elementoem uma cadeia articulada [m]

bps - Bits por segundo

d - Distancia [m]

end - Indice do ultimo elemento de um vetor

Ghz - Gigahertz

kbps - Kilobits por segundo

Kd - Ganho derivativo

Ki - Ganho integral

Kp - Ganho proporcional

xiv

Kp1 - Ganho proporcional aplicado ao controle do angulo de configuracao θ1

maxkd - Valor maximo do ganho Kd

maxki - Valor maximo do ganho Ki

maxkp - Valor maximo do ganho Kp

maxkp1 - Valor maximo do ganho Kp1

Mbps - Megabits por segundo

Mp - Sobrelevacao ou Overshoot [%]

minkd - Valor mınimo do ganho Kd

minki - Valor mınimo do ganho Ki

minkp - Valor mınimo do ganho Kp

minkp1 - Valor mınimo do ganho Kp1

mod() - Resto inteiro da divisao entre dois numeros

N - Numero de indivıduos de uma populacao

new f emale - Novo elemento femea de uma populacao

newmale - Novo elemento macho de uma populacao

p - Peso associado ao esforco de controle dos angulos θ1 e θ2

rand() - Funcao que gera numeros aleatorios

REF θ2 - Referencia para o angulo θ2 []

round() - Funcao de aproximacao a um numero inteiro

Rpot - Resistencia nominal do potenciometro [Ω]

Rx - Resistencia associada ao angulo que se deseja medir [Ω]

sgn - Sinal

sum - Somatorio

T - Perıodo de amostragem [s]

t - Tempo [s]

td - Tempo de delay [s]

tp - Tempo de pico [s]

tr - Tempo de subida ou Rise Time [s]

txmut - Taxa de mutacao escolhida pelo usuario do software A4G [%]

v - Velocidade [m/s]

Vin - Tensao de entrada ou alimentacao [V ]

Vout - Tensao de saıda [V ]

wn - Frequencia natural de oscilacao do sistema [rad/s]

Glossario

A4G - Nome do software baseado em Algoritmos Geneticos desenvolvido nesta dissertacao

A/D - Analogico-Digital

ASCII - American Standard Code for Information Interchange - Codigo Padrao Americanopara o Intercambio de Informacao

CC - Corrente Contınua

CMOS - Complementary Metal-Oxide-Semiconductor - Semicondutor Metal-Oxido Comple-mentar

ESC - Eletronic Speed Controller - Controle de Velocidade Eletronico

ISMB - Industrial Scientific and Medical Band - Banda Medica e Cientıfica Industrial

LAI - Laboratorio de Automacao Inteligente

NiMh - Nıquel-Hidreto Metalico

PI - Proporcional-Integral

PID - Proporcional-Integral-Derivativo

PWM - Pulse Width Modulation - Modulacao por Largura de Pulso

RMA - Robo Movel Articulado

RMMA - Robo Movel Multiarticulado

SMD - Surface Mount Device - Componentes de Montagem em Superfıcie

T RC - Transporte Rodoviario de Cargas

UFES - Universidade Federal do Espırito Santo

USB - Universal Serial Bus - Barramento Serie Universal

V MA - Veıculo Multiarticulado

xvii

Sumario

1 Introducao 20

1.1 Motivacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

1.2 Descricao do Problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

1.3 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

1.4 Estrutura da Dissertacao . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

2 Plataforma Experimental 32

2.1 Introducao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

2.2 O Automodelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

2.3 Hardware Embarcado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

2.3.1 Subsistema de Odometria . . . . . . . . . . . . . . . . . . . . . . 37

2.3.2 Subsistema de Acionamento . . . . . . . . . . . . . . . . . . . . . 39

2.3.3 Subsistema de Acionamento - Controle de Direcao . . . . . . . . . 40

2.3.4 Subsistema de Medicao Angular . . . . . . . . . . . . . . . . . . . 42

2.3.5 Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

2.4 Subsistema de Comunicacao . . . . . . . . . . . . . . . . . . . . . . . . . 46

2.5 MATLAB e Aplicativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

2.6 Conclusao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

xviii

3 Modelo Cinematico, Condicoes de Giro, Controladores Nao Lineares, Medidasde Desempenho e Controle PID 52

3.1 Modelo Cinematico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

3.2 Condicoes Singulares de Giro . . . . . . . . . . . . . . . . . . . . . . . . 55

3.3 Controlador Feedback Nao Linear . . . . . . . . . . . . . . . . . . . . . . 55

3.4 Controlador Feedforward Nao Linear . . . . . . . . . . . . . . . . . . . . 56

3.5 Medidas de Desempenho . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

3.6 Controle PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

3.7 Conclusao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

4 Adequacao do Modelo Cinematico 63

4.1 Analise de Velocidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

4.2 Analise da Leitura dos Potenciometros . . . . . . . . . . . . . . . . . . . . 65

4.3 Analise das Folgas Mecanicas . . . . . . . . . . . . . . . . . . . . . . . . 68

4.4 Derrapagem das Rodas e Zona Morta do Motor . . . . . . . . . . . . . . . 70

4.5 Analise do Atraso de Comunicacao . . . . . . . . . . . . . . . . . . . . . . 70

4.6 Analise do Atraso de Configuracao . . . . . . . . . . . . . . . . . . . . . . 72

4.7 Analise da Saturacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

4.8 Modelo Final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

4.9 Conclusao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

5 Algoritomos Geneticos e Software A4G 84

5.1 Algoritmos Geneticos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

5.2 Software A4G . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

5.2.1 Descricao do Layout . . . . . . . . . . . . . . . . . . . . . . . . . 92

5.2.2 Descricao do Funcionamento Interno . . . . . . . . . . . . . . . . 95

5.3 Conclusao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

6 Resultados e Discussoes 102

6.1 Sintonia Experimental . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

6.2 Sintonia via A4G . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

6.3 Controle por Comutacao de Ganhos Proporcionais . . . . . . . . . . . . . . 118

6.4 Conclusao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

7 Conclusoes e Trabalhos Futuros 124

7.1 Conclusoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

7.2 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

Referencias 127

Capıtulo 1

Introducao

Nao e uma tarefa simples pensar como seria o mundo atual sem a presenca dos robos.Estas estruturas mecanicas se fazem mais presentes na vida das pessoas a cada dia, e suacontribuicao para o desenvolvimento global e para o bem-estar social e inegavel.

A busca incessante do homem, em melhorar os processos produtivos, proporcionou, apartir da segunda metade do seculo XX, o desenvolvimento da automatizacao destes proces-sos. Esta caracterıstica, capaz de transformar maquinas em ferramentas que desenvolvem al-guma atividade de forma automatica, ou seja, com pouca, ou nenhuma contribuicao humana,foi imprescindıvel para que se chegasse ao cenario atual de desenvolvimento tecnologicovivido por boa parcela da populacao ao redor do globo.

Este cenario tecnologico atual se baseia na utilizacao de robos em diversas areas e funcoes,como, por exemplo: na industria, no uso domestico, na ajuda medica em hospitais, no usoem zonas que apresentem algum tipo de risco a vida humana e em tarefas, cuja realizacao,seja ate mesmo impossıvel ao homem, como a exploracao no fundo do mar e no espaco.

Esta crescente demanda por automacao fomenta pesquisas cujos objetivos sao a criacaoe/ou aperfeicoamento de dispositivos, tecnologias e teorias a fim de que se consiga criarmaquinas dotadas de inteligencia para que, desta forma, elas possam melhor auxiliar o ho-mem.

Os robos e maquinas inteligentes, alem de auxiliarem o homem em trabalhos diarios,destacam-se tambem por apresentarem algumas caracterısticas que justificam sua emprega-bilidade em diversos setores produtivos, dentre as quais podem ser destacadas: perıodo inte-gral de trabalho, sem pausas; melhor qualidade; menor probabilidade de apresentarem algumtipo de erro; maior velocidade e eficiencia que o homem; execucao de trabalhos repetitivose exaustivos, dentre outras vantagens facilmente observaveis.

1. Introducao 21

A perspectiva de automacao na ciencia tambem traz uma serie de questoes que preci-sam ser consideradas a medida que estas tecnologias forem disponibilizadas e adotadas emlarga escala, ou seja, como determinar o que se deve automatizar, o que deve ser deixadopara o homem, e como esta nova pesquisa automatizada ira afetar os resultados e o processocientıfico. De qualquer forma e incontestavel a importancia da pesquisa nesta area do co-nhecimento, principalmente quando as inovacoes visam a melhoria da qualidade de vida doshumanos.

Nao existe, na literatura, uma classificacao padronizada e unicamente considerada para osdiversos tipos de robos existentes. As classes podem ser definidas segundo varios criterios,tais como: autonomia do sistema de controle, mobilidade da base, estrutura cinematica,forma de acionamento, graus de liberdade, geometria do espaco de trabalho, tamanho, pelomaterial de que sao constituıdos, pela forma como sao montados, pelos atuadores que usam,pelos tipos de sensores que possuem, pela forma de locomocao, pelo ambiente em que atuam,pelo sistema de processamento que utilizam, pela funcao que exercem e outros.

Nesta dissertacao, visando abordar de forma resumida esta problematica de classificacao,aceita-se, de acordo com (Estevez, 1989), que os robos podem ser divididos em tres grandesclasses: robos industriais, medicos e moveis. O foco deste trabalho esta no estudo dos robosmoveis.

Segundo (Secchi, 2008), robos moveis podem ser definidos como plataformas mecanicasautomatizadas munidas de um sistema de locomocao capazes de navegar atraves de um de-terminado ambiente de trabalho, dotados de um certo nıvel de autonomia para sua navegacao.

Esta pesquisa trabalhou com robos moveis terrestres a rodas de uma estrutura especıfica,composta por tres elementos sequencialmente conectados, sendo um deles ativo e os demaispassivos. Esta estrutura, na literatura, e denominada Truck-Trailer-Trailer e, e geralmente,composta por um robo do tipo carro ao qual sao conectados dois trailers em sequencia. Talcomposicao e tambem chamada Robo Movel Articulado (RMA), quando usa apenas um trai-ler ou Robo Movel MultiArticulado (RMMA), quando usa dois ou mais trailers (Pandolfi,2012).

Vale ressaltar que os RMMAs possuem inumeras caracterısticas semelhantes as dosVeıculos Multiarticulados (VMAs), sobretudo no que tange a cinematica, e que, por estarazao, embora grande parte das pesquisas encontradas na literatura facam referencia apenasa robos, a maioria destes resultados sao facilmente adaptaveis para uso em veıculos.

A utilizacao de cadeias de elementos passivos cria um problema complexo no que dizrespeito a manobras em movimentos a re da composicao. Diversos trabalhos ja foram elabo-rados, com foco na obtencao de controladores capazes de resolver os principais problemasassociados a cinematica e dinamica de tal estrutura, mas ainda existem muitas questoes aserem exploradas e estudadas.

1. Introducao 22

Este trabalho visa, tambem, contribuir para que a navegacao de VMAs e RMMAs se torneuma tarefa mais simples, fazendo parte de uma pesquisa ampla, cujo escopo, e a obtencaode um sistema completo de navegacao para execucao de manobras automaticas ou assistidas,em areas restritas.

1.1 Motivacao

A principal motivacao deste trabalho esta em poder contribuir para o desenvolvimento deferramentas que auxiliem o homem em tarefas complexas, como neste caso, em particular,na navegacao robotica, mais precisamente em RMMAs ou VMAs em movimentos a re.Progressos neste campo poderiam contribuir para reducao de custos e melhoria de eficienciano setor industrial e na cadeia logıstica brasileira.

Os VMAs tem grande aplicabilidade, principalmente no Brasil, cujo transporte rodoviariode cargas (TRC) e responsavel por mais de 60% do volume de mercadorias movimentadas noBrasil, com o seu custo representando cerca de 6% do Produto Interno Bruto do paıs. Paraas empresas, o deslocamento de carga pelas estradas nacionais equivale a mais da metadeda sua receita lıquida, chegando a mais de 60% da receita na agroindustria (62%) e entreas industrias de alimentos (65,5%). Nada mais natural, portanto, que o crescente interessedas companhias por novas solucoes logısticas e por um estudo mais aprofundado do setor noBrasil (Araujo, 2011).

Observa-se que objetivando a reducao de custo por tonelada transportada, e comum ocarregamento de caminhoes alem da sua capacidade normal de carga. Esta pratica ilegal, emmedio prazo aumenta os custos com manutencao do veıculo, alem de provocar o desgasteprematuro das rodovias, prejudicando o transporte terrestre em geral. Como solucao paraeste problema, o uso de VMAs, ou seja, caminhoes com um ou mais semirreboques, e cadavez mais frequente no transporte de cargas. A utilizacao desse tipo de veıculo reduz o pesopor eixo transportado, diminuindo a degradacao das estradas e os custos com manutencao e,dessa forma, aumentando a rentabilidade por tonelada transportada (Pinheiro, 2004).

A Figura 1.1 mostra exemplos de VMAs executando funcoes de transporte rodoviario decargas, mas existem aplicacoes destas maquinas em diferentes setores, como por exemplo naagricultura, no patio de aeroportos e portos, em hospitais e em grandes armazens.

Diante da vasta aplicabilidade destes veıculos, se faz necessaria uma reflexao sobre acomplexidade de realizar manobras com estas estruturas, principalmente em movimentos are. Este trabalho tem como objetivo principal, propor algumas melhorias de solucoes decontrole ja existentes na literatura, para o problema de manobrar a re uma cadeia articulada

1. Introducao 23

(a) Veıculo com 2 trailers (b) Veıculo com 4 trailers

Figura 1.1: Exemplos de Veıculos Multiarticulados

com dois trailers passivos reais, sendo esta uma das configuracoes multiarticuladas maisutilizadas em transporte de cargas nas rodovias.

1.2 Descricao do Problema

Um RMMA e caracterizado por sua cadeia mecanica articulada, em geral, com o primeiroelemento motorizado (truck ou trator), cuja direcao e controlada pelas rodas dianteiras, e atracao podendo ser pelas rodas traseiras ou dianteiras, acoplado a elementos passivos arti-culados (trailers), sem motorizacao ou controle local, com ligacao (hitching) on-axle1 ouoff-axle2.

A Figura 1.2 mostra uma cadeia articulada generica, ilustrando o angulo da direcao (γ)e os de configuracao (θ1,...,θn), bem como os parametros geometricos da cadeia mecanicaarticulada, Ai e Bi, onde para Bi 6= 0, temos uma ligacao off-axle.

A complexidade maior do controle de manobras e navegacao de RMMAs esta ligadaaos movimentos a re. Nesta situacao, o sistema comporta-se como um pendulo invertidomultiplo horizontal. Uma vez que os engates permitem a livre rotacao, os angulos entre ostrailers (em um ou mais engates da composicao) podem aumentar para valores inadequadosevoluindo para uma situacao de jackknife (engavetamento). Na representacao de um RMMA,o vetor de configuracao tem como componentes os sucessivos angulos, θi, entre os respecti-vos elementos da cadeia mecanica articulada. A direcao das rodas dianteiras e caracterizadapelo angulo γ.

Com o objetivo de tornar o problema menos complexo, muitos trabalhos abordam so-mente o caso em que a cadeia articulada possui apenas 1 trailer, conforme verifica-se em(Michalek, 2009), (Ichihashi, 1993), (Petrov, 2010) e (Yang e Yu, 2006).

1Engate entre dois trailers feito sobre o eixo das rodas2Engate entre dois trailers feito fora do eixo das rodas

1. Introducao 24

Figura 1.2: Cadeia cinematica generica de um RMMA.

Outro fator determinante para tornar a problematica mais simples e realizar a navegacaosomente via simulacao, mesmo com uma estrutura composta por mais reboques, como em(Michalek, 2011) e (Matsushita, 2006).

Alguns trabalhos nao seguem este padrao de simplificacao do problema e optam porconsiderar estruturas mais complexas de cadeia articulada, com dois ou mais reboques, eutilizando robos reais, como em (Park et al., 2004) e em (Stahn e Stopp, 2007).

O controle da cadeia articulada em movimentos a frente tambem e alvo de muitos estu-dos, pois esta estrutura possui uma dinamica complexa e varias caracterısticas do compor-tamento em navegacao ainda nao sao bem conhecidas. Em (Martınez et al., 2008) e (Mo-rales et al., 2009) estuda-se o efeito da limitacao do angulo do volante na manobrabilidadedo veıculo, e em (Martini, 2003) propoe-se um controle lateral da estrutura, considerandoos deslizamentos laterais da cadeia em manobras curvas, bem como em (Weyand e Zobel,2011) que tambem estuda o veıculo nestas configuracoes.

Outra grande dificuldade encontrada no estudo destes veıculos e a definicao de um mo-delo cinematico generico e representativo para configuracoes com inumeros trailers, hajavista que existem muitas variaveis associadas as caracterısticas destes robos, como o tama-nho dos reboques, a distancia entre eixos, a forma de engate, numero de rodas que pos-suem tracao, se o truck possui tracao traseira, dianteira ou integral, entre outros parametrosintrınsecos de cada plataforma utilizada. Um modelo cinematico completo generico paraRMMAs foi desenvolvido em (Pandolfi, 2012) e um resumo deste modelo com algumasaplicacoes em controle podem ser visualizadas em (Ferreira e Pandolfi, 2011).

Diante da complexidade associada ao problema, muitos trabalhos utilizam tecnicas decontrole moderno, como as baseadas em redes neurais e na logica fuzzy, para realizar o con-trole da cadeia articulada em movimentos a re. A utilizacao destas tecnicas se justifica pelo

1. Introducao 25

fato da planta de controle, o RMMA, possuir comportamento nao-linear, inviabilizando as-sim o uso isolado de tecnicas comumente utilizadas em controle linear. Em (Gem e Willshire,1992) propoe-se o uso de apenas um neuronio para controle de posicionamento do veıculo,ja em (Nguyen, 1989) faz-se uso de redes neurais tanto para realizacao do controle, quantopara simulacao da cinematica do veıculo (preditor).

Em (Kong, 1992) as redes neurais funcionam de forma adaptativa, alterando as regrasfuzzy do sistema, evidenciando uma interacao neuro-fuzzy para realizacao do controle doRMMA. Outros estudos sao feitos aplicando-se as tecnicas fuzzy no controle da cadeia, comoem (Tanaka, 1994), (Chen, 1997), (Tsourdos et al., 2003) e (Ren et al., 2012).

Uma abordagem muito interessante e feita em (Riid e Rustern, 2007) e (Riid e Rustern,2006), no qual utilizam-se regras fuzzy para realizar o controle de cada junta da cadeia deforma independente, portanto, existem um conjunto de regras diferente para cada articulacaodo robo, realizando um controle em cascata, assim como proposto em (Kulitz, 2003) e im-plementado em (Oliveira, 2010).

Para que seja possıvel a utilizacao de tecnicas lineares de controle validadas na literatura,e amplamente utilizado o artifıcio de linearizacao do sistema em uma determinada faixa deoperacao, como ocorre em (Altafini, 2001) e (Altafini e Wahlberh, 2001).

Outra estrategia muito utilizada e o controle por imagem, geralmente combinada comoutras tecnicas de controle, como em (Tanaka, 1997), utilizando fuzzy, e em (Koga e Ya-makawa, 2006) considerando tambem a heurıstica evolutiva. Alguns trabalhos se baseiamsomente nas informacoes visuais para realizacao do controle, como em (Rampinelli, 2008),(Tanaka e Wang, 2002) e (Tanaka et al., 2009).

Apesar de nao ser foco deste trabalho, e notorio, a aplicabilidade de tecnicas de controlepara RMMAs com o objetivo de fazer a cadeia realizar o seguimento de trajetorias previ-amente definidas (Pradalier, 2007), (Astolfi e Locatelli, 2004), (Divelbiss, 1994), (Bolzernet al., 1998), (Mendoza e Bricaire, 2011) e (Nakamura et al., 2000).

Ainda mais refinado se mostra o controle da cadeia articulada ao realizar desvios deobstaculos em movimentos a re, como em (Woodley, 2004), (Lamiraux, 1998) e em movi-mentos a frente, como em (Ren et al., 2010).

Nao e difıcil perceber que este trabalho esta inserido em uma area de pesquisa ampla-mente explorada, mas que ainda carece de uma solucao definitiva para o problema de mano-brar estruturas articuladas genericas. Diante disto, deve-se entender melhor como se caracte-riza todo o sistema de navegacao global, responsavel por prover ao veıculo total capacidadede monitoramento e controle na execucao dos movimentos, para que seja possıvel mensurara contribuicao desta pesquisa no sentido de se obter tal sistema.

1. Introducao 26

Em navegacao robotica, a caracterizacao das tarefas pode incluir restricoes, obstaculosou incertezas diversas. Todos estes aspectos podem ser levados em conta na formulacaodo problema de navegacao no espaco de tarefas. Este espaco compreende todo o ambienteexterno ao robo, considerando a movimentacao e o posicionamento da cadeia articuladacomo um todo.

Na automacao flexıvel, visando uma maior generalidade das solucoes, processos com-plexos ou servicos demandam que as acoes de controle ou de predicao sejam implementadasno espaco de configuracao de cada maquina ou subsistema, de modo desacoplado das acoesdefinidas no espaco de tarefas. Portanto, define-se o espaco de configuracao como sendo oespaco restrito somente a movimentacao dos angulos internos do robo.

Deste modo, no nıvel de configuracao, os problemas de controle ou predicao teriam re-ferencias, criterios e solucoes caracterizadas neste unico espaco, evitando que o controladoropere implıcitas inversoes geometricas, o que pode conter singularidades. Estas premissassao validas para robos manipuladores e tambem para RMMAs. Esta transposicao entre osespacos de tarefas e de configuracoes e denominada “Coordenacao de Movimentos”.

A coordenacao de movimentos e estabelecida, juntamente com outras acoes necessarias,em um “Sistema Completo de Navegacao”. Assim, no nıvel de coordenacao, as tarefasseriam transformadas em acoes de referencia para um nıvel inferior de controle ou predicaono espaco de configuracoes. O nıvel de coordenacao seria implementado atraves de modelosinversos geometricos e/ou cinematicos, obtidos na presenca de restricoes, segundo criteriospre-definidos. Alguns autores propoem solucoes diretamente no espaco de tarefas, poremcarecem de generalidade, por exemplo, (Yoo, 2010). Contudo ela e muito restrita, poise desenvolvida para uma configuracao em que o elemento trator encontra-se em posicaoinversa a comumente utilizada, isto visando facilitar o controle da cadeia articulada e em(Morales et al., 2013) em que se utiliza o artifıcio de virtualizar o angulo de direcao para oultimo trailer, assumindo assim que a composicao em movimentos a re se comporte comoem movimentos a frente.

Observa-se que no sistema completo de navegacao, a coordenacao de movimentos viamodelos e necessaria para o caso de manobras automaticas, onde as referencias no espaco detarefas sao caracterizadas por um operador humano, como em (Morales et al., 2012). De fato,o sistema supervisorio pode ser construıdo segundo duas abordagens distintas: manobrasassistidas e manobras automaticas. Na primeira delas, o sistema auxilia o usuario prevendoo movimento para tras, isto permite ao usuario saber qual sera o comportamento dos angulosdas articulacoes, caso a composicao se movimente para tras, a partir da configuracao atual ede certa orientacao das rodas dianteiras do truck. Este sistema tem a funcionalidade de umpreditor.

Sob o ponto de vista teorico, um preditor e um modelo direto do robo articulado. Os

1. Introducao 27

preditores sao necessarios nao so para operacao assistida, mas tambem para servir de nucleoem simuladores na analise e sıntese de estrategias de navegacao e na geracao e validacao decontroladores.

Na outra abordagem, ou seja, em manobras automaticas, o sistema e responsavel pelarealizacao da manobra. Neste caso, o usuario informa a trajetoria no espaco de tarefas e osistema supervisorio fornece para o controlador de configuracao as referencias adequadasneste nıvel. Ressalta-se que praticamente toda tecnologia desenvolvida para RMMAs podeser adaptada para a navegacao ou controle, na execucao otimizada de manobras automaticasou assistidas de veıculos articulados, contribuindo assim para a melhoria na qualidade devida das pessoas que realizam manobras em caminhoes de grande porte, por exemplo.

O desenvolvimento de preditores ou controladores geralmente e feito atraves de aborda-gens model free, sendo que a partir de dados de movimentos pode-se desenvolver solucoesneurais (redes estaticas), a horizonte fixo, para preditores ou controladores no espaco deconfiguracoes, como em (Miranda, 2011) ou fuzzy, como em (Kulitz, 2003).

Toda a estrategia de monitoramento e controle de manobras de um RMMA esta resumidae representada na Figura 1.3.

Figura 1.3: Sistema Completo de Navegacao de um RMMA.

Uma grande vertente dos trabalhos com RMMAs e a obtencao de um sistema de as-sistencia ao motorista do veıculo, que possibilite atraves de diversos sensores acoplados aorobo, a percepcao ambiental e com isso facilite o processo de manobra de toda a cadeia,principalmente objetivando o estacionamento do robo em um espaco pre-determinado. Al-guns trabalhos merecem destaque nesta area, dentre eles, podem ser citados (Sklyarenko eSchumacher, 2013) que utilizam veıculos reais e articulados para fins de navegacao, e (Chiue Liu, 2005) que fazem uso de um robo nao articulado e de tecnicas fuzzy com o objetivo

1. Introducao 28

principal de realizar manobras de estacionamento do veıculo, bem como (Lee et al., 1999),um dos pioneiros nesta area de pesquisa.

Alguns autores ainda consideram o problema de assistencia ao motorista apenas em am-bientes de simulacao, que apesar de serem representativos, ainda necessitam de aplicacaopratica, haja vista que o objetivo principal destes sistemas e a utilizacao em veıculos reais.Dentre estes trabalhos podem ser citados (Sharafi e Nikpoor, 2010) que utiliza regras fuzzypara controlar o robo nao articulado em movimentos a re em ambientes com obstaculosfixos e moveis, e o robo com um reboque acoplado na presenca de obstaculos fixos. Ja(Khoshnejad, 2005) utiliza a interacao neuro-fuzzy para realizar o controle de um veıculosem reboques. Mais recente e o trabalho de (Zhang e Geimer, 2011), que em movimentos afrente controla um sistema com forte restricao fısica, dificultando a realizacao de manobrasdo veıculo.

Vale ressaltar que quase toda bibliografia estudada neste trabalho apresenta poucas ma-nobras que exemplifiquem o funcionamento do sistema, e na maioria das pesquisas os testesapresentados sao simplesmente de colocar a cadeia articulada em posicao retilınea ou deexecutar movimentos que nao exigem muito esforco de controle. Tambem verifica-se, quevarias vezes, sao feitas consideracoes erroneas sobre os limites dos angulos, haja vista quea maioria dos testes sao realizados em ambientes de simulacao, desprendendo-se assim detodas as nao linearidades e restricoes fısicas presentes em plataformas reais.

Diante disto, percebe-se que muitos autores utilizam a estrutura particular de cadeia ar-ticulada, simplesmente para desenvolver e testar estruturas de controle e de predicao sema devida preocupacao sobre o comportamento real do sistema, como exemplo, pode-se ci-tar a definicao de jacknife, que quando raramente apresentada, aparece como a situacao emque o angulo entre dois elementos da composicao e de 90. Isto e errado, ja que nao seleva em conta restricoes reais dependentes dos formatos dos trailers da composicao, nem asrestricoes de manobrabilidade impostas pelo angulo limite de direcao. Este tambem, quasesempre considerado, como de excursao livre, facilitando imensamente a realizacao de ma-nobras simplesmente impossıveis de serem realizadas em veıculos reais.

Esta pesquisa, devido a diversos trabalhos ja realizados com esta plataforma, como em(Rampinelli e Oliveira, 2008), (Oliveira e Ferreira, 2008), (Oliveira e Pandolfi, 2009), (Fer-reira e Oliveira, 2009), (Ferreira e Oliveira, 2010) e (Ferreira, 2011), apresenta uma visaomuito mais realista do comportamento de um RMMA.

Este trabalho e baseado em um tecnica consolidada de otimizacao (Algoritmo Genetico)para realizar a sintonia de ganhos lineares presentes em estruturas de controle nao linearespreviamente testadas. Todas as restricoes fısicas foram respeitadas, haja vista que os experi-mentos foram realizados em plataforma real, aproximando muito mais esta pesquisa de umapossıvel aplicacao pratica em veıculos.

1. Introducao 29

Assim, atraves de uma boa sintonia de ganhos, este trabalho busca contribuir de formasignificativa, na consolidacao de uma estrategia capaz de prover ao veıculo o melhor controlepossıvel de configuracao da cadeia articulada em movimentos a re.

1.3 Objetivos

Diante deste cenario de pesquisa com RMMAs, este trabalho se enquadra basicamenteno espaco de configuracao da cadeia articulada, ou seja, restringe-se ao controle dos angulosinternos do veıculo. As duas estruturas de controle que sao alvo de estudo neste projetosao as propostas por (Ferraz, 2013), denominada Controlador Feedforward Nao Linear, e aproposta pelo proprio autor, em (Bertolani, 2011), denominada Controlador Feedback NaoLinear.

Ambas estruturas de controle baseiam-se nas condicoes de giro do veıculo, sendo queno controlador Feedforward, a informacao destes angulos e obtida atraves do valor de re-ferencia, e o controlador Feedback obtem tais informacoes de giro considerando os anguloscorrentes apresentados pelo veıculo no decorrer da manobra.

Nestes controladores existem ganhos lineares que carecem de sintonia, esta tarefa semostra muito complexa, por nao existir na literatura, sistematica bem definida para resolucaodeste problema em plantas nao lineares. Visando minimizar o esforco humano em testesrepetitivos para obtencao dos melhores ganhos, optou-se por tentar utilizar uma teoria capazde realizar a otimizacao de ganhos destes controladores.

Assim, adotou-se a teoria dos Algoritmos Geneticos como ferramenta de otimizacao deganhos, esta mesma teoria e utilizada em (Kinjo e Yamamoto, 2000), (Ho et al., 2003) e(Kiyuna et al., 2003) para realizar adaptacao dos pesos de redes neurais responsaveis pelocontrole do robo.

Tambem e comum na literatura o uso de Algoritmos Geneticos para adaptacao de regrasem controladores PID fuzzy, como em (Meza e Arriaga, 2009), (Chakraborty e Patranabis,2001), (Kermiche, 2008), (Ko et al., 2006), (Wang, 1992), (Wong, 2000), (Nahapetian eAnaloui, 2009) e (Homaifar, 1995).

Neste trabalho, conforme mencionado, a ferramenta de otimizacao foi utilizada na sin-tonia dos ganhos lineares presentes em controladores ja consolidados na literatura. Pode-seresumir a ideia principal deste trabalho atraves da analise da representacao da malha de con-trole, conforme Figura 1.4.

Portanto, considera-se que, o principal objetivo deste trabalho e o desenvolvimento deum software baseado na teoria de Algoritmo Genetico, capaz de prover uma sistematica

1. Introducao 30

Figura 1.4: Representacao do Algoritmo Genetico na sintonia de controlador linear.

confiavel de ajuste de ganhos, de controladores lineares presentes em estruturas de controlenao lineares, ja consolidadas na literatura. Este software visa minimizar o esforco com testesdiretamente na plataforma experimental e refinar o processo de sintonia dos controladores,bem como proporcionar um melhor entendimento de todo o funcionamento do sistema.

Para alcancar tal objetivo, necessitou-se um grande esforco na criacao de um ambiente desimulacao, capaz de reproduzir o real comportamento da plataforma de testes utilizada nestapesquisa, haja vista que os ganhos obtidos pelo processo de otimizacao do programa, deve-riam ser testados na pratica com o robo. Este processo se mostrou complexo, pois somenteas equacoes cinematicas diferiam muito do comportamento real do veıculo. Portanto, diantede tal esforco, esta adequacao do modelo cinematico se tornou um objetivo especıfico destapesquisa, pois possibilitou a criacao de modelos bem representativos do funcionamento doRMMA de testes do LAI3 da UFES4.

Outros objetivos especıficos podem ser destacados, como um melhor entendimento docomportamento do sistema para diversas sintonias consideradas, bem como a obtencao deum padrao de ajuste de ganhos capaz de prover ao veıculo capacidade de realizar manobrasde forma satisfatoria para diversas configuracoes desejadas.

1.4 Estrutura da Dissertacao

Para melhor organizacao das teorias utilizadas, os diferentes estudos de caso, resultadose conclusoes este documento foi dividido em 7 capıtulos. Uma breve descricao do temaabordado em cada um dos capıtulos e apresentada abaixo.

• Capıtulo 2: Plataforma Experimental

3Laboratorio de Automacao Inteligente4Universidade Federal do Espırito Santo

1. Introducao 31

Este capıtulo apresenta uma descricao detalhada de como funciona o prototipo, especi-ficando as ferramentas computacionais e eletronicas utilizadas no projeto. Um resumodo hardware mostra as principais particularidades desta plataforma de testes, com oobjetivo de proporcionar um melhor entendimento das funcionalidades do robo.

• Capıtulo 3: Modelo Cinematico, Condicoes de Giro, Controladores Nao Lineares,Medidas de Desempenho e Controle PID

Apresenta-se, neste capıtulo, o modelo cinematico generico e as condicoes de giropara RMMAs, estas ultimas sao a base dos controladores nao lineares que serao uti-lizados no processo de otimizacao de ganhos. As medidas de desempenho associadasa resposta do sistema, servirao para quantificar o comportamento do sistema com osganhos obtidos pelo software que implementa os Algoritmos Geneticos.

• Capıtulo 4: Adequacao do Modelo Cinematico

Este capıtulo apresenta de forma detalhada, todo o processo de adequacao do modelocinematico generico as condicoes de funcionamento real da plataforma experimental.Este processo foi realizado por inspecao do comportamento do robo em determinadasmanobras e condicoes de uso. Um modelo bem representativo do veıculo real e obtidoao fim do processo de adequacao.

• Capıtulo 5: Algoritmos Geneticos e Software A4G

Uma breve teoria dos Algoritmos Geneticos e mostrada, bem como sua implementacaono programa desenvolvido. Este software e detalhadamente descrito, suas principaisfuncoes e particularidades sao explicitadas. A metodologia de utilizacao do programae discutida e uma descricao do layout ilustra todo o ambiente de testes utilizado noprocesso de otimizacao dos ganhos dos controladores lineares.

• Capıtulo 6: Resultados e Discussoes

Apresenta alguns testes que justificam o emprego do software como ferramenta utilpara otimizacao dos ganhos dos controladores lineares. Faz-se uma comparacao como trabalho desenvolvido por (Ferraz, 2013), que realizou a sintonia dos ganhos docontrolador de forma adhoc, ou por tentativa e erro. Uma nova abordagem do controlecom comutacao de ganhos, de acordo com a faixa de operacao do sistema e proposto.

• Capıtulo 7: Conclusoes e Trabalhos Futuros

Finaliza a dissertacao com uma discussao geral do trabalho realizado, as principaiscontribuicoes, consideracoes finais e, alem disso, traz uma serie de sugestoes parafuturas pesquisas.

Capıtulo 2

Plataforma Experimental

2.1 Introducao

Este capıtulo do projeto e destinado a descricao do processo de instrumentacao da pla-taforma experimental de testes. A estrutura basica de hardware, denominada Truck-Trailer-Trailer, antes do processo de modificacao pode ser visualizado na Figura 2.1.

Figura 2.1: Truck-Trailer-Trailer antes do processo de instrumentacao.

Todo processo de instrumentacao foi realizado por Tiago Reinan Barreto de Oliveira.O prototipo foi mais precisamente descrito pelo autor em (Oliveira, 2010). Assim, estadissertacao nao contribui com nenhuma melhoria ou alteracao estrutural no robo, faz-se ne-cessaria a inclusao deste capıtulo a fim de mostrar algumas particularidades da plataformade testes.

No estudo dos movimentos, sobretudo a re, de VMAs ou RMMAs, a existencia deuma plataforma experimental e de grande importancia. Isto facilita o entendimento da

2. Plataforma Experimental 33

dinamica do sistema proporcionando a geracao do conhecimento especialista necessario paraa implementacao de algumas tecnicas de controle, como as baseadas na teoria fuzzy. Alemdisto, uma plataforma permite o desenvolvimento, a validacao e a analise de desempenho desolucoes de controle, que podem ser obtidas por diferentes metodos e estrategias.

Uma caracterıstica util de experimentos com prototipos reais e que eles incorporam aoteste interferencias e disturbios externos, como por exemplo, ruıdos, atritos, deslizamentos eimperfeicoes mecanicas, que nem sempre sao considerados em modelos teoricos. Isto faz dosexperimentos em prototipos reais uma ferramenta muito importante na avaliacao de aspectosrelacionados a robustez e desempenho das solucoes propostas antes da sua implementacaoem escala real ou aplicacao final.

Em trabalho anterior (Silva, 2003), algumas tentativas de construcao de um suporte ex-perimental foram realizadas. Contudo, tais tentativas nao obtiveram exito, principalmentedevido as dificuldades relacionadas ao projeto mecanico e pela crıtica tarefa de fabricacaode pecas. Uma solucao encontrada para estes problemas foi a de utilizar um automodeloindustrializado como base para a plataforma experimental.

Desta forma, a plataforma foi desenvolvida em um automodelo do tipo Truck-Trailer-Trailer, que possui uma configuracao tıpica de veıculos multiarticulados utilizados no trans-porte de cargas (Widmer, 2002). Ao mesmo tempo, esta configuracao contendo tres ele-mentos e suficiente para manter a generalidade do problema de manobras. Alem disto, ummaior numero de elementos passivos poderia inviabilizar testes em ambientes espacialmenterestritos, como acontece em experimentos baseados em visao computacional, onde o alcanceda camera e o limitador da area de movimentacao do veıculo, conforme descrito em (Ram-pinelli, 2008).

Uma vez que o automodelo adquirido era desprovido de funcoes de acionamento, sen-soriamento e comunicacao de dados, iniciou-se o planejamento e o desenvolvimento dosmecanismos e circuitos eletronicos necessarios para dotar o veıculo de tais funcoes. NaSecao 2.2 serao detalhadas as especificacoes do automodelo utilizado. Na Secao 2.3 saodescritas as principais caracterısticas da eletronica embarcada, como atuadores e sensoresproprioceptivos, e finalmente na Secao 2.4 e apresentado o subsistema de comunicacao semfio desenvolvido, responsavel pela comunicacao de dados entre o computador remoto e aplataforma experimental.

O modo como o hardware esta desenvolvido e de fundamental importancia para entendermelhor o funcionamento do sistema, mostrando assim as particularidades do prototipo. Esteserviu de grande contribuicao para diversos trabalhos desenvolvidos no LAI, e durante suautilizacao permitiu aquisicao de conhecimento em diversas areas, podendo citar eletronica,programacao, robotica, entre outras.

2. Plataforma Experimental 34

2.2 O Automodelo

Conforme dito anteriormente, o automodelo multiarticulado e constituıdo pelo elementotrator e por dois semi-reboques, medindo no total 1,73 m quando alinhado. Fabricado pelaempresa Tamiya R©, o automodelo e uma replica na escala de 1 : 14 do caminhao Globe Liner.

O elemento trator e dotado de um sistema de transferencia de tracao do tipo diferencialtraseira e de suspensao independente com feixe de molas e amortecedores, o que facilita otransporte extra de peso sem prejudicar sua movimentacao, sobretudo em pisos irregulares.A Figura 2.2 mostra o elemento trator do automodelo utilizado.

Figura 2.2: Automodelo Globe Liner, elemento trator.

A tracao do veıculo e do tipo 6X4, ou seja, quatro das seis rodas sao tracionadas e esuprida por um motor eletrico CC (Corrente Contınua) da serie 540. Acoplado ao motor,existe uma caixa de reducao, ou cambio, que possibilita a escolha da relacao de engrenagensentre os valores de 1 : 32,4, 1 : 17,7 e 1 : 10,6, representando a primeira, segunda e terceiramarchas, respectivamente.

Para maior praticidade no manuseio e melhor acomodacao do hardware embarcado, acarenagem do elemento trator foi removida. A Figura 2.3 mostra o veıculo completamentemontado.

2. Plataforma Experimental 35

Figura 2.3: VMA montado.

2.3 Hardware Embarcado

Para o acionamento do mecanismo de direcao, controle de velocidade, selecao de marchado cambio, conversao de sinais analogicos em digitais, comunicacao, temporizacao de even-tos e armazenamento de dados, foi desenvolvido um circuito eletronico microcontrolado.

Neste ponto e importante ressaltar que o hardware embarcado desenvolvido nao possuia finalidade de comportar algoritmos de controle de manobras do veıculo. Desta forma, aspossıveis solucoes de controle nao estariam restringidas a capacidade de memoria, precisaoe velocidade de processamento desse hardware embarcado.

O controle de alto nıvel e realizado de modo off-board, ou seja, todo o processamentomais complexo destinado ao controle de manobras e determinacao de trajetorias pode serconvenientemente executado por um computador de maior desempenho e melhores recursos,que ao final, transmite a acao de controle ao circuito de acionamento no veıculo. Esta abor-dagem apresenta um problema basico em robotica que e a falta de eficiencia da comunicacaoentre robo e plataforma de processamento, haja vista que podem ocorrer falhas, atraso e atea perca de comunicacao, comprometendo assim o desempenho do sistema.

O fato do processamento ser off-board cria um gargalo de desempenho do sistema, hajavista que se for considerado o tempo medio de uma iteracao do sistema em malha fechada epossıvel perceber que o tempo gasto na comunicacao representa mais de 50% do tempo totalda iteracao.

O microcontrolador utilizado no projeto foi o Atmega32 do fabricante Atmel R© (Atmel,2011). De modo geral, os criterios de escolha dos componentes eletronicos foram baseadosno desempenho, baixo consumo, baixo custo e facilidade de obtencao, sendo consequente-mente, de facil reposicao.

O processamento e a armazenagem on-board dos dados, alem de ser mais rapida, permi-tindo a obtencao de uma taxa de amostragem maior, e mais segura, pois evita a necessidadeda transferencia dos dados coletados para o computador remoto durante o experimento.

2. Plataforma Experimental 36

A Figura 2.4 exibe a versao montada da placa de controle do RMMA com a indicacaodos principais componentes.

Figura 2.4: Placa devidamente montada.

Toda a energia eletrica do sistema e provida por uma bateria recarregavel de NiMh(Nıquel-Hidreto Metalico) com tensao nominal de 7,2volts e capacidade de 2.500mAh, con-ferindo uma autonomia media de 25 minutos de operacao ao veıculo. Esta particularidade dorobo representa um problema, pois existe um comprometimento do desempenho do sistemaem relacao ao nıvel de carga da bateria.

Para se fazer uso dos benefıcios deste esquema de alimentacao, algumas precaucoes fo-ram tomadas, como a instalacao de filtros capacitivos e isoladores opticos. Sem estas medi-das, os ruıdos eletricos gerados pelo funcionamento e acionamento do motor, que e realizadopor PWM (Pulse Width Modulation), poderiam comprometer o correto funcionamento detodo o circuito eletronico.

Pode-se definir entao, de forma resumida, que o robo possui um sistema embarcado ouon-board de captacao de sinais e atuacao e um sistema off-board de processamento. O sub-sistema de comunicacao interliga estas duas partes principais de funcionamento do prototipo.

Alguns subsistemas tambem podem ser definidos de forma a simplificar o entendimento

2. Plataforma Experimental 37

sobre o funcionamento da plataforma, tais como o subsistema de odometria, responsavelpela leitura do encoder e posicao global do robo, o subsistema de medicao angular, res-ponsavel pela leitura dos potenciometros que definem o angulo de posicionamento dos trai-lers do veıculo, o subsistema de acionamento, responsavel pelo controle de velocidade emovimentacao do robo e o subsistema central, que acopla todas estas funcionalidades aomicrocontrolador embarcado, bem como o subsistema de comunicacao. A Figura 2.5 mostraum esquema geral do sistema embarcado e dos subsistemas do prototipo.

Figura 2.5: Representacao do sistema embarcado e dos subsistemas do prototipo.

2.3.1 Subsistema de Odometria

A odometria e muito utilizada na robotica movel para a estimacao da posicao do robo(Borenstein e Feng, 1996). Seu princıpio de funcionamento baseia-se na aquisicao e pro-cessamento de pulsos eletricos gerados por encoders. Estes por sua vez, sao elementoseletromecanicos, capazes de detectar movimentos no eixos de rotacao onde estao instalados,convertendo-os em pulsos eletricos.

Uma das grandezas que caracterizam o encoder e a relacao pulsos/volta, quanto maiora relacao, melhor e a resolucao do encoder.

Atraves do encoder e possıvel se determinar a relacao entre pulsos eletricos e voltasno eixo de rotacao, e assim, pode-se obter a distancia percorrida pelo robo movel e conse-

2. Plataforma Experimental 38

quentemente a sua posicao. Quando se considera a quantidade de pulsos gerados em umdeterminado intervalo de tempo, determina-se a velocidade do movel.

Foi construıdo um encoder optico do tipo incremental que possibilitou a determinacaoda distancia percorrida e da velocidade do veıculo. O sinal de velocidade e utilizado narealimentacao da malha de controle de velocidade, conforme sera visto mais adiante.

O encoder confeccionado baseia-se no princıpio da reflexao da luz. Um fototransistor eexcitado com a presenca de luz, assim, utilizando-se um disco com partes claras e escuras, epossıvel gerar um sinal de luz pulsado, que altera o modo de operacao do fototransistor entreas regioes de corte e saturacao, gerando um sinal eletrico pulsado correspondente.

O encoder utilizado tem uma relacao de 64 pulsos por volta. Tal limite se deve ao fato deque ao se aumentar o numero de faixas do disco, e automaticamente diminuindo-se a largurade cada uma delas, nota-se que o fototransistor nao consegue operar nas regioes de corte esaturacao e, portanto, nao funcionando como chave.

Objetivando-se melhor eficiencia, economia de memoria e um menor volume de dados aserem trafegados, a contagem dos pulsos e feita por uma variavel de 8 bits, assim, contandode 0 a 255. Este intervalo de contagem e suficiente para que o computador remoto identifiquecorretamente o estouro do contador, que ocorre quando o valor passa de 255 para 0, e adici-one a quantidade 256 a cada estouro para se obter a contagem total dos pulsos. A deteccaodo estouro se faz observando-se o instante em que o valor da leitura atual dos pulsos e menordo que o valor lido anteriormente.

E importante ressaltar que o local de instalacao do encoder se deu em um ponto em queo eixo de rotacao sofre uma reducao de velocidade devido a relacao de engrenagens. O idealseria que se instalasse tal equipamento diretamente no eixo do motor, para que as medidasfossem mais fidedignas da rotacao real do motor. Nao se optou por fazer alteracoes visandocorrigir este problema, pois existem restricoes mecanicas que impossibilitam a instalacao dosensor no ponto ideal.

Para o cambio posicionado em terceira marcha, a relacao entre pulso do encoder e adistancia percorrida pelo veıculo foi de 0,8mm por pulso. A Figura 2.6 mostra o encoderdesenvolvido e instalado.

A escolha de funcionamento do sistema em terceira marcha e justificada pelo maior ve-locidade alcancada no eixo de instalacao do encoder, gerando portanto mais pulsos paraum dado intervalo de tempo, em detrimento do torque, que mesmo reduzido ainda permitiucolocar a composicao em movimento.

2. Plataforma Experimental 39

Figura 2.6: Local de instalacao do encoder, destaque para o fototransistor e o amplificadoroperacional.

2.3.2 Subsistema de Acionamento

Conforme mencionado, a tracao do veiculo e provida por um motor CC. O acionamentodo motor e realizado pelo ESC (Eletronic Speed Controller), que e um circuito eletronicoCMOS responsavel por receber o sinal de referencia, do tipo PWM, e converte-lo em outrosinal de potencia, tambem PWM, porem com tensao e frequencia apropriadas para seremaplicadas ao motor.

Atraves da variacao do ciclo de trabalho do sinal PWM de referencia, o ESC, por meio deuma ponte H, controla o sentido de giro e a potencia fornecida ao motor e, consequentemente,variando sua velocidade.

Foi utilizado o ESC MC230CR da fabricante Futaba R© (Futaba, 2000), Figura 2.7, capazde operar com tensoes de 7,2V a 8,4V e conduzir ate 40A em um sentido e 20A no outrosentido da ponte H.

Com o decorrer dos experimentos e testes realizados na plataforma experimental, observou-se que de acordo com a configuracao da cadeia cinematica, as forcas existentes entre os ele-mentos da composicao ofereciam mais ou menos resistencia ao movimento, implicando emuma oscilacao ou ate mesmo parando a composicao.

De acordo com a abordagem de controle adotada, manter a velocidade da composicaoconstante e de imprescindıvel importancia. Pois, para uma dado perıodo de amostragemt a distancia percorrida d e dada por d = v ∗ t, onde v e a velocidade do veıculo. Assim,solucoes que inferem o deslocamento d baseadas no tempo, sao diretamente influenciadaspela velocidade do veıculo.

Objetivando-se controlar a velocidade da composicao, foi implementado um controlador

2. Plataforma Experimental 40

Figura 2.7: Controlador Eletronico de Velocidade.

do tipo PI, que apos alguns testes se mostrou mais eficiente, sendo executado diretamentepelo microcontrolador embarcado. Os ganhos proporcional, K p, e integral, Ki, do controla-dor foram obtidos analisando-se a resposta do sistema para diferentes valores desses ganhos.

2.3.3 Subsistema de Acionamento - Controle de Direcao

O angulo das rodas de direcao e a unica variavel de controle sobre as manobras do VMA.Para um desempenho satisfatorio do controle, e fundamental que a atuacao no mecanismode direcao seja suficientemente rapida e precisa.

Para fornecer tal capacidade ao sistema de direcao utilizou-se um servo motor acopladoao mecanismo de direcao, situado na parte inferior do veıculo. O servo utilizado foi o S3003e suas especificacoes sao encontradas em (Futaba, 2003).

O servo motor e um elemento eletro-mecanico capaz de posicionar seu eixo de giro emuma determinada posicao, que e definida atraves de um sinal eletrico de referencia.

Sistemas mecanicos sao suscetıveis a folgas e deformacoes presentes nas conexoes entreseus diversos componentes. Durante os testes iniciais do sistema de direcao do veıculo,percebeu-se a presenca de folgas mecanicas. Este problema acarreta uma nao linearidade dosistema de direcao e, dessa forma, influencia na relacao entre o sinal de referencia e o efetivoangulo alcancado pelas rodas.

Alem disto, outro fator contribuinte para a nao linearidade do sistema de direcao e oaspecto construtivo do mecanismo de direcionamento, que transmite o movimento de rotacao

2. Plataforma Experimental 41

do servo motor as rodas por meio de uma conversao de movimento angular em linear. Estefato faz com que, de acordo com a posicao da direcao, ocorram diferentes variacoes doangulo da roda para uma mesma variacao angular no eixo do servo.

Uma forma de observar o nıvel de folga presente no sistema de direcao e fazer algunsensaios repetitivos variando-se as rodas dianteiras do truck e verificar se existe tambem umarepetibilidade entre os valores lidos pelo sistema. O resultado obtido para o primeiro en-saio pode ser observado na Figura2.8(a), de onde foi possıvel a quantificacao das folgasmecanicas, que possuıam o valor total aproximado de 9.7.

As folgas mecanicas sao evidenciadas no momento da mudanca do sentido do movi-mento. Assim, a solucao encontrada para o problema foi a de compensar o sinal de controle,atraves da soma ou subtracao de uma constante correspondente ao tamanho da folga. Estaoperacao e realizada sempre que ha uma inversao no sentido de movimento das rodas, ouseja, da direita para esquerda e vice-versa.

As Figuras 2.8(b) e 2.8(c) mostram etapas intermediarias do processo de eliminacao dasfolgas da direcao e a Figura 2.8(d) exibe a relacao final alcancada, na qual se obteve um errode aproximadamente 1,1 para a posicao central.

Cabe ressaltar, que as folgas podem variar de acordo com o piso, pois em locais que ofe-recem pouco atrito, as deformacoes e torcoes sao menores quando comparadas as existentesem pisos com maior atrito. Isso acontece principalmente devido a elasticidade das pecasplasticas e dos pneus de borracha que compoem o veıculo.

Finalmente, e importante ressaltar que este procedimento permitiu nao so a linearizacaodo sistema de direcao, mas tambem a diminuicao do erro, que inicialmente era de 9,7 efoi para 1,1. Isto possibilitou uma melhor operacao do sistema de direcao, que conformemencionado, e vital para o controle dos movimentos da composicao. Com esse experimento,foi possıvel a determinacao do maximo angulo alcancado pelas rodas da direcao, sendo de±20. Como sera visto, esse angulo esta diretamente relacionado a capacidade de manobrada composicao.

Portanto, a folga inerente ao sistema de direcao do robo e de 1,1, este valor limita aqualidade da resposta do sistema controlado, haja vista que permite uma faixa de erro emtorno de 1,1 em relacao ao sinal de controle oriundo do controlador projetado. Esta carac-terıstica certamente interfere em todo o comportamento do prototipo e na variacao angulardos trailers de toda composicao.

2. Plataforma Experimental 42

(a) (b)

(c) (d)

Figura 2.8: (a) Resposta inicial do sistema de direcao (b) Primeira correcao (c) Segundacorrecao (d) Resposta final do sistema corrigido.

2.3.4 Subsistema de Medicao Angular

As variaveis que caracterizam a configuracao da composicao sao os angulos formadosentre os seus elementos. Tais angulos podem ser obtidos de diferentes formas, como porexemplo, por visao computacional (Rampinelli, 2008) ou atraves de potenciometros instala-dos nas articulacoes. O uso de potenciometros e relativamente simples, de rapida leitura ede boa precisao. Para eficacia na estimativa de angulos atraves do uso de potenciometros,esses devem possuir caracterısticas como linearidade em toda faixa de excursao e precisaoadequada.

Atendendo a estes requisitos, foram acoplados dois potenciometros lineares, um em cadaarticulacao, com valores nominais de 20 kΩ e precisao de 1%. Tais potenciometros foram

2. Plataforma Experimental 43

cedidos e instalados pela empresa Automatica Tecnologia, que tambem desenvolveu um sis-tema de engate rapido para os trailers. A Figura 2.9 mostra um dos potenciometros instaladosno veıculo.

Figura 2.9: Potenciometro instalado na junta articulada.

A obtencao dos angulos das articulacoes, se da pela variacao da resistencia do potenciometroem funcao da posicao da junta revoluta. A tensao de saıda (Vout) e dada por Vout =Vin ∗ Rx/Rpot, onde Vin e a tensao de alimentacao, Rpot a resistencia nominal do po-tenciometro e Rx a resistencia associada ao angulo que se quer medir.

O sinal Vout e ligado a entrada de conversao de sinais analogicos para digitais (A/D)do microcontrolador. O conversor possui resolucao de 10 bits, ou seja, a sensibilidade damedicao e de 1/1024 da faixa de variacao total do sinal. Desta forma, a relacao entre avariacao angular por unidade de conversao do A/D e dado por 360/1024 = 0,352, ou seja,e possıvel a deteccao da variacao angular em, no mınimo, 0,352.

Um fator importante e que deve ser considerado na conversao digital de grandezas analogicase a presenca de ruıdo, que altera o sinal a ser convertido e, assim, introduz erro na digitalizacao.

Dentre os principais tipos de ruıdo, destacam-se os originados por interferencias ele-tromagneticas, ruido termico, e especificamente nesta aplicacao, os devidos as pequenasimperfeicoes no mecanismo de rotacao dos potenciometros.

No intuito de minimizar os efeitos indesejaveis dos ruıdos, os sinais gerados pelos po-tenciometros sao conduzidos ate o microcontrolador por um cabo blindado, alem disto, foraminstalados filtros capacitivos devidamente especificados. Por fim, o valor final da conversaoe obtido apos a media dos valores intermediarios de cinco conversoes seguidas, ou seja, saoexcluıdos o maior e o menor valor, fazendo-se a media do tres valores restantes.

2. Plataforma Experimental 44

Devido ao fato dos potenciometros nao possuırem fim de curso mecanico, varios va-lores de resistencia sao permitidos ao se engatar os trailers. Desta forma, e necessaria adeterminacao do valor correspondente ao angulo zero a cada nova montagem dos elementosda composicao nos engates. O valor do angulo zero e obtido quando se alinha os elementosda composicao. A partir desse ponto, os demais angulos sao obtidos atraves das equacoes:

θ1 = (valor lido1− valor alinhado1)×360/1024 (2.1)

θ2 = (valor lido2− valor alinhado2)×360/1024 (2.2)

Este calculo e realizado no computador remoto, permitindo assim, uma maior precisaodo resultado e, ao mesmo tempo, diminuindo o processamento no hardware embarcado.Observa-se que os angulos podem ser positivos ou negativos, o que favorece a identificacaoda posicao relativa entre os elementos da composicao.

Apesar dos potenciometros serem de precisao, o modo ao qual sao acoplados ao prototipopossibilitam o aparecimento de folgas mecanicas. Assim, em alguns casos pode-se ter o trai-ler variando o angulo de posicionamento e o valor de tensao oriundo do potenciometro podese manter inalterado, nao percebendo tal variacao de posicao do robo. Este e um problemaestrutural inerente a forma como estao instalados os medidores angulares.

2.3.5 Firmware

Esta subsecao tem por objetivo descrever o protocolo de utilizacao do veıculo e o soft-ware embarcado, ou Firmware, desenvolvido para o projeto. Alem disto, especifica as ferra-mentas e os recursos computacionais utilizados. A linguagem de programacao C foi utilizadapara o desenvolvimento do Firmware.

Durante a confeccao do codigo, priorizou-se o uso de interrupcoes para o tratamento egeracao de eventos externos e internos a placa de controle. Desta forma, a deteccao e o ge-renciamento de tarefas como recepcao de dados, contagem de pulsos do encoder e geracaode sinais PWM, dentre outros, foram realizados por meio de recursos existentes no hardwaredo microcontrolador. Este tipo de abordagem permite a realizacao de tarefas de forma para-lela, o que contribui para a melhoria do desempenho do sistema eletronico. A Figura 2.10mostra o fluxograma do programa construıdo.

Para que fosse possıvel controlar, acessar e modificar os valores das diversas variaveispresentes na plataforma experimental, foi desenvolvido um protocolo de comunicacao. Este

2. Plataforma Experimental 45

Figura 2.10: Fluxograma das principais rotinas do firmware.

protocolo e formado basicamente por um caracter (necessariamente minusculo) identificadorda funcao e, caso exista, o parametro da funcao. A seguir, sao mostrados os caracteres ASCIIque devem ser enviados e a descricao das funcoes implementadas.

• ”n”: Seleciona velocidade zero para o prototipo, desliga o motor.

• ”c”: Reinicializa todo o sistema embarcado.

• ”w”: Aumenta a velocidade em uma unidade, a cada clique do usuario, controle ma-nual de velocidade.

• ”s”: Diminui a velocidade em uma unidade, a cada clique do usuario, controle manualde velocidade.

• ”o”< sinal >< valor >: Controle automatico de velocidade. Caso < sinal >= + omovimento e para frente e caso < sinal >=− o movimento e para tras. O parametro< valor > e um inteiro de 0 a 9 e indica a velocidade.

• ”a”: Varia o angulo da direcao em +1, sentido anti-horario.

2. Plataforma Experimental 46

• ”d”: Varia o angulo da direcao em −1, sentido horario.

• ”v”< sinal >< valor >: Define o angulo da direcao das rodas. Caso < sinal >=+ oangulo e a esquerda e caso < sinal >=− o angulo e a direita. O parametro < valor >e um inteiro de dois dıgitos variando de 00 a 20 e indica o valor absoluto do angulo.

• ”t”< sinal >< valor >: Possui a mesma funcao do ”v”, porem, retorna o valor dosangulos das articulacoes e a contagem do encoder.

• ”p”< sinal >< valor >: Possui a mesma funcao do ”v”, porem, salva no hardware ovalor dos angulos das articulacoes naquele instante.

• ”z”: Requisita os valores lidos nos potenciometros.

• ”m”: Requisita o valor da contagem do encoder.

• ”k”: Requisita os valores lidos nos sensores infra-vermelhos.

• ”i”< valor >: Inicia a gravacao dos angulos das articulacoes. O parametro < valor >e um inteiro de 0 a 9 e indica o intervalo de tempo, em multiplos de 33ms, entre agravacao dos angulos.

• ”r”: Requisita os valores salvos no hardware dos angulos das articulacoes.

Seguindo esse padrao novas funcionalidades podem ser acrescentadas ao protocolo, sem-pre que houver necessidade. Para tanto, sera necessario a reprogramacao do Firmware.

2.4 Subsistema de Comunicacao

O desenvolvimento do hardware de comunicacao, responsavel pela transmissao e recepcaode dados, exerce papel muito importante na qualidade do funcionamento do robo. Tal im-portancia se deve principalmente ao fato de que todo o processamento das informacoes deconfiguracao e controle das manobras do VMA serem realizados por um programa executadono computador remoto.

O programa de controle de manobras recebe um sinal de referencia, que pode ser for-necido por um joystick ou inserido no proprio programa, calcula a acao de controle e atransmite para o veıculo, este por sua vez retorna os valores dos angulos das articulacoespara o programa de controle de manobras.

Essa arquitetura de processamento remota, exigiu a utilizacao de um link de comunicacaode dados confiavel e com desempenho satisfatorio, sobretudo no que se refere a velocidadede comunicacao, que influencia diretamente a atualizacao do sinal de controle no veıculo.

2. Plataforma Experimental 47

A Figura 2.11 ilustra a topologia de comunicacao e processamento utilizada.

Figura 2.11: Arquitetura de processamento e comunicacao.

O modelo de transceptor escolhido foi o TRF-2.4Ghz, Figura 2.12(a), do fabricante Lai-pac Tech R©. Suas principais caracterısticas sao a operacao na frequencia de 2.45Ghz, quepertence a uma das faixas ISMB (Insdustrial Scientific and Medical Band) definidas no Bra-sil, alem disto, possui taxa de transferencia selecionavel entre 250kbps e 1Mbps, alimentacaoem 3V e baixo consumo de energia.

A figura 2.12(b) mostra o layout da placa de circuito impresso com tecnologia SMD(Surface Mount Device) desenvolvida atraves do software Eagle Lite R©. Este circuito eresponsavel por inicializar, configurar, bufferizar dados e controlar o transceptor. Alemdisto, tambem possui a funcao de compatibilizar os nıveis logicos de tensao e protocolosde comunicacao entre o elemento final (computador e hardware embarcado) e o transceptor.A Figura 2.12(c) mostra o conjunto, placa de circuito e transceptor, montado.

Apos a montagem do modulo de comunicacao, foi iniciado o desenvolvimento do seufirmware, que foi projetado para prover ao sistema de comunicacao servicos relacionados agarantia de recepcao de dados, uma vez que o transceptor e desprovido de tal capacidade.Para tanto, foi implementado um protocolo de comunicacao com confirmacao de recebi-mento em 2 vias, alem de caracterısticas como retransmissao de dados em caso de perda oufalha de comunicacao e identificacao da aplicacao atraves de senha. Estas medidas ajudarama evitar interferencias nos dados trafegados, atribuindo maior robustez a comunicacao. A

2. Plataforma Experimental 48

(a) (b)

(c)

Figura 2.12: (a) Transceptor TRF 2.4Ghz (b) Layout da placa de circuito (c) Modulo decomunicacao montado.

Figura 2.13 mostra o datagrama do protocolo desenvolvido, onde cada campo corresponde aum byte.

Dado 0 Dado 1 Dado 2 Dado 3 Dado 4 Tam. Dados N. Seq. Senha

Figura 2.13: Datagrama de comunicacao.

Onde:

• Dado0-Dado4: Disponıveis para as informacao que se deseja trafegar.

• Tam. Dados: Indica quantos dos campos de Dado foram utilizados.

2. Plataforma Experimental 49

• N. Seq.: Contem o numero de sequencia do pacote, permite a identificacao do pacote.

• Senha: Contem a senha, caracter que identifica a aplicacao.

O protocolo de comunicacao desenvolvido introduziu a necessidade de transferencia dedados de controle, sendo os tres ultimos campos do datagrama. Isso acarretou a presencade overhead1 e deste modo, houve uma reducao na taxa efetiva de transmissao. Ao finala taxa de transmissao ficou em torno de 20kbps para um distancia de 5m entre transmissore receptor em ambiente fechado. As principais caracterısticas do modulo de comunicacaoestao representados na Tabela 2.1.

Tabela 2.1: Caracterısticas do modulo de comunicacao.Caracterıstica Quantidade

Dimensoes 48mmX60mm

Processador Atmega8Buffer Rx/Tx 400Bytes

Interface Serial USB/RS232C

Taxas de comunicacao 9.6−19.2−38.4−57.6−115kbps

Alimentacao 5V

Consumo Medio 15mA

Uma caracterıstica importante contemplada pelo projeto de comunicacao, e o suporte aconexao via interface USB (Universal Serial Bus). Este tipo de interface de comunicacao emuito comum nos computadores atuais, sobretudo em computadores portateis, onde o usodo padrao serial RS232 e pouco frequente.

Uma das grandes vantagens do barramento USB e permitir a alimentacao do circuito aele conectado, evitando-se assim, a necessidade de uma fonte de alimentacao externa, oubateria, para o funcionamento deste circuito. Este recurso foi muito util em testes realizadoscom computadores portateis em ambientes externos. A transferencia de dados ocorre comouma comunicacao serial com configuracao 38400bps, 8 bits, sem paridade e 1 Stop bit. AFigura 2.14 mostra o modulo de comunicacao com interface USB.

2.5 MATLAB e Aplicativos

Depois da descricao do hardware, deve-se citar tambem as ferramentas de software uti-lizadas no projeto. Todos os codigos foram desenvolvidos no MATLAB R© versao R2008b.

1Dados que nao transportam informacao propriamente dita

2. Plataforma Experimental 50

Figura 2.14: Placa USB conectada ao computador.

Esta ferramenta possibilitou a geracao de graficos, armazenagem e manipulacao de dadoscoletados, alem de permitir uma programacao simples e eficiente.

O MATLAB R© e um software interativo de alta performance voltado para o calculonumerico utilizando como ferramenta basica as matrizes. Com uma programacao de altonıvel e ambiente de facil utilizacao, este programa integra analise numerica, calculo commatrizes, processamento de sinais, construcao de graficos, dentre muitas outras funcionali-dades.

Outra ferramenta util foi o HyperTerminal, programa que possibilitou a comunicacaoentre o prototipo e computador para verificacao de sua configuracao pela posicao dos po-tenciometros. Foi utilizado principalmente na determinacao das condicoes iniciais dos movi-mentos, e para verificacao de possıveis problemas na leitura fornecida pelos potenciometros,como folgas e alteracoes em sua posicao original.

2.6 Conclusao

Neste capıtulo foi explicitado todo o sistema embarcado do prototipo e tambem seussubsistemas de funcionamento. Desenvolver pesquisas em uma plataforma real requer muitomais cuidado e dedicacao do pesquisador, pois muitas caracterısticas de funcionamento naosao de facil entendimento. Em muitas situacoes, trabalhos sao desenvolvidos somente emsimulacao. Esta representacao teorica alem de mais simples, e livre de todos os problemasreais que somente uma estrutura fısica esta suscetıvel, como o desgaste mecanico, ruıdos demedicao, atritos, folgas, imperfeicoes mecanicas, agarramentos, problemas de comunicacao,dentre outros.

2. Plataforma Experimental 51

Portanto, vale ressaltar alguns pontos caracterısticos da plataforma de testes, estas carac-terısticas serao importantes para adequacao do modelo cinematico utilizado nos proximoscapıtulos deste trabalho:

• Folga na direcao de 1,1;

• Folga na instalacao dos potenciometros;

• Tempo de atraso devido a comunicacao do robo com o computador que exerce o pro-cessamento off-board;

• Ruıdo de medicao das variaveis angulares de posicionamento.

• Variacao de velocidade devido a atritos e a calibracao do controle de velocidade;

• Desgaste mecanico devido ao tempo de uso;

• Limitacao dos angulos de direcao;

Estes pontos criam um ambiente bem complexo, mas que configura uma situacao depossıvel pior caso, ou seja, o trabalho se baseia numa plataforma com muitas limitacoes eque representa uma condicao mais proxima da realidade, que poderia ocorrer em um sistemasimilar ao existente neste trabalho, portanto, se e possıvel estabelecer um controle eficientepara esta situacao tao adversa, espera-se que para condicoes mais favoraveis ao controlee menos suscetıveis a interferencias externas consiga-se um controle ainda mais preciso econfiavel.

Capıtulo 3

Modelo Cinematico, Condicoes de Giro,Controladores Nao Lineares, Medidas deDesempenho e Controle PID

Este capıtulo apresenta o modelo cinematico do RMMA utilizado para testes, modeloeste que, apos um processo de adequacao as caracterısticas reais do robo, permitiu que di-versos ensaios fossem executados em simulacao e assim tornou possıvel um melhor enten-dimento do comportamento global de todo o sistema. Um resumo da modelagem analıticapode ser encontrada em (Ferreira e Pandolfi, 2011) e todo o processo detalhado se encontraem (Pandolfi, 2012).

Este capıtulo mostra tambem as principais diferencas entre as duas estruturas de controleque serao alvo de estudos neste trabalho. Estas estruturas sao baseadas nas condicoes sin-gulares de giro para RMMAs e consideram apenas estas situacoes singulares para exercero controle em malha fechada da planta. Os controladores sao denominados aqui como Fe-edback Nao Linear e Feedforward Nao Linear, o primeiro possui este nome, pois tem comoprincipal caracterıstica utilizar as informacoes de realimentacao para o calculo das condicoesde giro. Ja o segundo utiliza as informacoes de entrada, ou referencia, para fazer o calculodos angulos de giro da composicao.

Por ultimo, faz-se uma apresentacao, de forma criteriosa, das medidas de desempe-nho utilizadas neste projeto para analise da resposta obtida pelo software no processo deotimizacao. Estas medidas sofreram adequacao da definicao padrao encontrada na literaturapara aplicacao nesta pesquisa. E ainda, discute-se acerca da tecnica de controle PID, suasvantagens e como se utilizou tal estrutura de controle serao mostrados no fim deste capıtulo.

3. Modelo Cinematico, Condicoes de Giro, Controladores Nao Lineares, Medidas deDesempenho e Controle PID 53

3.1 Modelo Cinematico

Para a caracterizacao do modelo cinematico sao necessarias duas equacoes basicas, a pri-meira delas considera a interacao entre o elemento trator e o trailer imediatamente posteriorda cadeia articulada. A Equacao 3.1 mostra a variacao do angulo entre estes dois elementosdo robo.

∆θ1 =V T[(

1+cos(θ1)B1

A2

)cos(γ)sen(γ)

A1+

sen(θ1)

A2

](3.1)

Ja a Equacao 3.2 define a variacao dos angulos para uma cadeia articulada com n ele-mentos, a partir do segundo trailer posicionado imediatamente apos o elemento de tracao doveıculo.

∆θi = ϑi−1

[(1+

cos(θi)Bi

Ai+1

)−sen(θi−1)

Ai+

cos(θi−1)sen(θi)

Ai+1

]∀ i = 2,3, ..n. (3.2)

Na Equacao 3.2 e possıvel notar a presenca do termo ϑi−1, esta variavel e definida daseguinte forma:

ϑi = ϑi−1cos(θi−1) (3.3)

valida para todo i ≥ 2. Quando i = 1 no caso da tracao traseira, definimos a variavelcomo:

ϑ1 =V T (3.4)

Portanto, substituindo o termo 3.4 na Equacao 3.2 e adequando o ındice i as condicoesfısicas do prototipo utilizado neste trabalho encontra-se o modelo cinematico completo dorobo.

Vale ressaltar que esta modelagem e valida para a condicao de tracao traseira do roboutilizado nos testes. Existe uma outra Equacao que substitui a Equacao 3.1 para o caso detracao dianteira, que nao sera mostrada neste trabalho, pois nao esta no escopo do projeto.

A Figura 3.1 ilustra o veıculo de testes utilizado neste projeto, o modelo cinematicoem questao foi adequado ao caso estudado. E possıvel visualizar tambem, como foramconvencionados os sinais atribuıdos aos angulos de configuracao das articulacoes. Percebe-se que ambos os angulos θ1 e θ2 possuem sinal positivo, este posicionamento dos trailers

3. Modelo Cinematico, Condicoes de Giro, Controladores Nao Lineares, Medidas deDesempenho e Controle PID 54

com angulos assumindo o mesmo sinal e denominado neste trabalho como configuracaoconvexa. Esta e a situacao mais favoravel ao controle da cadeia, haja vista que sempre emmovimentos a frente o veıculo apresenta-se sobre uma dessas configuracoes.

O caso em que θ1 e θ2 possuem sinais opostos, denomina-se aqui como configuracaonao convexa, ou popularmente, como em Z, o controle fica bem mais complexo devido aoesforco em realizar a reversao da primeira articulacao. A Figura 3.2 ilustra o robo em talposicionamento desfavoravel.

Figura 3.1: Representacao do veıculo de testes - configuracao convexa.

Figura 3.2: Representacao do veıculo de testes - configuracao nao convexa.

3. Modelo Cinematico, Condicoes de Giro, Controladores Nao Lineares, Medidas deDesempenho e Controle PID 55

3.2 Condicoes Singulares de Giro

Um RMMA qualquer, com n trailers, assume uma configuracao de giro quando seusangulos de configuracao alcancam valores especıficos para os quais a composicao executauma trajetoria circular ou retilınea, caso o angulo da direcao seja constante e fixado correta-mente.

Matematicamente, estas situacoes correspondem a condicoes singulares das Equacoes3.1 e 3.2 em que ∆θ1,∆θ2, ...,∆θn sao todos iguais a zero. Alem disto, em se tratando de mo-vimentos em marcha a re, e mais coerente que os angulos de configuracao e o da direcao quecorrespondem a uma situacao de giro estejam condicionados ao angulo da ultima articulacao,e por esta razao, o calculo de uma configuracao em giro deve ser realizado na ordem inversada cadeia articulada.

Portanto, utilizando a Equacao 3.2, considerando ∆θi = 0 e evidenciando o termo θi−1

obtem-se:

θi−1 =

∣∣∣∣tan−1 Aisen(θi)

Ai+1 + cos(θi)Bi

∣∣∣∣sgn(θi) ∀ i = 2,3, ...(n−1) (3.5)

A Equacao de giro que relaciona o elemento truck e o primeiro elemento passivo dacadeia articulada para o caso do veıculo com tracao nas rodas traseiras e dada pela seguinteexpressao:

γ =12

∣∣∣∣sen−1(

2A1senθ1

A2 +B1cos(θ1)

)∣∣∣∣sgn(−θ1) (3.6)

3.3 Controlador Feedback Nao Linear

Este controlador foi implementado por (Bertolani, 2011) e baseia-se nas condicoes singu-lares de giro da cadeia articulada do veıculo. Esta estrategia de controle e valida e justificavelpelo fato de uma cadeia articulada em movimentos a frente sempre estar em uma condicaode giro, portanto a ideia basica e que em movimentos a re o veıculo seja controlado como seestivesse em movimentos a frente.

A Figura 3.3 mostra a estrutura de controle denominada Feedback Nao Linear.

Analisando a Figura 3.3 e possıvel perceber que uma caracterıstica muito importantedesta estrutura de controle e que o calculo das equacoes de giro e feito a cada iteracao de-pendendo da configuracao corrente do robo. Assim, a cada instante do movimento novos

3. Modelo Cinematico, Condicoes de Giro, Controladores Nao Lineares, Medidas deDesempenho e Controle PID 56

Figura 3.3: Controlador Feedback.

valores de θ1giro e γgiro sao utilizados para a obtencao do sinal de controle que e imposto aoprototipo.

Para o angulo da primeira articulacao (θ1), o controle implementado e simplesmenteproporcional, dado pelo ganho Kp1, que multiplica o erro entre o valor corrente da variavele o valor de giro em um determinado instante da manobra, ja para o controle do angulo dasegunda articulacao (θ2), utiliza-se um PID linear.

Neste trabalho nao se fez uso do controle derivativo do PID, pois alem de nao anularo erro em regime permanente a acao da derivada do erro aumenta as oscilacoes em regimetransitorio. Outro fato e que a planta e nao linear e para sistemas desta natureza nao e usuala utilizacao deste tipo de controle linear.

O sinal de controle γ e composto pela soma das contribuicoes dos controles lineares de(θ1) e (θ2), bem como do sinal γgiro oriundo das equacoes de giro.

Os saturadores servem para limitacao dos sinais de controle associados a cada angulode articulacao da cadeia, e proporcionam com isso, um melhor entendimento de qual acontribuicao relativa de cada um destes sinais na composicao final do sinal de controle doveıculo.

3.4 Controlador Feedforward Nao Linear

Este controlador foi proposto por (Ferraz, 2013) e tambem e baseado nas condicoes degiro, conforme pode ser visualizado na Figura 3.4.

3. Modelo Cinematico, Condicoes de Giro, Controladores Nao Lineares, Medidas deDesempenho e Controle PID 57

Figura 3.4: Controlador Feedforward.

A principal modificacao desta estrutura de controle ante o controlador Feedback NaoLinear e que para uma entrada em degrau, as equacoes de giro sempre calculam o mesmovalor de θ1giro e γgiro durante toda a manobra realizada.

Esta caracterıstica e vantajosa, pois mantem o controlador sempre buscando o giro emtorno da referencia imposta, independente da situacao em que se encontre o angulo θ2 nodecorrer do movimento.

E importante citar que existe uma definicao ainda nao explicitada neste trabalho, masque tem grande importancia no controle do RMMA independente de qual controlador es-teja atuante no sistema. Os angulos limites do robo que permitem a composicao executarmovimentos a re de forma satisfatoria, assim, como citado anteriormente, varios autoresconsideram tais limites, de forma equivocada, como sendo 90. Nesta pesquisa, gracas aoconhecimento e estudo previo com a plataforma de testes, levando em conta as limitacoesinerentes ao sistema de direcao, tem-se ±36,5 e ±66,5, respectivamente para θ1 e θ2,como limites dos angulos de configuracao do veıculo. Assim, quando a composicao atingeestes limites, considera-se engavetamento ou jacknife do robo, sendo portanto impossıvelprosseguir o movimento a re, existindo assim a necessidade de conceber movimento a frentea composicao, a fim de se corrigir tal posicionamento desfavoravel.

O controlador Feedforward tambem apresenta uma grande dependencia do sinal de con-trole oriundo de θ2, pois sabendo que o angulo θ1 apresenta um limite de variacao menor doque o angulo da ultima articulacao, este acaba por ficar responsavel pela maior parte do sinalde controle imposta ao veıculo.

O controlador Feedforward, devido sua arquitetura, tende a apresentar uma resposta maisrapida que o Feedback, justamente pelo fato de conseguir captar ja na primeira iteracao todoo erro de posicionamento entre a condicao inicial do robo e a referencia desejada para suaultima articulacao.

3. Modelo Cinematico, Condicoes de Giro, Controladores Nao Lineares, Medidas deDesempenho e Controle PID 58

Diversos testes foram realizados por (Ferraz, 2013) comparando o desempenho das duasestruturas de controle discutidas neste capıtulo. Estes testes mostraram que apesar de seremambas baseadas nas condicoes de giro, o funcionamento e bem distinto e cada estruturaapresenta particularidades marcantes quanto a sintonia dos ganhos dos controladores linearespara a realizacao de uma mesma manobra.

Tambem para o controle Feedforward nao se utilizou nesta pesquisa a parte derivativa docontrolador PID, os motivos sao os mesmos ja apresentados anteriormente na secao 3.3.

3.5 Medidas de Desempenho

Conforme ja mencionado, o principal objetivo deste trabalho e a otimizacao dos ganhosde controladores lineares via Algoritmo Genetico para melhorar a resposta final do sistema.Mensurar quao boas sao as respostas obtidas e muito importante e necessita-se, para isso,definir de forma criteriosa parametros de desempenho que capturem as caracterısticas maisrelevantes e desejadas do sinal de saıda do sistema.

Algumas medidas sao definidas na literatura de forma padrao, como pode ser visto em(Kuo, 2003) e ja se tornaram usualmente comuns em analise de respostas de sistemas namaioria das vezes bem comportados.

As principais medidas sao: o tempo de subida, tempo de estabelecimento, tempo depico, tempo de atraso (tempo de delay), a sobrelevacao da resposta com relacao a referenciadesejada e o erro medio estacionario. A seguir serao definidas as medidas de desempenhoutilizadas neste projeto:

• Tempo de delay (td): Tempo entre a ultima iteracao em que o angulo θ2 inicial naosofre alteracao e a iteracao em que este angulo esta em 50% do valor de referencia.

• Tempo de pico (t p): Tempo entre a ultima iteracao em que o angulo θ2 inicial naosofre alteracao e a iteracao em que este angulo assume seu valor absoluto maximo, seo angulo de referencia de θ2 for maior que θ2 inicial. Caso o angulo de referencia deθ2 seja menor que θ2 inicial, considera-se o ponto de pico, como sendo o ponto ondeθ2 assume seu valor absoluto mınimo.

• Tempo de subida ou Rise Time (tr): Tempo entre os instantes em que o angulo θ2

encontra-se a 10% e 90% do angulo de referencia.

• Sobrelevacao ou Overshoot (Mp): Diferenca entre o valor absoluto maximo e a mediado valor lido nas ultimas 100 iteracoes de θ2, medida como percentagem da amplitude

3. Modelo Cinematico, Condicoes de Giro, Controladores Nao Lineares, Medidas deDesempenho e Controle PID 59

do sinal de entrada de referencia, no caso do angulo de referencia de θ2 ser maior queθ2 inicial. Caso o angulo de referencia de θ2 seja menor que θ2 inicial, admite-se adiferenca entre o valor absoluto mınimo e o valor medio lido nas ultimas 100 iteracoesde θ2 tambem medida em percentagem da amplitude do sinal de entrada de referencia.

• Erro medio estacionario: Media das diferencas entre o valor de referencia de θ2 e osvalores reais correntes do angulo medido. Considera-se para o calculo do erro todosas medicoes feitas a partir do instante de tempo igual a 3 vezes o tempo de subida (tr).

Estas definicoes sofreram adequacoes das definicoes padroes presentes na literatura paraque pudessem ser aplicadas ao problema estudado. A Figura 3.5 mostra o comportamentoreal do sistema e exibe os parametros de desempenho utilizados neste projeto:

Figura 3.5: Parametros de desempenho utilizados neste trabalho.

Vale ressaltar que na Figura 3.5 desconsidera-se o tempo inicial em que o angulo θ2 naosofre alteracao para efeito do calculo do tempo de pico (t p) e tempo de delay (td).

3.6 Controle PID

Proporcional-Integral-Derivativo (PID) e a tecnica de controle mais usada na industria etem sido utilizada em todo o mundo, principalmente para sistemas de controle industrial. A

3. Modelo Cinematico, Condicoes de Giro, Controladores Nao Lineares, Medidas deDesempenho e Controle PID 60

popularidade de controladores PID pode ser atribuıda em parte ao seu desempenho robustoem uma ampla gama de condicoes de funcionamento e em parte a sua simplicidade funcio-nal. Como o nome sugere, o algoritmo PID e composto por tres coeficientes: proporcional,integral e derivativo, que sao variados para obter a resposta ideal do sistema.

Cada termo do PID contribui de modo distinto nos atributos do sinal de controle. O in-cremento no ganho proporcional pode aumentar a precisao, diminuindo o erro estacionario;pode aumentar a rapidez, diminuindo o tempo de subida e pode tambem melhorar a regulacaoe a rejeicao a perturbacoes. Em contrapartida, pode piorar a estabilidade transitoria, aumen-tando o sobressinal; piorar o tempo de estabilizacao, podendo deixar o sistema mais sensıvela ruıdos, pode tambem aumentar muito o esforco de controle, provocando perda de desem-penho na implementacao real face as saturacoes inerentes aos sistemas fısicos.

A introducao do termo derivativo possibilita uma melhora simultanea de precisao e esta-bilidade relativa, mas amplifica o ruıdo do sinal de controle, podendo levar a instabilidade.O termo integral visa melhorar a precisao no seguimento de referencias de ordem mais ele-vada, pelo aumento do tipo do sistema, diminuindo o erro estacionario. A acao integradorageralmente deixa a resposta do sistema mais lenta e oscilatoria.

A Figura 3.6 ilustra a representacao de um controlador PID basico, podendo ser obser-vado como e feito o calculo do sinal de controle do sistema, sinal este, constituıdo pelajuncao das parcelas proporcionais, integrais e derivativas do erro da resposta em relacao areferencia desejada.

Figura 3.6: Representacao de um PID basico.

Analisando ainda a Figura 3.6, percebe-se que existem tres valores de ganhos associadosao controle proposto, o primeiro ganho denominado Kp multiplica diretamente o valor deerro, o segundo ganho denominado Ki multiplica o valor da integral do erro e o ganho Kd

multiplica o valor da derivada do erro. Estes ganhos sao os alvos de estudo nesta dissertacao,

3. Modelo Cinematico, Condicoes de Giro, Controladores Nao Lineares, Medidas deDesempenho e Controle PID 61

objetivando uma proposta de sintonia destes valores via Algoritmo Genetico para obtencaoda melhor resposta possıvel do sistema.

Uma questao que merece ser destacada e que visualizando as Figuras 3.3 e 3.4, percebe-se que o controle via PID linear e somente aplicado ao controle do angulo θ2 e que parao controle do angulo θ1 utiliza-se somente um controlador proporcional. Este ganho Kp1

tambem foi alvo de estudo neste trabalho, para obtencao de sintonia do seu melhor valor.

Na literatura existem pesquisas, como em (Zhuang, 1993), que propoe um metodo au-tomatico de sintonia de PIDs lineares, ja em (Zhao e Isaka, 1993) utiliza-se uma tecnica deescalonamento de ganhos via logica fuzzy para sintonia dos ganhos do PID linear. Outraabordagem muito interessante quanto ao controlador PID e a possibilidade de fuzzificacaodesta estrutura, ou seja, a transformacao do PID linear em PID fuzzy, esta nova estrategia decontrole e muito estudada na literatura e em (Tang et al., 2001) propoe-se uma metodologiapara que se consiga um controlador otimo, diferente de (Teng e Tsoi, 2007) que desenvolveuma tecnica de auto-sintonia de ganhos com um numero mınimo de regras para este controle.

Esta estrutura linear de controle e de facil implementacao e no caso particular destetrabalho nao utilizou-se a parte derivativa do controle PID, por nao se aplicar a este problemaestudado, conforme ja mencionado.

3.7 Conclusao

Este capıtulo resume boa parte do que foi necessario estudar e compreender para o desen-volvimento desta dissertacao. Aqui foram apresentados os conceitos basicos que permitiramo avanco do trabalho no sentido de se produzir resultados ainda mais significantes para todaa pesquisa envolvendo o RMMA.

O modelo que representa a cinematica deste veıculo foi explicitado, e as equacoes degiro que se mostram como a base dos controladores nao lineares estudados nesta dissertacaotambem foram explicadas. Entender como as condicoes de giro influenciam a movimentacaodo VMA e de grande importancia para a compreensao geral do funcionamento de qualquerRMMA.

Os controladores Feedback e Feedforward utilizam como base o conhecimento sobreo giro das estruturas articuladas. Tal consideracao so se mostra eficiente com a inclusaode controladores lineares para ampliar o sinal de controle de cada articulacao do robo. Aotimizacao destes ganhos lineares presentes nas estruturas de controle nao linear e que seraoalvo de estudo neste trabalho.

3. Modelo Cinematico, Condicoes de Giro, Controladores Nao Lineares, Medidas deDesempenho e Controle PID 62

Uma explanacao acerca do funcionamento do PID, principal estrategia de controle ado-tada, se mostra de grande importancia para o melhor entendimento deste trabalho. Outroponto que merece destaque e a definicao, de forma criteriosa, dos parametros de desempenhoconsiderados nesta dissertacao, haja vista que estas medidas sofreram algumas alteracoes,para adequacao ao problema estudado, se comparadas as medidas padroes definidas na lite-ratura.

Capıtulo 4

Adequacao do Modelo Cinematico

O capıtulo aborda o processo de adequacao do modelo analıtico cinematico as condicoesde funcionamento do prototipo de testes. Primeiramente tentou-se utilizar somente o modelocinematico para simular o comportamento do VMA, mas depois de algumas tentativas estaestrategia se mostrou inviavel, haja vista que o robo real possui um comportamento muitomais complexo do que simplesmente o possibilitado pelo modelo cinematico.

Todo o processo de utilizacao do Algoritmo Genetico como ferramenta de otimizacao efeito de forma off-line, ou seja, em simulacao, assim se faz necessario o uso de um bom mo-delo representativo da planta para que os ganhos encontrados pelo software sejam aplicaveisao robo real. O que se percebeu na pratica e que utilizando somente o modelo cinematico osganhos obtidos pelo programa desenvolvido nao se aplicavam a situacao real.

Portanto, surgiu a necessidade de uma melhor compreensao dos fatores que influencia-vam tanto a resposta esperada do veıculo em testes reais. Partiu-se entao para uma verificacaoexperimental de todos os possıveis pontos que divergiam entre o comportamento real e o si-mulado do sistema.

Alguns fatores foram facilmente identificaveis e por inspecao foram adicionados ao mo-delo cinematico da forma mais aproximada que se conseguiu comparando-se com o com-portamento do prototipo. No entanto, algumas caracterısticas sao muito difıceis de seremmensuradas, pois existem muitos comportamentos indesejados em um prototipo real e quepodem acontecer esporadicamente ou em somente um determinado instante do movimento,como exemplo, as folgas mecanicas, deslizamentos, agarramentos, ruıdos, dentre outras naolinearidades.

O objetivo principal deste capıtulo e mostrar como foi criado o melhor ambiente possıvelde simulacao que se conseguiu, capaz de representar de forma mais aproximada o compor-tamento do RMMA de testes. Muitas caracterısticas de funcionamento do robo conseguiram

4. Adequacao do Modelo Cinematico 64

ser identificadas e numericamente tentou-se adicionar seus efeitos ao modelo cinematico,mas muitos efeitos nao foram capturados. Isto nao tira a credibilidade do modelo obtido,pois o processo de modelagem se baseia na obtencao da melhor estrutura representativa de-finida pelo usuario do modelo, nao sendo necessario o mesmo ser exatamente igual ao quese deseja modelar.

Todo o modelo em simulacao foi feito utilizando-se a ferramenta Simulink do softwareMATLAB R©.

Nesta dissertacao define-se um padrao de representacao das manobras executadas peloveıculo, como:

[θ1,θ2]→ [θ∗2] (4.1)

Esta representacao (Equacao 4.1) pode ser lida da seguinte forma: antes da seta tem-se ascondicoes iniciais dos angulos de configuracao dos reboques θ1 e θ2, e depois da seta fixa-seo angulo de referencia para o ultimo trailer da composicao.

Apesar do veıculo possuir tres angulos de configuracao (γ, θ1 e θ2), nesta dissertacao naorepresentou-se o angulo de direcao na caracterizacao dos movimentos, pois todo o sistema,por estar sempre em malha fechada, nao apresentou diferencas significativas de funciona-mento adotando-se valores iniciais diferentes para esta variavel. E facil perceber, que osistema estando controlado, o angulo de direcao, independentemente do posicionamento ini-cial, ja apresenta variacao no sentido de se estabelecer o controle na primeira iteracao damanobra, assim, optou-se por nao considerar tal angulo na configuracao dos movimentos.

4.1 Analise de Velocidade

Um dos primeiros pontos a serem observados e que o modelo cinematico admite queo sistema opera com velocidade constante, e esta situacao e muito questionavel, apesar damaior parte do tempo de manobra o robo apresentar velocidade aproximadamente constante,e notorio que em todos os casos existem variacoes de velocidade mensuraveis tanto no inıciodo movimento quanto no decorrer da manobra. Esta situacao e bem caracterıstica de robosmoveis terrestres, pois existem varios fatores que podem influenciar na mudanca de veloci-dade do prototipo, dentre eles podem ser destacados o atrito com o solo, os agarramentosmecanicos e variacoes na tensao de alimentacao.

Entao, a questao inicial de adequacao se fez na velocidade (V ), que no modelo cinematicoaparece no termo V T das Equacoes 3.1 e 3.2 multiplicando o perıodo de amostragem (T ) do

4. Adequacao do Modelo Cinematico 65

sistema. Inicialmente mediu-se a velocidade media do prototipo em alguns testes e verificou-se que este valor estava proximo de 0,15m/s, sabendo que o perıodo de amostragem medioreal e de 60ms, encontra-se entao o valor de V Treal = 0,0090m ou 0,90cm que representao intervalo medio espacial percorrido pelo veıculo entre duas iteracoes sucessivas em testescom a plataforma.

Atribuiu-se entao este valor ao modelo, percebeu-se que era necessario uma pequenaalteracao para que a resposta ficasse ainda mais proxima da real, ja que o veıculo em simulacaose mostrava um pouco mais lento. Entao, aumentou-se este valor, e por inspecao chegou-se aV Tmodelo = 0,95cm. E importante frisar, que em testes reais, as duas variaveis que compoemo termo V Treal nao sao constantes, portanto era de se esperar pequenas alteracoes no termoV Tmodelo para que a simulacao fosse mais fiel ao comportamento da plataforma de testes.

Outro ponto a ser verificado, e que no Simulink a resposta final e dada em segundos,e considera-se neste trabalho a janela de tempo do programa como sendo em iteracoes dorobo, assim, o que o simulador mostra em segundos na verdade representam numeros reaisde iteracoes do robo, assim faz-se uso do tempo entre iteracoes de 60ms para tal conversao.

4.2 Analise da Leitura dos Potenciometros

Uma outra consideracao feita, e que na medicao real do posicionamento do robo existeum ruıdo no sinal medido, ou seja, este sinal sempre sofre pequenas alteracoes devido aaproximacoes numericas do sinal analogico medido pelo potenciometro dentro da faixa detolerancia, e tambem devido ao proprio desgaste fısico do componente. Isto ja era de se es-perar, pelo fato de se trabalhar com uma plataforma real. Tentou-se entao simular este efeitono modelo adicionando um bloco de Uniform Random Number (Figura 4.1), que conformeo proprio nome sugere acrescenta as variaveis ∆θ1 e ∆θ2 valores numericos aleatorios comdistribuicao uniforme.

Figura 4.1: Bloco Uniform Random Number.

O valor definido de amplitude do sinal aleatorio do bloco foi obtido por inspecao e paraas duas articulacoes ficou fixado no intervalo entre [-0.001;0.001]. As Figuras 4.2 e 4.3exemplificam o comportamento simulado do sinal de ∆θ1 e ∆θ2 em radianos.

4. Adequacao do Modelo Cinematico 66

(a)

(b)

Figura 4.2: (a) ∆θ1 sem ruıdo de medicao expresso em radianos (b) ∆θ1 com ruıdo demedicao expresso em radianos - Manobra: [θ1,θ2] = [11.57,18]→ [13].

Esta adequacao se fez necessaria, haja vista que a reposta real apresentava algumasoscilacoes de pequena amplitude que nao eram de facil identificacao, e adicionando esteruıdo conseguiu-se uma boa aproximacao do efeito esperado na resposta, alem de ser umefeito que reconhecidamente acontece na pratica devido as caracterısticas de funcionamentodo equipamento de medicao e da arquitetura construtiva do veıculo.

Alem destes ruıdos, percebeu-se que ainda existiam variacoes nao consideradas na medicaodo angulo θ2, assim, fez-se necessario a adicao de mais um efeito de perturbacao na variavelcitada, sendo para isso utilizado o bloco Band-Limited White Noise (Figura 4.4). Este foiconfigurado com o parametro Noise Power = 0.01. Nota-se, analisando as Figuras 4.2 e

4. Adequacao do Modelo Cinematico 67

(a)

(b)

Figura 4.3: (a) ∆θ2 sem ruıdo de medicao expresso em radianos (b) ∆θ2 com ruıdo demedicao expresso em radianos - Manobra: [θ1,θ2] = [11.57,18]→ [13].

4.3 que nesta ultima, o ruıdo interfere muito mais na resposta, isto varia de acordo com amanobra realizada devido a amplitude do sinal no decorrer do movimento. A adicao destenovo ruıdo compromete ainda mais a resposta do sistema, simulando assim o efeito ruidosode medicao existente principalmente no angulo θ2 do veıculo.

Figura 4.4: Bloco Band-Limited White Noise.

4. Adequacao do Modelo Cinematico 68

4.3 Analise das Folgas Mecanicas

A folga e uma das principais nao linearidades que afetam quase todos equipamentosmecanicos trazendo como consequencia o funcionamento indesejado do sistema. A formacomo estao acoplados os potenciometros no robo de testes utilizado e muito suscetıvel aoaparecimento de folgas no decorrer das manobras, isto compromete o resultado obtido e seuefeito e bem caracterıstico na resposta final do sistema.

E indiscutıvel que a plataforma de testes apresenta folgas mensuraveis em alguns pontosbem definidos, primeiramente pode-se citar o acoplamento dos potenciometros com os trai-lers do robo, que afetam a leitura correta dos angulos correntes das articulacoes; outra folgacaracterıstica e no sistema de direcao, que conforme citado no Capıtulo 2 deste trabalho estaem torno de 1,1, alem das folgas mecanicas presentes em diversas engrenagens internas doveıculo. O efeito das folgas foi simulado atraves da inclusao do bloco Backlash, conformeFigura 4.5.

Figura 4.5: Bloco Backlash.

A Figura 4.6 exemplifica o efeito da folga na resposta do sistema. Nota-se, que a principaldiferenca entre as imagens, e que no caso simulado sem a presenca de folgas (Figura4.6(c)),o sistema nao apresenta sobrelevacao e o comportamento e menos oscilatorio que nos outrosdois casos: Figura 4.6(a) e Figura 4.6(b).

Novamente, por inspecao, fixou-se as folgas apenas nas duas articulacoes do robo, ouseja, assume-se no modelo que so existem folgas na medicao dos angulos de configuracaodos trailers, e que estas folgas equivalem a 1,05 para θ1 e 0,7 para θ2. O principal motivopara que o modelo nao considere folgas no angulo de direcao e que o sistema por estarsempre realimentado propaga por toda malha de controle o efeito nao linear ocasionadopela presenca das folgas ja incorporadas, portanto nao se faz necessario a inclusao de maisuma folga, se o sistema simulado ja apresenta um comportamento considerado adequado eproximo do real.

O valor nominal atribuıdo as folgas dos angulos em simulacao condizem com a realidadeobservada durante os testes, nos quais o posicionamento dos angulos podem, normalmente,para uma mesma posicao aferida, mostrar uma variacao de uma, duas ou tres unidades demedida, em que cada unidade equivale a 0,352, conforme definido no Capıtulo 2. Assim,assume-se um erro de posicionamento real variavel entre 0,352 e 1,056.

4. Adequacao do Modelo Cinematico 69

(a)

(b)

(c)

Figura 4.6: Analise da influencia das folgas em: (a) Comportamento real (b) Simulacao coma inclusao da folga (c) Simulacao sem a inclusao da folga - Manobra: [θ1,θ2] = [0,0]→[−5].

4. Adequacao do Modelo Cinematico 70

4.4 Derrapagem das Rodas e Zona Morta do Motor

Conforme mencionado anteriormente, alguns efeitos nao foram incluıdos no modelo,podendo ser destacados como principais: as nao linearidades provocadas pela derrapagemdas rodas no contato com o solo e a zona morta presente no motor do veıculo. Apesar de sernotorio sua existencia na plataforma de testes, mensurar estes efeitos se mostrou uma tarefacomplexa, devido a nao repetibilidade constatada destes efeitos, dificultando assim uma boaestimacao destes parametros.

Os trabalhos desenvolvidos por (Chung et al., 2011) e por (Park e Kim, 2005) mostramo problema da derrapagem em um RMMA parecido com o utilizado nos testes. Estes traba-lhos abordam tambem o problema da aceleracao e de outros efeitos dinamicos presentes emVMAs. Nao foi possıvel o aproveitamento destes conhecimentos previos, pois a plataformaexperimental apresentou comportamento distinto do esperado nos testes para verificacao daderrapagem, logo, optou-se por nao incluir este efeito no modelo.

Todo o processo de experimentacao com a plataforma de testes deixa evidente um com-portamento bem caracterıstico do veıculo, no inıcio da manobra durante aproximadamenteas primeiras 25 iteracoes, os angulos θ1 e θ2 nao apresentam variacao alguma. Este compor-tamento leva a conclusao de que o sistema apresenta uma zona morta, tentou-se entao, semsucesso, incluir o efeito desta nao linearidade no comportamento do modelo.

Esta falta de sucesso se deve ao fato deste atraso inicial nao ser definido unicamentecomo zona morta, na verdade este comportamento se deve ao processo inicial de calibracaodo angulo de direcao, acrescido tambem da zona morta do motor no acionamento do mesmopara o inıcio do movimento, bem como de todo o processo de sincronizacao inicial dacomunicacao para execucao da manobra.

Todos estes fatores, juntos, caracterizam este atraso inicial de movimentacao do veıculo,diante destas condicoes optou-se por nao representar este atraso no modelo, ja que para ocalculo dos ındices de desempenho da resposta desconsidera-se esta parte da manobra.

4.5 Analise do Atraso de Comunicacao

Conforme mencionado no Capıtulo 2, a comunicacao entre a plataforma de testes e ocomputador remoto, responsavel pelo controle do robo, e um fator determinante no temponecessario para realizar uma iteracao no sistema em malha fechada. Em (Nguyen e Galijan,1997) trabalha-se com uma plataforma de testes proxima da utilizada nesta dissertacao ediscute-se acerca de todo o processo de comunicacao, mostrando as principais vantagens edesvantagens do sistema de processamento ser off-line.

4. Adequacao do Modelo Cinematico 71

Nao e difıcil perceber que existe um atraso de transporte da variavel de controle γ, hajavista que uma parcela do tempo entre acoes sucessivas de controle e destinada ao processo decomunicacao. Este atraso foi caracterizado no modelo pelo bloco Transport Delay (Figura4.7), e o valor fixado, tambem por inspecao, foi de 4 iteracoes, ou 240ms. Este comporta-mento simula o sinal de controle atuante num posicionamento passado, ou seja, o sinal decontrole e atrasado em relacao a configuracao presente do robo.

Figura 4.7: Bloco Transport Delay.

A Figura 4.8 exemplifica o efeito provocado pelo atraso de comunicacao no modelodesenvolvido. Nas Figuras 4.8(b)-(e) sao perceptıveis as mudancas que ocorrem na respostado sistema, quando altera-se o tempo do atraso de comunicacao. Por este exemplo, ficafacil identificar, que o comportamento em simulacao, com atraso, que mais se aproxima docomportamento real do prototipo e o modelo definido na Figura 4.8(d), justificando assim aescolha deste valor de atraso para o modelo final.

No processo de comunicacao existe outro problema difıcil de ser configurado no modeloem simulacao, que e a perda de pacotes de dados. Esta caracterıstica nao foi considerada nomodelo devido a complexidade de se mensurar este efeito.

Uma das alternativas para a eliminacao deste atraso de comunicacao seria realizar todoo processamento embarcado, evitando assim a utilizacao de um computador remoto pararealizacao do processo de controle da plataforma. Nota-se que esta estrutura de comunicacaoe caracterıstica do veıculo de testes utilizado, e se mostra como a principal diferenca entre oprototipo e um veıculo real, ja que neste, fica totalmente desconsiderada a possibilidade deexistir um processamento off-line.

Outro ponto a ser destacado e que todas as estruturas de controle ate entao propostase testadas consideraram o efeito do atraso de comunicacao em processos de sintonia e deajustes de ganhos, mesmo que de forma empırica. Assim, e de se esperar que de posse deum veıculo mais bem instrumentado, que seja mais fiel ao comportamento de uma estruturareal, ou seja, sem o problema de comunicacao, consiga-se encontrar respostas melhores dosistema.

4. Adequacao do Modelo Cinematico 72

(a) (b)

(c) (d)

(e)

Figura 4.8: Analise da influencia do atraso de comunicacao em numero de iteracoes: (a)Comportamento real do prototipo (b) Modelo com atraso = 0 (c) Modelo com atraso = 2 (d)Modelo com atraso = 4 (e) Modelo com atraso = 6. - Manobra: [θ1,θ2] = [0,0]→ [−5].

4.6 Analise do Atraso de Configuracao

O atraso de configuracao e definido pela diferenca de tempo que existe entre a variacaodos angulos θ1 e θ2 do veıculo, ou seja, principalmente no inıcio dos movimentos do robopercebe-se uma defasagem de tempo entre a primeira mudanca do angulo θ2 em relacao a

4. Adequacao do Modelo Cinematico 73

primeira variacao de θ1. A Figura 4.9 exemplifica tal comportamento dos angulos do VMA.

(a)

(b)

Figura 4.9: Medicao do atraso de configuracao existente entre θ1 e θ2 para as seguintessituacoes: (a) Caso real (b) Caso simulado - Manobra: [θ1,θ2] = [0,0]→ [−5].

Nas Figuras 4.9(a) e 4.9(b) existem dois marcadores que exibem a ultima iteracao emque nao existe mudanca no angulo de configuracao, ou seja, a partir dos pontos marcadose que os angulos comecam a sofrer alteracao no sentido de executar a manobra requerida.Portanto, nota-se que no caso real (Figura 4.9(a)) o atraso entre a variacao de θ1 e θ2 e de 9iteracoes, assim o angulo da ultima articulacao so varia algum tempo depois da variacao doangulo do primeiro trailer.

No caso simulado (Figura 4.9(b)) ja adequado ao caso real, e possıvel perceber que oatraso marcado e de 10 iteracoes, bem proximo ao real. Para o calculo deste atraso foinecessario uma investigacao em diversas condicoes iniciais de manobra, e o que se registrou

4. Adequacao do Modelo Cinematico 74

foi o atraso existente entre os angulos dos reboques de acordo com cada angulo inicial θ2.Percebeu-se que este atraso se mostrava diferente para cada manobra realizada, portantocaracterizou-se o atraso de configuracao por uma funcao, que esta ilustrada na Figura 4.10(a).

Para as manobras que apresentam o valor absoluto de referencia de θ2 maior que o va-lor inicial considerado, e para os casos que partindo-se do alinhamento, ou seja, θ1 = 0 eθ2 = 0 com referencia desejada em ±5, outro atraso de configuracao pode ser percebido.Este atraso caracteriza-se pela diferenca de tempo existente entre o instante em que θ1 atingeo valor mınimo absoluto e o instante em que ocorre a primeira variacao do angulo θ2. Estacaracterıstica do sistema se mostrou variante de acordo com o valor inicial do angulo θ1,portanto, novamente se mostrou necessario a atribuicao de uma funcao que ilustre o com-portamento deste atraso com relacao ao posicionamento inicial do veıculo. A Figura 4.10(b)mostra o comportamento encontrado para a variacao do atraso identificado.

(a)

(b)

Figura 4.10: Estimacao do atraso de configuracao: (a) Dependente de θ2 inicial (b) Depen-dente de θ1 inicial.

4. Adequacao do Modelo Cinematico 75

Para os casos em que a referencia de θ2 tem valor absoluto menor do que o angulo inicialda variavel, nao notou-se um atraso consideravel e portanto nao foi necessario fazer nenhumaadequacao para estas condicoes. Estes atrasos foram configurados no Simulink utilizando obloco Variable Time Delay (Figura 4.11).

Figura 4.11: Bloco Variable Time Delay.

4.7 Analise da Saturacao

A saturacao se faz presente no modelo desenvolvido com o objetivo de simular limitacoesfısicas presentes no prototipo. Existem tres saturadores no modelo, o primeiro deles e res-ponsavel por garantir que o angulo do volante (γ) nao ultrapasse a faixa real de excursao doprototipo que e de ±20. Os outros dois saturadores se incubem de simular o possıvel efeitodo jacknife no decorrer da manobra.

Os limites estabelecidos para os angulos de configuracao θ1 e θ2, sao respectivamente,±36.5 e±66.5. Conforme ja mencionado, estes sao os angulos crıticos de cada articulacao,ou seja, sao os valores maximos permitidos pelo sistema para que se consiga realizar mano-bras, qualquer valor nominal acima dos estabelecidos impossibilita o veıculo de realizarmovimentos a re de forma satisfatoria, sendo necessario que a composicao se movimente afrente.

O efeito da saturacao foi conseguido em simulacao com o uso do bloco Saturation, con-forme Figura 4.12.

Figura 4.12: Bloco Saturation.

4. Adequacao do Modelo Cinematico 76

4.8 Modelo Final

Ao final de varios testes, foi possıvel a elaboracao do modelo completo do VMA. Con-forme citado anteriormente neste capıtulo, este modelo considera alguns efeitos dinamicosdo robo, e se mostrou imprescindıvel para a elaboracao de todo este trabalho, pois atravesdesta plataforma de testes virtual foi possıvel realizar todo o processo off-line de otimizacaodos ganhos dos controladores lineares, que e o foco principal deste projeto.

A Figura 4.13 mostra o modelo cinematico do veıculo no Simulink. Ja a Figura 4.14 exibeo modelo completo do sistema com os blocos que fazem o papel de adequar a cinematica aofuncionamento real do prototipo.

(a)

(b)

Figura 4.13: Modelo cinematico: (a) Calculo de θ1 (b) Calculo de θ2.

4. Adequacao do Modelo Cinematico 77

Figu

ra4.

14:M

odel

oco

mpl

eto

com

incl

usao

deef

eito

sdi

nam

icos

.

4. Adequacao do Modelo Cinematico 78

Alguns testes foram realizados para verificacao da qualidade do modelo obtido. A Figura4.15 mostra tres comportamentos distintos do sistema para uma mesma manobra, a Figura4.15(a) exibe o comportamento cinematico puro do RMMA, a Figura 4.15(b) representa ofuncionamento real do prototipo e a Figura 4.15(c) ilustra a simulacao do modelo cinematicoadequado ao caso real.

(a)

(b)

(c)

Figura 4.15: (a) Modelo cinematico (b) Comportamento real do prototipo (c) Modelo ade-quado utilizado para simulacao - Manobra: [θ1,θ2] = [3.9,6]→ [1].

4. Adequacao do Modelo Cinematico 79

Analisando os graficos, percebe-se de forma clara, que simplesmente o modelo cinematiconao representa o comportamento real do sistema. Esta diferenca consideravel, justifica o fatode se realizar todo o processo de adequacao no sistema para que se conseguisse um com-portamento mais proximo da realidade. Nota-se que o modelo obtido apos o processo deadequacao (Figura 4.15(c)) exibe um comportamento bem proximo do real e bem distintodo modelo cinematico original, demonstrando o quao distante e o comportamento real dosistema do modelo cinematico.

A Figura 4.16 mostra o comportamento do sistema para uma manobra, denominada aqui,de fechamento, ou seja, o angulo de referencia de θ2 tem um valor absoluto menor do que oangulo de posicionamento inicial. Esta manobra e mais complexa, pois exige uma correcaomaior do angulo θ1 para que se consiga realizar o movimento. Nota-se novamente, pelacomparacao das Figuras 4.16(c) e 4.16(b), que o modelo depois da adequacao se comportamuito proximo da realidade.

(a) (b)

(c)

Figura 4.16: (a) Modelo Cinematico (b) Comportamento real do prototipo (c) Modelo Ade-quado Utilizado para Simulacao - Manobra: [θ1,θ2] = [7.77,12]→ [7].

A Figura 4.17 tambem ilustra uma manobra de fechamento, neste caso, apesar da situacaoreal (Figura 4.17(b)) apresentar uma pequena diferenca para o caso do modelo adequado (Fi-gura 4.17(c)), percebe-se que a simulacao, ainda assim, representa o pior caso, apresentando

4. Adequacao do Modelo Cinematico 80

uma sobrelevacao maior do que realmente aparece em teste com o prototipo. Esta e uma boaindicacao, pois apesar do modelo apresentar uma pequena divergencia, esta caracterısticaacaba por garantir um efeito melhor do que o esperado em testes reais. Novamente, e evi-dente que somente o modelo cinematico (Figura 4.17(a)), nao representa o comportamentoda plataforma de testes.

(a)

(b)

(c)

Figura 4.17: (a) Modelo cinematico (b) Comportamento real do prototipo (c) Modelo ade-quado utilizado para simulacao - Manobra: [θ1,θ2] = [11.57,18]→ [13].

4. Adequacao do Modelo Cinematico 81

Analisando a Figura 4.18, conclui-se facilmente, que a principal diferenca entre o com-portamento do modelo adequado (Figura 4.18(c)) e do caso real (Figura 4.18(b)) e o sinalde γ, responsavel pelo controle do RMMA. Percebe-se que no modelo adequado o sinal ebem menos oscilatorio, isto e um indicativo de que ainda existem efeitos de perturbacao naoconsiderados no modelo em simulacao.

Outra caracterıstica do sinal γ em simulacao e a consideracao inicial de seu valor sersempre igual a zero. Ja no caso real isto quase nunca acontece, um exemplo disso podeser visto na Figura 4.18(b), que apresenta o valor inicial de 20 para o angulo de direcao.Esta consideracao nao compromete a qualidade do modelo, pois como o sistema esta sempresendo executado em malha fechada, o angulo γ sempre esta controlado, portanto o valorinicial e mantido apenas na primeira iteracao, ficando atenuado seu efeito pelo atraso decomunicacao e de configuracao existente no sistema.

(a) (b)

(c)

Figura 4.18: (a) Modelo Cinematico (b) Comportamento real do prototipo (c) Modelo ade-quado utilizado para simulacao - Manobra: [θ1,θ2] = [15.28,24]→ [19].

A Figura 4.19 mostra o comportamento do sistema em uma manobra, denominada aqui,de abertura, onde aumenta-se o angulo de θ2 em modulo. Este teste comprova novamenteque o modelo adequado (Figura 4.19(c)) se aproxima do caso real (Figura 4.19(b)) por apre-sentar a mesma situacao de engavetamento existente na pratica. Caracterıstica esta, que o

4. Adequacao do Modelo Cinematico 82

(a)

(b)

(c)

Figura 4.19: (a) Modelo cinematico (b) Comportamento real do prototipo (c) Modelo ade-quado utilizado para simulacao - Manobra: [θ1,θ2] = [11.57,18]→ [23].

modelo cinematico puro (Figura 4.19(a)) nao apresenta, justificando mais uma vez sua im-possibilidade de uso como representante do comportamento real do sistema.

O efeito da saturacao pode ser visualizado analisando as curvas do modelo adequado,

4. Adequacao do Modelo Cinematico 83

que a partir da iteracao 200 mostra os angulos θ1 e θ2 com seus valores nominais maximose fixos, e tambem o angulo γ saturado em quase todo o decorrer do movimento.

Todos os testes de validacao do modelo apresentados nesta dissertacao foram feitos uti-lizando o controlador Feedback, e utilizando-se o controlador Feedforward o modelo ade-quado tambem se comportou proximo da realidade, haja vista que todas as mudancas feitasforam somente no modelo cinematico do VMA, sendo portanto, seu desempenho indepen-dente do controlador utilizado.

4.9 Conclusao

Neste capıtulo descreve-se todo o processo de adequacao do modelo cinematico de umRMMA as condicoes de uso em um VMA real de testes. As mudancas se deram prin-cipalmente na inclusao de efeitos nao lineares presentes na estrutura fısica utilizada nestapesquisa.

Este robo apresentava uma dinamica de variacao dos angulos de configuracao muito dife-rente daquela possibilitada apenas pelo modelo cinematico. Assim, o processo de adequacaorealizado foi imprescindıvel para obtencao de um bom modelo que represente o veıculo. Deposse deste ambiente de simulacao fidedigno, foi possıvel a realizacao de ensaios com oobjetivo de ajustar os ganhos lineares dos controladores pretendidos.

Este capıtulo mostrou, em alguns testes, uma analise qualitativa do modelo adequado,no Capıtulo 6 a analise quantitativa da resposta obtida pelo modelo sera feita, e medidas dedesempenho mensurarao de forma definitiva o nıvel de representatividade apresentado pelasimulacao perante o comportamento real do robo.

Capıtulo 5

Algoritomos Geneticos e Software A4G

O objetivo principal deste capıtulo e fazer um estudo sobre a teoria dos AlgoritmosGeneticos, mostrando como se deu o emprego desta ferramenta computacional no desen-volvimento do trabalho. As principais vantagens da utilizacao deste metodo e as particula-ridades empregadas no software de otimizacao, denominado A4G, serao explicitadas. Istopossibilitara a compreensao de como e executada a busca pelo melhor conjunto de ganhosdos controladores lineares.

5.1 Algoritmos Geneticos

Sao algoritmos probabilısticos que fornecem um mecanismo de busca paralela e adap-tativa baseado no princıpio de sobrevivencia dos indivıduos mais aptos de uma populacao,caracterizando estes seres como os mais evoluıdos e geneticamente otimos.

Os Algoritmos Geneticos (AG) estao inseridos em uma grande area do conhecimentodenominada Inteligencia Computacional. Esta e uma area da ciencia que busca, atraves detecnicas inspiradas na natureza, o desenvolvimento de sistemas inteligentes que imitam as-pectos do comportamento humano, tais como: aprendizado, percepcao, raciocınio, evolucaoe adaptacao. A Inteligencia Computacional engloba tambem as Redes Neurais, Logica Fuzzye Sistemas Especialistas.

Particularmente, os AGs sao uma classe de algoritmos evolutivos que usam tecnicas base-adas na biologia evolutiva, como por exemplo, mutacao, reproducao, exclusao e recombinacao(crossover), para definir os melhores indivıduos de uma determinada populacao. Inspiram-seno princıpio Darwiniano da evolucao das especies e na genetica (Goldberg, 1989).

5. Algoritomos Geneticos e Software A4G 85

Estes algoritmos sao implementados em softwares de simulacao, em que uma populacaode representacoes abstratas da solucao e avaliada objetivando-se encontrar, a cada iteracaodo programa, solucoes mais adequadas e melhor aplicaveis ao problema existente.

Para compreender melhor seu funcionamento, faz-se necessario realizar uma analogia aexplicacao sobre a evolucao das especies. Assim, os AGs funcionam da seguinte forma:

• Inicialmente e gerada uma populacao formada por um conjunto aleatorio de indivıduos,que podem ser vistos como possıveis solucoes do problema.

• Durante o processo evolutivo, esta populacao e avaliada, sendo que para cada indivıduoe atribuıda uma nota, ou ındice (fitness), que reflete sua habilidade de adaptacao adeterminado ambiente.

• Uma porcentagem dos indivıduos mais adaptados e mantida, enquanto os outros saodescartados.

• Os membros mantidos pela selecao podem sofrer modificacoes em suas caracterısticasfundamentais por meio de cruzamentos (crossover), mutacoes ou recombinacao geneticagerando descendentes para a proxima geracao.

• Este processo, chamado de reproducao, e repetido ate que uma solucao satisfatoria sejaencontrada. Embora possam parecer simplistas do ponto de vista biologico, estes algo-ritmos sao suficientemente complexos para fornecer mecanismos de busca adaptativospoderosos e robustos.

Esta e uma apresentacao geral e generica do funcionamento dos AGs, na Figura 5.1pode-se visualizar um fluxograma basico de execucao destes algoritmos.

Uma das grandes vantagens dos Algoritmos Geneticos e que esta ferramenta por sergenerica, pode ser modificada para diferentes aplicacoes, de acordo com a necessidadedo problema estudado. No caso desta dissertacao, utilizou-se como indivıduos de umapopulacao os ganhos Kp, Kd e Ki dos controladores PIDs das estruturas Feedback e Fe-edforward, associados ao controle do angulo θ2, e o ganho Kp1 do controlador proporcionaldas mesmas estruturas, associado ao controle do angulo θ1.

Uma das particularidades que mais merecem ser destacada nos AGs e que para cadautilizacao do metodo, pode-se encontrar solucoes diferentes, haja vista que a busca pelasmelhores respostas esta sempre atrelada a forma como se escolhe o grupo de indivıduosiniciais e os operadores geneticos. Se bem selecionados, estes parametros, podem produzirde fato a resposta otima global para o problema, caso contrario, tende-se a encontrar solucoesrepresentativas de otimos locais, nao necessariamente representando as melhores solucoes

5. Algoritomos Geneticos e Software A4G 86

Figura 5.1: Fluxograma de funcionamento basico dos Algoritmos Geneticos.

para o problema. Necessitando assim de uma boa bateria de testes para encontrar solucoesotimas definitivas do problema.

Um fator determinante desta tecnica sao os operadores geneticos, estes, tem por obje-tivo realizar transformacoes em uma populacao, fazendo com que, a cada nova geracao,indivıduos cada vez mais capazes sejam criados, contribuindo assim para que as populacoesevoluam a cada nova geracao. Com isto, os operadores geneticos sao classificados em:inicializacao, funcao de aptidao, selecao, cruzamento, mutacao, atualizacao e finalizacao.Sendo que destes, destacam-se os de selecao, cruzamento e mutacao, responsaveis por con-duzirem a busca no sentido da deteccao da melhor solucao.

O operador de inicializacao consiste na criacao de uma populacao inicial, esta carac-terıstica e intrınseca destes algoritmos, existindo um compromisso no modo como se escolhetal parametro. Assim, quanto ao tamanho da populacao inicial, pode-se considerar que, esco-lher uma quantidade grande de indivıduos para dar inıcio ao metodo, requer grande esforcocomputacional, pois a populacao sendo grande e papel do algoritmo genetico testar todos osindivıduos como solucoes, isto pode gerar esforco desnecessario de processamento e tornara busca lenta. Por outro lado, se a populacao inicial e restrita demais, a convergencia dasolucao e bem mais rapida, porem, existem grandes chances da resposta encontrada nao sera melhor para o problema estudado.

Outro compromisso, e em gerar a populacao inicial de forma aleatoria, objetivando au-mentar sua diversidade genetica, garantindo desta forma, um maior alcance do espaco debusca. Caso a inicializacao da populacao nao ocorra de forma randomica, esta podera con-vergir prematuramente, isso significa que em um curto espaco de tempo a populacao possuiraindivıduos muito semelhantes, ou seja, com pouca diversidade genetica, o que dificultara na

5. Algoritomos Geneticos e Software A4G 87

escolha da melhor solucao.

O operador genetico de aptidao, mais utilizado como fitness, e responsavel por mensurarquao adaptado, ou proximo da solucao, e o indivıduo considerado, definindo assim se estecontribuira para resolucao do problema. No mundo real, a aptidao e exercida pelo meio emque o indivıduo vive. Quando acontece uma modificacao no meio e determinado indivıduonao se encontra apto para sobreviver ali, ele tem menos probabilidade de se reproduzir eassim, passar os seus genes para as proximas geracoes, tendendo a extincao.

Portanto, no AG, este operador confere uma nota para cada indivıduo de acordo como problema. Sendo tal nota, posteriormente, utilizada no operador genetico de selecao. Ocalculo da funcao de aptidao e o unico elo entre o AG e o problema proposto, e a unica partenao generica do AG, e deve ser capaz de identificar todas as restricoes e objetivos, ou seja, afuncao de aptidao deve ser especıfica para cada problema.

Apos o calculo da fitness de cada indivıduo, o operador de selecao fica responsavel porimplementar o processo de selecao natural, no qual, os indivıduos mais capazes possuemmaior probabilidade de gerar um numero maior de descendentes, enquanto que os menoscapazes poderao ainda gerar descendentes, porem em uma escala menor. Logo, e necessarioque os indivıduos que possuam um valor de aptidao maior sejam beneficiados, sem que osindivıduos com aptidao menor sejam desconsiderados. Desta forma, a selecao nao deve serbaseada somente na escolha do ser mais capaz, pois existe a probabilidade de um mem-bro menos capaz possuir propriedades geneticas favoraveis a geracao de um indivıduo quepossua a melhor solucao para o problema analisado, considerando que tais propriedades fa-voraveis nao estejam presentes nos demais indivıduos da populacao.

Existem varios metodos de selecao, o mais usual e o metodo da roleta, que consiste emrealizar a selecao dos indivıduos de forma proporcional ao seu valor de aptidao, simulandouma representacao em forma de roleta. Deste modo, os membros que possuırem os maioresvalores de aptidao ocuparao fracoes maiores da roleta, enquanto que os seres com aptidoesinferiores ocuparao menores fracoes. Para que seja possıvel obter o numero de pares ne-cessarios para a execucao dos processos de cruzamento e mutacao a roleta e girada quantasvezes forem necessarias. A Figura 5.2 ilustra uma roleta implementada com cinco membros.

Na Figura 5.2, percebe-se que os indivıduos (N1, ...,N5) possuem uma representacaobinaria, que na teoria dos AGs denomina-se gene, portanto, cada indivıduo e constituıdoneste exemplo de 5 genes (bits). O indivıduo e denominado cromossomo. Nota-se tambemque cada membro possui uma fitness, e no caso, o elemento N2 e o mais adaptado dapopulacao, possuindo portanto o maior valor absoluto de aptidao. O valor relativo asso-ciado a cada ser da populacao mensura o tamanho devido do espaco na roleta ocupado poreste indivıduo. Assim, fica facil perceber que o indivıduo possuidor da maior fitness temmaior probabilidade de ser selecionado para a proxima geracao.

5. Algoritomos Geneticos e Software A4G 88

Figura 5.2: Exemplo de implementacao da roleta como metodo de selecao.

Este metodo de selecao tem problemas quando existem grandes diferencas entre os va-lores de adequacao. Por exemplo, se a melhor adequacao de um indivıduo e da ordem de90% da soma de todas as adequacoes, entao havera membros com chances muito reduzidasde serem selecionados, restringindo assim o processo de busca.

Nesta dissertacao utilizou-se o metodo da roleta, mas existem outros metodos, como ode selecao por torneio, em que escolhem-se, de forma aleatoria, membros da populacao paraparticiparem de uma competicao direta pelo direito de sobrevivencia, em que cada indivıduoutiliza sua aptidao como arma. A Figura 5.3 mostra um torneio, tomados os indivıduos tresa tres.

Figura 5.3: Exemplo de implementacao do torneio como metodo de selecao.

A analise da Figura 5.3 deixa claro que os indivıduos destacados a direita, no torneio, saoos vencedores, por possuırem o maior valor de fitness entre os concorrentes, logo sao escolhi-dos para a proxima geracao. Assim, no primeiro torneio N2 e o vencedor, no segundo torneioN1 e que vence e assim em diante. Este metodo de escolha tambem e bastante disseminadoe a grande particularidade e a determinacao da quantidade de indivıduos participantes decada torneio, este parametro influencia de forma decisiva no tempo de convergencia e naqualidade da resposta final do algoritmo.

Outra estrategia bastante adotada, e denominada selecao por classificacao, e consiste ematribuir a cada membro um valor de adequacao determinado pela sua classificacao. O pior

5. Algoritomos Geneticos e Software A4G 89

tera adequacao igual a 1, o segundo pior tera adequacao 2 e assim sucessivamente, de formaque o melhor tera adequacao igual a N (numero de indivıduos na populacao).

A Figura 5.4 ilustra como e feita a distribuicao dos elementos de uma populacao pelometodo da roleta, antes do processo de classificacao, e depois deste processo como os ele-mentos ficam posicionados para que seja feito o processo de selecao.

Figura 5.4: Distribuicao dos indivıduos antes e depois do metodo de classificacao.

Verificando a Figura 5.4, percebe-se que o metodo da roleta privilegia aqueles que pos-suem maior fitness, ja empregando o metodo de classificacao, verifica-se que os elementosmenos aptos apresentam mais chances de serem selecionados. Entretanto, este metodo poderesultar em menor convergencia, porque os melhores elementos nao se distinguem muito dosoutros.

Outro metodo de selecao e a dizimacao, esta tecnica realiza a ordenacao dos indivıduosde acordo com o seu valor de aptidao e, a partir disto, remove um numero fixo de mem-bros que possuem baixo valor de aptidao. Os sobreviventes sao entao escolhidos de formaaleatoria. Considera-se que esta tecnica possui uma grande desvantagem, pois permite quepropriedades geneticas excepcionais sejam perdidas ao excluir membros com baixo valor deaptidao, alem de proporcionar a convergencia prematura da populacao. Apesar de existiremoutros metodos de selecao, estes supracitados sao os mais utilizados.

Apos o processo de selecao, os indivıduos aptos a serem introduzidos na proxima geracaorealizam o crossover, com o objetivo de originar novos indivıduos para formar a populacaoda geracao seguinte. Assim, a ideia principal do cruzamento e propagar as caracterısticas po-sitivas dos indivıduos mais aptos da populacao por meio da troca de segmentos de informacoesentre os mesmos, originando novos indivıduos.

A melhor forma de visualizar o efeito produzido por este operador genetico, e realizar

5. Algoritomos Geneticos e Software A4G 90

a analise no campo da biologia, portanto, considerando os indivıduos como cromossomos,conforme Figura 5.5.

Figura 5.5: Crossover entre dois cromossomos (indivıduos).

A Figura 5.5 ilustra o cruzamento em pontos duplos, pode-se ter tambem o crossover emponto unico e em pontos aleatorios, conforme o proprio nome ja evidencia, o cruzamento empontos duplos e feito considerando-se uma recombinacao genetica em dois pontos distintosdo cromossomo, no caso do cruzamento em ponto unico, somente um seguimento geneticoe trocado, e no caso do cruzamento em pontos aleatorios assume-se uma recombinacao emdiversos pontos ao longo da estrutura.

Este processo e extremamente importante para aumentar a variabilidade genetica nasgeracoes posteriores. Fundamentalmente, esta caracterıstica, no processo de otimizacao,fica responsavel por refinar as melhores solucoes encontradas. Por exemplo, no processode convergencia da solucao, pode existir em uma vizinhanca proxima do ponto ate entaoconsiderado como otimo, uma solucao melhor do que a considerada ate este momento, ocrossover se incube de tentar exercer esse refino em busca do ponto que realmente produz amelhor solucao.

Outro operador genetico de suma importancia e o operador de mutacao, que e executadologo apos o processo de cruzamento e tem por objetivo realizar modificacoes em determi-nadas propriedades geneticas de uma populacao, de forma aleatoria. Tal operacao mostra-seimportante uma vez que possibilita a populacao atual obter propriedades geneticas que naoexistiam ou eram encontradas em baixa porcentagem. Deste modo, a execucao do operadorde mutacao mostra-se indispensavel, visto que este permite a introducao e manutencao da di-versidade genetica da populacao. Logo, com a execucao do operador de mutacao e possıvelgarantir que o espaco de busca possivelmente nao sera igual a zero.

A mutacao, assim como na natureza, deve acometer uma pequena parcela da populacao,pois caso a porcentagem seja elevada, os indivıduos gerados pouco se assemelharao aos seuspais; caso contrario, a diversidade da populacao estara comprometida (Rosa, 2009). A Figura5.6 ilustra o processo biologico de mutacao.

5. Algoritomos Geneticos e Software A4G 91

Figura 5.6: Processo biologico de mutacao em um cromossomo.

Apos o processo de mutacao realiza-se o procedimento de atualizacao da populacao,assim, uma nova populacao formada pelo processo de cruzamento dos indivıduos selecio-nados e substituıda pela populacao anterior. As formas mais comuns de se realizarem taisatualizacoes se baseiam em duas estrategias denominadas soma e vırgula. Na atualizacao porsoma, indivıduos da populacao anterior convivem com a populacao formada por seus filhos.Essa estrategia tambem pode ser chamada de elitismo e geralmente uma percentagem muitopequena e selecionada para a proxima geracao, pois corre-se o risco de uma convergenciaprematura do AG. Na abordagem denominada vırgula, a populacao anterior nao convive coma proxima populacao, podendo haver perdas de boas solucoes ja encontradas.

Nesta dissertacao utiliza-se a estrategia denominada vırgula, assim, a cada geracao umapopulacao nova e criada, e esta nao convive com seus descendentes. Esta e a forma maisdisseminada de utilizacao do processo de atualizacao das populacoes. Ao fim deste procedi-mento uma ultima etapa do AG e executada com o objetivo de finalizar o processo de busca,para tanto, utiliza-se o operador de finalizacao do algoritmo.

O operador de finalizacao e o responsavel por determinar se a execucao do AlgoritmoGenetico (evolucao da populacao) sera concluıda ou nao. Tal acao e realizada a partir daexecucao de testes baseados em uma condicao de parada pre-estabelecida. Tal condicao deparada pode variar desde a quantidade de geracoes desenvolvidas ate o grau de proximidadedos valores de aptidao de cada elemento, de determinada populacao (Lucas, 2000).

O fim da execucao do AG implica no retorno da melhor solucao do problema, ou domelhor indivıduo da populacao, este ser, o mais adaptado e apto entre todos os outros exem-plares. Assim, o processo de busca finaliza-se e o Algoritmo Genetico e encerrado.

5. Algoritomos Geneticos e Software A4G 92

5.2 Software A4G

Esta secao e destinada a descricao do programa, que implementa a teoria dos AGs,concebido nesta dissertacao. Este software, vale ressaltar, foi desenvolvido no ambienteMATLAB R©. Utilizou-se o toolbox grafico GUIDE para elaboracao do layout deste pro-grama. Em um primeiro momento, sera descrita toda a tela inicial do programa, logo apos,sera feita uma explanacao acerca das funcoes internas implementadas para execucao do AG.

5.2.1 Descricao do Layout

Explicar de forma detalhada o layout do programa e de suma importancia para que seconsiga entender todas as funcionalidades implementadas. A Figura 5.7 exibe a tela inicialdo software desenvolvido.

Figura 5.7: Tela inicial do software A4G.

A tela inicial do programa pode ser dividida em algumas regioes bem definidas, con-forme Figura 5.8, assim, estas regioes sao identificadas por numeros que variam de 1 a 17,em que na regiao 1 encontra-se o tıtulo, uma breve descricao das funcionalidades do soft-ware e contem tambem agradecimentos as pessoas que contribuıram, de alguma forma, paraelaboracao do atual programa. O nome A4G foi escolhido por tratar-se da principal funcio-nalidade do software de realizar a sintonia de 4 ganhos lineares.

5. Algoritomos Geneticos e Software A4G 93

Figura 5.8: Identificacao de regioes na tela inicial do Software A4G.

No espaco 2, encontra-se uma regiao responsavel por receber os intervalos desejadosde busca dos ganhos lineares dos controladores PID e proporcional. Em 3, encontra-se umcampo denominado esforco de controle, os valores aceitaveis atribuıdos a esta variavel de-vem estar compreendidos no intervalo entre 0 e 1. Este parametro e responsavel por atribuirdeterminada importancia ao sinal de controle ante a resposta final obtida, esta variavel seramais bem explicada na descricao interna de funcionamento do programa mais a frente nestadissertacao. Existe tambem um botao, na regiao 4, responsavel por inicializar os camposcom dados iniciais padroes, denominado “Carregar Parametros Iniciais”.

Na regiao 5, existe um espaco dedicado a receber os valores dos parametros do AG, estesparametros sao: taxa de crossover, taxa de reproducao, taxa de exclusao, taxa de mutacao,numero maximo de geracoes e tamanho da populacao. A taxa de exclusao consiste em umoperador genetico responsavel por excluir da populacao os elementos menos aptos.

Na regiao 6, encontra-se um espaco onde os parametros da resposta desejada podem serescolhidos. Esta resposta desejada caracteriza-se pela funcao objetivo do programa, assim, oindivıduo que produzir uma resposta mais proxima da resposta desejada e o escolhido comootimo, ou o melhor possıvel. Para fazer a caracterizacao da resposta desejada, o software per-mite ao usuario escolher, como fator temporal da resposta, entre o tempo de subida e o tempode pico e o valor absoluto deste fator, tambem e possıvel escolher a taxa de sobrelevacao,expressa em porcentagem.

Existe um botao denominado “Salvar Parametros”, em 7, que permite ao usuario salvar

5. Algoritomos Geneticos e Software A4G 94

todos os parametros escolhidos em um determinado teste para serem usados posteriormente.

Na regiao 8, encontram-se as representacoes do sistema em malha fechada com os doiscontroladores estudados nesta dissertacao, Feedback e Feedforward. No espaco de numero9, existe um seletor, onde e possıvel escolher entre estas duas estruturas de controle.

Na regiao 10, pode-se estabelecer a amplitude do sinal de entrada do sistema, que nestetrabalho ficou restrito ao sinal degrau, bem como o valor inicial deste sinal. Em 11, existemos campos para definicao dos valores de saturacao das variaveis θ1 e θ2, presentes em ambasestruturas de controle, e em 12, as condicoes iniciais dos angulos das articulacoes do veıculodevem ser escolhidas, ou seja, definindo assim o posicionamento inicial do veıculo.

Na regiao 13 e possıvel selecionar a funcao de fitness dentre as seguintes opcoes: degrau,funcao de segunda ordem e degrau mais esforco de controle. A primeira opcao define aaptidao de um indivıduo calculando o erro entre o degrau, selecionado pelo usuario anterior-mente, e a resposta do sistema atribuıda a este mesmo indivıduo. Ja a segunda opcao, consi-dera o erro a funcao de segunda ordem, tambem selecionada pelo usuario, para o calculo dafitness dos membros da populacao, e finalmente, a terceira opcao e similar a primeira, excetopela realizacao de uma ponderacao com o esforco de controle. Os botoes de inicializacao efinalizacao do AG tambem estao nesta area.

O programa exibe, graficamente, na regiao 14, o comportamento da resposta produzidapelo melhor indivıduo a cada geracao da populacao. Este comportamento somente e atua-lizado, se um membro de uma geracao posterior possuir uma funcao de aptidao melhor, doque o melhor indivıduo da geracao anterior. Logo, o usuario, pode visualmente, perceber aevolucao na busca pela melhor resposta do sistema. Vale ressaltar, que a resposta conside-rada, consiste no comportamento do angulo do ultimo trailer (θ2).

Exibe-se tambem na interface, o comportamento da fitness do melhor indivıduo de cadageracao e os sinais de controle de θ1 e θ2, todos estes, atualizados segundo o mesmo criteriodescrito acima para o caso da resposta do sistema. Estes graficos podem ser visualizados naregiao 15.

Ao atingir o numero maximo de geracoes, escolhido pelo usuario, ou atraves de suainterferencia, finalizando a execucao do programa, este retorna a sobrelevacao, o tempo desubida, tempo de pico, erro medio estacionario e tempo de delay da melhor resposta obtidapelo software. E finalmente, o melhor indivıduo da populacao, capaz de gerar a respostaconsiderada otima, e exibido atraves dos ganhos Kp, Kd e Ki do PID, e Kp1 do controladorproporcional. Estas informacoes estao na regiao 16.

O espaco 17 e destinado a identificar o programa, possuindo informacoes do Laboratoriode Automacao Inteligente, pertencente ao Centro Tecnologico da UFES, onde este projetofoi desenvolvido.

5. Algoritomos Geneticos e Software A4G 95

5.2.2 Descricao do Funcionamento Interno

Esta parte do trabalho e destinada a descricao de como foram implementados todos osoperadores geneticos do algoritmo, esta analise e necessaria para o melhor entendimento dosoftware desenvolvido.

Nesta aplicacao, os indivıduos sao definidos como os ganhos dos controladores lineares,assim definiu-se os membros da populacao da seguinte maneira, conforme Equacoes 5.1 -5.5:

Kp = minkp +(maxkp−minkp)× rand(1); (5.1)

Ki = minki +(maxki−minki)× rand(1); (5.2)

Kd = minkd +(maxkd−minkd)× rand(1); (5.3)

Kp1 = minkp1 +(maxkp1−minkp1)× rand(1); (5.4)

individual = [Kp Ki Kd Kp1]; (5.5)

Nao e difıcil perceber, que cada indivıduo e composto pelo conjunto dos quatro ganhos,tres referentes ao controlador PID, mais o ganho associado ao controlador proporcional. Demaneira aleatoria os indivıduos sao criados, sempre respeitando a faixa de valores definidapelo usuario do programa, assim os parametros max e min correspondem, respectivamente,aos valores maximos e mınimos associados a cada ganho que se deseja sintonizar.

De acordo com o numero de indivıduos requisitados pelo usuario, o programa cria umapopulacao inicial, esta sera avaliada, com o objetivo de encontrar o membro com maior fit-ness, assim, executa-se o processo de simulacao de cada elemento no modelo do RMMAdesenvolvido no Simulink. Modelo este, descrito no Capıtulo 4 desta dissertacao. Vale res-saltar que o modelo varia de acordo com o controlador testado e com o tipo de manobra quese deseja realizar.

A aptidao do indivıduo e calculada considerando a funcao de fitness escolhida pelousuario, portanto, supondo que o sinal degrau seja escolhido, o valor da aptidao e obtidoda seguinte maneira (Equacoes 5.6 e 5.7):

area = sum((saida− entrada)2); (5.6)

f itness = 1/area; (5.7)

Analisando o calculo da fitness, nota-se que e feito uma somatoria (funcao sum) dos errosquadraticos existentes entre a saıda e a entrada do sistema, no qual, a saıda e a resposta do

5. Algoritomos Geneticos e Software A4G 96

sistema referente a simulacao de cada indivıduo, e a entrada e o sinal degrau selecionadopelo usuario do software; o valor nominal da aptidao e dado pelo inverso desta somatoria.Logo, quanto mais proxima a saıda for da entrada, menor o erro, consequentemente maior afitness do elemento, sendo este o indivıduo mais apto perante a populacao.

Se a funcao de segunda ordem for a opcao escolhida para o calculo da aptidao, entaodeve-se, atraves da teoria de Controle Automatico, gerar a resposta desejada de acordo comos parametros escolhidos pelo usuario. Assim, o programa se incube de gerar a respostapretendida e encontrar o erro a esta curva apresentado por cada indivıduo. Logo, o membroque possuir resposta mais proxima a resposta de segunda ordem desejada pelo usuario e omais apto da populacao.

A utilizacao da funcao de segunda ordem se da somente com o objetivo de avaliar afitness dos indivıduos, nao pretende-se em momento algum representar o comportamentodo RMMA por um sistema de segunda ordem. O robo e representado pelo seu modelocinematico descrito no Capıtulo 3.

Sabe-se que para um entrada degrau, a resposta de um sistema de segunda ordem e dadapela Equacao 5.8.

Y (s) =wn

2

s(s2 +2ξwns+wn2)(5.8)

A Equacao 5.8 representa o sistema no domınio da frequencia, para encontrar a saıdano domınio do tempo, deve-se calcular a transformada de Laplace inversa desta equacao,obtendo assim a seguinte equacao:

y(t) = 1− e−ξwnt√1−ξ2

sen(wn

√1−ξ2t + cos−1

ξ) t ≥ 0 (5.9)

Nota-se, que para o calculo da resposta desejada no domınio do tempo, utilizando aEquacao 5.9, e necessario conhecer dois parametros: ξ, coeficiente de amortecimento, e wn,frequencia natural de oscilacao do sistema. Estes valores sao obtidos atraves dos seguintescalculos:

Mp = e−( ξ√

1−ξ2 )π (5.10)

wn =π

tp√

1−ξ2(5.11)

5. Algoritomos Geneticos e Software A4G 97

wn =2,16ξ+0,6

tr(5.12)

Utilizando a Equacao 5.10 e possıvel calcular ξ, para isto, basta conhecer o valor dasobrelevacao (Mp), definido pelo usuario do programa. De posse do valor de ξ e facil calcu-lar o valor de wn, este pode ser obtido de duas formas diferentes, haja vista, que no programae possıvel parametrizar a saıda do sistema pelo tempo de pico ou pelo tempo de subida, por-tanto as Equacoes 5.11 e 5.12, respectivamente, sao responsaveis por realizar estes calculos,de acordo com a opcao definida pelo usuario.

O programa implementa todos estes calculos supracitados e a aptidao e obtida pelo in-verso da somatoria quadratica do erro entre a saıda desejada e a saıda correspondente a cadaindivıduo da populacao. Este calculo e o mesmo realizado no caso da funcao de fitness pelodegrau.

A ultima opcao de escolha da funcao de aptidao e o erro ao degrau com ponderacoes doesforco de controle referente as articulacoes θ1 e θ2. Este caso e similar ao caso do degrau,mas utiliza-se a metodologia exibida nas Equacoes 5.13 e 5.14 para o calculo da fitness:

area = sum((entrada− saida)2)+(0,5)× p× sum(u2)+(0,5)× p× sum(v2) (5.13)

f itness = 1/area; (5.14)

Na determinacao da area que representa o erro de adequacao a resposta desejada, utiliza-se a variavel p, com valor definido pelo usuario, representando o peso dado ao esforco decontrole no calculo da fitness, portanto, quanto maior o valor de p maior sera a relevanciadada aos sinais de controle u e v dos angulos dos trailers.

Esta abordagem se faz necessaria diante da condicao de variacao brusca que o sinal de-grau provoca no sistema, assim se os indivıduos da populacao tentam sempre copiar estesinal, isto geralmente leva o algoritmo a encontrar ganhos muito altos para estabelecimentodo controle, implicando em sinais muitas vezes impraticaveis e facilmente saturaveis emqualquer aplicacao pratica. Portanto, utilizando esta consideracao do esforco de controle,mantem-se um compromisso entre a qualidade da resposta, os ganhos obtidos e o nıvel doesforco requerido ao sistema.

Estabelecido a aptidao de cada indivıduo, o sistema ordena de forma decrescente os mem-bros segundo sua fitness. Se for a primeira geracao, o sistema ja exibe o comportamento domelhor indivıduo na tela do programa, caso contrario, este grafico so sera gerado se houverum indivıduo melhor do que os melhores indivıduos de geracoes passadas.

5. Algoritomos Geneticos e Software A4G 98

Depois de executada uma geracao, para criar uma nova populacao, o programa eliminao indivıduo de elite, possuidor da maior fitness e considera a taxa de reproducao para de-terminar o numero de indivıduos mais aptos que devem sofrer alteracoes pelos operadoresgeneticos na proxima geracao, e a taxa de exclusao, para eliminar os membros menos aptos,todas estas taxas sao fixadas pelo usuario.

Os elementos aptos a serem copiados para a proxima geracao participam do metodo deselecao, calcula-se para isso, a participacao relativa de cada indivıduo na roleta, de acordocom sua fitness. A roleta e girada um numero de vezes igual a quantidade de membrosmerecedores de participar da nova geracao, e os indivıduos selecionados pela roleta, saoentao, definidos como membros efetivos da nova populacao.

Para completar a nova populacao de acordo com o numero de indivıduos selecionado pelousuario, criam-se elementos aos pares, machos e femeas, de forma aleatoria. Estes novosmembros passam pelos processos de crossover e mutacao. O cruzamento e implementadoda seguinte forma:

e = 2+mod(round(1+ rand()),2); (5.15)

newmale = [male(1 : (e−1)) f emale(e : end)]; (5.16)

new f emale = [ f emale(1 : (e−1)) male(e : end)]; (5.17)

Pode-se concluir, analisando a Equacao 5.15, que a variavel e so pode assumir dois valo-res diferentes, 3 ou 2, pois o numero randomico gerado pela funcao rand() esta no intervaloentre 0 e 1, assim a funcao round gerara o valor aproximado da soma 1+ rand(), que estaraentre 1 e 2, logo, o resto da divisao (funcao mod) destes numeros por dois sera 1, se o valorarredondado de 1+ rand() for 1; e sera zero, caso esta sentenca seja igual a 2. Portanto, ovalor de e so pode ser 2 ou 3.

De posse deste numero, o cruzamento pode ser realizado, como exemplo, supondo e = 3,verifica-se atraves da Equacoes 5.16 e 5.17, que o novo indivıduo macho sera compostopelos dois primeiros termos do pai e pelos ultimos dois termos da mae. De modo analogo, onovo indivıduo femea sera composto pelos dois primeiros termos da mae e pelos dois ultimostermos do pai. Pode-se ilustrar esta situacao da seguinte forma:

Elemento Pai = [Kppai Ki

pai Kdpai Kp1

pai] (5.18)

Elemento Mae = [KpmaeKi

maeKdmaeKp1

mae] (5.19)

Novo Elemento Macho (Filho) = [Kppai Ki

pai Kdmae Kp1

mae] (5.20)

Novo Elemento Femea (Filho) = [Kpmae Ki

mae Kdpai Kp1

pai] (5.21)

5. Algoritomos Geneticos e Software A4G 99

Nota-se nas Equacoes 5.18 - 5.21, que neste caso, o cruzamento e capaz de mudar doisparametros dos indivıduos filhos, com relacao aos membros pais, ja se e = 2, verifica-sefacilmente, que os tres ultimos termos sao mudados nos filhos. Assim, percebe-se que osistema consegue mudar dois ou tres termos nos membros filhos da populacao.

Depois de realizar o cruzamento, efetua-se a operacao de mutacao nos novos elementosmachos e femeas da seguinte forma:

taxa mutacao = rand(1);i f (taxa mutacao≤ txmut)

newmale(1) = minkp +(maxkp−minkp)× rand();end

taxa mutacao = rand(1);i f (taxa mutacao≤ txmut)

newmale(2) = minki +(maxki−minki)× rand();end

taxa mutacao = rand(1);i f (taxa mutacao≤ txmut)

newmale(3) = minkd +(maxkd−minkd)× rand();end

taxa mutacao = rand(1);i f (taxa mutacao≤ txmut)

newmale(4) = minkp1 +(maxkp1−minkp1)× rand();end

Este codigo exemplifica somente a mutacao no elemento macho, a mesma operacao e re-alizada no elemento femea. Pode-se perceber que a mutacao so ocorre se a variavel aleatoriataxa mutacao for menor ou igual ao valor escolhido pelo usuario (txmut), e tambem, que oindivıduo pode ter de 0 a 4 parametros alterados pela operacao. Portanto, escolhendo-se umataxa de mutacao alta e grande a probabilidade dos elementos sofrerem mudancas em todas,ou quase todas as geracoes, isto pode tornar o processo de busca divergente.

Assim, uma nova populacao e criada, com a adicao destes elementos que passaram pelasoperacoes geneticas aos elementos selecionados pela roleta, e o processo volta ao inıciopassando para a proxima geracao do algoritmo, onde os novos elementos serao avaliados e abusca termina com o fim das geracoes ou pela interferencia do usuario.

5. Algoritomos Geneticos e Software A4G 100

Quando algum metodo de parada e acionado o programa calcula os parametros de desem-penho da melhor resposta encontrada, conforme descrito na Secao 3.5 do Capıtulo 3 destadissertacao e os exibe na tela para verificacao do usuario.

A Figura 5.9 ilustra o software apos a execucao de um teste, na imagem e possıvel perce-ber a melhor resposta, destacada em vermelho, no grafico da resposta do melhor indivıduo.Neste mesmo grafico, nota-se, em verde, a saıda desejada. Os parametros de desempenho damelhor resposta sao exibidos e os ganhos dos controladores que proporcionam tal respostasao explicitados. E importante tambem atentar a amplitude do esforco de controle associadoaos angulos θ1 e θ2 do veıculo, bem como a evolucao da fitness dos melhores indivıduos.

5.3 Conclusao

Neste capıtulo foi possıvel descrever as principais funcionalidades do programa desen-volvido. Este software permite ao usuario efetuar diversos ensaios em simulacao do com-portamento do veıculo de testes, facilitando assim o processo de sintonia dos ganhos de duasestruturas diferentes de controle. O programa foi desenvolvido de forma mais geral possıvel,sendo portanto facilmente adaptavel ao caso de se utilizar uma nova planta de controle quenao seja o VMA em estudo.

Assim, para testes em uma nova planta, basta alterar o modelo do processo e o formatodos indivıduos da populacao para que o software execute todo o processo de busca desejado.Portanto, apesar deste trabalho nao ter efetuado o ajuste de todos os ganhos permitido peloprograma, e desejavel que a estrutura generalista do software seja mantida para possıveisaplicacoes futuras.

Sistemar o processo de otimizacao utilizando a teoria de AG, se mostrou uma boa es-trategia, ja que a forma como foi feita a implementacao, apesar da complexidade, permiteuma vasta aplicabilidade desta ferramenta, nao so na sintonia dos ganhos dos controladores,mas tambem no intuito de se entender melhor o comportamento do sistema.

5. Algoritomos Geneticos e Software A4G 101

Figu

ra5.

9:E

xem

plo

defu

ncio

nam

ento

doso

ftwar

eA

4G.