Skip to main content
Portal do Professor

VEX V5 Clawbot com o braço para cima e a garra aberta.
VEX V5 Clawbot com o Braço para Cima e Garra Aberta.

O desafio da máquina Groove

Neste desafio, irá dividir-se em equipas e programar o seu robô para passar por uma rotina de dança usando o seu conhecimento de loops. Seu professor definirá um limite de tempo para desenvolver/testar a dança e um limite de tempo para a duração da dança. Todos os que não fazem parte das equipas concorrentes vão julgar as danças e votar na equipa que acharem melhor.

 

Regras:

  • Cada Clawbot dançará um de cada vez dentro da área de 1x1 metro.
  • A dança continua até que o botão Parar na tela do Cérebro seja pressionado para impedir a execução do projeto.
  • O braço deve ser levantado e abaixado.
  • A garra deve abrir e fechar.
  • O Clawbot deve virar à esquerda e à direita.
  • O Clawbot deve dirigir para frente e para trás.
  • O projeto precisa ser interrompido imediatamente se o Clawbot colidir com qualquer coisa ou cair. Isso é uma dança perdida.

Ícone da Caixa de Ferramentas do Professor Caixa de Ferramentas do Professor

O julgamento para esta competição pode ser tratado de várias maneiras. Uma maneira de aumentar o engajamento é fazer com que os alunos gravem o vídeo da dança e que os alunos de outras turmas votem no vencedor. Se isso for muito ambicioso, considere nomear um painel de juízes imparciais antes de iniciar este desafio, ou trazer outros alunos, professores ou funcionários.
A solução abaixo é apenas uma combinação de todos os três exemplos de movimentos de dança amarrados juntos.

// Inclua a Biblioteca V5
#include "vex.h"

// Permite o uso mais fácil da Biblioteca VEX
usando o namespace Vex;

int main() {
  // Initializing Robot Configuration. NÃO REMOVA!
  vexcodeInit ();
  
  while (true) {
    ArmMotor.spinFor (forward, 300, degrees);
    ArmMotor.setStopping (brake);

    repeat(3) {Drivetrain.turnFor
      (right, 90, degrees);

      repeat(2) {ClawMotor.spinFor
        (forward, 90, degrees); ClawMotor.spinFor
        (reverse, 90, degrees);
      } Drivetrain.turnFor (

      left, 90, degrees);

      repeat(2) {ClawMotor.spinFor (
        forward, 90, degrees);}}
        repeat (2) {ArmMotor.spinFor (reverse, 90, degrees);

    }

    repeat(
      2) {ArmMotor.spinFor (forward, 300,
      degrees); ArmMotor.setStopping (
      brake); Drivetrain.turnFor (right, 90, degrees);

      repeat(9
        ) {Drivetrain.turnFor (left, 10, degrees);
        wait(.5, seconds)

      ;
      } ArmMotor.spinFor (reverse, 300, degrees)

    ;
    } ArmMotor.setVelocity (80, percent
    ); Drivetrain.setTurnVelocity (65, percent);

    repeat(2)
      {ArmMotor.spinFor (forward, 900, degrees);

      repeat(repeat)
        {Drivetrain.turnFor (left, 90, degrees)
        ; DrivetrainFor (right, 90, 90, degrees)

      ;
      } ArmMotor.spinForFor (reverse, 900, degrees);


}