|

在很多時候,涉及到單片機控製的產品都需要用到一個顯示界麵(正確稱為人機界麵最為合適,簡稱HMI),然(ran)而(er),單(dan)單(dan)顯(xian)示(shi)又(you)是(shi)不(bu)夠(gou)的(de),很(hen)多(duo)單(dan)片(pian)機(ji)主(zhu)板(ban)采(cai)集(ji)到(dao)的(de)模(mo)擬(ni)量(liang),數(shu)字(zi)量(liang)等(deng)數(shu)據(ju)需(xu)要(yao)進(jin)行(xing)保(bao)存(cun)功(gong)能(neng),人(ren)機(ji)界(jie)麵(mian)與(yu)單(dan)片(pian)機(ji)斷(duan)電(dian)之(zhi)後(hou),等(deng)下(xia)次(ci)設(she)備(bei)再(zai)次(ci)開(kai)機(ji)的(de)時(shi)候(hou),又(you)需(xu)要(yao)把(ba)之(zhi)前(qian)的(de)數(shu)據(ju)以(yi)一(yi)定(ding)的(de)表(biao)格(ge),曲(qu)線(xian)顯(xian)示(shi)出(chu)來(lai),這(zhe)種(zhong)功(gong)能(neng)稱(cheng)之(zhi)為(wei)斷(duan)電(dian)數(shu)據(ju)保(bao)存(cun)功(gong)能(neng)。解(jie)決(jue)的(de)方(fang)案(an)有(you)2種:
1.單片機主板裏麵集成EEROMdengdiaodiancunchuxinpian。zhezhongshizuiweichuantongdejiejuefangan,youdianzaiyuyibandedanpianjigongchengshidounenggouxiangdao,quedianshichengbenbijiaogao,zengjiabianchengdenandu,youqishishujuliangdadeshihou,xinpiandejiageyexiangyingzengchang。ruguoshiyongzaishujuliangbijiaoshaodechanghe,yongputongdeSTC等單片機就可以了,因為單片機裏麵集成了EEROM,存儲量至少是 1K以上的。
2.選(xuan)擇(ze)帶(dai)有(you)數(shu)據(ju)保(bao)存(cun)功(gong)能(neng)的(de)人(ren)機(ji)界(jie)麵(mian),更(geng)複(fu)雜(za)的(de)還(hai)有(you)配(pei)方(fang)等(deng)功(gong)能(neng)。這(zhe)種(zhong)方(fang)案(an)的(de)優(you)勢(shi)很(hen)明(ming)顯(xian),節(jie)約(yue)成(cheng)本(ben),單(dan)片(pian)機(ji)主(zhu)板(ban)設(she)計(ji)簡(jian)單(dan),編(bian)程(cheng)也(ye)方(fang)便(bian),存(cun)儲(chu)容(rong)量(liang)更(geng)大(da),還(hai)可(ke)以(yi)時(shi)時(shi)把(ba)相(xiang)關(guan)采(cai)集(ji)數(shu)據(ju)以(yi)excel等文件的格式複製到U盤。
現在就做個例程,介紹如何把單片機采集的各路數據進行保存,整改,對比,複製到U盤等等。
該工程應用實例是基於測控行業的一種儀器設計的,模擬量采集有16路,涉及到精確的數據顯示,我們采用32位有符號數表示(這個可以在人機界麵編程的時候設計,步驟有說到)。
相關步驟如下:
1.安裝相應的嵌入式組態軟件,這裏以廣州三青創工自動化科技有限公司(http://www.lyctr.com/)開發單片機與人機界麵通訊為例,因為涉及單片機開發的,它可以提供工業標準的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語言而已,這些就是如何保存數據的大概步驟。
本文摘自:http://www.lyctr.com/shownews.asp?id=170
|