基于CAN總線的智能車的設計與實現
控制器局域網絡CAN(Controller Area Network)是德國BOSCH公司為解決現代汽車中眾多電子設備之間的數據交換而開發的一種串行數據通信協議,它具有高可靠性和良好的錯誤檢測能力。汽車上主要有高速(500 kb/s)和低速(125 kb/s)兩種CAN總線,這兩種總線通過網關連接,實現兩個局域網間的數據共享。
目前,隨著對系統復雜化、精細化的要求越來越高,傳統的集中控制從實時性和可靠性上越來越不能滿足要求,分布控制逐漸得到了廣泛應用。分布控制就是系統由一個主控制器和若干個分控制器組成,分控制器分別處理一部分系統功能,以并行或串行的方式與主控制器進行數據和信息的交互。
1 系統的總體設計
本設計主要完成了智能車在預先鋪貼的道路上行駛。整個系統硬件組成框圖如圖1所示,包括采集節點和控制節點,它們之間通過CAN總線完成數據的交互。采集節點通過傳感器采集道路信息,經過信號調理電路傳送到微控制器,微控制器對信息進行處理后把數據發送到CAN總線上。控制節點讀取總線上的數據并轉換成控制命令,控制執行機構以確保智能車不偏離道路并且保持較高的速度。
2 節點的硬件接口設計
2.1 采集節點SST89E564RD與CAN總線接口
SST89E564RD自身不具有CAN模塊,因此擴展了CAN總線控制器,通過CAN總線收發器接入總線。本設計采用的CAN控制器是SJA1000,其兼容CAN2.0B協議,通過單片機對其進行初始化,主要實現數據的接收和發送等通信任務。收發器選用PCA82C250,它是一種應用廣泛的CAN控制器與物理總線間的接口芯片,能夠對總線的信息進行差動發送和接收。為了進一步提高系統的抗干擾能力,在PCA82C250和SJA1000之間用高速光耦6N137進行隔離,以降低由于不同節點的高共模電壓引起的串擾甚至對器件的損壞,提高系統的可靠性,其通信速率高達10 Mb/s,完全能滿足CAN總線需要。SST89E564RD與CAN總線的硬件接口如圖2所示。
2.2 控制節點DSP 與CAN 總線接口
TMS320F2812 DSP 芯片內部集成了一個完整的增強型CAN 控制器, 稱之為eCAN, 在硬件設計中,不需要再加入獨立的CAN 控制器來實現CAN 總線的底層協議, 直接通過收發器PCA82C250 連接總線。DSP 與CAN總線接口設計如圖3 所示。
評論