CANoe入门Stepbystep系列.docx

上传人:b****6 文档编号:8432208 上传时间:2023-01-31 格式:DOCX 页数:22 大小:90.78KB
下载 相关 举报
CANoe入门Stepbystep系列.docx_第1页
第1页 / 共22页
CANoe入门Stepbystep系列.docx_第2页
第2页 / 共22页
CANoe入门Stepbystep系列.docx_第3页
第3页 / 共22页
CANoe入门Stepbystep系列.docx_第4页
第4页 / 共22页
CANoe入门Stepbystep系列.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

CANoe入门Stepbystep系列.docx

《CANoe入门Stepbystep系列.docx》由会员分享,可在线阅读,更多相关《CANoe入门Stepbystep系列.docx(22页珍藏版)》请在冰豆网上搜索。

CANoe入门Stepbystep系列.docx

CANoe入门Stepbystep系列

CANoe入门Stepbystep系列〔一〕根底应用

CANoe是Vector公司的针对汽车电子行业的总线分析工具,现在我用CANoe7.6版本进展介绍,其他版本功能根本差不多。

硬件我使用的是CANcaseXL.

1,CANoe软件的安装很简单,先装驱动,再装软件。

安装完成,插上USB,连接硬件,这样在控制面板中,VectorHardware〔硬件〕进展查看

通过查看信息可知,CANcaseXL中的两个piggy,一个是251〔高速CAN〕,一个是7269〔LIN〕,另外常用的还有1054〔低速CAN,或称容错CAN〕,因为CANcaseXL〔can情况XL最大〕中只能支持两路通讯,这样piggy可以自由组合

2,硬件连接正常,翻开CANoe软件

File->NewConfiguration〔新配置〕可以选择新建工程的模版,我们这里选择CAN_500kBaud.tcn,这样新建了波特率为500KCAN工程,可以File->SaveConfiguration〔保存配置〕,进展保存

3,接下来就要使用CANdb++Editor〔编辑〕工具对总线网络节点,消息,信号,进展定义了。

点击工具栏的这个图标  

 ,或开场菜单中找这个工具启动

启动后,File〔文件〕->CreateDatabase〔创立数据〕,选择CANTemplate.dbc〔模板〕,选择目录与文件名,进展保存

右键Networknodes〔网络节点〕->New〔新的〕,进展网络节点的定义,这里只需要填写Name〔名字〕即可,例如:

Node_A〔节点A〕

然后添加Node_B〔节点B〕,完成后如下列图,这样在Networknodes〔网络节点〕目录下面添加出来两个节点

节点添加完成后,下一步添加CAN消息,右键Messages〔信息〕->New〔新的〕,这是需要定义名称,ID〔件〕,DLC〔数据链路控制〕等信息,如下:

然后在Transmitters〔信号传送器〕页面,点击Add〔增加〕按钮,添加Node_A〔节点A〕为发送节点,意思就是说,此消息是从Node_A〔节点A〕节点发送出来的

