- Создание графического интерфейса пользователя MATLAB для управления двигателем постоянного тока
- Код MATLAB для управления двигателем постоянного тока с помощью Arduino
- Необходимый материал
- Принципиальная электрическая схема
- Управление двигателем постоянного тока с помощью MATLAB
В этом уроке мы покажем вам, как управлять двигателем постоянного тока с помощью MATLB и Arduino. Если вы новичок в MATLAB, рекомендуется начать работу с простой программой мигания светодиодами с MATLAB.
Создание графического интерфейса пользователя MATLAB для управления двигателем постоянного тока
После завершения настройки с Arduino для MATLAB нам нужно создать GUI (графический интерфейс пользователя) для управления двигателем постоянного тока. Чтобы запустить графический интерфейс, введите следующую команду в командном окне
руководство
Откроется всплывающее окно, затем выберите новый пустой графический интерфейс, как показано на изображении ниже,
Теперь выберите три кнопки для вращения по часовой стрелке, вращения против часовой стрелки и СТОП, как показано ниже.
Чтобы изменить размер или форму кнопки, просто нажмите на нее, и вы сможете перетаскивать углы кнопки. Двойным щелчком по кнопке вы можете изменить цвет, строку и тег этой конкретной кнопки. Мы настроили три кнопки, как показано на рисунке ниже.
Вы можете настроить кнопки по своему усмотрению. Теперь, когда вы сохраняете это, код создается в окне редактора MATLAB. Чтобы закодировать ваш Arduino для выполнения любой задачи, связанной с вашим проектом, вам всегда нужно редактировать этот сгенерированный код. Итак, ниже мы отредактировали код MATLAB.
Код MATLAB для управления двигателем постоянного тока с помощью Arduino
Полный код MATLAB после редактирования для управления двигателем постоянного тока приведен в конце этого проекта. Кроме того, мы включаем сюда файл графического интерфейса (.fig) и файл кода (.m) для загрузки, с помощью которого вы можете настроить кнопки в соответствии с вашими требованиями. Ниже приведены некоторые настройки, которые мы сделали для вращения двигателя постоянного тока по часовой стрелке, против часовой стрелки и остановки с помощью трех кнопок.
Скопируйте и вставьте приведенный ниже код в строку № 74, чтобы убедиться, что Arduino общается с MATLAB каждый раз, когда вы запускаете m-файл.
очистить все; глобальный a; а = ардуино ();
Когда вы прокрутите вниз, вы увидите, что для каждой кнопки в графическом интерфейсе есть три функции. Теперь напишите код в каждой функции в соответствии с задачей, которую вы хотите выполнять при нажатии.
В функции кнопки « По часовой стрелке » скопируйте и вставьте приведенный ниже код непосредственно перед конечными скобками функции, чтобы вращать двигатель по часовой стрелке. Здесь мы выставляем HIGH на выводе 6 и LOW на выводе 5, чтобы двигатель вращался по часовой стрелке.
глобальный a; writeDigitalPin (a, 'D5', 0); writeDigitalPin (а, 'D6', 1); пауза (0,5);
Теперь в функции кнопки « Против часовой стрелки » вставьте приведенный ниже код в конце функции, чтобы вращать двигатель против часовой стрелки. Здесь мы выставляем HIGH на выводе 5 и LOW на выводе 6, чтобы вращать двигатель против часовой стрелки.
глобальный a; writeDigitalPin (а, 'D5', 1); writeDigitalPin (a, 'D6', 0); пауза (0,5);
Наконец, в функции кнопки СТОП вставьте в конце приведенный ниже код, чтобы остановить вращение двигателя. Здесь мы подаем LOW на контакты 5 и 6, чтобы остановить двигатель.
глобальный a; writeDigitalPin (a, 'D5', 0); writeDigitalPin (a, 'D6', 0); пауза (0,5);
Необходимый материал
- MATLAB установил ноутбук (предпочтение: версии R2016a или выше)
- Arduino UNO
- Двигатель постоянного тока
- L293D- драйвер мотора
Принципиальная электрическая схема
Управление двигателем постоянного тока с помощью MATLAB
После настройки оборудования в соответствии со схемой, просто нажмите кнопку запуска, чтобы запустить отредактированный код в файле.m.
MATLAB может занять несколько секунд, чтобы ответить, не нажимайте ни одну кнопку графического интерфейса, пока MATLAB не покажет индикацию BUSY, которую вы можете видеть в левом нижнем углу экрана, как показано ниже,
Когда все будет готово, нажмите кнопку по часовой стрелке или против часовой стрелки, чтобы вращать мотор. Когда вы нажимаете кнопку «По часовой стрелке», ток течет через вывод 6 к выводу 5, и двигатель будет вращаться по часовой стрелке, в то время как против часовой стрелки ток течет через вывод 5 к выводу 6, и двигатель будет вращаться по часовой стрелке, будет вращаться по часовой стрелке. Чтобы остановить вращение двигателя постоянного тока, нажмите кнопку СТОП. Тот же метод можно использовать для управления серводвигателем с помощью MATLAB, нам просто нужно соответствующим образом отредактировать код. Вы можете посмотреть видео ниже, чтобы понять полный процесс управления двигателем постоянного тока MATLAB с помощью Arduino.