Как мы работаем с платой Arduino, часть 1 (моделирование)

Apr 29, 2024 18:55

Начало:
1. Начали курс по работе с платформой Arduino
2. Подключение платы Arduino к компьютеру

Мы используем аналог платы «Arduino Uno R3». Мы используем набор (конструктор) «Starter Kit №7» из магазина arduino-kit.ru, плата входит в этот набор. На наших настольных компьютерах установлена операционная система «Windows 10».

Моделирование

Сначала мы создаем модель будущего устройства. Для этого мы используем известный бесплатный веб-сервис (запускается в браузере) «Tinkercad.com». Этот веб-сервис в основном известен как веб-программа для обучения детей 3D-моделированию (у меня про это есть ряд постов, например тут). Но у него существует менее известный раздел, посвященный моделированию устройств на базе ряда плат с микроконтроллерами, в том числе для устройств на базе платы «Arduino Uno». Этот раздел называется «Circuits» (по-русски «Цепи»):

https://www.tinkercad.com/circuits

Для работы с этим разделом можно использовать тот же аккаунт, который использовали для работы в разделе 3D-моделирования. В принципе, это неудивительно, так как аккаунт вы изначально создаете на стороннем сайте - www.autodesk.com. Компания «Autodesk» является на данный момент владельцем веб-сервиса «Tinkercad.com», а полученный аккаунт дает доступ сразу к ряду веб-сервисов компании «Autodesk».

Вот как выглядит процесс построения модели в разделе «Circuits» веб-сервиса «Tinkercad.com» у меня в браузере (щелкните мышью по картинке, чтобы открыть ее в большем размере):




После построения модели мы пишем программу для микроконтроллера. Это можно сделать в том же окне веб-сервиса «Tinkercad.com», в котором создаем модель устройства. На вышеприведенной иллюстрации можно заметить вверху окна справа кнопку «Код» (у меня включен интерфейс на русском языке, по умолчанию там интерфейс на английском языке). Этой кнопкой можно открыть редактор кода.

В редакторе кода в разделе «Circuits» веб-сервиса «Tinkercad.com» можно работать тремя способами: «Блоки», «Блоки с текстом», «Текст». «Блоки»: можно писать программу на визуально-блочном языке программирования, похожем на язык Скретч (программу составляем из разноцветных блоков). «Блоки с текстом»: окно редактора кода разделено на две части, слева - программа из блоков, справа - то же самое на языке C++. «Текст»: программу пишем на языке C++.

Режимы работы редактора кода «Блоки» и «Блоки с текстом» можно легко переключать между собой. Но если вы перейдете в режим «Текст», то возвратиться в режим с визуально-блочным программированием уже нельзя. Для первых простых моделей мы использовали режим «Блоки». Но для более сложных моделей визуально-блочный язык становится неудобен, поэтому переходим на язык программирования C++ (я веду для студентов курс программирования на языке C++ и курс создания устройств на платформе «Arduino» параллельно, поэтому для нас применение языка C++ - привычный, предпочитаемый способ написания программ).

Вот как выглядит работа в разделе «Circuits» веб-сервиса «Tinkercad.com» в редакторе кода (в режиме «Текст»; щелкните мышью по картинке, чтобы открыть ее в большем размере):




Код на языке C++, который видно на иллюстрации выше, получен переключением из режима редактора кода «Блоки» в режим «Текст». Здесь модель простая, для нее мы писали код на визуально-блочном языке. Для большинства моделей, более интересных, чем эта, мы пишем код на языке C++ сами, с нуля.

Тут же, в редакторе кода, как видно на иллюстрации выше, внизу, доступен «монитор последовательного интерфейса» (по-английски «serial monitor») и «графопостроитель последовательного интерфейса» (по-английски «serial plotter»). Это два полезных инструмента из интегрированной среды разработки «Arduino IDE», о них я расскажу как-нибудь в другой раз, если у меня будет на это время. В редакторе кода в разделе «Circuits» веб-сервиса «Tinkercad.com» эти инструменты можно разворачивать (как на иллюстрации выше) или свернуть, чтобы не мешали писать код.

Программы можно хранить вместе с моделью в своем аккаунте на веб-сервисе «Tinkercad.com», либо можно выгрузить к себе на компьютер в текстовый файл с расширением «.ino». В одной модели может быть несколько разных плат с микроконтроллерами, для каждой из которых может быть написана своя программа.

После того, как вы создали модель и написали программу, модель можно запустить. Для этого на иллюстрациях выше в окне веб-сервиса вверху справа есть кнопка «Начать моделирование». После нажатия на эту кнопку веб-сервис начинает выполнение вашей программы, а работа модели отображается в окне браузера. Нужные светодиоды включаются и выключаются в запрограммированном порядке, зуммер (если он есть в вашей модели) издает звуки запрограммированной частоты и так далее. Если вы что-то сделали неправильно (неправильно собрали модель или допустили ошибки в программе), то модель будет работать с ошибками или не будет работать вообще.

Если модель работает так, как вы планировали, то следует выгрузить программу к себе на компьютер в текстовый файл с расширением «.ino», собрать модель в реальности и загрузить программу в микроконтроллер.

Реализация модели в «железе»

Продолжение следует...

Инструмент, Образование, Программирование, Железо, Школа

Previous post Next post
Up