EV3#3: Exercicios com o sensor de ultrassons

6
Clube de Programação e Eletrónica 5 Lego Ev3 Exercícios introdutórios PROJETO LEGO MINDSTORMS EV3 Exercícios introdutórios 1. O sensor de ultrassons O Sensor de ultrassons O sensor de ultrassons mede a distância a um objeto que se encontre à sua frente. Fá-lo enviando som na frequência dos ultrasons e medindo o tempo que a onda sonora demora a voltar ao sensor depois de ser refletida por um objeto. Não é possível ouvirmos o som que este sensor emite porque o ouvido humano não está preparado para detetar sons de frequências tão elevadas. A medida feita pelo sensor pode ser feita em centímetros ou em polegadas (1 polegada = 2,54 cm). Com este sensor podemos, por exemplo, fazer parar o nosso robô a uma dada distância de uma parede. Também o podemos usar para detetar a presença de outro sensor de ultrassons a operar na vizinhança. O sensor de ultrassons pode fornecer os seguintes dados: Dados Tipo Alcance Notas Distância em centímetros 1 Numérico 0 a 255 Distância ao objeto em centímetros Distância em polegadas Numérico 0 a 100 Distância ao objeto em polegadas Deteção de ultrassons Lógico Verdade / falso (True /false) Verdade se outro sensor de ultrassons for detetado. 1 Talvez por estar descalibrado, o sensor usado nestes exercícios apresentava como resultado valores em milímetros, não em centímetros, pelo que os valores indicados nos exercícios devem ser divididos por 10 em caso de sensores que estejam a fazer medidas de facto em centímetros. O bloco de programação do sensor de ultrassons não está automaticamente disponível no software EV3. Há que fazer o download do bloco de programação a partir daqui: http://www.lego.com/en-us/mindstorms/downloads Depois de feito o download, procede-se à importação do bloco a partir do software do EV3 através do menu Tools Block Import

Transcript of EV3#3: Exercicios com o sensor de ultrassons

Page 1: EV3#3: Exercicios com o sensor de ultrassons

Clube de Programação e Eletrónica

5 Lego Ev3 – Exercícios introdutórios

PROJETO LEGO MINDSTORMS EV3 Exercícios introdutórios 1. O sensor de ultrassons O Sensor de ultrassons

O sensor de ultrassons mede a distância a um objeto que se encontre à sua frente. Fá-lo enviando som na frequência dos ultrasons e medindo o tempo que a onda sonora demora a voltar ao sensor depois de ser refletida por um objeto. Não é possível ouvirmos o som que este sensor emite porque o ouvido humano não está preparado para detetar sons de frequências tão elevadas. A medida feita pelo sensor pode ser feita em centímetros ou em polegadas (1 polegada = 2,54 cm). Com este sensor podemos, por exemplo, fazer parar o nosso robô a uma dada distância de uma parede. Também o podemos usar para detetar a presença de outro sensor de ultrassons a operar na vizinhança.

O sensor de ultrassons pode fornecer os seguintes dados: Dados Tipo Alcance Notas Distância em centímetros1 Numérico 0 a 255 Distância ao objeto em centímetros Distância em polegadas Numérico 0 a 100 Distância ao objeto em polegadas Deteção de ultrassons Lógico Verdade / falso (True /false) Verdade se outro sensor de ultrassons for detetado.

1 Talvez por estar descalibrado, o sensor usado nestes exercícios apresentava como resultado valores em milímetros, não em centímetros, pelo que os valores indicados nos exercícios devem ser divididos por 10 em caso de sensores que estejam a fazer medidas de facto em centímetros.

O bloco de programação do sensor de ultrassons não está automaticamente disponível no software EV3. Há que fazer o download do bloco de programação a partir daqui: http://www.lego.com/en-us/mindstorms/downloads Depois de feito o download, procede-se à importação do bloco a partir do software do EV3 através do menu Tools Block Import

Page 2: EV3#3: Exercicios com o sensor de ultrassons

Clube de Programação e Eletrónica

6 Lego Ev3 – Exercícios introdutórios

1.2. O bloco de programação do sensor de ultrassons

1. Seleção da porta onde está ligado o sensor (Port seletor) 2. Seleção do modo de funcionamento (Mode selector) 3. Entradas (Inputs) 4. Saídas (Outputs)

Parâmetros configuráveis: 1. Seleção do modo de funcionamento:

Modo Função Bloco Modo Função Bloco

Measure – Distance - Centimeters Retorna à saída o valor da distância em centímetros

Measure – Distance - Inches

Retorna à saída o valor da distância em polegadas

Measure – Presence / Compare - Presence

Neste modo, o sensor de ultrassons “ouve” os sinais enviados por outro sensor de ultrassons em modo “listen only”. Retorna à saída o valor Verdade se for detetado um sinal; caso contrário, retorna à saída o valor Falso.

Advanced - Centimeters

Idêntico ao modo Measure – Distance – Centimeters, mas neste modo é possível escolher se o sensor está a enviar um impulso de ultrassom ou um sinal contínuo. Para além do valor da distância em centímetros, este bloco retornará na saída Ultrasound detected

Page 3: EV3#3: Exercicios com o sensor de ultrassons

Clube de Programação e Eletrónica

7 Lego Ev3 – Exercícios introdutórios

o valor Verdadeiro se um sinal for detetado e, caso contrário, o valor falso. Compare – Distance - Centimeters

Neste modo, é feita a comparação entre a distância em centímetros e um valor pré-determinado (threshold value) através do tipo de comparação (Compare type). Retorna à saída Compare result um sinal de Verdadeiro / Falso (True/False). Retorna à saída Distance in centimeters o valor da distância em centímetros.

Compare – Distance - Inches Idêntico ao modo Compare – Distance – Centimeters, mas medindo os valores da distância em polegadas.

Advanced - Inches

Idêntico ao modo Advanced - Centimeters, mas medindo os valores da distância em polegadas.

Page 4: EV3#3: Exercicios com o sensor de ultrassons

Clube de Programação e Eletrónica

8 Lego Ev3 – Exercícios introdutórios

1.3. Programando com o sensor de ultrassons 1.3.1. Fazer curva perante um obstáculo Blocos usados:

Iniciar

Mover a direção

Esperar

Loop

Objetivo: Criar um programa que faça o robô seguir em linha reta até que encontre um obstáculo. Quando tal acontecer, deve fazer uma curva e continuar a andar em linha reta. Solução possível:

Page 5: EV3#3: Exercicios com o sensor de ultrassons

Clube de Programação e Eletrónica

9 Lego Ev3 – Exercícios introdutórios

1.3.2. “Reclamar” para que o caminho seja desobstruído Blocos usados:

Iniciar

Mover a direção

Esperar

Loop

Som

Objetivo:

Criar um programa que faça o robô seguir em linha reta até que encontre um obstáculo. Quando tal acontecer, deve fazer para enquanto emite um som. Depois do obstáculo se mover deve continuar em linha reta. Solução possível:

Page 6: EV3#3: Exercicios com o sensor de ultrassons

Clube de Programação e Eletrónica

10 Lego Ev3 – Exercícios introdutórios

1.3.3. Manter a distância Blocos usados:

Iniciar

Mover a direção

Loop

Switch

Objetivo: Criar um programa que faça o robô manter a distância de um obstáculo que se aproxime ou se afaste (uma pessoa, por exemplo). Quando algo ou alguém se aproximar, o robÓ deve afastar-se; quando algo ou alguém se afastar, o robô deve aproximar-se. Solução possível: