超偏超重检测系统的设计与实现设计.doc

上传人:本田雅阁 文档编号:2084418 上传时间:2019-02-11 格式:DOC 页数:58 大小:4.29MB
返回 下载 相关 举报
超偏超重检测系统的设计与实现设计.doc_第1页
第1页 / 共58页
超偏超重检测系统的设计与实现设计.doc_第2页
第2页 / 共58页
超偏超重检测系统的设计与实现设计.doc_第3页
第3页 / 共58页
亲,该文档总共58页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《超偏超重检测系统的设计与实现设计.doc》由会员分享,可在线阅读,更多相关《超偏超重检测系统的设计与实现设计.doc(58页珍藏版)》请在三一文库上搜索。

1、超偏超重检测系统的设计与实现 Design and Implementation of Overweight- erroweight Detecting System by Liu Wenwen Supervisor: Yang Ying Northeastern University June 2010 东北大学本科毕业设计(论文) 毕业设计(论文)任务书 I 毕业设计(论文)原创性声明和使用授权说明毕业设计(论文)原创性声明和使用授权说明 原创性声明原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师 的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以 标注和致

2、谢的地方外,不包含其他人或组织已经发表或公布过的研究 成果,也不包含我为获得 及其它教育机构的学位或学历而 使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均 已在文中作了明确的说明并表示了谢意。 作 者 签 名: 日 期: 指导教师签名: 日 期: 使用授权说明使用授权说明 本人完全了解 大学关于收集、保存、使用毕业设计(论文) 的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本; 学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与 阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论 文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

3、作者签名: 日 期: 东北大学本科毕业设计(论文) 毕业设计(论文)任务书 II 学位学位论论文原文原创创性声明性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研 究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文 不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研 究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完 全意识到本声明的法律后果由本人承担。 作者签名: 日期: 年 月 日 学位学位论论文版文版权权使用授使用授权书权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定, 同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,

4、允许论文被查阅和借阅。本人授权 大学可以将本学位 论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩 印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名:日期: 年 月 日 导师签名: 日期: 年 月 日 东北大学本科毕业设计(论文) 毕业设计(论文)任务书 III 毕业设计(论文)任务书毕业设计(论文)任务书 毕业设计(论文)题目:毕业设计(论文)题目: 超偏超重检测系统的设计与实现超偏超重检测系统的设计与实现 基本内容:基本内容: 基于 linux 操作系统上的程序开发(本设计在虚拟机下的 LinuxRedHat 9.0 操作系统上进行),经交叉编译后将

5、可执行文件移植到 ARM 机上,通过现场 测试人员的信息选择以及检测卡尺的数据采集,并能对数据进行计算、查找、 打印输出,通过运行结果与车辆标重(BZ)比较来检测车辆是否有超偏超重 情况。 毕业设计(论文)专题部分:毕业设计(论文)专题部分: 题目:题目: 基本内容:基本内容: 学生接受毕业设计(论文)题目日期学生接受毕业设计(论文)题目日期 第第 周周 指导教师签字:指导教师签字: 年年 月月 日日 东北大学本科毕业设计(论文) 摘要 II 超偏超重检测系统的设计与实现 摘 要 随着中国加入 WTO,国内物流企业既面临前所未有的机遇,也面临残酷的 市场竞争。而铁路作为国家重要的基础设施、国民

6、经济的大动脉和大众化的交 通工具,在现代物流体系中发挥着重要作用,为国民经济持续快速协调健康发 展提供了强大的运力支持,为物流业的快速发展奠定了结实的基础。 而在大量铁路货运运输过程中,列车车厢会存在超重偏重的现象,在运输 过程中存在很大的安全隐患,极大地影响着铁路运输的安全和铁路的整体形象, 为了避免造成巨大的人员伤亡及财产损失,如果能方便,准确,有效,及时地检测 列车超偏超重问题,便可极大限度地预防此类事故的发生,因此列车车厢超偏超 载检测对铁路运输有着极其重大的意义。 系统的主要功能就是对车厢四轴进行数据采集,通过系统计算结果,检测 该车厢是否有超重偏重现象发生。该系统是基于 Linux

7、 操作系统上的 C+程序 开发(本设计在 VMware 下的 LiunxRedHat 9.0 操作系统上进行) ,经交叉编译 后将可执行文件移植到 ARM 机上,通过现场测试人员的信息选择以及检测卡尺 的数据采集,分别在空/重(K/Z)情况下,对车辆弹簧压缩情况进行测量,数 据录入、保存,系统计算后,将计算结果与标重(BZ)比较,检测车辆是否发 生超偏超重情况。 本文首先进行了系统的需求获取和业务分析。然后,采用分治的方法对系 统进行设计,将系统分为若干个功能模块,叙述了各个功能模块的详细设计与 实现。通过对系统的测试,对其功能和性能进行评估。最后,进行总结,介绍 系统的特点和不足之处,说明下

8、一步的工作方向。 关键字:车厢,超重,偏重,嵌入式开发 东北大学本科毕业设计(论文) Abstract III Design and Implementation of Overweight-errorweight Detecting System Abstract With Chinas accession to WTO, the domestic logistics business facing unprecedented opportunities, but also face brutal competition in the market. The railway as a nat

9、ional critical infrastructure, the national economy artery and popular means of transport in modern logistics system plays an important role, for the sustained, rapid, coordinated and healthy development of a strong capacity to support the rapid development of logistics industry laid a solid foundat

10、ion. In a large number of rail freight transportation, the train cars will exist excess emphasis on the phenomenon, in transit there is a big security risk, greatly affecting rail safety and rails overall image, in order to avoid huge casualties and property damage, if convenient, accurate, effectiv

11、e and timely detection of train Unbalanced overweight, can greatly limit to prevent such incidents, so rail vehicles over partial overload detection on rail transport has a great significance. Main function is to collect data on the car four-axis, calculated by the system to detect whether there is

12、excess emphasis on the car phenomenon. The system is based on the Linux operating system on the C + + application development (the design LiunxRedHat 9.0 operating system under VMware on), by the cross compiler will be ported to ARM machine executable file, through field testing of information perso

13、nnel selection and testing caliper data collection, respectively, air / weight (K / Z) case, the vehicle to measure the spring compressed, data entry, storage, system calculations, the calculated results with standard weight (BZ) compared to detect whether the vehicle is to occur, Partial overweight

14、. Firstly, the system requires for access and business analysis. Then, using the partition method of the system design, the system is divided into several functional modules, described the various functional modules of the detailed design and implementation. Through the system, test its functionalit

15、y and performance assessment. Finally, to sum up, introduc the system features and shortcomings, indicating future work directions. Key words: cars, overweight, erroweight, embedded development 东北大学毕业设计(论文) 目录 IV 目 录 毕业设计(论文)任务书.I 摘 要.II ABSTRACT.III 第 1 章 引 言1 1.1 课题研究的背景和来源 .1 1.2 课题研究成果应用的实际意义 .2

16、 1.3 本文的内容及主要工作 .3 第 2 章 相关技术简介5 2.1 嵌入式 LINUX开发环境.5 2.2 QT 系统5 2.2.1 QT/Embedded 开发环境5 2.2.2 QT 的优势.6 2.2.3 Qtopia6 2.3 交叉编译开发环境 .6 2.4 本章小结 .7 第 3 章 需求分析9 3.1 系统实现目标 .9 3.2 系统运行环境 .9 3.3 功能性需求描述 .9 3.3.1 开始检测10 3.3.2 计算打印11 3.3.3 查询修改11 3.3.4 联机上传11 3.4 非功能性需求描述 .11 3.5 本章小结 .12 第 4 章 系统设计13 4.1 系

17、统设计原则 .13 4.2 系统总体设计 .13 4.3 主要窗口设计 .14 东北大学毕业设计(论文) 目录 V 4.3.1 Login 设计.14 4.3.2 MainDlg 主窗口设计 .15 4.3.3 Measure 窗口设计17 4.3.4 Myquery 设计.20 4.3.5 Browse4print 设计21 4.3.6 Upload 窗口设计22 4.3.7 Disquery 设计.23 4.3.8 Print 设计24 4.3.9 Dataif 设计24 4.3.10 Key 设计.25 4.3.11 Posix_QextSerialPort 串口设计.26 4.3.12

