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