Курсовая работа: Цифровой сглаживающий фильтр
Другая проблема состоит в том, что входной сигнал является биполярным и изменяется в пределах ±2 В, а заданный АЦП требует униполярный сигнал на входе в пределах 0…3 В. То есть необходимо перед подачей входного сигнала на АЦП промасштабировать его на ¾ и поднять постоянную составляющую на 1.5 В. С этой задачей справится аналоговый сумматор на операционном усилителе:
Коэффициент передачи такого сумматора определяется выражением:
Возможен вариант короткого замыкания цепи ОС,
R3 = 0, ROC = ¥. Тогда, если положить, что U1 = UBX , a U2 = Uпит , то очевидно, что коэффициент масштабирования U1 , равный ¾ , можно обеспечить, взяв R1 = 1 кОм, R2 = 3 кОм. Тогда коэффициент при U2 составляет ¼ . Учитывая, что требуемое UСМ = 1.5 В, получаем Uпит = 6 В = ½ Епит = +12 В. То есть, требуемое Uпит можно получить с шины питания с помощью симметричного резистивного делителя, при этом надо исключить влияние делителя на сумматор, поставив между ними повторитель напряжения на операционном усилителе.
Как уже отмечалось, при проникновении на вход АЦП составляющих с частотами, не отвечающими условию теоремы Котельникова, f1 + m FД , m = 1; 2; 3; … , может возникать стробоскопический эффект, выражающийся в перенесении этих составляющих в частотную область, отвечающую данной теореме, f 1 < FД .
Поэтому частота входного сигнала должна отвечать теореме Котельникова. Поскольку в техническом задании не оговариваются частотные свойства входного сигнала, то на входе необходимо поставить аналоговый фильтр с частотой среза, равной ½ FД = 2500 Гц, который подавлял бы высокочастотные составляющие и в какой-то мере устранял бы подобные проявления. В простейшем случае это ФНЧ 1-го порядка – RC-цепь и операционный усилитель.
R<<RBX oy , R = 1 кОм ; С = 1 / (pRFД ) = 63.66 нФ .
Таким образом, аналоговая входная часть проектируемого устройства представляет собой ФНЧ, грубо ограничивающий спектр сигнала, схему сдвига и масштабирования, устройство выборки и хранения и, наконец, АЦП.
Синхронизацию выборки с частотой FД целесообразно осуществить аппаратным способом, с помощью таймера-счетчика, встроенного в микросхеме РУ-55, настроив его период счета на ТД . Таймер может работать в двух периодических режимах: импульс низкого уровня длится половину периода счета (режим 1) или же один такт общей синхронизации ТТ микропроцессорной системы независимо от периода счета (режим 3). Если тактовая частота составляет fT = 5 МГц, то ТТ = 0.2 мкс. На выборку УВХ необходимо 10 мкс, то есть, в этом плане выгодней режим 1. Однако, для запуска АЦП со строгой периодичностью ТД необходимо, чтобы импульс ST длился не более tпр =0.37 мкс, то есть, для работы АЦП как нельзя лучше подходит режим 3 ( ровный меандр ). Кроме того, короткого импульса может не хватить на сброс УВХ.
Из положения можно выйти, настроив таймер на режим 1. На УВХ меандр подавать через схему задержки, состоящую из интегрирующей цепи и инвертора, на АЦП – через схему формирования короткого отрицательного импульса, состоящую из дифференцирующей цепи и инвертора. В результате импульс ST запустит АЦП, когда уровень сигнала на выходе УВХ уже стабилизировался и поддерживается постоянным.
При этом должны выполняться следующие временные соотношения:
t1 > tпр = 0.37 мкс;
½ TД – t1 > tвыборки Þ t1 < 90 мс;
t2 > tmin = 37 нс;
t2 < tпр = 0.37 мкс.
Выберем t1 = 10 мкс. Учитывая, что порог срабатывания инвертора составляет 2.5 В, можно рассчитать постоянную времени RC-цепи:
2.5 = 5 (1 - е – ( t1 / t1 ) ); t1 = - t1 / ln 0.5 = 14 мкс.
При R = 1 кОм С = t / R » 14 нФ.
Аналогично, положим t2 = 0.1 мкс. Постоянная времени дифференцирующей RC-цепи находится из выражения:
2.5 = 5 е – ( t2 / t2 ) ; t2 = - t2 ln 0.5 = 0.144 мкс.
При R = 1 кОм С = t / R » 144 пФ.
2. Определение общего алгоритма функционирования устройства
Работу цифрового фильтра определяет программа, состоящая из инструкций, предназначенных для микропроцессора, и хранящаяся в ПЗУ независимо от наличия питающего напряжения. Поскольку ПЗУ – единственное устройство, способное хранить информацию при отсутствии питания, то в нем должны быть также заложены данные о конфигурации и синхронизации устройства. При включении питания фильтр в первую очередь должен быть сконфигурирован на правильную, то есть соответствующую требуемой работу. Это осуществляется с помощью программы инициализации. При включении питания микропроцессор обнуляет счетчик команд, и выполнение инструкций тогда происходит с нулевого адреса ПЗУ, находящегося в области векторов прерываний. Туда следует в качестве инструкции поместить ссылку на адрес ПЗУ, с которого начинается программа инициализации. Когда управление будет передано ей, она должна настроить порты на ввод и вывод данных, таймер-счетчик на частоту синхронизации выборки, а также обнулить рабочие ячейки ОЗУ, исключив тем самым быстроменяющиеся переходные процессы. Программа инициализации не должна прерываться, поэтому на время ее выполнения прерывания следует запретить.
Чтобы настроить таймер на частоту дискретизации и режим работы 1, необходимо 16-разрядное управляющее слово:
0100001111001000(2) = 83С4(16)
Дав старших бита 01 определяют режим 1, а остальное представляет собой 14-разрядное число N = ТД / ТТ = 1000(10) .
Старший байт этого слова записывается по адресу 7004(16) , а младший – по адресу 7005(16) .
Для ввода и вывода данных могут использоваться соответственно порты А и В микросхемы РУ55, а 6-разрядный порт С можно использовать как линии готовности и квитирования портов А и В. Для установки используется управляющее слово, имеющее вид: