Радио - это очень просто!

Шилд мощных (до 30 Ампер) мостовых драйверов электродвигателей VNH2SP30. Модуль RA078

Артикул: RDKT0324
Есть в наличии
619.50 руб
добавить к сравнению перейти к сравнению
Быстрый заказ
  • Описание
  • Отзывы (0)

Monster Moto Shield VNH2SP30 - это усиленная версия Arduino motor shield.
Для увеличения мощности H-мост был заменен с L298 на два полномостовых драйвера VNH2SP30.

Monster Moto Shield VNH2SP30 может управлять двумя высокотоковыми моторами. Питания VIN и выходы имеют утолщенную контактную поверхность, на случай пайки толстых проводов. При использовании платы следует следить за температурным режимом, так как при протекании больших токов плата может весьма существенно нагреваться и даже может требовать принудительного охлаждения.

Характеристики:

• максимальное напряжение: 16В (до 40В в пиках);
• максимальный ток: 14А (пиковый до 30А);
• токовый датчик доступен на аналоговом выводе Arduino;
• максимальная частота управляющего сигнала ШИМ: 20 кГц;
• защита от перегрева;
• защита от слишком слабого и слишком большого напряжения.


Рассмотрим использование Monster Moto Shield VNH2SP30 с платой Arduino.
Нам потребуются следующие детали:
• Плата Arduino Uno с USB-кабелем;
• Monster Motor Shield VNH2SP30;
• 2 двигателя постоянного тока 12 В;
• Блок питания 5.5 - 16 Вольт;
• Провода.

Схема использования пинов Monster Motor Shield VNH2SP30

Шилд мощных (до 30 Ампер) мостовых драйверов электродвигателей VNH2SP30


Шилд мощных (до 30 Ампер) мостовых драйверов электродвигателей VNH2SP30

Назначение пинов в схеме:

A0: включение (1) / выключение (0) двигателя 1;
A1: включение (1) / выключение (0) двигателя 2;
A2: датчик тока для двигателя 1;
A3: датчик тока для двигателя 2;
D7: движение по часовой стрелке (CW) для 1 двигателя;
D8: движение против часовой стрелки (CСW) для двигателя 1;
D4: движение по часовой стрелке (CW) для 2 двигателя;
D9: движение против часовой стрелки (CСW) для двигателя 2;
D5: ШИМ для двигателя 1;
D6: ШИМ для двигателя 2.

И таблица необходимых значений на выводах Arduino для запуска двигателей

Шилд мощных (до 30 Ампер) мостовых драйверов электродвигателей VNH2SP30

Подключаем двигатель 1 к клеммам A1:B1, а двигатель 1 к клеммам A2:B2.

Шилд мощных (до 30 Ампер) мостовых драйверов электродвигателей VNH2SP30


Подключаем блок питания к клеммам питания на Monster Moto Shield.
Загрузим на плату Arduino следующий скетч:

// Константы
#define BRAKE 0
#define CW 1
#define CCW 2
#define CS_THRESHOLD 15 //безопасное значение тока

//MOTOR 1
#define MOTOR_A1_PIN 7
#define MOTOR_B1_PIN 8

//MOTOR 2
#define MOTOR_A2_PIN 4
#define MOTOR_B2_PIN 9

#define PWM_MOTOR_1 5
#define PWM_MOTOR_2 6

#define CURRENT_SEN_1 A2
#define CURRENT_SEN_2 A3

#define EN_PIN_1 A0
#define EN_PIN_2 A1

#define MOTOR_1 0
#define MOTOR_2 1

short usSpeed = 150; // пользовательское значение скорости
unsigned short usMotor_Status = BRAKE;

void setup()
{
pinMode(MOTOR_A1_PIN, OUTPUT);
pinMode(MOTOR_B1_PIN, OUTPUT);

pinMode(MOTOR_A2_PIN, OUTPUT);
pinMode(MOTOR_B2_PIN, OUTPUT);

pinMode(PWM_MOTOR_1, OUTPUT);
pinMode(PWM_MOTOR_2, OUTPUT);

pinMode(CURRENT_SEN_1, OUTPUT);
pinMode(CURRENT_SEN_2, OUTPUT);

pinMode(EN_PIN_1, OUTPUT);
pinMode(EN_PIN_2, OUTPUT);

Serial.begin(9600); // запуск последовательного порта
Serial.println("Begin motor control");
Serial.println();
// Пункты меню для пользователя
Serial.println("Enter number for control option:");
Serial.println("1. STOP");
Serial.println("2. FORWARD");
Serial.println("3. REVERSE");
Serial.println("4. READ CURRENT");
Serial.println("+. INCREASE SPEED");
Serial.println("-. DECREASE SPEED");
Serial.println();
}

void loop()
{
char user_input;
while(Serial.available())
{
user_input = Serial.read();
// Чтение для определения выбора пользователем
// пункта меню
digitalWrite(EN_PIN_1, HIGH);
digitalWrite(EN_PIN_2, HIGH);

if (user_input =="1")
{
Stop();
}
else if(user_input =="2")
{
Forward();
}
else if(user_input =="3")
{
Reverse();
}
else if(user_input =="+")
{
IncreaseSpeed();
}
else if(user_input =="-")
{
DecreaseSpeed();
}
else
{
Serial.println("Invalid option entered.");
}

}
}

void Stop()
{
Serial.println("Stop");
usMotor_Status = BRAKE;
motorGo(MOTOR_1, usMotor_Status, 0);
motorGo(MOTOR_2, usMotor_Status, 0);
}

void Forward()
{
Serial.println("Forward");
usMotor_Status = CW;
motorGo(MOTOR_1, usMotor_Status, usSpeed);
motorGo(MOTOR_2, usMotor_Status, usSpeed);
}

void Reverse()
{
Serial.println("Reverse");
usMotor_Status = CCW;
motorGo(MOTOR_1, usMotor_Status, usSpeed);
motorGo(MOTOR_2, usMotor_Status, usSpeed);
}

void IncreaseSpeed()
{
usSpeed = usSpeed + 10;
if(usSpeed > 255)
{
usSpeed = 255;
}

Serial.print("Speed +: ");
Serial.println(usSpeed);

motorGo(MOTOR_1, usMotor_Status, usSpeed);
motorGo(MOTOR_2, usMotor_Status, usSpeed);
}

void DecreaseSpeed()
{
usSpeed = usSpeed - 10;
if(usSpeed < 0)
{
usSpeed = 0;
}

Serial.print("Speed -: ");
Serial.println(usSpeed);

motorGo(MOTOR_1, usMotor_Status, usSpeed);
motorGo(MOTOR_2, usMotor_Status, usSpeed);
}
// Функция установки
// motor(0 ou 1) - выбор двигателя
// direction (cw ou ccw) - направление
// pwm (entra 0 e 255 - значение скорости

{
if(motor == MOTOR_1)
{
if(direct == CW)
{
digitalWrite(MOTOR_A1_PIN, LOW);
digitalWrite(MOTOR_B1_PIN, HIGH);
}
else if(direct == CCW)
{
digitalWrite(MOTOR_A1_PIN, HIGH);
digitalWrite(MOTOR_B1_PIN, LOW);
}
else
{
digitalWrite(MOTOR_A1_PIN, LOW);
digitalWrite(MOTOR_B1_PIN, LOW);
}

analogWrite(PWM_MOTOR_1, pwm);
}
else if(motor == MOTOR_2)
{
if(direct == CW)
{
digitalWrite(MOTOR_A2_PIN, LOW);
digitalWrite(MOTOR_B2_PIN, HIGH);
}
else if(direct == CCW)
{
digitalWrite(MOTOR_A2_PIN, HIGH);
digitalWrite(MOTOR_B2_PIN, LOW);
}
else
{
digitalWrite(MOTOR_A2_PIN, LOW);
digitalWrite(MOTOR_B2_PIN, LOW);
}

analogWrite(PWM_MOTOR_2, pwm);
}
}

В мониторе последовательного порта выбираем необходимый пункт меню:

Шилд мощных (до 30 Ампер) мостовых драйверов электродвигателей VNH2SP30


Шилд мощных (до 30 Ампер) мостовых драйверов электродвигателей VNH2SP30

При выборе пунктов 2 или 3, можем регулировать пунктами + и - скорость вращения двигателей.

Шилд мощных (до 30 Ампер) мостовых драйверов электродвигателей VNH2SP30

Пока нет отзывов
Вы не представились
Не правильно введен e-mail
нам интересно Ваше мнение о товаре
CAPTCHAОбновить изображение
Вы неправильно ввели текст с картинки
Все поля обязательны к заполнению
Перед публикацией отзывы проходят модерацию

Главное меню

Каталог

Полезные ссылки

Цена
от
до
0 Корзина: 0 руб
Sos
Быстрый заказ