2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩79頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、<p>  畢業(yè)設(shè)計(論文)材料之二(1)</p><p><b>  安徽工程大學(xué)本科</b></p><p><b>  畢業(yè)設(shè)計(論文)</b></p><p>  專 業(yè): 電子信息科學(xué)與技術(shù) </p><p>  題 目: 升降腳手架智能控制

2、系 </p><p>  統(tǒng)軟件設(shè)計 </p><p>  作 者 姓 名: </p><p>  導(dǎo)師及職稱: (講師) </p><p>  導(dǎo)師所在單位: 電氣工程學(xué)院 </p><p>  2011年

3、 6 月 15 日</p><p><b>  安徽工程大學(xué)</b></p><p>  本科畢業(yè)設(shè)計(論文)任務(wù)書</p><p>  2011 屆 電氣工程 學(xué)院</p><p>  電子信息科學(xué)與技術(shù) 專業(yè)</p><p>  學(xué)生姓名:

4、 </p><p> ?、?畢業(yè)設(shè)計(論文)題目</p><p>  中文:升降腳手架智能控制系統(tǒng)軟件設(shè)計</p><p>  英文:Software Design of Intelligent Control System for Lift Scaffold</p><p><b>  Ⅱ 原始資料<

5、;/b></p><p>  [1] 朱晴婷,黃海鷹.Visual C++程序設(shè)計——基礎(chǔ)與實例分析[M] .北京:清華大學(xué)出版社,2004.</p><p>  [2]孫鑫.Visual C++深入詳解[M].北京:電子工業(yè)出版社,2006.</p><p>  [3] 吳選忠,關(guān)光福.面向?qū)ο蠹夹g(shù)在火災(zāi)報警控制軟件設(shè)計中的應(yīng)用研究[J].福建工程學(xué)院學(xué)報,

6、2007,5(4):344-347.</p><p> ?、?畢業(yè)設(shè)計(論文)任務(wù)內(nèi)容</p><p>  1、升降腳手架數(shù)字化控制系統(tǒng)運(yùn)用計算機(jī)技術(shù)和傳感器測量技術(shù),通過計算機(jī)對被提升腳手架的重力信號及位移信號進(jìn)行采集,綜合分析并作出相應(yīng)處理,實現(xiàn)了對腳手架的升降及卸荷的全過程的實時監(jiān)測和自動控制。本設(shè)計要完成整個系統(tǒng)控制軟件設(shè)計,能培養(yǎng)學(xué)生的工程實踐能力和獨(dú)立解決問題的能力。<

7、/p><p>  2、本課題研究的主要內(nèi)容有:</p><p>  (1)整個系統(tǒng)界面設(shè)計;</p><p> ?。?)串口通信程序設(shè)計;</p><p> ?。?)簡單數(shù)據(jù)庫讀寫程序設(shè)計。</p><p><b>  3、提交的成果:</b></p><p>  (1)畢業(yè)設(shè)

8、計(論文)正文;</p><p><b> ?。?)附相關(guān)程序;</b></p><p> ?。?)至少一篇引用的外文文獻(xiàn)及其譯文;</p><p> ?。?)附不少于10篇主要參考文獻(xiàn)的題錄及摘要。</p><p><b>  指導(dǎo)教師(簽字)</b></p><p>&l

9、t;b>  教研室主任(簽字)</b></p><p>  批 準(zhǔn) 日 期2011年1月5日</p><p>  接受任務(wù)書日期2011年1月9日</p><p>  完 成 日 期2011年6月15日</p><p>  接受任務(wù)書學(xué)生(簽字)</p><p>  升降腳手架智能控制系統(tǒng)軟件設(shè)計&l

10、t;/p><p><b>  摘 要</b></p><p>  本課題運(yùn)用計算機(jī)技術(shù)和傳感器測量技術(shù),通過計算機(jī)對被提升腳手架的重力信號及位移信號進(jìn)行采集,綜合分析并作出相應(yīng)處理,實現(xiàn)了對腳手架的升降及卸荷的全過程的實時監(jiān)測和自動控制,系統(tǒng)中各分機(jī)的重力信號及位移信號能被實時檢測、實時報警、實時排障和實時控制。本課題完成的主要工作有:軟件界面設(shè)計、時限倒計時功能設(shè)

11、計、數(shù)據(jù)庫功能設(shè)計、串口通信功能設(shè)計。</p><p>  對于本課題的研究,筆者獲得了如下結(jié)論:通過軟件控制機(jī)械是當(dāng)今工程發(fā)展中的必然趨勢,也是一個很有價值的研究方向。對此,筆者認(rèn)為:軟件控制機(jī)械最關(guān)鍵的部分就在于軟件的設(shè)計以及軟件與機(jī)械通信方式的設(shè)計。</p><p>  在完成本課題的設(shè)計的過程中,需要用到MFC。運(yùn)用本課題中的各種結(jié)論、方法時需要理解其中的各種算法和整個軟件設(shè)計流程

12、以及整個軟件測試流程。之后,本課題的設(shè)計思路和各種算法均可應(yīng)用于相同類型課題。</p><p>  關(guān)鍵詞:腳手架;智能;MFC;數(shù)據(jù)庫;注冊表;串口</p><p>  Software Design of Intelligent Control System for Lift Scaffold</p><p><b>  Abstract</b&

13、gt;</p><p>  The subject of the use of computer technology and sensor technology, computer be promoted by the gravitational scaffolding signal and displacement signal acquisition, comprehensive analysis and

14、take appropriate action to achieve the lifting of the scaffold and the whole process of unloading the real-time monitoring and automatic control.In the system, the extension of the gravity signal and the displacement sig

15、nal can be detected in real time, real-time alerts, real-time troubleshooting and real</p><p>  For this topic, the author obtained the following conclusion: The software controls the development of mechanic

16、al engineering in today's inevitable, but also a valuable research direction. In this regard, the author think: Software control of the most critical part of the machinery lies in software design and the communicatio

17、n of software with mechanical design.</p><p>  For this project design,need to ues MFC. Use this topic in various conclusion, method, need to understand the kinds of algorithm and the software design process

