Mikrocontrollere bruges ofte i kommercielle sikkerhedsprodukter såsom indbrudsalarmer. Sidstnævnte kan dog være ret dyrt. Så hvorfor ikke oprette en hjemmelavet alarm ved hjælp af en $ 4 Raspberry Pi Pico mikrokontroller?
Denne bruger en PIR-sensor (passiv infrarød) - som brugt af mange kommercielle alarmsystemer - til at detektere tilstedeværelsen af en ubuden gæst. Det er ideelt til at fange nogen, der sniger sig ind i dit værelse eller sniger sig rundt på dit skrivebord, eller til at beskytte din stash af cookies. Ved hjælp af MicroPython kan du programmere din alarm til at reagere med en akustisk alarm og et blinkende lys.
1. Opbygning af alarmen
For at oprette alarmen skal du bruge et udvalg af standardelektroniske komponenter.
Hvad du har brug for:
- Hindbær Pi Pico med lodde mandstifthoveder
- Brødbræt
- LED (enhver farve)
- 330 ohm modstand
- Aktiv piezoelektrisk summer
- HC-SR501 PIR-sensor
- 4x han-til-han (M2M) jumper ledninger
- 3x han-til-hun (M2F) jumper ledninger
Bemærk: Hvis du ikke har lyst til at lodde mandlige pin-headere til din Raspberry Pi Pico, er det muligt at købe en Pico med overskrifter, der allerede er fastgjort.
Relaterede: Et kig på Pico, Raspberry Pi's nyeste Petite Powerhouse
Inden du tilslutter alt, skal du kigge på undersiden af Pico for at se stiftetiketterne.
På toppen af Pico kan du også se, hvordan den fysiske pin-nummerering fungerer, fra 1 til 40, mod uret fra venstre for mikro-USB-porten.
Indsæt Pico's mandlige pindhoveder i brødpladen i hullerne i den ene ende. Skub det godt ned for at sikre gode forbindelser - det skal sidde tæt. Brug derefter hun-til-han-jumperledninger til at forbinde PIR-sensoren til den: VCC-stiften skal forbindes til Picos 5V VBUS, digital OUT til GP28 og GND til en GND-pin (f.eks. Pin 3), som vist i ledningsdiagrammet under.
Forbind en af brødbrætets jordskinner (markeret med en blå linje) til en anden GND-pin på Pico (f.eks. Fysisk pin 23, som her). For et blinkende lys skal du indsætte en LED i brødpladen, hvis ben er på hver side af det centrale skille.
Det kortere ben (katoden) skal derefter forbindes til den samme jordskinne. Det længere ben (anoden) på LED'en skal forbindes til GP15-stiften via en modstand for at begrænse mængden af elektrisk strøm, der passerer gennem den, hvilket ellers kan beskadige LED'en eller Pico'en.
Til sidst skal du tilføje en summer for at give en biplyd, når alarmen går. Placer benene på begge sider af brødbrætets centrale kløft og tilslut det kortere ben eller den sorte tråd til jordskinnen og det længere ben (undertiden markeret oven på summeren med '+') eller rød ledning til GP14.
2. Programmering af alarmen
Du bliver nødt til at installere MicroPython på Pico. Denne proces involverer fire enkle trin:
- Download MicroPython til Raspberry Pi Pico fra Raspberry Pi-websted
- Tilslut Pico til din computer via dens mikro-USB-stik, mens du holder BOOTSEL-knappen nede
- Vent til Pico vises som et eksternt drev
- Træk og slip .uf2 MicroPython-filen for at kopiere den til Pi Pico; den genstarter automatisk
Mens der findes adskillige programmerings-IDE'er (integrerede udviklingsmiljøer) til MicroPython, bruger vi her Thonny. Det er allerede forudinstalleret i Raspberry Pi OS (hvis du bruger en Raspberry Pi-computer tilsluttet Pico), eller kan downloades til ethvert computersystem fra det officielle websted ved at klikke på linket øverst til højre hjørne.
Hent: Thonny (gratis)
Åbn Thonny med din Pico tilsluttet computeren. I nederste højre hjørne af Thonny-vinduet kan du se den version af Python, du bruger i øjeblikket. Klik på den og vælg MicroPython (Raspberry Pi Pico).
Du er nu klar til at programmere din ubuden gæstealarm på Pico. Tilføj følgende linier med kode til hovedruden i Thonny.
import maskine
importtid
pir = maskine. Pin (28, maskine. Pin. IN, maskine. Pin. TRÆK NED)
led = maskine. Pin (15, maskine. Pin. UD)
summer = maskine. Pin (14, maskine. Pin. UD)
def pir_handler (pin):
utime.sleep_ms (100)
hvis pin.value ():
print ("Bevægelse registreret. Indtrængende alarm! ")
for jeg inden for rækkevidde (50):
led.toggle ()
summer.toggle ()
utime.sleep_ms (100)
pir.irq (trigger = maskine. Pin. IRQ_RISING, handler = pir_handler)
Her importerer du maskin- og tidsbibliotekerne øverst. Derefter skal du oprette objekter til PIR, LED og summer - tilsluttet henholdsvis GP28, GP15 og GP14-ben.
Bemærk, at PIR er indstillet som input med maskine. Pin. I, med en maskine. Pin. TRÆK NED parameter for at indstille sin Pico pin modstand til pull-down mode; dette betyder, at det vil læse som nul, indtil der sendes en elektrisk strøm til det fra PIR, der udløses.
Relaterede: Kom godt i gang med MicroPython på Raspberry Pi Pico
Nederst i koden er en IRQ (afbrydelsesanmodning) indstillet til at udløse pir_handler fungerer, så snart der registreres et signal på indgangsstiften (GP28) fra PIR-sensoren.
For at undgå gentagen udløsning inden for kort tid skal du i selve funktionen tilføje en 100ms forsinkelse, før du kontrollerer pinværdien igen, og hvis den ikke er nul, udløses alarmen. Derefter skifter LED og summer til og fra for at blinke lyset og afgive en biplyd.
Gem programmet på din Pico med et relevant navn, f.eks alarm.py. Kør programmet, og når du vinker din hånd over PIR-sensoren, skal summeren bippe, og LED'en blinker hurtigt.
3. Justering af sensorfølsomhed
Hvis alarmen går for let eller slet ikke, skal du muligvis justere følsomheden på PIR-sensoren. HC-SR501 har to plastskruer - normalt mærket Sx og Tx - fastgjort til to små potentiometre for at justere dens indstillinger.
Ved hjælp af en lille skruetrækker kan du dreje Sx-skruen mod uret for at øge dens følsomhed (eller omvendt). Drejning af Tx-skruen ændrer, hvor længe det udløste signal sendes efter indtrængerregistrering - vi fandt det bedst at dreje det helt mod uret i den korteste forsinkelse på 1 sekund.
Som standard registrerer PIR enhver bevægelse i 360 ° omkring den. Hvis du vil begrænse detektionsområdet, kan du prøve at placere det i bunden af papens indre rør fra en toiletrulle og vinkle det i den retning, du vil dække.
Lav din egen mobile indbrudsalarm
Når din indbrudsalarm fungerer til din tilfredshed, kan det være en god idé at flytte den væk fra din computer. Ved at gemme programmet som main.py, kan du derefter afbryde den fra computeren og tilslutte en standard mobil strømbank til dens mikro-USB-port.
Pico'en kører derefter automatisk main.py program, så snart det er tændt. Tillykke: Du har nu en mobil indbrudsalarm, der kan placeres hvor som helst, du vil.
Tilfældige alfanumeriske serienumre kommer til at beskytte dit privatliv. Her er hvad der foregår ...
Læs Næste
- gør det selv
- Hindbær Pi
- Python
Abonner på vores nyhedsbrev
Deltag i vores nyhedsbrev for tekniske tip, anmeldelser, gratis e-bøger og eksklusive tilbud!
Et trin mere !!!
Bekræft din e-mail-adresse i den e-mail, vi lige har sendt dig.