地磅XK3190系列儀表串行通訊的使用
地磅的計算機稱重管理己成為當前地磅應(yīng) 用中最為普遍的使用方式。實現(xiàn)計算機稱重管理的 前提是地磅特別是電子稱重儀表要有一個與計 算機進行數(shù)據(jù)交換的方式,即數(shù)據(jù)通訊。目前應(yīng)用 最為普遍的數(shù)據(jù)通訊方式是RS232和RS485兩種 串行通訊方式,前者主要用于與計算機點對點短距 離通訊,否則則被普遍用于遠距離單點或稱重網(wǎng)絡(luò) 通訊。
XK3190-C、D系 列儀表以及個別A系列臺秤儀表標準生產(chǎn)版本均 采用了 RS232串行通訊方式,大部分D系列儀表還 可選配RS485(四線)串行通訊方式。下面我們就針對 它的使用做詳細說明,希望能給關(guān)心和支持在使用XK3190系列產(chǎn)品進行計算 機稱重管理中有所幫助。
一、XK3190系列稱重儀表RS232/RS485串 行通訊接口的定義與聯(lián)結(jié)
XK3190- C、D系列儀表的RS232串行通訊接 口的定義為公司標準配置,如圖1所示,采用 15芯D型座。A系列儀表接口定義需參考相關(guān)產(chǎn)品 的使用說明,但接口定義的通訊針腳的名稱含義與 C、D系列含義相同。
其中:RS232分別為15芯D型座的6、7、8,含 義如下:
RXD:數(shù)據(jù)接收
TXD:數(shù)據(jù)發(fā)送
GND:信號地
RS485被定義在15芯D型座的1、2、3、4腳, 分別為A、B、Z、Y,含義如下:
A: RS485通訊的正輸出信號;
B: RS485通訊的負輸出信號;
Z: RS422通訊的正輸入信號;
Y: RS422通訊的負輸入信號。
標準計算機9芯串口定義如圖2所示,腳2為 RXD, 腳 3 為 TXD, 腳 5 為信號地。
儀表RS232通訊口可直接與計算機9芯串口 聯(lián)結(jié),聯(lián)結(jié)方式通常按使用需要選擇2線或3線聯(lián) 結(jié)。2線通常只用于稱重儀表與計算機單向通訊,3 線方式用于稱重儀表與計算機應(yīng)答(雙向)方式通 訊。與計算機的9芯串口聯(lián)結(jié)方式為:儀表RXD 15 芯D型座的6腳)接計算機的TXD 9芯串口腳3), 儀表的TXD 15芯D型座的7腳)接計算機的RXD (9芯串口腳2),儀表的信號地(15芯D型座的8 腳)接計算機的信號地9芯串口腳5)。
若采用RS485方式通訊,儀表若未提供RS485 (如A系列儀表,只提供RS232)接口,儀表端需要 加裝RS232轉(zhuǎn)RS485信號的轉(zhuǎn)換器。由于計算機一 般只提供RS232串口,所以需加裝RS485轉(zhuǎn)RS232 信號的轉(zhuǎn)換器。此類轉(zhuǎn)換器當前市面最為常見,價 格幾十到上百元不等。
RS232通訊方式特點是接口簡單,與計算機聯(lián) 結(jié)成本低,聯(lián)結(jié)方便;缺點是不能直接組成稱重網(wǎng) 路,且通訊距離短,一般為30米以內(nèi)。所以,RS232 的通訊線纜不宜太長,通訊線纜太長會造成通訊效 率低,可靠性差,甚至造成儀表或計算機RS232通 訊口損壞等問題。
RS485特點是傳輸距離遠可達1000米以上), 多臺電子衡器可直接構(gòu)成稱重網(wǎng)路;但接口電路較 復雜,不能直接與計算機串口聯(lián)結(jié),聯(lián)結(jié)成本略高。
無論采用哪種方式的串行通訊,通訊線纜的屏 蔽線強烈建議接大地,以免對稱重系統(tǒng)或計算機造 成損害。另外,在實際現(xiàn)場應(yīng)用中,做好不要圖方便, 用屏蔽線做信號地使用,更不要做為通訊信號線。
二、XK3190系列儀表串行通訊的配置及通訊方式
XK3190系列儀表串行通訊口的配置屬性均 為:1位起始位,8位數(shù)據(jù)位,1位停止位,無校驗,即 n、8、1屬性。數(shù)據(jù)通訊方式分為連續(xù)方式和指令應(yīng) 答方式兩種。此節(jié)所述的通訊方式不同于前一節(jié)所 講的通訊方式,前一節(jié)是以通訊信號的特點來劃分, 此節(jié)的通訊方式是按照信號數(shù)據(jù)交換的特點加以區(qū) 別的,望讀者注意。
1.連續(xù)方式
連續(xù)方式屬于單向通訊方式,此種方式下,儀表 主動不間斷的將當前的稱重數(shù)據(jù)向計算機發(fā)送,每 串數(shù)據(jù)的發(fā)送間隔一般為100ms左右。發(fā)送格式有 兩種,我們分別稱其為A1+數(shù)據(jù)格式和D2+數(shù)據(jù)格
式。
連續(xù)方式A1+數(shù)據(jù)格式最典型的應(yīng)用就是 XK3190- A1+,另外還包括 XK3190- A9、XK3190- D7、 D9、D10連續(xù)通訊方式0)以及C系列儀表等。格式 如表1所示,它的特征是:每組通訊數(shù)據(jù)串12個字 節(jié),以十六進制數(shù)02H做為每組數(shù)據(jù)串的起始符, 十六進制數(shù)03H為結(jié)束符,中間由7字節(jié)的有符號 重量數(shù)據(jù),1字節(jié)的小數(shù)點位數(shù)和2字節(jié)的異或校 驗和組成有效數(shù)據(jù)信息串。重量數(shù)據(jù)高位在前,低位在后,正序數(shù)據(jù)格式,不含小數(shù)點,小數(shù)點用單獨一個字節(jié)的十六進制數(shù)表示其位置。
表中,起始符XON和結(jié)束符XOFF分別為十六 進制數(shù)02H和03H,符號。重量數(shù)據(jù)以及異或校驗 數(shù)據(jù)均是標準的ASCII碼。小數(shù)點位數(shù)為十六進制 數(shù),一般為00H?04H。異或檢驗和在發(fā)送時是將校 驗和高位數(shù)字和低位數(shù)字分成兩個字節(jié)發(fā)送的。例 如,異或校驗的結(jié)果為十六進制數(shù)12H,儀表發(fā)送時 在第10個字節(jié)發(fā)送十六進制數(shù)31H( 1的ASCII 碼),第11個字節(jié)發(fā)送十六進制數(shù)32只2的ASCII 碼)。異或校驗和的計算是從第2個字節(jié)開始,到第 9個字節(jié)結(jié)束,即:
校驗和=字節(jié)2十字節(jié)3十字節(jié)4十……十字 節(jié)9公式1)
兩個字節(jié)異或校驗的方法是:將要校驗的兩個 十六進制數(shù)按二進制展開,然后按位異或,即相同位 上兩數(shù)相同結(jié)果為0,否則為1。
例如:十六進制數(shù)25H和37H異或,計算過程 如下:
公式1在應(yīng)用時是先將字節(jié)1和2的十六進制 數(shù)異或,異或的結(jié)果再跟字節(jié)3異或,所得結(jié)果再與 字節(jié)4異或,依次類推,一直到與字節(jié)9異或,最終 的異或結(jié)果便是異或校驗和。異或校驗和中對應(yīng)二進制數(shù)據(jù)位D4 D7的二進制數(shù)據(jù)部分所得的十六 進制數(shù)在XK3190系列儀表說明書中通常被稱為異 或校驗高4位數(shù)據(jù)(即表1中的異或校驗高位數(shù) 字),如上面例子異或結(jié)果12H中的1,對應(yīng)二進制 數(shù)據(jù)位D0~D3的二進制數(shù)據(jù)部分所得的十六進制 數(shù)通常被稱為為異或校驗低4位數(shù)據(jù)(即表1中的 異或校驗低位數(shù)字)。
格式舉例數(shù)據(jù)串均以十六進制數(shù)表示):
重量數(shù)據(jù)為+ 120.05,發(fā)送的數(shù)據(jù)為:02H 2BH 30H 31H 32H 30H 30H 35H 02H 32H 46H 03H
重量數(shù)據(jù)為-120.05,發(fā)送的數(shù)據(jù)為:02H 2DH 30H 31H 32H 30H 30H 35H 02H 32H 39H 03H
重量數(shù)據(jù)為-12005,發(fā)送的數(shù)據(jù)為:02H 2DH 30H 31H 32H 30H 30H 35H 00H, 32H 42H 03H
連續(xù)方式的D2+數(shù)據(jù)格式較為簡單,最典型的 應(yīng)用就是XK3190-D2+,另外還包括XK3190-D10 (連續(xù)通訊方式2、)以及所有有RS232配置的臺秤 系列儀表等。格式如表2所示,它的特征是:每組通 訊數(shù)據(jù)串由9個字節(jié)組成,以“=”做起始符,后接含 小數(shù)點的8位有符號重量數(shù)據(jù),如果重量數(shù)據(jù)無小 數(shù)點,則數(shù)據(jù)最高位會以0補充。重量數(shù)據(jù)低位在 前,高位在后,為倒序數(shù)據(jù)格式,數(shù)據(jù)符號為最末尾 字節(jié),無校驗,無結(jié)束符,整個數(shù)據(jù)串全為標準ASC II碼。
例如:
重量數(shù)據(jù):+ 120.05,發(fā)送的數(shù)據(jù)為:=50.02100 重量數(shù)據(jù):-120.05,
發(fā)送的數(shù)據(jù)為:=50.0210- 重量數(shù)據(jù):-12005,
發(fā)送的數(shù)據(jù)為:=5002100-
2.指令應(yīng)答方式
指令應(yīng)答方式通常也稱為指令方式。在所有 XK3190- D、C系列儀表中被廣泛應(yīng)用。XK3190系列
儀表的指令通訊方式格式基本一致,均為十六進制 數(shù)02H做起始符,03H做為結(jié)束符,中間為信息數(shù) 據(jù)。指令方式下,計算機每向儀表發(fā)送一個命令,儀 表按命令要求回送相應(yīng)數(shù)據(jù)給計算機,若無命令給 儀表,儀表始終處于等待命令狀態(tài),無任何數(shù)據(jù)發(fā) 出。為了便于說明,我們將指令方式的通訊格式分為 指令格式和應(yīng)答信息格式來分別說明。
1)指令應(yīng)答方式的指令格式:
指令格式通常也稱作命令格式,由6字節(jié)組成, 格式如表3所示。
XON、XOFF的含義與連續(xù)方式A1+格式中的 含義相同,異或校驗數(shù)據(jù)是字節(jié)2和字節(jié)3的異或 結(jié)果。通訊地址是儀表所設(shè)的通訊地址,但儀表的通 訊地址數(shù)據(jù)并不是指令中實際發(fā)送的地址數(shù)據(jù),而 是與大寫英文字母對應(yīng):儀表通信地址參數(shù)范圍是 1?26,對應(yīng)通訊指令中的地址為大寫英文字母A? Z。比如儀表中的通訊地址參數(shù)為1,則指令中的通 信地址就是 A。
每組命令數(shù)據(jù)串均以十六進制數(shù)據(jù)發(fā)送,除 XON、XOF外,其余數(shù)據(jù)都是發(fā)送對應(yīng)的標準ASCII 碼值。例如:計算機向某臺通訊地址為1的儀表發(fā)送 A指令;握手指令),發(fā)送的命令串應(yīng)為:02H 41H 41H 30H 30H 03H。
2)指令應(yīng)答方式的應(yīng)答信息格式:
應(yīng)答信息的數(shù)據(jù)串長度根據(jù)指令不同而不同。 比如,A指令握手指令)應(yīng)答數(shù)據(jù)長度6字節(jié),B指 令讀毛重)的應(yīng)答數(shù)據(jù)長度為14字節(jié),讀車號指令 (E指令)應(yīng)答數(shù)據(jù)長度為11字節(jié)。但應(yīng)答信息整體 的格式框架是一致的,都如表4所示。
從表4可以看出,應(yīng)答信息格式只是指令格式 多出了指令后的信息數(shù)據(jù)部分。信息數(shù)據(jù)按高位在 前,低位在后的規(guī)則正序排列,其中,重量信息數(shù)據(jù) 是含小數(shù)點的有符號數(shù)據(jù)。信息數(shù)據(jù)不是在任何指令的應(yīng)答信息中都有的,它只存在于如讀毛重指令 B)、讀凈重指令D)、讀皮重指令C)、讀車號指令 E)讀貨號:指令F)等讀取儀表相關(guān)數(shù)據(jù)的指令中, 而類似于握手指令指令A)、置零指令、去皮指令等 要求儀表執(zhí)行某個操作動作的指令,應(yīng)答信息中均 不包含信息數(shù)據(jù),它們的應(yīng)答信息格式同于6字節(jié) 的指令格式,這一點在實際應(yīng)用中是特別要注意的, 所以,建議在使用指令應(yīng)答方式通訊時,一定要仔細 閱讀儀表指令通訊的相關(guān)內(nèi)容。