Spisu treści:

Barometr nastroju Nixie Clock: 7 kroków (ze zdjęciami)
Barometr nastroju Nixie Clock: 7 kroków (ze zdjęciami)

Wideo: Barometr nastroju Nixie Clock: 7 kroków (ze zdjęciami)

Wideo: Barometr nastroju Nixie Clock: 7 kroków (ze zdjęciami)
Wideo: Uczące się organizacje - webinar Pilotek Zmian 2024, Listopad
Anonim
Image
Image

Niezauważoną ofiarą Progress jest domowy barometr aneroidowy. W dzisiejszych czasach nadal możesz znaleźć przykłady w domach osób po dziewięćdziesiątce, ale miliony więcej są na śmietniku lub w serwisie eBay.

Prawdę mówiąc, barometr starej szkoły nie pomagał sobie, będąc prawie bezużytecznym w swojej jedynej pracy. Nawet zakładając, że został prawidłowo skalibrowany i działa poprawnie, wykorzystanie ciśnienia atmosferycznego do przewidywania pogody, a nawet wskazywania aktualnej pogody, jest prawie niemożliwe.

W międzyczasie, aby uzupełnić wprowadzenie całodobowych raportów pogodowych w środkach masowego przekazu, dostępne stały się super dokładne półprzewodnikowe czujniki ciśnienia, temperatury i wilgotności. Dorzuć procesor i tani wyświetlacz LCD i masz sobie „cyfrową domową stację pogodową”. Nawet frajerzy od pogody lub ludzie, którzy uważają, że pogoda w telewizji lub Internecie to spisek rządowy, nie potrzebowali już barometru.

A szkoda, bo bardzo ciepło wspominam barometr, który mieliśmy w domu mojego dzieciństwa. Mój tata codziennie stukał go ostrożnie i ustawiał bieżący wskaźnik czytania w mini rytuale, który chciałem naśladować, gdy byłem starszy, nawet po tym, jak zorientowałem się, że to tylko światowej klasy bluźnierca.

Oto jak zrobić zaktualizowany barometr z wyświetlaczem analogowym, który nie rozwiązuje żadnych niedociągnięć oryginału, ale ma kilka dodatkowych funkcji, nawet bardziej bezużytecznych niż to, od czego zaczął. Jeśli obejrzysz wideo, zorientujesz się.

Biorąc pod uwagę skromne cele tego projektu, jest to dość złożone – a dokładniej, replikacja projektu w całości jest zbyt duża dla jednego Instruktażowego. Z tego powodu skupię się na części barometru/barometru nastroju, a resztę po prostu wskaże ci właściwy kierunek.

Krok 1: Składniki i narzędzia

Ostrożnie przygotuj swoją obudowę
Ostrożnie przygotuj swoją obudowę

Do barometru/barometru nastroju potrzebne będą:

  • Barometr aneroidowy. Nie musi pracować. Ważniejsze jest coś, co przemawia do twoich zmysłów estetycznych. Chciałbym mieć ten z domu z dzieciństwa, ale myślę, że jest na śmietniku. Dostałem zamiennik w serwisie eBay za 15 dolarów.
  • Czujnik ciśnienia.
  • Moduł ESP8266 - użyłem NodeMCU.
  • Odpowiedni silnik krokowy i płyta sterownicza - link jest do pięciu miejsc pracy, ale za tę cenę trudno je pobić. Ten silnik ma 4096 kroków w pełnym obrocie, co daje wystarczającą rozdzielczość dla naszych celów.
  • Zasilanie 5VDC - co najmniej 1A - dla ESP8266 i silnika. Użyłem łącznego zasilania 12VDC i 5VDC, ponieważ już taki miałem i potrzebowałem zasilania 12V do zegara Nixie (plus więcej zasilania 5V dla pozostałych elementów projektu).
  • Co najmniej trzy diody LED (wskazujące trend ciśnienia).
  • LDR/fotorezystor.
  • Różne materiały eksploatacyjne, takie jak zworki, rezystory, rurki termokurczliwe itp.
  • W większości przypadków możesz użyć oryginalnej obudowy barometru, której używasz do przechowywania elektroniki. Zmieniłem przeznaczenie obudowy zegara w stylu Arts & Crafts, aby pomieścić zarówno zegar, jak i barometr, więc nie potrzebowałem obudowy barometru.

Jeśli chodzi o narzędzia, będziesz potrzebować lutownicy, opalarki i kilku małych narzędzi ręcznych. Jeśli musisz dokonać znaczących modyfikacji obudowy, przyda się wybór elektronarzędzi.

Krok 2: Ostrożnie przygotuj obudowę

To, co musisz tutaj zrobić, w dużej mierze zależy od obudowy, której używasz. Jeśli używasz własnej obudowy barometru, musisz tylko dowiedzieć się, jak ją rozebrać i usunąć mechanizm aneroidowy. Wskaźnik jest prawdopodobnie zamontowany bezpośrednio na tym mechanizmie i należy zachować ostrożność, aby odłączyć wskaźnik bez jego uszkodzenia.

Miałem trochę więcej pracy, ponieważ w mojej obudowie zegara wciąż znajdował się stary (niedziałający) mechanizm zegarowy.

Nie wiem prawie nic o zegarach mechanicznych, ale potężnie zwinięte sprężyny sugerowały, że powinienem postępować ostrożnie. Niemniej jednak, kiedy to eksplodowało, byłem, no cóż, nieprzygotowany. W jednej sekundzie odkręcałem pozornie nieistotną śrubę, w następnej rozległ się głośny huk i powietrze wypełniło się kurzem i gruzem. Kawałki zegara były wszędzie, a sama obudowa została całkowicie rozerwana. Podobnie jak wyobrażam sobie, kiedy wybucha prawdziwa bomba, przez chwilę nie mogłem zrozumieć, co się stało. W ogłuszającej ciszy, która nastąpiła, spodziewałem się usłyszeć odległy wycie syren. Poza tym bardzo bolała mnie ręka.

Lekcja pierwsza: Nawet niewielkie mechanizmy zegarowe mogą przechowywać zaskakująco dużą ilość energii.

Lekcja druga: W razie wątpliwości noś okulary ochronne! Miałem szczęście, nic nie leciało mi w oczy, ale na pewno mogło. Czasami samo zaangażowanie starych zezów bezpieczeństwa nie wystarczy (nawet nie jestem pewien, czy to zrobiłem). Moja ręka była w porządku, po prostu byłam dzieckiem.

Po wielu klejeniach i mocowaniu złożyłem obudowę z powrotem i byłem gotowy, aby przejść do kroku 3.

Krok 3: Zainstaluj komponenty - część 1

Zainstaluj komponenty - część 1
Zainstaluj komponenty - część 1
Zainstaluj komponenty - część 1
Zainstaluj komponenty - część 1

Musisz znaleźć sposób na zainstalowanie silnika, aby wał wystawał przez tarczę na tyle, aby po przymocowaniu wskaźnika przesunął się po twarzy bez zakłóceń. Może to być trochę trudniejsze niż się wydaje, ponieważ większość barometrów będzie miała po wewnętrznej stronie szkła inny wskaźnik, który w dawnych czasach był używany do rejestrowania bieżącego odczytu. Jak wyjaśniono później, nie będziemy potrzebować tego wskaźnika, ale zachowanie go pomaga zachować oryginalny wygląd i działanie urządzenia.

W każdym razie, istnienie wskaźnika odczytu prądu oznacza, że istnieje granica tego, jak daleko „główny” wskaźnik może odstawać od tarczy.

W przeciwnym kierunku wskaźnik musi znajdować się wystarczająco daleko od tarczy, aby po prostu wyczyścić podkładkę, która obramuje LDR zainstalowany w tarczy (patrz następny krok).

To, co zrobiłem, to zamontowanie tarczy i jej ramy na drewnianej podkładce, a następnie zamontowanie silnika na podkładce za pomocą odpowiednich przekładek. Pierwsze zdjęcie może pomóc to wyjaśnić, ale możesz wymyślić własny układ.

Jedną z zalet korzystania z obudowy zegara lub czegoś podobnego jest to, że jest miejsce na wewnętrzną instalację zasilacza. Dla mnie było to ważne, ponieważ zegar miał stać na kominku podłączonym do specjalnie zainstalowanego przeze mnie gniazdka. Ukrycie wyraźnie anachronicznego „brodawki ściennej” lub cegły SPS w tym miejscu byłoby trudne – ale może to nie być dla ciebie problemem.

Komponenty nieoznaczone na drugim rysunku odnoszą się do części zegara i chimera projektu (trzecie NodeMCU i powiązane okablowanie znajdują się pod płytką Nixie).

Umieszczenie wszystkiego innego - przede wszystkim czujnika BMP180, płyty sterownika silnika i NodeMCU - nie jest krytyczne. To powiedziawszy, dopóki nie poprowadziłem przewodu połączeniowego z dala od płyty sterownika, silnik czasami nie działał poprawnie. Nie jestem pewien, co się tam dzieje, ale jeśli twój silnik brzmi dziwnie i / lub nie porusza się płynnie, możesz spróbować poruszyć przewodami.

Aby uniknąć konieczności ręcznego rejestrowania trendu ciśnienia (wznoszącego, opadającego lub stałego) umieściłem pod tarczą trzy małe diody LED. Gdy wszystkie trzy są podświetlone, barometr jest w trybie nastroju. Użyłem "ciepłobiałych" diod LED, aby spróbować utrzymać wrażenie okresu. Niemodulowane, były zbyt jasne, gdy oglądano je z przodu, ale z jakimś wytrzymałym PWM uzyskałem wygląd, którego szukałem. Obecny wskaźnik czytania jest nadal dostępny dla tradycjonalistów.

Krok 4: Zainstaluj komponenty - część 2

Zainstaluj komponenty - część 2
Zainstaluj komponenty - część 2

Zajmijmy się LDR w tarczy. Po pierwsze, dlaczego do cholery tego potrzebujemy?

Cóż, jest to moje rozwiązanie ograniczenia taniego silnika krokowego - chociaż może poruszać się w precyzyjnych krokach, nie ma wrodzonej zdolności do rozpoznania, gdzie się znajduje, poza odniesieniem do pozycji wyjściowej. Chociaż teoretycznie przypuszczam, że można by to zakodować na twardo i śledzić wszystkie kolejne ruchy, domyśliłem się (bez prawdziwych podstaw), że szybko wkradną się błędy, szczególnie biorąc pod uwagę ruchy na dużą skalę wymagane w „trybie nastroju”. Poza tym byłbyś napakowany przerwą w dostawie prądu (zapisywanie każdego ruchu do EEPROM nie jest zbyt praktyczne).

Moją pierwszą myślą było wprowadzenie cyklu kalibracji przy włączaniu i przełączaniu między trybem nastroju a trybem barometru. Ten cykl spowoduje wyzwolenie mikroprzełącznika w znanym punkcie tarczy. Ale mechaniczne wdrożenie pomysłu na przełącznik wydawało mi się zbyt trudne. Sam wskaźnik jest zbyt słaby, aby być siłownikiem, więc musiałbym zainstalować coś innego na wale. Następnie pojawił się problem zachowania ruchu 360° – jeden z powodów, dla których wybrałem silnik krokowy zamiast standardowego serwa. Dzięki zastosowaniu nieco większej pomysłowości, niż mogłem wnieść, jestem pewien, że mikroprzełącznik mógłby zadziałać - a może jest dostępne również gotowe rozwiązanie czujnika położenia - ale poszedłem inną drogą.

Zauważ, że na zdjęciu tarczy zamontowana jest podkładka w pozycji godziny pierwszej. Ta podkładka obramowuje LDR podłączony do pojedynczego wejścia analogowego dostępnego w NodeMCU. Gdy barometr jest włączony lub przełącza tryby, NodeMCU wchodzi w cykl kalibracji i po prostu szuka nagłej zmiany poziomu światła spowodowanej ruchem tylnej części wskaźnika nad LDR. Każdy dalszy ruch jest indeksowany od znanej pozycji. Musiałem trochę pomajstrować z wartościami progowymi w kodzie, aby to działało niezawodnie, ale kiedy to zostało zrobione, byłem mile zaskoczony, jak dokładny był - konsekwentnie powracałem do ustawień barometru w granicach 1% lub 2% oczekiwanych wartości.

Oczywiście nie działa w całkowitej ciemności, ale zwykle nie przełączasz wtedy trybów. Jeśli z jakiegoś powodu cykl kalibracji nie może zostać ukończony w określonym czasie, poddaje się i miga diodami LED trendów.

W każdym razie piękno podejścia LDR polega na tym, że instalacja jest bardzo prosta - wywierć otwór wystarczająco duży dla LDR w tarczy w miejscu, w którym zostanie on zakryty przez tylny koniec wskaźnika. Aby uzyskać ładne „uszczelnienie” między wskaźnikiem a LDR, przyklej małą podkładkę wokół LDR i, jeśli to konieczne, zmodyfikuj końcówkę wskaźnika (użyłem odpowiednio ukształtowanego czarnego papieru).

Krok 5: Kod – Podstawowa funkcjonalność

Kod - podstawowa funkcjonalność
Kod - podstawowa funkcjonalność

