0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

新功能发布 | TSMaster如何实现checksum和rolling counter的本地化支持

上海同星智能科技有限公司 2022-08-29 10:12 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

前言

TSMaster近日更新了五大模块的新功能,主要包含网络仿真中的checksum和rolling counter的本地化支持、J1939多帧报文收发、MATLAB自动化控制模块等等。小编接下来将在之后推文中给大家以图文教程的形式一一讲解。

今天介绍TSMaster的新功能—网络仿真中的checksum和rolling counter的本地化支持,该功能可以轻松做到不写一行代码就可以实现带checksum和rc的网络仿真。

旧版本 VS 新版本

Old VS New version /

旧版本

首先回顾一下旧的方法,也就是使用小程序对每个信号进行模拟,打开这个示例随后按F5启动仿真,就可以看到不断递增的rolling counter,也就是蓝色的这个三角波。

f8e4ab34-2579-11ed-9ade-dac502259ad0.pngf8f80d32-2579-11ed-9ade-dac502259ad0.pngf92a96bc-2579-11ed-9ade-dac502259ad0.png

我们展开trace,从中把这个checksum拖到图形窗口中,就可以观察checksum的实时曲线。再看我们的小程序代码,在pretx的回调函数中,需要写程序来直接控制checksum和rolling counter的信号,倘若涉及到大型的网络仿真,那么就需要花费大量的时间,每个信号进行逐个处理容易出错,同时也会带来效率的问题。

新版本

新功能则不需要手动处理每个信号,我们来新建一个工程试一试。打开工程-工程目录,找到TSMaster的安装包自带的示例数据库。例如powertrain,我们将它拖入,可以看到数据库已经载入。

f8e4ab34-2579-11ed-9ade-dac502259ad0.pngf9546d2a-2579-11ed-9ade-dac502259ad0.pngf92a96bc-2579-11ed-9ade-dac502259ad0.png

我们选择一帧报文,以ABS data为例,可以看到这个报文并没有checksum和rc,我们需要修改数据库给他加上这两个信号,点击编辑按钮,打开数据库编辑器,我们新建两个信号,分别命名为ABS checksum。checksum一般是8位的无符号,然后还有一个是ABS。rc一般是4位无符号,再将这两个信号拖入ABS data这个报文里面,随后我们打开这个报文的配置窗口,将dlc改为8,切换到layout。

f8e4ab34-2579-11ed-9ade-dac502259ad0.pngf9a816dc-2579-11ed-9ade-dac502259ad0.pngf92a96bc-2579-11ed-9ade-dac502259ad0.png

我们可以将我们新建的rc拖动到合适的位置,接下去是设定checksum的位置,这是我们新增的checksum信号,由于checksum是保护报文的数据内容的,一般位于报文的第一个字节或者是最后一个字节。在这里我们把这个信号拖到最后一个字节,这意味着保护的范围是从0到6字节,点击确定,再点击保存,再点击关闭。可以看到TSMaster会自动刷新所编辑的数据库。

f8e4ab34-2579-11ed-9ade-dac502259ad0.pngf9ec70ac-2579-11ed-9ade-dac502259ad0.pngf92a96bc-2579-11ed-9ade-dac502259ad0.png

这时候我们展开报文,选择abs data,切换到布局窗口,我们就可以看到我们新增的两个信号,一个是rolling counter,在52-55位之间;另外一个是checksum,在56-63之间。新增的checksum和rc已经按照我们的要求设置成功了。

f8e4ab34-2579-11ed-9ade-dac502259ad0.pngfa39ab38-2579-11ed-9ade-dac502259ad0.pngf92a96bc-2579-11ed-9ade-dac502259ad0.png

checksum和rc的本地化支持

localization support for checksum & rc /

>关闭数据库编辑器,切换到仿真,打开rbs窗口,双击激活engine节点,设置为自启动仿真,随后按下F5启动仿真,这就可以让rbs来仿真engine这个节点的所有报文。

f8e4ab34-2579-11ed-9ade-dac502259ad0.pngfa951c48-2579-11ed-9ade-dac502259ad0.pngf92a96bc-2579-11ed-9ade-dac502259ad0.png

切换到分析,打开trace窗口,展开abs data报文,可以看到我们新增的rc和checksum都是默认的0,这时候就需要进行配置,回到rbs窗口,在rc信号上点击右键,设置它为rolling counter信号,设置将会立即生效,可以看到rolling counter在变化。

f8e4ab34-2579-11ed-9ade-dac502259ad0.pngfae6ae32-2579-11ed-9ade-dac502259ad0.pngf92a96bc-2579-11ed-9ade-dac502259ad0.png

>接着打开一个图形窗口,把rc拖入图形就可以看到锯齿波,说明rc已经生效,接下来就要配置checksum。由于checksum涉及到crc算法库的安装和编辑,这个信号是不能够实时的去配置它的,所以我们先按F6停止仿真,再在checksum信号上右击选择设为checksum信号,那么第一次设置会看到系统会安装默认的crc的算法库,并且在安装成功后会弹出crc算法列表。

f8e4ab34-2579-11ed-9ade-dac502259ad0.pngfb317c46-2579-11ed-9ade-dac502259ad0.pngf92a96bc-2579-11ed-9ade-dac502259ad0.png

我们可以随便选一个算法比如说crc 8。这个时候我们就已经成功的将crc 8的算法和这个checksum信号产生了关联。此时还有一个配置项需要确认,那就是这个checksum信号的保护范围,默认是从0字节开始,保护后面7个字节,那么这是可以随时更改。我们可以点击右键,选择编辑crc算法参数,就可以看到已经配置过的crc信号表。

f8e4ab34-2579-11ed-9ade-dac502259ad0.pngfb940f32-2579-11ed-9ade-dac502259ad0.pngf92a96bc-2579-11ed-9ade-dac502259ad0.png

那么双击这个表里面任何一个信号,还可以继续修改他关联的crc算法,这个时候我们先不修改算法,我们只需要知道这个窗口是可以更改保护的字节起始以及保护的字节数就可以了。那么我们现在先点击确认,然后我们再次按下F5启动仿真,展开abs data报文,我们就可以看到checksum已经在刷新了。

f8e4ab34-2579-11ed-9ade-dac502259ad0.pngfbc8b19c-2579-11ed-9ade-dac502259ad0.pngf92a96bc-2579-11ed-9ade-dac502259ad0.png

>我们把这个信号拖到图形窗口中,就可以看到了checksum的实时曲线,而一般情况下,checksum的算法都是公司自定义的,我们完全可以改写默认的crc的算法库来做到这一点。点击仿真-小程序库,可以看到默认的crc的算法库也不过就是一个小程序库而已,他提供了21个默认的算法。

f8e4ab34-2579-11ed-9ade-dac502259ad0.pngfc102f40-2579-11ed-9ade-dac502259ad0.pngf92a96bc-2579-11ed-9ade-dac502259ad0.png

我们可以在c代码编辑器中找到这个算法库的源代码,注意的是这个小程序是以库文件的方式提供的,是没有独立的启动和停止按钮的,我们在此制定一个crc算法。点右键添加自定义函数取名为mycrc,参数表可以随便选一个copy,然后我们可以把现有的算法的内容抄进来。比如说这个crc8,然后在这个基础上进行修改,我们可以随意的改,比如说将这个poly = 0x17,如果要想把我们新的这个函数安装到系统中,只需要编译这个算法库就可以,当然编译的过程需要保证。

f8e4ab34-2579-11ed-9ade-dac502259ad0.pngfc61e92a-2579-11ed-9ade-dac502259ad0.pngf92a96bc-2579-11ed-9ade-dac502259ad0.png

首先要停止仿真,因为当前的这个算法库依然在被rbs引擎使用,此时我们再点击编译就可以看到编译成功,并且已经自动安装到我们的系统中。

如何实现实时曲线

How to achieve real-time curves /

我们打开总线仿真,在这个信号上点右键,重新选择一下crc算法,选择我们的mycrc,就可以关联成功。然后我们按F5启动仿真切换到图形窗口,就可以看到不一样的checksum的实时曲线,这是因为这个整个报文里面就只有rolling counter的一个信号在变化,所以这个checksum的信号的曲线具有一定的规律,那么同时我们也可以让其他的信号也动起来,这该怎么做呢?

1、手动设置方法

最快的一种是使用发送窗口的信号生成器。我们可以首先在rbs窗口中将这个报文的周期改为0,那这样的话rbs就不会自动发送这个报文,然后我们切换到发送窗口,点击添加来自数据库的报文,选择我们的abs data,我们点击发送,然后切换到图形窗口,就可以看到跟之前一样的曲线。这是新功能的强大之处,也就是不管该报文在系统的哪个模块被发出,只要rbs是激活状态,报文的checksum和rolling counter就能够被正确配置。

f8e4ab34-2579-11ed-9ade-dac502259ad0.pngfcca2cf6-2579-11ed-9ade-dac502259ad0.pngf92a96bc-2579-11ed-9ade-dac502259ad0.png

接下来我们可以激励其中的其他信号,比如说carspeed这个信号,我们可以将生成器选择为正弦波,配置偏移量为150,因为它的范围是0到300,然后点击应用关闭,点击启动生成,这个时候就可以看到checksum发生了变化,这时候我们把carspeed拖进来,就可以看到所有信号的实时曲线。这时候的checksum就显示出了无规则的变化,这是因为同时有了两个信号在变化,那么以上就是checksum和rolling counter的手动设置方法。

