This repo stores my code for going through the MIT course on robotic manipulation.
Disclaimer: because this is just practice code, there isn't excessive documentation, check the source code.
Everything is dockerized, run
# Clone this repo
git clone [email protected]:redvinaa/manipulation.git
cd manipulation
# Update submodules
git submodule update --init --recursive # get all submodules
# TODO fix this (if this is not ignored, rosdep will fail during docker build)
touch ~/manipulation/workspace/src/osqp-eigen/COLCON_IGNORE
# Build and run container
docker compose build # build the image
docker compose up -d # start the container headlessly
docker exec -it manipulation bash # enter the containerWhen you enter, the setup_environment script is sourced automatically, so all ros commands and
already built packages are available.
You start out in the workspace directory, where you can directly build the packages:
colcon buildThen you might need to source the workspace again (if you built a package for the first time):
source install/setup.bashThen you can run any executable, for example:
ros2 run pendulum pendulum_PID_controlCheck each package's README.md for more details on how to run the code.
To get a working UR stack in simulation, it's enough to clone the UR_ROS2_GZ repo and install the dependencies with
vcs import < ur_simulation_gz.jazzy.repos
Export compilation database to have intellisense:
```bash
colcon build --packages-select basic_pick_and_place_ur --cmake-args ' -DCMAKE_EXPORT_COMPILE_COMMANDS=ON'Set use_sim_time to true when running in simulation:
ros2 run basic_pick_and_place_ur robot_painter --ros-args -p use_sim_time:=true