New version of quadcopter software written to OO principles
Dependencies: mbed MODSERIAL filter mbed-rtos ConfigFile PID PPM FreeIMU_external_magnetometer TinyGPS
MotorMixer.h
00001 #include "mbed.h" 00002 #include "Global.h" 00003 #include "PidWrapper.h" 00004 #include "NavigationController.h" 00005 00006 #ifndef MotorMixer_H 00007 #define MotorMixer_H 00008 00009 class MotorMixer 00010 { 00011 public: 00012 MotorMixer(PinName motor1, PinName motor2, PinName motor3, PinName motor4); 00013 ~MotorMixer(); 00014 00015 struct MotorPower 00016 { 00017 double motor1; 00018 double motor2; 00019 double motor3; 00020 double motor4; 00021 }; 00022 00023 void computePower(PidWrapper::PidOutput pidOutput, double throttle); 00024 void computePower(double throttle); 00025 void setPower(double motorPower); 00026 void setPower(double motor1Power, double motor2Power, double motor3Power, double motor4Power); 00027 void setPower(MotorMixer::MotorPower motorPower); 00028 MotorPower getMotorPower(); 00029 00030 private: 00031 PwmOut* _motor1; 00032 PwmOut* _motor2; 00033 PwmOut* _motor3; 00034 PwmOut* _motor4; 00035 00036 MotorPower _motorPower; 00037 }; 00038 00039 #endif
Generated on Fri Jul 15 2022 00:21:58 by 1.7.2