?

基于Python的在線通信原理仿真實驗平臺

2022-06-02 15:19王一楠韋峻峰
中國新通信 2022年6期
關鍵詞:二進制波形原理

王一楠 韋峻峰

【摘要】? ? 《通信原理》是一門理論性很強的課程,傳統教學方式學生對復雜抽象的知識掌握程度有限。針對教材中難以展示信號傳輸過程中時域波形和頻譜結構,通過實驗操作需要花費較多的時間且不易調整信號的時、頻參數,提出了以二進制數字調制系統為例,采用了Python語言實現了在線通信原理仿真實驗平臺。該平臺前后端使用了Django框架和Sqlite數據庫,仿真部分采用NumPy、Scipy庫,并將結果用Matplotlib渲染成圖片,可以部署于互聯網或局域網。該平臺可提供多個用戶賬戶,可隨時修改仿真參數、實時觀察實驗結果,是傳統實驗教學的有力補充。

【關鍵字】? ? 在線通信仿真? ? 數字調制系統? ? Django? ? Python

引言:

《通信原理》不僅是通信專業和電子信息工程類專業的學生的專業必修課,也是網絡工程、物聯網工程等專業的重要學科。該課程與前期的基礎課程聯系緊密,又是后續課程的重要基礎。因此學好這門課對學生進行更深層次的學習研究有著重要影響。

該門課程綜合了電路、高等數學、隨機過程、信號與系統的相關知識,理論性強,抽象概念較多,導致了學生學習起來比較困難,基礎概念不易理解。針對以上存在的問題,由Python作為前后端而開發出來的網站式數字帶通虛擬仿真實驗在教學中具有重要的意義。該平臺采用Web設計風格,操作簡單,可通過點擊框圖修改仿真參數,快速直觀地看到仿真結果,幫助學生理解和掌握課程中的重要概念和知識點,激發學生的學習興趣,提升學生的學習質量。[1-3]

一、現有的通信原理課程虛擬仿真實驗教學方案

(一)基于實驗箱的實驗教學

目前許多學校采用實驗箱進行通信原理實驗教學。該方式要求學生根據模塊圖或電路圖進行線路連接,使用示波器、計算機或頻率分析儀等設備觀察各個信號接口處的波形或頻譜。這種教學方式的優點是可以鍛煉學生的實際操作動手能力,但可能存在設備成本和維護成本較高、連接線路耗時較長、參數調整不便、做實驗會受到時間地點的限制等問題。[4]

(二) 基于Matlab或Simulink的仿真實驗教學

Matlab是科學研究和教育行業常用的數值仿真軟件,其軟件經歷了多年演化功能豐富,對計算機硬件要求較高,且許可證費用高昂。使用Matlab編寫程序需要一定的編程基礎,學生熟練掌握編程之前可能會遇到較多的問題,因而更適合于在高年級本科生或研究生中使用。

Simulink是Matlab中的一種可視化仿真工具,它提供圖形編輯器、可自定義的模塊庫以及求解器,能夠進行動態系統建模和仿真,常被用于通信仿真的教學中。[5-7]

(三) 基于Python的仿真實驗教學

Python是一種面向對象的、解釋型的、通用的、開源的腳本編程語言。程序編寫簡潔快速,代碼的開發效率較高。良好的圖形功能和強大的后臺Python 標準庫和第三庫眾多,功能強大,既可以開發小工具,也可以開發企業級應用。因此,適用于大學通信原理教學仿真實驗平臺的開發。[8-9]

二、仿真實驗平臺的設計與實現

為了更加的方便學生進行通信仿真實驗,方便學生的操作,嘗試開發出了基于Python的在線通信原理仿真實驗平臺,該平臺的使用學生只需要登錄網站的首頁,輸入仿真的信號以及信號的相關參數,就可以得到相應的仿真結果。如需參數的更改,則直接對參數修改,再次進行仿真即可,操作方便快捷。大大方便了學生的操作,節省了師生的時間。

(一)平臺架構

平臺由一個主界面構成,所有的仿真實驗皆可在該主界面上完成。主界面由四個實驗模塊組成,四個固定的實驗模塊涵蓋了通信原理數字調制的四種鍵控,分別是二進制振幅鍵控(2ASK)、二進制頻移鍵控(2FSK)、二進制相移鍵控(2PSK)等,二進制差分相移鍵控(2DPSK)。四大鍵控按鈕對應四個子界面,每個子界面相互獨立,可以在子界面中輸入相應的參數,然后進行實驗仿真。實驗平臺相應框圖如圖1所示。[10]

(二)平臺的功能模塊

結合通信原理的實驗課程,需要安裝用于科學計算的 NumPy、SciPy 擴展庫和實現繪圖與可視化的Matplotlib 擴展庫。數值計算庫 NumPy 以數組為數據處理對象。SciPy是數學、科學和工程計算包,在 NumPy 基礎上添加了科學計算所需要的各種工具,如:線性方程組求解、特征值和特征向量求解等與線性代數相關問題使用的 LAPACK 庫、快速傅里葉變換使用的 FFTPACK 庫、常微分方程求解使用的 ODEPACK 庫、 非線性方程組求解和最小值求解等使用的 MINPACK 庫等。SciPy 中signal 模塊提供了信號處理方面的很多函數,包括卷積運算、濾波及濾波器設計等方面的內容。本平臺的涉及用到了signal模塊中的firwin、lfilter、lfilter_zi、freqz,從而對信號進行處理。

(三)平臺的主界面

