Spisu treści:
- Krok 1: Materiały eksploatacyjne
- Krok 2: Obwód miękkiego zatrzasku - sprzęt
- Krok 3: ESP8266 - sprzęt
- Krok 4: IFTTT dla zdalnych powiadomień - część 1
- Krok 5: IFTTT dla zdalnych powiadomień - część 2
- Krok 6: Arduino IDE i szkic
- Krok 7: Obudowa (wydruk 3D)
- Krok 8: Przyszłe ulepszenia
Wideo: LEIDS - Czujnik drzwi o niskiej energii IOT: 8 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:30
Czym są LEIDY?
LEIDS to czujnik IOT oparty na ESP8266. Ten czujnik wykorzystuje tę płytkę, miękki obwód zatrzaskowy, kontaktron i kilka magnesów, aby stworzyć czujnik drzwi, który wyśle ostrzeżenie, gdy drzwi się otwierają i zamykają. Ten czujnik można podłączyć do serwera MQTT, IFTTT lub wielu innych platform obsługujących ESP8266. Ten instruktaż użyje IFTTT do łatwego stworzenia czujnika, który wyśle ostrzeżenie do Twojego urządzenia mobilnego, bez względu na to, gdzie jesteś. Czujnik można również skonfigurować tak, aby umożliwiał wysyłanie wielu alertów z oddzielnych drzwi, skrzynek pocztowych, piekarników i wszystkiego, co ma fizyczną pozycję otwarcia/zamknięcia lub włączenia/wyłączenia. Zaletą LEIDS jest to, że zużywa minimalną moc i zużywa ją tylko wtedy, gdy drzwi są otwarte, a gdy drzwi są zamknięte, wysyła wiadomość ostrzegającą, że drzwi zostały zamknięte i wyłączają się. Jest to lepsze niż głębokie spanie modułu, ponieważ nie zużywa energii, jeśli drzwi nie są otwarte.
Krok 1: Materiały eksploatacyjne
Poniższe listy pokazują narzędzia i części, których użyłem do tego projektu. Czujnik można przeprojektować tak, aby używał różnych części i różnił się wyglądem/funkcjonalnością i po prostu używał podobnych koncepcji.
Narzędzia:
- Lutownica
- ESP01-UART lub Arduino Uno (programator dla ESP8266)
- drukarka 3D (opcja)
- Kable rozruchowe (opcjonalnie)
- Deska do krojenia chleba (opcjonalnie)
Części:
- ESP8266 ESP-01S x 1
- Kontaktron x 1 (najlepiej NC, mogłem znaleźć tylko normalnie otwarty, więc muszę użyć dwóch magnesów, aby działał jak normalnie zamknięty)
- Regulator AMS1117 3.3v
- Tranzystor 2n3904 NPN x 1
- P-Channel Mosfet x 1 (chcemy coś, co ma niski VGS, najlepiej NDP6020P)
- Bateria Lipo 3.7 v 100 mAh x 1
- Różne rezystory (100k ohm, 10k ohm, 220 ohm, 3k3 Ohm)
- Magnesy 6x3mm x 2
- Dwustronna taśma montażowa
- Drut
- Lutować
- Płyta perforowana
Części drukowane 3D:
Etui na czujnik
Krok 2: Obwód miękkiego zatrzasku - sprzęt
Obwód miękkiego zatrzasku, którego używam, jest modyfikacją schematu, który znalazłem w Internecie. Nie jestem ekspertem i wierzę, że istnieją lepsze sposoby na zbudowanie tego toru, ale w moim celu ten tor spełnia swoje zadanie!
Działa to tak, że gdy kontaktron jest zamknięty przez pole magnetyczne, przepuszcza prąd do tranzystora NPN. Tranzystor NPN następnie uziemia mosfet PNP, co umożliwia przepływ prądu do ESP8266. ESP8266 włącza się, używa jednego ze swoich pinów do uziemienia mosfetu PNP, który nadal zasila ESP8266. Następnie, gdy ESP8266 wykona swoje zadania, ustawia ten pin wyjściowy na LOW, co przerywa tranzystor NPN i zamyka bramkę na mosfecie PNP.
Korzystając z takiego obwodu, ESP8266 może być zasilany przełącznikiem, a następnie może się całkowicie wyłączyć za pomocą sygnału. Dzięki temu obwód nie pobiera prądu, gdy czujnik jest zamknięty/wyłączony.
Krok 3: ESP8266 - sprzęt
ESP8266, którego używam, będzie wysyłał komunikat ostrzegający, gdy drzwi (lub inna rzecz) są otwarte, a następnie będzie czekał, aż drzwi się zamkną, aby wysłać wiadomość o zamknięciu i zamknąć się. ESP8266 będzie zasilany przez obwód miękkiego zatrzasku i użyje jednego pinu do odczytu kontaktronu, a drugiego pinu do utrzymania zasilania, a następnie do wyłączenia. Zdecydowałem się na użycie ESP-01 ze względu na ich małą obudowę. ESP wyśle żądanie internetowe, aby powiadomić nas, gdy czujnik zostanie zmieniony na „otwarty” i „zamknięty”. Najłatwiejszą metodą, jaką znalazłem, było użycie IFTTT i Arkuszy Google. Wyjaśniono to w poniższych krokach.
Krok 4: IFTTT dla zdalnych powiadomień - część 1
W tej instrukcji będziemy używać IFTTT i wdrażać webhooki i arkusze google, aby otrzymywać zdalne powiadomienia na naszym urządzeniu mobilnym. Aby skorzystać z tych usług, będziesz potrzebować:
- Konto Google
- Konto IFTTT (można/należy zalogować się na konto Google)
- Aplikacja IFTTT na Twoje urządzenie mobilne
Po utworzeniu/zalogowaniu się na swoje konta utworzymy dwa aplety. Zdjęcia na górze tej sekcji pokazują, jak poruszać się po stronie. Poniższe kroki dotyczą pierwszego apletu, żądania wywołanego zdarzeniem. Ten aplet otrzyma wiadomość z czujnika i zapisze zdarzenie w dokumencie arkuszy Google. Następnie możesz wyświetlić historię swojego czujnika i zobaczyć, kiedy został otwarty i zamknięty.
- Przejdź do linku „Moje aplety” znajdującego się na górze
- Kliknij przycisk „Nowy aplet”
- Kliknij niebieski przycisk „+to”
- Wyszukaj „webhook” i kliknij na niego
- Na następnej stronie wybierz kartę „Odbierz zgłoszenie internetowe”
- Następnie ustaw nazwę wydarzenia na dowolną, którą chcesz, wybrałem nazwę „sensor_activated”
- Na następnej stronie kliknij niebieski przycisk „+to”
- Wyszukaj usługę „arkusz google” i wybierz ją
- Na następnej stronie wybierz funkcję „Dodaj wiersz do arkusza kalkulacyjnego”
-
Wypełnij akcję w następujący sposób:
- Nazwa arkusza kalkulacyjnego, nazwałem swoją „Historia czujnika”
-
Sformatowany wiersz musi wyglądać następująco
{{OccurredA}} ||| {{Wartość1}} ||| {{Wartość2}}
- Pozostaw ostatnie pole bez zmian, chyba że chcesz zmienić miejsce, w którym aplet będzie zapisywał stan czujnika
- Następnie kliknij „Utwórz działanie”
- Na koniec kliknij „Zakończ” na ostatnim ekranie
Teraz przetestujmy, że to działa
- Przejdź do tego linku
- Następnie kliknij przycisk „Dokumentacja” (później ponownie użyjemy tej strony „Dokumentacja”)
- Teraz znajdziesz się w swojej osobistej sekcji dla apletu IFTTT Webhooks
- Wypełnij pole „{event}” nazwą zdarzenia, w tym przypadku nazwa zdarzenia to „sensor_activated”
- Teraz wypełnij pole "value1", to jest pole, które będzie zawierało lokalizację twojego czujnika, wypełnię je "Drzwi przednie"
- Teraz wypełnij pole "value2", to jest pole, które będzie miało status czujnika, mam zamiar wypełnić "otwarty" tylko do testów
- Następnie kliknij niebieski przycisk „Przetestuj”
- Jeśli wszystko poszło dobrze, powinieneś otrzymać zielony komunikat „Wydarzenie zostało wywołane”. wiadomość na górze
- Teraz, jeśli chcesz zobaczyć, jak przechowuje twoją wiadomość, możesz otworzyć arkusze google i znaleźć dodany arkusz kalkulacyjny. Załączam zdjęcie, aby pokazać, jak będzie wyglądać arkusz kalkulacyjny
Przejdźmy teraz do następnego kroku, dodając aplet powiadamiający nas o zmianie statusu.
Krok 5: IFTTT dla zdalnych powiadomień - część 2
Teraz dodamy aplet, aby powiadomić nas, kiedy do arkusza kalkulacyjnego stanu zostanie dodany wiersz; innymi słowy, gdy czujnik odpala zdarzenie. Tak jak poprzednio, będziemy tworzyć nowy aplet. Poniższe kroki poprowadzą Cię w tworzeniu drugiego apletu. Ponieważ zrobiliśmy coś podobnego w poprzednim kroku, dodam tylko slajdy, które różnią się od tego kroku.
- Przejdź do linku „Moje aplety” znajdującego się na górze
- Kliknij przycisk „Nowy aplet”
- Kliknij niebieski przycisk „+to”
- Wyszukaj „arkusz google” i kliknij go
- Na następnej stronie wybierz kartę „Nowy wiersz dodany do arkusza kalkulacyjnego”
-
Następnie wypełnij pola, aby wskazać arkusz kalkulacyjny, do którego pisze drugi aplet
- W tym przykładzie ścieżka to „IFTTT/MakerWebooks/sensor_activated”
- Nazwa pliku to „Historia czujnika”
- Na następnej stronie kliknij niebieski przycisk „+to”
- Wyszukaj usługę „powiadomienia” i wybierz ją
-
Teraz musimy wypełnić pola usługi powiadomień
- Tytuł zostaje zmieniony na
{{KolumnaB}} była {{KolumnaC}}
- Wiadomość jest ustawiona na
{{KolumnaB}} była {{KolumnaC}} w {{KolumnaA}}
- Link pozostaje sam
- Tytuł zostaje zmieniony na
- Następnie kliknij „Utwórz działanie”
- Na koniec kliknij „Zakończ” na ostatnim ekranie
Aby przetestować drugą część systemu powiadomień IFTTT, upewnij się, że pobrałeś aplikację IFTTT na swoje urządzenie mobilne i zaloguj się za pomocą swoich danych uwierzytelniających. W moim przypadku loguję się na swoje konto Google. Teraz możemy to przetestować, wracając do strony „Dokumentacja” i uruchamiając test z nazwą zdarzenia ustawioną jako „sensor_activated”, polem „value1” ustawionym na lokalizację i polu „value2” ustawionym na status.
Powinno to wysłać powiadomienie. Jeśli go nie otrzymasz, upewnij się, że jesteś zalogowany na to samo konto i zezwoliłeś aplikacji na wysyłanie powiadomień.
Krok 6: Arduino IDE i szkic
Oprogramowanie użyte do płytki jest kompilowane przy użyciu Arduino IDE.
Logika jest następująca:
- Kontaktron jest zamykany przez otwarcie drzwi
- ESP jest następnie włączany i łączy się z Wi-Fi
- Po nawiązaniu połączenia Wi-Fi wysyła żądanie http (wysyła polecenie do Internetu), które informuje nas, że drzwi lub coś innego zostały otwarte
- Następnie odczytuje sygnał z kontaktronu, aby stwierdzić, czy drzwi zostały zamknięte
- Gdy płyta ESP wykryje, że kontaktron jest otwarty (tj. drzwi były zamknięte), wysyła kolejne żądanie http, które mówi nam, że drzwi zostały zamknięte
- Następnie sygnalizuje obwodowi miękkiego zatrzasku odcięcie zasilania płyty;
Pobierz Arduino IDE
Załączam kod arduino do tej sekcji do pobrania. Jeśli nie masz Arduino IDE, możesz pobrać je online pod adresem
Zainstaluj odpowiedniego menedżera zarządu
Aby przesłać kod na płytę ESP, musisz zainstalować menedżera płyty w Arduino IDE, wykonując następujące kroki.
- Przejdź do Plik > Preferencje, aby otworzyć okno preferencji
- W oknie preferencji znajdź pole „Additional Board Manager URLs”
- Wklej poniższy link w to pole https://arduino.esp8266.com/stable/package_esp8266com_index.json i naciśnij przycisk "OK"
- Teraz otwórz menedżera tablic, przechodząc do Narzędzia> Tablica, a pierwszym wpisem będzie Menedżer tablic
- Wpisz "ESP8266" w menu płyty i zainstaluj "esp8266" Wybrałem wersję 2.5.0 ponieważ miałem pewne problemy z nowszymi wersjami
- Teraz wróć i wybierz swoją tablicę z Narzędzia> Tablica> Ogólny moduł ESP8266
- Następnie zamknij i ponownie otwórz arduino ide, aby upewnić się, że zmiany miały miejsce
Otwórz szkic w Arduino IDE
Musimy zmodyfikować cztery wiersze kodu, aby czujnik działał dla Ciebie
- Zmień SSID na SSID Wi-Fi, czyli nazwę Wi-Fi
- Zmień hasło, aby pasowało do hasła do Wi-Fi
- Zmień adres URL, aby pasował do adresu URL ze strony „Dokumentacja” usługi „webhook”
- Zmień lokalizację czujnika na miejsce, w którym planujesz go umieścić, mogą to być drzwi frontowe, tylne, skrzynka pocztowa itp.
Teraz, gdy zmodyfikowałeś kod, aby odpowiadał Twoim potrzebom, musimy go załadować na tablicę. W moim przypadku używam programatora USB i postępuję zgodnie z jego instrukcjami. Może to wymagać wielu rozwiązywania problemów, więc sugeruję, abyś poszukał bardziej szczegółowego samouczka w Internecie. W moim przypadku podłączam ESP-01 do programatora, następnie podłączam go do komputera, potem przełączam przełącznik z uart na prog, na koniec odłączam i ponownie podłączam programator. To teraz pozostawia ESP w trybie programowania. Teraz po prostu klikam przycisk przesyłania i pozwalam, aby przesyłanie się zakończyło. Jeśli chcesz sprawdzić, czy się łączy, możesz otworzyć monitor szeregowy i przejrzeć komunikaty o stanie. Po przesłaniu szkicu zlutujemy wszystko razem, umieścimy w obudowie i zamontujemy w wybranym miejscu.
Krok 7: Obudowa (wydruk 3D)
Poniższą obudowę zaprojektowałem tak, aby pomieścić wszystkie komponenty, umożliwić umieszczenie magnesu i wyrównanie kontaktronu. Druga część służy tylko do trzymania drugiego magnesu, który pozwoli na otwieranie i zamykanie przełącznika.
Gdy wszystkie elementy są ze sobą zlutowane, możemy wcisnąć je do obudowy, jeśli chcesz, możesz dodać trochę gorącego kleju na dno, aby wszystko było w środku. Następnie musimy wcisnąć jeden magnes do obudowy z elektroniką i wyrównać kontaktron w razie potrzeby. Drugi magnes należy wcisnąć w drugą obudowę. Gdy obie obudowy są gotowe, możemy je przetestować, składając je razem, a następnie rozdzielając je i łącząc z powrotem. Powinniśmy teraz otrzymać dwa powiadomienia, jedno dla czujnika otwartego, a drugie dla czujnika zamkniętego. Trzymaj je razem, aby bateria się nie rozładowała.
Przymocuj taśmę montażową z tyłu czujników i przyklej je w wybranym miejscu. Zamontowałem swój na mojej skrzynce pocztowej. Teraz sprawdź, czy wyrównanie jest prawidłowe i czy czujnik jest w stanie wysłać wiadomość o otwarciu i zamknięciu.
Voila, masz teraz swój własny czujnik, który ostrzega Cię, gdy jest otwierany i zamykany. Daj mi znać, czy Ci się podoba i czy jest coś, co Twoim zdaniem można poprawić.
Przesyłam również tę instrukcję do konkursu IOT, więc polub i zagłosuj na ten i inne projekty IOT, które Ci się podobały
Krok 8: Przyszłe ulepszenia
W przypadku tego projektu napotkałem kilka problemów. Pierwszym problemem, jaki napotkałem, było użycie mosfeta, który miał zbyt wysoki Vgs, więc musiałem przełączyć się na inny. Po drugie, kontaktron, którego użyłem, jest normalnie otwarty, aw moim przypadku normalnie zamknięty przełącznik byłby łatwiejszy do wdrożenia i zaoszczędziłby dużo miejsca. Wreszcie esp 01s był bardzo trudny w obsłudze i musiałem zepsuć piny gpio, aby działał poprawnie, ale nadal miałem pewne problemy. Myślę, że ten projekt był w stanie nauczyć mnie wielu pojęć i pomógł mi wymyślić więcej pomysłów i wdrożeń z wykorzystaniem płyt esp8266 i IFTTT.
Drugie miejsce w wyzwaniu IoT
Zalecana:
Rywalizacja sieciowa: gra o niskiej latencji dla BBC Micro:bit: 10 kroków (ze zdjęciami)
Rywalizacja sieciowa: gra o niskiej latencji dla BBC Micro:bit: W tym samouczku wyjaśnię, jak zaimplementować podstawową grę wieloosobową na BBC micro:bit z następującymi funkcjami: Prosty interfejs Niskie opóźnienia między naciśnięciami przycisków a aktualizacje ekranu Elastyczna liczba uczestników Łatwe ko
Wzmacniacz lampowy o bardzo niskiej mocy i wysokim wzmocnieniu: 13 kroków (ze zdjęciami)
Wzmacniacz lampowy o bardzo niskiej mocy i wysokim wzmocnieniu: dla rockmanów w sypialni, takich jak ja, nie ma nic gorszego niż skargi na hałas. Z drugiej strony to wstyd mieć 50W wzmacniacz podpięty do obciążenia rozpraszającego prawie wszystko w cieple. Dlatego spróbowałem zbudować przedwzmacniacz o wysokim wzmocnieniu, oparty na
Stacja pogodowa o niskiej mocy: 6 kroków (ze zdjęciami)
Stacja pogodowa o niskim poborze mocy: Teraz, w trzeciej wersji i testowana przez ponad dwa lata, moja stacja pogodowa została zaktualizowana, aby zapewnić lepszą wydajność przy niskim poborze mocy i niezawodność przesyłania danych. Zużycie energii - nie jest to problem w miesiącach innych niż grudzień i styczeń, ale
Automatyczne światła połączone z monitorowaniem drzwi i drzwi.: 5 kroków
Automatyczne światła połączone z monitorowaniem drzwi i drzwi: Wydaje się, że bardzo trudno jest znaleźć tablicę rozdzielczą w ciemności, ale ten projekt jest naprawdę pomocny w rozwiązaniu tego problemu. Wykonaj poniższe czynności, aby poznać rozwiązanie tego problemu
Jak zbudować bank energii oparty na energii słonecznej przy użyciu baterii Dead Mobile: 4 kroki
Jak zbudować bank energii oparty na energii słonecznej przy użyciu baterii Dead Mobile: Ten projekt to bank energii oparty na energii słonecznej w domu przy użyciu rozładowanej baterii telefonu komórkowego. Możemy zastosować dowolny odpowiednik baterii mobilnej o tym samym schemacie. Panel słoneczny naładuje akumulator, a my możemy wykorzystać moc akumulatora do ładowania