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

Arduino Türsensor: Echtzeit Facebook Messenger Alerts via IFTTT

Komponenten und Zubehör

KomponenteMenge
Arduino UNO1
PHPoC WiFi Shield für Arduino1
Magnetischer Kontaktschalter (Reed-Kontakt)1

Apps und Online-Dienste

Projektbeschreibung

Hinweis: IFTTT hat den Facebook Messenger-Dienst aufgrund neuer Facebook-Richtlinien eingestellt. Dieses Projekt ist daher nicht mehr durchführbar.

Für Einsteiger geeignet, um Arduino WiFi, Türsensor und IFTTT kennenzulernen.

Systemarchitektur

Arduino + PHPoC WiFi Shield → Türsensor (Pin A0) → IFTTT Webhooks → Facebook Messenger (ehemals).

Verkabelung

IFTTT Applet erstellen (12 Schritte)

  1. „Create Applet“
  2. Trigger festlegen
  3. „Webhooks“ suchen & auswählen
  4. „Receive a web request“ wählen
  5. Event Name: door_open → „Create trigger“
  6. „+that“ für Action
  7. „Facebook Messenger“ suchen & auswählen
  8. Action „Send message“ (Facebook-Verbindung nötig)
  9. Nachrichtentext erstellen, „Add ingredient“ → „OccurredAt“ (Zeitpunkt)
  10. „Create action“
  11. „Finish“

Webhooks Key erhalten

https://ifttt.com/maker_webhooks → „Documentation“ → Key kopieren → in Arduino-Code eintragen.

Bibliotheken

PHPoC Library und Button Library (ezButton).

Code

MonotorDoorMessenger (Arduino)

// Tutorial: https://forum.phpoc.com/articles/tutorials/1241-arduino-ssl-web-client
#include 
#include 

String IFTTT_WEBHOOKS_KEY = "xxxxxxxxxxxxxxxxxxxxxx"; // eigenen Key eintragen
char server_name[] = "maker.ifttt.com";
PhpocClient client;
ezButton button(A0); // Button-Objekt an Pin A0

void sendNotification() {
  if (client.connectSSL(server_name, 443)) {
    Serial.println("Connected to server");
    client.println("GET /trigger/door_open/with/key/" + IFTTT_WEBHOOKS_KEY + " HTTP/1.1");
    client.println("Host: maker.ifttt.com");
    client.println("Connection: close");
    client.println();
  }
  while (client.connected()) {
    if (client.available()) {
      char c = client.read();
      Serial.write(c);
    }
  }
  Serial.println();
  Serial.println("disconnecting from server.");
  client.stop();
}

void setup() {
  Serial.begin(9600);
  Phpoc.begin(PF_LOG_SPI | PF_LOG_NET);
  button.setDebounceTime(100); // 100 ms Entprellung
}

void loop() {
  button.loop();
  if (button.isPressed()) {
    Serial.println("door is opened");
    sendNotification();
    delay(100);
  } else if (button.isReleased()) {
    Serial.println("door is closed");
  }
}

Schaltplan

Verkabelungsbild im Projekt enthalten.

Herstellungsprozess

  1. ATmel AT89-Serie mühelos mit Arduino Uno programmieren – Schritt-für-Schritt-Anleitung
  2. K30 CO₂-Sensor: Echtzeit-Luftqualitätsmessung mit Arduino
  3. Berührungsloses Temperatur-Überwachungstor für schnelles Screening
  4. Web-fähigen IoT-Messer mit Arduino, Yaler und IFTTT bauen
  5. Echtzeit-Waldbrand-Überwachungssystem mit SMS-Alarm
  6. Arduino UNO & WiFi Shield: Echtzeit-Temperaturanzeige im Web via Serial
  7. Smartes Temperatur-Monitoring für Schulen – Arduino, Raspberry Pi, Sigfox & ThingSpeak
  8. Bewegungsaktiviertes Beleuchtungssystem mit Intel Curie (Arduino 101)
  9. Automatische Tür mit Arduino & Ultraschallsensor bauen
  10. WLAN-Türschloss mit Arduino & ESP8266 – Per Smartphone entsperren