ПРОГРАММИРОВАНИЕ МИКРОКОНТРОЛЛЕРОВ С ПОМОЩЬЮ MICROPYTHON - Студенческий научный форум

XII Международная студенческая научная конференция Студенческий научный форум - 2020

ПРОГРАММИРОВАНИЕ МИКРОКОНТРОЛЛЕРОВ С ПОМОЩЬЮ MICROPYTHON

Власова В.Д. 1, Парфилова А.Д. 1, Швецова Е.А. 1
1Филиал РГППУ в г. Нижнем Тагиле
 Комментарии
Текст работы размещён без изображений и формул.
Полная версия работы доступна во вкладке "Файлы работы" в формате PDF

В настоящее время всё большее распространение получают разнообразные механизмы, в том числе роботы, которые практически исключают участие человека в производственных процессах. Как правило роботы имеют фиксированную конструкцию, что не позволяет им перемещаться. Главным отличием современных мобильных роботов является возможность самостоятельно передвигаться в своей среде и выполнять необходимые действия. Роботы оснащены системой технического зрения и комплексом информационных датчиков, способных сформировать представление о текущей ситуации. Таким образом, мобильный робот представляет собой «интеллектуальную» техническую систему, способную к автономному поведению. Однако по-прежнему предполагается участие человека-оператора в управлении роботом.

Управление роботом осуществляется с помощью микроконтроллера. Он отвечает за все вычисления, принятие решений и коммуникаций. Для программирования микроконтроллеров отлично подходит язык Python, который имеет большую популярность и причисляется к языкам искусственного интеллекта или приравнивается к математическим пакетам. В дальнейшем Python адаптировали в уменьшенную версию MicroPython, которая подходит для микроконтроллеров.

MicroPython — реализация языка программирования Python для микроконтроллеров, даёт возможность аудитории этого языка, используя знакомый синтаксис и принципы программирования работать с небольшими вычислительными устройствами.

Следует ознакомиться с синтаксисом MicroPython. Переменные хранят определенные данные. Для обозначения необходимо присвоить некоторому идентификатору значение при помощи оператора присваивания «=». Определим переменную variable, которая хранит строку "Hello World" (см. рис. 1).

Рис. 1. Обозначение переменной

Условные операторы позволяют контролировать, какой элемент кода необходимо выполнить в том или ином случае. Покажем, как может быть реализован в коде датчик температуры (см. рис. 2).

Рис. 2. Условные операторы

Также для управления роботами используются циклы и функции.

Циклы – еще одна важная особенность любого языка программирования. Это позволяет циклически повторять код и его функции.

Циклы for позволяют установить, сколько раз блок кода выполняется в пределах заданного диапазона.

Циклы while аналогичны циклам for, однако они позволяют запускать цикл до тех пор, пока конкретное условие не станет истинным / ложным.

Функции - это блоки кода, которые получают имена. Данные могут быть переданы в них для обработки и вернуться после неё (возвращаемое значение). 

Перед тем как писать программы, необходимо настроить плату и установить на нее прошивку. После этого создаем проект с помощью Pymakr и запустить встроенный светодиод RGB на мигание разными цветами.

Создадим папку с именем RGB-Blink.

Затем нужно открыть код в Visual Studio Code.

После загрузки текстового редактора необходимо нажать «Файл» > «Открыть» и открыть каталог, созданный на шаге 1.

Теперь, когда есть проект, нужно добавить в него несколько файлов. Стандартный проект MicroPython имеет следующую структуру (см. рис. 3):

Рис. 3. Структура проекта

boot.py Это первый скрипт, который запускается на вашем модуле, когда он включается. Он часто используется для подключения модуля к сети WiFi, чтобы Telnet и FTP можно было использовать без подключения к точке доступа WiFi и не загромождать файл main.py. Не нужно использовать boot.py, если вы новичок;

main.py Этот скрипт запускается сразу после boot.py и должен содержать основной код, который вы хотите запустить на устройстве;

lib Часто хорошей идеей является разделение кода многократного использования на библиотеки. Если вы хотите создавать или использовать библиотеки, созданные другими пользователями, вам нужно будет создать каталог lib и поместить в него файлы библиотеки. Важно поместить файлы .py непосредственно в lib, а не создать каталог! По умолчанию MicroPython не обнаружит библиотеки внутри подкаталога.

Для этого примера нужно создать файл main.py.

Теперь, когда структура проекта настроена, можно настроить конкретные параметры для Pymakr, например, какой последовательный порт использовать. В Visual Studio Code необходимо нажать кнопку «Все команды» в нижней части окна, а затем нажать «Pymakr» > «Настройки проекта». Будет создан файл с именем pymakr.conf внутри вашего проекта с настройками по умолчанию, скопированными из ваших настроек.

После настройки проекта, можно перейти к программированию модуля. Первое, что нужно сделать, – импортировать некоторые библиотеки для взаимодействия со встроенным светодиодом. Прошивка Pycom поставляется с большим количеством встроенных стандартных библиотек. Для этого примера нужно открыть файл main.py и добавить следующий код, представленный на рисунке 4:

Рис. 4. Библиотеки

При этом будут импортированы две библиотеки: Pycom, которая отвечает за специфические функции Pycom, такие как встроенный индикатор, и время, которое является стандартной библиотекой, используемой для синхронизации и задержек.

При включении модуля Pycom встроенный светодиодный индикатор будет регулярно мигать синим цветом. Это «сердцебиение» используется как способ убедиться, что модуль включился и запустился правильно. Прежде чем изменить цвет этого светодиода, нужно отключить это сердцебиение. Ниже предыдущего кода нужно будет добавить на рисунке 5 следующее:

Рис. 5. Выключение сердцебиения

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

Теперь, когда убедились, что устройство подключено и Pymakr может запустить на нем код, можем завершить скрипт, чтобы запустить мигание светодиода (см. рис. 6):

Рис. 6. Код для мигания светодиода

Как только запускается приведенный выше скрипт, он будет работать непрерывно.

Таким образом, благодаря микроконтроллеру MicroPython, возможно делать полноценные проекты, а также роботов на языке Python. Синтаксис этого языка довольно прост и с ним можно и нужно работать начинающим программистам и любителям робототехники.

СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ

Ускорение MicroPython [Электронный ресурс]. – Электрон. дан. – Режим доступа: https://habr.com/ru/post/448702/ Загл. с экрана.

Python для микроконтроллеров [Электронный ресурс]. – Электрон. дан. – Режим доступа: https://xakep.ru/2018/01/25/python-for-microcontrollers/ Загл. с экрана.

Micro Python — Мал, да удал [Электронный ресурс]. – Электрон. дан. – Режим доступа: http://blog.amperka.ru/micro-python/ Загл. с экрана.

Python для начинающих любителей микроконтроллеров [Электронный ресурс]. – Электрон. дан. – Режим доступа: https://arduinoplus.ru/python-start/ Загл. с экрана.

Просмотров работы: 185