wqlcdchen
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 8 個
工控威望: 124 點
下載積分: 554 分
在線時間: 8(小時)
注冊時間: 2012-05-14
最后登錄: 2012-10-30
查看wqlcdchen的 主題 / 回貼
樓主  發(fā)表于: 2012-05-22 12:58
微嵌組態(tài)人機界面(HMI)與單片機通信及數(shù)據(jù)保存的應用


   
我們做開發(fā)很多時候,涉及到單片機控制的產品都需要用到一個顯示界面(正確稱為人機界面最為合適,簡稱HMI),然而,單單顯示又是不夠的,很多單片機主板采集到的模擬量,數(shù)字量等數(shù)據(jù)需要進行保存功能,人機界面與單片機斷電之后,等下次設備再次開機的時候,又需要把之前的數(shù)據(jù)以一定的表格,曲線顯示出來,這種功能稱之為斷電數(shù)據(jù)保存功能。解決的方案有2種:
     1.
單片機主板里面集成EEROM等掉電存儲芯片。這種是最為傳統(tǒng)的解決方案,優(yōu)點在于一般的單片機工程師都能夠想到,缺點是成本比較高,增加編程的難度,尤其是數(shù)據(jù)量大的時候,芯片的價格也相應增長。如果是用在數(shù)據(jù)量比較少的場合,用單片機里面的EEROM就可以了。

     2.
選擇帶有數(shù)據(jù)保存功能的人機界面,更復雜的還有配方等功能。這種方案的優(yōu)勢很明顯,節(jié)約成本,單片機主板設計簡單,編程也方便,存儲容量更大,還可以時時把相關采集數(shù)據(jù)以excel等文件的格式復制到U盤。

     
現(xiàn)在就做個例程,介紹如何把單片機采集的各路數(shù)據(jù)進行保存,整改,對比,復制到U盤等等。

該工程應用實例是基于測控行業(yè)的一種儀器設計的,模擬量采集有16路,涉及到精確的數(shù)據(jù)我們可以采用32位有符號數(shù)表示。

   
相關步驟如下:

1.
安裝相應的嵌入式組態(tài)軟件,這里以微嵌組態(tài)軟件為例,它可以提供工業(yè)標準的Modbus RTU協(xié)議和簡單的自由協(xié)議接口函數(shù)。

   
安裝好組態(tài)軟件之后,打開軟件
點擊 “新建,如下圖:


2.
選擇人機界面HMI的型號,這里選擇WQT_T8048_070(800*480),點擊下面的新增按鈕,表示新增與人機界面連接的設備串口


這里選用工業(yè)標準的Modbus RTU協(xié)議作為與單片機連接的協(xié)議,當然也可以選擇自由協(xié)議(free protocol)。點擊下一步,進入工程描述狀態(tài),這些根據(jù)個人情況填寫,填寫之后點擊確定進入畫面編輯狀態(tài)。


3.
再點擊菜單欄的設置菜單進入配方管理器


4.
進入配方界面之后點擊新增,輸入配方的名稱。


寫配方到設備選擇HMI LD寄存器地址 20000處,從設備讀配方同樣也是選擇HMILD寄存器20000處,因為本人機界面的數(shù)據(jù)保存功能寄存器是從LD20000LD30000.
數(shù)據(jù) 那里選擇32位有符號數(shù),然后新增,因為是16路數(shù)據(jù)采集功能,所以是 16*2*52是因為32有符號數(shù),5等下解釋)=160,新增到RW161 .然后點擊確定,點擊確定配方界面。



5.
建立配方數(shù)據(jù)表格,這個可以在人機界面元件中找到 配方表格


具體的屬性設置如下:在控制界面的配方條目索引選擇 你剛才定義的配方名稱即可
                             
在表格顯示中增加列數(shù),分別是公差尺寸,公差上限,公差下限,標準差下限,標準差上限這5列。



如何保存這些數(shù)據(jù)呢?我們要在旁邊添加一個保存數(shù)據(jù)按鈕,稱為多功能按鈕,再增加一個備份按鈕,步驟設置屬性如下:


當然為了安全清楚的把數(shù)據(jù)保存到U盤,可以用一個指示燈指示U盤保存數(shù)據(jù)情況


至于如何將單片機采集到的數(shù)據(jù)保存到HMILD20000LD30000這些寄存器,需要用到一些簡單的宏指令編寫,也是簡單的C語言而已,這些就是如何保存數(shù)據(jù)的大概步驟。
微嵌科技!