Fang-Robotics-MCB
Fang Robotics Team Codebase
Loading...
Searching...
No Matches
fang::turret::CounterYawModder Class Reference

#include <counter_yaw_modder.hpp>

Inheritance diagram for fang::turret::CounterYawModder:
Collaboration diagram for fang::turret::CounterYawModder:

Classes

struct  Config
 

Public Member Functions

 CounterYawModder (std::unique_ptr< telemetry::IAngularVelocity > baseYawVelocitySensor, const Config &config)
 
RPM getModdedOutput (const RPM &output) override
 
- Public Member Functions inherited from trap::algorithms::IPidModder< RPM >
virtual ~IPidModder ()=default
 

Detailed Description

If the turret's base is moving one way, the correction should be in the opposite direction

WARNING: This assumes that the rotation convention is the same for both the chassis sensor and the turret

The

Constructor & Destructor Documentation

◆ CounterYawModder()

fang::turret::CounterYawModder::CounterYawModder ( std::unique_ptr< telemetry::IAngularVelocity baseYawVelocitySensor,
const Config config 
)
inline

This needs to provide the angular position relative to gravity.

Whatever can provide the velocity of the base yaw, even adapters can be fed as the telemetry

(for turret imu only robots, this can be estimated through inverse kinematics of the wheels)

Member Function Documentation

◆ getModdedOutput()

RPM fang::turret::CounterYawModder::getModdedOutput ( const RPM output)
inlineoverridevirtual

Note that this strips the unit protection of the fieldPitchSensor. The scaling constant is coupled to the raw value.

Implements trap::algorithms::IPidModder< RPM >.


The documentation for this class was generated from the following file: