徐 艦 柴繼新 范曉燕 陳柯行
(北京長城計(jì)量測試技術(shù)研究所,北京 100095)
工業(yè)觸摸屏是通過觸摸式工業(yè)顯示器把人和機(jī)器連為一體的智能化界面。它替代了傳統(tǒng)的控制按鈕和指示燈,是目前最簡單、方便、自然的一種人機(jī)交互方式。觸摸屏作為一種特殊的計(jì)算機(jī)外設(shè),在工業(yè)控制和人機(jī)交互方面得到廣泛應(yīng)用。利用觸摸屏和帶有Modbus協(xié)議的A/D模塊設(shè)計(jì)現(xiàn)代數(shù)字化智能儀表已經(jīng)受到很多的關(guān)注和研究[1-5]。本文介紹了一款用于力及扭矩測量用觸摸式儀表,該儀表具有參數(shù)設(shè)置,數(shù)據(jù)顯示,繪制曲線及對傳感器進(jìn)行標(biāo)定等功能。與傳統(tǒng)儀表相比,這種觸摸式儀表更方便、快捷、表現(xiàn)力更強(qiáng)。
這款觸摸式力、扭矩測量用儀表,使用的是信捷(touchwin)TG865系列觸摸屏。此屏支持C語言腳本功能,可以在此基礎(chǔ)上編寫自己的程序。而且具有一定的運(yùn)算功能和數(shù)據(jù)采集保存功能,并且支持時間趨勢圖,XY趨勢圖等形式的數(shù)據(jù)管理方式。TG865采用ARM9 CPU,400MHz主頻,128M內(nèi)存,128M存儲容量。其中PFW寄存器具有掉電保存功能,計(jì)算的傳感器系數(shù)及計(jì)算所需的內(nèi)碼值都可以存儲在PFW寄存器中。儀表的另一個重要組成部分就是A/D模塊,它集信號放大,A/D轉(zhuǎn)換為一身,可以與傳統(tǒng)的模擬傳感器相連接,直接將負(fù)荷傳感器的模擬電壓信號轉(zhuǎn)化成數(shù)字信號。模塊的測量速率可以選擇,最大可以達(dá)到400Hz。
圖1 觸摸屏系統(tǒng)設(shè)置
實(shí)現(xiàn)觸摸屏與模塊通訊,首先對觸摸屏和模塊的通訊屬性進(jìn)行設(shè)計(jì)。模塊的接口是一個異步串行接口,即主機(jī)波特率與從機(jī)波特率必須一致。模塊的串行數(shù)據(jù)格式為:1位起始位,8位字長,偶校驗(yàn),1位停止位,波特率選擇19200。同樣觸摸屏系統(tǒng)也需要按照模塊的通訊格式設(shè)置其波特率和數(shù)據(jù)格式。觸摸屏有兩個COM口,一個是PLC,一個是Download。用PLC口與模塊進(jìn)行通信。Download口與計(jì)算機(jī)進(jìn)行通訊。PLC選擇的設(shè)備是Modbus RTU協(xié)議的A/D模塊。此時的屏作為主機(jī),其波特率和數(shù)據(jù)格式設(shè)置與模塊一樣。Download口作為與計(jì)算機(jī)通訊的接口,此時計(jì)算機(jī)作為主機(jī),屏為從機(jī)。當(dāng)屏為從機(jī)時,要設(shè)置其站號,這里將其設(shè)為1。其設(shè)置如圖1所示。這樣就完成了通訊設(shè)置。A/D模塊的測量值(內(nèi)碼值)存放在0X28寄存器中,因此觸摸屏只要訪問該寄存器就可以獲得模塊的測量值。這個測量值是模塊的內(nèi)碼值不是實(shí)際測量值。需要進(jìn)行系數(shù)計(jì)算才能得到相應(yīng)的測量值。接下來介紹如何得到真實(shí)的測量值。
觸摸屏從模塊中讀到的是與加載值成一定比例關(guān)系的內(nèi)碼值。需要根據(jù)逐次加載的標(biāo)準(zhǔn)力或扭矩值以及所對應(yīng)的內(nèi)碼值來計(jì)算出這個比例系數(shù)(標(biāo)定系數(shù)),然后計(jì)算內(nèi)碼值對應(yīng)的實(shí)際測量值。計(jì)算標(biāo)定系數(shù)的方法有二次曲線法和牛頓插值法。我們采用后一種方法來計(jì)算標(biāo)定系數(shù)。本儀表設(shè)有20個通道,即一共可以存放20個系數(shù)。每個通道有10個數(shù)據(jù)采集點(diǎn),如圖2所示。用戶可以記錄從零點(diǎn)到滿量程范圍內(nèi)10個標(biāo)準(zhǔn)值和其對應(yīng)的內(nèi)碼值。數(shù)字后面的方框需要用戶輸入標(biāo)準(zhǔn)力值或扭矩值。點(diǎn)擊后面相應(yīng)的“存儲”按鈕,屏?xí)詣訉⒋藭r對應(yīng)的內(nèi)碼值采集到前面的方框中。利用觸摸屏提供的C語言腳本功能,根據(jù)用戶采集的值通過C代碼來實(shí)現(xiàn)系數(shù)的計(jì)算并將其存儲到PFW中,等使用時調(diào)用。
圖2 觸摸屏標(biāo)定界面
另外在標(biāo)定界面還可以存儲傳感器的編號、型號和量程以及小數(shù)點(diǎn)位置和標(biāo)定時使用的單位等信息。
上面介紹了計(jì)算每個通道傳感器系數(shù)的方法。每次從模塊0X28中讀出的值,需要計(jì)算才能得到需要的測量值。利用C語言功能對每個讀到的內(nèi)碼值進(jìn)行計(jì)算,然后將實(shí)際測量值顯示在觸摸屏上。
儀表具有20個通道。不同的通道存儲對應(yīng)不同的傳感器。選擇通道的同時,程序會將標(biāo)定時保存的傳感器系數(shù)、傳感器編號、量程、小數(shù)點(diǎn)位置和標(biāo)定時單位等加載到測量界面。在屏幕的左上角會出現(xiàn)相應(yīng)傳感器的信息,讀數(shù)窗口會顯示當(dāng)前讀數(shù)值和單位。
當(dāng)測量值超過報(bào)警值時,屏的蜂鳴器會發(fā)出聲音來報(bào)警。報(bào)警值可以自己設(shè)置,點(diǎn)擊輸入報(bào)警值下面的方框,用戶可輸入報(bào)警值。如果不設(shè)置報(bào)警值,默認(rèn)的是傳感器的最大量程值。
根據(jù)用戶的需要還可以實(shí)時繪制測量曲線(見圖3),觸摸屏自帶了曲線功能,采集周期為1s。這個頻率對測力還可以滿足,因?yàn)榱Φ募虞d和卸載速度都不快。但對于扭矩就顯得慢了些,可以利用“數(shù)據(jù)采集保存”的高級功能來修改這個采集周期,這里將其改為100ms進(jìn)行一次數(shù)據(jù)采集。具體修改方法如下:
圖3 觸摸屏測量界面
將READ0-(8)的元件屬性改成PSB,258。然后利用C語言功能,每個100ms將其置一次位即可。在程序設(shè)計(jì)時可以根據(jù)自己的需要進(jìn)行修改,但這個采集頻率最終還受觸摸屏刷新頻率的影響。因此對采集曲線有嚴(yán)格要求的,在選擇觸摸屏方面要選擇刷新頻率高的觸摸屏。
本程序中設(shè)置了300個PFW寄存器用來存儲測量值。這些值可以通過U盤從屏中導(dǎo)出,在電腦上用EXCEL打開進(jìn)行查看。另外在測量過程中可以隨時進(jìn)行單位轉(zhuǎn)換。
觸摸屏的通信協(xié)議是Modbus協(xié)議。可以利用高級語言實(shí)現(xiàn)計(jì)算機(jī)與觸摸屏的通訊[6]。
利用信捷TG865觸摸屏與A/D數(shù)字模塊開發(fā)的一款觸摸式力及扭矩測量用儀表,此儀表存儲的通道多,可以繪制測量曲線,存儲300個測量值,還可以設(shè)置報(bào)警值,與液晶和數(shù)碼顯示儀表相比,界面更美觀,操作更簡單、方便。
[1]左麗.一種提高數(shù)字化儀表測量精度的方法[J].計(jì)量技術(shù),2008(5):35-38
[2]劉鳳新,郭儀.基于MODBUS協(xié)議的科氏流量計(jì)二次儀表設(shè)計(jì)[J].計(jì)量技術(shù),2006(7):9-12
[3]蔣敏蘭,胡生清,何濤.便攜式智能化扭矩測定儀[J].計(jì)量技術(shù),2006(7):29-31
[4]李名兆.計(jì)量儀表的抗干擾設(shè)計(jì)[J].計(jì)量技術(shù),2001(4):34-35
[5]滕召勝.現(xiàn)代計(jì)量測試儀器的特點(diǎn)與發(fā)展方向[J].計(jì)量技術(shù),2001(2):12-15
[6]潘洪躍.基于MODBUS協(xié)議通信的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)量技術(shù),2002(4):35-36