Jak odkryli inni, nie mogłem uzyskać standardowej biblioteki silników krokowych Arduino do pracy z tym silnikiem i sterownikiem. Na szczęście istnieje dobry instruktaż z kodem, który działa. Użyłem kodu w oryginalnym wpisie do podstawowych kroków, chociaż w komentarzach jest kilka sugestii dotyczących optymalizacji. Ten kod nie wymaga biblioteki.

Do przetwarzania danych ciśnienia wykorzystałem przykład z biblioteki Sparkfun BMP180. Wszystko, co musiałem wtedy zrobić, to połączyć to z kontrolą silnika.

Krok 6: Kod - kalibracja, sterowanie, GUI, Asystent Google i funkcje użytkowe

Kod - Kalibracja, sterowanie, GUI, Asystent Google i funkcje użytkowe
Kod - Kalibracja, sterowanie, GUI, Asystent Google i funkcje użytkowe

Podstawowa kalibracja jest zakodowana na stałe. Aby być po bezpiecznej stronie i uwzględnić możliwe przeniesienie barometru na inną wysokość, wtórną kalibrację i kontrolę uzyskuje się za pomocą serwera sieciowego uruchamianego przez komunikację NodeMCU i Websocket. Dobre źródło informacji na ten temat znajduje się tutaj.

Jednak, jak pokazuje film, prawdziwym „wow” czynnikiem tego projektu, takim jakim jest, jest sterowanie za pomocą Asystenta Google/Google Home. Tutaj znajduje się instrukcja obsługi tostera GA (zasilanego przez Raspberry Pi3). Nie martw się, nie musisz używać tostera za 400 USD jako obudowy.

Polecenia są przekazywane przez GA przez IFTTT i Adafruit IO do NodeMCU. Dobre źródło informacji na ten temat jest tutaj. Istnieją inne, bardziej skomplikowane sposoby interakcji z Asystentem Google, ale w tym projekcie to bardzo proste podejście sprawdza się doskonale.

Wreszcie, kod zawiera kilka niezwykle przydatnych funkcji użytkowych (aktualizacja bezprzewodowa, Multicast DNS, Menedżer Wifi), które zacząłem dołączać do wszystkich moich projektów opartych na ESP8266.

Cały kod dla tego projektu (w tym zegar Nixie i sterowanie chimerem) znajduje się na Github tutaj. Zostawiłem obrazy, których użyłem w plikach HTML/CSS, więc działa to po wyjęciu z pudełka (mam nadzieję) - wystarczy dodać własne dane konta Adafruit IO.

Krok 7: Zegar Nixie i Chimer

Zegar Nixie i Chimer
Zegar Nixie i Chimer

Zegar Nixie jest kontrolowany przez oddzielne NodeMCU i wykorzystuje lampę Nixie i moduł sterownika zaprojektowany jako osłona Arduino dostępna tutaj. Wersja w linku zawiera moduł GPS do uzyskiwania czasu. Moja tarcza (wcześniejsza wersja) nie ma modułu GPS, ale używam MCU Node, aby uzyskać czas z Internetu, co pod pewnymi względami jest lepsze.

Schemat sterowania i GUI dla zegara ma więcej opcji konfiguracyjnych, ale poza tym jest bardzo podobny do barometru. Jest tu trochę nakładka, ponieważ diody Nixie reagują na nastrojowe dane wejściowe barometru (poprzez ten sam kanał Adafruit IO).

Z szczątków oryginalnego mechanizmu zegarowego uratowałem wystarczającą ilość bitów, aby zbudować mechanizm chimerowy napędzany przez trzecie NodeMCU (hej, każdy kosztuje tylko 6 USD) i kolejny silnik krokowy. Dodałem jedynie „interfejs” między oryginalnym mechanizmem a silnikiem. „Interfejs” jest w cudzysłowie, ponieważ składa się tylko ze złącza kulowego z dwoma gwoździami wbitymi w niego pod kątem prostym i wsuniętymi na wał silnika. Każda czwarta rotacja tego urządzenia powoduje jedno uderzenie chimera. Po raz kolejny schemat sterowania chimerami jest podobny do barometru, a wszystkie trzy serwery sieciowe są ze sobą połączone, dzięki czemu całość wydaje się bardziej płynna niż w rzeczywistości.

NodeMCU zegara i chimera działają całkowicie niezależnie od siebie, ale dzięki cudom internetowego pomiaru czasu są zawsze idealnie zsynchronizowane.

Zalecana: