Fang-Robotics-MCB
Fang Robotics Team Codebase
Loading...
Searching...
No Matches
dji_gm6020_old.hpp
Go to the documentation of this file.
1#pragma once
7
10#include "tap/util_macros.hpp"
11
12namespace trap
13{
14 namespace motor
15 {
20 {
21 public:
59 const char* name, bool inverted, double gearRatio, const DjiSpeedPid::Config& speedConfig, bool currentControl);
60
62
66 mockable void update() override;
67
71 mockable void setTargetPosition(const Radians& targetPosition) override;
72
77
81 mockable void initialize() override;
82
86 mockable void setDesiredOutput(DjiMotorOutput desiredOutput);
87
92 mockable bool isMotorOnline() const;
93
99
101
102 mockable const char* getName() const;
103
105 private:
106 tap::motor::DjiMotor m_djiMotor;
107 DjiPositionPid m_speedPid;
108 double m_gearRatio;
109
110 trap::algorithms::WrappedRadians m_targetPosition{Radians{0.0}};
111 static constexpr int mk_GM6020CANAddressOffset{4};
112 };
113 }
114}
Definition drivers.hpp:70
Definition dji_motor.hpp:71
static constexpr uint16_t MAX_OUTPUT_GM6020
Definition dji_motor.hpp:82
tap::algorithms::SmoothPidConfig Config
Definition smooth_pid.hpp:25
Definition wrapped_radians.hpp:12
Definition dji_gm6020_old.hpp:20
mockable void setTargetPosition(const Radians &targetPosition) override
Definition dji_gm6020_old.cpp:38
mockable bool isMotorOnline() const
Definition dji_gm6020_old.cpp:59
mockable void update() override
Definition dji_gm6020_old.cpp:31
mockable tap::can::CanBus getCanBus() const
Definition dji_gm6020_old.cpp:69
mockable void initialize() override
Definition dji_gm6020_old.cpp:48
mockable void setDesiredOutput(DjiMotorOutput desiredOutput)
Definition dji_gm6020_old.cpp:53
static const DjiMotorOutput k_maxOutput
Definition dji_gm6020_old.hpp:104
mockable const char * getName() const
Definition dji_gm6020_old.cpp:74
mockable Radians getPosition() const
Definition dji_gm6020_old.cpp:43
mockable Celsius getTemperature() const
Definition dji_gm6020_old.cpp:64
mockable ~DjiGM6020Old()=default
Definition pwm_info.hpp:4
rail::motor::IPositionMotor< Radians > IPositionMotor
Definition iposition_motor.hpp:8
Definition brushlessutils.cpp:4
CanBus
Definition can_bus.hpp:30
MotorId
Definition dji_motor_ids.hpp:38
int16_t DjiMotorOutput
Definition dji_motor_aliases.hpp:13
Definition dimensional_smooth_pid.hpp:8
fang::Drivers & drivers
Definition robot_singleton.cpp:45
Definition smooth_pid.hpp:36
Definition dji_gm6020_old.hpp:23
tap::motor::MotorId motorId
Definition dji_gm6020_old.hpp:24
DjiSpeedPid::Config speedPidConfig
Definition dji_gm6020_old.hpp:29
double gearRatio
Definition dji_gm6020_old.hpp:28
tap::can::CanBus canBus
Definition dji_gm6020_old.hpp:25
bool inverted
Definition dji_gm6020_old.hpp:27
bool currentControl
Definition dji_gm6020_old.hpp:30
const char * name
Definition dji_gm6020_old.hpp:26
units::temperature::celsius_t Celsius
Definition units_alias.hpp:21
units::angle::radian_t Radians
Definition units_alias.hpp:16
#define mockable
Wrap class functions that are not already virtual in this function if you wish to mock them.
Definition util_macros.hpp:38