49502

Микропроцессорная система управления объектом с переменным запаздыванием

Курсовая

Коммуникация, связь, радиоэлектроника и цифровые приборы

В тех случаях, когда к качеству переходных процессов в системе регулирования предъявляют высокие требования, целесообразно использовать специальные регуляторы или алгоритмы, обеспечивающие компенсацию чистого запаздывания. Примерами такого регулятора является регулятор Смита. Он представляет собой замкнутую систему, состоящую из обычного регулятора и модели объекта, включенной в линию обратной связи к регулятору.

Русский

2013-12-28

1.36 MB

20 чел.

Министерство образования и науки Российской Федерации

ФГБОУ ВПО

«Ивановский государственный энергетический университет имени В. И. Ленина»

Кафедра электроники и микропроцессорных систем

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

к курсовому проекту по дисциплине

«Информационные и управляющие микропроцессорные системы»

на тему:

«Микропроцессорная система управления объектом с переменным запаздыванием»

подпись, дата

Студент группы 4- 35В                                                                      С. В. Казаков

подпись, дата

Преподаватель                                                                                 Н. А. Торопов

Иваново - 2013

Содержание

Содержание 2

1. Составление задания на проектирование информационно-управляющей системы. 3

2. Идентификация объекта управления на основе экспериментальных данных 4

3. Синтез информационно-управляющей модели и 

анализ её характеристик. 7

4. Адаптация к вариациям коэффициента усиления. 15

5. Разработка цифровой информационно-управляющей системы ------------------------------17

6. Программная реализация цифрового регулятора ------------------------------------------------20

Список использованной литературы -------------------------------------------------------------------22

Приложение 1 -----------------------------------------------------------------------------------------------23

Приложение 2 -----------------------------------------------------------------------------------------------24

Приложение 3 -----------------------------------------------------------------------------------------------25


1. Составление задания на проектирование информационно-управляющей системы.

   Исходными данными к проекту является переходная характеристика объекта управления, полученная экспериментально.

Проект должен содержать следующие разделы:

1.Составление задания на проектирование информационно-управляющей системы.

2. Идентифицировать объект управления на основе экспериментальных данных.

3. Синтезировать информационно-управляющую систему, обладающую следующими параметрами:

- время переходного процесса          26 с

- перерегулирование, не более          0 %

- статическая ошибка, не более         0

4. Выбрать микропроцессорный управляющий контроллер (промышленную        микро-ЭВМ), реализующий функции регулятора.

5. Разработать программу контроллера.

Рис. 1 Переходная характеристика заданного ОУ

2. Идентификация объекта управления на основе экспериментальных данных

0, при

, при

Идентификацию объекта проведём графическим методом. Представим модель объекта затухающей колебательной системой с запаздыванием. Математически объект можно описать следующей функцией:

h(t) =

  

А передаточная функция этого объекта:

По переходной характеристике объекта (см. рис. 1) определим следующие параметры:

На вход подается единичный сигнал, тогда коэффициент усиления к в передаточной функции равен: К=200/1=200  

Определим недостающие параметры:

Показатель затухания ,

Период ,

,

Теперь подставим полученные значения в передаточную функцию:

Промоделируем полученную функцию в программном комплексе "MatLAB". Переходная характеристика показана на рисунке 2.

Рисунок 2. Переходная характеристика рассчитанного объекта.

Теперь сделаем математическую модель функции в программном комплексе  "Mathcad",

с найденными  данными,  получаем график, показанный на рисунке 2.2

Рисунок 2.2. Переходная характеристика рассчитанного объекта в математическом виде.

Сравним расчетную переходную характеристику с переходной характеристикой объекта заданного. Для оценки правильности идентификации вычислим среднеквадратичное отклонение, взяв 10 произвольных точек по оси времени:

– уровень сигнала исходной переходной характеристики в i –й момент                                              времени,

– уровень сигнала полученной модели в этот же момент времени.

   Для полученной характеристики в программной среде MatLab рассчитываем среднеквадратичное отклонение:

Для полученной характеристике в программной среде MathCad рассчитываем среднеквадратичное отклонение:

Координаты реальной хар-ки:

Координаты полученной хар-ки:

3. Синтез информационно-управляющей модели и

