關 閉

新聞中心

EEPW首頁 > 工控自動化 > 設計應用 > 基于CAN總線的小水電多功能自動化裝置的研發(fā)

基于CAN總線的小水電多功能自動化裝置的研發(fā)

作者: 時間:2009-11-09 來源:網絡 收藏

(1) 模塊的初始化
控制器運行時,首先必須對MS模塊初始化,對它的一些內部寄存器進行設置,CAN模塊的初始化流程圖如圖3所示。

首先使MSCAN進入軟件復位狀態(tài),因為只有這樣才可以對MSCAN設置有關的寄存器進行寫入,此時,MSCAN會退出所有的發(fā)送和接收操作,并失去同步。所以當MSCAN設置完相關寄存器并退出軟件復位狀態(tài)后,要判斷MSCAN與是否同步,只有完成同步,MSCAN才能正常的接收發(fā)送數據幀。
(2) CAN模塊的數據接收
CAN接收數據幀時采用中斷機制,由于MSCAN初始化時設置接收中斷允許寄存器,允許接收緩沖區(qū)滿中斷,即在接收緩沖區(qū)滿時會觸發(fā)一個MSCAN接收中斷請求,CAN接收中斷流程圖如圖4所示。在接收中斷服務程序中,為了避免此時再發(fā)生中斷,在接收數據幀之前設置中斷允許寄存器,不允許接收緩沖區(qū)滿中斷,在接收數據幀之后,清除接收緩沖區(qū)滿標志,并允許接收緩沖區(qū)滿中斷,便于下一次接收中斷的處理。

本文引用地址:http://butianyuan.cn/article/163498.htm


(3) CAN模塊的數據發(fā)送
CAN發(fā)送數據幀時也采用中斷機制,但與接收中斷不同的是,由于MSCAN初始化時設置發(fā)送器控制寄存器CANTCR,不允許發(fā)送緩沖區(qū)空中斷,所以在發(fā)送數據幀時需要通過設置CANTCR允許發(fā)送緩沖區(qū)空中斷,從而啟動發(fā)送中斷,進入發(fā)送中斷服務程序, CAN發(fā)送中斷流程圖如圖5所示。在中斷服務程序中,設置CANTCR不允許發(fā)送緩沖區(qū)空中斷,直到下一次啟動發(fā)送中斷。確定發(fā)送緩沖區(qū)為空時填寫發(fā)送緩沖數據寄存器并清除發(fā)送緩沖區(qū)空標志,這樣MSCAN才能開始發(fā)送數據。


3.3 內部各CPU模塊的CAN通訊
內部各CPU模塊CAN通訊的信息量很大,所以通訊協(xié)議使用CAN 2.0B擴展模式,報文標識符幾乎不受限制,此時仲裁場的標識符有29位。
在CAN的規(guī)范中,只定義了數據幀的結構,而沒有定義有關發(fā)送和接收的結構信息,所以在編寫通訊程序時,首先需要給數據幀的不同位賦以特定的含義,其中包含數據傳輸所需要的所有信息,包括傳輸源地址、目標地址、幀類型、傳輸字節(jié)數、傳輸信息體等等。由于CAN協(xié)議規(guī)定,每幀最多傳送8個字節(jié)的數據,所以,為了盡可能使8個字節(jié)中的數據都為傳輸信息體,較好的解決辦法就是將其他的信息包含在29位標識符中。本設計中,CAN通訊的數據幀格式定義如表1所示。


其中,前4個字節(jié)是擴展數據幀的仲裁場和控制場,后8個字節(jié)是數據場。
表1在設計中:
PRI:優(yōu)先級。1為低優(yōu)先級,0為高優(yōu)先級,剩余的優(yōu)先級由源地址決定,低地址優(yōu)先級高,該功能可有效支持緊急信息傳送如報警等。
Source Address:發(fā)送數據的源地址。
Type:幀類型,包括單幀、多幀、點對點傳送、廣播傳送。
SRR:在數據幀中,SRR必須為“顯性”電平,而在遠程幀中,SRR必須為“隱性”電平。
IDE:屬于仲裁場,為“隱性”電平。
DLC:表示要發(fā)送的字節(jié)數,等于字節(jié)數減1。由于每幀最多發(fā)送8個字節(jié)的數據,故DLC最大為7。
Data index:索引字節(jié)。單幀沒有索引字節(jié),所以該字節(jié)為空;多幀數據時Data index表示發(fā)送數據幀的幀序號。
Destination Address:發(fā)送數據的目標地址。
RTR:定義本幀信息為數據幀還是遠程數據幀請求位。
Data length (L), Data length (H):多幀信息包的長度,只有在傳輸多幀數據的第一幀時填充,其他幀不填充,而可以填充要傳輸的信息體。
6 bytes data:要傳輸的信息體。
遵循上述約定的CAN協(xié)議,各CPU模塊之間的通訊快速可靠,抗干擾性強,傳輸波特率達到500kbps,達到了的性能指標要求。
4 小結
為了實現小型水電站提出的少人值班、無人值班的要求,提高水電站的水平,集發(fā)電機測控保護、勵磁調節(jié)、同期并列、順控、遠程通訊、人機交互等于一體的組合智能是一個經濟可行的技術方案,必將成為綜合未來發(fā)展的趨勢。此測控裝置采用面向對象的分層分布式結構,各CPU模塊采用CAN相連,各模塊之間的數據交互快速可靠、抗干擾性強,在外觀上這些功能模塊都在一個機箱內,結構緊湊,便于安裝使用。實際應用中,既可以在現場獨立運行和操作,又可以在多機系統(tǒng)聯合運行時根據需要配置上位機,構成水電站監(jiān)控系統(tǒng),具有非常廣泛的應用前景。


上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