A Geometria Lego - Cap 1

86
6 Capítulo 1 1 A Geometria LEGO ® Introdução Antes de entrar no mundo NXT, é necessário que você entenda algumas propriedades geométricas básicas dos tijolos e vigas LEGO. Aqui, a geometria não é um turbilhão de equações e apenas discutiremos alguns conceitos simples, mas muito importantes que explicam a terminologia proporcionando uma iniciação muito mais simples e fácil a este mundo NXT. Você vai entender quais são as unidades utilizadas para expressar comprimentos LEGO, as proporções das vigas e tijolos, e como isso influencia nas maneiras que você pode combiná-los nas mais diversas orientações para se construir uma estrutura sólida. É importante ressaltar que a solidez das estruturas são muito relevantes, como por exemplo na construção do chassi de um veículo. Durante muito tempo a LEGO utiliza em suas peças, os tijolos dotados de botões (studs), que é o “segredo” dos encaixes destas peças. Porém, de um certo tempo pra cá, a LEGO adotou um sistema de construção sem botões (studless), baseado num sistema de viga e encaixes por meio de pinos, adaptando ainda, os seus tijolos para conexão com estas vigas. É muito importante que você reproduza todos os exemplos exibidos aqui. Porém, se você em algum momento, achar que os exemplos apresentados são chatos ou complexos, não desanime, vá para outro capítulo e tente ali, pois, sempre que você sentir necessidade pode retornar a este capítulo e rever as informações. Tamanho e Unidades Os usuários LEGO, geralmente, expressam o tamanho das peças por três números, representando respectivamente, largura, comprimento e altura. O padrão do posicionamento das peças LEGO é com os botões para cima (studs up). Ao expressar tamanhos, sempre temos como referência esta orientação, a não ser que tenhamos que usar os tijolos com os botões para baixo ou em qualquer outro ângulo de rotação para a construção de interesse. A altura é a mais fácil de se identificar, uma vez que é a distância entre a base e o topo do tijolo básico. A largura, é a mais curta das duas dimensões que formam a base no plano horizontal, sendo que a outra é o comprimento. A largura e o comprimento são expressos em termos dos botões (studs), também chamados unidades LEGO. Assim, podemos descrever as medidas da maioria dos tijolos tradicionais, um dos quais teve sua primeira aparição em 1949 (Astolfo et al, 2007), que é o tijolo 2 x 4 x 1 (Fig. 1.1).

description

MatemáticaLegoGeometria

Transcript of A Geometria Lego - Cap 1

Page 1: A Geometria Lego - Cap 1

6

Capítulo 1

1 A Geometria LEGO ® Introdução Antes de entrar no mundo NXT, é necessário que você entenda algumas propriedades geométricas básicas dos tijolos e vigas LEGO. Aqui, a geometria não é um turbilhão de equações e apenas discutiremos alguns conceitos simples, mas muito importantes que explicam a terminologia proporcionando uma iniciação muito mais simples e fácil a este mundo NXT. Você vai entender quais são as unidades utilizadas para expressar comprimentos LEGO, as proporções das vigas e tijolos, e como isso influencia nas maneiras que você pode combiná-los nas mais diversas orientações para se construir uma estrutura sólida. É importante ressaltar que a solidez das estruturas são muito relevantes, como por exemplo na construção do chassi de um veículo. Durante muito tempo a LEGO utiliza em suas peças, os tijolos dotados de botões (studs), que é o “segredo” dos encaixes destas peças. Porém, de um certo tempo pra cá, a LEGO adotou um sistema de construção sem botões (studless), baseado num sistema de viga e encaixes por meio de pinos, adaptando ainda, os seus tijolos para conexão com estas vigas. É muito importante que você reproduza todos os exemplos exibidos aqui. Porém, se você em algum momento, achar que os exemplos apresentados são chatos ou complexos, não desanime, vá para outro capítulo e tente ali, pois, sempre que você sentir necessidade pode retornar a este capítulo e rever as informações. Tamanho e Unidades Os usuários LEGO, geralmente, expressam o tamanho das peças por três números, representando respectivamente, largura, comprimento e altura. O padrão do posicionamento das peças LEGO é com os botões para cima (studs up). Ao expressar tamanhos, sempre temos como referência esta orientação, a não ser que tenhamos que usar os tijolos com os botões para baixo ou em qualquer outro ângulo de rotação para a construção de interesse. A altura é a mais fácil de se identificar, uma vez que é a distância entre a base e o topo do tijolo básico. A largura, é a mais curta das duas dimensões que formam a base no plano horizontal, sendo que a outra é o comprimento. A largura e o comprimento são expressos em termos dos botões (studs), também chamados unidades LEGO. Assim, podemos descrever as medidas da maioria dos tijolos tradicionais, um dos quais teve sua primeira aparição em 1949 (Astolfo et al, 2007), que é o tijolo 2 x 4 x 1 (Fig. 1.1).

Page 2: A Geometria Lego - Cap 1

7

Figura 1.1 – Tijolo 2 x 4 x 1

Apesar de não serem expressas de forma evidente, as medidas dos tijolos LEGO, são baseadas num sistema métrico. A largura de um botão corresponde a 8 mm e a altura de um tijolo, desconsiderando o botão, equivale a 9,6 mm. Não é necessário lembrar estas medidas, mas é importante ficar claro que para uma unidade LEGO, a largura e o comprimento são iguais, mas diferentes da altura. Assim, são necessárias duas medidas diferentes para uma unidade LEGO. A razão entre estas medidas é quem tem importância. Dividindo 9,6 por 8 encontramos 1,2. A unidade vertical corresponde a 1,2 vezes a unidade horizontal. Esta razão é mais fácil de lembrar considerando 6:5. A Fig. 1.2 exibe o menor tijolo LEGO, expresso em unidades LEGO como um tijolo 1 x 1 x 1. De acordo com as considerações anteriores, este “cubo” não é na realidade um cubo.

Figura 1.2 – Proporções de um tijolo 1 x 1 x 1

O padrão LEGO inclui uma classe de componentes cuja altura é 1/3 de um tijolo. O elemento mais importante desta classe é a placa, que é encontrada numa grande variedade de tamanhos retangulares, além de algumas outras formas especiais (redonda, por exemplo). Se conectarmos três placas, teremos a altura de um tijolo padrão (Fig. 1.3).

Figura Figura Figura Figura 1111....3333 –––– Relação três placas x um tijolo Relação três placas x um tijolo Relação três placas x um tijolo Relação três placas x um tijolo

A adoção das peças sem botões, abriu um leque de possibilidades de construção, libertando-nos de algumas limitações impostas pelo clássico sistema de construção tijolo-placa. Os novos modelos de componentes sem botões proporcionam um novo método de construção de modelos LEGO. Apesar disto, os dois métodos possuem vantagens e desvantagens, e a escolha por um ou outro é muito particular. Talvez o melhor é fazer uso das duas formas de acordo com a conveniência da

Page 3: A Geometria Lego - Cap 1

8

aplicação no modelo. A Fig. 1.4 exibe as tradicionais placas e tijolos próximos a um conjunto de vigas que estão empilhadas, proporcionando uma referência para comparação entre os tamanhos. Notamos que suas alturas não são compatíveis.

Figura 1.4 – Comparação entre as alturas de tijolos e vigas

Amarração Vertical

É importante ressaltar estas relações, uma vez que, a grande mudança aconteceu em 1977, quando a LEGO resolveu criar uma nova linha de produtos para atingir um público alvo mais velho. Antes, a linha tijolos-placas era voltada para crianças, onde as construções eram limitadas a empilhamento de tijolos e placas e a única coisa que as crianças precisavam saber, era que três placas empilhadas equivaliam a um tijolo. Porém, como já dissemos, este sistema tinha as suas limitações. Assim, a linha LEGO TECHNIC tem tijolos com buracos, chamados tijolos TECHNIC, ou viga (Fig. 1.5a). Estes buracos permitem que estas vigas sejam trespassadas por eixos ou que estas sejam conectadas a outras por pinos, criando um novo mundo de possibilidades (Astolfo et al, 2007).

No final dos anos 1990, as vigas sem botões foram criadas, abrindo outras opções de construção (Fig. 1.5b).

(a) (b)

Figura Figura Figura Figura 1111....5555 –––– Vigas LEGO TECHNIC Vigas LEGO TECHNIC Vigas LEGO TECHNIC Vigas LEGO TECHNIC Suponha que você quer montar uma viga na vertical ligando 2 ou mais camadas de vigas horizontais. Aqui é necessário lembrar da razão 6:5. Os buracos numa viga são espaçados exatamente na mesma distâncias entre os botões, mas estão deslocados meio botão. Então quando colocamos a viga na vertical, os buracos seguem as unidades horizontais e não os verticais. Consequentemente, eles não coincidem com os buracos correspondentes das camadas de vigas. Em outras palavras, os buracos na viga vertical não se alinham com os buracos das vigas empilhadas devido à razão 6:5. Pelo menos, nem com todostodostodostodos os buracos. Vamos entender o que acontece. As unidades verticais são contadas de 6 em 6 (6, 12, 18, 24, 30,...) e as unidades horizontais são contadas de 5 em 5 (5, 10, 15, 20, 25, 30,...). Não contamos o tijolo e o buraco inicial, pois são o nosso ponto de referência. Desta forma, após contarmos 5 unidades verticais, encontramos 30, que é o número

Page 4: A Geometria Lego - Cap 1

9

comum tanto para a contagem vertical quanto para a horizontal (Fig. 1.6).

Figura 1.6 – Correspondência entre vigas horizontais e verticais

Imagine que você deseja construir um robô que precisa ser forte e leve. Com as vigas com botões, você tem que usar um grande número de vigas, placas e pinos para criar a base e certamente precisará de reforços cruzados. Dependendo da estratégia de construção adotada, você pode usar o empilhamento mencionado anteriormente, o que produzirá um robô forte, mas pesado. Entretanto, com as novas peças, é possível criar um chassi leve e forte de forma muito mais simples e direta. A Fig. 1.7 mostra um exemplo de chassi que você pode usar como base para o seu robô. Este chassi emprega apenas 2 tipos de peças, constituindo uma estrutura sólida.

Figura 1.7 – Exemplo de chassis

Page 5: A Geometria Lego - Cap 1

10

Amarração Diagonal Não apenas ângulos retos podem ser obtidos nas construções com LEGO. Não podemos negar as origens da LEGO que objetivava construir coisas “quadradas”. Entretanto, com o advento das partes sem botões, as conexões diagonais se tornaram possíveis, aumentando as possibilidades e transformando o mundo LEGO ainda mais variado e interessante. Agora, aprenderemos a amarrar empilhamentos com vigas diagonais. Devemos olhar para a parte inclinada da viga diagonal, como a hipotenusa de um triângulo retângulo. Utilizando uma modificação do chassi da Fig. 1.7, onde colocamos mais dois tamanhos de viga, adicionamos uma viga-cruzada para suportar a estrutura e fornecer uma exemplo prático (Fig. 1.8). Procedemos a medida de seus lados, lembrando de não contar os primeiros buracos, pois consideramos a distância até eles. A base do triângulo tem 8 buracos, sua altura tem 6 buracos. Lembre que na grade padronizada, toda viga horizontal está a dois buracos das vigas imediatamente abaixo e acima dela. A hipotenusa tem 10 buracos de comprimento.

Figura 1.8 – Teorema de Pitágoras em vigas LEGO

Page 6: A Geometria Lego - Cap 1

11

Consideradas as medidas na Fig. 1.8, pelo Teorema de Pitágoras, as medidas do triângulo destacado podem ser verificadas:

102 = 62 + 82 � 100 = 36 + 64 Utilizando este conceito de forma inversa, podemos calcular quais os valores das diagonais, considerando quaisquer pares de vigas considerando-as como base e altura de um triângulo retângulo. Vejamos alguns exemplos (Tab. 1.1).

Tabela 1.1 – Verificação do ajuste dos comprimentos de diagonais A

(base) B

(altura) A2 B2 A2+B2 comentários

5 6 25 36 61 não ajusta 3 8 9 64 73 não ajusta 3 4 9 16 25 ajusta: 25 é 5 x 5 15 8 225 64 289 ajusta: 289 é 17 x 17

9 8 81 64 145

145 é muito próximo de 12 x 12, então é possível construir o

triângulo, uma vez que a diferença no comprimento é menor que 1%

Podemos afirmar que não é necessário utilizar cálculos em toda construção, e nem é motivo de preocupação, pois: - Você não precisa usar vigas diagonais com tanta freqüência; - A maioria das combinações úteis derivam da tríade básica 3-4-5 (3ª linha da Tab. 1.1). Se você multiplicar cada lado deste triângulo, por um mesmo número, encontraremos uma tríade válida. Por 2: 6-8-10, por 3: 9-12-15, e assim por diante; - Apresentamos como apêndice uma tabela a seguir com outros comprimentos válidos, incluindo alguns que não são quadrados perfeitos mas, se ajustam sem causar danos às peças. Vigas Braço: Construindo Ângulos Existe uma grande variedade de peças, denominadas vigas braço, que ampliaram a utilização das vigas simples, além da possibilidade de conexão em ângulos retos. Elas tem várias formas e tamanhos, e podemos utiliza-las para conexão de partes nos mais diferentes ângulos e são muito comuns em robôs apanhadores, “dedos”, catadores de peças, dentre outros. A Fig. 1.9 exibe algumas destas vigas braço.

Page 7: A Geometria Lego - Cap 1

12

Figura 1.9 – Exemplos de vigas braço

As vigas braço são muito versáteis e muitas vezes são indispensáveis quando tentamos conectar componentes de forma não convencional. Algumas são usadas para conectar motores em ângulos pouco convencionais, outras, para fazer travamento. A Fig. 1.10 mostra alguns exemplos de como usar vigas braço para amarrar uma estrutura. Tente recriar este exemplo. Você notará que pode conectar as vigas braço em apenas alguns buracos e alguns ângulos, pois, nem todas as combinações funcionam. Entretanto, usando diferentes tipos de vigas braço, você pode ver como cada uma conecta, encontrando as possibilidades de amarração possíveis. É necessário soltar a imaginação e compreender que seus modelos não precisam seguir as configurações retangulares padrão. Por exemplo, usando a Fig. 1.10, podemos estender uma viga braço de modo a conectar um sensor (observe a porção superior à direita), ou até mesmo conectar um motor, produzindo um mecanismo de tração, montado num ângulo específico. Experimente outras conexões entre vigas braço e vigas simples e descubra como você pode amarrar sua estrutura ou estender componentes do robô de formas inusitadas. O importante é lembrar que nem sempre é preciso seguir a configuração tradicional entre vigas e tijolos com ângulos de 90º.

Figura 1.10 – Amarração com vigas braço

Page 8: A Geometria Lego - Cap 1

13

Capítulo 2

2 Engrenagens Introdução As engrenagens são tão importantes para as máquinas que, ao simplesmente pensar numa máquina, automaticamente vem a imagem de uma engrenagem em nossas cabeças. O mundo das engrenagens é incrível, e ao navegar por este mundo, descobrimos o poder destas peças que transformam uma força em outra de maneira quase mágica. Veremos de maneira simples novos conceitos (pelo menos para alguns) como, velocidade, força, torque, atrito, abordando os fundamentos matemáticos de maneira natural. Estes conceitos não são tão complexos quanto você pensa e veremos as relações entre as engrenagens e as alavancas. É importante que todos os exemplos apresentados sejam executados com as suas próprias peças, de modo que o entendimento seja fixado de forma consistente. Dentes em Engrenagens Uma única engrenagem não tem utilidade, pois, para executar o seu trabalho, no mínimo precisamos de um par de engrenagens. Na Fig. 2.1 é exibida um acoplamento de modelos comuns de engrenagens LEGO: a da direita tem 8 dentes (8t, do inglês teeth) e a da esquerda tem 24 dentes (24t). A característica mais importante de uma engrenagem são seus dentes. As engrenagens são classificadas pelo número de dentes que possuem. Assim, como escrevemos a pouco, uma engrenagem com 24 dentes é expressa como “engrenagem 24t”.

Figura 2.1 – Engrenagens 24t e 8t acopladas numa viga

No exemplo anterior, cada uma das engrenagens está fixada por um eixo e acoplada numa viga, estes eixos distantes 2 buracos (um buraco vazio entre eles). Execute esta montagem, e segure numa das

Page 9: A Geometria Lego - Cap 1

14

