Control classes for 2-handed control of the iCub robot
This repository utilizes:
- Eigen,
- Robotology Superbuild,
- iCub Models, and
- Gazebo for simulation.
Follow the links to install each of these.
- Clone the repository to your workspace:
git clone https://github.com/Woolfrey/icub-bimanual.git
- Navigate to the directory:
cd icub-bimanual/
- Create a new
build
directory and navigate to it:
mkdir build && cd build
- Then build the repository:
cmake ../ && make
- Open a new terminal in Ubuntu with
ctrl + alt + t
and start the YARP server:
yarpserver
If this fails to launch, try using:
yarpserver --write
- Open another terminal and run:
gazebo ~/your_workspace_directory/icub-bimanual/gazebo/words/grasp-demo.sdf
A model of the iCub2 should launch in Gazebo.
- In a third terminal, navigate to
~/icub-bimanual/build
and run:
./bin//grasp-demo ~/directory/to/urdf
If you have installed the icub-models
repository, then you can use:
./bin/grasp-demo ~/your_workspace_directory/icub-models/iCub/robots/iCubGazeboV2_7/model.urdf
If successful, then a yarp port /command
should be open for communication.
- In a fourth terminal, run:
yarp rpc /command
You can now type commands for the robot to execute.
In the terminal where you can yarp rpc /command
, you can type the following:
- stop: stops any current action so that the robot holds its current joint configuration
- home: lowers the arms to a resting configuration
- wave: makes the robot wave with its right hand,
- shake: makes the robot extend its right hand,
- ready: moves the arms to a position ready for grasping
- grasp: moves the hands together in a grasp pose
- release: moves the hands apart and back to the home positionm
- in: moves the hands from their current positionsinward
- out: moves the hands from their current position outward
- up: moves the hands from their current position upward
- down: moves the hands from their current position downward
- fore: moves the hands from their current position forward
- aft: moves the hands from their current positions backward