王 燕 王 新
(中煤科工集團唐山研究院有限公司,河北 唐山 063012)
目前,流量儀表的傳輸方式以主從方式為主,多通過4 mA~20 mA模擬信號疊加Hart協(xié)議、RS485總線等進行數(shù)據(jù)通信,當(dāng)主節(jié)點任務(wù)繁忙或出現(xiàn)故障時,可能會造成數(shù)據(jù)丟失[1]。CAN(控制器局域網(wǎng)絡(luò))是ISO國際標(biāo)準(zhǔn)化的串行通信協(xié)議,可以有效支持分布式控制或?qū)崟r控制的串行通信網(wǎng)絡(luò)[2],具有實時性強、傳輸距離較遠、優(yōu)先權(quán)仲裁功能[3]以及錯誤處理檢錯機制可靠等優(yōu)點,已經(jīng)成熟應(yīng)用于汽車通信領(lǐng)域。近些年,CAN總線逐步推廣到工業(yè)自動化領(lǐng)域,市場上對流量計提出了具備CAN總線通信的要求,該文根據(jù)客戶需求,在礦用隔爆兼本安型明渠流量計中集成CAN控制器,實現(xiàn)了CAN通信,同時該電路也滿足礦用產(chǎn)品本質(zhì)安全的防爆要求。
控制局域網(wǎng)絡(luò)(Controller Area Network,CAN)是一種多主方式的傳輸總線,總線上的每個設(shè)備都可以成為主機,每個節(jié)點的設(shè)備可以互相通信,當(dāng)多個設(shè)備同時發(fā)送數(shù)據(jù)時,會優(yōu)先發(fā)送高優(yōu)先級ID單元設(shè)備的數(shù)據(jù)。CAN總線通過CANH和CANL端口與物理總線進行連接。其中CANH和CANL信號使用差分電壓進行傳送,當(dāng)CANH、CANL對地電壓都為2.5 V,2根導(dǎo)線的電壓差值為0 V,被稱為“隱性”,用邏輯“1”表示;當(dāng)CANH對地電壓為3.5 V、CANL對地電壓為1.5 V時,2根導(dǎo)線的電壓差值為2 V,被稱為“顯性”,用邏輯“0”表示。2.0 B規(guī)范中的幀類型包括數(shù)據(jù)幀、遠程幀、錯誤幀和過載幀[4]。數(shù)據(jù)幀又分為標(biāo)準(zhǔn)數(shù)據(jù)幀和擴展數(shù)據(jù)幀,標(biāo)準(zhǔn)數(shù)據(jù)幀具有11位標(biāo)識符,擴展數(shù)據(jù)幀包括29位標(biāo)識符,2種數(shù)據(jù)幀的不同點在于“識別符擴展”位。
根據(jù)客戶的需求,明渠流量計CAN協(xié)議采用擴展數(shù)據(jù)幀格式,1個CAN數(shù)據(jù)幀中包括幀信息、幀ID和幀數(shù)據(jù),共13個字節(jié),具體字節(jié)分配見表1。
表1 CAN數(shù)據(jù)幀
1.2.1 幀信息
幀信息的大小為1 B,可以用來標(biāo)識CAN幀的類型、長度等基本信息,每一位的定義見表2,該設(shè)計定義為8 B的遠程幀、擴展幀。
表2 幀信息各位的定義
表2中,F(xiàn)F是標(biāo)準(zhǔn)幀和擴展幀標(biāo)識,0表示標(biāo)準(zhǔn)幀,1表示擴展幀;RTR是遠程幀和數(shù)據(jù)幀標(biāo)識,0表示遠程幀,1表示數(shù)據(jù)幀;保留表示值為0。D3~D0表示該CAN幀數(shù)據(jù)的長度,本儀表協(xié)議中數(shù)據(jù)長度為8 B。
1.2.2 總站指令
幀ID的長度為4 B,擴展幀的有效位為29位,高位定義為0x1FFF(x表示十六進制數(shù))。幀數(shù)據(jù)的長度為8位,該文設(shè)計的明渠流量計可以通過改變發(fā)送間隔自動上傳報文,也可以根據(jù)總站需求通過指令向數(shù)據(jù)采集端發(fā)送接收數(shù)據(jù),具體指令見表3。
表3 總站指令表
明渠流量計采用液位法測量流過標(biāo)準(zhǔn)堰槽的流量,其主控芯片采用MSP430F5438A單片機,該單片機是16位精簡指令集(RISC)結(jié)構(gòu),該設(shè)計采用3.3 V的電源供電,工作主頻為12 MHz。液位信號經(jīng)過ADC轉(zhuǎn)換為數(shù)字信號,通過I2C接口進入單片機,為了減小模擬信號與數(shù)字信號的干擾,在ADC與單片機之間增加隔離元件,ADC側(cè)采用5 V的本安電源供電。由于單片機未集成CAN控制器,因此該流量計選用Microchip公司的MCP2515 CAN控制器,并配合該公司的MCP2551 CAN收發(fā)器組成CAN網(wǎng)絡(luò),可以實現(xiàn)5 kbps~500 kbps的通信速率,流量計整體硬件結(jié)構(gòu)設(shè)計如圖1所示。
圖1 流量計整體硬件結(jié)構(gòu)設(shè)計圖
MCP2515芯片的工作電壓為2.7 V~5.5 V,采用低功耗的CMOS技術(shù),工作時典型電壓為5 mA,典型待機電流只有1μA,具有2種復(fù)位方式:硬件復(fù)位和SPI軟件復(fù)位。在該設(shè)計中,MCP2515電源引腳VCC采用單片機側(cè)的3.3 V電源供電,SPI片選引腳CS連接MSP430F5438A的USCIA0從機傳輸使能引腳P3.3,時鐘信號SCK連接MSP430F5438A的USCIA0時鐘信號P3.0,輸入SI、輸出SO引腳分別連接MSP430F5438A的UCA0SIMO和UCA0SOMI引腳,在MCP2515時鐘信號SCK的上升沿,可以通過SI引腳輸入外部數(shù)據(jù)和命令;在MCP2515時鐘信號SCK的下降沿,可以通過SO引腳輸出數(shù)據(jù)和命令。該設(shè)計中MCP2515復(fù)位采用SPI軟件復(fù)位,首先,將CS引腳拉低選中器件;其次,發(fā)送復(fù)位指令;最后,將CS引腳設(shè)置為高電平。為了避免硬件復(fù)位的干擾,在RESET引腳接10 kΩ上拉電阻R11至3.3 V電源。
為了加快單片機的反應(yīng)速度,采用中斷的方式進行數(shù)據(jù)處理,MCP2515的INT引腳接單片機的中斷輸入引腳P2.7。當(dāng)發(fā)生中斷時,MCP2515的INT引腳被設(shè)置為低電平,并一直保持這個狀態(tài)直到單片機發(fā)出清除中斷信號為止。MCP2515有8個中斷源。使能各中斷源的中斷標(biāo)志位包含在CANINTE寄存器中,當(dāng)CANINTE.RXnIE位置1(通過軟件令CANINTF.RXnIE=1),INT引腳將產(chǎn)生中斷,顯示接收到有效報文。各中斷源的中斷標(biāo)志位包含在CANINTF寄存器中,當(dāng)報文傳送到接收緩沖器時,對應(yīng)的CANINTF.RXnIF位置1,報文處理完畢后,需要清除CANINTF.RXnIF位,才能接收下一條報文。MCP2551 CAN收發(fā)器采用5 V的本安電源供電,MCP2551的CAN輸出/輸入引腳(TXD/RXD)與MCP2515對應(yīng)引腳(TXCAN/RXCAN)之間采用ADUM1201磁耦合隔離器進行電氣隔離,為了進一步提高CAN總線的抗干擾能力,在CAN接口處增加TVS及ESD器件,例如順變抑制(TVS)二極管PSM712、自恢復(fù)保險BK250-030以及強效放電管BK32001002,其CAN總線部分電路原理圖如圖2所示。
圖2 CAN總線部分電路原理圖設(shè)計
MCP2515支持CANV2.0B技術(shù)規(guī)范,自帶2個全接收緩沖器(RXB0和RXB1)和2個單獨的報文集成緩沖器(Message Assembly Buffer,MAB).RXB0具有較高的優(yōu)先級,配置了1個屏蔽濾波器寄存器和2個驗收濾波寄存器;RXB1的優(yōu)先級低于RXB0,配置了1個屏蔽濾波寄存器和4個驗收濾波寄存器。報文需要先在RB0中進行濾波,對不需要的報文進行過濾。
MCP2515的工作模式包括配置模式、正常模式、休眠模式、僅監(jiān)聽模式和環(huán)回模式,芯片復(fù)位后,首先進入配置模式,分別對通信波特率、接收寄存器、濾波寄存器、屏蔽寄存器、清除中斷以及接收中斷使能等進行初始化,初始化后進入正常模式工作。MCP2515與單片機采用4線SPI總線進行數(shù)據(jù)傳輸,單片機在主機模式工作,其時序為模式0(CPOL=0;CPHA=0)或模式3(CPOL=1;CPHA=1)(CPOL為時鐘極性控制位;CPHA為時鐘相位控制位),單片機采用中斷方式進行數(shù)據(jù)收發(fā),其初始化程序如下。
通過CANalyst-II分析儀與明渠流量計進行聯(lián)機調(diào)試。啟動設(shè)備后,設(shè)置通信波特率為10 kbps、設(shè)置過濾驗收碼和過濾屏蔽碼,選擇正常工作模式,測試總站指令及返回數(shù)據(jù),數(shù)據(jù)收發(fā)如圖3所示。經(jīng)過調(diào)試,數(shù)據(jù)收發(fā)正常,各種參數(shù)設(shè)置無誤,驗證了硬件設(shè)計及軟件編程的正確性;明渠流量計CAN總線通信正常。
圖3 CAN協(xié)議數(shù)據(jù)傳輸測試
隨著CAN總線技術(shù)在煤炭礦井安全監(jiān)控系統(tǒng)中進一步推廣和應(yīng)用,數(shù)據(jù)采集設(shè)備具備CAN協(xié)議數(shù)據(jù)傳輸接口已經(jīng)成為一種發(fā)展趨勢。該文以MSP430F5438A單片機為主控芯片而設(shè)計的礦用隔爆兼本安型明渠流量計不僅有常規(guī)的4 mA~20 mA 、RS485和脈沖等輸出方式,還實現(xiàn)了基于CAN總線的通信功能,為遠程監(jiān)控礦井的流量數(shù)據(jù)提供了便利,符合智慧礦山的發(fā)展理念。目前,該產(chǎn)品準(zhǔn)確度等級為4.0級,獲得安標(biāo)國家礦用產(chǎn)品安全標(biāo)志中心頒發(fā)的礦用產(chǎn)品安全標(biāo)志認證,且已經(jīng)完成投產(chǎn),并在多個工業(yè)現(xiàn)場應(yīng)用。