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?的更多相关文章

  1. S​Q​L​_​S​e​r​v​e​r​_​2​0​0​8​定​期​自​动​备​份​详​细​图​解

    S​Q​L​_​S​e​r​v​e​r​_​2​0​0​8​定​期​自​动​备​份​详​细​图​解 设置自动数据库的定期备份计划. http://wenku.baidu.com/link?url=Tu ...

  2. 二、多线程基础-乐观锁_悲观锁_重入锁_读写锁_CAS无锁机制_自旋锁

    1.10乐观锁_悲观锁_重入锁_读写锁_CAS无锁机制_自旋锁1)乐观锁:就像它的名字一样,对于并发间操作产生的线程安全问题持乐观状态,乐观锁认为竞争不总是会发生,因此它不需要持有锁,将 比较-设置 ...

  3. cb19a_c++_只适合string类型的操作_提取_追加_替换

    *cb19a_c++_只适合string类型的操作_提取_追加_替换三个substr重载函数-获取一个字符串的一部分六个append重载函数-追加字符十个replace重载函数-替换更换 重载函数越多 ...

  4. pytho简单爬虫_模拟登陆西电流量查询_实现一键查询自己的校园网流量

    闲来无事,由于校园内网络是限流量的,查询流量很是频繁,于是萌生了写一个本地脚本进行一键查询自己的剩余流量. 整个部分可以分为三个过程进行: 对登陆时http协议进行分析 利用python进行相关的模拟 ...

  5. 随心测试_软测基础_002_<测试工程师_核心技能体系>

    测试工程师核心技能体系构成 测试基础体系:[对象——>方法——>流程].[测试活动类型——>质量] 测试分析体系:[测试对象分析]——>[测试设计(计划.数据.用例.文档)] ...

  6. BZOJ_1022_[SHOI2008]_小约翰的游戏John_(博弈论_反Nim游戏)

    描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1022 反Nim游戏裸题.详见论文<组合游戏略述——浅谈SG游戏的若干拓展及变形>. ...

  7. 深入理解c语言_从编译器的角度考虑问题_纪念Dennis Ritchie先生

    开源中国: Dennis Ritchie教授过世了,他发明了C语言,一个影响深远并彻底改变世界的计算机语言.一门经历40多年的到今天还长盛不训的语言,今天很多语言都受到C的影 响,C++,Java,C ...

  8. c程序设计语言_习题7-6_对比两个输入文本文件_输出它们不同的第一行_并且要记录行号

    Write a program to compare two files, printing the first line where they differ. Here's Rick's solut ...

  9. c语言_文件操作_FILE结构体解释_涉及对操作系统文件FCB操作的解释_

    1. 文件和流的关系 C将每个文件简单地作为顺序字节流(如下图).每个文件用文件结束符结束,或者在特定字节数的地方结束,这个特定的字节数可以存储在系统维护的管理数据结构中.当打开文件时,就建立了和文件 ...

随机推荐

  1. springboot多数据源配合docker部署mysql主从实现读写分离

    本篇主要有两部分: 1.使用docker部署mysql主从 实现主从复制 2.springboot项目多数据源配置,实现读写分离 一.使用docker部署mysql主从 实现主从复制 此次使用的是wi ...

  2. Shell系列(33) - 多分支if语句简介及计算器例子

    多分支if条件语句 if [ 条件判断式1 ] then 当条件判断式1成立时,执行程序1 elif [ 条件判断式2 ] then 当条件判断式2成立时,执行程序2 ...省略更多条件... els ...

  3. jmeter长时间压测

    如何进行24h小时的压测? 长时间压测注意事项 生成报告文件过大 https://www.cnblogs.com/SunshineKimi/p/12298668.html

  4. vm 将宿主机文件夹 映射至 虚拟机

    一.关于centos如何安装(自行百度) 二.设置共享文件夹 添加共享文件夹(关闭虚拟机时操作) 虚拟机->设置->选项->共享文件夹 三.安装vm-tools (请用root用户执 ...

  5. Cnblogs 主题2

    洪卫:https://www.cnblogs.com/shwee/p/9060226.html https://sunhwee.com 1 #header{display:none;} /* 将默认的 ...

  6. BufferedInputStream与BufferedOutputStream的缓存底层实现

    首先观察BufferedInputStream 的继承体系,可以看出他是继承自一个FilterInputStream,而这个又是继承自InputStream 我们在之前的装饰器模式就讲过,这个Buff ...

  7. 如何借助 JuiceFS 为 AI 模型训练提速 7 倍

    背景 海量且优质的数据集是一个好的 AI 模型的基石之一,如何存储.管理这些数据集,以及在模型训练时提升 I/O 效率一直都是 AI 平台工程师和算法科学家特别关注的事情.不论是单机训练还是分布式训练 ...

  8. Dart 中的final 和 const

    Dart 常量和常量值 final 和 const 两个关键字用来定义常量,有什么区别呢? final 声明的是运行时常量,const声明的是编译时常量 const 可以声明常量值 举个例子: imp ...

  9. 地心地固坐标系(ECEF)与站心坐标系(ENU)的转换

    目录 1. 概述 2. 原理 2.1. 平移 2.2. 旋转 2.3. 总结 3. 实现 4. 参考 1. 概述 我在<大地经纬度坐标与地心地固坐标的的转换>这篇文章中已经论述了地心坐标系 ...

  10. Java初步学习——2021.10.05每日总结,第五周周三

    (1)今天做了什么: (2)明天准备做什么? (3)遇到的问题,如何解决? 今天学了对象与类,如何定义类和创建对象,以及构建方法的用法. 明天课比较多,把今天未学的例子敲一遍好了. 没有遇到什么问题.