干货分享 | TSMaster 信号映射的配置方法

news2024/11/15 9:45:59

TSMaster信号映射模块可以将数据库变量映射为系统变量,经过映射后的系统变量就等同于数据库中的变量,该系统变量的读写操作就等同于读写数据库变量。其在系统软件中的位置如下图所示:

图片

信号映射模块设计的目的,就是为了实现上层应用层逻辑和下层数据库变量的解耦合。如果上层应用层直接操作数据库中的变量,一旦数据库发生变动,介于这种强耦合关系,会造成上层开发,比如Panel,测试脚本等需要修改对应的数据库变量,对于大型工程项目来说,这种变动是不可接受的。采用信号映射模块,上层映射层不用直接操作数据库变量,直接使用映射后的系统变量,当下层数据库等发生变动时,只需重新将映射数据库变量到对应的系统变量即可,而不用修改上层的应用。本文将重点介绍TSMaster中添加信号映射的操作方法。

本文关键字:信号映射、系统变量、表达式映射


目录

Catalog

1.  直接映射的操作方法

2.  表达式映射的操作方法

3.  信号映射转换实例

一、直接映射的操作方法

1、信号映射模块路径:仿真-环境-信号映射

打开信号映射后,点击模块左上角激活按钮使能信号映射模块。如图1。

图片

图1

选择数据库中的信号进行映射,以CAN数据库为例,如图2所示:

▲ Step1:选择【通道1】的数据库报文信号;

▲ Step2:选择需要映射的信号,比如“EngSpeed”信号;

▲ Step3: 鼠标右键,选择【自动创建映射】;

▲ Step4:在【映射目标系统变量列表】自动生成目标系统变量,默认为直接映射类型。

图片

图2

▲ Step5: 当自动创建映射后,在【仿真-系统变量-用户变量列表】中会自动生成同名系统变量,如图3。

图片

图3

2、映射方向的三种方式

直接映射方式可以理解为一对一的映射方式,可以选择信号映射的方向,TSMaster提供了三种方式:双向传递、仅从信号映射至系统变量、仅从系统变量映射至信号,以适配不同的映射需求,如图4。

1)双向传递:系统变量值的改变会同步到信号,信号值的改变会同步到系统变量。

2)仅从信号映射至系统变量:信号值的改变会同步到系统变量,系统变量值的改变不会同步到信号。

3)仅从系统变量映射至信号:系统变量值的改变会同步到信号,信号值的改变不会同步到系统变量。

图片

图4

操作步骤如下:

① 选择映射列表条目中目标系统变量;

② 点击【映射方向】弹出菜单;

③ 选择映射方向;

④ 点击【设置】完成选择。

二、表达式映射操作方法

1、表达式映射的说明

将所选表达式设置为表达式映射后可以编辑表达式,最终将自定义的算法表达式计算得到的结果映射到系统变量,自变量可以选择常量、系统变量、FlexRay信号、CAN信号、LIN信号。

TSMaster提供了一系列的数学函数列表及表达式,其中数学函数列表:

abs, acos, asin, atan, atan2, ceil, cos, cosh, e, exp, fac, floor, ln.

log, log10, max, min, ncr, npr, pi, pow, sign, sin, sinh, sqrt, tan, tanh

表达式示例:

[1] sqrt(x1n1.5 + x2n2.5)

[2] x1 * 3 + x2 / 1.2 - 11.9

[3] (1/(x1+1)+2/(x2+2)+3/(x3+3))

[4] (x1 > 50) & ((x2 <30) |(x3 = 1)

2、表达式映射的操作步骤

选择映射对后点击设置为表达式映射,在窗口右侧编辑计算方法,如图5。

图片

图5

① 选择映射目标系统变量

② 设置为表达式映射

③ 点击加号添加自变量

图片

:添加自变量

图片

:删除自变量

图片

:查看任意表达式帮助

图片

:复制当前表达式映射的C代码

④ 编辑计算方法表达式

⑤ 给计算表达式中的自变量赋值,自变量可以选择常量、系统变量、FlexRay信号、CAN信号、LIN信号

【检查映射】:完成信号映射列表的添加和配置后,可以选择检查当前映射,可以避免出现无效映射的情况。

【配置】:自动激活对应的RBS发送信号。勾选后映射列表中涉及的信号将会以RBS的方式仿真发送,如图6。

图片

图6

配置好的映射信号列表,可以进行配置文件的保存与导入,如图7。

【配置文件保存】:信号映射对配置完成后可以将当前映射对配置导出到本地。

【配置文件导入】:可以将当前信号映射列表导出.ini文件。

图片

图7

三、信号映射转换实例

汽车车速与发动机转速之间有一种常见的转换关系计算,车速(km/小时)=发动机转速x 60 x 3.14 x轮胎直径/(1000X主减速比x对应档位传动比)。通常轮胎直径、主减速比、对应档位传动比可以通过汽车手册查得,再通过已知的发动机转速,使用信号映射计算出汽车的车速,即:车速CarSpeed= 发动机转速*60*3.14*0.724/(1000*3.683*0.672)。

在TSMaster的信号映射里创建好目标系统变量“CarspeedMappingFromEngSpeed”,设置为表达式映射,x1绑定汽车发动机转速EngSpeed,如图8。

CarspeedMappingFromEngSpeed = x1*60*3.14*0.724/(1000*3.683*0.672)

图片

图8

配置好信号映射表达式后,可以修改EngSpeed的发送值为1000 rpm,经过信号映射后可以自动计算车速为55.1 km/h, 如图9。

图片

图9

同样,继续修改EngSpeed的发送值为2000 rpm,经过信号映射后可以自动计算车速约为110.2 km/h, 如图10。

图片

图10 

以上是信号映射模块使用操作流程和示例,信号映射出来的系统变量可以直接被我们的panel模块、信号测试模块、信号比较模块、C小程序、图形模块等模块访问和使用,信号映射是我们TSMaster中实现模块互通的一员,合理使用信号映射模块可以有效提高基于TSMaster的工程开发效率。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1418509.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

新建VM虚拟机-安装centOS7-连接finalshell调试

原文 这里有问题 首先进入/etc/sysconfig/network-scripts/目录 cd /etc/sysconfig/network-scripts/ 然后编辑文件 ifcfg-ens33 vi ifcfg-ens33

树--二叉树(C语言纯手凹)

目录 1.什么是树&#xff1f;&#xff08;不深入&#xff0c;仅做了解&#xff09; 2.树的表示方式 2.1孩子兄弟表示法&#xff08;左孩子右兄弟&#xff09; 2.2孩子表示法 2.3双亲表示法 3.什么是二叉树 4.二叉树分类 4.1满二叉树 4.2完全二叉树 4.3二叉搜索树&#x…

键盘上Ins键的作用

前几天编写文档时&#xff0c;发现一个问题&#xff1a;插入内容时&#xff0c;输入的字符将会覆盖光标位置后的字符。原来是按到了键盘上的 Ins键&#xff0c;解决方法是&#xff1a;再按一次 Ins键&#xff08;Ins键如果独立作为一键时&#xff0c;否则使用 “Fn Ins”组合键…

如何搭建Nextcloud云存储网盘并实现无公网ip访问本地文件【内网穿透】

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

GitHub Copilot 与 ChatGPT:哪种工具更适合软件开发?

GitHub Copilot 与 ChatGPT&#xff1a;哪种工具更适合软件开发&#xff1f; 比较 ChatGPT 与 GitHub Copilot编程语言功能性定制化训练数据上下文准确性 ChatGPT 与 GitHub Copilot&#xff1a;哪个更适合软件开发&#xff1f;常见问题解答&#xff1a; 不断发展的编程世界正在…

Python:变量和简单类型

2.1 单行注释和多行注释 为程序添加注释可以用来解释程序某些部分的作用和功能&#xff0c;提高程序的可读性。除此之外&#xff0c;注释也是调试程序的重要方式。在某些时候&#xff0c;我们不希望编译、执行程序中的某些代码&#xff0c;这时就可以将这些代码注释掉。 Pyth…

【Web前端实操19】商城官网_分析与顶部广告

本次实操主要是借用小米之前的网站来进行参考&#xff0c;达成网站静态页面开发的目的&#xff0c;而新学者想要一次性直接开发整个网站&#xff0c;肯定会很懵圈&#xff0c;因此&#xff0c;这个商城官网我会一部分一部分地进行拆分来写&#xff0c;最后合成整个界面。 本次…

使用机器学习算法检测交易中的异常行为

交易中的异常检测意味着识别交易或相关活动中的异常或意外模式。这些模式被称为异常或异常值&#xff0c;明显偏离预期规范&#xff0c;可能表明存在不规则或欺诈行为。 异常检测在各种业务中发挥着至关重要的作用&#xff0c;尤其是那些涉及金融交易、在线活动和安全敏感操作…

如何实现无公网ip远程SSH连接家中本地的树莓派

文章目录 如何通过 SSH 连接到树莓派步骤1. 在 Raspberry Pi 上启用 SSH步骤2. 查找树莓派的 IP 地址步骤3. SSH 到你的树莓派步骤 4. 在任何地点访问家中的树莓派4.1 安装 Cpolar4.2 cpolar进行token认证4.3 配置cpolar服务开机自启动4.4 查看映射到公网的隧道地址4.5 ssh公网…

【前端】快速掌握CSS-flex布局

文章目录 一、标准流二、浮动1. 基本使用2. 产品区域布局(1) HTML标签(2) CSS样式 3. 清除浮动(1) 场景搭建(2) 额外标签法(3) 单伪元素法(4) 双伪元素法(5) overflow法 三、Flex布局1. Flex组成2. 主轴对齐方式3. 侧轴对齐方式4. 修改主轴方向5. 弹性伸缩比6. 弹性盒子换行7. …

手机壳也能散热了?

作为一个玩了6年的王者荣耀玩家&#xff0c;手机发热真的很影响游戏体验&#xff01;&#xff01;游戏掉帧&#xff0c;性能下降很恼人&#xff0c;试过好几个散热工具&#xff0c;实际效果都不太好&#xff5e; 自从入了Mate 60之后&#xff0c;看着这款微泵液冷壳毫无犹豫第…

day35WEB 攻防-通用漏洞XSS 跨站反射存储DOMBeef-XSS

目录 一&#xff0c;XSS 跨站-原理&分类&手法&探针 1、原理 2、分类 3、危害 二&#xff0c;反射型XSS 1&#xff0c;案例演示 三&#xff0c;存储型XSS 1&#xff0c;案例演示 四&#xff0c;DOM 型XSS 五&#xff0c;XSS 利用环境-XSS 平台&Beef-XS…

如何使用Docker部署火狐浏览器并实现无公网ip远程访问

文章目录 1. 部署Firefox2. 本地访问Firefox3. Linux安装Cpolar4. 配置Firefox公网地址5. 远程访问Firefox6. 固定Firefox公网地址7. 固定地址访问Firefox Firefox是一款免费开源的网页浏览器&#xff0c;由Mozilla基金会开发和维护。它是第一个成功挑战微软Internet Explorer浏…

【Linux】动态库和静态库——动态库和静态库的打包和使用、gcc编译、拷贝到系统默认的路径、建立软连接

文章目录 动态库和静态库1.静态库和动态库的介绍2.静态库的打包和使用2.1生成静态库2.2使用静态库的三种方式2.2.1gcc编译2.2.2拷贝到系统默认的路径2.2.3建立软连接 3.动态库的打包和使用3.1生成动态库3.2使用动态库3.3解决加载不到动态库的方法 动态库和静态库 1.静态库和动…

“坦克大战”项目设计文档

「坦克大战」项目的设计文档 功能设计 游戏部分 ​ 在存在 障碍物 的地图上&#xff0c;玩家需要操作一辆绿色的坦克与敌对的灰色坦克作战。 坦克 以及其发射的 炮弹 均会被障碍物所阻挡。玩家用键盘上的 wasd按键 控制坦克移动&#xff0c;用 鼠标 控制炮弹发射方向&#x…

删除倒数第N个结点---链表Oj

https://leetcode.cn/problems/remove-nth-node-from-end-of-list/description/?envType=study-plan-v2&envId=top-100-liked 1、常规解法 删除倒数第N个结点,那就是删除整数第(len - N + 1)个结点,我们只需要找到第len-N个结点,让它的next指向倒数第N个结点…

赛氪荣获“2023天津高新技术企业大会支持单位”

1月23日上午&#xff0c;2023天津市高新技术企业大会新闻发布会在天开高教科技园核心区综合服务中心召开&#xff0c;市高企协以及来自高校、企业、社会组织等80余人现场参会。 大会组委会秘书长张博航介绍到&#xff1a;“本次大会将实现自开办以来的多个首次&#xff0c;首次…

【刷题】 leetcode 面试题 08.05.递归乘法

递归乘法 1 题目描述2 思路一&#xff08;返璞归真版&#xff09;3 思路二&#xff08;二进制乘法器版&#xff09;4 思路三&#xff08;变态版&#xff09;Thanks♪(&#xff65;ω&#xff65;)&#xff89;谢谢阅读下一篇文章见&#xff01;&#xff01;&#xff01; 1 题目…

CTF CRYPTO 密码学-7

题目名称&#xff1a;敲击 题目描述&#xff1a; 让我们回到最开始的地方 0110011001101100011000010110011101111011011000110110010100110011011001010011010100110000001100100110001100101101001101000011100001100011001110010010110100110100011001000011010100110000…

2024年第04周农产品价格报告

一、摘要 农产品价格监测主要涉及对畜禽类产品、水产品、蔬菜类产品、水果类产品的价格&#xff0c;以周为单位&#xff0c;进行变化情况的数据监测。其中&#xff0c;蔬菜类产品共18种&#xff0c;分别为大白菜、西红柿、黄瓜、青椒、芹菜、土豆、白萝卜、茄子、豆角、胡萝卜…