Arms
Arm Angles
Create the ArmConfig
ArmConfigSparkMax armMotor = new SparkMax(1, MotorType.kBrushless);
SmartMotorControllerConfig motorConfig = new SmartMotorControllerConfig(this)
.withClosedLoopController(4, 0, 0, DegreesPerSecond.of(180), DegreesPerSecondPerSecond.of(90))
.withFeedforward(new ArmFeedforward(0, 0, 0, 0))
.withSoftLimit(Degrees.of(-30), Degrees.of(100))
.withGearing(new MechanismGearing(GearBox.fromReductionStages(3, 4)))
.withIdleMode(MotorMode.BRAKE)
.withTelemetry("ArmMotor", TelemetryVerbosity.HIGH)
.withStatorCurrentLimit(Amps.of(40))
.withMotorInverted(false)
.withClosedLoopRampRate(Seconds.of(0.25))
.withOpenLoopRampRate(Seconds.of(0.25))
.withControlMode(ControlMode.CLOSED_LOOP);
SmartMotorController smartMotorController = new SparkWrapper(armMotor,
DCMotor.getNEO(1),
motorConfig);
ArmConfig armCfg = new ArmConfig(smartMotorController);Length
Mass
Hard Limits
Starting Position
Horizontal Zero
Last updated