基于Labview的員工管理系統_第1頁
基于Labview的員工管理系統_第2頁
基于Labview的員工管理系統_第3頁
基于Labview的員工管理系統_第4頁
基于Labview的員工管理系統_第5頁
已閱讀5頁,還剩33頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、2015屆畢業設計說明書 基于LabVIEW的員工管理系統設計 院 、 部: 電氣與信息工程學院 學生姓名: 郝睿 指導教師1: 王曉麗 職稱 助教 指導教師2: 洪俊 職稱 講師 專 業: 通信工程 班 級: 通信1102 完成時間: 2015年6月 摘 要 網絡信息技術的發展改善了傳統工作模式,使大眾的工作學習和日常生活方式發生極大的轉變,企事業辦工軟件等也越加科學化、自動化。面對增加的管理難度,傳統的有紙化管理模式已不能很好的勝任,因而以計算機硬件為平臺的信息管理系統孕育而生。它把員工數據信息的收集和管理都放在了一個簡潔便捷的系統上,用戶使用它時,可以把該系統通過互聯網無縫的與其他系統連

2、接起來,實現數據互通,有效利用現有資源并提升工作效率。 設計將以虛擬儀器技術作為基礎,利用LabVIEW開發出一款員工管理系統。在LabVIEW的基礎上,結合Virtual Instrument服務器引用技術,樹形控件來建立一套員工管理系統,對員工信息中的姓名、年齡和職稱等數據進行科學管理,真正實現人事管理的無紙化、信息化和便捷化,方便工作人員進行相關管理操作,提高效率。 論文將對虛擬儀器的開發環境進行簡要說明,并通過設計員工管理系統的思路過程簡單介紹基于LabVIEW的程序編程過程。員工信息管理系統以VI服務器引用控件作為數據服務器,樹形結構控件作為顯示界面。根據該系統要實現的功能,分模塊對

3、密碼系統、人員管理系統、信息編輯錄入系統等進行單獨設計。確定各部分能實現預期的功能后把它們組成一體,完成員工管理系統的設計,并對其進行測試。 關鍵詞:員工信息管理;虛擬儀器;模塊化設計ABSTRACTThe development of network information technology improves the traditional working mode, making the public's work, studies and daily life styles change greatly. Office softwares of enterprises and

4、 institutes are also tending to be more scientific and automatic. In the face of the increasing difficulty of management, traditional modes of paper management modes are not qualified, so the information management system based on computer hardware platform is born. It puts collection and management

5、 of all the data in a simple and convenient system. When users use it, they can link this system with other systems seamlessly through the Internet, realizing data sharing, effective use of existing resources and improve the work efficiency.In this design, we take virtual instrument technology as a

6、development environment to develop the personnel information management system based on LabVIEW. Combined with Virtual Instrument servers on the basis of LabVIEW, we used technologies and tree control to establish a set of personnel information management system to manage the name, age and title of

7、personnel information data scientifically, realizing paperless, informationize and convenient personnel management which can make managers do related work more convenient and reduce the workload. In this paper, we introduced the virtual instrument software and development environment in detail and b

8、riefly introduced the process of development and programming based on LabVIEW according to the concrete example of designing personnel management system. The personnel information management system takes reference controls of VI server as the data server and takes the tree structure control as a rea

9、l space. According to the functions which this system aims to realize, we designed the password system, the personnel management system, the information edit inputting system separately. Finally, we integrated the modules after ensuring that each module can realize earmarked function,finish the desi

10、gn of the staff management system, and to test it. Key words:personnel information management;virtual instrument;modular design目 錄1 緒論11.1 選題目的和意義11.2 國內外研究動態21.3 研究內容2 1.3.1 設計工作安排2 1.3.2 本文各章節介紹32 虛擬儀器及LabVIEW簡介42.1 虛擬儀器的概念42.2 LabVIEW的發展和特點42.3 LabVIEW的設計流程53 系統介紹及總體設計方案63.1 總體設計方案及技術指標6 3.1.1 系統

11、結構設計6 3.1.2 技術指標73.2 前面板功能介紹7 3.2.1 登錄界面8 3.2.2 員工管理界面83.3 本章小結94 系統的模塊化程序設計104.1 系統開發軟件環境104.2 登錄模塊設計114.3 員工管理模塊設計12 4.3.1 載入人員模塊13 4.3.2 刪除人員模塊14 4.3.3 添加人員模塊15 4.3.4 導出人員模塊16 4.3.5 查詢人員模塊174.4 功能模塊的整合184.5 子VI的創建18 4.5.1 定義子VI屬性19 4.5.2 系統主要子VI的創建及說明194.6 本章小結235 系統測試與分析245.1 登錄界面測試245.2 導入員工測試2

