首页 > 其他分享 >新功能发布 | TSMaster重大更新,一文了解信号映射操作流程

新功能发布 | TSMaster重大更新,一文了解信号映射操作流程

时间:2022-10-24 14:31:25浏览次数:394  
标签:TSMaster 一文 映射 系统 点击 信号 表达式 变量

前言

今天介绍TSMaster新功能—信号映射。这个功能在旧版本里,只能实现从CAN信号到系统变量的映射,软件更新以后可以支持系统变量反向映射到信号,甚至可以实现通过表达方式进行复杂的映射。

下面一起来看看信号映射功能具体的操作流程吧~

一、信号映射简介

映射就是CAN信号和系统变量的相互映射。

首先拖入一个dbc,这个dbc来自示例工程的数据库文件夹的第一个文件,随后用rbs引擎仿真一下engine节点,然后我们启动仿真,随即在trace窗口就可以看到仿真报文。

新功能发布 | TSMaster重大更新,一文了解信号映射操作流程_右键

1、建立系统变量

如果希望建立一个系统变量来跟踪发动机转速信号,可以打开信号映射管理器。首先需要激活信号映射引擎,点击左上角,在数据库列表中输入engspeed,过滤出这个信号。

新功能发布 | TSMaster重大更新,一文了解信号映射操作流程_系统变量_02

点击右键,自动创建信号的映射,这样系统首先就会创建一个同名的系统变量。

2、与CAN信号关联

打开图形窗口,将这个CAN信号和我们创建的系统变量同时拖入,就得到了两根曲线,设置一下Y轴的显示模式,然后再集体设置他们的显示范围,当前的映射类型是CAN信号到系统变量。

新功能发布 | TSMaster重大更新,一文了解信号映射操作流程_右键_03

3、修改CAN信号

我们尝试修改发送的CAN信号,来观察系统变量的值会不会进行跟踪。打开总线仿真界面,首先找到发动机的转速,将其修改为1,000,那么系统变量也跟随到1,000;再修改为2,000,最后是3,000,可以看到图形窗口中的系统变量实时跟踪了CAN信号。

新功能发布 | TSMaster重大更新,一文了解信号映射操作流程_系统变量_04

4、修改系统变量

接下来我们试一试反向映射,也就是修改系统变量,使发出的CAN信号来跟随。

打开信号映射管理器,选中刚才的映射条目,点击映射方向按钮,然后选择最后一个,也就是系统变量映射到CAN信号,点击确定。

新功能发布 | TSMaster重大更新,一文了解信号映射操作流程_系统变量_05

为了验证这个功能,我们增加一个信号激励窗口,以对同名的系统变量产生激励。首先,添加这个发动机转速的系统变量到这个列表中,然后我们将其设置为正弦波激励,点击配置,将其幅值改为1,000,然后启动激励,随即我们可以看到发出的CAN信号,同样自动跟随了系统变量的变化。

新功能发布 | TSMaster重大更新,一文了解信号映射操作流程_数据库_06

二、正确使用表达式

我们如何使用表达式来映射具有数学关系的信号,甚至是带逻辑的信号呢?

例如我们可以构造一个信号:它等于发动机转速与发动机温度的乘积加123。

首先打开映射管理器,在空白处点击右键,添加系统变量,然后在选择变量的界面中再点击添加变量,将这个新变量设置为new,它的类型可以设置为double,然后我们选中这个新添的变量,点击确定。然后再在我们的列表中选中刚添加进来的这个信号,由于没有设置他的属性,因此这个信号暂时是无效的。

1、设置表达式映射

点击上方工具栏的按钮,会看到左侧的源信号变成了一个表格,可以在表格里编辑表格式,同时,表格中针对表达式的每一个自变量,分别关联其他的变量,那么自变量是以x来开头,后面跟数字来表示。例如我们可以设定x1表示发动机转速,x2表示发动机温度,那么发动机转速和温度的乘积加上123,表达式就可以写成x1*x2+123。

新功能发布 | TSMaster重大更新,一文了解信号映射操作流程_右键_07

写好之后按回车,以确认表达式,随后需要点击表达式右侧的加减号来构造相同的自变量。在这里有x1和x2与表达式中的自变量进行对应。

新功能发布 | TSMaster重大更新,一文了解信号映射操作流程_系统变量_08

接着,将x1与发动机转速的系统变量关联,点击右侧的箭头,选择系统变量,接着选中发动机转速的变量,点击确定。然后将x2与发动机温度的CAN信号关联,也是一样点击右侧的箭头,选择CAN信号。

