Ben Katz
/
Hobbyking_Cheetah_V1
FOC Implementation for putting multirotor motors in robots
SVM/SVM.h@14:80ce59119d93, 2016-10-31 (annotated)
- Committer:
- benkatz
- Date:
- Mon Oct 31 16:48:16 2016 +0000
- Revision:
- 14:80ce59119d93
- Parent:
- 5:51c6560bf624
Misc. changes. Finally fixed transforms (turns out B and C current measurements were accidentally swapped)
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
benkatz | 0:4e1c4df6aabd | 1 | #ifndef SVM_H |
benkatz | 0:4e1c4df6aabd | 2 | #define SVM_H |
benkatz | 0:4e1c4df6aabd | 3 | #include "Inverter.h" |
benkatz | 0:4e1c4df6aabd | 4 | |
benkatz | 0:4e1c4df6aabd | 5 | class SVM{ |
benkatz | 0:4e1c4df6aabd | 6 | public: |
benkatz | 5:51c6560bf624 | 7 | //virtual void Update_DTC(float V_Alpha, float V_Beta) = 0; |
benkatz | 5:51c6560bf624 | 8 | virtual void Update_DTC(float V_A, float V_B, float V_C) = 0; |
benkatz | 0:4e1c4df6aabd | 9 | private: |
benkatz | 0:4e1c4df6aabd | 10 | float _V_Bus; |
benkatz | 0:4e1c4df6aabd | 11 | protected: |
benkatz | 0:4e1c4df6aabd | 12 | Inverter* _inverter; |
benkatz | 0:4e1c4df6aabd | 13 | }; |
benkatz | 0:4e1c4df6aabd | 14 | |
benkatz | 0:4e1c4df6aabd | 15 | |
benkatz | 0:4e1c4df6aabd | 16 | class SPWM: public SVM{ //Sinusoidal PWM |
benkatz | 0:4e1c4df6aabd | 17 | public: |
benkatz | 0:4e1c4df6aabd | 18 | SPWM(Inverter *inverter, float V_Bus); |
benkatz | 5:51c6560bf624 | 19 | //virtual void Update_DTC(float V_Alpha, float V_Beta); |
benkatz | 5:51c6560bf624 | 20 | virtual void Update_DTC(float V_A, float V_B, float V_C); |
benkatz | 0:4e1c4df6aabd | 21 | private: |
benkatz | 0:4e1c4df6aabd | 22 | float _V_Bus; |
benkatz | 0:4e1c4df6aabd | 23 | protected: |
benkatz | 0:4e1c4df6aabd | 24 | Inverter* _inverter; |
benkatz | 0:4e1c4df6aabd | 25 | }; |
benkatz | 0:4e1c4df6aabd | 26 | |
benkatz | 0:4e1c4df6aabd | 27 | |
benkatz | 0:4e1c4df6aabd | 28 | class SVPWM: public SVM{ //SVM |
benkatz | 0:4e1c4df6aabd | 29 | public: |
benkatz | 0:4e1c4df6aabd | 30 | SVPWM(Inverter *inverter, float V_Bus); |
benkatz | 5:51c6560bf624 | 31 | //virtual void Update_DTC(float V_Alpha, float V_Beta); |
benkatz | 5:51c6560bf624 | 32 | virtual void Update_DTC(float V_A, float V_B, float V_C); |
benkatz | 0:4e1c4df6aabd | 33 | |
benkatz | 0:4e1c4df6aabd | 34 | private: |
benkatz | 0:4e1c4df6aabd | 35 | float _V_Bus; |
benkatz | 0:4e1c4df6aabd | 36 | protected: |
benkatz | 0:4e1c4df6aabd | 37 | Inverter* _inverter; |
benkatz | 0:4e1c4df6aabd | 38 | }; |
benkatz | 0:4e1c4df6aabd | 39 | |
benkatz | 5:51c6560bf624 | 40 | |
benkatz | 0:4e1c4df6aabd | 41 | #endif |