Цос это что такое
Цифровая обработка сигналов
Цифрова́я обрабо́тка сигна́лов (ЦОС, DSP — англ. digital signal processing ) — преобразование сигналов, представленных в цифровой форме.
Любой непрерывный (аналоговый) сигнал может быть подвергнут дискретизации по времени и квантованию по уровню (оцифровке), то есть представлен в цифровой форме. Если частота дискретизации сигнала
не меньше, чем удвоенная наивысшая частота в спектре сигнала
(то есть
), то полученный дискретный сигнал
эквивалентен сигналу
по методу наименьших квадратов (МНК) (см.: Теорема Котельникова).
При помощи математических алгоритмов преобразуется в некоторый другой сигнал
, имеющий требуемые свойства. Процесс преобразования сигналов называется фильтрацией, а устройство, выполняющее фильтрацию, называется фильтр. Поскольку отсчёты сигналов поступают с постоянной скоростью
, фильтр должен успевать обрабатывать текущий отсчет до поступления следующего (чаще — до поступления следующих n отсчётов, где n — задержка фильтра), то есть обрабатывать сигнал в реальном времени. Для обработки сигналов (фильтрации) в реальном времени применяют специальные вычислительные устройства — цифровые сигнальные процессоры.
Всё это полностью применимо не только к непрерывным сигналам, но и к прерывистым, а также к сигналам, записанным на запоминающие устройства. В последнем случае скорость обработки непринципиальна, так как при медленной обработке данные не будут потеряны.
Различают методы обработки сигналов во временной (англ. time domain ) и в частотной (англ. frequency domain ) области. Эквивалентность частотно-временных преобразований однозначно определяется через преобразование Фурье.
Обработка сигналов во временной области широко используется в современной электронной осциллографии и в цифровых осциллографах. Для представления сигналов в частотной области используются цифровые анализаторы спектра. Для изучения математических аспектов обработки сигналов используются пакеты расширения (чаще всего под именем Signal Processing) систем компьютерной математики MATLAB, Mathcad, Mathematica, Maple и др.
В последние годы при обработке сигналов и изображений широко используется новый математический базис представления сигналов с помощью «коротких волночек» — вейвлетов. С его помощью могут обрабатываться нестационарные сигналы, сигналы с разрывами и иными особенностями и сигналы в виде пачек.
Содержание
Основные задачи
Основные преобразования
Цифровая обработка сигнала в передатчике [1]
Распространение сигналов по каналу связи
Цифровая обработка сигнала в приёмнике [1]
См. также
Примечания
Литература
Ссылки
Audio signal processing (англ.) • Control engineering (англ.) • Digital image processing (англ.) • Speech processing (англ.) • Statistical signal processing (англ.)
Удаленки.net
Чем отличается Цифровая образовательная среда от дистанционного обучения? Ждет ли школы тотальное погружение в онлайн? Почему аргумент «мы и без компьютеров учились хорошо» уже не работает? В Минпросвещения опровергли восемь самых популярных мифов о дистанционном обучении, которые ходят в соцсетях и родительских чатах.
МИФ 1
Почему тогда родился этот миф? Просто во время вынужденного дистанционного обучения многие школы начали пользоваться новой инфраструктурой, которая уже создается. Отсюда и путаница.
МИФ 2
Это неправда! Никто не собирается вводить дистанционное обучение для всех школьников на постоянной основе.
МИФ 3
«Есть документы, которые на законодательном уровне закрепляют дистанционный формат, а традиционная система образования будет ликвидирована»
Это неправда! Есть федеральный проект «Цифровая образовательная среда» нацпроекта «Образование», который предусматривает техническое оснащение всех школ, обеспечение их широкополосным интернетом и качественными учебными материалами. Он не предполагает всеобщего перехода на дистант.
МИФ 4
Это неправда! ЦОС создается для учителя, а не вместо него. Цифровая образовательная среда разгрузит учителей от рутины: бумажной отчетности, проверки однотипных домашних заданий. Современные инструменты помогут сделать очные уроки интереснее с помощью интерактивных заданий. У педагога появится больше времени и сил на общение с детьми.
МИФ 5
«Цифровизация снижает уровень знаний детей»
Наглядный пример: за то время, что ученик, переписывая из учебника в тетрадь упражнение, вставит пять пропущенных букв, он смог бы пройти интерактивный тест, вставив 50 пропущенных букв.
Во втором случае он лучше закрепит пройденный материал. В этом помогут и «всплывающие» правила в случае неверного ответа, и игровая форма с набиранием баллов (вместо скучного переписывания).
МИФ 6
«Если на создание Цифровой образовательной среды планируется потратить 1,5 млрд евро, значит, все-таки готовится переход на всеобщий дистант»
МИФ 7
«Мы учились не за компьютером, и все было хорошо. Поэтому Цифровая образовательная среда не нужна»
Раньше все пользовались дисковыми проводными телефонами: попробуйте убедить ваших детей, что сегодня можно обойтись без мобильных телефонов! Сегодня количество профессий, где не требуется владение компьютером, стремительно сокращается, а к тому моменту, когда нынешние дети закончат школу, таких рабочих мест может вообще не остаться.
МИФ 8
«В интернете уже есть много обучающих платформ, можно пользоваться ими. Тратить государственные деньги на новые не нужно»
Это не так. В интернете действительно уже много обучающих платформ. Но пока нет такой, которая была бы абсолютно безопасна для детей, содержала только проверенный и одобренный экспертами контент, предоставляла информацию по всем предметам и на все темы.
Ноу-хау из портфеля
Цифровая образовательная среда
Попробуем собрать вместе представления о том, что такое цифровая образовательная среда, какими свойствами она обладает, каковы цели и задачи её создания и поддержания, на каких принципах она может быть построена.
Основные термины и определения:
Цифровая образовательная среда (ЦОС)– это открытая совокупность информационных систем, предназначенных для обеспечения различных задач образовательного процесса.
Слово « открытая» означает возможность и право любого пользователя использовать разные информационные системы в составе ЦОС, заменять их или добавлять новые. Для этого в логике ЦОС должны быть предусмотрены условия и открыто опубликованные правила.
Среда принципиально отличается от системы тем, что она включает в себя совершенно разные элементы: как согласованные между собой, так и дублирующие, конкурирующие и даже антагонистичные. Это позволяет среде более динамично развиваться. Никогда невозможно предугадать, какие из элементов среды окажутся более живучими, какие отомрут, какие с какими образуют новые согласованные альянсы, а какие, наоборот, разделятся.
Система, в отличие от среды, создается под конкретные цели и в согласованном единстве. Ее живучесть определяется диапазоном соответствия реальных внешних условий предусмотренным в проекте изначально. Чем быстрее меняются условия, тем короче жизнь систем.
Главная проблема современных информационных систем в образовании именно в том, что их, избегая согласований, создают централизованно в виде единых универсальных продуктов, подавляя инициативу образовательных организаций по использованию своих систем. Стремительное изменение внешних условий и самих технологий приводит к крайне низкой эффективности вложений в создание этих систем. Поскольку оправдание бюджетных затрат демонстрируется практикой использования, образовательные организации заставляют использовать эти системы. Это приводит к отторжению педагогов от использования навязанных систем и пассивному противодействию. В результате новые информационные системы не только не улучшают образовательный процесс, но и приводят к повышению бюрократической нагрузки, вместо, казалось бы, ожидаемого облегчения ее.
Чтобы справиться со стремительными изменениями, в сфере информационных технологий сначала переходили на «платформы», а теперь все больше говорят об экосистемах.
Платформа– такое построение информационной системы, которое позволяет сторонним разработчиками, используя предусмотренные платформой открытые инструменты, строить собственные продукты, которые смогут работать и взаимодействовать с другими продуктами на той же платформе.
Экосистема– такое построение информационных систем, которое не требует от сторонних разработчиков использовать специфические инструменты для своих продуктов: достаточно реализовать согласованный протокол обмена данными. Это позволяет обеспечить взаимодействие любых информационных систем в случае реализации этого протокола.
Организационные принципы построения ЦОС:
(формулировки приведены с учетом предложений-поправок коллег —экспертов ИРИ)
Что нужно сделать в образовании для продуктивного и эффективного применения цифровых технологий?
Прежде всего, запретить насильственное внедрение централизованных региональных инструментов, кроме государственных систем, как нарушающих ряд законов и разъяснения Минобрнауки России,– взять курс на построение открытой экосистемы, настоящей ЦОС, на основе минималистичных центральных государственных систем. Предложение о переформатировании в этом контексте федеральной системы учета обучающихся Контингент описано ранее.
Ключевой принцип информатизации образования– снижение бюрократической нагрузки за счет средств автоматизации, искусственного интеллекта в пользу сосредоточенности педагогов, образовательных организаций непосредственно на задачах образовательного процесса.
Ключевой инструмент формирования экосистемы– стандарты на протоколы обмена данными между различными информационными системами.
Цели ЦОС:
Задачи:
Описание и оценка эффективности
Речь идет о создании условий для формирования ЦОС на всех уровнях организации образовательного процесса и его управления. Это не требует существенных финансовых вложений. Это невыгодный для подрядчиков проект– в нем нет «железа» и монстроидальной программной разработки, на которые можно запросить космические суммы типа Контингента или РЭШ/МЭШ. Это будничная чиновная работа по подготовке новой нормативной базы. Оценить ее эффективность можно только позже– по происходящим изменениям и повышению активности использования ЦОС, потому что эти нормы должны создать условия для свободного и бурного развития ЦОС всех уровней.
Важнейшим критерием успеха по созданию таких условий считаю последующее
Что такое ЦОС
Первый важный вопрос на который мы хотим ответить зачем? Зачем нам важно в этом разбираться? Где мы можем применить эти знания, и где в нашей повседневной жизни мы сталкиваемся с цифровой обработкой сигналов (ЦОС)?
Для ответа на этот вопрос далеко ходить не придется, достаточно взять свой смартфон. Это устройство проигрывает аудио и видео, обрабатывает фото, передает и принимает информацию по сети, оценивает собственное положение в пространстве, сканирует отпечаток пальца или профиля пользователя, и все это достижимо за счет цифровой обработки сигналов.
Примеров из повседневной жизни множество, современные медицинские устройства не обходятся без ЦОС:
Проще говоря, Цифровая Обработка Сигналов сегодня окружает нас повсюду и от нее зависит наш комфорт и безопасность.
Что такое сигнал
Сигнал — это физический процесс, несущий в себе информацию. Если мы получаем информацию из какого-то физического процесса, то для нас он становятся сигналом.
График изменения температуры в районе международного аэропорта «Логан» в течение одного месяца. На первом графике по оси x отложены время, по оси y градусы, это одномерный сигнал или запись электрокардиограммы. На втором графике, одномерный сигнал, изменение напряжения на электродах во времени.
Но сигналы могут изменяться в пространстве. К примеру, изображение. Оно отражает изменение цвета и освещенности в пространстве. Если мы рассматриваем цифровое изображение, то оно обычно состоит из пикселей.
Значение яркости отдельных пикселей изменяются в пространстве. Каждую строчку пикселей можно рассматривать как отдельный, одномерный сигнал. Здесь ключевое слово рассматривать, то как мы рассматриваем или представляем сигнал очень важно. Для обработки мы используем определенный математический аппарат. Что такое значение яркости пикселя одной строки? Это набор чисел над которой можно осуществлять, например арифметические операции, или их можно отразить на графике отложив по оси x положение пикселей в пространстве.
Сложив несколько строк мы получаем матрицу, изображение часто представляется именно в виде численных матриц, и это представление по сути, математическая модель сигнала то, над чем мы можем оперировать.
Представили изображение виде матрицы и мы можем применять линейную алгебру, или например можем описать сигнал формулой и определить его значение, подставив параметры в любой момент времени. Математическое описание для рассматриваемого физического процесса мы выбираем в зависимости от решаемой задачи и от доступной нам математики.
Обработка сигналов
Обработка сигналов — это выполнение действий над сигналом для изменения его характеристик или получения информации. Подобное действие раньше осуществлялись без использования компьютеров и микросхемы.
Рассмотрим типичный пример усиления аналогового электрического сигнала. Аналоговые электрические цепи состоят из транзисторов, резисторов, конденсаторов и так далее. На картинке ниже представлен усилительный каскад, он позволяет из сигнала малой амплитуды получить сигнал большей амплитуды, происходит изменение характеристик сигнала, то есть его обработка.
Цепи детектора фазы и частоты могут помочь нам оценить характеристики электрического сигнала, то есть получить информацию. Аналоговое цепи оперируют непрерывными сигналами, в то время как цифровые устройства обрабатывают дискретные отсчеты, нули и единицы.
Цифровые сигналы
Ниже на картинке пример прохождение цифрового сигнала через микросхему. По сути здесь также происходит изменение величины входного сигнала и микросхема представляет собой цифровой усилитель.
Но для чего нам вообще использовать цифровые сигналы и устройства?
Цифровые сигналы, впервые стали использоваться в системах связи, так как они были более устойчивы к шумам и помехам, и здесь можно провести аналогию с азбукой морзе. Вы наверное помните, как в фильмах, когда система связи перестает работать, герой вспоминает про азбуку морзе и начинают нажимать tangent, передавая точки и тире, такой простейший сигнал доходит в самых трудных условиях.
Нули и единицы цифрового сигнала, те же самые точки и тире. Ими можно закодировать любую информацию, также как мы кодируем буквы в азбуке морзе.
Аналоговый сигнал
Аналоговый сигнал несет информацию к примеру, в значение свои амплитуды, и нам важно знать точное значение для того чтобы получить сообщение без ошибок. У цифрового сигнала только два значения амплитуды большое или маленькое, единица или ноль.
При передаче сигнала накладывается шум и в случае с аналоговым сигналом этот шум может сильно исказить значение амплитуды, в то время как в цифровом, мы по-прежнему сможем понять где ноль, а где единица, и декодировать сообщение без ошибок.
Развитие цифровой связи привело к развитию цифровой вычислительной техники, и в итоге, сейчас мы имеем программируемые цифровые вычислители, которые присутствуют практически в каждом устройстве. Но и аналоговая обработка никуда не делась, современные устройства также зачастую содержит себе аналоговые цепи наряду с цифровыми.
Цифровая обработка сигналов — это способ обработки сигналов на основе численных методов с использованием цифровой вычислительной техники.
На картинке ниже обобщенная схема системы ЦОС. Она описывает общий случай обработки физического, то есть аналогового сигнала цифровым вычислителем. На входе и выходе системы обработки непрерывный аналоговый сигнал, который проходит через специальное устройство аналого-цифровой преобразователь (АЦП), и после этого в виде последовательности нулей и единиц попадает на цифровой вычислитель. Выходная последовательность преобразуется обратно в аналоговую форму цифро-аналоговым преобразователем.
В принципе ЦОС может осуществляться над изначально цифровым сигналом и преобразование в аналоговую форму не требуется.
Курс лекций «Основы цифровой обработки сигналов»
Часто ко мне обращаются люди с вопросами по задачам из области цифровой обработки сигналов (ЦОС). Я подробно рассказываю нюансы, подсказываю нужные источники информации. Но всем слушателям, как показало время, не хватает практических задач и примеров в процессе познания этой области. В связи с этим я решил написать краткий интерактивный курс по цифровой обработке сигналов и выложить его в открытый доступ.
Большая часть обучающего материала для наглядного и интерактивного представления реализована с использованием Jupyter Notebook. Предполагается, что читатель имеет базовые знания из области высшей математики, а также немного владеет языком программирования Python.
Список лекций
Этот курс содержит материалы в виде законченных лекций по разным тематикам из области цифровой обработки сигналов. Материалы представлены с использованием библиотек на языке Python (пакеты numpy, scipy, matplotlib, и т.д.). Основная информация для этого курса взята из моих лекций, которые я, будучи аспирантом, читал студентам Московского Энергетического Института (НИУ МЭИ). Частично информация из этих лекций была использована на обучающих семинарах в Центре Современной Электроники, где я выступал в качестве лектора. Кроме того, в этот материал входит перевод различных научных статей, компиляция информации из достоверных источников и литературы по тематике цифровой обработки сигналов, а также официальная документация по прикладным пакетам и встроенным функциям библиотек scipy и numpy языка Python.
Для пользователей MATLAB (GNU Octave) освоение материала с точки зрения программного кода не составит труда, поскольку основные функции и их атрибуты во многом идентичны и схожи с методами из Python-библиотек.
Все материалы сгруппированы по основным тематикам цифровой обработки сигналов:
Список лекций — достаточный но, разумеется, неполный для вводного знакомства с областью ЦОС. При наличии свободного времени я планирую поддерживать и развивать этот проект.
Где найти?
Все материалы — абсолютно бесплатны и доступны в виде открытого репозитория на моем гитхабе как opensource проект. Материалы представлены в двух форматах — в виде тетрадок Jupyter Notebook для интерактивной работы, изучения и редактирования, и в виде скомпилированных из этих тетрадок HTML-файлов (после скачивания с гитхаба имеют вполне пригодный формат для чтения и для печати).
Ниже приводится очень краткое описание разделов курса с небольшими пояснениями, терминами и определениями. Основная информация доступна в исходных лекциях, здесь представлен лишь краткий обзор!
Сигналы. Z-преобразование
Вводный раздел, в котором содержится основная информация по типам сигналов. Вводится понятие дискретной последовательности, дельта-функции и функции Хевисайда (единичный скачок).
Для правильного восстановления аналогового сигнала из цифрового без искажений и потерь используется теорема отсчетов, известная как Теорема Котельникова (Найквиста-Шеннона).
Любой непрерывный сигнал с ограниченным спектром может быть восстановлен однозначно и без потерь по своим дискретным отсчетам, взятым с частотой строго больше удвоенной верхней частоты спектра непрерывного сигнала.
Такая трактовка справедлива при условии, что непрерывная функция времени занимает полосу частот от 0 до значения верхней частоты. Если шаг квантования и дискретизации выбраны неправильно, преобразование сигнала из аналоговой формы в дискретную будет происходить с искажениями.
Также в этом разделе описывается Z-преобразование и его свойства, показывается представление дискретных последовательностей в Z-форме.
Пример конечной дискретной последовательности:
.
Пример этой же последовательности в Z-форме:
Преобразование Фурье. Свойства. ДПФ и БПФ
В этом разделе описывается понятие временной и частотной области сигнала. Вводится определение дискретного преобразования Фурье (ДПФ). Рассмотрены прямое и обратное ДПФ, их основные свойства. Показан переход от ДПФ к алгоритму быстрого преобразования Фурье (БПФ) по основанию 2 (алгоритмы децимации по частоте и по времени). Отражена эффективность БПФ в сравнении с ДПФ.
В частности, в этом разделе описывается Python пакет scipy.ffpack для вычисления различных преобразований Фурье (синусное, косинусное, прямое, обратное, многомерное, вещественное).
Преобразование Фурье позволяет представить любую функцию в виде набора гармонических сигналов! Преобразование Фурье лежит в основе методов свертки и проектировании цифровых корреляторов, активно применяется при спектральном анализе, используется при работе с длинными числами.
Особенности спектров дискретных сигналов:
1. Спектральная плотность дискретного сигнала – периодическая функция с периодом, равным частоте дискретизации.
2. Если дискретная последовательность вещественная, то модуль спектральной плотности такой последовательности есть четная функция, а аргумент – нечетная функция частоты.
Спектр гармонического сигнала:
Сравнение эффективности ДПФ и БПФ
Эффективность алгоритма БПФ и количество выполняемых операций линейно зависит от длины последовательности N:
N | ДПФ | БПФ | Отношение числа комплексных сложений | Отношение числа комплексных умножений | ||
---|---|---|---|---|---|---|
Число операций умножения | Число операций сложения | Число операций умножения | Число операций сложения | |||
2 | 4 | 2 | 1 | 2 | 4 | 1 |
4 | 16 | 12 | 4 | 8 | 4 | 1.5 |
8 | 64 | 56 | 12 | 24 | 5.3 | 2.3 |
16 | 256 | 240 | 32 | 64 | 8 | 3.75 |
32 | 1024 | 992 | 80 | 160 | 12.8 | 6.2 |
64 | 4096 | 4032 | 192 | 384 | 21.3 | 10.5 |
128 | 16384 | 16256 | 448 | 896 | 36.6 | 18.1 |
. | . | . | . | . | . | . |
4096 | 16777216 | 16773120 | 24576 | 49152 | 683 | 341 |
8192 | 67108864 | 67100672 | 53248 | 106496 | 1260 | 630 |
Как видно, чем больше длина преобразования, тем больше экономия вычислительных ресурсов (по скорости обработки или количеству аппаратных блоков)!
Любой сигнал произвольной формы можно представить в виде набора гармонических сигналов разных частот. Иными словами, сигнал сложной формы во временной области имеет набор комплексных отсчетов в частотной области, которые называются *гармоники*. Эти отсчеты выражают амплитуду и фазу гармонического воздействия на определенной частоте. Чем больше набор гармоник в частотной области, тем точнее представляется сигнал сложной формы.
Свертка и корреляция
В этом разделе вводится понятие корреляции и свертки для дискретных случайных и детерминированных последовательностей. Показана связь автокорреляционной и взаимнокорреляционной функций со сверткой. Описываются свойства свертки, в частности, рассмотрены методы линейной и циклической свертки дискретного сигнала с подробным разбором на примере дискретной последовательности. Кроме того, показан метод вычисления «быстрой» свертки с помощью алгоритмов БПФ.
В реальных задачах часто ставится вопрос о степени похожести одного процесса на другой или же о независимости одного процесса от другого. Иными словами, требуется определить взаимосвязь между сигналами, то есть найти корреляцию. Методы корреляции используются в широком диапазоне задач: поиск сигналов, компьютерное зрение и обработка изображений, в задачах радиолокации для определения характеристик целей и определения расстояния до объекта. Кроме того, с помощью корреляции производится поиск слабых сигналов в шумах.
Свертка описывает взаимодействие сигналов между собой. Если один из сигналов — импульсная характеристика фильтра, то свертка входной последовательности с импульсной характеристикой есть ни что иное, как реакция цепи на входное воздействие. Иными словами, результирующий сигнал отражает прохождение сигнала через фильтр.
Автокорреляционная функция (АКФ) находит применение в кодировании информации. Выбор кодирующей последовательности по параметрам длины, частоты и формы во многом обусловлен корреляционными свойствами этой последовательности. Наилучшая кодовая последовательность обладает наименьшим значением вероятности ложного обнаружения или срабатывания (для детектирования сигналов, для пороговых устройств) или ложной синхронизации (для передачи и приема кодовых последовательностей).
В этом разделе представлена таблица сравнения эффективности быстрой свертки и свертки, вычисляемой по прямой формуле (по числу вещественных умножений).
Как видно, для длин БПФ до 64, быстрая свёртка проигрывает у прямого метода. Однако, при увеличении длины БПФ результаты меняются в обратную сторону — быстрая свертка начинает выигрывать у прямого метода. Очевидно, чем больше длина БПФ, тем лучше выигрыш частотного метода.
N | Свертка | Быстрая свертка | Отношение |
---|---|---|---|
8 | 64 | 448 | 0.14 |
16 | 256 | 1088 | 0.24 |
32 | 1024 | 2560 | 0.4 |
64 | 4096 | 5888 | 0.7 |
128 | 16K | 13312 | 1.23 |
. | . | .. | . |
2048 | 4M | 311296 | 13.5 |
Случайные сигналы и шум
В этом разделе вводится понятие случайных сигналов, плотности распределения вероятностей, закона распределения случайной величины. Рассматриваются математические моменты — среднее (математическое ожидание) и дисперсия (или корень этой величины — среднеквадратическое отклонение). Также в этом разделе рассматривается нормальное распределение и связанное с ним понятие белого шума, как основного источника шумов (помех) при обработке сигналов.
Случайным сигналом называют функцию времени, значения которой заранее неизвестны и могут быть предсказаны лишь с некоторой вероятностью. К основным характеристикам случайных сигналов относятся:
В задачах ЦОС случайные сигналы делятся на два класса:
С помощью случайных величин можно моделировать воздействие реальной среды на прохождение сигнала от источника к приёмнику данных. При прохождении сигнала через какое-то шумящее звено, к сигналу добавляется так называемый белый шум. Как правило, спектральная плотность такого шума равномерно (одинаково) распределена на всех частотах, а значения шума во временной области распределены нормально (Гауссовский закон распределения). Поскольку белый шум физически добавляется к амплитудам сигнала в выбранные отсчеты времени, он называется аддитивный белый гауссовский шум (AWGN — Additive white Gaussian noise).
Сигналы, модуляция и манипуляция
В этом разделе показаны основные способы изменения одного или нескольких параметров гармонического сигнала. Вводятся понятия амплитудной, частотной и фазовой модуляции. В частности, выделяется линейная частотная модуляция, применяемая в задачах радиолокации. Показаны основные характеристики сигналов, спектры модулированных сигналов в зависимости от параметров модуляции.
Для удобства на языке Python создан набор функций, осуществляющих перечисленные виды модуляции. Пример реализации ЛЧМ-сигнала:
Также в этом разделе из теории передачи дискретных сообщений описаны виды цифровой модуляции — манипуляции. Как и в случае с аналоговыми сигналами, цифровые гармонические последовательности могут быть манипулированы по амплитуде, фазе и частоте (либо по нескольким параметрам сразу).
Цифровые фильтры — БИХ и КИХ
Достаточно большой раздел, посвященный вопросам цифровой фильтрации дискретных последовательностей. В задачах цифровой обработки сигналов данные проходят через цепи, которые называются фильтрами. Цифровые фильтры, как и аналоговые, обладают различными характеристиками — частотные: АЧХ, ФЧХ, временная: импульсная характеристика, а также передаточная характеристика фильтра. Цифровые фильтры используются в основном для улучшения качества сигнала — для выделения сигнала из последовательности данных, либо для ухудшения нежелательных сигналов — для подавления определенных сигналов в приходящих последовательностях отсчетов.
В разделе перечислены основные преимущества и недостатки цифровых фильтров (в сравнении с аналоговыми). Вводится понятие импульсной и передаточной характеристик фильтра. Рассматривается два класса фильтров — с бесконечной импульсной характеристикой (БИХ) и конечной импульсной характеристикой (КИХ). Показан способ проектирования фильтров по канонической и прямой форме. Для КИХ фильтров рассматривается вопрос о способе перехода к рекурсивной форме.
Для КИХ фильтров показан процесс проектирования фильтра от стадии разработки технического задания (с указанием основных параметров), до программной и аппаратной реализации — поиска коэффициентов фильтра (с учетом формы представления числа, разрядности данных и т.д.). Вводятся определения симметричных КИХ фильтров, линейной ФЧХ и её связи с понятием групповой задержки.
Оконные функции в задачах фильтрации
Чем сильнее подавление боковых лепестков спектра, тем шире главный лепесток спектра и наоборот.
Одно из применений оконных функций: обнаружение слабых сигналов на фоне более сильных путём подавления уровня боковых лепестков. Основные оконные функции в задачах ЦОС — **треугольное, синусоидальное, окно Ланцоша, Ханна, Хэмминга, Блэкмана, Харриса, Блэкмана-Харриса, окно с плоской вершиной, окно Наталла, Гаусса, Кайзера** и множество других. Большая часть из них выражена через конечный ряд путём суммирования гармонических сигналов с определенными весовыми коэффициентами. Такие сигналы отлично реализуются на практике на любых аппаратных устройствах (программируемые логические схемы или сигнальные процессоры).
Ресемплинг. Децимация и интерполяция
В этом разделе рассматриваются вопросы многоскоростной обработки сигналов — изменения частоты дискретизации. Многоскоростная обработка сигналов (multirate processing) предполагает, что в процессе линейного преобразования цифровых сигналов возможно изменение частоты дискретизации в сторону уменьшения или увеличения, либо в дробное число раз. Это приводит к более эффективной обработке сигналов, так как открывается возможность использования минимально допустимых частот дискретизации и, как следствие, значительного уменьшения требуемой вычислительной производительности проектируемой цифровой системы.
Децимация (прореживание) – понижение частоты дискретизации. Интерполяция – повышение частоты дискретизации.
Также в разделе рассматривается класс однородных КИХ фильтров, которые называются интегрально-гребенчатыми фильтрами (CIC, Cascaded integrator–comb). Показана реализация, основные свойства и особенности CIC фильтров. В силу линейности математических операций, происходящих в CIC фильтре возможно каскадное соединение нескольких фильтров подряд, что дает пропорциональное уменьшение уровня боковых лепестков, но также увеличивает «завал» главного лепестка амплитудно-частотной характеристики.
График АЧХ фильтра в зависимости от коэффициента децимации:
Также в этом разделе обсуждается вопрос увеличения разрядности данных на выходе CIC фильтра в зависимости от его параметров. Это особенно важно в задачах программной реализации, в частности на ПЛИС.
Для практической реализации CIC фильтров на Python разработан отдельный класс CicFilter, реализующий методы децимации и интерполяции. Также показаны примеры изменения частоты дискретизации с помощью встроенных методов из scipy пакета Python.
Наконец, в этом разделе приведен особый класс фильтров — скользящего среднего. Показано три способа реализации: через свертку сигналов, с помощью КИХ-фильтра и БИХ-фильтра.
Заключение
Надеюсь, этот курс лекций в совокупности с моими предыдущими статьями по цифровой обработке сигналов на ПЛИС принесет практическую пользу и поможет читателю лучше понять основы цифровой обработки сигналов. Этот проект будет улучшаться и дополняться новым полезным и не менее интересным материалом. Следите за развитием!
Дополнительно к этому материалу я поддерживаю и развиваю свой проект по основным модулям ЦОС (на языке Python). Он содержит пакет генерации различных сигналов, класс CIC фильтров для задач децимации и интерполяции, алгоритм расчета коэффициентов корректирующего КИХ-фильтра, фильтр скользящего среднего, алгоритм вычисления сверх-длинного БПФ через методы двумерного преобразования (последнее очень пригодилось в работе при аппаратной реализации на ПЛИС).