研发日记,Matlab/Simulink避坑指南(七)——数据溢出钳位Bug

文章目录

前言

背景介绍

问题描述

分析排查

解决方案

总结归纳


前言

        见《研发日记,Matlab/Simulink避坑指南(二)——非对称数据溢出Bug》

        见《研发日记,Matlab/Simulink避坑指南(三)——向上取整Bug》

        见《研发日记,Matlab/Simulink避坑指南(四)——transpose()转置函数Bug》

        见《研发日记,Matlab/Simulink避坑指南(五)——CAN解包 DLC Bug》

        见《研发日记,Matlab/Simulink避坑指南(六)——字节分割Bug》

背景介绍

        在一个嵌入式软件项目中,需要将一个有符号数转换成无符号数,并把超出范围的值钳位在合理范围内。思路是使用Simulink中的Data Type Conversion模块和Saturation模块来处理,示例如下:

问题描述

        按照上述示例,预想应该可以正常运行,但是实际运行时溢出部分的数据还是出现了异常,示例如下:

分析排查

        把过程信号全部打上Scope,看到在第一个Data Type Conversion环节就出现了问题,负数转换成无符号数时变成了一些极大值,示例如下:

解决方案

        调整数据处理的顺序,先使用Saturation模块把数值限定在合理范围内,然后再用Data Type Conversion转换成无符号数,示例如下:

        重新运行程序,问题不再出现,Bug修复完工,示例如下:

总结归纳

        Simulink中的Data Type Conversion在转换数据类型时,只是改变了数据的白表达方式或解析方式,并没有改编数据本身的二进制内容。转换数据时除了需要考虑数据溢出的钳位,更要留意钳位的先后顺序。


        版权声明:原创文章,转载和引用请注明出处和链接,侵权必究!

        上述例程使用的Demo工程,可以到笔者的主页查找和下载。

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

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

相关文章

【每日一题】YACS 243:5G通讯

题目描述 这是上海计算机学会竞赛 P 243 P243 P243:5G通讯( 2020 2020 2020年 9 9 9月月赛 乙组 T 2 T2 T2)标签:二分查找题意:给定 n n n个点,第 i i i个点的坐标为 x i x_i xi​。给定限制 d d d&#…

C语言第十一弹---函数(下)

​ ✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】 函数 1、嵌套调用和链式访问 1.1、嵌套调用 1.2、链式访问 2、函数的声明和定义 2.1、单个文件 2.2、多个文件 2.3、static 和 extern 2.3.1、static…

速盾网络:CDN防盗链策略有哪些

随着互联网的迅猛发展,内容盗链问题也日益严重。为了保护网站内容的安全和版权,CDN防盗链策略成为了许多网站和内容提供者的首选。本文将介绍CDN防盗链的概念和原理,并详细介绍了几种常见的CDN防盗链策略和实施方法。 随着技术的进步和互联网…

【自然语言处理】【深度学习】文本向量化、one-hot、word embedding编码

因为文本不能够直接被模型计算,所以需要将其转化为向量 把文本转化为向量有两种方式: 转化为one-hot编码转化为word embedding 一、one-hot 编码 在one-hot编码中,每一个token使用一个长度为N的向量表示,N表示词典的数量。 即&…

dos攻击与ddos攻击的区别

①DOS攻击: DOS:中文名称是拒绝服务,一切能引起DOS行为的攻击都被称为dos攻击。该攻击的效果是使得计算机或网络无法提供正常的服务。常见的DOS攻击有针对计算机网络带宽和连通性的攻击。 DOS是单机于单机之间的攻击。 DOS攻击的原理&#…

[lighttpd]lighttpd配置http强制跳转https

参考链接 HowToRedirectHttpToHttps - Lighttpd - lighty labs lighttpd版本 / # lighttpd -h lighttpd/1.4.59 (ssl) - a light and fast webserver usage:-f <name> filename of the config-file-m <name> module directory (default: /usr/lib)-i <secs…

【GitHub项目推荐--常见的国内镜像】【转载】

由于国内网络原因&#xff0c;下载依赖包或者软件&#xff0c;对于不少互联网从业者来说&#xff0c;都有不小的挑战&#xff0c;时间浪费在这上边&#xff0c;实在可惜。这个项目介绍了常见依赖&#xff0c;软件的国内镜像&#xff0c;助力大家畅爽编码。 这是一个归纳梳理类…

C# 将HTML网页、HTML字符串转换为PDF

将HTML转换为PDF可实现格式保留、可靠打印、文档归档等多种用途&#xff0c;满足不同领域和情境下的需求。本文将通过以下两个示例&#xff0c;演示如何使用第三方库Spire.PDF for .NET和QT插件在C# 中将Html 网页&#xff08;URL&#xff09;或HTML字符串转为PDF文件。 HTML转…

