ДВС РОТОРНЫЙ EMDRIVE РАСКОКСОВКА HONDAВИДЫ

Управление Ардуино шаговым двигателем от принтера. Двигатель arduino


Драйверы двигателя L298N, L293D и Arduino Motor Shield

Драйвер двигателя выполняет крайне важную роль в проектах ардуино, использующих двигатели постоянного тока или шаговые двигатели. C помощью микросхемы драйвера или готового шилда motor shield можно создавать мобильных роботов, автономные автомобили на ардуино и другие устройства с механическими модулями. В этой статье мы рассмотрим подключение к ардуино популярных драйверов двигателей на базе микросхем L298N и L293D.

Драйвер двигателя в проектах ардуино

Для чего нужен драйвер двигателя?

Как известно, плата ардуино имеет существенные ограничения по силе тока присоединенной к ней нагрузки. Для платы это 800 mA, а для каждого отдельного вывода — и того меньше, 40mA. Мы не можем подключить напрямую к Arduino Uno, Mega или Nano даже самый маленький двигатель постоянного тока. Любой из этих двигателей в момент запуска или остановки создаст пиковые броски тока,  превышающие этот предел.

Как же тогда подключить двигатель к ардуино? Есть несколько вариантов действий:

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

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

Использовать специальную схему подключения, называемую H-мостом, с помощью которой мы можем изменять направление движения шпинделя двигателя. Сегодня можно без проблем найти как микросхемы, содержащие два или больше H-моста, так и отдельные модули и платы расширения, построенные на этих микросхемах.

В этой статье мы рассмотрим последний, третий вариант, как наиболее гибкий и удобный для создания первых роботов на ардуино.

Микросхема или плата расширения Motor Shield

Motor Shield – плата расширения для Ардуино, которая обеспечивает работу двигателей постоянного тока и шаговых двигателей. Самыми популярными платами Motor Shield являются схемы на базе чипов L298N и L293D, которые могут управлять несколькими двигателями. На плате установлен комплект сквозных колодок Ардуино Rev3, позволяющие устанавливать другие платы расширения. Также на плате имеется возможность выбора источника напряжения — Motor Shield может питаться как от Ардуино, так и от внешнего источника. На плате имеется светодиод, который показывает, работает ли устройство. Все это делает использование драйвера очень простым и надежным — не нужно самим изобретать велосипеды и решать уже кем-то решенные проблемы. В этой статье мы будем говорить именно о шилдах.

Принцип действия H-моста

Arduino Motor shield схемаПринцип работы драйвера двигателя основан на принципе работы H-моста. H-мост является электронной схемой, которая состоит из четырех ключей с нагрузкой. Название моста появилось из напоминающей букву H конфигурации схемы.

Схема моста изображена на рисунке. Q1…Q4 0 полевые, биполярные или  IGBT транзисторы. Последние используются в высоковольтных сетях. Биполярные транзисторы практически не используются, они могут присутствовать в маломощных схемах. Для больших токов берут полевые транзисторы с изолированным затвором. Ключи не должны быть замкнуты вместе одновременно, чтобы не произошло короткого замыкания источника. Диоды D1…D4 ограничительные, обычно используются диоды Шоттки.

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

Q1 Q2 Q3 Q4 Состояние
1 0 0 1 Поворот мотора вправо
0 1 1 0 Поворот мотора влево
0 0 0 0 Свободное вращение
0 1 0 1 Торможение
1 0 1 0 Торможение
1 1 0 0 Короткое замыкание
0 0 1 1 Короткое замыкание

 

Драйвер двигателя L298N

Модуль используется для управления шаговыми двигателями с напряжением от 5 до 35 В.  При помощи одной платы L298N можно управлять сразу двумя двигателями. Наибольшая нагрузка, которую обеспечивает микросхема, достигает 2 А на каждый двигатель. Если подключить двигатели параллельно, это значение можно увеличить до 4 А.

Плата выглядит следующим образом:

Arduino Motor shield

Распиновка микросхемы L298N:

Arduino Motor shield

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

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

L293D – является самой простой микросхемой для работы с двигателями. L293D обладает двумя H-моста, которые позволяют управлять двумя двигателями. Рабочее напряжение микросхемы – 36 В, рабочий ток достигает 600 мА. На двигатель L293D может подавать максимальный ток в 1,2 А.

В схеме имеется 16 выходов. Распиновка:

Arduino Motor shield

Для подключения к микроконтроллеру Arduino Uno нужно соединить выходы In1 на L293D и 7 пин на Ардуино, In2 – 8, In3 – 2, In4 – 3, En1 – 6, En2 – 5, V — 5V, Vmotor – 5 V, 0V – GND. Пример подключения одного двигателя к Ардуино показан на рисунке.

Arduino Motor shield

Драйвер двигателя на микросхеме HG7881

HG7881 – двухканальный драйвер, к которому можно подключить 2 двигателя или четырехпроводной двухфазный шаговый двигатель. Устройство часто используется из-за своей невысокой стоимости. Драйвер используется только для изменения направления вращения, менять скорость он не может.

Arduino Motor shield

Плата содержит 2 схемы L9110S, работающие как H-мост.

Характеристики драйвера HG7881:
Распиновка:

В зависимости от поданного сигнала на выходах IA и IB будет разное состояние для двигателей. Возможные варианты для одного из моторов приведены в таблице.

IA IB Состояние мотора
0 0 Остановка
1 0 Двигается вперед
0 1 Двигается назад
1 1 Отключение

 

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

Arduino Motor shield

Сравнение модулей

Модуль L293D подает максимальный ток в 1,2А, в то время как на L298N можно добиться максимального тока в 4 А. Также L293D обладает меньшим КПД и быстро греется во время работы. При этом L293D является самой распространенной платой и стоит недорого.  Плата HG7881 отличается от L293D и L298N тем, что с ее помощью можно управлять только направлением вращения, скорость менять она не может. HG7881 – самый дешевый и самый малогабаритный модуль.

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

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

Нужно присоединить источник питания. + подключается к пину 4 на плате L298N, минус (GND) – к 5 пину. Затем нужно соединить выходы с L298N и пины на Ардуино, причем некоторые из них должны поддерживать ШИМ-модуляцию. На плате Ардуино они обозначены ~. Выходы с L298N IN1, IN2, IN3 и IN4 подключить к D7, D6, D5 и D4 на Ардуино соответственно. Подключение всех остальных контактов представлено на схеме.

Arduino Motor shield

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

Для управления шаговым двигателем в Arduino IDE существует стандартная библиотека Stepper library. Чтобы проверить работоспособность собранной схемы, можно загрузить тестовый пример stepper_oneRevolution. При правильной сборке вал двигателя начнет вращаться.

При работе с моторами Ардуино может периодически перезагружаться. Это возникает из-за того, что двигателям требуются большие токи при старте и в момент торможения. Для решения этой проблемы в плату встроены конденсаторы, диоды и другие схемы. Также для этих целей на шидле имеется раздельное питание.

arduinomaster.ru

Ардуино шаговый двигатель: управляем с помощью микроконтроллера

В этом уроке вы узнаете, как управлять с помощью Ардуино шаговым двигателем, который был взят от старого принтера.

Шаг 1. Что такое шаговый двигатель?

Шаговый двигатель состоит из двух основных частей: ротора и статора.

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

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

Шаг 2: Список деталей

Необходимые детали для проекта Ардуино шагового двигателя:

Дополнительные детали:

Шаг 3: Присоединяем провода

Большинство шаговых двигателей имеют четыре провода, поэтому вам нужно будет обрезать четыре медных провода (обратите внимание, что цвет не коррелирует с чем-либо конкретным (обычно есть правило, что черный - это земля, но не сейчас). Различные цвета были использованы только для облегчения понимания. Эти выводы будут использоваться для управления, какая катушка в настоящее время активна в двигателе. Для этого проекта Ардуино шаговый двигатель был взят от старого принтера, поэтому пайка проводов была самым простым вариантом для этого проекта. В любом случае, вы можете безопасно установить соединение (пайка, штекер, клипы).

Шаг 4: Эскиз/скетч Arduino

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

Файл → Примеры → Шаговые → stepper_oneRevolutionFile → Examples → Stepper → stepper_oneRevolution

Затем вам нужно изменить переменную stepsPerRevolution, чтобы она соответствовала вашему конкретному двигателю. После просмотра номера деталей двигателей в Интернете наш конкретный двигатель был рассчитан на 48 шагов для завершения одного оборота.

То, что на самом деле делает библиотека Stepper - чередует сигналы HIGH и LOW для каждой катушки, как показано в анимации выше.

Шаг 5: Что такое мост H-bridge?

H-Bridge - схема, состоящая из 4 переключателей, которые могут безопасно управлять двигателем постоянного тока или шаговым двигателем. Эти переключатели могут быть реле или (чаще всего) транзисторами. Транзистор представляет собой твердотельный переключатель, который можно закрыть, посылая небольшой ток (сигнал) на один из его контактов.

В отличие от одного транзистора, который позволяет вам контролировать скорость двигателя, H-мосты позволяют вам также контролировать направление вращения двигателя. Он делает это, открывая различные переключатели (транзисторы), чтобы ток тек в разных направлениях и, таким образом, изменяя полярность на двигателе.

Важно! Переключатели 1 и 2 или 3 и 4 никогда не должны быть закрыты вместе. Это приведет к короткому замыканию и возможному повреждению устройства.

H-Bridges может помочь вам предотвратить перегорания вашего Arduino моторами, которыми вы пользуетесь. Двигатели являются индукторами, а это означает, что они хранят электрическую энергию в магнитных полях. Когда ток больше не посылается двигателям, магнитная энергия возвращается в электрическую энергию и может повредить компоненты. H-Bridge помогает изолировать ваш Arduino лучше всего. Вы не должны подключать двигатель непосредственно к Arduino.

Хотя H-Bridges можно легко сделать самому многие предпочитают покупать H-Bridge (например, чип L293NE / SN754410) из-за удобства. Это чип, который мы будем использовать в этом уроке. Физические номера контактов и их назначение ниже:

Шаг 6: Схема соединения

Схема соединения нашего проекта Ардуино шагового двигателя ниже.

Для шагового двигателя Ардуино 4 вывода на H-Bridge должны подключаться к 4 выводам двигателя. Затем 4 логических вывода подключаются к Arduino (8, 9, 10 и 11). Как показано на диаграмме выше, для питания двигателей можно подключить внешний источник питания. Чип может обрабатывать внешний источник питания от 4,5 до 36 В (мы выбрали батарею 9В).

Шаг 7: Загрузка кода и тестирование

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

На этом всё, теперь у вас должен быть рабочий шаговый двигатель Arduino. То, что вы сделаете дальше, зависит только от вас.

Навигация по записям

arduinoplus.ru

Уроки Arduino: основы управления двигателями роботов

// Left motor

const int pinAIN1 = 5; //Direction

const int pinAIN2 = 4; //Direction

const int pinPWMA = 3; //Speed

 

// Right motor

const int pinBIN1 = 7;  //Direction

const int pinBIN2 = 8; //Direction

const int pinPWMB = 9;  //Speed

 

//H-Bridge Standby

const int pinSTBY = 6;

 

boolean leftMotor = 1;

boolean rightMotor = 0;

 

void setup() {

  pinMode(pinPWMA, OUTPUT);

  pinMode(pinAIN1, OUTPUT);

  pinMode(pinAIN2, OUTPUT);

  pinMode(pinPWMB, OUTPUT);

  pinMode(pinBIN1, OUTPUT);

  pinMode(pinBIN2, OUTPUT);

  pinMode(pinSTBY, OUTPUT);

}

 

void loop() {

  // acceleration

  for (int i = 0; i <= 255; i += 5) {

    motorDrive(leftMotor, 1, i);

    motorDrive(rightMotor, 1, i);

    delay(50);

  }

  delay(1700);

 

  // turn right

  motorStop(rightMotor);

  delay(1500);

 

  // go ahead

  motorDrive(rightMotor, 1, 255);

  delay(1000);

 

  // stop

  motorStop(leftMotor);

  motorStop(rightMotor);

  delay(300);  

 

  // turn around in place

  motorDrive(leftMotor, 0, 255);

  motorDrive(rightMotor, 1, 255);

  delay(3600);

 

  // stop

  motorStop(leftMotor);

  motorStop(rightMotor);

  delay(300);  

 

  // turn left in a circle

  motorDrive(leftMotor, 1, 180);

  motorDrive(rightMotor, 1, 255);

  delay(4000);

 

  // slow down

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

    motorDrive(leftMotor, 1, i);

    motorDrive(rightMotor, 1, i);

    delay(55);

  }

 

  // stop

  motorStop(leftMotor);

  motorStop(rightMotor);

  delay(10000);

}

 

void motorDrive(boolean motorNumber, boolean moveForward, int motorSpeed) {

  boolean pinIn1;  //Relates to AIN1 or BIN1 (depending on the motor number specified)

 

  // direction to turn the motor

  //   clockwise: IN1 = HIGH and IN2 = LOW

  //   counter-clockwise: IN1 = LOW and IN2 = HIGH

  if (moveForward)

    pinIn1 = LOW;

  else

    pinIn1 = HIGH;

 

  // select the motor to turn, set the direction and the speed

  if (motorNumber == leftMotor) {

    digitalWrite(pinAIN1, pinIn1);

    digitalWrite(pinAIN2, !pinIn1);

    analogWrite(pinPWMA, motorSpeed);

  } else {

    digitalWrite(pinBIN1, pinIn1);

    digitalWrite(pinBIN2, !pinIn1);

    analogWrite(pinPWMB, motorSpeed);

  }

 

  // STBY must be high to enable motors

  digitalWrite(pinSTBY, HIGH);

}

 

// Stop the specified motor

void motorStop(boolean motorNumber) {

  if (motorNumber == leftMotor) {

    digitalWrite(pinAIN1, LOW);

    digitalWrite(pinAIN2, LOW);

  } else {

    digitalWrite(pinBIN1, LOW);

    digitalWrite(pinBIN2, LOW);

  }

}

arduinoplus.ru

УРОК 12. ARDUINO И ЭЛЕКТРОМОТОР

Вращаем двигатель — Крутись Мотор.

Помните, ранее мы с вами изучили серводвигатель которым управляла ардуина? Теперь мы познакомимся с двигателем вращения. Для это потребуется транзистор, который может коммутировать (переключать) больший ток, чем может себе позволить Arduino. При использовании транзистора, нужно убедиться, что его параметры, подходят для работы определенного оборудования. Транзистор который мы используем для этой схемы — 2N222A, может справится с напряжением до 40 Вольт и до 200 миллиампер, — идеально подходит для нашего микро двигателя!

Когда вы будете собирать эту схему, будьте осторожны, не перепутайте транзистор с датчиком температуры, они очень похожи!

Вы видите саму принципиальную схему к уроку 12, сложностей быть не должно, при правильном соединении всех частей, все должно получиться.

Вид принципиальной схемы к уроку №12. Arduino и Мотор.

Принципиальная схема. Урок 12. Мотор и Arduino

Для этого опыта вам понадобится:

1. Arduino UNO — 1 шт.

2. Электромотор — 1 шт.

3. Транзистор 2N222A — 1 шт.

4. Диод 1N4148 — 1 шт.

5. Резистор 330 Ом — 1 шт..

6. Соединительные провода.

7. Макетная плата.

Далее идет схема электрических соединений для этого опыта.

Наглядный вид схемы электрических соединений Arduino UNO и Электромотора к уроку 12

Cхема электрических соединений макетной платы, мотора и Arduino. Уроку 12. Arduino и Электромотор

Скачать код к опыту 12. Скетч и подробное описание (Обязательно прочтите весь скетч! Он подробно описан здесь):

Набор для экспериментов ArduinoKit.Код программы, на руском языке для опыта №12 можно скачать здесь: sketch 12

Вид созданного урока на макетной плате, у вас должно получиться что-то подобное:

Внешний виду собранного макета к уроку №12. Arduino и Электромотор

Arduino — Крутись мотор. Урок 12

В результате проделанного опыта Вы должны увидеть…

Если схема собрана правильно и все электронные компоненты исправны двигатель постоянного тока должен вращаться.

Возможные трудности:

Мотор не вращаетсяЭто может быть из за того что вы используете свой транзистор, т.е. отличающийся номиналом. Найдите распиновку (в интернет или справочнике) имеющегося у вас транзистора и его совместимость с P2N2222A. Проверьте работу двигателя от источника 5 вольт. Возможно двигатель расчитан на больший ток, в таком случае вы можете использовать реле из уроака 13. Иногда плата ардуино может отключиться от компьютера, попробуйте отключить от нее USB разъем, а затем снова подключить к порту USB. Проверьте надежность и правильность всех электрических соединений.

Всем удачи! Ждём от вас комментарии и фотоотчеты о ваших опытах. ARDUINO УРОК 12. КРУТИСЬ МОТОР.

arduinokit.ru

diy - проекты и обучающие уроки под Arduino

Arduino, шаговый двигатель 28-BYJ48 и драйвер ULN2003

Шаговый двигатель - это мотор, который управляется несколькими электромагнитными катушками. На центральном валу - роторе - расположены магниты. В зависимости от от того, есть ток на катушках, которые находятся вокруг вала, или нет, создаются магнитные поля, которые притягивают или отталкивают магниты на роторе. В результате…

Серводвигатель MG995 и Arduino

Серводвигатель MG995 поставляется с проводом длиной 30 см и 3-мя ‘S’ контактами типа мама. Выходной вал сервопривода поворачивается приблизительно на 120 градусов (60 градусов в каждом направлении). Для управления сервами MG995 можно использовать любые контроллеры с питанием логики 5 В, в том числе и Arduino. Сервомашинка…

Arduino + THB6064AH + шаговый двигатель Nema 23

Чип THB6064AH можно использовать для управления шаговым двигателем Nema 23 с передачей команд управления от Arduino. В этой статье мы рассмотрим сборку Massmind 6064, в состав которого входит чип THB6064AH и пример программы для Arduino для управления шаговым двигателем Nema 23. Необходимые компоненты Помимо компонентов, которые приведены на рисунке…

Драйвер шагового двигателя TB6560 и Arduino

Статья посвящена управлению шаговым двигателем с использованием Arduino и драйвером шагового двигателя TB6560. Конечно, вы можете использовать EASYDRIVER, но мы разберемся с подключением именно TB6560. Основные преимущества этого драйвера: Возможность изменения силы тока; Может работать с токами более 1 Ампера (± 3 А с пиковой силой тока 3.5…

Сервомотор и Arduino

Учимся управлять сервомотором с использованием Arduino. Сначала мы рассмотрим как обеспечить вращение выходного вала серводвигателя в автоматическом режиме "вперед" и в обратном направлении. После этого дополнительно включим в схему потенциометр, который обеспечит управление поворотом сервопривода. Необходимые узлы Для…

Мотор шилд для Arduino

Данная статья посвящена Motor Shield V1 для Arduino. Arduino - это отличный трамплин для начинающих увлекаться электроникой и автоматизацией. С использованием Motor Shield Arduino может стать не просто игрушкой, а и отличной платформой для реальных робототехнических и мехатронных проектов. Motor Shield может стать отличным дополнением во в многих…

Двигатель постоянного тока, L293D и Arduino

В статье рассмотрен пример управления направлением и скоростью вращения ротора небольшого двигателя постоянного тока с использованием Arduino и чипом для драйвера двигателя L293D. Для управления скоростью вращения мотора в проекте используется потенциометр. Для изменения направления вращения используется кнопка.…

Реле, двигатель постоянного тока и Arduino

Всем привет. В этом туториале мы научимся управлять двигателем постоянного тока с использованием реле и Arduino. Необходимые компоненты Плата Arduino (в данном примере использовалась плата SainSmart UNO R3) Батарейка на 9 вольт Коннекторы папа-мама Мотор (двигатель постоянного тока) Реле на 5 вольт Подключаем мотор, источник питания и…

Шаговый двигатель и Arduino - основы

Шаговые двигатели представляют из себя нечто среднее между обычным двигателем постоянного тока и серводвигателем. У них есть возможность точного позиционирования ротора в заданном положении, вращаться в обе стороны, по одному "шагу", но при этом могут и вращаться с заданной частотой. В этом примере мы рассмотрим управление…

Управляем шаговым двигателем с помощью Arduino и контроллера Easy Driver

Существует куча двигателей. И порой возникает вопрос, какой именно выбрать для вашего проекта на Arduino. В этой статье мы детально обсудим один из типов двигателей - шаговый двигатель. Разберемся, в каких случаях уместно его использование. Рассмотрим пример подключения с использованием драйвера Easy Driver. Необходимые…

Советы для начинающих. Arduino и шаговый двигатель Nema 17

Перед началом очередного проекта на Arduino, было решено использовать шаговый двигатель Nema 17 из-за отличного соотношения цена/качество. Перед подключением Nema 17, за плечами был определенный опыт работы с шаговиком 24byj48 (даташит). Управлялся он и с помощью Arduino, и с помощью Raspberry pi, проблем не возникало. Основная прелесть этого…

Как модифицировать серву для поворота на 360 градусов

Если оказалось, что серв у вас куча, а двигателя постоянного тока с редуктором нет, то эта небольшая инструкция для вас. Инструменты 1 защитные очки!! 1 паяльник 1 нож Несколько отверток с различными наконечниками 1 серводвигатель 1 тюбик клея может, еще что-то Понадобится набор отверток, чтобы открутить корпусную часть…

Драйвер шагового двигателя и двигателя постоянного тока L298N и Arduino

Модуль L298N H-bridge можно использовать для двигателей, напряжение питания которых находится в диапазоне от 5 до 35 вольт. Кроме того, на многих подобных платах есть встроенный 5В регулятор, который дает возможность запитывать ваши устройства. Подключение модуля L298N Прежде чем перейти к управлению двигателем постоянного тока и…

Arduino и серводвигатели - основы

В данном примере мы рассмотрим основы управления серводвигателями с помощью Arduino. Сфера применения серводвигателей в моделировании и производстве очень обширна. В основном они используются для приводов позиционирования, так как обеспечивают высокую точность поворота ротора и его выхода в позицию. Естественно, практически…

Arduino и двигатели

Одно из самых интересных в хобби-электронике – это использование двигателей для «оживления» ваших проектов. Однако добавление мотора в ваш проект может оказаться непростой задачей, особенно, если вы до этого с приводами не работали. Данная статья даст вам понимание принципов работы двигателей различных типов и пояснит…

arduino-diy.com


Смотрите также