CANbus (Controller Area Network) 即控制器局域網(wǎng),,是國(guó)際上應(yīng)用最廣泛的開(kāi)放式現(xiàn)場(chǎng)總線之一。作為一種技術(shù)先進(jìn),、可靠性高,、功能完善、成本合理的遠(yuǎn)程網(wǎng)絡(luò)通訊控制方式,,CANbus已被廣泛應(yīng)用到各個(gè)自動(dòng)化控制系統(tǒng)中,。例如,在汽車(chē)電子,、自動(dòng)控制,、智能大廈、電力系統(tǒng)、安防監(jiān)控等各領(lǐng)域,。
德國(guó)ExpertControl公司的CANbus專(zhuān)用工具包是一套基于Matlab和Simulink仿真環(huán)境,,直接對(duì)CANbus數(shù)據(jù)流作實(shí)時(shí)的存取,感應(yīng)和監(jiān)控,。CANbus專(zhuān)用工具包的讀寫(xiě)功能模塊,,能像標(biāo)準(zhǔn)的Matlab模塊和Simulink庫(kù)一樣在Matlab和Simulink中直接使用。
Canbus工具包硬件設(shè)備
CANbus工具包的硬件設(shè)備,,包括在筆記本中使用的PCMCIA卡或在臺(tái)式機(jī)中使用的PCI卡,。這些硬件設(shè)備的作用是實(shí)時(shí)的將CANbus數(shù)據(jù)耦合到計(jì)算機(jī)中,這樣Simulink才可以訪問(wèn)CANbus數(shù)據(jù),。
CANbus工具包也可以使用USB接口來(lái)訪問(wèn)CANbus,。提供最多10個(gè)CANbus通道。
Matlab中的操作步驟
一般可以從Matlat命令行或程序界面調(diào)用四個(gè)功能函數(shù): (1) 初始化,,(2)從Canbus讀數(shù),,(3) 寫(xiě)入Canbus (4)停止Canbus訪問(wèn)。
在Simulink中的訪問(wèn)和建模步驟
訪問(wèn)Canbus的步驟如下:
1. 定義"To Canbus Activities"
為了方便在Simulink中建模,,CANbus Toolset提供如圖所示定義菜單,。所有信號(hào)通過(guò)Canbus識(shí)別器定義,包含數(shù)據(jù)和Simulink訪問(wèn)名稱(chēng)(SAN),。這些數(shù)位和字節(jié)只需定義一次,,在Simulink建模和仿真時(shí)就不再需要關(guān)心硬件方面的細(xì)節(jié)。這個(gè)仿真模型可以通過(guò)用戶定義的名稱(chēng),,SAN,,寫(xiě)回Canbus。
2. Simulink建模
Simulink模型需包含Canbus特定的模塊,,這些模塊可以被CANbus Toolset模塊庫(kù)"canlib"訪問(wèn),。一般這些庫(kù)包括三個(gè)模塊:
? ModelControlBlock 對(duì)每個(gè)仿真模型使用一次。
? FromCanBlock 將按需要多次被仿真模塊使用,。
? ToCanBlock將按需要多次被仿真模塊使用,。
3. 定義"Canbus Read Activities"
Canbus的讀取功能是由上述模塊提供的。通過(guò)Simulink標(biāo)準(zhǔn)的方法實(shí)現(xiàn)參數(shù)化,。
4. 開(kāi)始仿真
現(xiàn)在可以開(kāi)始實(shí)時(shí)仿真了,。下圖顯示了模型對(duì)Canbus的讀寫(xiě),以及通過(guò)Simulink標(biāo)準(zhǔn)顯示模塊輸出的信號(hào),。
CANbus Toolset應(yīng)用領(lǐng)域
CANbus Toolset可用于各種基于Simulink仿真的環(huán)境中:
• 監(jiān)控Canbus的物理信號(hào)
• 算法開(kāi)發(fā),,系統(tǒng)識(shí)別,控制設(shè)計(jì)和測(cè)試,,比如坐在車(chē)中的感覺(jué)等,。
• 提供經(jīng)實(shí)踐證明有效的微控制區(qū)標(biāo)準(zhǔn),。
• 原形函數(shù)
CANbus Toolset亮點(diǎn)
• 方便的操作和使用
• 直接在Matlab中使用
• 直接在Simulink中使用
• 只需一般計(jì)算機(jī)或筆記本就能使用
• 工業(yè)標(biāo)準(zhǔn)的和基于USB的Canbus硬件
• 直接在 Simulink做實(shí)時(shí)仿真