CANoe开发从入门到精通(txt+pdf+epub+mobi电子书下载)


发布时间:2020-05-17 14:04:49

点击下载

作者:张可晨,杨金升,唐新宇

出版社:清华大学出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

CANoe开发从入门到精通

CANoe开发从入门到精通试读:

前言

中国的汽车工业正在经历轰轰烈烈的变革和创新,其发展比以往任何时代都迅速,自2009年以来,中国已经连续9年成为世界最大的汽车生产国和第一大汽车市场,稳居世界第一汽车大国地位。中国汽车的自主品牌正受到越来越多购车者的关注和认可,市场份额持续攀升,2017年的市场份额达到43%。中国品牌的强势崛起将进一步压缩海外品牌在中国的生存空间。2017年年销售量超过百万辆的就有几家自主品牌整车厂。再经几年奋起直追,继电视机、手机之后,汽车也有望成为“中国制造”的杰出代表。

在中国汽车工业的崛起过程中,我们的自主品牌也面临众多的挑战,其中比较关键的是来自技术层面的挑战。特别是很多自主品牌在积极进军和抢占高端消费市场的过程中举步艰难。我们无法摆脱对国外技术的依赖,在研发新的平台和车型时,过多地依赖国外的设计中心或供应商。

高端车型的技术门槛,其中重要的一点就体现在车载总线的创新性和复杂性上。如果想在技术上摆脱对国外设计中心或供应商的依赖,必须不断提高技术水平,充分利用现有的开发工具。CANoe作为全球汽车电子设计、开发和验证的利器,在汽车行业可谓家喻户晓。

本书结构

本书遵循由浅入深的原则,将内容分为三篇。

基础篇

首先介绍车载网络的相关知识,接着介绍CANoe的开发环境和常见功能的使用,以便初学者掌握使用CANoe进行一般的总线仿真、测试和分析的方法;入门篇首先介绍CANoe开发总线仿真的基础知识,接着结合实例重点介绍总线数据库创建、面板设计,以及CAPL语言设计;进阶篇结合广大开发工程师可能面临的技术难题,由简单到复杂地介绍一些典型实例,以提高读者的实战技术。

本书的具体编写分工如下:第1、2、7、16~23章由杨金升编写;第5、6、8、9、11~13章由张可晨编写;第10、14、15章由唐新宇编写初稿,张可晨整理;第3、4章由李秀娟编写;李秀娟通读了本书的全部内容,并对所有代码做了测试和验证。全书由杨金升负责策划、统稿和审阅。

关于本书中的代码

读者可以在清华大学出版社网站http://www.tup.tsinghua.edu.cn下载相关源代码。每个章节的实例都给出不同版本CANoe的工程文件,以满足不同读者的需求。所有代码已经在以下版本中测试并验证通过。● CANoe Full 11.0(options:CAN + LIN)● CANoe Demo 11.0(options:CAN + LIN)● CANoe Full 10.0(options:CAN + LIN)● CANoe Demo 10.0(options:CAN + LIN)● CANoe Full 9.0(options:CAN + LIN)● CANoe Demo 9.0(options:CAN + LIN)● Visual Studio 2013(VB.NET、VC.NET、C#等代码)● LabVIEW 2014

本书附带的资源压缩包中包含相关的源代码及附送的其他资料文件,各章的文件夹架构说明如下。 /Chapter_xx/Source ——本章工程源代码(含11.0代码及10.0/9.0代码压缩包) /Chapter_xx/Additional ——本章相关资源 /Chapter_xx/Additional/Material ——本章实例需要使用的资源(如图片、模板等) /Chapter_xx/Additional/Document ——本章相关参考文档 /Chapter_xx/Additional/Example ——本章相关参考例程

本书目标读者(1)汽车行业的软硬件研发人员;(2)汽车行业的测试验证人员;(3)汽车电子相关专业的高校师生;(4)想从事汽车电子开发和测试的工程师。

如何使用本书(1)建议初学者由前往后阅读,尽量不要跳跃。(2)对于有一定CANoe使用经验的读者,可以跳过基础篇,直接学习后面两篇。(3)对于已经拥有CANoe正式版授权的读者,书中的实例可以上机动手实践,学习效果将更好。(4)对于目前没有正式版CANoe的读者,可以安装CANoe的Demo版,本书绝大部分的实例都可以在Demo版上直接实践。

本书的约定

由于CANoe软件目前没有中文版,所以本书在使用一些相关名称时,部分以英文为主。英文名称第一次出现时会附上相关翻译供读者参考,例如Option(选项)。为了避免混乱,本书需要将CANoe中常见的术语做如下约定。

Configuration——仿真工程或工程

Measurement——测量

License——授权

License Option——授权选项

Message——报文

Signal——信号

致谢

在本书的创作过程中,得到了来自家人、朋友、同事以及清华大学出版社的鼓励和支持,在此表示衷心的感谢。特别感谢上海交通大学刘功申教授的鼓励和支持,德国同事Thomas Mehring和中国同事黄友新等在技术上不吝指教,使本书得以顺利完成。同时,感谢Vector(中国)的技术支持团队,在以往的技术交流中给予我们的支持和帮助。

