CANoe培训教程2020(最新).ppt
CANoe 基础培训,CANoe概述主要操作窗口详解数据库编辑DBC创建交互界面Panel Designer编程语言CAPL,内容概要,CANoe概述,CAN总线开发工具分析仿真测试诊断记录,CANoe专业的总线仿真测试工具,总线系统:支持CAN、LIN,MOST,FlexRay,Ethernet等各种总线系统。CAN高层协议:支持SAEJ1939,ISO11783,SAEJ1587,CANope,MCnet,GMLAN,XCP,CANaerospace,Car2X,AFDX和K-Line等。扩展支持支持网络及诊断数据库(DBC,LDF,FIBEX,MOST function catalog、NCF、CDD、ODX);具备用户可编程能力(CAPL);无缝集成MATLAB/SIMULINK仿真模型;可创建用户自定义面板来控制仿真和测试过程以及显示分析数据(panel designer);可通过VT system读取控制外部I/O信号;可与vTESTstudio联合使用,实现自动化测试;包含各种国际标准协议的动态链接库(AUTOSAR NM、KWP2000、OSE NM、ISO 15765-2、UDS)等。,CANoe在开发V流程中的作用,设备制造商,供应商,需求分析,ECU开发,功能测试,4,需求分析与网络模型创建ECU开发及仿真测试运行与诊断检测,需求分析和网络设计,仿真总线,.,.,.,.,网络模型搭建,网络组件开发,仿真总线,.,.,.,真实总线,残余总线仿真,virtual sub system,网络运行与监测,real bus,真实总线系统监测,CANoe系统组成,MOST,VN16xx,VN2640,VN7572VN7610,CAN/LIN,CAN/FlexRay,C A N oe,DBC,LDF(LIN),FIBEX,ARXML(FlexRay),Fkt.Katalog(MOST),VN7600,CAN/FlexRay,VN8900,CAN/LIN/FlexRay,Ethernet,VN7572VN7640,CAN/LINFlexRay/Ethernet,硬件接口卡&“Keyman”VN16XX收发器CANcab(CANpiggy)1041,1054,1057LINcab(LINpiggy)7269,CAN卡,硬件通道设置,硬件接口CAN卡类型(编号)收发器类型应用程序通道应用程序License信息,License信息,Vector License Client,软件通道设置,CANoe通道数量设置Configuration-OptionsGeneralChannel Usage,软件通道设置,硬件通道与软件通道对应,CANoe概述主要操作窗口详解数据库编辑DBC创建交互界面Panel Designer编程语言CAPL,内容概要,欢迎进入CANoe的世界,CANoe8大窗口Measurement SetupSimulation SetupTrace WindowGraphic WindowData WindowStatistics WindowWrite WindowPanel Window,CANoe基本窗口,Simulation Setup,硬件设置添加节点网络节点发生器交互式发生器CAPL节点回放节点添加Database添加网络,交互式发生器,CANoe基本窗口,Measurement Setup,显示分析窗口 Tace Data Graphic Statistics Write Loging,基本窗口,Trace Window报文ID和报文名称信号时间(相对/绝对)通道DLCDir(Tx/Rx),基本窗口,Graphics Window显示信号曲线不同的颜色和线形放大、缩小、平移信号可以被选定为X坐标与Trace窗口数据同步,基本窗口,Data Window信号名称信号值(Value)信号单位原始值(Raw Value)Bar图添加信号右键单击空白处Add Signals选择需要的信号,基本窗口,Bus Statistics Window总线负载数据帧错误帧CAN卡控制器状态,基本窗口,Write WindowCAN卡控制器状态CAPL输出窗口License信息统计报告,基本窗口介绍,记录配置方式双击Logging模块触发模式触发条件触发时间,25,基本窗口介绍,文件记录类型.BLFBus Logging.mdf/mf4Signal based.asc文本文件,26,基本窗口介绍,数据记录的目的是为了离线分析,27,注意:报文格式文件(*.asc)/(*.blf)可以转换为信号形式文件(*.mdf),反则不行。,数据转换选择源文件选择目标文件格式进行格式转换,基本窗口介绍,CANoe概述主要操作窗口详解数据库编辑DBC创建交互界面Panel Designer编程语言CAPL,内容概要,CAN数据库,Database,CANdb+Editor,创建一个新数据库,File-Creat Database选择创建的模板名称路径选择一个数据库结构创建完成,定义节点、报文、信号,定义信号定义报文定义网络节点将信号放入报文中检查信号在报文中的位置设置节点报文的收发定义属性,数值表的创建,一致性检查,File-Consistency Check,通信矩阵,View-Communication Matrix显示信号、消息、及网络节点的关系以信号为行,网络节点为列消息名显示于表中,对应了包含的信号与发送/接收的节点,CANoe概述主要操作窗口详解数据库编辑DBC创建交互界面Panel Designer编程语言CAPL,内容概要,Panel Designer,显示界面控制界面,创建Panel,Panel Designer(.xvp)新的面板编辑器Tools-Panel DesignerPanel Editor(.cnp)传统的面板编辑器Tools-Panel Editor工具栏点击图标,Panel Designer,Panel Designer,Vector Panel Designer Introduction,Panel Designer 窗口介绍,对象窗口显示信号、环境变量和系统变量直接拖拽变量到工作区生成控件面板区创建面板支持同时编辑多个面板控件区显示控件双击在工作区产生控件属性区显示选中控件的相关设置点击某项设置后会在下方出现相关说明,Analog Gauge&Meter,用法显示模拟量值CAPL 接口函数SetControlBackColorSetControlForeColorsetControlColorsSetDefaultControlColorssetControlVisibility参数设置,Button&Combo box,Button用于触发已配置的动作发动机启动,一键落锁等参数设置只有0和1两个状态文本显示执行内容Combo box控制和显示元素的符号设置发动机启动序列设置手刹状态,CAPL output view,通过CAPL函数来控制显示CAPL的输出信息用法在测试中显示多行信息分析错误CAPL FunctionputValueToControl(“面板名称”,“CAPL output view”,输出对象,行参数,列参数),Check box&Input/Output box,Check box用来控制和显示元素仿真过程中注入错误信号设定为特定的数值Input/Output box控制和元素的输入与输出信息显示轮速设置车速到某个特定值超出界限值,显示红色,Clock Control&LCD control,Clock Control显示时钟,默认为PC机时间LCD Control显示浮点型数字,如车速,Progress bar&Track bar,Progress bar在一定范围内显示进度显示发动机转速显示车辆加速度Track bar在一定范围内控制和显示元素显示和设置发动机转速显示车辆加速度,Switch/Indicator,用法传统的开关按钮,如点火开关指示灯,如红绿灯参数设置AppearanceGeneralLayoutSettingsSymbol,Panel控件和变量对应,左侧符号变量区直接拖拽控件属性进行插入,CANoe概述主要操作窗口详解数据库编辑DBC创建交互界面Panel Designer编程语言CAPL,内容概要,CAPL语言,CAPL(CAN Access Programming Language)类C语言仿真单个节点和整个网络外部环境测试面向事件的编程语言总线事件键盘事件时间事件,CAPL Browser,完整的CAPL程序,三个部分变量各种事件自定义函数,on start/过程指令块 on message xxx/过程指令块 on key 1/过程指令块,My_function_1(Para_1,Para_2,)/函数体 My_function_n(Para_1,Para_2,)/函数体,variables/申明全局变量,CAPL事件,消息事件,on message 123/对消息123(dec)反应on message 0 x123/对消息123(hex)反应on message Polelink/对消息Polelink(字符)反应on message CAN1.123/对CAN 通道1收到消息123反应on message*/对所有消息反应on message 100-200/对100-200间消息反应,键盘事件,on key a/按a键反应on key/按空格键反应on key 0 x20/按空格键反应on key F1/按F1键反应on key Ctrl-F12/按Ctrl+F12键反应on key PageUP/按PageUp键反应on key Home/按Home键反应on key*/按所有键反应,时间事件,定时器声明msTimer myTimer;/将myTimer 申明ms为单位的变量timer myTimer;/将myTimer 申明s为单位的变量定时器函数setTimer(myTimer,20);/将定时值设定为20ms,并启动cancelTimer(myTimer);/停止定时器myTimer定时器事件on timer myTimer/对myTimer 设定的时间到反应,系统变量事件,系统变量函数SysGetVariableInt/SysGetVariableFloat and SysSetVariableInt/SysSetVariableFloat.intValue=Namespace1:Parameter2;Debug:MotorValues:EngineSpeed=$EngineSpeed;系统变量事件on sysvar XXX,CAPL输出文本,Write Windowwrite函数int h=100;char ch=a;write(“Hundred as a number:%d,%x”,h,h);write(“Hundred as a string:%s”,”s100”);write(“The square root of two is%6.4g”,sqrt(2.0);,消息处理常用语句,if(this.id=100)msg.can=2;msg.dlc=8;dword t;t=this.time;if(this.dir!=RX)return;this.CarSpeed=200;,关键字 this,this代表触发事件的对象,on message 123 byte byte_0;byte_0=this.byte(0);.,on sysvar sysvar:Lights:Switch int val;val=this;.,报文处理,on message 0 x64 if(this.byte(2)=0 xFF)write(“Third byte of the message is invalid”);on message Polelink if(this.temperature.phys=150)write(“Warning:critical temperature”);,键盘处理,on key a message 0 x123 mPoLi;mPoLi.temperature.phys=60;mPoLi.speed.phys=4300;output(mPoli);on key b message 100 m100=dlc=1;m100.byte(0)=0 x0B;output(m100);,定时器处理,Variablesmessage 0 x555 msg1=dlc=1;msTimer timer1;on startsetTimer(timer1,100);on timer timer1setTimer(timer1,100);msg1.byte(0)=msg1.byte(0)+1;output(msg1);,环境变量处理,on envVar evSwitch message MotorData msg;msg.bsSwitch=getValue(this);output(msg);,小提示,Measurement Setup窗口是CANoe的主要窗口,进行数据流规划Simulink Setup窗口是CANoe的仿真窗口,加载数据库,实现节点仿真功能几乎窗口中的所有对象均可通过点击鼠标右键来访问交互菜单所有数据传输到评估模块时,均会在对应窗口以各自的方式进行显示,记录模块除外配置文件可以保存CANoe中的所有设置;可以使用已有的配置文件作为新任务的基础,进行简单的修改形成新的配置,提高效率,谢谢Q&A,