Курс лекций дисциплины вариативной части математического и естественнонаучного цикла (855805), страница 14
Текст из файла (страница 14)
В результате115амплитуда сигнала может оказаться выше предполагаемой величины, что приоперациях накопительного сложения (например: свертка), взвешиваниясигнала, масштабирования может привести к результату, который не можетбыть представлен в разрядной сетке устройства. Например: при 8-разрядномпредставлении чисел без знака, сложение чисел 200 и 70 даст 14, что можетпривести к непредсказуемому результату работы устройства.3.7.4 ОкругленияВ процессе вычислений (реализации алгоритма ЦОС) неизбежновозникают округления результата для представления в разрядной сеткевычислительного устройства.
Особенно это проявляется в целочисленныхустройствах, где надо иметь в виду, что при операциях сложения необходимоувеличивать разрядность слова (представляющего результат) на 1 разряд, апри умножениях – фактически удваивать разрядность представлениярезультата. В случаях вычислений с плавающей точкой проблема округленийне так критична, т.к. представления в таком формате имеет большойдинамический диапазон (здесь опасность потери точности заключается воперациях с числами имеющими разный порядок).Кроме того, при реализации рекурсивных систем (реализуются каскадно– сначала рекурсивная часть потом нерекурсивная) промежуточные значениямогут превышать по модулю значение входного сигнала в несколько раз, чтоможет быть источником переполнений и грубых округлений – потериточности. Чтобы избежать потери точности рекомендуется складывать сначаламалые числа, затем большие.
Однако на практике, как правило, неизвестно какраспределены числа в массиве данных по величине, а сортировка требуетвычислительных мощностей и времени.С другой стороны ошибки округления в цифровых фильтрах могутприводить к катастрофическим последствиям. Рассмотрим БИХ фильтрy (k ) = x(k ) + 0.93 y (k − 1) ,которыйимеетединственныйполюсвнутриединичной окружности и значит – фильтр устойчив (т.е. если на входеконечный сигнал, то на выходе также конечный сигнал). Подадим на вход116фильтра скачок с амплитудой 1 В, а точность вычислений обеспечим вформатесфиксированнойточкой(ddd.d).Результат(импульснаяхарактеристика фильтра) представлен нижеследующей таблице (y(k) –выходной сигнал при точном расчете, yd(k) – выходной сигнал с учетомокруглений в разрядной сетке).
Видно, что при отсутствии округленийвыходной сигнал экспоненциально затухает, а при наличии округлений –выходной сигнал остается постоянным – на уровне 0.7 и измениться не может,т.к. 0.93·0.7=0.651, что при округлении дает 0.7.Таблица 3.k0123456789сигнал1000000000y(k)1.00.930.86490.8043570.748052010.69568836930.6469901834490.601700870607570.559581809665040.520411082988487yd(k)1.00.90.80.70.70.70.70.70.70.7Наблюдаемое явление известно как предельный цикл.
Для анализавозможности возникновения предельного цикла рассматривают выражениедля эффективных значений коэффициентов знаменателя – как отношениеокругленного результата умножения к внутреннему состоянию фильтра(соответствующего множителя). Для нашего примера эффективные значениякоэффициентов имеют вид: a =round (0.93 y (k − 1)).y (k − 1)Видно (рис. 3.19), что модуль полюса фильтра становится большим 1, чтообуславливает цикл.117ay(k)Рис. 3.18 – Эффективное значение коэффициента фильтра с учетом округлений118Раздел 4. Практические вопросы ЦОСТеоретические знания важны для анализа уже имеющихся систем инеобходимы для построения алгоритмов обработки сигналов.
Практическаяреализация алгоритма еще на этапе выбора метода решения задачи требуетрассмотрения вопроса эффективности решения, его точности, устойчивости кпомехам, шумам и т.п. Поэтому на практике часто оказывается, что решениезадачи «в лоб» является неэффективным, либо может приводить ксущественной погрешности, т.е. недостоверному решению.
Для выявленияподобных проблем и определения путей решения рассмотрим гипотетическуюсистему обработки сигналов.Любая система обработки данных состоит из модулей (блоков) вводасигналов и их вывода, а также собственно блока обработки – рис. 4.1.ВходныесигналыБлоквходныхсигналовБлокобработкисигналовБлоквыходныхсигналовВыходныесигналыРис. 4.1 – Обобщенная структура системы обработки сигналовТехническая реализация блоков зависит от видов сигналов и целей обработки.Блок входных сигналов обычно представляет собой (рис.
4.2):-датчик физической величины (или их множество), осуществляющийпреобразование физической величины в электрический сигнал;-усилительсигналасдатчика,т.к.частоаналоговыйсигналнесоответствует по параметрам требованиям последующих цепей обработкисигнала;-фильтр низких частот, необходимый для ограничения полосы сигнала;-аналогово-цифровой преобразователь.Или же вместо цепей аналоговой обработки сигнала имеется какой-либоприемник цифровых данных (если датчик представляет собой готовоецифровое устройство или данные поступают от другой цифровой системыобработки).119ВходныеаналоговыесигналыУсилитель+ ФНЧВходныецифровыесигналыПреобразовательцифрового интерфейсаК блокуцифровойобработкисигналовАЦПК блокуцифровойобработкисигналовРис. 4.2 – Варианты источника входных данных для системы ЦОСБлокобработкисигналовпредставляетсобойкакой-либовычислительный модуль.
Состав модуля, как правило, одинаков: процессор(контроллер),память,систематактирования,цифровыеинтерфейсыввода/выводы, блок питания и т.п. Блок характеризуется производительностью(как правило, числом операций в единицу времени) и потреблением энергии.Его структура может быть очень сложной и включать, кроме процессора,множество устройств обработки цифрового сигнала: аппаратные фильтры,аппаратнаяреализацияДПФ,различногоназначенияаппаратныекодеры/декодеры, вспомогательные контроллеры, процессоры и т.п.Блок выходных сигналов может представлять собой (рис.
4.3):-цифро-аналоговый преобразователь (ЦАП) с низкочастотным фильтром(ФНЧ), необходимым для сглаживания ступенчатого вида выходногосигнала ЦАП;-усилитель мощности, предназначенный для передачи сигнала по каналаманалоговой связи или для управления аналоговым устройством.Или вместо преобразования сигнала в аналоговую форму имеется какой-либотрансивер для передачи данных в цифровом виде или просто другое цифровоеустройство (имеющее такой же цифровой интерфейс).120От блокацифровойобработкисигналовОт блокацифровойобработкисигналовФНЧ+усилительмощностиЦАПВыходныеаналоговыесигналыВыходныецифровыесигналыПреобразовательцифрового интерфейсаРис. 4.3 – Варианты реализации блока выходных данных в системе ЦОСПример.Рассмотрим задачу измерения сетевого синусоидального напряженияпромышленной частоты (220 В, 50 Гц) рис. 4.4.
Учитывая высокий уровеньразности потенциалов сети, блок входных сигналов должен содержатьпреобразователь уровня напряжения – это может быть делитель напряжения(резистивный или емкостной) или просто понижающий трансформатор. Дляограничения полосы сигнала (для последующей оцифровки) необходимоприменение аналогового ФНЧ с полосой пропускания включающей величинучастоты сигнала – 50 Гц. Частота отсечки фильтра определяет минимальновозможную частоту дискретизации, а уровень подавленияв полосезадерживания – допустимую разрядность АЦП.
Если принять, что кромегармоники 50 Гц в сигнале нет других гармонических составляющих (ауровень шумов пренебрежимо мал), то ФНЧ можно опустить и частотадискретизации должна превышать величину 100 Гц. Задачей блока цифровойобработки сигнала (БЦОС) является определение амплитуды сигнала.Выходным сигналом является бинарный код амплитуды сигнала в 8-разряднойсетке.Сетевоенапряжениеuвх(t)ФНЧuд(t) АЦПБЦОСБинарный кодамплитудыБлок входных сигналовРис. 4.4 – Обобщенная структура измерителя сетевого напряжения121Рассмотрим сигнал на выходе АЦП (оцифрованный сигнал uд(t)) – рис.
4.5.Отметим, что в общем случае полученные отсчеты могут не содержатьмаксимального значения напряжения, которое можно отождествить сАмлитудаамплитудой сигнала.T1T2ωtРис. 4.5 – Период синусоиды, дискретизированный с разной частотой дискретизацииПоэтому измерения амплитуды необходимо проводить косвенно – например,можно вычислить амплитуду (A) исходя из известной связи амплитуды с1 T 2 2A sin (t )dt = 0.5 A 2 . В случае дискретного∫0Tдействующим значением:сигнала интеграл можно заменить суммой:1NN −1 2 nt s = 0.5 A 2 ± .∑ A2 sin 2 Tn =0При этом точность «замены» будет определяться количеством отсчетов (N) напериоде сигнала (T) и методом численного интегрирования. При примененииформулы прямоугольников (т.е. можно складывать квадраты отсчетов) длядостижения точности 5% необходимо, чтобы на периоде сигнала (T=20 мс)былоN≥126отсчетов,т.к.абсолютнаяпогрешностьчисленногоинтегрирования методом прямоугольников функции f ( x ) на интервале [a, b]определяется формулой:2(b − a)=max f ′( x ) .2N[a ,b ]T2Фактически =2N 2 4 A T 2 ,т.е.