Caixa de ferramentas do professor
-
Esboço da atividade
- Esta exploração apresentará aos alunos a programação básica do motor de braço do V5 Clawbot.
- Aprender a programar o Motor do Braço permite aos alunos controlar adequadamente os movimentos do braço do V5 Clawbot. Para obter mais informações sobre as instruções utilizadas num projeto Python, visite as informações de do VEXcode V5 Python.
Dicas para professores
a
utilizando o preenchimento automático
O preenchimento automático é uma funcionalidade do VEXcode V5 que prevê o resto do comando que está a escrever. À medida que os alunos trabalham no VEXcode V5, incentive-os a utilizar a funcionalidade Autocomplete para ajudar com a sintaxe do Python. Poderá notar uma função de preenchimento automático ao começar a digitar a instrução. Utilize as teclas “Para cima” e “Para baixo” para selecionar o nome pretendido e prima “Tab” ou (Enter/Return) no teclado para fazer a seleção. Para mais informações sobre esta funcionalidade, consulte o artigo Python.
O V5 Clawbot está pronto para alcançar!
Esta exploração dar-lhe-á as ferramentas para começar a criar alguns projetos interessantes que utilizam o braço do V5 Clawbot.
- Instruções VEXcode V5 Python que serão utilizadas nesta exploração:
- arm_motor.spin_for(AVANÇAR, 90, GRAUS)
- arm_motor.set_position(0, GRAUS)
- esperar(2, SEGUNDOS)
-
Para saber mais informações sobre a instrução, seleccione o ícone de ponto de interrogação junto de um comando para ver mais informações.
- Certifique-se de que tem o hardware necessário, o seu portátil de engenharia e o VEXcode V5 descarregados e está feito.
Quantidade | Materiais necessários |
---|---|
1 |
VEX V5 Classroom Starter Kit (com firmware atualizado) |
1 |
VEX código V5 |
1 |
Caderno de Engenharia |
1 |
Exemplo de desenho do modelo Clawbot (transmissão de 2 motores, sem giroscópio) |
Passo 1: Preparar-se para a Exploração
Antes de iniciar a atividade, tem cada um destes itens prontos? Verifique cada um dos seguintes:
-
Os motores estão ligados nas portas corretas?
-
Os cabos inteligentes estão totalmente inseridos em todos os motores?
-
O Cérebro está ligado?
-
A bateria está carregada?
Dicas para professores
Modele cada uma das etapas de resolução de problemas para os alunos.
Passo 2: Iniciar um novo projeto
Antes de iniciar o seu projeto, selecione o projeto modelo correto. O projeto de exemplo do modelo Clawbot (transmissão de 2 motores, sem giroscópio) contém a configuração dos motores do Clawbot. Se o modelo não for utilizado, o seu robô não executará o projeto corretamente.
Conclua os seguintes passos:
- Abra o menu Ficheiro.
- Selecione Abrir Exemplos.
- Selecione e abra o projeto de exemplo Clawbot Template (Drivetrain 2-motor, No Gyro).
- Como iremos programar para controlar o braço, renomeie o seu projeto ArmControl.
- Guarde o seu projeto.
- Verifique se o nome do projeto ArmControl se encontra agora na janela no centro da barra de ferramentas.
Dicas para professores
- Por se tratar de uma atividade inicial de programação, o professor deverá modelar os passos e depois pedir aos alunos que realizem as mesmas ações. O professor deve então monitorizar os alunos para garantir que estão a seguir os passos corretamente.
- Certifique-se de que os alunos selecionaram Abrir exemplos no menu Ficheiro.
- Certifique-se de que os alunos selecionaram o projeto de exemplo Clawbot Template (Drivetrain 2-motor, No Gyro).
Pode mostrar aos alunos que existem diversas seleções à escolha na página Exemplos. À medida que constroem e utilizam outros robôs, terão a oportunidade de utilizar diferentes modelos.
- Pode pedir aos alunos que adicionem as suas iniciais ou o nome do grupo ao nome do projeto. Isto ajudará a diferenciar os projetos se pedir aos alunos que os enviem.
Caixa de ferramentas do professor
-
Guardar projetos
- Saliente que quando abriram o VEXcode V5 pela primeira vez, a janela estava rotulada como VEXcode Project. Projeto VEXcode é o nome do projeto predefinido quando o VEXcode V5 é aberto pela primeira vez. Depois de o projeto ter sido renomeado e guardado, a vista foi atualizada para mostrar o novo nome do projeto. Utilizando esta janela da barra de ferramentas, é fácil verificar se os alunos estão a utilizar o projeto correto.
- Diga aos alunos que estão agora prontos para iniciar o seu primeiro projeto. Explique aos alunos que seguindo apenas alguns passos simples, serão capazes de criar e executar um projeto que irá levantar e baixar o braço do Clawbot.
- Lembre os alunos de guardar os seus projetos enquanto trabalham. Os artigos da secção Python da Biblioteca VEX explicam as práticas de guardar no VEXcode V5.
Caixa de ferramentas do professor
-
Pare e discuta
Este é um bom ponto para fazer uma pausa e fazer com que os grupos de alunos revejam os passos que acabaram de ser concluídos ao iniciar um novo projeto no VEXcode V5.
Passo 3: Mova o braço para cima
Agora vamos começar por programar o braço para levantar!
# A biblioteca importa
da importação vex *
# Inicia o código do projeto
arm_motor.set_position(0, DEGREES)
- Escreva o comando arm_motor.set_position() como mostrado acima na área de programação para definir a posição inicial do braço.
arm_motor.set_position(0, GRAUS)
arm_motor.spin_for(FORWARD, 90, GRAUS)
- Adicione o comando arm_motor.spin_for() abaixo do comando arm_motor.set_position() como mostrado acima para mover o braço para cima.
- Selecione o ícone Slot. Pode descarregar o seu projeto num dos slots disponíveis no Robot Brain. Selecione Slot 1.
- Ligue o robô ao seu computador ou tablet. O ícone Brain na barra de ferramentas fica verde após ter sido estabelecida uma ligação bem-sucedida.
- Clique no botão Download da barra de ferramentas para descarregar o projeto ArmControl para o Robot Brain.
Caixa de ferramentas do professor
Se os alunos estiverem a utilizar um computador, peça-lhes agora para desligar o cabo USB do Robot Brain. Ter o robô ligado a um computador durante a execução de um projeto pode fazer com que o robô puxe o cabo de ligação.
- Verifique se o projeto ArmControl foi descarregado para o cérebro no slot que escolheu.
Caixa de ferramentas do professor
-
modelo primeiro
Modele a execução do projeto perante a turma antes de todos os alunos tentarem ao mesmo tempo. Reúna os alunos numa área e deixe espaço suficiente para o Clawbot mover o braço. Demonstre como terminar o projeto e fazer com que o braço do Clawbot volte à posição de repouso.
Diga aos alunos que agora é a sua vez de executar os seus projetos. Certifique-se de que têm espaço adequado para levantar o braço do Clawbot em segurança.
- Execute o projeto no Clawbot certificando-se de que o projeto está selecionado e prima o botão Executar. Parabéns por criar o seu primeiro projeto Claw Arm!
Passo 4: Experimente isto: programe o braço para baixo
Agora que já programou o braço para subir, irá programá-lo para baixar ou descer.
- Adicione um segundo comando arm_motor.spin_for() ao seu projeto ArmControl para que o braço suba até aos 90 graus, aguarde 2 segundos e depois desça.
- Dica: Terá de alterar a direção dentro do comando.
- Note que o braço mantém a sua posição enquanto o comando wait está a ser executado. O motor retira energia da bateria para manter o braço contra a força da gravidade. Isto porque a definição padrão para parar o motor é a definição hold . Existem duas outras definições para a paragem - travão e paragem por inércia. Aprenderá sobre eles em outro laboratório.
Caixa de ferramentas do professor
-
solução
A solução para o desafio está abaixo. Para baixar o braço, os alunos necessitaram de alterar o parâmetro “FORWARD” para “REVERSE” no comando arm_motor.spin_for() que foi adicionado.
# Inicia o código do projeto
arm_motor.set_position(0, DEGREES)
arm_motor.spin_for(FORWARD, 90, DEGREES)
wait(2, SECONDS)
arm_motor.spin_for(REVERSE, 90, DEGREES)
Passo 5: Conclua o Desafio do Controlador de Tráfego de Voo
No Flight Traffic Controller Challenge, o Clawbot deve mover o braço para cima e para baixo uma vez por 90 graus, esperar 3 segundos, mover o braço para cima e para baixo duas vezes por 45 graus, esperar 5 segundos e depois mover o braço para para cima e para baixo três vezes para 90 graus.
Aqui está uma lista dos comportamentos do Clawbot:
- Mova o braço para cima e para baixo a 90 graus.
- Aguarde 3 segundos.
- Mova o braço para cima e para baixo a 45 graus.
- Mova o braço para cima e para baixo a 45 graus.
- Aguarde 5 segundos.
- Mova o braço para cima e para baixo a 90 graus.
- Mova o braço para cima e para baixo a 90 graus.
- Mova o braço para cima e para baixo a 90 graus.
Caixa de ferramentas do professor
-
solução
A maioria dos comandos deste desafio são arm_motor.spin_for(). Depois de adicionar um comando para mover o braço para cima e outro para mover o braço para baixo, pode destacar ambos os comandos, clicar com o botão direito do rato e escolher copiá-los e colá-los as vezes necessárias. De seguida, os parâmetros podem ser alterados para enfrentar o desafio e os comandos wait podem ser adicionados entre eles.
- Reveja um exemplo de solução do Flight Traffic Controller Challenge aqui:
# Inicia o código do projeto
arm_motor.set_position(0, DEGREES)
arm_motor.spin_for(FORWARD, 90, DEGREES)
arm_motor.spin_for(REVERSE, 90, DEGREES)
wait(3, SECONDS)
arm_motor.spin_for(FORWARD , 45 , GRAUS)
arm_motor.spin_for(REVERSE, 45, GRAUS)
arm_motor.spin_for(FORWARD, 45, GRAUS)
arm_motor.spin_for(REVERSE, 45, GRAUS)
wait(5, SECONDS)
arm_motor.spin_for( FORWARD, 90, GRAUS)
arm_motor.spin_for (REVERSE, 90, GRAUS)
arm_motor.spin_for (FORWARD, 90, GRAUS)
arm_motor.spin_for (REVERSE, 90, GRAUS)
arm_motor.spin_for (FORWARD, 90, GRAUS)
arm_motor .spin_for(REVERSE, 90, GRAUS)
Os alunos mais avançados podem usar loops para simplificar a solução.
# Inicia o código do projeto
arm_motor.set_position(0, DEGREES)
arm_motor.spin_for(FORWARD, 90, DEGREES)
arm_motor.spin_for(REVERSE, 90, DEGREES)
wait(3, SECONDS)
to repeat_count in range( 2) :
arm_motor.spin_for (FORWARD, 45, DEGREES)
arm_motor.spin_for (REVERSE, 45, DEGREES)
wait (5, SECONDS)
para repetir_count no intervalo (3):
arm_motor.spin_for (FORWARD, 90, DEGREES)
arm_motor.spin_for (REVERSE, 90, GRAUS)
- Rubrica de Programação (Google Doc )