基于PAC控制器的模拟量输入输出模块自动校准系统软件设计毕业论文
2020-04-08 15:11:36
摘 要
本文设计了一款用于PAC控制器AD校准的人机界面,实现自动校准、手动校准以及自动测试这三个主要功能,同时含有帮助主要功能实现的辅助功能。利用Qt平台搭建界面框架,界面由左、中、右三个布局构成。
辅助功能中最重要的就是通信功能的实现。本文使用多线程实现上位机与下位机、万用表以及作为信号源使用的模出模块的通信。与下位机和模出模块的通信协议使用了Modbus协议,实现串口和网口的通信。与万用表的通信则根据UT805A说明书中的相关协议实现串口的通信。
AD校准是本文设计的人机界面中最核心的功能,分为自动校准和手动校准两个功能,手动校准作为自动校准的辅助。将使用最小二乘法进行相关曲线的拟合得到校正参数。将校正参数传递给下位机,由下位机完成读数的更正。
为检验AD校准的效果,界面设计了自动测试的功能,对完成校准的PAC控制器进行实验测试,并生成报表。对测试不通过的PAC控制器重新进行校准。
搭建平台测试界面的功能。经测试,人机界面满足设计要求。
关键词:AD校准,Qt平台,多线程,最小二乘法,自动测试
Abstract
A HMI for AD calibration of PAC is designed to implement three main functions of automatic calibration, manual calibration, and automatic testing. It also contains auxiliary functions that help the main functions to be realized. The Qt platform is used to build the interface framework. The interface consists of left, middle, and right layouts. The most important of the auxiliary functions is the realization of communication functions. This article uses multi-threaded communication between the host computer and the lower machine, the multimeter, and the module used as a signal source. The communication protocol with the lower unit and the die-out module uses the Modbus protocol to implement communication between the serial port and the network port. Communication with the multimeter is based on the relevant protocol in the UT805A specification to achieve serial communication. AD calibration is the core function of the man-machine interface designed in this paper. It is divided into two functions: automatic calibration and manual calibration. Manual calibration is used as an aid to automatic calibration. The least squares method will be used to fit the correlation curve to obtain correction parameters. The correction parameters are passed to the lower machine, and the lower machine completes the correction of the reading. To verify the effectiveness of the AD calibration, the interface was designed for automated testing. The PAC controller that completed the calibration was tested experimentally and a report was generated. Recalibrate the failed PAC controller. Build a platform test interface. After testing, the man-machine interface meets the design requirements. Key words: AD calibration,Qt platform,multi-threading,least squares,automatic test 目 录 摘 要 I Abstract II 1 绪论 1 1.1 自动化测试的简介 1 1.2 PAC控制器的简述 2 1.3 本文的主要工作 3 2 人机界面的设计 5 2.1 Qt软件的应用 5 2.2 人机界面的设计原则 6 2.3 界面软件的功能 8 2.3.1 软件的主要功能 8 2.3.2 软件的辅助功能 9 2.4 界面的布局 11 2.5本章小结 13 3 PAC的通讯校准和测试 14 3.1 通信协议 14 3.1.1 PAC串口通信协议 14 3.1.2 PAC网口通信协议 16 3.1.3 PAC内存分配 16 3.1.4 万用表串口通信协议 17 3.2 AD校准 20 3.2.1 AD校准的策略 20 3.2.2 曲线拟合的方法 21 3.3 自动校准的实现 24 3.3.1多线程机制 24 3.3.2 下位机通信线程的实现 27 3.3.3 模出模块通信线程的实现 30 3.3.4 万用表通信线程的实现 30 3.3.5 自动校准线程的实现 34 3.4 手动校准的实现 36 3.5 自动测试 36 3.6 本章小结 37 4 人机界面的测试与分析 38 4.1 测试平台的搭建 38 4.2 人机界面的评估 39 4.3 本章小结 43 5 总结和展望 44 参考文献 45 致 谢 46 附录 471 绪论
自动化测试来源于软件测试。上世纪80年代初,软件和IT行业迅速崛起,进入了一个高速发展时期,软件朝着复杂化、大型化方向演变,对软件的质量越来越重视,软件测试的基础理论和实用技术也应运而生。测试已经成为对程序和系统的重要评价。软件测试可以分为手动测试和自动化测试,在目前的测试领域中,自动化测试已经逐渐取代手动测试,成为一种主流的测试方式[1]。 PAC控制器是一种结合了PLC和PC机优势的一种新型控制器,它拥有高配置的硬件,具有强大的数据处理能力,可满足各种复杂算法的需要,因而在现代工业控制领域发挥了巨大的作用。 在PAC上编写复杂的算法,使得开发人员必须进行软件测试。在测试环境复杂、测试量分析工作量大或者一些手动测试无法做到的情况下,则需进行自动化测试,以提高测试效率。 本章将介绍自动化测试的概况、PAC控制器的发展,最后给出本文的主要研究对象和工作。1.1 自动化测试的简介
自动化测试指的是使用机器对程序和系统进行测试。将手动测试改为机器执行就成为了自动化测试。自动化测试节省了人力、时间以及硬件资源,提高了测试效率。 自动化测试与软件开发过程从本质上来说是相同的。自动化测试是利用自动化测试工具,通过对测试需求的分析,设计出合理的测试用例,进而搭建完整的自动化测试的体系框架,编写自动化脚本程序,并对脚本进行测试,以完成整个测试程序。 在这个过程开始之前,必须先明确所进行的项目是否符合自动化测试的前提条件。首先项目的需求性应当稳定,一个需求经常变动的模块,其测试脚本也将不停地改动,而脚本的改动都是需要成本的(时间成本和人力成本等),这就背离了自动化测试的初衷。其次,项目的周期应当足够长,因为测试需求的分析、测试用例的编写、测试框架的搭建以及脚本程序的设计和调试都是需要花费大量时间。第三,所编写的脚本应当可以重复使用,以最小的投入获得最大的回报。 当测试项目满足了自动化测试的前提条件,并确定着手自动化测试的开发后,就需要对测试需求进行分析。测试需要达到什么目的,过程中需要用到哪些技术,对象是哪些内容,这些都是需要注意的。该过程确定了自动化测试的范围及对应的测试用例和测试数据,并生成相关文档,有助于搭建自动化测试框架。 自动化测试框架类似于软件架构,定义了使用脚本时需要调用的文件、结构和调用的过程以及文件结构的划分方法。自动化测试框架的典型要素包括公用的对象、公用的环境、公用的方法以及测试数据。 窗口、页面、按钮等这些会被重复地使用的对象可被提取出来,在编写脚本时随时调用。如需变更这些公用对象的属性,无需修改相关的测试脚本,只需修改对象属性即可。 相同的测试环境也需要独立封装,便于各测试用例调用。在修改测试环境时也无需改动脚本的其他部分,能够增强脚本的可维护性。 测试中会经常使用一些测试的方法,重复地编写会产生浪费。因而可将这些经常使用是测试方法自己编写,并被独立的放置,作为公用的方法方便脚本调用。 除此之外,将测试数据放在一个独立的文件中,方便脚本的调用。将数据同操作分离开来,避免了操作脚本的重复编写,从而达到数据覆盖的目的。 在实施自动化测试之前,需要选择合适的自动化测试工具。这就需要对测试项目进行成本效应分析。项目的时间和人力的消耗都是需要考虑的对象。当使用了自动化测试能够缩短整个项目的时间并节省了大量的人力,这样的效益才是可观的,选择自动化测试才是明智的。如使用基于Client Server的负载测试或者基于Web系统的测试[]。此外,对于测试工具的功能和价格的考量也是必要的,项目负责人需要在众多商业工具中选择一款适合公司和项目的自动化测试工具。目前比较著名、比较受欢迎的自动化测试商业工具有IBM公司的Robot、Mercury Interactive公司Winrunner和Corn—puware公司QACenter。 选择设计合适的测试用例,而对于测试数据,也应当进行合理地设计。首先需要统一规划测试数据的来源,搞清楚其来自于数据库还是外部文件,或是来源于其他途径。其次,使用传统的划分等价类和确定边界值等测试技术进行测试数据的设计。此外,同上述所说,需要组织人员将测试数据写入一个独立的模块或文件,这有助于编程人员专注与测试用例的编写而无需操心于数据方面。1.2 PAC控制器的简述
PAC控制器又称为可编程自动化控制器,是一种结合了PLC和PC机功能的一种新型控制器。 PLC出现于上世纪60年代,80年代至90年代高速发展,在现代工业控制领域中拥有举足轻重的地位。PLC依靠专用的硬件芯片运作,具有集成度高,安装方便、运行速度快的特点。但由于其封闭的体系结构,使得不同公司的硬件体系、编程语言以及指令互不兼容,给用户的使用带来诸多的限制[2]。 自上世纪八、九十年代以来,行业内开始考虑将PC机运用工业上的控制工程中。PC机具有庞大的存储容量,拥有完备的通信系统,能够分析和运行极难的算法。由于PC已是企业作业的标准平台,利用PC的高相容性来将作业现场与企业e化系统整合,已成制造业系统建置重点之一。但是基于PC机的控制程序过于复杂,对编程有较高的要求,其控制的稳定性也遭受质疑。 PAC结合了PLC和PC机的最佳特性,是一种新型的控制器[3]。PAC继承了PC机优异的处理器、庞大的存储控件,兼有PLC控制稳定、结构牢固的本质。与PC机类似,PAC能够获取的丰富的资源供其使用,并使用通用的编程语言编写复杂的算法,充分地利用其强大的数据处理能力。同时,PAC采取了开放式结构,控制工程师可以根据所需从市面选择成熟的产品,构建新的PAC结构,因而其拥有兼容性高、技术成熟、成本低廉、开发周期短的特点。
您需要先支付 50元 才能查看全部内容!立即支付
您可能感兴趣的文章
- 一种确定磁探针集总电路参数的标定方法外文翻译资料
- 一种人体可接触的大气压低温等离子体射流装置研究(适合电气B方向)毕业论文
- 氩氧中大气压DBD放电特性研究(适合电气B方向)毕业论文
- 大气压氩等离子体射流放电影响因素的仿真研究(适合浦电气B方向)毕业论文
- 含氧高活性均匀DBD改性聚合物薄膜研究(适合浦电气B方向)毕业论文
- 反应器结构对气液两相DBD放电特性的比较(适合浦电气B方向)毕业论文
- 南京某公司研发楼电气设计毕业论文
- 金帆北苑地块经济适用住房——02栋商住楼电气设计(适用于浦电气1004~06A方向学生)毕业论文
- 扬州人武部大楼电气设计毕业论文
- 金帆北苑地块经济适用住房——04栋商住楼电气设计(适用于浦电气1004~06A方向学生)毕业论文