一、功能简介
1.可实现谐波发生和任意波形生成,任意波形由公式输入。
2.谐波发生器可设置谐波次数,实现2-5次谐波的发生。可设置基波的幅值与频率、多次谐波的幅值、谐波的偏移量;若选择二次谐波,则3、4、5次谐波的幅值调节滑动杆为灰色禁用状态,其它谐波以此类推;根据用户调节谐波的幅值,可计算出总谐波失真THD,用于显示谐波的失真度。
3.任意波形生成,点击“公式生成”按钮,可在公式输入栏中输入想要显示的波形,应注意字符输入规范。
4.由两个波形图控件显示波形,分别显示生成信号的波形和信号的频谱。
二、其他波形信号发生器程序设计
1.面板整体设计
其他波形面板程序在一个大循环结构中设计,其整体程序框图如下图所示:
其他波形面板中主要包含了谐波和公式生成波形,对于两种方式采用了两个布尔开关,某一开关为真时,显示对应的信号波形,两种模式分别由两个条件结构控制。当两组开关均为假时,对系统进行初始化,程序设计如下:
当某一开关按下再关闭时,对系统进行初始化,清空两个波形图显示控件。在谐波发生时,将公式输入控件禁用,因此在初始化时需对该控件使能。
2.谐波发生程序设计
由条件结构判断谐波发生是否按下,按下时,进入条件结构,其程序框图如下:
由一个下拉列表配合条件结构设置谐波次数,可调节控件为基波频率、1-5次谐波的幅值、信号偏移量,谐波次数可选择二次谐波、三次谐波、四次谐波、五次谐波,对应的值为0、1、2、3。由于谐波发生并未用到公式输入,故将公式输入控件设置为灰色禁用。
当谐波次数为5时,由基波叠加2、3、4、5次谐波,其他谐波计算方式以此类推。若谐波次数为2,则不可设置3、4、5次谐波的幅值,故将对应的输入控件设置为灰色禁用。
在条件结构之外对生成的谐波信号进行处理,计算对应的失真度以及幅频特性,并将信号波形和信号频谱显示在波形图中。
3.公式生成程序设计
由条件结构判断谐波发生是否按下,按下时,进入条件结构,其程序框图如下:
将公式输入控件连接公式波形,生成相应的信号,在程序中需要先将输出信号转换成静态数据,再转换成动态数据,因为公式波形的输出信号无法直接输入频谱测量工具,只有通过两次转换将其转换为可以输入到频谱测量工具的数据类型,程序才能够正常运行。
三、程序运行结果
1.谐波发生实验
点击谐波发生按钮,设置谐波次数为二次谐波,设置基波幅值为10,频率为118Hz,设置二次谐波的幅值为0,运行结果如下图所示,可看到此时波形无失真,失真度为0%。
更改二次谐波幅值为5,运行结果如下,此时失真度为THD=49.997%。
设置谐波次数为三次谐波,设置三次谐波的幅值为4,运行结果如下,可看到此时波形失真度为71.145%。
设置谐波次数为四次谐波,设置四次谐波的幅值为2,运行结果如下,可看到此时波形失真度为74.536%。
设置谐波次数为五次谐波,设置五次谐波的幅值为1,运行结果如下,可看到此时波形失真度为75.359%。
2.公式波形实验
点击公式生成按钮,在方框中输入公式
sin
(
ω
∗
t
)
∗
sin
(
2
∗
p
i
(
1
)
∗
t
)
\sin(\omega\ast t)\ast\sin(2\ast pi(1)\ast t)
sin(ω∗t)∗sin(2∗pi(1)∗t),运行结果如下: