如何测量PWM波

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

如何测量PWM波的占空比?
硬件: Digital I/O (DIO)
问题:
PWM波是占空比可调的周期性数字脉冲,广泛应用于电机控制、温度控制等领域。

PWM波的关键参数是占空比,那么有哪些方式可以测量PWM波的占空比呢?
解答:
NI的数据采集板卡提供了模拟采集、数字IO、计数器等丰富测量资源,不同资源下都能完成PWM波的测量,同时R系列的FPGA板卡和cRIO也可以测量,各种方案实现方式如下:
a)利用计数器测量占空比
最简单的方案是采用计数器半周期测量,支持的计数器需要有双边沿分离检测的特性,支持的板卡包括 M系列(STC2核心)、X系列(STC3核心)数据采集卡、定时器/计数器板卡(NI-TIO核心)和部分C模块(DIO数目≤8)等,通常32位宽的计数器都支持该测量。

该方案通过预设半周期时间可以得到非常高精度的测量结果。

参考
Help/Hardware Input and Output/DAQmx/Counter Measurements/Period or Pluse Width /Meas Duty Cycle-Buffered-Finite.vi。

(cDAQ 9174,9178有四个计数器,每个槽都可以使用计数器资源,而cDAQ-9172只有5槽和6槽可以使用计数器资源)
图1 一个计数器测量占空比
对于带2个24位计数器的板卡,不具有双边沿分离检测,如PXI-6133,可以采用脉冲宽度测量,分别测量高脉宽时间和低脉宽时间,从而计算占空比。

参考
Help/Hardware Input and Output/DAQmx/Counter Measurements/Period or Pluse Width / Meas Pulse Width-Buffered-Finite.vi。

图2 两个计数器测量占空比
b)利用模拟采集测量占空比
该方案主要使用波形测量选板中的脉冲测量VI,可以根据周期性的采集数据计算占空比。

要求模拟采集有足够高的采样率(5~10倍以上脉冲频率,根据占空比而定)才能获取足够的波形信息,来提高占空比测量精度。

这种通过软件来计算占空比的方式,处理速度一般。

图3 模拟采集测量占空比
c)cRIO上如何实现占空比测量
CompactRIO平台上,针对数字IO位宽小于等于8位的C模块,选择Scan Interface 模式,项目中选择数字输入模块(如9401),右键打开属性配置界面,选择专用数字配置中的‘计数器’,可以配置每个计数器的测量模式,例如CTR0测量高脉冲,CTR1测量低脉冲,硬件连线上将信号同时连至DIO0和DIO1,即可实现占空比测量。

图4 C模块配置方式
图5 cRIO占空比测量程序
d) 利用FPGA测量占空比
FPGA上有精确的40MHz时钟驱动的计数器资源,通过记录信号沿变化时刻的计数器值可以计算得到PWM波的脉宽和周期,从而计算出占空比。

由于LabVIEW2012之前的FPGA程序不支持浮点运算,所以占空比计算需要放在RT程序或者上位机程序
中。

图6所示的程序即为FPGA占空比测量程序,实际调用时可将Digital In换成模块IO。

图6 FPGA占空比测量程序
附件:
主要软件:
主要软件版本: 2011
主要软件修正版本: N/A
次要软件: N/A
问题:有哪些方式可以实现PWM波的输出
解答:
PWM波即占空比可调的周期性数字脉冲,其应用非常广泛。

那么有哪些方式可以输出PWM波呢?
(1)最简单的就是使用X系列数据采集卡63xx(NI-TIO核心)脉冲输出——频率模式,参考:Help/Hardware Input and Output/DAQmx/Generating Digital Pulses/Gen Dig Pulse Train-Buff-Implicit-Cont.vi,在DAQmx Read函数中可以一次性将预定义的Duty Cycle和Frequency写入:
预定义PWM波序列
(cDAQ 9174,9178有四个计数器,同样采用NI-TIO核心,结合数字输出C模块,可以用于PWM波输出)
(2)如果不需要采用硬件预定义的方式去实时的修改PWM的占空比和频率,可以采用DAQmx Write或DAQmx Channel Property Node。

通过DAQmx Write修改PWM波属性
通过属性结点修改PWM波占空比和频率(见附件Gen PWM With UI.vi)
(3)在CompactRIO平台,选择Scan Interface,添加数字输出模块(如9401)后,可以右击模块选择Specific Function-PWM,则可以直接控制占空比,通过循环速率调整PWM波的频率。

右键数字输出模块-属性-选择Specific Mode
修改PWM0结点的值即直接修改占空比
使用DO来输出软件定时的PWM波
主要软件:
主要软件版本: 8.2
主要软件修正版本:
次要软件: Driver Software>>NI-DAQmx
问题:我想生成PWM输出。

循环时间和精度不是关键因素。

我能使用DO代替计数器来做这件事情吗?
解答:计数器可以用来生成PWM波形。

他们是硬件定时,所以很快而且准确。

因为他们是有限的资源,所以有些时候并不是一种选择。

如果您的应用没有这些要求(您的循环时间在秒这样的范围而且您不介意一些毫秒级别的延迟),您可以使用软件定时的方法来产生PWM波形。

一个应用的例子就是它可以用在周期为1秒而且精度为半秒的继电器控制。

附件中的例程可以用在这样的情况下。

注意:
不推荐使用软件定时所产生的PWM波形去控制电源设备。

相关链接:KnowledgeBase 3SJ70CX6: Software-Timed Digital I/O Benchmarks with DAQmx
附件:
- PWM_output_SW-timed_with_digital_line (vers 8.2).vi - PWM_output_SW-timed_with_digital_line (vers
7.1).vi
特点
采用滞环比较方式的电流跟踪型变流器的特点:
①硬件电路简单;
②属于实时控制方式,电流响应快;
③不用载波,输出电压波形中不含特定频率的谐波分量;
④与计算法和调制法相比,相同开关频率时输出电流中高次谐波含量较多;
⑤采用闭环控制.
PWM(Pulse Width Modulation)——脉宽调制。

其中包括:相电压控制PWM、脉宽PWM法、随机PWM、SPWM法、线电压控制PWM等。

在这里我们可以令频率不变,直接改变脉冲的宽度,亦即控制开关元件的导通时间;比如现在是高电平导通,那么方波的A越大,B越小,导通时间就长;否则就越短。

相关文档
最新文档