wqlcdchen
級別: 探索解密
|
微嵌組態人機界面(HMI)與單片機通信及數據保存的應用 我們做開發很多時候,涉及到單片機控制的產品都需要用到一個顯示界面(正確稱為人機界面最為合適,簡稱HMI),然而,單單顯示又是不夠的,很多單片機主板采集到的模擬量,數字量等數據需要進行保存功能,人機界面與單片機斷電之后,等下次設備再次開機的時候,又需要把之前的數據以一定的表格,曲線顯示出來,這種功能稱之為斷電數據保存功能。解決的方案有2種: 1.單片機主板里面集成EEROM等掉電存儲芯片。這種是最為傳統的解決方案,優點在于一般的單片機工程師都能夠想到,缺點是成本比較高,增加編程的難度,尤其是數據量大的時候,芯片的價格也相應增長。如果是用在數據量比較少的場合,用單片機里面的EEROM就可以了。 2.選擇帶有數據保存功能的人機界面,更復雜的還有配方等功能。這種方案的優勢很明顯,節約成本,單片機主板設計簡單,編程也方便,存儲容量更大,還可以時時把相關采集數據以excel等文件的格式復制到U盤。 現在就做個例程,介紹如何把單片機采集的各路數據進行保存,整改,對比,復制到U盤等等。 該工程應用實例是基于測控行業的一種儀器設計的,模擬量采集有16路,涉及到精確的數據我們可以采用32位有符號數表示。 相關步驟如下: 1.安裝相應的嵌入式組態軟件,這里以微嵌組態軟件為例,它可以提供工業標準的Modbus RTU協議和簡單的自由協議接口函數。 安裝好組態軟件之后,打開軟件點擊 “新建”,如下圖: 2.選擇人機界面HMI的型號,這里選擇WQT_T8048_070(800*480),點擊下面的新增按鈕,表示新增與人機界面連接的設備串口 這里選用工業標準的Modbus RTU協議作為與單片機連接的協議,當然也可以選擇自由協議(free protocol)。點擊下一步,進入工程描述狀態,這些根據個人情況填寫,填寫之后點擊確定進入畫面編輯狀態。 3.再點擊菜單欄的設置菜單進入“配方管理器” 4.進入配方界面之后點擊“新增”,輸入配方的名稱。 在“寫配方到設備”選擇HMI 的LD寄存器地址 20000處,“從設備讀配方”同樣也是選擇HMI的LD寄存器20000處,因為本人機界面的數據保存功能寄存器是從LD20000到LD30000. 數據 那里選擇32位有符號數,然后新增,因為是16路數據采集功能,所以是 16*2*5(2是因為32有符號數,5等下解釋)=160,新增到RW161 .然后點擊確定,點擊確定配方界面。 5.建立配方數據表格,這個可以在人機界面元件中找到 配方表格 具體的屬性設置如下:在“控制”界面的“配方條目索引”選擇 你剛才定義的配方名稱即可 在表格顯示中增加列數,分別是公差尺寸,公差上限,公差下限,標準差下限,標準差上限這5列。 如何保存這些數據呢?我們要在旁邊添加一個保存數據按鈕,稱為多功能按鈕,再增加一個備份按鈕,步驟設置屬性如下: 當然為了安全清楚的把數據保存到U盤,可以用一個指示燈指示U盤保存數據情況 至于如何將單片機采集到的數據保存到HMI的LD20000到LD30000這些寄存器,需要用到一些簡單的宏指令編寫,也是簡單的C語言而已,這些就是如何保存數據的大概步驟。 |
|
---|---|---|
|