Fang-Robotics-MCB
Fang Robotics Team Codebase
Loading...
Searching...
No Matches
dji_motor.hpp
Go to the documentation of this file.
1#pragma once
8
11#include "tap/util_macros.hpp"
12
13#include <limits>
14
15namespace trap::motor
16{
21 :
22 public IDjiOutputMotor,
25 {
26 public:
36
37
45
73 const char* name, bool inverted, double externalEncoderGearRatio, bool currentControl);
74
76
80 void initialize() override;
81
84 void update() override;
85
89 Radians getAngularPosition() const override;
90
94 RPM getAngularVelocity() const override;
95
101 void setTargetOutput(const DjiMotorOutput& output) override;
102
107 bool isMotorOnline() const;
108
113 Celsius getTemperature() const;
114
116
117 const char* getName() const;
118
119 static constexpr DjiMotorOutput kMaxOutput{std::numeric_limits<DjiMotorOutput>::max()};
120 private:
121 tap::motor::DjiMotor djiMotor_;
122 };
123}
Definition drivers.hpp:70
Definition dji_motor.hpp:71
Definition dji_motor.hpp:25
tap::can::CanBus getCanBus() const
Definition dji_motor.cpp:84
Radians getAngularPosition() const override
Definition dji_motor.cpp:54
RPM getAngularVelocity() const override
Definition dji_motor.cpp:59
bool isMotorOnline() const
Definition dji_motor.cpp:74
void initialize() override
Definition dji_motor.cpp:64
const char * getName() const
Definition dji_motor.cpp:89
void update() override
left blank
Definition dji_motor.cpp:47
Celsius getTemperature() const
Definition dji_motor.cpp:79
mockable ~DjiMotor()
Definition dji_motor.hpp:75
static constexpr DjiMotorOutput kMaxOutput
Definition dji_motor.hpp:119
void setTargetOutput(const DjiMotorOutput &output) override
Definition dji_motor.cpp:69
Definition pwm_info.hpp:4
rail::telemetry::IAngularVelocity< RPM > IAngularVelocity
Definition iangular_velocity_telemetry.hpp:8
rail::telemetry::IAngularPosition< Radians > IAngularPosition
Definition iangular_position_telemetry.hpp:8
CanBus
Definition can_bus.hpp:30
MotorId
Definition dji_motor_ids.hpp:38
Definition dji_gm6020.hpp:8
int16_t DjiMotorOutput
Definition dji_motor_aliases.hpp:13
rail::motor::IOutputMotor< DjiMotorOutput > IDjiOutputMotor
Definition dji_motor_aliases.hpp:16
fang::Drivers & drivers
Definition robot_singleton.cpp:45
Definition dji_motor.hpp:28
bool inverted
Definition dji_motor.hpp:32
bool currentControl
Definition dji_motor.hpp:33
tap::motor::MotorId motorId
Definition dji_motor.hpp:29
tap::can::CanBus canBus
Definition dji_motor.hpp:30
const char * name
Definition dji_motor.hpp:31
double externalEncoderGearRatio
Definition dji_motor.hpp:34
units::temperature::celsius_t Celsius
Definition units_alias.hpp:21
units::angle::radian_t Radians
Definition units_alias.hpp:16
units::angular_velocity::revolutions_per_minute_t RPM
Definition units_alias.hpp:30
#define mockable
Wrap class functions that are not already virtual in this function if you wish to mock them.
Definition util_macros.hpp:38