f8e4ab34-2579-11ed-9ade-dac502259ad0.pngfd13dbb2-2579-11ed-9ade-dac502259ad0.pngf92a96bc-2579-11ed-9ade-dac502259ad0.png

2、自动设置方法

我们还可以通过小程序API来做到自动设置,首先可以清空这两个信号的配置,只要在上面点击右键,选择设为普通信号,那这两个信号就不再具有功能,可以看到这两个信号就变成了默认的值,然后我们可以打开自动化模块,新增一个函数调用,搜rc可以从中找到跟rolling counter有关的就是这个can rbs set rc Signal。他只有一个传入参数,就是信号的数据库地址。接着我们到总线仿真里面,把这个rc信号顶右键的数据库地址拷贝过来,这样就实现了这个信号的设置。

f8e4ab34-2579-11ed-9ade-dac502259ad0.pngfd616d78-2579-11ed-9ade-dac502259ad0.pngf92a96bc-2579-11ed-9ade-dac502259ad0.png

那么我们可以再增加一个函数调用,按回车新建一个新的动作,然后我们选择crc相关的函数,那么可以看到这个函数名叫set crc Signal,他有4个参数。第一个也是信号地址,我们就如法炮制,选择checksum的数据库地址,填入后第二个就是算法的名称,那这个名称其实就是刚才我们所选的mycrc,那么在这个前面需要加上小程序的前缀,所以是crc.mycrc。那么小程序可以看到他的名称是crc,所以只需要把这个这个名称加上点,再加上函数名抄过来就可以了,然后他所保护的字节起始是从第0个字节开始,往后保护7个字节,那么这样就算设置完毕。

f8e4ab34-2579-11ed-9ade-dac502259ad0.pngfdabc7f6-2579-11ed-9ade-dac502259ad0.pngf92a96bc-2579-11ed-9ade-dac502259ad0.png

