課程簡介
本課程的成果
完成本課程後,學員應能攻克通信工程領域許多目前未解決的研究問題,因為他們應該至少獲得以下技能:
- 映射和操縱在通信工程文獻中經常出現的複雜數學表達式
- 能夠使用MATLAB提供的編程功能來重現其他論文的仿真結果,或至少接近這些結果。
- 創建自擬想法的仿真模型。
- 有效地運用所獲得的仿真技能,結合MATLAB強大功能,在代碼運行時間上進行優化,同時節省內存空間,設計優化的MATLAB代碼。
- 識別給定通信系統的關鍵仿真參數,從系統模型中提取它們,並研究這些參數對所考慮系統性能的影響。
課程結構
本課程提供的材料具有極強的關聯性。不建議學員參加某一級別的課程,除非他們參加並深入理解其前一個級別的課程,以確保獲取的知識的連續性。課程分為三個級別,從介紹MATLAB編程開始,直到完整的系統仿真水平,如下所示。
使用MATLAB的通信數學
第01-06節
完成此部分後,學員將能夠評估複雜的數學表達式,並輕鬆為不同的數據表示構建適當的圖表,例如時域和頻域圖;誤碼率圖、天線輻射方向圖……等。
基本概念
- 仿真的概念
- 仿真在通信工程中的重要性
- MATLAB作為仿真環境
- 關於通信數學中標量信號的矩陣和向量表示
- MATLAB中復基帶信號的矩陣和向量表示
MATLAB桌面
- 工具欄
- 命令窗口
- 工作區
- 命令歷史
變量、向量和矩陣聲明
- MATLAB預定義常量
- 用戶定義變量
- 數組、向量和矩陣
- 手動矩陣輸入
- 區間定義
- 線性空間
- 對數空間
- 變量命名規則
特殊矩陣
- ones矩陣
- zeros矩陣
- 單位矩陣
元素級和矩陣級操作
- 訪問特定元素
- 修改元素
- 選擇性刪除元素(矩陣截斷)
- 添加元素、向量或矩陣(矩陣拼接)
- 查找向量或矩陣中元素的索引
- 矩陣重塑
- 矩陣截斷
- 矩陣拼接
- 從左到右和從右到左翻轉
一元矩陣運算符
- Sum運算符
- 期望運算符
- 最小值運算符
- 最大值運算符
- 跡運算符
- 矩陣行列式 |.|
- 矩陣逆
- 矩陣轉置
- 矩陣赫爾米特
二元矩陣操作
- 算術操作
- 關係操作
- 邏輯操作
MATLAB中的複數
- 帶通信號的復基帶表示和RF上變頻,數學回顧
- 形成複變量、向量和矩陣
- 復指數
- 實部運算符
- 虛部運算符
- 共軛運算符 (.)*
- 絕對值運算符 |.|
- 幅角或相位運算符
MATLAB內置函數
- 向量的向量和矩陣的矩陣
- 平方根函數
- 符號函數
- “四捨五入”函數
- “最近下整數函數”
- “最近上整數函數”
- 階乘函數
- 對數函數(exp, ln,log10,log2)
- 三角函數
- 雙曲函數
- Q(.)函數
- erfc(.)函數
- 貝塞爾函數Jo (.)
- 伽馬函數
- Diff, mod命令
MATLAB中的多項式
- MATLAB中的多項式
- 有理函數
- 多項式導數
- 多項式積分
- 多項式乘法
線性比例圖
- 連續時間-連續幅度信號的視覺表示
- 臺階近似信號的視覺表示
- 離散時間 - 離散幅度信號的視覺表示
對數比例圖
- dB-十倍頻程圖(誤碼率)
- 十倍頻程-dB圖(波特圖,頻率響應,信號譜)
- 十倍頻程-十倍頻程圖
- dB-線性圖
2D極坐標圖
- (平面天線輻射方向圖)
3D圖
- 3D輻射方向圖
- 笛卡爾參數圖
選修章節(根據學員需求提供)
- MATLAB中的符號微分和數值微分
- MATLAB中的符號和數值積分
- MATLAB幫助和文檔
MATLAB文件
- MATLAB腳本文件
- MATLAB函數文件
- MATLAB數據文件
- 局部和全局變量
MATLAB中的循環、條件流程控制和決策
- for end循環
- while end循環
- if end條件
- if else end條件
- switch case end語句
- 迭代,收斂錯誤,多維求和運算符
輸入和輸出顯示命令
- input(' ')命令
- disp命令
- fprintf命令
- 消息框msgbox
信號和系統操作
第07-14節
本部分的主要目標如下
- 生成測試不同通信系統性能所需的隨機測試信號
- 集成許多基本信號操作,以實現單個通信處理功能,例如發射端的編碼器、隨機化器、交織器、擴展碼生成器……等,以及接收端的相應部件。
- 正確互連這些塊以實現通信功能
- 確定性、統計和半隨機室內外窄帶通道模型的仿真
生成通信測試信號
- 生成隨機二進制序列
- 生成隨機整數序列
- 導入和讀取文本文件
- 讀取和播放音頻文件
- 導入和導出圖像
- 作為3D矩陣的圖像
- RGB到灰度轉換
- 2D灰度圖像的串行比特流
- 圖像信號的分割和重建
信號調整和操作
- 幅度縮放(增益、衰減、幅度歸一化……等)
- 直流電平移位
- 時間縮放(時間壓縮、稀釋)
- 時間移位(時間延遲、時間提前、左和右循環時間移位)
- 測量信號能量
- 能量和功率歸一化
- 能量和功率縮放
- 串行到並行和並行到串行轉換
- 多路復用和多路解復用
模擬信號的數位化
- MATLAB中連續時間基帶信號的時域採樣
- 模擬信號的幅度量化
- 量化模擬信號的PCM編碼
- 十進制到二進制和二進制到十進制轉換
- 脈衝成形
- 計算適當的脈衝寬度
- 選擇每個脈衝的樣本數
- 使用conv和filter命令進行卷積
- 有限時間信號的自相關和互相關
- 快速傅裡葉變換(FFT)和IFFT操作
- 查看基帶信號譜
- 採樣率和適當的頻率窗口的影響
- 卷積、相關和FFT操作之間的關係
- 頻域濾波,僅低通濾波
輔助通信功能
- 隨機化器和去隨機化器
- 打孔器和去打孔器
- 編碼器和解碼器
- 交織器和去交織器
調製器和解調器
- MATLAB中的數字基帶調製方案
- 數字調製信號的視覺表示
通道建模和仿真
- 對發送信號的通道效應進行數學建模
- 加法 – 加性高斯白噪聲(AWGN)通道
- 時域乘法 – 慢衰落通道,車輛通道中的多普勒移
- 頻域乘法 – 頻率選擇性衰落通道
- 時域卷積 – 通道衝激響應
確定性通道模型示例
- 自由空間路徑損耗和依賴環境的路徑損耗
- 週期性阻塞通道
常見穩態和準穩態多徑衰落通道的統計特徵
- 生成均勻分布的隨機變量
- 生成實值高斯分布隨機變量
- 生成復高斯分布隨機變量
- 生成瑞利分布隨機變量
- 生成米氏分布隨機變量
- 生成對數正態分布隨機變量
- 生成任意分布隨機變量
- 通過直方圖近似隨機變量的未知概率密度函數(PDF)
- 數值計算隨機變量的累積分布函數(CDF)
- 實和復加性高斯白噪聲(AWGN)通道
通過其功率延遲特徵對通道進行特徵化
- 通過其功率延遲特徵對通道進行特徵化
- PDP的功率歸一化
- 從PDP中提取通道衝激響應
- 以任意採樣率對通道衝激響應進行採樣,不匹配採樣和延遲
- 量化
- 窄帶通道衝激響應不匹配採樣的問題
- 以任意採樣率對PDP進行採樣和分數延遲補償
- 實現若干IEEE標準化的室內外通道模型
- (COST – SUI - 超寬帶通道模型……等)
實用通信系統的鏈路級仿真
第15-24節
本課程部分涉及對研究學員來說最重要的問題,即如何通过仿真重現其他已發表論文的仿真結果。
基帶數字調製方案的誤碼率性能
- 在不同AWGN通道中比較不同基帶數字調製方案的性能(通過仿真進行綜合比較研究以驗證理論表達式);散點圖,誤碼率
- 在不同穩態和準穩態衰落通道中比較不同基帶數字調製方案的性能;散點圖,誤碼率(通過仿真進行綜合比較研究以驗證理論表達式)
- 多普勒移通道對基帶數字調製方案性能的影響;散點圖,誤碼率
- 直升機對衛星通信
- 論文 (1):低成本實時語音和數據系統用於航空移動衛星服務(AMSS) – 問題陳述和分析
- 論文 (2):具有準確AFC的預檢測時間分集組合用於直升機衛星通信 – 第一個提出的解決方案
- 論文 (3):用於直升機衛星通信的自適應調製方案 – 性能改進方法
擴頻系統的仿真
- 基於擴頻系統的典型架構
- 直接序列擴頻基於系統
- 偽隨機二進制序列(PBRS)生成器
- 生成最大長度序列
- 生成金代碼
- 生成沃爾什代碼
- 時間跳頻擴頻基於系統
- 在AWGN通道中基於擴頻系統的誤碼率性能
- 編碼率r對誤碼率性能的影響
- 代碼長度對誤碼率性能的影響
- 在多徑慢瑞利衰落通道中,零多普勒移下基於擴頻系統的誤碼率性能
- 在高移動性衰落環境中基於擴頻系統的誤碼率性能分析
- 在多用戶干擾存在下基於擴頻系統的誤碼率性能分析
- 通過擴頻系統傳輸RGB圖像
- 光碼分多址(OCDMA)系統
- 光正交代碼(OOC)
- OCDMA系統的性能限制;同步和異步OCDMA系統的誤碼率性能
超寬帶擴頻系統
基於OFDM的系統
- 使用快速傅裡葉變換實現OFDM系統
- 基於OFDM系統的典型架構
- 在AWGN通道中OFDM系統的誤碼率性能
- 編碼率r對誤碼率性能的影響
- 循環前綴對誤碼率性能的影響
- FFT大小和子載波間隔對誤碼率性能的影響
- 在多徑慢瑞利衰落通道中,零多普勒移下OFDM系統的誤碼率性能
- 在多徑慢瑞利衰落通道中,具有CFO的OFDM系統的誤碼率性能
- OFDM系統中的通道估計
- OFDM系統中的頻域均衡
- 迫零均衡器
- MMSE均衡器
- 基於OFDM系統的其他常見性能指標(峰均功率比,載波干擾比……等)
- 在高移動性衰落環境中基於OFDM系統的性能分析(作為由三篇論文組成的仿真項目)
- 論文 (1):載波間干擾緩解
- 論文 (2):MIMO-OFDM系統
優化MATLAB仿真項目
本部分的目的是學習如何構建和優化MATLAB仿真項目,以簡化和組織整體仿真過程。此外,還考慮了內存空間和處理速度,以避免在有限存儲系統中出現內存溢出問題,或由於處理緩慢而導致的長時間運行。
- 小規模仿真項目的典型結構
- 提取仿真參數和從理論到仿真的映射
- 構建仿真項目
- 蒙特卡洛仿真技術
- 測試仿真項目的典型程序
- 內存空間管理和減少仿真時間技術
- 基帶與帶通仿真
- 計算截斷任意脈衝形狀的適當脈衝寬度
- 計算每個符號的適當樣本數
- 計算測試系統所需的必要和充分比特數
GUI編程
擁有一無bug且運行正確以產生正確結果的MATLAB代碼是一項偉大的成就。然而,仿真項目中的一組關鍵參數控制了為此,並且還有更多原因,提供了一節關於“圖形用戶界面(GUI)編程”的額外講座,以便在您的指尖上控制仿真項目的各個部分,而不是潛入充滿命令的長源代碼中。此外,通過GUI掩蓋MATLAB代碼有助於以一種方式呈現您的工作,從而更容易將多個結果組合到一個主窗口中,並更容易比較數據。
- 什麼是MATLAB GUI
- MATLAB GUI函數文件的結構
- 主要GUI組件(重要屬性和值)
- 局部和全局變量
注意:本課程每個級別涵蓋的主題包括但不限於每個級別所述的那些。此外,每個特定講座的項目根據學員的需求和他們的研究所興趣而變化。
最低要求
為了獲取本课程中包含的廣博知識,學員應具備常見編程語言和技術的一般背景知識。強烈建議深入理解通信工程本科課程。
客戶評論 (2)
許多示例以及從頭到尾的代碼構建。
Toon - Draka Comteq Fibre B.V.
課程 - Introduction to Image Processing using Matlab
機器翻譯
許多有用的練習,解釋得很清楚
Helene Meadows - European Investment Bank
課程 - MATLAB Programming
機器翻譯