18、 and the whole software testing process.Last of all, the design concept of the subject and various algorithms can be applied to the same type of issue.</p><p>  Key Words: Scaffold;Intelligence;MFC;Database;

19、Serial-port</p><p><b>  目錄</b></p><p><b>  引言- 1 -</b></p><p>  第1章緒論- 2 -</p><p>  1.1課題概述- 2 -</p><p>  1.2 簡述面向?qū)ο蠹癡C++- 2

20、-</p><p>  1.3 軟件控制機(jī)械的可實現(xiàn)性- 4 -</p><p>  1.4 軟件整體設(shè)計思路- 5 -</p><p>  第2章 軟件需求分析- 7 -</p><p>  2.1 界面需求分析- 7 -</p><p>  2.2 功能需求分析- 8 -</p><p

21、>  2.3 串口通信需求分析- 9 -</p><p>  2.4 數(shù)據(jù)庫需求分析- 10 -</p><p>  第3章 軟件子模塊設(shè)計- 11 -</p><p>  3.1 用戶界面設(shè)計- 11 -</p><p>  3.2 時限倒計時模塊設(shè)計- 33 -</p><p>  3.3 數(shù)據(jù)庫模

22、塊設(shè)計- 40 -</p><p>  3.4 串口通信模塊設(shè)計- 47 -</p><p>  第4章 軟件測試- 52 -</p><p>  4.1 測試計劃任務(wù)書- 52 -</p><p>  4.2 時限倒計時功能測試- 52 -</p><p>  4.3 數(shù)據(jù)庫傳輸功能測試- 53 -<

23、;/p><p>  4.4 串口通信模塊測試- 56 -</p><p>  結(jié)論與展望- 57 -</p><p><b>  致謝- 58 -</b></p><p>  參考文獻(xiàn)- 59 -</p><p>  附錄A 外文文獻(xiàn)及其譯文- 60 -</p><p&g

24、t;  附錄B 主要參考文獻(xiàn)題錄及摘要- 67 -</p><p>  附錄C 軟件使用說明書- 69 -</p><p><b>  插圖清單</b></p><p>  圖1-1 Visual studio 2010主界面截圖.......................................... 4</p>

25、<p>  圖1-2 軟件整體設(shè)計思路................................................... 6 </p><p>  圖2-1 界面大致運(yùn)行框圖................................................... 7 </p><p>  圖2-2 選項卡頁菜單框圖................

26、................................... 7 </p><p>  圖2-3系統(tǒng)功能大致框圖................................................... 8 </p><p>  圖3-1 軟件整體框架設(shè)計思路.............................................. 11 </

27、p><p>  圖3-2 歡迎界面框架...................................................... 12 </p><p>  圖3-3 登陸界面對話框框架................................................ 12 </p><p>  圖3-4 系統(tǒng)總界面框架.........

28、........................................... 12 </p><p>  圖3-5 多機(jī)控制框架...................................................... 13 </p><p>  圖3-6 選擇控制框架...............................................

29、....... 17 </p><p>  圖3-7 同步控制框架...................................................... 21 </p><p>  圖3-8 同步控制下的多機(jī)控制框架.......................................... 21 </p><p>  圖3-9 報警控

30、制框架...................................................... 25 </p><p>  圖3-10 參數(shù)管理框架..................................................... 28 </p><p>  圖3-11 密碼服務(wù)框架................................

31、..................... 32 </p><p>  圖3-12 注冊表中的上次運(yùn)行時間........................................... 40 </p><p>  圖3-13 時間表........................................................... 45 </p>&

32、lt;p>  圖3-14 登錄表........................................................... 45</p><p>  圖3-15 倒計時表......................................................... 46 </p><p>  圖3-16 參數(shù)密碼表...........

33、............................................ 46 </p><p>  圖3-17 參數(shù)表........................................................... 46 </p><p>  圖3-18 報警信息表...........................................

34、............ 47 </p><p>  圖4-1 測試計劃任務(wù)圖.................................................... 52 </p><p>  圖4-2 第一階段到期警告.................................................. 53 </p><p>  

35、圖4-3 系統(tǒng)時間修改警告.................................................. 53 </p><p>  圖4-4 參數(shù)修改界面...................................................... 54 </p><p>  圖4-5 參數(shù)修改后參數(shù)表對應(yīng)內(nèi)容.....................

36、..................... 54</p><p>  圖4-6 軟件倒計時天數(shù)及密碼設(shè)定.......................................... 55</p><p>  圖4-7 倒計時表對應(yīng)改變.................................................. 55</p><p> 

37、 圖4-8 系統(tǒng)密碼及參數(shù)密碼修改............................................ 55 </p><p>  圖4-9 登錄表中的對應(yīng)數(shù)據(jù)................................................ 55 </p><p>  圖4-10 參數(shù)密碼表中的對應(yīng)數(shù)據(jù)..........................

38、................. 55 </p><p>  圖4-11 串口通信模塊測試結(jié)果............................................. 56 </p><p><b>  表格清單</b></p><p>  表3-1 RS-485電氣規(guī)定表..........................

39、.......................48 </p><p><b>  引言</b></p><p>  升降腳手架數(shù)字化控制系統(tǒng)運(yùn)用計算機(jī)技術(shù)和傳感器測量技術(shù),通過計算機(jī)對被提升腳手架的重力信號及位移信號進(jìn)行采集,綜合分析并作出相應(yīng)處理,實現(xiàn)了對腳手架的升降及卸荷的全過程的實時監(jiān)測和自動控制,系統(tǒng)中各分機(jī)的重力信號及位移信號能被實時檢測、實時報警、實時排障

40、和實時控制。</p><p>  本文主要描述,運(yùn)用微軟公司Visual Studio中Visual C++的MFC來設(shè)計一款可視化的軟件,以之實現(xiàn)對于升降腳手架的軟件控制。</p><p>  當(dāng)下,軟件控制已經(jīng)趨于一個十分流行的局勢。事實上,軟件控制的本質(zhì)就是將計算機(jī)與所需要控制的系統(tǒng)相連接,通過協(xié)商好的通訊協(xié)議進(jìn)行信息的溝通交流,從而實現(xiàn)運(yùn)用軟件控制系統(tǒng),以及由系統(tǒng)發(fā)回數(shù)據(jù)給軟件分析

41、這樣的作業(yè)。而軟件在整個控制系統(tǒng)中就相當(dāng)于所需要控制的系統(tǒng)在計算機(jī)上的驅(qū)動工具。</p><p>  目前的升降腳手架控制系統(tǒng)一般通過電機(jī)控制來完成,事實上依然是通過人們手工的方式去進(jìn)行。這樣一來,就必須直接接近電力環(huán)境,對人身安全保障不夠到位。通過軟件去控制整個升降腳手架系統(tǒng)就可以避免這一點(diǎn),所以軟件控制也是必然的發(fā)展趨勢。畢竟,使用軟件控制升降腳手架,正符合當(dāng)下提倡的低風(fēng)險作業(yè)的需求,對于工人的安全起到很好的

42、保障作用。</p><p>  在現(xiàn)實中,工人們直接去操作腳手架,只能對單一的腳手架進(jìn)行操作,當(dāng)使用了本文提供的軟件系統(tǒng)來控制之后,就能夠?qū)崿F(xiàn)對多臺腳手架進(jìn)行共同操作,這也是傳統(tǒng)的控制方法所不具備的。</p><p>  本文將由軟件可實現(xiàn)升降腳手架智能控制系統(tǒng)開始描述,之后提出對于軟件的需求分析,然后開始進(jìn)行概要設(shè)計和詳細(xì)設(shè)計,在設(shè)計軟件的過程中嚴(yán)格按照軟件測試工程學(xué)的角度,第一時間介入

43、軟件測試,盡量使最終生成的軟件漏洞最少。</p><p><b>  緒論</b></p><p><b>  課題概述</b></p><p>  本課題研究的對象是如何通過軟件控制機(jī)械,本課題的最終目標(biāo)是生成一款軟件,這款軟件的根本目的是可以智能控制腳手架升降。在本節(jié)中筆者將詳細(xì)介紹本課題究竟是要完成什么樣的設(shè)計,以及

44、本課題究竟按照什么樣的思路來完成這個設(shè)計。</p><p>  本課題最終要生成的軟件需要具備這樣的特征:具備多種控制方式、能夠?qū)崿F(xiàn)不同的用戶級別以及軟件使用時限。它在運(yùn)行時應(yīng)能夠聯(lián)系與之相關(guān)的數(shù)據(jù)庫及注冊表來實現(xiàn)數(shù)據(jù)溝通,并且應(yīng)該能夠通過串口與下位機(jī)產(chǎn)生交流,以便能夠輕松的獲取所有被控制中的腳手架的具體狀態(tài),并能夠?qū)λ心_手架的控制發(fā)給所有的腳手架??偟膩碚f,本課題最終需要完成的就是這樣的一款智能控制軟件。&

45、lt;/p><p>  下面,筆者將詳述本課題究竟按照一個什么樣的思路來完成以上描述的這個設(shè)計。</p><p>  本課題需要使用微軟的MFC來實現(xiàn)這款軟件的設(shè)計,它屬于面向?qū)ο缶幊蹋员菊n題的論文有必要簡單的介紹一下這種設(shè)計方法,在本章中,筆者會對面向?qū)ο蠹癡C++做一些簡單的介紹。對于軟件控制機(jī)械的可行性也有必要進(jìn)行一定的介紹,故在本章中也會一并給出說明。而整個緒論中最關(guān)鍵的部分就是軟

46、件的整體設(shè)計思路,這會在本章的最后進(jìn)行詳盡的說明。</p><p>  以上描述了整個緒論中的安排,后面,本課題的論文將給出軟件需求分析,其中將提出對于界面的需求、對于軟件功能的需求、對于串口通信的需求以及對于數(shù)據(jù)庫功能的需求。只有經(jīng)過了需求分析階段,一款軟件才能合理的進(jìn)入設(shè)計階段。</p><p>  到了設(shè)計階段,本課題的論文將首先設(shè)計軟件框架,將整個軟件的大致框架勾勒出來,接著進(jìn)入軟

47、件時限倒計時模塊的設(shè)計,隨后進(jìn)入數(shù)據(jù)庫模塊的設(shè)計,然后進(jìn)入串口通信模塊的設(shè)計,在所有的詳細(xì)設(shè)計分別進(jìn)行時,將分別進(jìn)行單元測試,而當(dāng)所有設(shè)計完成時也將進(jìn)行統(tǒng)一的整體測試。這些都將在1.4節(jié)中給出詳盡說明。</p><p>  1.2 簡述面向?qū)ο蠹癡C++</p><p>  1.2.1 關(guān)于面向?qū)ο?lt;/p><p>  本文使用的軟件設(shè)計方法是面向?qū)ο蟮脑O(shè)計方法,它

48、與以前常用的結(jié)構(gòu)化編程(目前一般用于系統(tǒng)級編程)有一定區(qū)別,故在此進(jìn)行簡要介紹。</p><p>  面向?qū)ο?Object Oriented,OO)是當(dāng)前計算機(jī)界關(guān)心的重點(diǎn),它是90年代軟件開發(fā)方法的主流。面向?qū)ο蟮母拍詈蛻?yīng)用已超越了程序設(shè)計和軟件開發(fā),擴(kuò)展到很寬的范圍。如數(shù)據(jù)庫系統(tǒng)、交互式界面、應(yīng)用結(jié)構(gòu)、應(yīng)用平臺、分布式系統(tǒng)、網(wǎng)絡(luò)管理結(jié)構(gòu)、CAD技術(shù)、人工智能等領(lǐng)域。</p><p>

49、  起初,“面向?qū)ο蟆笔菍V冈诔绦蛟O(shè)計中采用封裝、繼承、多態(tài)等設(shè)計方法。可是,這個定義顯然不能再適合現(xiàn)在情況。面向?qū)ο蟮乃枷胍呀?jīng)涉及到軟件開發(fā)的各個方面。如,面向?qū)ο蟮姆治觯∣OA,Object Oriented Analysis),面向?qū)ο蟮脑O(shè)計(OOD,Object Oriented Design)、以及我們經(jīng)常說的面向?qū)ο蟮木幊虒崿F(xiàn)(OOP,Object Oriented Programming)。</p><

50、p>  面向?qū)ο缶幊逃袔讉€基本概念,簡述如下:</p><p>  封裝:將一組相關(guān)屬性、方法和其他成員視為一個單元或?qū)ο螅?lt;/p><p>  繼承:描述基于現(xiàn)有類創(chuàng)建新類的能力;</p><p>  多態(tài)性:可以有多個可互換使用的類,即使每個類以不同方式實現(xiàn)相同屬性或方法;</p><p>  類:描述對象的“類型”;</p&

51、gt;<p>  對象:類的可用“實例”;</p><p>  實例化:創(chuàng)建對象的操作;</p><p>  類的成員:類成員包括屬性(用于描述類數(shù)據(jù))、方法(用于定義類行為)和事件(用于在不同的類和對象之間提供通信);</p><p>  字段和屬性:表示對象包含的信息;</p><p>  構(gòu)造函數(shù):一種類方法,它們在創(chuàng)建給

52、定類型的對象時自動執(zhí)行;</p><p>  析構(gòu)函數(shù):用于析構(gòu)類的實例;</p><p>  事件:類或?qū)ο罂梢酝ㄟ^事件向其他類或?qū)ο笸ㄖl(fā)生的相關(guān)事情;</p><p>  嵌套:在另一個類中定義的類;</p><p>  訪問修飾符:指定自己為其他類提供的訪問級別;</p><p>  類的靜態(tài)成員:由該類的所有

53、實例共享的屬性、過程或字段;</p><p>  匿名類型:無需為數(shù)據(jù)類型編寫類定義即可創(chuàng)建對象;</p><p>  重寫成員:默認(rèn)情況下,派生類繼承其基類的所有成員,若希望更改繼承成員的行為,則需要重寫該成員;</p><p>  接口:和類一樣,接口也定義了一系列屬性、方法和事件,但與類不同的是,接口并不提供實現(xiàn),它們由類來實現(xiàn),并從類中被定義為單獨(dú)的實體,接

54、口表示一種約定,實現(xiàn)接口的類必須嚴(yán)格按其定義來實現(xiàn)接口的每個方面;</p><p>  委托:定義方法簽名,可提供對具有兼容簽名的任何方法的引用;</p><p>  1.2.2 關(guān)于Visual C++</p><p>  Visual Studio 是一套完整的開發(fā)工具,用于生成 ASP.NET Web 應(yīng)用程序、XML Web services、桌面應(yīng)用程序和

55、移動應(yīng)用程序。Visual Basic、Visual C# 和 Visual C++ 都使用相同的集成開發(fā)環(huán)境 (IDE),這樣就能夠進(jìn)行工具共享,并能夠輕松地創(chuàng)建混合語言解決方案。另外,這些語言使用 .NET Framework 的功能,它提供了可簡化 ASP Web 應(yīng)用程序和 XML Web services 開發(fā)的關(guān)鍵技術(shù)。</p><p>  在本文中,筆者將使用Visual Studio中的Visua

56、l C++來設(shè)計軟件,因此下面將對Visual C++進(jìn)行一定的介紹。</p><p>  Visual C++(簡稱VC++)是微軟公司提供的面向?qū)ο缶幊痰囊环N可視化編程工具,它提供了強(qiáng)大而靈活的開發(fā)環(huán)境,可用于創(chuàng)建基于Windows的應(yīng)用程序。用戶可以在集成開發(fā)系統(tǒng)中使用該工具,也可以使用獨(dú)立的工具。</p><p>  Visual C++ 包含下列組件:</p>&l

57、t;p>  1. 編譯器工具。該編譯器支持傳統(tǒng)本機(jī)代碼開發(fā)人員和面向虛擬機(jī)平臺(如公共語言運(yùn)行時 (CLR))的開發(fā)人員。Visual C++ 包括面向 x64 和 Itanium 的編譯器。該編譯器仍支持直接面向 x86 計算機(jī),并針對這兩種平臺優(yōu)化了性能。</p><p>  2. Visual C++ 庫。其中包括行業(yè)標(biāo)準(zhǔn)的活動模板庫 (ATL)、Microsoft 基礎(chǔ)類 (MFC) 庫,以及標(biāo)準(zhǔn)

58、C++ 庫(由iostream庫和標(biāo)準(zhǔn)模板庫 (STL) 組成)和 C 運(yùn)行庫 (CRT) 之類的標(biāo)準(zhǔn)庫。CRT 包括安全性已得到增強(qiáng)的替代函數(shù),取代已知會引起安全問題的函數(shù)。STL/CLR 庫為托管代碼開發(fā)人員引入了 STL。具有數(shù)據(jù)封送新功能的 C++ 支持庫,其設(shè)計意圖在于簡化面向 CLR 的程序。</p><p>  3. Visual C++ 開發(fā)環(huán)境。該開發(fā)環(huán)境為項目管理與配置(包括更好地支持大型項目

59、)、源代碼編輯、源代碼瀏覽和調(diào)試工具提供強(qiáng)力支持。該環(huán)境還支持 IntelliSense,在編寫代碼時,該功能可以提供智能化且特定于上下文的建議。</p><p>  除常規(guī)的圖形用戶界面應(yīng)用程序外,Visual C++ 還允許開發(fā)人員生成 Web 應(yīng)用程序、基于 Windows 的智能客戶端應(yīng)用程序以及適用于瘦客戶端和智能客戶端移動設(shè)備的解決方案。C++ 是世界上最流行的系統(tǒng)級語言,而 Visual C++ 則

60、為開發(fā)人員提供了生成軟件的世界級工具。</p><p>  圖1-1顯示了Visual studio 2010新建一個MFC項目的通常界面。</p><p>  圖1-1 Visual studio 2010主界面截圖</p><p>  1.3 軟件控制機(jī)械的可實現(xiàn)性</p><p>  機(jī)械設(shè)計制造及其自動化在當(dāng)下是十分流行的一個專業(yè),其

61、主要原因正是由于機(jī)械在自動化運(yùn)行以后對于人身安全有了很大的保障。近年來,工人由于操作機(jī)器不當(dāng),或者由于意外,被機(jī)械誤殺的人越來越多,簡簡單單的一個漏電就帶走了很多工人的生命。</p><p>  在一個關(guān)注人類生命安全的年代,不注重智能控制機(jī)械,就是對人們生命的一種漠視,為此,軟件控制機(jī)械也成了當(dāng)下一個十分流行的項目。很多關(guān)注工人生命的企業(yè)爭相加入軟件控制機(jī)械的行列。</p><p>  

62、可是,軟件控制機(jī)械可行么?如果可行,那么又是如何實現(xiàn)的呢?</p><p>  事實上,軟件控制機(jī)械已經(jīng)有很長時間的歷史了,只是很多人依然認(rèn)為軟件的設(shè)計和維護(hù)成本高昂,不如直接控制機(jī)械來的方便,以致于很多企業(yè)在建立初期都考慮不到使用軟件來控制機(jī)械。</p><p>  其實,在理論上來說,軟件設(shè)計的成本是低廉的,軟件的成本大多來源于軟件測試的成本。然而,一款設(shè)計初期就介入測試的軟件,其成本

63、將大大下降,如果使用這樣一款值得信賴的軟件去控制機(jī)械,那么智能控制機(jī)械將比人工控制機(jī)械在長遠(yuǎn)利益上考慮更為節(jié)省。</p><p>  軟件控制機(jī)械的實現(xiàn)方法實際上是電子學(xué)與計算機(jī)學(xué)的結(jié)合,詳細(xì)來說就是控制電路技術(shù)與軟件工程技術(shù)的結(jié)合。</p><p>  由控制電路向軟件上傳數(shù)據(jù)表明機(jī)械的當(dāng)前狀態(tài),再由軟件下發(fā)數(shù)據(jù)給控制電路讓控制電路操控機(jī)械進(jìn)行運(yùn)作。這個過程中,人只需要在上位機(jī),也就是電

64、腦軟件這個端口,就可以對機(jī)械進(jìn)行操作,而不需要到機(jī)械實際所在的地方去操控機(jī)械,這就大大保證了操作工的人身安全。</p><p>  軟件如何能夠和控制電路進(jìn)行溝通?軟件又如何識別操作它的人是不是操作工?</p><p>  這就需要用到驅(qū)動機(jī)制和用戶登錄機(jī)制。</p><p>  驅(qū)動軟件的作用是連接計算機(jī)和其他電子產(chǎn)品,并使得兩者之間可以進(jìn)行信息交互。在軟件智能控

65、制機(jī)械的系統(tǒng)中,軟件端需要配備驅(qū)動機(jī)制才能和控制電路進(jìn)行信息交流,從而由機(jī)械中獲取狀態(tài)并向機(jī)械發(fā)送控制數(shù)據(jù)。</p><p>  用戶登陸機(jī)制是指一款軟件識別操作它的人是什么人的機(jī)制。這個機(jī)制可以限制任何人對于軟件的操作,也就避免了非操作工操作機(jī)械并且避免了軟件為沒有使用權(quán)限的用戶所用。</p><p>  綜上所述,可以了解到:軟件智能控制機(jī)械是可以實現(xiàn)的,并且這個技術(shù)在當(dāng)下是十分流行的

66、。由此可見,本文利用軟件來完成智能升降腳手架的系統(tǒng)是完全可以實現(xiàn)的,按照這個思路設(shè)計的軟件,其最終是可以滿足用戶需求的。</p><p>  1.4 軟件整體設(shè)計思路</p><p>  對于這款控制腳手架自動升降的軟件,首先將提出其用戶需求,包括界面需求、功能需求以及通信需求。隨后將進(jìn)入概要設(shè)計和詳細(xì)設(shè)計階段,在這個階段,根據(jù)軟件測試工程學(xué)的原理,將第一時間介入整個軟件測試流程。<

67、/p><p>  第一個進(jìn)入設(shè)計階段的部分是軟件的整體框架,同時軟件的整體框架將納入測試,以查看各個框架的文檔是否能夠正常顯示。</p><p>  接著進(jìn)入設(shè)計階段的部分是軟件的時限倒計時功能模塊,本軟件將采用三段式時限倒計時的方式實現(xiàn)軟件時限的限定,其倒計時功能模塊牽涉到數(shù)據(jù)庫的讀寫以及注冊表的讀寫,這部分的功能設(shè)計需要耐心的測試,故這個設(shè)計階段主要進(jìn)行的是該模塊的設(shè)計及其功能測試。<

68、;/p><p>  當(dāng)?shù)褂嫊r模塊設(shè)計并測試成功后,將開始設(shè)計數(shù)據(jù)庫模塊,因為本款軟件的二級密碼機(jī)制,以及第二級密碼的用戶權(quán)限機(jī)制需要利用數(shù)據(jù)庫才能時限,并且軟件時限倒計時也需要用到數(shù)據(jù)庫存儲階段及時間的數(shù)據(jù)。</p><p>  最后進(jìn)入設(shè)計階段的是串口通信模塊,這個模塊是軟件與下位機(jī)連接的關(guān)鍵,只有具備良好的通信功能,這款軟件才能夠很好的實現(xiàn)智能控制腳手架這個最核心的功能,否則一切其他功能都

69、沒有意義。所以,這個階段的測試也是最關(guān)鍵的,因為它意味著整款軟件在測試成功后可以交付用戶進(jìn)行用戶層面的測試(也就是通常所說的β測試)。</p><p>  由此,整個軟件的設(shè)計及測試流程如圖1-2所示。</p><p>  圖1-2 軟件整體設(shè)計思路</p><p>  第2章 軟件需求分析</p><p>  2.1 界面需求分析</

