在系统地阐述了数控系统的构成、模块和任务的划分、功能的确定、加工控制的数据流程、数控软件结构的基础上,介绍了一种基于LabVIEw平台的上、下位机形式的数控系统的实现方法和途径。
近年来,随着PC机技术的迅速发展,与之原理及结构几近相同的工业Pc机的性能得到了快速的发展,这使得工业PC的软、硬件资源迅速丰富起来,而价格却大幅度降低,开发基于工业Pc机的数控系统,已成为机床控制领域研究的热点。
本课题研究一种基于PC和windows平台的,用于任意形状的二维零件加工的数控系统。数控系统硬件平台采用Pc+运动驱动卡,软件采用Windows98/NT平台,开发平台采用LabVIEW。本系统的研制成功,将全面提升该类数控系统的整机性能,提高性能价格比,是较为先进的数控系统。
1 系统的组成
系统的组成如图1所示,系统由上下位机两部分构成,上、下位机通过PCI或USB实现连接。这种方式下PC机只负责常规的系统管理和维护,而具体的数控系统的核心功能,则由运动控制卡直接实现。运动控制卡硬件直接控制电机的动作,从而解决了WINDOWS平台下计算机控制中经常碰到的实时控制问题所带来的困扰。本文简单介绍了基于这种思想和LabVIEW软件平台而开发的切割机数控软件系统。
2 LabVIEW简介
LabVIEW是NI公司的主打产品之一,是一种用图标代码来代替编程语言创建应用程序的开发工具,它使用数据流的编程方法来描述程序的执行,用图标和连线代替文本的形式编写程序。它具有较丰富的面板工具,可以快速开发出精美的控制界面,具有丰富的数据处理子模块,可以方便地进行多种数据处理进程,它还可与Visual C++进行交互,充分利用在C语言基础上开发的已有的软件资源。由于其语言上的特性,所以对编程者的要求没有传统计算机语言那样高,易于学习和使用。对于本系统而言,LabVIEW最为先进的技术是它具有多任务并行处理机制,使得系统开发人员可以轻松地实现在传统编程中难度较大的多任务并行处理。
其多任务并行处理实现的机理是:LabVIEW中存在一个任务队列,系统将要执行的一系列任务都在队列中存储,并根据所存在的任务的优先级决定下一时间片将要执行哪一项任务,直到所有任务被完成为止。在LabVIEw中可以通过VI设置对话框进行优先级设置,也可以通过调用wait()函数放弃cPu占用来实现。较传统的多任务实现而言,用LabVIEw的实现则更加简单和灵活。
另外,LabVIEw可以轻松实现系统编程的模块化,将系统的各个任务划分成多个子VI,由各个子VI实现各个模块的划分和开发,是较为理想的开发平台。