Устройство позволяет

  1. Поворачивать ротор шагового мотора на предварительно установленное количество шанов
  2. Измерять шаговый угол шагового мотора
  3. Измерять скорость  вращения ротора в об/мин
  4. Поворачивать ротор сервомотора от 0 до 180 град.
  5. Измерять ток потребления и напряжение питания моторов

Схема приведена ниже

Устройство реализовано на Ардуино Нано. Информация отображается на 4-х строчном 20-ти символьном LCD дисплее, подключенном к Ардуино по I2C. Биполярный двигатель подключается к драйверу L298. Драйвер подключен к  выходам А0 - А3 Ардуино. Для управления биполярным мотором выходы А1, А3 Ардуино подключены к драйверу через инверторы U1A, U1B. Для измерения тока потребления шагового биполярного двигателя напряжения с выходов SENSA, SENSB через резисторы R3, R4 и конденсатор С1 поступает на аналоговый вход А6 Ардуино.

Драйвер униполярного двигателя реализован на мощных полевых MOSFET транзисторах Q1 - Q4. Для измерения тока потребления шагового униполярного двигателя напряжение с резистора R7 и конденсатора С3 поступает также на аналоговый вход А6. Затворы транзисторов Q1 - Q4 подключены к выходам А0 - А3 Ардуино.

После подачи питания +12В на разръёмы J7, J8 на дисплее появляется информация

 

 

  1. BIP - биполярный мотор, UNI - униполярный,  500мА - максимальный ток, 12.0В -максимальное напр. Тип устанавливается нажатием кнопки BIP/UNI/SERVO матричной клавиатуры.
  2. 200ST MAX - максимально установленное кол. шагов, при прошествии которых двигатель останавливается, SP 10.0PRM - установленная скорость вращения ротора в об/мин
  3. STEP 36 - количество пройденных шагов мотора. UP, DOWN - направление вперед, назад. Устанавливается кнопкой DIR, 4S - пройденное время 10.0 - угол шага
  4. 53мА - потребляемый ток, 11.0В - напряжение на обмотках мотора, 1PR - количество оборотов ротора

Для считывания количества оборотов применен инфракрасный датчик.

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

В режиме тестирования сервомотора на дисплее включается информация

 

  1. SERVO - режим тестирования сервомотора, 500мА - максимальный ток, 12.0В - максимальное напряжение
  2. ANGLE 30 - угол поворота 30град

Угол поворота устанавливается кнопками 7, 8 на клавиатуре с дискретностью 30 градусов. Для контроля угла поворота сервомотора применяется специальный циферблат с указателем

Питание устройства 12В 1А подключается к разъёмам J7, J8. Питание моторов от 5 до 35В подключается к J1,J2.

 

Автор: https://radiosch.eu

Перечень элементов, рабочий и демо проекты в FLPROG со скетчем для Ардуино, проект в протеусе, чертежи печатных плат в EagleCAD с герберфайлами для заказа в архиве

Поддержите автора



Advertise here