Методические указания по выполнению работы. Двигатель постоянного тока (ДПТ) является одним из широко используемых элементов современных система автоматического управления

Двигатель постоянного тока (ДПТ) является одним из широко используемых элементов современных система автоматического управления. Рассматриваемый электродвигатель имеет возбуждение на постоянных магнитах и встроенный редуктор.

ШИМ (PWM − Pulse Width Modulation) − это способ кодирования аналогового сигнала путем изменения ширины прямоугольных импульсов заданной частоты. Скважность импульсов − это отношение длительности импульса к периоду сигнала.

Программируемый объект управляется по каналу B 16-битного таймера/счетчика 1, генерирующего ШИМ сигнал. Полярность подаваемого на двигатель напряжения, задающая направление вращения, определяется подачей 0 или 1 на 4-ый разряд порта G. Структура управляющих регистров используемого таймера/счетчика показана на рис. 3.28.

 
TCCR1A COM1 A1 COM1 A0 COM1 B1 COM1 B0 COM1 C1 COM1 C0 WGM WGM
Чт./запись R/W R/W R/W R/W R/W R/W R/W R/W
Исх. значение

 

 
TCCR1B ICNC1 ICES1 - WGM13 WGM12 CS12 CS11 CS10
Чт./запись R/W R/W R R/W R/W R/W R/W R/W
Исх. значение

 

Рис. 3.28. Управляющие регистры таймера/счетчика 1

Разряды 7 и 6 регистра TCCR1A − COM1A1 и COM1A0 (режим формирования выходного сигнала канала A), 5 и 4 − COM1B1 и COM1B0 (режим формирования выходного сигнала канала B), 3 и 2 − COM1С1 и COM1С0 (режим формирования выходного сигнала канала С) задают тип выходного сигнала на выводах OC1A, OC1B и OC1C соответственно.

Если один или оба бита COM1A1 и COM1A0 равны 1, то вывод OC1A переходит к выполнению альтернативной функции, запрещая его работу как обычного порта ввода-вывода. Аналогичные изменения происходят с выводами OC1B и OC1C во время записи 1 в один из битов COM1B1, COM1B0 и COM1C1, COM1C0 соответственно. Однако необходимо учитывать, что остается влияние на работу данных выводов состояния регистра направления данных (DDR) − в соответствующих разрядах этого регистра должно быть задано выходное направление для выводов OC1A, OC1B или OC1C.

Если выбрано подключение сигналов OC1A, OC1B или OC1C к выводам МК, то назначение бит COM1x1, COM1x0 определяется выбранным с помощью битов WGM13:0 режима работы таймера счетчика. В таблице 3.13 показано назначение битов COM1x1, COM1x0, когда битами WGM13:0 выбран режим сброса при совпадении или нормальный режим, то есть − режимы без ШИМ.

Таблица 3.13

COM11 COM10 Назначение в зависимости от режима
Нормальный и сброс при совпадении Быстрая ШИМ ШИМ с фазовой коррекцией
Функция обычного порта ввода/вывода. OC1 отключен
Инвертирование OC1 при каждом совпадении Зарезервировано Зарезервировано
Сброс OC1 = 0 при каждом совпадении OC1 = 0 при совпадении, OC1 = 1 по достижении верхнего предела OC1 = 0 при совпадении во время прямого счета, OC1 = 1 при совпадении во время обратного счета
Установка OC1 = 1 при каждом совпадении OC1 = 1 при совпадении, OC1 = 0 по достижении верхнего предела OC1 = 1 при совпадении во время прямого счета, OC1 = 0 при совпадении во время обратного счета

 

Разряды 1 и 0 − WGM11:0 (режим работы таймера счетчика) в сочетании с битами WGM13:2 из регистра TCCR1B определяют алгоритм счета, источник для задания вершины счета и тип генерируемой формы сигнала. Режимы работы таймера счетчика в зависимости от значения битов регистров приведено в таблице 3.14.

Таблица 3.14

WGM13 WGM12 WGM11 WGM10 Режим работы таймера счетчика Верхний предел
Нормальный 0xFFFF
8-ми разрядная ШИМ с фазовой коррекцией 0x00FF
9-ти разрядная ШИМ с фазовой коррекцией 0x01FF
10-ти разрядная ШИМ с фазовой коррекцией 0x03FF
8-ми разрядная быстрая ШИМ 0x00FF
9-ти разрядная быстрая ШИМ 0x01FF
10-ти разрядная быстрая ШИМ 0x03FF

 

Разряды 2, 1 и 0 регистра TCCR1B – CS02:01:00 (Настройка частоты тактирования таймера) определяют различные тактовые частоты, кратные частоте кварцевого резонатора. В таблице 3.15 приведены зависимости для формирования частоты тактирования.

 

Таблица 3.15

CS12 CS11 CS10 Описание
Таймер 1 остановлен
Без предделителя fT1 = fCPU
С предделителем fT1 = fCPU /8
С предделителем fT1 = fCPU /32
С предделителем fT1 = fCPU /64
С предделителем fT1 = fCPU /128
С предделителем fT1 = fCPU /256
С предделителем fT1 = fCPU /1024

Варианты заданий

В соответствии с вариантом задания, представленном в табл. 3.16, составьте программу управления ДПТ для реализации заданного режима ШИМ и графика изменения скорости вращения (максимальная скорость достигается в пике графика).

Таблица 3.16

Вариант задания График изменения скорости вращения Режим ШИМ
8-разрядная быстрая ШИМ
8-разрядная ШИМ с фазовой коррекцией
10-разрядная быстрая ШИМ
10-разрядная ШИМ с фазовой коррекцией
9-разрядная быстрая ШИМ
9-разрядная ШИМ с фазовой коррекцией
10-разрядная быстрая ШИМ
10-разрядная ШИМ с фазовой коррекцией
8-разрядная быстрая ШИМ
8-разрядная ШИМ с фазовой коррекцией
9-разрядная быстрая ШИМ
9-разрядная ШИМ с фазовой коррекцией