Introdução ao controle de robôs

Slides:



Advertisements
Apresentações semelhantes
Díodo Quase sempre ocorrem como elementos parasitas em CIs digitais n
Advertisements

1 Estruturas de Controle Márcia J. N. Rodrigues Lucena Especialização em Técnicas e Ferramentas de Apoio à Decisão Departamento.
Por que será que o som é diferente nestas duas circunstâncias?
Modelo planetário: errado Elétrons são descritos por meio de funções de onda Mecânica Quântica : probabilidades.
Transporte em Nanoestruturas. I) Transporte balístico Um material unidimensional (confinado em duas dimensões) transporta carga quando uma voltagem é
CCS – Centro de Componentes Semicondutores Luiz Carlos Moreira/Jacobus W. Swart ASIC´s – Application Specific Integrated Circuits.
Subconsultas em SQL. Subconsulta Estrutura geral SELECT.... FROM.... WHERE [at] OPERADOR ( SELECT... FROM... [WHERE... ]) Declaração SELECT localizada.
Introdução à Consulta 24/3/06. Categorias de comandos DDL : estruturação de objetos de BD Ex. create table, drop index, alter table... DML: manipulação.
Introdução à Lógica de Programação
Concepção de Circuitos e Sistemas Integrados João Paulo Cunha Bolsa Voluntária/PIBIC Prof. André Augusto Mariano, Ph.D. / Bernardo R. B. A. Leite, Ph.D.
Classe de condutividade hidráulica
INTRODUÇÃO À GEOMETRIA DO ESPAÇO-TEMPO
ESTIMATIVAS DE DISTÂNCIA
Prof. Dr. Helder Anibal Hermini
Prof. Dr. Helder Anibal Hermini
1. Equivalência entre portas 2. Derivação de expressões booleanas 3
COMPRESSÃO DE FILMES GRUPO: Alessandra Antunes Vargas Anderson Konzen
Criptografia Quântica : Um Estudo
Gustavo Vieira Pereira
Ilusão de Ótica O termo Ilusão de óptica aplica-se a todas ilusões que «enganam» o sistema visual humano fazendo-nos ver qualquer coisa que não está presente.
Técnicas de Processamento Imagens
O Fluxo de Testes © Alexandre Vasconcelos
Disciplina: Técnicas de Comando
PotenCial ElÉTRICO Universidade Federal do Paraná
Sensores de Presença R. Johnson
Serviços Integrados na Arquitetura da Internet Apresentação: Fernando Nadal.
Sensor de Proximidade Capacitivo
Sensor Fotoelétrico por Sistema de Difusão
Sensor Magnético de Efeito HALL
Prof: Encoder Angular Prof:
Prof: Sensor de temperatura Prof:
Controle de nível de fluido (água)
Prof: Encoder Linear Prof:
Sensor de Umidade Relativa
Sensor Fotoelétrico por Sistema de Barreira
Ciência dos Materiais I
Conversor Analógico Digital
CT-300 – Seminário de Tese 1/25 Um Framework Padrão para Simulação de Modelos de Robôs Móveis de Robôs Móveis Juliano A. Pereira Prof. Carlos H. C. Ribeiro.
CES-41 COMPILADORES Capítulo IV Complementos de Análise Léxica.
CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2013 Capítulo III Comandos de Controle.
Capítulo V Análise Sintática
Jumpers 1. O que são Jumpers
Reômetros e viscosímetros
Transferência de Calor em Interfaces de Sistemas Não-Isotérmicos
TA 733 A – Operações Unitárias II
Curso Técnico em Informática La Salle - Canoas
FUNDAÇÃO CARLOS CHAGAS
TE 054 CIRCUITOS ELETRÔNICOS LINEARES
CAP. 1 AMPLIFICADORES DIFERENCIAIS E DE MÚLTIPLOS ESTÁGIOS
Ewaldo Luiz de Mattos Mehl
Desempenho A rápida taxa de melhoria na tecnologia de computadores veio em decorrência de dois fatores: avanços na tecnologia utilizada na construção.
Linguagens Formais e Tradutores Linguagens Regulares (Revisão)
Marco Antonio Montebello Júnior
PROJETO DE P & D ANEEL /2005 CELESC/UNISUL USO DA TURFA PARA TRATAMENTO DE ÓLEO DE TRANSFORMADORES.
Otimização Aplicada ao Dimensionamento e Operação de Reservatórios
Curso de Programação em C++ Universidade Federal do Ceará Departamento de Engenharia Estrutural e Construção Civil Prof: Evandro Parente Junior Monitor:
Conceitos Básicos de Redes de Computadores e acesso a Internet
Redes para Automação Industrial Capítulo 1: Automação Industrial
Visão Computacional Shape from Shading e Fotométrico Eséreo
SUPERVISÃO E CONTROLE OPERACIONAL DE SISTEMAS
Robótica: Sistemas Sensorial e Motor
Prof. André Laurindo Maitelli DCA-UFRN
SUPERVISÃO E CONTROLE OPERACIONAL DE SISTEMAS
Prof. André Laurindo Maitelli DCA-UFRN
Prof. André Laurindo Maitelli DCA-UFRN
Prof. André Laurindo Maitelli DCA-UFRN
Comunicação CLP através do Driver OPC
Introdução Ciência da Computação estudo de algoritmos –ÊNFASE ao estudo de DADOS armazenamento manipulação refinamento (a partir de dados cru) estrutura.
8. Uma Função de duas Variáveis Aleatórias
Sebastião Samissone Timba
Transcrição da apresentação:

