Spisu treści:

Serwotermometr: 6 kroków
Serwotermometr: 6 kroków

Wideo: Serwotermometr: 6 kroków

Wideo: Serwotermometr: 6 kroków
Wideo: termostat si pentru temperaturi negative cu Arduino (8) 2024, Listopad
Anonim
SerwoTermometr
SerwoTermometr
SerwoTermometr
SerwoTermometr

Jest to analogowy wyświetlacz temperatury zbudowany z czujnika cyfrowego ds18b20, mini serwa oraz elektroniki opartej na module esp-12f

Posiada następujące cechy.

  • Samodzielna jednostka zawierająca elektronikę, serwo i baterię
  • Dobra dokładność i precyzja przy użyciu cyfrowego czujnika ds18b20
  • Akumulator LIPO z wbudowaną ładowarką
  • Bardzo niski prąd spoczynkowy (<20uA) dla długiej żywotności baterii
  • Serwo włączało się tylko na krótkie okresy, zapewniając dobrą żywotność baterii.
  • Zwykle moduł śpi pomiędzy aktualizacjami temperatury, ale można go przełączyć w tryb bez uśpienia w celu sprawdzenia i konfiguracji
  • Przesyłanie danych konfiguracyjnych i test serwo z interfejsu sieciowego
  • Konfigurowalne temperatury minimalne, maksymalne, stopnie Celsjusza. Fahrenheita i interwał aktualizacji
  • Monitorowanie baterii
  • Oprogramowanie można aktualizować za pomocą interfejsu internetowego
  • Niska cena

Krok 1: Potrzebne komponenty i narzędzia

Potrzebne komponenty i narzędzia
Potrzebne komponenty i narzędzia
Potrzebne komponenty i narzędzia
Potrzebne komponenty i narzędzia

Potrzebne są następujące składniki

  • Silnik serwo MINI (MG90S)
  • Czujnik temperatury ds18b20
  • ESP-12F (moduł esp8266)
  • 18650 bateria LIPO
  • Uchwyt baterii LIPO
  • ładowarka micro USB LIPO
  • Regulator niskiego prądu spoczynkowego LDO 3.3V. Użyłem XC6203
  • Rezystory 4K7, 10K
  • Kondensator odsprzęgający 220uF 6V
  • n-kanałowy sterownik MOSFET o niskim progu. Użyłem AO3400
  • p-kanałowy sterownik MOSFET o niskim progu. Użyłem AO3401
  • Mały kawałek płytki prototypowej pcb
  • Przesuń przełącznik zasilania
  • Mały przycisk (kwadrat 6 mm)
  • Podłączyć przewód
  • Dwustronna taśma klejąca
  • Projekt obudowy wydrukowany w 3D dostępny na
  • Opcjonalny wskaźnik. Użyłem zapasowej wskazówki zegara; można użyć wersji drukowanej.

Potrzebne są następujące narzędzia

  • Lutownica punktowa Fine Point
  • Pistolet na gorący klej
  • Dziurkacz

Krok 2: Elektronika

Elektronika
Elektronika

Większość elektroniki to jednostka mikrokontrolera Wi-Fi ESP8266. Potrzebna jest niewielka ilość elektroniki wspomagającej, aby włączyć silnik serwo i wyregulować akumulator do 3,3 V, wspierać czujniki i dzielnik rezystorowy do monitorowania napięcia akumulatora. Zasilanie silnika serwo jest napędzane przez 2 tranzystory MOSFET. Są włączane na krótko przed potrzebą aktualizacji serwomechanizmu i pozostawiane na krótki czas, aby umożliwić serwomechanizmowi zakończenie ruchu. Obciążenie jest tak lekkie, że serwo nie porusza się, gdy nie jest zasilane.

Cała elektronika wspomagająca poza ładowarką LIPO jest zamontowana na płytce prototypowej PCB. Używam komponentów SMD, aby utrzymać to jak najmniejsze, ale można to zrobić za pomocą komponentów wiodących, ponieważ dostępna jest rozsądna ilość miejsca. Ładowarka LIPO posiada port micro USB, który można wykorzystać do ładowania baterii. Do włączania i wyłączania zasilania można użyć przełącznika suwakowego. Przyciski umożliwiają obejście trybu uśpienia podczas uruchamiania, co umożliwia dostęp do sieci w celu konfiguracji i sterowania.

Krok 3: Montaż

montaż
montaż
montaż
montaż
montaż
montaż

