毕业论文基于矢量空间线性分类的恒力弹簧质量检测装置设计.doc

上传人:仙人指路1688 文档编号:3972365 上传时间:2023-03-30 格式:DOC 页数:37 大小:1.14MB
返回 下载 相关 举报
毕业论文基于矢量空间线性分类的恒力弹簧质量检测装置设计.doc_第1页
第1页 / 共37页
毕业论文基于矢量空间线性分类的恒力弹簧质量检测装置设计.doc_第2页
第2页 / 共37页
毕业论文基于矢量空间线性分类的恒力弹簧质量检测装置设计.doc_第3页
第3页 / 共37页
毕业论文基于矢量空间线性分类的恒力弹簧质量检测装置设计.doc_第4页
第4页 / 共37页
毕业论文基于矢量空间线性分类的恒力弹簧质量检测装置设计.doc_第5页
第5页 / 共37页
点击查看更多>>
资源描述

《毕业论文基于矢量空间线性分类的恒力弹簧质量检测装置设计.doc》由会员分享,可在线阅读,更多相关《毕业论文基于矢量空间线性分类的恒力弹簧质量检测装置设计.doc(37页珍藏版)》请在三一办公上搜索。

1、基于矢量空间线性分类的恒力弹簧质量检测装置设计摘 要本设计的目的是采用线性分类的方法设计一个恒力弹簧质量检测装置。线性分类技术是近代信息处理领域中极为重要的技术,其原理就是根据平面或者空间中点的某些特征,用一条直线或者一个平面将这些点分成不同种类,进行相关运算以确定最优的那条直线或者平面。恒力弹簧由于自身特殊构造,具有张力输出比较稳定的特点,它的应用十分广泛,主要用于各种平衡装置以及各种要求恒力输出的装置,如升降平衡装置、电机碳刷弹簧等。因此恒力弹簧的质量检测是极其重要的。整个设计的方案主要从测量装置的非电量部件开始一直到数据传送到计算机,控制下位机工作的同时也可以对传送来的数据进行精密的计算

2、与分析。设计中的难点主要在于上位机软件方面,不但要正确无误的接受和控制下位机采集数据,而且要进行高精度处理,线性分类在其中发挥了重大作用。本文中采用线性分类方法的优点是结构简单,计算快速。关键词:恒力弹簧,线性分类,数据采集 ,人机交互Design of Constant Spring Quality Testing Equipment Based on Classification of Linear Vector SpaceABSTRACTLinear classification technology is in the field of modern information proce

3、ssing, the technology is very important. Linear classification is according to the points plane or some of the characteristics of space, with a straight line or a plane will these points into different kinds, undertake related calculation to determine the optimal the straight line or plane. Hengli s

4、pring because of its special structure, has the characteristics of tension output relatively stable, it is mainly used for various balance device and various requirements hengli output devices, such as lifting balance device, electrical carbon brush spring etc. Can say is in production is widespread

5、 applications in the field. Therefore constant force spring quality testing is extremely important.This design mainly from measuring devices have been the non-electric quantity components to transfer data to the computer, then human-computer interaction, can not only control the next place machine t

6、o work can also transmit the data to the calculation and analysis of precision. The difficulty of this design lies mainly in the PC software, not only should correct under control and acceptance of a machine to collect data, and high precision processing. For hengli spring quality inspection technol

7、ogy has a variety of, such as image matching technology, linear classification technology, this design main application linear classification technology. Linear classification is to use a straight line will coordinate with the measured data are separated, the measurement data is divided in some area

8、s in the space, then ask this group of data fluctuating range, stability, etc, will ultimately measured data, compared with standard data results.KEY WORDS:constant spring,linear classification,data collection,human-computer interaction目 录摘 要IABSTRACTII1绪论11.1课题的意义11.2国内外发展状况12设计方法论述32.1恒力弹簧装置的研究方案3

9、2.2恒力弹簧测量装置的设计32.2.2装置的电气系统52.2.3计算机系统的组成73基于矢量空间线性分类的数据处理93.1分类器的概述93.2线性判别函数和决策超平面94计算机系统的设计134.1下位机的数据格式134.1.1电气标准134.1.2数据的传输格式134.2上位机软件设计144.2.1数据的传输模块144.2.2数据的存储模块154.2.3显示模块154.2.4数据处理模块164.2.5数据的判断模块165人机交互与系统测试175.1应用程序界面介绍175.2应用程序功能介绍185.3应用程序的测试205.4软件算法的实现235.5恒力弹簧数据的测试结果25总结27致 谢28参

10、考文献29附 录301绪论1.1课题的意义随着科学技术的迅猛发展,恒力弹簧的应用无孔不入,小到家庭生活中的家电,例如电暖气的时间设置弹簧,吸尘器的拉线弹簧等。大到工业中的支撑设备,例如恒力弹簧支吊架,可以通过它来悬吊和支撑管道及设备,此时,当管道或设备产生位移时,只要在预先选定的载荷位移内,不管其位移变化有多大,它们可以通过恒力弹簧支架而始终获得恒定的支撑力。从而就不会给管道或设备带来新的附加压力,这样就可以避免造成重大的设备和安全事故。一般在有热位移较大的重要部位,就应考虑设置恒力弹簧支吊架,由于怛力弹簧支吊架的这一特点,因此在普通热力发电厂、核电站、石油和化工等热动力装置中得到愈来愈广泛的

11、应用。因此,恒力弹簧的质量检测是一个应该得到重视的问题。本课题是一个具有高度实用价值的题目,目的是为了结合学过的关于数据处理的知识和计算机软硬件知识,设计一种利用矢量空间线性分类进行恒力弹簧张力特性测试装置。研究该课题的目的是利用计算机对采集并处理恒力弹簧的张力特性,通过矢量空间分类器对弹簧的特性加以评价,从而为企业的生产提供参考数据,对提高产品质量,提高生产效率,改进生产工艺均有重要作用。这是一个来自于企业的生产环节的课题,具有一定现实意义。通过这次毕业设计一方面可以巩固知识,另一方面也使得本人亲身经历设计,有利于打开眼界。完成这个题目本人理论水平和实验水平都将有一个长足的提高,动手能力得到

12、锻炼,眼界得到扩展,为本人今后的工作和学习积累宝贵的经验。1.2国内外发展状况随着恒力弹簧应用的普及,恒力弹簧的质量能否被认可的重要性及其对社会的影响也越来越大,与此同时,基于矢量空间线性分类的恒力弹簧质量检测装置设计问题等也越开越具有现实意义。近年来,我国在工业方面对恒力弹簧的应用与日俱增,尤其是支吊架恒力弹簧装置,但是对于大型恒力弹簧的装置大部分都是从国外引进,因为我国的质量检测方面和国外有一定的差距。恒力弹簧吊架在电站设备、锅炉及水暖系统等一些要求承受恒定的系统中起着消除变形,产生恒力的作用。恒力弹簧支吊架的质量直接影响使用该产品的系统及设备的工作性能。故对恒力弹簧支吊架产品的测试就显得

13、十分重要。随着工程数学领域不断的深入,以及计算机技术的飞速发展,对于恒力弹簧的测试装置不断的智能化自动化,于此同时对于采集到数据的处理方法也不断改善,基于矢量空间的线性分类法不是于一种有效、经济的处理方法,它不像利用图像处理那样需要更多的设备和资源。本设计给基于矢量空间线性分类的恒力弹簧质量检测装置设计一种设计方案,实现了测试系统的数据采样、传输、以及处理。与别的测试装置相比,本测试系统具有以下特点:(1) 稳定、可靠;(2) 经济实用,成本低,特别适合国内中小型企业的恒力弹簧产品的测试;(3) 系统界面简单,使用操作方便。2设计方法论述2.1恒力弹簧装置的研究方案本文是在测试双态弹簧张力的基