12、45.3 搜索員工測試255.4 添加員工測試265.5 刪除系統測試26結束語28參考文獻29致 謝32II1 緒論1.1 選題目的和意義 21世紀,在計算機網絡技術和信息技術得到飛速發展后,企事業單位辦公系統越加科學化、高效化和便捷化,這些改變使得現代都市里長期處于繁忙的人們的工作與生活得到了便捷。信息化和規范化的工作方式已是企事業單位高效利用資源,提高效率的首要目標1。當下尚有一部分企事業的員工管理處于人工手動管理階段,不但效率低浪費社會資源,還經常因為管理人員的疏忽而出現錯誤,進而有可能造成一定經濟損失。因而很多單位急切需求關于信息管理的軟件系統,用來幫助實現信息管理辦公的自動化與科學

13、化,提高工作效率。員工信息管理系統正是在這種大趨勢下孕育而生的一種自動化辦公應用解決方案,其主要目的是提高工作效率,讓工作人員從繁瑣的有紙化辦公中解脫。它能幫組企事業單位有效科學地進行員工信息的管理,主要功能包括員工信息的導入和導出,在系統操作上集數據的輸入、查詢、導出、刪除等功能為一體2。 正因為好多企事業單位發現了員工信息管理系統的優點,越來越多企事業開始使用,它也因此得到廣泛普及。課題選擇利用美國NI公司的LabVIEW圖形化設計軟件設計一款員工管理系統。該管理系統能夠對員工的數據信息進行管理操作,為工作人員提供一款操作便捷、可靠性高、界面簡潔和便于使用的工具。該管理系統可對員工信息的各

14、種數據進行統一操作處理,使數據的顯示變得條理清晰,提高日常辦公效率,減少數據處理的復雜度3。 作為一款行業內領先的工業標準圖形編程平臺,美國NI公司的LabVIEW是專門為程序員與工程師而設計的圖形直觀化編程平臺,它可通過軟件與各種不同功能的硬件模塊、測量設備及計算機組成一體,建立一套虛擬儀器系統4。LabVIEW所代表的虛擬儀器技術在優點上表現為可根據用戶需求,自定義儀器結構功能,且設計過程簡單,轉換靈活。從二十世紀八十年末代成功問世以來,世界各國各地的程序設計人員都已把LABVIEW圖形化編程軟件應用在工業產品設計中的每個環節,從而縮短了產品研發周期。利用LABVIEW虛擬儀器技術所提供的

15、各種控件能夠滿足任何項目的開發需求,能使以往復雜的編程變得簡單直觀,程序員能騰出更多時間在實驗項目運行、信息采集和結果分析上,并不是像以往耗費許多精力編寫復雜的文本程序、構造實驗環境5。1.2 國內外研究動態 在歐美,自美國NI公司的虛擬儀器技術在1986年問世后,一向是西方各國信息化測試、智能化控制領域的研究重點和應用前沿6。進入21世紀后,西方許多科教強國的各種自動測控研究部門都研制了眾多的虛擬儀器開發平臺,但相比之下,依然是NI公司的LabVIEW圖形化編程軟件使用最為廣泛。如今虛擬儀器技術在國外已經大量運用于科學教育、軍備建設、航空航天和生物醫學等眾多領域,與此同時,它在國外也發展成為

16、一種新的產業,并且產業總值正逐年上漲7。 在中國內地,作為國家引進最新興的先進技術項目之一,21世紀初,虛擬儀器技術曾被列入“十五”期間重點支助項目。最初我國是從引進吸收NI公司產品開始對虛擬儀器技術進行研究的,目前我國對虛擬儀器技術的研究已邁入自主開發階段,在虛擬儀器相關領域已經取得可喜成績,如擁有完全知識產權的“一體化虛擬儀器”是一種不同于西方虛擬儀器的先進技術8。此外,在北京正負電子對撞機改造工程中,我國工程師們也曾使用虛擬儀器技術對其慢控制系統的總體框架進行設計。隨著我國經濟發展模式從資源消耗型到環境友好型的邁入,企業工廠的技術升級也加快了步伐,先進工業儀器設備的需求量更加巨大。在此基

17、礎上,我國虛擬儀器行業產值在以后將大幅持續增長。在對虛擬儀器的普及工作中,目前國內許多知名高校,如清華大學、復旦大學、國防科技大學、中國科技大學等多所高校都為虛擬儀器設置單獨的課程與專業,并展開了對虛擬儀器技術領域的研究、開發9。作為21世紀信息化測試與自動化控制領域的主要研究方向,虛擬儀器的出現使得人們對傳統儀器的概念、結構和模式的認識發生了轉變。隨著社會發展和科技進步,各行各業越來越注重效率,尤其是企事業單位,而最為方便高效的員工管理系統使用也越來越廣泛,但這些員工管理系統開發較復雜,因此利用LabVIEW的直觀化和易用性來開發一款員工管理系統很有必要。1.3 研究內容1.3.1 設計工作

