littlebot
Published on 2025-04-01 / 2 Visits
0

【源码】基于Etherlab和Orocos的7自由度机器人臂EtherCAT测试与控制项目

项目简介

本项目是基于EtherCAT协议的开源项目,主要用于对一个7自由度的机器人臂进行测试与控制。项目聚焦于实现与EtherCAT从设备的通信和控制,确保实时性能以及数据传输的准确与稳定。通过Etherlab Master软件库创建和管理EtherCAT主节点并完成通信,结合Orocos机器人控制框架进行机器人的逆动力学计算和实时控制。

项目的主要特性和功能

  1. 可创建和管理EtherCAT主节点,与多个EtherCAT从设备(如机器人控制器)通信。
  2. 借助一系列测试和基准测试程序,监控和测试EtherCAT网络的实时性能,包括数据传输速度、延迟和执行时间等。
  3. 利用Orocos机器人控制框架,根据机器人的关节位置和速度计算所需的关节力矩,实现机器人的精确控制。
  4. 包含Python脚本处理和展示数据,以周期性数据的统计结果和直方图呈现,方便用户理解数据分布和性能特点。

安装使用步骤

前提条件

假设用户已经下载了本项目的源码文件,且已完成Etherlab和Orocos等相关环境的安装与配置。

操作步骤

1. 启动EtherLab master

sudo /etc/init.d/ethercat restart /opt/etherlab/bin/ethercat master /opt/etherlab/bin/ethercat slaves -v

2. 测试无线程性能

gcc dc_test_no_thread.c -o dc_test_no_thread -I/opt/etherlab/include -L/opt/etherlab/lib -lethercat -Wl,--rpath -Wl,/opt/etherlab/lib sudo ./dc_test_no_thread > histogram_no_thread.csv python plot_no_thread.py

3. 测试线程性能

gcc dc_test_thread.c -lpthread -o dc_test_thread -I/opt/etherlab/include -L/opt/etherlab/lib -lethercat -Wl,--rpath -Wl,/opt/etherlab/lib sudo ./dc_test_thread > histogram_thread.csv python plot_thread.py

4. 测试线程 + 7自由度机器人臂逆动力学性能

``` source /home/hiep/linuxcnc-dev/scripts/rip-environment g++ -c -fPIC -L/usr/local/lib -I. -I/usr/local/include -I/usr/include/eigen3 -lorocos-kdl orocos_cnc.cpp -o orocos_cnc.o g++ -fPIC -shared orocos_cnc.o -o liborocos_cnc.so

gcc dc_test_thread_orocos.c -lpthread -o dc_test_thread_orocos -I/opt/etherlab/include -L/opt/etherlab/lib -L. -lethercat -lorocos_cnc -lorocos-kdl -Wl,-rpath,/opt/etherlab/lib -Wl,-rpath,/home/hiep/hiep_igh/thread_id7dof sudo ./dc_test_thread_orocos > ../histogram_thread_orocos.csv python plot_thread_orocos.py ```

5. 运行LinuxCNC线程 + 7自由度机器人臂逆动力学

``` gcc etherlab_thread_orocos.c -lpthread -o etherlab_thread_orocos -I. -I/opt/etherlab/include -L/opt/etherlab/lib -L. -lethercat -lorocos_cnc -lorocos-kdl -Wl,-rpath,/opt/etherlab/lib -Wl,-rpath,/home/hiep/hiep_igh/thread_id7dof

sudo ./etherlab_thread_orocos ```

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】