70、p><p>  本文最終設(shè)計完成的軟件,是需要面向于普通用戶的,這就使得軟件本身必須滿足人性化的用戶圖形界面設(shè)計方案,這對于一款現(xiàn)代工業(yè)控制軟件來說也是十分有必要的。</p><p>  按照用戶需求的角度來分析,本文最終設(shè)計完成的軟件必須滿足以下幾個要求:</p><p>  具有軟件時限倒計時功能;</p><p><b>  具有

71、串口通信功能;</b></p><p><b>  具有多種控制方式;</b></p><p>  具備不同權(quán)限用戶登陸的可能性。</p><p>  按照以上基本用戶需求,本軟件所必須的界面需求分析如下:</p><p>  擁有歡迎界面,并顯示軟件時限倒計時;</p><p>  

72、擁有登陸界面,可滿足不同權(quán)限用戶登陸的需求;</p><p>  擁有多種控制方式切換的功能菜單,該菜單可以實現(xiàn)各個功能的切換;</p><p>  擁有一個選項卡,可供選擇串口,并提供關(guān)于軟件的一些說明。</p><p>  根據(jù)以上界面需求的分析,可以得出軟件界面的大致運(yùn)行框圖,如圖2-1所示,選項卡功能,如圖2-2所示。</p><p>

73、;  圖2-2 選項卡頁菜單框圖</p><p>  圖2-1 界面大致運(yùn)行框圖</p><p>  圖2-1與圖2-2中給出的框圖,只是初步的需求分析框圖,并不是最終完成的軟件真正的界面,在實際設(shè)計中可能會依據(jù)不同的情況有所改變,但真正的軟件整體框架設(shè)計是滿足以上設(shè)計需求的,而內(nèi)容則請詳見3.1節(jié)。</p><p>  2.2 功能需求分析</p>

74、<p>  本文最終設(shè)計完成的軟件,根據(jù)用戶需求,需滿足一些功能以適應(yīng)其使用環(huán)境。根據(jù)2.1節(jié)中提及的4點(diǎn)基本功能要求(概要描述的功能需求),這里可以分裂式的提出幾點(diǎn)功能要求(詳細(xì)描述的功能需求)如下:</p><p>  通過數(shù)據(jù)庫與注冊表實現(xiàn)三段軟件倒計時功能;</p><p>  串口通信以實現(xiàn)軟件與下位機(jī)(腳手架)的溝通;</p><p>  具有

75、多機(jī)控制、選擇控制、同步控制三種控制方式;</p><p>  擁有密碼服務(wù)、參數(shù)管理、報警控制的界面交互;</p><p>  擁有系統(tǒng)密碼與管理密碼(管理密碼由用戶名和密碼兩部分組成)的二級密碼機(jī)制,前者為第一級,后者分用戶權(quán)限并為第二級;</p><p>  當(dāng)且僅當(dāng)管理員身份登錄可以修改各用戶的管理密碼;</p><p>  軟件倒計

76、時到期后只有輸入第一級密碼才可以顯示第二級密碼輸入框。</p><p>  以上的幾點(diǎn)功能要求即本軟件的功能需求,根據(jù)此分析,給出軟件功能的大致框圖如圖2-3所示,可結(jié)合圖2-1來理解此圖。</p><p><b>  是</b></p><p><b>  否</b></p><p>  圖2-3

77、系統(tǒng)功能大致框圖</p><p>  2.3 串口通信需求分析</p><p>  本文最終設(shè)計完成的軟件,需要具備兩個基本通信功能:</p><p>  用于軟件時限倒計時的:與數(shù)據(jù)庫和注冊表的通信功能;</p><p>  用于下位機(jī)通信的:與下位機(jī)(腳手架)的通信功能。</p><p>  根據(jù)以上兩種基本通信功

78、能的需求,本文需要做到如下三種通信方式:</p><p><b>  注冊表通信;</b></p><p><b>  數(shù)據(jù)庫通信;</b></p><p><b>  串口通信。</b></p><p>  串口通信給出如下用戶需求:</p><p>

79、  通訊參數(shù)根據(jù)需要設(shè)定,(通訊掃描時,只掃描多機(jī)設(shè)定范圍內(nèi)的機(jī)器),電腦與下位機(jī)通訊用485,手提電腦用BOK-1401B型USB-RS485轉(zhuǎn)換器連接。</p><p>  注冊表通信與數(shù)據(jù)庫通信的需求將在2.4節(jié)中給予一定的說明,并在3.2節(jié)與3.3節(jié)中給出必要的描述。串口通信,由于具備用戶需求,故在此給出通信需求:</p><p>  對多機(jī)控制中選擇的機(jī)器進(jìn)行串口掃描,沒有選擇的

80、機(jī)器不掃描;</p><p>  對沒有進(jìn)行報警屏蔽的機(jī)器進(jìn)行報警響應(yīng),報警響應(yīng)的方式是全部停機(jī);</p><p>  同步控制使用:0x50,0x20,高度設(shè)定值,高度回差,之和;</p><p>  同步控制出現(xiàn)超過高度回差,向該下位機(jī)發(fā)送停止:地址,0x70,控制命令(0x01),校驗和;</p><p>  高度清零時,向下位機(jī)發(fā)送:

81、0x50,0x10,0x5a,之和;</p><p>  同步控制時僅選擇同步控制使用時發(fā)送一次,正常運(yùn)行不設(shè)定;</p><p>  掃描時發(fā)送:地址,0x40(不屏蔽,0x41屏蔽無論報警與否),校驗和;</p><p>  掃描時下位機(jī)上傳:地址,重量高,重量低,位移高,位移低,下位機(jī)狀態(tài),校驗和;</p><p>  單機(jī)控制開關(guān)停:

82、地址,0x30,控制命令(0x02),校驗和;</p><p>  多機(jī)控制開關(guān)停:0x60,0x30,控制命令(0x03),校驗和;</p><p>  人機(jī)手動允許:0x60,0x5a,0xa5,校驗和;</p><p>  人機(jī)手動禁止:0x60,0xa5,0x55,校驗和;</p><p>  多機(jī)控制命令:0x60,0x30,控制命

