[Ver 1.0] The code was given by Seunghoon shin, used for hydraulic quadrupedal robot. Buyoun Cho will revise the code for Post-LIGHT (the robot name is not determined yet).

Dependencies:   mbed FastPWM

Revision:
230:2c3e5ecbe7e1
Parent:
227:699c3e572283
--- a/setting.h	Tue Apr 20 00:42:45 2021 +0000
+++ b/setting.h	Wed Apr 21 04:20:39 2021 +0000
@@ -19,12 +19,15 @@
 #define FREQ_20k    20000.0f
 #define FREQ_40k    40000.0f
 #define DT_500      0.002f
-#define DT_1k       0.0005f
+#define DT_1k       0.001f
 #define DT_5k       0.0002f
 #define DT_10k      0.0001f
 #define DT_20k      0.00005f
 #define DT_40k      0.000025f
 
+//#define             TMR_FREQ_10k       10000
+#define             TMR_FREQ_5k         5000
+
 extern DigitalOut check;
 extern DigitalOut check_2;
 extern AnalogOut dac_1;
@@ -79,9 +82,6 @@
 #define             SYSFREQ             200000000
 #define             PBCLK               100000000
 
-//#define             TMR_FREQ_10k       10000
-#define             TMR_FREQ_5k       5000
-
 #define             FALSE               0
 #define             TRUE                1
 #define             OUTPUT              0
@@ -109,6 +109,8 @@
 extern uint8_t CONTROL_MODE;
 extern uint8_t OPERATING_MODE;
 extern uint8_t SENSING_MODE;
+extern uint8_t SUPPLY_PRESSURE_UPDATE; 
+
 extern uint8_t CONTROL_UTILITY_MODE;
 extern uint8_t CURRENT_CONTROL_MODE;
 extern uint8_t FLAG_VALVE_DEADZONE;
@@ -169,16 +171,14 @@
 extern float PISTON_AREA_alpha;
 extern float alpha3;
 
-
-extern int16_t PRES_SUPPLY;
-extern int16_t PRES_RETURN;
+extern float PRES_SUPPLY_NOM;
+extern float PRES_SUPPLY;
 
 extern int16_t ENC_LIMIT_PLUS;
 extern int16_t ENC_LIMIT_MINUS;
 
 extern int16_t STROKE;
 
-
 extern float Amm;
 extern float beta;
 extern float Ps;
@@ -209,11 +209,13 @@
 extern float DAC_REF;
 extern float DAC_RESOL;
 
+extern float REF_FORCE;
+extern float REF_TORQUE;
 extern float REF_POSITION;
 extern float REF_VELOCITY;
-extern float REF_TORQUE;
-extern float REF_TORQUE_OLD;
-extern float REF_PRES_DIFF;
+
+extern float REF_POSITION_FINDHOME;
+
 extern int16_t REF_PWM;
 extern int16_t REF_VALVE_POSITION;
 extern int16_t REF_CURRENT;
@@ -221,19 +223,11 @@
 extern int REF_MOVE_TIME_5k;
 extern int INIT_REF_PWM;
 extern int INIT_REF_VALVE_POS;
-extern int32_t INIT_REF_POS;
 extern int INIT_REF_VEL;
 extern int INIT_REF_TORQUE;
 extern int INIT_REF_PRES_DIFF;
 extern int INIT_REF_CURRENT;
 
-extern int CUR_POSITION;
-extern int CUR_VELOCITY;
-extern float CUR_TORQUE;
-extern float CUR_PRES_A;
-extern float CUR_PRES_B;
-extern int CUR_VALVE_POSITION;
-
 extern unsigned int    TMR2_COUNT_LED1;
 extern unsigned int    TMR2_COUNT_LED2;
 extern unsigned int    TMR2_COUNT_CAN_TX;
@@ -254,14 +248,12 @@
 extern int cnt_buffer;
 
 extern float CUR_CURRENT_mA;
-extern float CUR_PRES_A_BAR;
-extern float CUR_PRES_B_BAR;
 extern float CUR_TORQUE_NM;
 extern float CUR_TORQUE_NM_PRESS;
 
+extern float FORCE_VREF;
 extern float PRES_A_VREF;
 extern float PRES_B_VREF;
-extern float TORQUE_VREF;
 
 extern float VALVE_PWM_RAW_FB;
 extern float VALVE_PWM_RAW_FF;
@@ -303,11 +295,9 @@
 extern float CUR_PRES_B_sum;
 extern float CUR_PRES_A_mean;
 extern float CUR_PRES_B_mean;
-extern float CUR_TORQUE_sum;
-extern float CUR_TORQUE_mean;
-extern float PRES_A_NULL;
-extern float PRES_B_NULL;
-extern float TORQUE_NULL;
+extern float PRES_A_NULL_pulse;
+extern float PRES_B_NULL_pulse;
+extern float FORCE_NULL_pulse;
 
 extern float Ref_Valve_Pos_Old;
 
@@ -367,17 +357,6 @@
 extern int fl_temp_cnt2;
 extern int cur_vel_sum;
 
-extern float Cur_Valve_Open_pulse;
-
-// find home
-extern int CUR_VELOCITY_OLD;
-extern int cnt_findhome;
-extern int cnt_vel_findhome;
-extern int FINDHOME_VELOCITY;
-extern int FINDHOME_VELOCITY_OLD;
-extern int FINDHOME_POSITION;
-extern int FINDHOME_POSITION_OLD;
-
 extern int cnt_finddz;
 extern int cnt_vel_finddz;
 extern int flag_finddz;
@@ -449,6 +428,7 @@
 extern float PWM_out;
 
 extern double K_v;
+extern double C_d;
 extern double mV_PER_mA;
 extern double mV_PER_pulse;
 extern double mA_PER_pulse;