18、安排 (1)課題將利用LabVIEW設計一款員工管理系統,根據課題要求可知,需結合LabVIEW中的字符串控件、HashTable、樹形控件以及程序結構等,利用LabVIEW實現系統各子VI的創建,并完成員工管理系統的開發工作。 (2)在設計中,計劃目標是設計一個具備密碼登錄、人員類別管理、信息錄入輸出等功能的較基礎的員工管理系統。通過設計重點研究樹形控件的使用和在員工管理系統中的應用,學會事件結構、條件結構、While結構、Case結構以及VI服務器的使用。 (3)根據系統要實現的功能,明確設計思路,化復雜為簡單,分模塊對密碼系統、人員管理系統、信息編輯錄入系統等進行單獨設計,其中密碼系統模

19、塊預計要使用到字符串控件及循環結構,人員管理和信息編輯錄入系統將重點利用VI服務器對數據進行儲存調用。最后確定各模塊能實現擬定功能后把各模塊組成一體,進行調試書寫程序說明。1.3.2 本文各章節介紹 第一章,主要介紹論文的研究背景,分析員工管理系統的現狀和發展,并且對論文涉及的虛擬儀器技術的國內外發展狀況進行介紹,最后對整篇論文的章節進行安排。 第二章,針對研究重點詳細介紹虛擬儀器技術以及LabVIEW。虛擬儀器作為本次設計依賴的開發平臺,該章節將涉及虛擬儀器的基本概念以及LabVIEW的簡介等。 第三章,主要進行了基于LabVIEW的員工管理系統總體設計方案和對員工管理系統的功能操作進行介紹

20、。首先是提出本次設計的總體設計方案,給出原理框圖,并分步對各模塊進行簡單說明,其次介紹系統在LabVIEW環境下的技術指標。最后詳細介紹員工管理系統登錄界面的如何使用登錄,以及登錄成功后如何在信息管理界面進行相應操作。 第四章,首先在該章節將說明軟件開發環境,對編程環境、數據操作、設計形式以及結構等進行介紹。 其次在上一章的基礎上詳細介紹如何使用各循環結構,對登錄模塊、導入數據模塊、搜索模塊、查詢模塊以及刪除模塊如何利用各種循環和控件進行說明,以及如何在事件結構中把各模塊構建于一體,給出各模塊的原理框圖并對設計思路進行述說,對每個模塊涉及到的子VI大致提及其功能,并說明如何完成前面板的設置。

21、最后在完成了四個模塊的詳細介紹后,本章節將對第四章涉及的子模塊進行詳細說明,附上各模塊的設計框圖并給出設計思路。 第五章,針對整個已設計出雛形的員工管理系統進行功能測試,完善并完成系統的設計工作,對測試結果進行分析。2 虛擬儀器及LabVIEW簡介2.1 虛擬儀器的概念 以計算機作為使用平臺,由用戶設定虛擬的操控界面,測控功能通過軟件來實現的這種儀器系統稱為虛擬儀器10。與傳統的測試儀器相比,虛擬儀器更為便捷。虛擬儀器技術改變了傳統儀器由設備制造商定義其功能的傳統模式,它使用戶能充分發揮自己才智和創造力11。用戶可根據需要,開發出符合用戶個性化需求的儀器系統。LabVIEW圖形化編程軟件作為虛

22、擬儀器的代表,是美國NI公司開發的虛擬儀器平臺12。它是當前使用最為普及、發展速度最快、模塊功能及其強大的圖形化編程平臺之一,其特點表現在兩個方面: (1)傳統儀器只能通過硬件來實現測控,而LabVIEW則通過軟件編程,實現同實體設備具備的測控功能13。 (2)虛擬的儀器前面板。傳統儀器的面板上都是物理按鍵與顯示屏,須通過手動才能進行操作。控件方面,LabVIEW前面板上的控件和傳統儀器控件無任何差別;外形上,LabVIEW的控件與傳統的及其類似14;原理上,相對于傳統儀器的物理過程,LabVIEW控件的操作對應著相應的軟件程序,通過程序實現功能。2.2 LabVIEW的發展和特點 NI公司于

23、二十世紀八十年代末年推出了LabVIEW 1.0,目前最新的為2014版本。二十多年來,在工程師不斷改善下,LabVIEW的功能模塊更加完備,它可運行于多種系統,比如Macintosh、Windows和Linux等。作為一種具有豐富功能的編程平臺,LabVIEW在眾多研究機構和工業界所廣泛采用。 LabVIEW軟件設計的程序有前面板和后面板兩部分。前面板就是虛擬儀器的操控面板,由形象化的控件組成的,可實現對傳統儀器中的各種按鈕與顯示器的模擬,用戶可在前面板展現包括參數設置、菜單及結果顯示等。后面板就是程序編程框圖,相當于文本編程中的程序代碼。后面板的控件與前面板對象相互對應,程序框圖中的數據流

24、對應于前面板對象的相關操作。采用圖形化方式的編程,使設計更加明了高效。 LabVIEW作為一款成功的虛擬儀器編程軟件, 它有著許多特點,如:采用圖形化編程語言,開發效率高,支持多種儀器和數具采集卡硬件的驅動,調試、查錯能力強大,支持多種操作系統,網絡通信功能強大等。2.3 LabVIEW的設計流程 LabVIEW設計主要分為四步進行: (1)編寫程序流程圖:流程圖是一個流程問題的圖形化解決方案,就是VI的圖形化源程序,相當于傳統開發軟件的程序源代碼15。在LabVIEW中前面板和后面板程序框圖可以隨時切換,當切換至程序框圖時,流程圖有相應的端口與前面板對象對應,完成這一步后可在功能模塊中根據設

