Difference between revisions of "PFMENU DOCS"

From DIDEAS Wiki
Jump to: navigation, search
m
m
Line 1: Line 1:
 
[[Upd pcb]]
 
[[Upd pcb]]
[[PFMENU_DOCS_MC]]
+
[[PFMENU_DOCS | SC]]
[[PFMENU_DOCS_SC_TEST]]
+
[[PFMENU_DOCS_MC | MC]]
 +
[[PFMENU_DOCS_SC_TEST | SC_TEST]]
  
 
=state controller=
 
=state controller=

Revision as of 05:05, 27 February 2009

Upd pcb SC MC SC_TEST

state controller

  • 104 read debug data
    • SM status (17 seems to be good)
    • SM mode
    • ankle_torque * 100
    • motor_position / 20 (rotations * 100?)
    • motor velocity rads per sec (*100)
    • ankle angle in degress (*100) from motor
    • desired motor current (*100)
    • motor qIq
    • motor qId
    • motor speed (RPM)


  • 120 read SG_torque const and offset
  • 121 write sg_torque_const
  • 122 read_power_delay
  • 123 write_power_delay
  • 124 - calibration sensor offset 'C'
  • 125 - read results
    • sg_torque_cost * 1e6
    • ankle_torque * 1000
    • GetFilterTorque
    • GetFilter2Torque
    • adc_sg_offset
    • ioadc_get_one TQSGSC
    • ioadc_get_one LDSGSC
    • ioadc_get_one LSSGSC
    • ioadc_get_one AANGSC
  • 126 set feature bits
    • 0x1 current updates
    • 0x2 enabled relaxed
    • 0x4 enable mit comm
  • 127 read feature bits

130

  • 130 read VS tune parameters
  • 131 write VS tune parameters (131 3000 80 4000 0 4000 250)
    • early_stance_imp_k/10 (3000 is default of 300)
    • early_stance_imp_b/10 (80 is default of 8)
    • late_stance_imp_k/10 (4000 is default of 400)
    • late_stance_imp_b/10 (0 is default)
    • swing_imp_k/10 (4000 is default of 400)
    • swing_imp_b/10 (250 is default of 25)

131 3000 80 4000 0 4000 250


  • 132 read power tune parameters
  • 133 write power tune parameters (133 250 30 0 200 852)
    • impulse_current / 10 (25 amps = 250)
    • islip gain / 10 (3.0 amps/deg = 30)
    • power delay (in SM cycles)
    • power exponent / 10 (torque squared = 20)
    • SG torque constant (over 10e3) (up2 = 852, up3=550)

150

  • 150 enable MIT comm
  • 151 set dataport readback block
  • 152 get dataport readback block


160

  • 160 : get walking surface (0 = level, 2 = stair descent)
  • 161 : set walking surface (20 = LG, 22 = SG)
  • 162 : get slope angle * 10 (10 deg = 100)
  • 163 : set walking surface / 10

170

  • force statemachine state

180

  • 180 : read stair descent params
  • 180 : holdoff ms, rate (10*deg/sec), CP_imp_k*10, CP_imp_b*10, S_imp_k*10, S_imp_b*10, max_angle*10, torque_thresh*10, late_stance_ang * 10
  • 181 : write stair descent params
  • 181 50 600 4000 100 0 300 170 80 -5

holdoff ms, rate (10*deg/sec), CP_imp_k*10, CP_imp_b*10, S_imp_k*10, S_imp_b*10, max_angle*10, torque_thresh*10, late_stance_ang * 10


190 scripts

  • 190 : statemachine_get_script_element(int pos, int *step_count, SURFACE_TYPE_T *surface_type, int *slope_angle);
  • 191 : statemachine_set_script_element(int pos, int step_count, SURFACE_TYPE_T surface_type, int slope_angle);
  • 192 : read script count
  • 193 : set script count


special commands

Program test pattern

Command current sequence

A series of currents can be commanded for a fixed number of cycles. A table stores the motor currents, and time interval for the current to be commanded. The table can be filled in any order, and positions can be over written without problems. The end of the test loop is marked with a duration of 0.

  • 115 0 <POSITION> <DURATION> <TORQUE VALUE>
  • Position : Store at the specified row in the table. Table positions starts at 0. However the position value of -1 is used to write into position zero and ALSO re-initialize values.
  • Duration is in 2mS units. A duration of zero indicates the end of the test loop sequence
  • Torque value : 1 amp = 1092

Motor thermal model

  • Command 117 is used to read back the model estimates of motor resistance and model temperatures. Divide by 1000 for SI units.
  • Command 118 is used to set the thermal limits. When a limit is reach the test commands zero motor current until the low temperature is reached.