首页 > 范文大全 > 正文

C/S的数控设备监控系统

开篇:润墨网以专业的文秘视角,为您筛选了一篇C/S的数控设备监控系统范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

本文作者:郑魁敬,袁磊,周鑫 单位:燕山大学机械工程学院

网络技术的发展和应用,大大扩展了企业的制造和销售范围,基于Internet/Intranet的全球制造已经成为现代制造技术的发展趋势[1]。网络数控通过网络对多台数控设备进行综合管理和控制,完成数控程序传输、设备状态监控、信息管理和交换等功能[2-3]。目前,我国企业拥有的数控设备利用率偏低,在数控设备的程序传输和信息管理方面也存在着不足[4-5],如数控资源分配不均、NC程序传输不畅、程序管理混乱、车间的信息化水平低等。因此,实施数控设备网络化制造[6],可提高数控设备的利用率,提高数控设备的管理水平,提高车间的信息化水平,优化整合生产资源。文中开发了一种基于以太网的数控设备监控系统,该系统通过以太网和数控设备连接,可对数控设备进行远程监控,进行数控程序的传输和管理,共享服务器数据库信息,查询和管理数控设备信息,制定和管理零件工艺流程信息等。

1网络数控系统构建方案

网络数控系统硬件主要包括:服务器主机、数控设备、I/O接口、通信单元、数据传输介质等。通讯软件安装在服务器计算机上,能与数控设备实现特定通讯并响应客户端请求。数控设备提供的通讯接口决定了网络数控系统所能实现的功能。目前比较常见的接口[7-10]主要有串行通讯接口、专用接口、网络接口。针对以上各种接口,可以确定联网方案:对于具有串行通讯接口的数控设备,通过串口服务器进行协议转换,然后连到以太网交换机;对于具有网络接口的数控设备,将其直接接入互联网,然后将网络数控系统主机作为服务器通过HUB连入局域网,也可以同时连入几台客户机,作为信息查询和输入的终端。如图1所示,该网络结构共分为3层:车间层、DNC主机层和数控设备层。DNC主机相当于车间局域网和数控设备网之间交换数据的纽带,既要负责和设备网进行通讯,采集数控设备的数据,向数控设备发送和接收NC程序,监控设备运行状态;又要负责和车间局域网内客户端计算机进行通讯,响应客户端的请求,提供上传NC程序,编制和查询零件工艺路线等服务。由于采用客户端/服务器结构,管理人员使用车间局域网内的任意计算机都可以登录服务器进行数据的查询和管理操作,了解设备的运行情况,从而实现了信息和设备的网络集成。这种结构很容易和互联网相连接,实现进一步的网络扩展。

2网络数控系统主机软件功能设计

网络数控系统主机软件分为4个子功能系统:通讯管理子系统、数控设备管理子系统、数据库子系统和网络监控子系统,如图2所示。

2.1通讯管理子系统该部分主要负责建立服务器和各客户端的连接。服务器在指定端口监听连接请求,每当接收到一个请求就要启动一个新的线程来维持和该客户端的通讯,因此需要采用面向连接的、并发的软件结构。流式套接字提供了一种可靠的、面向连接的数据传输方法,数据可以在网络间无差错、无重复的发送,而且按照发送时的顺序进行接收,因此采用流式套接字可以保证数据传输的正确性。由于系统服务器需要同时和多个客户端进行数据交换,因此需要采用Windows的多线程编程技术,使用该技术,操作系统会将CPU时间划分成许多个时间片,并按一定的优先级将时间片分配给各线程,各线程在各自的时间片内共享CPU,从而形成并发多任务运行机制,通过互斥对象来实现各线程之间同步。主要功能有网络连接、文件传输、视频采集和传输。传输的数据形式主要有文字、文件和图像数据。

