当前位置: 首页 > news >正文

vTESTstudio - VT System CAPL Functions - VT2004(续1)

成熟,就是某一个突如其来的时刻,把你的骄傲狠狠的踩到地上,任其开成花或者烂成泥。

vtsStartStimulation - 启动激励输出

功能:自动激励输出

注意:在启动激励输出之前,一定要设置好输出模式

Target:目标通道变量空间名称,例如:VTS::RPM_Sensor

返回值:

0:成功重置目标通道最大和最小值

-1:调用错误

-2: 调用命令的命名空间不存在、不是有效的VT系统命名空间或不支持此命令。

-4: 未在测试模块的主方法上下文中调用该函数,没有等到从VT系统接管设置。

Demo演示

参考vtsStopStimulation代码

vtsStopStimulation - 停止激励输出

功能:停止激励输出

注意:停止激励信号的输出是将激励模式重置,如果想要再次启动激励输出,不仅需要vtsStartStimulation来再次激动,并且需要在启动之前通过函数vtsSetStimulationMode重新设置激励模式,否则启动激励信号输出将会失败。停止激励输出是需要一小段时间来实现的,因此如果是用在处理函数过程中,这点需要注意,可能会影响预期的结果,最好是在脚本的结束使用,这样不会影响到程序的执行。

Target:目标通道变量空间名称,例如:VTS::RPM_Sensor

返回值:

0:成功重置目标通道最大和最小值

-1:调用错误

-2: 调用命令的命名空间不存在、不是有效的VT系统命名空间或不支持此命令。

-4: 未在测试模块的主方法上下文中调用该函数,没有等到从VT系统接管设置。

Demo演示

以下示例演示了如何使用VT2004通道的PWM输出来模拟基于PWM的传感器(例如RPM传感器)。本例中使用的通道称为RPM_Sensor。

SimulateSensorPWM ()
{// 频率设置 (100Hz)float currentFrequency = 100.0;// 选择电压刺激和PWM曲线类型vtsSetStimulationMode("VTS::RPM_Sensor", eVTSStimulationModeVoltage);vtsSetCurveType("VTS::RPM_Sensor", eVTSCurveTypePWM);// PWM信号将在0V和5V之间切换vtsSetPWMVoltageLow("VTS::RPM_Sensor", 0.0);vtsSetPWMVoltageHigh("VTS::RPM_Sensor", 5.0);// 将重复次数设置为无限vtsSetPWMRepeats("VTS::RPM_Sensor", 0);// 设置初始频率(100Hz)和占空比(50%)值@sysvar::VTS::RPM_Sensor::PWMFreq = currentFrequency;@sysvar::VTS::RPM_Sensor::PWMDC = 50.0;// 开始仿真vtsStartStimulation("VTS::RPM_Sensor");// To stimulate different sensor readings increase// frequency of the PWM signal over time//使用不同的激励传感器//PWM信号随时间的频率while(currentFrequency < 200){// 每100ms将频率增加1HzTestWaitForTimeOut(100);currentFrequency += 1;@sysvar::VTS::RPM_Sensor::PWMFreq = currentFrequency;}//停止仿真vtsStopStimulation("VTS::RPM_Sensor");
}
//同功能不同实现方法
sysvar::VTS::RPM_Sensor.StartStimulation();
sysvar::VTS::RPM_Sensor.StopStimulation();

vtsSetPWMResistanceLow - 设置PWM输出的低电阻值

功能:在特定输出的PWM模式下输出指定PWM信号的低电阻值

Target:目标通道变量空间名称,例如:VTS::Temp_Sensor

Resistance:电阻值,单位为欧姆。VT2004第四通道支持范围为1欧姆 - 25000欧姆;其他通道支持范围为10欧姆 - 15000欧姆;当电阻值设置为-1时,则代表阻值无穷大。如果使用过程中超出硬件的使用范围可能舍入到下一个最高值,也有可能设置为最低值。

返回值:

0:成功重置目标通道最大和最小值

-1:调用错误

-2: 调用命令的命名空间不存在、不是有效的VT系统命名空间或不支持此命令。

-4: 未在测试模块的主方法上下文中调用该函数,没有等到从VT系统接管设置。

Demo演示

参考vtsSetPWMResistanceHigh的demo

vtsSetPWMResistanceHigh - 设置PWM输出的高电阻值

功能:在特定输出的PWM模式下输出指定PWM信号的高电阻值

Target:目标通道变量空间名称,例如:VTS::Temp_Sensor

Resistance:电阻值,单位为欧姆。VT2004第四通道支持范围为1欧姆 - 25000欧姆;其他通道支持范围为10欧姆 - 15000欧姆;当电阻值设置为-1时,则代表阻值无穷大。如果使用过程中超出硬件的使用范围可能舍入到下一个最高值,也有可能设置为最低值。

返回值:

0:成功重置目标通道最大和最小值

-1:调用错误

-2: 调用命令的命名空间不存在、不是有效的VT系统命名空间或不支持此命令。

-4: 未在测试模块的主方法上下文中调用该函数,没有等到从VT系统接管设置。

Demo演示

下面示例展示了了如何使用VT2004通道的内部电阻十进制来模拟基于PWM的传感器。在通道Temp_Sensor上,电阻器在100欧姆和140欧姆之间切换,频率为20 Hz,占空比为50%。

SimulateSensorPWMResistance ()
{//选择电阻激励和PWM曲线类型vtsSetStimulationMode("VTS::Temp_Sensor", 3);vtsSetCurveType("VTS::Temp_Sensor", 1);//配置低电阻(100Ω)和高(140Ω)电阻值vtsSetPWMResistanceLow("VTS::Temp_Sensor", 100);vtsSetPWMResistanceHigh("VTS::Temp_Sensor", 140);//将重复次数设置为无限vtsSetPWMRepeats("VTS::Temp_Sensor", 0);//创建频率为20Hz、DC 50%的PWM信号@sysvar::VTS::Temp_Sensor::PWMFreq = 20.0;@sysvar::VTS::Temp_Sensor::PWMDC = 50.0;// 开始仿真vtsStartStimulation("VTS::Temp_Sensor");
}
//同功能不同实现方法
sysvar::VTS::Temp_Sensor.SetPWMResistanceHigh(140);

vtsSetPWMStartDelay - 设置PWM信号曲线输出的启动延迟

功能:指定曲线激励或PWM激励开始后的延迟。该函数仅在VT2004和VT2848模块支持此功能。

Target:目标通道变量空间名称,例如:VTS::Temp_Sensor

StartDelay:启动延迟时间,单位 秒。PWM波形或者曲线输出开始后延时的时间,该参数以纳秒分辨率传输至VT系统。

注意:该函数只能在VT系统模块的适当通道的系统变量命名空间上调用。

返回值:

0:成功重置目标通道最大和最小值

-1:调用错误

-2: 调用命令的命名空间不存在、不是有效的VT系统命名空间或不支持此命令。

-3: 指定的StartDelay无效

Demo演示

demo展示中,两个VT2004通道的PWM输出模拟两个具有PWM输出的传感器。SetPWMStartDelay命令确保通道Sensor2上的PWM输出在2ms后启动,以产生相应的相移。

//为传感器1设置PWM激励
//设置电压刺激模式
vtsSetStimulationMode( "VTS::Sensor1", 1);
//设置曲线型PWM
vtsSetCurveType("VTS::Sensor1", 1);
//将PWM信号的低电压设置为10V
vtsSetPWMVoltageLow("VTS::Sensor1", 10);
//将PWM信号的高电压设置为14V
vtsSetPWMVoltageHigh("VTS::Sensor1", 14);
//设置占空比为40%
@sysvar::VTS::Sensor1::PWMDC = 40;
//将频率设置为100Hz
@sysvar::VTS::Sensor1::PWMFreq = 100;
//为传感器2设置PWM激励
//设置电压激励模式
vtsSetStimulationMode("VTS::Sensor2", 1);
//设置曲线型PWM
vtsSetCurveType("VTS::Sensor2", 1);
//将PWM信号的低电压设置为10V
vtsSetPWMVoltageLow("VTS::Sensor2", 10);
//将PWM信号的高电压设置为14V
vtsSetPWMVoltageHigh("VTS::Sensor2", 14);
//设置占空比为40%
@sysvar::VTS::Sensor2::PWMDC = 40;
//将频率设置为100Hz
@sysvar::VTS::Sensor2::PWMFreq = 100;
/为传感器2设置2ms的启动延迟
//->PWM信号有轻微的相移
vtsSetPWMStartDelay("VTS::Sensor2", 0.002);
//启动激励
vtsStartStimulation("VTS::Sensor1");
vtsStartStimulation("VTS::Sensor2");

相关文章:

vTESTstudio - VT System CAPL Functions - VT2004(续1)

成熟,就是某一个突如其来的时刻,把你的骄傲狠狠的踩到地上,任其开成花或者烂成泥。vtsStartStimulation - 启动激励输出功能&#xff1a;自动激励输出注意&#xff1a;在启动激励输出之前&#xff0c;一定要设置好输出模式Target&#xff1a;目标通道变量空间名称&#xff0c;例…...

WeakMap弱引用

let obj{name:张三} //{name:张三}这个对象能够被读取到&#xff0c;因为obj这个变量名对它的引用 ​ //将引用覆盖掉 objnull //这个对象将会被从内存中移除&#xff0c;因为我们已经失去了对他的所有引用 let obj{name:张三} let arr[obj] ​ objnull //对象{name:张三}不会…...

Springboot 使用quartz 定时任务 增删改查

前段时间公司项目用到了 定时任务 所以写了一篇定时任务的文章 &#xff0c;浏览量还不错 &#xff0c; Springboot 整合定时任务 ) 所以就准备写第二篇&#xff0c; 如果你是一名Java工程师&#xff0c;你也可以会看到如下的页面 &#xff0c;去添加定时任务 定时任务展示 :…...

华为OD机试 - 猜字谜(Python) | 机试题+算法思路 【2023】

最近更新的博客 华为OD机试 - 热点网络统计 | 备考思路,刷题要点,答疑 【新解法】 华为OD机试 - 查找单入口空闲区域 | 备考思路,刷题要点,答疑 【新解法】 华为OD机试 - 好朋友 | 备考思路,刷题要点,答疑 【新解法】 华为OD机试 - 找出同班小朋友 | 备考思路,刷题要点…...

Linux常用命令汇总

1、tcpdump抓包 tcpdump这个命令是用来抓包的&#xff0c;默认情况下这个命令是没有的&#xff0c;需要安装一下&#xff1a; yum install -y tcpdump 使用这个命令的时候最好是加上你网卡的名称&#xff0c;不然可能使用不了&#xff1a; tcpdump -nn -i {网卡名称} 网卡名称…...

1.TCP、UDP区别、TCP/IP七层、四层模型、应用层协议(计网)

文章目录1.OSI 七层模型是什么&#xff1f;每一层的作用是什么&#xff1f;2.TCP/IP 四层模型是什么&#xff1f;每一层的作用是什么&#xff1f;应用层&#xff08;Application layer&#xff09;传输层&#xff08;Transport layer&#xff09;网络层&#xff08;Network lay…...

气敏电阻的原理,结构,分类及应用场景总结

🏡《总目录》 目录 1,概述2,结构3,工作原理4,分类4.1,加热方式分类4.2,材料分类4.3,氧化还原分类5,应用场景6,总结1,概述 气敏电阻是指电阻值随着环境中某种气体的浓度变化而变化的电阻,本文对其工作原理,结构,分类和应用场景进行总结。 2,结构 气敏电阻由防爆…...

实验10 拓扑排序与最短路径2022

A. DS图—图的最短路径&#xff08;无框架&#xff09;题目描述给出一个图的邻接矩阵&#xff0c;输入顶点v&#xff0c;用迪杰斯特拉算法求顶点v到其它顶点的最短路径。输入第一行输入t&#xff0c;表示有t个测试实例第二行输入顶点数n和n个顶点信息第三行起&#xff0c;每行输…...

C/C++每日一练(20230218)

目录 1. 整数转罗马数字 2. 跳跃游戏 II 3. 买卖股票的最佳时机 IV 1. 整数转罗马数字 罗马数字包含以下七种字符&#xff1a; I&#xff0c; V&#xff0c; X&#xff0c; L&#xff0c;C&#xff0c;D 和 M。 字符 数值 I 1 V 5 X …...

【C语言】预编译

&#x1f6a9;write in front&#x1f6a9; &#x1f50e;大家好&#xff0c;我是謓泽&#xff0c;希望你看完之后&#xff0c;能对你有所帮助&#xff0c;不足请指正&#xff01;共同学习交流&#x1f50e; &#x1f3c5;2021年度博客之星物联网与嵌入式开发TOP5&#xff5…...

音频信号处理笔记(一)

相关课程&#xff1a;【音频信号处理及深度学习教程】 文章目录01 信号的时域分析1.1 分帧1.1.1 幅值包络1.1.2 均方根能量0 信号的叠加&#xff1a;https://teropa.info/harmonics-explorer/ 一个复杂信号分解成若干简单信号分量之和。不同个频率信号的叠加: 由于和差化积&a…...

【深度学习】模型评估

上一章——多分类问题和多标签分类问题 文章目录算法诊断模型评估交叉验证测试算法诊断 如果你为问题拟合了一个假设函数&#xff0c;我们应当如何判断假设函数是否适当拟合了&#xff1f;我们可以通过观察代价函数的图像&#xff0c;当代价函数达到最低点的时候&#xff0c;此…...

AcWing《蓝桥杯集训·每日一题》—— 3777 砖块

AcWing《蓝桥杯集训每日一题》—— 3777. 砖块 文章目录AcWing《蓝桥杯集训每日一题》—— 3777. 砖块一、题目二、解题思路三、解题思路本次博客我是通过Notion软件写的&#xff0c;转md文件可能不太美观&#xff0c;大家可以去我的博客中查看&#xff1a;北天的 BLOG&#xf…...

CleanMyMac X软件下载及详细功能介绍

mac平台的知名系统清理应用CleanMyMac在经历了一段时间的测试后&#xff0c;全新设计的X正式上线。与CleanMyMac3相比&#xff0c;新版本的UI设计焕然一新&#xff0c;采用了完全不同的风格。使用Windows电脑时&#xff0c;很多人会下载各类优化软件&#xff0c;而在Mac平台中&…...

pytorch零基础实现语义分割项目(一)——数据概况及预处理

语义分割之数据加载项目列表前言数据集概况数据组织形式数据集划分数据预处理均值与方差结尾项目列表 语义分割项目&#xff08;一&#xff09;——数据概况及预处理 语义分割项目&#xff08;二&#xff09;——标签转换与数据加载 语义分割项目&#xff08;三&#xff09…...

ARM+LINUX嵌入式学习路线

嵌入式学习是一个循序渐进的过程&#xff0c;如果是希望向嵌入式软件方向发展的话&#xff0c;目前最常见的是嵌入式Linux方向&#xff0c;关注这个方向&#xff0c;大概分3个阶段&#xff1a; 1、嵌入式linux上层应用&#xff0c;包括QT的GUI开发 2、嵌入式linux系统开发 3、…...

echart在微信小程序的使用

echart在微信小程序的使用 echarts不显示在微信小程序 <!-- 微信小程序的echart的使用 --> <view class"container"><ec-canvas id"mychart-dom-bar" canvas-id"mychart-bar" ec"{{ ec }}"></ec-canvas> &l…...

51单片机最强模块化封装(5)

文章目录 前言一、创建timer文件,添加timer文件路径二、timer文件编写三、模块化测试总结前言 今天这篇文章将为大家封装定时器模块,定时器是工程项目中必不可少的,希望大家能够将定时器理解清楚并且运用自如。 一、创建timer文件,添加timer文件路径 这里的操作就不过多…...

链表学习之判断链表是否回文

链表解题技巧 额外的数据结构&#xff08;哈希表&#xff09;&#xff1b;快慢指针&#xff1b;虚拟头节点&#xff1b; 判断链表是否回文 要求&#xff1a;时间辅助度O(N)&#xff0c;空间复杂度O(1) 方法1&#xff1a;栈&#xff08;不考虑空间复杂度&#xff09; 遍历一…...

【Linux06-基础IO】4.5万字的基础IO讲解

前言 本期分享基础IO的知识&#xff0c;主要有&#xff1a; 复习C语言文件操作文件相关的系统调用文件描述符fd理解Linux下一切皆文件缓冲区文件系统软硬链接动静态库的理解和制作动静态编译 博主水平有限&#xff0c;不足之处望请斧正&#xff01; C语言文件操作 #再谈文件…...

第19节 Node.js Express 框架

Express 是一个为Node.js设计的web开发框架&#xff0c;它基于nodejs平台。 Express 简介 Express是一个简洁而灵活的node.js Web应用框架, 提供了一系列强大特性帮助你创建各种Web应用&#xff0c;和丰富的HTTP工具。 使用Express可以快速地搭建一个完整功能的网站。 Expre…...

java 实现excel文件转pdf | 无水印 | 无限制

文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...

微服务商城-商品微服务

数据表 CREATE TABLE product (id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 商品id,cateid smallint(6) UNSIGNED NOT NULL DEFAULT 0 COMMENT 类别Id,name varchar(100) NOT NULL DEFAULT COMMENT 商品名称,subtitle varchar(200) NOT NULL DEFAULT COMMENT 商…...

解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错

出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上&#xff0c;所以报错&#xff0c;到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本&#xff0c;cu、torch、cp 的版本一定要对…...

【7色560页】职场可视化逻辑图高级数据分析PPT模版

7种色调职场工作汇报PPT&#xff0c;橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版&#xff1a;职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...

短视频矩阵系统文案创作功能开发实践,定制化开发

在短视频行业迅猛发展的当下&#xff0c;企业和个人创作者为了扩大影响力、提升传播效果&#xff0c;纷纷采用短视频矩阵运营策略&#xff0c;同时管理多个平台、多个账号的内容发布。然而&#xff0c;频繁的文案创作需求让运营者疲于应对&#xff0c;如何高效产出高质量文案成…...

AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别

【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而&#xff0c;传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案&#xff0c;能够实现大范围覆盖并远程采集数据。尽管具备这些优势&#xf…...

GitHub 趋势日报 (2025年06月06日)

&#x1f4ca; 由 TrendForge 系统生成 | &#x1f310; https://trendforge.devlive.org/ &#x1f310; 本日报中的项目描述已自动翻译为中文 &#x1f4c8; 今日获星趋势图 今日获星趋势图 590 cognee 551 onlook 399 project-based-learning 348 build-your-own-x 320 ne…...

NPOI Excel用OLE对象的形式插入文件附件以及插入图片

static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...

Vite中定义@软链接

在webpack中可以直接通过符号表示src路径&#xff0c;但是vite中默认不可以。 如何实现&#xff1a; vite中提供了resolve.alias&#xff1a;通过别名在指向一个具体的路径 在vite.config.js中 import { join } from pathexport default defineConfig({plugins: [vue()],//…...