Драйвер двигателя ULN2003: различия между версиями
(Скоро доправлю) |
Нет описания правки |
||
(не показано 8 промежуточных версий 1 участника) | |||
Строка 22: | Строка 22: | ||
== Контакты драйвера == | == Контакты драйвера == | ||
[[Файл:Схема ULN2003.jpg|мини| | [[Файл:Схема ULN2003.jpg|мини|354x354px|схема выводов ULN2003]] | ||
* '''1B,2B,3B,4B,5B,6B,7B''' – Входы от 1 до 7, подключенные к цепи базы составного транзистора; | * '''1B,2B,3B,4B,5B,6B,7B''' – Входы от 1 до 7, подключенные к цепи базы составного транзистора; | ||
* '''1C,2C,3C,4C,5C,6C,7C''' – Выходы от 1 до 7, подключенные к коллектору составного транзистора | * '''1C,2C,3C,4C,5C,6C,7C''' – Выходы от 1 до 7, подключенные к коллектору составного транзистора | ||
* '''COM''' – Общий катодный узел для диодов в цепи обратной связи(обязателен для индуктивных нагрузок); | * '''COM''' – Общий катодный узел для диодов в цепи обратной связи (обязателен для индуктивных нагрузок); | ||
* '''E''' – Общий для всех ключей эмиттер (обычно подключается к земле). | *'''E''' – Общий для всех ключей эмиттер (обычно подключается к земле). | ||
Строка 37: | Строка 37: | ||
==Об устройстве драйвера== | |||
== Об устройстве драйвера == | [[Файл:Изображение 2021-06-27 140841.png|мини|Структурная схема ULN2003]] | ||
Краткое описание ULN2003a. Микросхема ULN2003a — это транзисторная сборка Дарлингтона с выходными ключами повышенной мощности, имеющая на выходах защитные диоды, которые предназначены для защиты управляющих электрических цепей от обратного выброса напряжения от индуктивной нагрузки. | Краткое описание ULN2003a. Микросхема ULN2003a — это транзисторная сборка Дарлингтона с выходными ключами повышенной мощности, имеющая на выходах защитные диоды, которые предназначены для защиты управляющих электрических цепей от обратного выброса напряжения от индуктивной нагрузки. | ||
Каждый канал (пара Дарлингтона) в ULN2003 рассчитан на нагрузку 500 мА и выдерживает максимальный ток до 600 мА. Входы и выходы расположены в корпусе микросхемы друг напротив друга, что значительно облегчает разводку печатной платы. | Каждый канал (пара Дарлингтона) в ULN2003 рассчитан на нагрузку 500 мА и выдерживает максимальный ток до 600 мА. Входы и выходы расположены в корпусе микросхемы друг напротив друга, что значительно облегчает разводку печатной платы. | ||
[[Файл:Изображение 2021-06-27 141115.png|центр|мини|522x522px|Принципиальная схема ULN2003]] | |||
ULN2003 | ==Подключение драйвера ULN2003 к Arduino uno== | ||
В данном примере используeтся драйвер ULN2003, Arduino UNO R3 и двигатель 28BYJ-48-5V.[[Файл:Подключение драйвера ULN2003 к Arduino uno.jpg|мини|Подключение драйвера ULN2003 к Arduino uno|334x334px|альт=|без]] | |||
==Программа для драйвера мотора ULN2003== | |||
Код для управления шаговым мотором через драйвер ULN2003 | |||
<syntaxhighlight lang="c"> | |||
// подключение библиотеки | |||
#include <AccelStepper.h> | |||
// создаем экземпляр AccelStepper | |||
#define IN1 8 | |||
#define IN2 9 | |||
#define IN3 10 | |||
#define IN4 11 | |||
AccelStepper s28BYJ-48(8, IN1, IN3, IN2, IN4); | |||
void setup(){ | |||
s28BYJ-48.setMaxSpeed(900.0); | |||
s28BYJ-48.setAcceleration(100.0); | |||
s28BYJ-48.setSpeed(200); | |||
s28BYJ-48.moveTo(2000); | |||
} | |||
== | void loop(){ | ||
// Изменяем направление, если пройдено заданное число шагов | |||
if(s28BYJ-48.distanceToGo()==0) | |||
s28BYJ-48.moveTo(-stepper1.currentPosition()); | |||
s28BYJ-48.run(); | |||
} | |||
</syntaxhighlight> |
Текущая версия от 21:45, 11 мая 2022
ULN2003 — это универсальная интегральная микросхема, состоящая из 7 идентичных и независимых драйверов, которые позволяют управлять с помощью микроконтроллера реле, небольшим двигателем постоянного тока, шаговым двигателем, низковольтными лампами или светодиодной лентой.
Характеристики драйвера ULN2003.
- размеры платы – 32х35 мм;
- межосевые размеры платы – 30х27 мм;
- напряжение питания – 5-12В;
- управляющее напряжение – 5В;
- вес – 8 г;
- номинальный ток коллектора каждого ключа – 0,5А;
- наличие светодиодной индикации фаз;
- вход адаптирован к различным видам логики.
Контакты драйвера
- 1B,2B,3B,4B,5B,6B,7B – Входы от 1 до 7, подключенные к цепи базы составного транзистора;
- 1C,2C,3C,4C,5C,6C,7C – Выходы от 1 до 7, подключенные к коллектору составного транзистора
- COM – Общий катодный узел для диодов в цепи обратной связи (обязателен для индуктивных нагрузок);
- E – Общий для всех ключей эмиттер (обычно подключается к земле).
Об устройстве драйвера
Краткое описание ULN2003a. Микросхема ULN2003a — это транзисторная сборка Дарлингтона с выходными ключами повышенной мощности, имеющая на выходах защитные диоды, которые предназначены для защиты управляющих электрических цепей от обратного выброса напряжения от индуктивной нагрузки.
Каждый канал (пара Дарлингтона) в ULN2003 рассчитан на нагрузку 500 мА и выдерживает максимальный ток до 600 мА. Входы и выходы расположены в корпусе микросхемы друг напротив друга, что значительно облегчает разводку печатной платы.
Подключение драйвера ULN2003 к Arduino uno
В данном примере используeтся драйвер ULN2003, Arduino UNO R3 и двигатель 28BYJ-48-5V.
Программа для драйвера мотора ULN2003
Код для управления шаговым мотором через драйвер ULN2003
// подключение библиотеки #include <AccelStepper.h> // создаем экземпляр AccelStepper #define IN1 8 #define IN2 9 #define IN3 10 #define IN4 11 AccelStepper s28BYJ-48(8, IN1, IN3, IN2, IN4); void setup(){ s28BYJ-48.setMaxSpeed(900.0); s28BYJ-48.setAcceleration(100.0); s28BYJ-48.setSpeed(200); s28BYJ-48.moveTo(2000); } void loop(){ // Изменяем направление, если пройдено заданное число шагов if(s28BYJ-48.distanceToGo()==0) s28BYJ-48.moveTo(-stepper1.currentPosition()); s28BYJ-48.run(); }