Болл С.Р. Аналоговые интерфейсы микроконтроллеров (2007) (1264220), страница 26
Текст из файла (страница 26)
Прерывание для измерения ПериодЗ > г з з з т г Измеряемые импульсы Число твкив звпериод Периодг о з о з о о т о з з о з о з з о Измеряемые импульсы Число тактов зв период Рис. 4.10. Применение усреднения для измерения периода Для осуШествления данного метода программно, можно подать измеряемый сигнал в микропроцессор для формирования прерывания по фронту и опалу и подсчитать число прерываний. Если вы производите измерения с использованием таймера, программа обработки прерываний таймера обычно увеличивает число в счетчике. Для повторяюшихся последовательностей, где окончание одного сигнала является началом другого, программа должна сбрасывать счетчик немедленно после чтения.
Число в счетчике — это число прерываний таймера, произошедших за время, отсчитываемое от старта результируюших прерываний. 138 ° Глава 4. Измерение временных параметров При проведении измерений с использованием дополнительного таймера, подпрограмма обработки прерываний должна считывать импульсную последовательность таймера на фронте и спаде измеряемого и мпульса, затем вычитать из конечной величины начальную (учитывая переполнение при необходимости). Как упоминалось ранее, сложной операции деления можно избежать, установив число измерений кратным 2. В некоторых приложениях без операции деления можно обойтись, используя суммирование измеряемых величин. Например, если вы используете датчик, где 0.6 тактов измерения соответствуют 25 градусам, вы могли бы сложить 64 измеренных величины и учитывать в программе полученный результат как 0.6 х 64 = 38 раз по 25 градусов.
Наконец, для периодических последовательностей, таких как выходные сигналы преобразователей сигналов с датчиков, нет необходимости подсчитывать, сколько прерываний произошло за время сигнала. Вместо зтого можно подсчитать общее число прерываний. Сигнал можно подать на вход счетчика, выход которого сформирует прерывание процессора на определенном отсчете. Это сократит число обрабатываемых прерываний, что особенно полезно при измерении довольно быстрых по сравнению с прерываниями процессора сигналов. глдвд 5 Методы управления 5.2. Отрицательная обратная связь На Рис. 5.1 показана простая система управления — операционный усилитель (039.
Операционные усилители обладают очень высоким коэффициентом усиления, и соединением выхода ОУ с инвертирующим входом мы вводим отрицательную обратную связь (ООС). ОУ усиливает разность напряжений между инвертируюгцим и неинвертируюи1им входами. Скажем, на входе и выходе установлено напряжение 2 В. Разность между входом и выходом составит 0 В, тогда разность между инвертирующим и неинвертирующим входами также равна 0 В.
В»ад»се Выхаднае напряжение напряжение рис. 5.1. Простая система управления — Оу 5.1. Управление с разомкнутой петлей обратной связи Простейший метод управления механизмами — управление с разомкнутой петлей обратной связи (ОС). Термин «разомкнутая петля» подразумевает, что никакого сигнала обратной связи от управляемого устройства не поступает.
Нет индикации того, что устройство выполнило именно то, что ему приказали делать. Примером может служить двигатель виброзвонка в пейджере или сотовом телефоне. Ни пользователь, ни прибор не может гарантировать, что скорость двигателя не изменилась на 10...20% от номинальной. Микропроцессор посылает только сигнал включения/выключения двигателю, не имея никакой информации о его скорости. Реальная скорость двигателя будет зависеть от трения на валу, напряжения аккумулятора и состояния щеток. В отличие от приведенного примера, когда скорость двигателя не так уж и важна, большинство микропроцессорных систем управления имеют средства измерения параметров управляемых систем.
Для этого необходимо введение цепи ОС от управляемого устройства к микропроцессору. Поэтому основная часть данной главы посвящена управляющим системам с ОС. 140 ° Глава 5. Методы управления Допустим, уровень напряжения на входе резко изменился с 2 до 2.1 В. Тогда появится разница между двумя дифференциальными входами — неинвертируюшим (2.1 В) и инвертируюшим (2 В). Разница в 0.1 В усиливается ОУ до тех пор, пока напряжение на выходе не достигнет 2.1 В, разница между входами снова станет 0 В, и выходное напряжение останется на уровне 2.1 В. Если колебания температуры и дрейф выходных транзисторов ОУ немного изменят характеристики усилителя, выходное напряжение может несколько сместиться.
Однако, как только это произойдет, ОУ усилит разницу между входными напряжениями и снова стабилизирует выходное напряжение. При этом коэффициент усиления идеального ОУ измеряется обычно очень большой величиной, однако на практике существуют частотные и другие ограничения для коэффициента усиления реального ОУ. 5.3. Микропроцессорные системы управления Микропроцессорные системы управления могут работать по такому же принципу, как и ОУ. МП-система управляет каким-либо прибором (например, двигателем или нагревательным элементом), устанавлнваюшим некоторую физическую величину (позицию или температуру объекта). Секрет, конечно, кроется в функции усиления. В отличие от простого ОУ, цифровая система управления может воспроизвести на выходе более сложную функцию.
Микропроцессор может сформировать сигнал, являюшийся не только функцией входа и выхода, но и предыдущих состояний входа и выхода, коэффициентов изменений, состояния нагрузки и т. п. Микропроцессорная система управления, в отличии от аналоговой, всегда является дискретной системой. Это значит, что микропроцессор производит измерения сигнала с датчиков через определенные интервалы.
Любые изменения, происходяшие между интервалами измерения, теряются. Частота дискретизации должна быть достаточно высокой для гарантии того, что состояние управляемого прибора не изменится значительно за время интервала дискретизации. Интервал дискретизации, естественно, зависит от управляемого прибора и может варьироваться от минут до долей микросекунд. На Рис. 52.
показана простая микропроцессорная система управления. Микропроцессор включает и выключает МОП-транзистор, управляющий нагревательным прибором. Для измерения температуры применяется терморезистор. Микропроцессор считывает сигнал, пропорциональный температуре, и решает включить или выключить нагревательный элемент. Величина устанавливаемой температуры подается на «Вход» системы (Рис. 5.2). В данном случае нас не будет волновать вопрос о том, откуда пришел сигнал на этот вход. 5.4.
Система релейного управления ° 141 Термореаиотов иии другой температурный датчик Рис. 5.г. Простая микропроцессорная система управления 5.4. Система релейного управления Рассмотрим простейшую систему релеиного управления (оп-ой), иногда называемую еше системой двухпозиционного управления (Ьапя-Ьапя сопгго!). Допустим, микропроцессор считывает температуру датчика. Если температура ниже уставни (определенной температурной точки), нагреватель включается. Если выше, выключается. На Рис. 5.3 показана аналогичная система на основе компаратора. На рисунке также приведена характерная осциллограмма работы системы. Когда система включается, нагреватель холодный.
Микропроцессор держит нагреватель во включенном состоянии до тех пор, пока температура терморезистора не достигнет заданного уровня уставки. Тогда микропроцессор отключает нагреватель. При понижении температуры ниже усптавни, нагреватель снова включается. В результате температура объекта колеблется около заданной величины. На Рис. 5.3 показаны температуры нагревателя и терморезистора. Как можно заметить, они не совпадают ни по времени, ни по амплитуде. При первом разогреве нагреватель перегревается на значительную величину, а затем температура его колеблется в широком диапазоне. Основные причины значительных колебаний температуры нагревателя здесь следуюшие: ° Недостаточная связь между нагревателем и объектом.
Температура нагревателя должна быть выше, чтобы передать необходимую энергию для нагрева объекта. 142 ° Глава 5. Методы управления Функциональная схема релейной системы регулироеания Терморезистор ипи другой температурный датчик Нм реватвь Заданная температура Температура, измеряемая терморезистором системы, точнее температуры нагрееатеяя деястеитепьная температви нагреаатеяя В~с. 55. Система релейного управления ° Процесс нагрева объекта не может произойти моментально, поскольку объект обладает определенной массой и, следовательно, инерционносп ю. ° Существует задержка между временем достижения заданной температуры объектом и терморезистором. Задержка обусловлена плохим контактом терморезистора с обьектом и конечной теплоемкостью терм орезистора.
° Существует задержка между временем включения нагревателя и моментом действительного достижения требуемой температуры. Когда же нагреватель выключается, опять же требуется время на остывание. 5.4. Система релейного унроеленил ° 143 Показанная на Рис. 5.3 осциллограмма сильно напоминает мне аналогичную из моего опыта работы с реальной системой. Тогда цепь управления нагревателем могла передавать значительную энергию объекту — много большую, чем необходимо. Нагреваемый объект обладал небольшой массой, примерно как у самого нагревателя, соответственно, очень быстро нагревался. Изменения температуры объекта в действительности происходили даже быстрее, чем изменения температуры терморезистора.
В итоге, когда нагреватель включался, перегрев происходил за несколько секунд, а затем секунд 10...20 нагреватель был выключен до тех пор, пока температура объекта не спадет до требуемого уровня. Таким образом, колебания температуры системы около заданной величины оказались слишком высокими.
Пример со столь невыгодными условиями приведен специально, чтобы продемонстрировать, что релейная система будет устойчивей работать при выполнении следующих требований: ° управляемый объект не должен быстро реагировать на управляющий сигнал; ° измеряюгций датчик, напротив, должен очень быстро воспроизводить все изменения системы. В примере с обогревателем эти требования выглядели бы следующим образом: теплоемкость объекта должна превышать теплоемкость нагревательного нрибора, а терморезистор должен быть плотно присоединен к объекту, чтобы иметь с ним надежный тенловой контакт, и быстро реагировать на изменения температуры.