Inhaltsverzeichnis:
- Schritt 1: Wie funktioniert es?
- Schritt 2: Komponente erforderlich
- Schritt 3: Kombinieren Sie die Arduino-Tutorials
- Schritt 4: Suchen Sie nach einem Schlüsselwort in der HTTP-Antwort und anderen EthernetClient-Problemen
- Schritt 5: Skizze und Quelle
- Schritt 6: Bauen Sie die Hardware auf
Video: Kellner bitte Bot - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:19
Was kann schief gehen, wenn ein Kellner in einem offenen Büroraum von einem Servo klingelt?
- Ich weiß nicht:D
Die Leute neigen dazu, Alarm oder sogar Unterbrechungen zu hassen, daher ist es vielleicht eine gute Idee, es ein bisschen lustig zu machen (zumindest für eine Weile). Das war es, was ich erreichen wollte. Benachrichtigen Sie Techniker schnell und auf akzeptable Weise über kritische Vorfälle.
Es ist mein erstes Arduino-Projekt aus Ethernet-Schild, Infrarotsteuerung, SG90 9g Micro Servo und recycelten Materialien.
Die Slapping-Aktion wird per WebHook oder Fernbedienung ausgelöst. Die Fernbedienung dient auch zur Feineinstellung des Armwinkels.
Schritt 1: Wie funktioniert es?
Es hört auf einen Infrarotempfänger und ruft eine HTTP-Adresse für ein bestimmtes Schlüsselwort ab. Der Infrarot-Controller kann zur Feineinstellung des Armwinkels und auch zum Triggern verwendet werden. Die HTTP-Antwort kann nur zum Auslösen der Glocke verwendet werden. (Im aktuellen Fall habe ich eine kleine Webanwendung erstellt, die Webhook von Slack abfängt und eine Flagge verwaltet. - Nicht in dieser Anleitung enthalten)
Grundsätzlich habe ich den Infrarot-Controller nur zum Debuggen verwendet. Das erste Mal habe ich einen Fehler gemacht, indem ich den Controller neben der Slap-Maschine gelassen habe, aber die Leute waren neugierig genug, viele Male Slap auszulösen, also finde ich das Gerät getrennt:)
Im wirklichen Leben überprüft es nur regelmäßig eine hartcodierte Webadresse, die eine ähnliche Antwort hat wie:
Wenn das Schlüsselwort anyslap von einer ganzen Zahl gefolgt wird, macht es genauso viele Armbewegungen.
Schritt 2: Komponente erforderlich
Elektronische Bauteile:
- Arduino Uno R3
- UNO Shield Ethernet Shield W5100 R3
- Infrarot IR-Fernbedienungsmodul-Kit
- Servo (SG90)
- Universal-Leiterplatte 4x6cm
- 5 x LED
- 5 x 220 Ohm Widerstand
- 30AWG Silikondraht
Wiederverwertete Materialien:
- Shampoo-Flakon
- Kartons
- Spielzeughand (kommen Sie mit einem Kauf von zwei Croissants und erhalten Sie eine Hand kostenlos:)
Schritt 3: Kombinieren Sie die Arduino-Tutorials
Meistens habe ich nur Arduino Built-In-Beispiele, Bibliotheksbeispiele befolgt und zu einem Projekt kombiniert.
Empfohlene Lektionen
- Blinken ohne Verzögerung - Wird für LED-Anzeigen verwendet; millis()-Funktion, um HTTP regelmäßig zu überprüfen und Servo auszuschalten, wenn es nicht verwendet wird.
- Serielle ASCIITable-Ausgabefunktionen - Wird zum Debuggen verwendet.
- Kontrollstrukturen, wie: Schleifeniteration, Groß-/Kleinschreibung, If-Anweisung, While-Schleife
- Ethernet-Webclient mit DHCP-Lease – Wird zum Empfangen von Triggern vom HTTP-Endpunkt verwendet.
- Servo-Lektion - wird für die Armbewegung (Rotation) verwendet.
- Infrarotempfänger - wird für zusätzliche Kontrolle und Feineinstellung des Armwinkels verwendet.
Schritt 4: Suchen Sie nach einem Schlüsselwort in der HTTP-Antwort und anderen EthernetClient-Problemen
Die Montage des Waiter Please Bot war ziemlich einfach, abgesehen von den Ethernet-Dingen.
Schwierigkeiten
- Jeder EthernetClient-Aufruf, insbesondere DHCP-Lease, ist ein einzelner Prozess. Es funktioniert wie eine Verzögerung mit rand, was das Programm anhält.
- Vergessen Sie JSON in API und WebHook Arduino Strings sind sowieso böse.
1. - Einzelprozess
Ich gebe auf, dass das Programm mehrere Prozesse durchführt. Ich google einige mögliche Lösungen, aber keine davon war einfach. Ich wollte den Code so klein und leicht lesbar wie möglich halten.
2. - HTTP-Antwort parsen.
Die Stabilität und wartungsfreie Arbeit sind wesentliche Voraussetzungen. Daher vermeide ich es, ein String-Objekt aufgrund möglicher Speicherverluste zu verwenden.
EthernetClient basiert auf der Stream-Basisklasse und seine Suchfunktion ermöglicht die Suche nach Schlüsselwörtern. Es ist ein bisschen kompliziert und belegt viele Codezeilen, aber es funktioniert.
Schritt 5: Skizze und Quelle
Repository:
Schritt 6: Bauen Sie die Hardware auf
Der Arm
- Im Lieferumfang des Macbooks befinden sich vier Eckenschützer. Ich habe es als Ständer verwendet.
- Schneiden Sie eine kleine Form für das Servo aus.
- Kleben Sie den Ständer und das Servo mit einer Heißklebepistole zusammen.
- Aus einem gebrauchten Shampoo-Flakon ein Rohr genommen und an das Servo geschraubt.
- Ziehe die Spielzeughand am Rohr.
Der Controller
- Habe einen Prototyp auf Steckbrett gemacht.
- Kopieren Sie den Steckbrett-Prototyp auf die universelle Leiterplatte.
- Ich habe Breakaway-Header für alle Drahtkreisverbindungen verwendet.
- Schneide die Papierschachtel aus.
- Kleben Sie die Vorderseite der Box und die Leiterplatte zusammen.
- Legen Sie das Arduino-Board, das Ethernet-Schild und einen Schwamm in die Box.
Fertig.
Empfohlen:
So fügen Sie einen interaktiven Bot in Discord hinzu – wikiHow
Wie man einen interaktiven Bot in Discord hinzufügt: In diesem Tutorial werde ich zeigen, wie man einen eigenen interaktiven Bot erstellt, der mit einigen wenigen Kommandos funktioniert. Discord ist eine Skype/Whats-App-Social-Media-App, die Gamer zusammenbringt. Sie können einen eigenen Kanal haben, überprüfen, welches Spiel jedes Mitglied spielt
Follow-Bot: 6 Schritte
Follow-Bot: Dieses instructable wurde in Erfüllung der Projektanforderung des Makecourse an der University of South Florida (www.makecourse.com) erstellt. Dieses instructable deckt die Schritte ab, um mein Projekt neu zu erstellen. Mein Projekt war ein Rover, der
Bucket Bot 2: 11 Schritte (mit Bildern)
Bucket Bot 2: Dies ist die neueste Version des Bucket Bot - ein mobiler PC-basierter Roboter, der leicht in einem 5-Gallonen-Eimer transportiert werden kann. Der vorherige verwendete eine einfache Holzkonstruktion. Diese neuere Version basiert auf Aluminium und T-Nut, so dass sie leicht e