Innehållsförteckning:

Raspberry Pi Smart NightLight: 5 steg
Raspberry Pi Smart NightLight: 5 steg

Video: Raspberry Pi Smart NightLight: 5 steg

Video: Raspberry Pi Smart NightLight: 5 steg
Video: 30 лучших советов и рекомендаций по Windows 10 на 2020 год 2024, Juli
Anonim
Raspberry Pi Smart NightLight
Raspberry Pi Smart NightLight

Jag gick nyligen upp tidigt, många gånger är dagarna ute fortfarande mörka, men jag vill inte tända lamporna för att påverka min frus vila, så jag har funderat på att köpa ett nattljus. Jag sökte efter många nattljusbutiker, men jag tror inte att det är jag vill ha det, men jag såg ett nattljus som heter DockerPi i en butik i Amazon, som styrs av Raspberry Pi. Det är mycket bra och kan ge DIY -funktioner. Jag läste wikibeskrivningen av denna produkt, det är Kan styras direkt av kommandoraden, som programmerare som använder Linux -system, jag tycker att det här är väldigt coolt, så jag köpte tillbaka det och startade det här projektet.

Steg 1: Steg 1: Förbered alla saker

Steg 1: Förbered alla saker
Steg 1: Förbered alla saker

Efter unboxing och sedan tar jag bort skyddshöljet på akrylplattan och monterar sedan denna DockerPi -modul på min Raspberry Pi med screews och kopparpinne. det fixade stabilt.

Steg 2: Steg2: Flasha den senaste Rasbpian OS -bilden till SD -kort

Steg 2: Flasha den senaste Rasbpian OS -bilden till SD -kort
Steg 2: Flasha den senaste Rasbpian OS -bilden till SD -kort
Steg 2: Flasha den senaste Rasbpian OS -bilden till SD -kort
Steg 2: Flasha den senaste Rasbpian OS -bilden till SD -kort
Steg 2: Flasha den senaste Rasbpian OS -bilden till SD -kort
Steg 2: Flasha den senaste Rasbpian OS -bilden till SD -kort

Jag laddar ner den senaste Raspbian -bilden från:

och sedan blinka bilden via en programvara som heter: etsare

du kan ladda ner här:

packa upp bildfilen från gzip -paketet så får du en *.img -fil, välj bilden och välj enhet som din dator kände igen TF -kortet, tryck bara på "Flash" och vänta i flera minuter, det kommer att göras.

och ta sedan bort TF -kortet och sätt in det i din Raspberry Pi och slå på det.

Steg 3: Steg 3: Slå på I2C-funktionen från Raspi-config

Steg 3: Slå på I2C-funktionen från Raspi-config
Steg 3: Slå på I2C-funktionen från Raspi-config
Steg 3: Slå på I2C-funktionen från Raspi-config
Steg 3: Slå på I2C-funktionen från Raspi-config
Steg 3: Slå på I2C-funktionen från Raspi-config
Steg 3: Slå på I2C-funktionen från Raspi-config
Steg 3: Slå på I2C-funktionen från Raspi-config
Steg 3: Slå på I2C-funktionen från Raspi-config

När Raspberry pi startade öppnade jag en terminal och skrev det här kommandot: sudo raspi-config

och navigerade till "Gränssnittsalternativ" och välj "I2C" och aktiverade det. varför ska jag använda det här kommandot?

Eftersom DockerPis nattljusmodul använder I2C -protokoll kommunicerar med Raspberry Pi.

Steg 4: Steg 4: Anslut akrylpanelen till facket

Steg 4: Anslut akrylpanelen till facket
Steg 4: Anslut akrylpanelen till facket
Steg 4: Anslut akrylpanelen till facket
Steg 4: Anslut akrylpanelen till facket
Steg 4: Anslut akrylpanelen till facket
Steg 4: Anslut akrylpanelen till facket

Den passade väldigt bra till facket, och du kan se bilden att akrylpanelen kan sitta still i spåret.