mãos a viga. Agora, gire um dos eixos. A primeira coisa que você nota é que o segundo eixo também gira. Esta é a propriedade fundamental das engrenagens: a transferência de movimento de um eixo a outro. Outra coisa que você pode notar é que não é necessário muito esforço para girar, uma vez que, seus dentes se encaixam perfeitamente e existe apenas um pouco de atrito. Esta uma importante característica do sistema LEGO, as partes são projetadas para se encaixar perfeitamente, desde que as distâncias padrão sejam respeitadas. O terceiro item que você deve observar é que os eixos rodam em direções opostas, um no sentido horário e o outro no sentido anti-horário. Uma outra característica, não tão fácil de ser observada, mas que acontece devido ao tamanho diferente das engrenagens, é que os eixos se movimentam em velocidades diferentes. Quando você movimenta a 8t, a 24 gira mais lentamente, enquanto girar a 24t faz a 8t girar mais rápido. Controle de Velocidade por Engrenagens Vamos começar girando a engrenagem maior do exemplo anterior. Se ela tem 24 dentes, cada um destes se encaixa perfeitamente entre 2 dentes da 8t. Enquanto giramos a 24t, sempre um novo dente toma o lugar do anterior na área de contato das engrenagens e a 8t gira exatamente 1 dente. A questão aqui é que você precisa avançar apenas 8 dentes da 24t para que a 8t dê uma volta completa (360º). Se continuamos o movimento, mais 8 dentes da 24t, proporcionam mais uma volta da 8t. E finalmente, os últimos 8 dentes da 24t, forçam mais uma volta da 8t. Em resumo, uma única volta da 24t faz com que a 8t dê 3 voltas. Expressamos esta relação com uma razão que contém o número de dentes das engrenagens, ou seja, 24:8. Esta razão pode ser simplificada por 8, produzindo 3:1. Isto significa que uma volta da primeira (24t) corresponde a 3 voltas da segunda (8t). Acabamos de descobrir o quanto uma engrenagem é mais veloz que a outra. Para uma precisão maior, devemos chamar esta velocidade de velocidade angular, e não apenas velocidade, mas a ideia é a mesma. Neste momento, podemos pensar que é só aumentar o quanto quisermos uma engrenagem para ganhar velocidade!! Mas não é tão simples assim. Há um preço a pagar para se ganhar velocidade, e este preço é a diminuição do torque, ou seja, de forma mais simples, diminuição da força. Então a engrenagem (ou melhor, conjunto de engrenagens) converte torque para velocidade de maneira inversamente proporcional, ou seja, menor torque gera maior velocidade. A razão entre as engrenagens se comporta da mesma forma: se temos 3 vezes a velocidade angular original, obtemos 1/3 do torque original. Uma das belezas das propriedades de engrenagens é que a conversão é simétrica, ou seja, podemos converter torque em velocidade e vice-versa. E o melhor, a matemática necessária para gerenciar e entender este processo é tão simples quanto fazer uma divisão. Convencionou-se que, em termos de engrenagens, ao dizer

Page 10: A Geometria Lego - Cap 1

15

acelerar (gear up) significa aumentar a velocidade e reduzir o torque, enquanto que frear (gear down) significa reduzir a velocidade e aumentar o torque. Como exemplo, utiliza-se 3:1 para o primeiro caso e 1:3 para o segundo.

É a experiência que diz quando, num determinado projeto, devemos usar engrenagens para acelerar ou frear, lembrando sempre da relação inversa com o torque. Isto é muito relativo, dependendo do motor utilizado e a função deste no projeto. Os servomotores MINDSTORMS NXT têm engrenagens internas em seu invólucro plástico, de modo que eles trabalham com uma velocidade relativamente baixa e, consequentemente, com um torque considerável (veja o Cap. 3). Então, sem acelerar ou frear, por meio de engrenagens, os motores são suficientes para um grande número de aplicações. Entretanto, se o seu projeto carece escalar escadas ou sustentar maiores pesos, certamente será necessário realizar um gear down. Por outro lado, se o projeto é de um veículo que precisa ser veloz é vez de gear up.

O que é torque?O que é torque?O que é torque?O que é torque? Quando giramos uma porca de um parafuso com uma chave, estamos produzindo torque. Quando a porca oferece certa resistência, descobrimos que quanto mais distantes da porca segurarmos a chave, menos força será necessária para apertar. O torque é na realidade o produto de duas componentes: força e distância. Podemos aumentar o torque de duas formas, aumentando a força aplicada ou aumentando a distância do centro de rotação. As unidades de medida para o torque são então, uma unidade para a força e uma unidade para a distância. O Sistema Internacional de Unidades (SI) define o newton-metro (Nm) e o newton-centímetro (Ncm). No torque existe alguma semelhança com a teoria de alavancas. Numa alavanca, a força resultante depende da distância entre o ponto de apoio e a ponta de aplicação da alavanca: maior a distância, maior a força. Podemos pensar nas engrenagens como alavancas cujo ponto de apoio é seu eixo e o ponto de aplicação são seus dentes. Assim, aplicando a mesma força para uma engrenagem maior (ou uma alavanca maior), teremos um aumento no torque. Para que este processo de conversão funcione bem, é necessário pagar um preço: atrito. Deve-se fazer algo para tentar reduzir este atrito ao nível mais baixo possível, porém, o atrito é inevitável. O atrito sempre tomará um pouco do torque no processo de conversão.

Page 11: A Geometria Lego - Cap 1

16

Trem de Engrenagens A maior engrenagem LEGO é a 40t e a menor é a 8t. Assim, a maior razão que pode-se obter aqui é 8:40, ou 1:5 (Fig. 2.2).

Figura 2.2 – Razão de engrenagens 1:5

No caso de precisarmos uma razão maior, devemos usar um sistema de redução em multiestágios (ou multiplicação), usualmente chamado de trem de engrenagens. Veja a Fig. 2.3, onde o resultado de um primeiro estágio de redução 1:3, é transferido a um segundo estágio de redução 1:3. Então, a velocidade resultante é 1/3 de 1/3, ou seja, 1/9 com torque 3 vezes 3, ou seja, 9, e a razão final é 1:9.

Figura 2.3 – Trem de engrenagens com razão resultante 1:9

Os trens de engrenagem produzem uma incrível potência, porque é possível alcançar quanta velocidade se queira para a mesma quantidade de torque. Dois estágios 1:5 resultam numa razão 1:25, enquanto três destes estágios, resultam num sistema 1:125. Contudo, toda esta força deve ser usada com cuidado, porque as partes LEGO podem ser danificadas se, por alguma razão, o seu protótipo não

Page 12: A Geometria Lego - Cap 1

17

conseguir converter esta força em algum tipo de trabalho. Em outras palavras, se algo trava, a força do motor LEGO, multiplicado por 125 é suficiente para deformar vigas, empenar eixos ou quebrar dentes das engrenagens. Voltaremos a falar nisso posteriormente.

Nota: lembre-se que, adicionando múltiplos estágios, cada estágio adicional introduz mais atrito e isto sempre atrapalha. Por isto, se você quer máxima eficiência, deve tentar atingir a razão final com o mínimo possível de estágios.

Escolhendo corretamente a razão das engrenagensEscolhendo corretamente a razão das engrenagensEscolhendo corretamente a razão das engrenagensEscolhendo corretamente a razão das engrenagens É importante que você monte alguns experimentos para ajudar na decisão sobre qual é a melhor razão de engrenagem. Não espere finalizar o seu protótipo para descobrir que alguns mecanismos engrenados não trabalham como esperado. Comece tomando algum mecanismo pronto como exemplo e experimente diferentes razões até que fique satisfeito com o resultado. Este protótipo não precisa ser muito sólido ou refinado, pois ele serve apenas para auxilia-lo a executar o que você tem em mente. É importante, entretanto, que isto simule precisamente o tipo de trabalho que você espera do seu modelo. Por exemplo, se seu objetivo é construir um robô capaz de subir uma rampa com uma inclinação de 50º, coloque no protótipo todo o peso que você imagina que o seu modelo completo deve carregar: motores adicionais para outras tarefas, o brick NXT (ou simplesmente NXT), partes extras, dentre outros. Seja generoso com as partes extras. É sempre melhor adicionar peso extra, garantindo que ele cumpra a tarefa, pois, se precisar retirar na versão final ele assim mesmo conseguirá subir a rampa. Veja então se o protótipo sobe a rampa. Isto te fornece parâmetros sobre a capacidade real de execução da tarefa. Engrenagem Sem Fim Entre as peças LEGO, encontramos uma que parece um parafuso sem cabeça. Esta é, na verdade, uma engrenagem, mas tão peculiar que merece menção especial. Na Fig. 2.4, pode-se ver engrenagens sem fim acopladas com outros tipos de engrenagem. A configuração à direita usa uma peça LEGO especial, chamada bloco de engrenagem sem fim. Com esta peça simples podemos conectar a engrenagem sem fim a uma engrenagem 24t. Testando estas configurações, podemos descobrir diversas propriedades. Tente rodar os eixos. Note que, apesar de podermos girar o eixo conectado à engrenagem sem fim, não podemos girar outro eixo conectado às outras engrenagens. Esta é a primeira

Page 13: A Geometria Lego - Cap 1

18

propriedade importante: a engrenagem sem fim conduz um sistema assimétrico, ou seja, podemos utilizá-la para girar outras engrenagens, mas ela não pode ser girada por estas. A razão para esta assimetria, é mais uma vez, o atrito. Isto não é necessariamente ruim, pois, pode ser usado para outros propósitos.

Figura 2.4 – Tipos de conexões de engrenagens sem fim

Outro fato que deve ser observado é que os dois eixos são perpendiculares entre si. Esta mudança de orientação é inevitável quando se usam engrenagens sem fim. Outro detalhe que deve ser observado é que a engrenagem sem fim deve deslizar livremente ao longo de seu eixo. Algumas vezes isto pode ser útil, mas na grande maioria das vezes devemos fixá-las em algum lugar do eixo por meio de buchas. Voltando às razões entre engrenagens, a pergunta que aparece naturalmente, é sobre os dentes desta engrenagem sem fim. Mas, ao invés de discutir a teoria por trás deste fato, vamos desenvolver um experimento. Vamos considerar a configuração intermediária da Fig. 2.4. Agora, vamos girar o eixo da engrenagem sem fim bem devagar e exatamente uma volta, enquanto observamos a engrenagem 24t. Para cada volta , a 24t roda exatamente 1 dente. Esta é a resposta para o que estávamos procurando: a engrenagem sem fim é uma engrenagem 1t. Então, neste experimento, a razão é 1:24 com um estágio simples. De fato, teremos uma razão 1:40 com uma engrenagem 40t. A assimetria da engrenagem sem fim faz com que esta seja aplicável apenas na redução de velocidade e aumento de torque, devido ao atrito que é muito alto para que o sistema seja rotacionado no outro sentido, sem contar ainda a quantidade de torque desperdiçado. Existem situações onde esta característica é exatamente o desejado. Um exemplo é um braço robótico para levantar uma pequena carga. Suponha que usamos uma razão 1:25 com engrenagens padrão: O que acontece quando paramos o motor com o braço carregado? A simetria do sistema transforma o peso da carga (energia potencial) em torque, e o torque em velocidade, e o motor gira para trás fazendo o braço abaixar. Neste caso, e diversos outros, a engrenagem sem fim é a solução, pois, o atrito torna impossível que o braço gire o motor para trás. Podemos resumir tudo isto, dizendo que, em situações onde desejamos um posicionamento estável e preciso, sob carregamento, a engrenagem sem fim é a melhor escolha. É também a escolha correta quando precisamos de uma alta redução da razão num pequeno espaço, devido à característica compacta destas configurações.

Page 14: A Geometria Lego - Cap 1

19

Posicionando e Ajustando Engrenagens Até agora, utilizamos apenas as engrenagens 8t, 24t e 40t, porém, existem diversos outros tipos de engrenagens LEGO. Assim, agora vamos explorar outros tipos existentes. Em construções sem botões, ao contrário das tradicionais construções com tijolos, os buracos nas vigas empilhadas têm a mesma distância dos buracos numa viga simples. Isto significa que engrenagens conectadas devem estar a um mesmo número de buracos, conectadas horizontalmente na mesma viga, ou verticalmente numa pilha de vigas (veja Figs. 2.5 e 2.6).

Figura 2.5 – Acoplamento vertical de engrenagens

Figura 2.6 – Acoplamento vertical e horizontal de engrenagens

Page 15: A Geometria Lego - Cap 1

20

EEEEngrenagensngrenagensngrenagensngrenagens Reboque Reboque Reboque Reboque A Fig. 2.7 mostra um exemplo de engrenagens reboque. Qual é a razão do trem de engrenagens exibido ali? Começando da 8t, o primeiro estágio produz uma redução 8:24 e o segundo estágio, 24:40. Multiplicando as duas frações, temos 8:40, ou 1:5, o mesmo resultado pode ser obtido diretamente com as engrenagens 8t e40t. A 24t intermediária é uma engrenagem reboque, que não afeta a razão. As engrenagens reboque são muito comuns em máquinas, usualmente ajudando a conectar eixos distantes. Estas engrenagens reboque não tem apenas esta função, uma vez que tem um efeito importante: invertem a direção da saída.

Outra engrenagem direta é a 16t (Fig. 2.7). Sua razão é 1 e combina com outra 16t em uma distância de 2.

Figura 2.7 - Engrenagem 16t

Quando você está usando um par de 16t, a razão resultante é 1:1.

Não se consegue qualquer efeito sobre a velocidade angular ou torque (exceto na conversão de uma delas em atrito), mas de fato, existem razões para usá-las em pares: quando queremos transferir o movimento de um eixo a outro sem quaisquer outros efeitos. Esta é, na realidade, outra tarefa para a qual as engrenagens são frequentemente utilizadas. Existe uma classe especial de engrenagens especificamente projetadas para transferir movimento de um eixo a outro, perpendiculares entre si, denominadas engrenagens chanfradas.

FolgaFolgaFolgaFolga Algumas engrenagens podem ser acopladas diagonalmente. Isto é, elas podem ser acopladas não ao longo de uma viga horizontal ou vertical, mas numa diagonal. O acoplamento diagonal é frequentemente menos precisa que os tipos horizontal e vertical, porque isto resulta numa distância levemente maior entre os dentes da engrenagem. Esta distância extra aumenta a folga, que é a quantidade de oscilação que a engrenagem pode suportar sem afetar o acoplamento. A folga é amplificada na aceleração e reduzida na frenagem. Ela geralmente tem um pior efeito sobre o sistema, reduzindo a precisão com a qual podemos controlar o eixo de saída, e por esta razão, ela deve ser mantida no mínimo.

Page 16: A Geometria Lego - Cap 1

21

O membro mais comum desta classe é a engrenagem chanfrada 12t, que pode ser usada apenas para esta tarefa (Fig. 2.8), o que significa que não combina com qualquer outra engrenagens que vimos até o momento. Todavia, ela cumpre uma função muito útil, permitindo a transmissão do movimento numa nova direção, enquanto necessita de um mínimo de espaço. Existe ainda uma engrenagem chanfrada cônica com o mesmo projeto da 12t comum (Fig. 2.9). Estas engrenagens chanfradas tem meia viga de espessura, enquanto as outras tem uma viga de espessura.

Figura 2.8 – Engrenagens chanfradas em eixos perpendiculares

Figura 2.9 – Engrenagem chanfrada 20t

A engrenagem 24t também existe na forma de uma engrenagem coroa, que é uma engrenagem especial com dentes frontais que podem ser usados como uma 24t comum, mas também pode ser combinada com outra engrenagem reta para transmitir movimento numa direção ortogonal (isto é, composta por ângulos diferentes), possivelmente alcançando ao mesmo tempo uma razão diferente de 1:1 (Fig. 2.10).

Figura 2.10 – A Engrenagem coroa em eixos perpendiculares

Page 17: A Geometria Lego - Cap 1

22

Podemos notar outro grupo de engrenagens LEGO. Elas são mais largas e os eixos de seus dentes parecem como uma engrenagem chanfrada em ambos os lados. Elas são chamadas engrenagens bichanfradas. Contando o número de dentes destas, encontraremos engrenagens 12t, 20t e 36t (Fig. 2.11).

Figura 2.11 – Engrenagens bichanfradas 12t, 20t e 36t

Podemos notar que se colocarmos duas destas engrenagens, de mesmo tamanho, numa única viga, elas não se encaixarão. Por esta razão, engrenagens bichanfradas são geralmente usadas em pares de tamanhos diferentes, por exemplo, 12t e 20t, ou 12t e 36t. Estas engrenagens são projetadas para funcionar bem tanto na perpendicular quanto na horizontal (Fig. 2.12).

