Wiki

Clone wiki

scl-manips-v2 / barrett / wamRedisSCL

Running the WAM with Redis and SCL

IF YOU HAVE NOT USED THE WAM BEFORE, CONTACT SOMEONE WHO HAS!

IF YOU HAVE USED THE WAM BEFORE, PROCEED!

1. First, run the Redis server itself in terminal with

The redis server is a transactional database that serves as a communication buffer between the wam and your program. You may start it by typing this on the terminal (the directory does not matter):

  • redis-server
    • If this does not work, someone might have left the server running in the background. Feel free to whack that person on the head!
    • To kill a background server, type sudo killall redis-server then run it again.
  • Once you are finished with the robot, make sure to shut down the server (ctrl+c in the terminal where you opened it)

2. Now switch on the robot (if it is unclear how to do this, follow the instructions on this page.)

3. In a new terminal window, run the WAM Redis driver application and follow the prompted instructions:

  • You will first have to start the redis server application
    • cd /home/<insert-your-user-name-here>/code/actual-working-wam-redis-driver-/
    • ./wam_redis_driver
  • This will start a server that will communicate with the wam and dump joint angles/velocities into the redis server. Your application will read those values and then set desired torques, which the server will transmit to the robot.

4. In a third terminal window, run the SCL example application:

  • Now you are ready to start the basic application. DO NOT MODIFY THIS APPLICATION!!! Copy the code to another location and work from there...
    1. cd /home/<insert-your-user-name-here>/scl-manips-v2.git/applications-linux/scl_example_ctrl
    2. ./scl_eg_ctrl ../../specs/Barrett/wamCfg.xml wamBot wopc -op hand
  • Listen carefully to the robot when you run this program and shift-activate the robot, if it produces weird noise, push the red button. Then restart the robot. It should be fine.
    • This is a weird bug in the lower level controller. This will be fixed soon.
  • Note that the application by default starts in position tracking mode. It will NOT send torques to the robot when you turn it on.
  • Try moving the robot around. The robot should be floating. The scl window will show a moving robot.
    • If the robot is not floating. Shut it down and contact someone who knows what is going on.
  • Manually move the robot to a reasonable NON-SINGULAR base position
  • Finally
    1. Press the key '5'
    2. This will engage position tracking control for the wam
    3. Move it around with wasd like the usual scl applications

5. Modifying the controller gains etc.

This application works in the usual way like other scl controllers. Simply change the gains in the config file. Note that the configuration file is located inside ~/scl-manips-v2.git/specs/Barrett

If you make changes to the code, remember to compile it. The WAM Redis driver application and SCL example application, compile code changes in the usual manner with sh make_rel.sh

Always SHIFT-IDLE the robot before you quit the program!

Updated