本书虽经多次审稿修订,但限于作者的水平和条件,书中不足和疏漏之处在所难免,衷心希望读者批评指正,使之得以不断提高和完善。

欢迎读者通过清华大学出版社网站www.tup.tsinghua.edu.cn与我们联系,也可以通过邮件(jasonyangsz@163.com)联系作者或者加入QQ技术交流群(602571482),与我们进一步交流,共同进步。

仅以此书献给正在崛起的中国汽车工业!作 者2018年11月基础篇第1章 车载网络概述本章内容:● 车载网络的起源;● CAN总线和LIN总线;● 典型车载网络架构;● 主要车载网络及其发展趋势。

本章通过学习车载网络的基础知识,了解常见车载网络的基本特点和主要应用,通过各种车载网络性能及特点的比较,展望未来车载网络的发展趋势。1.1 车载网络起源

纵观汽车的发展历史,在20世纪90年代之前的一百多年里,传统汽车的电气系统中各个模块之间采用点对点的通信方式,每个模块功能也比较单一,这样必然形成庞大的布线系统。图1.1为典型的汽车传统布线方式示意图,各个控制模块之间连接相互交错。据统计,一辆采用传统布线方式的高档汽车中,其导线长度可达2000m,电气节点可达500个,而且该数字大约每10年将增加1倍。这进一步加剧了粗大的线束与汽车内有限的可用空间之间的矛盾。图1.1 汽车传统布线方式示意图

随着汽车各控制模块逐步向自动化和智能化的方向发展,汽车电气系统变得日益复杂。无论从材料成本还是工作效率看,传统布线方法都无法满足现代汽车的发展和现代社会对汽车不断提高的要求。这些要求包括:极高的主动安全性和被动安全性,乘坐的舒适性,驾驶与使用的便捷性和人性化,尤其是低排放和低油耗等。

在汽车设计中,运用微处理器及车载网络技术是满足这些要求的最佳解决方法,而且已经得到了广泛的运用,这样的系统被称为ECU(Electronic Control Unit,电子控制单元)。目前常见的ECU有:ABS(防抱死系统)、EBD(制动力分配系统)、EMS(引擎管理系统)、多功能数字化仪表、主动悬架、导航娱乐系统、电子防盗系统和自动空调等。各个ECU之间如何通过车载网络进行通信,将在1.4节中介绍。1.2 CAN总线概述

CAN(Controller Area Network,控制器局域网络)属于工业现场总线的范畴。最初CAN总线是由德国的Bosch(博世)公司为汽车监测、系统控制而设计的。由于其高性能、高可靠性及独特的设计,CAN总线越来越受到人们的重视。它在汽车领域得到最广泛的应用,世界上几乎所有的汽车制造厂商都在使用。1.2.1 CAN总线简史

CAN总线的发展历史在很大程度上代表着车载网络从产生到普及的过程,以下为CAN总线发展的5个关键阶段。

1983年,德国的Bosch公司开发设计了CAN总线协议。

1987年,第一块CAN控制器芯片由Intel公司设计成功。

1990年,第一辆应用CAN总线的量产车Mercedes S-Class出现。

1991年,CAN 2.0发布(Part A与Part B)。

1993年,CAN成为国际标准ISO 11898(高速应用)和ISO 11519(低速应用)。1.2.2 CAN总线特点

CAN的规范从CAN 1.2规范(标准格式)发展为兼容CAN 1.2规范的CAN 2.0规范(CAN 2.0A为标准格式,CAN 2.0B为扩展格式),目前应用的CAN器件大多符合CAN 2.0规范。

CAN总线是一种串行数据通信协议,其通信接口中集成了CAN协议的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括位填充、数据块编码、循环冗余检验、优先级判别等工作。

CAN总线的特点主要如下。(1)可以多主方式工作,网络上任意一个节点均可以在任意时刻主动地向网络上的其他节点发送信息,不分主从,通信方式灵活。(2)采用无破坏性的基于优先级的逐位仲裁,标识符越小,优先级越高。若两个节点同时向网络上传送数据,优先级高的报文获得总线访问权,优先级低的报文会在下一个总线周期自动重发。(3)可以采用点对点、点对多及全局广播等传送方式收发数据。(4)直接通信距离最远可达10km(速率5kb/s以下)。(5)通信速率最高可达1Mb/s(此时距离最长40m)。(6)节点数实际可达110个。(7)每帧信息都有CRC校验及其他检错措施,数据出错率极低。(8)通信介质可采用双绞线、同轴电缆和光导纤维,一般采用廉价的双绞线即可,无特殊要求。(9)节点在错误严重的情况下,具有自动关闭总线的功能,以切断它与总线的联系,使总线上的其他操作不受影响。1.2.3 CAN总线主要应用

由于CAN总线具有突出的可靠性、实时性、良好的通信性能以及相对合理的成本价格,使得其在汽车制造、大型仪器设备、工业控制、楼宇智能化及智能机器人等方面的应用越来越广泛。

1.汽车制造中的应用

