11#ifndef Controllerdata_h
12#define ControllerData_h
41 namespace proportional_joint_moment
65 namespace extension_angle
109 namespace late_stance
159 namespace zhang_collins
174 namespace franks_collins_hip
219 namespace perturbation
229 namespace constant_torque
247 namespace elbow_min_max
258 namespace ptb_general
274 namespace propulsive_assistive
283 const uint8_t
kp = 7;
284 const uint8_t
kd = 8;
288 namespace calibr_manager
Declares the functions needed and defines mapping between the INI keys and the exo components.
class to store information related to controllers.
Definition ControllerData.h:301
float fsr_toe_previous_elbow
Definition ControllerData.h:365
float setpoint
Definition ControllerData.h:323
float level_entrance_angle
Definition ControllerData.h:347
int fsr_toe_array_elbow[50]
Definition ControllerData.h:359
bool reference_angle_updated
Definition ControllerData.h:342
uint8_t parameter_set
Definition ControllerData.h:326
uint8_t controller
Definition ControllerData.h:320
float fsr_heel_max_elbow
Definition ControllerData.h:355
float time_current_ptb
Definition ControllerData.h:372
bool ptbDetermined
Definition ControllerData.h:371
int i_elbow
Definition ControllerData.h:358
bool is_first_fsr_reading_elbow
Definition ControllerData.h:364
uint16_t iCalibr
Definition ControllerData.h:393
uint16_t ptb_iStep
Definition ControllerData.h:381
float fsr_heel_previous_elbow
Definition ControllerData.h:366
float kf
Definition ControllerData.h:333
float fsr_heel_sum_elbow
Definition ControllerData.h:357
float max_measured
Definition ControllerData.h:336
float time_previous_ptb
Definition ControllerData.h:373
float neutral_angle
Definition ControllerData.h:344
float prev_calibrate_level_entrance
Definition ControllerData.h:348
float reference_angle
Definition ControllerData.h:340
bool ptbRandomIsFirstRun
Definition ControllerData.h:378
bool calibrComplete
Definition ControllerData.h:392
uint16_t ptb_setpoint
Definition ControllerData.h:388
float ff_setpoint
Definition ControllerData.h:324
float fsr_toe_min_elbow
Definition ControllerData.h:352
float fsr_toe_max_elbow
Definition ControllerData.h:353
float fsr_toe_sum_elbow
Definition ControllerData.h:356
config_defs::JointType joint
Definition ControllerData.h:321
int fsr_heel_array_elbow[50]
Definition ControllerData.h:360
const float cal_level_entrance_angle_alpha
Definition ControllerData.h:349
float max_setpoint
Definition ControllerData.h:337
float prev_max_measured
Definition ControllerData.h:334
uint8_t get_parameter_length()
Get the parameter length for the current controller.
Definition ControllerData.cpp:80
float previous_cmd
Definition ControllerData.h:400
float filtered_squelched_supportive_term
Definition ControllerData.h:343
bool isPerturbing
Definition ControllerData.h:370
bool ptb_fsrGotHigh
Definition ControllerData.h:389
bool is_first_run_elbow
Definition ControllerData.h:361
bool prev_calibrate_trq_sensor
Definition ControllerData.h:345
void reconfigure(uint8_t *config_to_send)
reconfigures the the controller data if the configuration changes after constructor called.
Definition ControllerData.cpp:50
float fsr_heel_min_elbow
Definition ControllerData.h:354
float parameters[controller_defs::max_parameters]
Definition ControllerData.h:325
float reference_angle_offset
Definition ControllerData.h:341
bool ptb_newIsSwing
Definition ControllerData.h:383
float filtered_torque_reading
Definition ControllerData.h:328
float output_limit_elbow
Definition ControllerData.h:362
float prev_max_setpoint
Definition ControllerData.h:335
int PIDMLTPLR
Definition ControllerData.h:394
bool calibrStart
Definition ControllerData.h:395
bool ptbApplied
Definition ControllerData.h:377
uint8_t ptb_frequency
Definition ControllerData.h:386
const float cal_neutral_angle_alpha
Definition ControllerData.h:346
float calibrSum
Definition ControllerData.h:396
uint16_t ptb_iiStep
Definition ControllerData.h:387
float filtered_cmd
Definition ControllerData.h:329
float fsr_min_max_elbow
Definition ControllerData.h:363
float filtered_setpoint
Definition ControllerData.h:330
bool ptb_oldIsSwing
Definition ControllerData.h:384
float elbow_cmd
Definition ControllerData.h:367
Class to store all the data related to the exo.
Definition ExoData.h:38
joint_id
Definition ParseIni.h:106
JointType
Definition ParseIni.h:81
const uint8_t use_pid_idx
Definition ControllerData.h:102
const uint8_t num_parameter
Definition ControllerData.h:106
const uint8_t is_assitance_idx
Definition ControllerData.h:92
const uint8_t d_gain_idx
Definition ControllerData.h:105
const uint8_t clear_angle_idx
Definition ControllerData.h:96
const uint8_t p_gain_idx
Definition ControllerData.h:103
const uint8_t extension_setpoint_idx
Definition ControllerData.h:90
const uint8_t target_flexion_percent_max_idx
Definition ControllerData.h:94
const uint8_t velocity_threshold_idx
Definition ControllerData.h:101
const uint8_t angle_threshold_idx
Definition ControllerData.h:98
const uint8_t flexion_setpoint_idx
Definition ControllerData.h:89
const uint8_t i_gain_idx
Definition ControllerData.h:104
const uint8_t calibr_cmd
Definition ControllerData.h:290
const uint8_t num_parameter
Definition ControllerData.h:291
const uint8_t amplitude_idx
Definition ControllerData.h:231
const uint8_t num_parameter
Definition ControllerData.h:236
const uint8_t direction_idx
Definition ControllerData.h:232
const uint8_t num_parameter
Definition ControllerData.h:252
const uint8_t fsr_threshold_idx
Definition ControllerData.h:250
const uint8_t fsr_threshold1_idx
Definition ControllerData.h:251
const uint8_t amplitude_idx
Definition ControllerData.h:249
const uint8_t i_gain_idx
Definition ControllerData.h:81
const uint8_t angle_threshold_idx
Definition ControllerData.h:75
const uint8_t d_gain_idx
Definition ControllerData.h:82
const uint8_t clear_angle_idx
Definition ControllerData.h:73
const uint8_t flexion_setpoint_idx
Definition ControllerData.h:68
const uint8_t p_gain_idx
Definition ControllerData.h:80
const uint8_t num_parameter
Definition ControllerData.h:83
const uint8_t use_pid_idx
Definition ControllerData.h:79
const uint8_t extension_setpoint_idx
Definition ControllerData.h:69
const uint8_t target_flexion_percent_max_idx
Definition ControllerData.h:71
const uint8_t velocity_threshold_idx
Definition ControllerData.h:78
const uint8_t use_pid_idx
Definition ControllerData.h:186
const uint8_t mid_duration_idx
Definition ControllerData.h:183
const uint8_t mid_time_idx
Definition ControllerData.h:182
const uint8_t num_parameter
Definition ControllerData.h:190
const uint8_t p_gain_idx
Definition ControllerData.h:187
const uint8_t d_gain_idx
Definition ControllerData.h:189
const uint8_t trough_onset_percent_gait_idx
Definition ControllerData.h:180
const uint8_t peak_percent_gait_idx
Definition ControllerData.h:184
const uint8_t peak_normalized_torque_Nm_kg_idx
Definition ControllerData.h:178
const uint8_t trough_normalized_torque_Nm_kg_idx
Definition ControllerData.h:177
const uint8_t peak_offset_percent_gait_idx
Definition ControllerData.h:185
const uint8_t mass_idx
Definition ControllerData.h:176
const uint8_t start_percent_gait_idx
Definition ControllerData.h:179
const uint8_t trough_percent_gait_idx
Definition ControllerData.h:181
const uint8_t i_gain_idx
Definition ControllerData.h:188
const uint8_t flexion_start_percentage_idx
Definition ControllerData.h:133
const uint8_t extension_setpoint_idx
Definition ControllerData.h:131
const uint8_t num_parameter
Definition ControllerData.h:144
const uint8_t i_gain_idx
Definition ControllerData.h:142
const uint8_t slope_idx
Definition ControllerData.h:138
const uint8_t use_pid_idx
Definition ControllerData.h:140
const uint8_t flexion_end_percentage_idx
Definition ControllerData.h:134
const uint8_t extension_end_percentage_idx
Definition ControllerData.h:136
const uint8_t d_gain_idx
Definition ControllerData.h:143
const uint8_t p_gain_idx
Definition ControllerData.h:141
const uint8_t flexion_setpoint_idx
Definition ControllerData.h:130
const uint8_t extension_start_percentage_idx
Definition ControllerData.h:135
const uint8_t i_gain_idx
Definition ControllerData.h:60
const uint8_t extension_torque_setpoint_idx
Definition ControllerData.h:57
const uint8_t p_gain_idx
Definition ControllerData.h:59
const uint8_t d_gain_idx
Definition ControllerData.h:61
const uint8_t flexion_torque_setpoint_idx
Definition ControllerData.h:56
const uint8_t use_pid_idx
Definition ControllerData.h:58
const uint8_t num_parameter
Definition ControllerData.h:62
const uint8_t i_gain_idx
Definition ControllerData.h:122
const uint8_t velocity_threshold_idx
Definition ControllerData.h:119
const uint8_t clear_angle_idx
Definition ControllerData.h:116
const uint8_t d_gain_idx
Definition ControllerData.h:123
const uint8_t p_gain_idx
Definition ControllerData.h:121
const uint8_t angle_on_off
Definition ControllerData.h:114
const uint8_t num_parameter
Definition ControllerData.h:124
const uint8_t use_pid_idx
Definition ControllerData.h:120
const uint8_t resistance_setpoint_idx
Definition ControllerData.h:112
const uint8_t flexion_end_percentage_idx
Definition ControllerData.h:153
const uint8_t extension_setpoint_idx
Definition ControllerData.h:151
const uint8_t flexion_setpoint_idx
Definition ControllerData.h:150
const uint8_t flexion_start_percentage_idx
Definition ControllerData.h:152
const uint8_t extension_end_percentage_idx
Definition ControllerData.h:155
const uint8_t num_parameter
Definition ControllerData.h:156
const uint8_t extension_start_percentage_idx
Definition ControllerData.h:154
const uint8_t num_parameter
Definition ControllerData.h:225
const uint8_t threshold_end_idx
Definition ControllerData.h:223
const uint8_t amplitude_idx
Definition ControllerData.h:221
const uint8_t direction_idx
Definition ControllerData.h:224
const uint8_t threshold_start_idx
Definition ControllerData.h:222
const uint8_t torque_alpha_idx
Definition ControllerData.h:50
const uint8_t swing_max_idx
Definition ControllerData.h:44
const uint8_t stance_max_idx
Definition ControllerData.h:43
const uint8_t use_pid_idx
Definition ControllerData.h:46
const uint8_t i_gain_idx
Definition ControllerData.h:48
const uint8_t num_parameter
Definition ControllerData.h:51
const uint8_t is_assitance_idx
Definition ControllerData.h:45
const uint8_t p_gain_idx
Definition ControllerData.h:47
const uint8_t d_gain_idx
Definition ControllerData.h:49
const uint8_t plantar_scaling
Definition ControllerData.h:276
const uint8_t num_parameter
Definition ControllerData.h:285
const uint8_t timing_threshold
Definition ControllerData.h:278
const uint8_t kd
Definition ControllerData.h:284
const uint8_t damping
Definition ControllerData.h:281
const uint8_t spring_stiffness
Definition ControllerData.h:279
const uint8_t neutral_angle
Definition ControllerData.h:280
const uint8_t dorsi_scaling
Definition ControllerData.h:277
const uint8_t propulsive_gain
Definition ControllerData.h:282
const uint8_t kp
Definition ControllerData.h:283
const uint8_t ptb_settings_3_idx
Definition ControllerData.h:263
const uint8_t use_pid_idx
Definition ControllerData.h:265
const uint8_t ptb_mode_idx
Definition ControllerData.h:260
const uint8_t d_gain_idx
Definition ControllerData.h:268
const uint8_t ptb_settings_9_idx
Definition ControllerData.h:269
const uint8_t p_gain_idx
Definition ControllerData.h:266
const uint8_t ptb_settings_4_idx
Definition ControllerData.h:264
const uint8_t ptb_settings_2_idx
Definition ControllerData.h:262
const uint8_t ptb_settings_1_idx
Definition ControllerData.h:261
const uint8_t i_gain_idx
Definition ControllerData.h:267
const uint8_t num_parameter
Definition ControllerData.h:270
const uint8_t num_parameter
Definition ControllerData.h:216
const uint8_t use_pid_idx
Definition ControllerData.h:212
const uint8_t p_gain_idx
Definition ControllerData.h:213
const uint8_t d_gain_idx
Definition ControllerData.h:215
const uint8_t phase_shift_idx
Definition ControllerData.h:211
const uint8_t i_gain_idx
Definition ControllerData.h:214
const uint8_t amplitude_idx
Definition ControllerData.h:209
const uint8_t period_idx
Definition ControllerData.h:210
const uint8_t num_parameter
Definition ControllerData.h:38
const uint8_t p_gain_idx
Definition ControllerData.h:30
const uint8_t use_pid_idx
Definition ControllerData.h:29
const uint8_t i_gain_idx
Definition ControllerData.h:31
const uint8_t num_parameter
Definition ControllerData.h:33
const uint8_t d_gain_idx
Definition ControllerData.h:32
const uint8_t d_gain_idx
Definition ControllerData.h:170
const uint8_t direction_idx
Definition ControllerData.h:166
const uint8_t peak_time_idx
Definition ControllerData.h:163
const uint8_t use_pid_idx
Definition ControllerData.h:167
const uint8_t num_parameter
Definition ControllerData.h:171
const uint8_t torque_idx
Definition ControllerData.h:162
const uint8_t i_gain_idx
Definition ControllerData.h:169
const uint8_t p_gain_idx
Definition ControllerData.h:168
const uint8_t rise_time_idx
Definition ControllerData.h:164
const uint8_t fall_time_idx
Definition ControllerData.h:165
Definition ControllerData.h:26
const uint8_t max_parameters
Definition ControllerData.h:294