Управління малопотужними двигунами
Хочу представити вам свою скромну роботу. Взагалі пристрій задумувався для управління двигунами моторизованого об'єктива за допомогою подачі команд з комп'ютера у форматі 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 |
Прикреплені файли:
- files.rar (1466 Кб)