由于采用CAN总线技术,模块之间的信号传递仅需要一条或两条信号线,可以减少车身布线,进一步节省了成本。CAN总线系统数据稳定可靠,具有线间干扰小、抗干扰能力强等特点。CAN总线设计最初为汽车量身定做,充分考虑到了汽车上恶劣的工作环境。

在现代轿车的设计中,CAN已经成为必须采用的装置,奔驰、宝马、大众、沃尔沃、雷诺等汽车都采用了CAN作为控制器联网的通信方式。目前,CAN总线技术在我国汽车工业中已经被广泛应用。

2.大型仪器设备中的应用

大型仪器设备是一种参照一定步骤对多种信息采集、处理、控制、输出等操作的复杂系统。过去这类仪器设备的电子系统往往是在结构和成本方面占据相当大的部分,而且可靠性不高。采用CAN总线技术后,在这方面有了明显改观。

有些测控领域中,很多时候一次传输的报文量很小,但数据的传输需要考虑优先级别,这时CAN总线就非常适合应用于这类大型仪器系统模块化之间的互相通信。

3.工业控制中的应用

目前CAN总线技术作为现场设备级的通信总线,具有很高的可靠性和性价比,在工程机械上的应用越来越广泛。国际上一些著名的工程机械大公司如CAT、VOLVO等都在自己的产品上广泛采用CAN总线技术,大大提高了整机的可靠性、可检测性和可维修性,同时提高了智能化水平。而在国内,CAN总线控制系统也开始在工程汽车的控制系统中广泛应用,在工程机械行业中也正在逐步推广应用。

4.智能家庭和生活小区智能化中的应用

近些年,智能家庭和小区智能化发展迅速,但系统设计需要考虑功能、性能、成本、扩充能力及现代相关技术的应用等多方面。基于这样的需求,采用CAN技术所设计的家庭智能管理系统比较适合于远程抄表、防盗、防火、防可燃气体泄漏、紧急救援和家电控制等方面。

CAN总线可以作为小区管理系统的一部分,负责收集家庭中的一些数据和信号,并上传到小区监控中心。每户的家庭控制器是CAN总线上的节点,控制系统可通过总线发送报警信号,定期向自动抄表系统发送三表数据,并接收小区管理系统的通告信息,如欠费通知、火警警报等。

5.智能机器人技术中的应用

智能机器人技术是近年来一直备受关注的话题,也是我国开展新技术研究和新技术应用工程及产品开发的主要领域之一。把CAN总线技术充分应用于现有的控制器当中,将可开发出高性能的机器人生产线系统。通过对现有的机器人控制器进行硬件改进和软件开发,结合CAN技术和通信技术,并开发出上位机监控软件,从而实现多台机器人的网络互联,最终实现基于CAN网络的机器人生产线集成系统。这样做的好处有很多,例如,实现单根电缆串接全部设备,节省安装维护开销;提高实时性,信息可共享;提高多控制器系统的检测、诊断和控制性能;通过离线的任务调度、作业的下载及错误监控等技术,把一部分人从机器人工作的现场彻底脱离出来。1.2.4 CAN-FD协议简介

在汽车领域,随着人们对数据传输带宽要求的增加,传统的CAN总线由于带宽的限制难以满足这种需求。此外,为了缩小CAN网络(max.1Mb/s)与FlexRay(max.10Mb/s)网络的带宽差距,Bosch公司推出了CAN-FD。

CAN-FD(CAN with Flexible Data rate)继承了CAN总线的主要特性。CAN总线有很高的安全性,但总线带宽和数据场长度却受到制约。CAN-FD总线弥补了CAN总线带宽和数据场长度的制约。CAN-FD总线与CAN总线的区别主要在以下两个方面。

1.可变速率

CAN-FD采用了两种位速率:从控制场中的BRS位到ACK场之前(含CRC分界符)为可变速率,其余部分为原CAN总线用的速率。两种速率各有一套位时间定义寄存器,它们除了采用不同的位时间单位TQ外,位时间各段的分配比例也可不同。

2.新的数据场长度

CAN-FD对数据场的长度做了很大的扩充,DLC最大支持64B,在DLC小于等于8B时与原CAN总线是一样的,大于8B时有一个非线性的增长,大大提高了报文中的有效数据,使得CAN-FD具有更高的传输带宽。1.3 LIN总线概述

LIN(Local Interconnect Network,局域互联网络)是专门为汽车开发的一种低成本串行通信网络,是对现有汽车多元化网络的一个补充。LIN是层级式机动车网络执行的一个可行性因素,能够提高质量、降低车辆成本。标准化意味着将会减少目前市场上杂乱的低端多元化解决方案,并降低汽车电子产品在开发、生产、服务及物流领域的费用。1.3.1 LIN总线简史

LIN联盟最初由奥迪、宝马、克莱斯勒、摩托罗拉、博世、大众和沃尔沃等整车厂及芯片制造商创立,目的是推动LIN总线的发展,并且发布和管理LIN总线规范,制定一致性测试标准和认证一致性测试机构。目前,LIN总线标准规范已经移交由ISO负责更新和发布。LIN总线主要经历了以下几个阶段。

