PRINCÍPIOS DA PROGRAMAÇÃO
PRINCÍPIOS DA PROGRAMAÇÃO
CONCEITOS PARA A PROGRAMAÇÃO
CONCEITOS PARA A PROGRAMAÇÃO
• O que é um robô
• O que é um pseudocódigoO que é um pseudocódigo • O que é um programa
• O que é o programa NXT-G
• Programando o Lego Mindstorms NXT com • Programando o Lego Mindstorms NXT com
O que é um robô
O que é um robô
• Um robô é um dispositivo que é construído de para executar ações e interagir
p ç g
independentemente com seu ambiente. • Geralmente são divididos em robôs:
• Geralmente são divididos em robôs:
autônomos ou não-autônomos (controlados remotamente robôs). A autonomia é muito mais interessante e é o que nós estamos q
O que é um pseudocódigo
O que é um pseudocódigo
• Antes de escrever um programa da mesma
forma que o robô entende, precisamos esboçar q , p ç o que queremos fazer de forma que todas as pessoas compreendam
pessoas compreendam.
• Ele serve para termos detalhadamente o que queremos, assim podemos dividir as ações em partes que possam ser executadas além de
p q p
O que é um programa
O que é um programa
• Um programa é um conjunto de instruções. • Uma programação é o que você faz quandoUma programação é o que você faz quando
você cria um programa.
R bô d l ã
• Robôs e computadores em geral, são
“BURROS”! Suas instruções devem ser extremamente explícitas.
• Computadores e robôs só executa o que for • Computadores e robôs só executa o que for
O que é programa NXT G
O que é programa NXT-G
• NXT-G é a linguagem de programação que a aplicação Mindstorms NXT utiliza.p ç
• É uma linguagem gráfica, o que significa que você constrói um programa inserindo ícones e você constrói um programa inserindo ícones e movendo em sua área de programação.
• A maioria das outras línguas são baseados em texto, como a linguagem C.
Programando em NXT G
Programando em NXT-G
• Para se programar em NXT-G é preciso saber:
– Inserir, mover e excluir ícones (blocos no NXT-G), ( ) – Ligar e configurar os blocos inseridos
Conhecer os tipos de dados que temos (Inteiro – Conhecer os tipos de dados que temos (Inteiro,
Texto, Lógico) d ló i – Ter noção de lógica
Programando em NXT G
Programando em NXT-G
• O primeiro passo de qualquer programação:
– Crie um pseudocódigo do quer que o robô faça. p g q q ç Lembrando claro, que o robô só irá fazer o que realmente for dito para fazer, por isso detalhe o p , p máximo que puder.
– Com o pseudocódigo criado divida-o em partesCom o pseudocódigo criado, divida-o em partes menores, separando cada ação como individual.
O d é t d i d ódi
• O segundo passo é traduzir o pseudocódigo para a linguagem NXT-G:
Programando em NXT G
Programando em NXT-G
• Nosso primeiro programa será o tão conhecido “Alô Mundo!”, que todos os programadores , q p g
um dia já fizeram, independentemente da linguagem usada
linguagem usada. • Pseudocódigo:
Robô mostre em sua tela a frase “Alô Mundo”. Aguarde 5 segundos.g g
Alô Mundo! em NXT G
Alô Mundo! em NXT-G
• Usaremos dois tipos de blocos para criar o “Alô Mundo!”, um bloco que fará o robô , q
exibir o texto na tela (DISPLAY) e outro que fará o robô aguardar os 5s (WAIT)
fará o robô aguardar os 5s (WAIT).
• Como a execução de cada instrução é muito rápida, se não mandássemos o robô aguardar um tempo, não poderíamos ver a mensagem na p p g tela.
Alô Mundo! em NXT G
Alô Mundo! em NXT-G
i i l
• Mostraremos como primeiro exemplo como fazer o programa “Alô Mundo!”. Ao final o programa ficará assim:
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
Com o programa Lego Mindstorms NXT aberto.
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
NOME DO PROGRAMA
Aparecerá o nome que você deu ao programa você deu ao programa.
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
PONTO DE INÍCIO DO PROGRAMA
Comando para iniciar p execução do programa no Lego.
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
CLIQUE NO BLOCO DISPLAY
P l l Para mostrar algo na tela do robô ou limpá-la, tal como: imagem, texto, desenho.
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
Clique agora na área de
BLOCO DISPLAY
trabalho, perto do bloco de início para inserir o bloco DISPLAY.
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
Quando um bloco é selecionado, as propriedades daquele bloco aparecem na parte de baixo do programa. Do lado direito aparece uma descrição do
mesmo.
PROPRIEDADES DO BLOCO DISPLAY NOME DO BLOCO SELECIONADO DESCRIÇÃO
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
Em ACTION você seleciona o que será feito pelo robô. Selecione TEXT para mostrar algum texto na tela do robô.
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
Em DISPLAY você marca se quer que a tela seja apagada. Deixe marcado j p g
CLEAR, assim a tela será limpa antes.
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
Em TEXT você digita o texto que deverá ser impresso na tela do robô. Digite “Alo Mundo!”.
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
Em POSITION você especifica a
posição que o texto deverá ser impresso. Na tela branca você pode verificar a posição que o texto ficará.
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
Você pode marca a posição do texto clicando na tela e movendo para a posição desejada, ou simplesmente digitando as coordenadas.
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
CLIQUE NO BLOCO TIME
Quando você passar o mouse pelo bloco WAIT, a lista dos blocos aparecerão ao lado. Clique no bloco TIME e o
lado. Clique no bloco TIME e o coloque depois do bloco DISPLAY.
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
BLOCO WAIT-TIME
Em UNTIL você informa o tempo de espera em segundos. Digite 10,
para o robô aguardar 10 segundos antes de terminar ou ir para a próxima
execução.
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
OBS: Veja que o nome verdadeiro do bloco não é TIME e sim WAIT, apenas o controle do bloco (propriedade) é time, ou seja o bloco WAIT aguardará um tempo
determinado.
O NOME DO BLOCO É WAIT CONTROL
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
Pronto nosso Alô Mundo está pronto. Agora basta enviar para o robô para ver a execução
Alô Mundo! em NXT-G
Alô Mundo! em NXT G
Agora que o programa está terminado, verifique se o robô está conectado na porta USB do computador e se ele está Ligado. Depois clique em
DOWNLOAD AND RUN para executar
executar.
Alô Mundo! em NXT G
Alô Mundo! em NXT-G
• E aí qual foi o resultado?
• Gostou de programar um robô?Gostou de programar um robô?
• Mas esse programa é muito fácil não é?
• Por isso iremos dar prosseguimento ao nosso curso.
cu so.
• Iremos aprender novos blocos, como criar os bl l b
nossos blocos para elaborarmos programas mais complexos.