2.2数控设备管理子系统由于连接的数控设备既有串行接口的,也有网络接口的,因此开发的系统要能兼容这两种接口。具有串口的数控设备通过串口服务器经过协议转换可以转换成RJ-45接口接入局域网,通过串口映射技术可以将串口服务器上的串口映射成为Windows系统下的标准串口进行操作。一台计算机最多可以映射256台串口服务器,足够满足大多数企业需要。串口编程可通过Win32API函数开发。这种方法虽然编程比较复杂,但是具有很强的灵活性,能够实现较为复杂的串口通信。用Win32API函数进行串口编程顺序为:(1)打开串口,即指定要打开的串口号、打开串口的方式;(2)配置串口参数,主要包括串口通信的波特率、数据位、停止位、校验方式等;(3)读写串口,通过串口接收和发送数据。(4)关闭串口,使用完串口后要关闭串口。由于从串口传来的数据是随机的,因此要首先建立一个事件线程,用来监视串口中发生的事件。当串口输入缓冲区接收到字符时,调用接收消息函数接收来自串口的数据。对于具有网络接口的数控设备,首先将网线插入设备网络接口,在设备端设置好在局域网的IP地址、网关、端口号等参数,然后网络数控系统主机向该IP地址发送连接请求获取到通讯所需的设备句柄,这样每个句柄就对应一个数控设备,通过调用开发包函数获取所需信息。

2.3数据库子系统由于系统在运行过程中会产生大量的数据,这些数据包括服务器的运行信息、和客户端的交互信息、零件的生产加工工艺信息、设备的运行状态信息及NC程序信息等,需要对这些信息进行管理和保存。文中选择SQLServer数据库,对数据库访问采用DAO(数据访问对象)方法。为实现程序模块化和代码重用,编写一个CSqlServer类封装数据库初始化和数据管理功能。该类封装主要功能有:连接数据源、建立各所需表、向各表中插入数据、执行SQL语句等。需要采取如下过程实现操作数据源中数据:(1)初始化COM环境。(2)创建一个Connection对象并打开到数据源的连接。Connection对象定义了用于连接的字符串信息,包括数据源名称、用户ID、口令、连接超时、缺省数据库及光标的位置。(3)执行一个SQL语句。成功连接数据源后,就可以运行查询等功能语句了,可以通过Connection对象的Execute()函数来实现。(4)使用Recordset对象打开记录集。执行SQL语句的结果保存在Recordset对象中,需要对该对象进行操作来达到我们需要的数据。(5)关闭到数据源的连接。通过Connection对象的Close方法实现。当用户启动应用程序的时候,程序首先搜索数据库中是否存在程序运行所需的表,若不存在,要先执行创建数据库中表的任务。需要建立9张表:(1)客户端连接信息表;(2)设备信息表;(3)消息信息表;(4)NC程序信息表;(5)接收文件信息表;(6)发送文件信息表;(7)零件信息表;(8)服务器日志信息表;(9)零件工艺信息表。通过任意一个客户端登陆到服务器就能获得数据库中数控设备信息、故障信息、NC程序信息等,并可根据需要对其进行添加、修改、删除等操作。数据库子系统界面如图4所示。

2.4网络监控子系统数控系统正朝着开放性方向发展,采用通用高性能计算机和通用操作系统的数控设备具有极强的接口性能。开放式系统对TCP/IP协议的支持使得对该类数控设备联网变得简单,软件开发只需要考虑C/S模式下的数据交换。由于开放式系统采用通用操作系统,因此可以共享通用PC机的软件资源。首先被控端要建立到主控计算机的连接,该部分可以通过socket实现。连接建立后就可以按事先约定好的规则进行通讯,控制类指令采取小写字母前加“###”的形式。如当点击远程加工按钮时,控制计算机向被控端发送数据“###re-moteprocess”。接收端首先判断接收数据前三位,若为“###”说明是控制类指令,接着判断后面字符,若为“remoteprocess”,准备接收网络NC程序,并根据程序进行自动加工任务,若指令为“###stop”,则通知被控端停止加工,指令“###X+”通知被控端执行X轴正向进给一个脉冲的操作。通过网络实现的控制功能包括远程加工、停止、各坐标轴正反向进给等。对于远程监控系统来说,需要通过摄像头获取加工现场的视频信息并通过网络传输给监控端,并据此进行相应的判断和处理。由于视频的采集和传输同时进行,因此要同时开启两个线程分别进行采集和传输工作。视频的采集可以利用摄像头所带的函数库进行开发。为了提高网络传送速度,图像发送前要先压缩,如果正在执行发送操作,则图像采集线程只采集不压缩;如果发送过程已经结束,则执行压缩、发送任务。看到的视频一般由一帧一帧连续的图像构成,图像的数据量很大,对于一张分辨率为376×240的彩色图片来说,其数据量大概有270kB。如果原始图像数据不经过压缩,通过网络是无法流畅地进行传输的,看到的可能只是断续的一张张图片而已,因此在进行网络传输之前首先要对图片进行压缩。因此需要设计两个不同的线程,一个线程负责图像的采集和压缩,另一个线程负责图像的传输。图像的采集是不停的进行的,但是图像的压缩不是。当图像压缩完一帧时,发送线程执行将其发送出去的任务,在发送的过程中图像的采集仍在继续,但是采集的图像没有进行压缩和保存。在图像传输线程中,使用一个while循环不断地执行图像发送任务。同时引入两个布尔类型全局变量Stop和IsSending,来协调压缩和发送工作同时进行。图像采集与发送流程如图5所示。

3系统可靠性分析系统的可靠性方面主要包含硬件设备运行的可靠性和数据传输的可靠性。

3.1硬件设备运行的可靠性分析由于粉尘、电磁干扰、温度、湿度等都会对网络系统稳定运行构成威胁,因此对数控设备进行联网需要考虑工业生产现场恶劣的环境条件。工业以太网标准对网络设备的要求比民用更高,在耐腐性、防尘、防水、加固等方面都有自己的要求,其安装方式和工作温度也和民用产品大不相同,通过使用双电源供电,保证设备的稳定运行。此外,在工业以太网的设计中,还可以采取其他的方法来提高工业以太网的可靠性,如可以采用冗余设计,为以太网配备硬件和链路冗余,当网络中的设备或某一天链路发送故障停止工作时,配备的冗余设备和链路能立即接管所有的传输任务。此外,还可以采用抗干扰性更强的屏蔽双绞线或光纤来取代非屏蔽双绞线,进一步提高链路的抗干扰能力;或采用总线供电技术,来提高工业以太网的防爆能力。

3.2数据传输的可靠性分析数据在网络传输过程中,往往会碰到传输可靠性问题。如何保证数据传输的安全性,是需要考虑的问题。安全性问题可以分为内部安全和外部安全两种。内部安全面临的主要是公司内部局域网内的潜在风险,如有时数据可能会被发送到局域网内的所有计算机,从而可能造成信息的泄露;服务器计算机连在局域网上也会收到大量的网络数据,如果这些数据刚好和服务器控制指令相吻合,就有可能会触发服务器对设备的某些控制操作,引起不可预知的后果。外部安全指的是面临来自互联网的威胁,公司局域网要和互联网相连,因此面临着来自互联网的攻击和风险。对于内部安全,可以通过将办公网和设备网隔离、架设防火墙等措施来解决。对于外部威胁,可以采取数据加密技术、数字签名技术、访问控制技术等解决。文中采用DES算法对数据进行加密。数据发送前进行加密、接收后进行解密,当接收数据端没有得到授权时得到的数据就是加密后的乱码,从而保证数据传输的安全性。将DES算法封装到一个自定义类CDES中,可以更好地实现类的重用和使用的方便性。下面以加密为例对DES算法的编程实现进行简单说明,其流程如图6所示。(1)将8字节数据转换成64位数据。由于应用程序使用的数据都是以字节为单位的,而DES算法是针对位来进行操作的,所以在加密前首先要将其转换为位数据。(2)对得到的64位明文X进行一次初始置换IP,从而得到X0。这一步的主要目的是打乱数据原来的次序。它可以把X的第58位移到第1位,将第50位移到第2位,依次进行置换。(3)将置换得到的X0分成左右两部分,左边记为L0,右边为R0。对R0实行子密钥K1控制下的f变换,将f变换的到的结果再与L0进行逐位异或运算,得到的结果记为下一轮迭代的R1,而原来的R0则作为下一轮迭代的L1。这样依次进行16轮迭代,得到结果R16L16。(4)将16轮迭代的结果R16L16施行初始逆置换IP-1,最后得到的结果就是加密后的密文。(5)将得到的64位密文转换成8字节数据。该数据就是加密后的结果,可以进行网络传输了,如果接收端没有使用正确的密钥进行解密,那么接收到的就不是所需要的数据,而是乱码。在PC机上测得DES算法加/解密速度大约为12万次/s。即使按每秒可以猜测100万个密钥来计算,使用PC机破解DES算法也需要2285a,因此DES算法还是非常安全的。

4系统实时性分析

通过网络对设备进行远程控制,实时性非常重要。这里的实时性不是说平均响应时间越小越好,而是要求网络的最大响应时间要满足一定要求。一般来说,过程控制网络响应时间要求为0.01~0.5s,制造自动化网络响应时间要求为0.5~1.0s。文中是基于以太网的联网技术,而以太网的介质访问控制(MAC)层协议采用的是带碰撞检测的载波侦听多址访问(CSMA/CD)方式,因此传统以太网的响应时间一般是不固定的。以端到端数据传输为例,造成的数据延时包括报文经过发送端网卡需要的时间,报文的排队延时,报文的转发延时,报文的传输延时,以及报文经过接收端网卡需要的时间。造成以太网延时的主要是排队延时和转发延时,其中排队延时所占的比例最大。传统的以太网在网络负荷比较重时,其响应时间不具有确定性,难以满足工业控制网络的要求。随着硬件技术和互联网技术的发展,以太网的通信技术和通信速率也在不断进步。通过采用新技术对传统以太网进行改进,以太网完全可以满足工业控制网络的要求,如提高网络带宽,采用全双工交换式以太网技术取代原来传统的共享式以太网技术,限制网络负载,改进工业以太网体系结构等。通过对工业以太网进行合理的设计,现在的工业以太网已经可以实现传输延时5ms左右,完全可以满足工业控制自动化的需要。

5系统测试

通过在Mk250数控凸轮磨床控制软件中添加网络控制模块,使其具备网络通讯能力,可以在远程端启动机床的加工,手动控制机床的运动,以及监视机床的运动状态。在远程端有两种模式控制机床的运行:一种是手动控制,可以手动控制X轴、主轴的正、反转、回零等功能,可以获取到机床当前的位置坐标信息,并能通过视频监控画面直观地观察到现场的加工情况,可以随时停止或暂停机床的运行;另一种是自动加工模式,在远程端选择NC程序,然后点击自动加工按钮,机床端就会按照发送过去的NC程序执行加工任务。在实际网络控制测试中,由于采用交换式以太网,且网络负载较轻,文件传输速度可达到9Mb/s,因此从服务器端发送运动指令到机床端开始动作,没有明显的网络延时,最大值都在10ms以内。系统运行状态稳定,视频传输画面显示流畅,验证了该网络控制系统的有效性。网络控制界面如图9所示,凸轮轮廓绘制如图10所示。

6结论

网络化的数控设备集成管理和控制系统可以将生产管理部门、产品设计部门、工艺编制部门等所需各种信息集成到一个统一的平台,实现设备信息和各种加工信息的共享,在任意一个客户端登陆到服务器都可以完成程序上传、下载、工艺流程编制和查询等任务,并可以对联网的数控设备进行网络监控,实现远程加工、急停、各坐标轴的手动进给等控制任务。文中开发的系统可以有效提高企业的自动化和信息化水平,提高企业的生产制造能力和管理水平。