18、 Result 设计26 4.4 本章小结 .26 第 5 章 系统实现27 5.1 开始检测模块 .27 5.2 计算打印模块 .29 5.3 查找修改 .32 5.4 联机上传 .35 5.5 本章小结 .35 第 6 章 系统测试37 6.1 单元测试 .37 6.2 集成测试 .38 6.3 系统测试 .38 6.3.1 系统测试数据.38 6.4 本章小结 .39 第 7 章 结 论41 7.1 本文工作总结 .41 7.2 进一步展望 .41 参考文献43 致 谢45 东北大学毕业设计(论文) 第 1 章 引言 - 1 - 第 1 章 引 言 1.1 课题研究的背景和来源 铁路作为

19、国民经济的大动脉,铁路货运在现代物流体系中发挥着重要作用, 为了能更好的为国民经济持续快速的发展提供运力,保证铁路货运的安全,对 火车安全系数的检测显得尤为重要。 随着电子技术的快速发展,特别是大规模集成电路的产生而出现的微型机, 使现代科学研究得到了质的飞跃,而嵌入式微控制器技术的出现则是给现代工 业控制领域带来了一次新的技术革命。超偏超重检测系统就是基于嵌入式系统 的开发,满足现代铁路货运检测的嵌入式新产品。 同其他计算机技术一样,嵌入式也是在硬件和软件交替发展的双螺旋支撑 下逐渐趋于稳定和成熟的。 嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪, 适用于应用系统对功能、可

20、靠性、成本、体积、功耗有严格要求的专用计算机 系统。它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的 应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能1。 嵌入式系统的特点:嵌入式系统功耗低、体积小、专用性强。嵌入式系统 与 PC 的最大不同就是嵌入式 CPU 大多工作在为特定用户群的系统中,能够把 PC 中许多由板卡完成的任务集成在芯片内部,从而有利于嵌入式系统设计趋于 小型化。 为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储 器芯片或单片机本身中,而不是存储于磁盘等载体中。 嵌入式系统的硬件和软件都必须高效率地设计,系统要精简。操作系统一

21、般和应用软件集成在一起。 对软件代码质量要求很高,应该尽最大可能避免“死机”的发生。 嵌入式系统开始需要专门的开发工具和开发环境。 嵌入式系统一般指非 PC 系统,它包括硬件和软件两部分。硬件包括处理器 微处理器、存储器及外设器件和 IO 端口、图形控制器等。软件部分包括操 作系统软件(OS) (要求实时和多任务操作)和应用程序编程。有时设计人员把 这两种软件组合在一起。应用程序控制着系统的运作和行为;而操作系统控制 东北大学毕业设计(论文) 第 1 章 引言 - 2 - 着应用程序编程与硬件的交互作用5。 嵌入式控制器的应用几乎无处不在:移动电话、家用电器、汽车无不有 它的踪影。嵌入式控制器

22、因其体积小、可靠性高、功能强、灵活方便等许多优 点,其应用已深入到工业、农业、教育、国防、科研以及日常生活等各个领域, 对各行各业的技术改造、产品更新换代、加速自动化化进程、提高生产率等方 面起到了极其重要的推动作用。 嵌入式计算机在应用数量上远远超过了各种通用计算机,一台通用计算机的 外部设备中就包含了 5 - 10 个嵌入式微处理器。在制造工业、过程控制、网 络、通讯、仪器、仪表、汽车、船舶、航空、航天、军事装备、消费类产品等 方面均是嵌入式计算机的应用领域。 嵌入式系统工业是专用计算机工业,其目的就是要把一切变得更简单、更方 便、更普遍、更适用;通用计算机的发展变为功能电脑,普遍进入社会

23、,嵌入式计 算机发展的目标是专用电脑,实现“普遍化计算”,因此可以称嵌入式智能芯片 是构成未来世界的“数字基因”7。 1.2 课题研究成果应用的实际意义 铁路行车安全是铁路运输工作的重中之重。铁路部门将防止货物“三重一超 两脱一开“(超重,偏重,集重;超限;货物脱落,蓬布脱落;车门开放)作为确保行 车安全的重要工作常抓不懈,通过明确岗位责任制,强化作业现场管理等方法,但 是由于历史原因,铁路现有的货运货物计量一直采用比较原始的计量方式:整车 货物以件计算,散装货物通过测定其密度来确定装载高度,这些办法非常不准确, 因而,货运列车因为超重、偏载而引起断轴、切轴、爬轨和列车颠覆事故时有发 生,引起