Wykonałem następujące czynności montażowe

  • Wydrukuj obudowę 3d
  • Przewód lutowniczy do przełącznika, przycisku i złącza 3-pinowego
  • Dopasuj przełącznik, przycisk i złącze do obudowy za pomocą niewielkiej ilości kleju żywicznego, aby zabezpieczyć
  • Zamontuj serwo na swoim miejscu. Z tyłu jest wystarczająco dużo miejsca na przejście okablowania. Następnie do zabezpieczenia można użyć tekturowego klina.
  • Zabezpieczyć ładowarkę LIPO na swoim miejscu. Użyłem przewodu przez cztery otwory w ładowarce LIPO, aby dostosować wysokość (2mm) podstawy, aby dopasować ją do otworu USB. Gorący klej na miejscu.
  • Okablować uchwyt baterii, przełącznik i ładowarkę, pozostawiając wystarczający luz na przewodach baterii, aby mógł być z boku.
  • Uzupełnij elektronikę peryferyjną na małym kawałku płytki prototypowej.
  • Zamontuj płytkę prototypową na module esp-12.
  • Kompletne podłączenie okablowania
  • Wydrukuj wybraną tarczę (i wskaźnik w razie potrzeby) na sztywnym, błyszczącym papierze i wytnij.
  • Użyj dziurkacza, aby utworzyć otwór na serwo
  • Przymocuj tarczę do pudełka za pomocą dwustronnej taśmy samoprzylepnej
  • Dołącz wskaźnik do serwa
  • Skalibruj pozycję wskaźnika za pomocą narzędzia internetowego, aby ustawić wartość temperatury.

Krok 4: Oprogramowanie

Oprogramowanie do tego projektu jest dostępne na github

Jest to projekt oparty na Arduino, więc skonfiguruj środowisko programistyczne esp8266 Arduino. Możesz ustawić hasła do WifiManagera i aktualizacji oprogramowania w pliku ino na coś bardziej sensownego.

Należy go skompilować w Arduino ESP8266 IDE i wgrać do modułu szeregowo. Dobrze jest podłączyć GPIO13 do GND w środowisku programistycznym, ponieważ oprogramowanie będzie wtedy w trybie ciągłym.

Pierwsze użycie uruchomi punkt dostępowy, do którego należy podłączyć telefon lub tablet. Zobacz kod hasła. Następnie należy użyć przeglądarki na telefonie lub tablecie, aby uzyskać dostęp do 192.168.4.1, co pozwoli na wybór lokalnego identyfikatora sieci Wi-Fi i hasła. Wystarczy to zrobić tylko raz lub jeśli zmieni się sieć Wi-Fi. Od tego momentu moduł połączy się z lokalną siecią Wi-Fi, jeśli będzie to wymagane. Normalny tryb głębokiego uśpienia nie korzysta z Wi-Fi. Budzi się w interwale snu, odczytuje temperaturę, aktualizuje serwo i wraca do snu. Co dziesiąty odczyt pobiera odczyt baterii i rejestruje go. Można to sprawdzić, włączając tryb Wi-Fi bez snu i sprawdzając plik dziennika.

Należy również przesłać niektóre pliki pomocnicze. Znajdują się one w folderze danych git. Można je przesłać, uzyskując dostęp do ip/upload. Po ich przesłaniu można użyć adresu ip/edit do dalszego przesyłania w łatwiejszy sposób.

Krok 5: Operacja

Po skonfigurowaniu urządzenie będzie działać po włączeniu.

Jeśli jest włączony z wciśniętym przyciskiem, to można użyć wielu poleceń internetowych.

  • ipAddress/upload daje dostęp do prostego przesyłania plików. Służy do ładowania systemu.
  • http:/ipAddress/edit daje dostęp do systemu plików (np. aby przesłać nową konfigurację lub uzyskać dostęp do dowolnego pliku dziennika)
  • https://ipAddress daje dostęp do formularza, aby ustawić wyświetlanie na wartość. Może służyć do regulacji wskaźnika.
  • https://ipAddress/firmware, aby przesłać nowy plik binarny oprogramowania układowego

Krok 6: Wybierz numer i konfiguracja

PowerPoint zawiera przykładowe tarcze do użytku w stopniach Celsjusza lub Fahrenheita. Pozwalają one na 15 segmentów, ale zakres można łatwo dostosować, zmieniając interwał kroku. Jeśli potrzebnych jest więcej lub mniej segmentów, należy edytować właściwości obiektu pierścieniowego. Podobnie można zmienić kolor tła segmentów.

Dane konfiguracyjne są zawarte w pliku o nazwie servoTempConfig.txt. Jest on przechowywany w zbiorze modułu. Aby zmienić konfigurację, edytuj plik i załaduj go przez interfejs sieciowy

Dane konfiguracyjne to tylko wartości w wierszach w następujący sposób

  • nazwa hosta
  • minimalna wyświetlana temperatura (w wybranych jednostkach)
  • maksymalna wyświetlana temperatura (w wybranych jednostkach)
  • interwał snu między odczytami w sekundach
  • tryb uśpienia (0=włączony stale z Wi-Fi, 1=normalny głęboki sen, 2=włączony Ciągły brak Wi-Fi)
  • logowanie aktywności do servoTempLog.txt jeśli logowanie = 1. Napięcia baterii są zawsze logowane.
  • jednostki temperatury 0 = stopnie Celsjusza, 1 = Fahrenheit
  • Kalibracja ADC_CAL dla odczytów napięcia baterii.

Upewnij się, że minimalna i maksymalna temperatura są w wybranych jednostkach C/F.

Zalecana: