Inhoudsopgave:
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-23 15:01
In deze Instructable zullen we zien hoe we een 8x8 Led Matrix Clock kunnen bouwen die wordt geactiveerd door bewegingsdetectie.
Deze klok kan ook worden gebruikt als anti-inbraakapparaat dat een waarschuwingsbericht stuurt als er een beweging wordt gedetecteerd naar een telegrambot!!!
We doen het met twee verschillende objecten:
- De digitale klok, bestuurd door een Wemos D1 mini
- Een centrale controle-eenheid (rasperry) waar Mosquitto draait (een MQTT-makelaar) die de interface maakt tussen de klok en de telegrambot
Deze architectuur is bedoeld om de communicatie tussen andere apparaten, met verschillende functies (bijv. temperatuursensoren, relais, …), naar de telegrambot te beheren
Benodigdheden
Onderdelenlijst van de digitale klok:
- Wemos D1 Mini
- Wemos D1 Mini - RTC-schild8x8 Led Matrix met MAX7219
- PIR-sensor
- Breadboard
- Kabels
- Usb oplader
Onderdelenlijst van de Centrale Besturingseenheid
- Framboos PI
- Usb oplader
Stap 1: Bouw de klok
Om de klok te bouwen:
- plaats de 4 8x8 Matrix Led in het breadboard
- verbinding opbouwen
- Monteer de Wemos D1 mini op het RTC-schild en op de PIR-sensor
- Verbinding voltooien
Plaats de 4 led-modules naast elkaar en verbind de uitgangspinnen van elke module met de ingangspinnen van de volgende.
- VCC => VCC
- GND => GND
- DOUT => DIN
- CS => CS
- CLK => CLK
De eerste module-ingangspinnen moeten op een dergelijke manier worden aangesloten op de Wemos D1 mini-pinnen:
- VCC => 5V
- GND => GND
- DIN => D7
- CS => D6
- CLK => D5
Sluit ook de PIR-sensor aan op de Wemos D1 mini-pinnen:
- VCC => 5V
- Uit => D0
- GND => GND
Verbindingen zijn klaar!
Stap 2: Schrijf en laad programma naar Wemos D1mini
Het bestand Wemos_reogio.ino wordt in deze instructable geüpload, zodat u deze kunt laden en wijzigen met uw netwerkparameters in uw arduino-IDE.
Het programma schakelt de leds in wanneer de PIR-sensor wordt bekrachtigd, gedurende 20 seconden (of langer als de sensor blijft bekrachtigd) en schakelt vervolgens de leds uit. Wanneer de esp8266 een bericht detecteert via MQTT in het volgende formaat:
["Pir_on":1} de detectiemodus wordt geactiveerd en het volgende bericht wordt via MQTT gepubliceerd wanneer de PIR-sensor wordt geactiveerd (voor de eerste keer):
["Pir_off":1} Op zo'n manier heeft dit apparaat twee verschillende functies:
beweging geactiveerde klok anti-inbraak waarschuwing En deze laatste functie wordt "gemaskeerd" door een "normale" klok
Enkele problemen:
Als je de esp8266 nog nooit in de Arduino IDE hebt geïnstalleerd, kun je hier een tutorial bekijken:
www.instructables.com/id/Setting-Up-the-Ar…
U moet bibliotheken installeren voor:
RTC-schild: RTClib.h
github.com/adafruit/RTClib
LET OP: de tijd in rtc moet worden ingesteld de eerste keer dat het RTC-schild met de batterij wordt geïnstalleerd, dan behoudt het de gegevens totdat de batterij is ontladen
8x8 Led Matrix: LedControl.h
github.com/esp8266/Basic/blob/master/libra…
Hier een voorbeeld van het beheren van deze leds:
www.instructables.com/id/Interface-LED-Dot…
Afhankelijk van de bedrading kan het zijn dat u de volgorde waarin de leds zijn geschreven moet wijzigen. controleer het en, voor het geval, kunt u de volgende rij wijzigen: int revDisp = numDisplay - disp-1; // omgekeerde volgorde van de panelen LET OP: HET HANGT AF VAN DE BEDRADING
je moet ook MQTT-bibliotheken installeren om te beheren:
MQTT-protocol: PubSubClient.h
www.arduinolibraries.info/libraries/pub-su…
in deze code is de MQTT-broker geïnstalleerd in een Raspberry met statisch IP. Hier is een voorbeeld:
www.instructables.com/id/How-To-Assign-A-S…
Stap 3: Bereid Telegram Bot. voor
Hier leggen we niet de Raspberry-set-up uit, noch de communicatie tussen Raspberry en een telegrambot, omdat hier veel tytorials over bestaan.
Een voorbeeld is:
www.instructables.com/id/Set-up-Telegram-B…
Stap 4: Bereid Raspberry en laad Mosquito
Je moet mosquitto op Raspberry installeren, je kunt veel tutorials vinden, hier een voorbeeld over hoe je de MQTT tussen Raspberry en esp8266 kunt beheren:
www.instructables.com/id/How-to-Use-MQTT-W…
We hebben een python-programma voorbereid dat fungeert als een interface tussen telegram en de MQTT-makelaar, en converteert:
- commando's door de bot in berichten gepubliceerd op MQTT, zodat ze kunnen worden beluisterd door de esp8266
- berichten gepubliceerd in MQTT door esp8266 in berichten aan de bot
Aanbevolen:
Anti-uitsteller: 7 stappen
Anti-uitsteller: Onze wereld is verschoven waar mensen van alle leeftijden aan hun telefoons gekluisterd zijn. Soms kan het zo afleidend zijn en ertoe leiden dat mensen het werk dat ze moeten doen uitstellen. De Anti-Procrastinator is een apparaat waarmee mensen kunnen afbreken
Anti-Vervuiling's Plan: 3 Stappen
Anti-Vervuiling's Plan: Om vervuiling tegen te gaan in openbare ruimtes, hebben we iets bedacht mensen hopelijk hun eigen rommel zullen gaan opruimen
ANTi-AFLEIDING: de smartphonehouder die u helpt focussen: 7 stappen (met afbeeldingen)
ANTiDISTRACTIE: de smartphonehouder die u helpt focussen: Ons ANTiDISTRACTION-apparaat is gericht op het beëindigen van alle vormen van cellulaire afleiding tijdens perioden van intense focus. De machine fungeert als laadstation waarop een mobiel apparaat wordt gemonteerd om een afleidingsvrije omgeving mogelijk te maken
ASS-apparaat (anti-sociaal sociaal apparaat): 7 stappen
ASS Device (Anti-Social Social Device): Stel dat je het soort persoon bent dat graag in de buurt van mensen is, maar het niet leuk vindt dat ze te dichtbij komen. Daarnaast ben je een people pleaser en vind je het moeilijk om nee te zeggen tegen mensen. Dus je weet niet hoe je ze moet vertellen dat ze zich moeten terugtrekken. Nou, ga naar binnen - het ASS-apparaat! J
Anti-waterverspilling: 4 stappen
Anti-waterverkwister: In ons huis is een vermeende waterverkwister die de kraan te lang laat lopen. Deze anti-waterverkwister is ontworpen om een vriendelijke herinnering te zijn aan de persoon die water verspilt