Modeling and Simulation
Vol. 12  No. 04 ( 2023 ), Article ID: 68522 , 14 pages
10.12677/MOS.2023.124316

基于MATLAB/GUI的模拟信号调制系统设计

陈骏,吕军

浙江理工大学信息科学与工程学院,浙江 杭州

收稿日期:2023年4月12日;录用日期:2023年7月4日;发布日期:2023年7月12日

摘要

本文设计了一个基于MATLAB/GUI的模拟信号调制系统,用于教学和技术开发的仿真应用。该系统包括用户登录、调制类型选择、参数设置、绘图、计算和结果输出六大功能模块。用户可以通过交互式和可视化的界面灵活更改参数,并实时展示对应结果,同时支持参数与结果导出实现数据可追溯。本文还介绍了AM和FM调制的原理与计算公式,以及MATLAB/GUI的基本概念和应用。该系统的设计可以有效辅助教学和技术开发,并在数据可视化方面有一定的借鉴意义。

关键词

MATLAB/GUI,模拟信号调制系统,AM调制,FM调制,数据可视化

Design of Analog Signal Modulation System Based on MATLAB/GUI

Jun Chen, Jun Lv

School of Information Science and Engineering, Zhejiang Sci-Tech University, Hangzhou Zhejiang

Received: Apr. 12th, 2023; accepted: Jul. 4th, 2023; published: Jul. 12th, 2023

ABSTRACT

In this paper, a simulation signal modulation system based on MATLAB/GUI is designed as a simulation application for teaching and technical development. The system consists of six functional modules: user login, modulation type selection, parameter setting, plotting, calculation, and result output. Users can flexibly change parameters through an interactive and visual interface, and corresponding results are displayed in real-time. The system also supports parameter and result export for data traceability. The principles and calculation formulas of AM and FM modulation, as well as the basic concepts and applications of MATLAB/GUI, are introduced in this paper. The design of this system can effectively assist in teaching and technical development, and has certain reference significance in data visualization.

Keywords:MATLAB/GUI, Simulation Signal Modulation System, AM Modulation, FM Modulation, Data Visualization

Copyright © 2023 by author(s) and Hans Publishers Inc.

This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).

http://creativecommons.org/licenses/by/4.0/

1. 引言

调制与解调 [1] 是无线通信系统中的重要技术,其应用涵盖了广泛的领域,如移动通信、卫星通信、无线电广播等。随着无线通信技术的不断发展和普及,调制技术也在不断地发展和完善。目前,调制技术已经从最初的振幅调制(Amplitude Modulation,简称AM)和频率调制(Frequency Modulation,简称FM)发展到了更高级别的调制技术,如相位调制(Phase Modulation,简称PM)、正交振幅调制(Quadrature Amplitude Modulation,简称QAM)等 [2] 。这些调制技术在传输带宽利用率、抗干扰能力等方面具有更好的性能,已经成为现代无线通信系统中的重要组成部分。

在学术研究方面,对于调制技术的研究也十分活跃。目前,对于不同调制技术的理论研究和性能分析已经比较成熟,同时也有许多基于计算机仿真的调制系统实现 [3] 。这些研究成果为调制技术的进一步发展提供了理论和实践支持。本文基于MATLAB/GUI设计了一个模拟信号调制系统 [4] ,该系统可以方便地调整各种参数,实时展示对应的结果,并支持参数与结果导出实现数据可追溯等,便于进行实验研究和教学使用。相比于传统的实验教学设备,该系统具有操作简便、结果可视化等优点,有助于提高实验效率和教学质量 [5] 。

2. AM/FM调制原理

2.1. AM调制理论与计算

AM信号时域表达式为

s A M ( t ) = [ A 0 + m ( t ) ] cos ω c t (1)

式(1)中, A 0 为外加的直流分量, A m 为调制信号幅度, ω m 为调制信号角频率, ω c 为载波频率。

若调制信号为单频信号即式(1)中 m ( t ) = A m cos ω m t ,则AM信号时域表达式也可表示为

s A M ( t ) = [ A 0 + A m cos ω m t ] cos ω c t (2)

根据 ω = 2 π f 可将信号频率转换为角频率即 ω m = 2 π f m ω c = 2 π f c ,其中 f m 为调制信号频率、为载波频率。

对式(1)进行傅里叶变换就可以得到AM信号的频域表达式为