1998年10月,在德国Baden-Baden召开的汽车电子会议上,LIN总线的设想首次被提出。

1999年,LIN联盟成立(最初的成员有奥迪、宝马、克莱斯勒、摩托罗拉、博世、大众和沃尔沃),图1.2为LIN联盟标识。图1.2 LIN联盟标识

2000年,LIN联盟开始接收第一批成员。

2001年,第一辆使用LIN总线的汽车下线。

2002年,LIN总线规范V1.3版本发布。

2003年,LIN总线规范V2.0版本发布。

2004年,LIN总线一致性测试规范发布。

2006年,LIN总线标准规范V2.1版发布。

2010年,LIN总线标准规范V2.2A发布。

2014年,LIN总线标准规范V2.2A正式成为国际标准ISO 17987。1.3.2 LIN总线特点

LIN总线是一种串行通信协议,能够有效地支持分布式汽车应用领域内的机电一体化节点控制。LIN总线的主要特点如下。(1)单主控器/多从设备模式,无需仲裁机制。(2)基于通用UART接口几乎所有微控制器都具备LIN必需的硬件。(3)从机节点不需石英或陶瓷振荡器就能实现自同步,节省了从设备的硬件成本。(4)信号传播时间可预先计算出来的确定性信号传播。(5)低成本单线实现方式。(6)传输速率最高可达20kb/s。(7)不需要改变LIN从节点的硬件和软件就可以在网络上增加节点。(8)通常一个LIN上节点数目小于12个,共有64个标志符。(9)极少的信号线即可实现国际标准ISO 9141的规定。1.3.3 LIN总线主要应用

典型的LIN总线应用是汽车中的联合装配单元,例如,门、方向盘、座椅、空调、照明、湿度传感器和交流发电机等。对于这些成本比较敏感的单元,LIN可以使这些机械元件如智能传感器、制动器或光敏器件得到较广泛的使用。这些元件可以很容易连接到车载网络中并得到十分方便的维护和服务。在LIN实现的系统中,通常将模拟信号量用数字信号量所替换,这将使总线性能得到优化。1.4 目前典型车载网络架构

不同价位的汽车配置的总线种类和ECU数量的差异很大,例如,一些高端车型可能包含360°全景影像等。高端车型中的ECU因功能复杂以及数据交换量大,对总线的要求也比较高,除了上述介绍的CAN总线以及LIN总线外,还可能包括MOST(Media Oriented System Transport,媒体导向的串行传输)、FlexRay和Ethernet等总线。下面根据网络成本和复杂度的不同,仅对市场上的车载网络架构粗略的分类为紧凑型和豪华型。1.4.1 紧凑型

紧凑型(Compact Class)总线架构也是目前国内外汽车厂商主要采用的结构类型,其典型拓扑图如图1.3所示,主要包括Drive CAN(动力CAN)、Instrument Cluster CAN(仪表CAN)、Infotainment CAN(娱乐CAN)、Body CAN(车身CAN)及Diagnostics CAN(诊断CAN)等。根据需要可以在相关CAN总线上外加LIN总线,实现一些控制和数据传输功能。图1.3 紧凑型车载网络系统的典型拓扑图1.4.2 豪华型

豪华型(Luxury Class)总线架构是目前国外很多豪华车型采用的总线架构,其典型拓扑图如图1.4所示。该结构相对成本比较高,包括Drive CAN、Instrument Cluster CAN、MOST环、Body CAN、Diagnostics CAN及Distance Control CAN(远程控制总线CAN)等。与紧凑型总线架构的主要区别是使用了MOST环和复杂的Gateway(网关),实现了多媒体数据的快速传输,例如,可以实现将导航娱乐系统的地图或者MP3的封面轻松地传输给仪表盘(一般带有7英寸以上的TFT)。但由于Ethernet(以太网)总线相对MOST总线更加稳定和经济,目前在开发的很多豪华车型已经开始使用Ethernet代替MOST。图1.4 豪华型车载网络系统的典型拓扑图1.5 主要的车载网络

尽管CAN总线在汽车行业内取得了巨大的成功,能够满足一般紧凑型车载网络的需求,但不久之后就发现其最大吞吐量只有1Mb/s,且由于其报文时间的不确定性,使得该技术不适用某些应用。在20世纪90年代末,以BMW为首的几家公司创建了一个更合适多媒体应用的新网络——MOST。MOST具有更高的带宽,为流数据和数据流同步等CAN未涉及的领域提供了内置方法。

2006年,FlexRay首次亮相并应用于BMW X6,其网络的传输速度为10Mb/s,具有双冗余拓扑结构和显著增强的同步能力。但FlexRay仍然存在明显的缺陷,相对于CAN更为复杂且难以实现,因此市场接受过程和预期更为缓慢。

虽然以太网在家庭和办公室环境已经应用了几十年,但由于标准的100Mbit/s以太网无法满足汽车EMC要求,且出于成本等诸多方面的考虑,以太网长期以来未被普遍认可作为一项可行的车载网络。2011年,Broadcom公司开发了一个专门针对车载网络的以太网变体,被称为BroadR-Reach单线对(2线)以太网物理层方案,让以太网在车载网络中普及成为可能。2013年,BMW推出了新X5系列,其配备的倒车摄像头是首个实时的车载以太网应用。

表1.1是目前市场上主要车载网络的重要特性对比。表1.1 主要车载网络的重要特征对比*:UTP(Unshielded Twisted Pair)为非屏蔽双绞线。

网络成本和总线带宽一直是制约总线发展的关键因素,图1.5展示了主要车载网络相对成本与总线数据速率之间的关系。图1.5 主要车载网络相对成本和总数据速率之间的关系1.6 车载网络发展趋势

由1.5节中对几种总线的比较可以看出,以太网在诸多方面具有较强的优势,意味着以太网必将成为汽车ECU之间通信的基础组件。而CAN、LIN等传统总线,不仅价格低廉、久经考验且性能稳健,还为许多不需要过高性能的应用提供了足够的带宽。汽车中电子元件的巨大增长,也允许在汽车中使用多种网络,从而提供不同的性能、成本和特征组合。综上所述,以太网将同CAN和LIN等一起在未来相当长的一段时间内共同主宰车载网络领域,如图1.6所示。图1.6 车载网络发展趋势第2章 CANoe概述本章内容:● Vector公司及CANoe简介;● CANoe在ECU项目开发中的作用;● CANoe不同版本的区别;● CANoe安装和硬件接口;● CANoe常见授权选项简介和授权管理;● CANoe硬件配置。

通过第1章的学习,读者应该对汽车总线技术有了一定的了解,从本章开始,本书将切入正题,由浅入深地介绍CANoe的功能、应用及相关的开发技术。

CANoe是Vector公司(如图2.1所示)推出的一款集总线仿真、测试、分析和诊断等功能为一体的图形化开发环境。本章将带领读者先去简单了解Vector公司和CANoe在ECU项目开发中的作用。接着,针对读者可能遇到的疑问,给出了CANoe不同版本间的差异。最后,详细介绍了如何安装和设置CANoe,以及相关的授权选项和管理。图2.1 Vector公司Logo2.1 关于Vector公司

1988年4月,Eberhard Hinderer、Martin Litschel和Helmut Schelling等在德国斯图加特创立了Vector公司(最初命名为Vector Software,后更名为Vector Informatik)。1992年,公司推出了CAN总线分析工具—— CANalyzer,很快获得成功。1996年,在CANalyzer基础上增加总线仿真等功能,公司开发出第一版CANoe,迅速赢得了市场的青睐。

在随后的二十多年间,CANoe功能不断增加,目前已发展为多总线支持工具,支持的总线包括CAN、LIN、FlexRay、MOST、Ethernet、AFDX、ARINC 429和SAE J1708,以及基于CAN总线协议的SAE J1939、SAE J1587、ISO 11783、NMEA 2000、ARINC 825、CANaerospace和CANopen等。

在过去的三十来年间,Vector已经成为汽车行业整车厂和供应商进行嵌入式系统开发的合作伙伴。遍布全球21个国家与地区的近两千名员工,为汽车和相关行业的制造商提供专业的研发工具、嵌入式软件和技术服务。2011年,维克多汽车技术(上海)有限公司在中国正式成立。2.2 CANoe简介

CANoe是Vector公司推出的一款总线开发环境,全称为CAN open environment,最初主要为汽车CAN总线的开发、仿真、测试和分析而设计。随着车载总线的发展,扩展加入了LIN、FlexRay、MOST和Ethernet等网络。CANoe软件采用一个正在划行的独木舟(取英文canoe之意)作为图标,如图2.2所示。图2.2 CANoe图标

CANoe当前最新版本为11.0,本书的相关功能介绍和使用的图片主要基于CANoe 11.0。

CANoe是网络和ECU开发、测试和分析的专业工具,支持总线网络开发从需求分析到系统实现的整个开发过程。CANoe丰富的功能和配置选项被整车厂和供应商的网络设计工程师、开发工程师和测试工程师所广泛使用。在项目开发的各个不同阶段,CANoe发挥的作用也不相同。2.3 CANoe在ECU项目开发中的作用

CANoe在ECU项目开发中的作用,根据车载ECU项目的开发进度可以分为以下三个阶段。2.3.1 第一阶段:全仿真网络系统

在开发的初期阶段,CANoe可以用于建立仿真模型,在此基础上进行ECU的功能评估,这样就可以尽早地发现问题并解决问题。CANoe主要是针对有具体数据定义的报文进行事件处理,也就是借助CAPL实现网络节点的行为。CAPL是专门为CANoe设计的一种类似于C的语言,利用它可以对报文的接收、系统变量/环境变量的改变、错误的出现等事件进行处理。同时由于CANoe的开放性,用户可以使用现有的成熟算法、函数和模型扩充自己函数的功能。对于复杂模型,甚至还可以通过其他的建模工具(如MATLAB)。另外,在这个阶段,可以利用所设计的完整网络仿真系统进行离线的仿真,检验各个节点功能的完整性及网络的合理性。图2.3为CANoe全仿真网络系统示意图,所有节点均为仿真节点。图2.3 第一阶段:全仿真网络系统2.3.2 第二阶段:真实节点和部分仿真节点共存

在第一阶段结束后,用户能得到整个网络的系统功能模型。接下来,用户可以将自己开发的真实ECU节点替换仿真系统中对应的仿真节点,利用总线接口和CANoe剩余的节点相连接,测试自己节点的功能,如通信、纠错等。出于这样的原因,在很多场合项目组成员习惯将CANoe仿真工程称为RBS(Rest Bus Simulation,剩余总线仿真),某些地方使用Remaining Bus Simulation。这样,每个供应商的节点可以并行开发,不受其他节点开发进程的影响。图2.4为CANoe真实节点和部分仿真节点共存的网络系统示意图,部分节点已经被真实节点替换。图2.4 第二阶段:真实网络节点和部分仿真节点共存2.3.3 第三阶段:全真实节点的网络系统

在开发的最后阶段,所有ECU的真实节点都被逐一地连接到总线系统中,此前的仿真节点会被逐一从总线上断开。开发者可以在真实节点的条件下,验证总线的负载情况和其他的设计要求是否满足。在这个阶段,CANoe主要充当网络系统分析、测试和诊断的工具。在这个过程中,整个系统包括各个功能节点都能被详细地检查到。由于利用仿真节点代替真实的网络节点是最理想的状态,所以通过这两种状态的切换可以交叉检查相关功能,快速定位问题的根源。图2.5为CANoe全真实节点的网络系统示意图,所有节点已经被真实节点替换。图2.5 第三阶段:全真实节点的网络系统2.4 CANoe不同版本的区别

Vector公司根据不同客户和不同项目的需求,提供不同版本的CANoe。目前,市场上比较流行的CANoe付费版本是full和run版本。为了消除读者选购CANoe时可能遇到的困惑,下面将逐一介绍每个版本的区别。2.4.1 CANoe pex版本

CANoe pex版本为CANoe的项目执行版,由于所支持的功能较少,真正使用的用户也比较少。

1.主要功能(1)使用面板进行仿真与测试;(2)操作面板,执行CAPL代码(但是不支持仿真网络模型的创建、CAPL代码的编写及面板的创建);(3)不提供分析窗口(如Trace、Graphics、Statistics、Data等窗口);(4)有记录功能,可以同时设置触发条件。

2.主要应用(1)即使用户没有总线知识背景,也可以直接使用CANoe提供的测试环境;(2)只需执行工程文件,不需要分析功能;(3)长时间测试;(4)功能测试;(5)EOL(End of Line,下线)测试。2.4.2 CANoe run版本

CANoe run版本为CANoe的运行版,支持CANoe的大部分功能,在项目中应用比较广泛。

1.主要功能(1)使用面板进行仿真与测试;(2)操作面板,执行CAPL代码(但是不支持仿真网络模型的创建、CAPL代码的编写以及面板的创建);(3)包含所有的分析窗口(Trace、Graphics、State Tracker和Statistics等);(4)创建配置(通道配置、数据库的导入等);(5)支持IG模块和诊断功能;(6)支持诊断分析、测试及仿真:可以导入基于KWP2000、UDS、K-Line等诊断协议或者OEM自定义的诊断描述文件(CDD、ODX和MDX)。

2.主要应用(1)支持ECU开发过程中的剩余总线节点仿真;(2)对总线数据分析;(3)诊断测试。2.4.3 CANoe full版本

CANoe full版本为CANoe的完整版,支持CANoe的全部功能,在功能复杂的ECU项目中主要用于仿真和测试功能的开发。

1.主要功能(1)包含CANoe最全的功能;(2)开发网络仿真与测试模块;(3)支持CAPL和.NET编程以及面板的创建;(4)包含所有的分析窗口(Trace、Graphics、State Tracker和Statistics等);(5)支持IG模块和诊断功能;(6)支持诊断分析、测试及仿真:可以导入基于KWP2000、UDS、K-Line等诊断协议或者OEM自定义的诊断描述文件(CDD、ODX和MDX)。

2.主要应用(1)创建并运行网络仿真与测试模块;(2)对总线数据分析;(3)诊断测试。2.4.4 关于Demo版本CANoe

Demo版本主要给用户提供一个了解和体验CANoe软件功能的机会,同时也可以给初学者提供学习和实践的机会。