14、础上,对张力特性进行分析,用线性分类的方法计算出弹簧的拉伸最大长度、张力波动范围及方差,所以在测试过程中应包含测量张力与拉伸长度、对数据转换和存储的控制、数据接收、处理和分析并得出结论,根据这3个过程,设计方法总体框架如下图2-1所示:图2-1 测试方法流程图在本文的设计方法中,我们首先通过传感器将张力和拉伸位移转换为电量,用单片机对转换过程进行控制并对暂时存储转换的结果,然后通过计算机将数据输入,并开发一个接收软件和一个数据处理软件,接收软件负责对单片机的控制和接收数据,数据处理软件对接收到的数据进行处理、分析得到数据分析结论。2.2恒力弹簧测量装置的设计由于合格的恒力弹簧在限定的范围内张力

15、F恒定或者变化缓慢,因此这一测试系统是通过外事拉力,使得弹簧产生拉伸位移,通过测量拉伸位移和拉力值得到一个二维曲线,通过对这二维曲线的数据分析、处理,判断产品是否合格,并为下一步调整提供参考建议。因此本系统的关键是测量两个量:其一是拉伸位移量;其二是拉力量。2.2.1装置的机械系统图2-2 恒力弹簧测试机械装置图如图2-2所示,该装置主要由支架、恒力弹簧、拉力传感器、直线位移传感器、扶手组成。开始测量时,手握扶手向后用力时,红色按钮可传递测量开始的信号,拉力传感器将弹簧所受的力转换成模拟信号传到A/D转换器中,直线位移传感器将移动的距离转换成模拟信号传到A/D转换器等待处理,处理之后传递给下位

16、机,最后经下位机到达上位机进行分析、处理。(1) 拉力传感器本设计中的双态弹簧属于微小力量型弹簧,其最大承受拉力不超过9N,为了减小测量中的误差,在此采用ZLBS-7型拉力传感器。ZLBS-7型拉力传感器采用了箔式应变片贴在合金钢弹性体上,承受拉、压力均可,具有测量精度高、稳定性能好、温度漂移小、输出对称性好、结构紧凑,规格齐全。可用于微小力量的测量等。传感器电气特性参数如表2-1所示。表2-1 拉力传感器电气特性量程0.5、1、2、3、5、10、20kg综合精度0.03%FS灵敏度2 0.1 mV /V蠕变0.05FS/30min非线性0.05%F.S滞后误差0.05%F.S重复性误差0.0

17、5%F.S零点温度系数零点温度系数输出温度系数0.05%F.S/10输入阻抗35015输出阻抗35015绝缘电阻5000 M供桥电压10 VDC工作温度范围-20 - +70允许过负荷150%F.S防护等级IP67(2) 直线位移传感器待测双态弹簧的最大长度为50mm,为了减小误差增加测量精度,本设计采用位移传感器LTS-V2,该传感器的技术参数如表2-2所示。表2-2 直线位移传感器电气特性LTS-V2系列05075100130150175200电行程(T.E)mm5378103133153178204可用电行程(A.E)mm5176101131151176202机械行程(M.T)mm557

18、9104135155179204工作电压DC12-24 V输出信号DC0-5 V独立线性率%0.07解析度rInfinite 无断建议电流mA10使用温度C0 到 80防护等级IPIP54(标准),IP65(选购)操作力N不大于1.2N(IP54),不大于5N(IP65)功率W2W - 10W震动GIEC 68-2-6:1982 10G冲击GIEC 68-2-29:1968 40G外壳尺寸Amm1441691942252452712962.2.2装置的电气系统整个系统控制的核心部分是采用有大存储容量、高精度、高运算速度与处理能力的数字计算机来实现的。对于数字计算机能够直接产生控制下位机锁存、传

