◇樂山師范學院電子信息與材料學院 張幼麟
上位機直接面對用戶,進行數(shù)據(jù)的分析處理;而Labview是編寫上位機程序的一個簡單有效的平臺。本文簡單介紹了Labview中上位機采用的通信方式,并以采用串口通信方式的一個溫度采集上位機程序為例說明了在Labview中上位機的實現(xiàn)。
當今社會,計算機已經(jīng)融入我們生產(chǎn)生活的各個角落,尤其在現(xiàn)場控制領域,利用計算機與用戶進行信息溝通、控制現(xiàn)場已經(jīng)是基本配置,所以在計算機上的控制平臺的設計是必不可少的一個環(huán)節(jié)。上位機就是這樣具有良好的用戶界面,能收集信息,監(jiān)控現(xiàn)場,并發(fā)出控制命令的計算機。
現(xiàn)在市場上普及的微型計算機一般是PC機,在其操作系統(tǒng)(windows系列)上運行的上位機程序可由開發(fā)者自己編程定制或用Labview來實現(xiàn);對于缺乏編程經(jīng)驗的開發(fā)者來說,利用Labview來實現(xiàn)上位機程序的設計是一個不錯的選擇。Labview是圖形化編程語言,可以進行虛擬儀器的設計,非常適合于具有專業(yè)知識但并沒有太多編程知識的工程師。
運行在計算機上的上位機程序需要具有以下功能:能采集各個下位機上傳的數(shù)據(jù),對數(shù)據(jù)進行整理分析,按照用戶要求針對不同的數(shù)據(jù)結果發(fā)出不同的控制命令。數(shù)據(jù)的采集與命令的下發(fā)都需要通過有線或無線的通信方式來實現(xiàn);所以,通信是上位機的一個基礎必需的功能。Labview支持的通信方式有:串口通信、TCP/IP網(wǎng)絡通信和DataSocket等通信技術。其中,DataSocket是Labview專用的通信技術,它利用Labview自帶的服務器進行數(shù)據(jù)通信;而串口和TCP/IP網(wǎng)絡通信是兩種市場上常用的通信方式。
串口通信線路簡單,控制容易,并且很多下位機自帶有串口控制模塊(比如51單片機);是一種經(jīng)常被采用的通信方式。Labview針對串口通信提供了專門功能選板,可對串口進行系統(tǒng)配置、讀寫操作和設置緩沖區(qū)。
互聯(lián)網(wǎng)是現(xiàn)在覆蓋最廣,市場占有最大的網(wǎng)絡,通過它可以方便的實現(xiàn)遠程監(jiān)控?;ヂ?lián)網(wǎng)的協(xié)議基礎是TCP/IP,而Labview內(nèi)嵌了TCP/IP網(wǎng)絡通信協(xié)議簇,對于互聯(lián)網(wǎng)的兩種典型通信方式:面向連接的TCP通信和無連接的UDP數(shù)據(jù)包通信,Labview都支持。Labview在數(shù)據(jù)通信的協(xié)議模塊中有TCP和UDP兩個獨立的功能面板,通過它們可以簡單方便的進行TCP偵聽、建立TCP連接、或者打開UDP,進行數(shù)據(jù)的通信傳遞。
本文將采用串口通信方式實現(xiàn)一簡單的上位機控制程序。在本范例中,收集數(shù)據(jù)的下位機為51系列單片機,它和上位機通過串口采用異步通信的方式進行數(shù)據(jù)通信,按照上位機的命令將傳感器收集到的溫度信息傳遞給上位機,由上位機來對數(shù)據(jù)進行分析匯總繪圖處理。
本例子的操作面板由三部分組成:串口參數(shù)設置,控制命令平臺(接收數(shù)據(jù)開關、需要讀取數(shù)據(jù)數(shù)量的設置),接收到的數(shù)據(jù)及數(shù)據(jù)的分析圖表顯示(如圖1所示)。整個系統(tǒng)的程序為一循環(huán)結構,開始后一直自動運行,只有當用戶按下停止鍵才能退出。系統(tǒng)的界面設計、數(shù)據(jù)分析處理、文件存儲及圖形展示這些功能都可以用Labview平臺提供的強大的專業(yè)功能模塊來實現(xiàn)。
圖1 范例操作面板
上位機數(shù)據(jù)信息的采集一般有2種方式來實現(xiàn):①下位機自動定時向上位機發(fā)送數(shù)據(jù);②下位機接收到上位機命令后再發(fā)送數(shù)據(jù)。在此例中采用方法2,當上位機發(fā)出接收數(shù)據(jù)的命令后下位機再發(fā)送數(shù)據(jù)。當用戶設置好串口參數(shù)(必須與下位機的單片機串口工作狀態(tài)一致),輸入需要獲得的溫度數(shù)量,并且按下接收溫度的開關,即是向下位機發(fā)出了發(fā)送數(shù)據(jù)的命令。而作為下位機的單片機收到這條消息后就按照消息的要求發(fā)出現(xiàn)場采集到的溫度信息。經(jīng)過用戶設置的延時等待后,上位機讀取緩沖區(qū)中剛才接收到的數(shù)據(jù),再將數(shù)據(jù)按要求存儲到相應的文件中,并把它們分析處理,以圖形的形式展示到面板上,進行直觀展示,便于用戶研究。
計算機已經(jīng)普及到生活的方方面面,現(xiàn)代社會對它有著強烈的依賴性,在工業(yè)現(xiàn)場控制中必須要有運行在計算機上的上位機程序與用戶進行對接。本文通過例子介紹了Labview中上位機的通信及設計應用。