一种基于EtherCAT的多轴同步控制装置和方法与流程

文档序号:11176362阅读:2627来源:国知局
一种基于EtherCAT的多轴同步控制装置和方法与流程

本发明涉及工业以太网及运动控制领域,特别涉及一种基于ethercat的多轴同步控制装置和方法。



背景技术:

传统的现场总线曾被广泛应用到控制领域中,然而这种特定协议设计的模式带来了控制系统的兼容性和速度问题。目前,现场总线的速率较低,最快的profibus总线速率只能达到12mb/s。此外,现场总线技术没有一个统一的国际标准,虽然协议开放,但不同协议的控制系统由于帧格式以及周期时间的差异不易兼容,不利于控制系统的开放性、分散性和可操作性。因此,具有高速率、高可靠性并且制定了通用国际标准的以太网被引入到工业自动化控制领域。工业以太网已经成为当前自动化控制研究的热点对象,并将逐渐取代传统的现场总线技术。

ethercat是一种流行的实时工业以太网协议,其具有高速和传输数据量大、效率高等特点,是目前传输速度最快的工业以太网协议,可以达到小于100us的数据刷新周期,可以用于伺服技术中底层的闭环控制。单个以太网帧最多可容纳1486个字节,整个网络最多可以连接65535个设备。ethercat协议的时钟同步技术基于ieee1588精确时钟协议,其从站时钟同步性能可以达到ns级,以工业pc作为主站的主从站同步可以达到us级。ethercat网络从站节点使用专用的控制芯片,主站使用标准的以太网控制器。

ethercat技术使得开发基于pc的多轴同步控制成为可能,可以应用于多机器人协同工作等领域。但目前国内的ethercat设备主要依赖进口,价格昂贵,且开放性低。



技术实现要素:

本发明的目的在于克服现有技术的不足,研制一套基于工业以太网ethercat的多轴同步控制装置及方法。采用此装置可以进行多轴同步算法的研究,如机器人运动控制算法的研究。

为达到上述目的,本发明采用如下的技术方案:

一种基于ethercat的多轴同步控制装置,包括机械本体部分,交流伺服驱动部分和控制部分:

所述机械本体部分包括:

支撑台架和若干安装在所述支撑台架上的交流伺服电机;

所述交流伺服驱动部分包括:

若干与交流伺服电机一一对应连接的交流伺服驱动器从站,所述交流伺服驱动器从站工作在同步位置模式下,用于按照获得的脉冲信号输出位置,并分别输出对应交流伺服驱动器的光电编码器值、角速度值、力矩值;

所述控制部分包括:

pc主站,通过网线与交流伺服驱动器从站连接,用于初始化ethercat网络、实现pc主站与交流伺服驱动器从站的主从站时钟同步、各交流伺服驱动器从站之间时钟同步、发送位置信号到各交流伺服驱动器从站、接收各交流伺服驱动器从站输出的各交流伺服电机的光电编码器值、角速度值、力矩值。

进一步地,所述支撑台架采用框架结构,该框架结构包括四条竖向支架、一上一下地水平设置在所述竖向支架上顶部平台和中部平台。

进一步地,所述支撑台架底部设置有四个使所述支撑台架移动的万向轮。

进一步地,所述交流伺服电机采用螺栓与所述支撑台架固定连接,所述交流伺服驱动器采用螺栓与所述支撑台架固定连接,交流伺服电机固定安装在所述支撑台架的顶部平面上,所述交流伺服驱动器从站固定安装在所述支撑台架的中部平面。

进一步地,所述交流伺服驱动器从站具有ethercat通信功能以及支持分布式时钟,每个交流伺服驱动器从站分别具有两个以太网端口:为端口0和端口1,所述端口0为数据输入端口,所述端口1为数据输出端口;每个交流伺服驱动器从站都为一个ethercat网络从站,所述pc主站仅与第一个交流伺服驱动器从站通过网线连接,其余交流伺服驱动器从站之间通过网线串联连接,所述交流伺服驱动器从站直接处理由端口0接收的数据帧,并从数据帧中提取或插入相关的数据,然后将该数据帧传输到下一个交流伺服驱动器从站,最后一个交流伺服驱动器从站发回经过完全处理的数据帧,并由所连接的第一个交流伺服驱动器从站作为响应数据帧将其发送给pc主站,每个数据帧都可包含多个子数据帧,可对交流伺服驱动器从站的多个寄存器同时进行操作。

进一步地,所述的pc主站包括:

交流伺服电机转动位置控制模块,用于输出位置控制信号,控制各交流伺服电机转至相应的位置;

绝对式编码器信号读取模块,用于通过标准以太网线,对交流伺服驱动器从站处理过的各交流伺服电机的绝对式编码器信号进行读取;

角速度信号读取模块,用于通过标准以太网线,对交流伺服驱动器从站处理过的各交流伺服电机的角速度信号进行读取;

力矩信号读取模块,用于通过标准以太网线,对交流伺服驱动器从站处理过的各交流伺服电机的力矩信号进行读取;

以太网网络数据帧输出模块,用于初始化ethercat网络,进行交流伺服驱动器从站之间的从站时钟同步、pc主站与各交流伺服驱动器从站之间的主从站时钟同步。

进一步地,所述pc主站为安装有intime实时操作系统和windows系统的工业pc机,所述intime实时操作系统与windows系统之间通过共享内存与邮箱进行通信与数据传输,通过以太网接口与网线连接各交流伺服驱动器从站,控制整个ethercat网络,最小采样周期为50微秒。

一种基于所述装置的多轴同步控制方法,包括以下步骤:

s1:pc主站配置各交流伺服驱动器的从站站点地址寄存器,配置邮箱通道参数,配置分布式时钟相关寄存器,实现各个交流伺服驱动器从站之间的时钟同步,并在接下去发送的每个数据帧中插入对各交流伺服驱动器进行时钟漂移补偿的子数据帧;pc主站对各交流伺服驱动器从站的状态控制寄存器进行写操作,使各交流伺服驱动器从站的当前状态转换为预运行状态,所述pc主站每1-3ms发送一个数据帧。

s2:所述pc主站使用邮箱初始化过程数据映射,所述初始化过程依次包括:pc主站使用服务数据对象(sdo)对各交流伺服驱动器从站的canopen对象字典进行读写、pc主站配置交流伺服驱动器的过程数据通信所使用的同步管理器(sm)通道、pc主站配置现场总线内存管理单元(fmmu);pc主站对各交流伺服驱动器从站的状态控制寄存器进行写操作,使各交流伺服驱动器从站的当前状态转换为安全运行状态;

s3:所述pc主站发送有效的输出数据帧,对各交流伺服驱动器的状态控制寄存器进行写操作,使个交流伺服驱动器从站的当前状态转换为运行状态;所述pc主站与各交流伺服驱动器从站进行主从站时钟同步。

进一步地,步骤s1中,所述配置分布式时钟相关寄存器,实现各个从站的时钟同步,并在接下去的每个数据帧中插入对各交流伺服驱动器从站进行时钟漂移补偿的子数据帧的步骤具体包括:

s11:以与pc主站连接的第一个交流伺服驱动器从站作为ethercat网络参考时钟,所述pc主站以及其他的交流伺服驱动器从站的本地时钟都与这个参考时钟进行同步;所述pc主站发送顺序读命令读取参考时钟的本地系统时钟寄存器0x910~0x917,计算使得高32位为0xffffffff所需的高32位时钟偏移,低32位时钟偏移为0;pc主站发送顺序写命令,写参考时钟的时间偏移寄存器0x920~0x927,使得高32位时钟为0xffffffff,低32位时钟保持不变;

s12:pc主站发送一个广播写命令数据帧,写所有交流伺服驱动器从站的端口0的接收时间寄存器0x0900,当数据帧由第一个交流伺服驱动器从站向最后一个交流伺服驱动器从站传输时,每个交流伺服驱动器从站的端口0锁存数据帧第一个前导位到达端口0时的本地系统时间,当数据帧由最后一个交流伺服驱动器从站向第一个交流伺服驱动器从站传输时,每个交流伺服驱动器从站端口1锁存数据帧第一个前导位到达端口1时的本地系统时间,具体对应关系为:设置为参考时钟的交流伺服驱动器从站的寄存器0x0900~0x0903中保存了数据帧到达端口0时的参考时钟tsys_ref时刻t1,寄存器0x0904~0x0907中保存了数据帧到达端口1时的参考时钟tsys_ref时刻t4;其他交流伺服驱动器从站n的时钟寄存器0x0900~0x0903中保存了数据帧到达端口0时的本地时钟tlocal时刻t2(n),时钟寄存器0x0904~0x0907中保存了数据帧到达端口1时的本地时钟tlocal时刻t3(n);

s13:读取所述时刻t1、t4、t2(n)、t3(n),通过以下公式计算其他交流伺服驱动器从站n低32位的时钟偏移toffset和传输延时tdelay:

t2(n)-t1=toffset(n)+tdelay(n)(1)

t3(n)-t4=toffset(n)-tdelay(n)(2)

联立公式(1)(2)可得:

tdelay(n)=[((t4-t1)-(t3(n)-t2(n)))]/2(3)

toffset(n)=(t2(n)-t1+t3(n)-t4)/2(4)

对于最后一个交流伺服驱动器从站,由于没有报文返回通过端口1,所以:

t2(n)=t3(n)(5)

从站系统时间为:

tsys_time=tlocal_time+toffset-tdelay(6)

总是假设交流伺服驱动器从站n的本地时钟小于参考时钟,所以,当交流伺服驱动器从站n的本地时钟大于参考时钟时,时钟偏移量的计算为:

toffset(n)=0xffffffff-(t2(n)-t1+t3(n)-t4)/2(7)

此时交流伺服驱动器从站n在高32位时钟偏移计算的偏移量要减1,因为在计算低32位时钟偏移量的时候使其向高32位时钟进位了;

当交流伺服驱动器从站n本地时钟小于参考时钟时,时钟偏移量的计算为:

toffset(n)=(t2(n)-t1+t3(n)-t4)/2(8)

接着pc主站发送顺序读命令,读各交流伺服驱动器从站的本地系统时间寄存器0x910~0x917,通过公式(3)计算各个从站本地时钟相对参考时钟高32位的时钟偏移量;

s14:pc主站发送设置写命令,除了参考时钟从站,把步骤s13计算所得的时钟偏移和传输延时写入各个从站的时间寄存器,包括时钟偏移寄存器0x920~0x927,和传输延时寄存器0x928~0x92b;在之后pc主站发送的每一个数据帧中,都包含了一个时钟漂移补偿子数据帧,这个子数据帧对第一个交流伺服驱动器的时钟寄存器0x910~0x917进行读多重写操作。

进一步地,所述pc主站与各交流伺服驱动器从站进行主从站时钟同步是使用ieee1588时钟同步协议进行同步,具体步骤包括:

s31:pc主站发送读交流伺服驱动器从站的系统时钟的数据帧;

s32:pc主站读取返回数据帧获得交流伺服驱动器从站的系统时钟t1,读取此时pc主站的系统时钟为t2;

s33:pc主站再次发送读交流伺服驱动器从站的系统时钟数据帧,记录此时pc主站的系统时钟为t3;

s34:pc主站读取返回报文获得交流伺服驱动器从站的系统时钟为t4,根据公式(9)~(12)计算pc主站的系统时钟与交流伺服驱动器从站的系统时钟的初始时钟偏移和数据传输过程的传输延时:

toffset=t2-t1-tdelay(9)

toffset=t3-t4+tdelay(10)

计算可得:

toffset=(t2-t1+t3-t4)/2(11)

tdelay=(t2-t1+t4-t3)/2(12)

其中toffset为pc主站时钟与参考时钟的时钟偏移量,tdelay为pc主站时钟与参考时钟数据传输的传输延时;

s35:pc主站在周期性发送的数据帧中插入读取交流伺服驱动器从站系统时钟的子数据帧;

s36:根据公式(13)计算pc主站时钟与交流伺服驱动器从站系统时钟的时钟漂移tdrift:

tdrift=tmaster-(tslave+toffset+tdelay)(13)

其中tmaster为当前pc主站时钟,tslave为参考时钟时间;

s37:若tdrift>0,pc主站系统时钟快于交流伺服驱动器从站系统时钟,减慢主站系统时钟运行,若tdrift<0,主站系统时钟慢于从站系统时钟,加快主站系统时钟运行;

s38:重复s35至s37。

本发明相对于现有技术具有如下优点和有益效果:

(1)本装置采用基于pc的控制器,实现了驱控一体化,利用pc强大的运算能力,可以实现复杂的控制算法。

(2)本装置采用了ethercat通信技术,具有传输速度快,数据量大,同步性能好,可与其他以太网设备及协议并存与同一总线,开放性好。

(3)本装置的实时模块运行于intime实时系统之上,结合工业以太网总线ethercat,控制系统采样周期最小可达到50微秒,运动插补周期最小可达到200微秒。

附图说明

图1是本发明基于ethercat的多轴同步控制装置总体结构示意图。

图2是本发明的软件结构示意图。

图3是本发明基于ethercat的多轴同步控制方法的人机交互界面。其中job工作区为类似于数控系统的编程方式,可进行movl(直线插补),movc(圆弧插补)等定义点与点之间的插补方式,techpoint工作区显示获取的示教点坐标。运行程序按键为运行多轴同步运动控制算法,writedata按键打印出多轴同步运动控制过程中每个轴在每个插补周期的位置、速度与力矩。

图中所示:1-支撑台架,2~9-伺服电机,10~17-交流伺服驱动器,18-pc主站。

具体实施方式

为了更好地理解本发明,下面结合附图对本发明作进一步地描述。

如图1所示,一种基于ethercat的多轴同步控制装置,包括机械本体部分,交流伺服驱动部分和控制部分:

所述机械本体部分包括:

支撑台架1和若干安装在所述支撑台架1上的交流伺服电机2~9;

所述交流伺服驱动部分包括:

若干与交流伺服电机2~9一一对应连接的交流伺服驱动器从站10~17,所述交流伺服驱动器从站10~17工作在同步位置模式下,用于按照获得的脉冲信号输出位置,并分别输出对应交流伺服驱动器的光电编码器值、角速度值、力矩值;

所述控制部分包括:

pc主站18,通过ethercat网络与各交流伺服驱动器从站10~17电路连接,用于初始化ethercat网络、实现pc主站18与交流伺服驱动器从站10~17的主从站时钟同步、各交流伺服驱动器从站10~17之间时钟同步、发送位置信号到各交流伺服驱动器从站10~17、接收各交流伺服驱动器从站10~17输出的各交流伺服电机2~9的光电编码器值、角速度值、力矩值。

具体而言,所述支撑台架1采用50*50的铝型材构建,采用框架结构,整体尺寸为800*400*690mm,该框架结构包括四条竖向支架、一上一下地水平设置在所述竖向支架上顶部平台和中部平台。

具体而言,所述支撑台架1底部设置有四个使所述支撑台架移动的万向轮。

具体而言,所述交流伺服电机采用螺栓与所述支撑台架固定连接,所述交流伺服驱动器采用螺栓与所述支撑台架固定连接,交流伺服电机固定安装在所述支撑台架1的顶部平面上,所述交流伺服驱动器从站固定安装在所述支撑台架1的中部平面。

具体而言,所述交流伺服驱动器从站具有ethercat通信功能以及支持分布式时钟,每个交流伺服驱动器从站分别具有两个以太网端口:为端口0和端口1,所述端口0为数据输入端口,所述端口1为数据输出端口;每个交流伺服驱动器从站都为一个ethercat网络从站,所述pc主站仅与第一个交流伺服驱动器从站通过网线连接,其余交流伺服驱动器从站之间通过网线串联连接,所述交流伺服驱动器从站直接处理由端口0接收的数据帧,并从数据帧中提取或插入相关的数据,然后将该数据帧传输到下一个交流伺服驱动器从站,最后一个交流伺服驱动器从站发回经过完全处理的数据帧,并由所连接的第一个交流伺服驱动器从站作为响应数据帧将其发送给pc主站,每个数据帧都可包含多个子数据帧,可对交流伺服驱动器从站的多个寄存器同时进行操作。

具体而言,所述的pc主站包括:

交流伺服电机转动位置控制模块,用于输出位置控制信号,控制各交流伺服电机转至相应的位置;

绝对式编码器信号读取模块,用于通过标准以太网线,对交流伺服驱动器从站处理过的各交流伺服电机的绝对式编码器信号进行读取;

角速度信号读取模块,用于通过标准以太网线,对交流伺服驱动器从站处理过的各交流伺服电机的角速度信号进行读取;

力矩信号读取模块,用于通过标准以太网线,对交流伺服驱动器从站处理过的各交流伺服电机的力矩信号进行读取;

以太网网络数据帧输出模块,用于初始化ethercat网络,进行交流伺服驱动器从站之间的从站时钟同步、pc主站与各交流伺服驱动器从站之间的主从站时钟同步。

具体而言,所述pc主站为安装有intime实时操作系统和windows系统的工业pc机,所述intime实时操作系统与windows系统之间通过共享内存与邮箱进行通信与数据传输,通过以太网接口与网线连接各交流伺服驱动器从站,控制整个ethercat网络,最小采样周期为50微秒。

在本实施例中,交流伺服电机2~9选用的是台达公司生产的ecma-ca0604rs型交流伺服电机,光电编码器为绝对型编码器,其额定电压220v,额定功率为400w,额定转速为3000r/min,额定转矩为1.27n.m,不带电磁制动器。相应的交流伺服驱动器从站10~17型号为asd-a2-0421-e,额定功率400w;所述支撑台架选用的是上海璐琥铝型材公司生产的5050w型工业铝型材及4590连接角件;环氧板可选用杰诺牌型号为jn-11999,厚度为10mm的环氧板,所述支撑台架的万向轮可选用上海璐琥铝型材公司生产的m8.100.500型万向尼龙蹄脚。

pc主站18选用的是安装有intime实时操作系统的工业控制机,其通过网线与交流伺服驱动器从站10~17通讯,交流伺服驱动器从站与正泰公司生产的1p,额定电流为10a的dz47-60c10空气开关直接连接。交流伺服驱动器从站10~17之间通过以太网线以串联连接的方式进行连接。

如图2和图3所示,一种基于所述装置的多轴同步控制方法,包括以下步骤:

s1:pc主站配置各交流伺服驱动器的从站站点地址寄存器,配置邮箱通道参数,配置分布式时钟相关寄存器,实现各个交流伺服驱动器从站之间的时钟同步,并在接下去发送的每个数据帧中插入对各交流伺服驱动器进行时钟漂移补偿的子数据帧;pc主站对各交流伺服驱动器从站的状态控制寄存器进行写操作,使各交流伺服驱动器从站的当前状态转换为预运行状态,所述pc主站每1-3ms发送一个数据帧。

s2:所述pc主站使用邮箱初始化过程数据映射,所述初始化过程依次包括:pc主站使用服务数据对象(sdo)对各交流伺服驱动器从站的canopen对象字典进行读写、pc主站配置交流伺服驱动器的过程数据通信所使用的同步管理器(sm)通道、pc主站配置现场总线内存管理单元(fmmu);pc主站对各交流伺服驱动器从站的状态控制寄存器进行写操作,使各交流伺服驱动器从站的当前状态转换为安全运行状态;

s3:所述pc主站发送有效的输出数据帧,对各交流伺服驱动器的状态控制寄存器进行写操作,使个交流伺服驱动器从站的当前状态转换为运行状态;所述pc主站与各交流伺服驱动器从站进行主从站时钟同步。

具体而言,步骤s1中,所述配置分布式时钟相关寄存器,实现各个从站的时钟同步,并在接下去的每个数据帧中插入对各交流伺服驱动器从站进行时钟漂移补偿的子数据帧的步骤具体包括:

s11:以与pc主站连接的第一个交流伺服驱动器从站10作为ethercat网络参考时钟,所述pc主站以及其他的交流伺服驱动器从站11~17的本地时钟都与这个参考时钟进行同步;所述pc主站发送顺序读命令读取参考时钟的本地系统时钟寄存器0x910~0x917,计算使得高32位为0xffffffff所需的高32位时钟偏移,低32位时钟偏移为0;pc主站发送顺序写命令,写参考时钟的时间偏移寄存器0x920~0x927,使得高32位时钟为0xffffffff,低32位时钟保持不变;

s12:pc主站发送一个广播写命令数据帧,写所有交流伺服驱动器从站的端口0的接收时间寄存器0x0900,当数据帧由第一个交流伺服驱动器从站10向最后一个交流伺服驱动器从站传输时,每个交流伺服驱动器从站的端口0锁存数据帧第一个前导位到达端口0时的本地系统时间,当数据帧由最后一个交流伺服驱动器从站向第一个交流伺服驱动器从站传输时,每个交流伺服驱动器从站端口1锁存数据帧第一个前导位到达端口1时的本地系统时间,具体对应关系为:设置为参考时钟的交流伺服驱动器从站的寄存器0x0900~0x0903中保存了数据帧到达端口0时的参考时钟tsys_ref时刻t1,寄存器0x0904~0x0907中保存了数据帧到达端口1时的参考时钟tsys_ref时刻t4;其他交流伺服驱动器从站n的时钟寄存器0x0900~0x0903中保存了数据帧到达端口0时的本地时钟tlocal时刻t2(n),时钟寄存器0x0904~0x0907中保存了数据帧到达端口1时的本地时钟tlocal时刻t3(n);

s13:读取所述时刻t1、t4、t2(n)、t3(n),通过以下公式计算其他交流伺服驱动器从站n低32位的时钟偏移toffset和传输延时tdelay:

t2(n)-t1=toffset(n)+tdelay(n)(1)

t3(n)-t4=toffset(n)-tdelay(n)(2)

联立公式(1)(2)可得:

tdelay(n)=[((t4-t1)-(t3(n)-t2(n)))]/2(3)

toffset(n)=(t2(n)-t1+t3(n)-t4)/2(4)

对于最后一个交流伺服驱动器从站,由于没有报文返回通过端口1,所以:

t2(n)=t3(n)(5)

从站系统时间为:

tsys_time=tlocal_time+toffset-tdelay(6)

总是假设交流伺服驱动器从站n的本地时钟小于参考时钟,所以,当交流伺服驱动器从站n的本地时钟大于参考时钟时,时钟偏移量的计算为:

toffset(n)=0xffffffff-(t2(n)-t1+t3(n)-t4)/2(7)

此时交流伺服驱动器从站n在高32位时钟偏移计算的偏移量要减1,因为在计算低32位时钟偏移量的时候使其向高32位时钟进位了;

当交流伺服驱动器从站n本地时钟小于参考时钟时,时钟偏移量的计算为:

toffset(n)=(t2(n)-t1+t3(n)-t4)/2;(8)

接着pc主站发送顺序读命令,读各交流伺服驱动器从站的本地系统时间寄存器0x910~0x917,通过公式(3)计算各个从站本地时钟相对参考时钟高32位的时钟偏移量;

s14:pc主站发送设置写命令,除了参考时钟从站,把步骤s13计算所得的时钟偏移和传输延时写入各个从站的时间寄存器,包括时钟偏移寄存器0x920~0x927,和传输延时寄存器0x928~0x92b;在之后pc主站发送的每一个数据帧中,都包含了一个时钟漂移补偿子数据帧,这个子数据帧对第一个交流伺服驱动器的时钟寄存器0x910~0x917进行读多重写操作。

具体而言,所述pc主站与各交流伺服驱动器从站进行主从站时钟同步是使用ieee1588时钟同步协议进行同步,具体步骤包括:

s31:pc主站发送读交流伺服驱动器从站的系统时钟的数据帧;

s32:pc主站读取返回数据帧获得交流伺服驱动器从站的系统时钟t1,读取此时pc主站的系统时钟为t2;

s33:pc主站再次发送读交流伺服驱动器从站的系统时钟数据帧,记录此时pc主站的系统时钟为t3;

s34:pc主站读取返回报文获得交流伺服驱动器从站的系统时钟为t4,根据公式(9)~(12)计算pc主站的系统时钟与交流伺服驱动器从站的系统时钟的初始时钟偏移和数据传输过程的传输延时:

toffset=t2-t1-tdelay(9)

toffset=t3-t4+tdelay(10)

计算可得:

toffset=(t2-t1+t3-t4)/2(11)

tdelay=(t2-t1+t4-t3)/2(12)

其中toffset为pc主站时钟与参考时钟的时钟偏移量,tdelay为pc主站时钟与参考时钟数据传输的传输延时;

s35:pc主站在周期性发送的数据帧中插入读取交流伺服驱动器从站系统时钟的子数据帧;

s36:根据公式(13)计算pc主站时钟与交流伺服驱动器从站系统时钟的时钟漂移tdrift:

tdrift=tmaster-(tslave+toffset+tdelay)(13)

其中tmaster为当前pc主站时钟,tslave为参考时钟时间;

s37:若tdrift>0,pc主站系统时钟快于交流伺服驱动器从站系统时钟,减慢主站系统时钟运行,若tdrift<0,主站系统时钟慢于从站系统时钟,加快主站系统时钟运行;

s38:重复s35至s37。

图3是本发明基于ethercat的多轴同步控制方法的软件的人机交互界面。其中job工作区为类似于数控系统的编程方式,可进行movl(直线插补),movc(圆弧插补)等定义点与点之间的插补方式,techpoint工作区显示获取的示教点坐标。运行程序按键为运行多轴同步运动控制算法,writedata按键打印出多轴同步运动控制过程中每个轴在每个插补周期的位置、速度与力矩。

软件包括非实时模块和实时模块,构成如下:

非实时模块采用microsoftvisualstudio2010平台开发。主要完成人机交互功能。包括启动和停止控制系统,控制控制系统单轴运行或者多轴联动。也完成数据的存储与输出的功能。

实时模块运行于intime实时操作系统之上。使用c/c++语言编程,用于运行控制算法,以一定的周期发送控制信号,补偿网络时钟偏移,接受交流伺服驱动器信号。

非实时模块与实时模块之间通过共享内存与邮箱进行数据共享与通信。

上述实施例为本发明较佳的实施方式,但本方明的实施方式并不受上述实施例的限制,其他的任何背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1