25、計要去使用合適的節點、函數和控件等并放置在后面板程序中,按照一定的順序將這些端口連接,完成一個程序的設計; (2)定制VI的圖標:用戶編寫的任何VI程序的默認圖標顯示在前后面板的右上角。作為VI的標識符,在設計程序的子VI中設計一個新的圖標時會用到圖標編輯器16,自定義后的程序圖標不但在使用時方便識別,也可以以子VI形式被其他VI程序調用; (3)前面板設計:前面板是當程序編程完成后展現給設計人員的使用界面,展示形式為圖形虛擬化,前面板界面只有用戶設置輸入和顯示面板兩個大類,其特點是模擬了傳統儀器的操控界面。此外,前面板還主要用來對程序的界面進行美化,以給用戶簡潔明了的使用環境; (4)程序的

26、運行和調試:任何一種語言編寫的程序都需要調試后才可正常無誤運行。在LabVIEW編程環境中,當程序運行時可以通過語法找錯、高亮執行、探針及斷點等技巧對程序進行調試工作。若設計VI程序時存在連接或語法的錯誤,面板菜單欄中的運行按鈕將以灰色折斷的箭頭顯示,此時程序是由于錯誤是無法執行的。這時點擊箭頭,系統會彈出對話框并顯示錯誤信息列表,用戶可以利用它方便地對程序就行修改。3 系統介紹及總體設計方案 在系統方案的確定中,根據系統應用的需要和特點,開發一個基于LabVIEW的員工管理系統。系統結構主要包括登錄認證部分和以數據處理為主的員工信息管理部分。針對員工信息實現數據導入,搜素以及后續的導出刪除等

27、基本功能,該員工信息管理系統具備簡單,功能完善,操作便捷等特點。3.1 總體設計方案及技術指標 當前主流的程序開發環境有Microsoft Visual Studio.NET,Sun Java,Borland Delphi等。Visual Studio.NET對Windows系統兼容性好;Java可以支持多種環境及操作系統平臺;而Delphi則可在Windows系統下快速開發C/S結構程序,具有多方成熟的控件完善系統開發。而數據處理系統則有Oracle和Access等。Oracle功能齊全,穩定性好,而Access簡單快速、便捷易用。 設計將采

28、用LabVIEW開發環境,結合LabVIEW自帶的服務器功能實現數據調用,針對員工信息管理系統的方案規劃、系統功能分析、系統設計及系統實現等各個階段17,論述LabVIEW的使用要點,實現過程中存在的難點分析及其解決方案。3.1.1 系統結構設計 圖1是基于LabVIEW的員工信息管理系統的設計流程圖。圖1 總體設計結構框圖 上圖是一個分步執行控制系統,根據課題總體設計要求,其結構由登錄系統、管理員界面、普通用戶界面、導入系統、搜索系統、添加系統、刪除系統、存儲數據以及顯示界面等九個部分構成。登錄系統是整個員工管理系統的開端,只有通過登錄系統并完成認證后才可進行員工管理界面其他操作,它為整個系

29、統提供保護作用;管理員界面和普通用戶界面都是員工管理系統的操作界面,兩個界面在功能上略有差別,通過這兩個界面,用戶可進行導入導出、查詢和刪除操作,同時,它們也是整個管理系統的核心,通過對前面板界面的美化,可實現該系統界面友好,操作便捷的任務目標;對于導入、搜索、添加和刪除系統,通過構建這四個功能模塊,用戶可完成對數據的操作,如果說是用戶界面是核心,那這四個系統則共同構成整個管理系統的根基。在流程上,首先通過導入系統輸入數據,然后在有數據的基礎之上才可以完成搜索、添加和刪除數據的操作,其中導入系統重點運用文件對話框控件,其余的操作主要利用HashTable;在完成上述的一些操作后,要對數據進行存

30、儲,所以需要建立數據存儲模塊,這里主要運用LabVIEW自帶的VI服務器引用實現存儲和調用功能;最后是顯示界面,在整個管理系統中,數據的顯示需要一個顯示窗口,這里將使用前面板的樹形顯示控件來實現這一功能。 系統的工作過程是程序運行后,在登錄界面輸入指定信息并驗證,系統彈出相應的員工管理界面,利用文件對話框導入員工信息再通過樹形控件顯示結果,此后數據的其他操作則先使用VI服務器引用功能調用數據,然后使用哈希表完成相關操作,最后再把數據返回到服務器中進程存儲。3.1.2 技術指標 根據方案論述及課題要求,為實現員工管理系統的功能,對系統的性能提出要求,其具體的功能指標如下: (1)實時處理:一次導

