Jared DiCarlo
/
george
motor controller
config.h@6:7310f31aa49e, 2016-11-05 (annotated)
- Committer:
- dicarloj
- Date:
- Sat Nov 05 20:20:48 2016 +0000
- Revision:
- 6:7310f31aa49e
- Parent:
- 4:4e00b310811d
- Child:
- 7:ed19a937daa0
this one worked at 200 V, not sure if phase voltages are being limited.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
dicarloj | 2:7312ac02785d | 1 | //Configuration constants |
dicarloj | 0:f899a5183b5e | 2 | #ifndef _config |
dicarloj | 0:f899a5183b5e | 3 | #define _config |
dicarloj | 0:f899a5183b5e | 4 | |
dicarloj | 2:7312ac02785d | 5 | #define M_PI 3.1415926535897932384f |
dicarloj | 0:f899a5183b5e | 6 | #define nullptr 0 |
dicarloj | 2:7312ac02785d | 7 | |
dicarloj | 2:7312ac02785d | 8 | #define K_SERIAL_BAUD 115200 //serial over USB baud rate |
dicarloj | 2:7312ac02785d | 9 | |
dicarloj | 6:7310f31aa49e | 10 | #define K_V_BUS 200.0f //HV battery voltage |
dicarloj | 6:7310f31aa49e | 11 | #define K_Q_CURRENT_MAX 200.0f //max torque |
dicarloj | 4:4e00b310811d | 12 | #define K_Q_CURRENT_MIN -1.0f //max regen torque |
dicarloj | 2:7312ac02785d | 13 | #define K_P_CURRENT 1.0f //current loop kp |
dicarloj | 2:7312ac02785d | 14 | #define K_I_CURRENT 0.1f //current loop ki |
dicarloj | 2:7312ac02785d | 15 | #define K_CURRENT_INT_MAX 20.0f //current loop integral max |
dicarloj | 4:4e00b310811d | 16 | #define K_AXIS_V_MAX 11000.0f //current loop axis voltage max |
dicarloj | 2:7312ac02785d | 17 | |
dicarloj | 2:7312ac02785d | 18 | |
dicarloj | 2:7312ac02785d | 19 | #define K_POS_OFFSET (- 5.78f + M_PI + 0.03f) //electrical position offset |
dicarloj | 2:7312ac02785d | 20 | |
dicarloj | 3:08746709f023 | 21 | #define K_VOLTAGE_KP 0.1f |
dicarloj | 3:08746709f023 | 22 | #define K_SERVO_KP 0.1f |
dicarloj | 3:08746709f023 | 23 | #define K_SERVO_KI 0.001f |
dicarloj | 3:08746709f023 | 24 | |
dicarloj | 2:7312ac02785d | 25 | |
dicarloj | 2:7312ac02785d | 26 | //from bayley |
dicarloj | 2:7312ac02785d | 27 | #define POLE_PAIRS 3.0f |
dicarloj | 2:7312ac02785d | 28 | #define RESOLVER_LOBES 3.0f |
dicarloj | 2:7312ac02785d | 29 | #define CPR 4096 |
dicarloj | 2:7312ac02785d | 30 | #define I_SCALE_RAW 25.0f //mv/A |
dicarloj | 2:7312ac02785d | 31 | #define R_UP 12000.0f //ohms |
dicarloj | 2:7312ac02785d | 32 | #define R_DOWN 3600.0f //ohms |
dicarloj | 2:7312ac02785d | 33 | #define R_BIAS 3600.0f //ohms |
dicarloj | 2:7312ac02785d | 34 | #define AVDD 3300.0f //mV |
dicarloj | 2:7312ac02785d | 35 | #define I_OFFSET (AVDD * R_DOWN * R_UP / (R_DOWN * R_UP + R_BIAS * (R_DOWN + R_UP))) |
dicarloj | 2:7312ac02785d | 36 | #define I_SCALE (R_BIAS * R_DOWN * I_SCALE_RAW / (R_DOWN * R_UP + R_BIAS * (R_DOWN + R_UP))) |
dicarloj | 0:f899a5183b5e | 37 | |
dicarloj | 0:f899a5183b5e | 38 | #endif |