Градиентный процессор

Автор: Пользователь скрыл имя, 09 Декабря 2011 в 13:18, реферат

Описание работы

Цели работы:

Провести обзор по законам регулирования.
Освоить язык С и основы программирования микроконтроллера.
Освоить методику вычисления коэффициентов для закона ПИД- регулирования.
Написать программу для микроконтроллера Atmega16, контролирующую процесс термостабилизации.
Г л а в а I

Содержание

Введение………………………………………………………………………………3
Глава I. ЛИТЕРАТУРНЫЙ ОБЗОР………………………………..……………..5
ЗАКОНЫ РЕГУЛИРОВАНИЯ.……………………………………………………..…5
П- РЕГУЛЯТОРЫ……………………………………………………………………6
ПИ- РЕГУЛЯТОРЫ………………………………………………………………….7
ПИД- РЕГУЛЯТОРЫ………………………………………………………………...7
ИНТЕРФЕЙС I2C(TWI)……………………………………………………………….9
ФОРМАТ ПОСЫЛКИ ПЕРЕДАВАЕМЫХ ДАННЫХ………………………………..10
Условия СТАРТа и СТОПа……………………………………………………….10
Формат адресного пакета………………………………………………………...10
Формат пакета данных…………………………………………………………...11
ФОРМИРОВАНИЕ ШИМ СИГНАЛА……………………………………………….11
РЕЖИМ БЫСТРОЙ ШИМ……………………………………………………...…..12
Г л а в а I I.ПРОГРАМНОЕ ОБЕСПЕЧЕНИЕ………………………………...14
АЛГОРИТМЫ ЦИФРОВОГО ПИД РЕГУЛИРОВАНИЯ……………………………14
СИСТЕМА АВТОМАТИЧЕСКОГО РЕГУЛИРОВАНИЯ……………………………14
ПРОГРАМНОЕ ОБЕСПЕЧЕНИЕ……………………………………………………15
ОСНОВНЫЕ РЕГИСТРЫ МИКРОКОНТРОЛЛЕРА………………………………...15
ОПИСАНИЕ РЕГИСТРОВ TWI……………………………………………………..16
ОПИСАНИЕ РЕГИСТРОВ 8-РАЗРЯДНОГО ТАЙМЕРА- СЧЕТЧИКА 0……………...17
ЗАКЛЮЧЕНИЕ…………………………………………………………………….22
ПРИЛОЖЕНИЯ……………………………………………………………………23
СПИСОК ЛИТЕРАТУРЫ…………………………………

Работа содержит 1 файл

реферат.doc

— 411.50 Кб (Скачать)

ПИД- РЕГУЛЯТОРЫ 

    Для ускорения реакции САР на внешние  воздействия и изменения в  задании в регулятор вводят дифференциальную составляющую d(U-X)/dt:

    Y  =  K·(U-X) +  ∫(U - X)/Ti∙dt + Тd· d(U-X)/dt,  

где Тd - постоянная дифференцирования. Чем  быстрее растет Е, тем больше d(U-X)/dt. Регулятор с таким законом управления называется  ПИД-регулятором. Подобрав для конкретного объекта К, Тi и Td   можно оптимизировать качество работы регулятора: уменьшить время выхода на задание, снизить влияние внешних возмущений, уменьшить отклонение от задания. При очень большом Тi регулятор очень медленно выводит объект на задание. При малом Тi происходит перерегулирование, т.е. регулируемый параметр Х проскакивает задание, а затем сходится к нему. Если Ti меньше оптимального в два раза, процесс регулирования может перейти в колебательный режим. Если Ti существенно больше оптимального, то регулятор медленно выходит на новый режим и слабо реагирует на быстрые возмущения.  На рис.3 показано влияние неоптимальных настроек ПИД-регуляторов на вид переходной функции:

Рис.3

 
 
 
 

НАСТРОЙКА РЕГУЛЯТОРОВ         

 При  применении ПИД- регуляторов для  каждого конкретного объекта  необходимо настраивать от одного  до трех  коэффициентов. Возможны САР с автоматизированной настройкой. Для типовых регуляторов известны простейшие аналитические и табличные методы настройки.

    Алгоритм  настройки по реакции- на входной скачок:

  • на вход САР подается новое задание (уставка) – нагреватель включается на максимальную мощность, и по переходному процессу X(t) определяются  t0, R, tи (см. рис. 4):

 
 Разгонная кривая для объекта с  транспортным запаздыванием:  
to - время транспортного запаздывания;  
tи - постоянная времени (время согласования) определяется инерционностью объекта;  
Xy - установившееся значение;  
R - наклон разгонной кривой dX/dt (макс. скорость изменения Х)

- вычисляются  коэффициенты  настройки согласно  следующим примерным соотношениям:  
для П-регулятора    К= 1/R·t0  
для ПД-регулятора   К= 1/R·t0,      Td=0.25·t0  
для ПИ-регулятора   К= 0.8/R·t0,  
Ti= 3·t0  
для ПИД-регулятора  К= 1.2/R·t0,   Ti= 2·t0,  Td=0.4·t0.
 

    ИНТЕРФЕЙС I2C(TWI):

    Отличительные особенности:

  • Гибкий, простой, при этом эффективный последовательный коммуникационный интерфейс, требующий только две линии связи
  • Поддержка как ведущей, так и подчиненной работы
  • Возможность работы, как приемника, так и как передатчика
  • 7-разр. адресное пространство позволяет подключить к шине до 128 подчиненных устройств
  • Скорость передачи данных до 400 кГц
 

  Двухпроводной последовательный интерфейс TWI идеально подходит для типичных применений микроконтроллера. Протокол TWI позволяет проектировщику системы внешне связать до 128 различных  устройств через одну двухпроводную двунаправленную шину, где одна линия - линия синхронизации SCL и одна - линия данных SDA. В качестве внешних аппаратных компонентов, которые требуются для реализации шины, необходимы только подтягивающий к плюсу питания резистор на каждой линии шины. Все устройства, которые подключены к шине, имеют свой индивидуальный адрес, а механизм определения содержимого шины поддерживается протоколом TWI.

 
Рисунок5. Внешние  подключения к  шине TWI

ФОРМАТ  ПОСЫЛКИ ПЕРЕДАВАЕМЫХ ДАННЫХ

Условия СТАРТа и СТОПа

    Ведущее устройство инициирует и заканчивает  передачу данных. Передача инициируется, когда ведущий формирует условие  СТАРТа на шине, и прекращается, когда ведущий формирует на шине условие СТОПа. Между условиями СТАРТа и СТОПа шина считается занятой и в этом случае никакой другой мастер не может осуществлять управляющие воздействия на шине. Как показано ниже, условиями СТАРТа и СТОПа являются изменение логического уровня на линии SDA, когда на линии SCL присутствует лог. 1.(рис.6) 

 
 
 
 

Рисунок 6. Условия СТАРТа и СТОПа

Формат  адресного пакета

    Все передаваемые адресные пакеты по шине TWI состоят из 9 бит, в т.ч. 7 бит  адреса, один бит управления для задания типа операции ЧТЕНИЕ/ЗАПИСЬ и один бит подтверждения. Если бит ЧТЕНИЕ/ЗАПИСЬ = 1, то будет выполнена операция чтения, иначе - запись. Если подчиненный распознает, что к нему происходит адресация, то он должен сформировать низкий уровень на линии SDA на 9-ом цикле SCL (формирование бита подтверждения). Если адресуемое подчиненное устройство занято или по каким-либо другим причинам не может обслужить ведущее устройство, то на линии SDA необходимо оставить высокий уровень во время цикла подтверждения. Ведущий после этого может передать условие СТОПа или "Повторного старта" для инициации новой передачи. Старший разряд адресного байта передается первым.

    Рисунок 7. Формат  адресного пакета

Формат  пакета данных

    Все пакеты данных, передаваемые по шине TWI, состоят из 9 бит, в т.ч. 1 байт данных и бит подтверждения. Во время передачи данных  ведущее устройство генерирует синхронизацию, а также условия СТАРТа и СТОПа, при этом на приемник возлагается подтверждение приема. Подтверждение

рис.8

(ПОДТВ)  сигнализируется приемником выводом  низкого уровня на линию SDA во время 9-го такта сигнала  SCL. Если приемник оставляет линию SDA в высоком состоянии, то этот сигнализирует о том, что подтверждения не было (НЕТ ПОДТВ). После получения приемником последнего байта или если по каким-либо причинам не имеется возможности далее принимать данные он должен информировать передатчика отправкой бита НЕТ ПОДТВ (нет подтверждения) после последнего байта. Старший бит данных передается первым.

    ФОРМИРОВАНИЕ  ШИМ СИГНАЛА

    Микроконтроллер Atmega16 в составе своих периферийных устройств имеет Таймер-счетчик 2 - модуль многофункционального одноканального 8-разрядного таймера-счетчика с аппаратным выходом для генерации ШИМ-сигнала и встроенным асинхронным опциональным тактовым генератором, который оптимизирован под использование часового кварца для асинхронного по отношению к системной синхронизации тактирования.

    Основные  отличительные особенности:

  • Одноканальный счетчик;
  • Опциональный режим сброса таймера при совпадении (автоматическая перезагрузка);
  • Широтно-импульсная модуляция без генерации ложных импульсов при записи нового порога сравнения в OCR2 (двойная буферизация) и с фазовой коррекцией;
  • Генератор частоты;
  • 10-разрядный предделитель тактовой частоты;
  • Генерация прерываний по переполнению и выполнения условия сравнения (TOV2 и OCF2);

    8-разрядный  цифровой компаратор непрерывно  выполняет сравнение содержимого регистра таймера-счетчика TCNT2 с регистром порога сравнения OCR2. Всякий раз, когда значение TCNT2 совпадает со значением OCR2 компаратор устанавливает флаг совпадения OCF2 следующим тактом синхронизации таймера. Если разрешено прерывание битом OCIE2= 1, то установка флага совпадения вызывает запрос на прерывание. Флаг OCF2 автоматически сбрасывается во время выполнения процедуры обработки прерывания. Альтернативно, флаг OCF2 можно сбросить программно путем записи лог. 1 в позицию данного бита. Генератор сигнала использует сигнал результата сравнения для генерации прямоугольных импульсов по одному из алгоритмов, который выбирается битами задания режима работы таймера WGM21, WGM20 и битами задания режима формирования выходного сигнала (COM21, COM20). Верхний и нижний пределы счета используются в некоторых режимах работы для выполнения специальных действий. На рисунке 9 приведена функциональная схема блока сравнения.

 
 
 
 
 
 
 
 

Рисунок 9. Функциональная схема  блока сравнения

РЕЖИМ БЫСТРОЙ ШИМ

    Режим быстрой широтно-импульсной модуляции (WGM21, WGM20 = 0b11) позволяет генерировать высокочастотные ШИМ- сигналы. От других режимов ШИМ данный отличается однонаправленностью  счета. Счетчик изменяет свое значение в направлении от нижнего предела до максимального значения (0xFF), а затем перезагружается значением нижнего предела и счет продолжается снова до максимального значения. Если задан неинвертирующий режим выхода, то при совпадении TCNT2 и OCR2 сигнал OC2 сбрасывается, а при достижении нижнего предела счета устанавливается. Если задан инвертирующий режим, то выход OC2 устанавливается при совпадении и сбрасывается на нижнем пределе счета. За счет однонаправленности счета, рабочая частота для данного режима в два раза выше по сравнению с режимом ШИМ с фазовой коррекцией, где используется двунаправленный счет. Возможность генерации высокочастотных ШИМ сигналов делает использование данного режима полезным в задачах стабилизации питания, выпрямления и цифро-аналогового преобразования. Высокая частота, при этом, позволяет использовать внешние элементы физически малых размеров (индуктивности, конденсаторы), тем самым снижая общую стоимость системы.

    В режиме быстрой ШИМ содержимое счетчика инкрементируется пока не достигнет  максимального значения (0xFF). Следующим тактовым импульсом счетчик сброситься. Временная диаграмма для режима быстрой ШИМ показана на рис. 10. Значение TCNT2 на временной диаграмме показано в виде графика функции для иллюстрации однонаправленности счета. На диаграмме показаны как инвертированный, так и неинвертированный ШИМ-выходы. Короткой горизонтальной линией показаны точки на графике TCNT2, где совпадают значения OCR2 и ТCNT2.

      
 

 
    
 
 
 
 
 

