1 需求分析
- 传统经济型数控机床存在的问题
- 传统经济型的数控加工设备按数控系统分类主要有:FANUC系统(其中包括3T、7M、HC-6、6MB等)、AB公司系统、国产3B线切割系统等:按数控程序输入/输出通讯接口类型分有三类:一类为仅有RS232/RS422串行口,二类为仅有纸带阅读机8/5单位并行口,三类同时包括前两类接口。这三类机床同时还存在同样的问题就是:内存容量较小,不适应复杂、大型面、高精度、长程序零件的加工:它们的对外接口能力差,没有DNC功能,不能实现在线加工以及网络控制等问题。
- 希望的解决方案
- 本着满足最基本的应用需求、且留有一定的可扩充性及性能提高的潜力的前提,来改善数控加工技术应用环境。就此提出了以下解决方案:机床通讯接口的硬件改造,针对各类机床设计相应的通讯接口板卡:通讯控制软件的开发,以实现各机床的单机通讯功能:开发其它辅助功能(如:数控程序中加工信息的提取、数控程序图形模拟、长程序的在线加工等),弥补和增强原数控系统功能:网络体系的选择与通讯协议的定义及网络系统控制软件的开发,实现数控程序的中央服务器集中管理和网络通讯。
2 系统结构
- 网络系统构成及功能整个网络系统是由中央服务器、网络接口、双向数据转换器、现场服务器、1分N口并行数据收发器、数据接收器以及经济型数控机床等组成。网络系统的系统构成示意图见图1。系统工作方式为客户/服务器方式。
图1 网络系统构成示意图- 中央服务器是整个网络的中枢部分,它主要完成的是对各级服务器的整体控制。它采用后台中断工作模式,不需要人的干预,而且其前台还可以进行其他工作。
- 现场服务器是客户端,既担任起数控服务器的功能,又具有强大的网络通讯功能,它接受中央服务器下达的各项任务:从网络上获取由中央服务器传来的数控加工程序的数据信息,并把这些数据信息传送到NC文件库:将已加工过的数控程序反馈到中央服务器。能从系统的NC文件库中提取相应的数控代码,并从中提取有关的加工零件数据和信息,对其进行处理,实现NC程序的图形模拟等工作。另外,对需用长程序的零件加工,现场服务器还完成长程序的在线加工任务。
- 现场服务器可同时服务于多台数控设备,根据需要在车间一定的空间范围内(比如:一个小的工作间,一个小的局部区域)设置网络节点,放置一台PC机作为现场服务器,一台服务器根据实际需要靠选用1分N口并行数据收发器来服务于多台数控设备。
- 系统网络体系结构及通信协议的选择
- 系统中的各种信息都是通过网络来传输的。在计算机网络发展上,影响较大的网络体系主要有:OSI七层参考模型和TCP/IP体系结构模型。OSI参考模型是ISO7498国际标准。TCP/IP体系结构是当前流行的Internet网络所使用的体系结构,尽管它不是国际标准,但在计算机网络体系结构中却占有非常重要的地位。这是因为虽然OSI的体系结构从理论上讲比较完整,其各层协议也考虑得很周全,但事实上,完全符合OSI各层协议的商用产品却极少进入市场,远远不能满足各种用户的需求。然而使用TCP/IP协议的产品却大量涌入市场,几乎所有的工作站都配有TCP/IP协议,并已成为计算机网络事实上的标准,通称“工业标准”。为此,我们在数控机床的网络通讯系统中,采用的是TCP/IP的网络体系结构,该体系把计算机网络分为四层,即应用层、传输层、网络层和网络接口层。
- TCP/IP体系结构为传输层制定了两种协议即:传输控制协议(TCP)和用户数据包协议(UDP),UDP为用户提供进程无连接的数据报协议,数据包以独立包的形式传送,服务不提供无错保证,数据可能丢失、重复或失序:数据包的长度也受一次处理最大长度的限制(默认值为8192字节,最大值为32768字节),不进行包的拆分和重组操作:而TCP协议是一个可靠的全双工的字节流的面向连接的协议,TCP和UDP相比传输可靠、数据无差错、无重复,可按发送顺序接收,数据为字节流,其长度不受限制,为用户提供虚电路服务,并为数据的可靠传输提供检验。根据数控加工的特点,尽管数据包在传输量小于2048个字节时UDP可靠性更好,但数据包服务是单包、无序传送,而系统的网络通信显然不能保证所有传输的信息都小于2048个字节,因此,只能选用TCP作为系统的传输层协议。
- 应用层的通讯协议的选择既要考虑到数控加工的特点又要具备实时性、可靠性以及数据传输量大等特点。本系统另行开发了基于TCP/IP协议族的相应协议,制定了应用进程之间传输的信息的特殊含义。
- 通讯协议的实现
- 系统协议,就是保证客户端和服务器端的应用线程之间能相互准确、及时、有序地传送信息,并能彼此毫无差错地对信息进行语法分析和解释。
- 对于网络控制系统,其传输信息有自己独特的含义。在客户端和中央服务器间传递的信息,主要有客户端的请求信息、数据信息和中央服务器端的状态信息。
- 客户端的控制信息又分为两种:网络控制信息和加工控制信息:服务器端的状态信息也分为两种:连接状态信息和客户端的状态信息。
- 在系统的协议中,这些信息都规定了相应的格式规范,客户端的网络控制信息主要用于与服务器连接的建立、维持和释放。加工控制信息由控制命令字、控制参数组成。网络通讯协议格式为:“cmd,1byte命令代码,1byte命令长度,命令参数,4字节的校验码(XC)”。‘cmd’为命令引导码,用以标识命令的开始:‘命令长度’只包括命令参数及校验码的长度。若无命令参数,则为4,校验码将无意义也不被检验,但还是必须发送。
- 传输的数据包的末尾4字节为校验码。前3字节为该包的所有字节的和,第4字节为所有字节的异或值。若发送过程中有数据发生错误,则第4字节的校验码一定不正确。因此,靠监测第4字节校验码来保证通讯数据的可靠性。
- 中央服务器是整个网络的中枢部分,它主要完成的是对各级服务器的整体控制。它采用后台中断工作模式,不需要人的干预,而且其前台还可以进行其他工作。
3 硬件设计原理
图2 数据接收(收发)器基本原理图
4 软件开发原理
- 网络控制系统控制软件的开发原理
- 网络控制系统的控制软件安装于中央服务器中,其设计原理是:中央服务器不停地接收并分析从各端口送来的请求、命令、信息等数据包。当一个数据包接收完毕后,它将首先通过包中的校验码进行验证该包在传送过程中是否出错。若出错,它将发出“重发”命令给原发客户端:若正确则进行相应的处理。
- 现场服务器与各类机床的通讯软件开发原理
- 针对各类机床与现场服务器的通讯,软件开发的基本原理是:要将数控程序传入数控机床,首先将数控程序转换为机床能识别的代码EIA码或ISO码,然后以数据包的方式读入现场服务器内存,再逐字节地向数控机床控制系统发送,同时计算机不停地监测机床接口的状态寄存器的状态。从机床传出数据,通讯控制软件总是从其程序代码的末端开始至常规内存的顶端(0A0000H)作为接收数据的缓冲区。