數字帶通虛擬仿真實驗是《通信原理》中的重要章節,包含二進制振幅鍵控(2ASK)、二進制頻移鍵控(2FSK)、二進制相移鍵控(2PSK)等,二進制差分相移鍵控(2DPSK)。仿真平臺實現了這四種調制解調方式的在線仿真,在這四個模塊下分別可以實現信源、載波、信道、解調、抽判的參數調整和波形查看。平臺首頁展示如圖2所示。

頂部提供用戶注冊和登錄功能,在其下方有四個按鈕,對應的是四種數字帶通鍵控方式。默認使用振幅鍵控(ASK)方式進行仿真。發送文本框內可填入文本作為信源,經編碼、調制、信道傳輸、解調、抽樣判決等模塊的仿真計算后,將在接收文本框中顯示出接收端得到的文本信息。58ED6BB7-FD0E-4E6C-A614-E2BB7A8360B8

當點擊不同的調制方式時,下方框圖將變更為所選制式的框圖。點擊框圖中某個環節,在框圖之下的參數列表將顯示該環節相關的仿真參數。圖中展示了信源{an}部分的參數。學生可根據需要修改碼元速率,而后在右側“波形展示”板塊看到不同碼元速率下s(t)波形的變化,整體操作簡單直觀。[11]

(四)仿真教學流程

選中2FSK(二進制頻移鍵控)按鈕,輸入“大家好”,點擊“調制解調原理框圖”中的{an},在“參數列表”可見默認碼元速率為1600。使用“查看信源信號”按鈕可以看到已輸入的文字作為信源的實際波形,如圖3所示。在“調制解調原理框圖”中點擊n(t)可以修改信道中的噪聲幅度,并可使用“信道波形”按鈕觀察波形被噪聲干擾的情況。在接收端使用了相干解調,其時域波形、頻譜、抽樣判決門限和判決結均可以用圖形方式展現出來,使學生在仿真實驗初期能夠先建立系統各個環節的參數對通信系統的影響。以此為基礎,對于部分學有余力的學生還可以結合平臺,講解其中模塊的具體實現。

將白噪聲幅度從0調到0.5,判決門限設為0.25,此時出現誤碼,誤碼率為2%,仿真結果由“大家好”變為“大家?”。抽樣與判決結果如圖4所示,誤碼結果如圖5所示。調整判決門限,將0.25調整到0.1,此時誤碼率變為0,輸出為“大家好”,正確的抽樣與判決波形如圖6所示。

(五)教學管理

學生的使用情況老師可以通過后臺進行管理,老師可以清晰地通過后端進行查詢。如圖7所示。

三、結束語

該仿真平臺基于Python開發出來的仿真網站。針對應用型本科院校通信原理教學問題,采用該系統與理論教學相結合,簡單明了地將可視化的仿真結果展示在學生面前。由于該系統操作簡單,上手快,適合初學者使用等優點,大大提高了學生的實踐能力和教學質量,推動了應用型人才培養。此教學模式已在我校通信工程、電子信息、網絡工程(移動通信)、物聯網工程等專業試用和實踐,取得了較好的效果,獲得了廣大師生的一致好評。[12]

作者單位:王一楠? ? ?韋峻峰? ? 廣西民族大學

參? 考? 文? 獻

[1]翟雙,劉麗偉,王昕.《通信原理》實驗教學改革與探索[J].才智,2019(29):13.

[2]肖力.基于Python的航空發動機仿真平臺開發[J].計算機應用與軟件,2021,38(06):9-13+38.

[3]楊丞.通信原理課程實驗教學模式的研究與實踐[J].教育教學論壇,2019(31):279-280.

[4]劉美玲,張志巖.通信原理實驗箱數字信號源模塊的改進設計[J].實驗室科學,2019,22(03):87-92+98.

[5]田瑩,盧金玉,劉宴濤.基于Matlab/Simulink的通信原理虛擬仿真實驗教學方法研究[J]. 現代電子技術, 2015,(14).

[6]張鳴,李白萍.Matlab仿真在通信原理課程中的應用[J].實驗技術與管理,2012(11):87-89.

[7]王志鵬,謝渝閩. 基于MATLAB的信號與系統課程綜合演示平臺[J]. 南陽師范學院學報,2020, 19(3): 71–74.

[8]張若愚. Python科學計算[M]. 北京:清華大學出版社,2016.

[9]趙廣輝. 面向新工科的Python程序設計交叉融合案例教學[J]. 計算機教育,2017(8): 23–27.

[10]陳娟,陳雯,石飛,等.基于Python的信號與系統實驗教學改革與實踐[J].實驗技術與管理,2021,38(05):196-200.

[11]尹園威,馬俊濤,史林,等.基于MatLab的IIR數字濾波器設計與應用[J].中國現代教育裝備,2021,(21):31-33+42.

[12] 閻群,李擎,崔家瑞,等.大學生解決復雜工程問題能力的培養[J]. 實驗技術與管理,2017, 34(11): 178–181, 186.58ED6BB7-FD0E-4E6C-A614-E2BB7A8360B8

猜你喜歡
二進制波形原理
基于SVD的雷達嵌入式通信波形設計方法
正面碰撞車身加速度對乘員腿部損傷的影響
有用的二進制
用Scratch把十進制轉為二進制
通用6T系列變速器離合器鼓失效的解決方案
有趣的進度
淺析狹義相對論的建立及其原理
淺析狹義相對論的建立及其原理
任意波形編輯軟件中手動任意繪制功能的設計
兩個原理的區別及其應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合