19、输数据。而位拉伸位移量和拉伸张力由传感器产生的均为模拟量。模拟量必须转换为数字量才能为计算机系统所接受。由于工作现场可能存在着强的电、磁干扰(如电弧焊、大功率的机床的启停等),因而本系统用模/数转换方案,减少传感器产生的模拟量在长距离传送过程中所受强电、磁干扰,在传感器旁即完成放大,A/D转换,形成数字量,再将所得数字量送向计算机系统。所有这一切中间控制过程可以由一个小的单片机系统完成。本系统采用单片机作下位机,对采集到的数据进行控制,并将采集的数据发送到上位机。用PC机作上位机,负责控制单片机对数据的锁存、发送,并将发送来的数据分、处理之后,将结果显示在界面上。整个硬件描述系统图2-3所示:

20、图2-3 硬件系统图(1) 拉力信号采集电路本电路采拉力传感器,由于本设计中对压力变化的要求严格测量,所以采用用ZLBS-7型拉力传感器,见图2-4。输入电压为10V,最大负载可选择为10N,满量程输出为20mV,为了防止压力传感器的反馈,采用AD581稳压芯片,输入电压为12V,输出电压为10V。由于ZLBS-7输入最大电压为20mV,而后面的A/D转换芯片用ads7825,其输入电压为-10+10,当压力传感器满量程时输出逻辑电平选择为5V,因此用放大器OP04芯片构成增益为Avo的放大电路。图2-4 拉力信号采集电路(2) 拉伸长度信号采集电路LTS-V2系列直线位移传感器拥有信号转换和

21、放大的作用,因此在本设计中无需对其放大,直接将输出信号传递给A/D转换电路。下位机控制系统由A/D转换、单片机、RS232接口组成。A/D转换采用十六位精度的ADS7825芯片,他是多通道十六位主次比较式转换器,分辨率为1/65535,其与单片机接口十分简单。由于采集的数据较多,所以对单片机进行外存扩展,采用6114芯片。单片机采用Atmel公司的AT89C51,其结构由4KB Flash Rom、128B RAM、32个I/O、2个UART组成,其中还包含2个32位定时器等。计算机串口为RS232电平,所以本设计中下位机与上位机之间采用RS232电平通信,采用MAX232芯片。在PC机与单片

22、机之间采用RS232电平,不仅可以增加数据的传输路径,也可以达到和PC机串口相同的逻辑电平。下位机控制系统电路图见图2-5。2.2.3计算机系统的组成当A/D转换完毕之后将数据传送给下位机,下位机与计算机之间的通信过程为本小结所要讨论的内容。单片机与计算机通信时由于双方所用的电平不一样,所以中间要采用RS232转换电路,于此同时双方采用的通信协议也是极为关键的。具体介绍请下一节。图2-5 下位机控制系统电路图3基于矢量空间线性分类的数据处理3.1分类器的概述分类器是一种使待分对象被划归某一类而使用的分类装置或数学模型。 他的设计目标是在通过学习后,可自动将数据分到已知类别。应用在搜索引擎以及各

23、种检索程序中。同时也大量应于数据分析与预测领域。分类器也是一种机器学习程序,因此归为人工智能的范畴中。人工智能的多个领域,包括数据挖掘,专家系统,模式识别都用到此类程序。对于分类器,其实质为数学模型。针对模型的不同,目前有多种分支,包括:Bayes网络分类器,决策树算法,支持向量机算法等。 我们知道,在一定条件下,基于后验概率或类条件概率密度的分类器可转化为线性分类器。这就是说,线性分类器是基于Bayes决策理论设计的分类器的一个特例。贝叶斯分类器的分类原理是通过某对象的先验概率,利用贝叶斯公式计算出其后验概率,即该对象属于某一类的概率,选择具有最大后验概率的类作为该对象所属的类。线性分类器的

24、特点是结构简单,计算工作量小。一个线性分类器的设计主要是它的线性判别函数和决策超平面。3.2线性判别函数和决策超平面我们先考虑一个两类问题及其线性判别函数。设特征空间维数为m,即xRm,超平面决策方程可写为: (3-1)这里,w=(w1,w2,wm)T为权值向量,w0为阈值。如果x1、x2两个点均在超平面p上,则有 (3-2)或 (3-3)显然,w与x1-x2垂直。有时,人们称w为超平面p的法矢量。将(3-1)展开得 (3-4)平面p在坐标轴xi上的截距为 (3-5)图3-1 线性分类器决策超平面示意图图3-2 线性分类器决策超平面示意图图3-1、3-2给出了线性分类器决策超平面示意图。图3-

