Spisu treści:

Powiadomienie o pralko-suszarce Arduino - powiadomienie push na telefon za pomocą Blynk: 5 kroków (ze zdjęciami)
Powiadomienie o pralko-suszarce Arduino - powiadomienie push na telefon za pomocą Blynk: 5 kroków (ze zdjęciami)

Wideo: Powiadomienie o pralko-suszarce Arduino - powiadomienie push na telefon za pomocą Blynk: 5 kroków (ze zdjęciami)

Wideo: Powiadomienie o pralko-suszarce Arduino - powiadomienie push na telefon za pomocą Blynk: 5 kroków (ze zdjęciami)
Wideo: POWIADOMIENIA PUSHOVER na ANDROID i IOS | Inteligentny Dom DIY #22 2024, Listopad
Anonim
Powiadomienie o pralko-suszarce Arduino - powiadomienie push na telefon za pomocą Blynk
Powiadomienie o pralko-suszarce Arduino - powiadomienie push na telefon za pomocą Blynk
Powiadomienie o pralko-suszarce Arduino - powiadomienie push na telefon za pomocą Blynk
Powiadomienie o pralko-suszarce Arduino - powiadomienie push na telefon za pomocą Blynk
Powiadomienie o pralko-suszarce Arduino - powiadomienie push na telefon za pomocą Blynk
Powiadomienie o pralko-suszarce Arduino - powiadomienie push na telefon za pomocą Blynk
Powiadomienie o pralko-suszarce Arduino - powiadomienie push na telefon za pomocą Blynk
Powiadomienie o pralko-suszarce Arduino - powiadomienie push na telefon za pomocą Blynk

Nasza pralka jest w garażu i nie słyszymy sygnałów dźwiękowych oznaczających zakończenie prania. Chciałem znaleźć sposób na otrzymanie powiadomienia, gdziekolwiek jesteśmy w domu, kiedy cykl się zakończy. Od jakiegoś czasu majstrowałem przy Arduino, ESP8266 WiFi, a ostatnio zacząłem od Blynk - pomyślałem, że może to zapewnić stosunkowo proste, ale elastyczne rozwiązanie.

Moim pierwszym pomysłem było użycie pralki do zasilania Arduino i podłączenie brzęczyka pralki do cyfrowego pinu wejściowego, aby uruchomić powiadomienie. Po kilku godzinach badania elementów sterujących pralki, bez schematu obwodu i kilku nieoczekiwanych porażeniach prądem (nawet po przetestowaniu połączeń, pinów moim multimetrem…) zdecydowałem, że mniej inwazyjne podejście będzie lepsze…

Z pomocą pana Google i przetrząsaniem moich skrzynek z czujnikami Arduino zdecydowałem się na czujnik wibracji podłączony na zewnątrz pralki, podłączony do Wi-Fi i platformę Blynk do zarządzania powiadomieniami push na nasze telefony (próbowałem e-mail i twitter, ale były one mniej natychmiastowe i wymagały dodatkowych ustawień alertów/powiadomień na iPhonie).

Ta instrukcja opisuje, czego będziesz potrzebować (sprzęt, aplikacja i kod Arduino); wskazówki i wnioski wyciągnięte po drodze - dla Arduino, ESP8266 (na płytce WEMOS D1 Mini Pro).

Zacznijmy…

Krok 1: Czego będziesz potrzebować

Czego będziesz potrzebować
Czego będziesz potrzebować
Czego będziesz potrzebować
Czego będziesz potrzebować
Czego będziesz potrzebować
Czego będziesz potrzebować

1. WEMOS D1 Mini Pro - karta mini wifi z 16MB flashem, złączem anteny zewnętrznej i wbudowaną anteną ceramiczną na bazie ESP8266EX.

2. GY-521 (MPU-6050) żyroskop/akcelerometr.

3. Konto Blynk i aplikacja na smartfonie.

4. Zresetuj SW i przełącznik zasilania (opcjonalnie), różne płytki stykowe, podłącz przewody itp. do testowania.

5. Taśma dwustronna o dużej wytrzymałości.

6. Pistolet do klejenia na gorąco lub inny klej, aby mocno przymocować czujnik do obudowy.

* Czujnik będzie musiał być mocno przymocowany do obudowy, a obudowa do pralki. Jeśli nie jest wystarczająco mocny, otrzymasz fałszywe wibracje i stracisz trochę czułości pomiaru.

Krok 2: Zbuduj swój prototyp i przetestuj

Zbuduj swój prototyp i przetestuj
Zbuduj swój prototyp i przetestuj
Zbuduj swój prototyp i przetestuj
Zbuduj swój prototyp i przetestuj
Zbuduj swój prototyp i przetestuj
Zbuduj swój prototyp i przetestuj

Podłącz GY-521 do D1 Mini:

GY-521 D1 Mini

VCC ----- +5V

GND ----- GND

SCL ----- D1

SDA ----- D2

Załaduj szkic i po potwierdzeniu (monitor szeregowy), że GY-521 zwraca współrzędne X, Y i Z (w Internecie jest wiele podstawowych samouczków GY-521 i przykładowych szkiców). Dla uproszczenia użyłem tylko osi X do pomiaru wibracji.

