13. Багатопроменеві завмирання

У цій главі ми познайомимося з багатопроменевістю - явищем поширення, в результаті якого сигнали досягають приймача двома або більше шляхами, з яким ми стикаємося в реальних бездротових системах. Досі ми обговорювали лише “канал AWGN”, тобто модель бездротового каналу, де сигнал просто додається до шуму, що насправді застосовується лише до сигналів по кабелю та деяких систем супутникового зв’язку.

Багатопроменева передача

Всі реалістичні бездротові канали включають багато “відбивачів”, враховуючи, що радіочастотні сигнали відбиваються. Будь-який об’єкт між передавачем (Tx) або приймачем (Rx) або поблизу них може спричинити додаткові шляхи проходження сигналу. Кожен шлях зазнає різного фазового зсуву (затримки) і ослаблення (масштабування амплітуди). У приймачі всі ці шляхи складаються. Вони можуть складатися конструктивно, деструктивно або поєднувати обидва способи. Ми називаємо цю концепцію множинних шляхів проходження сигналу “багатопроменевістю”. Існує шлях прямої видимості (LOS), а потім всі інші шляхи. У наведеному нижче прикладі ми показуємо шлях LOS і один шлях поза зоною прямої видимості: Всі реалістичні бездротові канали включають багато “відбивачів”, враховуючи, що радіочастотні сигнали відбиваються. Будь-який об’єкт між або поблизу передавача (Tx) або приймача (Rx) може спричинити додаткові шляхи проходження сигналу. Кожен шлях зазнає різного фазового зсуву (затримки) і ослаблення (масштабування амплітуди). У приймачі всі ці шляхи складаються. Вони можуть складатися конструктивно, деструктивно або поєднувати обидва способи. Ми називаємо цю концепцію множинних шляхів проходження сигналу “багатопроменевістю”. Існує шлях прямої видимості (LOS), а потім всі інші шляхи. У наведеному нижче прикладі ми показуємо шлях LOS і один шлях поза зоною прямої видимості:

Просте зображення багатопроменевості, що показує шлях прямої видимості (LOS) і один багатопроменевий шлях

Руйнівна інтерференція може виникнути, якщо вам не пощастило з тим, як ці шляхи складаються разом. Розглянемо приклад вище з двома шляхами. Залежно від частоти і точної відстані між ними, ці два сигнали можуть бути прийняті на 180 градусів у протифазі з приблизно однаковою амплітудою, що призведе до їх взаємного обнулення (як показано нижче). На уроках фізики ви могли дізнатися про конструктивні та деструктивні інтерференції. У бездротових системах, коли шляхи деструктивно об’єднуються, ми називаємо цю інтерференцію “глибоким завмиранням”, оскільки наш сигнал ненадовго зникає.

../_images/destructive_interference.svg

Шляхи також можуть конструктивно складатися, що призводить до отримання сильного сигналу. Кожен шлях має різний фазовий зсув і амплітуду, які ми можемо візуалізувати на графіку в часовій області, який називається “профіль затримки потужності”:

Візуалізація багатопроменевої лінії, включаючи графік профілю затримки потужності у часі

Перший шлях, найближчий до осі y, завжди буде шляхом LOS (за умови, що він існує), тому що жоден інший шлях не може досягти приймача швидше, ніж шлях LOS. Зазвичай величина зменшується зі збільшенням затримки, оскільки шлях, якому знадобилося більше часу, щоб з’явитися в приймачі, пройшов більшу відстань.

Згасання

Як правило, ми отримуємо суміш конструктивних і деструктивних завад, і вона змінюється з часом, коли Rx, Tx або навколишнє середовище рухаються/змінюються. Ми використовуємо термін “завмирання”, коли говоримо про ефекти багатопроменевого каналу, що змінюються з часом. Ось чому ми часто називаємо це “багатопроменеві завмирання”; насправді це комбінація конструктивних/деструктивних завад і мінливого середовища. В результаті ми отримуємо SNR, який змінюється з часом; зміни зазвичай становлять від мілісекунд до мікросекунд, залежно від того, наскільки швидко рухаються Tx/Rx. Нижче наведено графік зміни SNR у часі в мілісекундах, який демонструє багатопроменеві завмирання.

Багатопроменеві завмирання спричиняють періодичні глибокі завмирання або нулі, де SNR падає надзвичайно низько

Існує два типи завмирань з точки зору часової перспективи:

  • Повільні завмирання: Канал не змінюється в межах одного пакета даних. Тобто, глибокий нуль під час повільного згасання знищить весь пакет.

  • Швидкі завмирання:** Канал змінюється дуже швидко порівняно з довжиною одного пакета. Пряма корекція помилок у поєднанні з чергуванням може боротися зі швидкими завмираннями.

Існує також два типи завмирань з точки зору частотної області:

Частотно-селективні завмирання: Конструктивні/деструктивні завади змінюються в межах частотного діапазону сигналу. Коли ми маємо широкосмуговий сигнал, ми охоплюємо великий діапазон частот. Пам’ятайте, що довжина хвилі визначає, чи є вона конструктивною або деструктивною. Якщо наш сигнал охоплює широкий діапазон частот, він також охоплює широкий діапазон довжин хвиль (оскільки довжина хвилі - величина, обернена до частоти). Отже, ми можемо отримати різні якості каналу в різних частинах нашого сигналу (в частотній області). Звідси і назва - частотно-селективні завмирання.

Плоскі завмирання: Виникає, коли смуга пропускання сигналу досить вузька, що всі частоти відчувають приблизно однаковий канал. Якщо відбувається глибоке згасання, то весь сигнал зникає (на час глибокого згасання).

На рисунку нижче, червона фігура показує наш сигнал у частотній області, а чорна крива лінія показує поточний стан каналу по частоті. Оскільки вужчий сигнал перебуває в однакових умовах каналу на всьому його протязі, він відчуває плоске згасання. Ширший сигнал зазнає дуже сильних частотно-селективних завмирань.

Пласке згасання проти частотно-селективного згасання

Ось приклад сигналу шириною 16 МГц, який передається безперервно. Посередині є кілька моментів, коли протягом певного періоду часу відсутня частина сигналу. Цей приклад демонструє частотно-селективні завмирання, які спричиняють появу дірок у сигналі, що знищують деякі частоти, але не знищують інші.

Приклад частотно-селективного згасання на спектрограмі (так звана водоспадна ділянка), що показує розмазування і дірку в спектрограмі, де знаходиться глибокий нуль

Моделювання релеївських завмирань

Релеєвське згасання використовується для моделювання згасання з часом, коли немає значного шляху LOS. Коли є домінуючий шлях LOS, модель згасання Рікана стає більш придатною, але ми зосередимося на моделі Релея. Зауважте, що моделі Релея і Рікана не враховують основні втрати на шляху між передавачем і приймачем (наприклад, втрати на шляху, що розраховуються як частина бюджету лінії зв’язку), або будь-які затінення, спричинені великими об’єктами. Їх роль полягає в моделюванні багатопроменевих завмирань, які виникають з часом внаслідок руху і розсіювачів в навколишньому середовищі.

Існує багато теорій, які випливають з моделі релеєвського згасання, наприклад, вирази для швидкості перетину рівня і середньої тривалості згасання. Але модель релеєвських завмирань не дає нам прямих вказівок, як насправді моделювати канал за допомогою цієї моделі. Щоб згенерувати релеєвські завмирання в симуляції, ми повинні використати один з багатьох опублікованих методів, і в наступному прикладі на Python ми будемо використовувати метод Кларка “сума синусоїд”.

Щоб згенерувати канал релеєвських завмирань у Python, нам потрібно спочатку вказати максимальний допплерівський зсув у Гц, який базується на швидкості руху передавача та/або приймача, що позначається \Delta v. Якщо швидкість мала порівняно зі швидкістю світла, що завжди буде мати місце у бездротовому зв’язку, допплерівський зсув можна обчислити як:

f_D = \frac{\Delta v f_c}{c}

де c - швидкість світла, приблизно 3e8 м/с, а f_c - несуча частота, на якій передається сигнал.

Ми також вибираємо кількість синусоїд для моделювання, і тут немає правильної відповіді, оскільки це залежить від кількості розсіювачів у навколишньому середовищі, яку ми ніколи не знаємо. Під час обчислень ми припускаємо, що фаза сигналу, отриманого з кожного шляху, є рівномірно випадковою між 0 і 2\pi. Наступний код моделює релеєвський канал із завмираннями за методом Кларка:

import numpy as np
import matplotlib.pyplot as plt

# Параметри моделювання, не соромтеся їх змінювати
v_mph = 60 # швидкість TX або RX, у милях на годину
center_freq = 200e6 # несуча частота радіосигналу в Гц
Fs = 1e5 # частота дискретизації симуляції
N = 100 # кількість синусоїд для підсумовування

v = v_mph * 0.44704 # перевести в м/с
fd = v*center_freq/3e8 # максимальний допплерівський зсув
print("максимальний допплерівський зсув:", fd)
t = np.arange(0, 1, 1/Fs) # вектор часу. (start, stop, step)
x = np.zeros(len(t))
y = np.zeros(len(t))
for i in range(N):
    alpha = (np.random.rand() - 0.5) * 2 * np.pi
    phi = (np.random.rand() - 0.5) * 2 * np.pi
    x = x + np.random.randn() * np.cos(2 * np.pi * fd * t * np.cos(alpha) + phi)
    y = y + np.random.randn() * np.sin(2 * np.pi * fd * t * np.cos(alpha) + phi)

    # z - комплексний коефіцієнт, що представляє канал, ви можете думати про це як про масштаб фазового зсуву та амплітуди
z = (1/np.sqrt(N)) * (x + 1j*y) # це те, що ви будете використовувати при моделюванні каналу
z_mag = np.abs(z) # беремо амплітуду для побудови графіку
z_mag_dB = 10*np.log10(z_mag) # перевести в дБ

# побудувати графік затухання з часом
plt.plot(t, z_mag_dB)
plt.plot([0, 1], [0, 0], ':r') # 0 дБ
plt.legend(['Релеєвське згасання', 'Немає згасання'])
plt.axis([0, 1, -15, 5])
plt.show()

Якщо ви маєте намір використовувати цю модель каналу як частину більшої симуляції, вам слід просто помножити отриманий сигнал на комплексне число z, що представляє плоскі завмирання. Значення z буде оновлюватися на кожному часовому кроці. Це означає, що всі частотні компоненти сигналу проходять через один і той самий канал у будь-який момент часу, тому ви не імітуєте частотно-селективні завмирання, які вимагають багатоканальної імпульсної характеристики каналу, яку ми не розглядатимемо в цій главі. Якщо ми подивимося на величину z, то побачимо релеєвське згасання з часом:

Імітація релеївського згасання

Зверніть увагу на глибокі згасання, які виникають на короткий час, а також на невеликий проміжок часу, коли канал працює краще, ніж якби згасання не було взагалі.

Зменшення багатопроменевих завмирань

У сучасних засобах зв’язку ми розробили способи боротьби з багатопроменевими завмираннями.

CDMA

Стільниковий зв’язок 3G використовує технологію під назвою множинний доступ з кодовим поділом каналів (CDMA). За допомогою CDMA ви берете вузькосмуговий сигнал і поширюєте його на широку смугу частот перед передачею (використовуючи технологію розширення спектра, яка називається DSSS). При частотно-селективних завмираннях малоймовірно, що всі частоти одночасно опиняться в глибокому нулі. На приймачі розсіювання змінюється на протилежне, і цей процес розсіювання значно пом’якшує глибокий нуль.

../_images/cdma.png

OFDM

Стільниковий зв’язок 4G, WiFi та багато інших технологій використовують схему, яка називається ортогональним частотним мультиплексуванням (OFDM). OFDM використовує так звані піднесучі, де ми розбиваємо сигнал у частотній області на кілька вузьких сигналів, стиснутих разом. Для боротьби з багатопроменевими завмираннями ми можемо уникнути призначення даних на піднесучі, які перебувають у глибокому завмиранні, хоча це вимагає від приймача досить швидкого відправлення інформації про канал назад до передавача. Ми також можемо призначити схеми модуляції високого порядку для піднесучих з високою якістю каналу, щоб максимізувати швидкість передачі даних.