Welcome to the ARC Robot Arm project repo!
Our overarching goal is to explore the robotic manipulation, robot vision, robot control, and reinforcement learning by building a robot arm. In our journey, we plan to publish our progress, tutorials, and understandings. Learn more on the wiki.
Check out the wiki pages here to learn more about all the different components and how they fit together.
- Setup ROS Noetic if you haven't done so.
-
If you are an experienced Linux user with a native Linux system, use the official ROS tutorials
-
If you have Windows or have spent longer than 30min-1hr setting up ROS or this package with no luck and just want an easy method, use the ConstructSim instructions
Note: The ConstructSim doesn't allow for hardware access or networking since it is browser-based, but it can still run all the simulations
- Clone this repo into the
src
folder in your ROS workspace recursively to get theyolov5_pytorch_ros
andrealsense_ros_gazebo
packages
git clone --recursive https://github.com/purdue-arc/arc_robot_arm.git
- Download all package dependencies / Setup environment
Linux or Non-robostack:
cd path/to/root_workspace_dir
rosdep install --from-paths src --ignore-src --rosdistro=noetic -y
MacOS using Robostack:
# Ensure base conda environment is activated
cd arc_robot_arm
mamba env create -f robot_arm_env_macos.yml
conda activate robot-arm-env
- Build + source (Do this every time you download new packages)
catkin build
source path/to/catkin_ws/devel/setup.bash
Note: Build + source every time you add new packages. Source every time you open a fresh terminal, or add the line to your ~/.bashrc so it sources automatically
- Launch the robot in Gazebo simulation with the chessboard world and Realsense ROS gazebo camera, using the protoarm_bringup package
- Use the IK to run some test goal positions using the protoarm_kinematics package
- Launch the chess piece detector which uses a YOLOv5 detection model, using the chess_piece_detector package
Add an issue or add comments under articles in the wiki and we'll respond ASAP!