通過串口讀取液位儀數(shù)據(jù)

????????之前我們用測試工具模擬了串口通訊,并通過JAVA實(shí)現(xiàn)了串口數(shù)據(jù)接收和發(fā)送齐莲,今天來個實(shí)戰(zhàn)痢站,以某品牌的液位儀為實(shí)驗(yàn)設(shè)備,通過串口連接到上位機(jī)选酗,用液位儀的通訊命令讀取油罐的液位數(shù)據(jù)阵难。

? ? ? ? 液位儀是使用電子或其它技術(shù)用于檢測液體表面,流量芒填,流速的儀器呜叫,適用多種環(huán)境監(jiān)測,如地下水監(jiān)測殿衰,油站油罐中油位和水位監(jiān)測等朱庆。

? ? ? 如果你的電腦沒有串口,請使用USB轉(zhuǎn)串口來擴(kuò)展播玖,前面文章中有介紹椎工。設(shè)備連接方式如下:

液位儀連接圖

液位儀協(xié)議

????????液位儀通過串口與上位機(jī)連接,不同液位儀廠家有不同的通訊協(xié)議,協(xié)議定義了交互的波特率/數(shù)據(jù)位/停止位和奇偶校驗(yàn)方式维蒙,以及操作指令掰吕。以下為截取的通訊協(xié)議信息,我們將按照協(xié)議來獲取液位數(shù)據(jù):

串口參數(shù)

該表展示的是連接液位儀時串口的參數(shù)配置颅痊,必須按照這幾個參數(shù)配置才能正常與液位儀交互殖熟;

通用命令格式,請求或響應(yīng)都遵循該格式

上位機(jī)請求液位儀和液位儀響應(yīng)數(shù)據(jù)時都以這個格式組織數(shù)據(jù)斑响,即以0x01開頭菱属,中間依次為6個字節(jié)的命令號线椰,接下來是可選的數(shù)據(jù)域和校驗(yàn)域绣夺,如果包含數(shù)據(jù)域則必須跟&&和2個字節(jié)校驗(yàn)。

查詢液位指令和響應(yīng)格式

上圖就是查詢當(dāng)前液位的上位機(jī)命令和液位儀響應(yīng)输钩,先來看上位機(jī)請求命令為<SOH>i201TT营罢,其中TT為油罐號赏陵,查詢?nèi)坑凸蘧蛯T傳為00,查詢1號罐就傳01饲漾,根據(jù)截圖2和3我們可以得出查詢?nèi)坑凸迶?shù)據(jù)的命令為:01 69 32 30 31 30 30;再來看下液位儀的回復(fù)數(shù)據(jù)蝙搔,由于遵循統(tǒng)一的協(xié)議格式,所以返回還是以<SOH>i201TT打頭考传,后面緊跟的是當(dāng)前時間吃型,然后就是每個罐的數(shù)據(jù),從下圖可以看出僚楞,如果有多個罐時數(shù)據(jù)會合并在一起返回勤晚,最后是數(shù)據(jù)結(jié)束標(biāo)記&&和2個字節(jié)校驗(yàn)值。其中的浮點(diǎn)數(shù)遵循IEEE標(biāo)準(zhǔn)镜硕,轉(zhuǎn)換時需要注意运翼。

油罐數(shù)據(jù)循環(huán)規(guī)律

工具測試液位儀

通過usb轉(zhuǎn)串口線將液位儀連接到電腦,打開串口測試工具配置好參數(shù)后以HEX方式發(fā)送請求命令兴枯,可以看到液位儀回復(fù)的數(shù)據(jù):

工具測試結(jié)果

通過程序連接液位儀

基于之前串口通訊的測試代碼血淌,我們這里完成命令發(fā)送和液位數(shù)據(jù)接收,關(guān)于數(shù)據(jù)驗(yàn)證和解析部分不在這里展示了财剖,如果需要可以留言給我悠夯。

將測試程序做如下修改:

1.程序啟動后發(fā)送查詢液位的命令;

2.發(fā)送后等待一定時間后開始讀取緩沖區(qū)里的數(shù)據(jù)躺坟,如果沒有收到<SOH>就繼續(xù)等待直到收到完整數(shù)據(jù)包沦补;

修改后的代碼如下:

測試代碼

程序運(yùn)行結(jié)果:

程序運(yùn)行結(jié)果

如圖,我們用JAVA通過串口完成了液位儀數(shù)據(jù)的讀取咪橙,代碼僅限于測試夕膀,請勿直接用于生產(chǎn)環(huán)境虚倒。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市产舞,隨后出現(xiàn)的幾起案子魂奥,更是在濱河造成了極大的恐慌,老刑警劉巖易猫,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件耻煤,死亡現(xiàn)場離奇詭異,居然都是意外死亡准颓,警方通過查閱死者的電腦和手機(jī)哈蝇,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來攘已,“玉大人炮赦,你說我怎么就攤上這事」岜唬” “怎么了眼五?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長彤灶。 經(jīng)常有香客問我,道長批旺,這世上最難降的妖魔是什么幌陕? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮汽煮,結(jié)果婚禮上搏熄,老公的妹妹穿的比我還像新娘。我一直安慰自己暇赤,他們只是感情好心例,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著鞋囊,像睡著了一般止后。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上溜腐,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天译株,我揣著相機(jī)與錄音,去河邊找鬼挺益。 笑死歉糜,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的望众。 我是一名探鬼主播匪补,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼伞辛,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了夯缺?” 一聲冷哼從身側(cè)響起始锚,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎喳逛,沒想到半個月后瞧捌,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡润文,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年姐呐,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片典蝌。...
    茶點(diǎn)故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡曙砂,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出骏掀,到底是詐尸還是另有隱情鸠澈,我是刑警寧澤,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布截驮,位于F島的核電站笑陈,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏葵袭。R本人自食惡果不足惜涵妥,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望坡锡。 院中可真熱鬧蓬网,春花似錦、人聲如沸鹉勒。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽禽额。三九已至锯厢,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間绵疲,已是汗流浹背哲鸳。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留盔憨,地道東北人徙菠。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像郁岩,于是被迫代替她去往敵國和親婿奔。 傳聞我的和親對象是個殘疾皇子缺狠,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,086評論 2 355

推薦閱讀更多精彩內(nèi)容