Sungwoo Kim
/
HydraulicControlBoard_Rainbow_v1_2_
rainbow
setting.h@243:30896263bd8b, 2022-06-13 (annotated)
- Committer:
- Lightvalve
- Date:
- Mon Jun 13 08:48:55 2022 +0000
- Revision:
- 243:30896263bd8b
- Parent:
- 241:27eca07c9591
- Child:
- 244:e9c5ec04e378
220613
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
GiJeongKim | 0:51c43836c1d7 | 1 | #include "mbed.h" |
GiJeongKim | 0:51c43836c1d7 | 2 | #include "FastPWM.h" |
GiJeongKim | 0:51c43836c1d7 | 3 | |
GiJeongKim | 0:51c43836c1d7 | 4 | // pwm |
Lightvalve | 243:30896263bd8b | 5 | //#define PIN_V PB_4 |
Lightvalve | 243:30896263bd8b | 6 | //#define PIN_W PB_5 |
Lightvalve | 243:30896263bd8b | 7 | //#define PIN_V PC_6 |
Lightvalve | 243:30896263bd8b | 8 | //#define PIN_W PC_7 |
Lightvalve | 243:30896263bd8b | 9 | #define PIN_V PA_8 |
Lightvalve | 243:30896263bd8b | 10 | #define PIN_W PA_7 |
Lightvalve | 243:30896263bd8b | 11 | //#define PIN_V PB_6 |
Lightvalve | 243:30896263bd8b | 12 | //#define PIN_W PB_7 |
Lightvalve | 224:985dba42f261 | 13 | //#define PWM_ARR 0x465 // loop 80k, pwm 40k |
jobuuu | 2:a1c0a37df760 | 14 | //#define PWM_ARR 0x8CA // loop 40k, pwm 20k |
Lightvalve | 240:fb5b57e3f157 | 15 | #define PWM_ARR 0x1194 // loop 20k, pwm 10k 원래이거 |
Lightvalve | 224:985dba42f261 | 16 | //#define PWM_ARR 0x2328 // loop 10k, pwm 5k |
Lightvalve | 240:fb5b57e3f157 | 17 | //#define PWM_ARR 0xAFC8 // loop 2 k, pwm 1k |
Lightvalve | 240:fb5b57e3f157 | 18 | |
Lightvalve | 243:30896263bd8b | 19 | //#define TMR3_COUNT 0xAFC8 // loop 2 k, pwm 1k |
Lightvalve | 243:30896263bd8b | 20 | #define TMR3_COUNT 0x1194 |
Lightvalve | 240:fb5b57e3f157 | 21 | //#define TMR2_COUNT 0x2710 // loop 500hz with prescale 18 |
Lightvalve | 240:fb5b57e3f157 | 22 | #define TMR2_COUNT 0x4650 // loop 5 k |
Lightvalve | 243:30896263bd8b | 23 | #define TMR1_COUNT 0x1194 |
jobuuu | 2:a1c0a37df760 | 24 | |
Lightvalve | 30:8d561f16383b | 25 | #define FREQ_500 500.0f |
Lightvalve | 30:8d561f16383b | 26 | #define FREQ_1k 1000.0f |
Lightvalve | 30:8d561f16383b | 27 | #define FREQ_5k 5000.0f |
Lightvalve | 30:8d561f16383b | 28 | #define FREQ_10k 10000.0f |
Lightvalve | 30:8d561f16383b | 29 | #define FREQ_20k 20000.0f |
Lightvalve | 30:8d561f16383b | 30 | #define FREQ_40k 40000.0f |
Lightvalve | 30:8d561f16383b | 31 | #define DT_500 0.002f |
jobuuu | 230:2c3e5ecbe7e1 | 32 | #define DT_1k 0.001f |
Lightvalve | 30:8d561f16383b | 33 | #define DT_5k 0.0002f |
Lightvalve | 30:8d561f16383b | 34 | #define DT_10k 0.0001f |
Lightvalve | 30:8d561f16383b | 35 | #define DT_20k 0.00005f |
Lightvalve | 30:8d561f16383b | 36 | #define DT_40k 0.000025f |
jobuuu | 5:a4319f79457b | 37 | |
jobuuu | 230:2c3e5ecbe7e1 | 38 | //#define TMR_FREQ_10k 10000 |
jobuuu | 230:2c3e5ecbe7e1 | 39 | #define TMR_FREQ_5k 5000 |
Lightvalve | 241:27eca07c9591 | 40 | #define TMR_FREQ_1k 1000 |
jobuuu | 230:2c3e5ecbe7e1 | 41 | |
jobuuu | 7:e9086c72bb22 | 42 | extern AnalogOut dac_1; |
jobuuu | 7:e9086c72bb22 | 43 | extern AnalogOut dac_2; |
jobuuu | 7:e9086c72bb22 | 44 | |
Lightvalve | 30:8d561f16383b | 45 | extern float dtc_v; |
Lightvalve | 30:8d561f16383b | 46 | extern float dtc_w; |
GiJeongKim | 0:51c43836c1d7 | 47 | |
GiJeongKim | 0:51c43836c1d7 | 48 | // SPI |
Lightvalve | 170:42c938a40313 | 49 | extern SPI eeprom; //(SPI_MOSI, SPI_MISO, SPI_SCK); |
Lightvalve | 170:42c938a40313 | 50 | extern DigitalOut eeprom_cs; |
GiJeongKim | 0:51c43836c1d7 | 51 | extern SPI enc; |
GiJeongKim | 0:51c43836c1d7 | 52 | extern DigitalOut enc_cs; |
GiJeongKim | 0:51c43836c1d7 | 53 | |
GiJeongKim | 0:51c43836c1d7 | 54 | // UART |
jobuuu | 7:e9086c72bb22 | 55 | extern Serial pc; //Serial pc(PA_9,PA_10); _ UART |
jobuuu | 7:e9086c72bb22 | 56 | |
jobuuu | 7:e9086c72bb22 | 57 | // CAN |
jobuuu | 7:e9086c72bb22 | 58 | extern CAN can; |
jobuuu | 7:e9086c72bb22 | 59 | extern CANMessage msg; |
jobuuu | 7:e9086c72bb22 | 60 | |
jobuuu | 7:e9086c72bb22 | 61 | // Board Information |
jobuuu | 7:e9086c72bb22 | 62 | |
jobuuu | 7:e9086c72bb22 | 63 | |
jobuuu | 7:e9086c72bb22 | 64 | // User Function |
jobuuu | 7:e9086c72bb22 | 65 | void CurrentControl(); |
jobuuu | 7:e9086c72bb22 | 66 | void ValveControl(unsigned int ControlMode); |
Lightvalve | 11:82d8768d7351 | 67 | |
Lightvalve | 11:82d8768d7351 | 68 | |
Lightvalve | 11:82d8768d7351 | 69 | /******************************************************************************* |
Lightvalve | 11:82d8768d7351 | 70 | * COMMON Settings |
Lightvalve | 11:82d8768d7351 | 71 | ******************************************************************************/ |
Lightvalve | 11:82d8768d7351 | 72 | #define LATEST_VERSION 19032 |
Lightvalve | 11:82d8768d7351 | 73 | |
Lightvalve | 11:82d8768d7351 | 74 | |
Lightvalve | 11:82d8768d7351 | 75 | /******************************************************************************* |
Lightvalve | 11:82d8768d7351 | 76 | * COMMON CONSTANTS |
Lightvalve | 11:82d8768d7351 | 77 | ******************************************************************************/ |
Lightvalve | 30:8d561f16383b | 78 | #define RAD_30 0.523598775598299f |
Lightvalve | 30:8d561f16383b | 79 | #define RAD_60 1.047197551196598f |
Lightvalve | 30:8d561f16383b | 80 | #define RAD_120 2.094395102393195f |
Lightvalve | 30:8d561f16383b | 81 | #define RAD_180 3.141592653589793f |
Lightvalve | 30:8d561f16383b | 82 | #define RAD_240 4.188790204786391f |
Lightvalve | 30:8d561f16383b | 83 | #define RAD_300 5.235987755982989f |
Lightvalve | 30:8d561f16383b | 84 | #define RAD_360 6.283185307179586f |
Lightvalve | 11:82d8768d7351 | 85 | |
Lightvalve | 11:82d8768d7351 | 86 | #define SYSFREQ 200000000 |
Lightvalve | 11:82d8768d7351 | 87 | #define PBCLK 100000000 |
Lightvalve | 11:82d8768d7351 | 88 | |
Lightvalve | 11:82d8768d7351 | 89 | #define FALSE 0 |
Lightvalve | 11:82d8768d7351 | 90 | #define TRUE 1 |
Lightvalve | 11:82d8768d7351 | 91 | #define OUTPUT 0 |
Lightvalve | 11:82d8768d7351 | 92 | #define INPUT 1 |
Lightvalve | 11:82d8768d7351 | 93 | #define LOW 0 |
Lightvalve | 11:82d8768d7351 | 94 | #define HIGH 1 |
Lightvalve | 11:82d8768d7351 | 95 | #define DIGITAL 0 |
Lightvalve | 11:82d8768d7351 | 96 | #define ANALOG 1 |
Lightvalve | 11:82d8768d7351 | 97 | |
Lightvalve | 30:8d561f16383b | 98 | #define PI 3.141592653589793f |
Lightvalve | 30:8d561f16383b | 99 | #define D2R 0.017453292519943f |
Lightvalve | 30:8d561f16383b | 100 | #define R2D 57.295779513082323f |
Lightvalve | 11:82d8768d7351 | 101 | |
Lightvalve | 11:82d8768d7351 | 102 | |
Lightvalve | 11:82d8768d7351 | 103 | /******************************************************************************* |
Lightvalve | 11:82d8768d7351 | 104 | * HEADER INCLUDE |
Lightvalve | 11:82d8768d7351 | 105 | ******************************************************************************/ |
Lightvalve | 11:82d8768d7351 | 106 | |
Lightvalve | 11:82d8768d7351 | 107 | /******************************************************************************* |
Lightvalve | 11:82d8768d7351 | 108 | * VARIABLE |
Lightvalve | 11:82d8768d7351 | 109 | ******************************************************************************/ |
Lightvalve | 11:82d8768d7351 | 110 | |
Lightvalve | 11:82d8768d7351 | 111 | // Board Information |
Lightvalve | 11:82d8768d7351 | 112 | extern uint8_t BNO; |
Lightvalve | 11:82d8768d7351 | 113 | extern uint8_t CONTROL_MODE; |
Lightvalve | 11:82d8768d7351 | 114 | extern uint8_t OPERATING_MODE; |
Lightvalve | 52:8ea76864368a | 115 | extern uint8_t SENSING_MODE; |
jobuuu | 230:2c3e5ecbe7e1 | 116 | extern uint8_t SUPPLY_PRESSURE_UPDATE; |
jobuuu | 230:2c3e5ecbe7e1 | 117 | |
Lightvalve | 57:f4819de54e7a | 118 | extern uint8_t CONTROL_UTILITY_MODE; |
Lightvalve | 52:8ea76864368a | 119 | extern uint8_t CURRENT_CONTROL_MODE; |
Lightvalve | 52:8ea76864368a | 120 | extern uint8_t FLAG_VALVE_DEADZONE; |
Lightvalve | 11:82d8768d7351 | 121 | extern uint8_t REFERENCE_MODE; |
Lightvalve | 54:647072f5307a | 122 | extern int16_t CAN_FREQ; |
Lightvalve | 17:1865016ca2e7 | 123 | extern int16_t DIR_JOINT_ENC; |
Lightvalve | 17:1865016ca2e7 | 124 | extern int16_t DIR_VALVE; |
Lightvalve | 17:1865016ca2e7 | 125 | extern int16_t DIR_VALVE_ENC; |
Lightvalve | 11:82d8768d7351 | 126 | |
Lightvalve | 30:8d561f16383b | 127 | extern float SUPPLY_VOLTAGE; |
Lightvalve | 30:8d561f16383b | 128 | extern float VALVE_VOLTAGE_LIMIT; |
Lightvalve | 11:82d8768d7351 | 129 | |
Lightvalve | 30:8d561f16383b | 130 | extern float P_GAIN_VALVE_POSITION; |
Lightvalve | 30:8d561f16383b | 131 | extern float I_GAIN_VALVE_POSITION; |
Lightvalve | 30:8d561f16383b | 132 | extern float D_GAIN_VALVE_POSITION; |
Lightvalve | 30:8d561f16383b | 133 | extern float P_GAIN_JOINT_POSITION; |
Lightvalve | 30:8d561f16383b | 134 | extern float I_GAIN_JOINT_POSITION; |
Lightvalve | 30:8d561f16383b | 135 | extern float D_GAIN_JOINT_POSITION; |
Lightvalve | 30:8d561f16383b | 136 | extern float P_GAIN_JOINT_TORQUE; |
Lightvalve | 30:8d561f16383b | 137 | extern float I_GAIN_JOINT_TORQUE; |
Lightvalve | 30:8d561f16383b | 138 | extern float D_GAIN_JOINT_TORQUE; |
Lightvalve | 72:3436ce769b1e | 139 | extern float P_GAIN_JOINT_TORQUE_FF; |
Lightvalve | 72:3436ce769b1e | 140 | extern float I_GAIN_JOINT_TORQUE_FF; |
Lightvalve | 72:3436ce769b1e | 141 | extern float D_GAIN_JOINT_TORQUE_FF; |
Lightvalve | 11:82d8768d7351 | 142 | |
Lightvalve | 46:2694daea349b | 143 | extern int16_t K_SPRING; |
Lightvalve | 46:2694daea349b | 144 | extern int16_t D_DAMPER; |
Lightvalve | 46:2694daea349b | 145 | |
Lightvalve | 54:647072f5307a | 146 | extern int16_t flag_delay_test; |
Lightvalve | 54:647072f5307a | 147 | |
Lightvalve | 36:a46e63505ed8 | 148 | //extern float P_GAIN_VALVE_POSITION_OPP; |
Lightvalve | 36:a46e63505ed8 | 149 | //extern float I_GAIN_VALVE_POSITION_OPP; |
Lightvalve | 36:a46e63505ed8 | 150 | //extern float D_GAIN_VALVE_POSITION_OPP; |
Lightvalve | 36:a46e63505ed8 | 151 | //extern float P_GAIN_JOINT_POSITION_OPP; |
Lightvalve | 36:a46e63505ed8 | 152 | //extern float I_GAIN_JOINT_POSITION_OPP; |
Lightvalve | 36:a46e63505ed8 | 153 | //extern float D_GAIN_JOINT_POSITION_OPP; |
Lightvalve | 36:a46e63505ed8 | 154 | //extern float P_GAIN_JOINT_TORQUE_OPP; |
Lightvalve | 36:a46e63505ed8 | 155 | //extern float I_GAIN_JOINT_TORQUE_OPP; |
Lightvalve | 36:a46e63505ed8 | 156 | //extern float D_GAIN_JOINT_TORQUE_OPP; |
Lightvalve | 36:a46e63505ed8 | 157 | |
hyhoon | 226:82a3ca333004 | 158 | extern int16_t VALVE_DEADZONE_PLUS; |
hyhoon | 226:82a3ca333004 | 159 | extern int16_t VALVE_DEADZONE_MINUS; |
Lightvalve | 11:82d8768d7351 | 160 | |
Lightvalve | 11:82d8768d7351 | 161 | extern int16_t VELOCITY_COMP_GAIN; |
Lightvalve | 238:4e660aa77eb7 | 162 | //extern int16_t COMPLIANCE_GAIN; |
Lightvalve | 11:82d8768d7351 | 163 | |
Lightvalve | 11:82d8768d7351 | 164 | extern int16_t VALVE_CENTER; |
Lightvalve | 11:82d8768d7351 | 165 | |
Lightvalve | 11:82d8768d7351 | 166 | extern int16_t VALVE_FF; |
Lightvalve | 11:82d8768d7351 | 167 | |
Lightvalve | 11:82d8768d7351 | 168 | extern int16_t BULK_MODULUS; |
Lightvalve | 11:82d8768d7351 | 169 | |
Lightvalve | 11:82d8768d7351 | 170 | extern int16_t CHAMBER_VOLUME_A; |
Lightvalve | 11:82d8768d7351 | 171 | extern int16_t CHAMBER_VOLUME_B; |
Lightvalve | 11:82d8768d7351 | 172 | |
Lightvalve | 11:82d8768d7351 | 173 | extern int16_t PISTON_AREA_A; |
Lightvalve | 11:82d8768d7351 | 174 | extern int16_t PISTON_AREA_B; |
Lightvalve | 30:8d561f16383b | 175 | extern float PISTON_AREA_alpha; |
Lightvalve | 57:f4819de54e7a | 176 | extern float alpha3; |
Lightvalve | 11:82d8768d7351 | 177 | |
jobuuu | 230:2c3e5ecbe7e1 | 178 | extern float PRES_SUPPLY_NOM; |
jobuuu | 230:2c3e5ecbe7e1 | 179 | extern float PRES_SUPPLY; |
Lightvalve | 11:82d8768d7351 | 180 | |
Lightvalve | 11:82d8768d7351 | 181 | extern int16_t ENC_LIMIT_PLUS; |
Lightvalve | 11:82d8768d7351 | 182 | extern int16_t ENC_LIMIT_MINUS; |
Lightvalve | 11:82d8768d7351 | 183 | |
Lightvalve | 11:82d8768d7351 | 184 | extern int16_t STROKE; |
Lightvalve | 11:82d8768d7351 | 185 | |
Lightvalve | 133:22ab22818e01 | 186 | extern float Amm; |
Lightvalve | 133:22ab22818e01 | 187 | extern float beta; |
Lightvalve | 133:22ab22818e01 | 188 | extern float Ps; |
Lightvalve | 133:22ab22818e01 | 189 | extern float Pt; |
Lightvalve | 133:22ab22818e01 | 190 | extern float gamma_hat; |
Lightvalve | 218:066030f7951f | 191 | extern float a_hat; |
Lightvalve | 170:42c938a40313 | 192 | extern float V_adapt; |
Lightvalve | 133:22ab22818e01 | 193 | extern float x_4_des_old; |
Lightvalve | 133:22ab22818e01 | 194 | |
Lightvalve | 57:f4819de54e7a | 195 | //extern int16_t VALVE_LIMIT_PLUS; |
Lightvalve | 57:f4819de54e7a | 196 | //extern int16_t VALVE_LIMIT_MINUS; |
Lightvalve | 11:82d8768d7351 | 197 | |
Lightvalve | 48:889798ff9329 | 198 | extern float ENC_PULSE_PER_POSITION; |
Lightvalve | 48:889798ff9329 | 199 | extern float TORQUE_SENSOR_PULSE_PER_TORQUE; |
Lightvalve | 48:889798ff9329 | 200 | |
Lightvalve | 30:8d561f16383b | 201 | extern float PRES_SENSOR_A_PULSE_PER_BAR; |
Lightvalve | 30:8d561f16383b | 202 | extern float PRES_SENSOR_B_PULSE_PER_BAR; |
Lightvalve | 11:82d8768d7351 | 203 | |
hyhoon | 226:82a3ca333004 | 204 | extern int16_t HOMEPOS_OFFSET; |
Lightvalve | 11:82d8768d7351 | 205 | extern int HOMEPOS_VALVE_OPENING; |
Lightvalve | 11:82d8768d7351 | 206 | |
Lightvalve | 30:8d561f16383b | 207 | extern float FRICTION; |
Lightvalve | 30:8d561f16383b | 208 | extern float REF_PERIOD; |
Lightvalve | 30:8d561f16383b | 209 | extern float REF_MAG; |
Lightvalve | 11:82d8768d7351 | 210 | extern int REF_NUM; |
Lightvalve | 11:82d8768d7351 | 211 | |
Lightvalve | 11:82d8768d7351 | 212 | |
Lightvalve | 30:8d561f16383b | 213 | extern float DAC_REF; |
Lightvalve | 30:8d561f16383b | 214 | extern float DAC_RESOL; |
Lightvalve | 11:82d8768d7351 | 215 | |
jobuuu | 230:2c3e5ecbe7e1 | 216 | extern float REF_FORCE; |
jobuuu | 230:2c3e5ecbe7e1 | 217 | extern float REF_TORQUE; |
hyhoon | 227:699c3e572283 | 218 | extern float REF_POSITION; |
hyhoon | 227:699c3e572283 | 219 | extern float REF_VELOCITY; |
jobuuu | 230:2c3e5ecbe7e1 | 220 | |
jobuuu | 230:2c3e5ecbe7e1 | 221 | extern float REF_POSITION_FINDHOME; |
jobuuu | 230:2c3e5ecbe7e1 | 222 | |
Lightvalve | 11:82d8768d7351 | 223 | extern int16_t REF_PWM; |
Lightvalve | 11:82d8768d7351 | 224 | extern int16_t REF_VALVE_POSITION; |
Lightvalve | 14:8e7590227d22 | 225 | extern int16_t REF_CURRENT; |
Lightvalve | 11:82d8768d7351 | 226 | |
Lightvalve | 11:82d8768d7351 | 227 | extern int REF_MOVE_TIME_5k; |
Lightvalve | 11:82d8768d7351 | 228 | extern int INIT_REF_PWM; |
Lightvalve | 11:82d8768d7351 | 229 | extern int INIT_REF_VALVE_POS; |
Lightvalve | 11:82d8768d7351 | 230 | extern int INIT_REF_VEL; |
Lightvalve | 11:82d8768d7351 | 231 | extern int INIT_REF_TORQUE; |
Lightvalve | 11:82d8768d7351 | 232 | extern int INIT_REF_PRES_DIFF; |
Lightvalve | 14:8e7590227d22 | 233 | extern int INIT_REF_CURRENT; |
Lightvalve | 11:82d8768d7351 | 234 | |
Lightvalve | 11:82d8768d7351 | 235 | extern unsigned int TMR2_COUNT_LED1; |
Lightvalve | 11:82d8768d7351 | 236 | extern unsigned int TMR2_COUNT_LED2; |
Lightvalve | 11:82d8768d7351 | 237 | extern unsigned int TMR2_COUNT_CAN_TX; |
Lightvalve | 54:647072f5307a | 238 | extern unsigned int TMR3_COUNT_TEST; |
Lightvalve | 11:82d8768d7351 | 239 | |
Lightvalve | 11:82d8768d7351 | 240 | extern int num_err; |
Lightvalve | 11:82d8768d7351 | 241 | extern int flag_err[8]; |
Lightvalve | 11:82d8768d7351 | 242 | extern int flag_err_old[8]; |
Lightvalve | 11:82d8768d7351 | 243 | extern int flag_err_rt; |
Lightvalve | 11:82d8768d7351 | 244 | |
Lightvalve | 11:82d8768d7351 | 245 | extern int flag_ref_enable; |
Lightvalve | 11:82d8768d7351 | 246 | |
Lightvalve | 11:82d8768d7351 | 247 | extern int flag_data_request[5]; |
Lightvalve | 11:82d8768d7351 | 248 | |
Lightvalve | 45:35fa6884d0c6 | 249 | extern int MODE_POS_FT_TRANS; |
Lightvalve | 66:a8e6799dbce3 | 250 | extern int NN_Control_Flag; |
Lightvalve | 45:35fa6884d0c6 | 251 | |
Lightvalve | 169:645207e160ca | 252 | extern int cnt_buffer; |
Lightvalve | 169:645207e160ca | 253 | |
Lightvalve | 57:f4819de54e7a | 254 | extern float CUR_CURRENT_mA; |
Lightvalve | 30:8d561f16383b | 255 | extern float CUR_TORQUE_NM; |
Lightvalve | 30:8d561f16383b | 256 | extern float CUR_TORQUE_NM_PRESS; |
Lightvalve | 11:82d8768d7351 | 257 | |
jobuuu | 230:2c3e5ecbe7e1 | 258 | extern float FORCE_VREF; |
Lightvalve | 30:8d561f16383b | 259 | extern float PRES_A_VREF; |
Lightvalve | 30:8d561f16383b | 260 | extern float PRES_B_VREF; |
Lightvalve | 11:82d8768d7351 | 261 | |
Lightvalve | 30:8d561f16383b | 262 | extern float VALVE_PWM_RAW_FB; |
Lightvalve | 30:8d561f16383b | 263 | extern float VALVE_PWM_RAW_FF; |
Lightvalve | 57:f4819de54e7a | 264 | extern float VALVE_PWM_RAW; |
Lightvalve | 11:82d8768d7351 | 265 | extern int VALVE_PWM_VALVE_DZ; |
Lightvalve | 11:82d8768d7351 | 266 | |
Lightvalve | 30:8d561f16383b | 267 | extern float VALVE_GAIN_LPM_PER_V[10]; |
Lightvalve | 30:8d561f16383b | 268 | extern float VALVE_POS_VS_PWM[25]; |
Lightvalve | 11:82d8768d7351 | 269 | extern long JOINT_VEL[100]; |
Lightvalve | 11:82d8768d7351 | 270 | |
Lightvalve | 11:82d8768d7351 | 271 | extern int VALVE_MAX_POS; |
Lightvalve | 11:82d8768d7351 | 272 | extern int VALVE_MIN_POS; |
Lightvalve | 237:c2cfe349f5c1 | 273 | extern int VALVE_ELECTRIC_CENTER; |
Lightvalve | 11:82d8768d7351 | 274 | extern int VALVE_POS_NUM; |
Lightvalve | 32:4b8c0fedaf2c | 275 | extern float VALVE_CENTER_OFFSET; |
Lightvalve | 33:91b17819ec30 | 276 | extern float VALVE_DZ_MINUS_OFFSET; |
Lightvalve | 33:91b17819ec30 | 277 | extern float VALVE_DZ_PLUS_OFFSET; |
Lightvalve | 11:82d8768d7351 | 278 | |
Lightvalve | 14:8e7590227d22 | 279 | extern int TMR3_COUNT_FINDHOME; |
Lightvalve | 14:8e7590227d22 | 280 | extern int TMR3_COUNT_FLOWRATE; |
Lightvalve | 14:8e7590227d22 | 281 | extern int TMR3_COUNT_DEADZONE; |
Lightvalve | 14:8e7590227d22 | 282 | extern int TMR3_COUNT_PRES_NULL; |
Lightvalve | 14:8e7590227d22 | 283 | extern int TMR3_COUNT_TORQUE_NULL; |
Lightvalve | 14:8e7590227d22 | 284 | extern int TMR3_COUNT_PRES_CALIB; |
Lightvalve | 14:8e7590227d22 | 285 | extern int TMR3_COUNT_REFERENCE; |
Lightvalve | 14:8e7590227d22 | 286 | extern int TMR3_COUNT_JOINT; |
Lightvalve | 14:8e7590227d22 | 287 | extern int TMR3_COUNT_ROTARY_FRIC_TUNE; |
Lightvalve | 11:82d8768d7351 | 288 | |
Lightvalve | 30:8d561f16383b | 289 | extern float TUNING_TIME; |
Lightvalve | 11:82d8768d7351 | 290 | |
Lightvalve | 30:8d561f16383b | 291 | extern float REFERENCE_FREQ; |
Lightvalve | 30:8d561f16383b | 292 | extern float REFERENCE_MAG; |
Lightvalve | 11:82d8768d7351 | 293 | |
Lightvalve | 11:82d8768d7351 | 294 | extern bool FLAG_FIND_HOME; |
Lightvalve | 11:82d8768d7351 | 295 | |
Lightvalve | 11:82d8768d7351 | 296 | extern int MODE_JUMP_STATUS; |
Lightvalve | 11:82d8768d7351 | 297 | |
Lightvalve | 30:8d561f16383b | 298 | extern float CUR_PRES_DIFF_BAR; |
Lightvalve | 30:8d561f16383b | 299 | extern float CUR_PRES_A_sum; |
Lightvalve | 30:8d561f16383b | 300 | extern float CUR_PRES_B_sum; |
Lightvalve | 30:8d561f16383b | 301 | extern float CUR_PRES_A_mean; |
Lightvalve | 30:8d561f16383b | 302 | extern float CUR_PRES_B_mean; |
jobuuu | 230:2c3e5ecbe7e1 | 303 | extern float PRES_A_NULL_pulse; |
jobuuu | 230:2c3e5ecbe7e1 | 304 | extern float PRES_B_NULL_pulse; |
jobuuu | 230:2c3e5ecbe7e1 | 305 | extern float FORCE_NULL_pulse; |
Lightvalve | 13:747daba9cf59 | 306 | |
Lightvalve | 30:8d561f16383b | 307 | extern float Ref_Valve_Pos_Old; |
Lightvalve | 13:747daba9cf59 | 308 | |
Lightvalve | 13:747daba9cf59 | 309 | extern int VALVE_ID_timer; |
Lightvalve | 13:747daba9cf59 | 310 | extern int VALVE_DZ_timer; |
Lightvalve | 13:747daba9cf59 | 311 | extern int VALVE_FR_timer; |
Lightvalve | 35:34ce7b0347b8 | 312 | extern int VALVE_HPL_timer; |
Lightvalve | 13:747daba9cf59 | 313 | extern int VALVE_POS_TMP; |
Lightvalve | 13:747daba9cf59 | 314 | extern int JOINT_VEL_TMP; |
Lightvalve | 13:747daba9cf59 | 315 | extern int DDV_POS_AVG ; |
Lightvalve | 19:23b7c1ad8683 | 316 | extern int VALVE_POS_AVG[50]; |
Lightvalve | 13:747daba9cf59 | 317 | extern int VALVE_POS_AVG_OLD; |
Lightvalve | 13:747daba9cf59 | 318 | extern int data_num; |
Lightvalve | 13:747daba9cf59 | 319 | extern int ID_index; |
Lightvalve | 13:747daba9cf59 | 320 | extern int DZ_index; |
Lightvalve | 19:23b7c1ad8683 | 321 | extern int ID_index_array[50]; |
Lightvalve | 13:747daba9cf59 | 322 | extern int first_check; |
Lightvalve | 30:8d561f16383b | 323 | extern float init_time; |
Lightvalve | 13:747daba9cf59 | 324 | extern int DZ_case; |
Lightvalve | 13:747daba9cf59 | 325 | extern int START_POS; |
Lightvalve | 13:747daba9cf59 | 326 | extern int FINAL_POS; |
Lightvalve | 13:747daba9cf59 | 327 | extern int DZ_DIRECTION; |
Lightvalve | 13:747daba9cf59 | 328 | extern int FIRST_DZ; |
Lightvalve | 13:747daba9cf59 | 329 | extern int SECOND_DZ; |
Lightvalve | 13:747daba9cf59 | 330 | extern int DZ_NUM; |
Lightvalve | 13:747daba9cf59 | 331 | extern int one_period_end; |
Lightvalve | 30:8d561f16383b | 332 | extern float Ref_Vel_Test; |
Lightvalve | 19:23b7c1ad8683 | 333 | //extern int velcount; |
Lightvalve | 13:747daba9cf59 | 334 | extern char max_check; |
Lightvalve | 13:747daba9cf59 | 335 | extern char min_check; |
Lightvalve | 13:747daba9cf59 | 336 | |
Lightvalve | 30:8d561f16383b | 337 | extern float valve_pos_err, valve_pos_err_old, valve_pos_err_diff, valve_pos_err_sum; |
Lightvalve | 30:8d561f16383b | 338 | extern float joint_pos_err, joint_pos_err_old, joint_pos_err_diff, joint_pos_err_diff_fil, joint_pos_err_sum; |
Lightvalve | 30:8d561f16383b | 339 | extern float joint_torq_err, joint_torq_err_old, joint_torq_err_diff, joint_torq_err_sum; |
Lightvalve | 30:8d561f16383b | 340 | extern float VALVE_PWM_RAW_POS, VALVE_PWM_RAW_TORQ; |
Lightvalve | 239:8ac5c6162bc1 | 341 | extern float force_ref_filter; |
Lightvalve | 13:747daba9cf59 | 342 | |
Lightvalve | 30:8d561f16383b | 343 | extern float CUR_FLOWRATE; |
Lightvalve | 30:8d561f16383b | 344 | extern float VALVE_FF_VOLTAGE; |
Lightvalve | 13:747daba9cf59 | 345 | |
Lightvalve | 13:747daba9cf59 | 346 | extern int pos_plus_end; |
Lightvalve | 13:747daba9cf59 | 347 | extern int pos_minus_end; |
Lightvalve | 13:747daba9cf59 | 348 | |
Lightvalve | 13:747daba9cf59 | 349 | extern bool need_enc_init; |
Lightvalve | 13:747daba9cf59 | 350 | |
Lightvalve | 13:747daba9cf59 | 351 | extern int temp_time; |
Lightvalve | 13:747daba9cf59 | 352 | |
Lightvalve | 30:8d561f16383b | 353 | extern float CUR_VELOCITY_sum; |
Lightvalve | 30:8d561f16383b | 354 | extern float temp_vel_sum; |
Lightvalve | 13:747daba9cf59 | 355 | |
Lightvalve | 13:747daba9cf59 | 356 | extern int DZ_dir; |
Lightvalve | 13:747daba9cf59 | 357 | extern int DZ_temp_cnt; |
Lightvalve | 13:747daba9cf59 | 358 | extern int DZ_temp_cnt2; |
Lightvalve | 13:747daba9cf59 | 359 | extern int DZ_end; |
Lightvalve | 13:747daba9cf59 | 360 | extern int flag_flowrate; |
Lightvalve | 13:747daba9cf59 | 361 | extern int fl_temp_cnt; |
Lightvalve | 13:747daba9cf59 | 362 | extern int fl_temp_cnt2; |
Lightvalve | 13:747daba9cf59 | 363 | extern int cur_vel_sum; |
Lightvalve | 13:747daba9cf59 | 364 | |
hyhoon | 227:699c3e572283 | 365 | extern int cnt_finddz; |
hyhoon | 227:699c3e572283 | 366 | extern int cnt_vel_finddz; |
hyhoon | 227:699c3e572283 | 367 | extern int flag_finddz; |
hyhoon | 227:699c3e572283 | 368 | extern int FINDDZ_VELOCITY; |
hyhoon | 227:699c3e572283 | 369 | extern int FINDDZ_VELOCITY_OLD; |
hyhoon | 227:699c3e572283 | 370 | extern int FINDDZ_POSITION; |
hyhoon | 227:699c3e572283 | 371 | extern int FINDDZ_POSITION_OLD; |
hyhoon | 227:699c3e572283 | 372 | |
hyhoon | 227:699c3e572283 | 373 | extern double temp_VALVE_DEADZONE_PLUS; |
hyhoon | 227:699c3e572283 | 374 | extern double temp_VALVE_DEADZONE_MINUS; |
hyhoon | 227:699c3e572283 | 375 | extern float temp_pos_ref; |
hyhoon | 227:699c3e572283 | 376 | extern float temp_pos_ref_offset; |
hyhoon | 227:699c3e572283 | 377 | |
Lightvalve | 13:747daba9cf59 | 378 | // valve gain |
Lightvalve | 13:747daba9cf59 | 379 | extern int check_vel_pos_init; |
Lightvalve | 13:747daba9cf59 | 380 | extern int check_vel_pos_fin; |
Lightvalve | 13:747daba9cf59 | 381 | extern int check_vel_pos_interv; |
Lightvalve | 13:747daba9cf59 | 382 | extern int valve_gain_repeat_cnt; |
Lightvalve | 30:8d561f16383b | 383 | extern float VALVE_VOLTAGE; |
Lightvalve | 13:747daba9cf59 | 384 | |
Lightvalve | 30:8d561f16383b | 385 | extern float freq_fric_tune; |
Lightvalve | 13:747daba9cf59 | 386 | |
Lightvalve | 14:8e7590227d22 | 387 | extern uint32_t TMR3_COUNT_CAN_TX; |
Lightvalve | 14:8e7590227d22 | 388 | |
Lightvalve | 57:f4819de54e7a | 389 | // Current Control Variables |
Lightvalve | 57:f4819de54e7a | 390 | extern double I_REF; |
Lightvalve | 57:f4819de54e7a | 391 | extern double I_REF_fil; |
hyhoon | 226:82a3ca333004 | 392 | extern double I_REF_fil_DZ; |
Lightvalve | 57:f4819de54e7a | 393 | extern double I_ERR; |
Lightvalve | 57:f4819de54e7a | 394 | extern double I_ERR_INT; |
Lightvalve | 57:f4819de54e7a | 395 | extern double I_REF_fil_old; |
Lightvalve | 57:f4819de54e7a | 396 | extern double I_REF_fil_diff; |
Lightvalve | 57:f4819de54e7a | 397 | |
Lightvalve | 57:f4819de54e7a | 398 | // system id |
Lightvalve | 57:f4819de54e7a | 399 | extern int cnt_sysid; |
Lightvalve | 57:f4819de54e7a | 400 | extern double freq_sysid_Iref; |
Lightvalve | 57:f4819de54e7a | 401 | |
Lightvalve | 169:645207e160ca | 402 | extern int cnt_freq_test; |
Lightvalve | 169:645207e160ca | 403 | extern int cnt_step_test; |
Lightvalve | 169:645207e160ca | 404 | extern int buffer_data_size; |
Lightvalve | 169:645207e160ca | 405 | extern int cnt_send_buffer; |
Lightvalve | 169:645207e160ca | 406 | extern float freq_test_valve_ref; |
Lightvalve | 169:645207e160ca | 407 | extern float ref_array[10000]; |
Lightvalve | 169:645207e160ca | 408 | extern int pos_array[10000]; |
Lightvalve | 192:637092202815 | 409 | extern int flag_every_reference; |
Lightvalve | 169:645207e160ca | 410 | |
Lightvalve | 14:8e7590227d22 | 411 | extern int TMR3_COUNT_IREF; |
Lightvalve | 30:8d561f16383b | 412 | extern float CUR_CURRENT; |
Lightvalve | 30:8d561f16383b | 413 | extern float u_CUR[3]; |
Lightvalve | 19:23b7c1ad8683 | 414 | |
Lightvalve | 29:69f3f5445d6d | 415 | extern int FINDHOME_STAGE; |
Lightvalve | 29:69f3f5445d6d | 416 | extern int FINDHOME_INIT; |
Lightvalve | 29:69f3f5445d6d | 417 | extern int FINDHOME_GOTOLIMIT; |
Lightvalve | 29:69f3f5445d6d | 418 | extern int FINDHOME_ZEROPOSE; |
Lightvalve | 29:69f3f5445d6d | 419 | |
hyhoon | 227:699c3e572283 | 420 | extern int FINDDZ_STAGE; |
hyhoon | 227:699c3e572283 | 421 | extern int FINDDZ_INIT; |
hyhoon | 227:699c3e572283 | 422 | extern int FINDDZ_START1; |
hyhoon | 227:699c3e572283 | 423 | extern int FINDDZ_START2; |
hyhoon | 227:699c3e572283 | 424 | extern int FINDDZ_STOP; |
hyhoon | 227:699c3e572283 | 425 | |
Lightvalve | 45:35fa6884d0c6 | 426 | extern float alpha_trans; |
Lightvalve | 45:35fa6884d0c6 | 427 | |
Lightvalve | 57:f4819de54e7a | 428 | |
Lightvalve | 57:f4819de54e7a | 429 | extern float V_out; |
Lightvalve | 57:f4819de54e7a | 430 | extern float V_rem; |
Lightvalve | 57:f4819de54e7a | 431 | extern float V_MAX; |
Lightvalve | 57:f4819de54e7a | 432 | |
Lightvalve | 57:f4819de54e7a | 433 | extern float PWM_out; |
Lightvalve | 57:f4819de54e7a | 434 | |
Lightvalve | 57:f4819de54e7a | 435 | extern double K_v; |
jobuuu | 230:2c3e5ecbe7e1 | 436 | extern double C_d; |
Lightvalve | 57:f4819de54e7a | 437 | extern double mV_PER_mA; |
Lightvalve | 57:f4819de54e7a | 438 | extern double mV_PER_pulse; |
Lightvalve | 57:f4819de54e7a | 439 | extern double mA_PER_pulse; |
Lightvalve | 57:f4819de54e7a | 440 | |
Lightvalve | 57:f4819de54e7a | 441 | extern int timer_while; |
Lightvalve | 57:f4819de54e7a | 442 | extern int while_index; |
Lightvalve | 170:42c938a40313 | 443 | extern int RL_timer; |
Lightvalve | 23:59218d4a256d | 444 | |
Lightvalve | 67:c2812cf26c38 | 445 | extern float K_LPF; |
Lightvalve | 67:c2812cf26c38 | 446 | extern float D_LPF; |
Lightvalve | 67:c2812cf26c38 | 447 | |
Lightvalve | 224:985dba42f261 | 448 | extern float torq_sen_past; |
Lightvalve | 207:c70c5a9f17dd | 449 | extern float torq_ref_past; |
Lightvalve | 99:7bbcb3c0fb06 | 450 | extern float output_normalized; |
Lightvalve | 72:3436ce769b1e | 451 | |
Lightvalve | 66:a8e6799dbce3 | 452 | |
Lightvalve | 32:4b8c0fedaf2c | 453 | |
Lightvalve | 35:34ce7b0347b8 | 454 | |
Lightvalve | 36:a46e63505ed8 | 455 | |
Lightvalve | 45:35fa6884d0c6 | 456 | |
Lightvalve | 45:35fa6884d0c6 | 457 | |
Lightvalve | 48:889798ff9329 | 458 | |
Lightvalve | 49:e7bcfc244d40 | 459 | |
Lightvalve | 50:3c630b5eba9f | 460 | |
Lightvalve | 52:8ea76864368a | 461 | |
Lightvalve | 54:647072f5307a | 462 |