【C语言/数据结构】排序(选择排序,推排序,冒泡排序)

&#x1f308;个人主页&#xff1a;秦jh__https://blog.csdn.net/qinjh_?spm1010.2135.3001.5343&#x1f525; 系列专栏&#xff1a;《数据结构》https://blog.csdn.net/qinjh_/category_12536791.html?spm1001.2014.3001.5482 ​​​​ 目录 选择排序 选择排序 ​编辑…

JAVA学习笔记6(常用结构与数组)

1.选择结构 1.if语句&#xff1a; if(条件表达式){ 一条或多条语句 }; 2.if else语句&#xff1a; if(条件表达式) {语句块1} else {语句块2} 3.switch语句&#xff1a; switch(表达式){​​​​​​​ case 常量表达式1:语句组;break;​​​​​​​ ​​​​…

js实现动漫拼图2.0版

比较与1.0版&#xff0c;2.0版就更像与华容道类似的拼图游戏&#xff0c;从头到尾都只能控制白色块移动&#xff0c;而且打乱拼图和求助的实现与1.0都不相同 文章目录 1 实现效果2 实现思路2.1 打乱拼图2.2 求助功能2.3 判赢 3 代码实现 js实现动漫拼图1.0版 https://blog.csdn…

【工作技术栈】基于注解的redis分布式锁(支持SPEL细粒度+redisson可重入功能)

这里写目录标题 前言基于注解的reids分布式锁感悟 前言 刚开始我们使用的redis工具是自己写的&#xff0c;因为觉得redisson没必要&#xff08;其实是没有人想因为自己不懂redisson导致线上问题吧。。。毕竟公共组件&#xff09; 这个就是目前我们用的&#xff0c;手写简易lua…

python222网站实战(SpringBoot+SpringSecurity+MybatisPlus+thymeleaf+layui)-菜单管理实现

锋哥原创的SpringbootLayui python222网站实战&#xff1a; python222网站实战课程视频教程&#xff08;SpringBootPython爬虫实战&#xff09; ( 火爆连载更新中... )_哔哩哔哩_bilibilipython222网站实战课程视频教程&#xff08;SpringBootPython爬虫实战&#xff09; ( 火…

cmake-find_package链接第三方库

文章目录 基本调用形式和模块模式使用方式 之前我们是使用了绝对路径来链接OpenCV第三方库&#xff0c;但是现在很多库一般会自己写一些cmake文件提供给用户&#xff0c;用户可以直接使用其中的内置变量即可。使用的命令就是find_package。 基本调用形式和模块模式 find_packa…

【RTP】webrtc 学习2: webrtc对h264的rtp打包

切片只是拷贝帧的split的各个部分到新的rtp 包的封装中。并没有在rtp包本身标记是否为关键帧FU-A 切片 输入的H.264 数据进行split :SplitNalu SplitNalu : 按照最大1200字节进行切分 切分后会返回一个数组 对于FU-A :split的数据总大小是 去掉一个字节的nalu header size …

CROSS JOIN

CROSS JOIN 是 SQL 中用于执行笛卡尔积&#xff08;Cartesian product&#xff09;的一种连接操作。它会将左表的每一行与右表的每一行进行组合&#xff0c;生成的结果集的行数等于左表的行数乘以右表的行数。 举个例子&#xff0c;如果表 A 有 m 行&#xff0c;表 B 有 n 行&…

qt的main函数(程序启动入口)

函数入口的参数 这就是Qt中最简单的一个main函数&#xff1a; int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); } 其中int argc, char *argv[]参数是很有用的。 使用.\release\程序名.exe 模型名.model 模型文件所在的地…

实战 | OpenCV+OCR实现弧形文字识别实例(详细步骤 + 源码)

导 读 本文主要介绍基于OpenCV+OCR实现弧形文字识别实例,并给详细步骤和代码。源码在文末。 背景介绍 测试图如下,目标是正确识别图中的字符。图片来源: https://www.51halcon.com/forum.php?mod=viewthread&tid=6712 同样,论坛中已经给出了Halcon实现代码,…

1948-2022年金融许可信息明细数据

1948-2022年金融许可信息明细数据 1、时间&#xff1a;1948-2022年 2、来源&#xff1a;银监会&#xff08;银监会许可证发布系统&#xff09; 3、指标&#xff1a;来源表、机构编码、机构名称、所属银行、机构类型、业务范围、机构住所、地理坐标、行政区划代码、所属区县、…

【计算机网络】深入掌握计算机网络的核心要点(面试专用)

写在前面 前言四层模型网络地址管理Linux下设置ipARP请求包总结 前言 计算机网络是指将分散的计算机设备通过通信线路连接起来&#xff0c;形成一个统一的网络。为了使得各个计算机之间能够相互通信&#xff0c;需要遵循一定的协议和规范。OSI参考模型和TCP/IP参考模型是计算机…