Download - Robotino Campus Party
Robótica Móvel - Robotino®
28.12.2009 1
Robótica Móvel - Robotino®
Portas USB, Serial
Cartão de Memória
Entradas e SaídasDigitais e Analógicas
Ethernet
Cartão de Memória
28.12.2009 2
Robótica Móvel - Robotino®
Motor com encoder
Sensor anti-colisão
28.12.2009 3
Sensores ópticos analógicos – detecção de 4 a 30cm
Robótica Móvel - Robotino®
Display LCD
Led indicadorScroll para cima
Liga/DesligaEnter
28.12.2009 4
Retorna ao menu anterior Scroll para baixo
®
Ligue o controlador;
Primeiro contato com o Robotino®
Ligue o controlador;
• Verifique o endereço de IP no display;
• Selecione a linguagem em inglês;
• Utilize as setas para rolar o Menu e „Enter“ para selecionar a opção desejada;
• Vá até a opção „Demo“ e selecione a opção „Circle“. Verifique se todas as rodas estão em funcionamento. Caso contrário reinicie o controlador;
• Teste os programas Demo, selecionando alguns deles e verifique o comportamento do Robotino em cada caso
• O programa demonstração „Line follow“ utiliza a câmera e necessita um piso claro onde exista uma linha desenhada;
28.12.2009 5
onde exista uma linha desenhada;
Robótica Móvel - Robotino®
• Retire a parte superior de comando do Robotino;• Verifique a parte mecânica e elétrica;• Desmonte a parte elétrica e mecânica;
F t d t õ á i d • Faça todas as anotações necessárias para poder remontar posteriormente;• Observe atentamente as conexões elétricas dos motores;;• Identifique e relacione as peças para sua informação;
28.12.2009 6
Robótica Móvel - Robotino®
• Motor DC (GR 42x25)• Voltagem nominal 24 VDC• Velocidade nominal 3600 RPM• Torque nominal 3,8 Ncm 3.8• Corrente nominal 0,9 A• Starting torque Ncm 20• Velocidade sem carga 4200 RPM• Velocidade sem carga 4200 RPM
1 – Motor DC2 – Encoder3 – Rodas Omnidirecional4 C i d
28.12.2009 7
4 – Caixa de engrenagem5 – Correia dentada
Robótica Móvel - Robotino®
28.12.2009 8
®
Ligue o controlador;
Primeiro contato com o Robotino®
Ligue o controlador;
• Verifique o endereço de IP no display;
• Selecione a linguagem em inglês;
• Utilize as setas para rolar o Menu e „Enter“ para selecionar a opção desejada;
• Vá até a opção „Demo“ e selecione a opção „Circle“. Verifique se todas as rodas estão em funcionamento. Caso contrário reinicie o controlador;
• Teste os programas Demo, selecionando alguns deles e verifique o comportamento do Robotino em cada caso
• O programa demonstração „Line follow“ utiliza a câmera e necessita um piso claro onde exista uma linha desenhada;
28.12.2009 9
onde exista uma linha desenhada;
l h f b i ® i
Controle Remoto com o Software Robotino® View.
• Instale the software Robotino® View;• Siga os passos da instalção até o final• Você deve fazer a instalação num computador com placa Ethernet WiFi• Inicie o controlador do Robotino. Será criada uma rede WLAN network chamada Robotino x.xInicie o controlador do Robotino. Será criada uma rede WLAN network chamada Robotino x.x
• Faça os ajustes de configuração da rede Wireless no computador• selecione a opção de configuração automática da rede
l i d á i d• selecione endereçamento automático de IP• Busque as redes WLAN disponíveis. Selecione a rede Robotino x.x• Conecte nessa rede
• Inicialize o Robotino®• Abra o software Robotino® View e selecione no menu File -> New -> Function block program• Ajuste o endereço de IP Address correto e click no ícone „connection“ para se conectar com
t l d
28.12.2009 10
o controlador
Robotino® View
1 Barra do Windows;;2 Barra de Ferramentas para
criar e salvar novos programas, para iniciar, pausar e parar a
ã d U execução de programas. Um duplo clique no botão Stop, provoca a parada de todos os programas ativos;p g ;
3 Inserção do endereço IP do robô a ser controlado;
4 Botão para estabelecer ou cortar a comunicação online cortar a comunicação online com o controlador do robô;
28.12.2009 11
Robotino® View
5 Biblioteca com todos os blocos 5 Biblioteca com todos os blocos de função;
6 Display dos dados de funcionamento durante o acesso remoto;
7 Acesso a parâmetros individuais internos do blocos de função;
8 Clicando no bloco de função, uma 8 Clicando no bloco de função, uma nova janela será mostrada com os parâmetros correspondentes de cada bloco;
9 St t d i t9 Status do sistema;10 Listagem de valores e
parâmetros do programa;11 Área de programação;
28.12.2009 12
11 Área de programação;12 Barra de navegação dos
programas;
áProgramação Básica
Você pode encontrar no item Help uma descrição de funcionamento de todos os
• Criar um novo programaC i t t
p p çblocos utilizados na programação com Robotino® View
• Carregar um programa existente• Inserir blocos de função num programa• Estabelecer a conexão entre os blocos de função• Executar um programaExecutar um programa• Estabelecer a conexão com o Robotino• Selecionar blocos de função a partir da biblioteca
Existem diversos programas exemplos armazenados na memória do controlador do Robotino, além de alguns exemplos no item Help
28.12.2009 13
T f 1 C t l d M tTarefa 1: Controle do Motor• Inicie o Robotino View• Abra um novo programa e nomeiep g• Estabeleça a conexão com o Robotino• Click e arraste o bloco de função Constant na pasta Generator• Click e arraste o bloco de função Motor• Click e arraste o bloco de função Motorna pasta Robotino Hardware• conecte o bloco Constant à posição Velocidade do bloco do Motor;
• Velocidade atual• Posição relativa
•Altere o valor da constante e verifique o giro da roda
• Velocidade (nr. pulsos/ ms)• Prioridade: default = 1 • Posição relativa
(contagem de incrementos)• Corrente do motor em mA
• Reset • Freio
28.12.2009 14
número de incrementos do encoder/revolução = 2048
C t l d M i t
• Tarefa - Pare o motor após uma revolução
Controle de Movimentos
p çcompleta da roda.
• Observe que o motor deve ser parado quando o valor de incrementos chegar a 16 x 2048 = 32 768 incrementos (16 por conta da taxa de 32.768 incrementos (16 por conta da taxa de transmissão)
• Conecte a segunda saída do bloco Motor com a primeira entrada do bloco Compare.
• Insira um bloco Constant com o valor total de incrementos.
• Insira outro bloco Constant, para fazer o Reset. Este reset irá zerar a contagem de incrementosEste reset irá zerar a contagem de incrementos.
• Verifique os resultados, alterando a velocidade aplicada sobre o motor.
28.12.2009 15
C t l d M i tControle de Movimentos
O i t d R b ti d f it O movimento do Robotino pode ser feito em qualquer direção, a partir do acionamento sincronizados dos motores
28.12.2009 16
C t l d M i tControle de Movimentos
Motor 1 Motor 2 Motor 3 Direção do Movimento
Positivo Positivo Positivo Movimento no sentido anti-horário, sem deslocamento lateral
Positivo Positivo Desligado Movimento no sentido horário com pequeno raio
Positivo Positivo Negativo Movimento no sentido horário com grande raio
Positivo Desligado Positivo Movimento no sentido horário com pequeno raio
Positivo Desligado Desligado Movimento no sentido horário com raio médio
Positivo Desligado Negativo Deslocamento a 300 graus
Positivo Negativo Positivo Movimento no sentido horário com grande raioPositivo Negativo Positivo Movimento no sentido horário com grande raio
Positivo Negativo Desligado Deslocamento a 0 graus
Positivo Negativo Negativo Movimento no sentido anti-horário com grande raio
28.12.2009 17
C t l d M i tControle de Movimentos
Motor 1 Motor 2 Motor 3 Direção do Movimento
Desligado Positivo Positivo Movimento no sentido horário com pequeno raio
Desligado Positivo Desligado Movimento no sentido horário com raio médio
Desligado Positivo Negativo Deslocamento a 240 graus
Desligado Desligado Positivo Movimento no sentido horário com raio médio
Desligado Desligado Desligado Parado
Desligado Desligado Negativo Movimento no sentido anti-horário com raio médio
Desligado Negativo Positivo Deslocamento a 60 grausDesligado Negativo Positivo Deslocamento a 60 graus
Desligado Negativo Desligado Movimento no sentido anti-horário com raio médio
Desligado Negativo Negativo Movimento no sentido anti-horário com pequeno raio
28.12.2009 18
C t l d M i tControle de Movimentos
Motor 1 Motor 2 Motor 3 Direção do Movimento
Negativo Positivo Positivo Movimento no sentido horário com grande raio
Negativo Positivo Desligado Deslocamento a 180 graus
Negativo Positivo Negativo Movimento no sentido anti-horário com grande raio
N ti D li d P iti D l t 120 Negativo Desligado Positivo Deslocamento a 120 graus
Negativo Desligado Desligado Movimento no sentido anti-horário com raio médio
Negativo Desligado Negativo Movimento no sentido anti-horário com pequeno raio
Negativo Negativo Positivo Movimento no sentido anti-horário com grande raio
Negativo Negativo Desligado Movimento no sentido anti-horário com pequeno raio
Negativo Negativo Negativo Movimento no sentido horário sem deslocamento lateral
28.12.2009 19
Negativo Negativo Negativo Movimento no sentido horário, sem deslocamento lateral
C t l d M i t
• Arraste mais dois blocos Motor e dois
Controle de Movimentos
blocos Constant
• Conecte os blocos Motor e Constant
• Configure na janela Motor, os três motores para aturem de forma independente;
• Insira valores nos blocos Constant e movimente o Robotino em diferentes direções conforme a tabela fornecidadireções conforme a tabela fornecida.
• Movimente o Robotino lateralmente utilizando a relação (v, -2v, v) e (-v, 2v, -v)
28.12.2009 20
C t l d M t Cl d L C t lControle do Motor - Closed Loop Control
O bloco Motor possui controle PID para acionamento dos motores em malha fechada
Duplo click
Na janela correspondente você tem acesso aos valores de PID
• kp = Proporcional – valor de PID – controle• kj = Integral – valor de PID – controle• kd = Diferencial – valor de PID – controle
28.12.2009 21
Bl d F ã G tBloco de Função - Generator
Blocos geradores de função: Onda quadrada, senoidal, triangulo, valor constante e tempog ç q g p
Altera o nome clicando em Apply
Altera a função de saída
A = Amplitude -> velocidade do motor
28.12.2009 22
F = frequência ( = Hz = numero de sinais/seg )Pw = tempo do sinal ( ms )
Bl d F ã SBloco de Função - Scope
OsciloscópioTrês canais de visualização, permite o ajuste da escala do canal, do tempo, etc..
28.12.2009 23
T f 2 Cl d L C t lTarefa 2: Closed-Loop Control
Altere os parâmetros de PID para o controle em malha fechada dos motores
Monte o circuito para observar o comportamento do Robotino.• Altere a amplitude, a frequencia e o tempo do sinal de ( Pw);• Altere os parâmetros de PID do controlador do motor e visualize o comportamento do Altere os parâmetros de PID do controlador do motor e visualize o comportamento do
Robotino;
28.12.2009 24
Bl d F ã O id iBloco de Função Omnidrive
Entrada:Entrada:v1 – velocidade atual do motorv2 – velocidade atual do motorv3 – velocidade atual do motor
Entrada:vx – set (mm/seg)vy – set (mm/seg)R t t ( / )
Saída:v1 – set (p/ms)v2 – set (p/ms)
3 t ( / )Rot – set (graus/seg) v3 – set (p/ms)
Saída:vx – velocidade atual direção xv2 – velocidade atual direção yv3 – velocidade rotacional atual
28.12.2009 25
T f 3 C t l d M i t O id iTarefa 3: Controle de Movimentos com Omnidrive
Monte os circuitos sugeridos para entender o funcionamento do Bloco Omnidrive
Movimento na direção X
28.12.2009 26
T f 3 C t l d M i t O id iTarefa 3: Controle de Movimentos com Omnidrive
Movimento na direção Y
28.12.2009 27
T f 3 C t l d M i t O id iTarefa 3: Controle de Movimentos com Omnidrive
Movimento no sentido horário ou anti-horário
28.12.2009 28
Painel de Controle e JoystickO Painel de Controle e o Joystick permitem que o Robotino seja movimentado remotamente sem a jexecução de um programa específico. Para o Joystick deve ser selecionado para cada botão, o respectivo comando de execução de movimento.N i l d C t l l id d é j t d lid No painel de Controle a velocidade é ajustada no slide inferior. O controle é totalmente manual, bastando montar um circuito como mostrado abaixo.
Saída:vx = movimento na direção Xvy = movimento na direção YO t i l
28.12.2009 29
Omega = rotacional
âTarefa – Movimentar o Robotino a uma distância fixa
Robotino deve se deslocar a uma distância de 1 metro do ponto de partida
• Ajuste a velocidade para 100 mm/s. • Ajuste o tempo para 10 segundos (10000)• Inicie o programa e o relógio. Verifique a precisão do movimento e faça Inicie o programa e o relógio. Verifique a precisão do movimento e faça eventuais ajustes de parâmetros.
28.12.2009 30
âTarefa – Movimentar o Robotino a uma distância fixa
28.12.2009 31
á
Objetivo da tarefa
Movimentar o Robotino ao redor de obstáculo
Objetivo da tarefa
• Movimento em várias direções • Funcionamento de sensores de distânciau c o a e to e se so es e stâ c a• Sensores aplicados para controle
Área de trabalho
Vamos colocar um objeto cilindrico, diâmetro aproximado de 200mm e altura mínima de 150mm. O Robotino deve mover-se ao redor do objeto, mantendo a câmera voltada para o objeto, mantendo a orientação. j , ç
28.12.2009 32
áMovimentar o Robotino ao redor de obstáculo
28.12.2009 33
áMovimentando ao redor de obstáculo
28.12.2009 34
T f S i li h iTarefa - Seguir uma linha no piso
O Robotino deverá seguir uma linha feita com fita não metálica utilizando o sinal dos sensores O Robotino deverá seguir uma linha feita com fita não metálica, utilizando o sinal dos sensores ópticos
Área de Trabalho• Monte os sensores ópticos conforme instruções • Marque o caminho no piso, com a fita não metálica • Ajuste a sensibilidade dos sensores, de forma a obter o sinal com precisão
A estratégia pode ser a seguinte:Robotino movimenta-se para frente;Se o sinal do sensor da direita é alto, mova o Robotino para a esquerda;p qSe o sinal do sensor da esquerda é alto, mova o Robotino para a direita;Parâmetros: o sinal dos sensores deve ser usado para definir os limites direita/esquerda;
o movimento de rotação do Robotino deve estar associado aos limitesvelocidade de avanço
28.12.2009 35
velocidade de avanço
Conexão do sensor óptico 2
Conexão do sensor óptico 1
28.12.2009 36
28.12.2009 37
T f S i li h iTarefa - Seguir uma linha no piso
O Robotino deverá seguir uma linha feita com fita metálica, utilizando o sinal do sensor indutivo
Área de Trabalho• Monte o sensor indutivo conforme instruções • Marque o caminho no piso, com a fita metálica • Ajuste a sensibilidade do sensor, de forma a obter o sinal com precisão
A estratégia pode ser a seguinte:Robotino movimenta-se para frente;Se o sinal do sensor é alto, mova o Robotino para a direita;pSe o sinal do sensor estiver baixo, mova para a esquerda;Parâmetros: o sinal do sensor deve ser usado para definir os limites máximo e mínimo;
o movimento de rotação do Robotino deve estar associado aos limitesvelocidade de avanço
28.12.2009 38
velocidade de avanço
M t d S I d tiMontagem do Sensor Indutivo
Posição de montagem do sensor indutivo
28.12.2009 39
Conexão do sensor indutivo
28.12.2009 40
T f 5 S l ã 1Tarefa 5: Solução 1
28.12.2009 41
T f 5 S l ã 2Tarefa 5: Solução 2
28.12.2009 42
T f 5 S l ã 3 Tarefa 5: Solução 3
28.12.2009 43
T f 6 I t d ã P t d ITarefa 6 – Introdução ao Processamento de Imagem
• Imagem da câmera em tempo real
• Seleção de borda do objeto a ser monitorado.Seleção de borda do objeto a ser monitorado.
• A busca pode ser feita na parte inferior da imagem.
P d d fi id á d bj • Pode ser definida uma área do objeto para utilização na lógica do programa
• O bloco LineDetector determina a coordenada X da
28.12.2009 44
O bloco LineDetector determina a coordenada X da borda da linha
T f 6 S i li h d P t d ITarefa 6 – Seguir uma linha usando Processamento de Imagem
Usando o Processamento de Imagens
• Conecte o cabo USB da câmera a uma das portas do controlador;• Desenhe um caminho no piso, usando uma fita colorida (num piso branco a fita preta dá um
excelente contraste);• Posicione o Robotino de forma que a câmera possa visualizar a linha no piso;• Abra um novo programa e selecione os blocos Camera e Line Detector;• Abra um novo programa e selecione os blocos Camera e Line Detector;• Duplo click para visualizar as imagens, acompanhe a cruz vermelha, na parte inferior;• Desenvolva o programa, usando como estratégia de controle, manter a linha no centro da
imagem;
28.12.2009 45
T f 6 S i li h d P t d I
Rodando a aplicação
Tarefa 6 – Seguir uma linha usando Processamento de Imagem
A estratégia de controle é manter a linha no centro da câmera
28.12.2009 46
Reconhecimento de Objeto por Imagem
• Seleção de padrão de coresAjuste a intensidade da cor para uma definição melhor do objeto selecionado;Ajuste a intensidade da cor, para uma definição melhor do objeto selecionado;• O Bloco Extractor irá calcular as coordenadas do centro e a área do objeto selecionado;
Segmento detectado
28.12.2009 47
g
D fi i d F C l idDefinindo a Forma Colorida
Usando a imagem da câmera selecione na caixa Camera os parâmetros para a área colorida canal resolução gráfica e parâmetros para a área colorida, canal, resolução gráfica e qualidade.
Seqüência para definição do segmento de cor a ser definido
• Click no símbolo da câmera para permitir a definição dos Click no símbolo da câmera para permitir a definição dos parâmetros;• No lado direito da caixa Segment Extractor escolha o padrão circular ou retângulo para marcar o segmento colorido;
U d fi i t d d d i • Use o mouse para definir um segmento adequado da imagem da câmera no bloco Extractor;• Utilize a seta (->) para gravar o segmento de cor selecionado;• É possível adicionar outros segmentos de cor;
28.12.2009 48
poss vel ad c o a out os seg e tos de co ;
R h i t d Obj tReconhecimento do Objeto
Bloco Segment Extractor
Saída- Coordenadas x, y do centro do segmento selecionado - Área do segmento visualizado (definido pelo número de pixels)
0 se o segmento não for detectado e 1 se for detectado- 0 se o segmento não for detectado e 1 se for detectado
28.12.2009 49
R h i t d Obj tReconhecimento do Objeto
28.12.2009 50