Ir para o conteúdo principal

Exemplos de aplicação REV DUO


Programação para FIRST Tech Challenge

Um dos pedidos mais comuns dos usuários do Control Hub é como usar o Blinkin para sinalizar ao piloto as diferentes ações que o robô está realizando. O código básico abaixo mostra como usar o SDK para programar o Blinkin para diferentes ações. Quando um botão específico do gamepad é pressionado, o LED acende em uma cor sólida; se nenhum botão estiver pressionado, o LED exibe o padrão Beats Per Minute com a Paleta Floresta.

Blocks

Blocks-code-example-FTC.png

OnBot Java

Em Java, o padrão de LED do Blinkin é atribuído usando a convenção de nomenclatura CONSTANT_CASE. Por exemplo, se você quiser usar o Padrão de Cor Personalizada, Gradiente de Cor, o nome da variável constante é: CP1_2_COLOR_GRADIENT

package org.firstinspires.ftc.teamcode;

import com.qualcomm.robotcore.eventloop.opmode.LinearOpMode;
import com.qualcomm.hardware.rev.RevBlinkinLedDriver;
import com.qualcomm.robotcore.eventloop.opmode.TeleOp;
import com.qualcomm.robotcore.util.ElapsedTime;


@TeleOp

public class BlinkInTest extends LinearOpMode {
RevBlinkinLedDriver blinkinLedDriver;
RevBlinkinLedDriver.BlinkinPattern pattern;

@Override
public void runOpMode() {
    blinkinLedDriver = hardwareMap.get(RevBlinkinLedDriver.class, "blinkin");
    waitForStart();


    while (opModeIsActive()) {
        if(gamepad1.x){
            pattern = RevBlinkinLedDriver.BlinkinPattern.BLUE;
            blinkinLedDriver.setPattern(pattern);
        }
        else if(gamepad1.y){
            pattern = RevBlinkinLedDriver.BlinkinPattern.ORANGE;
            blinkinLedDriver.setPattern(pattern);
        }
        else if (gamepad1.b){
            pattern = RevBlinkinLedDriver.BlinkinPattern.WHITE;
            blinkinLedDriver.setPattern(pattern);
        }
        else if (gamepad1.a){
            pattern = RevBlinkinLedDriver.BlinkinPattern.VIOLET;
            blinkinLedDriver.setPattern(pattern);
        }
        else{
            pattern = RevBlinkinLedDriver.BlinkinPattern.BEATS_PER_MINUTE_FOREST_PALETTE;
            blinkinLedDriver.setPattern(pattern);
        }
        
        
    }
}

}

Fiação Independente

Ideias de Aplicação para Robótica Competitiva