工業現場CAN總線技術在航天領域的應用
1引言
can總線是由德國bosch公司為現實汽車測量和執行部件之間的數據通訊而設計的、支持分布式控制及實時控制的串行通訊網絡。can總線通訊的波特率可高達1mbps,最遠距離可達10km;can總線通訊采用短幀結構,數據傳輸的時間短,受干擾的幾率低;can總線協議有良好的檢錯措施,可靠性較高;can總線通訊對于傳送幀可以設定不同的優先級,通過總線仲裁機制使高優先級的信息能夠被優先及時傳送,增加了can總線通訊的實時性;can總線的完善可靠的通信協議主要由接口器件完成,降低了軟件開發的難度。此外,can總線網絡中的每節點對應一個地址,理論上基于can總線的網絡上可以添加刪除任一節點,通訊方式可以為點對點的通訊也可以為廣播方式,可以為單主方式也可以是多主方式,因此can總線通訊有相當的靈活性。
can總線開始主要應用于自動化電子領域的汽車發動機部件、傳感器、抗滑系統等應用中,但隨著can的應用普及,其應用范圍已不局限于汽車行業,正在向過程控制、機械、紡織等行業發展,應用領域從高速網絡到低成本的多線網絡。而且can總線的實時性以及抗干擾能力強等優點也逐步為航天領域所認可。1995年sstl(surrey大學衛星技術公司)將can作為星載遙測/遙控信道,隨之sstl開發了基于can的分布式解決方案。至今sstl已經在uosat-12,snap-1,aisat-1,ukdmc,nigeriasat-1,bilsat-1 等6顆leo衛星中應用了can總線網絡,用于實現星載計算機與其他任務節點之間的通信;esa在smart-1上也將can作為系統總線和有效載荷總線,實現數據交換和控制命令的傳送。在國內,can總線技術在小衛星中也得到了實際的應用。
本文在分析can總線航天應用的基礎上,從硬件原理設計、cpu與can總線接口實現以及can總線通信軟件設計等方面進行了論述。
表1can總線故障及其影響分析
2can總線工作原理
can總線的多主站工作方式的發送原理采用“載波偵聽多路訪問/沖突檢測”(csma/cd:carrier sense multiple access with collision detect)技術實現。利用csma訪問總線,可對總線上信號進行檢測,只有當總線處于空閑狀態時,才允許發送。利用這種方法,可以允許多個節點掛接到同一網絡上。當檢測到一個沖突位時,所有節點重新回到‘監聽’總線狀態,直到該沖突時間過后,才開始發送。在總線超載的情況下,這種技術可能會造成發送信號經過許多延遲。為了避免發送延時,可利用csma/cd方式訪問總線。當總線上有兩個節點同時進行發送時,通過“無損的逐位仲裁”方法來使有最高優先權的報文優先發送。在can總線上發送的每一條報文都具有唯一的一個11位或29位數id。can總線狀態取決于二進制數‘0’而不是‘1’,所以id號越小,該報文擁有越高的優先權。
can總線的多主站工作方式的接收原理是通過驗收濾波器來實現的。獨立的can 控制器sja1000設置了一個多功能的驗收濾波器,該濾波器允許自動檢查標識符和數據字節。使用驗收濾波器的濾波方法可以防止對于某個節點無效的報文或報文組存儲在接收緩沖器里,因此降低了主控制器的處理負荷。濾波器由驗收碼寄存器(acc)和屏蔽寄存器(amr)組成。在basiccan 模式里的驗收濾波,其判據為:(acc(7:0) ⊙ id(10:3))+amr(7:0)。如果判據的結果為“11111111”,則表示該幀數據是其他節點傳送給本節點的數據,本節點can總線控制器將接收本幀數據,在crc校驗無誤后于應答間隙產生應答信號。
3can總線航天應用分析
esa開展的can、1553b、spacewire技術研究表明以差分信號傳輸的高速串行總線用于星載設備之間的數據傳輸能保證通信的及時性, 利于降低星載設備的功耗,有助于獲得低噪聲、抗電磁干擾性強、emi低、信號不受電源開關狀態變化影響等優勢, 具有良好的航天應用前景。
can總線作為一種專為汽車工業設計的現場總線,具有很多適合航天應用的特點:作為多主站方式的串行通訊總線,can總線具有低成本,高抗電磁干擾性,高總線利用率,很遠的數據傳輸距離(長達10km),高速的數據傳輸速率(高達1mbps),可根據報文的id決定接收或屏蔽該報文,可靠的錯誤處理和檢錯機制,發送的信息遭到破壞后,可自動重發,節點在錯誤嚴重的情況下具有自動退出總線的功能等特點。
iso11898建議的can總線的物理電氣性能,能夠保證在總線發生某些故障時不至于中斷通信,而且可以為故障的定位提供可能。表1列出了can總線可能發生的各種開路和短路故障,以及在該故障模式下can總線受影響的情況。
can總線具有安全可信性。從協議分析,can總線的每個ecu具備錯誤檢測、標定和自檢的強有力措施。檢測錯誤包括:發送自檢、crc校驗、位填充和報文格式檢驗。其錯誤檢測具有如下特性:其一, 所有全局錯誤都可以檢測;其二,發送器的所有局部錯誤都可以被檢測;其三,報文中5個以內的隨機分布錯誤都可以被檢測到;其四,報文中長度小于15的突發性錯誤都可以被檢測得到;其五,報文中任何奇數個錯誤都可以被檢測得到;其六,沒有檢測出的已損報文的剩余錯誤概率為報文出錯率的4.7×10-11。
sstl經過研究發現,在600公里~1000公里的空間領域,空間輻射對衛星的影響相對較小。在這個高度上,總劑量為每年1krad左右(其量級相當于增加5mm的鋁屏蔽層),seu發生率相當于每天每mbyte一次(此數據來源于試驗觀察),并且觀測到的sel發生概率非常低,在sstl整個記錄中只記錄到3到4次值得懷疑的情況(確定的只有4次)。sstl還發現幾乎所有的商業cmos器件,在經受10 krad輻照后其性能并無明顯下降。sstl在低軌道小衛星采用工業級can控制器芯片構建衛星can總線網絡的成功,驗證了上述結論。表2為sstl在近年來采用的cots can器件。
表2surrey大學采用的cots can器件統計列表
評論