目的:在CANalyzer或CANoe紧张情况下,借用CANape来模拟节点往总线上发送信息
工具:CANape(建议对应的CANape软件版本升级至12.0版本及以上)
步骤:
步骤一:
在目标CANape工程中,将包含需要发送报文的DBC文件添加至DEVICE中,Device->New from->Database…
图示1:Symbol explorer
图示1中,将R020_AC(Pre-Production)_Martrix_V0.0draft数据库添加到工程Devices中,在配置过程中,选择正确的CAN通道及速率。
- 步骤二:
利用CANape中"Function"功能,对需要在总线上发送的报文信息进行编译(Function功能详细应用参考CANape自带帮助文档),Tools->Functions and Scripts…,图示2为Function Editor界面。
图示2:Function Editor
新建一个Project function,命名为abs_1(),以模拟发送VehicleSpeed_ABS信号为150Km/h为例,在函数编译位置输入以下代码,并进行编译:
function abs_1 ()
{
// Add your code here
// Signal_A = Var_A; //Signal_A为DBC中信号, Var_A为数值或全局变量。
VehicleSpeed_ABS = 150;
return ;
}
- 步骤三:
在measurement configuration添加function(Insert function->Select->abs_1()),如下图3可选择函数触发方式,周期等信息。
图示3:Measurement Configuration
- 步骤四:
经过以上三步,简单的CANape发报文设置已经完成,为了验证总线是否有此信息,
方法1:打开Trace窗口,选择Trace的DBC(可多选)后运行观察信息,如下图所示:
图示4: Trace window
重要:在CANape12.0以下版本,Trace界面功能偏弱,无法像CANoe那样显示报文,建议使用12.0及以上版本。
方法2:将总线添加另一台接收报文信息的设备,以CANape为例,查看总线是否有此报文信息,见下图: