Basic_Frame_TypeC_2023_Omni
Loading...
Searching...
No Matches
ChassisApp< DriveTrain > Class Template Reference
Inheritance diagram for ChassisApp< DriveTrain >:
RTOSApp< ChassisApp< DriveTrain > > ExtendedRTOSApp< ChassisApp< DriveTrain > >

Public Member Functions

 ChassisApp (DriveTrain &drive_train_ref, IMessageCenter &message_center_ref, IDebug &debug_ref)
void init ()
void set_initial_state ()
void loop ()
void calc_movement_vectors ()
void process_commands ()
void chassis_get_gimbal_rel_angles ()
void set_board_mode (BoardMode_t new_board_mode)
void set_act_mode (BoardActMode_t new_act_mode)
Public Member Functions inherited from RTOSApp< ChassisApp< DriveTrain > >
void calibrate ()
bool exit_calibrate_cond ()
Public Member Functions inherited from ExtendedRTOSApp< ChassisApp< DriveTrain > >
void run (const void *argument)

Static Public Attributes

static constexpr uint32_t LOOP_PERIOD_MS = CHASSIS_TASK_EXEC_TIME
static constexpr float MAX_TRANSLATION = 2
static constexpr float MAX_ROTATION = PI
static constexpr float GYRO_SPEED = PI

Member Function Documentation

◆ calc_movement_vectors()

template<class DriveTrain>
void ChassisApp< DriveTrain >::calc_movement_vectors ( )

Calculate inverse kinematics based on Chassis Act Mode. (INDPET_MODE) Chassis and gimbal are aligned and share the same reference frame. (GIMBAL_CENTER) Gimbal can move freely and chassis tries to orientate itself with gimbal's reference frame. (GYRO_MODE) Chassis continuously spins and moves along gimbal's reference frame.


The documentation for this class was generated from the following files:
  • Core/Src/Applications/Chassis_App.h
  • Core/Src/Applications/Chassis_App.cpp