S A M ( ω ) = F [ s A M ( t ) ] = 1 2 [ M ( ω + ω c ) + M ( ω ω c ) ] + π A 0 [ δ ( ω + ω c ) + δ ( ω ω c ) ] (3)

zaide利用MATLAB绘制AM信号的时域波形和频谱,仿真结果分别如图1图2所示。

Figure 1. Time domain waveform diagram of AM signal

图1. AM信号时域波形图

Figure 2. Spectrogram of AM signal

图2. AM信号频谱图

基带信号幅度和直流分量的大小关系影响AM的包络形状。将基带信号与直流信号大小关系对AM信号形状的影响参数定义为调幅度。

AM信号的调幅度表达式为

β A M = | m ( t ) | max A 0 = A m A 0 (4)

为了实现线性调幅,必须要求 β A M 1 ,否则将会出现过调幅现象。

为了确保信号传输的可靠性,需要控制AM信号的功率,并确保它在一定范围内稳定。如果AM信号的功率过大,可能会导致接收端的失真,而功率过小则会降低信号传输的可靠性 [6] 。

AM信号的平均功率等于AM信号在 1 Ω 电阻上 s A M ( t ) 的均方值,即AM信号平均功率表达式为

P A M = s A M 2 ( t ) ¯ = [ A 0 + m ( t ) ] 2 cos 2 ω c t ¯ = A 0 2 cos 2 ω c t ¯ + m 2 ( t ) cos 2 ω c t ¯ + 2 A 0 m ( t ) cos 2 ω c t ¯ = A 0 2 2 + m 2 ( t ) ¯ 2 = P c + P s (5)

式(5)中, P c = A 0 2 2 为载波功率, P s = m 2 ( t ) ¯ 2 为边带功率。

若调制信号为单频信号即式(5)中 m ( t ) = A m cos ω m t ,则AM信号平均功率表达式也可表示为

P A M = A 0 2 2 + A m 2 2 (6)

2.2. FM调制理论与计算

FM信号时域表达式为

s F M = A c cos [ ω c t + φ ( t ) ] = A c cos [ ω c t + k f t m ( τ ) d τ ] (7)

式(7)中, A c 为载波幅度, ω c 为载波角频率, k f 为调频灵敏度, A m 为调制信号幅度, ω m 为调制信号角频率。

若调制信号为单频信号即式(7)中 m ( τ ) = A m cos ω m τ ,则FM信号时域表达式也可表示为

s F M = A c cos [ ω c t + k f t A m cos ω m τ d τ ] = A c cos ( ω c t + k f A m ω m sin ω m t ) (8)

根据 ω = 2 π f 可将信号频率转换为角频率即 ω c = 2 π f c ω m = 2 π f m ,其中 f c 为调制信号频率、 f m 为载波频率。

利用MATLAB绘制FM信号的时域波形,仿真结果分别如图3所示。

Figure 3. Time-domain waveform of FM signal

图3. FM信号时域波形图

FM信号的调频度决定了信号的频率偏离载波频率的程度,代表着信号中所包含的信息的大小 [7] 。

FM信号的调频度表达式为

β F M = k f A m ω m (9)

为了确保信号传输的可靠性,需要控制FM信号的功率,并确保它在一定范围内稳定。如果FM信号的功率过大,可能会导致接收端的失真,而功率过小则会降低信号传输的可靠性 [8] 。

FM信号的平均功率等于FM信号在 1 Ω 电阻上 s F M ( t ) 的均方值,即FM信号平均功率表达式为

P F M ( t ) = s F M 2 ( t ) ¯ = A 2 c cos 2 [ ω c t + k f t m ( τ ) d τ ] ¯ = A 2 c cos [ 2 ω c t + 2 k f t m ( τ ) d τ ] + 1 2 ¯ (10)

3. 模拟信号调制系统GUI设计

MATLAB/GUI是MATLAB提供的一种图形用户界面设计工具,它使得用户可以通过简单的操作,设计出一个美观、易用的界面。同时,MATLAB/GUI还提供了强大的绘图和可视化功能,使用户可以通过实时可视化来观察不同调制参数对调制信号的影响,从而探索不同的调制场景,极大地促进了信号调制领域的教学和研究 [9] 。

模拟信号调制系统GUI由用户登录、调制类型选择、参数设置、绘制图像、计算、结果输出六大功能模块组成,系统总体框架结构如图4所示。用户首先进入登录系统进行用户注册,用户登录后进入类型选择界面选择进行AM调制或FM调制仿真操作。随后用户可以通过文本输入框、滑块等控件调节载波频率、直流分量、调制信号频率、调制信号幅度、加性噪声强度等参数,进而调节系统产生满足不同情况下的调制信号。模拟调制信号参数设置完成后,用户可通过单击“生成时域图”和“生成频谱图”按钮生成信号的时域图和频谱图。用户单击“计算”按钮系统将根据信号调制模型计算调制度和信号平均功率并显示在界面上。最后,用户可将设定的参数、绘制出的信号波形图、计算得到的调制度和信号平均功率等数据导出并保存在指定路径,便于后期的数据统计与分析。

Figure 4. Structure diagram of analog signal modulation system based on MATLAB/GUI

图4. 基于MATLAB/GUI的模拟信号调制系统的结构图

本系统GUI设计流程如下:

1) 在GUI窗口中添加必要的控件,例如静态文本、可编辑文本、按钮、滑块和坐标区。如图5所示,添加控件并合理布局。

Figure 5. Adding GUI controls

图5. 添加GUI控件

2) 设置控件的属性和回调函数。每个控件都有其特定的属性,例如位置、大小、颜色等,根据需要调整每个控件的属性,如图6所示。此外,每个控件还具有回调函数,即当用户与该控件交互时将调用的函数。例如,设置按钮控件的回调函数为pushbutton1_Callback(hObject, eventdata, handles),即当用户单击按钮时将执行pushbutton1_Callback(hObject, eventdata, handles)函数来生成时域图。

Figure 6. Sets GUI control properties

图6. 设置GUI控件属性

3) 编写GUI回调函数。在MATLAB代码中编写回调函数,用于实现控件交互时的相应操作。例如,pushbutton1_Callback(hObject, eventdata, handles)函数将调用get()函数获取用户设置的信号参数,根据模拟信号调制相对应的数学模型生成对应的调制信号,然后将其绘制在坐标区控件内,并自动调整显示范围为三个周期的波形以便最佳展示图像。生成时域图按钮回调函数如下所示:

function pushbutton1_Callback(hObject, eventdata, handles)

%Carrier frequency

fc=get(handles.edit1,'string');

%Dc component

A0=get(handles.edit2,'string');

%Modulating signal frequency

fm=get(handles.edit3,'string');

%Modulating signal amplitude

Am=get(handles.edit4,'string');

%Random additive noise

value=get(handles.slider1,'Value');

%Time vector

t=0:0.001:3/str2double(fm);

%Signal expression

S=(str2double(A0)+str2double(Am)*cos(2*pi*str2double(fm)*t)).* ...

cos(2*pi*str2double(fc)*t)+(exp(value*3)-1)*randn(size(t));

%Draw the time domain waveform diagram

axes(handles.axes1);

plot(t,S);

grid on

4) 测试和调试。测试GUI界面的各项功能是否正常运行,并根据需要进行调试和优化。用户登录界面如图7所示,输入用户名以及由数字、字母、符号等字符组合成的密码进行用户注册,本系统会自动生成两个扩展名为.mat的文件用来储存用户名和密码。用户登录时会比对用户名和密码,用户登录成功后自动跳转至调制模式选择页面。

Figure 7. User login screen

图7. 用户登录界面

表1列举了本系统所使用的GUI控件并简要介绍了对应控件所实现的功能作用。

Table 1. List of GUI controls used in this system

表1. 本系统所使用的GUI控件清单

4. 模拟信号调制系统GUI的试验演示

4.1. AM调制试验

4.1.1. 调幅度对AM试验的影响分析

调幅度的大小影响AM信号形状,影响后期AM解调方法的选择 [10] 。调幅度主要体现在直流分量和基带信号幅度的大小关系。因此,在调制信号频率为1 Hz,载波频率为30 Hz,加性噪声为0%和直流分量的相同条件下,调整调制信号幅度来改变调幅度值和绘制AM时域波形和频谱图。试验参数设置和结果如表2图8~图10所示。

Table 2. Simulation results of signal amplitude modulation and power value

表2. 信号调幅度与功率值仿真结果

Figure 8. AM signals with a modulated signal amplitude of 1 V

图8. 调制信号幅度为1 V的AM信号

Figure 9. AM signals with a modulated signal amplitude of 2 V

图9. 调制信号幅度为2 V的AM信号

Figure 10. AM signals with a modulated signal amplitude of 3 V

图10. 调制信号幅度为3 V的AM信号

表2图8~图10可见,当加性噪声为0%时调幅度和信号平均功率的理论值与仿真值均无误差。图8 AM信号调幅度为0.5处于正常范围内,AM信号波形正常。图9 AM信号调幅度为1处于过调幅的临界值,如果调幅度继续增加AM信号将出现过调幅现象,但此时AM信号波形依旧正常。图10 AM信号调幅度为1.5,出现过调幅现象,AM信号波形异常,如果对这样的AM信号进行解调将无法得到原本的调制信号。

通过观察AM信号的时域图和频谱图我们可以看出,当调制指数小于1时,随着调幅度的逐渐增大,AM信号时域波形图的振幅会逐渐增大,但是信号的形状不会发生明显变化。当调幅度达到一定程度时,如果继续增大调幅度,信号的振幅将会超过载波信号的幅度,导致信号出现振幅压缩和扭曲,称为过调制。

4.1.2. 噪声对AM试验的影响分析

加性噪声使AM信号的质量受到破坏,导致信号的信噪比降低。噪声的存在会使信号的振幅发生变化,从而导致信号的包络线发生变化。因此,在调制信号频率为1 Hz,调制信号幅度为1 V,载波频率为30 Hz和直流分量的相同条件下,调整加性噪声来绘制AM时域波形和频谱图。试验参数设置和结果如表3图11~图13所示。

Table 3. Simulation results of signal amplitude modulation and power value

表3. 信号调幅度与功率值仿真结果

Figure 11. AM signal with 10% additive noise

图11. 加性噪声为10%的AM信号

表3图11~图13可见,随着加性噪声的增加,AM信号调幅度和信号平均功率的理论值与仿真值误差逐渐偏大。图11信号时域图出现微小毛刺,频谱图在各个频率上都出现噪声,信号平均功率略微偏大。图12信号时域图出现明显毛刺,频谱图在各个频率上都出现噪声,信号平均功率略微偏大。图13信号时域图出现明显失真,频谱图在各个频率上都出现噪声,信号平均功率偏大。

Figure 12. AM signal with 20% additive noise

图12. 加性噪声为20%的AM信号

Figure 13. AM signal with 40% additive noise

图13. 加性噪声为40%的AM信号

加性噪声使AM信号的质量受到破坏,导致信号的信噪比降低。噪声可以来源于多种因素,例如电路中的热噪声、电磁干扰以及传输信号时受到的外界干扰等。当加性噪声存在于AM信号中时,它将随着信号一起传输并被解调器接收。噪声的存在会使信号的振幅发生变化,从而导致信号的包络线发生变化。这会使得解调器难以正确地提取出信号中的信息,从而使得信号的质量下降。当噪声的水平很高时,甚至可能使解调器无法正确地识别信号的存在。

为了减少加性噪声对AM信号的影响,可以采取一些技术手段,例如使用前置放大器、增加信号的带宽、使用低噪声放大器等。此外,在传输信号时,也可以采用抗噪声技术,例如差分信号传输和频率选择性传输等,以减少噪声对信号的影响。

4.2. 调频度对FM试验的影响分析

调频度对FM信号的影响非常重要,它决定了信号的带宽、频谱特性以及解调器对信号的解调难度。在调制信号频率为5 Hz,调制信号幅度为1 V,载波频率为25 Hz,载波幅度为3 V和加性噪声为0%的相同条件下,调整调频灵敏度来改变调频度值和绘制FM时域波形和频谱图。试验参数设置和结果如表4图14图15所示。

表4图14图15可见,当加性噪声为0%时调频度和信号平均功率的理论值与仿真值均无误差。图14 FM信号调幅度为3,FM信号波形正常。图15 FM信号调幅度为1,FM信号波形正常。

调频度对FM信号的影响非常重要,它决定了信号的带宽、频谱特性以及解调器对信号的解调难度。当调频度较小时,FM信号的频谱主要集中在载波频率附近,且频谱形状近似于一个钟形曲线。此时,解调器可以相对容易地对信号进行解调。随着调频度的逐渐增大,FM信号的带宽也逐渐增大,频谱形状逐渐变得更加平坦,且在频谱中出现了更多的高频成分。这使得解调器对信号的解调变得更加困难,需要使用更加复杂的解调算法。当调频度过高时,FM信号的频谱将会变得非常宽,甚至超过整个频率带宽。这种情况下,信号将会产生干扰,导致解调器无法正确地识别信号的存在。因此,在实际应用中,调频度需要控制在一个合适的范围内,以保证信号能够被有效地传输和解调。

Table 4. Simulation results of signal amplitude modulation and power value

表4. 信号调频度与功率值仿真结果

Figure 14. An FM signal with an FM sensitivity of 15

图14. 调频灵敏度为15的FM信号

Figure 15. An FM signal with an FM sensitivity of 5

图15. 调频灵敏度为5的FM信号

5. 结论

本文设计的基于MATLAB/GUI的模拟信号调制系统,可以方便地进行不同类型调制信号的仿真操作,并实时可视化展示不同调制参数对信号的影响。系统具有操作简便、结果可视化等优点,有助于提高实验效率和教学质量。该系统可以应用于信号调制领域的教学和研究,为学术研究和实际应用提供了一个便捷的工具。

在系统的设计过程中,通过使用MATLAB/GUI工具,结合各种控件的设计和布局,实现了用户友好的界面,使用户能够方便地输入参数、生成时域图和频谱图,并进行调制度和信号平均功率的计算。同时,系统支持参数与结果的导出,实现了数据的可追溯性和后期的数据统计与分析。

此外,通过本文的设计,还可以深入研究不同调制技术在无线通信系统中的性能特点,如传输带宽利用率、抗干扰能力等。通过调整不同调制参数,可以观察和比较不同调制技术在不同情况下的性能表现,从而深入理解调制技术的原理和应用。同时,该系统还可以作为教学工具,用于信号调制领域的教学,帮助学生更好地理解和掌握调制技术的相关知识。

总之,本文设计的基于MATLAB/GUI的模拟信号调制系统为信号调制领域的研究和教学提供了一个便捷的工具,具有实用性和教育性的优点,并为后续的研究和应用提供了参考和借鉴。

文章引用

陈 骏,吕 军. 基于MATLAB/GUI的模拟信号调制系统设计
Design of Analog Signal Modulation System Based on MATLAB/GUI[J]. 建模与仿真, 2023, 12(04): 3450-3463. https://doi.org/10.12677/MOS.2023.124316

参考文献

  1. 1. 樊昌信, 曹丽娜. 通信原理[M]. 北京: 国防工业出版社, 2013.

  2. 2. 马景涛. 通信信号调制模式识别与特征参数估计[D]: [硕士学位论文]. 成都: 西南交通大学, 2013.

  3. 3. 张林, 王艳芬, 张晓光, 芦楠楠. 基于MatlabGUI的数字信号处理演示平台设计[J]. 实验技术与管理, 2016, 33(12): 154-157. https://doi.org/10.16791/j.cnki.sjg.2016.12.038

  4. 4. 张志民, 欧建平, 皇甫堪. 模拟通信信号调制方式自动识别算法[J]. 计算机工程与科学, 2013, 35(3): 163-167.

  5. 5. 李沛花. 基于LabVIEW的信号分析和应用[D]: [硕士学位论文]. 北京: 北京邮电大学, 2013.

  6. 6. 周玲. Matlab/Simulink在信号调制与解调中的应用[J]. 鲁东大学学报(自然科学版), 2011, 27(4): 310-313.

  7. 7. 叶歆. 基于FPGA的模拟调制模式识别系统的研究[D]: [硕士学位论文]. 大连: 大连海事大学, 2011.

  8. 8. 潘毓. 基于调制技术的应用[J]. 企业导报, 2011(1): 290-291. https://doi.org/10.19354/j.cnki.42-1616/f.2011.01.204

  9. 9. 徐红, 赵小娟. MATLAB在信号调制与解调的仿真实验中的应用[J]. 桂林航天工业高等专科学校学报, 2010, 15(4): 437-438.

  10. 10. 吕挺岑. 通信信号调制识别技术研究[D]: [硕士学位论文]. 西安: 西安电子科技大学, 2007.

期刊菜单