Improve servo angle limits

This commit is contained in:
Pascal Serrarens 2024-09-25 11:28:31 +02:00
parent 9a5fcf5798
commit b662348236
3 changed files with 4 additions and 5 deletions

@ -1 +1 @@
Subproject commit 9eca3189918ecfbaae462427619c263f636b6d9d
Subproject commit 95a6fb3a4b5eca70dee33381611e5df9d28fdcee

View File

@ -11,8 +11,7 @@ ServoMotor::ServoMotor()
}
void ServoMotor::SetTargetAngle(Angle16 angle) {
angle = Angle16::Degrees(Float::Clamp(angle.InDegrees(), minAngle.InDegrees(),
maxAngle.InDegrees()));
angle = Angle16::Clamp(angle, minAngle, maxAngle);
if (maxSpeed == 0.0F) {
SetAngle(angle);

View File

@ -11,8 +11,8 @@ class ServoMotor : public Thing {
ServoMotor();
Vector3 rotationAxis = Vector3::up;
Angle minAngle = Angle::Degrees(-90);
Angle maxAngle = Angle::Degrees(90);
Angle16 minAngle = Angle16::Degrees(-90);
Angle16 maxAngle = Angle16::Degrees(90);
enum ControlMode { Position, Velocity };
ControlMode controlMode = ControlMode::Position;