一、功能简介
1.可实现调幅波、调频波、调相波三种信号的调制。 2.调幅波,可设置原始信号和载波信号的类型,原始信号包括正弦波、余弦波、方波、三角波、锯齿波;载波信号包括正弦波和余弦波;原始信号和载波信号均可实现幅值、频率相位的调节,调幅过程中可实现调制系数
M
f
M_f
Mf的调节。 3.调频波,不可设置原始信号和载波信号的类型,默认为余弦信号;可实现调制系数
M
f
M_f
Mf的调节;由于此时不再需要方波信号,因此占空比滑动杆为灰色禁用状态。 4.调相波,不可设置原始信号和载波信号的类型,默认为余弦信号;不可实现调制系数
M
f
M_f
Mf的调节;占空比滑动杆为灰色禁用状态。 5.由四个波形图控件显示波形,分别显示:原始信号、载波信号、调制信号、调制信号频谱。没有按钮按下时,显示控件不显示波形,按下按键时,显示对应波形,按键弹起时,波形清空。
二、调制波形信号发生器程序设计
1.面板整体设计
调制波形信号发生器面板程序在一个大循环结构中设计,其整体程序框图如下图。 对于三种调制方式采用了三个布尔开关,某一开关为真时,显示对应的四组波形,三种调制方式分别由三个条件结构控制。当三组开关均为假时,对系统进行初始化,程序设计如下。 如果不对系统进行初始化,会出现某一开关关闭后,依然显示刚刚的波形,初始化后实现按钮关闭,波形显示为空。在初始化波形图的同时,还对部分数字输入控件进行了初始化,因为在某些程序设计中,这些输入控件被禁用了,需要重新使能启用。例如在调相波时,未用到调制系数
M
f
M_f
Mf,将其显示灰色并禁用,如果先进行调相波操作,再进行调频波或调幅波操作,则无法使用调制系数
M
f
M_f
Mf控件,因此在某一按钮关闭后,需要对这些输入控件进行使能。
2.调幅波程序设计
由条件结构判断调幅波开关是否按下,按下时,进入条件结构,其程序框图如下图: 由两个下拉列表配合两个条件结构设置原始信号和载波信号,设
m
(
t
)
m(t)
m(t)为将要调制的时域信号,
M
f
M_f
Mf为载波的直流分量(调制系数),
c
o
s
ω
c
t
cos\omega_ct
cosωct为载波函数,
S
A
M
(
t
)
S_{AM}(t)
SAM(t)为调制出的时域波形,其调制的表达式如下:
S
A
M
(
t
)
=
[
m
(
t
)
+
M
f
]
c
o
s
ω
c
t
S_{AM}\left(t\right)=[m\left(t\right)+M_f] cosω_ct
SAM(t)=[m(t)+Mf]cosωct 在程序中根据公式计斜体样式算出调幅波,并通过频谱测量计算对应波形的频谱,将波形显示至指定位置。
3.调频波程序设计
由条件结构判断调频波是否按下,按下时,进入条件结构,其程序框图如下: 此时原始信号和载波信号仅采用余弦信号,故采用局部变量改变两个下拉列表的值,同时,通过调用属性节点,将两个下拉列表Disable禁止使用。由于在调试过程中,需要调节原始信号和载波信号频率满足一定条件时,才能达到调频波的效果,故为了方便观看频率调制效果,将两信号的频率固定,并将对应的数字输入控件设定为禁用并显示灰色。 由两个下拉列表配合两个条件结构设置原始信号和载波信号,设
m
(
t
)
m(t)
m(t)为将要调制的时域信号,
M
f
M_f
Mf为调制系数,
c
o
s
ω
c
t
cos\omega_ct
cosωct为载波函数,
S
F
M
(
t
)
S_{FM}(t)
SFM(t)为调制出的时域波形,
A
A
A为载波的幅值,
K
f
K_f
Kf为调频灵敏度,其调制的表达式如下:
S
F
M
(
t
)
=
A
c
o
s
[
ω
c
t
+
K
f
∫
m
(
τ
)
d
τ
]
S_{FM}\left(t\right)=Acos{[\omega}_ct+K_f\int m\left(\tau\right)d\tau]
SFM(t)=Acos[ωct+Kf∫m(τ)dτ] 设原始信号为
m
(
t
)
=
A
m
c
o
s
ω
m
t
m\left(t\right)=A_mcos\omega_mt
m(t)=Amcosωmt,由于LabVIEW计算信号的积分存在一定难度,故对信号进行化简,得到新的调频信号的表达式如下式所列:
S
F
M
(
t
)
=
A
c
o
s
[
ω
c
t
+
m
f
s
i
n
ω
m
t
]
S_{FM}\left(t\right)=Acos{[\omega}_ct+m_fsin\omega_mt]
SFM(t)=Acos[ωct+mfsinωmt] 其中,
m
f
m_f
mf的定义如下:
m
f
=
K
f
A
m
ω
m
=
∆
ω
ω
m
=
∆
f
f
m
m_f=\frac{K_fA_m}{\omega_m}=\frac{∆ω}{ω_m}=\frac{∆f}{f_m}
mf=ωmKfAm=ωm∆ω=fm∆f 再根据三角函数和差公式,得到便于使用LabVIEW计算的表达式:
S
F
M
(
t
)
=
A
(
c
o
s
(
ω
c
t
)
c
o
s
[
m
f
s
i
n
(
ω
m
t
)
]
−
s
i
n
(
ω
c
t
)
s
i
n
[
m
f
s
i
n
(
ω
m
t
)
]
)
S_{FM}\left(t\right)=A(cos(\omega_ct)cos\left[m_fsin(\omega_mt)\right]-sin(\omega_ct)sin\left[m_fsin(\omega_mt)\right])
SFM(t)=A(cos(ωct)cos[mfsin(ωmt)]−sin(ωct)sin[mfsin(ωmt)]) 在程序中根据公式计算出调频波,并通过频谱测量计算对应波形的频谱,将波形显示至指定位置。 由于波形显示时刷新太快,所以在程序中添加了两个延时函数,以降低波形的刷新率,提高图像观看效果。
4.调相波程序设计
由条件结构判断调相波是否按下,按下时,进入条件结构,其程序框图如下图所示: 由两个下拉列表配合两个条件结构设置原始信号和载波信号,设
m
(
t
)
m(t)
m(t)为将要调制的时域信号,
A
A
A为载波的幅值,
c
o
s
ω
c
t
cos\omega_ct
cosωct为载波函数,
S
P
M
(
t
)
S_{PM}(t)
SPM(t)为调制出的时域波形,其调制的表达式为:
S
P
M
(
t
)
=
A
c
o
s
[
ω
c
t
+
m
(
t
)
]
S_{PM}\left(t\right)=Acos{[\omega}_ct+m(t)]
SPM(t)=Acos[ωct+m(t)] 根据三角函数和差公式,将其简化为:
S
P
M
(
t
)
=
A
(
c
o
s
(
ω
c
t
)
c
o
s
[
m
(
t
)
]
−
s
i
n
(
ω
c
t
)
s
i
n
[
m
(
t
)
]
)
S_{PM}\left(t\right)=A(cos(\omega_ct)cos\left[m\left(t\right)\right]-sin(\omega_ct)sin\left[m\left(t\right)\right])
SPM(t)=A(cos(ωct)cos[m(t)]−sin(ωct)sin[m(t)]) 在程序中根据公式计算出调相波,并通过频谱测量计算对应波形的频谱,将波形显示至指定位置。
三、程序运行结果
1.调幅波实验
点击调幅波,设置原始信号为正弦波,载波信号为正弦波,调制系数
m
f
=
0
m_f=0
mf=0,幅值、频率设置以及运行结果如下图所示: 更改调制系数为
m
f
=
0.5
m_f=0.5
mf=0.5,调制信号发生变化,运行结果如下: 设置原始信号为方波,载波信号为正弦波,调制系数
m
f
=
0
m_f=0
mf=0,幅值、频率设置以及运行结果如下: 设置原始信号为三角波,载波信号为正弦波,调制系数
m
f
=
0
m_f=0
mf=0,幅值、频率设置以及运行结果如下: 设置原始信号为锯齿波,载波信号为正弦波,调制系数
m
f
=
0
m_f=0
mf=0,幅值、频率设置以及运行结果如下: ![原始信号锯齿波,m_f=0,调幅波](https://img-blog.csdnimg.cn/556ae1e6178e45ee8d63bfd98a2ab37c.png#pic_center)
2.调频波实验
点击调频波,原始信号和载波信号均为余弦波,设置调制系数
m
f
=
0
m_f=0
mf=0,运行结果如下: 设置调制系数
m
f
=
0.7
m_f=0.7
mf=0.7,运行结果如下: ![图32 m_f=0.7,调频波](https://img-blog.csdnimg.cn/0fb0c906d237472d8c90602c6480f028.png#pic_center)
3.调相波实验
点击调相波,原始信号和载波信号均为余弦波,设置两信号幅值分别为4、5,运行结果如下: ![原始信号幅值为4,载波信号幅值为5,调相波](https://img-blog.csdnimg.cn/2c780bf262c547bf8fcc156b6ec6ee98.png#pic_center)
|