Ben Katz
/
Hobbyking_Cheetah_V1
FOC Implementation for putting multirotor motors in robots
Diff: CurrentRegulator/CurrentRegulator.h
- Revision:
- 12:c473a25f54f7
- Parent:
- 11:c83b18d41e54
- Child:
- 14:80ce59119d93
--- a/CurrentRegulator/CurrentRegulator.h Sun May 22 00:14:59 2016 +0000 +++ b/CurrentRegulator/CurrentRegulator.h Sun May 22 03:38:19 2016 +0000 @@ -7,13 +7,13 @@ class CurrentRegulator{ public: - CurrentRegulator(Inverter *inverter, PositionSensor *position_sensor, float Kp, float Ki); + CurrentRegulator(Inverter *inverter, PositionSensor *position_sensor, PositionSensor *velocity_sensor, float L, float Kp, float Ki); void UpdateRef(float D, float Q); void Commutate(); void Reset(); virtual float GetQ(); private: - float IQ_Ref, ID_Ref, V_Q, V_D, V_Alpha, V_Beta, V_A, V_B, V_C, I_Q, I_D, I_A, I_B, I_C, I_Alpha, I_Beta, theta_elec, _Kp, _Ki; + float IQ_Ref, ID_Ref, V_Q, V_D, V_Alpha, V_Beta, V_A, V_B, V_C, I_Q, I_D, I_A, I_B, I_C, I_Alpha, I_Beta, theta_elec, _Kp, _Ki, _L; float Q_Integral, D_Integral, Q_Error, D_Error, Int_Max, DTC_Max, Q_Max; void SampleCurrent(); void SetVoltage(); @@ -21,6 +21,7 @@ void SendSPI(); Inverter* _Inverter; PositionSensor* _PositionSensor; + PositionSensor* _VelocitySensor; SVM* PWM; //Serial* pc; int count;