CANoe作为专业的系统级总线网络开发和测试工具被众多整车厂和供应商的系统设计师、开发工程师和测试工程师所广泛使用,由于市场对CANoe使用需求的多元化和不确定性,CANoe对外提供了通用API来供第三方应用集成来解决在人机交互过程中的各种问题。比如:在不同环境下怎么运行多个CANoe客户端,在执行长时间的测试任务时,怎么对测试过程实现监听和控制,以及在测试过程中怎么实时获取测试数据,测试任务完成之后怎么归类测试数据、生成多元项目报告等。

北汇团队基于丰富的汽车电子测试项目经验,提取了工程师在CANoe使用过程中的各阶段需求,并结合信息化技术手段,提供了一套CANoe集成解决方案,作为CANoe交互的代理引擎,用于监控管理CANoe工程,采集、仿真CANoe报文数据,同时完成测试数据、测试日志解析和报告定制等功能。

CANoe远程调用

在自动化测试阶段,存在需要在多个客户端执行CANoe工程的业务场景,那么如何快速的将工程部署执行,以及工程有变更时如何在远程客户端重新测试执行是我们需要解决的问题,目前CANoe代理提供了工程执行服务,通过接收服务端的执行请求,使得CANoe可以执行指定工程。

服务端通过监听客户端配置信息在服务端注册代理:

用户将配置好的工程文件打包,上传到服务器,在服务器端统一管理。

用户可以将工程分配给客户端,并且将工程下发给客户端执行。 客户端在执行过程中,将执行步骤信息实时上传给服务端。用户在服务端可以查看各个CANoe客户端在执行什么工程,执行进度如何,也可中断CANoe客户端执行的工程下发新的工程给客户端执行。

CANoe实时监听

在测试过程中,工程师比较关注CANoe工程是否在运行,工程执行过程中重要参数是否超限等信息,CANoe代理可以实现把运行状态及重要数据组成结构化的心跳数据,实时推送到消息队列,提供给服务端应用消费,并将最终数据推送给Web页面、移动端等。

为了更加友好与服务端交互,我们使用Json这种轻量级的数据交换格式。易于人阅读和编写,同时也易于机器解析和生成。我们将心跳数据定义为以下格式,也可根据实际业务增减内容。

{"agentNo":"agent01","host":"192.168.10.153","servicePort":"8000","timeTicks":637816667000853169,"status":"START","waitingTime":"101","cylinderTemperature":"189","assemblyTemperature":"88"}

每个客户端定时上报自己的心跳数据,就可实时监控每个代理运行情况和重要参数实时值,从而达到监控的目的。

同时可以查看参数的历史数值及变化趋势。

报文读取和仿真

无论是开发还是测试过程中,很多时候用户需要读取总线上数据,在总线上仿真一些数据来验证、建模或者分析问题。目前获取CANoe报文的方式有两种,一是通过查看Trace窗口,二是录制报文后使用CANoe打开分析。第三方应用很难直接获取和处理报文数据,我们通过代理与CANoe的交互,使用标准的RestFul框架提供了常用的数据读取接口供外部或远程应用调用。CANoe仿真可以通过CAPL脚本或者CANoe本地的Matlab/Simulink接口来完成。但工程师经常不局限于本地仿真,这样既繁琐也不可控。我们通过中央服务器统一去控制仿真就可解决这一难题,同时代理提供了可供外部调用的仿真接口。

在做数据分析时,服务端需要一段时间的数据,而CANoe总线上数据的节拍是毫秒级的,如果通过读取方式,就存在丢帧的情况,这里我们引入了消息中间件。在报文产生时,触发ON事件,实时将报文推送到消息中间件,这样我们服务端可以通过消费中间件通道的数据,进行分析展示。

以太网PDU数据的读取和仿真也采用相同结构和方式

定制化测试报告

CANoe工程执行完成后可以生成测试报告,默认的测试报告格式是.vtestreport,需要CANoe report viewer工具打开,另外还有.xml格式的测试报告,属于结构化文本格式。不管是哪种方式,用户很难快速的获取到有效信息,CANoe代理可通过解析原始报告文件,并根据实际业务需求生成定制化的测试分析报告,实现了数据获取和数据分析的一体化,用户可以直观看到测试结果和统计分析,节省了整理数据的成本,提高了用户的工作效率。

更多功能,敬请期待

• 加载DBC、ARXML等数据库,通过标准Web Service接口进行CANoe工程中Frames、PDUs、Signals等数据的获取,实现云端实时通讯。

• DBC、ARXML、ODX等文件加密,保证数据安全的同时进行测试功能释放。

• CANoe工程解析,进行测试用例、系统变量等读取,通过权限控制以及工程预处理,实现测试范围界定。

• CANoe刷写和诊断扩展,基于可视化操作界面实现刷写、诊断任务管理、TSP云端认证、集成等。

北汇信息通过CANoe集成解决方案,搭配测试管理平台,实现测试项目的集中管理,测试工作的高效执行,本文希望能够在这方面起到抛砖引玉的作用,和我们的客户一起搭建符合自身发展的自动化测试平台,后续我们将带来基于此文配合Jenkins如何实现CI/CT,敬请关注!