Introdução ao controle de robôs Luiz Marcos

Cinemática x Dinâmica Dinâmica x Atraso Contínuo x Discreto

Tipos de Sistemas de Controle Malha aberta Malha fechada

Malha aberta A entrada define o comportamento do controlador, cérebro do sistema, e este responde agindo no ambiente, sem verificar depois se o nível da grandeza física corresponde de fato à entrada; Não há sensor para observar algum eventual desvio, nem realimentação, para corrigi-lo.

Exemplo Uma fonte de alimentação regulada com transistor é, na realidade, um sistema de controle de malha aberta; Se a corrente da carga variar, a tensão na saída pode variar até algumas dezenas de mV, devido à variação na tensão Vbe.

Transistor

Diagrama de blocos (Malha Aberta) A entrada é o nível desejado da grandeza controlada (comando ou programação). O controlador avalia este sinal e envia um sinal (que pode ser elétrico ou mecânico, conforme o sistema) ao atuador, que é o elemento que age no ambiente de modo a alterar a grandeza. Sistema de Malha Aberta Grandeza não Automático

Diagrama de blocos (M. Aberta) Sistema de Malha Aberta Grandeza não Automático

Aplicações Os SC em malha aberta são usados onde a freqüência ou a conseqüência dos desvios não justificam a complexidade e o custo maior dos em malha fechada. Não são aplicados em robótica (a não ser em casos onde não é necessário checar o erro).

Malha fechada É verificada a ocorrência de desvios Sensor monitora saída, fornecendo um sinal que retorna à entrada, formando uma malha de realimentação. A entrada e esta realimentação se juntam num comparador, que combina ambos e fornece um sinal de erro, diferença entre os sinais, que orienta o controlador.

Exemplo simples O operador de um reservatório verifica se o nível máximo foi atingido através de uma régua de nível, que é o sensor. Sinal de erro, a diferença entre o nível máximo (saída desejada) e o nível atual (saída real), é analisado para abrir ou fechar o registro. Operador é ao mesmo tempo o comparador, o controlador e o atuador neste sistema elementar.

Diagrama blocos (Malha Fechada) Adicionar sensor ao SC de m. aberta; Enviar sinal de erro ao bloco somador que fornece um sinal efetivo ao controlador. Este sinal é a entrada do controlador, que o avalia e tenta corrigir o desvio captado pelo sensor, através de um novo comando ao atuador.

Diagrama de blocos (M. Fechada) Sistema de Malha Fechada Grandeza Automática

Aplicações SC em malha fechada são mais precisos, pois detectam e corrigem os desvios. A maioria dos sistemas atuais, analógicos ou digitais, é deste tipo. Sistemas controle para robótica são necessariamente desta categoria.

Controle Sistema robótico: mede o seu próprio estado e age (decisões autônomas) Feedback Control: originou-se na Grécia antiga. Relógios de água: um grande tanque, um orifício pequeno para medir a vazão, uma válvula para regular a quantidade de água no tanque (mantendo o nível, a pressão é constante).

Redescobrindo os controladores 1600: Controle da temperatura num fogão Variação do volume de mercúrio fecha e abre a entrada de ar 1700: mesmo sistema utilizado para chocar ovos Final do século 16: mecanismo melhorado com melhor sensibilidade. Primeiro controlador comercial...

Sistema de Controle Robô ou dispositivo Sensor Sinal de erro Energia de entrada Estado desejado Sinal de feedback Amplificador Soma s(t) e(t) E(t) Robô ou dispositivo y(t) Sensor y´(t) Estado medido ou real

Exemplo: seguidor de paredes Material: um robo móvel equipado com sensor infra-vermelho Void calibrate(int goal); /*Calibra o sensor definindo uma distância da parede*/ void main() { calibrate(goal); left(100); right(100); while (1) { int wall = analog(LEFT_WALL); if(wall<goal) {left(100); right(0);} else {right(100); left(0); } }

Gráficos (distância x tempo)

Distância x tempo D=30

Virando mais suave void main() { calibrate(goal); left(100); right(100); while (1) { int wall = analog(LEFT_WALL); if(wall<goal) {left(100); right(50);} else {right(100); left(50); } }

Distância x tempo D=40

Sistema de Controle Perturbação Robô Sensor (t) s(t) e(t) u(t) y(t)

Motores

Controladores Liga-Desliga (on-off) Proporcional (P) Proporcional + Integral (PI) Proporcional + Derivativo (PD) Proporcional + Integral + Derivativo (PID)

Controle liga-desliga :

Mecanismo (roda) Roda (massa grande) Engrenagens Sensor (encoder) Roda (massa grande) Engrenagens Sensor (encoder) Motor

Proporcional Ganho é proporcional ao erro medido Exemplo: controlar a posição de um motor void main() { int posit_goal=0; encoder_posit=100; /*Var. compartilhada*/ while (1) { power = posit_goal - encoder_posit; motor(power); }

Posição e potência x tempo 100 -100

Melhorando o Proporcional Introdução de um fator multiplicativo faz ir mais rápido ao ponto desejado void main() { int posit_goal=100; encoder_posit=0; while (1) { power=p_gain*(posit_goal- encoder_posit); motor(power); } Problema com ganhos altos: over-shoot, oscilações. Potência total é desejada se longe do objetivo. Ganho alto pode causar potência alta mesmo estando próximo.

Posição e potência x tempo Ganho = 10 100 -100

Posição e potência x tempo Ganho = 20 100 -100

Posição e potência x tempo Ganho = 50 100 -100

Proporcional derivativo Problema: momento faz ir além do ponto, mesmo desligando o motor Momento = massa x velocidade (diretamente proporcional a velocidade) Dobra velocidade => dobra momento). Termo derivativo resolve overshooting e oscilações

Proporcional derivativo Introdução do term d_gain (velocidade) void main() { int posit_goal=0; encoder_posit=100; while (1) { power=p_gain*(posit_goal- encoder_posit) + d_gain*encoder_velocity; motor(power); }

Posição e potência x tempo 100 -100

Integral Usa um integrador como controlador (um circuito que executa a operação matemática da integração). Soma produtos dos valores instantâneos de entrada por intervalos de tempo t. Desde o instante inicial até o final (período de integração). Isto corresponde à área entre a curva da grandeza e o eixo do tempo, num gráfico.

Integral (cont.) Ex.: Se grandeza = G (const), integral entre t1 = 0 e t2=j será igual a G t2 (ou Gj) = área, no gráfico da grandeza, de um retângulo naquele intervalo de tempo. Um gráfico da integral de t1 a t2 é uma reta desde 0 até Gj, pois a área (ou o somatório) aumenta à medida que o tempo passa.

Integral (cont) Integrador torna o sistema lento Resposta depende da acumulação do erro na entrada Leva a um erro de regime nulo (não é necessário um sinal de entrada para haver saída do controlador) Acionamento do atuador após o período transitório. Assim o controle é muito preciso, embora mais lento.

Posição e potência x tempo 100 -100

Hierarquia de controle (robô móvel) Sensores Externos Planejamento da Trajetória Controlador Motores Posição Velocidade Sensor interno Sensor interno

Níveis de controle 3 níveis de controle: controlador de velocidade dos motores; controlador de ângulo e velocidade linear do robô; desvio de obstáculos e busca pelo alvo. Obstáculo Alvo

Controlador dos motores PID v1 v2 u1 u2 SP1 SP2 e1 e2 - +

Controlador de ângulo e velocidade linear de Velocidade Linear - + de Ângulo e SP1 SP2 Cinemática do Robô Motor 2 Motor 1 PID Controlador SP X e v1 v2 u1 u2 SP1 SP2 e1 e2 + -

Desvio de obstáculos Obstáculo teta=180/pi*atan((S1*sin(pi/4)-S3*sin(pi/4))/(S2+S1*cos(pi/4)+S3*cos(pi/4)));

Busca do alvo e dy dx Alvo d

(integração dos enconders) Angulo e velocidade linear Sensores de distância Motores Velocidade Obstáculo Decisão Alvo Velocidade dos motores Posição (integração dos enconders)

Controle de alto nível (Comportamento) O relacionamento funcional dos estímulos sensoriais com as ações efetuadas sobre os atuadores do robô Ações devem ser executadas a partir de um plano de ação e de um modelo interno do ambiente

Tipos de controle 1) Reactive control 2) Deliberative control 3) Hybrid control 4) Behavior based control (sub-sumption)

