ubuntu18安装autoware

git报错:fatal: Authentication failed for xxxxx的解决办法

  返回  

ATS-Communication on CAN bus(DBC数据库搭建)

2021/8/21 14:29:59 浏览:

前言

该文章主要针对Autosar的ATS系列文档的Communication on CAN bus进行解读及DBC数据库的创建


ATS-Communication on CAN bus

  • 前言
  • 1.ATS-Communication on CAN bus文档解读
    • 1.1 测试目标
    • 1.2 测试架构
    • 1.3 测试配置
      • 1.3.1 ECUC 系统描述文件配置
    • 1.4 根据测试用例编辑dbc文件
      • 1.4.1 ATS_COMCAN_00208需求分析
      • 1.4.2 DBC信号编辑
        • 1.4.2.1 DBC基本功能编辑
        • 1.4.2.1 信号添加
      • 1.4.2.2 Message添加
  • 结束语

1.ATS-Communication on CAN bus文档解读

1.1 测试目标

本测试用于验证依赖CAN总线通信功能所有组件的正确行为。
主要包含一下几个部分
1.Data Transfer(数据传输)
2.Large Data Type (大数据类型处理)
3. CAN Bus Off handing(CAN Bus Off 行为处理)
4. LdCom Large Data Transfer(大数据传输)

本文档针对数据传输来写。

1.2 测试架构

每个测试case都有一个基本的框架,如下图所示,表示Data Transfer的测试框架及设计的相关模块。
在这里插入图片描述
后续我们主要通过CAN盒(Test Bench)来实现对SUT的控制(TCP)。

1.3 测试配置

1.3.1 ECUC 系统描述文件配置

目前我只使用dbc文件来作为系统描述文件,下图是本测试用例的SWC相关结构图,大致有以下几个
1.TestBench:我们使用can盒,通过发送和接收两个port来实现对测试用例的控制和结果输出;
2.SUT:一个Upper Tester的SWC,他与TestBench进行数据通信Port以及一个与BswMode模块的Mode Port来控制模式切换。
在这里插入图片描述
需要定义一个名字叫IF_AT_SwC_ActionsBswM的模式切换接口,来控制IpduGroup的相关动作。
在这里插入图片描述
下图是一些数据类型及结构体的定义,我们后面在设计SWC时会用到。
在这里插入图片描述
接下下来就是现在我们需要定义的一些CAN信号了,如下图所示,我们根据这个来编辑dbc文件里面包含了哪些信号以及每个信号是怎么组成的。后面的每个测试用例都用到了其中一个CAN ID。我们根据后面的测试用例来编辑每个ID所需要的功能。
在这里插入图片描述

1.4 根据测试用例编辑dbc文件

1.4.1 ATS_COMCAN_00208需求分析

这个测试用例主要目的是实现周期信号的传输(Signal on Time Base frame (PERIODIC)),
我们直接看参数配置需求,如下图所示,需要:
1.CAN ID=0x208需要通过CAN总线传输;
2.周期发送timeOffset>0, timePeriod > 0并且不同于timeOffset
3.ClearUpdateBit=Transmit
4.信号Map到Sg1
5.updateIndicationBitPosition需要配置
6.初始值需要配置
7.无效值也需要配置
根据以上信息我们就可以定义dbc文件了。
在这里插入图片描述

1.4.2 DBC信号编辑

1.4.2.1 DBC基本功能编辑

1.根据文档我们需要用到以下属性,需要注意Manufacturer我们需要设置为Vector,因为我们用的Vector的配置工具。
在这里插入图片描述
2.创建Node节点,我们随便创建一个Node节点以及ECU,ILUsed需要设为yes.
在这里插入图片描述

1.4.2.1 信号添加

1.添加AT_208_Sg1信号,因为需要updateIndicationBitPosition,所以我们这个长度设置为7bit,第8bit用来作为更新位,并且是周期信号,所以选择属性如下所示,我们timePeriod=100ms,初始值设置0.
在这里插入图片描述
2.关于无效值的设置步骤如下
a.添加一个无效之的ValueTable,并创建一个SNA的描述,他的值就是我们需要设置的无效值,我们设置为0xF
在这里插入图片描述
b.在AT_208_Sg1信号里的ValueTable选择该值就可以了。
在这里插入图片描述
3.updateIndicationBitPosition更新位的设置
我们需要创建一个信号名一样的信号,后面加上_UB,这个信号就设为AT_208_Sg1_UB.他需要设置Signed类型,并且长度为1bit,如下图所示:
在这里插入图片描述
属性设置如下,GenSigType要设置为NosigSendType。
在这里插入图片描述

1.4.2.2 Message添加

信号添加完成后,我们需要添加Message了,我们添加一个名字为AT_208_Msg的message。然后把编辑好的信号添加到消息里,CAN ID=0x208,长度为1Byte。
在这里插入图片描述
根据上面的配置需求分析,需要周期发送,所以我们的属性设置如下图所示:
timeOffset=50ms, timePeriod = 100ms,最后添加到ECU的发送消息里面就完成了。
在这里插入图片描述

结束语


后面其他的消息编辑也与此类似,我就不详细介绍了,里面最主要是关于无效值和更新位的配置比较特别。

联系我们

如果您对我们的服务有兴趣,请及时和我们联系!

服务热线:18288888888
座机:18288888888
传真:
邮箱:888888@qq.com
地址:郑州市文化路红专路93号