10
RAYNER DE MELO PIRES ANA PAULA SUZUKI ANDRÉ REIS DE GEUS GABRIELA QUIRINO PEREIRA SALVIANO LUDGÉRIO FELIPE GOMES INTRODUÇÃO À PROGRAMAÇÃO COM ROBÔS LEGO JULHO DE 2010

Amostra robos lego

Embed Size (px)

Citation preview

Page 1: Amostra robos lego

RAYNER DE MELO PIRES

ANA PAULA SUZUKI

ANDRÉ REIS DE GEUS

GABRIELA QUIRINO PEREIRA

SALVIANO LUDGÉRIO FELIPE GOMES

INTRODUÇÃO À PROGRAMAÇÃO COM ROBÔS LEGO

JULHO DE 2010

Page 2: Amostra robos lego
Page 3: Amostra robos lego

SSUMÁRIOUMÁRIO

1 O que é o NXT?.........................................................................................4

2 Explicando o NXT.....................................................................................4As portas de entrada e saída.................................................................5

O visor...................................................................................................6

O alto falante.........................................................................................6

Os botões de navegação .......................................................................6

3 Explicando os sensores..............................................................................7Sensor de luz..........................................................................................7

Sensor de toque......................................................................................7

Sensor de Ultrassom .............................................................................8

Sensor de Som........................................................................................8

4 Explicando os Servomotores ....................................................................9Sensor de rotação embutido .................................................................9

5 A montagem do nosso modelo.................................................................10

6 O que é programação?.............................................................................43

7 O que é lógica de programação?..............................................................43

8 O que é um algoritmo?............................................................................43

9 Comandos de Controle............................................................................44Operadores Lógicos.............................................................................46

Operadores Relacionais......................................................................47

10 O que é entrada e saída de dados?.........................................................48

11 O software..............................................................................................51Transferindo um programa para o NXT .............................................53

Paleta Padrão (Common Pallete).......................................................55

Paleta Completa (Complete Pallete)...................................................69

Paleta Personalizada (Custom Pallete) .............................................79

Page 4: Amostra robos lego

Introdução à Programação com Robôs Lego

O que é o NXT?O que é o NXT?O Lego Mindstorms NXT mais se parece com um brinquedo, e é

utilizado amplamente em todo o mundo por escolas, universidades, emesmo por crianças.

Na verdade ele é um kit de robô programável, voltado para a educaçãotecnológica1, lançado pela Lego em Julho de 2006, substituindo a primeirageração do kit Lego Mindstorms. O nosso kit é o Kit Base 9797 e écomposto por 431 peças: 3 servomotores2, 4 sensores (toque, som, luz eultrassom), 7 cabos para conexões com motores e sensores, um cabo parainterface USB, o Brick Inteligente NXT, que é o corpo central do robô,bateria recarregável, base giratória, rodinhas com pneus e várias peçasconhecidas como Lego Technic, como blocos, vigas, eixos, rodas,engrenagens e polias.

O Brick NXT (em português, tijolo) é o cérebro dessas pequenasmáquinas. Ele viabiliza autonomia na execução de diferentes tarefas taiscomo a criação, programação e montagem de robôs com noções dedistância, capazes de reagir a movimentos, ruídos e cores3, e de executarmovimentos com razoável grau de precisão. O kit também inclui o NXT-G,um ambiente de programação gráfico que possibilita a criação e o downloadde programas para o NXT.

Os novos modelos permitem que se criem não apenas estruturas, mastambém comportamentos, permitindo a construção de modelos interativos,com os quais se pode aprender conceitos básicos de ciência e de engenharia.Os empregos didáticos abrangem as áreas de robótica, controle, automação,física, matemática, programação e projetos.

1 O lema da Educação Tecnológica é preparar os estudantes para não serem apenasusuários de ferramentas tecnológicas, mas capazes de criar, solucionar problemas e usaros tipos de tecnologia de forma racional, efetiva e significativa.

2 Servomotor é uma máquina, mecânica ou eletromecânica, que apresenta movimentoproporcional a um comando, em vez de girar ou se mover livremente sem um controlemais efetivo de posição como a maioria dos motores.

3 Neste caso, para a percepção de cores é necessário a utilização do sensor de cores, quenão acompanha o kit 9797.

6

Page 5: Amostra robos lego

Introdução à Programação com Robôs Lego

ExplicandoExplicando o NXT o NXT

Como já foi dito, o Brick NXT é o corpo central do robô. Neleconectaremos cabos que vão até os motores e cabos que vêm dos sensores.Ele será como o cérebro (e como o coração). Nele está contido oprocessador, que receberá os programas que criaremos e então osinterpretará (executará) fazendo o robô montado ganhar movimentos.

Para facilitar a comunicação e melhorar a compreensão dessa apostilapelos leitores, aqui vamos nos referenciar ao Brick NXT somente comoNXT.

As portas de entrada e saídaAs portas de entrada e saída

Como mostrado na figura acima, o NXT possui três portas de saída(output), onde se conectam os motores. Essas portas estão acima do visor(portas A, B e C). Abaixo dos botões estão mais quatro portas, agora as deentrada (input), onde se conectam os sensores (portas 1, 2, 3 e 4). Éimportante checar com atenção se os motores e sensores estão conectadoscorretamente pois eles não são permutáveis.

7

Page 6: Amostra robos lego

Introdução à Programação com Robôs Lego

A porta USB para comunicação com o software está próxima às portasde comunicação com os motores. Através dela podemos instalar osprogramas do computador para o robô, e também coletar dados do robô parao computador. Caso não queiramos fazer essa comunicação através de fios,podemos utilizar o bluetooth, também disponível no NXT. Desse modoprecisaremos do nome do NXT, que é mostrado no visor.