Controle reativo Não pense, reaja! Ambiente imprevisível cheio de obstáculos estáticos e dinâmicos Restrição de tempo de execução da tarefa Desenvolvimento de sistemas onde as ações dos robôs móveis são determinadas pelas situações imediatas do ambiente, detectadas por seus sensores.

Controle reativo (cont.) Facilmente implementável Não requer intermédio do cérebro Apenas um mapeamento de sensores a ações: Construir um conjunto de regras Exige pouco processamento on-line Alta velocidade Similar a reflexos em seres humanos Muito usado em seres inferiores (siris)

Exemplo visto Robô com emissores/sensores IR na frente e duas rodas laterais: Nenhum sensor satura: em frente Satura direito: vire à esquerda Satura esquerdo: vire à direita Satura os dois: vire aleatoriamente para um dos lados

Controle deliberativo Planeje e pense bastante, então execute ação! Certas tarefas permitem uma melhor análise do ambiente e planejamento baseado em informações adquiridas via sensores e dados conhecidos Pode levar o robô a encontrar uma boa solução para sua tarefa, mesmo perdendo tempo de processamento para tomar a decisão

Controle híbrido Seja eficiente! Pense se der tempo! Comportamento deliberativo pode comprometer o tempo de resposta de um robô Idéia: unir os comportamentos Caso seja necessário (e dê tempo para) pensar, faça, caso contrário, execute uma ação de forma reativa.

Arquitetura subsumption (MIT) Baseado em comportamentos básicos Comportamentos de mais alto nível são definidos por vários de mais baixo nível Processo markoviano (definir ação de alto nível em função do estado perceptual atual de um robô). Uso de aprendizado ou de heurísticas para definir políticas (Q-Learning, NN).