Inhaltsverzeichnis:

Gesprächiger Lego-Kartenhändler - Gunook
Gesprächiger Lego-Kartenhändler - Gunook

Video: Gesprächiger Lego-Kartenhändler - Gunook

Video: Gesprächiger Lego-Kartenhändler - Gunook
Video: Я общительный человек и на работе все всем рассказываю #работа #карьерныйконсультант #найтиработу 2024, Juli
Anonim
Gesprächiger Lego-Kartenhändler
Gesprächiger Lego-Kartenhändler

Die meisten Menschen spielen Kartenspiele aus Unterhaltungsgründen, aber sie bieten auch mehrere Vorteile für unsere emotionale und geistige Gesundheit. Es ist eine der beliebtesten Indoor-Aktivitäten.

Die meisten Kartenspiele wie Rommé und Poker brauchen einen Dealer. Hier stellen wir also unseren gesprächigen Lego-Kartenhändler vor. Sie können mit den Karten umgehen, indem Sie einfach mit ihm sprechen, und es liefert auch die Sprachantworten, genau wie die der menschlichen Dealer.

Dies ist ein tolles Lernspielzeug, das mit Alexa-Lautsprecher und Lego-Kit zu Hause gebaut werden kann.

Schritt 1: Video

Schauen wir uns die Arbeit an, bevor wir uns an die Herstellung machen. Hier beginnt der Spaß!

Schritt 2: Dinge, die wir brauchen

  • LEGO MindStorms EV3 Programmierbaustein / Kit x 1
  • Amazon Alexa Echo Dot x 1
  • Panasonic eneloop BK-3HCCE/4BN Akku x 2
  • Spielkarten x 1
  • Sandisk U1 A1 98Mbps 16GB Ultra MicroSDHC (MicroSD) Speicherkarte x 1

Schritt 3: Bauen der Steine

Die Ziegel bauen
Die Ziegel bauen

Wir bauen den Kartenhändler mit dem Lego Mindstorms ev3 31313 Bausatz. Aus Gründen der Einfachheit beim Bauen wird der Kartenhändler durch das Zusammensetzen mehrerer Blöcke mit mehreren Schritten hergestellt. Wir stellen jeden Block separat her und kombinieren ihn schließlich miteinander. Die interessante Tatsache ist, dass nur ein Lego Mindstorms ev3-Kit benötigt wird, um das Ganze zu bauen.

Sie können den Katalog von Lego Mindstorms ev3 31313 hier überprüfen, um mehr über die in diesem Bausatz verfügbaren Steine zu erfahren. Dann kommt hier die separate Blockherstellung.

Schritt 4: Depotherstellung

Depotherstellung
Depotherstellung
Depotherstellung
Depotherstellung
Depotherstellung
Depotherstellung

Dies ist der Block, in dem wir die Karten aufbewahren und auch von hier aus verteilen.

Hier verwende ich die Brückenkarten, um das Spiel zu machen. Bridge-Karten sind eine von zwei Standardgrößen einer Spielkarte – die andere sind Pokerkarten. Bridge-Karten sind 3,5 Zoll groß und 2,25 Zoll breit (88,9 mm x 56 mm). Dies ist etwas schmaler als Pokerkarten, die 3,5 Zoll x 2,5 Zoll (88,9 mm x 63,5 mm) messen.

Sie können die Depotgröße je nach Kartentyp anpassen, egal ob es sich um Poker- oder Bridge-Karten handelt, indem Sie einfach diesen Baustein (4142135) hinzufügen oder entfernen.

Der Mittelmotor ist zum Verteilen von Karten am Depot angebracht. Dann ist der erste Block vorbei. Dann können wir zum zweiten gehen.

Schritt 5: Rotierende Plattform

Rotierende Plattform
Rotierende Plattform
Rotierende Plattform
Rotierende Plattform
Rotierende Plattform
Rotierende Plattform
Rotierende Plattform
Rotierende Plattform

Das oben hergestellte Depot ist an der Drehplattform befestigt, damit die Karten durch die Drehplattform durch die entsprechenden Winkel leicht für die Spieler verteilt werden können. Dieser ist auch für Drehungen am großen Motor befestigt. Das obige Bild zeigt die Konnektoren, mit denen Depot eine Verbindung herstellt.

In der Drehplattform befindet sich auch eine Achse für die Verbindung mit dem großen Motor wie oben gezeigt.

Der zweite Block ist also vorbei. Kommen wir zum nächsten.

Schritt 6: RotorBlock

Rotorblock
Rotorblock
Rotorblock
Rotorblock

Hier in diesem Block verbinden wir den mittleren Motor mit dem intelligenten Ev3-Stein. Dieser Abschnitt bildet das Gehirn des Kartenhändlers.

Wenn sich die Plattform dreht, müssen wir die Seite des großen Motors ausbalancieren, andernfalls führt dies zu falschen Drehungen. Also setzen wir die Gummiräder gezielt ein. Dieser Abschnitt bewegt sich nicht (stationärer Teil). Dann können wir zum nächsten Abschnitt übergehen.

Schritt 7: Mittlerer Motorabschnitt

Mittlerer Motorbereich
Mittlerer Motorbereich
Mittlerer Motorbereich
Mittlerer Motorbereich
Mittlerer Motorbereich
Mittlerer Motorbereich

Der mittlere Servomotor EV3 eignet sich hervorragend für Anwendungen mit geringerer Last und höherer Geschwindigkeit und wenn schnellere Reaktionszeiten und ein kleineres Profil benötigt werden, wähle ich hier den mittleren Motor, außerdem wissen wir alle, dass er weniger wiegt als der große Motor. Dadurch wird das Gesamtgewicht der rotierenden Plattform erheblich reduziert, was wahrscheinlich zu einer reibungslosen Bewegung der Plattform führt.

Dieser Motor dient zum Verteilen der Karten an die Spieler. Es ist mit dem Depot verbunden.

Das Wedge-Belt-Wheel und der Reifen sind das Herzstück dieses Abschnitts, da er die Karte aus dem Depot herausdrückt. Wir haben hier drei für schnellere Bewegungen verwendet. Ich denke, in der Anleitung zum Erstellen dieses Blocks. Sie können den Gummireifen mit dem Rad nicht finden (weil das Teil 602841 im Lego-Designstudio fehlt). Vergessen Sie also nicht, den Reifen mit dem Rad zu befestigen.

Schritt 8: Schlitzgewichtsblock

Schlitzgewichtsblock
Schlitzgewichtsblock
Schlitzgewichtsblock
Schlitzgewichtsblock
Schlitzgewichtsblock
Schlitzgewichtsblock

Dieser Block ist mit dem Depot verbunden. Diese werden für die Gewichtung der Karten verwendet, die in das Depot gelegt werden. So lässt sich die darunterliegende Karte ganz einfach aus dem Depot herausziehen. Wenn eine Karte herausgezogen wird, sinkt das Gewicht automatisch durch die Schwerkraft.

Der Scharniermechanismus ebnet den Weg für Gewichtsschlitze, um sich nach oben und unten zu bewegen. (Siehe Bild oben)

Schritt 9: Montage

Montage
Montage
Montage
Montage
Montage
Montage

Hier bauen wir die ganzen Blöcke zusammen, die wir zuvor gebaut haben. Es ist eigentlich ziemlich einfach.

Zuerst können wir den Slotted Weight Block mit dem Depot verbinden. Jetzt bildet es das Depot.

Dann können wir das Depot mit der Rotating Platform verbinden. Wie Sie sehen können, ist das Depot nicht gerade mit der Plattform ausgerichtet (der vordere Teil ist in bestimmten Winkeln angehoben). Es steckt eine gewisse Logik dahinter. Bei dieser Konfiguration wird jeweils nur eine Karte verteilt. Angenommen, wenn wir es gerade ausrichten, führt dies zu einer falschen Verteilung der Karten. Dann wird diese Plattform mit dem Rotatorblock (großer Motorabschnitt) befestigt.

Der Backsteinbau ist fertig. Hier habe ich Bilder der Montage bereitgestellt, da es sehr einfach ist, die Situationen zu visualisieren als die normale Anleitung. Dann können wir zur Verkabelung des ev3-Bricks zu den Motoren übergehen.

Hinweis: Build-Anweisungen für jeden Block sind im GitHub-Repository als PDF angehängt

Schritt 10: Verkabelung

Verdrahtung
Verdrahtung
Verdrahtung
Verdrahtung

Hier besteht die eigentliche Hardware aus einem mittleren und großen Motor sowie einem ev3-Brick. Die Motoren sollten für einen ordnungsgemäßen Betrieb an einen der Anschlüsse (A, B, C, D) des ev3-Steins angeschlossen werden. Der Anschluss erfolgt über die mitgelieferten Kabel. Wie Sie dem Bausatz entnehmen können, ist der gleiche Kabeltyp in drei verschiedenen Längen erhältlich. Wir benutzen

1 x 50 cm Kabel für mittleren Motor 1 x 25 cm Kabel für großen Motor Wie Sie sehen, benötigt der mittlere Motor lange Kabel, um mindestens eine 360-Grad-Drehung zu realisieren. Deshalb verwende ich dafür das 50 cm lange Kabel, sonst stoppt es die Bewegung der Plattform. Für den großen Motor reicht das 25 cm lange Kabel.

Die Anschlüsse sindPort A -- Mittlerer Motor

Anschluss B --- Großer Motor

Die Verkabelung ist gerade fertig. Kommen wir zum Software-Teil.

Schritt 11: Einrichten

Einrichtung
Einrichtung
Einrichtung
Einrichtung
Einrichtung
Einrichtung

Die Einrichtung des Geräts ist sehr einfach.

  • Installiere ev3dev zum Programmieren deines EV3-Steins
  • Installieren Sie Visual Studio Code zum Bearbeiten von Code
  • Installiere die Alexa Gadgets Python Software auf deinem EV3-Stein

Wenn Sie die ev3-Software heruntergeladen haben, müssen Sie sie auf eine SD-Karte flashen. Ich bevorzuge SD-Karten der Klasse 10. Für das Flashen verwenden wir Etcher oder Rufus. Zum Hochfahren müssen Sie die SD-Karte in den Brick stecken. Zum Auflegen der SD-Karte reichen bloße Hände, aber wenn Sie sie entfernen, bevorzuge ich eine Pinzette.

Für den ev3-Stein benötigt er also 6 x AA-Batterien mit jeweils 1,5 V. Ich bevorzuge wiederaufladbare Batterien mit hoher Energiespeicherkapazität (hohe mAh). Je höher die mAh-Zahl eines Akkus, desto länger hält der Akku. mAH ist eine Einheit der elektrischen Ladung. Für dieses Projekt verwende ich einen Panasonic Eneloop-Akku mit einer Kapazität von bis zu 2550 mAh.

Dann booten Sie den ev3-Stein durch einen langen Druck auf die mittlere Taste.

Wenn Sie keine Ahnung von den Grundlagen von ev3 Brick haben, gehen Sie einfach hier. Dann müssen Sie den ev3-Stein mit dem Internet verbinden, indem Sie die Internetverbindung Ihres Computers teilen. Für den Anschluss an den Computer gibt es verschiedene Methoden, hier verwende ich das USB-Kabel, das mit dem Kit selbst geliefert wird. Ich denke, es ist eine einfache Methode. Sehen Sie hier, wie Sie über USB mit dem Internet verbinden. Dies sind die anderen Möglichkeiten der Vernetzung.

Es werden Erweiterungen empfohlen, die das Verbinden und Programmieren deines EV3-Steins erleichtern. Wie Sie sehen können, wenn Sie die Datei cardealer.zip herunterladen und mit dem Visual Studio Code-Editor öffnen, werden die Erweiterungen automatisch empfohlen. Installieren Sie also die angezeigte ev3dev-browser-Erweiterung. Wenn Python auf Ihrem Computer installiert ist, können Sie auch diese Erweiterung installieren. (Installieren Sie es nicht, wenn Sie Python noch nicht installiert haben.) Python ist die Sprache, die hier für die Programmierung verwendet wird.

Schritt 12: EV3-Stein als Alexa-Gadget registrieren

EV3-Stein als Alexa-Gadget registrieren
EV3-Stein als Alexa-Gadget registrieren

Damit dein EV3-Stein mit Alexa und deinem Echo-Gerät als Alexa-Gadget funktioniert, musst du dein Gadget in der Alexa-Entwicklerkonsole registrieren. Die Registrierung Ihres Gadgets verknüpft Ihr einzigartiges Gadget mit Ihrem Konto und ist erforderlich, damit Ihre Kreation ordnungsgemäß mit Alexa funktioniert. Ein Alexa-Gadget ist ein mit Alexa verbundenes Zubehör, das über Bluetooth mit kompatiblen Amazon Echo-Geräten interagiert.

Amazon ID und Alexa Gadget Secret sollten notiert werden, da sie unser Gadget eindeutig identifizieren. Die obige Abbildung zeigt, wie ein Gadget mit einem Echo-Gerät interagiert und wo die Alexa-Gadgets-Schnittstellen passen.

Wenn Sie Ihr Alexa-Gadget erfolgreich registriert haben. Lass uns den ev3-Stein vorbereiten

Schritt 13: Vorbereiten des Ev3-Steins

Ev3-Stein vorbereiten
Ev3-Stein vorbereiten

Dein EV3-Stein verbindet sich über Bluetooth mit deinem Echo-Gerät, das du auf deinem Stein aktivieren musst, damit der Beispielcode richtig funktioniert. Sobald Bluetooth aktiviert ist, können Sie mit etwas Code arbeiten!

