loto仪器_如何模拟输出凸轮轴和曲轴波形_用任意波形信号源SIG852?
loto仪器_如何模拟输出凸轮轴和曲轴波形_用任意波形信号源SIG852?
在汽车传感器的波形检测应用中,有时候需要模拟各种汽车传感器的输出信号,用来驱动和监测对应的执行机构或者电路是否正常,这其中,曲轴和凸轮轴传感器的输出波形比较典型,我们根据一位客户的需求,简要的看下如何使用LOTO的任意波形信号发生器SIG852来编辑实现这两个信号。
我们用实测的标准的凸轮轴信号盘和曲轴信号盘的传感器波形图片作为参考,如下图所示:
蓝色波形是曲轴信号盘的波形,我们通过实物图能看到,一圈是60个齿,其中会缺两个齿,蓝色的波形里,每个脉冲对应一个小齿,宽一点的那个就是缺的两个齿。曲轴每分钟是720转,所以我们能轻松算出来,一秒钟是12转,每转60个齿的脉冲的话,相当于曲轴信号是12*60=720HZ。但是每12HZ的位置出会出现两个脉冲宽度的缺齿。
怎么才能做出720HZ脉冲中每60个缺两个脉冲呢?我们使用波形相乘的功能来实现。先做一个对应缺齿频率的12HZ波形,如下图所示,我们设置一个占空比3左右,这个占空比是计算好了缺齿两个空位对应的宽度。我们会得到频率12HZ左右的一个PWM脉冲波形:
然后我们需要把它高低电平反向一下,反向也很简单,我们通过加减运算功能里的功能很容易实现,我们把这个要反向的波形设置为X1:
然后点加减运算:
我们把刚才的波形,也就是X1,的系数改为-1,就相当于反向了,由原来的0~3V,变成了0~-3V,注意我们这个信号不能输出为负,所以我们把常数项设为3,也就是波形变为-1*X1+3,也就是把高电平和低电平互换了,如下图所示:
这个波形我们要一会儿用来做缺齿用,先存起来,点保存文件,把这个编辑好的波形存成文件,以免丢失了又要重新制作,随时保存文件是个好习惯,如下图所示:
我们存完了以后,把这个波形再次选为X1,后面需要它和另一个波形相乘,也就是曲轴盘小齿的那些波形。
接下来我们做720HZ的曲轴盘那些小齿的波形,我们上面计算得知,频率是720HZ,占空比一般是5%左右,这个根据不同的车型可能会不同,我们不考虑缺齿,按不缺齿处理,可以如下生成:
这个波形我们设置为X2,然后我们对X1和X2进行相乘:
我们会惊奇的发现,缺齿出现了。
不过和参考波形相比,我们还需要把高低电再平反一下。好习惯是,我们赶紧把这个中间成果存成文件保存一下。
这次高低电平反向也很简单,我们前面用过了,就是用波形加减运算,我们把这个波形设置为X1,然后和前面一样进行反向:
OK,我们得到了高低反向的波形了,和标准参考波形一样了。曲轴盘的信号波形已经完成,我们还是及时存一下。
目前我们只是编辑出来的曲轴的波形,如果要输出,我们需要把这个波形选择到哪个通道上,比如我们让它在A通道输出,我们就选择通道A:
然后点下图中这个确定按钮:
我们看到在高级标签页里,这个通道的波形已经设置好了:
接下来我们来制作凸轮轴的波形。从参考图中看到,凸轮轴和曲轴波形之间有一些位置关系,也有一些款脉冲宽度的不同,我们不知道数据,那应该怎么制作呢?这也不难不倒SIG852这个任意波形发生器,我们使用背景图导入功能,把客户的标准参考图作为背景图片导入进绘图区的背景:
我们可以上下左右移动标准参考波形,也可以放大缩小,把它和我们已经做好的通道A的曲轴波形对齐吻合了,那我们就可以直接在通道B上手绘这个凸轮轴的波形了:
我们选择图形手绘功能,用鼠标画波形,橙色就是我们用鼠标描着参考波形的红色波形画的波形,如下图所示:
手绘这种方正的波形肯定会歪歪扭扭,这个不要紧,大概画一下就可以了,我们接下来用局部选择功能来设置它,会让它变得很方正:
如下图所示:我们框选一个高电平或者低电平区域,右键选择把这个区域设置成0,还是设置成鼠标当前所在位置的电压:
经过一番局部框选设置,歪歪扭扭的橙色波形已经变成绿色的规范的方正的波形了:
我们点击右下角绿色对勾按钮就把这个绿色的波形设置到了B通道上,我们去看看,这下A,B通道的波形都设置好了:
就是我们需要的按参考波形做出来的效果,我们赶紧把新作的B通道的波形也保存一下。
这样波形的编辑过程就完成了,保存好的文件,可以随时导入或者传递给别人使用。我们接下来开启SIG852,连接上示波器,我们用的是LOTO虚拟示波器OSCA02,在SIG852的软件界面上点击下载,循环输出,就可以在LOTO虚拟示波器上看到对应的实际输出波形了,如下图的蓝绿色和黄色波形:
一个自定义编辑波形就圆满完成了。
SIG852这款定位低端低价的任意波形发生器,基于电脑软件操作,功能可以非常强大和方便,后续还会不断优化和增加软件功能,欢迎大家提供更多的应用场景我们一起研究:
loto仪器_如何模拟输出凸轮轴和曲轴波形_用任意波形信号源SIG852?的更多相关文章
- SQL_Server_2008定期自动备份详细图解
SQL_Server_2008定期自动备份详细图解 设置自动数据库的定期备份计划. http://wenku.baidu.com/link?url=Tu ...
- 二、多线程基础-乐观锁_悲观锁_重入锁_读写锁_CAS无锁机制_自旋锁
1.10乐观锁_悲观锁_重入锁_读写锁_CAS无锁机制_自旋锁1)乐观锁:就像它的名字一样,对于并发间操作产生的线程安全问题持乐观状态,乐观锁认为竞争不总是会发生,因此它不需要持有锁,将 比较-设置 ...
- cb19a_c++_只适合string类型的操作_提取_追加_替换
*cb19a_c++_只适合string类型的操作_提取_追加_替换三个substr重载函数-获取一个字符串的一部分六个append重载函数-追加字符十个replace重载函数-替换更换 重载函数越多 ...
- pytho简单爬虫_模拟登陆西电流量查询_实现一键查询自己的校园网流量
闲来无事,由于校园内网络是限流量的,查询流量很是频繁,于是萌生了写一个本地脚本进行一键查询自己的剩余流量. 整个部分可以分为三个过程进行: 对登陆时http协议进行分析 利用python进行相关的模拟 ...
- 随心测试_软测基础_002_<测试工程师_核心技能体系>
测试工程师核心技能体系构成 测试基础体系:[对象——>方法——>流程].[测试活动类型——>质量] 测试分析体系:[测试对象分析]——>[测试设计(计划.数据.用例.文档)] ...
- BZOJ_1022_[SHOI2008]_小约翰的游戏John_(博弈论_反Nim游戏)
描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1022 反Nim游戏裸题.详见论文<组合游戏略述——浅谈SG游戏的若干拓展及变形>. ...
- 深入理解c语言_从编译器的角度考虑问题_纪念Dennis Ritchie先生
开源中国: Dennis Ritchie教授过世了,他发明了C语言,一个影响深远并彻底改变世界的计算机语言.一门经历40多年的到今天还长盛不训的语言,今天很多语言都受到C的影 响,C++,Java,C ...
- c程序设计语言_习题7-6_对比两个输入文本文件_输出它们不同的第一行_并且要记录行号
Write a program to compare two files, printing the first line where they differ. Here's Rick's solut ...
- c语言_文件操作_FILE结构体解释_涉及对操作系统文件FCB操作的解释_
1. 文件和流的关系 C将每个文件简单地作为顺序字节流(如下图).每个文件用文件结束符结束,或者在特定字节数的地方结束,这个特定的字节数可以存储在系统维护的管理数据结构中.当打开文件时,就建立了和文件 ...
随机推荐
- symfony2中mysql和mongodb的增删改查总结
https://www.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/data-retrieval-and-manip ...
- TP生成二维码插件
安装 composer require endroid/qrcode 使用: use Endroid\QrCode\QrCode 然后 这个类库要改一下 在路径:你的项目路径\vendor\endro ...
- 搭建http文件服务器 - python3使用http.server搭建http文件服务器
适用场景 只要有python3就可以,windows系统cmd窗口直接敲命令,Linux系统,直接敲命令 step-1 cd cd 到需要搭建服务器的目录 step-2 http.server pyt ...
- Python return self
在Python中,return self的作用为: Returning self from a method simply means that your method returns a refer ...
- nginx 常用x代码
1.nginx 禁止ip直接访问,只允许域名访问,直接在.conf文件里 server上面再添加一个server 代码,不可以写同一个server里: server { listen 80 defau ...
- 版本管理 - Git 使用入门
Git 是一个分布式的版本管理系统,而 SVN 是一个集中式管理系统. 版本控制 Git与SVN的对比 对比 SVN Git 工作方式 集中式 分布式 文件管理 增量式 系统快照 权限控制 对团队中参 ...
- AngularJS的简单实用
Angular Js 的初步认识和使用 一: 1.模块化 定义模块和控制器 ng-app="myapp" controller=&qu ...
- python基础知识三——try与except处理异常语句
try/except介绍 与其他语言相同,在python中,try/except语句主要是用于处理程序正常执行过程中出现的一些异常情况,如语法错(python作为脚本语言没有编译的环节,在执行过程中对 ...
- Google Chrome打开权限设置开关(摄像头,录音等)
在搜索框输入以下字符 chrome://flags/#unsafely-treat-insecure-origin-as-secure
- SpringBoot使用注解进行分页
分页使用可以说非常普遍了,有时候会需要非常灵活的方式去开启或关闭分页,尝试使用一下注解的方式来进行分页. 依赖安装 需要使用的依赖: Mybatis-Plus PageHelper SpringBoo ...