Preparation: Ros1 (e.g. noetic installed). For this i use Nvidia Agx Orin setup, details in Jetson AGX Orin Set-up.
Note: The command proxychains4
is used for proxy. You can remove it if you have access to these resources.
0. (Optional) Flash
The old version of mycobot 280 (2021.03) need flash old Transponder mirror, or, it can not controll by COM. The official MyStudio has no choice Transponder for this old product.
https://github.com/elephantrobotics/myCobot/releases/tag/0
1. Move It (Install from source)
Download rosinstall file.
cd ~/ros_catkin_ws
proxychains4 wget https://raw.githubusercontent.com/ros-planning/moveit/noetic-devel/moveit.rosinstall
vcs import src < moveit.rosinstall
rosdep install --from-paths src --ignore-src -r -y --skip-keys "python gazebo"
Install geometric_shapes
and its dependcies.
cd ~/ros_catkin_ws/src
git clone https://github.com/ros-planning/random_numbers.git
git clone https://github.com/ros/eigen_stl_containers.git
cd ..
./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release --merge --pkg eigen_stl_containers random_numbers geometric_shapes
Install rviz_visual_tools
and its dependcies.
cd ~/ros_catkin_ws/src
git clone https://github.com/PickNikRobotics/graph_msgs.git
cd ..
./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release --merge --pkg graph_msgs rviz_visual_tools
Install eigenpy
and ompl
from source.
sudo apt-get install doxygen -y
cd
git clone https://github.com/stack-of-tasks/eigenpy.git
cd eigenpy
cmake .
make
sudo make install
cd
git clone https://github.com/ompl/ompl.git
mkdir -p build/Release
cd build/Release
cmake ../..
make -j 8
sudo make install
Install moveit
and its dependcies.
cd ~/ros_catkin_ws/src
git clone https://github.com/wg-perception/object_recognition_msgs.git -b noetic-devel
git clone https://github.com/pantor/ruckig.git
git clone https://github.com/wxmerkt/pybind11_catkin.git
git clone https://github.com/ros-planning/warehouse_ros.git
cd ..
./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release --merge --pkg object_recognition_msgs ruckig pybind11_catkin moveit moveit_commander moveit_core moveit_ros_occupancy_map_monitor moveit_ros_planning moveit_kinematics moveit_planners moveit_plugins moveit_ros moveit_runtime moveit_ros_perception warehouse_ros moveit_ros_warehouse moveit_ros_move_group moveit_ros_manipulation moveit_ros_planning_interface moveit_ros_robot_interaction moveit_ros_visualization moveit_setup_assistant moveit_msgs moveit_resources moveit_visual_tools moveit_tutorials panda_moveit_config srdfdom
2. mycobot_ros (Install from source)
sudo pip3 install pymycobot -U
cd ~/ros_catkin_ws/src
git clone --depth 1 https://github.com/elephantrobotics/mycobot_ros.git
cd ..
./src/catkin/bin/catkin_make_isolated --install -DCMAKE_BUILD_TYPE=Release --merge --pkg mycobot_communication mycobot_description mycobot_280 mypalletizer_260
3. USE 40-Pin
First, you need Jetson.GPIO installed. If not, sudo pip3 install -U Jetson.GPIO
The detail of pin-num are here
Then, you need to enable pin function manually, or the device does not work.
sudo /opt/nvidia/jetson-io/jetson-io.py
Configure Jetson 40pin Header -> Configure header pins manually -> enable pins (e.g. select pwm5 at pin-18).