An dieser Stelle können Sie zu dem Visual Code-Arbeitsbereich wechseln, den Sie während der Einrichtungsanweisungen erstellt haben. Das Explorer-Panel sollte die Missionsordner anzeigen, die sich auf Ihrem Computer befinden.

Schritt 14: Registrierung und Einstellungen

Registrierung und Einstellungen
Registrierung und Einstellungen

Im Carddealer-Ordner sehen Sie eine INI-Datei und eine Python-Datei. Öffnen Sie die Datei carddealer.ini, die die folgenden Konfigurationsdetails enthält:

[Gadget-Einstellungen]

amazonId = YOUR_GADGET_AMAZON_ID

alexaGadgetSecret = YOUR_GADGET_SECRET

[Gadget-Funktionen]

Alexa. Gadget. StateListener = 1.0 - Wakeword

Die INI-(oder Initialisierungs-)Datei definiert Parameter dafür, wie dein EV3-Stein als Gadget funktionieren soll. Gadget-Einstellungen: Gibt die Amazon-ID und das Alexa-Gadget-Geheimnis an, die Sie beim Erstellen Ihres Gadgets in der Amazon Developer Console erhalten haben. Es authentifiziert deinen EV3-Stein und ermöglicht ihm, sich mit deinem Echo-Gerät und Alexa zu verbinden.

Schritt 15: Wie richte ich Echo Dot ein?

Wie richte ich Echo Dot ein?
Wie richte ich Echo Dot ein?

Laden Sie vor der Einrichtung die Alexa-App im App Store Ihres Mobilgeräts herunter oder aktualisieren Sie sie.

  • Öffne die Alexa-App
  • Gehe in das Einstellungsmenü
  • Wählen Sie Gerät hinzufügen.
  • Wählen Sie Amazon Echo und dann Echo Dot
  • Schließen Sie Ihr Gerät an
  • Folgen Sie den Anweisungen, um Ihr Gerät einzurichten

Schritt 16: Echo mit Ziegel koppeln

Echo mit Ziegel koppeln
Echo mit Ziegel koppeln

Um mit Alexa zu arbeiten, muss der EV3-Stein eine Bluetooth-Verbindung mit dem Echo-Gerät herstellen.

Das Echo-Gerät und das Gadget erkennen sich über Classic Bluetooth wie folgt:

  • Der Benutzer versetzt das Gadget in den Kopplungsmodus. Dieses Verfahren hängt vom Gadget ab. Ein Tasten-Gadget kann beispielsweise ein langes Drücken verwenden. Wenn Ihr Gadget über einen Touchscreen verfügt, kann ein Benutzer die Kopplung über eine Option auf dem Bildschirm aktivieren.
  • Der Benutzer versetzt das Echo-Gerät in den Pairing-Modus. Bei Echo-Geräten ohne Bildschirm kann ein Benutzer ein Echo-Gerät mithilfe der Amazon Alexa-App in den Kopplungsmodus versetzen. In der Alexa-App geht der Benutzer zu Einstellungen, wählt das Echo-Gerät aus und wählt dann unter Verbundene Geräte die Option Alexa-Gadget koppeln aus. Wenn das Echo-Gerät über einen Bildschirm verfügt, befolgt der Benutzer die Anweisungen auf dem Bildschirm, um die Kopplung einzuleiten. (Screenshots dienen als Referenz)

Klicken Sie einfach auf "Neues Gerät koppeln", bitte haben Sie etwas Geduld, es wird einige Zeit dauern. Hier verwende ich den Echo Dot 3. Generation

Schritt 17: Erstellen Sie Ihren Alexa-Skill

Erstellen Sie Ihren Alexa-Skill
Erstellen Sie Ihren Alexa-Skill

Lassen Sie uns die Schritte zum Erstellen Ihres Skills durchgehen:

1. Melden Sie sich bei developer.amazon.com an.2. Bewegen Sie den Mauszeiger in der oberen Kopfzeile über Alexa und klicken Sie auf Alexa Skills Kit.

3. Klicken Sie oben rechts auf dem Bildschirm auf Skill erstellen.

4. Geben Sie einen Skillnamen ein, vielleicht „CARDDEALERS“. Der Name, den Sie Ihrem Skill geben, ist auch die Art und Weise, wie Sie den Skill öffnen. Zum Beispiel „Alexa, öffne Kartenhändler“.

5. Wählen Sie Ihre Standardsprache aus. Stellen Sie sicher, dass die Sprachauswahl mit der auf Ihrem Echo-Gerät verwendeten Sprache übereinstimmt.

6. Wählen Sie Benutzerdefiniert für die Option „Wählen Sie ein Modell aus, das Sie zu Ihrer Fertigkeit hinzufügen möchten“.

7. Wählen Sie von Alexa gehostet für die Option „Wählen Sie eine Methode zum Hosten der Backend-Ressourcen Ihres Skills“.

8. Klicken Sie oben rechts auf Skill erstellen.

9. Sobald Sie auf Skill erstellen klicken, wird ein Modal angezeigt, während Ihr Skill für die Anpassung vorbereitet wird.

Dann müssen wir den Custom Interface Controller in der Konsole aktivieren. Das ist es! Wenn der Custom Interface Controller aktiviert ist, kannst du Code schreiben, der benutzerdefinierte Anweisungen an deinen EV3-Stein sendet, und programmieren, wie er reagieren soll.

Schritt 18: Definieren Sie das Skill-Interaktionsmodell

Das Skill-Interaktionsmodell definiert, wie Sie mit Ihrem Skill sprechen können und auf welche Art von Befehlen er reagieren kann. Das Interaktionsmodell umfasst Intents, Slots, Beispieläußerungen, die Sie definieren und gegen die Sie im Code Ihres Skills programmieren

1. Klicken Sie in der Alexa Developer Console unter Interaktionsmodell auf JSON Editor.

2. Im Ordner carddealer sehen Sie einen Ordner namens skill-nodejs. In diesem Ordner befindet sich eine Datei model.json. Kopieren Sie das Interaktionsmodell-JSON aus dieser Datei und fügen Sie es in den Editor ein oder ziehen Sie die JSON-Datei per Drag & Drop in die Drop-Zone, um sie hochzuladen.

Nachdem Sie die JSON in den Alexa Skill JSON Editor eingefügt haben, klicken Sie auf Modell speichern und dann auf Modell erstellen, das oben in der Konsolenoberfläche angezeigt wird. Es kann einige Zeit dauern, bis das Modell aufgebaut ist, also seien Sie geduldig

Schritt 19: Implementieren der Skill-Logik

Implementieren der Skill-Logik
Implementieren der Skill-Logik

Es gibt viel über das Erstellen von Skills zu lernen, aber für diese Mission führen wir Sie durch die Verwendung der von Alexa gehosteten Skill-Option, die Sie zuvor ausgewählt haben, und teilen am Ende zusätzliche Ressourcen. Mit einem von Alexa gehosteten Skill können Sie direkt in der Alexa Developer Console mit dem Schreiben von Code für Ihren Skill beginnen.

1. Klicken Sie in der oberen Navigationsleiste der Alexa Developer Console auf Code.

2. Öffnen Sie in VS Code die Datei index.js im Ordner carddealer/skill-nodejs/lambda.

3. Kopieren Sie den Code in der Datei index.js in die Datei index.js im Code-Editor der Alexa Developer Console.

4. Kopieren Sie den Inhalt der Dateien package.json und util.js in die entsprechenden Dateien im Alexa Skill Code Editor.

5. Erstellen Sie eine neue Datei, indem Sie oben links im Code-Editor auf das Symbol Neue Datei klicken, und geben Sie den Pfad und den Dateinamen als /lambda/common.js ein

6. Stellen Sie mit der erstellten Datei common.js sicher, dass die Datei geöffnet ist, und kopieren Sie dann den Code in der Datei common.js aus dem Ordner carddealer/skill-nodejs/ in VS Code in die Datei common.js im Alexa Skill Code-Editor.

Sie können die Fertigkeit testen, indem Sie sie bereitstellen. Wenn Sie den Skill testen, schalten Sie den Test von Aus auf Entwicklung um, indem Sie das Dropdown-Menü unter der Navigationsleiste verwenden.

Schritt 20: Python-Code

Python-Code
Python-Code

Der obige Python-Code richtet die mit dem EV3-Stein verbundenen Motoren ein und teilt EV3RSTORM mit, wie er sich bewegen soll, wenn er Befehle vom Alexa-Skill empfängt, einschließlich:

  • Die Karten werden durch die kombinierten Drehungen großer und mittlerer Motoren in die angegebene Richtung verteilt.
  • Die Karten werden nur durch die Umdrehungen des mittleren Motors verschenkt

Der gesamte Code ist im GitHub Repo enthalten.

Das Projekt ist fertig, einfach die Karten mischen und ins Depot legen und das Spiel genießen!

Spielzeug- und Spiele-Challenge
Spielzeug- und Spiele-Challenge
Spielzeug- und Spiele-Challenge
Spielzeug- und Spiele-Challenge

Zweiter bei der Spielzeug- und Spiele-Challenge

Empfohlen: