Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

MajorTom:Alexa Voice Controlled ARDrone 2.0

Mobiele achterdeur met Hologram Nova op Raspberry Pi flask-ask server-Amazon Alexa gecontroleerd.

Verhaal

Motivatie

Ons vorige project met de ARDrone 2.0 heeft ons geholpen meer te weten te komen over een nieuw project. Onze huidige Alexa en Arduino Smart Home Challenge-inzending hebben ons kennis laten maken met de vaardigheden die nodig zijn om een ​​werkende demo te maken voor een spraakgestuurde drone.

Dit is wat we bedachten:

Hieronder schetsen we ons proces.

Pi-software instellen

Om de Pi in te stellen met de benodigde software, installeer flask-ask:

$ sudo pip install flask-ask 

Je hebt ook de bibliotheek nodig die de ARDrone via wifi bestuurt. Kloon deze repo en voer het meegeleverde install.sh-script uit.

De Alexa-vaardigheid en app instellen

We hebben een vaardigheid gemaakt die is gekoppeld aan een server die draait op de Raspberry Pi. Flask is een eenvoudig te gebruiken Python-bibliotheek om een ​​applicatie te bedienen. Met behulp van flask-ask kunnen we de server configureren om te communiceren met onze Alexa-vaardigheid. We gebruiken Ngrok om de applicatie extern te bedienen en geeft ons een https-link die we nodig hebben voor onze Alexa-vaardigheid. Hier is een codefragment voor de toepassing. Het volledige app.pyscript wordt hieronder bijgevoegd.

#!/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():return 'Ground Control to Major Tom'@ask.intent('reset')def reset():drone.reset () speech_text ='resetten' return statement(speech_text)

Om deze applicatie uit te voeren, typt u:

python app.py

Voor dit project hebben we ngrok gebruikt om de applicatie via https aan te bieden. We hebben een gereserveerde subdomeinnaam gebruikt, zodat de link consistent kan zijn met de Amazon Alexa-vaardigheidsconfiguratie. Voer het volgende uit om de applicatie te bedienen:

./ngrok http -subdomain= 5000

Omdat de Raspberry Pi zich aansluit bij het WiFi-toegangspunt van de ARDrone, gebruiken we de Hologram Nova USB-modem als een mobiele achterdeur waardoor Alexa kan communiceren met de flask-ask-server.

We ontdekten dat de applicatie soepel werkte met hologram nova met een maandelijks data-abonnement van 250 MB. Je kunt dit instellen via het hologramdashboard en een simkaart activeren.

Als u de Alexa-vaardigheid instelt, navigeert u naar het Amazon-dashboard voor ontwikkelaars en logt u in. Klik op Alexa en aan de slag met Alexa Skill-kit. Maak vervolgens een nieuwe vaardigheid door te klikken op Een nieuwe vaardigheid toevoegen. Begin met het invullen van de tabbladen aan de linkerkant volgens hun instructies.

Volg de instructies van de gui.

  • Onder het Interactiemodel vul het Intent Schema-vak in met het volgende:
{ "intents":[ { "intent":"reset" }, { "intent":"takeoff" }, { "intent":"land" }, { "intent":"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 " }, { "intent":"AMAZON.MoreIntent" }, { "intent":"AMAZON.NavigateSettingsIntent" }, { "intent":"AMAZON.StopIntent" } ]}
  • Schrijf in het vak Voorbeelduitingen:
reset resetstart opstijgen opstijgen opstijgen opstijgen opstijgen ontploffing uitstijgen stijgenland landland naar beneden komen naar aardeland komen naar beneden komen op het grondland grondcontrolehover hoverhover blijven zitten waar je bentVooruit ga vooruitgoVooruit ga vooruitgoVooruit comegoBackward go backgoBackward ga achteruitgoBackward ga achteruitgoBackward ga achteruit backgoLinks ga leftgoLinks ga linksgoLinks draai linksgoRight ga rechtsgoRight beweeg rechtsgoRight draai rechts
  • In de Configuratie tabblad, zorg ervoor dat u het service-eindpunt kiest voor HTTPS. Kopieer uw https-link en plak deze in het vak Standaard eronder. Account koppelen kan worden overgelaten aan Nee.
  • In het SSL-certificaat kies de middelste optie, "Mijn ontwikkelingseindpunt is een subdomein van een domein met een wildcardcertificaat van een certificeringsinstantie".
  • De Test tabblad kunt u de nieuwe vaardigheid testen door een van uw voorbeeldopdrachten in te typen.

Voltooi het invullen van de laatste twee tabbladen totdat alle vinkjes groen zijn. Start vervolgens uw vaardigheden met de bètatestfunctie. Hierdoor kunt u uw vaardigheid hosten op elk echo-apparaat voordat u het publiceert. Volg de instructies op de e-maillink om de vaardigheid op uw Echo-apparaat te installeren.

Rennen

Om de hele applicatie uit te voeren, moet je er eerst voor zorgen dat je drone aan staat en dat de wifi-verbinding tot stand is gebracht. Maak op de Raspberry Pi-server verbinding met het netwerk van uw ARDrone. Maak in de terminal verbinding met het netwerk van Hologram door het volgende commando uit te voeren:

$ sudo hologram netwerk verbinden

Zodra de blauwe LED op de Nova ononderbroken brandt en dit proces is voltooid, bevindt u zich op het mobiele netwerk. Voer op een apart tabblad het ngrok-commando uit dat we eerder noemden:

$ ./ngrok http -subdomain= 5000

Tot slot, in een ander tabblad, voer de applicatie uit

$ python app.py

Als de lichten van de drone groen zijn, kun je vliegen. Als dit niet het geval is, vraag dan Alexa om het te resetten door te zeggen:"Alexa, vraag MajorTom om te resetten."

Bron:  MajorTom:Alexa spraakgestuurde ARDrone 2.0


Productieproces

  1. Dev kits versnellen Alexa-integratie
  2. Is 2017 het jaar van de spraakinterface?
  3. Temperatuurgestuurde ventilator
  4. Raspberry Pi-gestuurde aquaponics
  5. MATRIX STEM GOOGLE ASSISTANT – MATRIX STEMPROJECT
  6. Amazon Alexa Een Chromecast bedienen
  7. Bewegingsgestuurde AWS IoT-knop
  8. Wifi-gestuurde robot met Raspberry Pi
  9. Alexa gestuurde LED's via Raspberry Pi
  10. Big Mouth Billy Bass + Alexa
  11. Met joystick bestuurde RC-auto