Main /



Getting Started in ModLab!

Information for Leaders


Lab Resources

Software Guides

Hardware Guides

Lab Website

Fun Stuff

edit SideBar


modlab CKBOT Graphic User interface manual

Matt Piccoli
University of Pennsylvania
Version 1.02
May 2008


How-to: Isomorphic Playback

How-to: Connecting with ZigBee

How-to: Using the Joystick

How-to: Using the Simulator

How-to: Making Gaits

Download the Release at

Bug Reports reports to

Send things you would like to see


  • General:
    • The software is designed for screens of resolution 1024x768 or larger.
    • Any operating systems that support the below requirements are supported. Windows Vista and XP have been tested.
    • This software does not install any drivers for the connection hardware.
    • Ensure you have enough USB ports for the task (Connection, camera, joystick, ...)
  • For the .msi file:
    • .Net Framework 2.0 SP1 or greater must be installed before CKBot GUI installation.
      • This can be found via Windows Update.
    • All necessary files are included in the installer (distributed .msi file).
  • For source code:
    • Visual Studio 2005 must be installed including the c# libraries.
    • A DirectX sdk is required to compile (October 2006 build used for development, and any sdk as or more recent is recommended).
    • Matlab is required to compile.
      • Code can be easily changed to avoid this if the matlab functions are not going to be used. Attempt to build the file. When you receive errors, comment out every line that gives an error. This will disable all Matlab functionality.

Getting Started

Above is the Advanced window. In the File menu, New clears all savable data, Open allows you to open a .gait, .pic, .m (Matlab file consisting of a matrix of gaits), or a properly formatted .txt file. Save and Save As… allows you to save a gait, speed, FPS, configuration matrix, and a playback order. In the Options menu, you can reset to all defaults and open the Preferences window. The Reset Nodes menu allows you to reset nodes (useful when changing module properties that require a reboot of the robot).

  • The Dictionary section allows you to select properties of nodes, and get or set their values.
  • The Gait section allows you to open a gait in the specified directory (Preferences), record a gait, and set the values of that gait. To record a gait, click Start Recording (this will then change to Stop Recording). Change the shape of the robot and click Record Position. The values from the feedback will be displayed in the textbox. See How-to: Making Gaits.
    • FPS (Fames Per Second) is exactly as the name implies, it is the number of position commands that are sent to the robot per second.
      • These positions are linear interpolations between two steps.
    • Speed is the steps (or lines) per second.
      • For example: a gait of 5 lines at a speed of 1 will take 5 seconds, while a gait of 5 lines at a speed of 2 will take 2.5 seconds, a gait of 5 lines at a speed of 5 will take 1 second.
  • In the middle, you can calibrate the modules by clicking “Manual Calibration”, then selecting the node that you want to calibrate. Click the right arrow until the module hits 90 degrees, then click 90. Now click the left arrow until the module hits -90 degrees, then click -90. The button that used to say “Manual Calibration” should now say “Done Calibration”. Click it.
  • Order allows you choose the order that the gaits are being sent to the modules. By default, the lowest ID module is on the left and the highest ID is on the right in the gait table. To have the gait table played back in the same way despite the ID order, see How-to: Isomorphic Playback
  • The Connections section allows you to see the configuration matrix of the current configuration (requires clicking update in the matrix window for hardware or write in the 3D window for simulations), the simulation (see How-to: Using the Simulator), as well as send and log process messages.
  • The Connect button (red when not connected and green when connected) acts in the same way as the Connect button in the Basic window.
  • The Play button is green when you can start playback of a gait, red when you can stop playback of a gait, and gray when playback is not currently supported.
  • Demo files are supplied in the Samples folder. The one shown above is gaitDemo.gait, which uses MagnetDemo.gait

When you click Preferences in the Options menu of either the Basic or Advanced window you see this window. The GUI tab allows you to change where the software looks for gaits, change where the software saves the log and in how much detail, and whether the software displays warning messages.

The Robot tab allows you to select connection settings and the ID range for Controllers and Sensors. When connecting:

  • Select Autodetect if you do not know or care how you are connected.
  • Select CAN if you are connected through a USB to CAN device.
  • Select Bluetooth if you are connecting through Bluetooth. You must specify your outgoing COM port for the device. See How-to: Connecting with ZigBee.

The Controls tab allows you to open a Joystick window, which lets you control the robot with any joystick device. You can use multiple joysticks for the same connection. Simply select the joystick from the dropdown bar and click Enable. See How-to: Using the Joystick.

The LogMsgs tab (Log Messages) allows you to log dictionary message values from the left hand side and process messages on the right side.

Recent Changes (All) | Edit SideBar Page last modified on May 17, 2010, at 04:08 PM Edit Page | Page History
Powered by PmWiki