31、入數據完成后,可對所得數據進行實時操作處理; (2)界面友好:在簡單的閱讀使用說明后便可對系統進行使用,界面美觀簡潔; (3)功能完善:可對數據進行輸入輸出、添加和刪除等操作,能夠實現市面上管理系統的基本功能; (4)結果輸出:根據需要對系統生成的數據采集和處理生成員工信息報告,并可以以特定文檔輸出到計算機。3.2 前面板功能介紹 功能介紹部分將分別對登錄界面和員工管理界面進行操作的簡要說明,方便讀者了解該系統的使用,同時也讓讀者明確該管理系統的構成。3.2.1 登錄界面 圖2所示是系統登錄界面,用戶進入管理系統后最先進入該界面。圖2 登錄界面 通過LabVIEW進入系統后,最先彈出的是登錄認

32、證界面,用戶需要輸入正確登錄才可進入員工管理界面。在點擊運行按鈕后,便可以使用。登錄認證界面的面板包括身份類型、用戶名和密碼三個選擇輸入口,以及登錄結果和系統等待時間顯示窗口。系統設計可以選擇管理員和普通用戶登錄,用戶選擇好身份類型后,再填寫用戶名和密碼,如果身份類型、用戶名和密碼全都正確,點擊登錄按鈕便可進入人員管理界面。如果上述三項有一個錯誤,登錄結果窗口便會顯示錯誤,提醒用戶進行檢查,直到正確為止。3.2.2 員工管理界面 如圖3所示,這是用戶名和密碼驗證正確后彈出的員工管理界面。圖3 員工管理界面 用戶在登錄界面登陸成功后,彈出的窗口便是員工管理系統。系統分為管理員界面和普通用戶界面1

33、8,其主要區別在于,相比于管理員界面,普通用戶界面不能進行刪除員工信息的操作。在員工管理系統界面,上部分有四個選項卡,分別是導入、搜索、添加和刪除員工(普通用戶界面沒有刪除員工選項卡)。下部分是信息顯示窗口,這里可以查看員工信息。 每次重啟該系統,如果在顯示窗口沒有員工信息,用戶首先需要在導入員工界面,點擊導入按鈕選擇已有的用于保存員工信息的文檔,點擊確定后便導入數據。在此過程中,系統會彈出窗口,用戶可以選擇保留已有員工信息或者將其移除。導入成功后信息便會在顯示結果窗口顯示。 在導入數據后,用戶需要在龐大的員工信息中快速查找某各特定員工的信息,可以點擊搜索員工選項卡,輸入員工的編號,點擊查詢按

34、鈕便可得到結果,此外,點擊導出按鈕,用戶也可對該員工的信息進行導出。 在添加員工選項卡中,可以添加員工的編號、姓名、年齡、性別以及職稱等信息,在相應的位置輸入合適的數據后,點擊添加按鈕即可完成添加操作。添加的人員信息將保存已導入的數據上。如果用戶沒有導出,則下次使用時該員工信息不會被保存。 為了限制普通用戶對員工信息的刪除修改,系統有管理員界面。輸入正確的管理員帳號和密碼后,進入管理員特有的管理系統界面中,用戶可以進行員工信息的刪除操作,這里是需要輸入被刪除信息的員工編號,再點擊刪除按鈕即可,操作簡單。此外,用戶如果需要退出管理系統或者切換用戶,點擊停止按鈕即可。3.3 本章小結 根據員工信息

35、管理系統的預定功能要求,分析目前主流的員工管理系統的設計方案,在此基礎上采用以LabVIEW為開發環境設計管理系統,并給出系統的功能指標。采用模塊化設計對系統進行設計。同時也介紹了LabVIEW的開發流程,對系統的功能和操作進行了簡要說明。4 系統的模塊化程序設計 系統的的軟件結構程序的開發及運行維護均在LabVIEW中實現,具有強大的通用性,通過對系統的登錄系統和員工管理系統,以及管理界面的輸入輸出、添加、刪除等模塊進行模塊化設計,極大的縮短了系統的開發周期,提高工作效率19。系統操作簡單,功能擴展靈活,可以根據用戶的需求在現有系統上添加和刪除不同的功能。4.1 系統開發軟件環境 (1)開發

36、環境員工管理系統在LabVIEW的開發環境如下, 前控制面板:樹形顯示,選項卡控件,文件路徑,開關等。 程序設計結構:For,While,Case,條件結構,順序結構等。 程序設計原則:算術,字符串,布爾運算,子程序,多數據類型結構等。 程序所需控件:值,文件對話框,捆綁,普通對話框等。 數據采集:VI服務器引用,HashTable,樹形,屬性節點等。 程序檢測:設置斷點,單步運行VI,幫助窗口,使用探針等。 使用LabVIEW編程時可以考慮常規的設計語言的語法細則限制。在程序設計過程中,是可以先將所需的功能控件從菜單中拖拽并放置在前后面板的適當位置,然后用連線在程序框圖里將各功能控件和模塊的

37、端口連接,以此實現數據間的傳輸;LabVIEW里眾多的控件和函數有強大的功能,可簡單操作便可實現高級的文件導入導出、數據處理、數據存儲功能以及數據的查詢的功能。 (2)數據操作 LabVIEW作為一款圖形化開發軟件,和Mastercam、Cimatron、PowerMILL等軟件一樣,進行數據的操作是最基本的。在LabVIEW中,用戶能使用幾乎所有的數據類型與數據運算,并且它還擁有一些特殊的數據類型。 數據類型 用戶編寫一段程序都需掌握數據類型,在LabVIEW中不同類型的數據由特定的圖標、顏色和線型的連接組成來區別,并且不同的數據類型和數據結構的存儲是不同的。用戶調用適當類型的數據不僅能減少

38、對內存的占用,還有效提高了程序性能。 數據運算 LabVIEW具有及其強大的數據運算能力。LabVIEW不僅包含基本的運算符,如關系運算符、算術運算符和邏輯運算符等,還有許多函數節點。與其他通過文本編程的軟件不同,LabVIEW是圖形化一款編程軟件,它不考慮文本編程時的運算符優先級和結合性概念,這給編程人員減少了很多的工作負擔。 (3)程序設計形式與結構 程序結構是所有計算機編程的基礎,LabVIEW最為一款圖形化編程軟件也不例外。絕大部分C語言的程序結構可以在LabVIEW中實現,比如For循環,While循環和事件結構等。程序設計的結構可用多種形式,用戶可通過自定義子VI在多個程序中使用,

39、程序也可以在相關設置后多任務同步運行。 (4)圖形化顯示數據信息 能夠以圖形表格的形式來展示數據信息是LabVIEW的一個重要特點,從圖表中可以得出數據的變化,這使虛擬儀器的前面板有著美觀簡潔,顯示清晰的特點。LabVIEW提供了很多圖形顯示與操作控件,比如選項卡控件,樹形顯示。選項卡控件主要用來為開發人員提供前面板測控功能,以對后面板程序進行運行調控。而樹形顯示控件則是將程序采集的數據以樹形形式在前面板顯示,實現對數據的顯示功能。4.2 登錄模塊設計 登錄模塊的設計框圖如圖4所示,它由最外圍的While循環結構,中間層次的事件結構和內層的條件結構構成。圖4 登錄模塊設計框圖 While循環結

40、構用于將整個登錄程序循環執行,當循環滿足某種條件時退出或繼續運行。使用該循環可保證用戶可隨時驗證登錄。在圖左上方的手表圖標為等待(ms)函數,它可限制程序循環運行時該線程對計算機CPU的占用,良好的程序應該包含該等待函數。圖左下方連接I圖標的顯示控件則用來顯示說明當前循環次數,它可作為系統已運行事件在前面板顯示。 事件結構顧名思義,就是僅當某指定事件發生時,程序才作出該事件的相關響應,該結構可使多個程序的組成變得簡單,并降低對計算機CPU的資源占用。用戶在寫入用戶名和密碼后點擊登陸后輸出“真”值,事件結構里的登陸程序作出響應,執行內層的條件結構循環。當點擊停止時輸出“假”值,則執行停止事件,程

41、序停止工作。 條件結構用于在某種特定情況下執行某段特定程序,使用條件結構能使程序選擇性的執行。該登錄系統設計中包含兩個條件結構,其中外層條件結構可實現“管理員”和“普通用戶”的身份類型選擇,當用戶選擇管理員登錄時,外層循環執行“管理員”程序。當用戶名和密碼正確時,執行內層條件結構,通過字符串控件在窗口顯示登錄成功,并執行Main1.vi,該子VI即是員工信息管理系統。如果用戶名或密碼錯誤,則返回“假”值,通過字符串控件輸出登錄失敗信息。同理,當用戶選擇普通用戶時執行相同的流程,不過這里最終執行Main2.vi,它區別Main1.vi于該管理系統沒有刪除功能。4.3 員工管理模塊設計 相比登錄界

42、面的設計,員工管理的設計就顯得復雜。首先最外層使用While循環,用于管理程序的連續執行,當點擊停止時程序終止;中層循環使用事件結構,分別為載入人員、刪除、添加、導出和查詢人員五個事件,當點擊前面板控件上的某個選項時,后面板作出響應響應,執行特定事件,通過這幾個事件構成整個系統的核心,能夠實現系統預定功能;內層循環則主要使用了條件結構,通過條件結構判定某些控件輸出結果的“真”“假”,再執行“真”“假”值所對應的特定程序。 對于系統的功能設計,同樣采用模塊化編程,這里將按照事件結構的“事件”分別對其設計流程及思想進行詳細介紹:4.3.1 載入人員模塊 如圖5所示,這是實現載入人員信息功能的設計框

