CAN设计流程中使用的VECTOR工具_第1页
CAN设计流程中使用的VECTOR工具_第2页
CAN设计流程中使用的VECTOR工具_第3页
CAN设计流程中使用的VECTOR工具_第4页
CAN设计流程中使用的VECTOR工具_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、用于控制器局域网设计过程的矢量工具在CAN网络开发的初始阶段,我们面临着一个工程问题,例如汽车电子控制单元网络的开发。开发的第一步是需求分析的定义,也就是这个网络中通信需求的定义:需要多少节点;定义具体有多少条消息);在网络中发送;数据分别从哪个节点传输到哪个节点;每个信息信号的具体组成;同时,为了描述一些外部输入和输出,有必要添加环境变量。在这个过程中,我们可以使用矢量公司的网络数据库工具CAN数据库来定义和管理分布式电子控制单元网络的通信数据,检查概念定义中的一些错误并及时纠正,优化网络设计。接下来,我们需要从功能建模、仿真分析、部分系统实现到完整系统实现的几个步骤。Vector提供的CA

2、Noe可以支持上述四个开发步骤。我们将前两个阶段整合为一个开发阶段,因此我们建议将开发分为三个阶段:第一阶段是功能建模和仿真。这一过程主要是针对具有特定数据定义的消息的事件处理,即网络节点的行为定义,CAPL很好地实现了这一点。这是一种类似于CANoe环境中的C语言,可以用来处理诸如消息接收、环境变量变化或错误发生等事件。同时,由于CANoe的开放性,我们可以利用现有的成熟算法、函数和模型来扩展我们自己函数的功能,甚至可以使用其他建模工具(如Matlab)来构建复杂的模型。其次,利用系统的虚拟仿真测试功能设计,并在CANoe中对设计完成的软件仿真节点系统进行离线仿真,测试各节点功能的完善性和网

3、络的合理性。第二阶段是系统的实现。在第一阶段结束时,我们可以得到整个系统的功能模型。接下来,我们开发了自己的真实控制器节点,并使用总线接口与CANoe的其余节点连接,以测试我们的节点的功能,如通信和纠错。这样,如果我们系统的节点是并行开发的,它们就不会受到其他节点开发步骤的影响。在这个阶段,可以通过不同的方法获取一些环境变量来模拟真实的公交车环境。第三阶段是整个系统的整合。在开发的最后阶段,我们逐渐用真正的节点替换所有的节点,CANoe只是一个观察和分析的工具。在这个过程中,可以详细检查整个系统,包括每个功能节点。因为使用功能模块代替真实的网络节点可以减少错误的发生,因为它的功能可以通过在这两

4、种状态之间切换来检查。在开发的第二和第三阶段,Vector可以提供不同的开发工具。例如,特定芯片和功能的源代码(CANopen、DeviceNet、J1939源代码);符合OSEK标准的实时多任务操作系统OsCAN;卡纳莱泽;一个强大的总线分析工具;各种硬件工具,如网络示波器CANscope、网络干扰发生器CANstress等。系统实施后,可以测试或校准系统。在这方面,Vector还提供了一个测试和校准软件工具:CANape。它可以使用现有的校准协议来校准一些需要在控制器实时运行时在线校准的控制参数。是一个CANopen网络动态测试的工具。有许多不同功能的硬件工具。局域网仿真德国Vector公

5、司提供的CANoe(CAN Open Environment)可用于设计和开发,该开发平台也被欧美主要汽车制造商广泛使用。CANoe (CAN开放环境)是一个强大的工具,可用于CAN开发和设计的所有阶段。由于其开放的结构,它可以用来解决所有复杂的CAN开发问题。它提供了各种图形或文本功能窗口或仪表板来模拟和分析分布式网络。CANoe具有可编程功能,其中集成了基于事件的面向对象编程语言CAPL(CAN Access Programming Language),可以实现网络节点的建模和设计。您还可以使用CANoe和其他建模工具(如Matlab/Simulink)之间的接口来实现建模。用CANoe设

6、计的CAN系统一般分为三个开发阶段。这三个阶段是:(1)通过数字仿真分析和设计网络需求;节点实现和半物理仿真阶段;全系统集成阶段。每个开发阶段如下所示:阶段1:使用数字模拟来分析和设计网络需求开发的第一步是执行系统的所有功能和分布式设计,并定义网络节点的层次结构。这包括定义消息和选择总线的波特率。然后必须阐明单个节点的网络行为(例如周期性传输或更复杂的协议)。接下来,可以通过CANoe建立每个网络节点的模型进行仿真,以估计在设定波特率下的总线负载和延迟。为了进一步精确研究,整个系统的动态功能模型可以通过CANoe建立。这包括网络节点根据可变输入和输出以及消息发送和接收的具体行为。这使用了基于C

7、APL语言中的事件来描述行为的原则。例如,该模型可以描述当节点接收到消息(事件)时,数据由程序进一步处理,结果作为控制变量输出。用户必须指定输入和输出变量,以模拟网络节点的时间行为和消息累积。通过仿真验证各节点功能的完善性和网络的合理性,可以监控网络负载和时延。阶段2:节点实现和半物理模拟;在设计的第一阶段之后,网络的每个节点通常由不同的开发人员设计和开发,这些开发是独立和并行进行的。这种并行工程中每个节点的开发通常需要一个完整的系统测试环境。这样,我们可以使用前一阶段获得的全数字仿真系统,并使用总线的实时接口与CANoe的其余节点连接,测试我们自己节点的功能,如通信和纠错。对于并行开发的节点

8、,它们不受其他节点开发步骤的影响。在这个阶段,可以通过不同的方法获取一些环境变量来模拟真实的公交车环境。阶段3:全系统集成在开发的最后阶段,为了实现整个系统,所有真正的网络阶段都是逐步连接的。CANoe只是一个监控、观察和分析的工具。在这个过程中,可以详细检查整个系统,包括每个功能节点。因为使用功能模块代替真实的网络节点可以减少错误的发生,因为它的功能可以通过在这两种状态之间切换来检查。上述节点的输入和输出信号可以用环境变量来描述。CANoe可以用来区分连续变量和离散变量。例如,开关的位置可以用离散的环境变量表示,发动机的速度或温度可以用连续的环境变量表示。控制面板为环境变量提供了友好的用户界

9、面,可以模拟直观的车辆运行外部环境,如汽车仪表显示。用户也可以开发自己的仪器接口来满足他们的特殊需求。在模拟过程中,可以显示或修改环境变量。此外,CANoe还包括一些CAN设计、开发和分析can上层协议的功能。例如,CANoe选项J1939可用于基于J1939的分析。利用其数据库编辑工具CANdb可以建立基于J1939协议的数据库,然后将优化和简化的数据库数据输入数据库文件。所有未来的开发和设计都将基于这样一个数据库。因此,利用CANoe强大的仿真分析功能,第一步是在实验室环境下建立离线数字仿真系统模型,并在计算机上测试和验证所设计的协议。进一步优化网络设计。问:关于J1939协议的问题在应用

10、层使用J1939协议和CANoe及Matlab/Simulink软件可以实现离线仿真吗?我想开发一个节点(如AMT)。1939协议可以在个人电脑上测试和验证吗A:可以用CANoe仿真网络通信,整个网络系统(包括AMT动态控制)可以用Matlab/Simulink仿真。Q:问一个关于CANoe的问题。现在我有这样一个问题:两个节点通信,节点1通过两个按钮向节点2发送两条不同的消息。不管我按哪个键,它都会发出第一条信息。我只是删除这个键的触发事件和相应的消息。当我运行程序时,我仍然发送对应于第一条消息的标识,但是对应于数据字段的数据不正确。我想问一下如何解决这个问题,以及我是否设置错了。请回复,谢

11、谢!在CAPL定义消息时,可以通过消息来定义A:但在为J1939定义消息时,会使用PG(参数组)命令Q:询问如何在CAoneLIN仿真的仿真设置界面中定义主节点和从节点。数据库中是否只定义了一种方法?此外,LIN的消息传输是否必须在数据库中定义一个时间表?如果没有定义,还有其他方法发送LIN消息吗?让我先简单回答你的问题,因为时间已经过去了。从属节点定义需要在数据库中定义。您需要首先定义时间表,或者您可以尝试“生成”模块Q:对CANOE的关注CANOE确实功能丰富,但大多数功能都是监控性质的。如果只需要总线监控,实际上有许多便宜和良好的实施方案;至于其独特的总线网络系统仿真开发功能(在其他软件

12、中还没有发现),虽然表面上对开发有用,但其开发过程的操作和实现过于独立(一人一台电脑),不利于团队工作。我想知道在大型复杂系统的开发中,如何协调团队开发和CANOE软件独立性之间的矛盾,从而有效地利用人力,缩短开发周期。A:首先,我不同意你所说的,“CANoe的大部分功能是监测自然。”事实上,CANoe提供了丰富的总线统计、消息统计、跟踪和数据监控功能,但是CANoe的主要功能不在这里(您可以比较下面的CANalyzer,您会发现CANoe的几乎所有监控和统计功能都可以在CANalyzer中获得)。CANoe的主要功能是模拟网络开发的全过程,包括通信协议的模拟(CANdb Editor)和各节

13、点功能定义的模拟(CAPL)。上述所有监控工具仅用于帮助工程师在模拟或测试过程中方便、直观地获取各种统计信息和数据监控。其次,对于团队工作,这取决于整个开发过程的哪个阶段。CANoe几乎可以应用于开发过程的所有阶段,但我个人认为最重要的应用是在网络的初始全球设计阶段。在这个阶段,只需要确定每个节点的协议和功能定义,而不需要很多硬件和软件开发工作。这不同于通用系统或节点开发。此外,CAPL语言还旨在实现网络中各节点的通信功能。例如,在整车动力系统网络中,发动机电子控制单元的算法不能简单地用CAPL语言实现。因此,在团队开发工作中,CANoe扮演着整体设计模拟验证和测试的角色,没有多个子团队参与C

14、ANoe的开发工作;然而,一旦CANoe的仿真环境建立起来,它就是一个很好的仿真测试环境,每个子团队都可以充分利用。在CANoe中询问有关PANELEDITOR的问题当我们使用PANEL EDITER编辑仪器界面时,当编辑文档被打开或存储时,PANEL EDITER的编辑环境总是莫名其妙地消失,文档不被存储。这是台式机和笔记本电脑的一个问题。原因是什么,不合适的设置在哪里?你提到的问题相当奇怪。这是否意味着当您打开一个预先存储的接口文件或存储一个新的接口文件时,面板将自动关闭?还是接口文件没有出现在模拟环境中?如果是后者,请打开菜单中的面板配置面板,通过对话框中的添加按钮选择您存储的接口文件,

15、并通过显示按钮在仿真环境中显示所选的接口文件。如果是前者,那真是一个奇怪的问题。你可以通过邮件或电话联系恒润公司的工程师。821q :错误框架当使用can-analyer时,错误框架的框架会出现在日志中。它是如何产生的,如何消除这个不必要的框架?A:产生错误帧的原因有很多,如CAN规范中定义的错误:回答错误、位错误、格式错误、填充错误和循环冗余校验错误,任何错误都会产生错误帧。这些错误帧将被CANoe记录下来。要消除这些帧,您必须检查您的网络以消除导致错误的故障;如果您只是不需要在日志中记录这些帧,您可以在日志模块之前添加一个过滤器,并选择停止过滤器来过滤出错误帧,

16、以便在日志文件中看不到错误。错误仍然可以在跟踪和总线统计中看到。当然,你可以用同样的方法过滤掉错误的帧Q:CANoe能否仅安装在一台计算机上?为什么我们公司购买的CANoe设备只能安装在一台计算机上?安装其他计算机时,提示许可证或用户名错误。A: CANoe可以安装在多台计算机上,但是CANone的许可证绑定在CANone卡上,所以一次只能使用一个CANone(没有CANone卡就不能启动CANone)。在第一篇文章中,你没有说“安装后其他计算机会提示许可证或用户名错误。”我以为安装已经完成了。如果在安装过程中出现问题,请注意以下几点:1 .首先安装网卡驱动程序,插入网卡,并根据计算机提示安装

17、驱动程序2 .安装CANoe时,请注意,当提示输入用户名、产品序列号和许可证时,请填写CANoe安装光盘上的软件包信息,尤其是用户名,以确保每个点和空格都与软件包上的信息一致。如果您有任何问题,可以直接联系我们的技术支持。如何计算Q:总线的负载?如果计算,CAN总线负载是多少?每个can帧的最大传输需要多少位?A:简单地说,在一定时间内处于工作状态的总线的百分比就是总线负载。CAN帧(标准帧)由起始位(s of,1位)、标识(11位)、实时应答(1位)、集成开发环境(1位)、保留位(1位)、数据链路控制(4位)、数据字段(0 8字节)、循环冗余校验(2字节)、确认(2位)组成,并通过自己添加来计算。当然,在实际传输中应该考虑填充位的影响问题:您是否遇到过CAN帧丢失?当我是一个接收器时,我遇到了所有的CA

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论