• Nenhum resultado encontrado

Controle adaptativo robusto para um modelo desacoplado de um robô móvel

N/A
N/A
Protected

Academic year: 2017

Share "Controle adaptativo robusto para um modelo desacoplado de um robô móvel"

Copied!
135
0
0

Texto

(1)

UNIVERSIDADEFEDERALDO RIO GRANDE DO NORTE

UNIVERSIDADEFEDERAL DORIOGRANDE DONORTE

CENTRO DETECNOLOGIA

PROGRAMA DEPÓS-GRADUAÇÃO EMENGENHARIAELÉTRICA E DECOMPUTAÇÃO

Controle Adaptativo Robusto para um Modelo

Desacoplado de um Robô Móvel

Samaherni Morais Dias

Orientador: Prof. DSc. Aldayr Dantas de Araújo.

Co-orientador: Prof. DSc. Pablo Javier Alsina.

Tese de Doutoradoapresentada ao Programa de Pós-Graduação em Engenharia Elétrica e de Computação da UFRN (área de concentração: Automação e Sistemas) como parte dos requi-sitos para obtenção do título de Doutor em Ci-ências.

(2)

Dias, Samaherni Morais.

Controle adaptativo robusto para um modelo desacoplado de um robô móvel / Samaherni Morais Dias - Natal, RN, 2010.

121 f.

Orientador: Aldayr Dantas de Araújo. Co-orientador: Pablo Javier Alsina.

Tese (Doutorado) - Universidade Federal do Rio Grande do Norte. Centro de Tecnologia. Programa de Pós-Graduação em Engenharia Elétrica e de Compu-tação.

1. Estrutura variável - Tese. 2. Controle adaptativo - Tese. 3. Robô móvel - Tese. I. Araújo, Aldayr Dantas de. II. Alsina, Pablo Javier. III. Universidade Federal do Rio Grande do Norte. IV. Título.

(3)
(4)

Esta tese apresenta o desenvolvimento de uma nova estrutura de controlador adapta-tivo robusto aplicado a sistemas robóticos móveis com rodas (robô móvel de superfície) e restrições não-holonômicas de movimento. Este controlador atua tanto na dinâmica como na cinemática do robô, e pode ser dividido em duas partes distintas. A primeira parte controla a dinâmica, através da utilização de controladores adaptativos por modelo de referência e estrutura variável. A segunda parte controla a cinemática do robô através de um controlador de posição, cujo objetivo é fazer com que o robô seja capaz de atingir um ponto qualquer no plano cartesiano, sendo que este controlador cinemático é baseado apenas em informações da configuração do robô.

O trabalho aplica um método de desacoplamento para transformar o modelo linear do robô móvel, que é um sistema com múltiplas entradas e múltiplas saídas, em dois sistemas desacoplados com apenas uma entrada e uma saída cada um, para reduzir a complexidade do projeto do controlador. Em seguida, aplica-se um controlador adaptativo por modelo de referência e estrutura variável a cada um dos sistemas resultantes. Um controlador será responsável pelo posicionamento e o outro pela orientação do robô, sendo que estes controladores utilizam como referências sinais provenientes do controlador cinemático de posição.

Para comprovar o funcionamento da estrutura proposta, obteve-se resultados simula-dos e experimentais para o robô móvel com acionamento diferencial de um kit de futebol de robôs. O simulador possui as principais características do sistema físico real, den-tre as quais podem-se destacar os ruídos de entradas e as não-linearidades como zona morta e saturação. Os resultados experimentais foram obtidos através de um programa desenvolvido em C++ e aplicado a um kit de futebol de robôs da empresaMicrorobotno Laboratório de Acionamento, Controle e Instrumentação da Universidade Federal do Rio Grande do Norte (LACI/UFRN). Os resultados simulados e experimentais são apresenta-dos e discutiapresenta-dos ao final da tese.

(5)

Abstract

This thesis presents a new structure of robust adaptive controller applied to mobile robots (surface mobile robot) with nonholonomic constraints. It acts in the dynamics and kinematics of the robot, and it is split in two distinct parts. The first part controls the robot dynamics, using variable structure model reference adaptive controllers. The second part controls the robot kinematics, using a position controller, whose objective is to make the robot to reach any point in the cartesian plan. The kinematic controller is based only on information about the robot configuration.

A decoupling method is adopted to transform the linear model of the mobile robot, a multiple-input multiple-output system, into two decoupled single-input single-output systems, thus reducing the complexity of designing the controller for the mobile robot. After that, a variable structure model reference adaptive controller is applied to each one of the resulting systems. One of such controllers will be responsible for the robot position and the other for the leading angle, using reference signals generated by the position controller.

To validate the proposed structure, some simulated and experimental results using differential drive mobile robots of a robot soccer kit are presented. The simulator uses the main characteristics of real physical system as noise and non-linearities such as dead-zone and saturation. The experimental results were obtained through an C++ program applied to the robot soccer kit of Microrobot team at the LACI/UFRN. The simulated and experimental results are presented and discussed at the end of the text.

(6)

1.1 Sistema inverso à esquerda . . . 2

1.2 Sistema inverso à direita . . . 2

1.3 Plataforma de desenvolvimento . . . 4

1.4 Estacionamento de um robô móvel: (a) sem restrições; (b) com restrições não-holonômicas . . . 5

1.5 Diagrama de blocos do robô móvel com duas rodas tracionadas . . . 6

1.6 Trajetória realizada pelo robô vista pela câmera . . . 6

2.1 Sistema inverso à direita . . . 10

2.2 Sistema físico . . . 15

2.3 Sistemas inverso e físico . . . 15

3.1 Exemplo do comportamento da superfície de deslizamento . . . 20

3.2 Filtro de valor médio (τ0) . . . 21

3.3 Deslizamento real . . . 22

3.4 Diagrama de blocos de um controlador MRAC . . . 23

3.5 Diagrama de blocos de um controlador VS-MRAC compacto (n∗=2) . . . 26

3.6 Planta com distúrbio de entrada e dinâmica não modelada . . . 29

4.1 Cinemática do robô . . . 32

4.2 Diagrama esquemático de um motor c.c. controlado pela armadura . . . . 33

5.1 Diagrama de blocos simplificado da estrutura do controlador proposto . . 39

5.2 Diagrama de blocos do robô móvel com duas rodas tracionadas . . . 40

5.3 Diagrama de blocos do robô móvel com abordagem linear . . . 40

5.4 Introdução do sistema inverso do robô móvel com abordagem linear . . . 40

5.5 Robô móvel desacoplado . . . 41

5.6 Robô desacoplado com incertezas paramétricas e dinâmica não modelada 42 5.7 Sistema desacoplado com distúrbios de entrada . . . 43

5.8 Controladores VS-MRAC aplicados ao sistema desacoplado . . . 43

5.9 Diagramas de blocos dos controladores VS-MRAC . . . 44

5.10 Plantas desacopladas devido ao uso dos controladores VS-MRAC . . . . 44

5.11 Robô móvel no espaço cartesiano . . . 45

5.12 Distúrbiodsno robô móvel . . . 46

5.13 Diagrama de blocos detalhado do controlador proposto . . . 46

6.1 Diagrama de blocos do funcionamento do kit de futebol de robôs . . . 51 6.2 Sistema inverso à direita para o robô móvel utilizando parâmetros nominais 53

(7)

6.3 Considerações sobre a simulação . . . 54

6.4 Robô simulado . . . 55

6.5 Diagrama de blocos do robô móvel com duas rodas tracionadas . . . 55

6.6 Simulação do robô móvel em malha aberta . . . 56

6.7 Diagrama de blocos do desacoplamento do robô móvel . . . 56

6.8 Simulação do desacoplamento do robô móvel (translação) . . . 57

6.9 Simulação do desacoplamento do robô móvel (rotação) . . . 57

6.10 Diagrama de blocos detalhado do controlador proposto . . . 58

6.11 Controlador de posição do robô móvel (xd=1,yd=0) . . . 58

6.12 Controlador de posição do robô móvel (xd=1,yd=1) . . . 59

6.13 Controlador de posição do robô móvel (xd=0,yd=1) . . . 60

6.14 Controlador de posição do robô móvel (xd=−1,yd=1) . . . 60

6.15 Gráfico da estabilidade (ωr×eθ) entre 0s e 1s . . . 61

6.16 Gráfico da estabilidade (ωr×eθ) entre 1s e 4s . . . 61

6.17 Gráfico da estabilidade (ωr×eθ) entre 5s e 8s . . . 62

6.18 Resultado experimental do robô móvel em malha aberta . . . 63

6.19 Resultado experimental do desacoplamento do robô móvel (translação) . . 63

6.20 Resultado experimental do desacoplamento do robô móvel (rotação) . . . 64

6.21 Controlador de posição do robô móvel (xd=1,10,yd=0,33) . . . 65

6.22 Controlador de posição do robô móvel (xd=1,12,yd=0,71) . . . 66

6.23 Controlador de posição do robô móvel (xd=0,73,yd=1,10) . . . 66

6.24 Controlador de posição do robô móvel (xd=0,32,yd=0,70) . . . 67

A.1 Estrutura do controlador . . . 81

B.1 Campo vetorial no modo deslizante (solução de Filippov) . . . 84

H.1 Desacoplamento sem incertezas paramétricas com zona morta (translação) 100 H.2 Sinais de tensão aplicados aos motores c.c. . . 100

H.3 Desacoplamento sem incertezas paramétricas e zona morta (translação) . 101 H.4 Sinais de tensão aplicados aos motores c.c. . . 101

H.5 Trajetória realizada pelo robô vista pela câmera . . . 102

H.6 Simulação para o ponto desejado em (xd=1,yd=0) . . . 102

H.7 Trajetória realizada pelo robô vista pela câmera . . . 103

H.8 Simulação para o ponto desejado em (xd=1,yd=0) . . . 103

H.9 Trajetória realizada pelo robô vista pela câmera . . . 104

H.10 Simulação para o ponto desejado em (xd=1,yd=1) . . . 104

H.11 Trajetória realizada pelo robô vista pela câmera . . . 105

H.12 Simulação para o ponto desejado em (xd=0,yd=1) . . . 105

H.13 Trajetória realizada pelo robô vista pela câmera . . . 106

H.14 Simulação para o ponto desejado em (xd=1,yd=1) . . . 106

H.15 Trajetória realizada pelo robô vista pela câmera . . . 107

H.16 Simulação para o ponto desejado em (xd=−1,yd=0) . . . 107

H.17 Trajetória realizada pelo robô vista pela câmera . . . 108

(8)

H.21 Trajetória realizada pelo robô vista pela câmera . . . 110

H.22 Simulação para o ponto desejado em (xd=1,yd=−1) . . . 110

H.23 Trajetória realizada pelo robô vista pela câmera . . . 111

H.24 Simulação para o ponto desejado em (xd=1,yd=0) . . . 111

H.25 Trajetória realizada pelo robô vista pela câmera . . . 112

H.26 Simulação para o ponto desejado em (xd=0,yd=1) . . . 112

H.27 Trajetória realizada pelo robô vista pela câmera . . . 113

H.28 Simulação para o ponto desejado em (xd=1,yd=0) . . . 113

I.1 Campo do kit de futebol de robôs . . . 115

I.2 Identificação dos erros de posição e orientação do robô móvel . . . 116

J.1 Identificação dos modelos para posição e para orientação (caso 1) . . . . 117

J.2 Identificação dos modelos para posição e para orientação (caso 2) . . . . 118

J.3 Identificação dos modelos para posição e para orientação (caso 3) . . . . 118

(9)

Lista de Tabelas

3.1 Algoritmo do controlador MRAC convencional . . . 25 3.2 Algoritmo do controlador VS-MRAC compacto . . . 28 J.1 Desvio padrão dos parâmetros do modelo identificado . . . 119

(10)

J momento de inércia do robô Jd,e momentos de inércia dos rotores Kbd,be constantes de força-contra-eletromotriz Kd,e constantes de torque dos motores

Rd,e resistências dos enrolamentos dos motores S deslocamento linear

ST espaço linear a ser percorrido Sre f espaço linear de referência

∆� distância entre o centro do robô e o ponto desejado

βang coeficiente de atrito entre o solo e o robô durante movimentos angulares

βd,e coeficientes de atrito dos motores

βlin coeficiente de atrito entre o robô e o solo durante movimentos lineares

ωd,e velocidades angulares das rodas direita e esquerda

ωr velocidade angular do robô

τd,e torques nas rodas direita e esquerda

τr torque resultante no robô

θ∗ parâmetros em condição deMatching

θnom parâmetros nominais do controlador adaptativo

θp ângulo do robô

θre f ângulo da reta (∆�) que conecta o centro do robô ao ponto desejado d distância entre as rodas do robô

eS erro de posição

(11)

eθ erro de orientação

ed,e tensões de armadura dos motores fr força resultante no robô

id,e correntes nas armaduras dos motores

m massa do robô

nin número de entradas do sistema nout número de saídas do sistema rd,e raios das rodas direita e esquerda u sinal de controle

vr velocidade linear do robô

xd posição desejada do robô no eixo x xp posição do robô no eixo x

yd posição desejada do robô no eixo y yp posição do robô no eixo y

ω vetor regressor

θ vetor de parâmetros adaptativos ERP Estritamente Real Positivo

LACI Laboratório de Acionamento, Controle e Instrumentação MIMO Sistemas com múltiplas entradas e múltiplas saídas MRAC Controlador Adaptativo por Modelo de Referência PCI Interconector de Componentes Periféricos

SISO Sistemas com uma entrada e uma saída UFRN Universidade Federal do Rio Grande do Norte

(12)

Sumário i

Lista de Figuras v

Lista de Tabelas ix

Lista de Símbolos e Abreviaturas xi

1 Introdução 1

1.1 Sistema inverso . . . 1

1.2 Controladores adaptativos robustos . . . 2

1.3 Definição do problema . . . 4

1.3.1 Aspectos da não-holonomia . . . 5

1.3.2 Considerações sobre as incertezas do sistema . . . 5

1.3.3 Controle do robô móvel . . . 6

1.4 Organização da tese . . . 7

2 Sistema inverso 9 2.1 Apresentação do sistema . . . 9

2.1.1 Algoritmo de inversão . . . 10

2.1.2 Reprodutibilidade funcional assintótica . . . 12

2.2 Inversão de um sistema linear . . . 13

2.3 Modificação do sistema inverso à direita . . . 14

2.4 Comentários finais . . . 17

3 Controladores adaptativos 19 3.1 Sistemas a estrutura variável . . . 19

3.2 Controle adaptativo por modelo de referência . . . 22

3.3 Controlador VS-MRAC . . . 25

3.4 Comentários finais . . . 29

4 Modelagem do robô móvel 31 4.1 Modelagem cinemática do robô móvel . . . 31

4.2 Modelagem dinâmica de um motor c.c. . . 33

4.3 Modelagem dinâmica do robô móvel . . . 34

4.4 Modelo em variáveis de estado . . . 34 4.5 Análise de estabilidade do modelo utilizado para descrever o robô móvel . 36

(13)

4.6 Determinação dos parâmetros do robô móvel . . . 37

4.7 Comentários finais . . . 37

5 Estrutura do controlador 39 5.1 Desacoplamento do sistema . . . 40

5.2 Controlador VS-MRAC . . . 43

5.3 Controlador de posição . . . 45

5.3.1 Análise de estabilidade do controlador proposto . . . 46

5.3.2 Análise de estabilidade para o caso geral . . . 48

5.4 Comentários finais . . . 49

6 Resultados 51 6.1 Descrição do sistema . . . 51

6.2 Projeto do controlador . . . 52

6.3 Simulação . . . 54

6.3.1 Robô móvel em malha aberta . . . 55

6.3.2 Desacoplamento do robô móvel . . . 56

6.3.3 Controlador proposto aplicado ao robô móvel . . . 58

6.3.4 Estabilidade do controlador proposto . . . 61

6.4 Resultados experimentais . . . 62

6.4.1 Robô móvel em malha aberta . . . 62

6.4.2 Desacoplamento do robô móvel . . . 63

6.4.3 Controlador proposto aplicado ao robô móvel . . . 65

6.5 Comentários finais . . . 67

7 Conclusões e trabalhos futuros 69 Referências bibliográficas 72 A Dedução do erro na forma entrada/saída - MRAC 81 B Solução no sentido de Filippov 83 C Detalhes da lei de controle a estrutura variável 87 D Determinação deθ∗ 89 E Análise de um sistema MIMO 91 F Análise de estabilidade 93 F.1 Análise de estabilidade do erro de orientação . . . 93

F.2 Análise de estabilidade do erro de posição . . . 94

(14)

H.2 Simulação do desacoplamento para o caso ideal . . . 101

H.3 Simulação (xd=1,yd=0) . . . 102

H.4 Simulação (xd=1,yd=0) sem zona morta . . . 103

H.5 Simulação (xd=1,yd=1) . . . 104

H.6 Simulação (xd=0,yd=1) . . . 105

H.7 Simulação (xd=−1,yd=1) . . . 106

H.8 Simulação (xd=1,yd=0) . . . 107

H.9 Simulação (xd=1,yd=1) . . . 108

H.10 Simulação (xd=0,yd=1) . . . 109

H.11 Simulação (xd=1,yd=1) . . . 110

H.12 Simulação 01 com desacoplamento por(s2)−1 . . . 111

H.13 Simulação 02 com desacoplamento por(s2)−1 . . . 112

H.14 Simulação 03 com desacoplamento por(s2)−1 . . . 113

I Sistema de visão 115

J Identificação dos parâmetros do robô móvel 117

(15)

Capítulo 1

Introdução

O avanço da tecnologia embarcada tem permitido uma maior confiabilidade e auto-nomia no controle de sistemas multivariáveis (sistemas com muitas entradas e/ou saídas, MIMO -Multiple Input Multiple Output). Consequentemente, estes sistemas mais confiá-veis são cada vez mais aceitos e absorvidos pelo mercado industrial, militar, residencial, dentre outros. Por outro lado, o amadurecimento da teoria de sistemas adaptativos tem permitido a aplicação deste tipo de controladores aos mais diversos sistemas.

O foco deste trabalho está em apresentar uma nova estrutura de controle adaptativo aplicado a um sistema com múltiplas entradas / múltiplas saídas (MIMO). Esta estrutura utiliza desacoplamento através de uma técnica por sistema inverso, que transforma um sistema MIMO em um conjunto de sistemas com uma entrada e uma saída (sistemas SISO - Single Input Single Output), associados a controladores adaptativos para garantir o perfeito desacoplamento, o que pode ser interpretado como um desacoplador adaptativo. O controlador proposto é aplicado a um robô móvel com acionamento diferencial, para a verificação de suas propriedades. A escolha por robôs móveis se deu por sua pre-sença nas mais variadas tarefas, tais como exploração de terrenos, execução de atividades em ambientes hostis, tarefas de auxílio em ambientes hospitalares e residenciais, etc. Robôs móveis aplicados a estas atividades resultam em sistemas com múltiplas entradas e múltiplas saídas, com incertezas paramétricas e distúrbios. Por isso, faz-se necessário a utilização de uma técnica de controle capaz de se adaptar para compensar estas incertezas e distúrbios. A técnica de controle utilizada na tese será o VS-MRAC, o qual, por utilizar estrutura variável, leva a um transitório mais rápido que os controladores adaptativos que utilizam leis integrais de adaptação.

1.1

Sistema inverso

Para um sistema qualquer pode-se associar conceitos de inversibilidade à esquerda e/ou à direita. O sistema inversível à esquerda (Figura 1.1) geralmente é utilizado onde a entrada u(t)para o sistema não é mensurável ou é muito difícil de ser medida. Como

(16)

Sistema Físico

Sistema Inverso

u(t) y(t) u(t)

x0 x0

Figura 1.1: Sistema inverso à esquerda

O sistema inverso à direita (Figura 1.2) é utilizado quando se deseja que a saída do sistema físico siga uma determinada função analítica f(t). Esta forma de aplicação tem especial importância em controle de sistemas com rastreamento da saída. Soluções deste tipo foram adotadas em problemas aeronáuticos e em sistemas de potência [Araújo 1983].

Sistema Inverso

Sistema Físico

f(t) u(t) y(t) = f(t)

x0 x0

Figura 1.2: Sistema inverso à direita

Esta tese trata particularmente da aplicação de sistemas inversos à direita no controle de sistemas MIMO. Assim, ao longo de todo o texto, sempre que o autor se referir a um sistema inverso ele estará se referindo a um sistema inverso à direita.

1.2

Controladores adaptativos robustos

Uma visão geral sobre controle adaptativo pode ser obtida em um conjunto de livros disponíveis na literatura [Ioannou & Sun 1995, Aström & Wittenmark 1994, Sastry & Bodson 1989, Narendra & Annaswamy 1989]. A teoria de controle adaptativo pode ser dividida em duas áreas básicas: uma supõe que as variáveis de estado são mensuráveis [Landau 1979], e a outra supõe que somente medições da entrada e saída da planta são disponíveis [Narendra & Valavani 1978, Goodwin & Sin 1984, Goodwin & Mayne 1987]. Devido à dificuldade de medição das variáveis de estado do robô, a técnica utilizada neste trabalho será a segunda, com uma abordagem por modelo de referência. Nesta abordagem, a função do modelo de referência é especificar o comportamento desejado para a planta. O erro entre as saídas da planta e do modelo de referência é utilizado por um algoritmo de adaptação para ajustar os parâmetros do controlador, de tal forma que este erro tenda a zero, permitindo, assim, o rastreamento assintótico do modelo.

(17)

1.2. CONTROLADORES ADAPTATIVOS ROBUSTOS 3

nos controladores MRAC dos anos 50. Assim, apresentaram provas de estabilidades mais rigorosas para os controladores adaptativos.

Alguns destes controladores foram acompanhados por diversas aplicações bem su-cedidas [Harris & Billings 1981, Narendra & Monopoli 1980, Unbehauen 1980]. No trabalho de Egardt [1979] demonstrou-se que os controladores MRAC poderiam ser ins-táveis na presença de pequenos distúrbios, fato esse somente corrigido com a proposta dos controladores adaptativos robustos [Egardt 1979, Ioannou & Sun 1988, Ioannou & Datta 1991].

Nos dias de hoje, ainda se busca um controlador adaptativo robusto com um bom comportamento tanto no transitório como no regime permanente. Bons resultados estão sendo obtidos integrando-se duas ou mais técnicas distintas, explorando o que cada uma tem de melhor.

Um exemplo bem sucedido de associação de técnicas distintas é o VS-MRAC (Contro-lador Adaptativo por Modelo de Referência e Estrutura Variável), o qual associa o controle a estrutura variável (VSC - Controlador por Estrutura Variável) com o controlador MRAC. Proposto na década de 50 na extinta União Soviética por Emelyanov [1967], o VSC possui bom comportamento transitório, quando comparado ao controlador MRAC convencional, que usa leis integrais de adaptação para fazer com que a saída da planta siga um mo-delo de referência desejado [Ioannou & Sun 1995, Aström & Wittenmark 1994, Sastry & Bodson 1989, Narendra & Annaswamy 1989] (em geral o MRAC possui um transitório lento e oscilatório).

O controlador VS-MRAC foi proposto por Hsu e Costa [1989], e utiliza a estrutura do controle por modelo de referência MRAC, substituindo as leis integrais de adaptação por leis chaveadas, resultando, assim, em um sinal de controle chaveado, como nos sistemas a estrutura variável (em alguns artigos [Araújo et al. 1994, Hsu et al. 1997, Cunha et al. 2003] são apresentadas aplicações). Apesar do bom desempenho transitório, em geral tem-se a presença do fenômeno dechattering1.

Ochattering pode deteriorar o desempenho do sistema pela introdução de um erro

oscilatório na saída da planta. Além disso, este chaveamento rápido das variáveis de controle não é admissível em muitas aplicações, podendo levar a significativas perdas tér-micas em sistemas elétricos de potência e a desgastes excessivos em sistemas mecânicos. Para superar o problema do chattering pode-se modifcar a função relé por uma aproxi-mação contínua que é linear em uma vizinhança da superfície de deslizamento [Slotine & Sastry 1983].

(18)

1.3

Definição do problema

Esta seção é dedicada a apresentar o problema que se deseja solucionar, bem como uma visão geral da solução proposta na tese. Para iniciar, deve-se apresentar a plataforma2

onde serão desenvolvidos os estudos sobre o controlador proposto (ver Figura 1.3).

Figura 1.3: Plataforma de desenvolvimento

O item 1 da Figura 1.3 é o robô o qual se deseja controlar. O item 2 é a câmera, que funciona como sensor de posição e orientação do robô. Por fim, o item 3 é um computador no qual a estratégia de controle será embarcada.

O robô é um cubo com aresta de 7cm e duas rodas laterais com acionamentos in-dependentes através de dois motores de corrente contínua (motor c.c.) semelhantes. O mesmo possui uma placa de processamento embarcada e um sistema de comunicação. A comunicação serve para a troca de informações entre o robô e o computador, o qual é responsável por realizar os cálculos dos sinais de tensão de armadura que devem ser aplicados aos motores c.c. do robô.

Para realizar o cálculo da tensão a ser aplicada a cada motor, o computador executa o algoritmo de controle proposto nesta tese, o qual gera as tensões com base no erro da posição do robô, que por sua vez é obtida a partir da análise das imagens capturadas por uma câmera (sistema de visão [Aires et al. 2001]) localizada acima do campo, no qual o robô se deslocará.

Sobre o robô ainda é necessário comentar dois aspectos importantes. O primeiro está relacionado com uma restrição no movimento do robô (restrição não holonômica) que é apresentada na subseção 1.3.1. O segundo aspecto está relacionado com as incertezas paramétricas e não linearidades do robô, que são comentadas na subseção 1.3.2

2A plataforma de desenvolvimento deste trabalho está de acordo com as regras da MiroSot/Fira (Micro

(19)

1.3. DEFINIÇÃO DO PROBLEMA 5

1.3.1

Aspectos da não-holonomia

Uma das características importantes dos robôs móveis dotados de rodas é a presença de restrições não-holonômicas. O termo holonômico pode ser de origem tanto grega (ho-los = inteiro), como latina (ho(ho-los = completo ou integrável). Portanto, os sistemas não-holonômicos possuem algum tipo de restrição a um ou mais estados do sistema. Robôs móveis com acionamento diferencial possuem restrições ao tentar movimentar-se em to-das as direções, pelo fato de seus atuadores serem incapazes de realizarem tais movimen-tos. Ao se considerar que não há derrapagem, um robô dotado de rodas, semelhante a um carro, é um exemplo clássico de um robô móvel não-holonômico. A Figura 1.4, ilustra uma restrição que impede o robô de realizar movimentos normais à superfície do corpo de suas rodas.

(a) (b)

Figura 1.4: Estacionamento de um robô móvel: (a) sem restrições; (b) com restrições não-holonômicas

Na Figura 1.4, a trajetória mais simples para estacionar o robô seria composta por dois segmentos de reta perpendiculares (ver Figura 1.4(a)). Porém, esta trajetória é de impossível realização pelo sistema de locomoção. Desta forma torna-se necessário gerar uma trajetória levando-se em consideração as restrições inerentes a este sistema, como mostra a Figura 1.4(b). Na seção 4.1, será descrita matematicamente a restrição não-holonômica do robô móvel utilizado neste trabalho.

1.3.2

Considerações sobre as incertezas do sistema

Para o sistema que descreve o robô móvel, as incertezas paramétricas são oriundas principalmente da dificuldade em se obter alguns parâmetros dinâmicos e cinemáticos, tais como os valores das resistências dos enrolamentos das armaduras dos motores, as constantes de torque dos motores, os coeficientes de atrito, diferença entre os lados es-querdo e direito do robô móvel, entre outros.

Segundo Canudas de Wit e outros [1995], o atrito é um fenômeno bastante aleatório devido às formas irregulares das superfícies. Este artigo também apresenta um outro item fundamental a ser considerado, que é o atrito seco ou atrito estático, observado quando dois corpos deslizam um sobre o outro, com superfícies não lubrificadas. Neste caso, a força de atrito estático permanece quase inalterada após o início do deslocamento, carac-terizando a não linearidade do tipo zona morta, ou seja, um comportamento quando está parado e outro diferente quando está em movimento.

(20)

uma grande diferença no funcionamento do sistema. Como exemplo de não-linearidades de entrada pode-se citar a zona morta e a saturação.

A zona morta é a faixa operacional do atuador que não produz resposta dinâmica no sistema, em função do sinal de controle aplicado, em qualquer instante de tempo, e está relacionada com a modelagem do atrito existente no subsistema mecânico. Já a satura-ção ocorre devido às características físicas do subsistema eletrônico de acionamento dos motores de corrente contínua. São restrições de limites máximo e mínimo impostas ao atuador, existentes em todos os sistemas, e que atuam de forma a deteriorar o seu desem-penho, fazendo com que existam estados inalcançáveis e comportamentos dinâmicos não rastreáveis [Laura et al. 2006].

1.3.3

Controle do robô móvel

O robô poderá ser representado por um sistema com duas entradas e três saídas (ver Figura 1.5), ou seja um sistema MIMO.

Robô

ee

ed

xp

yp

θp

Figura 1.5: Diagrama de blocos do robô móvel com duas rodas tracionadas

O controle de posição de um robô móvel com acionamento diferencial deve, a par-tir dos sinais de controle ee,d (tensões de armadura nos motores c.c.), deslocar o robô de um ponto qualquer (xp,yp) sobre uma superfície para um outro ponto qualquer dese-jado (xd,yd). É importante lembrar que o controle de posição não garante um caminho específico a ser realizado entre estes dois pontos (ver Figura 1.6).

xp yp

xd yd

Figura 1.6: Trajetória realizada pelo robô vista pela câmera

(21)

1.4. ORGANIZAÇÃO DA TESE 7

dinâmicos [Tounsi et al. 1995a, Tounsi et al. 1995b, Pereira 2000, Oliveira & Lages 2001, Tanner & Kyriakopoulos 2002] que se propõem a controlar um robô móvel, alguns sendo lineares e outros não-lineares [Samson 1993, Aicardi et al. 1995]. O uso de téc-nicas adaptativas também já foi apresentado [Bugeja et al. 2009, Chen et al. 2009, Wu et al. 2009, Bugeja & Fabri 2008, Bugeja & Fabri 2006, Oubbati et al. 2005, Alba-gul & Wahyudi 2004, Liu et al. 2004, Feng et al. 1994, Shim & Kim 1994, Stotsky & Hu 1998, Lefeber & Nijmeijer 1999, Lee et al. 1999, Lages & Hemerly 2000, Kim et al. 2000, Aguiar et al. 2000, Fukao et al. 2000, Ge & Zhou 2000, Dixon et al. 2001], porém esta tese abordará o controle do robô móvel em duas etapas. A primeira será o controle de sistemas MIMO, através de uma técnica de desacoplamento associada a um conjunto de controladores adaptativos. Esta técnica poderá ser utilizada por todos os sis-temas MIMO de uma classe específica (ver Capítulo 2). A segunda etapa será projetar um controlador cinemático para controlar a posição do robô móvel.

Atualmente há vários trabalhos que propõem controladores que se adaptam, utilizando redes neurais e/ou lógicafuzzy, para rejeitar as incertezas paramétricas existentes nos mo-delos dos robôs móveis [Bugeja et al. 2009, Chen et al. 2009, Wu et al. 2009, Bugeja & Fabri 2008, Bugeja & Fabri 2006]. Este trabalho proprõe um controlador com o mesmo intuito, porém, ao invés das redes neurais e lógicafuzzy, ele utiliza um controlador adap-tativo robusto.

1.4

Organização da tese

(22)
(23)

Capítulo 2

Sistema inverso

Este capítulo destina-se a apresentar o algoritmo de inversão de sistemas não lineares multivariáveis proposto por Hirschorn [1979, 1981], e propor uma modificação na obten-ção deste sistema inverso para o caso de sistemas lineares. O algoritmo será utilizado pelo controlador proposto nesta tese para desacoplar o modelo do robô, que é um sistema MIMO, representando-o como dois sistemas SISO desacoplados.

Observação: As variáveis definidas neste capítulo são restritas ao mesmo.

2.1

Apresentação do sistema

Uma classe de sistemas não lineares pode ser descrita por

˙

x=A(x) +B(x)u; xM

y=C(x) (2.1)

ondeMℜn,A,B

1, . . . ,Bmsão funções vetoriais analíticas reais emM,u= [u1, . . . ,um]T ondeuié uma função analítica real1de[0,∞)emℜeC:M→ℜl.

Para o sistema 2.1 pode-se associar inversibilidade à esquerda e/ou inversibilidade à direita, sendo que esta última, por ser utilizada neste trabalho, será detalhada. O algoritmo original para inversão de sistemas não lineares multivariáveis desenvolvido por Hirschorn [1979, 1981], será apresentado de forma simplificada, utilizando os conhecimentos usuais da álgebra matricial e da resolução de equações diferenciais.

Definição 2.1 O sistema não linear é inversível à direita se, para qualquer saída desejá-vel yre f(.) = f(.)definida em[0,∞), existe um controle u(.)e uma escolha de x0, tal que y(t) =yre f(t) = f(t)para todo t∈[0,∞).

Se for desejado que a saída y(.,u,x0) siga uma determinada função analítica f(t),

deve-se construir um sistema inverso ao sistema original, dirigido por derivadas apropria-das de f(t), que seja capaz de gerar a entradau(t)necessária para o rastreamento de f(t)

(24)

pela saída do sistema original. O sistema inverso utilizado desta forma é denominado de sistema inverso à direita (ver Figura 2.1).

Sistema Inverso

Sistema Físico

f(t) u(t) y(t)=f(t)

x0 x0

Figura 2.1: Sistema inverso à direita

Para investigar se um sistema é ou não inversível à direita, pode-se aplicar o algoritmo de inversão de Hirschorn.

2.1.1

Algoritmo de inversão

O algoritmo será aplicado ao caso em estudo neste trabalho, no qual o número de saídas do sistemanout estudado é igual ao número de entradasnin. Para aplicar o algoritmo será necessário derivar o sinal de saídaydo sistema 2.1 consecutivamente, obtendo uma seqüência de sistemas. Este procedimento continuará até que se obtenha uma matrizDi(x) em função dos sinais de entrada (u), que tenha pseudo-inversa.

Derivando-se o sinal de saída do sistema 2.1, obtém-se dy

dt =y

(1)=dC(x)

dt =C

1(

x) +D1(x)u. (2.2)

A associação da equação 2.2 ao sistema 2.1 resulta em um sistema 1 dado por

˙

x = A(x) +B(x)u; xM1

z1 = C1(x) +D1(x)u (2.3)

onde

z1 = R0dy

dt C1(x) = R0(x)C1(x)

D1(x) = R0(x)D1(x)

eR0é uma matriz elementarnout×nout a qual reordena as linhas dependentes deD1(x)de

tal maneira que as primeirasr1linhas sejam linearmente independentes para algumx∈M

eM1é um subconjunto deM. Denomina-ser1de índice de inversibilidade do sistema 1.

Constrói-se, então, indutivamente uma seqüência de sistemas não lineares, tal que o k-ésimo sistema seja:

Sistema k:

˙

(25)

2.1. APRESENTAÇÃO DO SISTEMA 11

ondeMké um subconjunto deM,Ck(x)eDk(x)são matrizesnout×1 enout×nin, respec-tivamente, cujos elementos são funções analíticas reais emMk, e

Dk(x) =

Dk1(x)

0

comDk1(x)sendo uma matrizrk×ninde postorkpara todox∈Mk.

Na construção acima, é produzida uma seqüência de inteiros não negativosr1,r2, . . .,

onde rk é denominado índice de inversibilidade do k-ésimo sistema. Por construção, 0r1≤r2≤r3≤. . .≤nout.

Definição 2.2 A ordem de rastreamentoβdo sistema 2.1 é o mínimo inteiro positivo k, tal que rk=nout ouβ=∞se rk<nout para todo k>0.

Para continuar o desenvolvimento da teoria de inversão de sistemas, deve-se garantir que a saídazk do k-ésimo sistema, para todok>0, é dependente da entradau(.) impli-citamente e não expliimpli-citamente. Esta verificação torna-se necessária ao caso não linear tendo em vista que as reduções de linhas usadas na criação da seqüência de sistemas são dependentes dex(t). Considera-seβ<∞(esta condição é relevante no desenvolvimento posterior).

Teorema 2.1 Seja o sistema não linear 2.1 com ordem de rastreamentoβ<∞.

Seβ2e

BiAjRk(.)≡0 em M (2.4)

para0kβ2,0 jβ2k e i=1, . . . ,nin, então, a saída do k-ésimo sistema

2.1 pode ser decomposta como

zk=

zk

�zk

=

Hk(x) Jk(x)

Yk=Kk(x)Yk

onde

Yk=

  

y(1)

.. .

y(k)

 

 y(i)=dy

i

dti

Isto significa dizer que a saídazkdo k-ésimo sistema, ondek=1, . . . ,β, é dependente

implicitamente da entradau(.). Tem-se, então,

zk(x) =

Hk(x) Jk(x)

Yk=

Ck(x)

Ck(x)

+

Dk1(x) 0

u(t)

Observa-se que, paraβ<∞, oβ-ésimo sistema é dado por

Sistemaβ:

˙

x = A(x) +B(x)u; x

(26)

onde a matrizDβ(x)nout×nin de postonout, tem a pseudo-inversa dada por

D∗β(x) =DTβ(DβDTβ)−1

comDβD∗β=IemMβe

zβ = Kβ(x)Yβ=Hβ(x)Yβ ondeHβ(x)é uma matriznout×βnout.

2.1.2

Reprodutibilidade funcional assintótica

Definição 2.3 Diz-se que uma função f(t)definida em[0,∞)pode ser reproduzida

funci-onalmente pela saída y(t)do sistema 2.1, para uma dada condição inicial x(0), se existe

algum controle u(.), tal que y(t) = f(t)para todo t[0,∞).

Hirschorn [1981] deduziu uma condição suficiente para a reprodutibilidade funcional.

Teorema 2.2 Seja o sistema não linear 2.1 com ordem de rastreamento β<∞ e, para

β2, supõe-se que a condição 2.4 seja satisfeita.

Seja f(t)uma função analítica real e o estado inicialx(0) =x0∈Mβ. Então, f(.) =

y(.,u,x0)para algum controle admissívelu, se e somente se,

f(0) = C(x0)e

Jk(x0)Fk(0) = C�k(x0), parak=1, . . . ,β−1 onde

Fk(t) =

  

f(1)(t)

... f(k)(t)

  

Corolário 2.1 Seja o sistema não linear 2.1 com ordem de rastreamentoβ<∞e, para

β2, supõe-se que a condição 2.4 seja satisfeita. Então o sistema

˙

�x = A�(x) +B�(x)�u; �x

�y = C�(x) +D�(x)�u (2.5) ondex(0) =x0e

A(x) =A(x)B(x)D∗β(x)Cβ(x)

B(x) =B(x)D∗βHβ(x�)

C(x) =D∗β(x)Cβ(�x)

(27)

2.2. INVERSÃO DE UM SISTEMA LINEAR 13

atua como um sistema inverso à direita para o sistema 2.1. Em particular, se f(.)pode ser reproduzida por y(.,u,x0) para algum u e x0∈Mβ, então, f(.) = y(.,uf,x0) onde uf =y�(.,Fβ,x0).

2.2

Inversão de um sistema linear

Para se obter um sistema inverso utilizando o algoritmo de inversão de Hirschorn, basta derivar as saídas do sistema físico até obter uma relação inversível entre as deriva-das deriva-das saíderiva-das e as entraderiva-das. Assim, se

˙

x =Ax+Bu

y =Cx , (2.6)

ondexℜn,y

∈ℜm eu

∈ℜm (caso específico do número de entradas igual ao número de saídas), derivando-se cada saída obtém-se

˙

x =Ax+Bu zβ =Cβx+Dβu ,

onde (Dβ:ℜm

→ℜm) é uma relação inversível entre as entradas e saídas do sistema físico e

zβ=Hβ�y(1) . . . y(β)�

T

(2.7) comHβsendo uma matrizm×βm.

Desta forma, seguindo o algoritmo de Hirshorn, é possível obter-se um sistema inverso para o sistema linear da equação (2.6) dado por

˙

�x= A��x+B��u

Y=C�x+D�u

onde

A = A−BD−β1Cβ C� = −D−β1Cβ

B = BD−β1Hβ D� = D−β1Hβ

u = [U1 . . . Un]T

Para finalizar a inversão do sistema é importante ressaltar que as saídas do sistema inverso serão as entradas do sistema físicou=Y� e as saídas do sistema físico rastreiam as entradasuescolhidas para o sistema inverso.

Como o caso em estudo se trata de um sistema linear, será possível obter uma matriz de transferência para o sistema inverso dada por

G(s) =C�(sI−A�)−1B�+D�, (2.8) uma para o sistema físico

(28)

e uma outra para o sistema desacoplado

W(s) =G�(s)·G(s) =diag

1

sk(i)

, i=1, . . . ,m (2.10)

ondek(i)é o índice de inversibilidade de cada par entrada/saída.

Exemplo

Seja um sistema linear dado por

   ˙ x = �

A 02×2

I2×2 02×2

x+

B 02×2

u y =Cx

,

onde xℜ4, yℜ2, uℜ2 eC= [02×2 I2×2]. Derivando-se duas vezes cada saída

obtém-se   ˙ x = �

A 02×2

I2×2 02×2

x+

B 02×2

u z2 =C2x+D2u

,

ondeD2=Bé uma relação inversível entre as entradas e saídas do sistema físico eC2= [A02×2]. Desta forma, é possível se obter um sistema inverso para o sistema linear da

equação (2.11), semelhante ao sistema da equação (2.8), onde

A = ABD−21C2 C� = −D−21C2

B = BD−21H2 D� = D−21H2

u = [0 0U1U2]T

H2(2×4)=

0 0 1 0

0 0 0 1

Por fim, a matriz de transferência para o sistema desacoplado será

W(s) =G�(s)·G(s) =

  

1

s2 0

0 1

s2

 

 (2.11)

2.3

Modificação do sistema inverso à direita

Este trabalho propõe uma forma alternativa para obtenção da matriz G�(s)(equação 2.8), a qual funcionará como um sistema inverso ao sistema físico. Reescrevendo o sis-tema (2.11) através de sua matriz de transferência, obtém-se

y1=G11u1+G12u2

(29)

2.3. MODIFICAÇÃO DO SISTEMA INVERSO À DIREITA 15

o qual é apresentado na Figura 2.2 através de diagramas de blocos.

G11 G12 G21 G22 y1 y2 u1 u2 + + + +

Figura 2.2: Sistema físico

A proposta é adicionar um outro sistema à direita do sistema físico, para que o mesmo funcione como um sistema inverso e desacople o sistema físico de forma semelhante ao algoritmo de inversão de Hirshorn (ver Figura 2.3).

G11 G12 G21 G22 y1 y2 u1 u2 � G11 � G12 � G21 � G22 U1 U2 + + + + + + + +

Figura 2.3: Sistemas inverso e físico

Seja um sistema linear qualquer com duas entradas (U1,U2) e duas saídas (u1,u2)

descrito por

u1=G�11U1+G�12U2

u2=G�21U1+G�22U2

Aplicando-se as saídas (u1,u2) como entradas para um outro sistema linear qualquer, com

duas entradas e duas saídas (y1,y2), a relação entre as entradas (U1,U2) do primeiro sistema

e as saídas (y1,y2) do segundo sistema será

y1= (G11G�11+G12G�21)U1+ (G11G�12+G12G�22)U2

y2= (G21G�11+G22G�21)U1+ (G21G�12+G22G�22)U2 (2.12)

Para desacoplar as saídas (y1,y2) com relação às entradas (U1,U2)e garantir que a

(30)

para o conjunto de equações em (2.12) deverá ser

G11G�11+G12G�21=1/s2

G21G�11+G22G�21=0 (2.13)

G11G�12+G12G�22=0

G21G�12+G22G�22=1/s2 (2.14)

Pode-se observar que a solução para as equações dadas em (2.13) e (2.14) implica em [Silverman 1969]

G=G−1·

  

1

s2 0

0 1

s2

  ,

ou seja, as saídas (y1,2) rastreiam as entradas (U1,2) com dinâmica 1/s2(duplo integrador).

A modificação do sistema inverso à direita proposta por este trabalho será importante na implementação do controlador (ver seção 5.3), pois permitirá utilizar em substituição aos integradores 1/s2, qualquer planta com a mesma ordem deste integrador, por exemplo

G=G−1·

  

1 s2+αas+αb

0

0 1

s2+αas+αb

  ,

simplificando o projeto do controlador e reduzindo a amplitude do sinal de controle como pode ser comprovado comparando-se as Figuras H.23 até H.28 com as Figuras H.5 até H.16 do Apêndice H.

Generalizando o desacoplamento

Seja um sistema linear qualquer dado por

˙

x =Ax+Bu

y =Cx , (2.15)

ondexℜn,ymeum(caso específico do número de entradas igual ao número de saídas). ComoG(s) =C(sIA)−1B, para desacoplar o sistema (2.15) deve-se encontrar

um sistema inverso à direitaG�(s)no qual

G(s) =G−1(s)·W(s) (2.16) onde

W(s) =diag

1

gi(s)

, i=1, . . . ,m (2.17)

(31)

2.4. COMENTÁRIOS FINAIS 17

2.4

Comentários finais

Neste capítulo foram apresentados os principais passos do algoritmo de inversão de Hirschorn e proposta uma modificação no algoritmo para a aplicação ao caso do robô móvel. No trabalho de Araújo [1983], o algoritmo de inversão de Hirschorn é apresentado de forma detalhada, com o enfoque na área de controle e também são apresentadas as provas dos teoremas utilizados.

(32)
(33)

Capítulo 3

Controladores adaptativos

Este capítulo destina-se a apresentar, de forma resumida, algumas das técnicas de controle adaptativo relacionadas com o controlador adaptativo utilizado na tese.

Na seção 3.1 é introduzido o conceito de sistemas a estrutura variável, na seção 3.2 são apresentadas as principais características de um controlador adaptativo por modelo de referência (MRAC) e, por fim, na seção 3.3 o controlador adaptativo por modelo de referência e estrutura variável (VS-MRAC), que será implementado no controle do robô móvel, tem sua teoria discutida.

Observação: As variáveis definidas neste capítulo são restritas ao mesmo. Para facilitar o entendimento das técnicas apresentadas neste capítulo, as variáveis aqui definidas utili-zam a mesma simbologia da grande maioria das publicações em controle adaptativo por modelo de referência.

3.1

Sistemas a estrutura variável

Com origem no estudo doscontroladores a relédesenvolvido na Rússia [Emelyanov & Taran 1963a, Emelyanov & Taran 1963b, Taran 1964a, Taran 1964b, Itkis 1976, Utkin 1978], a teoria de sistemas a estrutura variável tem sido aplicada a problemas de sistemas de controle, especialmente na forma conhecida como controle por modos deslizantes. Este nome é devido ao fato de se restringir a dinâmica desejada a uma superfície deslizante no espaço de estados. Assim, as trajetórias do sistema tendem a alcançar e manter-se na superfície de deslizamento, tornando-se, então, insensíveis às incertezas da planta.

O objetivo desta seção consiste em apresentar alguns aspectos fundamentais da teoria de sistemas a estrutura variável para facilitar a compreensão do controlador VS-MRAC.

Considere o seguinte sistema:

˙

x=Ax+bu; A=

      

0 1 0 . . . 0

0 0 1 . . . 0

... ... ... ... 0 0 0 . . . 1 a1 a2 a3 . . . an

      

; b=

(34)

ondexT = [x1,x2, . . . ,xn]eai∈ℜ(i=1, . . . ,n). Deseja-se que a dinâmica para o sistema esteja restrita à superfície de chaveamento S definida como:

S={x:s(x) =

n−1

i=1

(cixi) +xn=0}; ci>0 (i=1, . . . ,n−1) (3.2)

Para o sistema 3.1, definindo-se

u(x) =

u+(x); ses(x)>0 u−(x); ses(x)<0 ; u

+(

x)=u−(x)

como o sinal de controle, isto transforma o sistema em

˙

x=

f+(x); ses(x)>0

f−(x); ses(x)<0

Se a condiçãoss˙<0 é satisfeita em uma vizinhança des(x) =0, os campos vetoriais

representados por f+e f− apontam para S nesta vizinhança (Figura 3.1(a)). Portanto, se uma trajetória alcança S, ela é forçada a deslizar sobre esta superfície, ou seja, é definido um modo deslizante em S (Figura 3.1(b)).

x2

x1

s(x)=x1+cx2=0 f+

f−

(a) Condição de deslizamento

x2

x1

s(x)=0 x(0)

(b) Deslizamento ideal

Figura 3.1: Exemplo do comportamento da superfície de deslizamento

Pode-se observar uma redução de ordem na dinâmica do sistema durante o desliza-mento, ou seja,

n1

i=1

(cixi) +xn=0; x∈S

˙

xi=xi+1; i=1, . . . ,n−2; x˙n−1=xn=− n−1

i=1

(cixi).

Observe que, durante o deslizamento, a dinâmica do sistema depende apenas das cons-tantesci>0 e, assim, estas devem ser escolhidas para que o sistema de ordem reduzida

apresente um desempenho desejado.

(35)

3.1. SISTEMAS A ESTRUTURA VARIÁVEL 21

controleu= ∑n

i=1(θixi), tem-se (mais detalhes ver Apêndice C)

ss˙=s

(a1+θ1)x1+

n

i=2

(ci−1+ai+θi)xi

,

e, para que se possa atender a condiçãoss˙<0, deve-se fazer

θi=−θisgn(sxi); i=1, . . . ,n onde

sgn(x) =

1, sex>0

−1, sex<0 e

θ1>|a1|; θi>|ai+ci−1|; i=2, . . . ,n

Para o sistema a estrutura variável ser robusto às variações paramétricas da planta, é necessário que a condição de deslizamentoss˙<0 seja sempre satisfeita, ou seja, os

pa-râmetrosθidevem ser convenientemente dimensionados conforme as variações previstas paraai(t). Assimθ1>sup

t>0|a1(t)|eθi>supt>0|ai(t) +ci−1|(i≥2).

No deslizamento, ˙s0, onde

˙

s=

n−1

i=1

(cixi˙) +xn˙ =a1x1+

n

i=2

(ci1+ai)xi+u,

e, desta forma, o controle equivalenteueq[Utkin 1978], associado com a superfície desli-zantes=0, é o controle contínuo que garantiria o deslizamento na ausência de imperfei-ções (perturbaimperfei-ções, por exemplo) e pode ser obtido fazendo ˙s=0, ou seja,

ueq=−

a1x1+

n

i=2

(ci−1+ai)xi

; s(x) =0

O controle equivalente pode ser interpretado fisicamente como o valor médio (uav) do sinal de controle u obtido através de um filtro passa baixa com freqüência de corte suficientemente alta (τ0) (Figura 3.2), na ausência de dinâmica não modelada da planta e de incertezas no chaveamento real [Utkin 1978].

1

τs+1

u uav

Figura 3.2: Filtro de valor médio (τ0)

(36)

e mensuráveis (esta última condição nem sempre é possível), e há o surgimento de um fenômeno chamado chattering, que consiste na ocorrência de sinais de alta freqüência indesejáveis e excessiva atividade de controle. Ochatteringocorre ao longo da superfície de deslizamento devido às imperfeições introduzidas pelos mecanismos de chaveamento reais, tais como zona morta, histerese, atraso, etc, e/ou à presença de dinâmica não mode-lada da planta (Figura 3.3).

x2

x1

s(x)=0

Figura 3.3: Deslizamento real

Um das dificuldades da prova de estabilidade de sistemas a estrutura variável é o fato das equações diferenciais apresentarem o lado direito descontínuo (devido à lei de con-trole utilizada). Para estas equações não se pode determinar uma constante de Lipschitz para garantir a existência e unicidade de uma solução para o sistema. Esta dificuldade foi superada por uma abordagem feita por Filippov [1964]. Basicamente, as soluções no sen-tido de Filippov (ver Apêndice B) são absolutamente contínuas como funções do tempo e, também, contínuas em relação às condições iniciais. Isto torna possível a extensão do método direto de Lyapunov para a análise de estabilidade de sistemas a estrutura variável.

3.2

Controle adaptativo por modelo de referência

O controlador adaptativo por modelo de referência (MRAC), o qual tem sido aplicado a plantas com incertezas paramétricas e/ou plantas com uma dinâmica complexa, teve nos trabalhos de Narendra, Lin e Valavani [1980] um grande desenvolvimento, sendo consolidado por Sastry [1984].

O algoritmo do MRAC utiliza um modelo de referência para determinar o compor-tamento desejado para a planta (ver Figura 3.4). O erro entre as saídas da planta e do modelo é utilizado para ajustar os parâmetros do controlador. Desta forma, o MRAC uti-liza somente informações da entrada e saída da planta, fato que o torna uma boa opção para implementação (utiliza um número reduzido de sensores).

Considere uma planta linear, monovariável, invariante no tempo, com incertezas pa-ramétricas e função transferência estritamente própria (grau[np(s)]<grau[dp(s)])

W(s) =kpnp(s) dp(s)

(37)

3.2. CONTROLE ADAPTATIVO POR MODELO DE REFERÊNCIA 23

Controlador Planta

Adaptação Modelo

r

u y

erro

θ

ym

-+

Figura 3.4: Diagrama de blocos de um controlador MRAC

sendouo sinal de entrada eyo sinal de saída. Considere, também, um modelo

M(s) =km nm(s) dm(s)

(3.4)

o qual possuircomo sinal de entrada eymcomo sinal de saída.

De posse dessas considerações, o objetivo é encontrar uma lei de controle u(t)que

faça o erro

e0=y−ym (3.5)

tender a zero assintoticamente, para uma condição inicial arbitrária e com sinal de refe-rênciar(t)uniformemente limitado.

É importante destacar algumas hipóteses assumidas no estudo dos controladores adap-tativos por modelo de referência [Ioannou & Sun 1995, Sastry & Bodson 1989]:

1. A planta deve ser controlável e observável, de fase mínima (dp(s)é Hurwitz), sendo

dp(s)enp(s)polinômios mônicos1com graus[dp(s)] =nd e[np(s)] =nn conheci-dos e incertezas paramétricas uniformemente limitadas;

2. O modelo de referência dever ser estável (dm(s) é Hurwitz), sendodm(s)enm(s)

polinômios mônicos com o mesmo grau relativo (n∗=n

d−nn) da planta (em geral grau[dp(s)]= grau[dm(s)]) e sinal(kp) = sinal(km), positivos por simplicidade; 3. A entrada e a saída da planta devem ser mensuráveis e são utilizadas para gerar o

sinal de controle.

Como o número de parâmetros da planta é igual a 2nd, e os sinais disponíveis sãore

y, faltam 2nd2 sinais para a implementação do sinal de controle. Estes são obtidos pela

(38)

filtragem dos sinais de entrada e saída como segue

˙

v1=Λv1+gu ˙

v2=Λv2+gy (3.6)

ondev1,v2∈ℜnd−1eΛé escolhido de tal forma quenm(s)é um fator dedet(sIΛ). O vetor regressor é definido como

ωT = [vT1 y vT2 r] (3.7)

A equação de controle é então definida como

u=θT(t)ω(t) (3.8)

onde

θT(t) = [θTv1 θn θTv2 θ2n] (3.9)

é o vetor de parâmetros adaptativos [Narendra & Annaswamy 1989].

Baseado nas hipóteses anteriores, segundo Ioannou e Sun [1995], existirá um único vetor constanteθ∗capaz de fazer com que a função de transferência da planta em malha fechada (comu=θ∗Tω) se comporte exatamente como o modelo (condição deMatching). Porém, para se conhecer o vetorθ∗, deve-se conhecer todos os parâmetros da planta, o que é bastante difícil na prática. Assim, o vetor θ(t) será adaptado até que e0(t)→ 0

quandot∞e, eventualmente sob alguma condição de riqueza de sinal,θ(t)θ∗. O apêndice D apresenta como se determinar o vetorθ∗.

O erro (dedução no Apêndice A) na forma entrada/saída pode ser dado por:

e0= 1

θ∗2nM(u−θ

∗Tω) (3.10)

Para o caso de grau relativon∗2, torna-se necessária a introdução de um sinal auxi-liar

ya=MLθ2n+1(L−1u−θTL−1ω) (3.11)

no sistema de controle [Monopoli 1974], conhecido por predição do erroe0, interpretação

feita por Goodwin e Mayne[1987], onde L(s) é um polinômio de grau N=n∗−1, de forma que M(s)L(s) seja ERP (Estritamente Real Positiva). θ2n+1 e θ são estimativas

para 1/θ∗

2neθ∗(parâmetros da condição deMatching), respectivamente.

Este sinal auxiliar é introduzido com a finalidade de obter um erro aumentado

ea= (y−ym)−ya=e0−ya (3.12) regido por um operador ERP.

No artigo de Narendra e outros [1980] foi proposta uma modificação emya, com o objetivo de tornar o sistema adaptativo globalmente estável, onde

(39)

3.3. CONTROLADOR VS-MRAC 25

As leis integrais de adaptação utilizadas para atualizarθ(t)eθ2n+1(t)são

˙

θ = ea(L−1ω)

˙

θ2n+1 = ea(L−1θT−θTL−1)ω

(3.14)

O algoritmo do MRAC, para ser globalmente estável na presença de perturbações e dinâmica não modelada, necessita da introdução de normalização, o que pode levar os transitórios de adaptação a serem demasiadamente lentos [Ioannou & Tsakalis 1986, Ortega & Yu 1987, Rohrs et al. 1989]. Mesmo com a excitação rica em freqüências, a qualidade do transitório de adaptação (quando θ(t) está distante de θ∗) não é uniforme e a convergência dos parâmetros adaptativos é muito lenta. Apesar do comportamento transitório não ser totalmente aceitável, em algumas situações, o sinal de controle é suave, tornando-o adequado para a condição de regime permanente.

A Tabela 3.1 resume o algoritmo de um controlador MRAC convencional

u = θTω

ea = (y−ym)−ya=e0−ya

ya = ML[θ2n+1(L−1θT−θTL−1)ω+αea(L−1ω)T(L−1ω)], α>0 ˙

θ = ea(L−1ω) ˙

θ2n+1 = ea(L−1θT−θTL−1)ω

Tabela 3.1: Algoritmo do controlador MRAC convencional

3.3

Controlador VS-MRAC

O controlador VS-MRAC foi desenvolvido por Hsu e Costa [1989] e Hsu [1988, 1990] utilizando uma estrutura semelhante ao MRAC, porém substituindo as leis integrais por um conjunto de leis chaveadas. O VS-MRAC teve como motivação o interesse em se criar um controlador que, fazendo apenas medições da entrada e saída da planta, tornasse o sistema, em malha fechada, robusto às incertezas paramétricas, distúrbios externos, dinâmica não-modelada, além de fazer com que ele apresentasse um bom desempenho transitório. O algoritmo para plantas de ordem superior a 1, assim como a prova de estabilidade, pode ser encontrado nos trabalhos de Araújo e Hsu [1993, 1994, 1990].

O algoritmo apresentado por Hsu [1990] foi modificado por Araújo e Hsu [1990], o que reduziu o número de relés e possibilitou a obtenção de um melhor desempenho transitório. Aqui será apresentada a versão compacta do VS-MRAC, proposta por Araújo e Hsu [1990] e denominada de VS-MRAC compacto.

(40)

(1-3) da página 23 e algumas definições auxiliares introduzidas durante a apresentação do controlador.

O controlador VS-MRAC será aplicado a uma planta com grau relativo 2 (n∗=2),

des-crita por

W(s) = kp

s2+α1s+α2 M(s) =

km

s2+αm,1s+αm,2 (3.15)

onde M(s) é o modelo de referência e W(s) é uma planta com característica semelhante à planta utilizada na tese. O diagrama de blocos do controlador VS-MRAC para uma planta como W(s) pode ser visualizado na Figura 3.5.

Modelo

Planta

Relé

κnomML 1 L

(.)eq

Relé

1 L

θT nomω

f0

f1

r ym

y

e�0 u0

e0

ya

ueq

u1 e

1

-+ +

-+

-+ -+

-Figura 3.5: Diagrama de blocos de um controlador VS-MRAC compacto (n∗=2)

SejaL(s)um polinômio com grau N=n∗-1, de forma queM(s)L(s)seja ERP e

estrita-mente própria, ou seja,

L(s) =s+α, α>0 Em seguida, definem-se novos sinais filtrados

χ0 = L−1u

ξ0 = L−1ω (3.16)

(41)

3.3. CONTROLADOR VS-MRAC 27

Seja

u=u1+θTnomω

o novo sinal de controle, ondeθnom∈ℜ2nd é um vetor de parâmetros nominais obtidos do modelo nominal da planta (idealmente,θnom =θ∗ para a condição deMatching). O erro da equação 3.10 será redefinido como

e0=k∗M(u−θ∗Tω−θTnomω) (3.17) onde o termoθnomTωfoi acrescido para facilitar a implementação das leis chaveadas e k∗=1/θ∗2n.

Sejaknom>0 o valor nominal dek∗. Assim, pode-se redefinir o erroe0como

e0=knomML( k∗ knom

L−1u k

knom

θ∗TL−1ω k∗

knom

θTnomL−1ω) (3.18)

Agora, serão definidos alguns novos parâmetros:

              

ρ= k∗

knom >0

κ>|κ|=

� � � �

k∗knom knom

� � �

�→ρ=κ+1

θ0J>ρ|θ∗J−θnom,J| (J=1, . . . ,2n)

θ1J>|θ∗J−θnom,J| (J=1, . . . ,2n)

(3.19)

eκ0,κ0+1, θ0como estimativas paraκ,ρeρθ∗, respectivamente. O sinal de predição

pode ser apresentado como

ya = knomML((κ0+1)χ0−θT0ξ0−(κ0+1)θTnomξ0)

ya = knomML(κ0(χ0−θTnomξ0)−θT0ξ0+ (χ0−θTnomξ0))

(3.20)

ou, escrevendo de forma mais simples,

ya=knomML(u0−L−1u1) (3.21) onde

χ0θT

nomξ0 = L−1(u−θTnomω)

= L−1(u1+θTnomω−θTnomω)

= L−1(u1)

e

u0=κ0(χ0−θTnomξ0)−θT0ξ0

Seja

(42)

ondee�0=e0−yaé o erro de predição e

f0=κ|χ0−θTnomξ0|+ 2n

j=1

θ0j|ξ0j| (3.22) é a função de modulação que deve ser escolhida de forma a garantir quee�00 em tempo finito. Seja

u1= f1sgn(e�1)

ondee�1= (u0)eq−L−1u1e

f1= 2n

j=1

θ1j|ωj| (3.23)

é escolhido de forma a garantir quee�10 em tempo finito.

O algoritmo do controlador VS-MRAC compacto encontra-se resumido na Tabela 3.2.

u = u1+θTnomω

ya = knomML[u0−L−1u1]

e�0 = e0−ya

e�1 = (u0)eq−L−1(u1)

f0 = κ|χ0−θTnomξ0|+θ T

0|ξ0|

f1 = θT1|ξ1|

ui = fi·sgn(e�i), i=0,1

Tabela 3.2: Algoritmo do controlador VS-MRAC compacto

No desenvolvimento da estratégia de controle, introduziu-se uma cadeia de erros au-xiliares (e�

0,e�1), duas cadeias de parâmetros auxiliares (θ0,θ1) e (κ) para o rastreamento

do modelo.

As leis de adaptação a estrutura variável são escolhidas de forma que os erros auxilia-rese�i(i=0,1)atinjam modos deslizantes em um tempo finito. O controlador equivalente (u0)eq é obtido assintoticamente de (u0)por meio de um filtro passa baixa (1/F) com

freqüência de corte suficientemente elevada.

A malha de realimentação é constituída por um filtro em avanço a estrutura variável, cuja função consiste em obter (u)eq = (−u1+unom)eq→u∗=θ∗Tω(condição de

Mat-ching). Este filtro é necessário devido à introdução do sinal adicional ya, que é regido

(43)

3.4. COMENTÁRIOS FINAIS 29

Robustez do controlador VS-MRAC

Nesta seção são apresentados os resultados obtidos por Costa e Hsu [1992] sobre a robustez do controlador VS-MRAC às perturbações e dinâmica não modelada.

Considere um distúrbiod uniformemente limitado na entrada da planta (ver Figura 3.6) e uma dinâmica não modelada∆µestável

∆µ=−µs+1

µs+1 , (3.24)

ou seja,µ(0,µ]comµ>0 suficientemente pequeno.

W(s)

u

+ +

d

y

Figura 3.6: Planta com distúrbio de entrada e dinâmica não modelada

Se um distúrbio uniformemente limitado desconhecido d(t), |d(t)|d, atua na

en-trada da planta e∆µ=0, todos os sinais no sistema permanecem uniformemente

limita-dos e o erro de saída é ulteriormente limitado porkdd,kd≥0. Se, além disso,||ξ||>cid, ∀t ti, ti finito e ci uma constante positiva adequada, então o erro de saída converge exponencialmente a zero.

Já no caso de∆µ=0, se||ω||c1√µ+c2d+δpara algumas constantes positivasc1,

c2eδarbitrariamente pequenas,∀t≥t0,t0finito, então o erro de saídae0é da ordem de

µ.

3.4

Comentários finais

(44)
(45)

Capítulo 4

Modelagem do robô móvel

O modelo matemático de um robô móvel pode ser dividido em duas partes distintas: Cinemática e Dinâmica. A primeira é caracterizada pela representação do movimento e das suas restrições, não incluindo as forças dinâmicas que atuam sobre o robô. A segunda representa a resposta do robô à excitação externa no decorrer do tempo, levando em con-sideração as forças dinâmicas atuando sobre sua estrutura, sua massa e seu momento de inércia, o modelo dinâmico dos atuadores (motores c.c.) do sistema e as forças de atrito envolvidas. O modelo que será utilizado neste trabalho é o dinâmico, no qual, quando comparado ao modelo cinemático, é mais simples modelar as perturbações existentes permitindo impor maiores velocidades ao robô móvel.

Alguns artigos [Yang & Kim 1999, Pereira et al. 2000, Lages & Hemerly 2000, Oli-veira & Lages 2001, Tanner & Kyriakopoulos 2002, Lizarralde 1998] encontrados na literatura utilizam uma modelagem dinâmica do robô móvel para o desenvolvimento de suas técnicas de controle. Outros trabalhos apresentam abordagens baseadas apenas no modelo cinemático.

Este capítulo é dedicado a descrever como foi obtido o modelo do robô utilizado1.

Na seção 4.1 é apresentado o modelo cinemático do robô. A dinâmica dos motores c.c. utilizados pelo robô é descrita na seção 4.2. A seção 4.3 traz o modelo dinâmico do robô e, por fim, a seção 4.4 apresenta o modelo, em variáveis de estado, utilizado na tese, o qual associa a dinâmica dos motores c.c. à dinâmica e cinemática do robô.

4.1

Modelagem cinemática do robô móvel

Esta seção descreve o modelo matemático de um robô móvel de formato cúbico com aresta de 70mm, uma bateria (NiMh), dois motores c.c. independentes, um acoplado a cada roda, e uma placa de processamento embarcado, a qual controla o acionamento dos motores e a comunicação com a central de controle (computador).

A Figura 4.1(a) exibe a configuração do robô modelado em relação à sua posição no espaço cartesiano (xp e yp, são as coordenadas do ponto central do robô) e sua orien-tação θp (ângulo entre o vetor de orientação do robô e o eixo x). As informações de posicionamento e orientação são obtidas a partir de um sistema de visão.

1O robô deste trabalho está de acordo com as regras da MiroSot/Fira (Micro Robot World Cup Soccer

(46)

ωrr

vr,fr

yp

xp

θp

(a) Robô móvel com duas rodas tracionadas (b) Restrições não-holonômicas

Figura 4.1: Cinemática do robô

Nomenclatura adotada para o robô da Figura 4.1(a):

ωr = velocidade angular do robô; vr = velocidade linear do robô;

τr = torque resultante no robô; fr = força resultante no robô;

De acordo com a Figura 4.1(a), os deslocamentos incrementais do robô são expressos

por

 

 

˙

xp=vr·cos(θp) ˙

yp=vr·sen(θp) ˙

θp=ωr

(4.1)

um conjunto de equações que corresponde ao modelo cinemático do robô.

O robô modelado está sujeito a uma restrição não-holonômica (ver Figura 4.1(b)), a qual impede que as rodas deslizem lateralmente. Desta forma, o robô somente se desloca na direção em que está orientado.

A velocidade linear (vr) e a angular (ωr) do robô estão relacionadas com as velocida-des angulares das rodas direita (ωd) e esquerda (ωe) através de

ωd ωe

=ωTv

vr

ωr

onde ωTv=

1

/rd d/2rd 1/re d/2re

(4.2)

(47)

4.2. MODELAGEM DINÂMICA DE UM MOTOR C.C. 33

4.2

Modelagem dinâmica de um motor c.c.

A Figura 4.2 apresenta o diagrama esquemático2[Ogata 1997] utilizado para modelar

o motor de corrente contínua (motor c.c.) controlado pela armadura.

Rd,e

id,e Jd,e

Rotor βd,e

Carga ed,e ebd,be

τd,e

Figura 4.2: Diagrama esquemático de um motor c.c. controlado pela armadura

Nomenclatura adotada para o motor da Figura 4.2:

ed,e = tensões de armadura dos motores; Rd,e = resistências dos enrolamentos; Jd,e = momentos de inércia dos rotores;

βd,e = coeficientes de atrito dos motores; id,e = correntes nas armaduras dos motores;

τd,e = torques nas rodas direita e esquerda.

Por questão de simplicidade toda dedução realizada para um motor será válida para os dois motores.

No motor c.c. controlado pela armadura, a corrente de campo é mantida constante, o que resulta em um fluxo constante. Assim, o torque torna-se diretamente proporcional à corrente de armadura, subtraído das perdas pelo atrito viscoso e momento de inércia do rotor, de modo que

τd,e=Kd,eid,e−(Jd,eω˙d,e+βd,eωd,e) (4.3) ondeKd,esão as constantes de torque dos motores.

Quando a armadura está girando, é induzida na mesma uma tensão proporcional ao produto do fluxo e da velocidade angular. Para um fluxo constante, a tensão induzida é ebd.be=Kbd,beωd,eondeKbd,beé a constante de força-contra-eletromotriz.

Com a intenção de relacionar a tensão de armadura com o torque, deve-se obter a equação para o circuito de armadura em função da corrente

id,e= (Rd,e)−1ed,e−(Rd,e)−1Kbd,beωd,e (4.4)

Imagem

Figura 1.4: Estacionamento de um robô móvel: (a) sem restrições; (b) com restrições não-holonômicas
Figura 3.2: Filtro de valor médio (τ → 0)
Figura 3.5: Diagrama de blocos de um controlador VS-MRAC compacto (n ∗ =2)
Tabela 3.2: Algoritmo do controlador VS-MRAC compacto
+7

Referências

Documentos relacionados

Identifica-se as necessidades, neste projeto, como sendo a criação do aplicativo no aparelho, o login, área do administrador, criação do banco de dados, cadastro

Ainda segundo Gil (2002), como a revisão bibliográfica esclarece os pressupostos teóricos que dão fundamentação à pesquisa e às contribuições oferecidas por

Local de realização da avaliação: Centro de Aperfeiçoamento dos Profissionais da Educação - EAPE , endereço : SGAS 907 - Brasília/DF. Estamos à disposição

- Se o estagiário, ou alguém com contacto direto, tiver sintomas sugestivos de infeção respiratória (febre, tosse, expetoração e/ou falta de ar) NÃO DEVE frequentar

➔ O movimento Open Source não é sustentável, uma vez que as pessoas vão parar de desenvolver software livre assim que virem outros fazendo 'um monte de' dinheiro de sobre

A busca por um contato com a natureza (sem dúvida, idealizada), vinculada a uma “fuga do caos urbano”, contribuiu para que o surfe e, anos depois, com a expansão da cidade para

Em 22 de março de 2004, a Companhia e o Governo do Estado aditaram os termos do Acordo Gesp original, (1) consolidando e reconhecendo valores devidos pelo Governo do Estado

Os autores relatam a primeira ocorrência de Lymnaea columella (Say, 1817) no Estado de Goiás, ressaltando a importância da espécie como hospedeiro intermediário de vários parasitos