Рисунок 10. Временная диаграмма  режима быстрой ШИМ

Г л а в а  I I

ПРОГРАМНОЕ  ОБЕСПЕЧЕНИЕ

    АЛГОРИТМЫ ЦИФРОВОГО ПИД  РЕГУЛИРОВАНИЯ

    Наиболее  распространенными алгоритмами  являются ПИ и ПИД алгоритмы цифрового  управления. При правильной настройке  эти алгоритмы обеспечивают достаточно хорошее качество управления для. Рассмотрим процедуру вывода алгоритма цифрового ПИД- регулятора из соответствующего непрерывного закона, имеющего вид,

(1)

где -ошибка регулирования.

    Запишем уравнение (1) в конечных разностях, путем замены  

, (2)

где k=1,2,3...- номер периода квантования,    - величина периода квантования. 
Отметим, что при достаточно малых периодах квантования цифровой ПИД закон управления обеспечивает почти такое же качество процессов управления, что и исходный непрерывный закон (1).

    Вычисление разности ошибок регулирования сводиться к вычислению разности температур: X(k)-X(k-1). То есть при повторном чтении с термодатчика температуры Х, последнее значение  должно храниться в памяти. Программно это будет осуществляться присваиванием в конце основного цикла, в котором вычисляется выходная величина, переменной X_prev значения X. Для корректной работы программы до основного цикла надо присвоить переменной X_prev начальное значение температуры, чтобы вычислить первую разность.

     Сумма же будет храниться в переменной summa. Перед каждым вычислением выходной величины значение этой переменной будет увеличиваться на                        .

    Время между двумя ближайшими измерениями  равно 10 ms.       =10 ms. 
 

    СИСТЕМА АВТОМАТИЧЕСКОГО  РЕГУЛИРОВАНИЯ

    Принципиальная  схема данной системы представлена на рис.11(см.прил.). Основным ее элементом является микроконтроллер ATmega16, который и будет ввиду заложенной в него программы регулировать процесс термостабилизации. Температура будет считываться с цифрового термодатчика AD7416, обмен данными между датчиком и контроллером будет осуществляться по I2C(TWI) интерфейсу. После чего вычисляется на основе ПИД закона выходная величина. На выходе формируется ШИМ - сигнал.

 

    ПРОГРАМНОЕ  ОБЕСПЕЧЕНИЕ

    Система команд МК AVR  изначально проектировалась с учетом особенностей языка программирования "C", что в результате позволяет получать после компиляции программ на "C" гораздо более эффективный код, чем для других микроконтроллеров. А это уже выигрыш и в размере полученного кода (в объеме памяти на кристалле), и в скорости работы микроконтроллера. Язык "C"- это универсальный язык программирования, для которого характерны экономичность выражения, современный поток управления и структуры данных, богатый набор операторов. Язык "C" не является ни языком "очень высокого уровня", ни "большим" языком, и отсутствие ограничений и общность языка делают его более удобным и эффективным для многих задач, чем языки, предположительно более мощные.

Информация о работе Градиентный процессор