1. 前 言
上世紀90年代興起的現場總線技術是用于現場儀表與控制系統和控制室之間的一種全分散、全數字化、智能、雙向、多節點的通信系統結構,它是控制結構的一次革命;系統把控制的權力很大部分交給了處于現場的智能節點,交互信息通過現場總線傳送。現場總線式的控制系統正在逐步取代集散式的控制系統而成為主流系統;其中,CAN總線由于可靠性高、穩定性好、抗干擾能力強、通信實時性好、系統造價低廉、維護成本低等特點而具有廣泛的應用前景。
2. CAN總線概述
CAN總線是一種有效支持分布式控制或實時控制的串行通信網絡。CAN可實現全分布式多機系統,且無主、從機之分;CAN可以用點對點、一點對多點及全局廣播幾種方式傳送和接收數據;CAN直接通訊距離最遠可達10km(傳輸率為5kbps),通訊速率最高可達1Mbps(傳輸距離為40m);CAN總線上節點數可達110個。
CAN根據優先權進行總線訪問仲裁,總線中的數值為兩種互補邏輯數值之一:“顯形”或“隱性”。“顯形”數值表示邏輯“0”,而“隱性”表示邏輯“1”。“顯形”和“隱性”位同時發送時,最后總線數值將為“顯形”。CAN總線數值信號內部包含傳輸地址,即所謂的標識符(ID),標識符還兼有識別優先權的作用。當許多節點一起開始發送數據時,首先發送標識符,每個發送器將發送電平同總線上監測到的電平進行比較,若相等則發送器繼續發送;當送出一個“隱性”電平,而監測到的為“顯形”電平時,表明節點丟失仲裁,并且不再發送更多位。顯而易見,標識符越低,節點優先權越高。CAN總線信號傳輸為廣播式,所有的節點都可以監聽到總線上的信號,當節點監測到總線上的數據幀的標識符與自己的標識符相符時就接收數據幀。錯誤監測和自動隔離性能確保了總線正常工作。
3 .功率因素動態補償系統
功率因素動態補償系統對低壓電力系統的無功功率進行實時監測、動態補償,對電網運行狀態和負載用電狀態通過電壓、電流互感器間接監測。本系統在保證系統可靠工作和降低成本的條件下,考慮到通用性、實時性和擴展性等方面的因素,采用了主要由上位計算機系統和網絡節點模塊構成的系統結構。系統的總體結構如圖1所示。智能節點通過對各個模擬量和開關量信息的采集檢測,達到電力的合理調配,并且將有關參數通過CAN總線控制器由CAN總線傳遞給上位機。上位機完成故障錄波、自動數據分析、人機界面顯示和報表打印等。補償單元是由電容器組和晶閘管觸發電路組成,它根據智能節點的解算值投入電容器來產生補償電流注入低壓電網,以此補償無功功率。
4. CAN總線在功率因素動態補償系統的應用
上位計算機系統由通用個人計算機以及接通至通用PC機內部的CAN總線通信接口適配卡PCCAN組成。該系統負責系統的總體調度,向網絡節點發送命令,接收節點數據,并對節點信息加以分析、存儲、顯示及打印。智能節點負責對電流及功率進行檢測,并對無功功率進行補償。智能節點模塊中采用以80C196KC微處理器為核心的硬件結構。Intel公司的高性能16位單片機80C196采用CHMOS工藝,具有功耗低、運行速度快、集成度高等優點。該控制器硬件結構CPU沒有采用習慣的累加器結構,改用寄存器-寄存器結構,消除了累加器存在時的瓶頸效應,提高了操作速度和數據吞吐能力。這些特點使得80C196很適合用于數據量大、功能復雜的現場控制器中。CAN通信接口采用SJA1000通信控制器和82C250總線接受器。SJA1000是PHILIPS公司生產的獨立CAN通信控制器,它是82C200的替代產品,引腳與82C200兼容。82C250是CAN控制器和物理總線間的接口芯片,它提供對總線的差動發送能力和對CAN控制器的差動接受能力。CAN硬件接口電路如圖2所示:
SJA1000的AD0至AD7是分時復用地址/數據線,與單片機的系統總線引腳P1.0 至P1.7相連作為單片機的外部擴展存儲器。SJA1000的INT腳與HSI.0腳相連,當中斷允許時,一旦有中斷發生,SJA1000的16腳INT就會被激活,出現一個由高電平到低電平的跳變,而80C196KC的外部中斷HSI.0接受這一中斷信號后,CPU隨即響應中斷,由執行其他任務轉向為執行該中斷任務。
上位機的CAN總線通信接口適配卡采用研華生產的pcl841板卡,pcl841能夠同時在兩套CAN網絡上運行,提供4 KB的基地址空間,提供16 MHz的CAN控制頻率。同時提供的庫函數有七個子程序可供調用:
1 caninitHW() 初始化CAN接口
2 canExitHW() 釋放CAN節點
3 canReset() 復位CAN控制器
4 canConfig() 設置CAN命令字
5 canNormalR~n() 設置CAN工作模式
6 canSendMsg() 發送數據楨
7 canReceiveMsg() 接受數據楨
通過調用這七個子程序,可以完成CAN總線通訊軟件的大部分工作,極大地降低了開發人員的工作難度,減小了工作量,縮短了開發周期。
5. 控制系統通訊的軟件實現
因為CAN控制器發送一個數據幀需要的時間是微秒級,補償系統控制周期的時序是毫秒級(20毫秒),而上位機中斷頻率最高不過幾秒,因此,每個智能節點的微處理器在外部中斷服務程序中接受上位機發來的信息,在主程序內不斷地向上位機傳輸數據信息,根據CAN協議ID標識符越低其優先權越高,所以通過定義不同的ID標識符使上位機比智能節點優先發送的數據。其主程序和外部中斷服務程序流程圖分別如圖3、圖4所示。
通過反復調試,已把通信部分的程序做成了模塊,在實際系統中的應用良好。下面給出通信模塊程序的部分代碼(采用C96高級語言編寫)
main()
{
……
*CR=0x001b; /*開始復位模式,開放接收、出錯、超載中斷,并置位
*ACR=0x02; /*初始化接受代碼寄存器
*AMR=0xfd; /*初始化接受屏蔽寄存器
*BTR0=0x00;
*BTR1=0x14; /*確定波特率、同步跳轉寬度、位周期長度、采樣數目
*OCR=0xaa; /*選擇輸出方式
*CR=0x001a; /*初始化結束,SJA1000返回其工作模式
……
cansend:
temp2=*SR&0x04; /*查詢狀態寄存器
if(temp2==0x00)goto cansend;
sebuffer=(unsigned char*)0x800c;
*seid=0; /*發送數據的目的地
*sedlc=i1; /*發送數據的數目
for(i1=0;i1《6;i1++)
{
*sebuffer=a[i1];
sebuffer++;
} /*送數據至發送緩沖區
*CMR=0x05; /*發送數據
wait1:
temp2=*SR&0x00;
if(temp2==0x08)goto wait1 /*發送完畢否
callms( ); /*延時
goto cansend; /*繼續發送數據
}
6. 結 論
CAN通訊系統經過充分的調試在功率因素動態補償系統的控制和監測中取得實際的應用。實踐證明,CAN現場總線監控系統具有全數字化通訊、抗干擾能力強、實時性能好、測量及控制精度高的優點,所以它必將隨自動化監控系統的發展而被廣泛采用。
責任編輯:gt
-
CAN總線
+關注
關注
145文章
1951瀏覽量
130777 -
現場總線
+關注
關注
3文章
519瀏覽量
38570 -
功率因素
+關注
關注
0文章
27瀏覽量
10096
發布評論請先 登錄
相關推薦
評論