地磅稱重儀表的CAN總線通信設(shè)計(jì)
本文介紹了一種高速CAN總線稱重儀表,該儀表集成了 CANopen協(xié)議,以及儀表與傳感器通信的內(nèi)部CAN協(xié)議。文中對(duì)地磅稱重儀表CAN接口電路、CANopen應(yīng)用 協(xié)議及內(nèi)部CAN協(xié)議設(shè)計(jì)的關(guān)鍵點(diǎn)進(jìn)行了重點(diǎn)闡述。
引言
CAN總線是一種現(xiàn)場(chǎng)總線,由BOSCH公司于 1986年正式推出。CAN總線最早應(yīng)用于汽車上,憑借著快速、可靠、高效的特點(diǎn),CAN總線的應(yīng) 用很快便拓展到過程控制、工業(yè)機(jī)械、紡織機(jī)械、軌道交通、船舶等領(lǐng)域,并在相應(yīng)領(lǐng)域誕生了各 具特色的應(yīng)用標(biāo)準(zhǔn)。
相較于傳統(tǒng)的RS485串口通信,CAN有著如 下顯著特征:
?多主通信,非破壞性仲裁;
?速率高達(dá)1Mbps,實(shí)時(shí)性好;
?錯(cuò)誤處理和檢錯(cuò)機(jī)制可靠;
?短幀結(jié)構(gòu)單個(gè)報(bào)文可攜帶8字節(jié)數(shù)據(jù),
可實(shí)施復(fù)雜的數(shù)據(jù)加密策略;
?嚴(yán)重錯(cuò)誤情況下,故障節(jié)點(diǎn)自動(dòng)關(guān)閉,不 影響其他節(jié)點(diǎn)通信。
CAN是一種開放性的現(xiàn)場(chǎng)總線,其本身只定 義了數(shù)據(jù)鏈路層和部分物理層內(nèi)容,允許用戶更 大程度的去開發(fā)或定義自己的通信應(yīng)用。筆者通 過深入了解稱重行業(yè)的實(shí)際需求及國(guó)內(nèi)外的發(fā)展動(dòng)向,開發(fā)了一款集成了 CANopen協(xié)議和自定義 CAN協(xié)議(以下簡(jiǎn)稱KLink協(xié)議的稱重儀表, 其中CANopen協(xié)議用于連接儀表和PC域PLC 等,其協(xié)議棧完全符合CiA DS301規(guī)范;而 K L ink協(xié)議則用于連接儀表和數(shù)字傳感器,缺省狀 態(tài)下,該協(xié)議運(yùn)行于125kbps波特率,可連接多達(dá) 16個(gè)的傳感器,通信距離達(dá)200米。
1.國(guó)內(nèi)外稱重行業(yè)C A N總線應(yīng)用情況
CAN是當(dāng)前唯一入選ISO標(biāo)準(zhǔn)的現(xiàn)場(chǎng)總線氣 在國(guó)內(nèi)外眾多領(lǐng)域中得到廣泛應(yīng)用。在稱重行業(yè), 國(guó)外有很多廠家或組織對(duì)其展開了研究,并將其 應(yīng)用到相關(guān)稱重產(chǎn)品中去,其中較為知名的是CiA CAN inAutomatW 協(xié)會(huì)發(fā)布的 C iA DSP459、C iA DSP461設(shè)備描述文件。
C A這兩份有關(guān)稱重系統(tǒng)的CANopen設(shè)備描 述文件,對(duì)于建立統(tǒng)一的稱重設(shè)備通信接口,實(shí) 現(xiàn)不同廠家CANopen設(shè)備的互聯(lián)互通有著重要意 義。這兩份協(xié)議中,CiA DSP459定義了車載稱重 設(shè)備的CANopen應(yīng)用,其中包含了一般要求、通 信參數(shù)規(guī)范、應(yīng)用參數(shù)規(guī)范等內(nèi)容,主要用于卡車、非道路車輛,如叉車、垃圾收運(yùn)車;而CiA DSP461則定義了常規(guī)稱重設(shè)備的CANopen應(yīng)用, 其中包含數(shù)據(jù)加密、儀表及傳感器設(shè)備描述文件 等,主要用于衡器,如貿(mào)易用稱重設(shè)備。
但在國(guó)內(nèi),由于技術(shù)引入較晚,且相對(duì)集中 于車輛、工業(yè)機(jī)械等行業(yè),CAN總線并不為稱重 行業(yè)所熟悉,相應(yīng)的CAN總線稱重儀表也并不多 見。
2.CAN接口電路設(shè)計(jì)
儀表的CAN接口電路起著連接C A N總線網(wǎng)絡(luò) 和CAN控制器的作用,它是實(shí)現(xiàn)CAN數(shù)據(jù)收發(fā)的 關(guān)鍵。
本設(shè)計(jì)中C A N收發(fā)器采用TI公司的SN 65H V D 251。該收發(fā)器符合ISO11898-2標(biāo)準(zhǔn),能以高達(dá) 1Mbps的速率實(shí)現(xiàn)CAN數(shù)據(jù)的差分發(fā)送和接收。 SN65HVD251收發(fā)器有8個(gè)引腳,如圖1所示,其 中D連接到CAN控制器的TX引腳、R連接到 CAN控制器的RX引腳、Rs用于設(shè)定收發(fā)器工作 模式斜率、高速。
CAN接口電路中的浪涌保護(hù)和信號(hào)隔離電路,會(huì)對(duì)波形質(zhì)量或傳輸延時(shí)有所影響,設(shè)計(jì)時(shí)應(yīng)選擇 結(jié)電容小的浪涌保護(hù)器件、傳輸延時(shí)小的隔離器 件。
3.CANopen協(xié)議設(shè)計(jì)
在本設(shè)計(jì)中,CANopen協(xié)議是儀表同PC或 PLC等上位機(jī)進(jìn)行通信的協(xié)議。該協(xié)議的設(shè)計(jì)完全 符合CiA DS301規(guī)范,支持基于LSS服務(wù)的節(jié)點(diǎn) 號(hào)或波特率更改。
在實(shí)際的工控或車載使用中,CANopen稱重儀 表往往作為從站運(yùn)行,故本設(shè)計(jì)中將儀表設(shè)計(jì)為 CAN open從站。作為CAN open從站的儀表,其狀態(tài) 運(yùn)轉(zhuǎn)如圖3所示完全受控于主站的NMT指令。
為減少信號(hào)跳變沿的諧波成分,收發(fā)器的RS 引腳通過10Kft電阻接地,從而實(shí)現(xiàn)收發(fā)器的斜 率控制。
由于稱重儀表使用環(huán)境的多樣性,在設(shè)計(jì) CAN接口電路時(shí),要特別注意接口的浪涌保護(hù)。 本設(shè)計(jì)中采用了由氣體放電管、TVS、熱敏電阻等 組成的二級(jí)浪涌保護(hù)電路如圖2所示。在后期的 試驗(yàn)中,該電路通過了 8KV的靜電放電實(shí)驗(yàn)以及 3KV的雷擊浪涌實(shí)驗(yàn),這表明該電路能對(duì)CAN接 口提供有效保護(hù)。
此外,若傳輸距離較遠(yuǎn),CAN接口電路還應(yīng) 采用相關(guān)隔離保護(hù)手段。
CANopen協(xié)議有多種通信對(duì)象,如NMT、 SDO、PDO、EMCY等,對(duì)應(yīng)不同的NMT狀態(tài), 從站可提供的通信對(duì)象是不同的見圖3中各狀 態(tài)框。在確定采用何種通信對(duì)象時(shí),必須綜合分 析所要傳輸信息的性質(zhì)及通信需求。在本儀表的 設(shè)計(jì)中,稱重儀表的重量信息皮重、毛重、凈 重等作為過程數(shù)據(jù),以PDO的形式進(jìn)行通信; 而其他配置信息或功能設(shè)定信息,則采用需確認(rèn)的SDO進(jìn)行通信。其中,PDO采用發(fā)送類型為 255的異步發(fā)送,以TPDO1為例,其通信參數(shù)如 表1所示。
CANopen協(xié)議棧的核心是對(duì)象字典,應(yīng)用程 序和CANopen協(xié)議棧以此為中心進(jìn)行數(shù)據(jù)的交換。 對(duì)象字典的設(shè)計(jì)嚴(yán)格遵循C iA DS301及C iA DS306 協(xié)議。根據(jù)稱重儀表數(shù)據(jù)傳輸?shù)膶?shí)際需求,在可 使用的范圍內(nèi),本設(shè)計(jì)將對(duì)象字典索引區(qū)間進(jìn)行 了劃分如表2所示。
4.KL’nk應(yīng)用協(xié)議設(shè)計(jì)
KLink協(xié)議是儀表和傳感器間的CAN通信協(xié) 議。KLink協(xié)議采用主從結(jié)構(gòu),其中儀表作為通信 主站,負(fù)責(zé)發(fā)起通信并監(jiān)控網(wǎng)絡(luò)運(yùn)行狀態(tài);而傳 感器則作為通信從站,不主動(dòng)發(fā)起任何通信,僅 響應(yīng)主站的請(qǐng)求。
儀表和傳感器之間傳輸?shù)臄?shù)據(jù)主要有重量信 息和各種配置、標(biāo)定、狀態(tài)信息,它們有著如下 特點(diǎn):
a重量信息需要持續(xù)傳送,要求具備最高的 傳輸優(yōu)先級(jí);
b配置、標(biāo)定、狀態(tài)信息只在特定條件下才 會(huì)訪問,且需要回應(yīng);
c配置、標(biāo)定、狀態(tài)信息與具體傳感器息息 相關(guān);
d信息需要加密傳輸; e信息傳輸要求高的實(shí)時(shí)性。
結(jié)合上述信息傳輸?shù)奶攸c(diǎn),K L ink協(xié)議采用了 兩種通信模型:點(diǎn)對(duì)點(diǎn)通信如圖4所示、廣播 通信如圖5所示。設(shè)計(jì)通信協(xié)議的時(shí)候,根據(jù) 通信對(duì)象的屬性,如讀寫、存儲(chǔ)、加密、校驗(yàn)等, 為每種通信對(duì)象指定了具體的通信模型和通信服 務(wù)。對(duì)于需頻繁傳輸?shù)闹亓繑?shù)據(jù),應(yīng)支持主從廣 播通信;同時(shí),為方便特定條件下的使用,也應(yīng) 支持主從點(diǎn)對(duì)點(diǎn)通信。
試驗(yàn)表明,在連接16個(gè)傳感器,波特率設(shè)定 為125kbps的情況下,KLink協(xié)議可實(shí)現(xiàn)對(duì)重量數(shù) 據(jù)57Hz的高速讀取。該讀取頻率與網(wǎng)絡(luò)節(jié)點(diǎn)數(shù) 量、波特率相關(guān),在傳感器數(shù)量減少或波特率提 高的情況下,讀取速度還會(huì)有更大提升。
5.總結(jié)
結(jié)合CAN總線的一系列特點(diǎn),筆者全新開發(fā) 了一款CAN總線稱重儀表,并在仔細(xì)分析稱重儀 表數(shù)據(jù)傳輸需求的基礎(chǔ)上設(shè)計(jì)了其通信協(xié)議。相 較于傳統(tǒng)RS485接口的儀表,該儀表在速度、加 密傳輸?shù)确矫娑硷@示了其顯著優(yōu)勢(shì)。
目前,前述研發(fā)成果已應(yīng)用在多款帶CAN接 口的物聯(lián)網(wǎng)及工控儀表中,如D39-W -CAN如圖6 所示、KL3101-D2+C、KL3101-D2+C (CANopen。 憑借優(yōu)異的防作弊性能和高可靠性,該系列儀表 在市場(chǎng)上已得到眾多終端用戶的青睞。
CAN總線在極度重視安全性、可靠性的汽車 行業(yè)應(yīng)用多年,并在工控等領(lǐng)域得以持續(xù)發(fā)展其高速、可靠的特性完全勝任稱重儀表的數(shù)字傳 輸需要,在未來的稱重行業(yè)必將有著廣闊的應(yīng)用 空間。