Site Language

Translate

Russian Albanian Arabic Armenian Azerbaijani Belarusian Bulgarian Catalan Croatian Czech Danish Dutch English Estonian Filipino Finnish French Galician Georgian German Greek Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian Persian Polish Portuguese Romanian Serbian Slovak Slovenian Spanish Swedish Turkish Ukrainian Yiddish

CashBack Реальный возврат при покупках в интернете

Основные версии плат Arduino

Due — плата на базе 32-битного ARM микропроцессора Cortex-M3 ARM SAM3U4E;

Leonardo — плата на микроконтроллере ATmega32U4;

Uno — самая популярная версия базовой платформы Arduino;

Duemilanove — плата на микроконтроллере ATmega168 или ATmega328;

Diecimila — версия базовой платформы Arduino USB;

Nano — компактная платформа, используемая как макет. Nano подключается к компьютеру при помощи кабеля USB Mini-B;

Mega ADK — версия платы Mega 2560 с поддержкой интерфейса USB-host для связи с телефонами на Android и другими устройствами с интерфейсом USB;

Mega2560 — плата на базе микроконтроллера ATmega2560 с использованием чипа ATMega8U2 для последовательного соединения по USB-порту;

Mega — версия серии Mega на базе микроконтроллера ATmega1280;

Arduino BT — платформа с модулем Bluetooth для беспроводной связи и программирования;

LilyPad — платформа, разработанная для переноски, может зашиваться в ткань;

Fio — платформа разработана для беспроводных применений. Fio содержит разъем для радио XBee, разъем для батареи LiPo и встроенную схему подзарядки;

Mini — самая маленькая платформа Arduino;

Pro — платформа, разработанная для опытных пользователей, может являться частью большего проекта;

Pro Mini — как и платформа Pro, разработана для опытных пользователей, которым требуется низкая цена, меньшие размеры и дополнительная функциональность.

 

CashBack Все честно и без обмана

 

Это информационный ресурс с лучшими инструкциями и туториалами по использованию контроллеров Arduino

 Карта сайта Arduino, Mega ADK, Cubieboard Cubietech, Arduino Uno, Arduino Mega2560, Карта сайта, Arduino Fio, Cubietruck, Arduino Ethernet, Esplora, Arduino Robot, Raspberry, Arduino Leonardo, Arduino Due, Arduino Micro, Banana, Intel Galileo Gen 2, Arduino Duemilanove, Beaglebone, BananaPro, Arduino Usb, Intel, Intel Galileo, Intel, Intel Galileo, Intel Edison, Intel Edison, Intel Galileo Gen 2, Карта сайта, Arduino Duemilanove, Mega ADK, Arduino Duemilanove, Arduino Nano, Arduino Leonardo, Arduino Due, Arduino Micro, Arduino Lilypad, Arduino Uno, Arduino Uno, Arduino Mega2560, Cubietruck, Raspberry, Banana, Arduino Leonardo, Arduino Due, Lilypad Arduino Simple, Lilypad, Arduino Usb, Arduino Micro, Lilypad, Arduino Simple Snap, Lilypad Arduino Simple, Intel, Lilypad, Arduino Cubieboard, Arduino Usb, BananaPro, Arduino Gemma, Arduino EthernetArduino Yin, Arduino Zero, Mega ADK, Arduino 101 Genuino 101, Arduino mini, Lilypad Arduino Simple, Lilypad, Arduino Pro, Intel, Arduino Fio, Arduino Gemma, Arduino BT, Arduino Fio, Arduino Mega, Arduino NanoMega ADK, Arduino Uno, Arduino Diecimila, BananaPro, Intel, Intel Galileo, Arduino Ethernet, Arduino BT, Arduino Mega, Arduino Duemilanove, Arduino Nano, Esplora, Raspberry, Banana, Arduino Robot

Контроллер L298N

 Контроллер L298N  Контроллер L298N
 Контроллер L298N  

 

 Specification

Working mode:Drived by H bridge(double lines)

Logical voltage:5V

Driving voltage:5V — 35V

Logical current:0mA-36mA

Storage temperature: -20 — +135

Maximum power:25W

Driving current:2A (MAX single bridge)

 

Контроллер L298N
 Контроллер L298N

 

Ниже приведены разъяснения к рисунку.

  1. Для двигателя постоянного тока 1 “+” или для шагового двигателя A+
  2. Для двигателя постоянного тока 1 “-” или для шагового двигателя A-
  3. Коннектор на 12 вольт. Снимите его, если используете напряжение питания больше 12 вольт.
  4. Питания вашего двигателя обеспечивается с этого выхода. Максимальное напряжение питания постоянным током 35 вольт. Если напряжение больше 12 вольт, разомкните контакты на 3 коннекторе.
  5. GND - земля.
  6. Питание 5 вольт, если коннектор на 12 вольт замкнут. Идеально для питания Arduino и т.п.
  7. Коннектор для двигателя постоянного тока 1. Можно подключить к ШИМ-выходу для управления скоростью двигателя постоянного тока.
  8. IN1.
  9. IN2.
  10. IN3.
  11. IN4.
  12. Коннектор для двигателя постоянного тока 2. В случае использования шагового двигателя, подключать сюда ничего не надо. Можно подключить к ШИМ-выходу для управления скоростью двигателя постоянного тока.
  13. Двигатель постоянного тока 2 “+” или шаговый двигатель B+.
  14. Двигатель постоянного тока 2 “-” или шаговый двигатель B-.
L298N 
 

Чередование разноименных сигналов (высокий логический уровень или низкий) на парах выводов IN1, IN2 и IN3, IN4 задают направление вращения моторов.

Выводы ENABLE A, B (ENA привязан к IN1, IN2. ENB к IN3, IN4) отвечают за раздельное управление каналами. Могут использоваться в двух режимах:

Условно "активном" режиме (рис. 1), когда ими будет управлять контроллер - высокий логический уровень разрешает вращение моторов, низкий запрещает вне зависимости от состояния выводов "IN". Для регулировки скорости моторов, на "EN" выводы подается ШИМ (PWM) сигнал.

Условно "пассивном" режиме (рис. 2), притянув выводы "EN" к высокому уровню (+5V). Для этого на плате, рядом с выводами ENA и ENB находятся штырьки соединенные с +5V. Замыкаем выводы с помощью джамперов . В данном режиме мы не сможем регулировать скорость двигателей, они будут всегда вращаться в полную скорость (за то для управления экономится 2 вывода контроллера). Направление вращения будет задаваться по-прежнему, а вот для остановки в данном варианте, состояние выводов будет уже играть роль. Для остановки нужно будет подавать одноименные сигналы на выоды "IN".

L298N2

Разъем +12V предназначен для питания моторов и одновременно, при одетом джампере, подает питание на стабилизатор, который выдает +5V для питания логики драйвера.

При таком подключении ненужно подключатьотдельно +5V.

Маркироака +12V связана стем, что напряжение питания моторов может лежать в диапазоне от 5 до 30 V, в то время как максимальное входноенапряжение стабилизатора 12V . Тоесть при одетом джампере, подача более 12V может сжечь стабилизатор

Маркировка +12Vносит предупредительно-информационный характер. При напряжении питания моторов свыше 12 V , без опаски подаем нужное напряжение на данный вывод, нонезабываем снять джампер.

Теперь напряжение не поступает на стабилизатор и не сможет повриедить его, но теперь необходимо подавать внешнее +5V для работы логики

L298N и двигатель постоянного тока

Данный модуль дает возможность управлять одним или двумя двигателями постоянного тока. Для начала, подключите двигатели к пинам A и B на контроллере L298N.

Если вы используете в проекте несколько двигателей, убедитесь, что у них выдержана одинаковая полярность при подключении. Иначе, при задании движения, например, по часовой стрелке, один из них будет вращаться в противоположном направлении. Поверьте, с точки зрения программирования Arduino это неудобно.

После этого подключите источник питания. Плюс - к четвертому пину на L298N, минус (GND) - к 5 пину. Если ваш источник питания до 12 вольт, коннектор, отмеченный 3 на рисунке выше, можно оставить. При этом будет возможность использовать 5 вольтовый пин 6 с модуля.

Данный пин можно использовать для питания Arduino. При этом не забудьте подключить пин GND с микроконтроллера к 5 пину на L298N для замыкания цепи. Теперь вам понадобится 6 цифровых пинов на Arduino. Причем некоторые пины должны поддерживать ШИМ-модуляцию.

ШИМ-пины обозначены знаком “~” рядом с порядковым номером.

L298N и двигатель постоянного тока
 Схема подключения Контроллера L298N к Arduino

Теперь подключите цифровые пины Arduino к драйверу. В нашем примере два двигателя постоянного тока, так что цифровые пины D9, D8, D7 и D6 будут подключены к пинам IN1, IN2, IN3 и IN4 соответственно. После этого подключите пин D10 к пину 7 на L298N (предварительно убрав коннектор) и D5 к пину 12 (опять таки, убрав коннектор).

Направление вращения ротора двигателя управляется сигналами HIGH или LOW на каждый привод (или канал). Например, для первого мотора, HIGH на IN1 и LOW на IN2 обеспечит вращение в одном направлении, а LOW и HIGH заставит вращаться в противоположную сторону.

При этом двигатели не будут вращаться, пока не будет сигнала HIGH на пине 7 для первого двигателя или на 12 пине для второго. Остановить их вращение можно подачей сигнала LOW на те же указанные выше пины. Для управления скоростью вращения используется ШИМ-сигнал.

Скетч приведенный ниже, отрабатывает в соответствии со схемой подключения, которую мы рассматривали выше. Двигатели постоянного тока и Arduino питаются от внешнего источника питания.

Sketch code

// подключите пины контроллера к цифровым пинам Arduino

// первый двигатель

int enA = 10;

int in1 = 9;

int in2 = 8;

// второй двигатель

int enB = 5;

int in3 = 7;

int in4 = 6;

void setup()

{

// инициализируем все пины для управления двигателями как outputs

pinMode(enA, OUTPUT);

pinMode(enB, OUTPUT);

pinMode(in1, OUTPUT);

pinMode(in2, OUTPUT);

pinMode(in3, OUTPUT);

pinMode(in4, OUTPUT);

}

void demoOne()

{

// эта функция обеспечит вращение двигателей в двух направлениях на установленной скорости

// запуск двигателя A

digitalWrite(in1, HIGH);

digitalWrite(in2, LOW);

// устанавливаем скорость 200 из доступного диапазона 0~255

analogWrite(enA, 200);

// запуск двигателя B

digitalWrite(in3, HIGH);

digitalWrite(in4, LOW);

// устанавливаем скорость 200 из доступного диапазона 0~255

analogWrite(enB, 200);

delay(2000);

// меняем направление вращения двигателей

digitalWrite(in1, LOW);

digitalWrite(in2, HIGH);

digitalWrite(in3, LOW);

digitalWrite(in4, HIGH);

delay(2000);

// выключаем двигатели

digitalWrite(in1, LOW);

digitalWrite(in2, LOW);

digitalWrite(in3, LOW);

digitalWrite(in4, LOW);

}

void demoTwo()

{

// эта функция обеспечивает работу двигателей во всем диапазоне возможных скоростей

// обратите внимание, что максимальная скорость определяется самим двигателем и напряжением питания

// ШИМ-значения генерируются функцией analogWrite()

// и зависят от вашей платы управления

// запускают двигатели

digitalWrite(in1, LOW);

digitalWrite(in2, HIGH);

digitalWrite(in3, LOW);

digitalWrite(in4, HIGH);

// ускорение от нуля до максимального значения

for (int i = 0; i < 256; i++)

{

analogWrite(enA, i);

analogWrite(enB, i);

delay(20);

}

// торможение от максимального значения к минимальному

for (int i = 255; i >= 0; --i)

{

analogWrite(enA, i);

analogWrite(enB, i);

delay(20);

}

// теперь отключаем моторы

digitalWrite(in1, LOW);

digitalWrite(in2, LOW);

digitalWrite(in3, LOW);

digitalWrite(in4, LOW);

}

void loop()

{

demoOne();

delay(1000);

demoTwo();

delay(1000);

}

 

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

В теле функции demoOne() мы включаем двигатели и начинаем с ними работать при ШИМ- значении 200.

Через некоторое время двигатели начинают вращаться в противоположном направлении (благодаря смене HIGH и LOW в теле функции digitalWrite()). Для демонстрации возможностей изменения скорости вращения, используем доступный ШИМ-диапазон в теле функции demoTwo(). Сигнал на пине меняется от нуля до 255 и вновь до нуля.

L298N и шаговый двигатель

Для нашего примера мы используем шаговый двигатель Nema 17, у которого четыре кабеля для подключения.

L298N и шаговый двигатель
 шаговый двигатель

Этот двигатель имеет 200 шагов на оборот и может работать с частотой вращения 60 об/мин. Если вы используете другой шаговый двигатель, уточните шаг его шаг и максимальную частоту вращения. Эти параметры понадобятся вам при программировании Arduino.

Еще один важный момент - определить какие именно кабели соответствуют A+, A-, B+ и B-. В нашем примере соответствующие цвета кабелей: красный, зеленый, желтый и голубой. Переходим к подключению.

Кабели A+, A-, B+ и B- от шагового двигателя подключаем к пинам 1, 2, 13 и 14 соответственно. Контакты на коннекторах 7 и 12 на контроллере L298N оставьте замкнутыми. После этого подключите источник питания к пину 4 (плюс) и 5 (минус) на контроллере.

