Bayley Wang
/
foc-ed_in_the_bot_compact
robot
PreferenceWriter/Preferences.h@84:dd32640942a4, 2017-03-12 (annotated)
- Committer:
- bwang
- Date:
- Sun Mar 12 06:49:10 2017 +0000
- Revision:
- 84:dd32640942a4
- Parent:
- config.h@82:5e741c5ffd9f
better error handling started
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
bwang | 82:5e741c5ffd9f | 1 | #ifndef __CONFIG_H |
bwang | 82:5e741c5ffd9f | 2 | #define __CONFIG_H |
bwang | 82:5e741c5ffd9f | 3 | |
bwang | 82:5e741c5ffd9f | 4 | #include "mbed.h" |
bwang | 82:5e741c5ffd9f | 5 | |
bwang | 82:5e741c5ffd9f | 6 | /*---driving---*/ |
bwang | 82:5e741c5ffd9f | 7 | #define _TORQUE_MODE __int_reg[0] |
bwang | 82:5e741c5ffd9f | 8 | #define _MAX_TQPCT_PLUS __float_reg[0] |
bwang | 82:5e741c5ffd9f | 9 | #define _MAX_TQPCT_MINUS __float_reg[1] |
bwang | 82:5e741c5ffd9f | 10 | #define _TORQUE_MAX __float_reg[2] |
bwang | 82:5e741c5ffd9f | 11 | #define _W_MAX __float_reg[3] |
bwang | 82:5e741c5ffd9f | 12 | |
bwang | 82:5e741c5ffd9f | 13 | /*---inverter---*/ |
bwang | 82:5e741c5ffd9f | 14 | #define _BUS_VOLTAGE __float_reg[4] |
bwang | 82:5e741c5ffd9f | 15 | #define _F_SW __float_reg[5] |
bwang | 82:5e741c5ffd9f | 16 | |
bwang | 82:5e741c5ffd9f | 17 | /*---logging---*/ |
bwang | 82:5e741c5ffd9f | 18 | #define _ENABLE_LOGGING __int_reg[1] |
bwang | 82:5e741c5ffd9f | 19 | #define _LOG_FREQUENCY __float_reg[6] |
bwang | 82:5e741c5ffd9f | 20 | |
bwang | 82:5e741c5ffd9f | 21 | /*---loop---*/ |
bwang | 82:5e741c5ffd9f | 22 | #define _K_LOOP_D __float_reg[7] |
bwang | 82:5e741c5ffd9f | 23 | #define _KI_BASE_D __float_reg[8] |
bwang | 82:5e741c5ffd9f | 24 | |
bwang | 82:5e741c5ffd9f | 25 | #define _K_LOOP_Q __float_reg[9] |
bwang | 82:5e741c5ffd9f | 26 | #define _KI_BASE_Q __float_reg[10] |
bwang | 82:5e741c5ffd9f | 27 | |
bwang | 82:5e741c5ffd9f | 28 | #define _F_SLOW_LOOP __float_reg[11] |
bwang | 82:5e741c5ffd9f | 29 | |
bwang | 82:5e741c5ffd9f | 30 | #define _INTEGRAL_MAX __float_reg[12] |
bwang | 82:5e741c5ffd9f | 31 | |
bwang | 82:5e741c5ffd9f | 32 | #define _W_FILTER_STRENGTH __float_reg[13] |
bwang | 82:5e741c5ffd9f | 33 | #define _DQ_FILTER_STRENGTH __float_reg[14] |
bwang | 82:5e741c5ffd9f | 34 | #define _THROTTLE_FILTER_STRENGTH __float_reg[15] |
bwang | 82:5e741c5ffd9f | 35 | |
bwang | 82:5e741c5ffd9f | 36 | #define _KP_D __float_reg[17] |
bwang | 82:5e741c5ffd9f | 37 | #define _KI_D __float_reg[18] |
bwang | 82:5e741c5ffd9f | 38 | |
bwang | 82:5e741c5ffd9f | 39 | #define _KP_Q __float_reg[19] |
bwang | 82:5e741c5ffd9f | 40 | #define _KI_Q __float_reg[20] |
bwang | 82:5e741c5ffd9f | 41 | |
bwang | 82:5e741c5ffd9f | 42 | #define _SLOW_LOOP_COUNTER __float_reg[21] |
bwang | 82:5e741c5ffd9f | 43 | |
bwang | 82:5e741c5ffd9f | 44 | /*---motor---*/ |
bwang | 82:5e741c5ffd9f | 45 | #define _POLE_PAIRS __float_reg[22] |
bwang | 82:5e741c5ffd9f | 46 | #define _POS_OFFSET __float_reg[23] |
bwang | 82:5e741c5ffd9f | 47 | #define _RESOLVER_LOBES __float_reg[24] |
bwang | 82:5e741c5ffd9f | 48 | #define _CPR __int_reg[2] |
bwang | 82:5e741c5ffd9f | 49 | #define _Ld __float_reg[25] |
bwang | 82:5e741c5ffd9f | 50 | #define _Lq __float_reg[26] |
bwang | 82:5e741c5ffd9f | 51 | #define _FLUX_LINKAGE __float_reg[27] |
bwang | 82:5e741c5ffd9f | 52 | #define _Rs __float_reg[28] |
bwang | 82:5e741c5ffd9f | 53 | #define _KT __float_reg[29] |
bwang | 82:5e741c5ffd9f | 54 | #define _W_SAFE __float_reg[30] |
bwang | 82:5e741c5ffd9f | 55 | #define _W_CRAZY __float_reg[31] |
bwang | 82:5e741c5ffd9f | 56 | |
bwang | 82:5e741c5ffd9f | 57 | /*---rc_throttle---*/ |
bwang | 82:5e741c5ffd9f | 58 | #define _TH_LIMIT_LOW __int_reg[3] |
bwang | 82:5e741c5ffd9f | 59 | #define _TH_LIMIT_HIGH __int_reg[4] |
bwang | 82:5e741c5ffd9f | 60 | #define _TH_LIMIT_CRAZY __int_reg[5] |
bwang | 82:5e741c5ffd9f | 61 | |
bwang | 82:5e741c5ffd9f | 62 | /*---table---*/ |
bwang | 82:5e741c5ffd9f | 63 | #define _ROWS __int_reg[6] |
bwang | 82:5e741c5ffd9f | 64 | #define _COLUMNS __int_reg[7] |
bwang | 82:5e741c5ffd9f | 65 | #define _W_STEP __float_reg[8] |
bwang | 82:5e741c5ffd9f | 66 | |
bwang | 82:5e741c5ffd9f | 67 | /*---operating mode---*/ |
bwang | 82:5e741c5ffd9f | 68 | |
bwang | 82:5e741c5ffd9f | 69 | #define BREMS_mode __int_reg[8] |
bwang | 82:5e741c5ffd9f | 70 | #define BREMS_src __int_reg[9] |
bwang | 82:5e741c5ffd9f | 71 | #define BREMS_op __int_reg[10] |
bwang | 82:5e741c5ffd9f | 72 | |
bwang | 84:dd32640942a4 | 73 | /*---error handling---*/ |
bwang | 84:dd32640942a4 | 74 | #define ERR_ignores __int_reg[11] |
bwang | 84:dd32640942a4 | 75 | |
bwang | 82:5e741c5ffd9f | 76 | /*internal variables and macros*/ |
bwang | 82:5e741c5ffd9f | 77 | |
bwang | 82:5e741c5ffd9f | 78 | extern float __float_reg[]; |
bwang | 82:5e741c5ffd9f | 79 | extern int __int_reg[]; |
bwang | 82:5e741c5ffd9f | 80 | |
bwang | 82:5e741c5ffd9f | 81 | #define DEFAULT(a) _##a = a |
bwang | 82:5e741c5ffd9f | 82 | #define FPRINT(a) pc->printf("%s: %f\n", #a, _##a) |
bwang | 82:5e741c5ffd9f | 83 | #define DPRINT(a) pc->printf("%s: %d\n", #a, _##a) |
bwang | 82:5e741c5ffd9f | 84 | |
bwang | 84:dd32640942a4 | 85 | #define NUM_MODES 4 |
bwang | 82:5e741c5ffd9f | 86 | enum { |
bwang | 82:5e741c5ffd9f | 87 | MODE_RUN, |
bwang | 82:5e741c5ffd9f | 88 | MODE_CFG, |
bwang | 82:5e741c5ffd9f | 89 | MODE_ZERO, |
bwang | 82:5e741c5ffd9f | 90 | MODE_CHR, |
bwang | 82:5e741c5ffd9f | 91 | }; |
bwang | 82:5e741c5ffd9f | 92 | |
bwang | 84:dd32640942a4 | 93 | #define NUM_OPS 4 |
bwang | 82:5e741c5ffd9f | 94 | enum { |
bwang | 82:5e741c5ffd9f | 95 | OP_TORQUE, |
bwang | 82:5e741c5ffd9f | 96 | OP_DRIVING, |
bwang | 82:5e741c5ffd9f | 97 | OP_SPEED, |
bwang | 82:5e741c5ffd9f | 98 | OP_POSITION, |
bwang | 82:5e741c5ffd9f | 99 | }; |
bwang | 82:5e741c5ffd9f | 100 | |
bwang | 84:dd32640942a4 | 101 | #define NUM_SRCS 6 |
bwang | 82:5e741c5ffd9f | 102 | enum { |
bwang | 82:5e741c5ffd9f | 103 | CMD_SRC_RC, |
bwang | 82:5e741c5ffd9f | 104 | CMD_SRC_ANALOG, |
bwang | 82:5e741c5ffd9f | 105 | CMD_SRC_TERMINAL, |
bwang | 82:5e741c5ffd9f | 106 | CMD_SRC_SERIAL, |
bwang | 82:5e741c5ffd9f | 107 | CMD_SRC_CAN, |
bwang | 82:5e741c5ffd9f | 108 | CMD_SRC_INTERNAL |
bwang | 82:5e741c5ffd9f | 109 | }; |
bwang | 82:5e741c5ffd9f | 110 | |
bwang | 82:5e741c5ffd9f | 111 | #endif |