#377AnfängerIoT

Pico W IoT-Bewegungszähler (PIR)

Zähl, wie oft jemand durch eine Tür oder einen Flur geht, und sieh den Moment der Bewegung live auf dem Handy. Dieses Projekt ist die Schritt-für-Schritt-Anleitung zur IoT-Vorlage Bewegungsmelder in der App, gebaut mit einem Raspberry Pi Pico W und einem PIR-Bewegungssensor mit nur 3 Kabeln. Geh zu Werkstatt › Geräte › Gerät hinzufügen; Ohmi erstellt den Code mit deinem Geräteschlüssel. Der Code hier ist ein Beispiel: Schlüssel und WLAN-Daten sind Platzhalter.

0.0(0)
Pico W IoT-Bewegungszähler (PIR)
Wenn du wissen willst, wie viele Leute am Tag an deiner Tür vorbeigehen oder wie oft deine Katze nachts in die Küche schleicht, ist dieses Projekt genau richtig. Ein Infrarot-Bewegungssensor merkt, wenn sich etwas Warmes vorbeibewegt, das Board zählt jede neue Bewegung, und der Zähler sammelt sich als Diagramm auf deinem Handy. Den Moment der Bewegung siehst du live, und mit einem Tipp setzt du den Zähler zurück. Mit nur drei Kabeln ist es ein guter Einstieg ins Internet der Dinge.
IoT · FernsteuerungDein erstes Gerät ist kostenlos

Steuere dieses Gerät mit der App

Verbinde deinen ESP32 oder Raspberry Pi Pico W mit dem WLAN, schalte ihn vom Handy aus ein und aus und sieh die Messwerte live. Den Code bereitet Ohmi vor; du gibst nur deine WLAN-Daten ein und lädst ihn hoch.

Vorlage in der App: Bewegungsmelder

  • Wo finde ich das in der App?Füge im Tab Werkzeuge oder unter Werkstatt › Geräte ein neues Gerät hinzu und wähle diese Vorlage.
  • Arduino-BibliothekÖffne in der Arduino IDE den Bibliotheksverwalter, suche nach BlueGraysIoT und installiere sie.
App kostenlos laden

Im kostenlosen Plan: 1 Gerät, 1 Diagramm und 24 Stunden Verlauf. Mit Premium mehr Geräte, mehr Diagramme und längerer Verlauf.

Schaltplan

Pico W IoT-Bewegungszähler (PIR) - Circuit

Quellcode

C++ (Arduino IDE)
1// ─────────────────────────────────────────
2//   BlueGrays · bluegrays.com
3//   Pico W IoT-Bewegungszähler (PIR)
4// ─────────────────────────────────────────
5// Die IoT-Vorlage "Bewegungsmelder" aus der BlueGrays-App: Sieht der
6// PIR-Sensor eine Bewegung, meldet das Board sie sofort an die App, zählt
7// jede neue Bewegung, und der Zähler sammelt sich in der App als Diagramm;
8// die Taste Zähler zurücksetzen stellt ihn auf 0. Den echten Code erstellt
9// Ohmi in der App mit deinem eigenen Geräteschlüssel (Werkstatt › Geräte ›
10// Gerät hinzufügen); der Code hier ist ein Beispiel, Geräteschlüssel und
11// WLAN-Daten sind Platzhalter. Bibliotheksverwaltung: BlueGraysIoT (mit
12// Abhängigkeiten). Wähle in der Arduino IDE Raspberry Pi Pico W als Board
13// (Paket pico). Das Board verbindet sich nur mit 2,4-GHz-WLANs. Der
14// PIR-Sensor braucht nach dem Einschalten etwa 1 Minute zum Aufwärmen; in
15// dieser Zeit kann er sich verzählen.
16//
17// Pins:
18//   GP13 -> PIR-Sensor OUT
19//   VBUS (5V), GND -> PIR-Sensor VCC, GND
20//   ESP32: PIR OUT GPIO33, VCC 5V
21
22/*
23 * Bewegungsmelder · BlueGrays IoT
24 * BlueGrays · bluegrays.com
25 * Teile diesen Code nicht: Er enthält deinen Geräteschlüssel und dein WLAN-Passwort.
26 */
27
28#include <BlueGraysIoT.h>
29
30const char *DEVICE_KEY = "DEIN_GERAETESCHLUESSEL";
31const char *WIFI_NAME = "DEIN_WLAN_NAME";
32const char *WIFI_PASSWORD = "DEIN_WLAN_PASSWORT";
33
34BlueGraysIoT bg(DEVICE_KEY);
35
36const int PIR_PIN = 13;
37bool lastMotion = false; long counter = 0;
38
39void setup() {
40  Serial.begin(115200);
41  pinMode(PIR_PIN, INPUT);
42  bg.onSwitch("sifirla", [](bool on) { if (!on) return; counter = 0; bg.send("sifirla", false); });
43  bg.setDebug(Serial);
44  bg.setLanguage(BG_LANG_EN);
45  bg.begin(WIFI_NAME, WIFI_PASSWORD);
46}
47
48void loop() {
49  bg.loop();  // hier keine langen delay()-Aufrufe
50  bool motion = digitalRead(PIR_PIN) == HIGH;
51  if (motion && !lastMotion) counter++;
52  lastMotion = motion;
53  bg.send("hareket", motion);
54  bg.send("sayac", counter);
55}
56

FAQ

Kann ich den Code von dieser Seite direkt hochladen?

Hochladen kannst du ihn, verbinden wird er sich aber nicht: Geräteschlüssel und WLAN-Daten darin sind Platzhalter. Geh in der App zu Werkstatt › Geräte › Gerät hinzufügen und wähle die Vorlage Bewegungsmelder; Ohmi erstellt den Code mit deinem Schlüssel, deinem Netzwerknamen und deinem Passwort. Kopier diesen Code und lade ihn hoch. Den ganzen Code siehst du später unter Gerät › Code und Schlüssel.

Geht das auch mit einem ESP32?

Ja. Wähle beim Hinzufügen des Geräts ESP32 als Board; der Code bleibt gleich, nur der Sensorpin ändert sich: PIR OUT kommt an GPIO33, VCC an den Pin 5V. Installiere in der Arduino IDE über den Boardverwalter das Paket "esp32". Schaltung und Foto auf dieser Seite sind mit einem Pico W entstanden.

Wird der Zähler nach einem Stromausfall zurückgesetzt?

Ja. Der Zähler steht im Speicher des Boards und beginnt nach einem Neustart wieder bei 0. Das Diagramm in der App liegt auf dem Server, die alten Werte gehen also nicht verloren; nur die neue Zählung beginnt bei 0. Willst du den Zähler selbst zurücksetzen, tipp in der App auf Zähler zurücksetzen.

Sind mein WLAN-Passwort und mein Geräteschlüssel sicher?

Dein WLAN-Passwort bleibt auf deinem Handy und wird nie an unseren Server geschickt; es wird auf dem Handy in den Code eingesetzt. Der Geräteschlüssel reist nur im Header der sicheren Verbindung und wird nie im seriellen Monitor ausgegeben. Beides steht trotzdem im Code, also teile den Code aus der App mit niemandem. Hat jemand deinen Schlüssel gesehen, hol dir mit Schlüssel erneuern einen neuen und lade den neuen Code hoch.