以上就是本次发布的新功能的全部用法,我们下期再见!(具体操作步骤详情可直接观看我们的B站视频哦~)


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 仿真
    +关注

    关注

    55

    文章

    4535

    浏览量

    138659
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    小鹏汽车正式启动其马来西亚本地化生产项目

    近日,小鹏汽车与马来西亚EPMB集团签约,正式启动其马来西亚本地化生产项目。这是继印尼、奥地利之后,小鹏在全球布局的第三个本地化生产项目。
    的头像 发表于 12-18 14:16 676次阅读

    打造本地化智能的“最强大脑”, 米尔RK3576 AI边缘计算盒

    在人工智能与边缘计算深度融合的浪潮中,本地化智能需求正重塑产业格局。米尔电子推出的RK3576边缘计算盒,具备高算力、低功耗与强扩展性,凭借其卓越的硬件架构与多场景适配能力,正成为推动工业视觉
    的头像 发表于 12-11 08:05 1051次阅读
    打造<b class='flag-5'>本地化</b>智能的“最强大脑”, 米尔RK3576 AI边缘计算盒

    涂鸦网关本地化进阶能力来袭!周期/区间/批量联动全掌控,解锁高阶场景应用

    在物联网自动场景体系中,网关是连接云端与终端设备的关键中枢,其本地化处理能力直接决定场景联动的可靠性与精细化水平。然而,传统自动场景多依赖云端判定与指令下发,在断网自控、复杂逻辑运算及批量设备
    的头像 发表于 11-27 18:27 666次阅读
    涂鸦网关<b class='flag-5'>本地化</b>进阶能力来袭!周期/区间/批量联动全掌控,解锁高阶场景应用

    E4418A/B:射频功率测量的经典基石与本地化专业服务的价值

    的经典型号。它们以其卓越的稳定性、精确的测量结果和坚固耐用的设计,长期以来被誉为功率测量领域的“行业标准”。而要让这些经典仪器在今日的研发与生产中持续发挥价值,离不开专业、及时且本地化的技术支持与服务支持。这正是像深圳市宝安区沙
    的头像 发表于 10-27 10:47 633次阅读
    E4418A/B:射频功率测量的经典基石与<b class='flag-5'>本地化</b>专业服务的价值

    发布元服务配置本地化基础信息(应用名称、图标)

    您可以添加元服务支持的语言,并配置对应语言的本地化信息。 例如,当您设置简体中文为默认语言,并且只配置中文的本地化信息,那么元服务在所有设置的发布国家或地区的信息都将显示中文。如果您还
    发表于 10-24 17:42

    破解非洲数字鸿沟:传音控股以本地化创新与教育合作助力可持续发展

    科技出海企业代表传音控股继续秉持“全球视野,本地化创新”理念,通过技术研发与公益投入双轮驱动,助力非洲跨越数字鸿沟。深耕本地化创新,传音赋能非洲数字发展在非洲
    的头像 发表于 09-25 16:46 1353次阅读
    破解非洲数字鸿沟:传音控股以<b class='flag-5'>本地化</b>创新与教育合作助力可持续发展

    小鹏汽车首个欧洲本地化生产项目启动

    小鹏汽车正式官宣欧洲本地化生产的重要规划,与位于奥地利格拉茨的麦格纳工厂展开深度合作,借助该工厂现有的成熟生产线,大力推动电动汽车在欧洲的本地化生产进程。
    的头像 发表于 09-15 15:02 1121次阅读

    软件更新 | TSMaster 7-8月新功能来了!你升级了吗?

    为持续赋能汽车电子研发,TSMaster在2025年夏季再度升级。TSMaster软件7-8月版本重磅推出了安全管理功能增强、IOAPI优化,并正式释放了RPC/IP与EthernetPDURBS
    的头像 发表于 09-12 20:03 2210次阅读
    软件更新 | <b class='flag-5'>TSMaster</b> 7-8月<b class='flag-5'>新功能</b>来了!你升级了吗?

    能源监测管理平台是本地化部署好还是云端部署好?

    能源监测管理平台本地化部署和云端部署各有优劣,企业需根据自身需求和实际情况来选择。如果企业对数据安全要求极高、网络环境特殊且预算充足,本地化部署可能更合适;若企业注重灵活性、成本效益和便捷访问,云端
    的头像 发表于 07-22 15:16 656次阅读
    能源监测管理平台是<b class='flag-5'>本地化</b>部署好还是云端部署好?

    传音控股本地化战略的跨区域成功:驱动东南亚、南亚数字浪潮 ​

    全球新兴市场智能终端竞争进入新阶段,传音控股继续凭借“本地化”战略优势书写着从非洲到全球的扩张传奇。与印尼电信巨头IOH达成战略合作、优化游戏体验、研发全肤色影像技术,传音正在将成熟的本地化模式成功
    的头像 发表于 07-18 16:09 1208次阅读
    传音控股<b class='flag-5'>本地化</b>战略的跨区域成功:驱动东南亚、南亚数字<b class='flag-5'>化</b>浪潮 ​

    AI+能源数字破局者故事5:斯伦贝谢 x IBM 咨询之 “全球经营与本地化适配”

    斯伦贝谢与 IBM 的合作建立在技术专长、交付能力及本地化支持的基础上,IBM 的强大技术实力和本地经验,使其成为斯伦贝谢推动数字转型的重要合作伙伴
    的头像 发表于 07-17 19:02 1589次阅读

    施耐德电气与奇安信共建技术本地化创新中心

     在施耐德电气技术本地化创新日上 ; 施耐德电气与奇安信集团宣布成立 施耐德电气(中国)技术本地化创新中心。 该中心将提供 针对国产基础软硬件的深度适配服务,以信息技术共创和生态协同为核心 ,更好
    的头像 发表于 07-10 19:01 1170次阅读
    施耐德电气与奇安信共建技术<b class='flag-5'>本地化</b>创新中心

    意法半导体携手华虹打造STM32全流程本地化供应链

    ‍‍‍‍‍‍‍‍在全球半导体产业加速变革的今天,供应链的稳定性与本地化能力成为企业竞争力的核心要素。在刚刚结束的STM32峰会上,意法半导体执行副总裁、中国区总裁曹志平先生与合作伙伴华虹半导体及多位
    的头像 发表于 05-26 09:51 1544次阅读

    软件更新 | TSMaster 202504 版本已上线!三大功能让车载测试更智能

    车载测试的智能化时代正在加速到来!TSMaster202504版本正式发布,本次更新聚焦以太网通信与数据高效处理,带来三大核心功能升级—以太网报文信息过滤、XCPonEthernet支持
    的头像 发表于 05-23 20:05 1286次阅读
    软件更新 | <b class='flag-5'>TSMaster</b> 202504 版本已上线!三大<b class='flag-5'>功能</b>让车载测试更智能

    DigiKey 应用与技术门户平台已针对亚太地区进行了本地化

    品类齐全且可立即发货的产品。DigiKey 在亚太地区提供专属应用与技术平台。该平台提供本地化的在线资源,旨在助力工程师和创新者,提供专业技术资源、精选产品信息和互动学习内容。 DigiKey 应用与技术平台提供自动与控制、物联网、边缘 AI、电源、传感器以及嵌入式
    发表于 05-23 16:37 1277次阅读