Unlimited HostingFree Joomla TemplatesProfessional Joomla Templates
Freeduino Mega+ v.1.22
Freeduino Mega+ v.1.22 - Freeduino Mega+ v.1.22 - аналог Seeeduino Mega v.1.21. Эта плата, полностью совместимая с платами Arduino Mega и Seeeduino Mega. Совместима с большинством модулей расширения (shield), разработанных для Arduino Duemilanove or Diecimila, а также со всеми мо
Подробнее
Комбо-плата с GPS, GSM и microSD
Комбо-плата с GPS, GSM и microSD - Плата с GSM-, GPS-модулями и слотом для карт памяти microSD.
Подробнее
2-колесная платформа для робота
2-колесная платформа для робота - Двухколесная платформа с двигателями для роботов на базе Arduino
Подробнее
PDFPrintE-mail
MIDI ShieldPLS-40 - вилка штыревая.

Motor Shield v2
View Full-Size Image


Motor Shield v2

Price: 1 000.00 руб

Ask a question about this product

Motor Shield v2 (далее M–Shield) – силовой модуль управления двигателями для микроконтроллеров серии Freeduino/Arduino. Модуль предназначен для упрощения разработки моторизированных и робототехнических устройств и основан на первой версии M–Shield от Adafruit Industries (www.ladyada.net).

Модуль подключается к Freeduino с помощью установленных на нем разъемов.

Технические возможности M–Shield позволяют реализовать разнообразные проекты, связанные с подключением и управлением слаботочными двигателями следующих типов:

* четырёх двигателей постоянного тока (ДПТ - DC motors);
* двух шаговых двигателей униполярных или биполярных с единичной или двойной обмоткой (ШД - stepper motors);
* двух 5В сервоприводов (СП - servos).

Возможны следующие комбинации подключаемых к M–shield двигателей:

  • 2 СП + 4 ДПТ;
  • 2 СП + 2 ШД;
  • 2 СП + комбинации ШД и ДПТ, например: возможен вариант замены 1 ШД на 2 ДПТ или наоборот.

Технические характеристики

  • напряжение питания: +7...+ 24 В;
  • количество силовых каналов: 4;
  • максимально-продолжительный ток каждого канала: 0,6 А;
  • напряжение питания сервоприводов: 5 В;
  • возможность реверса каждого двигателя;
  • возможность независимого управления каждым каналом;
  • модуль полностью совместим со всеми известными моделями Freeduino/Arduino: Max Serial, Through-Hole, Diecimila, 2009, Duemilanove, а также Arduino Mega.

Принципиальная схема по лицензии Creative Commons Attribution-ShareAlike 2.5

 

Драйвер двигателей L293D

Управление двигателями осуществляется двумя микросхемами L293D. Каждая микросхема – это четырёхканальный драйвер со встроенными обратными диодами для защиты микросхемы от перенапряжений при работе на индуктивную нагрузку.

Драйверы управляются парами, что позволяет реализовать на одной микросхеме два двуполярных канала управления с ШИМ управлением.

Основные характеристики микросхемы:

  • напряжение питания: +4,5... +36 В;
  • максимальный продолжительный ток в каждом канале: 0,6 А;
  • максимальный пиковый (<100 мс) неповторяющийся ток в каждом канале: 1,2 А;
  • защита от перегрева.

Более полное описание можно найти в оригинальной документации производителя:

http://focus.ti.com/lit/ds/symlink/l293d.pdf

http://www.freeduino.ru/arduino/files/l293d.pdf

Питание.

В принципиальной электрической схеме M-Shield существуют две отдельные цепи питающего напряжения: слаботочная и силовая.

Питание слаботочной сигнальной цепи, а также подключаемых сервомоторов осуществляется от стабилизированного +5 В источника Freeduino. Недопустимо использовать эту цепь для питания двигателей постоянного тока, т.к. это приведет или к срабатыванию USB предохранителя или перегреву и выходу из строя стабилизатора напряжения +5 В на плате Freeduino.

Выбор источника питания силовой части модуля осуществляется при помощи джампера питания на M-shield: либо от источника внешнего питания +7...+12 В управляющей платы Freeduino, либо от дополнительного источника постоянного напряжения +6...+ 24 В, подключаемого к двум клеммам разъема питания на M-Shield.

В настоящей версии M–Shield v2 верхнее значение напряжения питания ограничено используемыми электролитическими конденсаторами на максимальное напряжение 25 В и может быть увеличено до максимального для микросхемы L293D значения 36 В заменой конденсаторов С7 и С8.

Управление двигателями постоянного тока

Определение параметров двигателя

Убедитесь, что параметры двигателя – номинальное напряжение и ток соответствуют используемому источнику питания и параметрам M-Shield.

