public class Robot extends TimedRobot {
private LEDController ledStrip;
@Override
public void robotInit() {
ledStrip = new LEDController(0, 1, 2); // Ports PWM pour R, G, B
}
@Override
public void teleopPeriodic() {
ledStrip.red(); // Allume en rouge
// ledStrip.green(); // Allume en vert
// ledStrip.blue(); // Allume en bleu
// ledStrip.white(); // Blanc
// ledStrip.yellow(); // Jaune
// ledStrip.purple(); // Violet
// ledStrip.cyan(); // Cyan
// ledStrip.off(); // Éteint les LEDs
}
}
/**
* Classe pour contrôler une bande LED RGB analogique avec le RoboRIO.
*/
class LEDController {
private PWM redPWM, greenPWM, bluePWM;
public LEDController(int redPort, int greenPort, int bluePort) {
redPWM = new PWM(redPort);
greenPWM = new PWM(greenPort);
bluePWM = new PWM(bluePort);
}
public void red() { setRGB(1.0, 0.0, 0.0); }
public void green() { setRGB(0.0, 1.0, 0.0); }
public void blue() { setRGB(0.0, 0.0, 1.0); }
public void white() { setRGB(1.0, 1.0, 1.0); }
public void yellow() { setRGB(1.0, 1.0, 0.0); }
public void purple() { setRGB(1.0, 0.0, 1.0); }
public void cyan() { setRGB(0.0, 1.0, 1.0); }
public void off() { setRGB(0.0, 0.0, 0.0); }
Commentaires
1 Ilwn Le 09/02/2025
import edu.wpi.first.wpilibj.PWM;
import edu.wpi.first.wpilibj.TimedRobot;
public class Robot extends TimedRobot {
private LEDController ledStrip;
@Override
public void robotInit() {
ledStrip = new LEDController(0, 1, 2); // Ports PWM pour R, G, B
}
@Override
public void teleopPeriodic() {
ledStrip.red(); // Allume en rouge
// ledStrip.green(); // Allume en vert
// ledStrip.blue(); // Allume en bleu
// ledStrip.white(); // Blanc
// ledStrip.yellow(); // Jaune
// ledStrip.purple(); // Violet
// ledStrip.cyan(); // Cyan
// ledStrip.off(); // Éteint les LEDs
}
}
/**
* Classe pour contrôler une bande LED RGB analogique avec le RoboRIO.
*/
class LEDController {
private PWM redPWM, greenPWM, bluePWM;
public LEDController(int redPort, int greenPort, int bluePort) {
redPWM = new PWM(redPort);
greenPWM = new PWM(greenPort);
bluePWM = new PWM(bluePort);
}
public void red() { setRGB(1.0, 0.0, 0.0); }
public void green() { setRGB(0.0, 1.0, 0.0); }
public void blue() { setRGB(0.0, 0.0, 1.0); }
public void white() { setRGB(1.0, 1.0, 1.0); }
public void yellow() { setRGB(1.0, 1.0, 0.0); }
public void purple() { setRGB(1.0, 0.0, 1.0); }
public void cyan() { setRGB(0.0, 1.0, 1.0); }
public void off() { setRGB(0.0, 0.0, 0.0); }
private void setRGB(double red, double green, double blue) {
redPWM.setSpeed(red);
greenPWM.setSpeed(green);
bluePWM.setSpeed(blue);
}
}
2 ??? Le 02/05/2024