25、1、3-2指出,一个决策平面将输入空间分成了两个区域,但到底哪个决策区域为分类器实际输出大于0的区域取决于权值与阈值的正负号。例如,p1: l(x)= w1x1+w2x2+wmxm+w0=0与p2:l(x)=-w1x1-w2x2-wmxm-w0=0所决定的平面完全相同,但它们的决策区域却完全相反。因此,在判断决策区域时,必须考虑法矢量的方向。根据该图,坐标原点到决策平面p的欧氏距离为 (3-6)特征空间任意一点x=(x1,x2,xm)T到决策平面p的Euclid距离为 (3-7)更一般地,我们有 (3-8)称之为点x到平面的代数(有向)距离,即所谓线性判别函数的值,它是欧式距离的倍。思考一下,

26、如何使有向距离l(x)变大。另外,两点xi、xk在特征(输入)空间的距离为0=xi-xk,但 (3-9)是原来距离的倍。这里q为xi-xk与w之间的夹角。事实上,(3-9)表示的就是两点之差xi-xk在权值向量或决策平面法矢量方向上的投影,与阈值w0无关,如图3-3所示。图3-3 两点xi、xk经w变换过程示意图由于式(3-4)表示w与x呈线性关系,人们常称一个单输出线性分类器就是执行一个线性变换。推广以一下,两点xi、xk若经过两个线性变换l1(x)和l2(x),即线性分类器的输出为2,相互之间的位置将发生变化,如图3-4所示。图3-4 两点xi、xk经过2次线性变换示意图可以证明,多次线性

27、变换等价于一次线性变换。我们称p: l(x)=0为决策超平面。若分类对象只有两类w1、w2,决策规则为 (3-10)若分类对象有多类,决策函数形式上仍为 (3-11)但决策过程中会出现图3-5所示的几种情况。类别数越多,情况越复杂。因此,线性分类器只对处理不同类别的样本分布在特殊区域的情况才是有效的。例如,各个类别均位于超维立方体的顶端。图3-5 线性分类器对多类问题形成的决策区域4计算机系统的设计本系统采用集散型控制系统:它有一台PC机作为上位机;两个C51单片机系统作为下位机,作现场测量与控制。4.1下位机的数据格式上位机用一个具有快速、高处理能力、大存储容量的PC机作为上位机对数据进行集

28、中处理、分析。也可产生对过程的控制信号,传递给下位机使其对数据的锁存、发送。根据位置的分散性,本系统采用两个C51单片机系统作为下位机:其中一个作为拉伸位移数据的检测与传送;另一个作为拉伸力的测量与传送。上、下位机的通讯采用计算机间通讯常用的RS-232C通讯协议(格式如图5-3),这是一种起止式异步通讯标准:图4-1 起止式异步传输格式4.1.1电气标准RS-232C中规定:逻辑“1”的电平为-3-15V,逻辑“0”的电平为+3+15V,将这种电平信号直接传送的最大距离为30m,与调制解调器相结合可以实现数据的远距离传送,在小系统中可以采用三线制总线传送:发送数据线、接受数据线和一个信号地线

29、。4.1.2数据的传输格式本系统中上、下机间的实际距离小于30m,采用信号直接传送,传送格式为:1位起始位,8位数据位,无校验位,1位停止位,波特率默认位9600bps。由于RS-232C通讯协议中自身不包含地址信息,在本系统设计中采用将对下位机编址,即利用一个字节作为上位机对下位机的控制命令。格式如表4-1。表4-1 数据格式D7D6D5D4D3D2D1D0其中各位的意义为:D1 D00 1 下位机发送拉伸位移数据1 0 下位机发送拉力数据1 1 锁存当前采样数据4.2上位机软件设计上位机完成对两个下位机采集的拉力和拉伸长度量集中处理,绘制出拉伸位移张力的二维曲线,并对数据计算得到 “最大拉

