CANbus (Controller Area Network) 即控制器局域网,是国际上应用最广泛的开放式现场总线之一。作为一种技术先进、可靠性高、功能完善、成本合理的远程网络通讯控制方式,CANbus已被广泛应用到各个自动化控制系统中。例如,在汽车电子、自动控制、智能大厦、电力系统、安防监控等各领域。
德国ExpertControl公司的CANbus专用工具包是一套基于Matlab和Simulink仿真环境,直接对CANbus数据流作实时的存取,感应和监控。CANbus专用工具包的读写功能模块,能像标准的Matlab模块和Simulink库一样在Matlab和Simulink中直接使用。
Canbus工具包硬件设备
CANbus工具包的硬件设备,包括在笔记本中使用的PCMCIA卡或在台式机中使用的PCI卡。这些硬件设备的作用是实时的将CANbus数据耦合到计算机中,这样Simulink才可以访问CANbus数据。
CANbus工具包也可以使用USB接口来访问CANbus。提供最多10个CANbus通道。
Matlab中的操作步骤
一般可以从Matlat命令行或程序界面调用四个功能函数: (1) 初始化,(2)从Canbus读数,(3) 写入Canbus (4)停止Canbus访问。
在Simulink中的访问和建模步骤
访问Canbus的步骤如下:
1. 定义"To Canbus Activities"
为了方便在Simulink中建模,CANbus Toolset提供如图所示定义菜单。所有信号通过Canbus识别器定义,包含数据和Simulink访问名称(SAN)。这些数位和字节只需定义一次,在Simulink建模和仿真时就不再需要关心硬件方面的细节。这个仿真模型可以通过用户定义的名称,SAN,写回Canbus。
2. Simulink建模
Simulink模型需包含Canbus特定的模块,这些模块可以被CANbus Toolset模块库"canlib"访问。一般这些库包括三个模块:
ModelControlBlock 对每个仿真模型使用一次。
FromCanBlock 将按需要多次被仿真模块使用。
ToCanBlock将按需要多次被仿真模块使用。
3. 定义"Canbus Read Activities"
Canbus的读取功能是由上述模块提供的。通过Simulink标准的方法实现参数化。
4. 开始仿真
现在可以开始实时仿真了。下图显示了模型对Canbus的读写,以及通过Simulink标准显示模块输出的信号。
CANbus Toolset应用领域
CANbus Toolset可用于各种基于Simulink仿真的环境中:
• 监控Canbus的物理信号
• 算法开发,系统识别,控制设计和测试,比如坐在车中的感觉等。
• 提供经实践证明有效的微控制区标准。
• 原形函数
CANbus Toolset亮点
• 方便的操作和使用
• 直接在Matlab中使用
• 直接在Simulink中使用
• 只需一般计算机或笔记本就能使用
• 工业标准的和基于USB的Canbus硬件
• 直接在 Simulink做实时仿真