Pf users

From DIDEAS Wiki
Jump to: navigation, search

Biomech Documentation links:

  • Using the Powerfoot (Pf_users)


PF Users Navigation:



Pf_users; Pf_ui; Pf_study ; pf_arch_overview ; pf_comm_arch ; Pf_sc_arch ; Pf_mc_arch ; Pf_imu_arch ; Pf_defs ; Pf_insects [1]

Development Environment

To compile and download code.

Data Collection

Telemetry is performed using a SWIFI board which sends diagnostic data from the ankle to a PC or laptop via WIFI. A Python script communicates with the ankle while a Matlab program is used to plot the diagnostic data.


Currently python 2.5.4 is used to collect data, control the robot. More recent versions < 3.0 will likely work.

Network / Router Configuration (TBD)

Telemetry Example

  • Open DOS command window
  • Power on ankle and verify connection to SWIFI (sw5 shown):
    • ping
  • Navigate to wifi script directory and start data collection script. To stop data collection, hit ESC key.
    • cd C:\ceb\0svn\pfcmd_python\wifi_v3
    • -i -V hall2.vlist -F -f ss0103
      • pre-hall sensor used imu2.vlist
  • Open a new DOS command window and run Matlab
    • cd C:\ceb\0svn\matlab
    • matlab
    • Matlab should open.
    • Type in and run plot_laptoph.m
    • In Matlab Command window press <Enter>
    • A new GUI windows should open and data plotting should begin shortly.
  • To stop data collection, hit ESC key in wifi_fast DOS window. Data are logged in wifilog subdirectory.
  • To restart data collection, hit "up arrow" or retype command in wifi_fast DOS window. Note that every restart will create a fresh set of files with the base file name prefix and timestamp information postfix (e.g., ss0103_091101_140312.txt.bz2)
  • Tuning can be perfomed in wifi_fast DOS window.
  • Save parameters to a file
    • cd C:\ceb\0svn\pfcmd_python
    • -i SW?? -I -RrSTCWeSTCW > ss0103.txt

SWIFI wifi_fast dataport reference

  • -i <ip address or name> [-p <matlab listen port>] -V <variable list filename> -F -f <log file name>
    • -i - the IP address of the SWIFI. Typical 192.168.192.xx or "sw8". xx is typically 191-198 where the last digit represents the SWIFI number.
    • -V specifies the format and names of the packets from the dataport. use : -V imu2.vlist
    • -p (optional), default is 9999 - use if multiple plotters running simultaniously. If not 9999, before starting matlab plotter, assign the variable "matlab_listen_port" to some value in the range of 9990 and 9999
    • -F (optional) - flush the SWIFI buffer at startup. The buffer could be holding upto ~2 mins of the past data.
    • -f the base filename used for logging of the binary packet data, and ASC form of the packets.
  • sometimes at power up, SWIFI outputs garbage. The solution is to power cycle the SWIFI until it works.
    • this appears to be a baud rate problem - and is being corrected.
  • the directory is generally something (often \ceb or \cbarn\svn) \pfcmd_python\wifi_v3
  • example : -F -i sw5 -V imu2.vlist -f ss0103_tuning

matlab reference

Matlab is used for 'real-time' plotting.

  • start matlab
  • cd to C:\ceb\0svn\matlab (or the local version of svn://pedant/........./branches/cbarn/matlab)
  • optionally set the variable "matlab_listen_port" to something in the 999x range.
  • on the laptop generally use plot_laptop
  • or on my PC, run the program "plot_float" and bypass the prompts.

init table


known issues