Поволжская Государственная Академия Телекоммуникаций и Информатики
МЕТОДИЧЕСКИЕ УКАЗАНИЯ к лабораторным работам
"Прогр...
6 downloads
275 Views
659KB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Поволжская Государственная Академия Телекоммуникаций и Информатики
МЕТОДИЧЕСКИЕ УКАЗАНИЯ к лабораторным работам
"Программирование в системе MATLAB" Часть 3. Разработка программ для ЦСП
Одобрено Методическим Советом ПГАТИ
Автор-составитель:
Акчурин Э.А.
д.т.н., профессор
Редактор:
Кораблин М.А.
д.т.н., профессор
Рецензент:
Тяжев А.И.
д.т.н., профессор
Самара 2004
Рис. 3.8. Визуальное окно блока Vector Scope
3.5. Выводы 1. 2. 3. 4. 5.
2
Цифровой фильтр может быть рассчитан с использованием инструментария MATLAB и Simulink. Возможный компонент для этого Digital Filter Design. Этот инструмент позволяет рассчитывать практически любые цифровые фильтры. Для проверки функционирования фильтра используется имитационное моделирование. Можно использовать готовые блоки, имитирующие работу реального ЦСП. Для работы с такими блоками нужно использовать блоки согласования форматов сигнала.
31
Содержание 1. Введение ..................................................................................................... 4 2. Разработка цифрового фильтра....................................................................... 5 2.1. Подготовка к работе ........................................................................................ 5 2.2. Контрольные вопросы ..................................................................................... 5 2.3. Задание к работе............................................................................................. 5 2.4. Пример выполнения ........................................................................................ 6 2.5. Выводы......................................................................................................... 21 3. Разработка цифрового фильтра для ЦСП C6x.................................................. 22 3.1. Подготовка к работе ...................................................................................... 22 3.2. Контрольные вопросы ................................................................................... 22 3.3. Задание к работе........................................................................................... 22 3.4. Пример выполнения ...................................................................................... 23 3.5. Выводы......................................................................................................... 31
Рис. 3.7. Параметры блока FIL_GEN Теперь можно осуществить моделирование фильтра. В результате в окне Vector Scope получаем диаграммы, показанные на Рис. 3.8. В левой части диаграмма входного сигнала содержит сумму двух синусоид, в правой части одна синусоида ослаблена (меньше, чем в примере работы 1, так как фильтр похуже).
30
3
1. Введение Методическая разработка содержит 2 лабораторные работы по имитационному моделированию цифровых фильтров в MATLAB иSimulink. Она может использоваться в дисциплинах: "Цифровые сигнальные процессоры" специальности 220400 и «Пакеты расширения MATLAB для обработки сигналов» аспирантов. Рекомендуемая литература: 1. Дьяконов В. MatLab 6/6.1/6.5 + Simulink 4/5. М.: СОЛОН-Пресс, 2004, 768 с. 2. Дьяконов В. MatLab 6. СПб: Питер, 2001, 592 с. 3. Дьяконов В. Simulink 4. СПб: Питер, 2002, 528 с. 4. Дьяконов В. и др. Matlab. Анализ, идентификация и моделирование систем. СПб: Питер, 2002, 448 с. 5. Дьяконов В. и др. Matlab. Обработка сигналов и изображений. СПб: Питер, 2002, 608 с. 6. Дьяконов В. и др. Matlab. Математические пакеты расширения. СПб: Питер, 2001, 480 с. 7. Гультяев А. Визуальное моделирование в среде MatLab СПб: Питер, 2000, 432 с. Содержание отчета по работе: 1. Название работы, задание в соответствии с вариантом. 2. Программа. 3. Результаты выполнения программы на ПК. 4. Выводы.
Рис. 3.6. Коэффициенты фильтра Полученные коэффициенты нужно занести в блок FIL_GEN. Двойной щелчок по блоку вызывает окно параметров, показанное на Рис. 3.7. Коэффициенты нужно, разделяя друг от друга пробелами, занести в поле Coefficients в виде строки в квадратных скобках.
4
29
2. Разработка цифрового фильтра 2.1. Подготовка к работе По указанной литературе изучить: основы системы MATLAB и Simulink, основные сведения о средствах MATLAB расчета фильтров.
2.2. Контрольные вопросы 1. 2. 3. 4. 5. 6. 7. 8.
Структура окна системы MatLab. Команды пунктов "File", "Edit", "View", "Web", "Window" и "Help" меню. Основы расширения Simulink. Работа с браузером библиотек Simulink. Правила создания модели. Правила задания параметров блоков модели. Выбор режимов моделирования. Правила просмотра результатов моделирования.
2.3. Задание к работе
Рис. 3.5. Карта полюсов и нулей фильтра
28
Выполнить расчет и моделирование цифрового фильтра в соответствии с заданием. № Тип АЧХ Bpass Гц Bstop Гц Apass Astop дБ дБ ФНЧ Баттерворта 0…200 300,,, 3 50 1. Чебышева 1 0…200 300,,, 1,5 60 2. Чебышева 2 0…200 300,,, 2 60 3. Эллиптиче0…200 300,,, 2,5 70 4. ский 300… 0…200 3 50 5. ФВЧ Баттерворта Чебышева 1 300… 0…200 1,5 60 6. Чебышева 2 300… 0…200 2 60 7. Эллиптиче300… 0…200 2,5 70 8. ский ППФ Баттерворта 200…300 0…100, 3 50 9. 400… Чебышева 1 200…300 0…100, 1,5 60 10. 400… Чебышева 2 200…300 0…100, 2 60 11. 400… Эллиптиче200…300 0…100, 2,5 70 12. 5
13. ПЗФ
ский Баттерворта
14.
Чебышева 1
15.
Чебышева 2
16.
Эллиптический
0…100, 400… 0…100, 400… 0…100, 400… 0…100, 400…
400… 200…300
3
50
200…300
1,5
60
200…300
2
60
200…300
2,5
70
2.4. Пример выполнения Задание. Спроектировать ФНЧ с АЧХ Баттерворта с полосой пропускания Bpass=0…200 Гц, с полосой задерживания, Bstop=250 Гц… c неравномерностью в полосе пропускания Apass=2дБ и гарантированным затуханием Astop=60 дБ. Создаем модель фильтра в среде Simulink (см. Рис. 2.1). В модель включаем: Два генератора синусоиды - Sine Wave и Sine Wave1, для которых будут выбраны разные частоты (у одного в полосе пропускания фильтра, у другого в полосе задерживания). Сумматор Sum. Блок расчета цифрового фильтра Digital Filter Design. Блок конкатенации матриц Matrix Concatenation для объединения сигналов на входе и выходе с целью передаче на измерительный прибор Vector Scope для одновременного наблюдения. Измерительный прибор Vector Scope для одновременного наблюдения входного и выходного сигналов фильтра.
6
Рис. 3.4. Результаты расчета фильтра Теперь с помощью кнопок панели инструментов можно посмотреть карту полюсов и нулей фильтра (см. Рис. 3.5) и список коэффициентов фильтра (см. Рис. 3.6). В списке коэффициенты группируются для числителя (группа Nnumerator) и знаменателя (группа Denumenator) передаточной функции фильтра. Если коэффициенты не умещаются в графическом окне, то они отображаются с линейкой скроллинга.
27
поле информации о рассчитываемом фильтре (слева от графического окна), поле типа фильтра (первое поле слева внизу), в котором в верхней части выбирается вид фильтра - в примере Lowpass, а в нижней части метод расчета – в примере фильтр с КИХ (FIR) с равномерными пульсациями (Equiripple), поле задания порядка фильтра с областью опций, если они имеются (второе слева поле внизу), в примере минимальный порядок, данные о частотах (третье слева поле внизу), в примере частота дискретизации Fs=800Гц (не менее, чем 2Fstop), граница полосы пропускания Fpass=200Гц, граница полосы задерживания Fstop=300Гц. затухания (правое внизу), в примере Apass=4 дБ, Astop=30 дБ.
Рис. 2.1. Имитационная модель цифрового фильтра Для вставки блоков Sine Wave используем библиотеку компонент, окно которой показано на Рис. 2.2.
Рис. 3.3. Параметры блока Digital Filter Design В перечисленных полях нужно задать параметры фильтра и запустить подпрограмму расчета, нажав кнопку Design Filter. После расчета графическое окно автоматически переключается на отображение АЧХ фильтра, а в информационном окне отображаются параметры фильтра (см. Рис. 3.4). В примере получился фильтр 5 порядка.
26
7
Рис. 3.2. Выбор блоков ЦСП Рис. 2.2. Выбор блоков Sine Wave После размещения блока в модели двойным щелчком по нему вызываем окно параметров, показанное на Рис. 2.3. Для одного генератора выбираем частоту в полосе пропускания (50 Гц), для другого в полосе задерживания (300 Гц).
8
Для расчета коэффициентов цифрового фильтра используем блок Digital Filter Design. Двойным щелчком по нему вызываем окно параметров, показанное на Рис. 3.3. В этом окне выполняется расчет фильтра. Окно содержит поля для выбора параметров фильтра и графическое окно результатов.. В окне параметров размещены: окно визуального отображения, вид которого выбирается кнопками в панели инструментов (на Рис. 2.7 оно иллюстрирует спецификации АЧХ фильтра), 25
Рис. 3.1. Имитационная модель цифрового фильтра
Рис. 2.3. Параметры блоков Sine Wave Для вставки блока Sum используем библиотеку компонент, окно которой показано на Рис. 2.4.
24
9
16.
0…100, 400…
200…300
6
40
3.4. Пример выполнения Задание. Спроектировать ФНЧ с КИХ с полосой пропускания Bpass=0…200 Гц, с полосой задерживания, Bstop=300 Гц… c неравномерностью в полосе пропускания Apass=3дБ и гарантированным затуханием Astop=40 дБ. Создаем модель фильтра в среде Simulink (см. Рис. 3.1). В модель заносим: Два генератора синусоиды - Sine Wave и Sine Wave1, для которых будут выбраны разные частоты (у одного в полосе пропускания фильтра, у другого в полосе задерживания). Сумматор Sum. Блок расчета цифрового фильтра Digital Filter Design. Он не включается в состав фильтра, а используется только как средство расчета коэффициентов фильтра. FIL_Gen (General real FIR) – КИХ фильтр вещественного сигнала для ЦСП семейства TI C62x. FLTOQ15 (Convert Floating Point to Q15) – преобразователь формата MATLAB с плавающей точкой в формат Q15 процессора. Q15TOFL (Convert Floating Point to Q15) преобразователь из формата Q15 процессора в формат с плавающей точкой MATLAB. Data Type Conversion – преобразователь типов данных для согласования блоков. Блок конкатенации матриц Matrix Concatenation для объединения сигналов на входе и выходе с целью передаче на измерительный прибор Vector Scope для одновременного наблюдения. Измерительный прибор Vector Scope для одновременного наблюдения входного и выходного сигналов фильтра. Блоки, кроме относящихся к ЦСП, заносим в модель и назначаем их параметры, как в работе 1. Для вставки блоков FLTQ15, FIL_GEN и Q15TOFIL используем библиотеку компонент, окно которой показано на Рис. 3.2.
Рис. 2.4. Выбор блока Sum После размещения блока в модели двойным щелчком по нему вызываем окно параметров, показанное на Рис. 2.5. Выбираем отображение блока в виде прямоугольника и число входов суммирования, задав в списке знаков сложения ++.
10
23
3. Разработка цифрового фильтра для ЦСП C6x 3.1. Подготовка к работе По указанной литературе изучить: Расширения MATLAB и Simulink для обработки сигналов, основные сведения о средствах MATLAB для ЦСП.
3.2. Контрольные вопросы 1. 2. 3. 4. 5. 6.
Расширения MATLAB для обработки сигналов. Расширения Simulink для обработки сигналов. Блоки Embedded Target for Texas Instruments TMS320C6000 DSP Platform. Формат Q15 для ЦСП. Влияние ошибок округления и усечения. Согласование форматов представления сигналов для ЦСП и MATLAB.
3.3. Задание к работе Выполнить расчет и моделирование цифрового КИХ (FIR) фильтра с АЧХ с равноволновыми (Equiripple) пульсациями в соответствии с заданием. № Тип Bpass Гц Bstop Гц Apass дБ Astop дБ 0…200 300,,, 3 40 1. ФНЧ 0…200 300,,, 4 30 2. 0…200 300,,, 3.5 40 3. 0…200 300,,, 6 40 4. ФВЧ 300… 0…200 3 40 5. 300… 0…200 4 30 6. 300… 0…200 3.5 40 7. 300… 0…200 6 40 8. 200…300 0…100, 400… 3 40 9. ППФ 200…300 0…100, 400… 4 30 10. 200…300 0…100, 400… 3.5 40 11. 200…300 0…100, 400… 6 40 12. 0…100, 200…300 3 40 13. ПЗФ 400… 0…100, 200…300 4 30 14. 400… 0…100, 200…300 3.5 40 15. 400… 22
Рис. 2.5. Параметры блока Sum Для вставки блока Digital Filter Design используем библиотеку компонент, окно которой показано на Рис. 2.6.
11
Рис. 2.15. Визуальное окно блока Vector Scope
2.5. Выводы 1. 2. Рис. 2.6. Выбор блока Digital Filter Design
3.
Цифровой фильтр может быть рассчитан с использованием инструментария MATLAB и Simulink. Возможный компонент для этого Digital Filter Design. Этот инструмент позволяет рассчитывать практически любые цифровые фильтры. Для проверки функционирования фильтра используется имитационное моделирование.
После размещения блока в модели двойным щелчком по нему вызываем окно параметров, показанное на Рис. 2.7. В этом окне выполняется расчет фильтра. Окно содержит поля для выбора параметров фильтра и графическое окно результатов..
12
21
В окне параметров размещены: окно визуального отображения, вид которого выбирается кнопками в панели инструментов (на Рис. 2.7 оно иллюстрирует спецификации АЧХ фильтра), поле информации о рассчитываемом фильтре (слева от графического окна), поле типа фильтра (первое поле слева внизу), в котором в верхней части выбирается вид фильтра - в примере Lowpass, а в нижней части метод расчета – в примере фильтр с БИХ (IIR), Butterworth, поле задания порядка фильтра с областью опций, если они имеются (второе слева поле внизу), в примере минимальный порядок, данные о частотах (третье слева поле внизу), в примере частота дискретизации Fs=800Гц (не менее 2Fstop), граница полосы пропускания Fpass=200Гц, граница полосы задерживания Fstop=250Гц. затухания (правое внизу), в примере Apass=2 дБ, Astop=60 дБ..
Рис. 2.14. Параметры блока Vector Scope Теперь можно осуществить моделирование фильтра. В результате в окне Vector Scope получаем диаграммы, показанные на Рис. 2.15. В левой части диаграмма входного сигнала содержит сумму двух синусоид, в правой части есть только одна синусоида.
20
Рис. 2.7. Параметры блока Digital Filter Design В перечисленных полях нужно задать параметры фильтра и запустить подпрограмму расчета, нажав кнопку Design Filter. После расчета графическое окно автоматически переключается на отображение АЧХ фильтра, а в информаци13
онном окне отображаются параметры фильтра (см. Рис. 2.8). В примере получился фильтр 18 порядка.
Рис. 2.8. Результаты расчета фильтра Теперь с помощью кнопок панели инструментов можно посмотреть карту полюсов и нулей фильтра (см. Рис. 2.9) и список коэффициентов фильтра (см. Рис. 2.10). В списке коэффициенты группируются для числителя (группа Denumerator) и знаменателя (группа Numenator) передаточной функции фильтра. Если коэффициенты не умещаются в графическом окне, то они отображаются с линейкой скроллинга. В примере использован фильтр Баттерворта, который не имеет нулей и коэффициентов числителя.
14
Рис. 2.13. Выбор блока Vector Scope Параметры блока Vector Scope можно установить, вызвав двойным щелчком по блоку окно его параметров (см. Рис. 2.14). Выберем ключи Show Grid - отображение сетки. Channel legend – легенда канала. Открыть прибор на старте моделирования.
19
ходного сигналов фильтра рядом друг с другом (слева входной, справа выходной).
Рис. 2.12. Параметры блока Matrix Concatenation Для вставки блока Vector Scope используем библиотеку компонент, окно которой показано на Рис. 2.13. Рис. 2.9. Карта полюсов и нулей фильтра
18
15
Рис. 2.10. Коэффициенты фильтра Для вставки блока Matrix Concatenation используем библиотеку компонент, окно которой показано на Рис. 2.6.
Рис. 2.11. Выбор блока Matrix Concatenation После размещения блока в модели двойным щелчком по нему вызываем окно параметров, показанное на Рис. 2.12. В этом окне выбираем число входов 2 и способ конкатенации матриц вертикальный (Vertical). При этом матрицы сигналов отображаются в левых и правых столбцах выходной матрицы. Это приведет к последующему отображению измерительным прибором входного и вы-
16
17