一种双PC机架构的EtherCAT总线控制系统

文档序号:6907 发布日期:2021-09-17 浏览:45次 英文

一种双PC机架构的EtherCAT总线控制系统

技术领域

本申请涉及自动化控制

技术领域

,更具体的说,特别涉及一种双PC机架构的EtherCAT总线控制系统。

背景技术

在自动化控制领域中,基于PC的纯软件控制系统逐渐成为主流,但市场上的产品普遍是采用单一的Windows操作系统并在其上搭载相关控制系统软件这一数控系统实现形式。Windows系统因在人机交互方面具有较强友好性而适合数控系统操作界面软件HMI的运行,而对于具有实时性要求的运动控制内核而言,Windows系统的非实时性和不稳定性决定了它不可能运行运动控制内核。现有的普遍解决方法是Windows系统上再构建一个实时内核来运行运动控制内核,但是,该技术会加大系统的软件复杂度,而且Windows系统的不稳定性还是会对实时系统的运动控制内核产生不可控的影响,另外几乎所有基于Windows系统的实时内核+EtherCAT主站开发套件都属于收费软件,软件成本较高。再者就是单PC机形式的数控系统在分离式控制电柜的机床上会增加结构和布线的设计与材料成本。

发明内容

本发明的目的在于提供一种双PC机架构的EtherCAT总线控制系统,解决了实时系统的运动控制内核容易产生不可控的影响的问题,确保运动控制内核插补计算达到硬实时性的要求,以保证机床加工的高精度和高可靠性。

为了解决以上提出的问题,本发明实施例提供了如下所述的技术方案:

一种双PC机架构的EtherCAT总线控制系统,

包括第一PC机、第二PC机和若干EtherCAT从站模块;

所述第一PC机用于运行数控系统软件,将加工程序和工艺参数传输至第二PC机,所述第二PC机对所述第一PC机传输的加工程序和工艺参数进行处理,生成控制指令,并将所述控制指令发送至所述EtherCAT从站模块,以使所述EtherCAT从站模块执行所述控制指令。

进一步地,所述第一PC机为操作端PC机,所述操作端PC机搭载有Windows系统,所述第二PC机为控制端PC机,所述控制端PC机搭载有Linux系统,所述操作端PC机通过TCP/IP协议将加工程序和工艺参数传输至控制端PC机,所述控制端PC机通过EtherCAT总线协议将所述控制指令发送至所述EtherCAT从站模块。

进一步地,所述Windows系统上集成有HMI软件,所述HMI软件以TCP/IP客户端的形式通过TCP/IP协议登陆和访问所述控制端PC机的服务器,所述HMI软件包括生产任务排列功能模块、加工工艺参数设置队列功能模块、机床运行状态监控功能模块。

进一步地,所述控制端PC机搭载有Linux操作系统和Xenomai操作系统,所述Linux操作系统包括第一用户空间、第一内核空间和硬件层,所述Xenomai操作系统包括第二用户空间和第二内核空间。

进一步地,所述控制端PC机包括具有至少两个物理核的x86架构处理器硬件平台,以搭载Linux操作系统和Xenomai操作系统,所述Linux操作系统和Xenomai操作系统分别运行在不同的物理核上。

进一步地,所述第一用户空间设有TCP/IP服务器,所述第一内核空间设有网络设备模块和普通网卡驱动,所述硬件层设有第一网卡,所述TCP/IP服务器与所述网络设备模块进行通信,所述网络设备模块与所述普通网卡驱动进行通信,所述第一网卡搭载所述普通网卡驱动,用于接收和发送标准以太网数据帧,以实现与操作端PC的通信。

进一步地,所述第一内核空间设有EtherCAT主站模块、EtherCAT专用网卡驱动和Linux系统日志,所述EtherCAT主站模块用于实现整个EtherCAT总线通信,所述EtherCAT主站模块与所述EtherCAT专用网卡驱动进行通信,所述硬件层设有第二网卡,所述第二网卡搭载EtherCAT专用网卡驱动,用于接收和发送标准以太网数据帧,以实现与EtherCAT从站模块的通信,所述TCP/IP服务器通过所述Linux系统日志对所述EtherCAT主站模块的运行状态进行监控。

进一步地,所述第二用户空间设有运动控制内核和与所述运动控制内核件通信的共享内存,所述运动控制内核属于实时任务,用于对机床进行实时控制,所述实时控制包括路径规划、轨迹插补计算和机床控制指令数据刷新,所述共享内存与所述TCP/IP服务器进行通信,用于存储从TCP/IP服务器获取的加工程序和工艺参数,所述运动控制内核对所述加工程序和工艺参数进行处理,生成机床控制指令。

进一步地,所述第二内核空间设有RTDM接口、POSIX标准接口和Cobalt核,所述RTDM接口和POSIX标准接口与所述运动控制内核件通信,所述RTDM接口与所述EtherCAT主站模块进行通信,所述Cobalt核与所述RTDM接口和POSIX标准接口进行通信,所述运动控制内核调用Cobalt核提供的RTDM接口和POSIX标准接口刷新到所述EtherCAT主站模块,所述EtherCAT主站模将所述控制指令数据通过总线发送至所述EtherCAT从站模块,并使所述EtherCAT从站模块执行所述指令动作。

进一步地,所述EtherCAT从站模块选用EtherCAT总线伺服驱动器和EtherCAT总线IO模块,采用线型、星形的拓扑网络结构。

与现有技术相比,本发明实施例主要有以下有益效果:

一种双PC机架构的EtherCAT总线控制系统,采用双PC机的架构,双PC机之间只需连接一根网线即可实现数据通信,使系统具有广泛的适应性和高度的灵活性;同时,将用于运动控制的实时系统和用于用户操作的Windows系统进行硬件隔离,提高实时系统的实时性和稳定性。这一方式在分离式控制电柜的大型机床设备上具有强大的优势,解决用户控制台到远距离电柜之间布线昂贵复杂、数据传输不稳定等问题。实时系统采用开源免费的Linux+Xenomai操作系统,对硬件和软件平台进行专门的实时性优化,实时抖动保持在10us之内,使系统具有更高的加工精度。机床控制模块之间采用EtherCAT总线通信,大幅提高数据传输的准确性和可靠性,降低电柜的布线要求和成本。解决了实时系统问题,确保运动控制内核插补计算达到硬实时性的要求,以保证机床加工的高精度和高可靠性。将运动控制内核和EtherCAT总线通信搭载在能长期稳定运行的Linux系统上,避免Windows操作系统的不稳定性对运动控制内核和总线通信的影响,进而提高整个系统的稳定性。解决了Windows系统对实时系统产生的影响,如HMI、CAM或者CAD等对系统造成较大负载的用户操作软件和Windows系统易受软件病毒入侵而损坏数据等影响。

附图说明

为了更清楚地说明本发明的方案,下面将对实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例中双PC机架构的EtherCAT总线控制系统的系统框架示意图;

图2为本发明实施例中控制端PC机系统框架示意图。

附图标记说明:

1、操作端PC机;2、控制端PC机;3、EtherCAT从站模块;4、TCP/IP服务器;5、网络设备模块;6、普通网卡驱动;7、Linux系统日志;8、EtherCAT主站模块;9、EtherCAT专用网卡驱动;10、第一网卡;11、第二网卡;12、共享内存;13、运动控制内核;14、RTDM接口;15、POSIX接口;16、Cobalt核。

具体实施方式

除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本发明的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排它的包含。本发明的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。

在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。

本申请实施例提供一种双PC机架构的EtherCAT总线控制系统,

包括第一PC机、第二PC机和若干EtherCAT从站模块;所述第一PC机用于运行数控系统软件,将加工程序和工艺参数传输至第二PC机,所述第二PC机对所述第一PC机传输的加工程序和工艺参数进行处理,生成控制指令,并将所述控制指令发送至所述EtherCAT从站模块,以使所述EtherCAT从站模块执行所述控制指令。

为了使本领域技术人员更好地理解本发明方案,下面将参照相关附图,对本发明实施例中的技术方案进行清楚、完整地描述。

实施例

一种双PC机架构的EtherCAT总线控制系统,如图1和图2所示,

包括第一PC机、第二PC机和若干EtherCAT从站模块3;

所述第一PC机用于运行数控系统软件,将加工程序和工艺参数传输至第二PC机,所述第二PC机对所述第一PC机传输的加工程序和工艺参数进行处理,生成控制指令,并将所述控制指令发送至所述EtherCAT从站模块3,以使所述EtherCAT从站模块3执行所述控制指令。

本发明实施例中,所述第一PC机为操作端PC机1,所述操作端PC机1搭载有Windows系统,所述第二PC机为控制端PC机2,所述控制端PC机2搭载有Linux系统,所述操作端PC机1通过TCP/IP协议将加工程序和工艺参数传输至控制端PC机2,所述控制端PC机2通过EtherCAT总线协议将所述控制指令发送至所述EtherCAT从站模块3,如EtherCAT从站1……EtherCAT从站n。

本发明实施例提供的双PC机架构的EtherCAT总线控制系统,通过设置操作端PC机1和控制端PC机2,将用户操作功能和机床运动控制功能独立开来,分别在各自PC机上实现。在操作端PC机1(即运行Windows系统的PC机)运行HMI、CAM或CAD等数控系统软件,通过TCP/IP协议将加工程序和工艺参数传输给控制端PC机2,控制端PC机2接收到加工程序和工艺参数后计算出机床的控制指令数据,控制指令数据通过EtherCAT总线协议发送到机床的各个EtherCAT从站模块3,并使EtherCAT从站模块3执行相应的控制指令,最终完成用户对机床的操作控制。操作端PC机1和控制端PC机2之间只需连接一根网线即可实现数据通信,这一方式在分离式控制电柜的大型机床设备上具有强大的优势,解决用户控制台到远距离电柜之间布线昂贵复杂、数据传输不稳定等问题。控制端PC机2和EtherCAT从站模块3之间采用EtherCAT总线通信,保证数据的高速传输和稳定性,大幅提高数据传输的准确性和可靠性,保证机床的功能执行模块能准确按时完成接收到的指令动作,降低电柜的布线要求和成本。

在其他实施例中,操作端PC机1和控制端PC机2之间的通信协议还可以采用OPC UA协议,通过在控制端PC机1集成服务器、操作端PC机2集成客户端来实现数据通信。

本实施例中,所述操作端PC机1根据用户操作软件的负载大小选用不同处理器性能的通用工业一体式PC机硬件平台,搭载Windows操作系统软件平台。所述Windows系统上集成有HMI软件,所述HMI软件以TCP/IP客户端的形式通过TCP/IP协议登陆和访问所述控制端PC机2的服务器,所述HMI软件包括生产任务排列功能模块、加工工艺参数设置队列功能模块、机床运行状态监控等功能模块。

所述控制端PC机2包括具有至少两个物理核的x86架构处理器硬件平台,以搭载Linux操作系统和Xenomai操作系统,所述Linux操作系统和Xenomai操作系统分别运行在不同的物理核上。

所述控制端PC机2搭载有Linux操作系统和Xenomai操作系统,所述Linux操作系统包括第一用户空间、第一内核空间和硬件层,所述Xenomai操作系统包括第二用户空间和第二内核空间。

需要说明的是,为确保运动控制内核13任务的实时性能,必须选用两个或以上物理核的x86架构处理器硬件平台,以搭载Linux+Xenomai实时内核操作系统。Linux内核操作系统和Xenomai内核操作系统(称作Cobalt核16)分别运行在不同的物理核上,Cobalt核16至少需要分配一个物理核。如图2所示,控制端PC机2系统框架中的操作系统称作域,即图2中的Linux域和Xenomai域,每个域都有着各自的用户空间和内核空间。

所述第一用户空间设有TCP/IP服务器4,所述第一内核空间设有网络设备模块5和普通网卡驱动6,所述硬件层设有第一网卡10,所述TCP/IP服务器4与所述网络设备模块5进行通信,所述网络设备模块5与所述普通网卡驱动6进行通信,所述第一网卡10搭载所述普通网卡驱动6,用于接收和发送标准以太网数据帧,以实现与操作端PC的通信。

TCP/IP服务器4运行在Linux操作系统的第一用户空间,通过第一用户空间的网络设备模块5实现与操作端PC机1的数据通信,第一网卡10搭载普通网卡驱动6,负责实现标准以太网数据帧的接收和发送功能,以实现与操作端PC的通信。

所述第一内核空间设有EtherCAT主站模块8、EtherCAT专用网卡驱动9和Linux系统日志7,所述EtherCAT主站模块8用于实现整个EtherCAT总线通信,所述EtherCAT主站模块8与所述EtherCAT专用网卡驱动9进行通信,所述硬件层设有第二网卡11,所述第二网卡11搭载EtherCAT专用网卡驱动9,用于接收和发送标准以太网数据帧,以实现与EtherCAT从站模块3的通信,所述TCP/IP服务器4通过所述Linux系统日志7对所述EtherCAT主站模块8的运行状态进行监控。

EtherCAT主站模块8运行在Linux操作系统的第一内核空间,负责实现整个EtherCAT总线通信功能,通过搭载EtherCAT专用网卡驱动9的第二网卡11收发数据帧以实现与EtherCAT从站模块3的通信。此外,TCP/IP服务器4通过Linux系统日志7对EtherCAT主站的运行状态进行监控。

所述第二用户空间设有运动控制内核13和与所述运动控制内核13件通信的共享内存12,所述运动控制内核13属于实时任务,用于对机床进行实时控制,所述实时控制包括路径规划、轨迹插补计算和机床控制指令数据刷新,所述共享内存12与所述TCP/IP服务器4进行通信,用于存储从TCP/IP服务器4获取的加工程序和工艺参数,所述运动控制内核13对所述加工程序和工艺参数进行处理,生成机床控制指令。

所述第二内核空间设有RTDM接口14、POSIX接口15和Cobalt核16,所述RTDM接口14和POSIX接口15与所述运动控制内核13件通信,所述RTDM接口14与所述EtherCAT主站模块8进行通信,所述Cobalt核16与所述RTDM接口14和POSIX接口15进行通信,所述运动控制内核13调用Cobalt核16提供的RTDM接口14和POSIX接口15刷新到所述EtherCAT主站模块8,所述EtherCAT主站模将所述控制指令数据通过总线发送至所述EtherCAT从站模块3,并使所述EtherCAT从站模块3执行所述指令动作。

运行在Xenomai操作系统的第二用户空间的运动控制内核13属于实时任务,实现对机床的实时控制,主要包括路径规划、轨迹插补计算、机床控制指令数据刷新等功能。运动控制内核13通过共享内存12从TCP/IP服务器4获取操作端PC机1传输过来的加工程序和工艺参数等数据,计算出机床控制指令数据,再通过调用Cobalt核16提供的RTDM接口14和POSIX接口15刷新到EtherCAT主站,EtherCAT主站将机床控制指令数据通过总线发送给EtherCAT从站模块3并执行相应指令动作,最终实现对机床的控制。

Xenomai是一种开源的Linux内核强实时拓展,在搭建控制端PC系统时对硬件平台的BIOS和Linux内核启动参数进行实时优化设置,大幅提高系统实时性能。在BIOS设置中,关闭超线程和睿频选项,设定集显最大频率值等于硬件平台所支持的最小频率值。在内核启动参数中对多核CPU进行隔离,确保Linux任务不会调度到已隔离的CPU上,再将Xenomai绑定到已隔离的CPU上;还要进行中断隔离,让没被隔离的CPU去处理中断。

所述EtherCAT从站模块3选用EtherCAT总线伺服驱动器和EtherCAT总线IO模块,并且可采用线型、星形的拓扑网络结构。

EtherCAT从站选用EtherCAT总线伺服驱动器和EtherCAT总线IO模块,根据机床功能需求连接不同数量的伺服驱动器和不同功能的IO模块,并且可采用线型、星形等灵活的拓扑网络结构。伺服驱动器选用周期性同步位置控制模式,接收EtherCAT主站传输过来的位置指令,在伺服驱动器内部闭环控制电机完成对应位置指令。

本发明实施例提供的双PC机架构的EtherCAT总线控制系统,采用双PC机的架构,双PC机之间只需连接一根网线即可实现数据通信,使系统具有广泛的适应性和高度的灵活性;同时,将用于运动控制的实时系统和用于用户操作的Windows系统进行硬件隔离,提高实时系统的实时性和稳定性。这一方式在分离式控制电柜的大型机床设备上具有强大的优势,解决用户控制台到远距离电柜之间布线昂贵复杂、数据传输不稳定等问题。实时系统采用开源免费的Linux+Xenomai操作系统,对硬件和软件平台进行专门的实时性优化,实时抖动保持在10us之内,使系统具有更高的加工精度。机床控制模块之间采用EtherCAT总线通信,大幅提高数据传输的准确性和可靠性,降低电柜的布线要求和成本。解决了实时系统的运动控制内核13容易产生不可控的影响的问题,确保运动控制内核13插补计算达到硬实时性的要求,以保证机床加工的高精度和高可靠性。将运动控制内核13和EtherCAT总线通信搭载在能长期稳定运行的Linux系统上,避免Windows操作系统的不稳定性对运动控制内核13和总线通信的影响,进而提高整个系统的稳定性。解决了Windows系统对实时系统产生的影响,如HMI、CAM或者CAD等对系统造成较大负载的用户操作软件和Windows系统易受软件病毒入侵而损坏数据等影响。

显然,以上所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,附图中给了本发明的较佳实施例,但并不限制本发明的专利范围。本发明可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本发明的公开内容的理解更加透彻全面。尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本发明说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本发明专利保护范围之内。

完整详细技术资料下载
上一篇:石墨接头机器人自动装卡簧、装栓机
下一篇:工业料理设备的远程控制方法及其设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类