作者:北汇信息——Ricky

CANoe集成解决方案相关推荐

  1. 飞康FreeStor推出OpenStack Cinder集成解决方案

    10月27日至30日, OpenStack Summit在日本东京盛大召开,大会云集了来自世界各地的OpenStac云软件的开发者.使用者以及管理者.在软件定义存储解决方案领域有15年创新经验的美国飞 ...

  2. 构建一个基本的前端自动化开发环境 —— 基于 Gulp 的前端集成解决方案(四)

    构建一个基本的前端自动化开发环境 -- 基于 Gulp 的前端集成解决方案(四) 参考文章: (1)构建一个基本的前端自动化开发环境 -- 基于 Gulp 的前端集成解决方案(四) (2)https: ...

  3. FIS前端集成解决方案

    FIS前端集成解决方案-文档结构什么是FIS部署FISFIS基本使用模块定义加载方式调用Tangram 2.0FIS开发实例 --附件下载-- 什么是FIS FIS提供了一套贯穿开发流程的开发体系和集 ...

  4. 专访厦门第二医院影像科主任郭岗:基于 IBM 推出的 AI 集成解决方案,如何给医生减负增效?...

    7月20日,国务院发布关于人工智能的发展规划,其中就要求发展"智能医疗".理想中的智慧医疗场景是:病人进入医院,在大厅里可以通过机器人来咨询要挂哪个科:医生在跟病人的问诊过程中,系 ...

  5. element ui 二级菜单_基于avue和element-ui集成解决方案avue-cli

    avue-cli是一款基于avue和element-ui完全开源.免费的企业后端产品前端集成解决方案,采用最新的前端技术栈,已经准备好了大部分的项目准备工作,你可以快速进行二次开发 功能 全局错误日志 ...

  6. 前端集成解决方案(转)

    前端集成解决方案(webpack.gulp):https://blog.csdn.net/linyeban/article/details/54319048

  7. 后台集成解决方案 avue

    简介 avue 是一个后台集成解决方案支持SSR(服务端渲染)和SPA(单例页面),它基于 Vue.js 和 element.它使用了最新的前端技术栈,权限验证,第三方网站嵌套等功能,很多功能还在开发 ...

  8. 常见的软件系统集成方式和Smartbi集成解决方案

    企业在信息化的过程中会根据自身的需求构建各种软件系统,如:网站.OA.CRM.ERP.BI等,这些系统一般是逐步建设和投入使用的,构建的时间.所采用的技术等都不一样,很难做到完全由一家软件厂商提供.如 ...

  9. Teamcenter 与各种工具软件的集成解决方案

    最近研究出了一种Teamcenter客户端,包括两层和四层客户端与本地软件之间的无缝集成解决方案,常见的Autocad, SW, SD,NX等工具软件都可以使用该解决方案,该解决方案可以实现在TC客户 ...

最新文章

  1. 烦神的斐波那契洛谷-1306-斐波那契公约数
  2. 做个中国清官网,有人感兴趣吗
  3. hdu 5631 Rikka with Graph(图)
  4. 苹果紧急修复已遭利用的两个0day
  5. 相对寻址问题求解总结
  6. 详解文本分类之DeepCNN的理论与实践
  7. 单片机数码管动态显示时钟C语言,8位数码管显示电子时钟c51单片机程序
  8. 换个角度理解Android的AIDL原理
  9. xcode9 IphoneX 调试
  10. SUMMARIZE函数解决之前的总计错误
  11. 图表嵌入到数据表格下方_在excel图表下方添加数据表 excel图表添加数据表
  12. Android:禁止APP录屏和截屏
  13. matplotlib 色带_30多种高质量的色带字体可增强您的设计
  14. 小班中班,随机10以内减法练习题,A4纸可直接打印
  15. 职场选择,也许该考虑一下“增长黑客”?
  16. Expecting a string, date or number here, Expression ...Freemarker布尔值转换异常
  17. 探讨降低城市污水厂电气能耗的对策研究
  18. 【元胞自动机】基于元胞自动机实现多车道不同间距交通流模型附Matlab源码
  19. disconf连接mysql_Disconf的安装初体验
  20. CSAPP 第2章 信息表示和处理课后作业

热门文章

  1. 树莓派+内网穿透实现远程监控
  2. u盘中毒了怎么恢复文件?一分钟了解恢复方法
  3. IDEA绝对好用的十大插件,不接受反驳
  4. 结合运动流的时间先验在微创手术视频中的器械分割
  5. python概率编程_TensorFlow新功能:TensorFlow Probability概率编程工具箱介绍
  6. Ubuntu下安装Nodejs, Nide
  7. 通过opencv标记图片以及写入Excel小方法
  8. 深拷⻉浅拷⻉的区别?什么是深拷⻉浅拷⻉
  9. 闪迪u盘不能识别好办法_SanDisk U盘无法识别解决
  10. 视频教程-C语言核心编程-C/C++