Figura 2.12 – Exemplos de acoplamento de engrenagens bichanfradas

Pares de engrenagens bichanfradas incompatíveis usam o mesmo espaço entre buracos que as engrenagens retas, então, pares destas podem ser usados no lugar de pares de engrenagens retas, proporcionando novas razões – por exemplo, um par de bichanfradas 12t e 20t numa distância de 2, é o mesmo que um par de 8t e 24t retas. Deve-se tomar cuidado ao misturar bichanfradas com retas, embora elas utilizem o mesmo espaço de buracos, elas não trabalham bem entre si, e devem ser usadas em pares (Fig. 2.13).

Page 18: A Geometria Lego - Cap 1

23

Figura 2.13 – Engrenagens bichanfradas e retas em um trem de

engrenagens A última engrenagem a ser apresentada não se parece com uma engrenagem. De fato, ela não é conhecida como uma engrenagem, mas como uma roda-maçaneta (Fig. 2.14).

Figura 2.14 – Roda-maçaneta

A roda-maçaneta é basicamente uma engrenagem 4t (Fig. 2.15). Conectando um par destas, observamos que ela trabalha bem como uma engrenagem. Como as engrenagens bichafradas, elas podem trabalhar perpendicularmente (Fig. 2.17).

Figura 2.15 – Roda-maçaneta em eixos perpendiculares

As roda-maçanetas tem uma maior vantagem do que as engrenagens bichanfradas, quando solicitadas em configurações de eixos perpendiculares. Conectando duas destas, observamos qual a área de contato entre seus ‘dentes’. De fato, esta área de contato é muito maior, o que significa que pode transmitir muito mais torque de um eixo a outro.

Page 19: A Geometria Lego - Cap 1

24

Polias, Correias e Correntes Polias e correias são duas classes de componentes projetadas para trabalhar em conjunto e desempenham funções semelhantes às engrenagens, porém, não da mesma maneira. Elas têm, de fato, algumas peculiaridades que serão exploradas a seguir. O kit MINDSTORMS NXT inclui algumas polias, mas não tem correias, que devem ser adquiridas separadamente. As correntes também não fazem parte do kit NXT. Embora não sejam essenciais, elas permitem criar conexões mecânicas que têm as mesmas propriedades de sistemas de trem de engrenagens e polia-correia. Polias e Correias As polias são como rodas com um sulco ao longo do seu diâmetro. Podem ser encontrados 4 tipos de polias LEGO (Fig. 2.16).

Figura 2.16 – Tipos de polias LEGO

A menor é, na realidade, uma meia bucha, normalmente usada para fixar eixos, evitando deslizamento. Porém, devido ao sulco que possui, pode ser apropriadamente chamada de polia. Seu diâmetro é uma unidade LEGO, com meia unidade de espessura. A polia média (à direita) tem meia unidade de espessura e 3 unidades de diâmetro. As correias LEGO são anéis de borracha em 4 tipos, com diferentes cores correspondentes a diferentes comprimentos: branco, azul, vermelho e amarelo. Não confunda as correias com elásticos, pois, as correias têm muito menos elasticidade, e por esta razão, são adequadas para transferir movimento entre duas polias. Este é o propósito real das correias, conectarem um par de polias. As correias LEGO são projetadas para se encaixar perfeitamente no sulco das polias LEGO. Num sistema com um par de polias conectadas por uma correia, a correia transfere o movimento de uma polia a outra, trabalhando de forma semelhante a um par de engrenagens. A razão de redução entre 2 polias é encontrada por meio da razão entre seus diâmetros. Na realidade, deve-se considerar o diâmetro da polia dentro de seu sulco, pois, os lados do sulco servem para impedir que a correia deslize da polia.

Page 20: A Geometria Lego - Cap 1

25

Devemos considerar que as polias não são muito adequadas para transmitir torques elevados, uma vez que as correias tendem a escorregar. A quantidade de deslizamento não é fácil de estimar, pois depende de diversos fatores, como torque e velocidade, tensão da correia, atrito entra a correia e a polia e a elasticidade da correia. Por estas razões, preferimos uma abordagem experimental e medir algumas razões entre diferentes combinações de polias sob certas condições controladas. Os resultados estão na Tab. 2.1.

Tabela 2.1 – Razões entre polias meia buchameia buchameia buchameia bucha polia pequenapolia pequenapolia pequenapolia pequena polia médiapolia médiapolia médiapolia média polia grandepolia grandepolia grandepolia grande

meia bucha 1:1 1:2 1:4 1:6 polia pequena 2:1 1:1 1:2.5 1:4.1 polia média 4:1 2.5:1 1:1 1:1.8 polia grande 6:1 4.1:1 1.8:1 1:1

Estes valores podem mudar significantemente numa aplicação real, quando o sistema está sob carregamento. Por isto, é melhor pensar nestes valores apenas como uma possível indicação da razão para sistemas onde baixo torque é aplicado. De forma geral, deve-se usar polias em primeiros estágios de sistemas de redução, onde a velocidade é alta e o torque é baixo. O próprio problema de deslizamento pode ser visto, dependendo do sistema, de forma positiva, agindo como um mecanismo de limitação de torque tal como aquele discutido no caso da engrenagem coroa, com os mesmos benefícios e aplicações. Entretanto, devemos tomar cuidado na utilização de correias e polias para permitir deslizamento num dado sistema. As correias, girando ao redor de uma polia que não gira, causam atrito e conseqüente aquecimento do sistema e a correia pode arrebentar. Além do que, as correias têm uma tendência de saltar da polia, causando uma falha geral no sistema.

Outra vantagem das polias sobre as engrenagens é que a distância não é problema. De fato, ela ajuda quando é necessário transferir movimento a um eixo distante (Fig. 2.17), e em alta velocidade, elas causam muito menos barulho que as engrenagens, uma característica que, algumas vezes, é útil.

Figura 2.17 – Polias: transmissão de movimento a longas distâncias

Page 21: A Geometria Lego - Cap 1

26

Correntes As correntes LEGO são de dois tipos: elos corrente e elos trilho. A LEGO produz 2 tipos diferentes de elos trilho. O primeiro tem o mesmo sistema de engate que os sistema de elos corrente. Eles são encaixáveis entre si de modo a criar uma corrente no tamanho desejado. O segundo elo trilho usa um sistema de engate diferente, e então só pode ser conectado com outras peças de seu tipo (Fig. 2.18).

Figura 2.18 – Elo corrente, elo trilho e o novo estilo de elo trilho

As corrente são usadas para conectar engrenagens da mesma forma que as correias conectam polias. Elas têm propriedades semelhantes também: ambos os sistemas acoplam eixos paralelos sem reversão da direção de rotação e ambos permitem a conexão de eixos distantes. A grande diferença entre os dois é que os elos corrente não permitem qualquer deslizamento, e então, transferem todo o torque (na realidade, o torque máximo que uma corrente pode transferir depende da resistência de seus elos individuais, o que no caso dos elos LEGO não é muito alta). Por outro lado, eles introduzem atrito adicional no sistema, e por esta razão são menos eficientes que combinações diretas de engrenagens. As correntes podem ser úteis quando se deseja transferir movimento a eixos distantes mas em baixa velocidade. A razão de duas engrenagens ligadas por uma corrente é a mesma que sua razão correspondente em conexão direta. Por exemplo, uma 16t ligada a uma 40t resulta numa razão 2:5.

Os elos trilho podem ser usados para construir robôs de esteira Entretanto, como a maior parte das peças LEGO, são de plástico. Então, proporcionam pouca aderência quando utilizados sobre superfícies escorregadias como madeira, revestimentos cerâmicos ou plásticos. Eles trabalham melhor em outras superfícies, como carpetes. As engrenagens usadas para conduzir correntes ou trilhos são comumente conhecidas como dente de roda. As correntes LEGO e os elos trilhos mais antigos, usam engrenagens retas como suas dente de roda. O novo modelo de elo trilho usa um outro tipo de dente de roda projetada para acoplamento apenas com este tipo de elo. Assim, ele não funciona com outros tipos de engrenagem.

Page 22: A Geometria Lego - Cap 1

27

O Diferencial O diferencial é muito comum em carros, porém, mesmo sabendo que ele existe, não é comum conhecer a sua função e a sua real importância. Para experimentar sua funcionalidade, tomamos duas rodas do kit NXT e as conectamos ao eixo mais comprido (Fig. 2.19). Em seguida, colocamos as rodas sobre a mesa e as empurramos lentamente: elas rodam suavemente e avançam um pouco, em linha reta. Quando seguramos o eixo no meio e tentamos mudar a direção sentimos alguma dificuldade, não é fácil. A razão é que, quando duas rodas paralelas fazem uma curva, suas trajetórias têm comprimentos diferentes, onde a roda externa tem que cobrir uma distância maior que a roda interna (Fig. 2.20). Em nosso exemplo, não tem como fazê-las girar ao menos que deixemos deslizar um pouco.

Figura 2.19 – Duas rodas conectadas se movem em linha reta

Figura 2.20 – Numa curva as rodas cobrem distâncias diferentes

Page 23: A Geometria Lego - Cap 1

28

Na seqüência do experimento, é necessário construir o sistema exibido na Fig. 2.21. Vemos um diferencial com suas 3 engrenagens chanfradas 12t, 2 eixos de comprimento 6 e 4 vigas conectadas de modo a facilitar o manuseio do sistema. Colocando as rodas novamente sobre a mesa, notamos que, quando as empurramos é bem mais fácil alterar a direção. Observe que o corpo do diferencial: quando as rodas se movem em linha reta, o corpo gira, enquanto a engrenagem chanfrada fica parada. Por outro lado, se fazemos uma curva com o sistema parado, o corpo para e a engrenagem chanfrada gira. Em qualquer caso intermediário, ambos giram em alguma velocidade, adaptando o sistema àquela situação. Os diferenciais oferecem um modo de impor potência às rodas, sem a restrição proporcionada por um eixo fixo.

Figura 2.21 – Conectando rodas com um diferencial

Para usar esta configuração um veículo, temos que simplesmente aplicar potência ao corpo do diferencial, o qual tem uma 24t de um lado e uma 16t do outro. O diferencial tem muitas outras aplicações importantes. Podemos pensar nele como um dispositivo mecânico de adição/subtração. Tomemos novamente o dispositivo da fig. 2.27 sobre uma mesa. Rodando uma roda enquanto fixamos a outra, o corpo do diferencial gira a meia velocidade angular da roda. Vimos que, quando giramos o sistema no mesmo lugar, o diferencial não gira em quando as rodas giram na mesma velocidade o diferencial também gira com esta mesma velocidade. Deste comportamento, obtemos a seguinte fórmula:

(VaE1 + VaE2)/2 = VaS Onde VaS é a velocidade angular de saída (o corpo do diferencial) e VaE1 e VaE2 são as velocidades angulares de entrada (as duas rodas). Quando aplicamos esta equação, devemos lembrar que considerar

Page 24: A Geometria Lego - Cap 1

29

sinais (+ ou -) para a entrada, o que significa que se um dos eixos de entrada gira na direção oposta do outro, a velocidade de entrada de um deles é um número negativo (indicando apenas direção oposta). Por exemplo, se o eixo da direita gira a 100 rotações por minuto (rpm) e o da direita a 50 rpm, a velocidade angular do corpo do diferencial resulta em:

(100 rpm + 50 rpm)/2 = 75 rpm Existem situações quando, intencionalmente, invertemos a direção de uma entrada, usando engrenagens intermediárias, para fazer o diferencial sensível a uma diferença na velocidade das rodas, em vez de sua soma. Inverter a entrada significa que devemos fazer uma das entradas negativa. Veja o que acontece ao diferencial quando as duas rodas têm a mesma velocidade, por exemplo, 100 rpm:

(100 rpm – 100 rpm)/2 = 0 rpm O diferencial não se move, mas assim que aparece uma diferença entre as velocidades, o diferencial começa a girar com uma velocidade angular igual à metade desta diferença:

(100 rpm – 98 rpm)/2 = 1 rpm Isto é um truque interessante quando queremos ter certeza se nossas rodas giram na mesma velocidade e cobrem a mesma distância: observar o corpo do diferencial e reduzir a roda da esquerda ou direita apropriadamente para mantê-lo parado.

Page 25: A Geometria Lego - Cap 1

30

Capítulo 3

3 Motores Introdução Os motores serão nossa fonte primária de potência. Nossos robôs se valerão deles para se mover, levantar peso, operar braços, agarrar objetos, bombear ar, enfim, desenvolver qualquer outra tarefa que exija potência. Existem diferentes tipos de motores elétricos, todos eles partilhando da propriedade de conversão de energia elétrica em energia mecânica. Antes de mergulhar no mundo dos motores, são necessários alguns conceitos básicos de eletricidade. Devemos ter ciência a respeito das diferenças entre dois tipos de corrente elétrica: corrente alternada (alternating current – AC) e corrente contínua (direct current – DC). A corrente alternada é o tipo de eletricidade encontrada nas tomadas das nossas casas, enquanto que as baterias e pilhas são os tipos mais comuns de corrente contínua. Todos os dispositivos elétricos LEGO, incluindo motores, trabalham com apenas com corrente contínua (DC). Para entender o que é DC, imagine um curso de água caindo numa cachoeira. A eletricidade correndo num fio não é muito diferente: quando conectamos uma bateria a um dispositivo como uma lâmpada ou um motor, criamos um circuito através do qual a eletricidade flui, mais ou menos como a água num riacho. Sabemos que as baterias tem sinais positivo (+) e negativo (-): estes sinais indicam dois pólos, onde os elétrons fluem de (-) para (+), como se o pólo (-) fosse o topo da cachoeira e, como resultado, a corrente fecha o ciclo fluindo de (+) para (-). É comum utilizar um moinho d’água num riacho para converter a energia (mecânica) da água em energia elétrica. De modo semelhante, um motor converte o fluxo de elétrons (corrente) em energia mecânica. Se no riacho pudéssemos mudar o sentido da água, o moinho também teria o seu sentido de rotação invertido. Acontece algo semelhante com os motores DC, pois eles tem 2 conectores, um para o pólo negativo e outro para o pólo positivo de um fonte DC. Assim, a corrente sai de um pólo da bateria, passa pelo motor, fazendo-o se mover e retorna pelo pólo oposto da bateria. Se invertermos a polaridade, ou seja, trocarmos a conexão dos fios, mudaremos a direção de rotação do motor. Continuando nossa metáfora hidráulica, podemos descrever a quantidade de água no riacho por meio de dois fatores: a velocidade da água e largura do riacho. Estas duas características terão forte influência no tipo de trabalho que o moinho poderá produzir. No mundo da eletricidade, a velocidade é chamada voltagem e a largura (intensidade) é chamada corrente. Estas grandezas são expressas, respectivamente, em volts (V) e amperes (A), ou algumas vezes, por seus submúltiplos, milivolts (mV) e miliamperes (mA). A quantidade de trabalho que um fluxo elétrico pode produzir (num motor, por exemplo)

Page 26: A Geometria Lego - Cap 1

31

depende dessas duas quantidades. Mais precisamente, depende de seu produto, chamado potência, e sua medida é dada em watts (W). Todos os motores são projetados para rodar com uma voltagem específica, mas eles são muito tolerantes quando acontece uma queda de voltagem. Eles simplesmente giram mais lentamente. Entretanto, se aumentarmos a voltagem acima do limite especificado para o motor, há uma boa possibilidade de se queimar o motor. A corrente tem um comportamento diferente. É o motor que “decide” quanta corrente é necessária de acordo com o trabalho que está sendo feito: maior carregamento carece de maior voltagem. A situação que devemos evitar a todo custo quando trabalhamos com o NXT é que o motor trave (isto é, conectá-lo à fonte de potência, mas algo o impede de rodar). O que acontece neste caso é que o motor tenta vencer a resistência, solicitando mais corrente que se transforma em energia térmica ao invés de energia mecânica, ou seja, calor. Esta é a condição mais perigosa para um motor elétrico. E é aqui que o uso da embreagem se faz necessário, limitando o torque máximo e prevenindo situações de travamento. Variação de Velocidade Todo motor contém uma ou mais bobinas e ímãs permanentes que convertem energia elétrica em energia mecânica, mas não precisaremos deste nível de detalhamento sobre o funcionamento de um motor. na construção de robôs, o que precisamos lembrar é que todo motor tem um conector através do qual se fornece energia a ele, e um eixo de saída que desenvolve a potência. A LEGO tem diversos tipos de motores, todos de 9V DC e com diferentes propriedades e características para várias aplicações.A Fig. 3.1 exibe um típico servomotor NXT.

