Смекни!
smekni.com

Блок управления двигателем на МК (стр. 3 из 4)

После нажатия клавиши «Старт» происходит преобразования значения индикационных ячеек в двоичный код (1 байт), после чего это значение умножается на 24, что соответствует 24 прорезям диска оптопары (результат 2 байта) и делим 1000000 на это число в результате получается длительность периода импульсов от оптопары для введенного числа оборотов в секунду. После преобразования выполняется функция запуска двигателя которая дает толчок и разрешается прерывание INT1 с оптопары.

В подпрограмме обработки прерывания INT1 проверяется повторное вхождение для этого используется флаг flag. При первом вхождении запускается таймер и происходит выход из подпрограммы обработки прерывания. Во втором вхождении таймер останавливается, запрещается прерывание INT1 и значение таймера (что соответствует периоду импульса) записывается в ячейки dli_i_l и dli_i_h. После чего производится регулирование частоты вращения двигателя, для этого из ячеек dli_l dli_h (введенное значение) вычитается измеренное dli_i_l dli_i_h, если возник перенос значит частота вращения меньше необходимой и двигатель включается (отключается, если переноса нет) установкой кода на портах Р3.4 Р3.5. Комбинация выбирается в зависимости от направления вращения которая определяется битом f_nap. Индикация измеренной частоты вращения происходит через 47 (2f) раз измерения импульсов, это нужно для того чтобы убрать мелькание цифр на индикаторе. Преобразование измеренного значения в частоту вращения двигателя в обр/сек происходит следующим образом: деление 1000000 на измеренное значение, деление на 24, преобразование bin->dec->индикатор. Перед завершением подпрограммы обработки прерывания INT1 производится инициализация регистров и ячеек перед следующим запуском процедуры и разрешается прерывание INT1.

Для настройки таймера и прерывания INT1 используются следующие управляющие слова:

- TMOD=01H – режим работы таймера;

- TCON=04H

- Tr – разряд запуска таймера;

- IEN0 – разрешения прерываний

- 8 разряд – запрет всех прерываний;

- 3 разряд – INT1;

- 1 разряд – INT0 (клавиатура);

6. Методика выполнения лабораторной работы.

6.1.Цель работы.

Приобретение практических навыков в технологии разработки и отладки элементов управляющих систем.

6.2.Описание лабораторной установки.

Лабораторная установка состоит из следующих частей: платы управления ПМК, платы двигателя и блока питания.

Плата двигателя рис.6.1 состоит из трех блоков: блок датчика скорости вращения, блок управления, блок датчика нагрузки. Плата двигателя подключается к разъемам портов ПМК при помощи разъемов. X2 подключается к порту Р3 и служит для соединения: оптопары («Датчик») со входом прерывания INT1, портов Р3.4 Р3.5 с входами блока управления (Упр1 и Упр2). X6 подключается к порту Р6 используя две линии AI6 и AI7 для измерения нагрузки прелагаемой к двигателю с помощью генератора (измерение нагрузки прелагаемой из вне при помощи этой схемы невозможно). Использование двух каналов предусматривается для измерения напряжения двигателя с возможным реверсом когда при вращении в одну сторону измерение происходит с первого канала, а при вращении в другую со второго. Такое распределение получается путем использования делителя напряжения общий конец которого соединен с нулевым проводом и при протекании тока в разных направлениях меняет знак напряжения на концах делителя относительно общего провода на противоположный. Опорное напряжение Uref подается соединением +5В, а нижняя граница (Ugnd) задается соединением с общим.

Рис. 6.1.Схема платы двигателя.

Разъем X3 соединяет схему с блоком питания.

Датчик числа оборотов представляет собой диск, с 24-ю прорезями, жестко закрепленный навалу вращения двигателя. Во время прохождения прорези между оптопарой светодиод VD2 освещает инфракрасным излучением фотоприемник представляющий собой фотодиод VD1. Полупроводниковый фотоприемник уменьшив за счет этого свое сопротивление начинает пропускать ток открывая тем самым транзистор VT1 с коллектора которого снимаются прямоугольные импульсы.

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

