随着电子系统的功能愈发强大、完备,软硬件协同开发设计技术,越来越受到
人们的重视,逐渐常态化,其在系统目标要求的指导下,综合分析系统软硬件功能
及现有资源,充分发挥两者的优点,使其达到最佳的状态。要想设计工作台的运动
控制系统,必须了解清楚机床工作台需要完成哪些运动,以及这些运动控制的实质。
笔者将线切割床身的运动大致归纳为以下种类:
1)回零与限位,回零与限位运动都是工作台的保护、定位运动,可以通过设
置机械原点与限位开关的方式,完成这两种运动,一般机床床身都有这两种装置,
要实现该种运动的控制,就需将原点与限位信号给到软件主控系统。
2 )机床工作台运动可分为定长、定点、定速等运动模式,实现方式有点动方
式与连续运动的方式,这些运动模式一般用于机床的测试,其实质是对步进电机控
制的测试,要完成这些运动的控制,驱动层需要有良好的驱动代码储备。
3 )机床工作台启停、加减速及切割运动,这三类运动是线切割机床运动控制
的重难点,加工过程中,机床工作台启停,加减速与电极丝相对运动的切割运动,
这些因素直接决定加工的质量。这些运动的完成,既是控制步进电机的启停、换向、
加减速以及插补运动。
4.3.2 线切割软件 CAM 功能实现
在 VS2005 中使用 PB6.0 插件搭建好 Windows CE 的开发环境后,新建一个名为
CAWEP 的新项目,选 VC++ 智能设备中的中的 MFC 智能设备应用程序后,会弹出
程序向导,在选择程序运行库函数平台 SDK 与程序类型后,在解决方案管理器中可
以看到 CAWEP 项目,将现有的头文件,源文件,资源文件都复制到新建 CAWEP
项目中,修改部分 Windows CE 不兼容的函数后,之后可在 VS2005 中生成移植的
软件,在菜单栏生成项目,即可生成文件。
生成结果成功后,可在 release 文件夹下,找到可执行的 CAWEP.EXE 文件,可
将 CAWEP.EXE 文件烧写到运行 Windows CE 的开发板中运行。本文在搭建开发环
境是安装了 CE 模拟器,只需将生成 CAWEP.EXE 文件部署到模拟器中,部署完毕
之后,在菜单栏调试选项中,完成调试成功执行,就可以得到软件运行的实况模拟,
在软件开发过程中时,使用模拟器模拟软件在硬件中的运行,是最好的调试与优化
软件的方式,软件运行如图 4-3 所示。
在移植完成之后,对 CAM 功能进行开发之前,需要对 CAWEP 程序结构深入
了解,并结合 VS2005 集成开发功能进行软件 CAM 功能的研发。熟练学习掌握
VS2005 的使用方法,以及良好的 C/C++ 语言知识,可帮助加快开发的进度。在资源
视图中的 CAWEP.rc 文件夹下归类整理了 CAWEP 的各类资源: Dialog 文件夹其中
包含了已有所有的对话框,可以查看各类定义与修改按钮功能,我们新添加的控制
模块对话框,也在该文件夹下建立,可通过对应的对话框按钮,在源 文件中 找到相
应的对话框定义,编辑开发代码; Menu 文件夹下是软件的主界面设计,及相关的
预留接口,在软件主界面的预留接口下,嵌入所设计开发的模块,并完成定义,即
可添加功能。图 4-4 为软件系统开发主界面。
在 VS2005 下的 Win CE6.0 开发环境中,添加新的 CAM 功能的流程是:先在
Menu 主界面下,找到对应接口并为接口命名,新建接口后完成相关的设置与定义,
会生成新的类库与 MFC 框架,统一命名新生成函数的 IDD ,在后续开发中,方便
修改源码,更新与调试软件功能。在 Dialog 文件夹下可找到在新建的 MFC 框架,
此时通过工具箱工具,设计想要的控制界面,双击控制组件可在源文件夹与头文件
夹下生成对应的程序源码框,我们只需在源文件与头文件中针对不同的功能按钮进
行开发即可。
上一节我们分析了机床运动类型控制的需求,对于回零与限位的控制,机床床
身一般有限位开关与零点定位的传感器,只需将接入对应的硬件接口,即可完成对
应的控制。定长、定点、定速等运动模式,都是控制机床 X 轴与 Y 轴以不同的方式
运动距离,属于运动控制的检验与调试阶段,完成这些运动功能,是实现连续自动
运动控制的首要一步,我们将测试功能作为一个独立界面,加到原有软件中,实现
该部分的功能,称之为运动测试。
在主界面的 Menu 选项中,我们新建了一个名为打开连接的名为打开连接连接
的按钮,并将生成的源文件命名为 MyOpenNet.cpp ,建立了对应的 MFC 框架,新
建 MFC 框架中每个按钮都在 MyOpenNet.cpp 中有定义,完成对应的功能开发即可。
针对测试功能界面,设计了如图 4-5 所示的控制界面,可在图示的输入窗口输入相
关参数,完成运动功能的检测,本窗口界面实现了运动控制器连接, X-Y 运动检测
及直线与圆弧插补运动检测的功能。
完成界面设计后,即可在对应源码文件下进行开发,将运动控制器支持的库文
件,加载到 CAWEP 开发环境中中,即可使用库中所提供的 API 进行对应功能的开
发。在加载库的过程中,路径的配置对应用程序软件的生成有一定的影响,在完成
配置之后,即可开始对应功能的代码开发。指定两轴作相对位置圆弧插补函数
C45CE_rel_arc_move(u16 *axis,long*rel_pos,long *rel_cen, u16 arc_dir); ,编写入口参
数即可完成指定两轴的圆弧插补,功能实现源码如下图 4-6 所示。
运动控制器的函数库提供了常见运动功能的函数调用命令,我们选择调用 X-Y
轴的运动控制函数,直线圆弧插补函数,源码编译完成之后,点击生成按钮,即可
生成可执行的 EXE 文件。在生成过程中,如果运动控制器的函数库是通过路径调用,
最后执行的时候,要将 EXE 文件与函数库的 DLL 文件放在一个文件夹下,如果是
将库文件加载到源文件中,生成的 EXE 文件即可执行,将生成的可执行文件加载到
运行 Windows CE 系统的开发板中的实况如图 4-7 所示。
在完成运动检测模块的开发,对其进行验证之后,我们进一步完成线切割运动
控制模块的开发。与运动侧测试不同,运动控制需要连续自动的运动,而不是点控
的运动,开发该模块功能,我们需要了解软件的数据储存的原理及运动原理。步进
电机接收到一个命令就运动一个固定的位移,所以想从软件内部实现真正的 CAM
功能,需要在完成工程图相关处理之后,将储存工程图信息的数据,给到运动控制
函数,使得每一个对应的位置数据可以得到一个对应的运动。
软件在用户绘制、编辑完工程图纸之后,完成相关的设置,工程图的信息以圆
弧或者线段的形态存在,并与其位置信息一同存储在 CTypedPtrlist 类中,我们需要
使用的所有数据都在该类中。 m_tracklist 是定义的一个全局变量链表,用来储存当
前需要调用的数据信息,我们定义函数先找到数据链表的头位置,然后使用循环判
断内部数据的类型(直线或是圆弧)和数据的数量(加工轨迹的条数),将最后判
断的数据类型传递给硬件调用函数,即可完成数据的连续导入,从而完成运动的连
续控制。图 4-8 为数据调用实现的部分代码。
将工程图纸生成的数据信息,连续且完整的调用给运动控制函数,使得运动可
以连续完成,是实现自动化控制最关键的一步。本控制软件的功能实现,在硬件功
能指引下,软硬结合开发出适宜于线切割机床的运动控制功能,从软件内部完成数
据传,达到了从数据生成到加工运动的一体化,真正意义上是实现了电火花线切割
机床的 CAM 功能。完成 CAM 功能代码的初步编辑之后,将生成的可执行文件烧
写到控制主板下,控制系统在嵌入式平台上运行如图 4-9 所示。
4.4 本章小 结
本章完成了电火花线切割机床的 CAM 功能,实现了工作台运动控制的自动化。
我们软硬结合的角度出发,分析了先要完成真正意义上线切割自动化的功能需求;
分析了软件层面需要实现的功能,及运动控制类型的分类;介绍了软件开发开发工
具及开发流程;最后在硬件控制的需求下,完成了软件的开发,实现了线切割机床
运动测试与运动控制,基本满足了自动化控制的需求。