徐 慧
(河北聯(lián)合大學電氣工程學院,河北唐山 063009)
在工業(yè)現(xiàn)場如何將采集到的數據實時、安全、準確地傳給數據處理系統(tǒng)是該監(jiān)控系統(tǒng)需要解決的首要問題,對于這一實際問題通常采用現(xiàn)場總線技術[1]。CAN(Controller Area Network,CAN)[2],即控制器局域網是應用最廣泛的現(xiàn)場總線之一,與一般的通信總線相比,具有突出的靈活、實時和可靠性,便于實現(xiàn)更高水平的監(jiān)控。目前現(xiàn)場智能儀器大多都配有RS-485接口,從而使得RS-485總線通信更為方便,這點較CAN總線通信來說有很大的優(yōu)勢。基于以上分析設計了一種混合式CAN總線智能監(jiān)控系統(tǒng),該系統(tǒng)以CAN總線為主,當部分數據量較大或需要雙通道數據通訊時,節(jié)點間采用一個或多個RS-485總線組成鋪助子網作為CAN 總線的有力補充[3]。
在本設計中主控節(jié)點(上位機)通過CAN總線可與智能數據采集節(jié)點(下位機)進行信息交換并負責對整個系統(tǒng)實施監(jiān)控。CAN總線智能數據采集節(jié)點把采集到的現(xiàn)場信號處理后,經總線網絡傳給主控節(jié)點,主控節(jié)點對終端傳感器檢測到的現(xiàn)場信號做進一步的分析處理來實現(xiàn)對系統(tǒng)的在線檢測,計算分析等。主控節(jié)點配有RS-485通信口并采用MODBUS通信協(xié)議,便于與下位機組成RS-485主從式通信網絡。系統(tǒng)設計結構如圖1所示。
圖1 系統(tǒng)總體設計結構圖
為了提高網絡節(jié)點的拓撲能力,CAN總線兩端需要有120Ω的抑制反射終端電阻[4],它對總線阻抗起著非常重要的作用。如果忽略此電阻,會使得數字通信的抗干擾性和可靠性大大降低,甚至無法通信。
本設計是將現(xiàn)場采集的數據經數據運算處理送到主控節(jié)點,經主控節(jié)點對數據分析后再反饋到相應的智能節(jié)點。因此硬件電路設計應包含兩部分:CAN主控節(jié)點和CAN總線智能數據采集節(jié)點。
(1)CAN主控節(jié)點的設計
CAN主控節(jié)點的主要任務是:完成與下位機的通信;顯示下位機上傳來的數據;顯示故障類型及產生故障的下位機地址;通過發(fā)送上位機的控制指令實現(xiàn)對各智能節(jié)點的控制;最后將下位機上傳的數據,主控節(jié)點發(fā)出的命令,各種故障處理的過程等數據保存到外部存儲器,其主要構成部分有電源模塊、控制模塊、通訊模塊和顯示模塊。
1)電源模塊
電源模塊是電路結構的必備模塊,給電路提供穩(wěn)定的工作電壓,是電路能正常工作的首要條件,其電路連接如圖2所示。
圖2 電源模塊電路圖
2)控制模塊
選用內部集成CAN總線控制器的STM32芯片作為主控制器,片內集成的RC振蕩器,在不使用片外晶振時就可以讓處理器工作在64MHz下,同時片內集成Flash和RAM,還可以提供卓越的計算性能和先進的中斷系統(tǒng)響應。
3)通信模塊
采用CTM1050D芯片來驅動CAN總線的收發(fā),該驅動器集成了所有必需的CAN隔離和CAN收發(fā)器件,它具有DC 2500V隔離和ESD保護作用且符合ISO 11898標準。對構成穩(wěn)健的CAN總線通信網絡有極其重要的作用。其連接電路如圖3所示:
圖3 CAN總線模塊電路圖
為了實現(xiàn)與其它設備的互聯(lián),增強通用性。RS-485通信口采用MODBUS通信協(xié)議與下位機相連構成主從式通信網絡。其電路如圖4所示。
圖4 RS485總線模塊電路圖
另配RS-232通信口可與工控PC機相連,進一步完善對系統(tǒng)的監(jiān)控。
4)顯示模塊
采用指示LCD燈指示發(fā)生故障的類型,8位數碼管顯示產生故障的節(jié)點地址。
采用四線觸摸屏用來顯示下位機各節(jié)點的運行狀態(tài),主控節(jié)點正在執(zhí)行的任務,并通過人機交互下達控制命令。
(2)CAN總線智能數據采集節(jié)點的設計
CAN總線智能數據采集節(jié)點的主要任務是采集終端傳感器的信號,并經過采樣,運算后報告給主控節(jié)點;并通過執(zhí)行上位機下達的命令完成對各種故障的處理。
下位機除了實現(xiàn)RS-485(BODBUS協(xié)議)總線,CAN總線通信網絡外還必須有以下幾個重要模塊。
1)控制模塊
選用內部集成A/D轉換電路的STM32芯片作為主控制器,多個I/O接口便于實現(xiàn)8路數字量輸入,8路模擬量輸入。
2)地址模塊
每個CAN總線智能數據采集節(jié)點都必須有自己唯一的地址以指示故障發(fā)生的位置。因此要有地址譯碼控制電路,在實驗階段可以用撥碼開關代替。
3)數/模信號采集模塊
來自現(xiàn)場傳感器的信號電壓不盡相同,因此有必要經過周邊驅動來完成電平轉換。
任何一個CAN總線應用節(jié)點,無論其復雜程度如何,其軟件程序設計應包括兩個主要部分:總線通信和本地控制?;诒鞠到y(tǒng)的程序總體結構如圖5所示。
在編程時采用高度集成化的STM32庫函數語句,CAN總線通信協(xié)議[5-6]程序最基礎的是CAN初始化部分,其程序如下:
圖5 程序設計總體框圖
基于CAN和RS-485總線的混合式CAN總線智能監(jiān)控系統(tǒng)能很好地完成現(xiàn)場設備的數據采集、運算處理、遠程控制與實時監(jiān)控等功能;且該系統(tǒng)可實現(xiàn)無人值守場合的監(jiān)控,同時本系統(tǒng)具有全開放式,有很強的移植性和技術升級空間,可以廣泛地應用到其它監(jiān)控領域,具有良好的發(fā)展前景。
[1]劉曉東,華剛.煤礦監(jiān)控系統(tǒng)信息集成的研究與設計[J].工礦自動化,2005,(1):62-65.
[2]劉侃,林園,楊艾兵等.基于CAN總線的多點測溫系統(tǒng)的設計[J].火箭發(fā)射與控制學報.2010,9(3):74-77.
[3]曹少華.CAN總線控制系統(tǒng)的實現(xiàn)與分析[D].北京:中國科學技術大學,2010.
[4]呂昂,周雪嬌.基于STM32的TTCAN Level1節(jié)點的設計.工礦自動化,2009,10(10):127-128.
[5]王忠.孫浩欽.易茂祥.基于CAN總線智能建筑監(jiān)控系統(tǒng)的通信協(xié)議設計[J].電子科技,2010,7(15):62-65.
[6]Fan Xin,Hu Chun.Design and Research on Air Conditioning Control Network of Electric Vehicle Based on CAN-bus[C]2010 International Conference on Measuring Technology and Mechatronics Automation.970-973.