nästa steg är att köra testkod för att kontrollera om den fungerar korrekt.

Jag har laddat ner exempelkoden från github genom att skriva detta kommando i terminalen på raspberry Pi.

cd ~

git -klon

cd dockerpi/Nightlight/

sudo./Nightligh.sh

och sedan tänds och lyser mitt nattljus.

Jag läste instruktionen på dess wiki och hittade alla LED -ljusets registerkarta.

nästa steg blir den roligaste delen, jag vill lägga till en infraröd pyroelektrisk sensor från människokroppen, låt den upptäcka att jag är upplyst för att tända detta lilla nattljus ~

Steg 5: Steg 5: Konfigurera den infraröda pyroelektriska sensorn

Steg 5: Konfigurera den infraröda pyroelektriska sensorn
Steg 5: Konfigurera den infraröda pyroelektriska sensorn
Steg 5: Konfigurera den infraröda pyroelektriska sensorn
Steg 5: Konfigurera den infraröda pyroelektriska sensorn
Steg 5: Konfigurera den infraröda pyroelektriska sensorn
Steg 5: Konfigurera den infraröda pyroelektriska sensorn

Här använder vi en PIR -rörelsesensor. PIR står för passiv infraröd. Denna rörelsesensor består av en fresnelins, en infraröd detektor och stödjande detekteringskretsar. Linsen på sensorn fokuserar all infraröd strålning som finns runt den mot den infraröda detektorn. Våra kroppar genererar infraröd värme, och som ett resultat tas denna värme upp av rörelsessensorn. Sensorn matar ut en 5V -signal under en period av en minut så snart den detekterar närvaron av en person. Det erbjuder en preliminär detekteringsavstånd på cirka 6–7 meter och är mycket känslig. När PIR -rörelsesensorn detekterar en person matar den ut en 5V -signal till Raspberry Pi genom sin GPIO och vi definierar vad Raspberry Pi ska göra eftersom den upptäcker en inkräktare genom Python -kodningen. Här skriver vi bara ut "inkräktare upptäckt".

När du har konfigurerat din Raspberry Pi kan vi nu börja krångla med sina GPIO -stift. Här kommer vi att försöka blinka en lysdiod med ett Python -skript. Kopiera och klistra in följande kod i din Raspberry Pi. Du kan göra detta genom att öppna textredigeraren "leafpad" på din Raspberry Pi och kopiera den här koden till den och spara den som en Python -fil: nightlight.py:

#import libararies.

importera RPi. GPIO som GPIO

importtid

importera smbus

DEVICE_BUS = 1

DEVICE_ADDR = 0x15

GPIO.setwarnings (falskt)

GPIO.setmode (GPIO. BOARD)

GPIO.setup (11, GPIO. IN) #Läs ut från PIR -rörelsesensor

buss = smbus. SMBus (DEVICE_BUS) # instans av smbus för i2c -enhet, betyder nattljuset.

medan det är sant:

Prova:

i = GPIO.input (11)

om i == 0: #När utmatningen från rörelsesensorn är LÅG

print ("Inga inkräktare", i)

för i inom intervallet (1, 25):

bus.write_byte_data (DEVICE_ADDR, i, 0x00) #Stäng av LED

time.sleep (0,2)

time.sleep (0,1)

elif i == 1: #När utmatningen från rörelsesensorn är HÖG

print ("inkräktare upptäckt", i)

för i inom intervallet (1, 25):

bus.write_byte_data (DEVICE_ADDR, i, 0xFF) #Stäng av LED

time.sleep (0,2)

time.sleep (0,1)

utom KeyboardInterrupt som e:

print ("Avsluta slingan")

och spara den sedan och kör den under uppstart av hallon pi.

sudo vim.tiny /etc/rc.local

och lägg till den här raden före avfart 0:

sudo python /home/pi/nightlight.py &

och sedan spara det och starta om din Pi, det kommer att fungera korrekt …

Tack för att du tittade ~

Rekommenderad: