張 星 張建國 周 暢 付道俊
(武漢第二船舶設計研究所 武漢 430064)
?
一種用于電磁閥控制的CAN總線數據傳輸協(xié)議設計*
張星張建國周暢付道俊
(武漢第二船舶設計研究所武漢430064)
CAN總線憑借其優(yōu)越性已成為應用最為廣泛的現(xiàn)場總線之一。針對電磁閥控制系統(tǒng),論文提出一種CAN總線數據傳輸協(xié)議,詳細描述了協(xié)議實現(xiàn),經過測試驗證了其良好效果。
CAN總線; 數據傳輸協(xié)議; 電磁閥控制
Class NumberTP393.04
CAN總線,即控制器局域網總線(Controller Area Network,CAN),是一種用于實時應用的串行通訊協(xié)議總線。憑借其實時性強、傳輸距離較遠、抗電磁干擾能力強、成本低等優(yōu)勢,CAN總線成為世界上應用最廣泛的現(xiàn)場總線之一,應用領域包括航空航天、船舶、汽車控制、醫(yī)療設備、工業(yè)控制等各方面[1~3]。
電磁閥適用于各種液體、氣體等管路的自動控制,廣泛應用于軍工、航天、船舶重工、核工業(yè)、石化等領域,是極其關鍵的執(zhí)行機件,閥件控制的實時性、準確性、可靠性影響整個系統(tǒng)的性能[4]。
本文針對電磁閥控制系統(tǒng),提出一種CAN總線數據傳輸協(xié)議,下面給出其詳細設計。
本協(xié)議采用CAN2.0B擴展幀格式[5~10],采用數據幀通信,通信速率設置為250kbps,29位ID分配見表1。
表1 ID分配說明
本文設計總線命令包括控制開關、群控、讀取
閥件狀態(tài)、讀取詳細信息,滿足閥件控制的所有需求??偩€命令描述見表2。
表2 總線命令描述
假設負載輸出為16路固態(tài)配電開關和4路繼電器觸點,均用CAN總線控制其通斷。采用ID_DOWN(節(jié)點號,通道號,總線命令)的形式來描述上位機發(fā)送ID,并采用ID_UP(節(jié)點號,通道號,總線命令)的形式來描述節(jié)點回復ID,數據域長度與實際列出數據對應。以下詳細說明各命令的協(xié)議格式。
3.1控制開通(TURN_ON)
控制開通為上位機發(fā)送命令,ID中包含設備地址、通道號和命令碼,在后續(xù)數據中設置確認位以避免誤操作。其協(xié)議格式如表3。
表3 控制開通協(xié)議格式
回復
IDID_UP(設備地址,通道號0~19,0x02)無數據域
3.2控制關斷(TURN_ON)
控制關斷為上位機發(fā)送命令,ID中包含設備地址、通道號和命令碼,在后續(xù)數據中設置確認位以避免誤操作。其協(xié)議格式如表4。
表4 控制關斷協(xié)議格式
回復
IDID_UP(設備地址,通道號0~19,0x04)無數據域
3.3群控(WHOLE_CONTROL)
群控為上位機發(fā)送命令,ID中包含設備地址、通道號和命令碼。其協(xié)議格式如表5。群控功能能同時控制多個電磁閥的開關狀態(tài),并自動回復各電磁閥開關狀態(tài),不用單獨發(fā)送獲取狀態(tài)命令,極大提升電磁閥控制效率。為保證控制的抗干擾性,設計Data3為校驗和位。
表5 群控協(xié)議格式
回復
IDID_UP(設備地址,通道號63,0x08)Data0Bit7~Bit0依次與通道號7~0固態(tài)配電開關的開關狀態(tài)對應1:開0:關Data1Bit7~Bit0依次與通道號15~8固態(tài)配電開關的開關狀態(tài)對應1:開0:關Data2Bit7~Bit4對應繼電器檢測3~0路狀態(tài)Bit3~Bit0對應通道號19~16繼電器開關狀態(tài)1:吸合0:釋放Data3Bit7~Bit0對應電磁閥7~0路狀態(tài)1:吸合0:釋放Data4Bit7~Bit0對應電磁閥15~8路狀態(tài)1:吸合0:釋放Data5Bit7~Bit0對應電磁閥23~16路狀態(tài)1:吸合0:釋放Data6Bit7~Bit0對應電磁閥31~24路狀態(tài)1:吸合0:釋放
3.4讀取閥件狀態(tài)(GET_STATUS)
讀取閥件狀態(tài)為上位機發(fā)送命令,ID中包含設備地址、通道號和命令碼。其協(xié)議格式如表6。命令回復內容與群控回復內容一致。
表6 讀取閥件狀態(tài)協(xié)議格式
回復
IDID_UP(設備地址,通道號63,0x08)Data0Bit7~Bit0依次與通道號7~0固態(tài)配電開關的開關狀態(tài)對應1:開0:關Data1Bit7~Bit0依次與通道號15~8固態(tài)配電開關的開關狀態(tài)對應1:開0:關
IDID_UP(設備地址,通道號63,0x08)Data2Bit7~Bit4對應繼電器檢測3~0路狀態(tài)Bit3~Bit0對應通道號19~16繼電器開關狀態(tài)1:吸合0:釋放Data3Bit7~Bit0對應電磁閥7~0路狀態(tài)1:吸合0:釋放Data4Bit7~Bit0對應電磁閥15~8路狀態(tài)1:吸合0:釋放Data5Bit7~Bit0對應電磁閥23~16路狀態(tài)1:吸合0:釋放Data6Bit7~Bit0對應電磁閥31~24路狀態(tài)1:吸合0:釋放
3.5讀取詳細信息(GET_MESSAGE)
讀取詳細信息為上位機發(fā)送命令,ID中包含設備地址、通道號和命令碼,其協(xié)議格式如表7。
表7 讀取詳細信息協(xié)議格式
回復
IDID_UP(設備地址,通道號(0~14取偶數),0x20)Data0Data1當前通道電流I=Data0+Data1/256(A)Data2當前通道狀態(tài)Bit7~Bit4備用Bit3:過流標志1:過流0:無過流Bit2:短路標志1:短路0:無短路Bit1:開路標志1:開路0:無開路Bit0:異常標志1:異常0:無異常Data3當Data3在0~100范圍內,表示當前通道熱量相對保護門限的百分比;否則,當Data3大于100,表示當前通道狀態(tài)更新中,無意義。Data4Data5下一通道電流I=Data4+Data5/256(A)Data6下一通道狀態(tài),與Data內容一致Data7當Data7在0~100范圍內,表示下一通道熱量相對保護門限的百分比;否則,當Data7大于100,表示下一通道狀態(tài)更新中,無意義。
結合硬件電路,本協(xié)議設計了電流檢測功能以及通道狀態(tài)檢查功能,用戶可以據此及時判斷電磁閥工作性能優(yōu)劣,能極大提高電磁閥控制系統(tǒng)的可靠性和安全性。讀取詳細信息命令會同時恢復兩個通道的狀態(tài)信息,所以通道號取0~14的偶數即可,若在次范圍內不慎填入奇數,自動-1變成偶數,這樣也大幅提升了檢測效率。
實際系統(tǒng)測試結果表明,對于電磁閥控制系統(tǒng),本協(xié)議簡潔實用、功能完備、可靠性強、通用性強,尤其實現(xiàn)了群控功能和通道詳細信息檢查功能,大幅提升電磁閥控制效率和可靠性。
[1] 鄔寬明.CAN總線原理和應用系統(tǒng)設計[M].北京:北京航空航天大學出版社,2002:1-5.
[2] 陽憲惠.現(xiàn)場總線技術及其應用[M].北京:清華大學出版社,2001:1-6.
[3] 王蘇敬,王立德.列車用CAN總線應用層協(xié)議研究與實現(xiàn)[J].北京交通大學學報,2008:20-22.
[4] 胡志強.油、氣工業(yè)對閥門市場的影響[J].通用機械,2005:23-25.
[5] Advantech Co., Ltd. Advantech CAN Card Driver Manual [EB/OL]. 2004:22-24.
[6] 韓炬,柯進,金江.一種CAN總線冗余方法[J].電子工藝技術,2002,19(4): 32-34.
[7] 王蘇敬,王立德,申萍,等.列車用CAN總線應用層協(xié)議研究與實現(xiàn)[J].北京交通大學學報,2008(10):32-34.
[8] 肖存龍,卜樂平,王黎明,等.CAN總線實時性分析[J].微計算機信息,2009(25):64-65.
[9] 夏繼強,邢春香.現(xiàn)場總線工業(yè)控制網絡技術[M]. 北京:北京航空航天大學出版設,2005(10):181-190.
[10] ISO-IS11898, Road vehicles-Interchange of digital information-Controller Area Network (CAN) for high speed communication[S]. 1993:5-10.
Design of A CAN Bus Data Transfer Protocol for Solenoid Valve Control
ZHANG XingZHANG JianguoZHOU ChangFU Daojun
(Wuhan Second Ship Design and Research Institute, Wuhan430064)
CAN bus has become one of the most widely used field bus with its advantages. For solenoid valve control system, this paper proposes a CAN bus data transfer protocol, and describes its implementation in detail. The result of tests verifies the protocol’s good benefits.
CAN bus, data transfer protocol, solenoid valve control
2016年4月10日,
2016年5月15日
張星,男,博士,工程師,研究方向:艦船電子武備技術。張建國,男,博士,工程師,研究方向:艦船電磁兼容技術與試驗。周暢,男,博士,工程師,研究方向:艦船電磁兼容技術與試驗。付道俊,男,碩士,高級工程師,研究方向:艦船電子武備技術。
TP393.04
10.3969/j.issn.1672-9730.2016.10.015