Если потребляемый двигателем ток превышает номинальное для драйвера L293D значение в 0,6 А, можно увеличить значение продолжительного тока до 1,2 А путем параллельного подключения двигателя одновременно к двум портам, например к М1 и М2 и составлением соответствующего алгоритма управления.

Кроме того, с целью увеличения допустимой токовой нагрузки в два раза, можно напаять на микросхему L293D «нога к ноге» ещё одну L293D, это позволит управлять более мощными двигателями с максимально-продолжительным током в каждом канале управления до 1,2 А.

Вы также можете использовать две платы M-Shield, установив одну в разъемы другой, и подключив каждый двигатель к одноименным каналам обеих плат.

Установка джампера выбора источника питания

Крайнее левое положение джампера выбора источника питания соответствует подключению внешнего источника питания +6... +24 В силовой части модуля, при этом цепь питания Freeduino/Arduino отключена.

Крайнее правое положение джампера соответствует питанию +7...+12 В от основной платы Freeduino/Arduino.

Перед подключением внешнего источника питания к клеммам M–shield обязательно убедитесь в правильности установки джампера питания, поскольку неверная его установка может привести к замыканию двух источников.

На рисунке приведена схема, поясняющая электрические соединения шин питания основной платы Freeduino/Arduino совместно и модуля M-Shield. 3-й штекер джампера питания не связан ни с одной из электрических цепей и предназначен для предотвращения утери перемычки при её переключении из одного положения в другое.

Подключение двигателей постоянного тока

Расположенные на плате M-Shield 5-контактные клеммники предназначены для подключения двигателей. Центральный контакт каждого клеммника – «земля», двигатели постоянного тока подключаются к крайним парам контактов, обозначенных по номерам каналов M1, M2, M3, M4.

Управление двигателями с помощью библиотеки AFMotor

Существует удобная библиотека, упрощающая работу с модулем M-Shield, скачать которую можно с сайта разработчика, или у нас:

http://www.ladyada.net/make/mshield/download.html

http://www.freeduino.ru/arduino/files/AFMotor-08_12_2009.zip

Как и в большинстве случаев, установка библиотеки сводится к распаковке архива в подпапку hardwarelibraries папки с ПО Arduino.

Для управления двигателями постоянного тока используется класс AF_DCMotor. Рассмотрим его основные методы.

AF_DCMotor – конструктор объекта

Вызов:

AF_DCMotor имя_объекта(номер_канала);

Создает экземпляр класса AF_DCMotor, принимает номер канала После создания объекта можно вызывать его методы.

Метод AF_DCMotor::setSpeed

Вызов:

имя_объекта.setSpeed(скважность)

Задает скважность ШИМ на канале в диапазоне от 0 до 255. Значение 0 соответствует напряжению 0 В на двигателе, значение 255 – полному напряжению питания.

Метод AF_DCMotor:: run

Вызов:

имя_объекта.run(направление)

Задает направление движения двигателя (полярность прикладываемого напряжения). Параметр «направление» может принимать одно из следующих значений:

FORWARD – прямое направление вращения

BACKWARD – обратное направление вращения

RELEASE – остановка двигателя

Пример управления двигателями постоянного тока

Ниже приведен пример простой программы, осуществляющей ступенчатое изменение скорости вращения двигателя с интервалами в 3 секунды в следующей последовательности: +50, +75%, +50%, STOP, -50%, -75%, -50%, STOP. После завершения цикл будет повторяться.

#include //Подключаем заголовочный файл библиотеки

//Создаем объект для двигателя на 1 канале (M1)
AF_DCMotor motor(1);

void setup() {
}

void loop() {
//Задаем направление движение вперед
motor.run(FORWARD);
//Устанавливаем скорость 50%
motor.setSpeed(128);
//пауза 3 секунды - двигатель крутится
delay(3000);
//увеличиваем скорость до 75%, и пауза 3 сек.
motor.setSpeed(192);
delay(3000);
//Снижаем скорость до 50%, и пауза 3 сек.
motor.setSpeed(128);
delay(3000);
//Останавливаем двигатель, и пауза 3 сек.
motor.run(RELEASE);
delay(3000);
//Переключаем направление вращения
//Двигатель начнет вращаться со скоростью 50%
motor.run(BACKWARD);
//пауза 3 секунды - двигатель крутится
delay(3000);
//увеличиваем скорость до 75%, и пауза 3 сек.
motor.setSpeed(192);
delay(3000);
//Снижаем скорость до 50%, и пауза 3 сек.
motor.setSpeed(128);
delay(3000);
//Останавливаем двигатель, и пауза 3 сек.
motor.run(RELEASE);
delay(3000);
}

 


Availability

Usually ships in:

1-2 дня


Customer Reviews:

There are yet no reviews for this product.
Please log in to write a review.