Вы находитесь на странице: 1из 21

Introduo ao

Robotic Control X RCX e Robolab


Joo Vilhete Viegas dAbreu
jvilhete@unicamp.br
NIED/UNICAMP
1
1. RESUMO
Esta apostila tem por objetivo bsico apresentar o tijolo programvell
LEGO/RCX e, um ambiente para utiliz-lo, baseado no software Robolab.
Ambos, associados a um conjunto de outros tijolos, elementos mecnicos e
componentes eltricos LEGO, so os principais dispositivos utilizados para se
desenvolver atividades de robtica pedaggica.
No contexto do que denominamos de ambiente de robtica pedaggica
o RCX mais um conjunto de peas e componentes eltricos LEGO permitiro
a montagem/construo de robs (mquinas e animais). Com o software
Robolab, uma linguagem de programao grfica, elaboraremos programas
que controlam estes robs.
2. Constituio do Robotic Command Explorer -RCX

Figura 1: Tijolo Programvel RCX
O RCX (veja figura 1) possui as seguintes caractersticas:
Sadas
Trs portas de sada, identificadas pelas letras A, B e C. Os atuadores
do rob, motores ou luzes, podem ser conectadas a estas portas.
2
Entradas
Trs portas de entrada, identificadas pelos nmeros de 1, 2 e 3.
Sensores podem ser conectados a estas portas, permitindo com que o RCX
perceba o ambiente onde ele se encontra.
Tela
Faz parte do RCX uma pequena tela de cristal lquido. Esta tela
exibe/mostra informaes teis ao usurio do RCX, tais como o valor da
leitura dos sensores e o estado das portas de sada.
Som
O RCX capaz de produzir alguns bips em diferentes freqncias,
atravs de um pequeno alto-falante nele embutido. Existem alguns sons j
pr-programados na memria do RCX que so emitidos antes dele executar
algumas tarefas, como por exemplo, carregar um programa.
Botes do Painel
Existem 4 botes no RCX: On-Off, View, Prgm, Run. Estes botes
possibilitam respectivamente, ligar e desligar o RCX, visualizar os estados
atuais dos sensores, selecionar o programa que desejamos executar, iniciar
e interromper a execuo de um programa.
Comunicao Infravermelho
O RCX se comunica com o microcomputador por intermdio de uma
conexo, sem fio, feita a partir de uma torre que emite sinais na faixa de
infravermelho (veja figura 2). Esta torre, que se conecta a porta serial do
microcomputador, permite tambm a comunicao entre dois RCX.
3
2.1 Software
Um CD-ROM acompanha o kit RIS. Ele contm o software destinado
programao dos robs. Uma vez escrito um programa, para controle de um
determinado dispositivo robtico, este programa tem que ser carregado no
RCX, por intermdio da torre, para ser executado.
Figura 2: Comunicao entre microcomputador e RCX
A figura 2 apresenta o esquema bsico de comunicao entre um
microcomputador e o RCX. A implementao de um rob utilizando RCX
consiste basicamente de quatro passos.
3. ROBOLAB
ROBOLAB um software de programao, desenvolvido
especificamente para ser utilizado na programao do RCX e, que utiliza
uma linguagem totalmente grfica, baseada em cones.
O ROBOLAB foi desenvolvido em parceria entre a National
Instruments e a Tufts University - College of Engineering. Este software que
baseia-se no LabVIEW da Nationall Instruments, possui duas reas
principais, uma chamada Administrador e a outra chamada Programador.
4
3.1 TELA PRINCIPAL OU TELA DE INTRODUO
Ao iniciar o Robolab, uma tela de introduo aberta, apresentando
duas opes: Administrador e Programador.
A opo Administrador serve para fazer as configuraes do RCX e
do software Robolab.
A opo Programador serve para abrir a tela do Menu Principal, a
partir da qual pode-se optar em programar no modo Piloto ou no modo
Inventor.
Tambm faz parte da tela principal os seguintes botes: Sobre
(About), Sair (Quit) e Ajuda (Help).
Sobre - mostra os crditos para o software ROBOLAB.
Sair - fecha o ROBOLAB.
Ajuda - fornece ajuda, descrevendo os itens para o qual o cursor
est apontando.
5
3.2 REA ADMINISTRADOR (REA DE CONFIGURAES)
A opo Administrador possui trs sub-sees: Administrador
propriamente dita, Robolab Ajustes e RCX Ajustes.
3.2.1 - Administrador, composta de:
a) Selecionar a Porta Serial Seleciona a porta onde a comunicao
entre o computador e o bloco RCX realizada.
b) Transferir Firmware - O firmware o sistema operacional que
controla o RCX . Para transferir os programas elaborados no
computador para o RCX, necessrio transferir primeiro o firmware.
O firmware fica na memria do RCX at que as pilhas sejam
trocadas. Uma vez feita a transferncia do firmware, o RCX fica
pronto para receber, interpretar e executar os programas.
c) Testar Comunicao com o RCX - Realiza um teste de
comunicao para verificar se o RCX responde aos sinais enviados
6
pelo computador por intermdio da torre infravermelho. Para realizar
o teste preciso que a torre de infravermelho esteja conectada ao
computador e que o RCX esteja ligado e prximo a torre (10 a 20
cm).
d) Esconder Boto Administrador - Retira o boto Administrador da
tela principal.
e) Rodar Vdeo Exibe um vdeo sobre Robolab, aps a instalao do
mesmo.

3.2.2 Robolab Ajustes - permite configurar os locais dos arquivos de
programa e a criao ou excluso de colees. Nesta tela, veja a figura a
seguir, existe trs objetos:
a) Quadro de temas denominado Tema:
So colees de programas gravados. Estes Temas so pastas que
podem ser criadas para organizar arquivos. Abaixo do quadro existe
uma caixa com um sinal de mais e uma outra caixa com uma lixeira.
Ao clicar sobre o sinal de mais podemos criar um novo tema. O
ROBOLAB ir pedir o nome deste novo tema e ao clicar no boto ( ),
o nome que voc digitou aparecer dentro do quadro abaixo dos
nomes que j existem. Existem dois temas que so padro no
ROBOLAB e so criados na instalao do software, so eles: Parque
de Diverses e Meus Programas. Por padro os programas so
gravados em Meus Programas.

Ao clicar sobre a lixeira podemos excluir um tema. Para realizar esta
excluso preciso primeiro selecionar o nome do tema e depois clicar
na lixeira, o ROBOLAB pede confirmao da excluso. Caso no tenha
7
nenhum nome selecionado, o Robolab avisa dizendo que o tema no
existe. Os dois temas padro no podem ser excludos.


b) Caminho para
Robolab:
Mostra o
caminho para o
ROBOLAB no
disco rgido. Este
no pode ser
mudado.

c)Caminho para Galeria de Programas:
Mostra o caminho para os programas do usurio no disco rgido.
Clicar sobre ele permite que voc mude o local onde ficam os
programas do usurio.

3.2.3 - RCX Ajustes - Ao selecionar esta tela o Robolab
automaticamente estabelece a comunicao com o RCX. Caso este
esteja desligado, ou fora do alcance do sinal emitido pela torre, aparece
a mensagem de erro de comunicao. Se a comunicao for possvel, o
Robolab automaticamente configura os dados presentes nesta tela. Ao
sair desta tela, o Robolab ajusta o RCX para a nova configurao.

Esta tela, veja a figura a seguir, apresenta os seguintes dados:

a) RCX Ajuste de potncia do Infravermelho (IV):
8
Regula a potncia do IV do RCX em alto ou baixo. O valor alto s
deve ser usada quando o RCX e o transmissor IV estiverem a mais de
30 centmetros. O valor baixo deve ser usado normalmente. A
potncia alta consome mais energia das pilhas.
O transmissor IV (torre de transmisso) tambm tem um ajuste de
potncia do IV; h um interruptor localizado na frente do transmissor
para este fim.

b) RCX Programs 1 & 2:
Bloqueia ou no as posies 1 & 2 da memria do RCX. Se as
posies estiverem bloqueadas, ao tentar descarregar novos
programas para essas posies, o ROBOLAB automaticamente
descarrega para a posio 3 da memria.
c) RCX Tempo de Desligamento:
Define o tempo que o RCX ficar inativo antes de desligar. A variao de 0 a
255 minutos. Por definio, o valor 0 significa que o RCX ficar sempre ligado,
neste caso ele s se desligar ao pressionar o boto On-Off do RCX.

d) RCX Carga das Pilhas:
9
Mostra o nvel atual da bateria do RCX.
e) RCX Verso Firmware:
Mostra verso do firmware em uso no RCX.
4. REA DE PROGRAMAO
O software de programao do RCX no Robolab apresenta duas
opes chamadas de Pilot e Inventor cada uma com 4 nveis.
Cada seo apresenta 3 janelas: Nvel, Tema e Programa. Em Nvel
pode-se selecionar o nvel de trabalho. Um clique em Nvel faz a janela Tema
mostrar os temas disponveis. Um clique num tema faz a janela Programa
mostrar o conjunto de programas disponveis para o tema e nvel
selecionados.
10
Um duplo-clique num programa, abre-o diretamente, enquanto que um
duplo-clique num nvel abre um programa padro para aquele nvel.
Pilot
A programao Pilot a fase introdutria e apresenta 4 nveis, sendo
o Pilot 1 o mais simples e o Pilot 4 o mais flexvel.
Inventor
A programao Inventor uma seqncia da fase Pilot e tambm
apresenta 4 nveis, sendo o Inventor 1 o mais simples e o Inventor 4 o que
apresenta total flexibilidade e possibilidades ilimitadas.
11
4.1 - PROGRAMAO PILOT
A fase Pilot compreende uma srie de modelos com um formato
fixo associado a eles. Trata-se de um modo eficiente de apresentar a
seqncia lgica, pois impossvel modificar qualquer dos modelos de modo
a criar um programa que falhe. O programa pode no fazer o que se espera,
mas funcionar sempre e realizar exatamente a seqncia de comandos
listados.
A programao Pilot usa uma interface fcil, do tipo Clique &
Escolha, num modelo que pode ser alterado conforme suas necessidades de
aprendizado.
Abaixo segue uma descrio do programa padro (modelo)
encontrado em cada um dos nveis.
O programa Pilot Nvel 1 uma tarefa simples que fornece potncia
mxima Porta de Sada A do RCX durante um determinado tempo.
O programa Pilot Nvel 2 usa as Portas de Sada A e C do RCX. Os
nveis de potncia para cada porta pode ser ajustado. A potncia
fornecida, ou por um tempo
especfico, ou at que o sensor de
toque na Porta de Entrada 1 seja
empurrado ou solto.
12
O programa Pilot Nvel 3 usa as Portas de Sada A, B e C. As portas
podem receber potncia de diferentes nveis. introduzido a idia de
uma tarefa com dois passos. Todos os itens de um passo devem ser
completados antes de iniciar o prximo. O primeiro passo liga o Motor
A, a Lmpada B e o Motor C por 6 segundos. Aps esse tempo, comea
o segundo passo. A Lmpada B permanece ligada e os motores A e C
invertem o sentido de rotao e funcionam at que o sensor de toque
conectado na Porta 1 seja pressionado.
O programa Pilot Nvel 4 permite realizar um nmero ilimitado de
passos seqenciais. Entretanto, embora o programa possa conter vrios
passos, somente um passo fica visvel na tela do computador de cada
vez. O programa comea com dois passos: o primeiro liga o Motor A, a
Lmpada B e o Motor C at que o sensor de toque seja pressionado; o
segundo, mantm a Lmpada B ligada e inverte a direo dos Motores
A e C, e funcionam at que o sensor de luz (luminosidade) da Porta 3
leia um valor maior que 55.
13
Nota:
Cada cone um comando para o RCX fazer alguma coisa. Como
exemplos de comandos temos: ligar o motor, esperar por um
tempo, esperar que o sensor de toque seja pressionado.
As informaes que entram (input) nos comandos (como a
quantidade de tempo ou onde o dispositivo est conectado) so
chamadas de modificadores.
4.2 - PROGRAMAO INVENTOR
A fase Inventor usa os mesmos cones de comandos da fase Pilot.
Alm disso, so acrescentadas vrias opes de comando conforme o
usurio avana pelos nveis. O nvel Inventor uma modalidade de uso que
evidencia o potencial do RCX.
A interface de programao do Inventor diferente da utilizada no
Pilot. A interface do tipo Pegar & Colocar.
Nesta interface, pode-se trabalhar com pelo menos 3 janelas.
A janela Painel usada na programao do Inventor. Ela precisa estar
aberta para que o programa possa rodar.
14
A janela utilizada para programar chamada de Diagrama e nela que
se cria as tarefas a serem executadas pelo RCX.
A outra janela chamada de Paleta Functions (paleta de funes), a
qual apresenta todos os comandos ou funes disponveis para a montagem
do seu programa. Esta paleta tambm contm os comandos de Espera, os
de Estrutura, os Modificadores e outros mais.
15
Os programas so criados na janela
Diagrama
Janela Diagrama
A paleta Funes
contm os cones de
comando usados
para programar.
Os cones so pegos
da paleta Funes e
colocados na janela
Diagrama.
Boto
Rodar
16
5. - FERRAMENTAS
Durante a programao na fase Inventor, existe a necessidade de se
trabalhar com algumas ferramentas:
Ferramenta Selecionar - Usada para pegar os cones & colocar na
janela Diagrama ou para mover os cones.
Ferramenta Conectar
Usada para colocar cones de comando na janela Diagrama
Ferramenta Texto - Usada para mudar valores ou acrescentar textos
ou legendas ao seu programa.
Ferramenta Conectar - Usada para conectar os cones na seqncia
lgica a ser executada.
Ferramenta Mudar Valores - Usada para mudar os valores
numricos.
Para trocar de ferramenta utilizar a barra de espao ou a tecla Tab.
Barra de Espao
Pressionar a barra de espao faz o cursor alternar entre as ferramentas
Selecionar e Conectar. Estas duas ferramentas so, provavelmente, as
mais utilizadas.
Tecla Tab
Ao pressionar esta tecla o cursor circula entre as ferramentas
Slecionar, Colocar, Texto e Conectar.
Tecla Delete
Apaga o item selecionado (cone ou conexo) da janela Diagrama.
17
7. Ajuda
Caso seja necessrio algum auxlio, durante a programao, pode-se
ativar a funo ajuda partir da barra de menu da janela de programao. A
funo ajuda fornece informaes sobre o cone de comando sobre o qual o
cursor est. A ajuda faz uma descrio do comando, assim como os pontos
de conexo da seqncia.
8. CONES - LISTA DE CONSULTA
Incio & Fim do Programa
Incio
No incio do programa, exigido como o primeiro comando
em qualquer programa Inventor.
Fim
No fim do programa, exigido como o ltimo comando de
cada tarefa no programa Inventor.
Parar A Interrompe a potncia da Porta A do RCX.
Parar tudo Interrompe a potncia das portas A, B e C do RCX.
Sadas Simples
Motor A (sentido
horrio)
Liga a Porta A do RCX no sentido horrio com potncia
total.
Motor A (sentido
anti-horrio)
Liga a Porta A do RCX no sentido anti-horrio com potncia
total.
Lmpada A
Acende a Lmpada conectada na Porta A do RCX com
potncia total.
Sadas Gerais
Lmpada
Acende a lmpada.
Padro: Potncia total nas Portas A, B e C.
Motor (sentido
horrio)
Liga o motor no sentido horrio.
Padro: Potncia total nas Portas A, B e C.
Motor (sentido
anti-horrio)
Liga o motor no sentido anti-horrio.
Padro: Potncia total nas Portas A, B e C.
Direcionar
Direciona a potncia para as portas especificadas,
invertendo a direo anterior.
Padro: Portas A, B e C.
Toca um som no RCX. Os sons disponveis so:
1-Clique de chave 4-Silvo ascendente (Padro)
2-BeepBeep 5-Bzzzz
Tocar Som
3-Silvo descendente 6-Silvo ascendente rpido
Esperar por? (Wait For)
Espera 1 segundo Espera 1 segundo antes de continuar o programa.
18
Espera por tempo
Espera por um tempo especificado.
Padro: 1 segundo.
Espera tempo
aleatrio
Espera por um tempo aleatrio. Tempo entre 1 e 8
segundos.
Espera empurrar
Espera at que o sensor de toque seja pressionado.
Padro: Porta de Entrada 1.
Espera no
pressionado
Espera at que o sensor de toque no seja pressionado.
Padro: Porta 1.
Espera por luz
Espera at que o sensor de luz leia um valor mais brilhante
que o nmero especificado.
Padro = 55.
Espera por escuro
Espera at que o sensor de luz leia um valor mais escuro
que o nmero especificado.
Padro = 55.
Mais claro
Espera at que o sensor de luz leia um valor maior que o
atual.
Padro: Porta 1, diferena de valor = 5.
Mais escuro
Espera at que o sensor de luz leia um valor menor que o
atual.
Padro: Porta 1, diferena de valor = 5.
Modificadores
Entrada 1
Anexe este modificador a um comando para selecionar a
Porta de Entrada 1.
Sada A
Anexe este modificador a um comando para selecionar a
Porta de Sada A.
Potncia Nvel 3
Anexe este modificador a um motor ou lmpada para
ajustar a potncia no nvel 3.
Constante
Numrica
Anexe este modificador a um sensor ou temporizador para
ajustar o valor da constante.
Valor do Container
vermelho
Retorna o valor do container vermelho
Container vermelho
Anexe-o a um comando container, para selecionar o
container vermelho.
Nmero ? Um nmero aleatrio entre 1 e 8.
Valor da Porta 1 Retorna o valor da Porta de Entrada 1.
Temporizador
vermelho
Anexe-o a um comando de temporizador para selecionar o
temporizador vermelho.
Valor do
Temporizador
vermelho
Retorna o valor do temporizador vemelho.
Valor da Carta Retorna o valor da carta (carta).
Msica
Nota musical
Toca notas musicais no RCX.
Padro: semnimas na escala normal.
Pausa musical Insere uma pausa na msica.
Durao musical Especifica quanto tempo uma nota deve tocar.
19
Uma oitava acima
Anexado a um comando musical, eleva o tom em uma
oitava ou mais se mais de um for anexado.
Estruturas
Condio do
Sensor de Toque
Faz o programa escolher entre dois caminhos, dependendo
dos dados do sensor de toque.
Padro: Porta 1.
Juno
Usada sempre com uma condio para unir os dois
caminhos da condio.
Comear Tarefa
Comea uma nova tarefa. Permite realizar tarefas mltiplas
simultaneamente. O RCX permite um mximo de 10
tarefas.
Comear Loop
Comea um estrutura de "loop".
Padro: 1 vez.
Fim do Loop Pula de volta ao incio do "loop".
Jump (pulo)
Faz o programa pular para um lugar especfico da
seqncia.
Land (pouso)
Indica o lugar da seqncia onde o comando Jump vai
pular.
Container
Acrescentar ao
Container
Adiciona um nmero ao container.
Padro: adiciona 1 ao container vermelho.
Retirar do
Container
Subtrai um nmero do container.
Padro: subtrai 1 do container vermelho.
Encher Container
Ajusta o container para um certo valor.
Padro: Container vermelho com valor 1.
Container Toque Ajusta o container para o valor do sensor de toque.
Container
Temporizador
Ajusta o valor do container do temporizador.
Padro: container vermelho com o valor do temporizador
vermelho.
RCX para RCX
RCX envia carta
Envia carta (mensagem) para outro RCX. A mensagem deve
ser um nmero entre 1 e 255.
Padro: envia o nmero 1.
Reset
Zera Container
Zera o valor do container.
Padro: container vermelho para zero.
Zera Relgio
Zera o valor do despertador.
Padro: despertador vermelho para zero.
Zera Sensor de
Rotao
Zera o sensor de rotao.
Padro: Porta 1.
Zera Caixa postal Zera o valor da caixa postal do RCX.
20
Espera Avanada
Espera Aumento de
Temperatura
Espera at que a temperatura esteja mais alta que o
nmero especificado.
Padro: 30 Celsius na Porta 1.
Espera Rotao
Espera at que o valor do sensor de rotao seja maior que
o nmero de rotaes especificadas.
Padro: 16 (uma rotao) na Porta 1.
Espera por Posio
Espera at que o valor do sensor de rotao seja maior que
o ngulo especificado em qualquer direo.
Padro: 180 graus na Porta 1.
Espera Container
Espera at que o container esteja igual ao nmero
especificado.
Padro: container vermelho igual a 1.
Espera
Despertador
Espera at que o temporizador seja igual ao nmero
especificado.
Padro: despertador vermelho igual a 1. Precisa zerar o
despertador primeiro!
Espera Carta Espera at que a mensagem do outro RCX seja recebida.

Вам также может понравиться