Рубрики
Без рубрики

Использование Python для проектов Arduino

ВВЕДЕНИЕ Каждый аппаратный инженер и энтузиаст IOT взаимодействовали с рядом Mi … Помечено Arduino, Python, IoT, микроконтроллер.

ВВЕДЕНИЕ

Каждый аппаратный инженер и энтузиаст IOT взаимодействовал с рядом микроконтроллеров и встроенных устройств, наиболее распространенным является микроконтроллер Arduino. Ну, это хорошо подходит для нубов, которые хотят забрать ноги мокрыми, но единственное предостережение – это гибридный язык C/C ++, используемый в Arduino IDE, так как большинство Devs находит его совсем запугивающим. Сегодня я собираюсь доставить вас с помощью кроличьей дыры со мной, показывая вам, как использовать Python, чтобы запрограммировать ваш микроконтроллер Arduino.

ТРЕБОВАНИЯ

Для начала вам понадобится следующее оборудование:

  • Arduino (UNO, MEGA2560 … и т. Д.)
  • USB-кабель Arduino
  • Светодиоды
  • Нажать кнопку
  • 10Комм резисторов

Ну, единственное требование к программному обеспечению является Arduino IDE.

ОБЪЯСНЕНИЕ

Теория позади того, что мы пытаемся сделать, это общение с Arduino, используя последовательное соединение между нашим компьютером и самим микрокомитетом. Есть ряд способов, которыми это может быть достигнуто; В Python например, Pyserial Библиотека может пригодиться, эффективно захватывая последовательные данные, передаваемые между доской и компьютером. Но это статья на другой день.

В этой статье мы собираемся использовать Фирмы Протокол, который уже доступен по умолчанию в Post-установке Arduino IDE. Этот протокол устанавливает серийный формат связи, который позволяет читать цифровые и аналоговые входы, а также отправлять информацию на цифровые и аналоговые выходы.

Загрузка эскиза фирмы

Давайте погрузимся вправо и посмотрим, что мы можем сделать. Эскиз фирмы (как я уже говорил ранее), уже доступен в Arduino IDE, так на рабочем столе, запустите IDE и перейдите к Файл тогда Примеры тогда Фирмы и нажмите на StandardFirmata эскиз. Альтернативное окно будет открыто, на котором вы должны выбрать соответствующий тип и порт доски после подключения доски на компьютер через USB-кабель. Составьте эскиз и загрузка.

Python Fun.

Теперь давайте поиграм с некоторым кодом Python. Вам нужно будет установить Pyfirmata Пакет через менеджер пакета Python, пипс . Теперь для * NIX Systems I.E (MacOS/Linux) Запустите свой терминал и для пользователей Windows, запустите вашу командную строку, а затем запустите следующую команду: Пип Установите Pyfirmata

Вы должны получить какой-то результат, похожий на это …

После установки запустите свой любимый текстовый редактор в моем случае, я напишу код Python на версию открытого исходного кода VS. Теперь мы напишем несколько простых эквивалентных кода Python Equivalent Blinke Sketch (Hello World arduino😉).

Теперь давайте взломать каждый бит кода (PAL PERENTED😉). Таким образом, мы впервые импортируем библиотеку, нам нужно установить последовательное соединение между нашей доской и компьютером. Наш план состоит в том, чтобы контролировать встроенный светодиод, подключенный к PIN 13 на доске, поэтому будет осторожно использовать модуль времени, чтобы контролировать, как долго мы включаем/выключаем светодиод.

Поскольку связь находится через последовательный протокол, нам нужно определить наш порт. Вы можете получить эту информацию от Arduino IDE и для моего случая, как это предусмотрено выше. Для пользователей Windows это может быть COMX где X – любое целое число. Затем мы создали нашу доску ( babboard ) и передайте порт как аргумент для Pyfirmata. Arduino ()

Следующим шагом является запустить основной блок кода в цикле, как в синтаксизе Arduino. Так что давайте будем использовать в то время как Цикл для этого … доска. Digital Является ли списком Python, содержащий все цифровые контакты Arduino, но в нашем случае мы используем PIN 13. .write () Метод используется для записи состояния на цифровой контакт. Состояние представлено как 1 или 0 для Высокий или Низкий соответственно. Первый представляющий 5 В и последнее 0V, следовательно, высокий или низкий. Высокий Состояние предоставляет 5 В светодиодам и включается в то время как Низкий Государство предоставляет 0 В, следовательно, выключение его. .sleep () Метод из время Модуль отвечает за обработку, как долго требуется каждое действие; Так же, как задержка () Функция в синтаксизе Arduino.

Запуск кода

Теперь мы можем запустить код, запустив терминал и выполнение: Python Pyduino.py. Однако вы должны обратить внимание, что правильный синтаксис: python [filename.py]

Теперь не так просто. Давайте еще глубже, добавив кнопку, которая изменит состояние нашего цифрового штифта …

Больше практического опыта

Сначала подключите нашу цепь следующим образом: –

Кнопка подключена к тому, чтобы понизить резистор 10K, чтобы убедиться, что напряжение полностью отстраняется до 0 В на цифровом контакте.

Наш код будет немного изменять, и это будет так же просто, как и другой:

Мы знаем строки с 1 по 5. Линия 6 используется для определения итератора, который постоянно читает состояние наших цифровых контактов. Линия 7 только мнениямирует или активирует его. Линия 9 Явно объявляет цифровой PIN-код 10 как вывод через Pyfirmata. Вход метод. Это необходимо, поскольку использование конфигурации по умолчанию для цифровых контактов является как вывод и не вводится.

Затем мы ходим в нашу петлю и определите наш выключатель. Остальное так же интуитивно понятно, как он получает. Последний шаг, очевидно, работает наш сценарий Python и Voila! Некоторые действия.

ЗАКЛЮЧЕНИЕ

Микроконтроллеры и встроенные устройства находятся на повышении многочисленных приложений, особенно в Интернете вещей (IOT). Энтузиасты, хоббисты, инженеры и другие разработчики получают возможность изучить многочисленные возможности, создающие проекты и содействуя другим. Для болельщиков Arduino эта статья только верхушка айсберга. Путешествие является глубоким темным кроликом, что, как только вы попадете в себя, нет поворота. Это также относится к программистам Python, которые просто не любят C/C ++. Для тех, кто интересуется узнать больше, есть отличная документация на Pyfirmata здесь Это будет иметь большое пользование. Для тех, кто хочет, чтобы изгнать IOT в Python, то есть другие микроконтроллеры, такие как Микропитон и известный Raspberry Pi . Но детские шаги первые😅; Мы все начинаем от где-то.

Во всяком случае, это все сейчас. Надеюсь, тебе понравилось. Спасибо.

Оригинал: “https://dev.to/williamotieno/using-python-for-arduino-projects-2np”