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