Как подключить андроид robot

Инструкция о том, как подключить робот-пылесос к телефону: настройка приложений, обзор их функционала

Одна из особенностей современных роботов-пылесосов — это поддержка их дистанционной настройки через приложение для мобильных телефонов.

Для синхронизации используется Wi-Fi или Bluetooth. Программа позволяет контролировать зону уборки, задать график работы, получать детальные сведения о текущем заряде аккумулятора.

А некоторые модели дополнительно поддерживают голосовое управление.

Как подключить робот-пылесос к телефону, какой функционал это предоставляет, а также с какими нюансами может столкнуться пользователь при этом?

Как выбрать и скачать приложение

Ссылку на скачивания приложения как для Андроид, так и iOS-смартфонов можно получить из инструкции к роботу-пылесосу. Как правило, там имеется QR-код. Достаточно навести на него камеру смартфона, подтвердить переход в магазин приложений, а далее выбрать «Установить».

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

При первом запуске приложения будет запрошено разрешение на доступ ко внутренней памяти (для записи настроек), а также на данные местоположения пользователя (некоторые модели в качестве базового ориентира используют GPS-координаты).

Ещё иногда требуется создать персональный аккаунт на сайте производителя, это позволит управлять техникой даже без подключения к домашней Wi-Fi сети.

Настройка приложения для разных производителей

Функционал и алгоритм настройки приложения для управления роботом-пылесосом от разных производителей несколько различаются.

Xiaomi

Для управления пылесосом необходимо скачать приложение MiHome из GooglePlay или AppStore (доступно на русском языке).

После его запуска — зарегистрировать персональный аккаунт Xiaomi. Затем в главном окне приложения необходимо выбрать ярлык со знаком «+», из перечня устройств указать «робот-пылесос». После — включить робота. В программе автоматически начнется поиск техники, нужно лишь выбрать из представленного списка обнаруженных приборов.

Если для робота будет доступно обновление ПО, его установка начнется автоматически (занимает 4 – 5 минут). После этого пользователь получит доступ ко всем настройкам пылесоса.

С помощью приложения можно:

  • менять настройки голосового управления;
  • задавать график автоматической уборки помещения;
  • указывать отметки «виртуальной стены»;
  • проверять текущий уровень заряда;
  • получать сервисные данные (о текущем заполнении контейнеров, если модель поддерживает данную функцию).

Ecovacs

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

Автоматически откроется магазин приложений, в нем необходимо установить программу Ecovacs Home (доступны версии для Андроид и iOS-смартфонов, поддерживается также планшетный режим работы). Также обязательно зарегистрировать персональный аккаунт «Ecovacs» (робот-пылесос поддерживает облачное хранение настроек).

При первом подключении к технике можно выбрать режим синхронизации: через Wi-Fi или Bluetooth (доступно только в моделях с Bluetooth-модулем).

Через программу также выполняется обновление встроенной прошивки в пылесос.

Eufy (RoboVac)

Для синхронизации робота-пылесоса со смартфоном необходимо перейти в GooglePlay или AppStore, установить приложение EufyHome.

Создавать новый аккаунт в программе не обязательно, управлять роботом можно и в автономном режиме. Для синхронизации по вайфай нужно ещё ввести пароль от домашней WiFi-сети.

ILife

Скачать приложение можно на официальном сайте (только для Андроид-устройств), а также загрузить в магазине приложений AppStore и GooglePlay (iLifeHome или iLifeHome EU).

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

Функционал приложения для синхронизации робота-пылесоса

Функционал напрямую зависит от модели робота-пылесоса, а также поддерживаемых режимов уборки.

Для некоторых пылесосов ещё есть возможность установить приставку для управления умным домом. Её преимущество — это автоматическая синхронизация всех устройств производителя, а также поддержка облачной настройки.

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

  1. Голосовое управление.
  2. Выбор зон уборки.
  3. Расписание проведения автономной уборки помещения.
  4. Выбор и тонкая настройка режимов уборки.
  5. Тестирование пылесоса (проверка работоспособности датчиков, информации о заряде АКБ, заполнении контейнеров).

Голосовое управление

Позволяет управлять базовыми настройками робота-пылесоса через голосовые команды.

Есть два варианта реализации функции:

  1. Голосовые команды уже прописаны в ПО техники. Через приложение для смартфонов можно лишь указать язык. На телефон также должен быть установлен совместимый голосовой ассистент (Google, Яндекс Алиса, Siri).
  2. Голосовые команды можно программировать. Настройка выполняется также через фирменную программу. Сперва нужно указать функцию, затем произнести голосовую команду, после — синхронизировать настройки.
Читайте также:  Андроид для детей дома

Выбор зон уборки

После первой уборки робот-пылесос автоматически составляет интерактивную карту помещения.

Просмотреть её можно в мобильном приложении. Там же можно выбрать зоны, где уборка проводиться не будет. Например, в местах скопления проводов, где хранятся детские игрушки или находятся хрупкие элементы интерьера (вазы).

В некоторых роботах-пылесосах также можно указывать зоны, где уборка будет выполняться на максимальной мощности всасывания (где расположены ковровые покрытия).

Нужно учесть, что исправно функция работает только в том случае, если сенсоры пылесоса (по которым техника ориентируется в пространстве) не загрязнены.

Для некоторых моделей также требуется обязательное наличие WiFi-сети с доступом в интернет для синхронизации координат карты в режиме реального времени.

Расписание проведения уборки

Через смартфон можно задать расписание, по которому робот-пылесос регулярно будет автоматически проводить уборку в помещении (например, когда дома все отсутствуют).

В пылесосах от Xiaomi его можно редактировать дистанционно, а также запустить пылесос из любой точки мира (при наличии доступа в интернет).

Встречается 2 варианта графиков:

  • по календарю;
  • с заданной периодичностью (например, каждые 3 дня).

Выбор режимов уборки

Во всех роботах-пылесосах предусмотрено несколько режимов уборки:

  1. Clean. Выполняется уборка всего помещения по имеющейся интерактивной карте.
  2. Spot. Уборка небольшого участка, размером 1 на 1 метр (можно указать точные данные в программе).
  3. Уборка по расписанию.

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

Тестирование пылесоса

Через приложение можно узнать текущий заряд аккумуляторной батареи, состояние уборки (через сколько будет завершена, потребуется ли подзарядка для завершения задачи), протестировать работу оптических или лазерных сенсоров. Также можно узнать, сколько времени осталось до окончания зарядки.

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

Управление пылесосом после настройки

Даже после синхронизации со смартфоном управлять роботом-пылесосом можно двумя способами:

  1. Через приложение.
  2. В автономном режиме. То есть при помощи кнопок на самом корпусе пылесоса.

Распространенные проблемы и их решения

При использовании роботов-пылесосов пользователи нередко сталкиваются со следующими проблемами:

  1. Пылесос «пропускает» черные участки или темное напольное покрытие. Возникает из-за срабатывания датчиков падения. Они находятся снизу техники, черный цвет могут воспринимать как перепад высоты. Решить проблему можно принудительным включением уборки на данном участке. А вот заклеивать сами датчики — не стоит. Это может привести к тому, что пылесос не сможет нормально проехать через высокий порог.
  2. При попытке синхронизировать пылесос со смартфоном возникает ошибка. Чаще всего это происходит из-за отсутствия доступа к WiFi или Bluetooth (например, роутер, через который выполняется синхронизация, отключен). Рекомендуется перезагрузить как сам телефон, так и пылесос. Также может потребоваться сброс настроек (выполняется через приложение).
  3. Приложение не обнаруживает включенного робота-пылесоса. Возникает, если при первом запуске программы пользователь не предоставил все запрашиваемые разрешения или же если выбран неверный регион. Рекомендуется перепроверить настройки приложения.

Если синхронизировать устройство по вышеуказанным рекомендациям не удается, то следует обратиться за помощью в сервисный центр производителя.

Итого, приложение для управление роботом-пылесосом обязательно следует устанавливать на свой смартфон. Без него получить доступ ко многим функциям попросту невозможно.

Но нужно учесть, что некоторые модели работают через облачную синхронизацию. То есть заданные пользователем настройки работают только в том случае, если пылесос может подключиться по WiFi к роутеру и при этом имеется доступ в интернет.

Полезное видео

О том, как подключить робот-пылесос к телефону (на примере модели Xiaomi Mi Robot Vacuum Mop) и выбрать правильные настройки в приложении, вы узнаете из видео:

Источник

РОБОТ на базе: android, arduino, bluetooth. Начало

Создание робота, даже простенького с ограниченным функционалом, довольно интересная и увлекательная задача. В последнее время любительская робототехника переживает настоящий бум, ей начали увлекаться даже те люди, которые от электроники очень далеки (к ним отношусь и я). Прошло то время, когда нужно было сидеть ночами с паяльником, или травить платы. Все стало гораздо проще, нужно лишь купить Arduino, комплект проводков, сенсоры, датчики, моторчики и вперед к сборке своего первого робота. Таким образом, фокус разработчиков — любителей сместился с электроники и механической части к программированию.
Данная серия статей будет содержать информацию для быстрого старта по созданию своего первого робота, от покупки необходимых деталей до его запуска в наш мир.

Отмечу, что статьи я пишу по ходу самостоятельного изучения материала и создания своего первого робота.

Читайте также:  Mortal kombat ultimate sega для андроид

Предполагается, что человек читающий статью уже имеет опыт в:

  • Установке и настройке среды разработки для android устройств.
  • Написании первой программы Hello World для android устройства.
  • Установке драйверов и среды разработки для Arduino.
  • Написании первой программы (включать, выключать) светодиоды на Arduino.
Сокращения

БТ – Bluetooth;
Андроид – устройство с ОС android, к примеру, смартфон;
Скетч – приложение для Arduino;
Ардуино – Arduino Nano.

Общая схема робота

Пусть робот имеет следующую общую схему (рис.1). Андроид, является «головным мозгом», в котором обрабатываются все данные и проводятся вычисления. На основании результатов вычислении по БТ каналу передаются команды, принимаемые БТ модулем и в дальнейшем поступающие по последовательному порту в Arduino. Arduino обрабатывает поступившие команды и выполняет их при помощи «мышц» (Моторы светодиоды и др.). Кроме того в Arduino поступают данные от «органов чувств» (сенсоры, датчики и др.), которые он приводит в удобный вид и отправляет при помощи БТ модуля в «головной мозг». И так все повторяет до бесконечности.

Рисунок 1
Обоснование именно такой схемы робота следующее:
-БТ модуль и Arduino Nano имеют низкую стоимость, а также маленький объем и вес.
-Андроид, не дорогое и доступное устройство, уже имеется у огромного количества людей, в том числе и у меня.
-Андроид имеет свои сенсоры, датчики и экран для вывода информации
-Простота написания кода для приложений как для андроида так и для ардуино.
Для упрощения задачи построения робота, предлагаю воспользоваться методом «от простого к сложному», т.е. как и при изучении языка программирования создадим первую программу «Hello word». Конечно, это будет не одна программа, а как минимум две (для ардуино и андроида). В каждой последующей статье функционал робота будет увеличиваться.

Постановка задачи

Собрать простенькое устройство, у которого имеются:
-2 кнопки (b1, b2).
-1 светодиод (Led).
И выполняется функционал:
-главное activity содержит 2 кнопки «Отпарвить 0» и «Отправить 1», при нажатии на которые от андроида к ардуино по БТ каналу передаются данные, соответствнно «0» и «1», ардуино их обработвает и зажигает либо тушит светодиод.
-данные о нажатии или отпускании кнопок от ардуино передаются в андроид, на экране главного activity выводится информация об этом.

