中国自动化学会专家咨询工作委员会指定宣传媒体
文摘详情
gkongbbs

EtherCAT运动控制器Stewart六自由度并联平台应用

http://www.gkong.com 2026-07-17 11:43 深圳市正运动技术有限公司

ZMC432R-V2运动控制器介绍

正运动ZMC432R-V2总线控制器是正运动技术推出的新一代网络32轴EtherCAT运动控制器,自带6个脉冲轴接口。能实现总线轴+脉冲轴混合插补的多轴运动控制场合。同时支持正运动远程显示功能,能提供网络组态显示,可实时监控和调整参数配置。

正运动ZMC432R-V2运动控制器.webp

ZMC432R-V2硬件功能特性:

(1)支持32轴运动控制(脉冲+EtherCAT总线),EtherCAT最小通讯周期可达125us;

(2)24路通用输入、12路通用输出,2路模拟量输出(DA),其中包括2路高速输入和2路高速输出;

(3)6路差分脉冲轴输出,总线轴、脉冲轴可混合插补;

(4)内置多项实时性运动控制功能,例如视觉飞拍、多维PSO、高速位置锁存,多轴同步运行等;

(5)可通过EtherCAT扩展模块进行IO硬件资源扩展,可扩展至4096个隔离输入口和4096个隔离输出口;

(6)具备丰富的运动控制功能,如点位运动、电子凸轮、直线插补、圆弧插补、连续轨迹加工;

(7)支持掉电检测、掉电存储,多种程序加密方式,能够有效防止系统故障,保护项目工程文件数据,并提高系统的可靠性;

(8)通过纯国产IDE开发环境RTSys进行项目开发,可实时仿真、在线跟踪以及诊断与调试,简便易用,支持多种高级上位机语言联合编程进行二次开发。

正运动ZMC432R-V2控制器硬件接口.webp

  • 此类运动控制器与PCI运动控制卡相比具有如下优点:

(1)不使用插槽,稳定性更好;

(2)可以选用MINI电脑或ARM工控电脑,降低整体成本;

(3)控制器直接做接线板使用,节省空间;

(4)控制器上可以并行运行程序,与PC只需要简单交互,降低PC软件的复杂性等优势。

ZMC控制器通过RTSys开发环境来调试,RTSys是一个方便的编程、编译和调试环境。RTSys可以通过串口、以太网、PCI和LOCAL与控制器建立连接。应用程序可以使用VC,VB,VS,C++Builder,C#等软件来开发。调试时可以把RTSys软件同时连接到控制器,程序运行时需要动态库zmotion.dll。

rtsys.png

  • Stewart六自由度并联平台

Stewart六自由度并联平台标准配置6根伺服电动缸驱动轴,实现空间X、Y、Z平移+RX(绕X轴旋转)、RY(绕Y轴旋转)、RZ(绕Z轴旋转)。

后缀带R的ZMC432R-V2控制器原生支持Stewart平台专用机械手算法,采用脱机下载运行模式,也可PC在线实时发指令控制;支持触摸屏示教轨迹编辑、参数标定,快速适配不同机械尺寸的并联平台。

Stewart六自由度并联平台.png

与传统串联机器人相比,Stewart六自由度并联平台具有以下显著优点:

?刚度大:采用闭环并联结构,六个致动器共同作用于运动平台,负载均匀分布,结构刚性好,不易变形。

?承载能力强:承重/自重比大,能够承载高达数吨甚至十吨以上的负载,适用于重型应用场景。

?精度高:无串联机构的位置误差累积问题,可实现微米级甚至纳米级的定位精度。

?动态特性优异:运动加速度大,响应速度快,适用于高速高精度运动控制。

?结构紧凑:无需像串联机器人那样叠加多个轴,整体结构紧凑,节省空间。

???

机械手相关概念

1.关节轴与虚拟轴

(1)关节轴:是指实际机械结构中的旋转关节,在程序中一般显示旋转角度(某些结构也是平移轴)。由于电机与旋转关节会存在减速比,所以设置脉冲当量UNITS(电机走1mm或者1°需要的脉冲数)时要按照实际关节旋转一圈来设置,同时TABLE中填写结构参数时也要按照旋转关节中心计算,而不是按照电机轴中心计算。

(2)虚拟轴:不是实际存在的,抽象为世界坐标系的6个自由度,依次为X、Y、Z、RX、RY、RZ。可以理解为直角坐标系的三个直线轴和三个旋转轴,用来确定机械手末端工作点的加工轨迹与坐标。

正逆解运动示意图.webp

正逆解运动示意图

2.正解运动与逆解运动

(1)正解运动:通过操作关节坐标,并结合机械结构参数,可计算出末端执行器在直角坐标系中的空间位置,这一过程称为正解运动。在正解模式下,操作的是实际关节轴,而虚拟轴的坐标则由系统自动计算。控制器使用CONNREFRAME指令建立正解模式,该指令作用于虚拟轴。在此模式下,虽只能操作关节轴,但关节轴可执行各种运动,不过实际运动轨迹并非直线或圆弧。正解模式通常用于手动调整关节位置或上电点位回零。

(2)逆解运动:给定一个直角坐标系中的空间位置,反推出各关节轴坐标,这个过程称为逆解运动。此时操作的是虚拟轴,实际关节轴自动解算坐标并运动。控制器使用CONNFRAME指令建立逆解模式,此指令作用在关节轴上,此时只能操作虚拟轴,对虚拟轴发送运动指令,可以在笛卡尔坐标系中做直线,圆弧,空间圆弧等运动,关节轴在CONNFRAME的作用下会自动运动到逆解后的位置。

???

机械手使用操作步骤

1.确认电动缸伸缩方向、模型零点与运动极性。

6个关节轴伸出为正向、缩回为反向。关节轴零点位置,对应初始杆长度,所有关节轴初始位置必须一致。

? 虚拟轴以静平台(下面平台)的中心为坐标零点。

XY平面与静平台平行,Z向上方向,XYZ采用右手法则。连接RTSys软件与平台仿真工具,通过【工具】-【手动运动】,以低速点动各关节轴,观察电动缸伸缩是否对应动平台预设姿态变化,无卡顿、方向匹配则极性正确。

机械手使用操作步骤1.1.webp

机械手使用操作步骤1.2.webp

2.TABLE寄存器(控制器上电后自动生成)依次存入机械手结构参数。

建立机械手连接时,需要将机械结构参数按照如下次序依次填写到TABLE数组中。Stewart六自由度并联平台FRAME67模型机械结构参数说明如下:

机械手使用操作步骤2.1.webp

机械手使用操作步骤2.2.webp

‘从Tablestart编号开始依次机械手结构参数动平台的半径、动平台的短边角度、静平台的半径、静平台的短边角度、初始杆长度、最小杆长度、最大杆长度、姿态轴一圈的脉冲数、末端到动平台中心的 XY 偏移、末端到动平台中心的垂直距离、初始的方向,焊枪针头的方向、连杆误差数据 table 下标到Table中
TABLE(Tablestart,rsmall,anglesmall,rlarge,anglelarge,initL,minL,maxL,PulesROneCircle,SmallX,SmallY,SmallZ,InitRx,InitRy,InitRz,position_error_table)

3.设置关节轴参数及虚拟轴参数。

各轴的轴类型和脉冲当量(units)要设置正确,设置为关节轴连杆走1mm需要的脉冲数。虚拟轴的units跟实际发送脉冲数无关,用于设置运动精度,虚拟轴的1mm脉冲数一般建议设置为1000,表示精度为小数点后3位。

'关节轴设置
BASE(Axis_J1,Axis_J2,Axis_J3,Axis_J4,Axis_J5,Axis_J6)
'脉冲轴类型设置为1。若是总线轴类型,可设置为65 
ATYPE = 1,1,1,1,1,1
UNITS = Units_1,Units_2,Units_3,Units_4,Units_5,Units_6
'设置关节轴速度、加速度(一般设置为速度的10倍)、减速度(一般设置为速度的10倍)
SPEED = MoveSpeed,MoveSpeed,MoveSpeed,MoveSpeed,,MoveSpeed,MoveSpeed  
ACCEL = MoveSpeed*10,MoveSpeed*10,MoveSpeed*10,MoveSpeed*10,MoveSpeed*10,MoveSpeed*10
DECEL = MoveSpeed*10,MoveSpeed*10,MoveSpeed*10,MoveSpeed*10,MoveSpeed*10,MoveSpeed*10
'虚拟轴设置
BASE(Axis_Vx,Axis_Vy,Axis_Vz,Axis_Vrx,Axis_Vry,Axis_Vrz)
'虚拟轴轴类型设置为0,ECAT总线轴设为65
ATYPE = 0,0,0,0,0,0
'虚拟轴脉冲当量设置为1000--表示精度为小数点后3位
UNITS = 1000,1000,1000,1000,1000,1000
'设置虚拟轴速度、加速度(一般设置为速度的10倍)、减速度(一般设置为速度的10倍)
SPEED = MoveSpeed,MoveSpeed,MoveSpeed,MoveSpeed,,MoveSpeed,MoveSpeed  
ACCEL = MoveSpeed*10,MoveSpeed*10,MoveSpeed*10,MoveSpeed*10,MoveSpeed*10,MoveSpeed*10
DECEL = MoveSpeed*10,MoveSpeed*10,MoveSpeed*10,MoveSpeed*10,MoveSpeed*10,MoveSpeed*10

4.移动各关节轴到规定的零点位置。

机械手算法建立时,需要有个零点位置作为参考。当Stewart六自由度并联平台各关节轴的连杆都处于初始杆长时,认为是关节零点位置。

5.根据需求建立正解或逆解控制机械手。

???

机械手指令说明

不同的机械手模型参数是有差异的,可通过【正运动机械手运动学说明书】-见文章附件,查阅对应的机械手模型参数进行确认选择。

正运动机械手指令手册.webp

本文以Stewart六自由度并联平台的FRAME67模型为例介绍,机械手正解与逆解的指令说明如下:

机械手正解与逆解的指令说明.webp

CONNREFRAME - 建立正解连接

? 指令描述:

将虚拟轴的坐标与关节轴的坐标关联,关节轴运动后,虚拟轴自动走到相应的位置。

? 指令语法:

BASE(Axis_Vx,Axis_Vy,Axis_Vz,Axis_Vrx,Axis_Vry,Axis_Vrz)

CONNREFRAME(67,Tablenum,Axis_J1,Axis_J2,Axis_J3,Axis_J4,Axis_J5,Axis_J6)

? 参数说明:

①frame:坐标系类型。参考【正运动机械手运动学说明书】,frame是67,代表这款机械手模型是6轴Stewart六自由度并联平台。

②Tablenum:存储机械手结构参数的TABLE起始位置,依次存储对应模型的机械手结构参数。

③Axis_J1:第1个关节轴轴号。

④Axis_J2:第2个关节轴轴号。

⑤Axis_J3:第3个关节轴轴号。

⑥Axis_J4:第4个关节轴轴号。

⑦Axis_J5:第5个关节轴轴号。

⑧Axis_J6:第6个关节轴轴号。

CONNREFRAME - 建立逆解连接

? 指令描述:

将当前关节坐标系的目标位置与虚拟坐标系的位置关联;关节坐标系的运动最大速度受SPEED参数的限制;当关节轴告警等出错时,此运动会被CANCEL。

? 指令语法:

BASE(Axis_J1,Axis_J2,Axis_J3,Axis_J4,Axis_J5,Axis_J6)

CONNFRAME(67,Tablenum,Axis_Vx,Axis_Vy,Axis_Vz,Axis_Vrx,Axis_Vry,Axis_Vrz)

? 参数说明:

①frame:坐标系类型。参考【正运动机械手运动学说明书】,frame是67,代表这款机械手模型是6轴Stewart六自由度并联平台。

②Tablenum:存储机械手结构参数的TABLE起始位置,依次存储对应模型的机械手结构参数。

③Axis_Vx:第1个虚拟轴轴号。

④Axis_Vy:第2个虚拟轴轴号。

⑤Axis_Vz:第3个虚拟轴轴号。

⑥Axis_Vrx:第4个虚拟轴轴号。

⑦Axis_Vry:第5个虚拟轴轴号。

⑧Axis_Vrz:第6个虚拟轴轴号。

???

Stewart六自由度并联平台模式建立

1.正解建立

以Stewart六自由度并联平台的Frame67模型为例。先将机械手结构参数从某个Table起始编号依次存储到Table数组中,然后选择对应模型的轴列表,使用CONNREFRAME指令建立正解模式。

指令说明可通过RTSys软件菜单栏的【帮助文档】-【RTBasic帮助】-【索引】,在查找栏搜索CONNREFRAME即可查看。

正解建立.1.webp

'将机械手参数从编号TableNum开始依次存储到Table数组中
TABLE(Tablestart,rsmall,anglesmall,rlarge,anglelarge,initL,minL,maxL,PulesROneCircle,SmallX,SmallY,SmallZ,InitRx,InitRy,InitRz,position_error_table)
'选择轴列表
BASE(Axis_Vx,Axis_Vy,Axis_Vz,Axis_Vrx,Axis_Vry,Axis_Vrz)
'建立机械手正解
CONNREFRAME(67,Tablenum,Axis_J1,Axis_J2,Axis_J3,Axis_J4,Axis_J5,Axis_J6)

若机械手正解建立成功,虚拟轴MTYPE(当前运动类型)将显示为34。此时只能操作关节轴在关节坐标系中调整机械手姿态,手动运动可通过RTSys软件菜单栏的【工具】-【手动运动】,待【手动运动】界面弹出之后选择关节轴轴编号(本文关节轴以轴0,轴1,轴2,轴3,轴4,轴5为例),然后根据实际需求选择点动或者寸动。虚拟轴会自动计算末端工作点位于直角坐标系中的位置。

正解建立.2.webp

正解建立.3.webp

2.逆解建立

以Stewart六自由度并联平台的Frame67模型为例。先将机械手结构参数从某个Table起始编号依次存储到Table数组中,然后选择对应模型的轴列表,使用CONNREFRAME指令建立正解模式。

指令说明可通过RTSys软件菜单栏的【帮助文档】-【RTBasic帮助】-【索引】,在查找栏搜索CONNREFRAME即可查看。

'将机械手参数从编号TableNum开始依次存储到Table数组中
TABLE(Tablestart,rsmall,anglesmall,rlarge,anglelarge,initL,minL,maxL,PulesROneCircle,SmallX,SmallY,SmallZ,InitRx,InitRy,InitRz,position_error_table)
'选择轴列表
BASE(Axis_J1,Axis_J2,Axis_J3,Axis_J4,Axis_J5,Axis_J6) 
'建立机械手逆解
CONNFRAME(67,Tablenum,Axis_Vx,Axis_Vy,Axis_Vz,Axis_Vrx,Axis_Vry,Axis_Vrz)

若机械手逆解建立成功,关节轴 MTYPE(当前运动类型)将显示为33。【手动运动】界面操作虚拟轴方法同上。此时加工工艺指令只能操作虚拟轴,事先编辑好运动的轨迹在直角坐标系中运动(本文虚拟轴以轴6,轴7,轴8,轴9,轴10,轴11为例),关节轴会自动计算在关节坐标系中如何联合运动。

逆解建立.2.webp

逆解建立3.webp

???

程序编辑

RTSys软件支持basic,hmi混合编程,本例程采用basic结合hmi界面混合编程进行演示。可通过RTSys软件菜单栏的【HMI】-【工具箱】,选择空间进行拖拉摆放,设计交互界面。

程序编辑1.webp

在本次例程中均先在bas文件中定义全局的SUB子函数,编辑子函数的功能需求然后使用控件绑定,控件的动作均选择调用函数。操作流程如下图:

程序编辑2.webp

???

调试分析

1.将程序下载到控制器运行,点击RTSys软件菜单栏的【工具】-【插件】-【XPLC SCREEN】。

调试分析1.webp

2.待交互界面弹出后点击”机械手正解”。

调试分析2.webp

3.建立正解连接之后,打开正运动机械手仿真软件ZRobotView,点击“连接”弹出“连接控制器”窗口,然后选择连接控制器的方式(仿真工具支持串口和网口连接)。这里以网口连接为例,在IP栏选择控制器的IP然后进行连接。

调试分析3.webp

4.连接成功后,仿真工具上方会显示当前机械手类别,程序中存入Table中的机械手结构参数仿真工具也可以查看,且构建出相应参数的机械手模型。

调试分析4.webp

5.切换到RTSys编程软件,点击菜单栏的【工具】-【示波器】。待示波器窗口弹出后选择XYZ模式,从三维空间观察动作演示效果。数据源选择DPOS(规划位置),数据源编号选择虚拟轴轴号。示波器参数确认后,点击开始采集。

调试分析5.webp

6.切换到交互界面,在主界面机械手模式选择“机械手逆解”,建立逆解模式。然后点击“启动”,进行Stewart六自由度并联平台运动展示流程。

调试分析6.webp

7.切换到RTSys软件的示波器界面观察Stewart六自由度并联平台在空间坐标系中的运动效果。

调试分析7.webp

教学视频请点击→EtherCAT运动控制器Stewart六自由度并联平台应用

完整代码获取地址

EtherCAT运动控制器Stewart六自由度并联平台应用二维码.webp

本次,正运动技术EtherCAT运动控制器Stewart六自由度并联平台应用,就分享到这里。

更多精彩内容请关注“正运动小助手”公众号,需要相关开发环境与例程代码,请咨询正运动技术销售工程师:400-089-8936。

二维码.webp

正运动技术专注于运动控制技术研究和通用运动控制软硬件产品的研发,是国家级高新技术企业。正运动技术汇集了来自华为、中兴等公司的优秀人才,在坚持自主创新的同时,积极联合各大高校协同运动控制基础技术的研究。主要业务有:运动控制卡_运动控制器_EtherCAT运动控制卡_EtherCAT控制器_运动控制系统_视觉控制器__运动控制PLC_运动控制_机器人控制器_视觉定位_XPCIe/XPCI系列运动控制卡等等。

版权所有 工控网 Copyright©2026 Gkong.com, All Rights Reserved