官术网_书友最值得收藏!

2.2.5 測試軟件的開發

選擇LabVIEW9.0作為軟件開發平臺,采用研華PCI-1711L數據采集卡,可以在較短時間內充分利用研華板卡功能和資源,編寫強大的數據處理和圖形顯示軟件。

(1)軟件模塊組成

液壓試驗臺測試系統軟件包含的功能強大,包括參數設置、用戶登錄、數據采集、與PLC通信、與轉速轉矩采集儀通信、信號處理和分析、數據和波形顯示、數據和波形保存及打印。根據上面要實現的功能種類可以把軟件劃分為幾個模塊,包括參數設置模塊、用戶登錄模塊、數據采集模塊、與PLC通信模塊、顯示及操作模塊、數據存儲模塊等,如圖2-18所示。

圖2-18 功能模塊結構框圖

(2)測試系統軟件流程

根據該系統要實現的功能,軟件操作流程如圖2-19所示。該流程具體的實現過程為,打開測試系統軟件,進入系統登錄界面,輸入用戶名和密碼,若用戶名和密碼正確則進入采集系統,否則退出采集系統。進入該系統后用戶對系統參數進行設定,參數設定包括轉速轉矩采集儀通信參數設定、傳感器標定系數設定、更改用戶名和密碼,轉速轉矩采集儀通信參數設定包括串口和波特率,傳感器系數標定就是對應的傳感器量程;參數設定好后用戶應進行試驗登錄,試驗登錄包括用戶基本信息、試驗概況、環境參數、被測設備選擇、備注信息;用戶登錄后選擇試驗項目,然后開始采集,采集過程的數據自動保存為Txt格式的文檔,試驗完成后用戶可以自主選擇是否需要保存試驗報告。

圖2-19 軟件操作流程

(3)主程序模塊

主程序模塊包括數據顯示及工具操作。主程序模塊分為主界面和各獨立試驗分支界面,主界面顯示所有的采集參數,工具欄自定義能實現參數設置、用戶登錄、數據采集、與PLC通信、與轉矩儀通信、信號處理和分析、數據和波形顯示、數據和波形保存及打印基本功能。

本系統是連續工作并且需要多任務同時執行,在數據采集的同時要進行數據處理、數據顯示、數據存儲等,并且要接受來自鍵盤和鼠標的輸入,這就是系統的多任務進程。

多任務是指一個程序同時執行多個流程。現代的芯片處理器采用分時處理。芯片在執行分時處理時把系統程序劃分為很小的時間片段,每個時間片段執行不同的程序。

在Windows系統環境下多任務分為多線程和多進程。多進程是指Windows系統允許在內存或一個程序中同時存在多個程序并且在內存中可以允許存在多個副本。進程有自己的內存、文件句柄或者其他系統資源的運行程序。單個線程可以包含獨立的執行路徑。在Windows操作系統下,每個線程被分配不同的CPU時間片,在某個時刻,CPU只執行一個時間片內的線程,多個時間片中的相應線程在CPU內輪流執行,由于每個時間片的時間很短,所以對用戶來說仿佛各個線程在計算機中是并行處理的。

如果程序只存在一個主線程,所有的處理函數都放在主線程中,則當程序需要停止時,會出現程序響應很慢,甚至停不下來的情況。這是因為系統開始工作后CPU的占用率很高,而窗口發出的停止消息優先級較低,而使消息被掛起,得不到執行。因此程序設計時應把數據采集放在一個單獨的線程中。當程序啟動時,主線程開始工作,隨后啟動工作線程。當程序需要停止時,通過給主線程發送消息以改變狀態參數,從而使數據處理過程停止。

為了保證系統采集的精度和速率,利用多線程技術實現數據采集和數據處理,數據采集和與PLC通信一直在主程序中運行,數據存儲和處理、用戶登錄、參數設置線程由用戶在主程序中調用。主程序組成框圖如圖2-20所示,根據上述功能完成的主界面如圖2-21所示。

自動程序流程如圖2-22所示。

圖2-20 主程序組成框圖

圖2-21 采集主界面

圖2-22 自動程序流程

(4)數據庫應用

數據庫技術已經廣泛應用于數據管理和數據共享。著名的數據庫管理系統有SQL Server、Oracle、DB2、Sybase ASE、Visual ForPro、Microsoft Access 等。數據庫訪問接口種類也有很多,包括DAO、ODBC、RDO、UDA、OLE DB、ADO等。

Microsoft Access 是在 Windows 環境下非常流行的桌面型數據庫管理系統,它作為 Microsoft Office 組件之一,是一個功能比較齊全的數據庫管理軟件,能夠管理、收集、查找、顯示以及打印商業活動或者個人信息。Access支持多種類大信息量的數據,微軟已經做好了普通數據庫管理的初始工作,安裝和使用都非常方便,并且支持 SQL語言,所以本項目采用Access數據庫。

①DSN鏈接數據庫 LabVIEW 數據庫工具包基于 ODBC(Open Database Connectivity)技術。如圖2-23所示,在使用ODBC API 函數時,需要提供數據源名 DSN(Data Source Names)才能鏈接到實際數據庫,所以需要首先創建 DSN。

圖2-23 基于ODBC技術的LabVIEW數據庫工具包

②UDL鏈接數據庫 Microsoft設計的ODBC標準只能訪問關系型數據庫,對非關系型數據庫則無能為力。為解決這個問題,Microsoft 還提供了另一種技術:Active數據對象ADO(ActiveX Data Objects)技術。ADO是Microsoft提出的應用程序接口(API)用以實現訪問關系或非關系數據庫中的數據。ADO使用通用數據鏈接 UDL(Universal Data Link)來獲得數據庫信息以實現數據庫鏈接。

由于使用 DSN鏈接數據庫需要考慮移植問題,把代碼發布到其他機器上時,需要手動重新建立一個DSN,工程復雜,可移植性不好,故選擇UDL鏈接數據庫。

主站蜘蛛池模板: 宣化县| 徐闻县| 永登县| 彰化县| 兴仁县| 缙云县| 修文县| 昌邑市| 朝阳市| 丘北县| 兰州市| 儋州市| 从江县| 垦利县| 吴桥县| 清水河县| 乌鲁木齐县| 麻阳| 张家界市| 岑巩县| 阿拉善右旗| 竹北市| 句容市| 射洪县| 平泉县| 彭州市| 乌鲁木齐县| 宣城市| 玉山县| 丹东市| 黄山市| 岳阳市| 武宁县| 满城县| 伊吾县| 日土县| 泗水县| 和田县| 紫金县| 中超| 利津县|