Опять таки, если источник питания меньше 12 вольт, контакт, отмеченный 3 на рисунке модуля, можно оставить замкнутым. После этого, подключите пины модуля L298N IN1, IN2, IN3 и IN4 к соответствующим цифровым пинам D8, D9, D10 и D11 на Arduino.

Теперь подключаем GND пин с Arduino к пину 5 на контроллере, а 5V к 6 пину на модуле. С управлением шагового двигателя проблем быть не должно благодаря встроенной в Arduino IDE библиотеке Stepper Library.

Схема подключения L298N и шагового двигателя к Arduino
Схема подключения L298N и шагового двигателя к Arduino

Для проверки работоспособности просто загрузите скетч stepper_oneRevolution, который входит в состав библиотеки. Данный пример находится в меню

File > Examples > Stepper в Arduino IDE.

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

Уточните значение

const int stepsPerRevolution = 200;

в скетче и измените значение 200 на ваше количество шагов за один поворот двигателя вала и скорость вращения в строке

myStepper.setSpeed(60);

Теперь можете сохранить и загрузить скетч, который реализует вращение один оборот вала, а затем в противоположную сторону. Это реализуется с помощью функции

myStepper.step(stepsPerRevolution); // вращение по часовой стрелке

myStepper.step(-stepsPerRevolution); // вращение против часовой стрелки

 

Подключение Arduino

Подключение одного двигателя без регулировки скорости врашения

Для этого замыкаем джампер как показано на рисунке, тем самым соединяя вывод EN с +5V

Как уже говорилось ранее, при таком способе мы не можем регулировать скорость вращения, однако для управления одним каналом модуля будет задействованно два цифровых вывода вместо трех.

L3
моторчик вращаться "вправо" 4 секунды, остановиться на 0.5 секунды, вращаться "влево" 4 секунды, остановка 5 секунд и снова цикл повторяется.

Sketch code

// вращаться "вправо" 4 секунды, остановиться на 0.5 секунды, вращаться "влево" 4 секунды, остановка 5 секунд и снова цикл повторяется
int IN3 = 5; // Input3 подключен к выводу 5 
int IN4 = 4;

void setup()
{
  pinMode (IN4, OUTPUT);
  pinMode (IN3, OUTPUT);
}
void loop()
{
  // На пару выводов "IN" поданы разноименные сигналы, мотор вращается   
  digitalWrite (IN4, HIGH);
  digitalWrite (IN3, LOW); 
  delay(4000);
  // На пару выводов "IN" поданы одноименные сигналы, мотор не вращается 
  digitalWrite (IN4, LOW); 
  delay(500);
  // На пару выводов "IN" поданы разноименные (и уже противоположные относительно первого случая) сигналы, мотор вращается  
  // относительно первого случая) сигналы, мотор вращается в другую сторону
  digitalWrite (IN3, HIGH);
  delay(4000);
  // Снова на выводах "IN" появились одноименные сигналы, мотор не вращается 
  digitalWrite (IN3, LOW); 
  delay(5000);
  }

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

подсоединяем ENB к выводу ШИМ (D3). Теперь становится возможно управлять скоростью мотора, изменяя скважность посылаемого ШИМ сигнала.

Значения скважности задаются функцией analogWrite(pin, число), где число изменяется от 0 до 255, прямо пропорционально скважности сигнала. Для наглядности, подобраны четыре значения при которых двигатель стартует с низких оборотов, набирает средние, выходит на максимальные и не вращается.

L4
 

Sketch code

// двигатель стартует с низких оборотов, набирает средние, выходит на максимальные и не вращается
int IN3 = 5; // Input3 подключен к выводу 5 
int IN4 = 4;
int ENB = 3;
void setup()
{
 pinMode (ENB, OUTPUT); 
 pinMode (IN3, OUTPUT);
 pinMode (IN4, OUTPUT);
}
void loop()
{
  // На пару выводов "IN" поданы разноименные сигналы, мотор готов к вращаению
  digitalWrite (IN3, HIGH);
  digitalWrite (IN4, LOW);
  // подаем на вывод ENB управляющий ШИМ сигнал 
  analogWrite(ENB,55);
  delay(2000);
  analogWrite(ENB,105);
  delay(2000);
  analogWrite(ENB,255);
  delay(2000);
  // Останавливаем мотор повад на вывод ENB сигнал низкого уровеня. 
  // Состояние выводов "IN" роли не играет.
  analogWrite(ENB,0);
  delay(5000);
}

 

 

 