Закуп необходимых деталей и узлов.

1) Android устройство – смартфон LG P500 (версия Android 2.3.3), либо любое другое устройство на базе Android версией 2.3.3 и выше. Цену не указываю, так как отдельно не покупал, а использую свой смартфон.
2) Arduino NanoV3.0 ( dx.com/ru/p/nano-v3-0-avr-atmega328-p-20au-module-board-usb-cable-for-arduino-118037 ) — 11,32$
3) Модуль Bluetooth ( dx.com/ru/p/bluetooth-board-module-4-pin-121326 ) — 10,57$
4) Макетные провода ( dx.com/ru/p/30cm-breadboard-wires-for-electronic-diy-40-cable-pack-80207 ) — 2,51$
5) Кнопки — 2шт., светодиод – 1 шт. – 50 рублей
Итого: 855,20 рублей.

Приступим к работе

Arduino

Соберем из имеющихся деталей схему (рис. 2)

Рисунок 2
Питание на arduino подается по USB кабелю, который подключается к компьютеру, по нему же загружается и программное обеспечение (скетч) выполняемое на нем. Необходимо отметить, что загружать скетч в arduino можно только тогда, когда отключено питание от Bluetooth модуля (Вывод (17) 3V3), в противном случае возникает ошибка.
Подробности установки среды разработки Arduino и драйверов можно найти на официальном сайте: arduino.ru/Guide/Windows
Ниже приведен скетч который необходимо загрузить в ардуино:

Объявляем переменные, напротив каждой стоит комментарий.
Инициируем последовательное соединение и задаем скорость передачи данных в бит/c (бод). Мой БТ модуль работает на скорости 38400, но может быть скорость 9600 (скорость БТ модуля можно задавать при помощи AT команд). Устанавливаем режим работы заданного входа/выхода(pin) как входа или как выхода. Подаем HIGH значение на входы и выходы.
Функция void contact_bounce(int buttton) обрабатывает нажатие кнопок и позволяет устранить дребезг контактов, который возникает при соприкосновении или расхождении контактов в механических переключающих устройствах, таких, как кнопка, происходит многократное замыкание и размыкание.
В основном цикле Loop слушаем последовательный порт, и если на него пришли данные мы их обрабатываем. Кроме того вызываем функцию обработки нажатия кнопок и устранения дребезга контактов.
Загрузив скетч в ардуино, можем проверить его работоспособность – запустив монитор порта. При нажатии кнопок в окне монитора будет выводиться надпись «Press button b». Проверить работу светодиода удастся только после написания приложения для андроида.
В данной статье для ардуино будет использоваться только этот скетч.Приступим к разработки приложения для андроида.

Android

Для удобства отладки приложения андроида, рекомендую использовать не «Android virtual device», а реальный смартфон с ОС Android версии от 2.3.3 подключенный через USB кабель к компьютеру в режиме «Отладки». Существует огромное количество статей как это сделать.

Android ШАГ 1

Создаем новый проект «Android application project»
Для работы с БТ необходимо выставить права на использование его нашим приложением. Для этого заходим в манифест, выбираем закладку Permissions, нажимаем add, далее Uses permission, и устанавливаем следующие права: android.permission.BLUETOOTH, android.permission.BLUETOOTH_ADMIN
Теперь оформим основное activity, в res/layout/activity_main.xml поместим код:

Читайте также:  Android drag and drop on view

Таким образом, основное activity примет вид:

Рисунок 3
Текстовое поле «txtrobot», будет отображать всю необходимую нам информацию. Кнопки b1 и b2, будут отправлять команды в arduino.
Теперь переходим в src/../MainActivity.java здесь и будет располагаться наш основной код. Подключим пакет Api для Bluetooth:

Перед тем как использовать БТ необходимо убедится, что в нашем андроиде он присутствует. Создадим экземпляр класса BluetoothAdapter (отвечающий за работу с установленным в андроиде БТ модулем):

Если андроид не имеет БТ то будет возвращено null:

В данном виде программу уже можно запустить. На экране андроида вы должны увидеть надпись: «Bluetooth присутствует».
Теперь необходимо убедиться, что БТ включен, либо предложить его включить. Добавим константу:

Запустив измененное приложение на андроиде, Вам будет выдан «Запрос разрешения на включения Bluetooth», подтвердив его, тем самым Вы активируете БТ.
Полный код приложения:

Android ШАГ 2

Для дальнейших экспериментов, необходимо «спарить» наш андроид и БТ модуль, для этого на андроиде в настройках БТ, выполним поиск и подключимся к БТ модулю, пароль «1234».
Если вдруг удаленный БТ модуль не будет нормально работать, просто отключите от него все провода (VCC, GND,RX,TX), тем самым сделав жесткую перезагрузку, и снова подключите их — это должно помочь.
Теперь попробуем программно подключится к удаленному БТ модулю: основной код подключения разместим в onResume. onResume – это одно из состояний нашего Activity, а именно, Activity видно на экране, оно находится в фокусе, пользователь может с ним взаимодействовать. Ниже приведен основной код Activity:

Доступ к удаленному БТ модулю получаем по его МАС адресу btAdapter.getRemoteDevice(MacAdress). Узнать MAC-адрес БТ модуля можно, при помощи программы для андроида: Bluetooth Terminal.
Что бы убедится, что доступ к БТ модулю получен, используем метод getName(), который позволяет получить имя удаленного БТ модуля, и выводим результат на экран андроида.
Также в этом примере, была добавлена возможность ведения лога, который по ходу выполнения программы можно просматривать, и обнаруживать существующие ошибки. Кроме того создана функция MyError, которая вызывается в том случае если нужно аварийно завершить приложение.
Запустив приложение, на экране андроида в текстовом поле «txtrobot» отобразится имя удаленного БТ модуля.

Android ШАГ 3

Доступ к удаленному БТ модулю получен, следующий наш шаг передать данные от андроида к нему. Для этого в onResume(), создадим сокет:

где UUID (Universally Unique Identifier) — это стандарт идентификации, используемый в создании программного обеспечения. Добавим в определение константу UUID:

Чтобы не тормозить соединение отменим поиск других БТ устройств:

При не удаче закроем сокет:

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

В конструкторе public ConnectedThred(BluetoothSocket socket) создается объект управляющий передачей данных через сокет:

Для отправки данных из главного activity вызывается метод sendData(String message) с параметром текстового сообщения, которое преобразуется к типу byte. Метод cancel() позволяет закрыть сокет.
Напишем, обработчики нажатия кнопок b1 и b2, содержащие вызов функции sendData(String message) и сделаем запись об этом в логе. Полный код приложения приведен ниже:

Написанное нами приложение, позволяет передавать по БТ от андроида к ардуино данные – «0» и «1», которые в свою очередь для ардуино являются командами «1» — зажечь светодиод, а «0» — потушить. Таким образом, с учетом общей схемы робота, мы научились отдавать команды от «головного мозга» к «мышцам». Осталось дело за малым, научить андроид принимать данные от «органов чувств».

Android ШАГ 4

Получение данных также как и отправку, необходимо выполнять в отдельном потоке, чтобы избежать зависание главного activity. Принятые данные от БТ модуля мы будем выводить на экран главного activity в текстовом поле – MyText. Но возникает трудность — работа с view-компонентами доступна только из основного потока. А новые потоки, которые мы создаем, не имеют доступа к элементам экрана. Для решения данной проблемы воспользуемся механизмом Handler.
Handler — это механизм, который позволяет работать с очередью сообщений. Он привязан к конкретному потоку (thread) и работает с его очередью. Handler умеет помещать сообщения в очередь. При этом он ставит самого себя в качестве получателя этого сообщения. И когда приходит время, система достает сообщение из очереди и отправляет его адресату (т.е. в Handler) на обработку.
Объявим Handler:

Источник

Оцените статью