2025年04月21日 09:31:28 来源:东莞市宇匠数控设备有限公司 >> 进入该公司展台 阅读量:0
文章预览:
“pc +运动控制卡”作为行业中低成本、高性能、开发方法灵活、适应能力强的一种控制方式,广泛应用于各种数控领域中[12]。但随之也产生了许多问题,不同厂商的运动控制卡均集成了自己的运动控制指令,这些运动指令往往应用于运动控制系统的底层开发环境中,只有开发人员能够熟知并掌握,这就给之后使用该控制系统的操作人员带来了诸多不便[3]。该问题同样存在于目前所研制的3-PRS-XY串并联加工中心中,加工中心使用固高运动控制卡进行运动控制,由于控制语言不具有通用性,不利于加工中心的应用与推广。为了解决这种问题,就需要一套行业内的通用运动指令帮助操作人员实现对数控加工中心的控制。G代码作为数控行业内被广泛使用的语言,能够编写出简洁、高效的数控指令,实现丰富的数控加工中心运动控制[4_6]。
本文基于正则表达式,在VC++软件开发平台中,利用正则库的语法设计出能够应用于G代码和固高运动控制卡运动指令之间的代码解释转换算法,通过实现语句语法检查、数据提取转换、运动指令调用等功能,实现通过输人G代码完成对数控加工中心的控制,研究内容对3-PRS-XY串并联加工中心的数控系统开发提供理论指导。
1并联加工中心制系统
目前所研制的3-PRS-XY型串并联加工中心的控制系统采用“PC +运动控制卡”模式,该结构利用PC上的串口连接外部的运动控制卡,通过编程调用封装在运动控制卡内的各种运动指令,并通过连接在运动卡另一侧的PCI总线控制伺服电机控制器和步进电机控制器,利用控制器完成对电机的控制,从而带动机构各部件运动。根据所描述的运动控制原理可知,在PC与运动控制卡的通讯之间,建立一套G代码与控制卡运动指令的转换机制,即可实现通过G代码控制整个机构运动。如图1所示为3-PRS-XY型串并联加工中心的运动控制系统控制原理。
2 正则表达式
正则表达式通过建立一个“字符串”作为描述语句的规则来验证另一个“字符串”是否符合该语句所制定的规则,例如表达式“ab + ”所描述的语法规范为一个“a”和任意个“b”所组成的一条字符串,若所给出的字符串符合该规则,则编译通过;若不符合则可进行报错处理[7 8]。根据正则表达式的这一特性,对G代码编译器的检查纠错功能进行设计,在此基础上对整个编译过程进行开发。
本文采用来自于Boost扩展库下的regex正则库进行正则表达式相关功能的开发。Boost库具有丰富的外接扩展类,且能够很好兼容C++各种开发环境。将boost文件夹下生成的regex动态链接库和静态链接库分别添加至VC6目录下,然后在所建工程中调用“〈boost/regex, hpp > ”头文件便可在工程中利用regex库进行相关编程。
备注:为保证文章的完整度,本文核心内容都PDF格式显示,如未有显示请刷新或转换浏览器尝试!
结束语:
根据已有的3-PRS-XY型串并联加工中心控制系统硬件构成与所支持的软件开发机制,结合VC ++ 6. 0开发环境下的MFC、Boost扩展库下的Regex正则表达式库、固高运动控制卡内封装的运动控制函数、Teechart类的图表绘制函数,对数控G代码解释器进行了设计与开发。经过试验验证,本文设计开发的G代码解释器能够对机构进行运动有效控制,对基于工控机和运动控制卡的开放式数控系统开发具有一定实用价值。