Чтение онлайн

на главную - закладки

Жанры

Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С

Пак Дэниэл Дж.

Шрифт:

В проекте используется двигатель постоянного тока с постоянным магнитом, выпускаемый компанией Electro-Craft Corporation и оптический кодер [11]. Двигатель имеет следующие характеристики:

• Постоянное питающее напряжение: 12 В;

• Скорость на холостом ходу: 2500 об/мин при 12 В;

• Пусковой ток: 2 А;

• Ток холостого хода: 370 мА;

• Ток при умеренной нагрузке: 600 мА;

• Ток останова: 4 А;

• Двигатель имеет один канал оптического кодера (Servo-Tek # PMBX-60-05).

Кодер формирует 60 ТТЛ-совместимых импульсов за один оборот двигателя.

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

1. Как

контролировать скорость двигателя?

2. Каким образом регулировать напряжение питания двигателя, чтобы изменять его скорость?

3. Микроконтроллер 68HC12 питается от постоянного напряжения в 5 В при очень малом выходном токе источника. Как управлять с его помощью двигателем с высоким рабочим током, питающимся от постоянного напряжения в 12 В?

4. Как можно совместить управление скоростью двигателя с выполнением других задач, стоящие перед системой?

5. Какие системы, встроенные в 68HC12, должны использоваться, чтобы выполнить эту задачу?

Как и прежде, мы обратимся сначала к нашему «сундучку инструментов», чтобы выяснить, какие инструментальные средства мы уже использовали в проектах и какие придется разрабатывать. Давайте сделаем это одновременно с рассмотрением каждого из сформулированных выше вопросов. При обсуждении воспользуемся схемой регулирования частоты вращения двигателя, представленной на рис. 7.15.

Рис. 7.15. Схема стабилизации скорости вращения двигателя

1. Как контролировать скорость двигателя? Как было упомянуто, мы используем для измерения скорости оптический кодер, формирующий 60 импульсов за оборот двигателя.

Подсчитав число импульсов на фиксированном временном интервале, можно определить скорость двигателя. Число импульсов, появляющихся внутри данного временного интервала, можно измерить, используя систему прерываний МК 68HC12 в режиме реального времени (RTI) и аккумулятор импульсов (PA). Обе эти системы обсуждались в главе 4. Как мы уже упоминали, система RTI генерирует прерывания через равные временные интервалы, определенные пользователем, чтобы «напоминать» МК о необходимости периодически выполнять задачу стабилизации, а аккумулятор PA может быть конфигурирован, чтобы считать импульсы. Объединив эти системы, мы сможем подсчитать число импульсов оптического кодера, появляющихся внутри данного временного интервала и, затем вычислить скорость вращения двигателя в оборотах в минуту.

Рассмотрим конкретный пример. Предположим, что мы конфигурировали RTI на прерывание через каждые 32.768 мс, и в течение этого интервала, PA зафиксировал появление 52 импульсов. Какова будет при этом скорость вращения двигателя в оборотах в минуту? Чтобы вычислить необходимо выполнить следующий перевод единиц измерения:

(52 импульса/32.768 мс) (1 об/60 импульсов) (1,000 мс/1 секунда) (60 с/1 мин) = 1,586 об/мин

2. Каким образом регулировать напряжение питания двигателя, чтобы изменять его скорость? В главе 4 мы обсуждали концепцию широтно-импульсной модуляции (ШИМ).

Было показано, что среднее значение напряжения на двигателе изменяется при изменении коэффициента заполнения питающего его импульсного напряжения. Коэффициент заполнения определяется как отношение времени включенного состояния ключа к периоду переключения.

Если мы используем ШИМ, то сможем изменять питающее напряжение и, как следствие, скорость двигателя. Примем для простоты, что скорость двигателя линейно связана с питающим напряжением. Проверим это предположение экспериментально. Сигналы ШИМ могут быть сформированы за счет функции сравнения таймера (для всех моделей МК 68HC12) или с помощью широтно-импульсных модуляторов (только для B32 и для всех МК семейства HCS12). Используем модуль ШИМ микроконтролеров B32, который обсуждался в главе 4. Можно вспомнить также, что мы уже использовали ШИМ в настоящей главе, чтобы генерировать сигналы управления двигателем робота, проходящего через лабиринт.

3. Микроконтроллер 68HC12 питается от постоянного напряжения в 5 В при очень малом выходном токе источника. Как управлять с его помощью двигателем с высоким рабочим током, питающимся от постоянного напряжения в 12 В? В главе 5, мы обсуждали, как двигатель может управляться от 68HC12 с использованием силовых полупроводниковых ключей. Сигнал управления ШИМ подается на затвор МОП-транзистора. Двигатель подключен между полюсом напряжения питания и стоком МОП-транзистора, как показано на рис.7.15. Для этого конкретного проекта, мы используем мощный МОП-транзистор IRF530N HEXFET компании International Rectifier. Он выпускается в корпусе TO-220AB с тремя выводами и рассчитан на напряжения переключения в 100 В и рабочие токи в 17 А. Внимание!: Не забудьте включить обратный диод параллельно двигателю.

4. Как можно контролировать скорость двигателя и одновременно выполнять другие задачи, стоящие перед системой? Если мы будем использовать обычную последовательную обработку данных, наш процессор будет постоянно привязан к операциям контроля скорости двигателя, регулирования его питающего напряжения и отображения текущего значения скорости на ЖК индикаторе. Однако, как мы упомянули в ответе на вопрос 1, мы используем RTI систему, чтобы реализовать задачи, связанные с этим управлением, один раз в 33 мс. Между этими периодическими прерываниями, МК может выполнять другие задачи. Концепция периодических прерываний для управления двигателем иллюстрируется на рис. 7.16. Мы исследуем связанные с ней понятия в следующей главе.

Рис. 7.16. Программа управления двигателем в режиме прерываний

5. Какие подсистемы, встроенные в 68HC12, должны быть использованы, чтобы выполнить эту задачу? На этот вопрос мы в сущности уже ответили. Однако для завершенности обсуждения составим список подсистем необходимых для выполнения проекта:

• Модуль ШИМ;

• Модуль меток реального времени;

• Счетчик внешних событий (Аккумулятор импульсов);

• Силовой коммутатор для управления двигателем;

• Оптический кодер;

• Жидкокристаллический (ЖК) индикатор.

 7.4.2. Немного теории

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

Поделиться:
Популярные книги

Свадьба по приказу, или Моя непокорная княжна

Чернованова Валерия Михайловна
Любовные романы:
любовно-фантастические романы
5.57
рейтинг книги
Свадьба по приказу, или Моя непокорная княжна

Сборник коротких эротических рассказов

Коллектив авторов
Любовные романы:
эро литература
love action
7.25
рейтинг книги
Сборник коротких эротических рассказов

Отец моего жениха

Салах Алайна
Любовные романы:
современные любовные романы
7.79
рейтинг книги
Отец моего жениха

Вадбольский

Никитин Юрий Александрович
1. Вадбольский
Фантастика:
попаданцы
5.00
рейтинг книги
Вадбольский

Бастард Императора. Том 7

Орлов Андрей Юрьевич
7. Бастард Императора
Фантастика:
городское фэнтези
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Бастард Императора. Том 7

Повелитель механического легиона. Том VIII

Лисицин Евгений
8. Повелитель механического легиона
Фантастика:
технофэнтези
аниме
фэнтези
5.00
рейтинг книги
Повелитель механического легиона. Том VIII

В зоне особого внимания

Иванов Дмитрий
12. Девяностые
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
В зоне особого внимания

Таня Гроттер и магический контрабас

Емец Дмитрий Александрович
1. Таня Гроттер
Фантастика:
фэнтези
8.52
рейтинг книги
Таня Гроттер и магический контрабас

Бастард Императора. Том 2

Орлов Андрей Юрьевич
2. Бастард Императора
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Бастард Императора. Том 2

Кодекс Крови. Книга ХI

Борзых М.
11. РОС: Кодекс Крови
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Кодекс Крови. Книга ХI

Третий

INDIGO
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
Третий

Возвышение Меркурия. Книга 16

Кронос Александр
16. Меркурий
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Возвышение Меркурия. Книга 16

Идеальный мир для Лекаря 9

Сапфир Олег
9. Лекарь
Фантастика:
боевая фантастика
юмористическое фэнтези
6.00
рейтинг книги
Идеальный мир для Лекаря 9

Потусторонний. Книга 1

Погуляй Юрий Александрович
1. Господин Артемьев
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Потусторонний. Книга 1