Общие сведения
Привод постоянного вращения DS04-NFC — привод с углом вращения 360 градусов и усилием 5.5 кг•см.
Может быть использован при построении роботов, различных механизмов, где не требуется отслеживать угол поворота и требуется привод, способный совершать полный оборот.
Характеристики
- Питание: 4.8-6В;
- Потребляемый ток: до 1000мА;
- Диапазон вращения: 360°;
- Скорость вращения без нагрузки при 4,8В: 60° за 0,22с;
- Скорость вращения без нагрузки при 6В: 60° за 0,18с
- Крутящий момент(4.8В): 5.5 кг·см;
- Габаритные размеры: 41х20х40мм;
- Вес: 38г;
Подключение
Для удобства подключения к Arduino воспользуйтесь Multi Servo Shield, Trema Shield, Trema Power Shield, Motor Shield.
- Чёрный — GND;
- Красный провод — 5V;
- Белый провод — Signal, подключается к любому цифровому выводу Arduino;

Подробнее о приводе
Основное отличие привода постоянного вращения от сервопривода в том, что он вращается бесконечно долго в том направлении, которое ему задано, а так же в том, что привод не имеет потенциометра или оптопары, следовательно программно возможно задать только направление и скорость вращения привода.
С точки зрения написания скетчей данным приводом можно управлять с помощью стандартных библиотек, входящих в состав Arduino IDE. Основным же отличием является то, что используется функция Servo.writeMicroseconds(ШИРИНА_ИМПУЛЬСА)
, которая задаёт не угол, а направление и скорость вращения привода:
Функция | Сервопривод постоянного вращения |
---|---|
Servo.writeMicroseconds(1400) | Полный ход в одном направлении |
Servo.writeMicroseconds(1435 - 1555) | Остановка привода |
Servo.writeMicroseconds(1590) | Полный ход в обратном направлении |
Соответственно, задавая промежуточные значения вы можете регулировать скорость вращения привода в ту или другую сторону:
- от 1435 до 1400 — вращение по часовой стрелке, от 0 (1435) до 100% (1400) скорости;
- от 1435 до 1555 — полная остановка привода;
- от 1555 до 1590 — вращение против часовой стрелки, от 0 (1555) до 100% (1590) скорости;
Примеры
Вращение привода со сменой скорости и направления вращения
#include <Servo.h> // Подключаем библиотеку для работы с приводом Servo myservo; // Создаём объект myservo для управления приводом int i, j; // Счётчики в циклах; void setup() { myservo.attach(10); // инициируем работу с приводом, подключенным к 10 цифровому выводу } void loop() { if (j >= 0 && j <= 35) { // Задаём условие, чтобы войти в цикл, где for (i = 1400; i < 1436; i++) { // задаём условие цикла, при котором привод, вращаясь по часовой стрелке, будет постепенно снижать скорость myservo.writeMicroseconds(i); // Задаём значение ширины импульса j++; // Увеличиваем значение переменной на единицу delay(3000); // Задержка 3 секунды } } else if (j > 35 && j <= 70) { // Задаём условие, чтобы войти во второй цикл, где for (i = 1590; i > 1554; i--) { // задаём условие цикла, при котором привод, вращаясь против часовой стрелки, будет постепенно снижать скорость myservo.writeMicroseconds(i); // Задаём значение ширины импульса j++; // Увеличиваем значение переменной на единицу delay(3000); // Задержка 3 секунды } } else { // Чтобы скетч мог бесконечно долго менять условия j = 0; // сбрасываем значение переменной } }
Комплектация
- 1х Привод постоянного вращения DS04-NFC;
- 1х Набор качалок;
- 1х Набор крепежа;