PROJETO LEGO
MINDSTORMS EV3
Manual de Instruções da Linguagem de Blocos LEGO
Laboratório de Sistemas Embarcados e Críticos (LaSEC)
Lucas Mitsuo Mandai
Setembro/2014
Sumário
•
•
•
•
•
•
Introdução
Lego MindStorms EV3 Home Edition
Como gerenciar o Projeto no software
Conjunto de Instruções
Exemplos
Carregando seu programa no Brick
Introdução



O Lego Mindstorms EV3 é muito mais do que um simples
brinquedo ele é na verdade um kit de ampla utilidade
concebido para fazer estudantes a pensarem sobre padrões
e estruturas não apenas de robótica, mas também de
programação e resolução de problemas de forma mais
geral.
Para programar a Lego disponibiliza um software que
oferece uma linguagem de programação em blocos onde
cada um desses blocos apresenta funcionalidades que
permitem a execução de comandos específicos permitindo
uma interação fácil e intuitiva com o software.
Neste guia encontraremos um passo a passo de como
começar a criar um projeto no EV3 software e uma breve
descrição de seus principais blocos de comando.
Lego MindStorms EV3 Home Edition


A primeira vista o software LEGO MINDSTORMS EV3 Home
Editon apresenta em seu Lobby uma variedade de opções
como a área de Robot Missions onde você pode começar
aprender, construir e programar os 5 principais modelos de
robôs, a área que contém alguns vídeos de auxilio aos
iniciantes e a área EV3 Help onde há um guia do software
em
geral,
inclusive
suas
ferramentas
e
blocos
programáveis .
Neste manual trataremos apenas do que convém a criação
de um projeto dando ênfase a familiarização do usuário
com o ambiente de programação.
Lego MindStorms EV3 Home Edition
•
Para começar a primeira coisa que deve ser feita é baixar e
fazer a instalação do software. Para isso basta acessar o
link do site da Fatec:
•
http://goo.gl/ozvqsH
•
ou baixar diretamente do site da Lego através do link:
http://www.lego.com/enus/mindstorms/downloads/software/ddsoftwaredownload/d
ownload-software/
•
Por fim execute e instale o software normalmente seguindo
as instruções.
Como gerenciar o projeto no software
Depois de abrir o EV3 Software o
primeiro passo para dar inicio ao
seu projeto é clicando em Add
Project ou clicando no menu File
e selecionando a opção New
Project.
 Caso já tenha um projeto pronto
basta ir no menu File
e
selecionar a opção Open Project.
 Após
feito
um
desses
procedimentos
você
será
direcionado ao ambiente de
programação

Como gerenciar o projeto no software

Para
criar
um
programa
selecione a aba na qual o bloco
de comando que você deseja
utilizar esteja localizado, em
seguida clique no bloco e arraste
até a tela de programação de
forma a conecta-lo com o bloco
Start. Adicione quantos blocos
forem precisos, o seu programa
será executado de acordo com a
ordem em que seus blocos estão
dispostos na tela (da esquerda
para direita).
Como gerenciar o projeto no software

Após concluir seu projeto, para salvar clique no menu File no canto
superior direito e selecione a opção Save Project As ou clique em Save
Project na barra de ferramentas. Feito isso seu programa estará pronto
para uso, agora é só conectar o Brick ao computador, transferir o
programa para o robô e executá-lo .
Conjunto de Instruções


O EV3 software possui uma variedade de blocos
programáveis permitindo criar diversas
sequências de programação fazendo com que
seu Lego Mindstorm possa se comportar das
mais criativas e diferentes formas possíveis.
Em seguida serão mostrados os blocos de
comandos básicos para que você possa começar
a elaborar seus primeiros programas e exercitar
seus algoritmos utilizando o Mindstorm EV3.
Conjunto de Instruções
•
•
Nome: Start
Descrição: O bloco Start marca o inicio
da sequência de programação fazendo com
que seu programa inicie automaticamente.
Se o seu projeto não iniciar com o bloco
Start nenhum bloco de comando será
executado.
Conjunto de Instruções
•
•
•
Nome: Medium Motor
Descrição: Localizado na aba Action (verde) O bloco
Medium Motor controla o “motor médio” que é motor menos
potente, porém mais rápido do Mindstorm EV3.
Parâmetros configuráveis:
1- Permite escolher o modo de rotação do motor , sendo eles:
Off: Motor parado.
On: Girar motor até que o próximo comando entre em ação.
On for Seconds: Gira o motor por uma quantidade determinada
de segundos.
On for Degrees: Gira o motor por uma quantidade de graus
determinada, sendo que 360 graus equivale a um giro completo.
On for Rotations: Gira o motor por um quantidade de rotações.
2- Permite escolher a força que o motor irá girar, sendo que se
usar valores negativos a rotação será inversa.
3- Permite escolher a quantidade de rotações, graus ou segundos
que o motor executará dependendo do modo escolhido.
4- Permite escolher se depois que o comando for executado o
motor parará instantaneamente ou por inércia.
5- Permite selecionar a porta na qual o motor esta conectado com
o Brick (centro de controle do Lego Mindstorms EV3).
Conjunto de Instruções
•
•
•
Nome: Large Motor
Descrição: Localizado na aba Action (verde) o bloco Large
Motor Controla um único Large motor (motor grande usado
para girar a roda do robô) possibilitando especificar a
quantidade de força e giro de uma das rodas.
Parâmetros configuráveis:
1- Permite escolher o modo de rotação do motor (Off, On, On
for Degrees, On for Seconds e On for Rotations).
2- Permite escolher a força que o motor irá girar.
3- Permite escolher a quantidade de rotações, graus ou
segundos que o motor executará dependendo do modo
escolhido.
4- Permite escolher se depois que o comando for executado
o motor parará instantaneamente ou por inércia.
5- Permite selecionar a porta na qual o motor esta conectado
com o Brick.
Conjunto de Instruções
•
•
•
Nome: Move Steering
Descrição: Localizado na aba Action (verde) O Move Sterring
controla dois Large Motors simultaneamente e possibilita
configurar a direção em que você deseja que seu robô se
locomova.
Parâmetros configuráveis:
1- Permite escolher o modo de rotação do motor (Off, On, On
for Degrees, On for Seconds e On for Rotations).
2- Permite escolher a direção do robô, configura a
intensidade da curva desejada. Se deixar o valor como zero o
robô se locomoverá reto.
3- Permite escolher a força que o motor irá girar.
4- Permite escolher a quantidade de rotações, graus ou
segundos que os motores executarão dependendo do modo
escolhido.
5- Permite escolher se depois que o comando for executado
os motores pararão instantaneamente ou por inércia.
6- Permite selecionar as portas na qual os motores estão
conectado com o Brick.
Conjunto de Instruções
•
•
•
Nome: Move Tank
Descrição: Localizado na aba Action (verde) Controla
dois Large Motors , o que o difere do bloco Move
Steering é que neste você pode escolher a força com
que cada um dos motores funcionarão
Parâmetros configuráveis:
1- Permite escolher o modo de rotação do motor (Off,
On, On for Degrees, On for Seconds e On for
Rotations).
2- Permite escolher a força de cada um dos motores
podendo por exemplo fazer com que uma roda gire
para frente e a outra gire para trás
3- Permite escolher a quantidade de rotações, graus ou
segundos que os motores executarão dependendo do
modo escolhido.
4- Permite escolher se depois que o comando for
executado os motores pararão instantaneamente ou por
inércia.
5- Permite selecionar as portas na qual os motores
estão conectado com o Brick.
Conjunto de Instruções
•
•
•
Nome: Wait
Descrição:Localizado na aba Flow Control (laranja) o Wait faz
seu programa esperar por alguma condição antes de poder
continuar para o próximo bloco da sequência.
Parâmetros configuráveis:
1- Seleciona o modo de espera. Existe os modos de espera
Time, Sensor Compare Modes e Sensor Change Modes.
Modo Time: espera por um determinado período de tempo em
segundos.
Se for usar um Wait para um sensor então você poderá
selecionar o modo Compare que espera até chegar a
determinado valor de comparação ou selecionar o Change que
espera até mudar para um novo valor determinado
2- Entrada de dados onde você pode especificar os valores de
tempo, mudança e comparação entre parâmetros dos sensores
Conjunto de Instruções
•
•
•
Nome: Loop
Descrição:Localizado na aba Flow Control
(laranja) este bloco funciona como uma
estrutura de repetição fazendo com que o
conteúdo dentro dele se repita de acordo com a
configuração definida, podendo se repetir por
uma quantidade de tempo determinada, repetir
para sempre ou até que atinja uma condição
imposta pelos sensores.
Parâmetros configuráveis:
1- Permite escolher um nome para o Loop
2- Permite especificar qual a condição para
finalizar o Loop
Conjunto de Instruções
Nome: Switch
• Descrição: O bloco Switch funciona
como uma estrutura de decisão. Se a
estrutura de decisão for verdadeira o
Switch executará a sequência de
programação da parte de cima se for
falsa executará a sequência de
programação da parte de baixo
• Parâmetros configuráveis:
1- Escolhe qual modo de decisão o
programa executará
•
Conjunto de Instruções
Nome: Color Sensor
• Descrição: Localizado na aba Sensor
(amarela), o bloco Color Sensor é utilizado para
comparar ou medir cor ou intensidade de luz
• Parâmetros configuráveis:
1- Escolhe o modo que deseja utilizar o sensor
de cor podendo medir (Measure) ou comparar
(Compare) uma determinada cor, intensidade de
luz refletida ou a intensidade de luz do
ambiente. Também calibrar (Calibrate) o sensor
definindo o mínimo e o máximo de intensidade
de luz que o sensor deverá usar
2-entrada e saída de dados que mudarão
dependendo do modo de comando escolhido.
•
Conjunto de Instruções
•
•
•
Nome: Timer
Descrição: Localizado na aba Sensor (amarela), o
Timer pode ser usado para medir e comparar
intervalos de tempo em segundos.
Parâmetros configuráveis:
1- Escolhe o modo que queira que o timer seja
executado, podendo medir (measure) um intervalo de
tempo, comparar (compare) um intervalo de tempo
ou resetar o tempo afim de que comece a contagem
novamente
2-Entrada e saída de dados que dependerão do modo
selecionado. Você pode entrar com valores que
definiram o intervalo de tempo ou usar as saídas de
dados para conectar o Timer com outros blocos
utilizando os valores configurados.
Conjunto de Instruções
•
•
•
Nome: Sound
Descrição: Localizado na aba Action (verde) este
bloco permite que seu Brick emita sons de acordo com
o modo escolhido que pode ser o Play File, Play Tone e
Play note.
Parâmetros configuráveis:
1: Permite escolher os modos de sons
Play file: neste modo você pode escolher arquivos de
sons pré gravados disponibilizados em uma lista
localizado no campo File Name.
Play Tone: este modo permite tocar um tom de uma
frequência sonora especifica
Play Note: este modo permite tocar uma nota musical
selecionada.
2: Entrada de dados onde você pode, por exemplo,
configurar o volume, a frequência ou nota musical e o
tipo de quantidade de vezes que o som será
executado.
Exemplos
•
Exemplo 1:
•
O exemplo acima utiliza os blocos Move Stereeing, Wait e Sound.
O primeiro bloco faz o robô andar para frente com 25% de sua força. O segundo
bloco espera até que o sensor de cor reflita uma intensidade de luz menor que 30
(quanto mais perto do zero mais próximo da cor preta). O terceiro bloco para o robô
e em seguida o quarto bloco faz ele dizer stop.
•
Exemplos
•
Exemplo 2:
•
No exemplo acima foi utilizado o bloco de comando Loop e Move Steering
Esta sequência de programação fará o robô andar para frente com 25%
de sua força durante duas rotações do motor completas e em seguida ele
virará em torno do próprio eixo executando apenas um rotação de motor
completa, como está dentro do loop esta sequência será executada
repetidas vezes ilimitadamente fazendo com que o robô siga para varias
direções diferentes.
•
Exemplos
Exemplo 3:
Este programa utiliza os blocos Loop, Switch e Move Steering.
Existe um Switch que usa o modo Compare Ambient Light Intensity do sensor
de cor que está configurado para que se a luz do ambiente tiver uma
intensidade maior que 20 o robô ande para frente e se a intensidade de luz do
ambiente detectada pelo sensor de cor for menor que 20 então o robô para, ou
seja, se a luz do ambiente estiver acesa o robô anda e se a luz estiver apagada
o robô para. Isso ocorrerá ilimitadas vezes porque toda a sequencia de
programação está dentro do bloco Loop .
Carregando seu programa no Brick
•
•
•
•
Para poder executar seu programa é preciso passa-lo para o Brick. Você
poderá fazer isso conectando o Brick com o computador através de um
cabo USB ou utilizando tanto Bluetooth quanto Wi-Fi.
Neste caso usaremos a conexão via USB, para isso insira o conector mini
USB na porta PC do Brick e insira o conector USB no computador.
Certifique-se de que o Brick está ligado e verifique no EV3 software a área
Available Bricks se a conexão está estabelecida.
Agora basta clicar em Download para o seu programa ser transferido.
Download

Conjunto de Instruções