PF1 Code History

From DIDEAS Wiki
Jump to: navigation, search

PF Users Navigation:

Edit

6-28-09

  • discovered prob bug wrt AD1CON2, changed to used IOADC_SCAN_LENGTH


5-28-09

  • after it was working???? gave up on writing the offset table from SC to MC. (cmd 1673)
  • created cmd 1675 that sends a typetype, and 3 (3 decimal) sin equ parameters that MC computes. This takes more than 2mS. Allocated 8 between commands.
  • should add way in the SC to hold off sending default commands...

5-26-09

  • as of now, do_special should be used for special commands and other simple commands, and robo_config is used for table access
  • rewrite of python table mem access nearly complete
  • robo_config can write calb tables, and read tables from RAM and EEPROM
  • need to add ability to save tables to a file, and then to read them back and store them.

5-25-09

  • read tables from RAM is difficult as the CRC frequently changes (esp sensors.), will add an option to ignore the CRC
  • table reads use low level MEM IO directly from the data structures - there is no high level function to read a table.
  • this could be fixed by having a command to take a snapshot of a memory region, and then compute the CRC of the snapshot and use LL MEMIO to read it.


5-18-09

  • in meascurr_c.c - changed extern def of ioadc_dma_buf. Was unsigned, I said it was signed. The ADC is being read in signed fractional format - so what is the DMA buffer set up as unsigned? This switch makes the measure_curr_and_filter function work better.


5-17-09 (SUN)

  • verified operation of -R operation in python
  • found that reading from EEPROM causes noises from the PCBs (only if FET board is attached.) This is probably due to timing problems that result from the long delay.
  • wrote lots of python code to use the mem read and write command.


5-16-09 (SAT)

  • start working with WB1. Has code from May 11th: Rev 991 and 992
  • believe that the ETL velocity transition was correct motor_velocity> -0.1 * 210
  • plantarflexion is a positive velocity, and causes positive motor rotation!
  • dorsiflexion is a negative velocity.
  • wrote wifi_find.py which is a new way of converting a logfile

5-15-09

5-14-09

  • track test

5-13-09

  • wrote SWIFI reconnect code. added new ESC seq to wifi_fast

5-12-09

  • commands (1341) to set safety imped
  • moved def of feature bits to system constants
  • added (RND) mode cmd to enable / disable relaxed mode
  • created virtual encoder in MC to deal with changing of imped zero position and offset.
  • wrote code to scale PFF thresholds as a set
  • python code to parse global.h file. used this to decode a memory read from ankle
  • AC motor resistance measurement.

to zero

  • set the MC imped offset to the current encoder position
  • set the SC offset to zero

to adjust imped zero position

  • encoder count at zero is not the initial A zero
  • imped offsets need to be WRT this initial A zero
  • cant change encoder count zero as that messes up commutation
  • virtual_encoder = physical_encoder - phys_offset


5-11-09

  • rewrote EEPROM_SFS to work from a walking_param pointer (instead of the working copy)
  • renamed "read_user_data" to "read_walking_param", etc.
  • added code to actually send / rcv walking params, and pfcmd support


5-10-09

  • added support for new commands into pfcmd.py
  • added set time to pfcmd.py
  • experimented with lantronix com port redirector. is able to connect to swifi and route PFcmdmenu. however can't really be used to repeat cmds. also only allows one com port to be opened at a time. will need come up with a way to multiplex CMD-RSP from several programs.
  • verified operation of overload imped state
  • wrote motor resistance, and send back to SM.
  • increase swing time from 200 mS to 250 mS


5-9-09

  • rewrote overload monitor. now a single function works on a data structure.
  • special commands to load,save,erase user profile regions. command to list IDs


5-8-09

  • antislip gain changed from 3 amps per deg, to 88 NM per deg.
  • added code to log SG offset at boot
  • added code to read the clock in RND screen
  • first 4 bytes are a code that (ultimately will) direct how the ankle boots


5-7-09

  • removed SM calls to setting current limit. motor init sets to some large default value.
  • removed most calls to get_data4 from MC tk_cmdset.
  • if cmd>10000; then don't return a gd4 packet, if cmd was 11111
  • one side imp torque is set by 1461, unset by 1331
  • HH successful test although there was a failure.

5-6-09

  • SC to MC commands add 10000 if locally generated. This allows the MC to automatically send a dataport packet, and always return a get_data4 packet.
  • mode zero uses encoder to set qAngle -> qIq is correct

5-5-09

  • added MILE encoder to MC code base

5-4-09

  • added much of OCT release to SM code base


SM

  • 11-30-08 : flipping sign of current to MC at runtime

MC

  • 11-30-08 : positive current -> DF (decrease angle); positive voltage -> PF (increase angle)