24、的事故骇人听闻,极大地影响着铁路运输的安全和铁路的整体形象,超 偏超载近年来成为影响铁路行车安全的重要因素,如果能方便,准确,有效,及时 地检测列车超偏超重问题,便可极大限度地预防此类事故的发生,因此铁路车辆 超偏超载检测对铁路运输有着极其重大的意义。 由于铁路车辆检测具有重大意义,在超偏超重检测方面有很多方法,最常 见的有轨道衡方法。固定式轨道衡测量方法只具有简单的静态称重功能,投资大 且需要专门的称重地点,不能检测出偏载,而且由于安装要求和成本较高,无法大 量采用,使应用受到很大的局限性。嵌入式的发展极大推动了计算机技术和计算 机产业的发展,使计算机与各个领域完美结合,所以将计算机技术与铁

25、路检测 结合起来,将检测算法以计算机软件形式经过嵌入式开发应用到现在铁路检测 当中。 东北大学毕业设计(论文) 第 1 章 引言 - 3 - 本课题研究的系统,是通过嵌入式系统,将超偏超生检测算法通过程序移 植到 ARM 机上,系统通过检测人员的信息选择及数据采集,并进行数据的计算、 保存、打印,将计算得到的结果与车厢标重比较,实现对车厢超偏超重的检测。 1.3 本文的内容及主要工作 本文在分析介绍了嵌入式系统相关技术,基于铁路检测系统的需求特点, 完成嵌入式检测系统的设计,实现对车厢超偏超重的检测。 各章的内容组织如下: 第 2 章介绍了嵌入式 Linux 开发环境、QT 系统、交叉编译技术

26、。 第 3 章分析了系统的开发环境,利用用例建模分析系统的功能需求,并且 根据实际情况补充了部分需求,提出了非功能性需求。 第 4 章对系统进行总体设计,对检测系统的各个窗口进行设计,包括 login、mainDlg、measure 、myquery、disquery、browse4print、print、upload、key,并画出个别窗口 的类图。 第 5 章通过流程图介绍了开始检测、计算打印、查询修改、联机上传四个 模块的实现,并简单系统的工作流程。 第 6 章介绍了利用工具进行测试的情况,并对出现的错误进行了分析解决。 第 7 章结论部分是对整个论文工作的总结以及下一步工作的展望,指出

27、我们工 作中有待改进的地方,同时指明了下一步的研究方向。 东北大学毕业设计(论文) 第 1 章 引言 - 4 - 东北大学本科毕业设计(论文) 第 2 章 相关技术简介 - 5 - 第 2 章 相关技术简介 2.1 嵌入式 Linux 开发环境 由于嵌入式系统本身相对于 PC 来说资源的缺乏,可能嵌入式设备上根本没 有标准显示终端或者标准键盘,因此也就不可能在嵌入式设备上直接进行程序 编制,即嵌入式系统本身不具备自举开发能力,只能先在 PC 上完成程序编写、 编译、链接,之后把可执行程序下载到嵌入式设备上运行。通常采用宿主机+目 标机的交叉调试方式。宿主机就是安装有嵌入式 linux 开发环境

28、的 PC 机,可以 利用它强大的功能资源高效地完成目标系统的开发。嵌入式开发通常需要有交 叉编译、调试等系列工具、目标板的编程下载工具、目标处理器及平台的整个 内核源码树等。可以自己去组建、移植所有的一切8。 2.2 QT 系统 QT 是一个支持多操作系统平台的应用程序开发框架,它的开发语言是 C+。QT 最初主要是为跨平台的软件开发者提供统一的、精美的图形用户编程 接口,但是现在它也提供了统一的网络和数据库操作的编程接口12,13,14。 QT 是以工具开发包的形式提供给开发者的,这些工具开发包包括了图形设 计器、Makefile 制作工具、字体国际化工具和 QT 的 C+类库等。谈到 C+

29、类库 我们自然会想到 MFC。QT 的类库等价于 MFC 的开发库,但是 QT 的类库是支持跨 平台的类库,也就是说 QT 类库封装了适应不同操作系统的访问细节,这是 QT 的魅力所在。目前 QT 支持的操作系统平台包括: MS/Windows - 95、98、2000、XP 和 Vista Unix/Linux 和很多其他 X11 平台; Macintosh -Mac OS X; Embedded 有帧缓冲(framebuffer)支持的 Linux 平台,Windows CE10。 2.2.1 QT/Embedded 开发环境 QT/Embedded 是一个为嵌入式设备上的图形用户接口和应