Receivers(接收器〕、Layout(布局;设计〕、Attributes(属性〕、Comment(评论;意见〕

Definition〔定义;讲解〕、Signals〔信号〕、Transmitters〔信号传送器〕

Type〔类型〕、ID〔件〕,DLC〔数据链路控制〕、TxMethod〔方法〕CycleTime(循环时间〕

其实还有一种方法就是,此时暂时不定义发送节点,然后直接以拖曳的方式拖曳到发送节点上,功能上是一样的Add〔增加〕Remove(移动〕View(观察〕Address(演说〕

有了消息,消息里携带的东西自然是信号咯,那么我们开场创立一个信号

右键Signals(信号〕->New〔新的〕,填写如下信息

信号当然要放到消息中咯,切换到Messages〔信息〕页面,Add我们刚刚建立的Message_A,当然和上面一样,采用拖曳的方式从Signal〔信号〕到Message中建立关联也是可以的。

Switch〔转换〕Length〔长度〕ByteOrder〔字节顺序〕Unit(单元〕ValueType〔数值类型〕Init.val〔初始化.牛顿〔十万牛顿没平米〕〕Factor〔因素〕Offset〔抵消;补偿〕Minimum〔最小值〕Maximum〔最大值〕ValueTable〔值表格〕Automaticmin-maxcalculation〔自动值-最大计算〕

上面信息中Intel〔英特尔〕模式和Motorola〔摩托罗拉〕格式的区别如下:

用0和1来表示开关信号状态似乎还不是很直观,我们可以使用on和off来表示就好了,于是View〔观察〕->ValueTables〔值表〕,右键空白处->New〔新的〕,键入如下信息:

    

定义好了之后,还需要跟信号进展关联。

右键需要关联的信号->EditSignal,ValueTable〔编辑信号值表〕中关联刚刚建立的那个ValueTalbe〔值表〕项

Definition〔定义〕ValueDescriptions〔值描述〕

这样一个信号就完成了,另外还需要加一个类似的信号,可以点击Signal〔信号〕根目录,在右边选择Signal复制,与粘贴,然后双击复制好的Signal后,进展一些编辑,然后用上面方法关联Message〔消息〕即可快速建立第二个信号了,是不是很方便

继续添加第三个信号,Indicator_A〔指示器〕,跟上面一样,但是我这个信号想放在Message的第二个字节的位置,怎么办?

其实很简单,有两种方法:

第一种,右键已经关联好的,即在Message目录下的信号,Editmappedsignal〔编辑映射信号〕,在弹出的对话框中的Startbit〔起始位〕中填8,这样就这个信号就跑到该消息的第二个字节中了。

第二种方法,右键该消息->EditMessage〔编辑消息〕,在Layout〔布局〕页面中,拖动信号的色块进展移动

MessageMame〔消息名称〕SignalName(信号名称〕Startbit(起始位〕Multiplexortype(多路复用器类型〕

以上Message_A消息与消息下所定义已经定义完成

Definition(定义〕Signals(信号〕Transmitters(信号传送器〕Receivers(接收器〕Layout(布局〕Attributes(属性〕Commentp〔评论〕Multiplexorsignal(多路复用器信号〕Arrange(排列〕ToFront(前〕ToBack〔后〕Bitindex(一些指数〕Inverted(反向的〕

如法炮制另外一个消息Message_B,完成后如下列图。

下面创立环境变量,右键Environmentvariables〔环境变量〕

   

陆续把其他环境变量加好,Indicator〔指示器〕的Access〔使用权〕属性为Write〔写入〕哦,加完如下:

数据库的定义这款根本上就OK了。

保存后关闭CANdb++Edito〔编辑〕r,回到CANoe主程序中。

请在Configuration〔配置〕->Options〔选项〕->ConfigurationSettings〔配置设置〕->ChannelUsage〔通道使用〕设置使用的通讯通道,因为这个只需要1路CAN,其他都设置为0就可以。

点这个选项页面

可出现SimulateSetup〔模拟设置〕界面Trace(追踪〕Configuration(配置〕Analysis(分析〕

右键Databases〔数据库〕->Add〔增加〕,把刚刚创立好的dbc给加载进来,之后再连线上右键->InsertNetworkNode〔插入网络节点〕

结果如下:

Insert(插入〕Network(网络〕Node(节点〕

CAPL(连续退火机组〕Test(测试〕Module(模块〕NET(网络〕XML(可扩展〕

Generator(发生器;发电机〕Block(限制〕Interactive(交互式的〕Replay(重放〕Paste(粘贴〕Shortcut(捷径〕SwitchAllBlockstoSimulation(所有模块模拟开关〕

SwitchAllBlockstoReal-timeMode〔切换所有模块实时模式〕

右键这个ECU模块->Configuration〔配置〕,在NetworkNode〔网络节点〕选择Node_A,完成,然后添加Node_B

 

Common(普通〕Components〔组件〕Buses〔公共〕Settings〔设置〕State(规定〕Simulated〔模仿〕Execution〔执行〕Normal(正常的〕Extended〔延伸的〕NodeSpecification〔节点规〕File〔文件〕Edit〔编辑〕compile〔编制〕

完成后如下列图,这样dbc与CANoe的关联就好了。

4,界面设计

网络与相应的关系设置好之后,应该设计界面了,一个良好的界面可以直观的显示与控制各种信号。

界面设计工具有两种:

一种是PanelDesigner〔面板设计〕,新的界面设计工具,另外一种是PanelEditor〔面板编辑〕是老的界面设计工具,无论采用何种工具设计的界面,都可以和CANoe很好的兼容,没有问题。

下面我们先用第一种界面设计工具来完成界面的设计

点击工具栏的这个图标

或File->OpenPanelDesigner,翻开界面编辑器,界面如下:

保存一下该界面,起名为Panel_A〔仪表板〕,一个空的界面上可以放置右上边假设干组件。

放置好之后,选中界面上的组件的时候,右下侧回显示当前选中的组件的属性,可以更改相应的大小位置等,但最重要的是Symbol〔符号〕属性,这里要说一下,每个界面组件也都需要与CANoe关联,否那么单纯的界面是没有任何意义的,关联主要是信号和环境变量,在Symbol属性的SymbolFilter〔象征过滤器〕属性中可以进展选择,我们这里关联的是环境变量,所以选择EnvironmentVariable〔环境变量〕,然后再点击上面的Symbol属性,然后在弹出的页面中选择相应关联的变量

完成后可以按同样的方法设计Panel_B,也可以SaveAs的方法快速建立同样的Panel但是与环境变量的关联和界面的文字需要进展微调。

这样两个Panel都已完成。

也已经建立了与CANoe之间的关联。

5,CAPL编程

所有的前期准备工作和组装工作都已完成,现在需要编写程序使整个系统有机的运行起来。

回到CANoe的SimulationSetup〔仿真设置〕界面,然后点击Node_A模块的,像铅笔一样的图标

,填写程序名称,这里Node_A,然后翻开编程界面,完成以下程序。

然后完成Node_B程序。

小技巧:

如果背不出具体的消息名称,信号名称或环境变量,可以右键程序空白处,你会得到意外的惊喜,试试看。

OK大功告成

6,运行

现在点击工具栏

,运行程序。

注意:

这里表示实际的网络,所有的消息是发送到物理的网络上的,如果只是验证程序,设置成这样就可以了

完整运行结果如下:

就是这样,一步一步的,我们完成了第一个完整的CANoe应用工程,虽然这只是入门第一步,但整个CANoe的开发流程根本涵盖,如果能跑出上面的运行结果,依然能够给我们很多的惊喜。

我们需要这样的惊喜,因为这是我们继续前行的动力。

Swith(开关〕Indicator(指示器〕

分类:

 汽车电子

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 工学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1