Teraz tymczasowo podłącz GY-521 do pralki i pozwól na uruchomienie pełnego cyklu. Spowoduje to zebranie maksymalnych i minimalnych wartości X, których można użyć do określenia, kiedy maszyna jest uruchomiona, a kiedy jest zatrzymana (komentarze w końcowym szkicu wyjaśniają logikę).

UWAGA: Piny D1 i D2 są przeznaczone dla WEMOS D1 Mini Pro, mogą to być różne piny na płycie Arduino/ESP - poszukaj schematów map pinów w Internecie.

Następnie skonfiguruj swój projekt Blynk.

Krok 3: Szkic Arduino

Zakładam, że wiesz, jak korzystać z Arduino IDE oraz przesyłać i uruchamiać szkice na kompatybilnych płytkach. W samym szkicu jest wiele komentarzy, więc nie będę tu zagłębiał się w szczegóły.

Podstawowe kroki dla szkicu są następujące:

1. Odczytaj bieżącą wartość osi X, zapisz tę wartość. Jeśli X jest > xMax, zapisz go jako xMax. Jeśli X jest < xMin, zapisz go jako xMin.

2. Co 5 minut sprawdź, czy maszyna się zatrzymała: "if XMax - xMin <=2". Wybrałem 5 minut, ponieważ pozwala to na przerwy w cyklu prania i pozwala uniknąć fałszywych powiadomień.

3. Jeśli maszyna się zatrzymała, powiadom Blynk, aby wysłał powiadomienie push na Twój telefon - Mycie zakończone!

* Używam funkcji millis() do zarządzania 5-minutowym zegarem. Blynk zdecydowanie odradza używanie delay(), ponieważ zatrzymuje to loop() i powoduje awarię połączenia z serwerem Blynk. millis() jest podstępny, aby na początku się poruszać, ale warto wytrwać, jest to świetny zegar z tą zaletą, że inny element kodu nadal działa (np. odczytuje piny, wysyła dane itp.), podczas gdy delay() zatrzymuje wszystkie procesy.

* Blynk ma linki do biblioteki BlynkSimpleEsp8266.h. To zarządza wszystkimi interakcjami Blynk między układem ESP8266 w D1 mini a wszystkimi funkcjami Blynk.

* Biblioteka Wire.h jest domyślnie zawarta w Arduino IDE. Zarządza to komunikacją I2C między D1 mini a Gy-521.

Krok 4: Zbuduj swój projekt Blynk

Zbuduj swój projekt Blynk
Zbuduj swój projekt Blynk
Zbuduj swój projekt Blynk
Zbuduj swój projekt Blynk
Zbuduj swój projekt Blynk
Zbuduj swój projekt Blynk

Mimo że używasz aplikacji na telefonie, Blynk odnosi się do poszczególnych projektów i widżetów (stają się aplikacjami dopiero po tym, jak zdecydujesz się je opublikować, funkcja dostępna w Blynk, z której nie korzystałem, nie musisz publikować, aby korzystać z projektów na własny użytek).

Nie będę opisywał konfigurowania Blynk, ponieważ mają obszerne samouczki i wsparcie za pośrednictwem swojej strony internetowej i społeczności wsparcia.

Mój projekt Blynk zawiera widżet do zarządzania powiadomieniem push iPhone'a (mycie gotowe!) oraz wartości dla osi X i xMax i xMin. Dołączyłem je jako szybkie wizualne sprawdzenie, aby potwierdzić, że projekt jest prawidłowo podłączony do Wi-Fi / Blynk i że GY-521 zwraca prawidłowe dane.

Po zakończeniu projektowania, jeśli ustawisz czas opóźnienia w szkicu na niską wartość (np. 10 sekund), a następnie ręcznie przesuń GY-521, aby przekroczyć próg, NIE powinieneś otrzymywać powiadomień push, gdy czujnik jest w ruchu. Jeśli następnie utrzymasz czujnik nieruchomo, powinieneś otrzymać powiadomienie push (Mycie zakończone!) na swój telefon.

Na koniec ustaw opóźnienie z powrotem na 5 minut (lub inną wartość, która Ci odpowiada).

Krok 5: Teraz przestań się bawić i zrób swoje pranie

Teraz przestań się bawić i zrób swoje pranie!
Teraz przestań się bawić i zrób swoje pranie!
Teraz przestań się bawić i zrób swoje pranie!
Teraz przestań się bawić i zrób swoje pranie!
Teraz przestań się bawić i zrób swoje pranie!
Teraz przestań się bawić i zrób swoje pranie!

Kilka końcowych myśli…

1. Rozpocznij pranie, a następnie włącz projekt. Sprawdź wartości X w aplikacji, aby upewnić się, że czujnik uruchomił się prawidłowo. Czasami zauważyłem, że czujnik nie uruchomił się i zwrócił 225 dla wszystkich wartości, szybki reset naprawi to.

2. Opóźnienie 5 minut oznacza, że w najgorszym przypadku powiadomienie może pojawić się dopiero po 5 minutach od zakończenia prania - jest to kompromis, który wolę, a nie fałszywe alarmy podczas cyklu prania.

3. Nie zapomnij włączyć powiadomień dla aplikacji Blynk na swoim telefonie. Skonfiguruj ustawienia telefonu, aby umożliwić powiadamianie, gdy telefon jest zablokowany.

Wszelkie uwagi lub pytania daj mi znać

kula

rachunek

Zalecana: