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

Bouw een Spraak-gecontroleerde Robot met Windows 10 IoT Core op Raspberry Pi 2

Verhaal

Vroegere computing steunde op perforatiekaarten, trackballs en toetsenborden – elk vereist direct fysiek contact. Naarmate technologie evolueerde, stroomlijnden draadloze en touch-interfaces de gebruikersinteractie. Vandaag bieden visuele en spraakinvoer nog intuitievere manieren om apparaten te besturen.

Deze gids demonstreert hoe je Windows 10 IoT Core's ingebouwde Spraakherkenning kunt benutten om een robot te commanderen die gebouwd is op een Raspberry Pi 2. Aan het einde heb je een robot die beweegt, draait en obstakeldetectie beheert via gesproken commando's.

Nieuw bij Windows 10 IoT Core? Start met dit overzicht.

Bijgewerkt 30 maart 2016

Wat is Spraakherkenning?

Spraakherkenning vertaalt gesproken woorden naar tekst. Het omvat typisch twee kerncomponenten: signaalverwerking en een spraakdecoder. Microsoft's Speech SDK abstraheert deze complexiteiten, zodat ontwikkelaars zich kunnen richten op toepassingslogica.

Stap 1

Aan de slag met Spraakherkenning

De basiswerkstroom is:

  • Maak een Spraakherkenningsgrammatica (SRGS)
  • Instantieer SpeechRecognizer en laad de grammatica
  • Abonneer op herkenningsgebeurtenissen en implementeer handlers

Maak Spraakherkenningsgrammatica

Het definiëren van een aangepaste grammatica laat de app de specifieke commando's begrijpen die je wilt dat de robot accepteert. Voor dit project omvat het vocabulaire:

  • Vooruit Bewegen
  • Achteruit Bewegen
  • Rechts Draaien
  • Links Draaien
  • Stop
  • Obstakeldetectie Activeren
  • Obstakeldetectie Deactiveren

De grammatica wordt uitgedrukt in SRGS XML. Belangrijke structurele regels:

  • Het root-element moet <grammar> zijn.
  • Het moet version, xml:lang, en de SRGS-naamruimte bevatten.
  • Minstens één <rule> element is vereist.
  • Elke regel moet een uniek id attribuut hebben.

Voor gedetailleerde SRGS-richtlijnen, raadpleeg de MSDN en W3C documentatie.

Initialiseer Spraakherkenner en Laad Grammatica

SpeechRecognizer bevindt zich in de Windows.Media.SpeechRecognition naamruimte. Importeer het, laad dan je SRGS XML-bestand. Als compilatie mislukt, controleer of een microfoon is aangesloten en herkend door IoT Core.

Registreer voor Spraakherkenner Gebeurtenissen en Maak Handler

Eenmaal de herkenner draait, emiteert het ResultGenerated wanneer het spraak succesvol parseert. Gebruik deze gebeurtenis om args.Result.Text te extraheren en te mappen naar robotacties. De StateChanged gebeurtenis informeert je wanneer de herkenner begint of stopt met luisteren.

Visual Studio kan handler-methoden auto-genereren met de Tab toets. Alternatief, registreer handlers direct na het creëren van de SpeechRecognizer instantie.

Stap 2

Hoe te Rijden op Geparsede Spraak

In de ResultGenerated handler, inspecteer args.Result.Text en voer conditionele logica uit om de motoren van de robot te besturen. De MotorDriver klasse (ingesloten in het voorbeeld) abstraheert GPIO-manipulatie. Volledige broncode is aan het einde van het artikel beschikbaar.

Stap 3

Apparaat Capability Bijwerken

Voordat je de Raspberry Pi 2 deployt, voeg de microphone capability toe aan het package manifest van je app. Dit geeft de app toestemming om toegang te krijgen tot audio-invoer.


Zodra de software klaar is, bedraad de hardware zoals hieronder beschreven.

Stap 4

Deploy & Registreer App als Startup Applicatie

Om te zorgen dat de robot direct na opstarten luistert naar commando's, registreer je app als een startup applicatie. Deploy het eerst, gebruik dan PowerShell of de IoT Core Web-Management Portal.

Het is een goed idee om de package family name te wijzigen voordat je deployt om conflicten te vermijden.


Na deployment, registreer de app als een startup service met de Web-Management Portal.


Als je registratieproblemen ondervindt, raadpleeg deze probleemoplossingsgids.

Na een succesvolle registratie, herstart de Raspberry Pi 2 en bevestig dat de app automatisch start.

Schema

De robot-hardware bestaat uit een chassis met DC-motoren, een Raspberry Pi 2 met Windows 10 IoT Core, een 9-12V motorbatterij, een afstanden sensor, en voedingen. De motorbatterij voedt de H-brug driver, terwijl de Raspberry Pi 2 een toegewezen 5V bron vereist – of een USB PowerBank of een 7805 regulator.

Waarom Weerstanden met Ultrasonische Afstandssensor?

De ultrasonische sensor levert 5V op de Echo-pin, wat de 3.3V logica van de Raspberry Pi 2 overschrijdt. Een spanningsdeler (R1 = 1 kΩ, R2 = 2 kΩ) verlaagt de spanning naar 3.3V:

Vout = 5 × (2 kΩ / (1 kΩ + 2 kΩ)) = 3.3 V

WAARSCHUWING: Direct verbinden van de Echo-pin met een Pi GPIO zal het bord beschadigen. Gebruik altijd een level shifter of deler.

Finale Montage



Bekende Problemen

Spraakherkenning Werkt Niet (Build 10586)

Spraakherkenning faalt op IoT-apparaten met Windows IoT Core build 10586.

Oplossing: Terugvallen naar build 10240 tot Microsoft een update uitbrengt die het probleem oplost.

Microfoon Probleem

Herkenningsnauwkeurigheid daalt met lage-kwaliteit microfoons, met name op afstanden boven 1-2 m.

Oplossing: Gebruik een hoge-kwaliteit of draadloze microfoon. Zo nodig, versterk het signaal of overweeg een ruisonderdrukkende headset.

Herkenner Verwerkingsvertraging

Spraakherkenning introduceert een latentie van 600-2000 ms. Voor snel bewegende robots kan deze vertraging misalignement veroorzaken tussen commando en actie.

Oplossing: Huidige SDK-versies verminderen deze vertraging niet. Toekomstige releases kunnen optimalisaties bieden.

Uitspraakverschil

Accenten en regionale uitspraken kunnen herkenning beïnvloeden. Specificeer de taal en regio in het SRGS-bestand (bijv. xml:lang="en-GB" voor UK Engels).

Omgevingsgeluid

Achtergrondgeluid kan nauwkeurigheid verminderen. Hoewel het moeilijk is te elimineren, kan een ruisonderdrukkende microfoon het probleem verlichten.

USB Microfoon / USB SoundCard Werkt Niet

Vanaf build 10531 ondersteunt Windows IoT Core generieke USB-audioapparaten. Als je apparaat een proprietaire driver gebruikt, werkt het misschien niet.

Probeer een andere USB-microfoon of soundcard die een generieke driver gebruikt.

Toekomstige Verbeteringen

Breid de robot uit met visuele feedback – bv. een groene LED brandt voor succesvolle commando's en een rode LED wijst op fouten. Je kunt ook "luisteren" en "slaap" statussen toevoegen om per ongeluk activaties te voorkomen.

Heeft U Het Opgevallen?

De geanimeerde titel toont een functie die niet in deze tekst behandeld wordt. Verken de animatie zorgvuldig en probeer de verborgen mogelijkheid te implementeren.

Succes!

Bron: Spraak-gecontroleerde Robot

Productieproces

  1. Hartslagpulsen uitlezen met Windows 10 IoT Core op Raspberry Pi – Stap-voor-stap gids
  2. Bouw een Veilige Gezichtsherkenning-deur met Windows IoT en Raspberry Pi
  3. Bouw een Beweging-gestuurde AWS IoT-knop met Raspberry Pi, PIR-sensor en MQTT
  4. Adafruit 10DOF IMU-data van Raspberry Pi 2 naar Azure Event Hubs Sturen met Windows 10 IoT Core
  5. Nauwkeurige Temperatuur- & Vochtigheidsmonitoring met SHT15 op Windows 10 IoT Core
  6. Windows 10 IoT Core Installeren op Raspberry Pi 3 Model B+: Stap-voor-stap Handleiding
  7. Bouw een Bluetooth-gecontroleerde Raspberry Pi Robot met Audio Feedback
  8. Gebaren-gecontroleerde Robot Aangedreven door Raspberry Pi
  9. Bouw een WiFi-gecontroleerde Robot met Raspberry Pi & Android Smartphone
  10. GoPiGo v2 Uitbreiden op Windows 10 IoT Core voor Raspberry Pi 3
  11. Bouw een Wi-Fi-gecontroleerde Raspberry Pi Robot met Python – Stap-voor-stap Gids