LabVIEWCompactRIO 开发指南36 确定“Clock Ticks”或模拟时间

news2024/9/28 5:53:42

LabVIEWCompactRIO 开发指南36

确定“Clock Ticks”或模拟时间

桌面执行节点可以控制模拟时间,因此开发人员可以使用模拟I/O在开发计算机上执行期间更改关键点的激励。要成功使用此功能,需要测量FPGA VI完成所需的时间,或者需要以直观地知道完成所需时间的方式设计VI(例如,使用循环定时器来保证定时)。以下是测量完成FPGA VI所需时间的一些提示。

单周期定时循环

如果使用的是SCTL,则该循环中包含的代码始终需要参考时钟的一个时钟周期来执行,因此可以将时钟周期设置为1个时钟周期。如果有多个SCTL,请选择最快的时钟作为参考时钟。

带循环计时器的循环

在这种情况下,可以指定循环计时器的值(以刻度为单位)。如果循环计时器以毫秒或微秒为单位配置,请执行转换。例如,如果将循环定时器设置为10μs,请执行以下计算:

■Ticks=时钟(Hz)x时间(s)

■Ticks =40,000,000Hzx0.00001秒

■Ticks =400

因此,可以将桌面执行节点中的时钟周期输入配置为400个时钟周期。

没有循环计时器的循环

如果使用不包含任何模拟I/O(可能包含数字I/O)的While环路,则测量刻度数的最简单方法是使用采样探针。为此,请在While循环迭代终端上创建一个指标。右键单击连线并选择SamplingProbe»FPGA.。在仿真模式下运行VI一两秒钟,停止并查看采样探针窗口。在下面的示例中,可以看到While循环需要40MHz时钟的两个时钟周期来执行,根据采样探测窗口(每个时钟周期等于25ns)。对于这种情况,可以将时钟刻度输入设置为两个刻度。

注意:由于这是一个While循环,因此在仿真中测量的时钟周期数不一定等于在硬件中执行相同代码时产生的时钟周期数。但是,SCTL中的任何代码都可以保证循环准确。

图5.36.使用采样探测器测量每次迭代的时钟周期数

当循环以Delta-Sigma Module时钟的速率执行时

可能有一个以Δ-Σ模拟输入模块定义的速率执行的FPGA VI,例如图5.37所示示例中使用的VI。在仿真模式中,LabVIEW忽略来自这些属性节点的定时输入。因此,这些情况要求执行两个步骤:

1.通过添加相当于扫描速率的循环定时器来控制VI的仿真时序

2.将桌面执行节点中的时钟周期输入设置为与循环计时器输入的值相同的值

在此特定示例中,从转速表读取数据,模拟输入模块配置为以2.048kS/s或488μs的速率运行。第一步,需要将循环定时器添加到While循环中,并将其配置为488μs的循环速率。

图5.37.通过添加条件环路定时器来指定模拟时间。

可以将循环定时器置于条件禁用结构中,以便仅在VI执行模拟模式时才调用它。使用以下值配置条件禁用结构:

■FPGA_EXECUTION_MODE==DEV_COMPUTER_SIM_IO

循环计时器应放置在此条件大小写中,默认大小写应为空。

图5.38.配置条件禁用结构

最后一步是在桌面配置节点中设置时钟周期输入。在此示例中,488μs等于19,531个时钟周期,因此将时钟时钟周期输入设置为19,531个时钟周期。

第3步:构建测试平台

成功配置桌面执行节点后,即可开始构建测试平台。在下面显示的示例中,记录的转速计数据从TDMS文件中读取,并写入称为Tach的模拟输入I/Onode。FPGA VI在仿真模式下执行,结果rpm显示在图表上。要验证转速表IP,可以查看从文件中读取的转速表数据和绘制到图表的转速表数据。

图5.39.创建测试VI并验证FPGA代码。

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

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

相关文章

将矩阵各行顺序进行反排numpy.flipud()

【小白从小学Python、C、Java】 【计算机等考500强证书考研】 【Python-数据分析】 将矩阵各行顺序进行反排 numpy.flipud() [太阳]选择题 请问关于以下代码的表述错误的是? import numpy as np a np.array([[1,2,3],[4,5,6],[7,8,9]]) print("【显示】a: \…

PLC/DCS系统中电磁干扰的来源及解决办法

自动化系统中所使用的各种类型DCS/PLC等自动化设备,有的是集中安装在控制室,有的是安装在生产现场和各种电机设备上,它们大多处在强电电路和强电设备所形成的恶劣电磁环境中。要提高这类控制系统可靠性,必须消除各种干扰才能有效保…

lwIP更新记08:TCP 回调函数中调用 tcp_abort 终于安全了

从 lwIP-1.4.0 开始,tcp 回调函数中调用 tcp_abort 函数终于安全了。 在此之前,如果从 tcp 回调函数中调用 tcp_abort,则会访问未分配的内存。 应用程序关闭连接,正常情况下是调用 tcp_close 函数,经过 4 次握手安全的…

XSS - 跨站脚本攻击

一、XSS简介。 XSS跨站脚本(Cross-Site Scripting,XSS)自1996年诞生以来,如今已经历十多年的演化。由于和另一种网页技术-层叠样式表(Cascading Style Sheets,CSS)的缩写一样,为了防…

Netty和Tomcat的区别、性能对比

文章目录 一、Netty和Tomcat有什么区别?二、为什么Netty受欢迎?三、Netty为什么并发高 ? 一、Netty和Tomcat有什么区别? Netty和Tomcat最大的区别就在于通信协议,Tomcat是基于Http协议的,他的实质是一个基…

【AI创作】用AI创作助手写的文章--提问Git系列

目录 解释 Git 的基本概念和使用方式。Git 的使用方式如下: git常用命令有哪些?git异常报错解决方法最后 解释 Git 的基本概念和使用方式。 Git 是一种分布式版本控制系统,它通过记录文件的变化来管理文件版本,可以保存文件的历史…

在树莓派上控制GPIO常用的编程语言有哪些

在树莓派上控制GPIO(General Purpose Input Output,通用输入输出接口),比较常用和简单的编程语言有: 1. Python 这是树莓派官方推荐语言,控制GPIO只需要导入RPi.GPIO库,简单易学,代码如下: import RPi.GPIO as GPIOGPIO.setmode(GPIO.BCM) GPIO.setup(18, GPIO.…

​路由器端口映射怎么设置?内网IP不能映射怎么办?​

使用路由器后,Internet用户无法访问到局域网内的主机,因此不能访问内网搭建的Web、FTP、Mail等服务器。路由器 端口映射功能可以实现将内网的服务器映射到Internet,从而实现服务器对外开放。 建议在设置路由器端口映射之前,确认以…

ServletOutputStream下载文件名中文乱码或不显示

废话不多说,直接上代码。。。 下载文件名中文乱码或不显示情况 下载文件名是一道下滑线 改造代码 pdfName是下载文件的名字,带后缀。 String s URLEncoder.encode(pdfName, "utf-8").replaceAll("\\", "%20"); Stri…

生成式人工智能(generative AI)对公共部门的影响

作者:Leanne Link, Dave Erickson 在过去的几个月里,我们看到了对生成式人工智能 (generative artificial intelligence - GAI) 的极大兴趣。 人们正在试用 ChatGPT 等 GAI 应用程序,企业正在思考它对客户体验、会计、营销等方面的影响。 鉴于…

分享这几个简单好用的手机使用技巧给大家

技巧一:微信的听文字消息功能是一项方便而实用的功能,旨在帮助用户通过语音合成技术将文字消息转化为语音,以便用户可以通过听觉方式收听和理解信息。 这项功能适用于用户在某些情况下无法阅读或不方便阅读文字消息的场景。当用户收到一条文…

springboot、Mybatis-plus工程多数据源字段映射不生效

1、多数据源配置文件 2、配置项 多个数据源配置项中分别添加配置 bean.getObject().getConfiguration().setMapUnderscoreToCamelCase(true); //配置驼峰命名 或者 参考地址 Configuration MapperScan(basePackages "it.aspirin.riderserver.mapper.mysql", sqlS…

C++模板初阶(函数模板、类模板)知识点+完整思维导图+实操图+深入细节通俗易懂建议收藏

绪论 思想决定行动,行动养成习惯,习惯形成品质,品质决定命运。——陶行知 本章讲的是c的初阶模板,全文不算代码字数少的可怜,但模板是我们c必须学的一个宝物,他的出现可是c的飞跃性成就!下面将主…

如何在华为OD机试中获得满分?Java实现【打印文件】一文详解!

✅创作者:陈书予 🎉个人主页:陈书予的个人主页 🍁陈书予的个人社区,欢迎你的加入: 陈书予的社区 🌟专栏地址: Java华为OD机试真题(2022&2023) 文章目录 1. 题目描述2. 输入描述3. 输出描述…

jsp基于 JavaWeb+springboot 的校园快递驿站管理系统

不同的系统提供的服务也不相同,其对应的功能也不相同,所以,系统开工前,需要明确其用途,确定其功能。由此,才可以进行各个任务的开展。 校园驿站管理系统经过分析,确定了其需要设置管理员的角色&…

如何使用Word控件Spire.Doc创建专属条码?

Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库。在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档。拥有近10年专业开发经验Spire系列办公文档开发工具,专注于创建、编辑、转…

chatgpt赋能python:Python修改变量名:提高代码可读性和维护性

Python修改变量名:提高代码可读性和维护性 Python是一门通用编程语言,被广泛应用于Web开发、数据分析、人工智能等领域。在实际开发中,我们可能会遇到需要修改变量名的情况。本文将介绍如何使用Python修改变量名,提高代码的可读性…

LiveGBS流媒体平台国标GB/T28181功能-作为下级级联到海康大华宇视华为等第三方国标平台同样支持对接政务公安内网国标视频平台

LiveGBS流媒体平台国标GB/T28181功能-作为下级级联到海康大华宇视华为等第三方国标平台同样支持对接政务公安内网国标视频平台 1、什么是GB/T28181级联2、搭建GB28181国标流媒体平台3、获取上级平台接入信息3.1、如何提供信息给上级3.2、上级国标平台如何添加下级域3.2、接入Li…

【vim neovim】从入门到放弃(“四种”模式、常用命令、正则表达式、文件属性、插件安装--代码补全、文件树)

本文所有操作均通过ssh连接腾讯云服务器完成。如果你正在使用安装GNOME桌面的Linux,很多操作可以通过鼠标完成,或许更加直观。 推荐使用neovim(结合鼠标操作更加丝滑)。 nvim效果展示: 一、vim简介二、vim操作2.1 三种…

【SpringCloud】三、Nacos服务注册+配置管理+集群搭建

文章目录 一、认识Nacos1、安装2、服务注册和发现3、服务分级存储模型4、负载均衡策略--NacosRule5、服务实例的权重设置5、环境隔离namespace6、Eureka和Nacos的区别 二、Nacos配置管理1、统一配置管理2、微服务配置拉取3、配置热更新4、多环境配置共享 三、Nacos集群搭建1、初…