Cmd 104 full

From DIDEAS Wiki
Jump to: navigation, search

0

           data->param[0] = walking_state.StatemachineStatus;
           data->param[1] = walking_state.SM_STATE;

           data->param[2] = (INT16_T) (sensors.ankle_torque * 100.0);
           data->param[3] = sensors.motor_position/20;     //100/2000 The 100 is for local scaling . 2000 encoder counts 

           data->param[4] = sensors.motor_velocity_rads * ANKLE_TRANSMISSION_RATIO * 100;
           data->param[5] = sensors.ankle_angle_mot_deg * 100;  // plantarflex = positve

           data->param[6] = walking_state.desired_motor_torque * 1000;
           data->param[7] = sensors.ankle_angle_hall_deg;


           data->param[8] = HALL_GAIN;
           data->param[9] = sensors.motor_velocity_rpm;

6

  • demux_sm_debug(data->param); // demux_statemachine.c
  param[0] = demux_sm_state;
  param[1] = demux_sm_tics_in_current_state;

  • motor_sm_debug(data->param+2); // motor_init.c
  param[0] = mc_state;
  param[1] = mc_tics;

  • mc_comm_debug(data->param+4); // motor_commands.c
  params[0] = mc_comm_state.last_command;
  params[1] = mc_comm_state.outstanding_command;
  params[2] = mc_comm_state.valid_response;
  params[3] = mc_comm_state.last_errcode;

  params[4] = mc_comm_state.err_cnt;
  params[5] = mc_comm_state.default_cmd_cnt;


  • demux_sm_states:
  enum demux_states {  FIRST_STATE=1, LOCAL_INIT,  SYSTEM_INIT, RUN_TIME };
  • mc_states:
enum MC_INIT_STATE {MC_STATE_ZERO=0,           \
		    MC_STATE_DO_START=1,       \
		    MC_SET_FILTER,             \
		    MC_MEASURE_BATTERY_OFFSET, \
		    MC_TEST_CLAMP,             \
		    MC_STATE_BRANCH_BOOT_TYPE, \
		    MC_MODE_2,                 \
		    MC_EXIT_2,                 \
		    MC_MEASURE_OFFSET,         \
		    MC_READ_OFFSET,            \
		    MC_SET_OFFSET,             \
		    MC_FORCE_ZERO_POS,         \
		    MC_WAIT_FOR_ZERO,          \
		    MC_MODE_3,                 \
		    MC_INIT_SUCCESS=50,        \
		    MC_INIT_ERROR,             \
		    MC_STATE_IDLE,             \
                    };