анализ её характеристик.

Технические требования к САУ: 

  - время переходного процесса: , время вхождения выходного сигнала в 5% коридор от установившегося значения;

  - перерегулирование:

  - статическая ошибка:

  - адаптация к вариациям постоянной времени.

Синтез регулятора

Наличие запаздывания в контуре управления, как правило, снижает запас устойчивости системы, ограничивая ее быстродействие величиной 1,5 - 2 интервала запаздывания. Выбор регулятора в этих условиях зависит от требования к точности и быстродействию системы, а так же от соотношения постоянной времени Тmax и запаздывания τ0 объекта управления.

 В тех случаях, когда к качеству переходных процессов в системе регулирования предъявляют высокие требования, целесообразно использовать специальные регуляторы или алгоритмы, обеспечивающие компенсацию чистого запаздывания. Примерами такого регулятора является регулятор Смита. Он представляет собой замкнутую систему, состоящую из обычного регулятора и модели объекта, включенной в линию обратной связи к регулятору.

   Согласно блок-схеме  САУ с регулятором Смита, приведенной на рисунке 3 сначала для ОУ без учета величины временного запаздывания синтезируется регулятор – Gr, для выполнения технических требований, предъявленных к САУ, а затем с помощью непосредственно регулятора Смита в “сборе” производится компенсация влияния временной задержки, присущей ОУ.

Рисунок 3. Блок-схема САУ с регулятором Смита

Синтез регулятора Gr для ОУ без учета запаздывания

  В качестве регулятора будет применен полиномиальный регулятор с астатизмом первого порядка – q = 1:

Рисунок 3.2. Структурная схема ОУ с полиномиальным регулятором

  Передаточная функция объекта управления:

  Уравнение синтеза в общем виде:

  где - желаемый характеристический полином.

  При астатизме первого порядка получаем степени полиномов:

  - deg(A) = n+1 = 3:

  - deg(B) = m = 0;

  - degR(s)=degA(s)-1=2;

  - degC(s) = degR(s)=2;

  - degD(s) = degA(s)+degC(s)=3+2=5;

  где deg – степень соответствующего полинома.

  Для решения задачи синтеза регулятора зададимся желаемым характеристическим полиномом Ньютона:

  Величина среднегеометрического корня Ω0  желаемого характеристического полинома:

С помощью программного комплекса Satellite найдем полиномы:

Теперь соберем схему ОУ с полиномиальным регулятором без учета запаздывания (рисунок 3.3). Графики переходных процессов показаны на рисунке 3.4 и рисунке 3.5

Рисунок 3.3 Схема ОУ с полиномиальным регулятором.

Рисунок 3.4 Переходная характеристика ОУ с полиномиальным регулятором без возмущающего воздействия.

Рисунок 3.5 Переходная характеристика ОУ с полиномиальным регулятором с учетом возмущающего воздействия(Step1=20).

Анализ данной характеристики выявил следующие особенность данной системы:

1) время переходного процесса ;

  1. перерегулирование
  2. статическая ошибка ;

  Из анализа качества синтезированной аналоговой САУ, видно что данный регулятор подходит по всем техническим требованиям.

  Следующий этап работы – это синтез регулятора Смита. Структурная схема регулятора, собранного в программном комплексе Matlab представлена на рисунке 3.6.

Рисунок 3.6. Структурная схема регулятора Смита.

Рисунок 3.7. Переходная характеристика для модели САУ с регулятором Смита

Анализ качества переходного процесса (Step1=20):

  1. Время переходного процесса: ;
  2. Перерегулирование: ;
  3. Статическая ошибка: .

Как видно из рисунка 3.8, переходный процесс САУ с регулятором Смита качественно отличается от переходного процесса САУ с полиномиальным регулятором наличием задержки при отработке возмущающего воздействия, что является одним из недостатков систем с транспортной задержкой, построенных на основе регулятора Смита.

Цифровая реализация регулятора

Выполним преобразование, используя метод Эйлера, для которого:

При выборе такта квантования необходимо учитывать ограничения теоремы Котельникова-Шенона о дискретизации непрерывного сигнала, требующее не менее 50 тактов на время переходного процесса, а также тот факт, что при уменьшении периода квантования возрастает чувствительность системы к рассогласованию величин задержки объекта и его модели. Также при малом периоде квантования возникают определенные трудности реализации САУ на практике при больших значениях времени задержки.

Выполним расчет цифровых регуляторов для нескольких тактов квантования, а затем промоделируем их в комплексе MatLab для сравнения переходных характеристик до и после оцифровки:

Рисунок 3.8. Структурная схема регулятора Смита в цифровом виде, .

Рисунок 3.9. Переходная характеристика при такте квантования равном 0.01 с

Рисунок 3.10. Структурная схема регулятора Смита в цифровом виде, .

Рисунок 3.11. Переходная характеристика при такте квантования равном 0.02 с

Рисунок 3.10. Структурная схема регулятора Смита в цифровом виде, .

Рисунок 3.11. Переходная характеристика при такте квантования равном 0.1 с

Лучшие результаты показал регулятор с тактом квантования , переходная характеристика САУ при котором максимально повторяет исходную до оцифровки, в то время как при такте квантования наблюдаются расхождения с аналоговой моделью. При такте квантования график практически полностью повторяет исходный. Так как для регулятора Смита будет необходимо осуществить задержку с хранением данных (прямо зависящих от времени такта квантования и транспортной задержки) в ОЗУ микроконтроллера, которое сильно ограничено, было принято решение синтезировать ИУМПС с .

4. Адаптация к вариациям коэффициента усиления.

Как показывают исследования, значения на выходе второго сумматора оказываются пропорциональны вариации коэффициента усиления ОУ при небольших (в пределах 10-15%) отклонениях от нормы. Этим фактом можно воспользоваться, организовав подстройку коэффициента усиления наблюдателя Смита. Основная идея заключена в том, что по прошествии некоторого количества итераций подстройки, коэффициент усиления наблюдателя Смита асимптотически стремится к  коэффициенту усиления ОУ. Это позволяет реализовать адаптивный алгоритм, работающий с вариациями коэффициента усиления в любых пределах.

Структурная схема системы с адаптацией к вариациям коэффициента усиления, основанная на применении эталонной модели, представлена на рисунке 4.1. Принцип действия системы изложен с помощью алгоритма в виде блок-схемы на рисунке 4.2.

 

Рисунок 4.1. Структурная схема системы с адаптацией к вариациям коэффициента усиления.

В реальной системе изменяется коэффициент усиления

Рисунок 4.2. Блок-схема алгоритма работы системы с адаптацией к вариациям коэффициента усиления.

Составим модель в комплексе MatLab (рисунок 4.3) для проверки работы системы. Результаты моделирования представлены на рисунке 4.4, из которого видно, что при изменении коэффициента усиления в объекте усиления, сигнал на выходе общей системы с адаптацией к данному воздействию не изменяется.

Рисунок 4.3. Структурная схема системы с адаптацией к вариациям коэффициента усиления.

Рисунок 4.4. Результаты моделирования системы с адаптацией к вариациям коэффициента усиления.

5. Разработка цифровой информационно-управляющей системы

Разработка функциональной схемы.

Для ИУМПС необходим микроконтроллер, АЦП и ЦАП, а также наличие ОЗУ для хранения задержанного на время транспортной задержки сигнала в регуляторе Смита объемом: байт. Исходя из заданных требований был выбран 8-разрядный микроконтроллер ATmega1281 компании Atmel, построенный на архитектуре AVR, который имеет встроенный 10-разрядный АЦП, а также внутреннее ОЗУ объемом 8КБ. Для преобразования цифрового кода был выбран 10-разрядный ЦАП AD5611 компании Analog Devices, работающий по интерфейсу SPI, который аппаратно поддерживается в выбранном микроконтроллере. Функциональная схема представлена на рисунке 5.1.

Рисунок 5.1. Функциональная схема ИУМПС.

Расчет разностных уравнений регулятора.

Пусть дан объект, структурная схема которого изображена на рисунке 5.2.

Рисунок 5.2. Структурная схема ОУ.

Динамический режим работы данной САУ описывается следующим линеаризованным дифференциальным уравнением:

