MajorTom:ARDrone 2.0 с голосовым управлением Alexa
Бэкдор сотовой связи с голограммой Nova на Raspberry Pi flask-ask server-Amazon Alexa контролируется.
История
Мотивация
Наш предыдущий проект с ARDrone 2.0 помог нам узнать о новом проекте. Наша текущая заявка на Alexa и Arduino Smart Home Challenge познакомила нас с навыками, необходимыми для создания рабочей демонстрации дронов с голосовым управлением.
Вот что мы придумали:
Ниже мы описываем наш процесс.
Настройка программного обеспечения Pi
Чтобы настроить Pi с необходимым программным обеспечением, установите flask-ask:
$ sudo pip install flask-ask
Вам также понадобится библиотека, которая управляет ARDrone через Wi-Fi. Клонируйте репозиторий и запустите предоставленный скрипт install.sh.
Настройка навыков и приложения Alexa
Мы создали навык, который был связан с сервером, работающим на Raspberry Pi. Flask - это простая в использовании библиотека Python для обслуживания приложения. Используя flask-ask, мы можем настроить сервер для связи с нашим навыком Alexa. Мы используем Ngrok для внешнего обслуживания приложения и предоставляем нам https-ссылку, которая нам понадобится для наших навыков работы с Alexa. Вот фрагмент кода приложения. Полный файл app.pyscript будет прикреплен ниже.
#! / usr / bin / env pythonfrom flask import Flaskfrom flask_ask import Ask, statementimport ardroneimport timeapp =Flask (__ name __) ask =Ask (app, '/') drone =ardrone.ARDrone () time.sleep (5) drone.reset () @ app.route ('/') def home ():вернуть наземное управление майору Tom'@ask.intent ('reset') def reset ():drone.reset () Speech_text ="сброс" возвратный оператор (Speech_text)
Чтобы запустить это приложение, просто введите:
python app.py
В этом проекте мы использовали ngrok для обслуживания приложения по https. Мы использовали зарезервированное имя поддомена, чтобы ссылка соответствовала конфигурации навыков Amazon Alexa. Для обслуживания приложения запустите:
./ ngrok http -subdomain =5000
Поскольку Raspberry Pi присоединяется к точке доступа Wi-Fi ARDrone, мы используем USB-модем Hologram Nova в качестве бэкдора сотовой связи, позволяющего Alexa обмениваться данными с сервером flask-ask.
Мы обнаружили, что приложение работает без сбоев с использованием голограммы nova с ежемесячным тарифным планом 250 МБ. Вы можете настроить это с помощью панели управления голограммой и активации сим-карты.
Настройте навык Alexa, перейдите на панель управления разработчика Amazon и войдите в систему. Нажмите Alexa и приступить к работе с комплектом Alexa Skill. Затем создайте новый навык, нажав Добавить новый навык . Начните заполнять вкладки слева, следуя их инструкциям.
Следуйте инструкциям интерфейса пользователя.
- В рамках модели взаимодействия заполните поле Intent Schema следующим образом:
{"намерение":[{"намерение":"сброс"}, {"намерение":"взлет"}, {"намерение":"земля"}, {"намерение":"hover"}, {"intent":"goForward"}, {"intent":"goBackward"}, {"intent":"goLeft"}, {"intent":"goRight"}, {"intent":"AMAZON.PreviousIntent"}, {"intent":"AMAZON.NextIntent"}, {"intent":"AMAZON.HelpIntent"}, {"intent":"AMAZON.ScrollUpIntent"}, {"intent":"AMAZON .ScrollLeftIntent "}, {" intent ":" AMAZON.ScrollDownIntent "}, {" intent ":" AMAZON.ScrollRightIntent "}, {" intent ":" AMAZON.PageUpIntent "}, {" intent ":" AMAZON.PageDownIntent "}, {" намерение ":" AMAZON.MoreIntent "}, {" намерение ":" AMAZON.NavigateSettingsIntent "}, {" намерение ":" AMAZON.StopIntent "}]}
- В поле "Примеры высказываний" напишите:
сброс сброса назад
- В Конфигурации На вкладке не забудьте выбрать HTTPS в качестве конечной точки службы. Скопируйте ссылку https и вставьте ее в поле по умолчанию внизу. Связывание аккаунта можно оставить на Нет.
- В сертификате SSL выберите средний вариант:«Моя конечная точка разработки является субдоменом домена, имеющего групповой сертификат от центра сертификации».
- Тест Вкладка позволит вам протестировать новый навык, введя одну из ваших примеров команд.
Завершите заполнение двух последних вкладок, пока все галочки не станут зелеными. Затем начните свое мастерство с функцией бета-тестирования. Это позволяет вам разместить свое умение на любом эхо-устройстве перед его публикацией. Следуйте инструкциям по электронной почте, чтобы установить навык на свое устройство Echo.
Беги
Чтобы запустить все приложение, сначала убедитесь, что ваш дрон включен и его подключение к Wi-Fi установлено. На сервере Raspberry Pi подключитесь к сети вашего ARDrone. В терминале подключитесь к сети Hologram, выполнив следующую команду:
$ sudo hologram network connect
Когда синий светодиод на Nova загорится и этот процесс завершен, вы подключены к сотовой сети. На отдельной вкладке запустите команду ngrok, о которой мы говорили ранее:
$ ./ngrok http -subdomain =5000
Наконец, на другой вкладке запустите приложение
$ python app.py
Если у дрона горит зеленый свет, летать можно. Если нет, попросите Alexa сбросить его, сказав:«Alexa, попросите MajorTom сбросить».
Источник: MajorTom:ARDrone 2.0 с голосовым управлением от Alexa
Производственный процесс
- Наборы разработчика ускоряют интеграцию с Alexa
- 2017 год - год голосового интерфейса?
- Вентилятор с регулируемой температурой
- Аквапоника под управлением Raspberry Pi
- MATRIX VOICE GOOGLE ASSISTANT - MATRIX VOICE PROJECT
- Amazon Alexa Управление Chromecast
- Кнопка AWS IoT с управлением движением
- Робот, управляемый Wi-Fi и использующий Raspberry Pi
- Светодиоды, управляемые Alexa через Raspberry Pi
- Рот Билли Басс + Алекса