30、用开发而定制的 C+工具开发包。通常可以运行在多种不同的处理器上部署的嵌入式 Linux 操作 系统上。此外,QT/Embedded 还包括了几个提高开发速度的工具。 一般来说,属于 QT/Embedded 开发的应用程序最终会发布到安装有嵌入式 东北大学本科毕业设计(论文) 第 2 章 相关技术简介 - 6 - Linux 操作系统的小型设备上,所以使用装有 Linux 操作系统的 PC 或者工作站 来完成 QT/Embedded 开发当然是最理想的环境,尽管 QT/Embedded 也可以安装 在 UNIX 和 Windows 系统上13。 2.2.2 QT 的优势 QT 同 X Wind

31、ow 上的 Motif,Openwin,GTK 等图形界面库和 Windows 平台 上的 MFC,OWL,VCL,ATL 是同类型的东西,但是 QT 具有下列优点: (1)优良的跨平台特性: QT 支持下列操作系统: Microsoft Windows 95/98,Microsoft Windows NT, Linux,Sun OS,HP-UX,等等。 (2)面向对象:QT 的良好封装机制使得 QT 的模块化程度非常高,可重用性 较好,对于用户开发来说是非常方便的。QT 提供了一种称为 signals/slots 的安全类型来替代 callback,这使得各个元件之间的协同工作变得十分简单。

32、 (3)丰富的 API :QT 包括多达 250 个以上的 C+ 类,还提供基于模板的 collections,serialization,file,I/O device,directory management,date/time 类,甚至还包括正则表达式的处理功能。 2.2.3 Qtopia Qtopia 是为采用嵌入式 Linux 操作系统的消费电子设备而开发的综合应用 平台, Qtopia 包含完整的应用层、灵活的用户界面、窗口操作系统、应用程序 启动程序以及开发框架。 2.3 交叉编译开发环境 程序设计需要开发环境的支持。根据运行平台的不同,开发环境分为本地 开发环境和交叉开发环境,

33、交叉开发环境又可分为开放型以及商业型两大类。 需要交叉开发环境的支持是嵌入式应用软件开发的一个显著特点,交叉开发环 境是指编译、链接、和调试嵌入式应用软件的开发环境,与运行嵌入式应用软 件的环境有所不同,通常采用宿主机+目标机6。 高级语言编写的 源文件 主机系统 目标处理器汇编 语言编写的源文 件 交叉编译器 交叉汇编器 目标文件 目标文件 链接器 二进制可执 行文件 目 标 系 统 东北大学本科毕业设计(论文) 第 2 章 相关技术简介 - 7 - 图 2.1 交叉编译过程 2.4 本章小结 本章等待先对嵌入式 Linux 开发环境进行了简单介绍,以及当今嵌入式开 发流行的原因;介绍了 Q

34、T 系统、如何建立 QT/Embedded 开发环境、QT 的优势 以及 Qtopia 开发平台;同时介绍了交叉编译开发环境。 东北大学本科毕业设计(论文) 第 2 章 相关技术简介 - 8 - 东北大学本科毕业设计(论文) 第 3 章 需求分析 - 9 - 第 3 章 需求分析 软件需求分析所要做的工作是深入描述软件的功能和性能,确定软件设计 的限制和软件同其它系统元素的接口细节,定义软件的其它有效性需求。它的 主要用途是明确系统需求,是用户和开发人员之间进行讨论的基础,并作为系 统设计、实现以及测试的依据。只有准确全面的需求获取与分析才能保证系统 设计、系统实现的顺利进行,为后期测试提供必

35、要的支持。 3.1 系统实现目标 在火车载重检测过程中,首先分别在空/重(K/Z)情况下,对火车车厢四 轴弹簧压缩情况进行测量,数据采集、录入、保存,通过系统计算,将计算结 果与标重(BZ)比较,检测车辆是否超偏超重。 为保证检测系统能够有效地为车辆超偏超重检测人员服务,从功能上必须 达到以下目标: 必须实现在车辆超偏超重检测过程中的所有必需功能。作为超偏超重检测 系统,系统必须能够实现对数据的采集、录入,保存,查找、打印等功能,保 证系统实现的功能的有效性。 必须保证检测人员得到数据的及时性和可靠性。检测人员作为整个系统的 操作者,系统的信息通过检测人员的采集和录入,通过卡尺采集到的数据也必

36、 须快速传达给系统,同时,要保证得到的数据的可靠性。 必须保证检测人员和系统之间进行有效地通信。对于检测系统而言,通过 系统计算得到的数据,对车辆是否进行调整尤其重要,所以,要保证检测人员 和系统通信的通畅性、有效性,提高系统检测的效率。 3.2 系统运行环境 硬件环境:嵌入式开发板 FriendlyARM,数据采集卡尺,热敏打印机, 软件环境:VMware 下的 LinuxRedHat 9.0 操作系统,采用 QT 系统的 C+程 序开发。 3.3 功能性需求描述 在面向对象的系统分析中,获取功能需求的最常用的技术就是用例建模技 术。它能够直观地向客户展示系统的功能,方便技术人员准确地获取需

37、求。在 项目开发的前期,它帮助开发人员理解系统的需求而不考虑具体的实现方法。 东北大学本科毕业设计(论文) 第 3 章 需求分析 - 10 - 用例,表示系统的一种行为或者某个功能。它是在特定条件下,为了达到某种 目的,系统和用户之间进行交互的一个序列。用例模型由参与者和用例组成, 参与者是与系统进行交互的外部实体,可能是某个人或者是某个事物。下图显 示的就是本系统的用例图。本系统中,参与者是检测人员,对于用例分析来说, 只有用例图和用例描述相结合才能表示系统的需求,相关的用例描述如下: 系系统统 检测人员 登录退出 开始检测 计算打印 查询修改 联机上传 查询 打印 修改 图 3.1 超偏超

38、重检测系统用例图 3.3.1 开始检测 用例标识:1.0 参与者:检测人员 简要说明:检测人员在系统要求下选择信息、采集数据。 基本事件流: 东北大学本科毕业设计(论文) 第 3 章 需求分析 - 11 - 1)检测人员选择信息,包括空/重(K/Z) 、车型 (c50121/k1023/w8110/w8010)等,对车辆进行数据采集。 2)对所测量车号录入,并进行保存,选择是否打印。 3.3.2 计算打印 用例标识:2.0 参与者:检测人员 简单说明:检测人员向系统提供要计算打印的车号或日期,系统显示出要 打印的记录或显示“无记录” ,查询到记录可以选择打印结果。 基本事件流: 1)检测人员向

39、系统提供要查询的车号或日期进行查询。 系统进行查询,反馈结果,查询方式为按日期查询时,可以查到当天的多 个记录。 2)检测人员可以对查询到数据进行修改、保存、打印结果。 3.3.3 查询修改 用例标识:3.0参与者: 收货人 简要说明:货物到达站点以后,由收货人将货物提走。 基本事件流: 1)货物在卸货操作以后检测当前位置,若当前站点和目的站点相同,则提 示相关人员货物已经到达目的地。 2)管理人员联络收货人完成提货操作。系统修改货物的状态。 3.3.4 联机上传 用例标识:4.0 参与者:检测人员 简单说明:检测人员向宿主机发出信号,上传数据。 基本事件流: 1)检测人员向宿主机发出信号,选

40、择是否上传数据,并选择是否删除现存 记录。 3.4 非功能性需求描述 非功能性需求在整个系统中占有非常重要的位置,对系统的非功能性需求 的满足是系统成功的基础,下面列出本系统的非功能性需求: (1) 系统能够长时间的持续工作。 对于企业应用级的系统来说,软件的稳定性与正确性一样重要。考虑到本 东北大学本科毕业设计(论文) 第 3 章 需求分析 - 12 - 系统的实际情况,检测系统必须提供满足 10 小时以上的工作电量。 (2) ARM 机必须能存储 100 条记录以上的空间。 因为检测人员随身携带本检测系统,当需要进行大量的数据测量与检测时, 要保证 ARM 机本身能够提供足够大的存储空间,

41、至少要达到 100 条记录,一次 检测工程结束后,可以将当前检测到的通过联机上传给宿主机,清空存储空间。 3.5 本章小结 本章首先介绍了系统的实现目标、开发环境。然后通过用例分析的方式获 取和分析了系统的功能性需求,对需求进行了补充,提出了系统的非功能性需 求。从而对系统的整体需求有了完整的了解。 从本章的需求分析中可以得出,系统的非功能性需求相对来说比较易于实 现,而功能性需求比较严格。对于功能性需求影响最大的就是系统设计的架构, 所以在设计和实现系统时,要在对系统的架构给予充分重视的前提下,实现功 能性需求。 东北大学本科毕业设计(论文) 第 4 章 系统设计 - 13 - 第 4 章

42、系统设计 4.1 系统设计原则 (1) 低成本。随着技术的进步和系统复杂性的增加,软件成本在整个系统 中所占的比重越来越大,企业应用中已经达到 25%左右,而且有继续增加的趋 势。为了降低系统的成本,系统中各个模块都采用开源项目中的组件完成。它 们不仅能够提供比较完善的功能,而且还能根据系统需求进行适当扩展。 (2) 规范性。从软件周期上来考虑,软件维护阶段在软件生命周期或生存 期中占较大比重,有的可达软件生存周期的 50-70%。所以需要软件在设计的过 程中积极遵循各种规范,保证后期维护和开发人员能够快速理解系统。 (3) 易扩展。系统的设计直接决定可扩展性。可扩展性是软件工程追求的 目标,

43、能够大大提高软件的复用程度,较低开发成本。 4.2 系统总体设计 系统主要是为铁路检测人员提供好的检测设备,所以简单快捷实用是根本 出发点。系统根据功能划分,将功能分解,降低之间的耦合性,从而,为了替 换某个模块达到质量或效率的提升,就不会改变整个结构,只需要改相应的模 块,工作量就会明显减少。 说明: 执行文件:jcxt 数据文件:data.txt 密码文件:password.txt 车型文件:vehicletype.txt 桌面文件:jcxt.desktop 项目文件:jcxt.pro (用 Qdevelop 打开) 交叉编译通过的 jcxt 二进制文件以及 data.txt 文件、pas

44、sword 文件、 vehicletype 文件复制到/opt/Qtopia/bin 路径下,桌面文件 jcxt.desktop 文 件复制到/opt/Qtopia/apps/Applications 。 源代码文件: login.cpp login.h 登录 main.cpp 主程序 mainDlg.cpp mainDlg.h 主窗口 东北大学本科毕业设计(论文) 第 4 章 系统设计 - 14 - measure.cpp measure.h 测量窗口 myquery.cpp myquery.h 查询窗口 display.cpp display.h 显示查询 browse4print.cpp

45、 browse4print.h 为打印查询 print.cpp print.h 打印 upload.cpp upload.h 上传数据 dataif.cpp dataif.h 读取数据接口 qextserialport.cpp qextserialport.h 串口 qextserialbase.cpp qextserialbase.h 串口基类 posix_qextserialport.cpp posix_qextserialport.h posix 串口 key.cpp key.h 输入数字、字符 myctrl.cpp myctrl.h 重写控件类 4.3 主要窗口设计 4.3.1 Log

46、in 设计 为了保证检测的保密性和安全性,对系统设置了密码,只有正确的登陆密 码和退出密码才能出入该系统。首先在 ARM 机上点击系统启动,进入系统,输 入登录密码,才允许进行下一步操作;同样的,在一次检测结束之后,输入退 出密码,才能退出系统。 在 login 主函数 login()中为输入的密码设置一个 edit 框,数字写入的位置 lineEdit = new QLineEdit(this); lineEdit-setGeometry(QRect(p00.x(), p00.y() + rowSpace, btWidth*2, btHeight - 10); lineEdit-setEch

47、oMode ( QLineEdit:Password ); lineEdit-show(); 设计 0-9 的数字按钮,点按数据键可以将数字以“*“号键的形式写入缓冲区 Button*= new PushButton(“*“ , this, 0); QObject:connect(button*,SIGNAL(clicked(QPushButton*),this, SLOT(btNumClicked(QPushButton *); Button*-setGeometry(QRect(p00.x(), p00.y() + 2*rowSpace, btWidth, btHeight); 对输入错误

48、的数字进行“清除” ,以便重新输入 btClear = new 东北大学本科毕业设计(论文) 第 4 章 系统设计 - 15 - QPushButton(codec-toUnicode(“清除“, strlen(“清除“) , this, 0); QObject:connect(btClear, SIGNAL(clicked(), this, SLOT(btClearClicked(); btClear-setGeometry(QRect(p00.x() + colSpace * 2, p00.y() + rowSpace, btWidth, btHeight); 函数 btNumClicked(QPushButton * btNum)

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1