论文部分内容阅读
随着上世纪80年代开放式体系结构控制器设计思想的提出,以及计算机技术的快速发展,现代数控系统正向开放式软件化数控方向发展。同时软PLC技术的诞生以及可编程控制器IEC61131-3国际标准的推行,促使利用软件实现数控系统中逻辑控制PLC单元成了开放式数控系统研究的一个重要部分。分析并确定了开放式多轴软件化数控系统软硬件结构的实现方式。基于PC机,采用通用的Windows操作系统及RTX实时扩展以及遵循SERCOS协议的SoftSERCANS通讯卡搭建了开放式数控系统平台。该平台能实现控制器与驱动器及I/O设备间的高速串行通讯,实现软硬件的无关性以提高系统的开放性,整个系统成为运行在PC机上的一个应用软件。为了获得用户需要的开放式数控系统,本文在确立系统接口的基础上,还使用了一系列技术来实现系统的开放性:参考OMAC API协议、采用有限状态机模型以及应用SERCOS技术。系统功能采用面向对象的C++语言,在Windows操作系统和Visual C++的开发环境下,采用模块化方法开发而成。NC代码解释器采用编译方式译码,将代码信息翻译成可供插补模块执行的运动点坐标、速度以及PLC开关量等,翻译好的每一段代码信息作为一个节点放到一个双端队列里去。然后通过共享内存传递给插补模块以控制机床运动。本解释器实现了C型平面刀具补偿,并实现了固定循环指令、平面选择、坐标系选择、旋转、缩放、镜像、子程序调用等功能。丰富了指令系统,使之基本达到了普通数控系统水平。参照国际标准IEC61131-3,开发了一套完整的软PLC系统,该系统由编程开发系统和运行系统两部分组成。首先分析并确定了软PLC编程开发系统的功能和实现方法。编程开发系统划分为编辑模块和编译模块。编辑模块实现了梯形图编辑器和指令表编辑器,以及由梯形图到指令表的转换功能。编译模块由词法分析,语法分析,语义分析和目标代码生成四个部分组成,结合VC++及Lex和Yacc编译软件,开发而成,其输入代码为指令表语言,所生成的目标代码为能够在PLC运行系统上运行的C/C++语言代码或二进制代码。为开放式数控系统建立的软PLC多任务运行系统采用面向对象技术及模块化的思想构造而成,多任务机制使得系统能充分地实现PLC的各项功能;良好的多任务系统调度机制及数据封装技术和模块化等手段让系统协调、可靠地工作。实时插补功能是数控系统的核心,在复杂曲线直接插补方面,本文在数控系统中实现了一种自定义格式的双NURBS样条插补方法。不同于传统的线性插补和3轴NURBS样条插补,运用本文的样条曲线插补方法可以进行“曲线”级的5轴联动的复杂曲面加工。本文成功构建了一套功能较为完善的开放式软件化多轴联动数控系统。进行的相关实验验证了其功能。