Demo版本软件可以从Vector官网(https://vector.com/vi_downloadcenter_en.html)免费下载,供初学者学习使用。该软件可以演示全部功能,支持的总线选项有CAN、LIN、MOST、FlexRay、Ethernet、WLAN(IEEE 802.11p)、IP、Car2x、ISO 11783(CANoe only)、J1939、J1587、CANopen、AFDX和CANaero等。

Demo版本的最根本限制是无法连接和操作硬件接口,其他限制还有如下几个方面。

1.测试(1)测试报告有Demo Version标识。(2)测试用例(Test Case)不得超过10个。(3)测试模块(Test Module)运行时长不得超过60s。(4)如果超过以上限制,测试会自动停止。

2.仿真(1)仿真节点不得超过4个(用户可以加载超过4个节点的工程文件,但无法运行)。(2)Demo版编辑的工程文件无法在pex或run版直接使用。

3.导入/导出

最多导入1000条报文,回放模块也是限制在1000条报文。

4.Add-ons(1)可以使用LabVIEW插件,但仿真节点不得超过4个。(2)可以使用MATLAB插件,但仿真节点不得超过4个。2.4.5 关于64bit版本CANoe

从CANoe 8.5 SP2开始,Vector向用户提供了64bit和32bit两种版本的安装程序。 64bit程序主要针对目前流行的64bit处理器和64bit操作系统。但32bit程序仍然可以在64bit的操作系统中正常使用,没有任何限制。64bit版本可以安装在64bit的Windows 7或更新的操作系统中。

从CANoe 11.0版本开始,Vector提供的CANoe默认版本为64bit。

使用64bit版本的CANoe,主要优势是可以使用更多的内存。32bit版本的CANoe,使用内存不得高于4GB,而64bit版本可以使用更多内存,具体取决于PC中安装的内存。下列情况可能需要消耗大量内存。(1)Trace或Graphic窗口未存盘的超长数据;(2)使用Scope option功能测量时;(3)一些CAPL分析程序。

CANoe的实时kernel仍然使用32bit程序,所以仿真和测试程序中的CAPL程序跟之前一样,最多使用大约3GB内存。

与32bit版本相比,64bit版本主要有以下限制。(1)旧版本Panel Editor创建的面板不再支持,但可以被自动转换和编辑。(2)不再支持Visual Basic 6.0(或更早的)创建的ActiveX面板。(3)存放License的USB dongle硬件不再被支持,需要更新成新硬件Keyman dongle。(4)由于64bit版本无法加载32bit DLL,一些扩展程序可能需要做一些调整,例如,用户自行开发的用于测量设定(Measurement Setup)的CAPL DLL。(5)某些授权选项(License Option)或用户定制的特殊安装包可能会受影响,需要联系Vector咨询。2.5 CANoe安装

Vector基本每年都会推出新版本的CANoe软件,目前最新版本为CANoe 11.0。为了满足用户的使用要求,Vector允许同一台PC上安装多个版本的CANoe,例如11.0版本、10.0版本等。下面将介绍系统配置的要求、硬件接口卡以及安装过程。2.5.1 系统配置要求

表2.1给出了安装CANoe 11.0(64bit)的PC硬件配置要求,对于台式计算机,如需选用USB以外的接口,可以参考2.5.2节的主要硬件接口选择。表2.1 PC硬件配置要求2.5.2 常见硬件接口卡

图2.6为CANoe常见硬件接口卡总览,图中清晰地列出了主要硬件产品的PC接口以及支持的总线类别,用户可以根据实际需求选择合适的硬件。对于只要支持CAN和LIN总线的用户,可以考虑选择VN1600系列。用户选择硬件时,需要考虑的参数有:支持的总线、PC接口、收发器和通道数量。对于收发器需要了解是固化的还是可选配的。对于硬件有特殊要求的用户,可以联系Vector销售人员进行咨询。图2.6 CANoe常见硬件接口卡总览2.5.3 安装过程

如果已经购买了正式版CANoe,用户可以得到一张DVD安装盘。下面介绍CANoe的安装过程。(1)使用安装光盘安装CANoe,系统会自动弹出CANoe安装主界面,也可以双击安装文件夹下的autorun.exe进入该界面,如图2.7所示。单击Install CANoe,将启动CANoe安装程序。图2.7 CANoe安装主界面(2)安装程序将开始搜索系统中CANoe的相关配置,如图2.8所示。图2.8 搜索系统中的相关设置(3)几秒钟以后,安装程序将显示目前系统中与CANoe 11.0的相关信息,以及根据当前信息推荐的安装设置。图2.9为系统初次安装CANoe 11.0的默认设置。图2.9 系统初次安装CANoe 11.0的默认设置(4)单击图2.9中的Next按钮,安装程序将列出安装内容及其对应的安装路径,如图2.10所示。如需修改,可以单击Back按钮返回。若用户确认无误,可以单击Install按钮,将开始逐项安装,直至安装完成,如图2.11所示。安装完成后,可以单击Exit按钮退出安装程序。图2.10 安装内容及其对应的安装路径图2.11 CANoe安装完成界面(5)需要说明的是,如果该台PC已经安装了CANoe 11.0版本,系统将提示已安装的软件和例程的版本信息,如图2.12所示。若用户需要保留已安装的CANoe版本,这里需要用户使用手动操作修改安装配置,相对复杂一些。对于初级用户,不建议同一操作系统中安装多个同一版本的CANoe软件。图2.12 安装程序发现已经安装了CANoe

CANoe允许用户在同一台PC中安装不同的版本,包括版本号相同的(例如CANoe 11.0 full、CANoe 11.0 run、CANoe 11.0 Demo,或者不同授权选项)和版本号不同的(例如CANoe 11.0 full、CANoe 10.0 run)。对于版本号相同的,读者在安装时需要选择不同的安装路径,否则之前的版本将会被覆盖。例如,系统中已安装正式版CANoe 11.0,若需要安装CANoe 11.0 Demo版本,为了保留正式版软件,可以将安装路径改为C:\Program Files\Vector CANoe 11.0 Demo,“开始”菜单入口改为Vector CANoe 11.0 Demo,如图2.13所示。

需要强调的是,如果一台PC安装了多个版本的CANoe, CANoe仿真工程文件(*.cfg文件)默认打开方式将是其中最新的那个版本。如果PC中最新版本的CANoe有多个,默认打开方式将是其中最后安装的那个最新版本。若需使用其他版本打开仿真工程,需要手动选择。(6)安装硬件驱动。对于使用CANoe正式版软件的用户,安装完毕以后,可以把相关硬件连接到计算机上,完成相关驱动的安装。硬件驱动的安装,可以通过配套的硬件驱动光盘来安装(也可以到Vector的官方网站下载),选择用户购买的硬件接口(Demo版的用户无须安装驱动程序)。图2.14给出了如何选择安装VN1600系列硬件的示例,只需选中相应的硬件,单击Install按钮即可。图2.13 CANoe安装路径选择图2.14 驱动程序安装2.6 CANoe常见的总线授权选项

根据项目不同的需求,用户在选购CANoe产品时可以选择不同的CANoe License Option(本书称为授权选项)。表2.2列出了CANoe主要授权选项的缩写与描述。表2.2 CANoe主要授权选项的缩写与描述

例如,CF_COE表示CANoe基本版本为full版本;LIN_COE表示CANoe带有LIN总线的授权选项支持。

当带有授权的相关硬件连接到PC时,可以通过下列方式查看已绑定的授权选项。

一种是在CANoe软件中,选择File→Options→General→License→Re-read Licenses命令查看,如图2.15所示。图2.15 CANoe中查看授权选项

也可以通过控制面板→Vector Hardware Config命令查看授权(详见2.7节)。2.7 CANoe的授权管理

CANoe目前提供以下三种管理授权的方式。(1)基于硬件授权(Hardware-based Licensing):单用户授权,将包含授权的硬件与PC相连时,软件才可以正常使用。(2)基于软件授权(Software-based Licensing):单用户授权,通过激活码(Activation ID)管理授权,可以进行激活与反激活的操作。(3)池授权(Pool Licensing):可以通过本地服务器来管理和分配用户授权。

目前国内用户主要采用第一种授权方式。连接好相关硬件,用户可以通过Hardware→Network Hardware→Driver打开Vector Hardware Config界面,通过License→Device view查看目前的授权,如图2.16所示。如果用户需要使用不同的硬件共享同一个授权,可以将授权移到Keyman中,图2.16中的就是这种情形(注:本书中出现的硬件序列号已经过处理,非真实的编号,仅供参考)。

对于正式版CANoe软件,运行时会检查PC相连的硬件或Keyman中的授权选项是否与运行的CANoe需要的授权选项有冲突或缺失,出现问题时会给出警告,如图2.17所示为未发现有效的授权。

一张正式版CANoe光盘,允许在无数台PC上安装,但要使用该正式版必须要连接带对应的授权选项的硬件或Keyman。

对于使用CANo 11.0版本(或更新的版本)的初学者,可以在到Vector官网上申请一个演示版的激活码(Activation Key),使用Vector License Clinet在线激活演示版授权。这样即使在无正式版授权的情况下,也可以使用演示版功能。图2.16 在Vector Hardware Config中查看授权选项

若用户使用的是2018年下半年以后购买的硬件或Keyman,可能在Vector Hardware Config(如图2.16所示)中无法查看到授权选项信息。对于这种情况。请使用Vector License Client查看相关信息。图2.17 未发现有效的授权2.8 CANoe的硬件配置

CANoe正常运行的前提条件是选择正确的授权选项,并配备正确的硬件和正确的硬件接口。作为普通用户,必须先知道如何检查硬件信息及其带有的授权选项。2.8.1 硬件信息查看

Windows操作系统的控制面板里,可以发现Vector Hardware,单击该项可以查看硬件信息,如图2.18所示。图2.18 硬件信息查询

图2.18中可以看到,有一个相连的VN5610硬件被检测出来,与它相连的有五个接口模块:两个通道为ETH BCM89811/BCM54810(以太网),两个通道为CAN 1051cap(高速CAN),一个通道为D/A IO口。

单击Application→CANoe可以查看CANoe的总线所使用的通道及分配情况,如图2.19所示。图2.19 查看CANoe总线通道的分配

单击License→Overview可以查看可用的授权信息。单击Device view可以查看各个硬件中绑定的授权,如图2.20所示。图2.20 查看硬件中绑定的授权信息

图2.20中可以看出,VN5610中含有带有CAN和Ethernet Options的Full CANoe License。2.8.2 硬件配置

只熟悉如何查看硬件信息和License信息还不够,用户还需要知道如何配置硬件。在CANoe界面中单击Hardware→Network Hardware命令,可以设置CAN总线接口的波特率,如图2.21所示。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载