83、令,起始地址,結(jié)束地址,校驗和;</p><p>  保存參數(shù)命令:地址,0x70,報警上限,報警下限,預(yù)警上限,預(yù)警下限,校驗和;</p><p>  上位機(jī)向下發(fā)數(shù)據(jù)是定時器發(fā)送的,沒有其它數(shù)據(jù),就發(fā)定時掃描的,有其它數(shù)據(jù),以其它數(shù)據(jù)為先進(jìn)行發(fā)送,掃描數(shù)據(jù)等到下個定時時間;</p><p>  定時掃描發(fā)送:0x70,起始地址,結(jié)束地址,報警上限,報警下限,預(yù)警

84、上限,預(yù)警下限,校驗和。</p><p>  以上部分,是進(jìn)行串口通信時的通信協(xié)議,具體串口通信實現(xiàn)方案詳見3.4節(jié)中的描述。</p><p>  2.4 數(shù)據(jù)庫需求分析</p><p>  本文最終生成的軟件需要依賴數(shù)據(jù)庫來完成一些必要的功能,因此在本節(jié)中將重點(diǎn)分析此軟件的數(shù)據(jù)庫需求,以便在軟件設(shè)計中能夠有所參照,從而順應(yīng)需求來完成數(shù)據(jù)庫的設(shè)計。</p>

85、;<p>  本文所生成的軟件,對于數(shù)據(jù)庫的依賴部分在于:</p><p>  需要利用數(shù)據(jù)庫保存系統(tǒng)第一次運(yùn)行的時間</p><p>  需要利用數(shù)據(jù)庫保存系統(tǒng)當(dāng)前運(yùn)行的時間</p><p>  需要利用數(shù)據(jù)庫保存系統(tǒng)當(dāng)前所處的時限階段和剩余天數(shù)</p><p>  需要利用數(shù)據(jù)庫保存報警及預(yù)警的數(shù)值</p>&

86、lt;p>  同時,對于系統(tǒng)上一次運(yùn)行的時間,本文還將存儲在注冊表中,以便與數(shù)據(jù)庫中的數(shù)值進(jìn)行比對,從而保證沒有通過更改數(shù)據(jù)庫的方法改變系統(tǒng)第一次運(yùn)行時間的現(xiàn)象發(fā)生。</p><p>  根據(jù)以上所述的此軟件對于數(shù)據(jù)庫系統(tǒng)的依賴,本文將要生成的數(shù)據(jù)庫具備如下需求:</p><p>  為access數(shù)據(jù)庫</p><p>  通過ado的方式對數(shù)據(jù)庫進(jìn)行讀寫&

87、lt;/p><p>  保存軟件中依賴數(shù)據(jù)庫的數(shù)據(jù)</p><p>  不容易被計算機(jī)的用戶隨意更改其中內(nèi)容</p><p>  唯有滿足上述條件的數(shù)據(jù)庫才能夠符合本文最終生成的軟件的需求,并能夠較為方便的實現(xiàn)本文后面將要投入設(shè)計的某些功能,這些功能有:軟件時限倒計時功能和預(yù)、報警功能。</p><p>  以上就是本文對于數(shù)據(jù)庫的需求分析,具體

88、設(shè)計實現(xiàn)詳見3.2節(jié)與3.3節(jié)中的相關(guān)描述。</p><p>  第3章 軟件子模塊設(shè)計</p><p>  3.1 用戶界面設(shè)計</p><p>  3.1.1 總體界面設(shè)計</p><p>  在圖2-3 系統(tǒng)功能大致框圖中,已經(jīng)可以大致的看出整個軟件的總體框架。按照筆者的設(shè)計思路,本款軟件將在打開時首先呈現(xiàn)歡迎界面,然后進(jìn)入密碼輸入界面

89、,最后轉(zhuǎn)入主界面。在整個主界面中含有多個文檔卡,他們分別呈現(xiàn)不同的內(nèi)容,以展現(xiàn)不同的功能。</p><p>  總體框架的設(shè)計思路如圖3-1所示。</p><p>  圖3-1 軟件整體框架設(shè)計思路</p><p>  根據(jù)圖3-1中所描述的整體框架設(shè)計思路,在VC++中需要在解決方案的資源視圖中添加多個對話框,以便生成相對應(yīng)的多個視圖。</p>&l

90、t;p>  本節(jié)中說明三個具備總體性質(zhì)框架的設(shè)計,分別是歡迎界面、登陸界面及系統(tǒng)界面。</p><p>  首先在項目的資源視圖中的Dialog文件夾中新建三個對話框,ID分別設(shè)置為IDD_STARTINTERFACE、IDD_LOGON、IDD_SCAFFOLD_DIALOG,按照圖3-2、3-3、3-4所示,來創(chuàng)建這個對話框。</p><p>  圖3-2 歡迎界面框架</

91、p><p>  圖3-3 登陸界面對話框框架</p><p>  圖3-4 系統(tǒng)總界面框架</p><p>  3.1.2 多機(jī)控制界面</p><p>  首先在項目的資源視圖中的Dialog文件夾中新建一個對話框,ID設(shè)置為IDD_MANYSET,按照圖3-2所示,來創(chuàng)建這個對話框。</p><p>  圖3-5 多機(jī)

92、控制框架</p><p>  這個框架顯式包含的有幾個Text Control,兩個Button Control,兩個Edit Control,及兩個Spin Control。其中Button Control是指“提升”和“下降”按鈕,在功能上的作用是對選定的機(jī)器進(jìn)行提升或下降操作。兩個Edit Control是指兩個編號輸入框,他們將決定將哪些機(jī)器選定,以便進(jìn)行操作。</p><p> 

93、 圖3-5顯示的是該框架完全搭建好后的運(yùn)行圖像,從中可以看出:這個多機(jī)控制默認(rèn)的控制機(jī)位范圍是1至60號,它可以對選定范圍的一些機(jī)器進(jìn)行提升或者下降的操作。在這個界面可以顯示每一個機(jī)器是否連接上,也可以顯示其當(dāng)下的重量值。</p><p>  框架創(chuàng)建好后,在項目的源文件夾中創(chuàng)建一個CPP文件,命名為Manymac,這個名為CManymac的類將決定該框架的具體展現(xiàn)方案。</p><p>

