Назад в библиотеку

Регулирование скорости вращения двигателя постоянного тока с применением ПИД-регулятора на основе микроконтроллера Arduino Uno

Авторы: Боряк С.В., Куприянов И.В.
Источник: Научная электронная библиотека Киберленика,

Аннотация

В статье предлагается вариант использования микроконтроллера Arduino Uno для управления скоростью вращения двигателя постоянного тока с использованием ПИД-регулятора и с обратной связью по датчику угла поворота

Ключевые слова: двигатель постоянного тока, микроконтроллер, ПИД-регулятор.

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

На рисунке 1 представлена структурная схема регулирования скорости вращения двигателя постоянного тока.

 Структурная схема регулирования скорости вращения двигателя постоянного тока

Рис. 1 – Структурная схема регулирования скорости вращения двигателя постоянного тока. УК – управляющая команда, МК – микроконтроллер, У – усилитель, Д – двигатель, Р – редуктор, ОУ – объект управления, ДУП – датчик угла поворота

Управляющая команда (УК) представляет собой пакет данных объемом 5 байт, состоящий из пяти чисел, объемом 1 байт каждый. Первое число – резервное, второе – «1» или «0», обозначающее направление вращения двигателя, третье – целая часть величины заданной скорости, четвертое – дробная часть величины заданной скорости, пятое число – контрольная сумма. Управляющая команда подается на вход микроконтроллера Arduino Uno (МК). В микроконтроллере производится обработка входного сигнала ПИД-регулятором. На усилитель (У) подается управляющий сигнал, содержащий сигнал широтно-импульсного модулятора и информацию о величине скорости и её направлении. Сигнал с усилителя подается на двигатель (Д), на валу которого установлен датчик угла поворота (ДУП), выполняющий функцию считывания угла поворота выходного вала. Сигнал с ДУП передается в МК, организуя обратную связь для корректировки управляющего сигнала. Вращение с вала двигателя понижается редуктором и передается на объект управления.

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

В микроконтроллере для вычисления управляющего сигнала имеется алгоритм, основанный на использовании ПИД-регулятора. Управляющая команда передается на вход UART микроконтроллера, сигналы с которого передаются на усилитель на основе микросхемы L298N [1]. ДУП основан на фотодатчиках SDP8304 и ультрафиолетовых светодиодах. Конструкция ДУП имеет две оптопары, позволяющая определить не только угол поворота, но и организовать считывание направления вращения двигателя.

На рисунке 3 представлены экспериментальные данные испытания разработанной системы управления двигателя.

 Блок-схема nRF24L01+

Рис. 2 – Блок-схема nRF24L01+

 Пакет данных Enhanced ShockBurst

Рис. 3 – Пакет данных Enhanced ShockBurst

При изменении скорости двигателя с 0 до 50 см/сек, двигатель имеет переходной процесс длительностью 300 миллисекунд. При увеличении нагрузки на валу двигателя в период с 2200 мс по 5000 мс наблюдается рост управляющего воздействия с целью увеличения крутящего момента на валу двигателя для компенсации внешнего воздействия. Таким образом, в ходе проведенной разработки была получена система с высоким быстродействием, позволяющая управлять двигателем постоянного тока.

Литература

  1. [Электронный ресурс]. – Режим доступа: http://www.alldatasheet.com/, свободный.