#375PrincipianteIoT

Pico W Sensore IoT per Porta (Reed)

La porta o la finestra è rimasta aperta? Guardalo sul telefono. Questo progetto è la guida passo passo del modello IoT Porta / finestra dell'app, montato con un Raspberry Pi Pico W, un interruttore reed e un piccolo magnete. Vai in Officina › Dispositivi › Aggiungi dispositivo, scegli Pico W come scheda e Porta / finestra come modello; Ohmi prepara il codice con la tua chiave del dispositivo. Il codice di questa pagina è un esempio: chiave e dati Wi-Fi sono segnaposto.

0.0(0)
Pico W Sensore IoT per Porta (Reed)
Ti è mai capitato di uscire e chiederti se avevi chiuso la porta del balcone? Questo progetto fa per te. Attacchi un piccolo interruttore reed al telaio della porta e un magnete alla porta; quando la porta si apre il magnete si allontana e l'app mostra subito Aperta. L'app prepara il codice per te; tu colleghi solo due fili e lo carichi. Non serve nemmeno una resistenza, basta la pull-up interna della scheda: l'inizio più semplice per il tuo primo sensore IoT.
IoT · controllo a distanzaIl primo dispositivo è gratis

Controlla questo dispositivo dall'app

Collega il tuo ESP32 o Raspberry Pi Pico W al Wi-Fi, accendilo e spegnilo dal telefono e guarda le misure in diretta. Il codice lo prepara Ohmi; tu inserisci solo i dati del Wi-Fi e lo carichi.

Modello nell'app: Porta / finestra

  • Dove si trova nell'app?Aggiungi un nuovo dispositivo dalla scheda Strumenti o da Officina › Dispositivi e scegli questo modello.
  • Libreria ArduinoApri il Gestore librerie dell'Arduino IDE, cerca BlueGraysIoT e installala.
Scarica l'app gratis

Il piano gratuito include 1 dispositivo, 1 grafico e 24 ore di cronologia. Con Premium hai più dispositivi, più grafici e una cronologia più lunga.

Schema circuito

Pico W Sensore IoT per Porta (Reed) - Circuit

Codice sorgente

C++ (Arduino IDE)
1// ─────────────────────────────────────────
2//   BlueGrays · bluegrays.com
3//   Pico W Sensore IoT per Porta (Reed)
4// ─────────────────────────────────────────
5// Il modello IoT "Porta / finestra" dell'app BlueGrays: con un
6// interruttore reed e un magnete vedi sul telefono se una porta o una
7// finestra è aperta o chiusa. Ohmi prepara il codice vero nell'app con la
8// tua chiave del dispositivo (Officina › Dispositivi › Aggiungi
9// dispositivo); il codice qui è un esempio, chiave del dispositivo e dati
10// Wi-Fi sono segnaposto. Pacchetto schede: Raspberry Pi Pico (Earle
11// Philhower). Gestore librerie: BlueGraysIoT (con le sue dipendenze). La
12// scheda si collega solo a reti Wi-Fi a 2,4 GHz. Con il magnete vicino il
13// reed si chiude e la porta conta come chiusa.
14//
15// Pin:
16//   GP14 -> Un piedino dell'interruttore reed
17//   GND -> L'altro piedino dell'interruttore reed
18//   ESP32: reed GPIO27
19
20/*
21 * Porta / finestra · BlueGrays IoT
22 * BlueGrays · bluegrays.com
23 * Non condividere questo codice: contiene la chiave del dispositivo e la password del Wi-Fi.
24 */
25
26#include <BlueGraysIoT.h>
27
28const char *DEVICE_KEY = "LA_TUA_CHIAVE_DISPOSITIVO";
29const char *WIFI_NAME = "LA_TUA_RETE_WIFI";
30const char *WIFI_PASSWORD = "LA_TUA_PASSWORD_WIFI";
31
32BlueGraysIoT bg(DEVICE_KEY);
33
34const int REED_PIN = 14;
35bool lastRaw = false, stableOpen = false;
36unsigned long changedAtMs = 0;
37
38void setup() {
39  Serial.begin(115200);
40  pinMode(REED_PIN, INPUT_PULLUP);
41  bg.setDebug(Serial);
42  bg.setLanguage(BG_LANG_EN);
43  bg.begin(WIFI_NAME, WIFI_PASSWORD);
44}
45
46void loop() {
47  bg.loop();  // evita qui delay() lunghi
48  bool raw = digitalRead(REED_PIN) == HIGH;
49  if (raw != lastRaw) { lastRaw = raw; changedAtMs = millis(); }
50  if (millis() - changedAtMs > 50) stableOpen = raw;
51  bg.send("kapi", stableOpen ? "acik" : "kapali");
52}
53

FAQ

Posso caricare direttamente sulla scheda il codice di questa pagina?

Puoi, ma non si collegherà: la chiave del dispositivo e i dati Wi-Fi al suo interno sono segnaposto. Nell'app vai in Officina › Dispositivi › Aggiungi dispositivo, scegli Pico W come scheda e il modello Porta / finestra; Ohmi prepara il codice con la tua chiave, il nome della rete e la password. Copia quel codice e caricalo. Il codice completo lo trovi poi in Dispositivo › Codice e chiave.

Come carico sul Pico W? È MicroPython?

Questo progetto funziona con Arduino C++, non con MicroPython. Nell'Arduino IDE installa il pacchetto "pico" (Raspberry Pi Pico/RP2040, Earle Philhower) dal Gestore schede e scegli Raspberry Pi Pico W in Strumenti › Scheda. Se è il primo caricamento o non compare nessuna porta, tieni premuto il pulsante BOOTSEL mentre colleghi il cavo USB; l'Arduino IDE vede la scheda come un'unità e ci carica il codice. Installa BlueGraysIoT con le sue dipendenze dal Gestore librerie.

Come monto l'interruttore reed e il magnete?

Incolla o avvita il reed sul telaio della porta e il magnete sulla porta, in modo che stia proprio di fronte quando la porta è chiusa; lascia meno di 1 cm tra i due. Con il magnete vicino il reed si chiude e la porta risulta Chiusa; quando la porta si apre e il magnete si allontana, risulta Aperta. I due piedini del reed non hanno polarità, non importa quale va su GP14. Se ti servono fili più lunghi basta un cavo sottile a due conduttori. I reed in vetro sono fragili: non piegare i piedini vicino al corpo.

Funziona anche con un ESP32?

Sì. Quando aggiungi il dispositivo scegli ESP32 come scheda; il codice resta lo stesso, cambia solo il pin: un piedino del reed va su GPIO27 e l'altro su GND. Nell'Arduino IDE installa il pacchetto "esp32" dal Gestore schede. Il circuito e la foto di questa pagina sono stati fatti con un Pico W.