Spisu treści:

Inteligentne oświetlenie nocne Raspberry Pi: 5 kroków
Inteligentne oświetlenie nocne Raspberry Pi: 5 kroków

Wideo: Inteligentne oświetlenie nocne Raspberry Pi: 5 kroków

Wideo: Inteligentne oświetlenie nocne Raspberry Pi: 5 kroków
Wideo: Pierwsze kroki z Raspberry Pi: zdalny sterownik oświetlenia (via Ethernet) 2024, Listopad
Anonim
Inteligentne oświetlenie nocne Raspberry Pi
Inteligentne oświetlenie nocne Raspberry Pi

Niedawno wstałem wcześnie, wiele razy na dworze jest jeszcze ciemno, ale nie chcę włączać światła, żeby wpłynąć na odpoczynek żony, więc zastanawiałem się nad kupnem lampki nocnej. Szukałem wielu sklepów z lampką nocną, ale nie sądzę, że to chcę, ale widziałem lampkę nocną o nazwie DockerPi w sklepie w Amazon, który jest sterowany przez Raspberry Pi. Jest bardzo dobry i może zapewnić funkcje DIY. Przeczytałem opis wiki tego produktu, można nim sterować bezpośrednio z wiersza poleceń, jako programista korzystający z systemu Linux, myślę, że jest to bardzo fajne, więc odkupiłem go i rozpocząłem ten projekt.

Krok 1: Krok 1: Przygotuj wszystkie rzeczy

Krok 1: Przygotuj wszystkie rzeczy
Krok 1: Przygotuj wszystkie rzeczy

Po rozpakowaniu, a następnie zdejmuję osłonę ochronną na akrylowej płytce, a następnie montuję ten moduł DockerPi do mojego Raspberry Pi za pomocą śrub i miedzianego sztyftu. naprawiono stabilnie.

Krok 2: Krok 2: Flashuj najnowszy obraz systemu operacyjnego Rasbpian na kartę SD

Krok 2: Flashuj najnowszy obraz systemu Rasbpian na kartę SD
Krok 2: Flashuj najnowszy obraz systemu Rasbpian na kartę SD
Krok 2: Flashuj najnowszy obraz systemu Rasbpian na kartę SD
Krok 2: Flashuj najnowszy obraz systemu Rasbpian na kartę SD
Krok 2: Flashuj najnowszy obraz systemu operacyjnego Rasbpian na kartę SD
Krok 2: Flashuj najnowszy obraz systemu operacyjnego Rasbpian na kartę SD

Pobieram najnowszy obraz Raspbian z:

a następnie sflashuj obraz za pomocą oprogramowania o nazwie: etcher

możesz pobrać tutaj:

rozpakuj plik obrazu z paczki gzip, a otrzymasz plik *.img, wybierz obraz i wybierz dysk, na którym twój komputer rozpoznał kartę TF, po prostu naciśnij "Flash" i poczekaj kilka minut, wszystko się skończy.

a następnie wyjmij kartę TF i włóż ją do Raspberry Pi i włącz ją.

Krok 3: Krok 3: Włącz funkcję I2C z Raspi-config

Krok 3: Włącz funkcję I2C z Raspi-config
Krok 3: Włącz funkcję I2C z Raspi-config
Krok 3: Włącz funkcję I2C z Raspi-config
Krok 3: Włącz funkcję I2C z Raspi-config
Krok 3: Włącz funkcję I2C z Raspi-config
Krok 3: Włącz funkcję I2C z Raspi-config
Krok 3: Włącz funkcję I2C z Raspi-config
Krok 3: Włącz funkcję I2C z Raspi-config

Po uruchomieniu Raspberry pi otworzyłem terminal i wpisałem to polecenie: sudo raspi-config

i przejść do „Opcji interfejsu” i wybrać „I2C” i włączyć go. dlaczego powinienem używać tego polecenia?

Ponieważ moduł Nightlight DockerPi wykorzystuje protokół I2C komunikuje się z Raspberry Pi.

Krok 4: Krok 4: Podłącz panel akrylowy do gniazda

Krok 4: podłącz panel akrylowy do gniazda
Krok 4: podłącz panel akrylowy do gniazda
Krok 4: podłącz panel akrylowy do gniazda
Krok 4: podłącz panel akrylowy do gniazda
Krok 4: podłącz panel akrylowy do gniazda
Krok 4: podłącz panel akrylowy do gniazda

Bardzo dobrze pasuje do gniazda, a na zdjęciu widać, że panel akrylowy może pozostać w gnieździe.

