邓芳 邵炜
摘要
本设计以某公司的刻印系统要求为核心,改变过去人工操作的状态,设计了一套基于WCF框架的自动刻印接口系统。经过测试,该系统达到了设计目的,能很好的为企业生产服务。
【关键词】刻印 接口系统 WCF框架
1 前言
随着信息化、自动化的日益发展,工业生产也趋于智能化,从集中式控制向分散式增强型控制的基本模式转变,以期望建立一个高度灵活的个性化和数字化的产品与服务的生产模式,降低生产成本,提高工业生产效率更高。
本设计根据企业需求,利用信息技术,将扫描系统、刻印系统等硬件设备,结合串口通信技术、WCF技术优化刻印流程,实现获取数据、传输数据、控制刻印机工作、保存工作记录等功能,将刻印环节纳入公司信息化系统中,智能化生产流程,减小报废率,降低成本,并极大地提高企业在刻印生产环节的效率。
2 需求分析
根据系统功能情况,在不改变实质生产内容的前提下,模拟当前人工操作的刻印流程,设计用扫描条码、线上查询的方式快捷地完成整个刻印流程。系统完成以后的工作流程可总结为:数据库中的相关信息,不再需要产品工程师来帮助查询需要刻印的内容。刻印机操作员可以通过扫描枪两次扫描条码直接在数据库中查询到相关需要完成的任务,同时将刻印记录保留在数据库中。简化后的整个过程只需扫描的时间加上刻印机刻印的时间一共30秒左右,比之前效率倍增。并且用两次扫描来确认核对条码,进一步增加了可靠性和便利性。基于以上分析,本设计考虑采用WCF框架,将客户端与数据库服务器端连接。
3 软件设计
3.1 软件架构设计
在目前的应用主流中,中间层采用Web服务器来担任,通过发布一个特殊端口的Web页面来提供数据服务,客户机通过这个端口连接到Web服务器提出数据请求,Web服务器接到请求后连接数据库服务器查询数据,处理后返回给客户机。
以上这种处理方式可以看作是一个BS架构的变异,与BS架构的不同点在于它采用了开发客户端替代浏览器。它具有BS架构数据库隐蔽,应用逻辑集中到Web端的优势,又能够避免浏览器页面开发受限,响应速度慢的问题,兼具了BS架构和CS架构的优势。此外由于本系统需要与刻印机串口进行硬件通信,浏览器页面设计较难做到,为此,刻印系统采用了这种使用Web服务器为应用服务的CS架构,如图1所示。
3.2 软件功能设计
根据分析,本设计所做的整个系统能便捷地完成刻印机刻印产品标识的整个工作流程,硬件设备中扫描枪用于获取条码信息,串口用于连通计算机和刻印机,最终由刻印机完成刻印。对于本设计的软件而言,所做的更多是对数据的处理和操作流程的控制。其工作流程如图2所示,扫描枪获取机加工流转卡上的条码信息后,先由软件系统对获取到的条码信息进行初步处理,去掉条码字符串前面的字母和占位零,然后软件系统的客户端会向服务器发送获取刻印信息的请求,部署于服务器上的服务端将根据请求的数据信息查询数据库,获取需要打印的产品图号和产品序列号并送回到客户端。客户端经过固定的格式转换,将待打印内容转换成十六进制的格式,连带控制指令按照说明书中给出的格式通过串口传送到刻印机软件。刻印机根据指令完成操作之后,软件系统再次访问数据库,将刻印的有关信息记录在数据库中。
软件系统的设计分为三层:数据层、逻辑层和界面。数据层主要用于两次访问数据库,第一次根据客户端的请求,从数据库获取刻印信息,包括产品图号以及产品的序列号,第二次将刻印操作的相关信息插入到数据库表中记录下来,以方便后期查询操作记录。逻辑层控制整个业务流程,与界面配合完成相关功能和结果展示。如图3所示,当第一次查询数据库时,软件系统会对数据库中的信息进行判断,如果不包含查询的物料编号,在界面中会弹出信息提示使用者数据库中不包含正在查询的物料。如果数据库中包含查询的物料但是没有需要打印的产品图号以及产品序列号的信息,软件系统也会给出相应提示。如果工作正常,当第二次扫描时会与第一次扫描的内容进行对比,当判断内容一致时完成刻印,并且在刻印时,软件会改变界面的输入状态,在一定时间内禁止用户再次扫入条码,防止出错。
4 软件实现
4.1 接口类型选择
总的来说,串口传输设计简单,可以在较低的成本下实现较高速率的传输,差分传输方式可以降低噪声干扰问题。考虑到这些优点,从工厂刻印机实际的情况出发,考虑到点对点通信、通信协议简单,本设计选取RS232接口,实现计算机和刻印机控制软件之间的数据传递。本设计中用到的两个端口号是COM8和COM9,将两端口的2、3接线口交叉连接,就可以实现两个端口之间的通信。COMB端口与刻印机软件系统连接,COM9端口与扫描系统连接。扫描控制系统通过串口線发送控制指令到刻印机系统,刻印机系统的刻印信息也能返回到扫描控制系统。
4.2 协议的选择
通过比对,在同样的硬件条件下采取WSHttpBinding能以较快速度传送大量数据,并且表现稳定,因此本设计采取WSHttpBinding的通信协议连接WCF的服务端与客户端。
4.3 WCF框架
在设计中,WCF服务端需要分别设置终结点、基地址、宿主、和服务元数据交换,客户端可以访问基地址获得相应服务。基地址是WCF服务端发布服务和操作的部分,宿主表明了WCF的服务端寄宿方式,有ⅡS、WinForm、控制台程序等,考虑到需要在用户界面更加清晰地显示内容以及代码的简易性,并且为了在后续维护中可以更加清晰看到服务的相关信息,系统中使用了WinForm的寄宿方式。
5 总结
图4展示了当生产工人正确扫描两次条码后,刻印机软件获取命令,更改刻印模板并刻印后,刻印机软件的反馈信息。返回的两个[ACK]表明正确刻印。
经过系统现场测试,该设计运行良好,能很好的适应企业的生产需求,解决了过去刻印操作员参与过多,易导致错误的问题,优化了生产步骤,使得刻印操作更加智能化。在本设计中使用WCF技术,不影响原有技术,满足与之前系统的兼容性。而且将连接数据库、访问数据库的功能放于WCF的服务端中,将WCF服务在公司服务器发布,客户端仅能获取这些服务却不能看到这些服务具体的实现方式,从而大大提高了数据的安全性。整个接口系统设计结构分明,便于维护。
参考文献
[1]张新国,尚建宇,高慧颖.基于一维条码技术的新生注册系统的设计与实现[J].计算机系统应用,2005,14(09):61-63.
[2]孔婷,邬家炜,高云全.Web Service基本架构及关键技术[J].科技广场,2005,18(03):8-11.
[3]NMilanovic,M Malek.Current solutionsfor Web service composition[J].IEEEInternet Computing,2004,8(06):51-59.
[4]郑文轩.基于WCF的分布式程序的研究和实现[D].西安电子科技大学,2012.