O visorO visor

Na parte superior do visor, no canto esquerdo, vemos ícones queinformam sobre o status e da conexão bluetooth ou USB do robô. No cantodireito vemos o ícone da bateria informando a carga disponível.

8

Page 7: Amostra robos lego

Introdução à Programação com Robôs Lego

Na parte de baixo do visor é mostrado os menus disponíveis no NXT.

O alto falanteO alto falante

O alto falante encontra-se na lateral direita do NXT.

Crie programas com sons reais e os ouça quando executar o programa.

Os botões de navegaçãoOs botões de navegação

O botão central - laranja - é a tecla Enter do robô. Ele também é usadopara ligar o robô.

As setas direcionais - em cinza claro - são utilizadas para a navegaçãonos menus disponíveis no visor.

O botão inferior - em cinza escuro - é utilizado para a navegação nos

9

Page 8: Amostra robos lego

Introdução à Programação com Robôs Lego

diferentes níveis dos menus. Geralmente é utilizado como o botão Voltar.Também é usado para desligar o robô.

Faça você mesmo!

Com o NXT na mão veja como ele é ligado e desligado.

ExplicandoExplicando os sensores os sensoresOs sensores biológicos do nosso corpo são células especializadas que

são sensíveis a temperatura, luminosidade, vibração, toxinas, hormônios,proteínas, entre outros. No caso dos nossos robôs, podemos pegar adefinição do dicionário:

"Designação comum de dispositivos elétricos, eletrônicos,

mecânicos ou biológicos capazes de responder a estímulos de

natureza física (temperatura, pressão, umidade, velocidade,

aceleração, luminosidade e etc.). São utilizados em sistemas de

controle e monitoramento."

No nosso kit temos quatro sensores: o de luz, o de toque, o deultrassom e o de som.

Vamos ver para que serve cada um?

SensorSensor de luz de luz

O sensor de luz é um dos dois sensores que dá visão aorobô (o sensor de ultrassom é o outro). É ele que permite queo robô distingua entre claro e escuro – branco e preto. Elepode ler a intensidade de luz numa sala e pode medir aintensidade de luz em superfícies coloridas.

Sugestões para uso

Você pode usar o sensor de luz para criar um robô alarme de

assaltante: quando um intruso entrar numa sala e acender a lâmpada o robôpode reagir e defender sua propriedade. Você também pode usar o sensor de

10

Page 9: Amostra robos lego

Introdução à Programação com Robôs Lego

luz para criar um robô que segue linhas ou um robô que classifica coisas porcores.

Detectando a luz ambiente

Teste a habilidade do sensor de luz em detectar a luz ambientemedindo os níveis de luz em diferentes locais da sala. Por exemplo, aponte osensor em direção à janela. Então aponte-o para baixo da mesa. Veja comomodificam as leituras.

Faça você mesmo!

Conecte o sensor ao NXT. Selecione no visor o submenu View.Selecione o ícone do sensor de luz e a porta onde você o conectou, epressione o botão Run (botão laranja). Agora aponte o sensor para asdiferentes cores disponíveis na folha de teste de cores. (Caso a sua apostilaesteja em preto e branco pergunte ao monitor sobre a folha de testecolorida).

Try me

O NXT vêm com a função Try Me. Conecte o sensor de luz à porta 3do NXT e selecione o menu "Try Me" no NXT para testar o sensor de luz.Você terá uma reação divertida.

SensorSensor de toque de toque

O sensor de toque concede ao robô o sentido do tato.Ele detecta quando o botão do sensor está sendopressionado, indicando que está em contato com algumacoisa, e também quando ele é liberado.

Sugestões para uso

Você pode usar o sensor de toque para fazer seu robô pegar coisas: umbraço robótico equipado com um sensor de toque permite o robô saber se háou não alguma coisa em seu braço para agarrar. Ou você pode fazer seu robôagir a um comando. Por exemplo, pressionando o botão do sensor fazer o

11

Page 10: Amostra robos lego

Introdução à Programação com Robôs Lego

robô realizar alguma ação: andar, falar, fechar uma porta ou ligar sua TV.

Try me

O NXT vêm com a função Try Me. Conecte o sensor de toque à porta1 do NXT e selecione o menu "Try Me" no NXT para testar o sensor detoque. Você terá uma reação divertida.

SensorSensor de Ultrassom de Ultrassom

Permite que o robô "veja" e passe a detectar onde osobjetos estão. Você pode usá-lo para fazer o robô evitarobstáculos, detectar e medir a distância, e detectar movimentos.

O sensor de ultrassom mede distâncias em centímetros e empolegadas. Ele é capaz de medir distâncias de 0 a 255 centímetros com umaprecisão de +/- 3 cm.

O sensor usa a mesma técnica que os morcegos usam: ele conseguemedir a distância calculando o tempo que leva para uma onda sonora baterem um objeto e retornar – como se fosse um eco.

Objetos maiores com superfícies duras retornam melhores leituras.Enquanto que objetos feitos de tecido macio ou que possuem curvas (comouma bola) ou que são muito finos e pequenos podem ser difíceis para osensor detectar.

* Dois ou mais sensores ultrassônicos atuando no mesmo espaço podem

interromper uns aos outros sua leitura.

Faça você mesmo!

Conecte o sensor de ultrassom ao NXT. Selecione no visor o submenuView. Selecione o ícone do sensor de ultrassom e a porta onde você oconectou, e pressione o botão Run (botão laranja). Para medir a distância deum objeto mova sua mão para perto do sensor e observe a mudança deleitura no visor.

12