32
Programa de Treinamento RoboLab 2.0 Módulo Intermediário motor Sensor de rotação Sensor de luz Sensor de toque Sensor de temperatura RCX 2.0

Treinamento robolab intermediario 20100316

Embed Size (px)

Citation preview

Page 1: Treinamento robolab intermediario   20100316

Programa de Treinamento RoboLab 2.0

Módulo Intermediário

motorSensor de rotação

Sensor de luz

Sensor de toque

Sensor de temperatura

RCX 2.0

Page 2: Treinamento robolab intermediario   20100316

Relembrando detalhes do RCX...

Processador: Hitachi H8 8 bit microcontroller running at 5 to 20Mhz

Memory: 32K of RAM

3 Saidas para motores e lampadas(A, B, C)

3 Entradas para sensores(1, 2, 3)

Seleção de programas(1-5)

Iniciar/parar o programa

Liga/desliga

Selecionar visualização de display

Dysplay LCD:

Temporizador, valores dos sensores, Status do programa

Porta de comunicação infra-vermelho (IR)

Page 3: Treinamento robolab intermediario   20100316

Revisando alguns ícones...

Motor A - Este ícone aciona o “motor A”.

Espera por 1s - Neste ícone o programa irá ficar parado durante 1s neste ícone.

Pare A - Este ícone interrompe o acionamento de qualquer coisa ligada a porta de saída A

Page 4: Treinamento robolab intermediario   20100316

Espera por 1s - Neste ícone o programa irá ficar parado durante 1s neste ícone.

Lâmpada A - Este ícone aciona a “lampada A”.

Pare A - Este ícone interrompe o acionamento de qualquer coisa ligada a porta de saída A

Pulo e pouso - Fazem com que esta parte do programa que se encontra entre os ícones pulo e pouso se repita infinitamente.

Revisando alguns ícones...

Page 5: Treinamento robolab intermediario   20100316

2

Espera por 1s - Neste ícone o programa irá ficar parado durante 1s neste ícone.

Lâmpada A - Este ícone aciona a “lampada A”.

Pare A - Este ícone interrompe o acionamento de qualquer coisa ligada a porta de saída A

Loop - Fazem com que esta parte do programa que se encontra entre os ícones do loop se repita por duas vezes.

Revisando alguns ícones...

Determina o número de vezes que o loop irá se repetir

Page 6: Treinamento robolab intermediario   20100316

Relembrando sobre Sensores!!!

Page 7: Treinamento robolab intermediario   20100316

Sensor de toque

Funciona como um interruptor, porem pode ser programado de varias maneiras.

Neste programa o “motor A” vai acionar após o sensor de toque ser pressionado e parar após 1s. (Espera por Pressionar)

Neste programa o “motor A” vai acionar se o sensor de toque estiver solto e não vai acionar se estiver pressionado. (Condicional Sensor de Toque)

Page 8: Treinamento robolab intermediario   20100316

Sensor de Luz

Realiza a leitura da intensidade de luz que encontra-se no ambiente.

35

Neste programa o “motor A” vai acionar se o a luminosidade do ambiente estiver maior que 35% e não vai acionar se a luminosidade do ambiente estiver menor que 35%. (Condicional Sensor de Luz)

35

Neste programa o “motor A” vai acionar após o Sensor de Luminosidade atingir intensidade de luz maior que 35% e parar após 1s. (Espera por luz)

Page 9: Treinamento robolab intermediario   20100316

Ok!!!

Podemos iniciar o RoboLab 2.0 Nível Intermediário???

Page 10: Treinamento robolab intermediario   20100316

O que é um Algoritmo???

Page 11: Treinamento robolab intermediario   20100316

Algoritmo - Uma seqüência de ações finitas encadeadas e lógicas que descrevem como um determinado problema deve ser resolvido.

Algoritmo

Exemplos:

Uma descrição narrativa

Um fluxograma convencional

Um programa de computador

Page 12: Treinamento robolab intermediario   20100316

•Usar somente um verbo por frase•Imaginar que você está desenvolvendo um algoritmo para pessoas que não trabalham com informática•Usar frases curtas e simples•Ser objetivo•Evite usar palavras que tenham sentido dúbio•Procure dividir o problema em etapas menores.

Regras para construção do Algoritmo

Para escrever um algoritmo precisamos descrever a seqüência de instruções, de maneira simples e objetiva. Para isso utilizaremos algumas técnicas:

Page 13: Treinamento robolab intermediario   20100316

•Separar os ingredientes•Bater os ovos em neve na batedeira•Acrescentar açúcar e farinha de trigo•Colocar extrato de baunilha •Acrescentar uma colher de manteiga•Acrescentar uma colher de Fermento em pó•Verificar se esta doce o suficiente•Colocar na forma•Colocar no forno e assar•Retirar do forno•Tirar da forma e servir•Fim do processo

“Receita de um bolo”

Page 14: Treinamento robolab intermediario   20100316

Qual a primeira coisa que você faz quando você acorda?

Page 15: Treinamento robolab intermediario   20100316

Exercício

1- Desenvolva um algoritmo descrevendo as principais ações desde o momento que você acorda até o momento em que você sai do banheiro.

Page 16: Treinamento robolab intermediario   20100316

Fluxograma

Terminal: Inicio e Fim de um processamento

Decisão: Decisão a ser tomada

Processamento: Processamento em geral

Conexão: Conexão entre símbolos

Exibir/Saída: Mostra informações ou resultados no video

Page 17: Treinamento robolab intermediario   20100316

Exemplo de Fluxograma

Coma um pedaço de bolo

Inicio

Esta satisfeito

?

Fim

S

N

Page 18: Treinamento robolab intermediario   20100316

Início

FIM

Faça um fluxograma contendo os processos e tomada de decisões para que um robô saia do inicio, representado em amarelo, e vá até o fim, representado em vermelho.

Exercício

Eixo X

Page 19: Treinamento robolab intermediario   20100316

Resposta

p/ frente

Ande 1 p/ frente

Inicio

Fim

X=0Y=0

Ande 1 p/ esquerda

X=X+1 Y=Y+1

p/ esq.

Ande 1 p/ esquerda

Y=Y-1

p/ dir.

Ande 1 p/ esquerda

X=X-1

p/ trás

X=2e

Y=2

S

N

S S S

S

N

N N N

INÍCIO

FIM

Page 20: Treinamento robolab intermediario   20100316

Será que a resposta anterior serve para este exemplo?

INíCIO

FIM

Page 21: Treinamento robolab intermediario   20100316

Montagem

Robô ABO

Faça a montagem do “robô ABO” apenas da pagina XX a XX

Page 22: Treinamento robolab intermediario   20100316

Exercício

Usando um dos sensores de luz da montagem do robô ABO, faça um fluxograma e posteriormente um programa no RoboLab 2.0 que identifique quando a tarja for preta ou quando a tarja for branca.

Page 23: Treinamento robolab intermediario   20100316

Resposta do Fluxograma

Resposta do Programa

Pisque a luz 2 vezes

Inicio

Sensor toque

=1?

S

N

Sensor luz > 45?

Pisque a luz 1 vez

Retorne ao início

Fim

S

N

45

2

Page 24: Treinamento robolab intermediario   20100316

Exercício

http://pt.wikipedia.org/wiki/Grupo_sanguíneo

O A

AB B

Usando agora os dois sensores de luz, identifique o tipo de sanguíneo para cada tarja identificada no quadro abaixo. Coloque avisos de som e luz indicando cada tipo.Tente também fazer o fluxograma.

Page 25: Treinamento robolab intermediario   20100316

Resposta

45

35

45

tipo O

tipo B

tipo A

tipo AB

2 0,5 0,5

4 0,5 0,5

5 0,5 0,5

3 0,5 0,5

Page 26: Treinamento robolab intermediario   20100316

Novo ícone

1

Sub-rotina – com este ícone você pode criar uma sub-rotina e acioná-la quando você quiser.

Toda sub-rotina deve ter um fim.

1 Este ícone aciona a sub-rotina identificada.

Identificação da sub-rotina.

Page 27: Treinamento robolab intermediario   20100316

http://pt.wikipedia.org/wiki/Grupo_sanguíneo

O A

AB B

Exercício

Usando as mesmas informações do exercício anterior, identifique agora o tipo sanguíneo do doador e se existe compatibilidade com o receptor.Caso exista compatibilidade emita um sinal de luz, caso contrario emita um sinal sonoro.

Page 28: Treinamento robolab intermediario   20100316

Resposta

45

35

45

tipo O

tipo B

tipo A

tipo AB

45

35

45

0,520,5

0,52 0,5

35

35

45

0,52 0,5

0,52 0,5

0,52 0,5

Qualquer tipo

tipo B

tipo AB

tipo A ou tipo AB

tipo AB

Page 29: Treinamento robolab intermediario   20100316

Resposta Alternativa

45

35

45

tipo O

tipo B

tipo A

tipo AB

45

35

45

35

35

45

tipo B

tipo AB

tipo A ou tipo AB

tipo AB

1

0,52 0,5

1

1

1

1

1

Subrotina 1

Page 30: Treinamento robolab intermediario   20100316

http://pt.wikipedia.org/wiki/Grupo_sanguíneo

E se complicássemos um pouco mais???

Page 31: Treinamento robolab intermediario   20100316

Este desafio fica para vocês...

Obrigado!!!