W tej sesji wykonamy lampę awaryjną 9WATT przy użyciu Raspberry Pi i Pythona. Ta lampa automatycznie wykryje ciemność i brak zasilania sieciowego i zapali się, gdy nastąpi awaria zasilania i nie ma odpowiedniego światła.
Chociaż istnieje wiele różnych lamp awaryjnych, ale są one przeznaczone wyłącznie do jednego celu, tak jak jeden prosty obwód oświetlenia awaryjnego, który stworzyliśmy wcześniej, wyzwala się tylko w przypadku awarii zasilania. Dzięki Raspberry Pi możemy dodać do niego różne inne funkcje, tak jak tutaj dodaliśmy LDR do wykrywania ciemności na różnych poziomach. Tutaj dodaliśmy dwa poziomy, gdy jest całkowicie ciemno, lampa będzie świecić z pełną intensywnością, a gdy będzie półmrok, będzie świecić z 30% wydajnością. Więc tutaj zaprojektujemy tę lampę tak, aby była włączana, gdy zasilanie sieciowe jest wyłączone i kiedy natężenie światła w pomieszczeniu jest bardzo niskie.
Wymagane składniki:
Tutaj używamy Raspberry Pi 2 Model B z Raspbian Jessie OS. Wszystkie podstawowe wymagania sprzętowe i programowe zostały wcześniej omówione, możesz je sprawdzić we wprowadzeniu do Raspberry Pi i Miga dioda LED Raspberry PI, aby rozpocząć, poza tym, czego potrzebujemy:
- Kondensator 1000 µF
- 1WATT LED (9 sztuk)
- Akumulator kwasowo-ołowiowy + 12V
- Bank mocy 6000-10000 mAH
- Zasilacz + 5V DC
- Układ Lm324 OP-AMP
- Transoptor 4N25
- MOSFET IRFZ44N
- LDR (rezystor zależny od światła)
- LED (1 sztuka)
- Rezystory: 1KΩ (3 sztuki), 2,2KΩ, 4,7KΩ, 100Ω (2 sztuki), 10Ω (9 sztuk), 10KΩ, 100KΩ
- Potencjometr 10 kΩ (3 sztuki) (wszystkie rezystory mają 0,25 wata)
Opis:
Zanim przejdziemy do połączeń obwodów i ich działania, dowiemy się o elementach i ich przeznaczeniu w obwodzie:
9-watowa lampa LED:
LAMP składa się z dziewięciu diod 1WATT. Na rynku dostępne są różne rodzaje diod LED, ale diody 1WATT są łatwo dostępne wszędzie. Te diody LED pracują na 3,6V, więc trzy z nich połączymy szeregowo wraz z diodami zabezpieczającymi do pracy przy + 12V. Będzie można połączyć te trzy paski tworzące lampę 9WATT LED. Będziemy obsługiwać tę lampę odpowiednio z Raspberry Pi.
LDR (Light Dependent Resistor) do wykrywania ciemności:
Zamierzamy użyć LDR (Light Dependent Resistor) do wykrywania natężenia światła w pomieszczeniu. LDR zmienia swój opór liniowo wraz z natężeniem światła. Ten LDR zostanie podłączony do dzielnika napięcia. Dzięki temu będziemy mieć zmienne napięcie reprezentujące zmienne natężenie światła. Jeśli natężenie światła jest NISKIE, napięcie wyjściowe będzie WYSOKIE, a jeśli natężenie światła jest WYSOKIE, napięcie wyjściowe będzie NISKIE.
Układ scalony LM324 wzmacniacza operacyjnego do sprawdzania wyjścia LDR:
Raspberry Pi nie posiada wewnętrznego mechanizmu ADC (Analog to Digital Converter). Więc tej konfiguracji nie można podłączyć bezpośrednio do Raspberry Pi. Użyjemy komparatorów opartych na OP-AMP, aby sprawdzić wyjścia napięciowe z LDR.
Tutaj użyliśmy wzmacniacza operacyjnego LM324, który ma w sobie cztery wzmacniacze operacyjne i użyliśmy dwóch wzmacniaczy operacyjnych z tych czterech. Więc nasz PI będzie w stanie wykryć natężenie światła na dwóch poziomach. W zależności od tych poziomów dostosujemy jasność lampy LED. Gdy jest całkowicie ciemno, lampa będzie świecić z pełną intensywnością, a gdy jest pół ciemno, będzie świecić z 30% wydajnością. Sprawdź kod i wideo Pythona na końcu, aby dobrze je zrozumieć. Tutaj użyliśmy koncepcji PWM w Raspberry Pi do kontrolowania intensywności diod LED.
Raspberry Pi ma 26GPIO, z których niektóre są używane do specjalnych funkcji. Po odłożeniu specjalnego GPIO mamy 17 GPIO. Każdy z 17 pinów GPIO nie może przyjmować napięcia wyższego niż + 3,3 V, więc wyjścia wzmacniacza operacyjnego nie mogą być wyższe niż 3,3 V. Dlatego wybraliśmy wzmacniacz operacyjny LM324, ponieważ ten układ może pracować przy + 3,3 V, zapewniając wyjścia logiczne nie więcej niż + 3,3 V. Dowiedz się więcej o pinach GPIO Raspberry Pi tutaj. Sprawdź również naszą serię samouczków Raspberry Pi oraz kilka dobrych projektów IoT.
Adapter AC do DC, aby sprawdzić linię AC:
Będziemy używać logiki napięcia wyjściowego adaptera AC do DC, aby wykryć stan linii AC. Chociaż istnieją różne sposoby wykrywania stanu linii AC, jest to najbezpieczniejszy i najłatwiejszy sposób. Pobieramy logikę + 5 V z adaptera i przekażemy ją do Raspberry Pi przez obwód dzielnika napięcia, aby ukryć logikę + 5 V w układzie logicznym + 3,3 V HIGH. Zobacz schemat obwodu dla lepszego zrozumienia.
Power Bank i akumulator kwasowo-ołowiowy 12 V do zasilania:
Należy pamiętać, że Raspberry Pi musi działać w przypadku braku zasilania, dlatego PI będziemy napędzać za pomocą Power Bank (zestaw baterii 10000 mAH), a lampka LED 9WATT będzie zasilana szczelną baterią + 12V, 7AH LEAD ACID. Lampy LED nie można zasilać z powerbanku, ponieważ pobierają zbyt dużo energii, dlatego muszą być zasilane z osobnego źródła zasilania.
Możesz zasilać Raspberry Pi z akumulatora + 12V, jeśli masz wydajną przetwornicę + 12V na + 5V. Dzięki temu konwerterowi możesz zrezygnować z powerbanku i zasilić cały obwód jednym źródłem baterii.
Objaśnienie obwodu:
Schemat obwodu światła awaryjnego Raspberry Pi przedstawiono poniżej:
Tutaj użyliśmy trzech z czterech komparatorów wewnątrz układu scalonego LM324. Dwa z nich posłużą do wykrywania poziomów natężenia światła, a trzeci do wykrywania niskiego poziomu napięcia akumulatora + 12V.
1. OP-AMP1 lub U1A: Zacisk ujemny tego komparatora jest wyposażony w napięcie 1,2 V (wyreguluj RV2, aby uzyskać napięcie), a zacisk dodatni jest podłączony do sieci dzielnika napięcia LDR. Gdy cień pada na LDR, jego wewnętrzny opór rośnie. Wraz ze wzrostem rezystancji wewnętrznej LDR, rośnie spadek napięcia na dodatnim zacisku OP-AMP1. Gdy to napięcie wzrośnie powyżej 1,2 V, OP-AMP1 zapewnia wyjście + 3,3 V. To WYSOKIE wyjście logiczne OP-AMP zostanie wykryte przez Raspberry Pi.
2. OP-AMP2 lub U1B: Zacisk ujemny tego komparatora jest wyposażony w napięcie 2,2 V (wyreguluj RV3, aby uzyskać napięcie), a zacisk dodatni jest podłączony do sieci dzielnika napięcia LDR. Wraz ze wzrostem cienia padającego na LDR jego opór wewnętrzny rośnie jeszcze bardziej. Wraz z dalszym wzrostem rezystancji wewnętrznej LDR, spada napięcie na dodatnim zacisku OP-AMP2. Gdy to napięcie przekroczy 2,2 V, OP-AMP2 zapewnia wyjście + 3,3 V. To WYSOKIE wyjście logiczne OP-AMP zostanie wykryte przez Raspberry Pi.
3. OP-AMP3 lub U1C: Ten OP-AMP będzie używany do wykrywania niskiego poziomu napięcia akumulatora +12v. Zacisk ujemny tego komparatora jest wyposażony w 2,1 V (wyreguluj RV1, aby uzyskać napięcie), a zacisk dodatni jest podłączony do obwodu dzielnika napięcia. Ten dzielnik dzieli napięcie akumulatora przez 1 / 5,7 razy, więc dla napięcia akumulatora 12,5 V będziemy mieli 2,19 V na dodatnim zacisku OP-AMP3. Gdy napięcie akumulatora spadnie poniżej 12,0 V, napięcie na dodatnim zacisku będzie <2,1 V. Tak więc przy 2,1 V na zacisku ujemnym wyjście OP-AMP spada. Więc gdy napięcie akumulatora spadnie poniżej 12 V (czyli poniżej 2,1 V na zacisku dodatnim), OP-AMP obniża wyjście, logika ta zostanie wykryta przez Raspberry Pi.
Objaśnienie robocze:
Całą funkcję tej lampy awaryjnej Raspberry Pi można określić jako:
Najpierw Raspberry Pi wykrywa, czy jest napięcie AC, czy nie, poprzez wykrywanie logiki na GPIO23, gdzie pobierane jest + 3,3 V z zasilacza sieciowego. Po wyłączeniu zasilania + 5V z adaptera wyłącza się, a Raspberry Pi przechodzi do następnego kroku tylko w przypadku wykrycia tej logiki LOW, jeśli nie, PI nie przejdzie do następnego kroku. Ta logika LOW występuje tylko wtedy, gdy zasilanie AC wyłącza się.
Następnie PI sprawdza, czy poziom naładowania akumulatora KWASU OŁOWIOWEGO jest NISKI. Ta logika jest dostarczana przez OP-AMP3 w GPIO16. Jeśli logika jest NISKA, PI nie przechodzi do następnego kroku. Gdy napięcie akumulatora jest wyższe niż + 12V, PI przechodzi do następnego kroku.
Następnie Raspberry Pi sprawdza, czy ciemność w pomieszczeniu jest WYSOKA, logikę tę zapewnia OP-AMP2 na GPIO20. Jeśli tak, PI zapewnia wyjście PWM (modulacja szerokości impulsu) z cyklem pracy 99%. Ten sygnał PWM steruje transoptorem, który steruje tranzystorem MOSFET. MOSFET zasila konfigurację diod LED 9W, jak pokazano na rysunku. Jeśli nie ma całkowitej ciemności, PI przechodzi do następnego kroku. Dowiedz się więcej o PWM w Raspberry Pi tutaj.
Następnie Raspberry Pi sprawdza, czy ciemność w pomieszczeniu jest NISKA, logikę tę zapewnia OP-AMP1 na GPIO21. Jeśli tak, PI zapewnia wyjście PWM (modulacja szerokości impulsu) z cyklem pracy 30%. Ten sygnał PWM steruje transoptorem, który steruje tranzystorem MOSFET. MOSFET zasila konfigurację diod LED 9W, jak pokazano na rysunku. Jeśli w pomieszczeniu jest odpowiednie światło, to Raspberry Pi nie zapewnia wyjścia PWM, więc LAMPA będzie całkowicie WYŁĄCZONA.
Tak więc, aby włączyć tę lampę awaryjną, oba warunki muszą być Prawdą, co oznacza, że linia AC musi być wyłączona, a w pomieszczeniu musi być ciemność. Możesz uzyskać jasne zrozumienie, sprawdzając pełny kod Pythona i wideo poniżej.
Możesz dodatkowo dodać więcej interesujących funkcji i poziomów ciemności do tej lampy awaryjnej. Sprawdź również nasze więcej obwodów energoelektronicznych:
- Zmienny zasilacz 0-24v 3A za pomocą LM338
- Obwód ładowarki akumulatora 12 v wykorzystujący LM317
- Obwód falownika 12 V DC do 220 V AC
- Obwód ładowarki telefonu komórkowego