Skip to main content

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.

# Importações
de biblioteca de importação de Vex *

# Comece
    o código do projeto
enquanto True:
    arm_motor.spin_for (FORWARD, 300, DEGREES) arm_motor.set_stopping (BRAKE
        )
    

        
        for repeat_count in range(3): drivetrain.turn_for (RIGHT,
            90, DEGREES) for repeat
            _claw in range (2)
            : claw_motor.spin_for (REVERSE,
            
        90, DEGREES) claw_motor.spin_for (
        FORWARD, 90, degrees)
            wait (
            5, MSEC) drivetrain.turn_for (LEFT
            , 90, DEGREES)

    for repeat_claw in range (2): claw_motor.spin_for (REVERSE, 90, degrees) claw_motor.spin_for
        (FORWARD, 90, DEGREES)
            

        wait (5
        , MSEC)
        
        for repeat_count in range(2): arm_motor.spin_for (
            FORWARD, 300, DEGREES)
            arm_motor.set_stopping (BRAKE) drivetrain.turn_for
            
        (RIGHT, 90, DEGREES)
    
    for repeat_turn

    in range (9)
    : drivetrain.turn_for (LEFT, 10, degrees
        wait (5, MSEC
        ) arm_motor.spin_for (REVERSE, 300, DEGREES),
            wait (5, MSEC
            ) arm_motor.set.vel_ocity (80, PERCENT
            ) drivetrain_tset_urnity (65, count_
        
        for repeat, 2,
            
        arm_motor_for (RIGHT, 300,
        range_drivetrain_for):