劉榮華,于紅光
(北京石油化工學院 信息工程學院,北京102617)
信號與系統仿真平臺的設計
劉榮華,于紅光
(北京石油化工學院 信息工程學院,北京102617)
針對當前信號與系統課程教學中存在的問題,在面向對象設計思想的指導下,利用層次化的設計方法,借助MATLAB的信號處理工具和GUI圖形用戶界面功能設計并開發了一個信號與系統的仿真平臺分析軟件。在該仿真平臺上用戶可以選擇連續或者離散部分,在每一部分可以對其相應的信號及系統進行時域、頻域以及復頻域的變換,用戶可以非常直觀的了解他們之間的運算關系。平臺界面友好,使用簡單,充分體現了該仿真平臺的綜合性、直觀性、應用靈活性。
信號與系統;MATLAB;圖形用戶界面;仿真平臺;連續信號
“信號與系統”是通信工程、電子信息科學和技術等電子信息類專業一門重要的專業基礎課程。它以高等數學、復變函數與積分變換及電路原理等課程為基礎,是相關專業后續數字信號處理、通信原理等專業課程的先修課程,其教學質量的好壞直接影響到學生對信號、系統和頻譜等重要概念的理解及后續課程的學習。在信號與系統的整個知識體系當中涉及到眾多的知識點,比如連續時間信號與系統的時域分析、頻域分析、復頻域分析以及離散時間信號與系統的時域分析、頻域分析、Z域分析。每一種分析方法都涉及到復雜的數學計算,僅從計算結果上用戶不能直觀的看到信號與系統在時域、頻域和復頻域之間的關系,因此需要有一種信號與系統的仿真平臺來完成這樣的功能。
近些年來,國內外高校相繼應用MATLAB對信號與系統當中的一些重要內容進行驗證和仿真,收到了較好的效果[1]。但是現有的信號與系統仿真多數是針對一些獨立的知識點編寫的MATLAB語言程序,缺乏系統的、能包含信號與系統整個知識體系內容的仿真平臺,且這些MATLAB語言程序普遍存在可讀性、可重用性和可擴展性差等缺點[2]。
為了解決這些問題,文中提出了一種基于MATLAB GUI的信號與系統仿真平臺的設計方案,利用MATLAB的強大的信號處理能力及圖形用戶界面(GUI)設計和實現了該平臺。該平臺包含了信號與系統知識體系當中的主要內容,用戶可以通過該平臺非常直觀的看到信號及系統在時域、頻域和復頻域進行的相應變換。
1.1 設計的主要內容
設計總界面,實現連續信號與系統以及離散信號與系統之間相互的切換。
1)連續信號部分,實現以下功能:
基本變換:加法運算、乘法運算、標乘、反轉、平移、尺度變換(伸縮)。
時域變換:卷積、積分、微分。
頻域變換:傅立葉變換。
復頻域變換:拉氏變換
2)設計連續系統部分,實現以下功能:
單位沖激響應
階躍響應
零狀態響應
零輸入響應
頻率響應:傅立葉變換。
復頻域:拉氏變換。
3)設計離散信號的部分,實現以下功能:
基本變換:加法運算、乘法運算、標乘、反轉、平移、尺度變換(伸縮)。
時域分析:卷積
頻域分析:傅立葉變換。
復頻域分析:Z變換
4)設計離散系統部分,實現以下功能:
單位抽樣響應
單位階躍響應
零狀態響應
頻域分析:幅頻響應、相頻響應。
復頻域分析:Z變換
1.2 設計圖形界面
1.2.1 總界面設計
根據總的設計任務要求,設計出如圖1所示的總操作界面[3-5]。
該界面包括實現連續信號與系統以及離散信號與系統之間相互的切換。設計構想:
1)點擊連續(離散)部分的連續(離散)信號或連續(離散)系統的無線電按鈕可以進入各自的操作界面,實現其功能。

圖1 總操作界面
2)點擊退出按鈕,退出MATALB軟件。
由于文章篇幅有限,本文主要以連續信號與系統部分為例介紹該仿真平臺的設計過程。
1.2.2 連續信號設計部分
為了讓讀者對本人設計成果有個大致的了解,先將程序運行過程演示一次:
點擊連續信號無線電按鈕,運行代碼:

出現如圖2~圖4所示的輸入參數界面。

圖2 輸入x1的幅度、頻率、相位
設定參數后,點擊“OK”鍵出現如圖5所示的連續信號設計操作界面。
界面包括基本運算、時域分析和頻域分析以及復頻域分析。設計構想:
1)點擊第一、二個彈出式菜單選擇其中的基本信號,可以進行加法、乘法、卷積等基本變換;
2)點擊第一、三個彈出式菜單,選擇其中的信號,可以進行標乘、平移、伸縮等基本變換;
3)點擊第一個彈出式菜單,選擇信號,可以進行翻轉、傅立葉變換、積分、微分、拉氏變換。
由于篇幅有限,文中主要以加法、乘法、卷積以及傅里葉變換為例對連續信號進行分析[6-7]。

圖4 輸入時間參數

圖5 連續信號設計操作界面
1)加法
輸入信號分別為x1和x2,參數設置如下:

運行結果如圖6所示。
2)乘法
x1=A1sin(2*pi1*f1*t+phi1);

圖6 執行加法的運行結果

結果如圖7所示。

圖7 執行乘法的運行結果
3)卷積

結果如圖8所示。
本軟件借助 MATLAB信號處理功能,擁有GUIDE簡單直觀的優勢,可以脫離 MATLAB環境而獨立運行,并且內容完善涵蓋了信號與系統分析的大部分重要內容。用戶只需在相應的編輯框中輸入相應的參數,就可以在輸出框及圖形框中獲得相應的結果,從而可以方便地對結果進行分析;還可以對輸入參數進行修改,可在一個界面中輸入不同參數來進行反復實驗,展示人機交互式圖形用戶界面及其參數的可調控性。

圖8 執行卷積命令的運行結果
[1]李紅.《信號與系統》中連續時間系統的 Matlab應用[J].科技信息,2010(18):484.
[2]羅華飛.MATLAB GUI設計學習手冊 [M].2版.北京:北京航空航天大學出版社,2012.
[3]張尤賽,馬國軍,黃煒嘉,等.“信號與系統”Matlab實驗仿真教學系統設計[J].現代電子技術,2010(18):57-59.
[4]李念念,張紅梅.基于MATLAB GUI的信號與系統分析軟件開發 [J].計算機應用與軟件,2009,26(2):10-11.
[5]陳垚光,毛濤濤,王正林,等.精通 MATLAB GUI設計[M].北京:電子工業出版社,2008.
[6]俎云霄,賈越,李奔,等.“信號與系統”仿真演示系統設計[J].電氣電子教學學報,2012,34(1):70-72.
[7]安 樹,楊鳳彪,閆建生.信號與系統仿真實驗平臺設計[J].高校實驗室工作研究,2012,112(2):26-28.
[8]張 猛,王曉峰.信號與系統建模與仿真[J].長春大學學報,2010,20(8):63-65.
[9]沈捷,王莉.數字信號處理教學實驗軟件包的GUI設計與實現[J].實驗技術與管理,2008,25(2):88-91.
[10]童峰,李霞.Matlab在“信號與系統”課堂教學中的應用[J].電氣電子教學學報,2007,29(1):82-84.
[11]李強,明艷,吳坤君.基于Matlab的通信原理演示系統的設計與應用[J].實驗技術與管理,2008,25(8):77-80.
[12]鄭君里,應啟珩,楊為理.信號與系統[M].2版.北京:高等教育出版社,2000.
[13]高遠.基于MATLAB的《信號與系統》教學改革與實踐[J].柳州師專學報,2010(2):99-101.
[14]王秀清.MATLAB軟件在信號與系統教學中的應用[J].內蒙古民族大學學報,2010(2):187-188.
[15]王雪.基于MATLAB的《信號與系統》教學探討[J].金陵科技學院學報,2006(4):106-108.
Design of signals and systems simulation platform
LIU Rong-hua,YU Hong-guang
(Department of Information Engineering,Beijing Institute of Petro-chemical Technology,Beijing 102617,China)
Aiming at the current problems in teaching of signals and systems,under the guidance of the object-oriented design method,A set of analysis software for signals and systems simulation platform is designed by using signal processing tool and graphical user interface in MATLAB,through the hierarchical design method.Users can choose continuous portion or discrete portion at this platform. Signals and systems have been analyzed in time domain and transform domain for each part.Users can comprehend the arithmetic relationship between them easily.The platform has the advantage of friendly interface and is easy to use.It was approved that the simulation platform is integrated,intuitive and flexible.
signals and systems;MATLAB;graphic user interface;simulation platform;continues signal
TN915.6
A
1674-6236(2017)09-0167-04
2016-03-25稿件編號:201603343
劉榮華(1979—),女,山西運城人,碩士研究生,實驗師。研究方向:信號與系統方面的教學科研。