Fang-Robotics-MCB
Fang Robotics Team Codebase
Loading...
Searching...
No Matches
fang::turret::CounterChassisFieldYaw< Output > Class Template Reference

#include <counter_chassis_field_yaw.hpp>

Inheritance diagram for fang::turret::CounterChassisFieldYaw< Output >:
Collaboration diagram for fang::turret::CounterChassisFieldYaw< Output >:

Classes

struct  Config
 

Public Types

using ModdedCascadeMotor = motor::ModdedCascadePosition< Output, RPM >
 
using ControlTelemetry = telemetry::ITelemetry< Radians >
 
using IntermediateTelemetry = telemetry::ITelemetry< RPM >
 
- Public Types inherited from fang::turret::ChassisFieldYawSystem
using Motor = motor::IPositionMotor
 
using Imu = trap::communication::sensors::IImu
 

Public Member Functions

 CounterChassisFieldYaw (std::unique_ptr< motor::IOutputMotor< Output > > motor, std::unique_ptr< ControlTelemetry > controlTelemetry, std::unique_ptr< IntermediateTelemetry > intermediateTelemetry, std::unique_ptr< telemetry::IAngularVelocity > baseVelocityYawSensor, std::unique_ptr< Imu > imu, const Config &config)
 
- Public Member Functions inherited from fang::turret::ChassisFieldYawSystem
 ChassisFieldYawSystem (std::unique_ptr< Motor > motor, std::unique_ptr< Imu > chassisImu, const Config &config)
 
void initialize () override
 
void update () override
 
void setTargetFieldYaw (const Radians &yaw) override
 

Detailed Description

template<typename Output>
class fang::turret::CounterChassisFieldYaw< Output >

This is slightly different from other pitch systems in the fact that it takes a dualCascadePosition instead of a position motor.

This is able to add compensation for the tilt

It also requires telemetry for

Member Typedef Documentation

◆ ControlTelemetry

template<typename Output >
using fang::turret::CounterChassisFieldYaw< Output >::ControlTelemetry = telemetry::ITelemetry<Radians>

◆ IntermediateTelemetry

template<typename Output >
using fang::turret::CounterChassisFieldYaw< Output >::IntermediateTelemetry = telemetry::ITelemetry<RPM>

◆ ModdedCascadeMotor

template<typename Output >
using fang::turret::CounterChassisFieldYaw< Output >::ModdedCascadeMotor = motor::ModdedCascadePosition<Output, RPM>

Constructor & Destructor Documentation

◆ CounterChassisFieldYaw()

template<typename Output >
fang::turret::CounterChassisFieldYaw< Output >::CounterChassisFieldYaw ( std::unique_ptr< motor::IOutputMotor< Output > >  motor,
std::unique_ptr< ControlTelemetry controlTelemetry,
std::unique_ptr< IntermediateTelemetry intermediateTelemetry,
std::unique_ptr< telemetry::IAngularVelocity baseVelocityYawSensor,
std::unique_ptr< Imu imu,
const Config config 
)
inline

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