Spisu treści:
- Krok 1: Wymagania wstępne/Części
- Krok 2: Ogólny opis modułu
- Krok 3: ESP8285 Nieużywane GPIO
- Krok 4: Przylutuj przewody przewodzące prąd do płytki drukowanej
- Krok 5: Przylutuj przewody danych do pinów ESP8285
- Krok 6: Przylutuj przewody Vcc/Gnd do regulatora 3V3 i portu USB
- Krok 7: Przylutuj przewody do modułu INA219
- Krok 8: Montaż
- Krok 9: Zbuduj Tasmotę z obsługą INA219
- Krok 10: Konfiguracja Tasmota dla INA219
- Krok 11: Wynik końcowy
Wideo: Modyfikacja przełącznika WiFi Sinilink za pomocą czujnika napięcia/prądu INA219: 11 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:27
Przełącznik Sinilink XY-WFUSB WIFI USB to ładne małe urządzenie do zdalnego włączania/wyłączania podłączonego urządzenia USB. Niestety brakuje mu możliwości pomiaru napięcia zasilania lub zużytego prądu podłączonego urządzenia.
Ta instrukcja pokazuje, jak zmodyfikowałem mój przełącznik USB za pomocą czujnika napięcia / prądu INA219. Dzięki tej modyfikacji możesz monitorować pobór mocy podłączonego urządzenia, m.in. smartfona, czytnika ebooków itp., podczas ładowania i zautomatyzowania wyłączenia zasilania podłączonego urządzenia przed jego naładowaniem do 100%, aby (być może) przedłużyć żywotność zintegrowanego akumulatora LiPo.
Należy pamiętać, że w efekcie modyfikacja ta skutkuje niewielkim spadkiem napięcia z wejścia 5V na wyjście modułu.
Krok 1: Wymagania wstępne/Części
Potrzebne będą następujące części:
- Przełącznik Sinilink XY-WFUSB WIFI USB
- INA219 Moduł czujnika napięcia/prądu (mniejszy jest lepszy)
- Drut emaliowany o średnicy 0,4 mm
- gruby drut, który wytrzyma 2-3A prądu
- rurka termokurczliwa pasująca do grubego drutu
- Rurka termokurczliwa o średnicy 25,4 mm
- Zwykłe narzędzia, takie jak lut, lut, topnik
- PC, na którym można skompilować Tasmotę z obsługą INA219
Krok 2: Ogólny opis modułu
Bardzo dobry ogólny opis modułu przełącznika USB, jego części i sposobu otwierania znajduje się w załączonym filmie od Andreasa Spiessa. Ten film zainspirował mnie do wprowadzenia zmian w moim module za pomocą modułu czujnika INA219.
Krok 3: ESP8285 Nieużywane GPIO
Aby dowiedzieć się, które piny/GPIO w ESP8285 nie są połączone, wyjąłem chip z modułu. Nie musisz tego robić, wystarczy spojrzeć na zdjęcie.
Dzięki wylutowanemu chipowi i arkuszowi danych ESP8285 widać, że następujące piny/GPIO są nieużywane:
- PIN10/GPIO12
- PIN12 / GPIO13
- PIN18 / GPIO9
- PIN19/GPIO10
- … i więcej …
Potrzebujesz tylko dwóch do połączeń I2C (SDA + SCL) do modułu INA219. Najpierw wybrałem PIN18 + PIN19, ale zniszczyłem pady podczas lutowania do niego, ponieważ nie jestem (jeszcze) wystarczająco wykwalifikowany, aby przylutować dwa druty 0,4 mm w tym rozstawie pinów, gdy są obok siebie.
Krok 4: Przylutuj przewody przewodzące prąd do płytki drukowanej
Aby zmierzyć prąd, moduł INA219 musi być włożony do wyjścia zasilania +5V między przełączającym MOSFETem a portem wyjściowym USB.
Najpierw podnieś nóżkę gniazda USB.
Drugie przylutuj grubym drutem (czerwony) do padu na PCB, który jest wyjściem MOSFET po drugiej stronie PCB, ten przewód przejdzie do "Vin+" INA219.
Następnie przylutuj gruby drut (czarny) do pinu gniazda USB, to przejdzie do "Vin-" INA219.
Podczas lutowania włożyłem między nie żaroodporną taśmę kaptonową, a następnie wokół czarnego drutu dodałem rurkę termokurczliwą. Zostawiłem też taśmę Kapton na miejscu.
Krok 5: Przylutuj przewody danych do pinów ESP8285
Wstępnie zagnij przewody przed przylutowaniem ich do chipa, nie należy zbytnio obciążać podkładek przymocowanych do pinów chipa.
Przylutuj dwa przewody do pinów 10 i 12 chipa.
Jak widać na zdjęciu wypaliłem piny 18 i 19 po prawej stronie chipa, więc staraj się utrzymywać niskie ciepło i krótki czas lutowania.
Przykleiłem też oba przewody na krawędzi płyty, aby mieć trochę odciążenia.
Krok 6: Przylutuj przewody Vcc/Gnd do regulatora 3V3 i portu USB
Przylutuj przewód do wyjścia regulatora napięcia AMS1117 3V3, to przejdzie do "Vcc" modułu INA219. (Przepraszam za złe zdjęcie)
Przylutuj przewód do pinu Gnd w gnieździe USB, to przejdzie do "Gnd" modułu INA219.
Krok 7: Przylutuj przewody do modułu INA219
Przylutuj sześć przewodów do modułu INA219. Zachowaj wystarczająco dużo miejsca między płytą główną a modułem, aby włożyć niebieską osłonę urządzenia Sinilink.
- Vin+ - (czerwony) z podkładki na PCB
- Vin- - (czarny) z pinu gniazda wyjściowego USB
- Vcc - z regulatora napięcia AMS1117 3V3
- Gnd - od Gnd pinu męskiego gniazda USB
- SCL - od PIN12/GPIO13 (SCL/SDA można przełączyć w konfiguracji Tasmota)
- SDA - od PIN10 / GPIO12 (SCL/SDA można przełączyć w konfiguracji Tasmota)
Krok 8: Montaż
Wytnij kilka szczelin w niebieskiej obudowie urządzenia Sinilink, aby przejść przez używane kable.
Włóż osłonę między płytkę Sinilink PCB a moduł INA219 i zagnij przewody blisko obudowy.
Użyj rurki termokurczliwej wokół obu modułów.
Krok 9: Zbuduj Tasmotę z obsługą INA219
Musisz skompilować Tasmota z obsługą INA219, standardowy plik tasmota-sensors.bin, który zawiera obsługę INA219, jest zbyt duży, aby zmieścić się w ESP8285.
Poniżej znajduje się bardzo krótkie wyjaśnienie procesu budowania za pomocą dockera, więcej szczegółów tutaj.
Utwórz katalog:
$ mkdir /opt/docker/tasmota-builder
Utwórz docker-compose.yml
$ cat /opt/docker/tasmota-builder/docker-compose.yml wersja: "3.7"services: tasmota-builder: nazwa_kontenera: tasmota-builder nazwa hosta: tasmota-builder restart: "nie" # źródło: https://hub.docker.com/r/blakadder/docker-tasmota image: blakadder/docker-tasmota:latest user: "1000:1000" woluminy: # kontener docker musi być uruchomiony przez tego samego użytkownika, # który jest właścicielem kodu źródłowego -./tasmota_git:/taśmota
Sklonuj repozytorium git i przełącz się na konkretną, otagowaną wersję Tasmoty:
/opt/docker/tasmota-builder $ klon git https://github.com/arendst/Tasmota.git tasmota_git
/opt/docker/tasmota-builder/tasmota_git (master) $ git checkout v8.5.1
Dodaj plik zastąpienia, aby uwzględnić obsługę INA219:
$ cat /opt/docker/tasmota-builder/tasmota_git/tasmota/user_config_override.h
#ifndef _USER_CONFIG_OVERRIDE_H_#define _USER_CONFIG_OVERRIDE_H_#warning **** user_config_override.h: Używanie ustawień z tego pliku ****#ifndef USE_INA219#define USE_INA219#endif
Rozpocznij kompilację:
"-e tasmota" oznacza, że buduje tylko plik binarny tasmota.bin, nic więcej.
/opt/docker/tasmota-builder $ docker-compose uruchom tasmota-builder -e tasmota; docker-compose down
Wynikowy plik binarny, tasmota.bin, będzie zlokalizowany w:
/opt/docker/tasmota-builder/tasmota_git/build_output/firmware/
Skonfiguruj urządzenie Sinilink z Tasmotą, jak wyjaśnił Andreas Spiess w swoim filmie. Najpierw flashowanie, a następnie konfiguracja szablonu/zwykłej konfiguracji GPIO dla tego urządzenia.
Albo za pomocą własnego skompilowanego pliku binarnego Tasmota, albo po prostu użyj najpierw standardowego wydania, a następnie zaktualizuj przez webgui do własnej skompilowanej wersji.
Krok 10: Konfiguracja Tasmota dla INA219
Pierwszym krokiem jest zmodyfikowanie szablonu, aby pasował do modyfikacji.
Przejdź do „Konfiguracja” -> „Konfiguruj szablon”, wybierz dla GPIO12 i GPIO13 wartość „Użytkownik (255)”. Kliknij „Zapisz”.
Po restarcie przejdź do „Konfiguracja” -> „Konfiguruj szablon”, wybierz dla GPIO12 -> „I2C SDA (6)” i dla GPIO13 -> „I2C SCL (5)”. Lub zamień je, jeśli przylutowałeś przewody inaczej. Kliknij „Zapisz”.
Zmień wyświetlaną/raportowaną precyzję modułu. Zmieniaj się, jak chcesz.
Przejdź do „Konsoli” i wprowadź następujące polecenia.
TelePeriod 30 # wysyłaj wartości czujnika MQTT co 30 sekund
VoltRes Dokładność 3 # 3 cyfry przy pomiarach napięcia WattRes Dokładność 3 # 3 cyfry przy obliczeniach watów AmpRes Dokładność 3 # 3 cyfry przy pomiarach prądu
Krok 11: Wynik końcowy
Jeśli wszystko zostało zrobione poprawnie, możesz teraz monitorować napięcie i prąd używane przez podłączone urządzenie USB bezpośrednio w interfejsie WWW Tasmota.
Jeśli masz również konfigurację dla Tasmoty, aby raportowała pomiary przez MQTT do InfluxDB, możesz tworzyć wykresy za pomocą Grafana, aby pokazać prąd ładowania w czasie, oto przykład mojego smartfona ładującego się od ~10% do ~85% pojemności.
Po tej konfiguracji możesz użyć narzędzia do automatyzacji, takiego jak Node-RED, aby automatycznie wyłączyć przełącznik USB, gdy prąd spadnie poniżej określonego limitu.
Należy pamiętać, że ponieważ INA219 wykorzystuje rezystor 0,1 Ohm jako bocznik prądowy, uzyskasz spadek napięcia z wejścia do wyjścia, w zależności od zasilacza i „inteligencji” podłączonego urządzenia, które może ładować się wolniej niż wcześniej.
Zalecana:
Ręczne źródło napięcia i prądu 4-20mA: 7 kroków
Ręczne źródło napięcia i prądu 4-20mA: Ta instrukcja opisuje, jak wykonać generator sygnału 0-20mA +/-10V przy użyciu niedrogiego wzmacniacza operacyjnego LM324. Tego typu generatory sygnału są przydatne w przemyśle do testowania wejść czujników lub zasilania wzmacniaczy przemysłowych
Wielokanałowy miernik napięcia i prądu Wifi: 11 kroków (ze zdjęciami)
Wielokanałowy miernik napięcia i prądu Wi-Fi: Podczas wchodzenia na pokład często trzeba jednocześnie monitorować różne części obwodu. Aby uniknąć bólu związanego z przyklejaniem sond multimetru z jednego miejsca do drugiego, chciałem zaprojektować wielokanałowy miernik napięcia i prądu. Płyta Ina260
Regulowany zasilacz prądu stałego za pomocą regulatora napięcia LM317: 10 kroków
Zasilacz prądu stałego o regulowanym napięciu za pomocą regulatora napięcia LM317: W tym projekcie zaprojektowałem prosty zasilacz prądu stałego z regulacją napięcia za pomocą układu LM317 IC ze schematem obwodu zasilania LM317. Ponieważ układ ten ma wbudowany prostownik mostkowy, więc możemy bezpośrednio podłączyć zasilanie 220V/110V AC na wejściu
Tester napięcia i prądu USB!! (wersja 1): 7 kroków
Tester napięcia i prądu USB!! (wersja 1): **NOWA WERSJA JEST JUŻ !!!**https://www.instructables.com/id/USB_Voltage_and_Current_Tester_version_2/Ponieważ czasami trzeba sprawdzić napięcie w portach USB lub jeśli jesteś ciekawy, jakie Aktualny rysunek, który Twoje urządzenia mogą ciągnąć, to
Tester napięcia i prądu USB!! (wersja 2): 7 kroków
Tester napięcia i prądu USB!! (wersja 2): * ZAKTUALIZOWANY ELEMENT Z POPRZEDNIEJ INSTRUKCJI! (https://www.instructables.com/id/USB_Voltage_and_Current_Tester/)Ponieważ czasami trzeba sprawdzić porty USB pod kątem napięcia lub jeśli jesteś ciekawy, jaki rodzaj prądu może być pobierany przez Twoje urządzenia