Для описания аналогичной дискретной системы необходимо сделать переход от непрерывной функции , к решетчатой функции , . В качестве аналога производной 1-го порядка непрерывной функции для решетчатой функции будем использовать 1-ю обратную разность, для 2-го – 2-ю. Для вычисления n-ой разности можно использовать формулу общего вида:

,

где .

Т.о., в качестве аналогов дифференциальных уравнений для решетчатых функций будут выступать разностные уравнения:

Разностные уравнения для регулятора, синтезированного в разделе 3, вычислим следующим образом:

где   - текущее выходное значение,

  - задержанное на такт выходное значение;

  - текущее входное значение,

- задержанное на такт входное значение.

Предварительные расчеты и настройки

Для реализации требуемого такта квантования необходимо настроить один из таймером-счетчиков микроконтроллера. Выберем 16-разрядный таймер-счетчик T/C1 и настроим его на работу в режиме обнуления при совпадении с регистром (CTCClear Timer on Compare), после которого срабатывает прерывание и выполняется расчет разностных уравнений с выводом нового сигнала на объект. Значение регистра OCR1A, с которым будет сравниваться таймер-счетчик, рассчитывается по следующей формуле:

где - тактовая частота микроконтроллера, N - коэффициент предделителя частоты T/C1.

Внутренний АЦП будет работать в дифференциальном режиме (ADC0 – положительный вход, ADC1 – отрицательный вход) с единичным усилением на частоте:

Согласно требованиям из спецификации данная частота должна быть в пределах          от 50 КГц до 200 КГц, следовательно коэффициент предделителя был выбран верно. В качестве опорного напряжения используется вход AREF.

Интерфейс SPI, по которому микроконтроллер передает данные на ЦАП, будет работать на максимально возможной частоте, равной половине от тактовой частоты микроконтроллера, то есть 4 МГц, так как выбранный ЦАП способен работать при тактовой частоте до 30 МГц.

Для хранения задержанного на время транспортной задержки сигнала в регуляторе Смита из 1000 значений был создан массив на 1000 double-элементов, а также 2 функции, организующие работу с массивом по принципу «первый пришел первый ушел» (FIFO), также называемому очередью (Queue). Функция pop() извлекает из массива элемент, который был добавлен раньше остальных, в то время как функция push(double) добавляет в массив новый элемент на место только что извлеченного значения.

