- Digitrode
- цифровая электроника вычислительная техника встраиваемые системы
- 5 лучших приложений на iPhone для Arduino
- Digitrode
- цифровая электроника вычислительная техника встраиваемые системы
- Bluetuino – управляем Arduino с помощью iPhone
- Управление ардуино с iphone
- Связь с автором (комментарии/рецензии к статье)
- Оставить комментарий
Digitrode
цифровая электроника вычислительная техника встраиваемые системы
5 лучших приложений на iPhone для Arduino
Arduino представляет собой отличную платформу для прототипирования с помощью которой радиолюбители и энтузиасты изучают электронику и создают хитроумные устройства. Поддержка экосистемы Arduino в наши дни распространена очень широко. Помимо среды разработки Arduino IDE сегодня существует множество вспомогательных программных инструментов, в том числе приложения для мобильных устройств.
Среди этих приложений большую долю занимают программы для операционной системы Android, но это не значит, что пользователи iPhone будут обделены. И для iPhone сегодня можно скачать немало полезных приложений, о некоторых из них будет рассказано в данном материале.
1. Arduino Companion. Это очень информативное приложение, которое будет полезно в первую очередь новичкам, поскольку оно даст справочную информацию не только по Arduino, но и по электронике в целом. Arduino Companion позволяет в режиме оффлайн получать информацию о платах Arduino, библиотеках, функциях и т.п. Помимо этого здесь есть очень удобный калькулятор номиналов резисторов на базе цветовой маркировки.
2. Blynk. Если вы хотите управлять Arduino, Raspberry Pi, ESP8266 и другими популярными электронными платформами с помощью iPhone, то приложение Blynk является, пожалуй, лучшим решением. Это приложение функционирует по принципу drag-n-drop (перетащи-и-брось), поэтому вы сможете реализовать свои алгоритмы по управлению Arduino довольно легко и просто. Здесь представлено много виджетов на любой вкус: кнопки, слайдеры, графики и прочие элементы, позволяющие создать практически любой интерфейс. Blynk может связываться с устройствами по WiFi и Bluetooth, поэтому важно, чтобы модули WiFi и Bluetooth в вашем iPhone исправно работали, если это не так, то необходимо выполнить ремонт iPhone, чтобы впоследствии обеспечить надежное соединение iPhone и Arduino или другого устройства по беспроводному каналу.
3. Handy BLE. Это приложение также позволяет управлять Arduino с помощью iPhone, но только через интерфейс Bluetooth Low Energy. Handy BLE впервую очередь заточено на работу с LightBlue Bean, который можно использовать в качестве промежуточного интерфейсного модуля. Для написания сценариев в Handy BLE никаких знаний программирования под iOS не требуется. В приложении можно быстро и просто разместить на экране и настроить кнопки, по нажатию которых будут отправляться определенные команды. Помимо этого для приема и отправки команд в Handy BLE имеется свой терминал. Данное приложение отлично подойдет как новичкам, так и опытным радиолюбителям, экспериментирующим с Arduino и Bluetooth Low Energy.
4. Arduino Ethernet Controller. Это приложение позволит вам управлять по проводному интерфейсу Ethernet одной или несколькими платами Arduino, которые включают в себя библиотеку AEC. В качестве элементов управления здесь доступны только кнопки и слайдеры. Приложение достаточно просто и интуитивно понятно в работе.
5. Light Show. Это красивое приложение для iPhone представляет собой контроллер цвета для осветительных устройств на базе Arduino и других подобных микроконтроллерных платформах. Работает оно через интерфейс Bluetooth Low Energy. С помощью цветового круга можно выбрать любой цвет, также можно составлять целые последовательности цветов и в дальнейшем проигрывать ваш цветовой сценарий на устройстве, основанном на Arduino.
Источник
Digitrode
цифровая электроника вычислительная техника встраиваемые системы
Bluetuino – управляем Arduino с помощью iPhone
Платформа Arduino сегодня настолько популярна среди радиолюбителей, что, возможно, большинство на сегодняшний день любительских электронных устройств сделаны на основе этой платформы. В то же время смартфоны iPhone компании Apple не менее популярны среди гиков. Так почему бы не объединить эти два устройства в один высокоэффективный тандем?
Для того чтобы с помощью iPhone можно было управлять устройствами на базе плат Arduino через интерфейс Bluetooth, существует специальное приложение под названием Bluetuino, которое можно найти в AppStore. Это приложение имеет очень простой интерфейс взаимодействия с пользователем, и благодаря этому можно без особого труда настроить пользовательские команды удаленного управления, которые впоследствии будут передаваться Arduino.
Пользоваться приложением Bluetuino довольно легко. Здесь есть два типа действий: основные действия удаленного управления (basic remote action) и слайдерные действия (slider action). Основные действия предполагают отправку одной команды (одного значения), слайдерные действия предполагают отправку двух значений, определяющих диапазон. Для того чтобы добавить действие в Bluetuino необходимо открыть меню Remote, промотать вниз и нажать на кнопку Add.
Чтобы связь между iPhone и Arduino по интерфейсу Bluetooth была установлена, необходимо подключить Bluetooth-модуль, например, HM-10, который подключается к Arduino через интерфейс UART.
Источник
Управление ардуино с iphone
Библиографическая ссылка на статью:
Трушин А.Н., Арутюнян М.Г. Организация соединения и обмен данными по bluetooth между Arduino и iOS-приложением // Современная техника и технологии. 2017. № 5 [Электронный ресурс]. URL: https://technology.snauka.ru/2017/05/13480 (дата обращения: 08.12.2021).
Развитие технологий позволило уместить на одной небольшой плате несколько системных устройств, устройство получило название микроконтроллер. Одним из таких монокристаллических микрокомпьютеров является Arduino, которое состоит из микроконтроллера, установленного на печатной плате и минимально необходимых компонентов для работы. Для создания нового электронного устройства понадобится плата Arduino, кабель связи и компьютер. Для программного обеспечения в виде управляющей программы базовые знания варианта языка С/С++ для микроконтроллеров, поскольку добавлены компоненты, разрешающие писать программы без знания аппаратной части [1 Стр.18-19].
Обмен данными через bluetooth
Фактически модуль Bluetooth — это модем, поскольку он преобразует сигнал из одной среды в другую. Передаваемый электроимпульсами по проводникам последовательный TTL-сигнал преобразуется в радиосигнал в Bluetooth приёмопередающем устройстве и наоборот, из радиосигнала преобразует в электроимпульсный сигнал. Функция модема — устанавливать соединение с другими модемами для обмена информацией и разъединения канала связи. Для выполнения функций соединения в модемы заложено два рабочих режима:
командный – обмен информацией при данном режиме происходит с самим модемом;
режим данных – обмен информацией происходит через сам модем.
Модемы Bluetooth по своему принципу работы аналогичны любым другим типам модемов и в них заложен набор команд протокола Hayes АТ, аналогичный для телефонных модемов. Команды данного протокола прописываются в символах ASCII. Модемы на протоколе Hayes АТ работают в режиме данных и командном, переключение режимов осуществляется строкой +++ [2].
Микроконтроллеры и управление приложением
Микроконтроллер — микросхема с несколькими контактами «вход» и «выход». Управление через микросхему осуществляется по простейшему принципу и имеет три основных этапа:
1) к входам подключаются различные датчики, фиксирующие движение, звук, уровень освещения и т. д.
2) к выходам подключаются устройства управления, такие как системы освещения, динамики, электроприводы и т. д.
3) пишется программа управления микроконтроллером и приложением.
const
int chipSelect = 4 ;
void
setup ()
/* Open serial communications and wait for port to open: */
Serial.begin( 9600 );
while (!Serial) <> /* wait for serial port to connect. Needed for Leonardo only */
Serial.print( “Initializing SD card…” );
/* see if the card is present and can be initialized: */
if (!SD.begin(chipSelect)) <
Serial.println( “Card failed, or not present” );
// don’t do anything more:
return ;
Serial.println( “card initialized.” );
void
loop ()
// make a string for assembling the data to log:
// read three sensors and append to the string:
for ( int analogPin = 0 ; analogPin 3 ; analogPin++) <
int sensor = analogRead(analogPin);
if (analogPin 2 ) <
Arduino
Arduino — открытая платформа, состоящая из платы микроконтроллера и программного обеспечения (ПО) – IDE (Integrated Development Environment). ПО для платы пишется в приложениях на компьютере и через канал соединения с платой загружается на устройство.
Основа программы под Arduino состоит из двух команд: setup() и loop(). Перед командой setup() пишутся переменные, задействуются библиотеки. Команда setup() выполняется только один раз после каждого подключения или сброса платы под управлением Arduino. Данная команда запускает переменные и работу портов входа и выхода платы. Данная команда обязательна для управляющей программы. Команда loop() предназначена для циклического выполнения команд, которые прописываются в её теле. Пример реализации данных команд в программе:
Serial.begin( 9600 );
delay( 1000 );
Набор кодов, сгруппированный в блок и имеющий имя, прописанное на данном коде, называется функцией. Выполнение набора кодов осуществляется при вызове функции. Для снижения ошибок в программе и выполнения повторяющихся команд прописываются различные функции. При написании функции в начале обозначается её предназначение. К примеру, значение, которое возвращается функцией – целое число (int). У функций, которые не возвращают значение, имеют тип – пусто (void). За функцией пишется её имя и в скобках параметры передаваемые функцией. К примеру:
type functionName (parameters)
К цельному типу относится функция задержки или паузы delay(Val).
Скобки <> ставятся в начале и в конце функций. К примеру:
type function ()
Количество открывающих скобок должно быть равным количеству закрывающих, иначе будут критические ошибки в программе. В Arduino есть удобная функция проверки парности скобок. Осуществляется проверка двумя способами: при выделении любой одной скобки парная скобка высвечивается, выделение точки за скобкой также подсвечивает пару скобок [3].
Обмен данными микроконтроллера с компьютером происходит через проводной интерфейс или по радиосигналу, обмен информацией осуществляется через библиотеку. В Arduino установлены стандартные библиотеки, но иногда их функции не рассчитаны на работу управляемым через микроконтроллер оборудованием. При необходимости устанавливаются дополнительные библиотеки. В папке “Libraries” установлены стандартные библиотеки, дополнительные библиотеки устанавливаются в папку libraries.
Arduino и iOS-приложение
Для того чтобы интегрировать Arduino с Apple (iPad или iPhone) понадобится приложение Arduino Code и среда разработки Blynk[4]. Arduino Code устанавливается на iPad или iPhone через данное приложение осуществляется интеграция устройств iOS и Arduino. Для написания управляющей программы платы Arduino будет использоваться Blynk. Помимо облачной среды для работы, у Blynk есть возможностью загрузки приложений на компьютер. Поскольку в Blynk для разработки имеются версии для iOS помимо Android, данное приложение было выбрано для интеграции с Apple. Немаловажно, что Blynk может связываться с устройствами по Bluetooth.
На первом этапе соединяем программируемую плату со смартфоном, через поддерживаемые интерфейсы: SeeedStudio Ethernet Shield V2.0 (W5200), Official Ethernet Shield (W5100), RN-XV WiFly, ESP8266, Official Arduino WiFi Shield, ESP8266 (WiFi modem), Adafruit CC3000 WiFi, ENC28J60 и USB (Serial). Интеграция Arduino с компьютерами Macintosh (Apple) осуществляется через меню Tools. Далее в меню выбирается строка Serial Port, далее подключение осуществляется через порт, у которого название начинается с /dev/cu.usbserial. На втором этапе в приложении добавляем виджеты (программы), настройку адресов выводов и при необходимости прописываем код. Для разработки виджета применяется drag’n’drop. В Blynk создаются программы к платам Arduino: Due, Mini, Uno и для других плат Arduino. Программа Arduino Code устанавливается на компьютер и для написания команд понадобится автодополнение (code complete). Приложение можно скачать из App Store’а. При загрузке программы на плату Arduino необходимо отключить Bluetooth модуль, поскольку связь с микроконтроллером осуществляется через один и тот же порт. В качестве источника питания для микроконтроллера будет использоваться блок питания на 9 Вольт. Также в приложении Arduino Manager есть возможность установить готовый widget. Для управления устройством замка подойдёт widget Rotary Switch. Этот widget по своей сути поворотный переключатель (как и следует из названия). Имеет два положения off/on. Простой и удобный widget для управления устройством, у которого только два режима закрыто/открыто.
Создаём электронный замок из серии “умный дом”
Для соединения платы Arduino будет использоваться плата Bluetooth HM-10. Данный модуль работает в режимах Master и Slave. Совместим с более старыми версиями под Arduino, такими как: HC-05;-06;-07. Для того чтобы устройства Apple могли обнаруживать Bluetooth сигнал от платы необходимо установить программу — LightBlue.
К плате под управлением Arduino подключаем привод, который будет управлять ригелем замка или электромагнитную задвижку, которая и будет выполнять функцию запирания двери. В данном случае программа управления будет негромоздкой и выглядеть следующим образом:
int pos = 0 ;
void
setup () <
myservo.attach( 10 ); /* Назначаем 10 пин на управление приводом */
void
loop () <
for (pos = 0 ; pos 90 ; pos += 1 ) /* движение от 0° до 90° */
delay( 25 ); /* Указываем время с задержкой (25 мс) для перехода в другое положение */
for (pos = 90 ; pos > 0 ; pos -= 1 ) /* Движение от 90° до 0° */
delay( 25 ); /* задержка 25мс для достижения обратного положения */
Связь будет осуществляться через приложение Arduino Manager, которое напрямую управляет контроллером через операционную систему iOS. При необходимости меняем настройку скорости подключения платы Bluetooth HM-10.
SoftwareSerial mySerial ( 7 , 8 ); // TX, RX
#define mySerial Serial3
#define DEVICE_SPEED 9600
#define CONSOLE_SPEED 9600
void
setup () <
pinMode( 7 , OUTPUT);
pinMode( 8 , INPUT);
void
loop () <
char c;
if (Serial.available()) <
if (mySerial.available()) <
Выводы
Для создания подобного запорного механизма, несомненно, понадобится плата Arduino, сервоприводы и написание управляющей программы и других компонентов в зависимости от поставленной задачи. Управление устройством будет осуществляться на iPad или iPhone по Bluetooth через приложение Arduino Manager. Данное приложение загружается с App Store и предназначено для управления множеством устройств. Имеет лёгкую настройку управления и датчик обратной связи. Генератор кода позволяет создавать коммуникационную инфраструктуру связи между платой Arduino и устройством iOS и генерировать код для каждого выбранного устройства. Также есть возможность воспользоваться готовым widget-ом, для управления устройством.
Arduino даёт возможность экспериментировать и применять данный микроконтроллер для различных устройств. Приложение Arduino Manager управлять этими устройствами с iPad или iPhone.
Библиографический список
- Проекты с использованием контроллера Arduino. Петин В. А. Санкт-Петербург «БХВ-Петербург» 2014 г. Стр. 18-19. Стр. 47.
- Arduino, датчики и сети для связи устройств. Пер. с англ. — 2-е изд. — СПб.: БХВ-Петербург, 2015. Стр. 102.
- Arduino блокнот программиста. Brian W. Evans. Published: First Edition Auqust 2007 г. Стр. 9-10.
- Blynk облачная среда для разработки виджетов для iOS и Android. Ресурс сетевого доступа: http://www.blynk.cc/
Связь с автором (комментарии/рецензии к статье)
Оставить комментарий
Вы должны авторизоваться, чтобы оставить комментарий.
Если Вы еще не зарегистрированы на сайте, то Вам необходимо зарегистрироваться:
© 2021. Электронный научно-практический журнал «Современная техника и технологии».
Источник