新功能发布 | TSMaster重大更新,一文了解信号映射操作流程_系统变量_09

接着选中发动机的温度,点击确定之后,我们就实现了表达式的设计,点击右上角的检查映射,就会提示映射合法。

2、实时信号曲线

接下来将这个变量添加到图形窗口一探究竟,可以看到,这个值固定是123,因为当前的发动机的温度是0,我们试着来到rbs窗口中,将温度改为5度、10度,以及20度,就可以看到经过表达式实时计算的信号曲线。

新功能发布 | TSMaster重大更新,一文了解信号映射操作流程_数据库_10

3、表达式映射的目标变量

回到rbs窗口,假设我们需要手动发送abs data这帧报文,并且让acceleration force 的值等于之前表达式的new这个变量的结果。那么首先可以取消这个报文的勾选,将其脱离rbs的引擎的掌控。

新功能发布 | TSMaster重大更新,一文了解信号映射操作流程_系统变量_11

随后,我们打开一个报文发送窗口,添加abs data这帧报文,展开这帧报文,将 acceleration force的信号生成器设置为系统变量,点击配置,并将系统变量名称设置为new,点击应用。

新功能发布 | TSMaster重大更新,一文了解信号映射操作流程_右键_12

随后我们启动信号生成器,然后再在图形窗口中添加这个CAN信号,然后我们要启动报文的发送,那么所发出的CAN信号的acceleration force的值就会等于我们的系统变量的值了。只不过这个值的范围的下限被-10000给限制,所以这个信号有了一些变形。

新功能发布 | TSMaster重大更新,一文了解信号映射操作流程_系统变量_13

以上就是我们本章节为大家介绍的TSMaster的信号映射功能,让我么一起期待TSMaster更多的新功能。

标签:TSMaster,一文,映射,系统,点击,信号,表达式,变量
From: https://blog.51cto.com/u_15714299/5789694

相关文章

  • 【JS】501- 一文学会判断变量是否为数组
    日常开发中,我们经常遇到这种情况,需要我们判断变量是否是一个数组类型。那么今天我把常用的判断变量是否是数组类型的方法,整理在这里:一、常用方法1.Object.prototype.toStri......
  • 一文梳理vue面试题知识点
    Vue3.0和2.0的响应式原理区别Vue3.x改用Proxy替代Object.defineProperty。因为Proxy可以直接监听对象和数组的变化,并且有多达13种拦截方法。相关代码如下imp......
  • 一文详解高并发大流量指标
     在很多阿里双11高并发场景经常提到QPS、TPS、RT、吞吐量等指标,这些高并发高性能指标都是什么含义?如何来计算?下面我一一详解系统吞度量 系统吞吐量指的是系统在......
  • 天线阵列fft角度映射
    相位差:Δφ=2πdsin(θ)/λ=2π/N其中,d是天线间距,θ是入射角,λ是载频波长λ=f0/c,N是沿着天线阵列维度(例如:86根天线)的fft采样点数。将角度维fft映射到[0,2π]的相位,得到......
  • 一文打通Lambda 表达式和函数式接口
    Lambda表达式为什么使用Lambda表达式Lambda是一个匿名函数,我们可以把Lambda表达式理解为是一段可以传递的代码(将代码像数据一样进行传递)。使用它可以写出更简洁、更......
  • hibernate的OneToOne映射
    hibernate的OneToOne映射1、前言@OneToOne注解可以建立实体bean之间的一对一的关联。一对一关联有四种情况:一是关联的实体都共享同样的主键;二是其中一个实体通过外键......
  • ASP.net EF动态映射实体
    1、配置EF与建立实体模型这里不做过多介绍、主要介绍如何动态映射实体模型1.1、实现过程有很多种方式我们这里使用接口、然后扫描所有继承了该接口的实体类然后映射(也可......
  • 一文彻底搞懂前端缓存机制
    浏览器缓存步骤1)浏览器在加载资源时,先根据这个资源的一些httpheader判断它是否命中强缓存,强缓存如果命中,浏览器直接从自己的缓存中读取资源,不会发请求到服务器。比如某个......
  • 静态资源映射
    web开发中,不可避免地是对静态资源的访问,SpringBoot默认的静态资源映射为三样:classpath:/META-INF/resources/classpath:/resources/classpath:/static/classpath:/pu......
  • springMvc路径参数映射原理
     一、springMvc 执行流程图 二、springMvc中url映射接口关键点2.1:AbstractHandlerMappingorg.springframework.web.servlet.handler.AbstractHandlerMapping#getHa......