6. Программная реализация цифрового регулятора

  1.  // тактовая частота МК определена в настройках проекта
  2.  #include <avr/io.h> // специфичные для МК определения
  3.  #include <avr/interrupt.h> // определения прерываний
  4.  
  5.  // глобальные переменные
  6.  int pop_index = 999, push_index = 0; // для организации очереди
  7.  double delayed_data[1000], y1[3] = {0,0,0}, y2[4] = {0,0,0,0}, y3[3] = {0,0,0}, ysum[3] = {0,0,0}, u = 1, yadc, dac = 1024.0/5, adc = 250.0/512;
  8.  
  9.  void push(double new_element) { // добавление в очередь
  10.  delayed_data[push_index] = new_element;
  11.  push_index++;
  12.  if (push_index == 1000) push_index = 0;
  13.  }
  14.  
  15.  double pop() { // извлечение из очереди
  16.  pop_index++;
  17.  if (pop_index == 1000) pop_index = 0;
  18.  return delayed_data[pop_index];
  19.  }
  20.  
  21.  void adc_init() {
  22.  // выбор режима работы и коэффициента предделителя
  23.  ADCSRA = (1<<ADEN)|(1<<ADSC)|(1<<ADATE)|(1<<ADPS2)|(1<<ADPS1);
  24.  // запрет цифровых входов на ножках входов АЦП
  25.  DIDR0 |= (1<<ADC1D)|(1<<ADC0D);
  26.  // выбор опорного напряжения и режима работы
  27.  ADMUX = 1<<MUX4;
  28.  }
  29.  
  30.  int adc_get() {
  31.  // младшая часть обязательно читается первой, поэтому скобки
  32.  return (ADCL)|(ADCH<<8);
  33.  }
  34.  
  35.  void spi_dac_init() {
  36.  // настройка ножек MOSI, SCK и SS_ на выход
  37.  DDRB |= (1<<DDB2)|(1<<DDB1)|(1<<DDB0);
  38.  // ножка SS_ в 1 для отключения передачи на ЦАП
  39.  PORTB |= (1<<PORTB0);
  40.  // выбор режима работы Master и коэффициента предделителя
  41.  // настройка фронтов и спадов, первым передается ст. часть
  42.  SPCR = (1<<SPE)|(1<<MSTR)|(1<<CPOL);
  43.  SPCR = (1<<SPI2X);
  44.  }
  45.  
  46.  void spi_dac_transmit(int code) {
  47.  PORTB &= ~(1<<PORTB0); // SS_ = 0 (разрешение передачи)
  48.  SPDR = (code>>4); // начало передачи ст. части (MSB)
  49.  while(!(SPSR & (1<<SPIF))); // ожидание завершения передачи
  50.  SPDR = code<<4; // начало передачи мл. части (LSB)
  51.  while(!(SPSR & (1<<SPIF))); // ожидание завершения передачи
  52.  
  53.  PORTB |= (1<<PORTB0); // set SS_ high (запрет передачи)
  54.  }
  55.  
  56.  void tc1_init() {
  57.  // регистр, с которым будет сравнивать T/C1
  58.  OCR1A = 2499;
  59.  // настройка коэффициента предделителя и режима CTC
  60.  TCCR1B = (1<<WGM12)|(1<<CS11)|(1<<CS10);
  61.  // прерывание по совпадению T/C1 с OCR1A
  62.  TIMSK1 = 1<<OCIE1A;
  63.  }
  64.  
  65.  int main() {
  66.  // регистры сокращения потребления энергии
  67.  // отключение TWI и USART0
  68.  PRR0 = (1<<PRTWI)|(1<<PRUSART0);
  69.  // отключение T/C5-3 и USART3-1
  70.  PRR1 = (1<<PRTIM5)|(1<<PRTIM4)|(1<<PRTIM3)|(1<<PRUSART3)|(1<<PRUSART2)|(1<<PRUSART1);
  71.  // инициализация матрицы для хранения задержанных данных
  72.  int i;
  73.  for(i=0; i<1000; i=i++)
  74.  delayed_data[i] = 0;
  75.  // инициализация
  76.  adc_init(); // АЦП
  77.  spi_dac_init(); // SPI для ЦАП
  78.  tc1_init(); // T/C1 для реализации такта квантования
  79.  sei(); // глобальное разрешение прерываний
  80.  while(1); // бесконечный цикл
  81.  return 0;
  82.  }
  83.  
  84.  ISR(TIMER1_COMPA_vect) // прерывание T/C1
  85.  {
  86.  // получение кода АЦП и преобразование в реальное значение
  87.  yadc = adc_get() * adc;
  88.  
  89.  // разностные уравнения
  90.  y3[0] = 0.052277*y2[0] + 1.985166*y3[1] - 0.985428*y3[2];
  91.  y1[0] = 0.0045071*u + 1.982476*y1[1] - 0.982647*y1[2];
  92.  ysum[0] = y1[0] - y3[0] + pop() - yadc;
  93.  y2[0] = 0.002626*ysum[0] - 0.005206*ysum[1] + 0.002580*ysum[2] +      2.869439*y2[1] - 2.744834*y2[2] + 0.875395*y2[3];
  94.  // преобразование реального значения в код и передача на ЦАП
  95.  spi_dac_transmit((int) (y2[0] * dac));
  96.  // новые значения задержанной информации в разностных уравнениях
  97.  ysum[2] = ysum[1]; ysum[1] = ysum[0];
  98.  y3[2] = y3[1]; push(y3[1] = y3[0]);
  99.  y2[3] = y2[2]; y2[2] = y2[1]; y2[1] = y2[0];
  100.  y1[2] = y1[1]; y1[1] = y1[0];
  101.  }

