Интерфейс Arduino с MATLAB
Мы собираемся создать простые MATLAB-файлы, чтобы поговорить с нашей платой Arduino. Пакеты поддержки MATLAB для оборудования Arduino позволяют использовать MATLAB для связи с вашей доской через USB-кабель. Пакеты поддержки доступны для 32-разрядной и 64-разрядной Windows, 64-разрядной Mac OS и 64-разрядной Linux.
Установка пакетов
Вы можете легко установить пакеты через ваш MATLAB.
Сначала запустите MATLAB и щелкните раскрывающееся меню Add-Ons. В раскрывающемся меню выберите « Получить пакеты поддержки оборудования». Он запустит окно установки пакета.

Выберите « Установить из Интернета» и затем « Далее».

В следующем окне вы увидите все доступные пакеты для MATLAB и Simulink. Выберите пакет Arduino, затем проверьте все отображенные пакеты и нажмите « Далее», чтобы продолжить установку. Обратите внимание, что это изображение показывает, что я переустанавливаю пакеты Arduino, потому что я их ранее устанавливал.

Затем установщик попросит вас войти в свою учетную запись MathWorks. Если у вас нет учетной записи, вы можете создать ее во время установки. Примите лицензионное соглашение на следующем экране и продолжите загрузку пакетов. Теперь вам нужно подождать, пока MATLAB загрузит и установит все необходимые пакеты.
тестирование
После установки пакетов подключите плату Arduino к компьютеру и введите следующую команду в командном окне MATLAB,
> a = arduino ()
если к вашему компьютеру подключено более одного Arduino, вам необходимо указать тип платы, с которой вы будете общаться:
> a = arduino ('com3', 'uno')
Затем MATLAB попытается связаться с вашей доской. В случае успеха MATLAB отобразит свойства платы Arduino, подключенной к вашему ПК, как показано ниже:

Эта информация отображает порт, на котором подключена ваша плата, модель вашей платы Arduino и доступные контакты и библиотеки, доступные для платы.
В вашей рабочей области вы увидите переменную a, которая является объектом MATLAB Arduino. Для очистки этого объекта выполните следующую команду.
> очистить
Эта команда удалит объект a из вашей рабочей области.
Схема подключения
Подключите cricuit, как показано ниже, чтобы выполнить следующие два примера:

Он будет выглядеть примерно так:

Эксперимент 1: Цифровой ввод-вывод с MATLAB
В этом примере мы будем мигать светодиодом MATLAB.
аппаратные средства
- Arduino Uno
- 1 x 1k Ом резистор
- Кабель USB для ардуино
- СВЕТОДИОД
Запустите MATLAB и создайте m-файл и напишите следующий код:
Код
% create an arduino object a = arduino('com3', 'uno'); % start the loop to blink led for 10 seconds for i = 1:10 writeDigitalPin(a, 'D11', 1); pause(0.5); writeDigitalPin(a, 'D11', 0); pause(0.5); end % end communication with arduino clear a
Скачать код
Убедитесь, что в MATLAB нет предыдущего объекта Arduino, иначе MATLAB отобразит сообщение об ошибке. Сохраните файл и запустите его. Это будет мигать светодиодом в течение 1 секунды.
меры
- Запустите MATLAB и установите пакеты поддержки оборудования Arduino (если они еще не установлены).
- Подключите плату к ПК и проверьте, правильно ли она работает с MATLAB.
- Сделайте схему, как показано на принципиальной схеме, и подключите штырь 11 к одному концу светодиодного вывода через резистор.
- Подключите другую точку светодиода к контакту заземления на плате arduino.
- Напишите свой m-файл и сохраните его. Запустите файл, и MATLAB будет записывать этот файл на ваш компьютер.
- Ваш светодиод начнет мигать.
видео
Эксперимент 2: Аналоговое управление
В этом примере мы будем использовать сигнал с широтно-импульсной модуляцией для изменения яркости светодиода. Программа вычисляет яркость_степени путем деления максимального и минимального напряжения, подаваемого штырем на количество итераций, в которых мы достигнем максимальной яркости светодиода.
аппаратные средства
- Arduino Uno
- 1 x 1k Ом резистор
- Кабель USB для ардуино
- СВЕТОДИОД
Подключите схему, как показано выше на принципиальной схеме.
Код
% create an arduino object a = arduino('com3', 'uno'); % calculate a brightness step brightness_step = (5-0)/20; % start a loop to brighten up the led for i = 1:20 writePWMVoltage(a, 'D11', i*brightness_step); pause(0.1) end % start a loop to turn off the led in steps so that it looks like % led is fading for i = 1:20; writePWMVoltage(a, 'D11', 5-i*brightness_step); pause(0.1) end % end communication with arduino clear a
Скачать код
меры
- Запустите MATLAB и установите пакеты поддержки оборудования Arduino (если они еще не установлены).
- Подключите свою плату к ПК и проверьте, правильно ли она работает с MATLAB.
- Выполните схему, как показано на принципиальной схеме, подключите вывод 11 к одному концу светодиодного вывода через резистор.
- Подключите другую точку светодиода к контакту заземления на плате arduino.
- Напишите свой m-файл и сохраните его. Запустите файл, и MATLAB будет записывать этот файл на ваш компьютер.
- Ваш светодиод начнет светиться, а затем погаснет.
Вуаля!
видео
Попробуйте этот проект сами! Получить спецификацию.