哈吐哈
級別: 正式會員
精華主題: 0
發(fā)帖數(shù)量: 11 個
工控威望: 94 點
下載積分: 572 分
在線時間: 4(小時)
注冊時間: 2018-01-23
最后登錄: 2023-07-01
查看哈吐哈的 主題 / 回貼
樓主  發(fā)表于: 2023-06-08 01:59
圖片:
圖片:
樓主是西門子初學者,這個帖子是記錄下最近項目的一個小功能。

萬用表是客戶指定,型號為keysight 34465A。要求為用TCP把測量的電壓值讀取到PLC。這個儀表使用的是一個叫SCPI的語言。網(wǎng)上相關的資料很少,我也走了很多彎路,所以想寫個帖子記錄下來,給大家做個參考。

我的理解是,儀表所謂的SCPI語言,其實就是一種通訊協(xié)議,我們按照儀表說明書中的說明,使用TCP向儀表發(fā)送代碼就可以實現(xiàn)我們所要的功能,所以所有使用SCPI語言的儀表都可以通過同樣的方式來實現(xiàn)我們想要的功能。

比如這個項目我想要的是,反饋給我當前測量的電壓,我就只需要使用1500用tcp給儀表發(fā)送“MEAS:VOLT:DC? ”就可以收到儀表返回的電壓值,至于這個代碼是怎么來的,可以看說明書的這個部分,見附件截圖。當然你用別的PLC用TCP發(fā)送這個應該也是一樣的。
這里說兩個小坑。第一個坑,當我們發(fā)送給儀表“MEAS:VOLT:DC? ”的時候,儀表會回復兩條消息,第一條是“MEAS:VOLT:DC?”也就是我們發(fā)送的指令,第二條才是我需要的電壓值,具體見附件。
第二個坑,我們直接發(fā)送“MEAS:VOLT:DC? ”是不可以的,需要加換行符,最后發(fā)送的字符串是'MEAS:VOLT:DC?$R$L',這樣才可以。
希望對大家有所幫助。
leisure
擼起袖子加油干,嘿咻嘿咻
級別: 家園常客
精華主題: 0
發(fā)帖數(shù)量: 377 個
工控威望: 682 點
下載積分: 96 分
在線時間: 1513(小時)
注冊時間: 2013-01-09
最后登錄: 2024-10-25
查看leisure的 主題 / 回貼
1樓  發(fā)表于: 2023-06-08 17:45
哪里有附件,看看純人工可以怎么解析的