Figura 3.1 – Servomotor NXT

O servomotor NXT não tem apenas engrenagens em seu interior, mas também, outros componentes eletrônicos para garantir informações precisas sobre posicionamento. Este motor roda em baixa rpm, mas tem alto torque. Algumas propriedades destes motores são dadas na Tab. 3.1.

Page 27: A Geometria Lego - Cap 1

32

Tabela 3.1 – Propriedades do servomotor NXT Voltagem (máx.)

Corrente mín.

(s/ carga)

Corrente máx.

(travam.)

Velocidade máx.

(s/ carga)

Velocidade sob carga típica

9V DC *12 V DC

60 mA 2A 170 rpm 100-130 rpm

* não recomendado para longos períodos

Como liberar um micromotor emperradoComo liberar um micromotor emperradoComo liberar um micromotor emperradoComo liberar um micromotor emperrado Um micromotor se emperra muito facilmente, então é preciso saber o que fazer quando isto acontece. Os passos seguintes devem ajudar:

a) Desligue o motor tão rápido quanto possível. Desconecte o cabo de energia; é importante não deixar o motor travado com a fonte de energia ligada muito tempo, pois, podem ocorrer danos irreparáveis a ele.

b) Desacople o motor de qualquer conexão (engrenagens, polias, etc), deixando apenas uma polia acoplada diretamente ao eixo do motor.

c) Segure o motor e gire a polia suavemente, mas com firmeza na mesma direção que motor estava girando quando aconteceu o travamento. Ao mesmo tempo, empurre a polia contra o motor até ouvir um “clic”, Seu motor está normal novamente. Se você não souber a direção que o motor estava girando quando emperrou, tente as duas direções. Este procedimento geralmente funciona. Se não funcionar tente ligar o motor à bateria por um período curto de tempo, suficiente apenas para pulsos de corrente, ao mesmo tempo que executa a ação descrita no item c anterior. Montando Motores O servo motor NXT é projetado para acoplamento com as peças sem botões (vigas, vigas braço, etc). A porção maior do motor, que é a parte arredondada próxima ao terminal de conexão para o cabo, tem 7 unidades (equivalente aos buracos das vigas) de altura por 5 unidades de largura, enquanto que o eixo, ou seja, a parte laranja na extremidade oposta, tem 3 unidades de altura por 3 de largura. O motor tem em torno de 14 unidades de comprimento total e sua forma pouco usual exige prática nas montagens dos robôs.

Page 28: A Geometria Lego - Cap 1

33

Apesar da sua forma, o motor NXT se ajusta bem aos padrões de montagem de chassis e sua forma alongada permite um acoplamento simples. Quando desenvolvemos uma construção de um robô, é interessante aplicar o acoplamento do motor nos estágios iniciais da montagem de modo que o projeto se desenvolva “em torno” dos motores, apesar disto não ser uma regra. Na Fig. 3.2a, vemos que a parte arredondada tem duas vigas com 3 buracos na parte superior, que permitem a conexão por meio de pinos simples. Adjacente ao terminal para acoplamento do cabo de alimentação, temos outra viga com 3 buracos que pode ser utilizada para fazer a conexão com pinos duplos, por exemplo.

Figura 3.2 – Exemplos de montagem de motores NXT

Nas Figs. 3.2a e 3.2b, é possível observar ainda, outra viga com 3 buracos, próxima ao eixo rotativo do motor. E este eixo permite uma conexão direta com as rodas do robô, por exemplo, por meio de pinos. Quando precisamos transferir o movimento para um eixo diferente de rotação, isto pode ser feito de várias maneiras, porém, a mais usual é por meio de engrenagens. Devido ao considerável alto torque do motor NXT, correias não são muito eficientes devido ao deslizamento, conseqüência do torque. A Fig. 3.3a exibe um acoplamento para transferência de movimento a um eixo perpendicular ao eixo do motor e a Fig. 3.3b mostra outras possibilidades de executar esta ação.

Figura 3.3 – Transferência de movimento a eixos perpendiculares

Os motores NXT são perfeitamente acopláveis às estruturas e uma de suas vantagens é a facilidade de remoção para transferência de um lugar ou projeto para outro. Quando planejamos remover o motor da estrutura por algum motivo, é considerável adotar um sistema de acoplamento por pino com bucha de parada (Fig. 3.4). Estas buchas são fáceis de manusear, desde que o motor seja adequadamente alocado, permitindo uma remoção eficiente (fácil e rápida) da estrutura.

Page 29: A Geometria Lego - Cap 1

34

Figura 3.4 – Forma de acoplamento e remoção rápidas de motor NXT

O MINDSTORMS NXT usa cabos de conexão dos motores com plugues parecidos com os de telefone, porém, apesar da semelhança, não se pode simplesmente trocar um cabo NXT por um cabo de telefone comum (RJ-12). Os plugues tem uma pequena diferença geométrica que não permite uma permuta direta (Fig. 3.5).

Figura 3.5 – Cabo NXT e cabo RJ-12 padrão

Os motores NXT usam corrente contínua (DC – direct current) e são sensíveis à polaridade da conexão, mas o cabo NXT não permite que eles sejam conectados de forma equivocada. Usualmente, o motor NXT pode sofrer dois tipos de problema, o travamento e o deslizamento. O primeiro caso é perigoso, pois, quando o motor trava por algum motivo, por exemplo, uma montagem ou acoplamento equivocado, poderá acontecer a queima do motor. Se precisarmos de mais potência para uma determinada tarefa, a qual um único motor não poderia executar, podemos acoplar motores. Isto significa que podemos juntar vários motores para operar o mesmo mecanismo, dividindo o carregamento. É como se tivéssemos que carregar algo pesado e chamássemos um amigo para ajudar: o peso seria distribuído para as duas pessoas. Entretanto, quando tratamos com motores NXT, existe uma limitação específica: existe um dispositivo interno limitador de corrente, que não permite que os motores NXT

Page 30: A Geometria Lego - Cap 1

35

utilizem toda a corrente que é necessária para efetuar uma dada tarefa. E isto deve ser considerado como um limitador para a potência máxima que cada porta do NXT pode fornecer.

O O O O motor também é um gerador...motor também é um gerador...motor também é um gerador...motor também é um gerador... A característica interna do motor NXT permite que seja realizada uma pequena experiência de transformação de energia. Assim, se colocamos o motor sob o efeito de uma corrente elétrica, esta energia elétrica será transformada em energia mecânica. Agora, se ligarmos dois motores diretamente por meio de um cabo NXT e girarmos o eixo de um destes manualmente, a corrente gerada ali, será transmitida ao outro motor que também vai girar. Este é o caso de transformação de energia mecânica em elétrica.

Na Fig. 3.6 vemos dois motores conectados por meio de um eixo simples acoplado a uma engrenagem 40t. É relevante dizer que esse tipo de conexão direta não causará problemas aos motores, mesmo que um deles pare por algum momento. Entretanto, numa configuração como esta, é importante ter certeza que os movimentos dos motores não sejam executados em direções opostas. Fisicamente, os cabos dos motores não permitem esse tipo de oposição, mas é sempre bom verificar a programação, pois, via software é possível inverter a direção de rotação dos motores. Além disso, é verdade que os 2 motores podem girar em velocidades um pouco diferentes, ou com torques diferentes, mas isto não causa conflito, pois, um motor não “sabe” que o outro está trabalhando na mesma tarefa. Ele simplesmente reage ao carregamento, absorvendo mais corrente e tentando manter a mesma velocidade.

Figura 3.6 – Mecanismo com 2 motores NXT acoplados

Page 31: A Geometria Lego - Cap 1

36

Capítulo 4

4 Sensores Introdução Um dos mais importantes componentes de um robô é o sensor. É isto que faz o robô ser diferente, “enxergando” o ambiente a sua volta com a ajuda do sensor, permitindo que ele troque informações com o meio externo e execute determinadas ações. Este processo é denominado autonomia, e pode ser interpretado como “liberdade”. Um robô autônomo é um dispositivo auto-governante que lê as entradas de seus sensores e toma decisões baseadas nestas entradas. Desde a criação do LEGO MINDSTORMS em 1998, observamos uma demanda crescente por novos sensores, com aplicações diversificadas. O kit educacional 9797 vem com os seguintes sensores: ultrasom, toque, som e luz. Outros sensores podem ser adquiridos separadamente, como: acelerômetro, cor, temperatura, RFID, dentre outros. Neste capítulo, veremos em detalhes alguns destes sensores. Sensor de Toque O sensor de toque (Fig. 4.1) é provavelmente o mais simples e intuitivo de toda a família de sensores LEGO. Ele trabalha de forma semelhante a um botão de campainha, ou seja, quando pressionamos o botão, o seu circuito interno é fechado e a eletricidade flui através dele. O NXT consegue detectar o fluxo de corrente, e o programa pode ler o estado do sensor de toque, acionando um determinado comando em situações diferentes: se ele foi pressionado e solto, se ele foi travado e se mantém assim, ou ainda, se ele estava travado e foi liberado.

Figura 4.1 – Sensor de toque

Uma das aplicações mais comuns para este sensor é para atuar como um tipo de pára-choque, que é uma maneira simples de interagir com o ambiente, uma vez que, quando o robô esbarra num obstáculo, este sistema muda o comportamento adequadamente (mudando a direção, por exemplo).

Page 32: A Geometria Lego - Cap 1

37

Como mencionado anteriormente, o sensor de toque NXT tem três estados: travado, liberado e pressionado. Isto é realmente importante e permite determinar como o robô deve reagir em diferentes situações. Por exemplo, imagine um robô que o sensor de toque para detectar a passagem de um objeto numa esteira de transporte. Se o objeto parar em contato com o robô, o sensor permanecerá “travado”; se ele tocar o robô e passar o sensor reagirá como “pressionado”. Assim, podemos programar o robô, para no caso da leitura “travado” no sensor, o robô inverter a direção de movimento da esteira para que o objeto seja destravado. De forma alternativa, podemos utilizar o sensor como um contador, indicando quantas vezes o botão foi pressionado. Um pára-choque é uma estrutura móvel e leve que se choca com os obstáculos e transmite o impacto ao sensor, fechando-o. Podemos projetar muitos tipos de pára-choques, mas é sempre bom levar em conta a estrutura (forma) do robô e o formato dos objetos que devem ser considerados em colisões. Um modelo muito simples de pára-choque é exibido na Fig. 4.2 que é eficiente para detectar paredes, mas não funciona muito bem numa sala com objetos de várias formas, como cadeiras e mesas. Nestes casos, outros experimentos devem ser realizados. Por outro lado, simplesmente aumentar a largura ou comprimento do pára-choque, não é garantia que ele vai funcionar para todos os obstáculos, pois, ele pode não acionar eficientemente o botão do sensor. O exemplo da Fig. 4.2 na realidade é um pára-choque ineficiente, pois, quando ocorre o contato com o eixo, o sistema dificilmente fecha o contato do sensor, devido à característica transversal do mecanismo, além de transmitir a força diretamente ao sensor dificultando o acoplamento desta estrutura ao robô.

Fig. 4.2 – Exemplo de um pára-choque simples

Quando pensamos em pára-choques, temos a ideia de que eles devem pressionar o sensor quando há colisão com obstáculos. Porém, há outra forma de ação para verificar quando acontece uma colisão. A Fig. 4.3 exibe uma configuração onde o botão do sensor está suavemente travado com a ajuda de uma cinta de borracha, e a colisão com um obstáculo faz com que o botão do sensor seja liberado.

Page 33: A Geometria Lego - Cap 1

38

Figura 4.3 – Exemplo de um pára-choque “normalmente fechado”

Sensor de Luz Dizer que o sensor de luz (Fig. 4.4) pode ver, na realidade não é muito correto. O que ele realmente faz é detectar a luz ambiente e medir sua intensidade. Então, podemos pensar que ele é muito limitado, mas, ele pode ser utilizado numa grande variedade de aplicações.

Figura 4.4 – O sensor de luz

A diferença mais relevante entre o sensor de luz e o de toque é que o primeiro retorna muitos valores possíveis de leitura, ao contrário de apenas situação de desligado ou ligado (aberto ou fechado). Estes valores dependem da intensidade da luz que incide no sensor e o tempo de leitura desta luz. Nos softwares padrão, como o NXT-G ou RobotC a configuração padrão retorna valores percentuais, variando de 0 a 100.

Page 34: A Geometria Lego - Cap 1

39

Quanto maior a incidência de luz no sensor, maior o percentual apontado na leitura. Um exemplo de aplicação possível é construir o chamado robô seguidor de luz, que procura no ambiente por uma fonte de luz mais e forte e vai até ela assim que a encontra. Desde que tenhamos um ambiente sem interferência de outras fontes de luz, podemos controlar um robô desta forma, usando uma lanterna por exemplo. Esta habilidade é interessante, mas não é a coisa mais incrível que podemos fazer com este sensor. Existe outra característica neste dispositivo: ele não apenas detecta luz, mas também pode emitir luz, pois, possui um pequeno LED (diodo emissor de luz) vermelho que trabalha como fonte de luz, permitindo medir a luz que é emitida e refletida, retornando ao sensor. Nos softwares padrão de programação é possível ajustar o sensor para emitir luz ou não. Para ilustrar o conceito de medir a luz refletida, vamos executar um pequeno experimento. Pegue o NXT e ligue-o, acople um sensor de luz na porta de entrada 3. Escolha “Try Me” e na seqüência “Try-Light”, colocando o programa teste para rodar. Este programa teste faz com que o sensor de luz emita um feixe de luz que dependendo da distância dos objetos, emite um som diferente, quanto mais perto mais agudo é o som. Provavelmente, o uso mais comum do sensor de luz é na construção de robôs que lêem marcas ou linha no chão quando se movimenta. A trajetória do robô é determinada por marcas previamente indicadas no ambiente de movimento. O caso mais simples é o seguidor de linha. Este é um projeto muito simples e popular, devido à sua aparente simplicidade, mas demanda atenção e exige cuidado no projeto e na programação. Preste atenção no que acontece quando o sensor “lê” uma linha preta no chão. Quando o sensor está no chão, ele retorna, por exemplo, 70 %, enquanto que, sobre a linha preta ele retorna 30%. Se a movimentação acontece suavemente do chão para a linha e vice-versa, notamos que as leituras não pulam repentinamente de uma a outra, ou seja, elas vão mudando gradativamente de um nível a outro. Isto acontece porque o sensor não lê um único ponto, mas uma pequena área em frente o sensor. Então, o sensor, mesmo em cima da borda da linha, lê metade do chão e metade da linha, retornando um resultado intermediário. Este fato pode ser útil ou não, dependendo da aplicação. No caso de um seguidor de linha é útil, mas quando precisamos movimentar o robô numa região complexa, que inclui cores diferentes, ou combinação de cores, a leitura fica diretamente prejudicada. Neste caso, é necessário uma configuração, ou configuração mais sofisticada, por exemplo com um sensor de cor.

A leitura no sensorA leitura no sensorA leitura no sensorA leitura no sensor Um erro comum das pessoas é achar que o sensor de luz pode “ver” as cores. Ele pode apenas ver as variações das intensidades nas condições de luz, essencialmente numa faixa de variações de preto-e-branco. Por exemplo, se tomarmos as leituras do sensor comparando duas peças, uma preta e uma branca, o valor da leitura para a peça preta será

Page 35: A Geometria Lego - Cap 1

40

menor, pois, esta estará refletindo menos luz, enquanto que, para a peça branca, acontece o contrário. O sensor de luz é um dispositivo versátil que pode trabalhar de inúmeras formas. Podemos, por exemplo, construir uma forma de controle analógico, colocando um bloqueador multicolorido móvel de peças LEGO na frente do sensor. A Fig. 4.5 mostra um exemplo deste tipo. Quando rodamos a manivela, o sensor lê diferentes intensidades de luz.

Figura 4.5 – Controle analógico com sensor de luz

Sensor Ultra-sônico O sensor ultra-sônico NXT é exibido na Fig. 4.6. O princípio de funcionamento deste sensor é a emissão de ultra-som em alta freqüência que ao rebater em objetos retorna ao sensor e é lida, determinando-se a distância entre o sensor e os objetos. O tempo que o pulso ultra-sônico leva para rebater num dado objeto e retornar determina a distância. Quanto maior o tempo de resposta, mais distante está o objeto e vice-versa. Esta técnica é denominada ecolocalização e é utilizada pelos morcegos para determinar sua distância até um inseto batendo asas, por exemplo. A maneira usual de programar o sensor é por meio de uma consulta contínua ao ambiente, onde o valor da leitura é repassado como uma entrada que terá uma ou mais ações específicas no robô. Nos softwares padrão, as leituras são normalizadas, com valores entre 0 e 100. O NXT-G, por exemplo, permite que estes valores sejam colocados em polegadas ou centímetros.

Page 36: A Geometria Lego - Cap 1

41

Figura 4.6 – Sensor ultra-sônico

Quando optamos por um ou outro sensor, devemos ter em mente as vantagens e limitações de cada um destes. Em particular, no caso do sensor ultra-sônico temos uma larga faixa de atuação, capaz de trabalhar em quaisquer condições de luz ambiente (insensibilidade à luz). Por outro lado, o feixe ultra-sônico tem uma abertura de ação considerável (em torno de 30º), e por isso mesmo, até mesmo objetos pontuais podem ser detectados dentro deste feixe. Entretanto, determinados materiais, considerados “moles” podem amortecer (absorver) o feixe ultra-sônico e se tornarem “invisíveis”. Se tivermos dois sensores ultra-sônicos, podemos desenvolver projetos mais sofisticados para detecção de proximidade com o robô. Podemos usá-los em conjunto para decidir em qual lado do robô o obstáculo está e usar os valores para produzir um tipo de “radar” na tela do NXT. Sensor de Rotação O motor NXT tem uma característica especial: possui um encoder acoplado internamente que permite que ele também sirva como um sensor de rotação. Isto permite medir tanto a velocidade quanto a distância numa variedade de formatos que inclui graus, rotações e segundos. Ele age tanto como motor quanto como sensor de rotação, e tem um bloco de comandos dedicados a ele no NXT-G. A Fig. 4.7 exibe uma vista interna do servo motor, com destaque para o encoder, localizado à esquerda do tambor maior (motor). Na realidade, o encoder é um disco que contém 12 buracos que permitem que o sensor óptico leia 24 estados on/off (ligado/desligado) em cada rotação completa. Isto permite que o NXT identifique com uma resolução considerável a posição mais próxima do grau de rotação. Podemos observar também, as engrenagens internas do servomotor. Como dissemos anteriormente, esta configuração interna proporciona um torque considerável ao motor NXT.

Page 37: A Geometria Lego - Cap 1

42

Figura 4.7 – Vista interna de um servomotor NXT

Page 38: A Geometria Lego - Cap 1

43

Capítulo 5

5 Estratégias de Construção Introdução Até o momento tratamos de motores, engrenagens, sensores e da geometria particular das peças LEGO®. Agora partimos para uma nova etapa, onde juntaremos todos estes itens em construções um pouco mais complexas, onde o principal deve ser sua própria criatividade, uma vez que não existem regras ou estilos rígidos. Assim, neste capítulo serão exibidas dicas e sugestões que podem facilitar o projeto dos seus robôs. Construção com Vigas A construção de protótipos com peças LEGO®, que não possuem, botões é um tanto diferente dos tijolos tradicionais. Você deve se lembrar das amarrações com vigas do primeiro capítulo. O simples encaixe daqueles tijolos para construir uma estrutura rígida não pode ser utilizado na construção com vigas, as quais possuem uma característica mais flexível e leve. Entretanto, esta flexibilidade não significa fragilidade, uma vez que as construções com vigas podem ser tão fortes quanto com as construções apenas com tijolos. Os dois sistemas são diferentes e exigem técnicas diferentes de construção. A principal peça neste sistema de construção com peças sem botões é a viga (Fig. 5.1) e existem muitas maneiras de conectar uma ou mais vigas. A Fig. 5.2 exibe alguns componentes utilizados para conexão de vigas.

Figura 5.1 – Duas vigas paralelas

A B C D

Page 39: A Geometria Lego - Cap 1

44

Figura 5.2 – Métodos de conexão de vigas paralelas A opção A é uma viga simples que pode ser conectada por meio de pinos em cada uma das vigas paralelas. Uma única viga transversal nem sempre é útil, mas um par destas pode conectar outro par, num tipo de conexão denominado ligação paralela (Fig. 5.3). Este sistema funciona bem em algumas situações, mas apresenta flexibilidade que pode ser um problema em outros casos.

Figura 5.3 – Exemplo de ligação paralela

Nota: lembre-se de usar pinos azuis ou pretos para conectar vigas, pois eles proporcionam um atrito maior que os pinos de outras cores, estes últimos utilizados para conexões que carecem girar, como um braço por exemplo.

Devemos usar a opção B para uma configuração mais rígida. Trocando uma das vigas retas na ligação da Fig. 5.3 por uma viga em formato L, obtemos uma flexibilidade menor, desde que utilizemos 3 pinos de conexão. A opção C é usada para conectar duas vigas e as mantém paralelas, sem permitir movimento entre elas, entretanto, esta opção é menos rígida que uma combinação das opções A e B. A opção D é outro método que podemos usar para ligar duas vigas, com a desvantagem de poder ser utilizada para casos de tração, pois as peças podem se soltar. Porém, em casos de compressão ela funciona bem e pode suportar algum peso.

Agora, vamos mudar a orientação (girar 90º em torno de seu eixo maior) das vigas paralelas exibidas na Fig. 5.1 e tentar conectá-las de outra maneira. A Fig. 5.4 exibe várias maneiras de conectar vigas nesta dada orientação, sendo que as duas primeiras opções, A e B, usam peças projetadas especificamente para este propósito. Estes tipos de conectores mantêm as vigas paralelas em todas as direções. Entretanto, eles falham se as vigas forem colocadas sob tensão, ou seja, quando as vigas forem puxadas em direções opostas, as peças se soltarão.

Page 40: A Geometria Lego - Cap 1

45

Tensão e compressãoTensão e compressãoTensão e compressãoTensão e compressão A tensão e a compressão são duas forças que podem agir sobre os objetos. A tensão é uma força que tende a esticar ou alongar um objeto. A compressão é exatamente o contrário, ela tende a compactar ou encurtar este objeto. A opção D na seção anterior é um bom exemplo. Na compressão, quando duas extremidades estão sendo forçadas, esta configuração pode funcionar bem. Entretanto, sob tensão, quando as duas extremidades são puxadas em sentidos opostos, as peças se soltarão. Todas as outras opções trabalham tanto em compressão quanto em tensão, não devendo falhar numa ou noutra situação, no mínimo até um limite razoável das peças plásticas LEGO®. As opções C e D são boas opções para conexão de vigas, entretanto, de modo oposto aos casos anteriores, elas falham quando submetidas à compressão.

Figura 5.4 – Conexão de vigas paralelas sob tração e compressão

E quando precisamos conectar duas vigas paralelas, resistentes à tração e à compressão? A partir das configurações C e D, podemos simplesmente, adicionar mais conectores, conforme a Fig. 5.5. Esta configuração previne falha tanto em tensão quanto em compressão. Este tipo de conexão tem outra vantagem, pois, as vigas não podem pivotar, rodar ou deslizar, resultando numa configuração forte e rígida que não falhará tão facilmente.

Page 41: A Geometria Lego - Cap 1

46

Figura 5.5 – Configuração resistente à tensão e à compressão

A insistência na conexão de vigas de modo a obter uma estrutura forte e rígida, porém com um número menor de peças, objetiva um resultado mais compacto e leve, pois, o peso é um importante fator que precisamos controlar, em particular, quando lidamos com robôs móveis. O aumento de peso estrutural, ocasiona uma queda no desempenho, devido à inércia causada pela massa e ao atrito que o conjunto rodas/eixos devem suportar.

O que é inércia?O que é inércia?O que é inércia?O que é inércia? Em física, inércia é a tendência que os objetos têm de resistir a mudanças num estado de movimento ou repouso. Objetos em repouso, tendem a ficar em repouso, enquanto que objetos em movimento tendem a ficar em movimento, se movendo com a mesma direção e velocidade. Todos os objetos têm esta tendência, uns mais, outros menos: principalmente porque a inércia depende da massa (quantidade de matéria). Um bom exemplo de como a massa afeta a inércia vem de uma atividade comum a todos: carrinho de compras num supermercado. Quando o carrinho está vazio, é muito fácil empurrá-lo e pará-lo em qualquer direção. Quando vamos enchendo o carrinho, parece que ele vai ficando mais “pesado pra dirigir” e temos que empregar cada vez mais força para guiá-lo, mesmo para começar o movimento. Isso acontece devido à quantidade de coisas que colocamos dentro dele, aumentando a massa e consequentemente a inércia. De maneira semelhante, quando mais massa tiver um robô, mais força será exigida dos motores, tanto para movimentá-lo quanto para pará-lo. Modularização Enquanto construímos nosso robô, é comum ter que desmontá-lo ou reconstruí-lo, ou mesmo algumas partes dele, várias vezes. Isso faz parte do processo natural de criação, num tipo de tentativa e erro. A não ser que você tenha muita experiência em projeto de protótipos de robôs,

Page 42: A Geometria Lego - Cap 1

47

a construção não vai diretamente da sua idéia para as suas mãos de forma trivial. Por esta razão, é melhor que os seus modelos sejam fáceis de manusear/desmontar, e isso é possível por meio de estruturas modularesmodularesmodularesmodulares. Esta técnica modular também permite reutilizar as partes ou peças em outros projetos, sem que seja necessário reconstruir subsistemas que já existem, embora isto não seja sempre possível e nem uma regra a ser seguida. Não existe uma maneira padrão de construir robôs, e apenas a experiência mostrará os melhores caminhos para transformar as suas idéias em um projeto funcional. A utilização de sensores e motores LEGO® exige um pouco mais de planejamento, devido à sua forma peculiar, com pontos de montagens em posições pré-determinadas, o que não possibilita um acoplamento direto a qualquer estrutura. Por esta razão, devemos planejar onde iremos acoplar os motores e sensores, tendo em mente um esboço do projeto que queremos desenvolver. Isto pode fornecer um projeto mais compacto e mais forte. Infelizmente, sem um planejamento adequado, pode ser impossível a remoção de motores ou sensores sem a desmontagem de grande parte da estrutura ao redor destes. É possível maximizar a modularidade quando combinamos o NXT, motores e os sensores em um robô, criando submecanismos que, quando juntos, resultam num robô completo. Um submecanismo deve ter motores, sensores ou o próprio NXT, de forma que o acoplamento destes seja o mais simples e fácil possível. Desta forma podemos remover, reconstruir ou melhorar, e reinstalar submecanismos sem alterar outros submecanismos. A Fig. 5.6 exibe um modelo de robô modular, que pode ser separado em 3 submecanismos.

Figura 5.6 – Exemplo de robô modular

Efetuando uma desconexão nos pontos apontados pelas setas na

Fig. 5.7, separamos o robô em 3 partes, uma que contém a parte dos

Page 43: A Geometria Lego - Cap 1

48

motores (Fig. 5.8a), outra composta pelo chassi e o NXT (Fig. 5.8b) e a terceira que é a porção do sensor (Fig. 5.8c). Estas partes podem ser rearranjadas para formar outro mecanismo ou mesmo reconstruir o protótipo original.

Fig. 5.7 – Pontos para desconexão do protótipo modular

(a) (b) (c)

Fig. 5.8 – Submecanismos de um robô modular

Nota: Uma boa razão para fazer com que o NXT seja facilmente desacoplado, é a facilidade para trocar as baterias quando necessário. A maneira mais comum de se conseguir isto é deixar o NXT na parte superior do seu robô. Isto também permite um acesso direto aos botões e ao display. Também é uma boa idéia ter acesso direto às portas dos sensores e motores, tanto quanto à porta USB do NXT, pois, poderemos assim, conectar os cabos sem precisar desmontar qualquer parte do robô.

Page 44: A Geometria Lego - Cap 1

49

Finalmente, podemos apontar outra vantagem da construção modular. Imagine que você construa um protótipo muito grande. Se este for modular e precisamos transportá-lo de um lugar para outro, a modularização permite um manuseio muito mais fácil, pois, desmontamos as partes (submecanismos) e remontamos os módulos facilmente, quando chegarmos ao novo destino, obtendo a estrutura completa original. Carregamento da Estrutura Se pensarmos numa configuração mínima para um robô móvel, com apenas o NXT e dois motores temos em torno de 450g. Adicionando cabos, sensores e outras peças estruturais este robô básico pode chegar a 600g ou mais. Vemos aqui, que o aumento da massa é fator de interesse no projeto. Outro fator que deve ser considerado é o atrito. Sempre devemos tomar cuidado para que ele seja minimizado. Este fator deve ser observado nas partes da estrutura onde se conectam as rodas, pois é ali que é realizada a transferência de peso da estrutura às rodas, por meio dos eixos. A roda age como uma alavanca: quanto maior a distância de seu suporte, maior a força resultante no eixo. Assim, as forças tendem a dobrar os eixos, torcer as vigas e produzir aumento do atrito entre o eixo e a viga que o suporta. Por esta razão, é importante que as rodas estejam o mais próximo possível da viga que a suporta. A Fig. 5.9 mostra três exemplos, sendo que A é o pior caso e C é o melhor caso.

A B C

Figura 5.9 – Casos de espaçamento entre roda e viga suporte É uma boa ideia também, apoiar os eixos de carga com mais de uma viga simples, sempre que possível. Os três exemplos da Fig. 5.10 são melhores que os da Fig. 5.9, sendo que o sistema C é o melhor entre todas as soluções mostradas até aqui. O uso de dois suportes, um de cada lado da roda, como uma bicicleta, evita qualquer efeito de alavanca criado pelo eixo no suporte, reduzindo consideravelmente o atrito.

Page 45: A Geometria Lego - Cap 1

50

A B C Figura 5.10 – Exemplos de suporte para rodas

Por outro lado, manter as engrenagens tão próximas do suporte quanto possível, também é importante (Fig. 5.11). O posicionamento das engrenagens próximas das vigas suporte ajuda a reduzir ou eliminar qualquer deslizamento das engrenagens. Se não colocamos as engrenagens desta forma, os eixos aos quais elas estão acopladas podem fletir um pouco, podendo causar deslizamento das engrenagens quando estas forem submetidas à carragamento.

Figura 5.11 – Posicionamento de engrenagens em relação às vigas

suporte Outro fator importante é colocar o suporte na mesma orientação das engrenagens. Se as engrenagens são orientadas verticalmente, o apoio principal também deve estar na direção vertical. Quando colocado sob carregamento, as forças sobre as engrenagens e eixos tendem a afastar os suportes. Então, é necessário orientar estes suportes de modo que eles resistam a esta força (afastamento). Da mesma forma, se as engrenagens estão colocadas na horizontal, seu suporte deve estar na horizontal também. A Fig. 5.12 ilustra esta ideia, onde os suportes principais para as engrenagens são colocados verticalmente, enquanto as engrenagens estão alinhadas horizontalmente. Quando colocadas sob carregamento, as engrenagens tentam se afastar uma da outra, primeiramente, na direção horizontal. Assim, se não existir um pequeno suporte na estrutura que resista a isso, as engrenagens vão deslizar. Isto pode ser evitado, simplesmente colocando uma viga entre as duas engrenagens, ligando seus eixos de rotação e reduzindo a possibilidade de deslizamento.

Page 46: A Geometria Lego - Cap 1

51

Figura 5.12 – Suporte para engrenagens alinhadas em vigas suporte

É melhor que as engrenagens estejam sobre a viga suporte, mas isto nem sempre é possível. Então, no mínimo elas precisam ser alinhadas com o suporte tão próximo quanto possível. A Fig. 5.13 exibe três casos onde A é a “pior” situação e C é a “melhor”.

A B C

Figura 5.13 – Engrenagens colocadas próximas à viga suporte Sincronização Estrutural A posição do NXT tem uma forte influência no comportamento dos robôs móveis. É a forma e o peso do robô que determina como ele reage ao movimento. O NXT, com as baterias, é o elemento mais pesado na construção dos robôs e portanto, a parte mais importante em relação ao balanceamento do carregamento. Aqui, a inércia pode explicar esta importância, pois, toda massa resiste à mudança de movimento e alguns casos, resiste à aceleração. Quanto maior a massa, maior a força necessária para alcançar uma dada variação de velocidade. O exemplo a seguir resume os conceitos deste capítulo. Temos um protótipo na Fig. 5.14 que apresenta uma certa simplicidade mas nos permite uma exploração muito intuitiva e esclarecedora. Os motores estão integrados ao chassi deste robô e são responsáveis pela potência de movimento, agindo ainda, como componentes estruturais. As vigas superiores estão conectadas aos motores e as inferiores, ligadas aos motores por vigas tipo L, apoiando os eixos dos motores, aumentado a rigidez da estrutura. As duas laterais do robô (simétricas) também são ligadas por vigas horizontais. A parte superior foi montada para suportar compressão, já esperando o peso do NXT.

Page 47: A Geometria Lego - Cap 1

52

Figura 5.14 – Exemplo de robô sem o NXT

A Fig. 5.15 mostra a parte inferior do robô. As rodas estão colocadas tão próximas quanto possível, agindo como suporte e reduzindo os efeitos que podem introduzir mais atrito ao sistema. Os eixos são apoiados dos dois lados dos motores. O

Figura 5.15 – Vista inferior do robô sem o NXT

Esta plataforma é modular e apesar dos motores estarem

perfeitamente integrados à estrutura, eles também podem ser removidos sem dificuldade. O conjunto da roda giratória traseira pode

Page 48: A Geometria Lego - Cap 1

53

ser desacoplado da estrutura, simplesmente puxando a viga suporte conforme Fig. 5.16.

Figura 5.16 – Remoção do conjunto da roda traseira giratória

As rodas de tração, que estão conectadas diretamente aos motores também podem ser removidas facilmente, conforme as direções indicadas na Fig. 5.17.

Figura 5.17 – Remoção das rodas direita e esquerda

Se tivermos apenas o kit básico NXT, provavelmente não teremos peças suficientes para montar quantos robôs gostaríamos, então é

Page 49: A Geometria Lego - Cap 1

54

interessante que possamos nos valer destes sistemas de acoplamento e desacoplamento simplificando, o que permite muitas vezes, utilizar a base de um protótipo em outro tipo de construção. Este exemplo é um bom modelo para avaliarmos outra característica importante que mencionamos anteriormente: a inércia. Exibimos o robô sem a conexão com o NXT e isto deve ser bem observado agora. O acréscimo de massa no sistema altera de forma considerável toda a estrutura, principalmente, no modo como é efetuado o acoplamento, ou seja, em que parte da estrutura base, devemos conectar o NXT. Cada modelo tem uma construção diferente, e a boa colocação do NXT pode ser determinada naturalmente e de modo experimental. Quando o NXT é colocado um pouco à frente dos eixos das rodas de tração (Fig. 5.18), em sentido oposto à roda giratória traseira, esta última tende a se levantar do chão quando a direção do movimento é alterada. Isto cria uma condição de instabilidade, resultando numa falha de desempenho nas tarefas do robô.

Figura 5.18 – Posicionamento instável do NXT na estrutura

Quando deslocamos o NXT na direção oposta, mais para o lado da roda traseira giratória, o robô torna-se estável (Fig. 5.19). Porém, a mobilidade desta roda fica comprometida em virtude do acréscimo de massa e não trabalhará de forma eficiente.

Page 50: A Geometria Lego - Cap 1

55

Figura 5.19 – Carregamento inadequado sobre o conjunto móvel traseiro

A melhor posição (Fig. 5.20) é algo intermediário entre as duas situações citadas anteriormente. Assim, não haveria uma sobrecarga sobre a mobilidade da roda traseira e a instabilidade do primeiro caso, que fazia com que a roda mais leve perdesse o contato com o chão, diante de uma mudança de movimento.

Figura 5.20 – Posição ideal do NXT para carregamento balanceado

Protótipos de Construção Híbrida

Até o momento, foram exibidas construções apenas com peças sem botões, porém, é possível e muitas vezes vantajoso, projetar robôs com uma combinação de peças, vigas e tijolos, por exemplo. Esta é um

Page 51: A Geometria Lego - Cap 1

56

tipo de montagem denominada híbridhíbridhíbridhíbridaaaa. A Fig. 5.21 exibe configurações híbridas.

Figura 5.21 – Exemplos de configuração híbrida

Como já dissemos anteriormente, as montagens sem botões tem uma versatilidade muito maior que as tradicionais peças com botões. Isto pode ser bom em algumas ocasiões, mas algumas vezes não é tanta vantagem. A Fig. 5.22 exibe um diferencial com montagem híbrida. As vigas acopladas nas laterais dos tijolos mostram como podemos integrar peças com e sem botões neste modelo. Também vimos que o espaço entre as engrenagens é muito importante, especialmente quando utilizamos uma engrenagem coroa. Uma estrutura que utiliza peças sem botões para alojar um conjunto de engrenagens e diferencial pode ser construída (veja Fig. 2.22), mas devemos usar um número maior de peças, além de ser muito mais flexível do que o modelo com tijolos. Este é um exemplo de onde podemos ter melhor desempenho utilizando tijolos, quando comparamos às peças sem botões. Outra razão para combinar as duas classes de peças é quando precisamos, ou desejamos usar placas na construção de nossos protótipos, pelos mais variados motivos. Simplesmente acoplamos as vigas aos tijolos por meio de pinos e encaixamos estes últimos às placas base da estrutura.

Figura 5.22 – Diferencial em configuração híbrida

Page 52: A Geometria Lego - Cap 1

57

Capítulo 6

6 Programação Introdução Antes de começarmos a falar em programação, vamos nos deter um instante e pensar no que é um robô. Mas então o que difere o robô de um liquidificador, por exemplo? Existem várias definições para o que vem a ser um robô. Uns definem robô como um dispositivo mecânico com forma humana (nem sempre é assim) que “imita” as ações humanas. Outros o definem como uma máquina eletrônica que funciona independentemente, sem controle humano. Há quem defina robô como um dispositivo que é construído para desempenhar ações independentemente e interagir com o ambiente ao seu redor. Se o nosso dispositivo precisa ter as ações controladas a todo instante, ele não é um robô e sim um aparelho remotamente controlado (como uma TV). Por outro lado, se o dispositivo pode executar determinadas ações, principalmente a partir de observações do meio que o envolve, desviando de obstáculos, por exemplo (com o auxílio de sensores), ou qualquer outra atividade sem o auxílio humano, aí sim, temos um robô. Quando lidamos com o Mindstorms NXT®, estamos imersos em tecnologia e não existe tecnologia sem necessidade de aprendizado. Um dos termos que são intrínsecos na tecnologia NXT é programa. Para entender o que é um programa, vamos considerar um robô básico. Para que este robô desempenhe uma determinada ação, podemos dizer que ele precisa ser “comandado”. Assim, um programa é um conjunto de instruções para o robô (as “ordens” dadas no “comando”). E seguindo esta linha de raciocínio, programação é que devemos fazer quando criamos um programa. Um programa é um conjunto de instruções, que podem ser escritas, faladas, ou algum outro método, mas que precisam ser seguidas. Muitas vezes, nós seguimos conjuntos de instruções, como uma receita de bolo, e neste caso, dizemos que estamos executando um programa. Agora, imagine que o nosso robô pode ler algo que escrevemos. Pegamos um papel e escrevemos nele: ande 10 cm para frente, gire 90 graus para a esquerda, ande 5 cm para trás, gire 360 graus e pare. Se entregarmos este papel para o robô e deve ler as instruções e executar as ordens na ordem em que foram lidas. Entretanto, nosso robô não sabe ler, e mesmo que falássemos os comandos em voz alta para ele, ele não tem a capacidade de entender a nossa voz. O que podemos fazer então? Devemos usar um software de programação que permite a nossa “comunicação” com o robô. É isto que vamos descrever daqui em diante.

Page 53: A Geometria Lego - Cap 1

58

Nota: Existem várias formas de programar. De forma semelhante às pessoas que falam diversos idiomas, os robôs, além de computadores podem “falar” diversas linguagens. Alguns exemplos de “linguagens” humanas são Português, Inglês, Espanhol, Russo, Alemão, Francês. Para os robôs NXT, existe uma variedade de linguagens também. O brasileiro tem o Português como língua nativa, mas pode aprender o Inglês, por exemplo. O NXT vem com uma linguagem padrão de fábrica: a NXT-G. Mas assim, como os humanos, o NXT pode “aprender” outras linguagens, como o BricCX, LeJOS, etc.

Programação Sem Computador O NXT é um dispositivo inteligente que funciona como o cérebro do robô. As conexões com os motores são feitas pelas portas A, B e C. As conexões com sensores são feitas pelas portas 1, 2, 3 e 4 (Fig. 6.1).

Figura 6.1 – O brick NXT

Para transferir um dado programa para o NXT, podemos usar uma conexão USB, ou uma conexão sem fio tipo Bluetooh, esta última desde que o computador seja compatível com esse tipo de conexão (Fig. 6.2)

Figura 6.2 – Conexão entre o NXT e um computador via porta USB

Para ligar o NXT, pressionamos por alguns segundos o botão quadrado laranja e para desligar, o botão retangular cinza também por alguns segundos. Os outros botões triangulares servem para navegação nos ícones que aparecem na tela do NXT.

Page 54: A Geometria Lego - Cap 1

59

Neste conjunto de ícones, encontramos (usando os botões triangulares) o menu “My Files” (Fig. 6.3), que nos permite visualizar todos os programas que fizermos diretamente no NXT ou aqueles que tivermos programado num computador e carregado via conexão USB ou Bluetooth.

Figura 6.3 – O menu “My Files”

Quando escolhermos o menu “My Files” e pressionamos o botão laranja, acessamos um subconjunto de ícones (Fig. 6.4):

Figura 6.4 – Ícones do menu “My Files”

• Software filesSoftware filesSoftware filesSoftware files: são os programas que carregamos de um

computador • NXT filesNXT filesNXT filesNXT files: são os programas feitos no próprio NXT • Sound filesSound filesSound filesSound files: são apenas arquivos de som (que também podem ser

carregados de um computador

Os arquivos de programas (ou som) devem ser colocados nos locais apropriados. Quando carregamos um programa no NXT que inclui algum tipo de arquivo sonoro, o programa é automaticamente colocado em “Software files”, enquanto que o arquivo de som deve ser colocado em “Sound files”. Estes arquivos também podem ser transferidos para outro NXT.

Como dissemos anteriormente, não é necessário um computador para fazer um programa para o NXT, apesar de termos limitações neste recurso. Usando o menu “NXT Program” (Fig. 6.5), podemos fazer uma grande variedade de programas sem o computador.

Figura 6.5 – Submenu “NXT Program”

Page 55: A Geometria Lego - Cap 1

60

Nota: Para navegar nos menus do NXT, usamos os botões triangulares cinza, para movimentos para esquerda e direita; o botão laranja acessa os submenus, e o botão retangular cinza retorna ao nível anterior.

É muito simples programar diretamente no NXT. Por exemplo, para que um robô ande para frente (1) e assim que um sensor de toque seja pressionado (2), ele mude o sentido do movimento, passando a andar para trás (3), até que o sensor de toque seja pressionado novamente (4), mudando mais uma vez a sua direção (5) de modo indefinido (6), devemos fazer o seguinte (Fig. 6.6):

1 2 3

4 5 6

Figura 6.6 – Exemplo de programação direta no NXT

Cada vez que escolhemos uma ação devemos pressionar o botão laranja (como se fosse a tecla “Enter” no computador). Para voltar uma dada ação, pressionamos o botão retangular cinza. Uma vez completada a programação com os 5 ícones, pressionamos mais uma vez o botão laranja para executar o programa. Mais uma vez ressaltamos as limitações do método, onde só podemos escolher 5 ícones na seqüência da ação. Contudo, para testes emergenciais, isto é mais que suficiente e não demanda uma programação mais elaborada num computador. Você encontra maiores informações sobre a programação direta no NXT, no Apêndice A. NXT-G: Programação em Blocos O NXT-G é a ferramenta que utilizamos para dizer aos nossos robôs o que eles devem fazer. O NXT-G nos permite criar programas que podem ser carregados (instalados) no NXT. Estes programas podem ser instruções simples, do tipo “ande 10 cm para frente” ou tão mais avançada quanto você possa imaginar. Os robôs NXT podem ser

Page 56: A Geometria Lego - Cap 1

61

construídos das mais variadas formas como pudemos ver nos capítulos anteriores, mas sem um bom programa, a nossa construção não passa de um peso para papel, ou um objeto decorativo. Além disso, sem uma boa programação, teremos um robô “confuso” e para tanto é necessária uma programação bem estruturada. O NXT-G deve ser instalado em um computador como um software normal e então poderemos criar e salvar nossos programas e então conectar o NXT ao computador para que estes programas sejam carregados e então executados. Dissemos a pouco sobre a necessidade de uma programação estruturada, mas o que deve ser isso? Quando o professor diz para lermos um determinado texto na página 55 de um livro, automaticamente, pegamos o livro, o abrimos na página 55 e procuramos o texto. Entretanto, o robô não é tão esperto assim, quer dizer, ele não é nem um pouco esperto. Para o robô, é necessário passar instruções muito estritas e específicas, e numa dada ordem. Esta ordem específica é o que chamamos de estrutura de programação. No caso específico da leitura do livro, deveríamos passar informações para o robô da seguinte forma:

• pegue o livro; • abra o livro; • vá para a página 55; • procure o texto indicado; • leia o texto;

Para iniciar o NXT-G, dê um duplo clique no ícone

correspondente na área de trabalho e após o tempo de carregamento normal, a tela inicial do software é exibida (Fig. 6.7).

Figura 6.7 – Tela inicial do NXT-G

Page 57: A Geometria Lego - Cap 1

62

Aqui temos alguns detalhes que merecem ser observados. Os números dentro dos círculos na Fig. 6.7, apontam regiões descritas no Qd. 1.

Quadro 1 – Regiões especiais da Área de Trabalho

1 Robot EducatorRobot EducatorRobot EducatorRobot Educator: contém instruções de programação e construção usando um modelo padrão de robô

2 MMMMeueueueu Portal Portal Portal Portal: acesso a novas ferramentas, downloads e informações atualizadas (é preciso conexão com a internet)

3 Barra de ferramentasBarra de ferramentasBarra de ferramentasBarra de ferramentas: exibe as ferramentas mais usadas de forma fácil e acessível

4 InícioInícioInícioInício: exibe os comandos mais básicos para quem opera o software pela primeira vez, além de uma visão rápida dos recursos existentes

5 Ajuda rápidaAjuda rápidaAjuda rápidaAjuda rápida: dicas e funções básicas dos ícones e ferramentas

6 Paletas de programaçãoPaletas de programaçãoPaletas de programaçãoPaletas de programação: paletas com todas as funções de programação do NXT

7 Painel de inicialização rápidaPainel de inicialização rápidaPainel de inicialização rápidaPainel de inicialização rápida: permite abrir um novo programa ou um que foi salvo recentemente

Para iniciar um novo programa precisamos clicar na janela abaixo

de “Inicie um novo programa” no Painel de inicialização (7), digitamos o nome que desejamos e clicamos em “Ir >>”. Imediatamente uma nova janela será aberta, com a paleta de ferramentas e outras funções habilitadas. Esta nova tela é denominada “Área de Trabalho” e é o espaço onde os blocos que irão compor o programa serão colocados. Observe que o nome escolhido para o seu programa aparece numa aba na parte superior esquerda da Área de Trabalho (Fig. 6.8). Na Área de Trabalho existe um símbolo à esquerda (com a palavra “iniciar”) que indica o começo do programa. Os blocos devem ser arrastados e colocados à sua direita, dando continuidade na “trilha” de programação.

Figura 6.8 – Área de trabalho do NXT-G

Page 58: A Geometria Lego - Cap 1

63

Podemos observar também, símbolos específicos no canto direito inferior da Área de Trabalho, denominados “Janela NXT”. Estes símbolos fornecem informações sobre o NXT conectado.

Quando conectamos o NXT ao computador por meio do cabo USB, este é automaticamente detectado e aparece uma mensagem na tela: “Novo Hardware Detectado”. Após alguns instantes, após o carregamento dos arquivos e drivers necessários, uma nova mensagem é exibida: “Novo Hardware Encontrado e Pronto para Ser Utilizado”. A partir daí podemos carregar arquivos/programas tanto do computador para o NXT, quanto do NXT para o computador.

Os botões que compõem a “Janela NXT” são exibidos na Fig. 6.9.

Figura 6.9 – Janela NXT

As funções dos botões da “Janela NXT” são exibidas no Qd. 2

seguinte.

Quadro 2 – Botões da Janela NXT 1 Acessa a memória do NXT e as configurações de comunicação 2 Transfere e executa partes selecionadas do programa para o NXT 3 Transfere todo o programa para o NXT, executando-o em seguida 4 Transfere todo o programa para o NXT 5 Interrompe a execução de um programa Os blocos de programação (item 6 do Qd. 1) estão agrupados em 3 paletas:

• Paleta PadrãoPaleta PadrãoPaleta PadrãoPaleta Padrão: contém os ícones mais utilizados (Fig. 6.10a) • Paleta CompletaPaleta CompletaPaleta CompletaPaleta Completa: contém todos os comandos disponíveis para a

programação (Fig. 6.10b) • Paleta PersonalizadaPaleta PersonalizadaPaleta PersonalizadaPaleta Personalizada: agrupa ícones especiais, criados ou

baixados de outras fontes (Fig. 6.10c)

Page 59: A Geometria Lego - Cap 1

64

(a) (b) (c)

Figura 6.10 – Paletas de Programação Paleta Padrão Agora, explicaremos de modo mais detalhado, cada um dos ícones desta paleta.

mover: mover: mover: mover: controla o movimento dos motores, individualmente ou em conjunto.

Quando arrastamos este ícone para a Área de Trabalho (Fig. 6.11), aparece na parte inferior, uma caixa para configurações mais específicas (Fig. 6.12).

Figura 6.11 – Ícone “mover” na Área de Trabalho

Figura 6.12 – Configurações dos motores

São vários itens que podem ser configurados nesta caixa:

Page 60: A Geometria Lego - Cap 1

65

Porta:Porta:Porta:Porta: Indica qual porta no NXT será controlada, podendo ser de uma a três simultaneamente. No caso particular exibido, as portas B e C. Direção:Direção:Direção:Direção: Controla o sentido de rotação do motor (pra frente, pra trás e parado). Quando o movimento do robô depende de 2 motores , se eles estiverem na mesma posição, eles comandam o lado da locomoção (direita e esquerda, por exemplo). Pilotagem:Pilotagem:Pilotagem:Pilotagem: Este comando é habilitado quando apenas 2 motores estão conectados (selecionados), permitindo que o robô faça curvas, indicando pra qual lado ele deve virar. Utilizando o cursor dizemos se a curva deve ser mais “aberta” ou mais “fechada”. Força:Força:Força:Força: Controla o nível de potência dos motores (variando de 0 a 100%). O valor desejado pode ser digitado diretamente na caixa correspondente ou por meio do cursor. Duração:Duração:Duração:Duração: O tempo de rotação do motor pode ser dado em rotaçõesrotaçõesrotaçõesrotações (1 rotação equivale a 1 volta completa do eixo), grausgrausgrausgraus (1 volta equivale a 360º) ou segundossegundossegundossegundos. Ainda podemos escolher movimento ilimitadoilimitadoilimitadoilimitado, onde o motor gira livremente, ou até que algum comando específico na programação. Quando o movimento ilimitado é habilitado a função “Pilotagem” é automaticamente desabilitada. Próxima Ação:Próxima Ação:Próxima Ação:Próxima Ação: São duas opções exclusivas que podem ser escolhidas, travartravartravartravar (realiza o movimento determinado e trava na posição exata) ou liberarliberarliberarliberar (desliga o motor, mas deixa a inércia natural, proporcionando uma parada mais suave).

gravagravagravagravarrrr/executar/executar/executar/executar: : : : permite gravar as ações que os motores realizam.

Ao arrastamos este ícone para a Área de Trabalho (Fig. 6.13),

aparece na parte inferior, uma caixa para configurações mais específicas (Fig. 6.14).

Figura 6.13 – Ícone “gravar/executar” na Área de Trabalho

Page 61: A Geometria Lego - Cap 1

66

Figura 6.14 – Configurações de gravar/executar

Estes são os itens que podem ser configurados nesta caixa: AçãoAçãoAçãoAção: Permite escolher entre gravar e executar (tocar) NomeNomeNomeNome: Na janela é possível escolher um nome para a seqüência a ser gravada GravandoGravandoGravandoGravando: Escolhe quais motores que terão os movimentos registrados TempoTempoTempoTempo: Permite determinar quanto tempo terá a gravação Quando escolhemos “Tocar” na área “Ação”, apenas uma área é habilitada, conforme Fig. 6.15, onde na janela existente, digitamos o nome de uma seqüência já gravada ou escolhemos na lista que aparece logo abaixo.

Figura 6.16 – Ação “Tocar” em gravar/executar

somsomsomsom: : : : executa uma seqüência de sons ou reproduz notas musicais durante a execução de um programa.

Ao arrastamos este ícone para a Área de Trabalho (Fig. 6.17),

acessamos a caixa para configurações adicionais (Fig. 6.18).

Figura 6.17 – Ícone “Som” da Área de Trabalho

Page 62: A Geometria Lego - Cap 1

67

Figura 6.18 – Configurações de “Som”

Ação:Ação:Ação:Ação: Habilitamos “Arquivo” para escolher um arquivo de som pré-gravado Controle:Controle:Controle:Controle: Inicia a execução do som (Tocar) ou para a execução do som (Parar). Ao selecionar “Stop” todas as outras funções ficam desabilitadas Volume:Volume:Volume:Volume: Define a intensidade do som a ser executado, por meio do deslizamento do cursor ou digitando a intensidade na janela à direita (este valor é percentual, de 0 a 100%) Função:Função:Função:Função: Se habilitamos “Repetir”, o som é executado indefinidamente Arquivo:Arquivo:Arquivo:Arquivo: Permite selecionar na janela à esquerda um arquivo de som pré-gravado a ser reproduzido. Clicando sobre o arquivo, o som será executado automaticamente para reconhecimento e avaliação do usuário. Se o arquivo escolhido não existir no NXT (apenas no computador), ao enviar o programa para o computador, este arquivo de som também é enviado automaticamente. Espera:Espera:Espera:Espera: Quando “Espera para Conclusão” for habilitado, a próxima ação só será executada quando o som for completamente emitido. Se não for habilitado, a próxima ação acontece junto com a emissão do som. Na área “Ação”, se habilitamos “Tom”, outra janela (Fig. 6.19) de configuração é exibida, onde um teclado permite a inserção direta de notas musicais, inclusive com a duração do tempo da nota (em segundos).

Figura 6.19 – Ação “Tom” em “Som”

Como vimos até o momento, sempre que arrastamos um bloco para a Área de Trabalho, abre-se uma caixa para configurações específicas deste, abaixo da Área de Trabalho. Seguem os demais blocos da Paleta Padrão.

Page 63: A Geometria Lego - Cap 1

68

monitormonitormonitormonitor: : : : exibe informações na tela do NXT, que podem ser textos ou imagens.

Figura 6.20 – Ícone “Monitor” da Área de Trabalho

Figura 6.21 – Configurações de “Monitor”

Ação:Ação:Ação:Ação: Permite escolher o tipo de conteúdo a ser exibido, entre “Imagem”, “Texto”, “Desenho” ou “Reiniciar”. Monitor:Monitor:Monitor:Monitor: Se for habilitado, sobrescreve o anterior, caso contrário, o apaga. Arquivo:Arquivo:Arquivo:Arquivo: Se “Imagem” estiver habilitado no campo “Ação”, permite escolher um arquivo com imagem pré-existente. Texto:Texto:Texto:Texto: Se “Texto” for escolhido no campo “Ação”, uma outra caixa de configurações é exibida (Fig. 6.22), onde entramos com o texto na janela específica. Devemos especificar a posição do texto na tela.

Figura 6.22 – Ação “Texto” em “Monitor”

Posição:Posição:Posição:Posição: Habilita a posição dos objetos na tela, marcando a linha e a coluna de início da exibição. A tela do NXT tem apenas 8 linhas disponíveis. Tipo:Tipo:Tipo:Tipo: Se “Desenho” for escolhido no campo “Ação”, é possível escolher 3 tipos de desenho, Ponto, Linha ou Círculo, sendo que as posições devem

Page 64: A Geometria Lego - Cap 1

69

ser escolhidas para o ponto, o início e o fim da linha, o centro do círculo (além do raio), nas caixas específicas para tal (Fig. 6.23).

Figura 6.23 – Ação “Desenho” em “Monitor”

Figura 6.24 – Ação “Reiniciar” em “Monitor”

eeeesperasperasperasperarrrr: : : : determina um instante de espera que pode ser diretamente temporal ou em resposta à ação dos sensores.

Este ícone na Paleta Padrão, acessa 5 novos ícones ((A) Até que, (B) Sensor de Toque, (C) Sensor de Luz, (D) Sensor de Som, (E) Sensor Ultrassônico)cujas funções e configurações são exibidas a seguir (Fig. 6.24). A área controle pode ser habilitada para todos os casos em “Tempo” ou “Sensor”.

(A) (B) (C) (D) (E)

Figura 6.24 – Ícones “Esperar” (A) (A) (A) (A) Até que:Até que:Até que:Até que: Aqui escolhemos quanto tempo deve ser “esperado” até que o contador alcance o tempo determinado, ou até que um sensor seja acionado.

Figura 6.25 – Controles do comando “Até que” em “Esperar”

(B) Sensor de Toque:(B) Sensor de Toque:(B) Sensor de Toque:(B) Sensor de Toque: Quando escolhemos “Sensor” no campo “Controle”, e “Sensor de Toque” no campo “Sensor”, precisamos indicar a “Porta” na qual o sensor está conectado e o tipo de “Ação”, que pode ser “Pressionado”, “Solto” ou “Batido”.

Page 65: A Geometria Lego - Cap 1

70

Figura 6.26 - Controles do comando “Sensor de Toque” em “Esperar”

(C) Sensor de Luz:(C) Sensor de Luz:(C) Sensor de Luz:(C) Sensor de Luz: Quando escolhemos “Sensor” no campo “Controle”, e “Sensor de Luz” no campo “Sensor”, indicamos a “Porta” na qual o sensor está conectado, a tolerância para a luz, no campo “Até que”, que pode ser maior (>) ou menor (<) que um dado valor. Este valor pode ser habilitado por meio do cursor ou digitado na janela correspondente. O campo “Função” permite habilitar a geração de luz pelo sensor (Fig. 6.27).

Figura 6.27 - Controles do comando “Sensor de Luz” em “Esperar”

(D) Sensor de Som:(D) Sensor de Som:(D) Sensor de Som:(D) Sensor de Som: Quando escolhemos “Sensor” no campo “Controle”, e “Sensor de Som” no campo “Sensor”, indicamos a “Porta” na qual o sensor está conectado, a tolerância para o som, no campo “Até que”, que pode ser maior (>) ou menor (<) que um dado valor. (Fig. 6.28).

Figura 6.28 - Controles do comando “Sensor de Som” em “Esperar”

(E) Sensor Ultrassônico:(E) Sensor Ultrassônico:(E) Sensor Ultrassônico:(E) Sensor Ultrassônico: Quando escolhemos “Sensor” no campo “Controle”, e “Ultrassônico” no campo “Sensor”, indicamos a “Porta” na qual o sensor está conectado, a tolerância para a distância, no campo “Até que”, que pode ser maior (>) ou menor (<) que um dado valor. Este valor pode ser habilitado por meio do cursor ou digitado na janela correspondente. O campo “Mostre” permite escolher a unidade de medida, Centímetros ou Polegadas (Fig. 6.29).

Page 66: A Geometria Lego - Cap 1

71

Figura 6.29 - Controles do comando “Sensor Ultrassônico” em “Esperar”

Quando escolhemos “Sensor” no campo “Controle” do bloco “Esperar”, temos outras possibilidades: Botões do NXT:Botões do NXT:Botões do NXT:Botões do NXT: permite habilitar os botões do brick NXT, como se fossem um sensor de toque. Neste caso, é exibido o campo “Botão” onde escolhemos um dentre os 4 botões existentes (Fig. 6.30).

Figura 6.30 – Configurações para “Botões NXT” no bloco “Esperar”

Rotação:Rotação:Rotação:Rotação: como dissemos anteriormente, os motores NXT possuem um encoder que “conta” as rotações. Então, podemos habilitar em qual porta está o motor que desejamos acessar, no campo “Porta”. No campo “Até que” determinamos o sentido de rotação, e se a quantidade será observada em graus ou em rotações (Fig. 6.31).

Figura 6.31 – Configurações para “Rotação” no bloco “Esperar”

Rec. Rec. Rec. Rec. Mensagem:Mensagem:Mensagem:Mensagem: habilita o recebimento de mensagem via bluetooh, que pode ser em “Texto”, “Número” ou “Lógica”, a qual pode ser comparada a um valor pré-definido. As mensagens são guardadas em uma “Caixa de correio” cujo endereço é indicado na janela específica. Existem 10 diferentes caixas disponíveis (Fig. 6.32).

Figura 6.32 – Configurações para “Rec. Mensagem” no bloco “Esperar”

Page 67: A Geometria Lego - Cap 1

72

Temporizador:Temporizador:Temporizador:Temporizador: existem 3 temporizadores que podem ser habilitados, cuja “Ação” pode ser leitura (“Ler”) ou “Reiniciar”. Deve ser habilitado ainda, se o programa deve esperar um valor maior ou menor que o indicado (em segundos) (Fig. 6.33).

Figura 6.33 – Configurações para “Temporizador” no bloco “Esperar”

LoopLoopLoopLoop: : : : permite condicionar a repetição de uma seqüência da programação.

Figura 6.34 – Ícone “Loop” da Área de Trabalho

O campo “Controle” do bloco “Loop” pemite escolher entre “Para sempre”, “Sensor”, “Tempo”, “Conte” e “Lógica”. Estas opções serão melhor detalhadas a seguir. Em todos os casos, habilitar “Contador” no campo “Mostre” significa que o número de vezes que o loop foi executado será armazenado para uso futuro. Para SemPara SemPara SemPara Semprepreprepre:::: a programação contida no loop será executada infinitamente.

Figura 6.35 – Controle “Para sempre” no bloco “Loop”

Page 68: A Geometria Lego - Cap 1

73

SensorSensorSensorSensor:::: o loop será executado em função do acionamento de um sensor, de modo análogo ao bloco “Esperar”. É necessário especificar a porta onde o sensor está conectado, o tipo de sensor, a ação ou os limites de tolerância, conforme o sensor utilizado.

Figura 6.36 – Controle “Sensor” no bloco “Loop”

TempoTempoTempoTempo:::: o loop será repetido durante um intervalo de tempo indicado na janela do campo “Até que”, em segundos.

Figura 6.37 – Controle “Tempo” no bloco “Loop”

ConteConteConteConte:::: indica a quantidade específica de vezes que o loop deve ser repetido, na janela “Conte” do campo “Até que”.

Figura 6.38 – Controle “Conte” no bloco “Loop”

LógicaLógicaLógicaLógica:::: o fim do loop é determinado pela condição lógica (verdadeiro ou falso) habilitada no campo “Até que”.

Figura 6.39 – Controle “Lógica” no bloco “Loop”

Page 69: A Geometria Lego - Cap 1

74

condiçãocondiçãocondiçãocondição: : : : permite que o programa tome uma decisão a partir de um parâmetro pré-determinado.

Figura 6.40 – Bloco “Loop” da Área de Trabalho

Neste bloco, o campo “Controle” possibilita duas opções, “Valor” ou “Sensor”. Em todos os casos, habilitar “Vista plana” no campo “Monitor” possibilita ver a programação de cada condição simultaneamente, em linhas paralelas (Fig. 6.41), caso contrário, será exibida apenas uma linha com abas na parte superior esquerda do bloco, permitindo a permuta entre as condições (Fig. 6.42). Observe os sinais de verdadeiro ( ) e falso ( ).

Figura 6.41 – “Vista plana” para o bloco “Loop”

Figura 6.42 – Bloco “Loop” sem “Vista plana”

Valor:Valor:Valor:Valor: Uma vez escolhido, o campo “Tipo”, permite escolher entre “Lógica”, “Número” e “Texto”. No primeiro caso (Fig.6.43), o campo

Page 70: A Geometria Lego - Cap 1

75

“Condições”, exibe “Verdadeiro” ou “Falso”. Nos demais casos, o seja, número ou texto (Figs. 6.44 e 6.45), podemos adicionar mais condições, deste que “Vista plana” não esteja habilitada. Usamos os sinais de (+) ou (-) para acrescentar ou retirar condições, cujos valores são inseridos na janela específica do campo e o botão (*) permite colocar uma dada condição como padrão.

Figura 6.43 – Configurações para “Valor” e “Lógica” no bloco “Condição”

Figura 6.44 – Configurações para “Valor” e “Número” no bloco

“Condição”

Figura 6.45 – Configurações para “Valor” e “Texto” no bloco “Condição” SensSensSensSensor:or:or:or: Uma vez escolhido, o campo “Sensor”, possui uma configuração análoga à dos blocos “Esperar” e “Loop”, conforme podemos observar nas figuras seguintes.

(A) sensor de luz

(B) sensor de som

Page 71: A Geometria Lego - Cap 1

76

(C) sensor de toque

(D) sensor ultrassônico

(E) botões NXT

(F) rec. mensagem

(G) rotação

(H) temporizador

Figura 6.46 – Exemplos de configurações de “Sensor” no bloco

“Condição”

Page 72: A Geometria Lego - Cap 1

77

Paleta Completa Esta paleta contempla todos os blocos existentes no NXT-G, inclusive os da paleta padrão. Vamos apresentar então, os demais blocos que não foram vistos até o momento. A Fig. 6.47, apresenta os ícones existentes na Paleta Completa: (a) comum, (b) ação, (c) sensor, (d) fluxo, (e) dados e (f) avançado. Ao passar o mouse sobre estes ícones, é exibido um sub-menu horizontal com os blocos pertencentes a cada uma destas categorias.

(A) (B) (C) (D) (E) (F)

Figura 6.47 – Ícones da paleta completa (A) comum: exatamente os mesmos blocos da Paleta Padrão (Fig. 6.48)

Figura 6.48 – Blocos do ícone “comum” na “Paleta Completa”

(B) ação: blocos de ações, tais como motores, sons, display e Bluetooh relacionadas a saída ou entrada de dados no programa (Fig. 6.49)

(a) (b) (c) (d) (e) (f)

Figura 6.49 – Blocos do ícone “ação” na “Paleta Completa” Nesta lista de blocos, encontramos da esquerda para a direita, os seguintes blocos: (a) motor, (b) som, (c) monitor, (d) mensagem enviada, (e) motor* e (f) lâmpada*.

(a) motor: é relevante ressaltar aqui, que o bloco “motor” deste sub-menu, é diferente do bloco “mover” visto anteriormente, pois, permite controlar apenas 1 motor por vez. Veja a diferença das janelas de configurações na Fig. 6.50. Observe que este bloco mostra apenas uma engrenagem, enquanto que o anterior exibe duas engrenagens, evidenciando visualmente a diferença. (b) som: exatamente o mesmo da Paleta Padrão (Figs. 6.17 a 6.19) (c) monitor: exatamente o mesmo da Paleta Padrão (Figs. 6.20 a 6.24)

Page 73: A Geometria Lego - Cap 1

78

Figura 6.50 – Configurações dos blocos “motor” e “mover”

(d) mensagem enviada: permite o envio de mensagens via Bluetooh para diferentes NXT. É necessário que a comunicação Bluetooh esteja ativa. Devemos indicar a porta no campo “Conexão”, indicar se a mensagem deve ser “Texto”, “Número” ou “Lógica” no campo “Mensagem”, digitando-a na janela correspondente para os 2 primeiros casos, ou indicando seu valor lógico para o último. é necessário também, indicar a “Caixa de correio” no último campo, dentre os 10 valores disponíveis (Fig. 6.51).

Figura 6.51 – Configurações do bloco “Mensagem enviada” (e) motor*: para comando de motores do modelo RCX (f) lâmpada*: permite o controle de tijolo com lâmpada. Indicamos a porta onde está conectada a lâmpada, no campo “Porta”, se ela deve estar ligada (On) ou desligada (Off) no campo “Ação” e a quantidade de luz (percentual) no campo “Intensidade” (Fig. 6.52).

Figura 6.52 – Configurações do bloco “Lâmpada*”

Page 74: A Geometria Lego - Cap 1

79

Nota: Antes apresentarmos os blocos seguintes, é necessário falar sobre a forma de utilizar e transportar dados entre blocos. Isto é feito por meio de um “fio de dados” que deve ligar pontos de conexão existentes em determinados blocos. Veja mais detalhes ao final desta seção.

(C) sensor: possui funções que permitem ler os valores ou as respostas dos sensores, usando-os no programa, além de permitir calibração. Aqui são exibidas duas linhas de blocos, onde a segunda se refere apenas a sensores do antigo modelo RCX (Fig. 6.53). (a) (b) (c) (d) (e) (f) (g) (h)

Figura 6.53 – Blocos do ícone “sensor” na “Paleta Completa” Vamos nos reter apenas à primeira linha, cujos blocos da esquerda para a direita, são os seguintes:

(a) sensor de toque: Envia um sinal lógico (verdadeiro ou falso) através de um fio de dados indicando a condição atual de um sensor de toque. Deve ser indicada a “Porta” e a “Ação” (Fig. 6.54)

Figura 6.54 – Bloco “Sensor de toque” em “Sensor”

(b) sensor de som: Detector de som. Pode enviar um sinal lógico (verdaeiro ou falso) e o valor do som atual através do fio de dados. Deve ser indicada a “Porta” e o nível limite em “Compare” (Fig. 6.55).

Page 75: A Geometria Lego - Cap 1

80

Figura 6.55 – Bloco “Sensor de som” em “Sensor”

(c) sensor de luz: Detecta a luz ambiente e pode enviar um sinal lógico (verdadeiro ou falso) ou a leitura da luz atual, através do fio de dados. Habilitando o campo “Função”, ele pode detectar a própria luz gerada (Fig. 6.56).

Figura 6.56 – Bloco “Sensor de luz” em “Sensor”

(d) sensor ultrassônico: Este sensor tem um alcance de 250 cm (ou 100 polegadas). Devemos indicar a “Porta” e o valor de comparação no campo “Compare”, o qual pode fazer o robô reagir se algo for dectado próximo dele e enviar o sinal detectado (distância) por um fio de dados (Fig. 6.57).

Figura 6.57 – Bloco “Sensor ultrassônico” em “Sensor”

(e) botões do NXT: emite uma saída verdadeira, enviada pelo fio de dados, quando um dos botões do NXT for ativado. É preciso escolher o tipo no campo “Botão” e a “Ação” (Fig. 6.58).

Figura 6.58 – Bloco “Botões do NXT” em “Sensor”

Page 76: A Geometria Lego - Cap 1

81

(f) sensor de rotação: Contabiliza os graus ou a quantidade de rotações completas que o motor executou. Será enviado um sinal lógico (verdadeiro ou falso) ou o valor lido por meio do fio de dados. É preciso especificar a “Porta”, a “Ação” e o valor de comparação no campo “Compare”. Habilitar “Reiniciar” limpa todos os valores anteriores (Fig. 6.59).

Figura 6.59 – Bloco “Sensor de rotação” em “Sensor”

(g) temporizador: com o início do programa, os 3 temporizadores internos do NXT começam a contar automaticamente (campo “Temporizador”). Assim, podemos escolher a leitura (“Ler”) de um destes valores, ou forçar o reinício do contador a partir de zero (“Reiniciar”) no campo “Ação”. Podemos ainda, habilitar um valor limite no campo “Compare” (Fig. 6.60).

Figura 6.60 – Bloco “Temporizador” em “Sensor”

(h) mensagem recebida: devemos ajustar o tipo da mensagem, que pode ser “Texto”, “Número” ou “Lógica” e o número da “Caixa de correio”. No campo “Mensagem” ainda é possível comparar a mensagem recebida com um valor particular a ser inserido na caixa apropriada (Fig. 6.61).

Figura 6.61 – Bloco “Mensagem recebida” em “Sensor”

Page 77: A Geometria Lego - Cap 1

82

(D) fluxo: possui blocos referentes ao fluxo do programa: (a) esperar, (b) loop, (c) condição e (d) pare (Fig. 6.53). Os três primeiros são exatamente os mesmos já vistos na Paleta Padrão.

(a) (b) (c) (d)

Figura 6.62 – Blocos do ícone “fluxo” na “Paleta Completa” O bloco “Pare” finaliza a execução do programa, além de qualquer motor, lâmpada ou sons. Os motores parados poderão iniciar sem esforço (Fig. 6.63).

Figura 6.63 - Bloco “Pare” na “Área de Trabalho”

(E) dados: reúne os blocos para o tratamento dos dados obtidos pelos sensores ou motores, com possibilidade de comparação e de se efetuar operações com os valores. São os seguintes: (a) lógica, (b) matemática, (c) compare, (d) alcance, (e) aleatório e (f) variável (Fig. 6.64).

(a) (b) (c) (d) (e) (f)

Figura 6.64 – Blocos do ícone “dados” na “Paleta Completa”

(a) lógica: realiza operações lógicas nas suas duas entradas e envia o resultado com uma resposta (verdadeiro ou falso) através do fio de dados. As entradas podem ser habilitadas no campo “Operação” ou de forma dinâmica pelo fio de dados. As possibilidades são “E”, “OU”, “OU EXCLUSIVO” e “NÃO”. É fornecida, de acordo com a escolha uma informação visual para cada uma dessas opções, em termos de diagrama de conjuntos (Fig. 6.65).

Page 78: A Geometria Lego - Cap 1

83

Figura 6.65 – Bloco “Lógica” em “Dados” (b) matemática: executa operações aritméticas simples: adição, subtração, multiplicação e divisão (escolhidas no campo “Operação”). As entradas podem ser digitadas ou fornecidas por um fio de dados (Fig. 6.66).

Figura 6.66 – Bloco “Matemática” em “Dados”

(c) compare: compara dois valores, por meio da “Operação” escolhida: “Menor que”, “Maior que”, ou “Igual a”. As entradas podem ser digitadas ou fornecidas por um fio de dados (Fig. 6.67).

Figura 6.67 – Bloco “Compare” em “Dados”

(d) alcance: determina se um dado número está dentro ou fora de um intervalo, habilitando “Dentro de alcance” ou “Fora de alcance”, respectivamente, no campo “Operação”. Os valores de entrada podem ser digitados, ajustados pelos cursores ou fornecidos por um fio de dados. A resposta (saída lógica) será enviada pelo fio de dados (Fig. 6.68).

Figura 6.68 – Bloco “Alcance” em “Dados”

(e) aleatório: fornece como saída um valor numérico aleatório através do fio de dados. Os limites podem ser digitados no campo “Alcance”, ou ajustados pelos cursores. A saída é transportada pelo fio de dados (Fig. 6.69).

Page 79: A Geometria Lego - Cap 1

84

Figura 6.69 – Bloco “Aleatório” em “Dados”

(f) variável: permite escolher uma variável numa “Lista” de modo que possamos “Ler” ou “Escrever” no campo “Ação” (Fig. 6.70). Quando escolhemos “Escrever”, devemos entrar com o valor desejado na janela específica do campo “Valor”, ou no caso de uma variável Lógica, escolher entre verdadeiro ou falso. Existem 3 variáveis padrão: Lógica 1, Número 1 e Texto 1, porém é possível criar e nomear uma nova variável, por meio do comando Definir no menu Editar (Fig. 6.71).

Figura 6.70 – Bloco “Variável” em “Dados”

Page 80: A Geometria Lego - Cap 1

85

Figura 6.71 – Janela para criação de uma nova variável (menu Editar) (F) avançado: reúne blocos para tratamento avançado dos dados permitindo maximizar o uso do software de modo a transformar, armazenar dados e calibrar sensores. São os seguintes: (a) texto, (b) número para texto, (c) mantenha vivo, (d) acesso ao arquivo, (e) calibrar e (f) reinicia motor (Fig. 6.72).

(a) (b) (c) (d) (e) (f)

Figura 6.72 – Blocos do ícone “avançado” na “Paleta Completa” (a) texto: junta pequenos pedaços de texto para criar sentenças. As entradas podem ser digitadas ou fornecidas por meio de fio de dados. A saída é enviada por um fio de dados (Fig. 6.73).

Figura 6.73 – Bloco “Texto” em “Avançado”

(b) número para texto: transforma um número (lido por um sensor, por exemplo, e o transforma em texto de modo a ser exibido na tela do NXT. A entrada por ser digitada ou fornecida por um fio de dados (Fig. 6.74).

Figura 6.74 – Bloco “Número” em “Avançado”

(c) mantenha vivo: este bloco evita que o NXT entre em modo de espera e é usado quando precisamos esperar mais que o “modo de espera” configurado pelos menus do NXT.

Page 81: A Geometria Lego - Cap 1

86

Figura 6.75 – Bloco “Mantenha vivo” em “Avançado”

(d) acesso ao arquivo: permite salvar os dados do robô em arquivos do NXT. O campo “Ação” permite “Ler”, “Escrever”, “Fechar” e “Apagar”. O campo “Nome” permite entrar com o nome do arquivo. Para a escolha “Escrever”, o campo “Tipo” habilita “Número” ou “Texto”, que deve ser digitado na janela correspondente.

Figura 6.76 – Bloco “Acesso ao arquivo” em “Avançado”

(e) calibrar: usado para calibrar os sensores de som e de luz. Devemos escolher a “Porta”, o “Sensor” e a “Ação” que pode ser “Calibrar” ou “Apagar”, indicando o limites no campo “Valor” (Fig. 6.77)

Page 82: A Geometria Lego - Cap 1

87

Figura 6.77 – Bloco “Calibrar” em “Avançado”

(f) reinicia motor: desliga o mecanismo de correção de erro automática que controla com precisão o quanto cada motor girou. Devemos escolher a “Porta” (Fig. 6.78).

Figura 6.78 – Bloco “Reinicia motor” em “Avançado”

Observe a Fig. 6.79a, que exibe um bloco “Monitor”. No seu canto

inferior esquerdo, existe um ressalto que, ao clicarmos sobre ele, habilita uma barra vertical com vários ícones, além de pontos de conexão à esquerda e à direita (Fig. 6.79b).

(b)

Figura 6.79 – Bloco “Monitor”: (a) sem e (b) com a barra vertical

(a)

Page 83: A Geometria Lego - Cap 1

88

Os pontos de conexão á esquerda são as entradas, e os à direita são as saídas. Um mesmo dado pode ser utilizado de diversas formas.

Para exemplificar, observe o programa simples na Fig. 6.80. O primeiro bloco é um sensor ultrassônico que “lê” a distância entre ele e quaisquer objetos. Ao iniciar o programa, o valor lido é transferido por um fio de dados (amarelo) a um segundo bloco que transforma número em texto. Na saída deste bloco, temos um fio (amarelo) que carrega o valor para o terceiro bloco que emite som numa freqüência igual a este valor. O segundo bloco ainda possui um fio na parte de baixo da barra (letra “T”) que sai na cor amarela e é conectado ao último bloco, também na letra “T”.

Em resumo, este é um programa que lê a distância entre o sensor e um dado objeto e emite som numa freqüência igual a este valor e escreve o mesmo na tela do NXT.

Figura 6.80 – Exemplo simples de utilização dos fios de dados

Os fios de dados podem assumir três cores distintas, de acordo com o formato dos dados a serem transferidos de um bloco a outro, conforme o quadro seguinte.

Quadro 3 – Relação entre cores dos fios e dados Formato do DadoFormato do DadoFormato do DadoFormato do Dado Cor do Fio de DadosCor do Fio de DadosCor do Fio de DadosCor do Fio de Dados

Numérico Amarelo Texto Laranja Lógico Verde

Incompatível Cinza

Page 84: A Geometria Lego - Cap 1

89

Paleta Personalizada A paleta personalizada possui apenas dois ícones: “Meus Blocos”, que permite criar blocos a partir de uma seqüência particular de blocos (Fig. 6.81a), para posterior utilização e “Baixar da Web” que reúne automaticamente os blocos baixados da internet (Fig. 6.81b).

(a) (b)

Figura 6.81 – Ícones da Paleta Personalizada

Para criar um bloco personalizado, basta selecionar os blocos desejados (Fig. 6.82) e depois no menu “Editar” clicar em “Criar meu Bloco Novo”.

Figura 6.82 – Seleção de blocos na área de trabalho

Uma nova janela é aberta (Fig. 6.83) onde precisamos colocar o “Nome do Bloco”, e fornecer uma breve “Descrição do Bloco”. Na parte inferior é exibida a sequência de blocos selecionada.

Page 85: A Geometria Lego - Cap 1

90

Figura 6.83 – Janela “Meu Construtor de Blocos”

Clicamos em “Próximo”, escolhemos um ícone para representar o bloco e clicamos em “Conclusão” (Fig. 6.84).

Figura 6.84 – Construção do ícone para representar “Meu Bloco 1”

Page 86: A Geometria Lego - Cap 1

91

Para utilizar o bloco criado, ao apontar para o ícone “Meus Blocos” na paleta, é só escolher o ícone correspondente e arrastá-lo para a “Área de Trabalho” (Fig. 6.85).

Figura 6.85 – “Meu Bloco 1” na “Área de Trabalho”

Exemplos