43、圖。圖5 載入人員設計框圖 在最外層的條件結構中,重點使用了文件對話框,它可顯示一個對話框,用于指定文件路徑或目錄。這里放置一個對話框,可實現從計算機硬盤里選擇一個存儲員工信息的文件。如果在選擇文件后,判斷值為“真”,則進入第二層條件結構,否則不執行。 在第二層條件結構中,上部分使用了順序結構,它可將放置于里面的程序按照從左往右的方向依次執行。在順序結構里,通過讀取、關閉文件控件和文件控件的使用,將輸出值送入,實現輸入員工信息功能。同時在該循環內里的條件結構使用編輯樹形控件項:刪除項方法和EmptyHashTable.vi共同實現清空員工信息; 在下部分的For循環結構里,先把通過讀取文本文件

44、控件輸出的值輸入StringToEmployee.vi,完成將輸入的員工信息字符串轉化為員工信息簇,然后再把數據送到SerachEmployee.vi、AddEmployeeToTree.vi以及InsertEmployee.vi。其中,SerachEmployee.vi用于在員工簇中查找指定編號的員工信息,如果成功,返回員工信息和他的所有下級編號。AddEmployeeToTree.vi用于把員工信息插入到樹形控件里。InsertEmployee.vi用于插入某員工信息到哈希表。最后把輸出值送入到格式化寫入字符串控件,通過與單按鈕對話框的使用,實現顯示“成功導入%d條數據”,完成載入人員信息

45、操作。4.3.2 刪除人員模塊 刪除人員模塊設計框圖如圖6所示。圖6 刪除人員設計框圖 在該模塊的事件結構里,首先將VI服務器引用與樹形控件:刪除項連接,以達到在樹形控件里刪除指定項的功能。接下來要做的工作是查找指定刪除項,這里需利用SerachEmployee.vi查找指定員工,如果值為真,即存在指定員工,則輸出值進入下部分條件結構里的DeleteEmployee.vi中,該子VI用于從員工哈希表中刪除指定編號的員工。如果成功,輸出員工信息和他的所有直接下級編號數組。如果無法查找到員工信息,輸出值為“假”,通過對話框控件顯示“該員工不存在”,此外當沒有刪除指定員工所屬下級時,也會提示刪除失敗

46、。 在上部分循環結構里,主要實現以樹形顯示刪除結果。程序設計流程是先通過按名稱解除捆綁控件和創建數組控件的連接實現返回指定名稱的簇元素以及向數組插入控件中添加元素。同樣,循環結構里需用SerachEmployee.vi查找指定員工,然后將輸出結果送入數組插入控件,如果值為真,將于TraverseInEmployeeHashTable.vi輸出的值共同流向新的數組插入控件。其中TraverseInEmployeeHashTable.vi作用是以廣度遍歷查找輸入的人員編號及其所屬下級信息。最后,通過For循環里的AddEmployeeToTree.vi和格式轉換控件把數值輸入到樹形控件并顯示。4.

47、3.3 添加人員模塊 如圖7所示,該圖是添加人員信息模塊的設計框圖。圖7 添加人員設計框圖 在最外層條件結構連接一個布爾控件,當點擊控件時輸出“真”值,外層循環開始執行。在循環內部,放置一個代表員工編號的v32型數值常量輸入控件,與SerachEmployee.vi連接,用來查找編號,SerachEmployee.vi連接一個條件結構的布爾輸入端子,同時也要建立一個代表直接上級編號的v32型數值常量輸入控件并與該循環相連。通過兩個連接的輸出值,可判定該員工是否已存在。如果值為“假”,說明該員工不存在,可繼續添加。這時需要再建立三個條件結構,并依次嵌套,為方便說明,對其分別稱為循環1、循環2和循

48、環3. 循環1主要用來接收上述循環的輸出值,如果值為“真”則運行循環1內的程序。該循環內,建立一個捆綁控件,設置為“按名詞捆綁”并對其進行屬性設置,包含編號、姓名、性別、職稱、學歷信息編碼、工作年限、工齡以及直接上級編號。其中代表員工編號的輸入控件與該捆綁控件的編號項相連,代表直接上級的輸入控件與該捆綁控件的直接上級編號相連。此外,把該捆綁控件與GetEmployeeInfoCluster.vi連接,該子VI可輸出員工信息簇結構型,可用于Bundle生成員工信息簇。在捆綁控件的輸出端則分別連接CheckEmployee.vi與循環2,這里的CheckEmployee.vi主要對員工信息簇進行有

49、效性檢查。 在接收循環1送出的值后,如果循環2值為“真”則進入循環2里的InsertEmployee.vi,以實現插入員工信息到哈希表。并且在插入成功后,真值傳入循環3,顯示導入成功,否者顯示導入失敗;如果循環2值為“假”,則由CheckEmployee.vi輸出值,通過單按鈕對話框顯示錯誤。4.3.4 導出人員模塊 如圖8所示,該圖為導出人員信息模塊的設計框圖。圖8 該部分使用了五個條件結構和兩For循環,條件結構1用來開始執行導出工作,條件結構2查詢員工編號,條件結構3則是選擇導出路徑,條件結構4和5主要將員工信息數據以特定格式進行輸出。本節同樣將分別介紹各條件結構的設計思路: 條件結構1

50、,該結構通過連接一個布爾按鈕來執行導出工作,首先按下布爾按鈕,向循環結構輸出“真”值,開始執行循環內程序。 條件結構2,在這個循環結構外放置一個值屬性控件和SerachEmployee.vi,并且值屬性控件向SerachEmployee.vi輸出值,這兩個的構建可以實現在員工哈希表中查找指定編號的員工信息。然后如果查找到員工信息,則輸出值為“真”,執行循環內程序,否則無法執行。 條件結構3,在這里放置一個文件對話框,對話框左邊連接一個字符串常量,用來固定導出文件的格式,右邊連接條件結構3,并在循環內放置打開/創建/替換文件控件,將其路徑與文件對話框的路徑相連,屬性再設置為只寫和用確定來替換和創

51、建,通過以上構建可完成對輸出文件的屬性設置。 條件結構4、5,按照原理圖所示的設計放置控件和循環結構可實現將員工信息按照字符串常量內的格式向計算機輸出數據。其中,For循環1內的EmployeeToString.vi和左邊的TraverseInEmployeeHashTable.vi可實現構造所有下屬的信息內容,主要方式是在廣度遍歷方式查找員工信息并將信息轉換為輸出字符串,員工信息將按照特定格式輸出。For循環2內由SerachEmployee.vi輸出值到EmployeeToString.vi,通過查找指定編號的員工信息并將信息輸出,這可以構造直接下屬的信息內容。最后,放置一個格式化寫入字符

52、串控件,在輸出端連接特定格式的字符串常量。按照以上設計即可完成導出數據的功能。4.3.5 查詢人員模塊 查詢人員模塊的設計框圖如圖9所示。圖9 查詢人員設計框圖 在查詢人員模塊的設計中,重點是通過VI服務器引用,可以調用已有的數據,然后以樹形控件來顯示數據。具體流程是在條件結構1外添加樹形控件,設置屬性為刪除項方法,然后輸入端連接VI服務器引用,輸出端連接循環結構。同時在該循環結構的布爾端子連接布爾控件,便可開始執行查詢工作。 在條件結構2中,最先建立一個I32型的人員編號輸入控件,并將輸出端連接SerachEmployee.vi,以實現按照編號進行人員查找,如果輸出值為“真”,則執行條件結構

53、2里的程序。其中SerachEmployee.vi輸出的真值一條通過創建數組控件流向條件結構三,并將數據插入數組控件。另一條則先流向按名稱解除捆綁控件,通過該控件可返回指定名稱的簇元素,在這里,直接上級編號數據流向SerachEmployee.vi,編號數據流向TraverseInEmployeeHashTable.vi,最后兩條數據通過數組插入控件合并到一起,并傳輸到AddEmployeeToTree.vi,利用此子VI將查詢到的數據送入樹形控件以顯示。另外,按名詞解除捆綁控件中的編號的數據流一條通過十進制轉換控件,也將值輸出到樹形控件,并且數值與AddEmployeeToTree.vi的輸

54、出值相匹配,完成查詢直接上級編號及所屬編號的功能。如果無法找到員工,輸出值為“假”,并通過單按鈕對話框顯示“該人員不存在”。4.4 功能模塊的整合 圖10為系統各模塊的整合設計,主要使用了事件結構。圖10 各模塊整個設計思路 在完成各個功能模塊的初步構建后,需要將各模塊整個到一起,形成完整的員工管理系統,這里采用的思路是使用事件結構,事件結構等價于C語言里的if.else.語句或者switch語句,使用它可實現在點擊某個選項后進行某段程序的功能。 此外,要實現員工管理系統的界面設計,需要提供選項卡控制面板、導入按鈕、顯示窗口等。 關于選項卡,這里可以在前面板中的控件新式容器,再選擇選項卡即可,

55、放置在前面板后進行相關數據綁定等設置即可完成員工管理系統的選項卡制作。同樣,在控件新式列表、表格和樹中,選擇樹形便可以樹形結構來構成顯示窗口,將其放置在前慢板后,右擊屬性對其進行相關設置,完成界面的美化。 在所有的前面板窗口設置好以后,如果需要對面板顏色就行修改美化,可點擊查看工具選版,選著畫筆即可涂色。4.5 子VI的創建 LabVIEW中的使用多個SubVI可以構建功能豐富的程序。在LabVIEW圖形化編程環境中,對于大型程序的開發,圖形控件之間的連線會占據較大的屏幕控件,且連線錯綜復雜,此時開發人員不可能把所有的程序都放在一個VI的程序框圖中實現。因此絕大多少情況下,需要把程序分模塊來實現,這就是創建子VI的意義。 實際上任何VI都可以作為SubVI被其他VI程序調用,這時候只需在對普通VI定義連接端子和圖標。對于如何創建VI圖標,只需要雙擊右上角的圖標即可,通過VI圖標編輯器編輯VI圖標,可方便在主程序框圖中辨別子VI功能20。在為VI建立連線端子,相當于設置函數參數,同樣點擊右上角的圖標,選擇連線端子,根據需

溫馨提示

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

評論

0/150

提交評論