Подключение двух моторов с регулировкой скорости вращения

L5
 

 

Sketch code

// два мотора будут вращаться в обе стороны с плавным нарастанием скорости
int IN1 = 5; // Input1 подключен к выводу 5 
int IN2 = 4;
int IN3 = 3;
int IN4 = 2;
int ENA = 9;
int ENB = 3;
int i;
void setup()
{
  pinMode (EN1, OUTPUT);
  pinMode (IN1, OUTPUT);
  pinMode (IN2, OUTPUT);
  pinMode (EN2, OUTPUT);
  pinMode (IN4, OUTPUT);
  pinMode (IN3, OUTPUT);
}
void loop()
{
  digitalWrite (IN2, HIGH);
  digitalWrite (IN1, LOW); 
  digitalWrite (IN4, HIGH);
  digitalWrite (IN3, LOW); 
  for (i = 50; i <= 180; ++i)
  {
      analogWrite(EN1, i);
      analogWrite(EN2, i);
      delay(30);
  }
  analogWrite (EN1, 0);
  analogWrite (EN2, 0);
  delay(500);
  digitalWrite (IN1, HIGH);
  digitalWrite (IN2, LOW); 
  digitalWrite (IN3, HIGH);
  digitalWrite (IN4, LOW);
  for (i = 50; i <= 180; ++i)
  {
      analogWrite(EN1, i);
      analogWrite(EN2, i);
      delay(30);
  }
  analogWrite (EN1, 0);
  analogWrite (EN2, 0);
  delay(8000);
}

 Плата расширения L293D, ИК-датчик VS1838B, TFT LCD, Модем M590E GSM GPRS, "монитор TFT LCD, датчик движения HC-SR501, ИК-пульт дистанционного управления, Радиомодуль NRF24L01, SD Card Module, Звуковой модуль, 5-axis stepper motor driver, Шаговый двигатель, Модем M590E GSM GPRS, 5-axis stepper motor driver,  Часы реального времени DS 3231/DS 1307, терморегулятор W1209 DC, Релейный модуль, датчик движения HC-SR501, Модуль Wi-Fi ESP8266-12E,  датчик движения HC-SR501, Передатчик и приемник в диапазоне RF 433 Mhz, Блок питания, L293D, Микросхема контроллера коллекторного электродвигателя, ИК-пульт дистанционного управления, Датчики контроля температуры, Радиомодуль NRF24L01, OKI 120A2, Rotary Encoder, SD Card Module, Беспроводной пульт дистанционного управления, Микросхема контроллера коллекторного электродвигателя, Модуль Bluetooth HC-06,, Модем M590E GSM GPRS, Часы реального времени DS 3231/DS 1307, Mini 360 на схеме LM2596, MP3-TF-16P, L293D, Модуль LCD монитора, Инфракрасные датчики расстояния, Часы реального времени,  USB Host Shield, HC-SR501, Cветочувствительный датчик сопротивления, блок питания Mini 360 на схеме LM2596, ЖК-дисплей TFT дисплей, Контроллер L298N, HC-SR501, Модуль MP3 Player WTV020, GSM GPRS, Сервоприводы, Модем M590E GSM GPRS, Часы реального времени DS 3231/DS 1307, Модуль Wi-Fi ESP8266-12E, Инфракрасные датчики расстояния, Card Module, Ультразвуковые дальномеры HC-SR04, Блок питания,  Карта памяти SD, Mini 360, Ethernet shield, L293D, блок питания Mini 360 на схеме LM2596, Радиомодуль, датчик температуры DS18B20, ИК-пульт дистанционного управления, USB конвертер UART, ИК-пульт,  Антена для модуля WiFi, Ethernet shield,  Модуль блока питания XL6009, Микросхема контроллера коллекторного электродвигателя, Модуль качества воздуха MQ-135, Микросхема контроллера коллекторного электродвигателя, ИК-пульт дистанционного управления, SD Card Module, Радиомодуль NRF24L01, двигатель OKI,  5-axis stepper motor driver, L293D, TB6560, Драйвер шагового двигателя TB6600, Шаговый двигатель,  Модуль камеры, Блок питания, L293D, блок питания Mini 360 на схеме LM2596, 5axis mach3 interface, Карта памяти SD, Ethernet shield, Контроллер L298N, датчик движения HC-SR501, Модуль Wi-Fi ESP8266-12E, Модуль LCD монитора LCD1602, Шаговый двигатель OKI 120A2, Шаговый двигатель, Шаговый двигатель.

 

All Vintage Vinyl Records VinylSU.xyz

1.png2.png3.png4.png5.png