• Регистрация
Marat
Marat+56.00
н/д
  • Написать
  • Подписаться

Основы цифровой обработки сигналов: введение, сигналы, шумы, помехи, решаемые задачи

Этим постом мы открываем серию публикаций, посвященных основам цифровой обработки сигналов (ЦОС). При создании этих публикаций мы руководствовались целью рассказать о теме ЦОС простыми словами. Мы не будем зацикливаться на формулах, а больше внимания уделим так называемой физике процесса, рассмотрим практические примеры и постараемся понять базовые принципы. Надеемся, что публикации будут интересны как новичкам в ЦОС, так и тем, кто хорошо разбирается в рассматриваемой области, но возможно хочет взглянуть на привычные вещи через новую призму.

В данном посте освещены 3 темы по основам цифровой обработки сигналов:

 

Основы ЦОС 1 – введение

Ориентироваться мы всё же будем в первую очередь на тех, кто только открывает для себя новый мир ЦОС, и не до конца понимает, что же это такое, связанно ли оно с компьютерами и программированием, или всё же с паянием микросхем? На эти и многие другие вопросы мы дадим ответы в нашей серии публикаций.

Первый важный вопрос, на который мы хотим ответить - зачем. Зачем нам важно в этом разбираться? Где мы можем применить эти знания, и где в нашей повседневной жизни мы сталкиваемся с ЦОС?

Для ответа на этот вопрос далеко ходить не придётся - достаточно взять свой смартфон. Это устройство проигрывает аудио и видео, обрабатывает фото, передаёт и принимает информацию по сети, оценивает собственное положение в пространстве, сканирует отпечаток пальца или профиль лица пользователя – и всё это достижимо за счёт ЦОС!

Ещё примеры:

  • Современные медицинские устройства не обходятся без ЦОС.
  • Умные транспортные средства обрабатывают сигналы с множества датчиков и самостоятельно оценивают дорожную обстановку.
  • Радарные станции, контролирующие взлёт и посадку самолётов на аэродромах, телекоммуникации и системы глобального позиционирования – всё опирается на алгоритмы ЦОС.

Проще говоря, ЦОС сегодня окружает на повсюду, и от неё зависят наши комфорт и безопасность.

Пришло время определений, и начнём мы с определения сигнала. Сигнал – это физический процесс, несущий в себе информацию. Если мы получаем информацию из какого-то физического процесса – для нас этот процесс становится сигналом.

Обычно сигналы мы визуализируем на графиках, так нагляднее. Рассмотрим примеры.

  • График изменения температуры в районе международного аэропорта Логан в течение одного месяца. По оси Х на графике отложено время, по оси Y – градусы. Это одномерный сигнал.
  • Или запись электрокардиограммы. Это также одномерный сигнал, изменение напряжения на электродах во времени.
  • Речь человека – изменение звукового давления во времени.

Но сигналы также могут изменяться в пространстве. Например, изображение! Оно отражает изменение цвета и освещённости в пространстве. И если мы рассмотрим цифровое изображение, то оно обычно состоит из пикселей. Значения яркости отдельных пикселей изменяются в пространстве, каждую строчку пикселей можно рассматривать, как отдельный одномерный сигнал.

И здесь важно отметить слово «рассматриваем». Для обработки сигналов мы используем определённый математический аппарат. Что такое значения яркости пикселей одной строки? Это числа. Вектор чисел, над которыми можно осуществлять, например, арифметические операции. Или отобразить на графике, отложив по оси икс положение пикселей в пространстве.

Сложив несколько строк, мы получаем матрицу. Изображения часто представляются именно в виде численных матриц. Представление – это, по сути, математическая модель сигнала, то, над чем мы можем оперировать. Представили изображение в виде матрицы – и мы можем применять линейную алгебру. Или, например, мы можем описать сигнал формулой – и определить его значение подставив параметры в любой момент времени.

Математическое описание для рассматриваемого физического процесса мы выбираем в зависимости от решаемой задачи и от доступной нам математики. Об этом мы более подробно поговорим в следующих публикациях. А пока что краткий экскурс в историю и ещё одно базовое определение.