Список использованной литературы.

  1. Бессекерский В.А.,  Попов Е.П. Теория систем автоматического регулирования. – 3-е изд. –М.: 1975. – 167 с.
  2. Изерман Р. Цифровые системы управления: Пер. с англ. – М.: Мир, 1984.
  3.  Matlab 5.x. – К.: Издательская группа ВНV, 2000.
  4. Анисимов А.А., Бурков А.П., Тарарыкин С.В. Цифровые системы контроля плотности и регулирования плотности ткани/ Иван. гос. энер. ун-т. – Иваново, 2001.-200 с.
  5. Тарарыкин С.В., Тютиков В.В. Типовые динамические звенья линейных систем управления: Учеб. пособие с лабор. практикумом / ИГЭУ. – Иваново, 2001. 78 с. – ISBN 5-89482-093-6.
  6. Теория автоматического управления: Учеб. для вузов по спец. «Автоматика и телемеханика». В 2-х ч. Ч. II. Теория нелинейных и специальных систем автоматического управления. / А. А. Воронов, Д. П. Ким, В. М. Лохин и др.; Под ред. А. А. Воронова.- 2-е изд., перераб. и доп. – М.: Высш. шк., 1986. – 504 с., ил.


 

А также другие работы, которые могут Вас заинтересовать

48379. Конспект воспитательного мероприятия в форме праздника «Масленица» 3.04 MB
  Ребята а что такое масленица Масленица народный праздничный цикл сохранившийся на Руси с языческих времён. Масленица получила свое название оттого что в этот период времени последнюю неделю перед Великим постом разрешается употребление в пищу сливочного масла молочных продуктов и рыбы.
48380. Основы бухгалтерского учета 252.67 KB
  Цель нашего курса - познакомить Вас с основами системы ведения бухгалтерского учета которая ежедневно используется на предприятии. Вы овладеете основами бухгалтерского учета и научитесь практически применять полученные знания. Материалы курса выходят за рамки только бухгалтерского учета.
48381. Кримінальне право. Курс лекцій 546.71 KB
  Курс лекцій містить зміст лекційного курсу, завдання до самостійного вивчення теоретичного матеріалу курсу, що вивчається в позааудиторний час, список рекомендованої літератури і ресурсів Інтернет, ілюстративний матеріал до лекцій
48382. Хіммотологія. Курс лекцій 1.35 MB
  Курс лекцій з дисципліни: Хіммотологія для студентів які навчаються за програмою підготовки офіцерів для проходження військової служби за контрактом кафедри військової підготовки ІваноФранківського національного технічного університету нафти і газу з напряму підготовки: В результаті вивчення блоку змістових модулів розділу Основи отримання та властивості пального студенти курсанти повинні знати: походження та властивості нафти склад нафти будову та властивості вуглеводнів основні процеси переробки та очистки нафти...
48385. Мотивы апокалипсиса культуры в романе Т.Толстой «Кысь». Черты постмодернистской поэтики в произведении 38.81 KB
  Мотивы апокалипсиса культуры в романе Т.Толстой «Кысь». Черты постмодернистской поэтики в произведении. Татьяна Толстая родилась в очень известной литературной семье. Её дед по отцовской линии Алексей Николаевич Толстой, бабушка по отцовской линии — Наталья Толстая-Крандиевская была известной поэтессой. Прадед с материнской стороны Борис Михайлович Шапиров — военный врач, деятель Красного креста, лейб-медик Николая II, действительный тайный советник
48386. Экономическая оценка инвестиций, введение в проектный анализ 667.23 KB
  Материальные инвестиции - движимое и недвижимо имущество приобретенное или построенное до начала реализационного проекта. инвестиции пакеты акций налоговые льготы налоги Объект применения Материальные в имущество финансовые в финансовое имущество нематериальные в исследования и разработки подготовку кадров и тд Назначение На основание проекта неттоинвестиции на расширение проекта экстенсивные инвестиции реинвестиции на замену модернизацию диверсификацию на обеспечение выживаемости предприятия бруттоинвестиции...
48387. УЧАСТИЕ В ЛЕЧЕБНО-ДИАГНОСТИЧЕСКОМ И РЕАБИЛИТАЦИОННОМ ПРОЦЕССАХ 189.57 KB
  Забелин в своих трудах описал правила вскармливания ребенка грудью и показал значение грудного вскармливания для развития здорового ребенка. Была разработана государственная программа улучшения здоровья детей которая содержит следующие приоритетные направления: Улучшение качества жизни ребенка создание условий наиболее полного использования жизненного потенциала физического интеллектуального и эмоционального. Систематическое наблюдение за развитием ребенка. Совершенствование системы охраны здоровья матери и ребенка.