30、伸长度”、“张力波动区间”和张力波动方差三个值,经过与国家标准给出的相应参数进行比较判断是否合格,若合格则输出“是”,若不合格则输出“否”。上位机的软件由C+语言基于MFC在Visual studio 2010平台编写,主要分为以下几个模块:数据的传输、数据的存储、显示模块、数据的分析处理、数据的判断。4.2.1数据的传输模块该部分负责对下位机的控制与数据的接收。发送控制控制下位机对数据的锁存、发送,下位机数据到来时对其进行接收。在实际应用中,常常要遇到PC机与单片机系统通信的问题。由于PC机和单片机都具有串口,因此经常使用串口完成二者之间的数据交换。这就需要在PC端设计相应的串口通信程序。本

31、设计中主要在Windows环境下编写产口通信程序的。在Windows环境下,串口是系统资源的一部分。应用程序要使用串口进行通信,必须使用之前向操作系统提出资源申请要求(打开串口),通信完成后必须释放资源(关闭串口)。在Windows的系统函数中,均包含了支持通信中断的功能。对串口通信而言,Windows为相应的串口设备开放了用户定义的输入输出缓冲区,应用程序只能对输入/输出缓冲区进行操作,数据进出串口的操作均由后台完成。已接收为例,系统每接受到一个字符就产生一个低级的硬件中断,系统的串口驱动程序将接受到的字符送入输入缓冲区,此时应用程序就可以通过访问输入缓冲区得到接受到的字符信息。Window

32、s为用户提供了串行通信的3种方法:(1) 使用串口通信空间。针对串口通信,微软公司专门提供了MSComm或SPComm等通信控件,使用该控件进行串口通信设计是十分方便的,程序员不必花时间去了解复杂的API函数。通过简单的修改控件的属性和使用控件提供的方法,就可以实现对串口的配置、完成串口接收和发送数据。(2) 使用Windows的API应用程序接口。Windows中串口是以文件的形式被打开和访问的。串口和串口通信驱动需要使用设备控制块进行配置。应用程序使用API函数CreateFile打开串口,ReadFile读串口,CreateEvent建立事件对象和CloseHandle关闭串口。(3)

33、使用动态链接库DLL。自己编写端口驱动程序或使用第三方提供的DLL例程。动态链接库是一些过程或者函数的集合。这些过程或函数在程序运行期间动态地链接到应用程序,而不是在编译期间静态的连接到可执行文件。由于使用串口控件进行串口开发极为方便,本设计中采用MSComm32.ocx控件开发。MSComm是Microsoft公司提供的简化Windows下串行通信编程的ActiveX控件,它为应用程序提供了通过串行接口收发数据的简单方法。在串口编程中,使用MSComm控件非常方便,仅需要通过简单的修改控件的属性和使用控件提供的方法,就可以实现对串口的配置,完成串口接收和发送数据的任务。MSComm控件有许多

34、属性,其中一些重要的属性如下:CommPort 设置串口号,Short类型。当其设置为1时,表示选择COM1串口;设置为2时,表示COM2串口。Settings 设置串口通信参数,CString类型。其格式为“B,P,D,S”B表示波特率,P表示奇偶校验,D表示字节有效位,S表示停止位。PortOpen 设置或返回通信口得状态,Bool类型。当设置为TRUE时,表示打开串口;当设置为FALSE时,表示关闭串口。InputMode 设置从缓冲区读取数据的格式,Long类型。该属性的设置使程序能方便地选择从缓冲区读取数据的格式。当设置为0时,表示选择字符串格式;当设置为1时,表示选择二进制格式。此

35、属性对于单片机同喜尤为重要。Input 从接受缓冲区读取数据,Variant类型。Output 向发送缓冲区写入数据,Variant类型。InBuffer Size 接收缓冲区中的大小,Short类型。InBuffer Count 接收缓冲区字节数,Short类型。该属性用于查询方式接收。OutBuffer Size 发送缓冲区中的大小,Short类型。OutBuffer Count 发送缓冲区字节数,Short类型。该属性用于查询方式发送。InputLen 设置或返回Input每次读出的字节数,Short类型。CommEvent 串口事件,Short类型。4.2.2数据的存储模块由于数据采集

36、中数据量相当大,所以本设计将从下位机得到的数据可以存储在文本中,这样不但可以方便打印、数据提取,当需要是也可以对其进行分析、处理。4.2.3显示模块这部分用MFC基于可视化软件开发,主要开发一个显示窗口,用来显示一个二维坐标,拉力为Y坐标轴,拉伸位移为X坐标轴,将接受到的数据以点的形式显示在相应的坐标区域内,并绘制两条直线将次区域区分开。可以通过点的分布情况分析恒力弹簧在某个范围内是否合格。该窗口还显示出实际计算的参数和输入标准参数:最大拉伸长度、张力波动区间、张力波动方差。最后一个操作按钮实现计算出的实际参数和标准参数的对比,得出该弹簧是否合格。4.2.4数据处理模块此模块主要用来分析、计算

37、显示模块中需要显示的参数。通过逐次检索、比较接收到的拉伸位移,得出最大的数值,该数值即弹簧的最大拉伸长度。通过比较接受到的拉力数据,得出最大值和最小值,最大值和最小值区域极为张力的波动区间。最后计算接受到的拉力值的方差。将这些值保存在相应的变量中,以便显示和标准参数的对比,之后得出弹簧的特性以及对弹簧的标准参数进行适当的修改,使不合格的弹簧在修改后的标准中可在此利用。4.2.5数据的判断模块该模块中,先输入标准参数,然后根据实际计算出的参数进行分析、判断,从而的出弹簧是否合格。5人机交互与系统测试为了更好的实现通过计算机控制数据的接收和处理,本设计专门开发了一个可执行应用程序Shows。在Sh

38、ows中可实现上文提到过的显示模块、数据处理模块、判断模块、数据的传输模块、数据的存储模块,其软件流程图如图5-1所示。图5-1 上位机软件流程图5.1应用程序界面介绍由于该应用程序大部分功能为接受数据的坐标图形显示和经过后台处理后对数据的显示,因此以Shows命名的。它的工作是向下位机请求数据,然后将下位机发送来的数据以曲线形式绘制在二维坐标上,与此同时计算出改组数据的相关实测参数,当输入一组参考指标之后即可以判断该组数据是否合格。Shows应用程序的主界面见图5-2。图5-2 应用程序界面5.2应用程序功能介绍为了使用户更方便也更熟悉的掌握该软件所拥有的功能以及对其的应用,在此将Shows

39、应用程序界面分解成A、 B、C三个部分,以便于接下来对每个部分做出最详细的解释。Shows界面分解见图5-3。(1) A部分。这部分属于管理员操作的,在工业机器的操作中,一般生产线工人很少涉及到的操作就交给管理员操作,由于这些操作不当可能会对设备产生严重的后果。这部分有需要管理员输入正确的口令和密码后可以登陆到内部的管理员操作界面。管理员操作界面见图5-4。管理员操作界面包括六个操作项,张力端口号和位移端口号分别表示接受张力数据和接受拉伸位移数据所需要的端口号,默认情况下,张力端口为COM1,位移端口为COM3,如果需要别的端口号点击下拉列表进行选择,每个端口可供选择的范围为COM1COM32

40、。两个端口用的波特率、校验位、数据位、停止位,因此这四项设置每项都是被两个端口共享的。波特率默认位9600bps,如果需要可点击下拉列表进行选择,下拉列表中列出了常用的波特率参数。校验位默认位N(无校验位),如果需要校验位可点击下拉列表进行选择,下拉列表中列出了E(偶)、O(奇)校验位。数据位默认位8为,可以在下拉列表中选择5、6、7、8位。停止位默认为一位,可在下拉列表选择1、2位设置停止位参数。设置完毕各个选项之后(注意:在设置端口号时,确定该软件运行的硬件平台有设置的端口号,两个端口号不能重复,否则会出错)按“确定”按钮即可完成设置,该对话框即退出。图5-3 界面分解图图5-4 管理员操