94、  OnCreate是對話框在被創(chuàng)建時的消息,這時候?qū)υ捒蜻€沒有被顯示在屏幕上,而且對話框中的控件都還沒有被創(chuàng)建。在此介紹后,在后面各個小節(jié)不會再重復(fù)介紹它的來歷和功能。</p><p>  本窗口的OnCreate函數(shù)定義如下:</p><p>  int CManymac::OnCreate(LPCREATESTRUCT lpCreateStruct) </p><

95、p><b>  {</b></p><p>  if (CDialog::OnCreate(lpCreateStruct) == -1)</p><p>  return -1;</p><p>  CRect rect,rect1;</p><p>  int top=125;</p><p&

96、gt;  int left=15;</p><p>  int m_Width1=35;</p><p>  int m_Height=20;</p><p>  int m_Width2=59;</p><p>  int m_WidthSpace=5;</p><p>  int m_HeightSpace=6;&

97、lt;/p><p>  CString str;</p><p>  for(int i=0;i<15;i++)</p><p><b>  {</b></p><p>  str.Format("%i", i+1);</p><p>  rect.SetRect(left,

98、top+i*(m_Height+m_HeightSpace),left+m_Width1,top+m_Height+i*(m_Height+m_HeightSpace));</p><p>  m_Data1[i].Create (str, WS_CHILD | WS_VISIBLE | SS_CENTER, rect, this, 1200+i); </p><p&

99、gt;  rect.SetRect(left+m_Width1+m_WidthSpace,top+i*(m_Height+m_HeightSpace),left+m_Width1+m_Width2+m_WidthSpace,top+m_Height+i*(m_Height+m_HeightSpace));</p><p>  m_Data2[i].Create ( WS_CHILD | WS_VISIBLE |

100、WS_BORDER | ES_CENTER, rect, this, 1260+i); </p><p>  rect.SetRect(left+m_Width1+m_Width2+2*m_WidthSpace,top+i*(m_Height+m_HeightSpace),left+m_Width1+2*(m_Width2+m_WidthSpace),top+m_Height+i*(m_Heig

101、ht+m_HeightSpace));</p><p>  m_Data3[i].Create ( WS_CHILD | WS_VISIBLE | WS_BORDER | ES_CENTER, rect, this, 1320+i); </p><p>  rect.SetRect(left+m_Width1+2*m_Width2+3*m_WidthSpace,top+i

102、*(m_Height+m_HeightSpace),left+m_Width1+3*(m_Width2+m_WidthSpace),top+m_Height+i*(m_Height+m_HeightSpace));</p><p>  m_Data4[i].Create ( WS_CHILD | WS_VISIBLE | WS_BORDER | ES_CENTER, rect, this, 1380+i);

103、 </p><p><b>  }</b></p><p><b>  left=267;</b></p><p>  for(int i=0;i<15;i++)</p><p><b>  {</b></p><p>  str.Fo

104、rmat("%i", i+16);</p><p>  rect.SetRect(left,top+i*(m_Height+m_HeightSpace),left+m_Width1,top+m_Height+i*(m_Height+m_HeightSpace));</p><p>  m_Data1[i+15].Create (str, WS_CHILD | WS_VI

105、SIBLE | SS_CENTER, rect, this, 1215+i); rect.SetRect(left+m_Width1+m_WidthSpace,top+i*(m_Height+m_HeightSpace),left+m_Width1+m_Width2+m_WidthSpace,top+m_Height+i*(m_Height+m_HeightSpace));</p><p>

106、;  m_Data2[i+15].Create ( WS_CHILD | WS_VISIBLE | WS_BORDER | ES_CENTER, rect, this, 1275+i);rect.SetRect(left+m_Width1+m_Width2+2*m_WidthSpace,top+i*(m_Height+m_HeightSpace),left+m_Width1+2*(m_Width2+m_WidthSpace),

107、top+m_Height+i*(m_Height+m_HeightSpace));</p><p>  m_Data3[i+15].Create ( WS_CHILD | WS_VISIBLE | WS_BORDER | ES_CENTER, rect, this, 1335+i);rect.SetRect(left+m_Width1+2*m_Width2+3*m_WidthSpace,top+i*(m

108、_Height+m_HeightSpace),left+m_Width1+3*(m_Width2+m_WidthSpace),top+m_Height+i*(m_Height+m_HeightSpace));</p><p>  m_Data4[i+15].Create ( WS_CHILD | WS_VISIBLE | WS_BORDER | ES_CENTER, rect, this, 1395+i);&l

109、t;/p><p><b>  }</b></p><p><b>  left=520;</b></p><p>  for(int i=0;i<15;i++)</p><p><b>  {</b></p><p>  str.Format(&quo

110、t;%i", i+31);rect.SetRect(left,top+i*(m_Height+m_HeightSpace),left+m_Width1,top+m_Height+i*(m_Height+m_HeightSpace));</p><p>  m_Data1[i+30].Create (str, WS_CHILD | WS_VISIBLE | SS_CENTER, rect, this

111、, 1230+i); rect.SetRect(left+m_Width1+m_WidthSpace,top+i*(m_Height+m_HeightSpace),left+m_Width1+m_Width2+1*m_WidthSpace,top+m_Height+i*(m_Height+m_HeightSpace));</p><p>  m_Data2[i+30].Create ( WS_CHILD

112、| WS_VISIBLE | WS_BORDER | ES_CENTER, rect, this, 1290+i);rect.SetRect(left+m_Width1+m_Width2+2*m_WidthSpace,top+i*(m_Height+m_HeightSpace),left+m_Width1+2*(m_Width2+m_WidthSpace),top+m_Height+i*(m_Height+m_HeightSpac

113、e));</p><p>  m_Data3[i+30].Create ( WS_CHILD | WS_VISIBLE | WS_BORDER | ES_CENTER, rect, this, 1350+i);rect.SetRect(left+m_Width1+2*m_Width2+3*m_WidthSpace,top+i*(m_Height+m_HeightSpace),left+m_Width1+3*

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論