Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Rufen Sie mein Arduino an

Komponenten und Verbrauchsmaterialien

Arduino UNO
× 1
Arduino Ethernet Shield
× 1
Analoger Temperatursensor
× 1

Über dieses Projekt


(Von http://www.instructables.com/id/Call-my-Arduino/)

So aktivieren Sie Telefongespräche mit Ihrem Arduino , mit Twilio und Yaler.net

Twilio ist ein Webdienst, der alles in ein Telefon verwandelt. Es ist eine REST-API für Telefonie, die in der Cloud gehostet wird. In diesem Fall fragt Twilio den Arduino nach einer neuen voice.xml-Datei, wenn jemand die vordefinierte Telefonnummer des Arduino anruft. Der Inhalt der Antwort wird dem Anrufer von Alice, einer Stimme von Twilios Text-to-Speech-Engine, vorgelesen.

Yaler.net ermöglicht den Webzugriff auf eingebettete Geräte hinter einer Firewall, NAT oder einem mobilen Netzwerkrouter. Hier ermöglicht es Twilio, auf die Datei voice.xml auf dem Arduino zuzugreifen, der sich in einem lokalen Netzwerk befindet und daher keine eigene öffentliche IP-Adresse besitzt (Offenlegung:Ich bin ein Gründer von Yaler).

Diese Demo verwendet einen Temperatursensor, aber jeder andere Sensor würde es auch tun. Ein reales Produktbeispiel wäre der Canary (jetzt Birdi) Rauchmelder, mit dem besorgte Hausbesitzer anrufen können, um zu fragen, ob die Batterie noch in Ordnung ist.

Auf einer abstrakteren Ebene versucht dieses Instructable zu zeigen, wie modulare Cloud-Dienste in einem offenen Internet der Dinge frei kombiniert werden können, um neuartige, einfache und zuverlässige Lösungen zu erstellen. HTTP und Webhooks FTW! Aber fangen wir an... 

(Hier ist ein Video, das dieses Projekt von IoTLive erklärt, Teil des IoTDay 2014)


Material

- Arduino Uno (z. B. https://www.adafruit.com/products/50)

- USB-Kabel Standard A-B (z. B. http://www.adafruit.com/products/62)

- Arduino Ethernet Shield (z. B. http://www.adafruit.com/products/201)

- Ethernet-Kabel (z. B. http://www.adafruit.com/products/995)

- Analoger Temperatursensor (z. B. https://www.adafruit.com/products/165)

- Breadboarding-Drahtbündel (z. B. http://www.adafruit.com/products/153)

- Steckbrett (z. B. http://www.adafruit.com/products/64)

http://www.youtube.com/watch?v=4IPwkW38oIw

Schritt 1:Sensor verkabeln

Fügen Sie dem Arduino das Ethernet-Shield hinzu und schließen Sie den Temperatursensor wie gezeigt an. Einzelheiten zur Temperaturerfassung mit dem TMP36-Sensor finden Sie z.B. http://learn.adafruit.com/tmp36-temperature-sensor/using-a-temp-sensor 

Falls Sie andere (digitale) Sensoren hinzufügen möchten, denken Sie daran, dass einige Pins vom Ethernet-Shield verwendet werden.

Schritt 2:Installieren der Yaler-Bibliothek

Folgen Sie den drei Schritten zum Installieren der Bibliothek unter https://yaler.net/arduino Falls noch nicht geschehen, melden Sie sich unter https://yaler.net/ für ein kostenloses Testkonto an und notieren Sie sich die Relay-Domain (der geheime Schlüssel wird nicht benötigt).

Schritt 3:Programmierung des Arduino

Laden Sie den TwilioYalerWebService Arduino-Quellcode herunter

https://bitbucket.org/tamberg/iotworkshop/raw/default/Arduino/TwilioYalerWebService/TwilioYalerWebService.ino?at=default 

Öffnen Sie den Arduino-Code

Das Programm implementiert einen sehr einfachen Webserver, der auf eingehende HTTP-Anfragen lauscht. Sobald eine Anfrage eingeht, antwortet das Programm mit einem XML-Dokument. Dem Server ist es egal, ob der URL-Pfad / ist oder /voice.xml.

Ändern Sie die MAC-Adresse

Stellen Sie sicher, dass die MAC-Adresse im Arduino-Code eindeutig ist. Dies ist besonders wichtig, wenn sich mehrere Arduinos im selben lokalen Netzwerk befinden. Eine einfache Möglichkeit, eine (hoffentlich) eindeutige Adresse zu erhalten, besteht darin, den MAC Ihres Computers nachzuschlagen und dann 1 zur letzten Ziffer hinzuzufügen.

Geben Sie Ihre Relay-Domain ein

Anstatt einen lokalen Server mit EthernetServer-Server(80) zu erstellen; wir erstellen einen, auf den über das Yaler-Relay try.yaler.net zugegriffen werden kann , in der folgenden Zeile:

YalerEthernetServer-Server("try.yaler.net", 80, "RELAY_DOMAIN");

RELAY_DOMAIN ersetzen mit Ihrer Relay-Domain, z.B. für gsiot-ffmq-ttd5 Typ:

YalerEthernetServer-Server("try.yaler.net", 80, "gsiot-ffmq-ttd5");

Beachten Sie, dass Sie auch den lokalen Server verwenden können, wenn Sie wissen, wie Sie die Portweiterleitung konfigurieren, um eine Lücke für eingehende HTTP-Anfragen in Ihrer lokalen Firewall zu öffnen. Wichtig ist, dass Twilio aus der Cloud auf das Arduino zugreifen kann.

Änderungen speichern und hochladen

Speichern Sie alle Änderungen und laden Sie das Programm auf Ihr Arduino hoch. Lassen Sie das USB-Kabel vorerst an Ihrem Entwicklungscomputer angeschlossen und öffnen Sie die serielle Konsole, um die Debugging-Ausgabe anzuzeigen.

Schritt 4:Zugriff auf das Arduino

Zugreifen auf Ihr Arduino von jedem Browser aus

Die Yaler-Bibliothek macht Ihr Arduino (und damit das XML-Dokument) über das öffentliche Internet unter http://RELAY_DOMAIN.try.yaler.net/,  . zugänglich z.B. für die Relay-Domain gsiot-ffmq-ttd5 die URL lautet http://gsiot-ffmq-ttd5.try.yaler.net/ Oder, damit es für Twilio schöner aussieht: http://gsiot-ffmq-ttd5.try.yaler.net/voice.xml

Überprüfen Sie das XML-Dokument

Der Inhalt des XML-Dokuments teilt Twilio mit, was auf einen eingehenden Telefonanruf zu antworten ist. Sie können sogar die Text-to-Speech-Stimme auswählen. Hier ist es Alice. Das XML-Format von Twilio heißt TwiML. Weitere Informationen finden Sie unter https://www.twilio.com/docs/api/twiml. Beachten Sie, dass der Antworttext die tatsächliche Temperatur enthält. Heizen Sie Ihren Sensor auf und aktualisieren Sie das Dokument in Ihrem Webbrowser mit F5, um zu sehen, wie es sich ändert.

Fehlerbehebung

Falls Sie eine leere Seite oder einen Fehler erhalten, vergewissern Sie sich, dass Ihr Ethernet-Kabel eingesteckt ist und überprüfen Sie https://yaler.net/browser für browserspezifisches Debugging.

Schritt 5:Einrichten einer Twilio-Nummer

Registrieren

Um ein Twilio-Konto zu erhalten, müssen Sie sich zunächst unter https://www.twilio.com/

anmelden

Kaufen Sie eine Telefonnummer

Um Anrufe entgegenzunehmen, benötigen Sie eine Nummer, die (gering) kostet. Melden Sie sich an, navigieren Sie zu Zahlen und wähle die  Twilio-Nummern Untermenü, um die Nummern verwalten anzuzeigen Tab.

Klicken Sie auf Nummer kaufen wählen Sie die Stimme Kontrollkästchen und klicken Sie auf Suchen , dann wähle eine Zahl und klicke auf Kaufen um es zu kaufen.

Konfigurieren Sie die voice.xml-Webhook-URL

In der Nummern verwalten Klicken Sie auf der Registerkarte auf die Nummer, die Sie gerade gekauft haben. Legen Sie die Antwort-URL fest. zu http://RELAY_DOMAIN.try.yaler.net/voice.xml und stellen Sie sicher, dass POST ausgewählt ist, z. B. für die Yaler-Relay-Domain gsiot-ffmq-ttd5 setzen Sie die Antwort-URL auf http://gsiot-ffmq-ttd5.try.yaler.net/voice.xml

Schritt 6:Testanruf tätigen

Sobald das Arduino eingerichtet ist, können Sie es von jedem Telefon aus anrufen - sogar von dem Ihres Großvaters.


Das war's, danke fürs Lesen. @tamberg

Code

Bitbucket
https://bitbucket.org/tamberg/iotworkshop/raw/default/Arduino/TwilioYalerWebService/TwilioYalerWebService.ino?at=default

Schaltpläne


Herstellungsprozess

  1. Antitranspirant-/Deodorant-Stick
  2. Raspberry Pi Garagentoröffner mit Streaming-Video des Türstatus.
  3. Elektronentomographie bleistiftförmiger GaN/(In,Ga)N-Kern-Schale-Nanodrähte
  4. Arduino Spybot
  5. FlickMote
  6. Selbstgemachter Fernseher B-Gone
  7. Rufen Sie mein Arduino an
  8. Hauptuhr
  9. Finde mich
  10. Wartungssoftware/ CMMS – Erstellung eines Business Case