开放式结构的数控系统具有典型的优势,即具备良好的可移植性、可扩展性以及互换性等,能够辅助开发人员基于短暂时间范围内开发出符合生产工艺要求标准的数控系统。为了提升数控系统的可重用性,同时提升系统的开发效率,本文提出了建立基于TwinCAT的开放式数控系统平台(BTCNC),同时进行综合分析、规划开发平台选择、任务优先级设计以及功能模块划分、实时性设计等,落实平台的开发。
1 系统总体设计方案
在软件开发平台方面,按照不同的软硬件结构,可以划分开放式数控系统开发平台为不同的结构形式,本文选取的开发平台是纯PC型。TwinCAT为工业控制软件,建立在PC技术基础上,在Microsoft Visual Studio平台集成,工程师在进行编程的过程中,为了将程序的可复用性、可读性提升,可实施面向对象的技术,包括属性、继承、接口以及方法等。TwinCAT软件开放性特点显著,构成的部分涉及诊断和配置平台、Runtime内核、PLC编程平台等,各语言编写功能块能实现数据的互相交换以及调用,而且此环境中也集成了TwinCAT System Manager,其可以组态软硬件,仅要一个软件,即可实现配置、诊断、编写全部的项目,给用户开发提供明显的便捷性。
在设计硬件平台方面,数控系统形成的开放性特点,对硬件设备也提出了相应的要求标准。为了确保系统开放性的充分实现,硬件平台的开放性具有重要的作用。在此开放式硬件平台上,用户可增减设备,在软件平台上也可灵活地增减功能,不对应用产生影响。硬件平台的实时性、易连接性均较优越。
2 实现BTCNC系统的关键技术探究
2.1 BTCNC系统的控制器技术
基于微软的Visual Studio实施开发整个软件,也涉及TwinCAT,NET平台。TwinCAT PLC进行内部算法,实现部分编写,C#进行人机界面编写,两者分别是实时核、非实时核。传统控制系统中PLC,NC跟PC均是独立的,TwinCAT软件把PLC,NC当作协处理器卡,在PC内集成,I/O模块、驱动跟IPC进行连接,提供给开发系统便捷性。同时,BTCNC系统采取控制器运算,控制器执行速度显著高于传统形式,大大减少了系统运行大量程序的完成时间。
2.2 BTCNC系统的模块化设计
在开放式数控系统中,模块化属于一种基本特征,为控制器产品的可重用基本单元。划分模块时,不仅要考虑模块实现的独立性,而且应该确保划分具备适中的粒度,防止出现较差的可重用性。设计BTCNC系统模块实施面向对象的举措,分解结合的方式就是层级式组织、功能分类,涉及的基本功能模块如图1所示。BTCNC系统在设计模块期间,按OMAC体系进行,涵盖了以上的各模块内容,建立起完整的系统框架。
图1 BTCNC的模块化结构
OMAC并未具备固定的结构,不关联于软硬件平台,不具备响应的操作系统标准。模块化接口设计的协议就是OMACAPI,涉及不同粒度、类型插件,各构件经接口同外界之间顺畅地交互数据信息。模块间通信实施客户机/服务器模式,其中TCNC系统内HMI就是客户机,服务器就是TwinCAT。
2.3 BTCNC系统的实时性设计
数控系统属于实时性多任务控制系统,实时性存在明显的强弱性,并且能够明显地影响工件加工质量、刀具应用年限等。数控系统具备实时的特征,使得开发建立在PC基础上的数控系统同样要有此特点。当下DOS操作系统、基于Linux的实时操作系统、嵌入式操作系统以及Windows实时扩展操作系统,属于应用频率较高的实时操作系统。开发BTCNC系统的TwinCAT是Windows实时扩展操作系统,BTCNC系统平台应用期间,可按照用户提出的精度标准,结合算法繁杂性,于TwinCAT上合理地调节循环周期,插补周期、采样周期默认状态都是1ms。BTCNC系统平台在硬件设备上采取数据采集I/O端子、EtherCAT现场总线(实时以太网总线),以分布式时钟同步节点。EtherCAT总线能产生纳米级精度,系统抖动比1μs小很多。
2.4 BTCNC系统的任务优先级设计
TwinCAT属于实时控制器,具有多种任务,一台PC上能够建立的PLC是4个,各PLC能够形成Task4个,一共可建立16个。每一Task能够依照实际的需求,建立起相应的循环时间、优先级,对不同CPU进行分配,同时调节CPU占比。除此之外的CPU展开运算Windows操作系统以及HMI。
BTCNC系统的任务较多,主要总结为6个方面。第一,HMI,其属于命令发出的前端,涵盖按钮事件、时钟事件,具有非实时性的特点。Windows系统内进程包括HMI,相较于TwinCAT平台的任务优先级来说,其默认任务优先级更低;第二,任务管理器,接收HMI命令,按照实时状态实施任务的分配,另外的任务获得数据资料,明确有无要执行的需要,因此,其在编写任务中具有最高优先级;第三,辅助功能管理,包括辅助功能模块,通过TwinCAT PLC自身模块接收执行命令,实施监测、反馈状态信息,具有较低的优先级;第四,插补器,其
属于数控系统的关键构成,处于核心位置,实施速度控制以及插补算法等,具备较高的实时性要求;第五,NC-Task SAF,此任务内,TwinCAT NC设定加速度、轴位置、明确方向等,具有较高的优先级;第六,NC-Task SVB,于TwinCAT NC内规划全局路径,具备优先级分配、循环周期。
3 结语
BTCNC系统平台能够对很多种算法进行及时验证准确度,主要是加减速控制算法、译码算法、插补算法等。BTCNC系统模块一方面具备较好的可读性、可移植性,另一方面可以有效集成BTCNC的模块。另外,BTCNC系统可以确保算法准确、精度较高,而且实时性较好,可靠度较高。
参考文献
[1]胡胜良.开放式数控系统平台的设计与开发分析[J].建筑工程技术与设计,2017(20):3937.
[2]黄振庭,刘建群,程帅,等.基于UMAC的高精密机床开放式数控系统的开发[J].组合机床与自动化加工技术,2019(10):57-59.
[3]张海浪,舒志兵,郑之开.基于开放式数控系统的辅助控制系统设计[J].组合机床与自动化加工技术,2017(1):82-84.
[4]王谦.一种开放式数控系统的组建路线研究—以GUC运功控制器为平台[J].智富时代,2018(7):152.
[5]杨军.开放式数控系统教学与创新设计综合平台研究[J].南方农机,2019(1):115.
[6]李传军,王国永.复杂曲面插补技术在开放式数控系统平台加工实现[J].科技创新导报,2018(5):1-3.
[7]赵盛烨,吴文江,佟敏,等.基于改进MFAC的智能数控系统设计与实现[J].吉林大学学报(信息科学版),2020(2):160-171.
[8]胡晓.关于开放式数控系统的标准化探究[J].科学与信息化,2019(17):32-35.
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/170939.html