progr robo zug [modo de compatibilidade]recursos do zug dados complementares • comprimento: 175 mm...
Post on 27-Jan-2021
3 Views
Preview:
TRANSCRIPT
-
Programação do Robô Zug
Alex Vidigal Bastoswww.decom.ufop.br/alex/unipac.htmlalexvbh@gmail.com
1
-
Agenda
• Recursos do Zug
• Robô Zug
• Controlando o Motor
• LED e BIP
2
-
Recursos do Zug
3
-
Recursos do Zug
Dados Complementares
• Comprimento: 175 mm
• Largura: 145 mm
• Altura 75 mm
• Peso
• Alimentação: 6 pilhas AA
• Software Basic
• Entradapara fonte externa 9 a 12v
4
• Compatível com Windows XP ou inferior
• Requer porta serial RS 232 no computador
• Cabo serial (incluso no kit)
• Sensores: de toque frontal 220º
• sensor de luz ambiente 180º
• sensor de laser
• sensor de cores
• sensor de som para comando verbal
-
O robô Zug
O controle do robô é feito por um microcontroladorprogramável na linguagem Basic, que é de fácil compreensão.
Com o software Basic, é possível controlar todas as portasdo microcontrolador.
5
-
O robô Zug
6
-
O robô Zug
• As portas de comunicação do microcontrolador são bi-direcionais, podem ser saídas ou entradas depende somenteda programação que você fizer.
• Se a porta for utilizada como saída, ela acionará ummotor, um led ou um bip, se for utilizada como entrada, elarecebe sinal externo dos sensores.
7
-
Exemplo (lógica 0/1)
8
-
Controlando o motor
• A corrente elétrica deste sinal é baixa não acionandocargas com grande potência, portanto se faz necessárioamplificar o sinal elétrico de saída.
• Utiliza-se um transistor, que se comporta como uma chavepara ligar cargas, amplificar a corrente e acionar um relé dealta capacidade de corrente para mover o motor do robô.
9
-
Controlando o motor
10
-
Controlando o motor
• O microcontrolador controla os motores dos robôs,obedecendo a programação. Os sinais de acionamento dosmotores saem pelas portas de comunicação, compostas pelasportas 1 até 4.
11
-
Controlando o motor
12
-
Controlando o motor
13
-
LED e BIP
• O robô possui um led programável, um bip programável,
e um gerador de som;
• O acionamento do led e do bip, são feitos pelas portascorrespondentes aos pin 0 e pin 7;
14
-
LED e BIP
• O robô possui um led programável, um bip programável,
e um gerador de som;
• O acionamento do led e do bip, são feitos pelas portascorrespondentes aos pin 0 e pin 7;
15
-
LEDe BIP
16
-
LEDe BIP
17
-
Sensores de Toque
• O robô ZUG possui 2 entradas programáveis para ligar sensores de toque, detectando as colisões do robô com obstáculos:
porta 5 e porta 6, ativos no nível lógico 1.
• Chamamos de entrada quando o microcontrolador recebe sinal elétrico de fora, pelas portas de comunicação, de forma digital. Ligado ou desligado.
18
-
Sensores de Toque
19
-
Sensores de Toque
20
-
Programando o Robô Zug
• O que devemos saber para programar? A linguagem de programação Basic Step.
21
-
Programando o Robô Zug
• O que devemos saber para programar? A linguagem de programação Basic Step.
22
-
Alguns comandos
• Output
- Exemplo: output 7
- significa que a porta 7 é configurada como uma saída.
• Pin
- Exemplo: Pin 7 = 0
- significa que a porta 7 é desligada.
23
-
Temporizando uma porta saída
• pause
- Exemplo: pause 2000
- faz o programa esperar 2 000 milisegundos(ms).
• goto
- Exemplo:
retorno:
......
goto retorno
- ele salta para onde está escrito a palavra retorno, reiniciando todo o ciclo.
24
-
Exercício
Nosso objetivo agora é fazer um pisca-pisca com o led da porta 7 do microcontrolador do robô. Vejamos a estratégia para a execução do programa.
• 1º ligar o led;
• 2º pause___; aguardar 2 segundos.
• 3º desligar o led;
• 4º pause___ ; aguardar 2 segundos.
• 5º retornar ao primeiro passo
25
-
Comentários
• É possivel escrever comentários na área de trabalho, ao lado da programação, desde que precedido por apóstrofo ( ’ ). Com a presença do apóstrofo o hardware desconsidera , não entende como instrução.
• Este hábito ajuda o estudante de robótica e programação a entender o programa.
Exemplo: output 7 ‘ declara a porta como saída
26
-
Gerando Sons
• O robô possui um BIP na porta 0 e um conector para ligação
externa de um altofalante de 8 ohms.
27
-
Exercício
Nosso objetivo agora é fazer um programa para fazer um bip a cada 1 segundo; desligando e ligando o bip.
28
-
Recebendo Sinais Externos
• O microcontrolador do robô percebe sinais externos vindos dos sensores, desde que as portas sejam devidamente programadas.
• O primeiro passo é configurar a porta para ser uma entrada, com o comando input. Vamos utilizar a entrada ligada ao sensor da porta 5 lado direito ue é o sensor de toque frontal do lado direito;
29
-
Exemplo
• Fazer com que o robô ligue o led (porta 7),ao toque do sensor frontal.
Como que o microcontrolador vai saber que tocamos no sensor da porta 5?
if pin5 = 1 then led
30
-
Exemplo
31
-
Exercício
1) Desenvolva um programa para o led desligar quandopressionar
o sensor frontal?
2 - Faça o led piscar quando pressionar o sensor frontal.
3 - Faça um programa para ligar o led, quando pressionar obotão frontal, e desligar quando pressionar a 2ª vez.
4 - Faça o programa ligar e desligar o bip a cada toque no sensoralternadamente.
32
-
Recebendo Sinais Externos
• O microcontrolador do robô percebe sinais externos vindos dos sensores, desde que as portas sejam devidamente programadas.
• O primeiro passo é configurar a porta para ser uma entrada, com o comando input. Vamos utilizar a entrada ligada ao sensor da porta 5 lado direito ue é o sensor de toque frontal do lado direito;
33
-
Programando os motores
34
-
Programando os motores
O desenho ao lado mostra como devemos programar os motores M1 e M2, visto o robô de cima. O motor 1 (M1) fica a direita, o motor 2 (M2) fica a esquerda.
• pin1 = programa a porta 1
• pin2 = programa a porta 2
• pin3 = programa a porta 3
• pin4 = programa a porta 4
35
-
Exercícios - Motores
Programa 1 - Robô anda para frente um tempo
Programa 2 - Robô anda para trás um tempo
Programa 3 - Robô gira 90°,com uma só roda
Programa 4 - Robô gira no próprio eixo
36
-
Exercícios - Motores
• 1 - Quantos milisegundos são necessários para o robô
girar 90°?
• 2 - Quantos milisegundos são necessários para o robô
girar 180°?
• 3 - Quantos milisegundos são necessários para o robô
girar 360°?
37
-
Exercícios - Obstáculos
• Como vamos programar o robô para desviar de obstáculos?
• É simples. Vamos passo a passo.
• Em ordem, como proceder na programação.
• 1° O robô vai em frente;
• 2° Bate o sensor do lado direito (porta 5);
• 3° Desligam-se os motores, e o robô pára;
• 4º O robô dá uma ré (anda para trás);
• 5º O robô gira 90° para a esquerda.
38
-
Perguntas
39
top related