6.3.Исходные данные.

1. Комплекс отладочный: плата, ПО FDSAB;

2. Установка управления двигателем;

3. Возможность установки частоты вращения с клавиатуры;

4. Стабилизация частоты;

5. Импульсы с датчика поступают на вход прерывания INT1;

6. Управление двигателем осуществляется выдачей кода на порты Р3.4 и Р3.5 в соответствии с таблицей 6.1;

7. Максимальная скорость вращения двигателя 110 обр1/сек.;

8. Число прорезей диска вращения датчика составляет 24 шт.

9. Мощность двигателя 10 Вт;

10. Входы для измерения нагрузки поступают на АЦП каналы AI6 и AI7. VAREF=5B.

Таблица 6.1

Режим работы IN1 IN2 OUT1 OUT2
Тормоз 1 1 L L
Движ/Рев 0 1 L H
Рев/Движ 1 0 H L
Стоп 0 0 ¥ ¥

6.4.Домашние задание.

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

6.5.Рекомендации по выполнению.

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

1) Введенную частоту вращения (обр/сек) умножить на число прорезей в диске (24);

2) 1000000 разделить на полученное число, в результате чего получится длительность одного периода в мкс.

Для обратного преобразования:

1) 1000000 разделить на длительность периода;

2) разделить на 24.

При делении 1000000 (3 байта) на 2 байта возможно использование стандартной процедуры деления 4-х байтного числа на 2-й байтное. Но для более быстрого деления (а значит и увеличения скорости измерения) рекомендуется уменьшить длительность деления, производя деление 6-ти тетрад (1000000) на 3-и тетрады (максимально возможное число 4095), для этого необходимо:

1) перед процедурой деления сдвинуть делитель на четыре разряда влево;

2) продолжать деление с учетом сдвинутого делителя, т. е. деление должно длится на четыре цикла меньше;

3) после процедуры деления сдвинуть частное на четыре разряда влево.

Для измерения длительности периода импульсов необходимо в качестве счетчика использовать один из таймеров в режиме таймера. Подача на вход прерывания INT1 импульсов вызывает ПП обработки прерывания в которой необходимо следить за первым и вторым входом в ПП. При первом вхождении включить таймер, а при втором вхождении считать состояние таймера, что и будет являться длительностью периода импульса.

6.6.Последовательность выполнения работы.

1. Набрать текст программы;

2. Откомпилировать программу;

3. Запустить отладчик FDSAB;

4. Загрузить в память bin файл, запустить программу на выполнение;

5. Снять зависимость изменения частоты вращения от подаваемой нагрузки;

6. Сделать вывод о проделанной работе;

7. Составить отчет.

Внимание! При приложении больших усилий торможения двигателя он может остановится что приведет к резкому увеличению тока в выходной цепи ИМС управления и возможно выход ее из строя.

7. Заключение.

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

При разработке дипломного проекта было опробовано два способа автоматического регулирования частоты вращения двигателя: измерение частоты (за определенное время подсчитывалось количество импульсов от датчика), измерение периода (измерялась длительность периода импульсов поступающих от датчика). Первый способ измерения частоты показал плохую стабильность частоты вращения регулирующей системы, т. к. из-за большой длительности измерения (при уменьшении длительности измерения увеличивалась погрешность) и быстрого изменения характера нагрузки система не успевала отслеживать это изменение, а следовательно и регулировать входную величину. Второй способ регулирования с измерением длительности периода показал хорошую стабильность автоматической системы управления. Это достигается увеличение числа прорезей на вращающемся диске оптопары, измерение длится короткое время, за которое система автоматического регулирования не успевает отклониться от установленного значения. Небольшое отклонение частоты вращения за короткий промежуток времени (времени измерения одного периода) сразу контролируется и происходит модификация выходного параметра.