十七、DoIP诊断通信 2 (专栏:从零开始搭建一个UDS诊断自动化测试CANoe工程)

专栏:从零开始搭建一个UDS诊断自动化测试CANoe工程



前言

本专栏将从零开始搭建一个用于UDS诊断服务的CANoe测试工程,基于CAN/CANFD/ETH总线,可以手动测试,也可自动化测试,使用XML测试节点实现。目前使用cdd及diva可以快速生成uds诊断的测试用例及工程,任有部分用例无法涉及或配置比较复杂。本工程主要实现功能如下:

  • CAN/CANFD/ETH可以配置选择。
  • 诊断ID可通过面板配置,工程运行过程也可以修改,cdd的诊断id是固定的。
  • 通过osek_tp.dll实现诊断服务的接收和发送。
  • 物理寻址,功能寻址可以配置。
  • 实现27服务安全解锁的框架,具体算法需要根据不同厂商自己去实现。虽然制作dll文件同样可以(按照CANoe模板制作seed&&key.dll),但是针对一些mask如果要修改,在CAPL里实现更方便。
  • 实现DTC的解析,19服务读出的诊断报文,解析这条报文中的dtc及dtc的状态,二进制同样打印出来。
  • 设计一些常用的诊断服务按钮,包括10服务会话切换,27服务解锁,19服务读dtc,14服务清dtc等。
  • 实现XML测试节点的UDS诊断服务测试框架,不一定实现所有用例,可基于此二次开发。

bootloader功能主要是36服务的实现,还不确定要不要实现及介绍(确定介绍

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
您好!对于DOIP(Diagnostic Over Internet Protocol)诊断的自动化脚本,我可以为您提供一些指导。DOIP是一种用于诊断车辆电子系统的协议,它允许通过互联网进行诊断和编程。 要编写一个DOIP诊断自动化脚本,您可以考虑以下步骤: 1. 确定您要使用的编程语言和相关库。常见的选择包括Python、Java、C++等。您可能需要使用适当的网络库来处理DOIP通信。 2. 了解DOIP协议的工作原理。这包括了解DOIP消息的结构、使用的TCP/IP端口和网络配置等。您可以参考相关的文档和规范来了解细节。 3. 建立与车辆电子系统的连接。您需要使用SOCKET或类似的方法与车辆建立TCP/IP连接。确保您具备与车辆通信所需的权限和许可证。 4. 构建DOIP消息。根据需求,您可以构建不同类型的DOIP消息,如请求诊断会话、发送诊断命令、接收和解析诊断响应等。请参考相关文档以了解每个消息类型的格式和字段。 5. 处理诊断响应。您需要解析和处理从车辆接收到的诊断响应。这可能涉及到解码响应中的数据、错误处理和生成相应的输出。 6. 实现自动化逻辑。根据您的需求,您可以编写逻辑来执行自动化测试诊断流程或其他操作。这可能涉及到发送多个命令和接收多个响应,以模拟不同的诊断场景。 7. 测试和调试。在完成脚本编写后,进行充分的测试和调试是很重要的。确保脚本能够良好地处理各种情况和异常情况,并具备合理的容错机制。 请注意,DOIP诊断脚本的实现可能会受到您所使用的诊断设备和车辆特定的限制和要求的影响。因此,在编写脚本之前,建议您详细了解相关文档和规范,并与车辆制造商或设备供应商进行沟通以获取更多支持和指导。 希望以上信息能对您有所帮助!如果您有任何其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天赐好车

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值