Управління малопотужними двигунами

Хочу представити вам свою скромну роботу. Взагалі пристрій задумувався для управління двигунами моторизованого об'єктива за допомогою подачі команд з комп'ютера у форматі Pelco-d. Крім дистанційного управління по USB/RS-485 є можливість управління за допомогою кнопок на платі. Також на платі присутній датчик температури DS 18B20, який видає температуру за командою.

В схемі використовуються драйвери моторів DRV8848. Вони можуть працювати в широкому діапазоні напруг від 4 до 18 вольт і можуть видавати до двох ампер при 12 вольт живлення. Саме управління побудоване на Atmega8.

Принципова схема

Ось повна схема пристрою. Також будуть наведені файли в pdf та файли Altium Designer.

Плата з боку BOT.

З боку TOP.

Ось практично готовий пристрій. На фото не вистачає датчика температури. Потім я, звичайно, його поставив, але фото забув зробити.

Замість мікросхеми SN65HVD11DR можна використовувати MAX485 або будь-який аналог, враховуючи напругу живлення. У мене вона 3,3 вольта.

На платі присутні 4 резистори з нульовим опором. Вони потрібні для вибору джерела управління платою. R4/R5 для управління по RS485 - му інтерфейсу, а R10/R11 по USB - інтерфейсу.

Управління двигунами відбувається наступним чином: при надходженні певної команди мікроконтролер спочатку видає одиницю на один з виходів ENABLE. Це виводить відповідний драйвер двигуна з сплячого стану. Потім на лінії AIN1, AIN2, BIN1, BIN2 видається команда для обертання в ту чи іншу сторону обмоток двигуна.

Докладна інструкція викладена окремим файлом, там все розписано, які команди подавати і для чого.

Плата розведена на чотирьох шарах, тому вручну повторити не вийде. Але в архіві з файлами є і готові гербери для замовлення на виробництво.

Чесно кажучи, з мікроконтролерами раніше я ніколи не працював, тому сама програма деяким може здатися досить корявою. Основну частину логіки я писав сам, деякі шматки програми, зокрема обробку ds 18b20, були взяті з просторів інтернету.

Список радіоелементів

Позначення Тип Номінал Кількість Примітка
U1 ІС RS-422/RS-485 інтерфейсів
SN65HVD11
1
U2 МК AVR 8-біт
ATmega8
1
U3 Датчик температури
DS18B20
1
U4 ІС USB інтерфейсу
FT232BM
1
U5 Лінійний регулятор
TPS79601
1
U6 Лінійний регулятор
UA78M33
1
U7-U9 Драйвер моторів DRV8848 3
D1 Випрямляльний діод
1N4002
1
R1, R7 Резистор
560 Ом
2
R3 Резистор
120 Ом
1
R4, R5, R10, R11 Резистор 0 4
C1, C3, C4, C7, C8, C9, C10, C11, C13, C15, C16, C18 Конденсатор 0.1 мкФ 12
C2 Конденсатор 22мкФ 100В 1
C5, C6, C14 Конденсатор 18 пФ 3
C12 Конденсатор 10 нФ 1
C17 Конденсатор 2.2 мкФ 1
C19 Конденсатор 0.33 мкФ 1
R8, R9, R13, R14, R15, R16, R17, R19, R20, R22, R23, R24 Резистор
10 кОм
12
R12 Резистор
4.7 кОм
1
R18 Резистор
51 кОм
1
R21 Резистор
30.1 кОм
1
S1, S2, S3, S4, S5, S6 Кнопка SW-PB 6
SW1 Кнопка INT-1100E 1
Y1 Кварцовий резонатор 9.216 МГц 1

Прикреплені файли:

Top