kolejnym krokiem jest uruchomienie kodu testowego, aby sprawdzić, czy działa poprawnie.

Przykładowy kod pobrałem z github wpisując to polecenie w terminalu w raspberry Pi.

cd ~

klon git

cd dockerpi/Podświetlenie nocne/

sudo./Nightligh.sh

a potem moja lampka nocna włącza się i świeci.

Przeczytałem instrukcję na jej wiki i znalazłem mapę rejestru wszystkich świateł LED.

Następnym krokiem będzie najzabawniejsza część, chcę dodać czujnik piroelektryczny na podczerwień ludzkiego ciała, niech wykryje, że jestem oświetlony, aby zapalić tę małą lampkę nocną ~

Krok 5: Krok 5: Konfiguracja czujnika piroelektrycznego na podczerwień

Krok 5: Skonfiguruj czujnik piroelektryczny na podczerwień
Krok 5: Skonfiguruj czujnik piroelektryczny na podczerwień
Krok 5: Skonfiguruj czujnik piroelektryczny na podczerwień
Krok 5: Skonfiguruj czujnik piroelektryczny na podczerwień
Krok 5: Skonfiguruj czujnik piroelektryczny na podczerwień
Krok 5: Skonfiguruj czujnik piroelektryczny na podczerwień

Tutaj używamy czujnika ruchu PIR. PIR oznacza pasywną podczerwień. Ten czujnik ruchu składa się z soczewki Fresnela, detektora podczerwieni i pomocniczego obwodu wykrywania. Soczewka czujnika skupia wszelkie promieniowanie podczerwone znajdujące się wokół niego w kierunku detektora podczerwieni. Nasze ciała wytwarzają ciepło podczerwone, które w rezultacie jest odbierane przez czujnik ruchu. Czujnik wysyła sygnał 5V przez okres jednej minuty, gdy tylko wykryje obecność osoby. Oferuje wstępny zasięg wykrywania około 6-7 metrów i jest bardzo czuły. Gdy czujnik ruchu PIR wykryje osobę, wysyła sygnał 5 V do Raspberry Pi przez jego GPIO i określamy, co powinien zrobić Raspberry Pi, gdy wykrywa intruza poprzez kodowanie Pythona. Tutaj właśnie wyświetlamy "Wykryto intruza".

Po skonfigurowaniu Raspberry Pi możemy teraz zacząć bawić się jego pinami GPIO. Tutaj spróbujemy mrugnąć diodą LED za pomocą skryptu Pythona. Skopiuj i wklej następujący kod do swojego Raspberry Pi. Możesz to zrobić, otwierając edytor tekstu "leafpad" na swoim Raspberry Pi i kopiując do niego ten kod, a następnie zapisz go jako plik Pythona: nightlight.py:

#importuj biblioteki.

importuj RPi. GPIO jako GPIO

czas importu

importuj smbus

URZĄDZENIE_BUS = 1

ADRES_URZĄDZENIA = 0x15

GPIO.setwarnings (Fałsz)

GPIO.setmode(GPIO. BOARD)

GPIO.setup(11, GPIO. IN) #Odczytaj wyjście z czujnika ruchu PIR

bus = smbus. SMBus(DEVICE_BUS) # instancja smbus dla urządzenia i2c, oznacza lampkę nocną.

podczas gdy prawda:

próbować:

i=GPIO.wejście(11)

if i==0: #Gdy sygnał wyjściowy z czujnika ruchu jest NISKI

drukuj ("Brak intruzów", i)

dla i w zakresie (1, 25):

bus.write_byte_data(DEVICE_ADDR, i, 0x00) #Wyłącz diodę LED

czas.sen(0.2)

czas.sen(0.1)

elif i==1: #Gdy wyjście z czujnika ruchu jest WYSOKIE

print("Wykryto intruza", i)

dla i w zakresie (1, 25):

bus.write_byte_data(DEVICE_ADDR, i, 0xFF) #Wyłącz diodę LED

czas.sen(0.2)

czas.sen(0.1)

z wyjątkiem KeyboardInterrupt jako e:

print("Zakończ pętlę")

a następnie zapisz go i uruchom podczas uruchamiania Raspberry Pi.

sudo vim.tiny /etc/rc.local

i dodaj tę linię przed wyjściem 0:

sudo python /home/pi/nightlight.py &

a następnie zapisz go i zrestartuj swoje Pi, będzie działać poprawnie …

Dzięki za oglądanie ~

Zalecana: