CANbus(Controller Area Network)即控制器局域網(wǎng),是國際上應用最廣泛的開放式現(xiàn)場總線之一。作為一種技術先進、可靠性高、功能完善、成本合理的遠程網(wǎng)絡通訊控制方式,CANbus已被廣泛應用到各個自動化控制系統(tǒng)中。例如,在汽車電子、自動控制、智能大廈、電力系統(tǒng)、安防監(jiān)控等各領域。
德國ExpertControl公司的CANbus Toolset是一套基于Matlab和Simulink仿真環(huán)境,直接對Canbus數(shù)據(jù)流作實時的存取,感應和監(jiān)控。CANbus Toolset的讀寫功能模塊,能像標準的Matlab模塊和Simulink庫一樣在Matlab和Simulink中直接使用。
CANbus工具包的硬件接口:
使用CANbus Toolset需要配置硬件設備,比如用于筆記本電腦的PCMCIA卡或用于臺式機的PCI卡采集CANbus數(shù)據(jù),供分析軟件使用。CANbus Toolset也可以使用USB來訪問CANbus。提供最多10個并發(fā)CANbus通道。
圖1
Matlab中的操作步驟
一般可以從Matlab命令行或程序界面調用四個功能函數(shù): (1) 初始化,(2)從Canbus讀數(shù),(3) 寫入Canbus, (4)停止Canbus訪問。
圖2
在Simulink中的訪問和建模步驟
訪問Canbus的步驟如下:
1. 定義"To CANbus Activities"
為了方便在Simulink中建模,CANbus Toolset提供如下圖所示定義菜單。所有信號通過CANbus識別器定義,包含數(shù)據(jù)和Simulink訪問名稱(SAN)。這些數(shù)位和字節(jié)一經(jīng)定義,在Simulink建模和仿真時就不再需要關心硬件方面的細節(jié)。這個仿真模型可以通過用戶定義的名稱(SAN),寫回CANbus。
2. Simulink建模
Simulink模型需包含CANbus特定的模塊,這些模塊可以被CANbus Toolset模塊庫"canlib"訪問。這些庫包括三個模塊:
3. 定義"CANbus Read Activities"
CANbus的讀取功能是由上述模塊提供的。通過Simulink標準的方法實現(xiàn)參數(shù)化。
4. 開始仿真
完成了上述定義,就可以開始實時仿真了。下面圖示了模型對CANbus的讀寫,以及通過Simulink標準顯示模塊輸出的信號。
圖3
CANbus Toolset應用領域
CANbus Toolset可用于各種基于Simulink仿真的環(huán)境中:
圖4
CANbus Toolset亮點