Обработка сигналов – это выполнение действий над сигналом для изменения его характеристик или получения информации. Подобные действия раньше осуществлялись без использования компьютеров и микросхем.

Рассмотрим типичный пример – усиление аналогового электрического сигнала. Аналоговые электрические цепи состоят из транзисторов, резисторов, конденсаторов и т.д.

На картинке представлен усилительный каскад, он позволяет нам из сигнала малой амплитуды получить сигнал большей амплитуды. Происходит изменениехарактеристик сигнала, то есть его обработка. Цепи детекторов фазы и частоты могут помочь нам оценить характеристики электрического сигнала, то есть получить информацию.

Аналоговые цепи оперируют непрерывными сигналами, в то время как цифровые устройства обрабатывают дискретные отсчёты нулей и единиц – цифровые сигналы.

Вот пример прохождения цифрового сигнала через микросхему. По сути, здесь также происходит изменение величины входного сигнала, и микросхема представляет собой цифровой усилитель!

Но для чего нам вообще использовать цифровые сигналы и устройства?

Цифровые сигналы стали впервые использоваться в системах связи, так как они были более устойчивы к шумам и помехам. Здесь можно провести аналогию с азбукой морзе – вы, наверное, помните, как в фильмах, когда систем связи перестаёт работать, герои вспоминают про азбуку морзе и начинают нажимать тангенту, передавая точки и тире. Такой простейший сигнал доходит в самых трудных условиях.

Нули и единицы цифрового сигнала – по сути точки и тире. Ими можно закодировать любую информацию, так же как мы кодируем буквы в азбуке Морзе.

Аналоговый сигнал несёт информацию, к примеру, в значении своей амплитуды. Нам важно знать точное значение для того, чтобы получить сообщение без ошибок. У цифрового сигнала только два значения амплитуды – большое или маленькое, единица или ноль.

При передаче на сигнал накладывается шум, и в случае с аналоговым сигналом, этот шум может сильно исказить значение амплитуды, в то время как на цифровом мы по-прежнему сможем понять, где ноль, а где единица, и декодировать сообщение без ошибок.

Развитие цифровой связи привело к развитию цифровой вычислительной техники, и в итоге мы теперь имеем программируемые цифровые вычислители, которые присутствуют практически в каждом устройстве.

Но и аналоговая обработка никуда не делась, современные устройства также зачастую содержат в себе аналоговые цепи наряду с цифровыми.

Вот мы наконец и добрались до главного определения:

Цифровая обработка сигналов – способ обработки сигналов на основе численных методов с использованием цифровой вычислительной техники.

Вот так выглядит обобщённая схема системы ЦОС – она описывает общий случай обработки физического, то есть аналогового, сигнала, цифровым вычислителем.

На входе и входе системы обработки непрерывный аналоговый сигнал, который проходит через специальное устройство – аналого-цифровой преобразователь, и только после этого в виде последовательности нулей и единиц попадает на цифровой вычислитель. Выходная последовательность преобразуется обратно в аналоговую форму цифро-аналоговым преобразователем. О том, что это за устройства и как они работают мы подробно расскажем в отдельной публикации. Но в принципе ЦОС может осуществляться над изначально цифровым сигналом, и преобразование в аналоговую форму не требуется.

А о том, что же это за цифровой сигнал, и как мы можем получить его из аналогового – в следующей публикации!

 

Основы ЦОС 2 – cигналы, шумы и помехи

Во-первых давайте попробуем понять, что такое цифровой сигнал, и как он соотносится с аналоговым. Для этого рассмотрим процесс оцифровки аналогового сигнала. Исходный аналоговый сигнал непрерывен, и мы можем узнать его значение в любой момент времени.

Запишем его как x(t). Подставляем любое значение времени t – получаем значение сигнала x.

Для того, чтобы представить этот аналоговый сигнал в цифровом нужно осуществить две операции:

  1. дискретизации,
  2. квантования.

При дискретизации мы берём отсчёты сигнала только в конкретные моменты времени. Дискретный сигнал уже не является непрерывным, его значения известны нам только в выбранных точках.

Мы записываем его как x(n). n – номер дискретного отсчёта. Подставили номер отсчёта n – получили значение из дискретной последовательности. В нашем случае отсчёты по оси времени расположены друг от друга на одинаковом расстоянии. Мы взяли временную сетку с равномерным шагом. Шаг этот называется периодом дискретизации – Δt. Точные значения сигнала, не попавшие во временную сетку с периодом дискретизации нам уже недоступны.

Квантование – это представление значений сигнала конечным числом уровней, то есть округление его точных значений.

На данном графике представлен непрерывный квантованный сигнал. Мы выбрали целочисленные уровни, и в тот момент времени, когда сигнал, например, превышает значение в 2.5 он приравнивается к тройке, а когда значение опускается ниже двух с половиной – он округляется вниз до двойки.

Ну и наконец цифровой сигнал. Он является квантованным по уровню и дискретным во времени.

В нашем случае цифровой сигнал – это дискретная последовательность целочисленных значений. И если мы представим наши уровни не в десятичном, а в двоичном виде – то мы получаем ту самую последовательность нулей и единиц, о которой мы говорили ранее.

Важно заметить, что при квантовании теряется точность. Каждый отсчёт цифрового сигнала отличается от соответствующего отсчёта дискретного сигнала на величину, равную разнице реального значения и ближайшего уровня квантования. Сигнал разницы часто называют ошибкой или шумом квантования.

Теперь поговорим о том, что может помешать нам получить информацию из сигнала, а именно о:

  • шумах,
  • помехах,
  • искажениях.

Начнём с шумов. Если говорить просто, где есть сигнал, там будет и шум, так как шум присутствует повсюду. Упорядоченные процессы физического мира соседствуют со случайными, и зафиксировать одни без других практически невозможно. У нас нет времени рассказывать о всех случайных процессах во вселенной, поэтому давайте ограничимся наиболее распространёнными видами шумов при ЦОС.

Начнём с теплового шума. Большинство устройств обработки имеют в своём составе электрические цепи. Цифровые вычислители также являются электрическими цепями, через которые проходят электрические сигналы. А в любом проводнике электрического сигнала присутствует тепловой шум, обусловленный хаотичным движением подвижных частиц – носителей заряда.

Электрический сигнал может быть преобразован в электромагнитную, звуковую, световую и прочие формы и передан по соответствующим физическим каналам. В этих каналах так же присутствуют хаотично движущиеся частицы, как например в атмосфере.

Сигнал ошибки квантования, упомянутый ранее, нам также проще относить к категории шумов, хотя по факту он не является случайным и зависит от сигнала.

Подводя итог: шумы, как правило, случайны по своей природе, и их источниками являются физические процессы.

 

Помехи же, как правило, случайными процессами не являются, и источники их часто имеют так называемое человеческое происхождение. К примеру – линия электропередач мешает вам принимать телевизионный сигнал, расположенные рядом станции сотовой связи вызывают замирания сигнала. Иногда помеха создаётся специально, чтобы подавить средства обнаружения противника в рамках радиоэлектронной борьбы. Помехи могут иметь и естественное происхождение, например засветка солнцем в системах спутниковой связи.

Искажения – это нежелательные изменения сигнала, вызванные неидеальностью среды передачи или системы обработки. Шум и помеха существуют отдельно от сигнала, от них часто можно отфильтровать, в то время как искажения происходят с самим сигналом. И в этом случае мы безвозвратно теряем информацию.

Пример – ограничение в усилителе. Выходной сигнал устройства не может быть выше определённого значения, и при большом коэффициенте усиления мы наблюдаем изменения формы сигнала – пики обрезаются. Выходной сигнал перестаёт напоминать входной. Но и даже такие искажения могут быть полезны, например, рок музыкантам – эффект перегруза в гитарах достигается именно по описанному принципу.

Мы часто говорим о сигнале, как об источнике информации, но вокруг нас протекает множество физических процессов. Что из них полезный сигнал, что шум, а что помеха?

На самом деле всё относительно. Рассмотрим простой пример. Вы находитесь в многолюдном кафе. То, что говорит вам ваш собеседник является полезным сигналом. В то время как беседа людей за соседним столиком для вас является помехой. Но если вы захотите узнать, о чём же там так оживлённо спорят, то в это случае уже речь вашего собеседника будет мешать вам это сделать.

Казалось бы, с шумами всё понятно – они всегда нежелательны. Но и тут есть исключения. В космосе присутствует реликтовое электромагнитное излучение, которое будет шумовым сигналом, если вы хотите получить какое-то сообщение со спутника. Но если вы радиоастроном, изучающий возникновение вселенной, то для вас этот шум и есть полезный сигнал.

Выделение сигнала на фоне шума или помехи – одна из задач ЦОС, и в следующей публикации мы попробуем очертить остальные задачи.

 

Основы ЦОС 3 – cигналы, шумы и помехи

Основные задачи ЦОС можно сгруппировать в следующие категории:

  • эквализация или исправление сигнала,
  • фильтрация сигнала,
  • идентификация системы,
  • анализ и оценка параметров сигнала,
  • сжатие.

Первые три категории соответствуют представленной схеме – здесь присутствуют входной сигнал, система обработки и выходной сигнал. В каждом из трёх случаев что-то является неизвестным и искомым. Под системой же здесь подразумевается любая среда прохождения, намеренно или ненамеренно изменяющая входной сигнал. Будь то кабель, атмосфера или цифровой вычислитель.

Эквализация – задача поиска входного сигнала при известных параметрах системы и выходного сигнала. Иногда эту задачу также называют инверсией, потому что мы как бы исправляем то, что система делает с сигналом. Находим его первозданный вид.

Мы знаем, как неидеальности системы могут влиять на сигнал, например, в каких частотных диапазонах он будет подавляться сильнее. К примеру, как акустика комнаты и параметры усилителей и динамиков могут подавить высокие частоты и усилить средние. Эквалайзер позволит нам контролировать усиление в определённых полосах для компенсации влияния системы.

Фильтрация – одна из самых распространённых задач ЦОС.

Мы ищем выходной сигнал. Но на самом деле мы скорее отделяем полезный сигнал от смеси сигнала с шумом или помехой, подобно тому, как простейший водный фильтр помогает нам отделить пригодную для питья воду от песка и мелких частиц.

Идентификация системы применяется в том случае, когда измерить точные параметры среды прохождения сигнала не представляется возможным, и нужна модель среды.

 

К примеру – многолучевое распространение радиосигнала в условиях городской застройки. Точно просчитать, от каких зданий и как сигнал переотразится достаточно сложно, но! мы знаем передаваемый сигнал, записываем принятый сигнал, и далее пробуем найти наилучшую модель, описывающую среду распространения, которая затем может быть использована при модификации и эксплуатации системы. Или же получение модели является целью исследовательской задачи, например при зондировании земли.

Теперь рассмотрим анализ и оценку параметров сигнала. Это широкий класс задач, связанный с получением информации из сигнала. Часто этот процесс идёт после исправления или фильтрации сигнала.

Пример – оценка формы огибающей модулированного сигнала позволит нам получить сообщение из радиоканала.

Анализ спектра принятого эфира позволит нам сделать заключение о наличии или отсутствии того или иного частотного компонента в принятой смеси сигналов и шумов.

Оценка параметра частоты отраженного сигнала, принимаемого автомобильным радаром, позволит на основе эффекта Доплера оценить относительную скорость.

Ну и наконец сжатие сигнала. Оно применяется в тех случаях, когда мы хотим уменьшить количество передаваемой или хранимой информации. Часто это достигается за счёт потери в точности представления.

Большинство аудиофайлов на вашем телефоне хранятся в сжатом виде, потоковое видео, которое вы смотрите, приходит к вам также в сжатом виде. Алгоритмы и устройства компрессии данных – также часть мира ЦОС.

Большинство практических примеров в курсе мы будем рассматривать в среде MATLAB, поэтому следующая публикация будет посвящена введению в MATLAB для решения задач ЦОС.

 

 

 

Теги

      17.10.2021

      Комментарии