This repository provides simulation and teleoperation tools for controlling a robotic arm in Gazebo using keyboard input and ROS controllers.
- Keyboard Control: Manual control of end-effector velocities.
- Velocity Mapping: Key-based directional velocity control.
- Inverse Kinematics: Joint velocities calculated using the Jacobian inverse.
-
We will be launching our world in Gazebo so make sure to install it by using the command
curl -sSL http://get.gazebosim.org | sh
-
sudo apt-get install ros-noetic-gazebo-ros-pkgs ros-noetic-urdf ros-noetic-xacro ros-noetic-ros-control ros-noetic-ros-controllers
For motion planning
sudo apt-get install ros-noetic-moveit
Note
All the installation commands are for rosdep noetic change noetic with <your_distro_name>
-
Make a workspace and create a directory 'src' where all the packages will be stored, clone this repo to get the packages and then build the catkin workspace.
cd ~/robo_arm/src/ git clone https://github.com/Team-Deimos-IIT-Mandi/Robotic_Arm.git cd ~/robo_arm && catkin build
Source your workspace in .bashrc file by running the following command so that you don't have to source it in every terminal
echo "source ~/robo_arm/devel/setup.bash" >> ~/.bashrc
roslaunch Arm_Urdf new.launch
rosrun Arm_Urdf IK_gazebo.py
rosrun Arm_Urdf IK_set_point_gazebo.py
rosrun Arm_Urdf IK_tracking.py
To start the Gazebo simulation:
roslaunch moveit_pkg final.launch
To control the robotic arm via keyboard:
rosrun teleop_arm jaco_pt2.py
w
- Move +Xs
- Move -Xa
- Move +Yd
- Move -Yq
- Move +Ze
- Move -Z