41、作界面(2) B部分。该部分包含一个二维坐标和一个弹簧模拟图形。当按C部分中的“数据请求”按钮时,程序通过两个串口向下位机发送数据请求指令,下位机接受到该指令后会立刻将自己锁存的数据传输给计算机,计算机又通过发送指令的那两个串口接收发送来的数据,一边接受数据一边通过该部分下方的弹簧模拟图模拟弹簧拉伸状态实现外观上的实时性,可以使用户方便的知道数据接收的时刻状态。当数据接收完毕时模拟弹簧拉伸到最大长度,这是点击C部分的“数据处理”按钮,该部分的坐标图上会绘制出数据对应的二维曲线图,该坐标的Y坐标轴表示张力,显示范围为7.510N,X坐标轴表示位移,显示范围为050mm。(3) C部分。这部分较复

42、杂,包含的内容也较多。“数据请求”按钮主要向下位机发送指令,实现对下位机的控制。“数据处理”按钮将接收到的数据进行曲线绘制、处理,并将处理结果作为实测参数在“实测参数”部分显示出来以供参考和分析。“实测参数”部分包含最大拉伸长度、张力波动方差、张力波动区间。最大拉伸长度在程序中通过比较的方法,找出拉伸长度中最大数据来实现的。张力波动方差是先求出张力数据的平均值,然后求出方差值,此过程虽然简单,但计算次数繁琐,尤其是数据的转换,编写这部分的算法时花了翻小功夫。张力波动区间在程序的实现中通过比较,找出张力的最大值和最小值。“参考指标”和“实测参数”中的内容一样,不同的是这部分的参数由用户自己填写,

43、写入的内容都是经过严格检测做出的参考量。“判断数据”可以将用户输入的参考指标和实测参数进行比较,得出该组数据是否合格。该程序应用方便,界面干净整洁,使用时无需安装,只需点击可执行文件图标即可直接运行。5.3应用程序的测试由于作者电脑没有集成硬件串口,所以在做该测试中使用虚拟串口软件VSPD XP5进行测试。为了测试作者专门开发了一款测试软件,命名SerialComm。SerialComm程序专门实现下位机的功能,当它通过串口接收到下位机的数据发送指令时便可以将输入在发送窗口的数据自动发送出去,测试过程当中将SerialComm打开两次,一个使用COM2另一个使用COM4作为通信端口(注意:先将

44、第一次打开的串口关闭,再进行第二次打开,否则由于两次打开使用默认的同一个串口会出现错误提示),这是因为Shows程序打开时默认串口为COM1和COM3。如图5-4、5-5 所示,打开COM2端口和COM4端口,COM2端口发送张力数据,COM4端口发送拉伸位移数据。当按Shows中“数据请求”按钮时,SerialComm中数据接收窗口会出现Shows向它发送的指令,“01”、“02”分别表示张力数据请求和拉伸位移数据请求,当“01”、“02”指令被接收之后便发送发送数据窗口中的数据,发送完之后会在收到一个指令“03”,它表示对数据锁存。为了增加数据的精度,下位机采用的是十六位精度的A/D转换,

45、因此本系统传输中传输两位字节来表示一个数据,又因为数据对小数的要求较高,该传输时在下位机增加1000倍,数据到达上位机是在减小1000倍,这样做的是为了提高数据传输的精度。因此,在SerialComm程序的发送数据窗口看到的就是增加了1000倍的四位十六进制数,高字节表示低8位,低字节表示高8位。测试方法如下:附录中的数据为本次试验测试数据,将这些数据先增大1000倍,然后转换成两个字节的十六进制数,此时的数据相当于下位机传输来的数据,用SerialComm将这些数据从串口发出,并由Shows应用程序从串口接受,之后进行相关的处理、显示、分析等操作,见图5-7,图5-8。图5-5 发送拉力数据的测试程序图5-6 发送拉力位移数据的测

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号