Код для поиска

Управление бесщеточным двигателем постоянного тока с помощью ИК-пульта дистанционного управления на базе Arduino и L293D

Управление бесщеточным двигателем постоянного тока с помощью ИК-пульта дистанционного управления на базе Arduino и L293D

Этот проект демонстрирует, как управлять направлением и скоростью постоянного двигателя с помощью инфракрасного (ИК) пульта, Arduino Uno и чипа драйвера мотора L293D. Эта схема позволяет точно контролировать двигатель, что делает её подходящей для самых различных приложений.

Этот проект открывает мир возможностей для ваших самоодельных электронных начинаний. Вот несколько идей, чтобы помочь вам начать:

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

Аппаратное обеспечение/Компоненты

  • Arduino Uno
  • L293D драйвер мотора ИС
  • Двигатель постоянного тока
  • Инфракрасный пульт и приемник
  • Диоды (1N4001 x4)
  • Соединительные провода
  • Блок питания (например, батарея 9 В для мотора)

Справочник по проводке

%%ПРОВОДКА%%

(в видео на 02:14)

Чип L293D требует подключения как к Arduino, так и к внешнему источнику питания для мотора. Диоды используются для защиты от обратного тока. ИК-приемник подключается к 5V и GND пинам Arduino, при этом сигнальный пин подключен к цифровому пину 11 (можно настроить в коде). Мотор подключается к выходным пинам L293D, которые контролируются Arduino.

Объяснение кода

(в видео на 07:30)

Предоставленный код на Arduino использует библиотеку IRremote для декодирования сигналов с инфракрасного пульта. Ключевые настраиваемые параметры в коде включают:


const char type ='B';// W for white, B for black. Must keep single quotes like 'B' or 'W'
const boolean PCB = 0;// if receiver is PCB set to 1, if not set to 0. See video for details

Установитьtypeпеременная на 'W' для белого пульта или 'B' для черного пульта (в видео на 07:41). ThePCBпеременная должна быть установлена в 1, если ваш ИК-приемник имеет печатную плату, и в 0, если это голый модуль (в видео на 07:50).


const String RIGHT=">";// move motor to the right (CW) with this key on remote
const String LEFT ="<";// move motor to the left (CCW) with this key on remote
const String STOP ="OK";// stop motor with this key on remote

Эти строки определяют наименования кнопок ИК-пульта для управления мотором. Убедитесь, что они совпадают с наименованиями на вашем пульте (в видео на 08:12). Вы можете настроить их, чтобы использовать другие кнопки на вашем пульте.


#define P1A 2 // define pin 2 as for P1A
#define P2A 7 // define pin 7 as for P2A
#define EN12 8 // define pin 8 as for 1,2EN enable
int RECV_PIN = 11;

Эти строки определяют контакты Arduino, используемые для управления драйвером мотора L293D (в видео на 09:52).P1AиP2Aуправляйте направлением, иEN12включает двигатель.RECV_PINэто один из контактов, подключенных к выходу сигнала IR-приёмника (в видео на 06:52). Измените их, если вы используете другие контакты.

Живой проект/демонстрация

(в видео на 14:15)

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

Главы

  • [00:00] Введение и обзор проекта
  • Компоненты проекта и предварительные требования
  • [02:14] Объяснение проводки
  • [07:30] Объяснение кода и конфигурация
  • [14:15] Демонстрация проекта с черным пультом и печатной платой
  • [16:04] Демонстрация с серебряным пультом и печатной платой
  • [17:42] Демонстрация с серебряным пультом и голым модулем
  • [18:23] Демонстрация с черным пультом и обнаженным модулем
142-Source for controlling a servo motor with an IR remote controller using Arduino
Язык: C++
This code has not been parsed yet. Please return to the admin panel to parse it.
143-Source for a simple L293 motor controller using Arduino
Язык: C++
This code has not been parsed yet. Please return to the admin panel to parse it.

Файлы📁

Нет доступных файлов.