本方案针对总线分析和测试,主要有两套方案:
一是使用没有英特佩斯的Vehicle Spy软件和neo VI Fire/RED硬件,这个方案的软件Vehicle Spy的功能非常丰富,如网络监控、节点仿真和模拟、数据分析与采集、K线/UDS /GM LAN诊断、CCP/XCP标定、自动测试等功能,支持J1939,支持ODX、dbc、A2L等;硬件Fire具有6路CAN、4路LIN、4路K线,RED有2路CAN、2路LIN、2路K线,这两个硬件可选。
二是使用德国PEAK的PCAN-Explorer5软件和PCAN-USB硬件,这个方案的软件和硬件相对来说都比较简单,但是价格也低很多。PCAN-Explorer5软件主要功能有网络监控、dbc文件的编写和导入、信号图显示、仪表板显示、VB脚本等,也支持J1939;硬件PCAN-USB比较简单,只有1路高速CAN。
以下是这两套方案的详细介绍。
2.PEAK工具
2.1软件PCAN-Explorer5功能介绍
PCAN - Explorer是一个监测CAN网络传输数据的通用工具。为了获得一个简单并且清晰的各个信息分布,它们可以通过常说的symbols对象来区分。它嵌入了VB脚本,使您可以创建宏以自动调度复杂任务。它还集成了数据记录仪的功能模块,因此在总线上传输的数据可以通过这个记录仪来记录、分析和保存。PCAN-Explorer 是作为一个自动化服务器来实现的,因而可以通过编写脚本来远程控制。
2.1.1绘图仪插件
绘图仪可以记录和以图形表示任何数量的信号序列。信号源可以是传入的数据,发出的CAN报文,也可以是虚拟变量或者是从宏计算得出的结果。
2.1.2仪表板插件
仪器面板插件允许使用不同的显示仪器对数字和模拟信号进行图形化表达。集成的进入选项卡和控制器意味着信号可以从CAN总线上产生,这样就使得对复杂CAN应用进行简单仿真成为可能。
2.1.3 J1939插件
SAE J1939网络协议描述了工程汽车上用于诊断数据和控制信息传输的CAN总线通信。它包含了采用29-位CAN-ID(CAN 2.0B扩展帧)的完整网络定义。 用于PCAN-Explorer 5的J1939插件支持所有根据标准参数组生成的定义,并提供了一种简单的方法来访问这些参数。同时,还提供了一个完整的定义和参数数据库。
2.1.4 CANdb Import插件
在汽车工业中,CAN dbc格式是描述CAN总线信息的一种常见数据格式。
CANdb Import支持CANdb文件的导入。对于那些不愿意手动转录自身数据库到PCAN-Explorer对象文件格式的用户,这是一个非常有用的功能。
另外集成了一个Symbol Editor工具软件,用于创建和编辑dbc文件。
2.2硬件PCAN-USB功能介绍
PCAN-USB即CAN转USB接口,它使接入CAN网络非常容易。它小巧紧凑的塑料外壳特别适合于随身携带。
PCAN-USB有两种版本:光电解耦版本和非光电解耦版本。光电解耦版本确保了PC和CAN端之间电隔离达到500 V。
符合两种CAN规范即2.0A (11-bit ID) 和2.0B (29-bit ID),NXP SJA1000 CAN控制器, 16 MHz 时钟频率NXP PCA82C251 CAN收发器。
配套的软件包括接口的驱动程序、CAN监视器PCAN-View和编程接口PCAN-Basic。
1.英特佩斯工具
1.1软件Vehicle Spy功能介绍
Vehicle Spy支持所有英特佩斯的硬件产品,可以实现网络监控,数据解码,数据获取/记录,节点仿真,自动测试, 通过点击按钮运行诊断服务等功能。
Vehicle Spy是一款集成了诊断、节点/ECU仿真、数据获取、自动测试和车内通信网络监控等功能的工具,设计着眼于用户使用时的高效性和便捷性,同时支持CAN、LIN、Kline、J1850VPW、J1850PWM、J1708、ISO9141、GMLAN、Keyword2000等协议。
1.1.1应用
Vehicle Spy's可能的应用非常广泛,以下只列举一些普遍的应用:
总线监控 — 无论您使用的是CAN、LIN或其他支持的网络,用Vehicle Spy的总线监控功能,您可以同时实时查看,保存,分析来自各种不同网络的报文通讯。支持汽车工业的标准.DBC, .LDF数据库文件。 同时也支持其他诸如.UEF等用户自定义的格式。
模拟和仿真 — ECU或网络节点的模拟和仿真一直是Vehicle Spy强大的特性,您可以组合图形面板,控制脚本来建立自动化的测试任务。同时您也可以通过录制—回放来进行网络的模拟和仿真。
数据获取和记录 —实时记录信号和报文。并提供了强大的数据分析工具。 还可实现脱离PC的离线独立记录。
诊断 — 无论您使用J1939,GMLAN,1SO14229诊断协议还是您自定义的诊断协议,您都可以创建和执行自定义的自动化脚本,诊断任务,创建图形面板来执行所有的诊断工作。 并且,您编写的自动化诊断脚本可以下载到我们的实时嵌入式硬件里,脱离PC离线独立运行,作为手持式的诊断设备来使用。支持汽车工业标准,包括了ASAP2和ODX格式,提供免费的ODX viewer。
标定或刷写内存 — Vehicle Spy包含了您通过CCP协议更改ECU内存所需的所有功能,包括ASAP2(A2L)文件的支持,内存的读写,and memory各种类型如Values, Curves, and Maps的读写控。Vehicle Spy同时提供ASAP2文件的编辑和生成程序ASAP2 file creator!
1.1.2视图
Vehicle Spy的功能是用视图的方式来组织的。每个Vehicle Spy中的视图都有自己的窗体,窗体可以悬浮,停靠或者叠加,非常方便工程师使用。这种方式给您提供了最大限度的组织您自己的视图。特别是在执行多重任务的时候非常有效。
报文视图 — 总线上所有的报文都显示在视图里,并且用高亮方式和过滤器方式来显示不同的属性。
报文编辑、数据库编辑视图 — Vehicle Spy包含有报文、数据库编辑器,可以创建,修改报文。不需要其他的工具,您就可以在线做报文的改变。
发送报文面板 — 可以发送任意类型的报文。只许要按一个按钮就能控制手动发送或者以特定循环周期发送。还可以建立表达式来控制和实时改变发送的报文的内容。
图形面板 — 可以建立自定义的界面显示总线信息。也可以在图形面板上控制报文的发送,和自动化脚本的交互,或者与Vehicle Spy中其他的组建配合。
信号视图 — 图形化方式查看包括CAN、LIN以及其他类型的网络信号。
信号列表 — 用列表的方式查看所选的信号。
数据分析视图 — 可分析CAN、LIN以及其他类型的网络通讯的数据。
MEP设置 — MEP设置,可选择ASAP2建立相应CCP标定任务。
Function Blocks — 单步执行的脚本语言,工程师不需要有任何编程语言的基础也能完成自动化脚本的编写。所编写的这些脚本,还可以下载到neoVI FIRE或neoVI RED硬件中,实现离线实时的单机运行。
Java编程 — 对熟悉编程语言的工程师,内嵌的JAVA编程环境,可完成更为复杂的自动化任务。
诊断设置 — 诊断设置建立和执行诊断任务,并解析、存储诊断结果。
1.1.3高级功能
? ECU /节点仿真模拟
通过Vehicle Spy的ECU仿真模拟功能,您只许点击几下鼠标,甚至不需要任何脚本,就可以建立整个网络的模拟和仿真:
1、加载 DBC (数据库文件),或者输入ECU的相关信息。
2、选择您将仿真的 ECU /节点。
3、选择您将仿真的 ECU的相关报文。
4、设置每个信号的仿真、变化形式。可以将其绑定到一个函数,或者与程序脚本,或者外部程序,或者预先录制的回放数据。
? 自动化脚本
Vehicle Spy提供两种类型的自动化脚本的编写方式,您可以根据自己的情况来选择。两种方式都能完成您的任务,只是创建的方式有些不一样。
Function Blocks — 单步执行的脚本语言,工程师不需要有任何编程语言的基础也能完成自动化脚本的编写。只许从列表中选择需要的语句。面向没有程序语言基础的工程师。功能强大,简单易学。所编写的这些脚本,还可以下载到neoVI FIRE或neoVI RED硬件中,实现离线实时的脱离PC的单机运行。
Java — 对熟悉编程语言的工程师,内嵌的JAVA编程环境,可完成更为复杂的自动化任务。
? CCP标定
可以测量,记录ECU内存情况,可以在线更改ECU内存中的参数。Vehicle Spy支持ASAM (ASAP2) VALUES, CURVES,和MAPS类型的标定。还可导入和导出标定好的值。
用可离线记录数据的硬件FIRE或RED,你可以实现离线式的CCP标定数据记录。所记录的数据不仅可以包括常规的CAN通讯,还可以同时记录CCP标定的数据。 所有的数据记录都含有精确的时间戳,可以在回放和分析中应用。
? J1939特性
同一份投入,包含J1939高层协议特性的支持:
Address Manager — J1939 Address Manager, 可查看所有的J1939总线上的claimed,同时也可以创建自己的地址。
DTC Monitor / Simulator — J1939 DTC Monitor / Simulator,可查看J1939总线上所有的 DM1报文。同时也可以以模拟多个 ECU的DTCs。只需要输入 ECU地址数据以ECU的 SPN。 Vehicle Spy自动处理所有J1939通讯中的事务,包括long messages。
J1939 BAM and CTS/RTS Messages — 无需额外的脚本,只需要用Database Editor (DBC editor)建立J1939报文。Vehicle Spy就可以发送和接收J1939传输层的报文。
? 外部编程 API (DLL)
Vehicle Spy提供TCP/IP方式的服务器/客户端模式,让第三方程序远程控制Vehicle Spy的运行,共享Vehicle Spy的数据。
Vehicle Spy提供外部编程接口, 方便对硬件进行二次开发。提供LabView, C++, C#, Visual Basic, Matlab或其他Windows程序。
1.2硬件neoVI Fire功能介绍
? neoVI FIRE : 6x CAN, 4x LIN
当前车辆内部的CAN和LIN网络数量越来越多,neoVI FIRE通过在单一硬件中提供六个CAN通道和四个LIN通道来顺应该发展趋势。FIRE的所有通道可以同时运行,并具有在硬件中加盖时间戳的功能,USB接口的完全隔离设计,保证硬件在与PC通信时不会对PC造成任何损害。
? 单机模式下采集数据、运行脚本和实现仿真
除了和PC连接通信外,FIRE还支持单机模式,在此模式下,可以运行实时脚本,记录数据到SD卡,仿真ECU和网关。基于上述功能,FIRE通过运行脚本并利用SD卡中的数据,在离线模式下就能进行ECU刷新工作。
? 硬件中的实时任务执行
neoVI FIRE 包含了一个实时脚本引擎,用于实现实时通信,例如,用户可以创建应用脚本并将其载入硬件中,实现微秒级的控制和测量。 通过一个被称为“hardware acceleration”的新功能,Vehicle Spy 就可以将需要实时执行的任务如消息周期发送,消息回放或脚本载入到FIRE中执行。
? 数据采集
neoVI FIRE可以将数据采集到可移动SD卡中,该采集功能应用实时 FAT32文件存储系统。硬件中包含的实时时钟,能为所有消息加盖时间戳,FIRE的电源管理系统可以基于网络活动自动切换到睡眠或唤醒状态。
? 通用I/O端口及其扩展
neoVI FIRE有六个通用I/O端口,每个端口可被编程用于数字输入和输出,其中四个还可用于模拟输入,一个可产生PWM信号,另一个可以测量PWM信号。所有的 I/O 端口都可以被主机应用或嵌入式实时脚本测量和控制,例如,I/O端口的网络消息通信时间可以通过脚本非常精确地进行测量。