Repository Summary
Description | ROS2 beta-package for Elfin robot |
Checkout URI | https://github.com/hans-robot/elfin_robot_ros2.git |
VCS Type | git |
VCS Version | foxy_ethercat |
Last Updated | 2025-01-11 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
Name | Version |
---|---|
elfin10_ros2_gazebo | 0.0.0 |
elfin10_ros2_moveit2 | 0.0.0 |
elfin10_l_ros2_gazebo | 0.0.0 |
elfin10_l_ros2_moveit2 | 0.0.0 |
elfin15_ros2_gazebo | 0.0.0 |
elfin15_ros2_moveit2 | 0.0.0 |
elfin3_ros2_gazebo | 0.0.0 |
elfin3_ros2_moveit2 | 0.0.0 |
elfin5_ros2_gazebo | 0.0.0 |
elfin5_ros2_moveit2 | 0.0.0 |
elfin5_l_ros2_gazebo | 0.0.0 |
elfin5_l_ros2_moveit2 | 0.0.0 |
elfin_basic_api | 0.0.0 |
elfin_description | 0.0.0 |
elfin_ethercat_driver | 0.0.0 |
elfin_robot_bringup | 0.0.0 |
elfin_robot_msgs | 0.0.0 |
elfin_ros_control | 0.0.0 |
soem_ros2 | 1.4.0 |
README
Elfin Robot
If you don’t speak chinese, please click here
本文件夹中包含了多个为Elfin机器人提供ROS2支持的软件包。推荐的运行环境为 Ubuntu 20.04 + ROS2 Foxy, 其他环境下的运行情况没有测试过。
安装软件包
Ubuntu 20.04 + ROS2 Foxy
安装一些重要的依赖包
$ sudo apt-get install ros-foxy-joint-trajectory-controller
$ sudo apt-get install ros-foxy-controller-manager
$ sudo apt-get install ros-foxy-trajectory-msgs
$ sudo apt-get install ros-foxy-gazebo-ros2-control*
$ sudo apt-get install ros-foxy-joint-state-controller
$ sudo apt-get install ros-foxy-position-controllers
安装一些依赖包:
$ sudo apt-get install build-essential libgtk-3-dev
$ sudo pip3 install wxpython
$ sudo pip3 install transforms3d
安装和升级MoveIt!, 注意因为MoveIt!最新版进行了很多的优化,如果你已经安装了MoveIt!, 也请一定按照以下方法升级到最新版。
安装/升级MoveIt!:
$ sudo apt-get update
$ sudo apt-get install ros-foxy-moveit
安装本软件包
首先创建catkin工作空间 (教程)。 然后将本文件夹克隆到src/目录下,之后用colcon build来编译。
假设你的工作空间是~/catkin_ws,你需要运行的命令如下:
$ cd ~/catkin_ws/src
$ git clone -b foxy_ethercat https://github.com/hans-robot/elfin_robot_ros2.git
$ cd ..
$ colcon build
$ source install/setup.bash
使用仿真模型
下面给出的是启动Elfin3的一系列命令。启动Elfin5和Elfin10的方法与之类似,只要在相应的地方替换掉相应的前缀即可。
用Gazebo仿真和Moveit请运行:
$ ros2 launch elfin3_ros2_moveit2 elfin3.launch.py
运行后台程序及Elfin Control Panel界面:
$ ros2 launch elfin3_ros2_moveit2 elfin3_basic_api.launch.py
$ ros2 launch elfin_basic_api fake_elfin_gui.launch.py
关于MoveIt!的使用方法可以参考docs/moveit_plugin_tutorial.md
Tips:
每次规划路径时,都要设置初始位置为当前位置。
使用真实的Elfin机器人
下面给出的是启动Elfin3的一系列命令。启动Elfin5和Elfin10的方法与之类似,只要在相应的地方替换掉相应的前缀即可。
先把购买机器人时得到的elfin_drivers.yaml放到elfin_robot_bringup/config/文件夹下,r然后把elfin_drivers.yaml中的参数复制到elfin_robot_bringup/config/elfin_arm_control.yaml的ros__parameters下。
将Elfin通过网线连接到电脑。先通过ifconfig
指令来确定与Elfin连接的网卡名称。本软件包默认的名称是eth0 。假如当前名称不是eth0的话,请对elfin_robot_bringup/config/elfin_arm_control.yaml的相应部分进行修改。
elfin_ethernet_name: eth0
启动Elfin硬件,Elfin的控制需要操作系统的实时性支持,运行下面的命令前请先为你的Linux系统内核打好实时补丁。打补丁的方法可以参考这个教程。Elfin机械臂有两种不同版本的EtherCAT从站,在启动硬件前,请先确认你的Elfin的从站版本。
$ sudo chrt 10 bash
$ ros2 launch elfin3_ros2_moveit2 elfin3_moveit.launch.py
运行MoveIt!模块, RViz界面:
$ sudo su
$ ros2 launch elfin3_ros2_moveit elfin3_moveit_rviz.launch.py
运行后台程序:
```sh $ sudo su $ ros2 launch elfin_ros2_moveit2 elfin3_basic_api.launch.py
File truncated at 100 lines see the full file