TapHome

Shelly Pro 3EM

Packet Parser → HTTP
Dodane przez
Ostatnia aktualizacja: 03. 2026
Shelly Pro 3EM

Shelly Pro 3EM to profesjonalny trójfazowy licznik energii na szynę DIN, przeznaczony do współpracy z zewnętrznymi przekładnikami prądowymi. Dostępny jest w trzech wariantach — Pro 3EM (CT 120 A), Pro 3EM-400 (CT 400 A) i Pro 3EM-3CT63 (zintegrowane CT 63 A). Urządzenie łączy się z siecią lokalną przez Wi-Fi lub Ethernet (RJ45) i udostępnia pomiary w czasie rzeczywistym przez API HTTP RPC Gen2+. TapHome odpytuje urządzenie przez HTTP na porcie 80 — połączenie z chmurą nie jest wymagane.

Szablon zawiera jedenaście urządzeń zorganizowanych w dwukierunkowy pomiar energii: czujniki prądu na każdą fazę (L1, L2, L3), liczniki energii From Grid i To Grid dla każdej fazy oraz całkowite liczniki From Grid i To Grid. Urządzenia From Grid śledzą energię pobieraną z sieci, urządzenia To Grid śledzą energię oddawaną z powrotem (np. z paneli fotowoltaicznych) — wartość mocy jest odwrócona, aby eksport był wyświetlany jako liczba dodatnia.

Podłączenie sprzętowe

Shelly Pro 3EM montuje się na standardowej szynie DIN (94 × 19 × 69 mm). Wymaga czterech wejść napięciowych (trzy przewody fazowe + przewód neutralny) przez zaciski śrubowe oraz czterech wejść dla zewnętrznych CT (trzy fazy + neutralny). Zasilanie odbywa się między dowolną fazą a przewodem neutralnym (100–260 V AC, 50/60 Hz).

Główne wskazówki dotyczące okablowania:

  • Wejścia napięciowe: LA, LB, LC (po jednym na fazę) + N (przewód neutralny)
  • Wejścia CT: Trzy CT fazowe + jeden CT neutralny, podłączone do odpowiednich gniazd wejściowych CT
  • Ethernet: Jedno złącze RJ45 do połączenia LAN (przed podłączeniem/odłączeniem kabla LAN odłączyć zasilanie)
  • Przekrój przewodu: 0,5–2,5 mm² (20–14 AWG), długość ściągania izolacji 6–7 mm, maks. moment dokręcania 0,4 Nm

Zewnętrzna ochrona powinna być zaprojektowana na maks. 16 A z charakterystyką B lub C i minimalną zdolnością wyłączania 6 kA. Zakres napięcia roboczego wynosi 100–260 V na fazę.

Konfiguracja

Shelly Pro 3EM łączy się przez Wi-Fi lub Ethernet. Podczas importowania szablonu TapHome wprowadź adres IP urządzenia (domyślny symbol zastępczy 192.168.0.1).

Uwierzytelnianie

TapHome nie obsługuje uwierzytelniania HTTP Digest. Przed dodaniem urządzenia do TapHome upewnij się, że uwierzytelnianie jest wyłączone na urządzeniu Shelly. Można to skonfigurować w interfejsie webowym Shelly w menu Ustawienia → Uwierzytelnianie.

Wybór typu CT

Po podłączeniu przekładników prądowych skonfiguruj typ CT przez interfejs webowy Shelly lub wywołując EM.SetConfig z odpowiednią wartością ct_type. Użyj EM.GetCTTypes, aby wyświetlić listę obsługiwanych typów (zazwyczaj 120A i 400A). Jeśli typ CT nie jest ustawiony, urządzenie zgłasza błąd ct_type_not_set i pomiary nie będą dostępne.

Kalibracja faza-faza

Pro 3EM obsługuje kalibrację kanał-kanał w celu poprawy dokładności pomiaru między fazami. Kalibracja wymaga minimalnego obciążenia 500 W na kanał i trwa około 5 sekund. Użyj EM.PhaseToPhaseCalib do kalibracji i EM.PhaseToPhaseCalibReset do przywrócenia ustawień fabrycznych.

Tryb ECO

Jeśli tryb ECO jest włączony na urządzeniu Shelly, może to powodować przekroczenia limitu czasu komunikacji z powodu 3-sekundowego interwału odpytywania stosowanego przez TapHome. Wyłącz tryb ECO dla niezawodnego działania.

Możliwości urządzenia

Monitorowanie prądu na fazę

Trzy czujniki prądu (L1 Current, L2 Current, L3 Current) raportują chwilową wartość prądu w amperach dla każdej fazy, odczytaną bezpośrednio z pól a_current, b_current i c_current w EM.GetStatus. Są to proste wartości czujnika bez przeliczania jednostek.

Dwukierunkowy pomiar energii na fazę

Każda faza ma dwa urządzenia licznikowe — From Grid i To Grid:

  • L1/L2/L3 From Grid — moc czynna pobierana z sieci (W, przeliczona na kW) i skumulowana energia pobrana z sieci (Wh, przeliczona na kWh). Każde urządzenie From Grid udostępnia również cztery atrybuty serwisowe: Współczynnik mocy, Prąd [A], Napięcie [V] i Łączna energia oddana do sieci [kWh].
  • L1/L2/L3 To Grid — moc czynna oddawana do sieci (W, podzielona przez −1000, aby eksport był wyświetlany jako dodatnie kW) i skumulowana energia zwrócona (Wh, przeliczona na kWh). Urządzenia To Grid nie mają atrybutów serwisowych.

Atrybuty serwisowe urządzeń From Grid zapewniają kompletny obraz na fazę: chwilowy prąd i napięcie, współczynnik mocy do oceny jakości energii oraz licznik energii zwróconej do śledzenia skumulowanego eksportu obok licznika zużycia From Grid.

Całkowity dwukierunkowy pomiar energii

Dwa urządzenia agregujące podsumowują wszystkie trzy fazy:

  • Total From Grid — łączna trójfazowa moc czynna (kW) i całkowita skumulowana energia pobrana z sieci (kWh)
  • Total To Grid — łączna trójfazowa moc zwrócona (kW, odwrócona) i całkowita skumulowana energia oddana do sieci (kWh)

Wszystkie urządzenia używają 3-sekundowego interwału odpytywania odpowiadającego cyklowi odczytu modułu.

Dodatkowe możliwości

Shelly Pro 3EM natywnie udostępnia również moc pozorną na fazę i łączną, pomiar prądu przewodu neutralnego (unikalna cecha modelu Pro — niedostępna w 3EM Gen3), częstotliwość sieci na fazę, łączny prąd we wszystkich fazach oraz diagnostykę modułu (Wi-Fi SSID, adres IP, siła sygnału, adres MAC). Aktualizacja oprogramowania sprzętowego i restart są również dostępne przez API RPC. Wykrywanie błędów kolejności faz i do 60 dni rejestrowania danych z rozdzielczością 1-minutową z eksportem CSV/JSON są obsługiwane natywnie. Te możliwości można dodać w przyszłej aktualizacji szablonu.

Rozwiązywanie problemów

Urządzenie nie odpowiada
  1. Sprawdź, czy Shelly jest podłączone do Wi-Fi lub LAN i ma prawidłowy adres IP
  2. Spróbuj użyć nazwy hosta mDNS (ShellyPro3EM-XXXXXXXXXXXX.local) zamiast adresu IP — adres IP mógł ulec zmianie po odnowieniu DHCP
  3. Otwórz http://{adres-ip-urządzenia}/rpc/Shelly.GetDeviceInfo w przeglądarce — jeśli odpowiada JSON-em, urządzenie jest dostępne
  4. Sprawdź, czy TapHome Core i Shelly są w tej samej sieci / VLAN
Błąd ct_type_not_set

Jeśli komponent EM lub EMData zgłasza błąd ct_type_not_set, typ przekładnika prądowego nie został skonfigurowany. Ustaw typ CT przez interfejs webowy Shelly lub wywołując EM.SetConfig z odpowiednią wartością ct_type. Użyj EM.GetCTTypes, aby wyświetlić listę obsługiwanych typów.

Błąd kolejności faz

Jeśli błąd phase_sequence pojawia się w EM.GetStatus, fazy są podłączone w odwrotnej kolejności (A-C-B zamiast A-B-C). Należy albo podłączyć fazy w prawidłowej kolejności, albo włączyć monitor_phase_sequence w konfiguracji EM, jeśli odwrócona kolejność jest zamierzona.

Ujemne lub zerowe wartości w urządzeniach To Grid

Urządzenia To Grid używają odwróconego przeliczenia (podział przez −1000), aby reprezentować eksport do sieci jako liczbę dodatnią. Jeśli nie ma eksportu (system tylko pobiera energię), wartość mocy To Grid będzie wynosić zero lub będzie ujemna. Jest to oczekiwane zachowanie — urządzenie From Grid śledzi zużycie, urządzenie To Grid śledzi eksport.

Urządzenia Shelly Gen2+/Gen3 obsługują do 6 równoczesnych połączeń HTTP. Każdy system odpytywania (TapHome, Home Assistant itp.) zajmuje połączenia. Unikaj uruchamiania zbyt wielu integracji na tym samym urządzeniu jednocześnie.

Jak zainstalować w TapHome

Wymagania wstępne

  • Urządzenie Shelly zainstalowane i włączone
  • Lokalna sieć Wi-Fi (2,4 GHz)
  • TapHome CCU w tej samej sieci

Krok 1 — Podłącz Shelly do Wi-Fi

Opcja A — Aplikacja Shelly (zalecana):

  1. Pobierz aplikację Shelly (iOS / Android)
  2. Dotknij +Add Device i postępuj zgodnie z kreatorem parowania Bluetooth
  3. Wprowadź dane logowania Wi-Fi, gdy zostaniesz o to poproszony

Opcja B — Tryb AP (bez aplikacji):

  1. Przy pierwszym uruchomieniu urządzenie tworzy hotspot: ShellyXXX-AABBCCDDEE
  2. Połącz telefon/PC z tym hotspotem
  3. Otwórz http://192.168.33.1Internet & SecurityWi-Fi Mode - Client
  4. Wprowadź SSID i hasło → Save

Shelly obsługuje tylko sieci 2,4 GHz. Sieci 5 GHz nie pojawią się podczas skanowania.

Krok 2 — Znajdź adres IP

Po połączeniu z Wi-Fi znajdź przypisany adres IP za pomocą jednej z poniższych metod:

  • Aplikacja Shelly: Szczegóły urządzenia → Device info → Adres IP
  • Interfejs webowy Shelly: Połącz się z AP urządzenia przed konfiguracją Wi-Fi — IP zostanie wyświetlone po zapisaniu
  • Tabela DHCP routera: Szukaj nazwy hosta takiej jak shelly1pm-AABBCCDDEE
  • mDNS: Pinguj shelly<model>-<mac>.local (np. shelly1pm-AABBCCDDEE.local) z tej samej sieci

Przypisz urządzeniu Shelly statyczny IP (rezerwację DHCP) w routerze, aby adres nie zmieniał się po ponownym uruchomieniu routera.

Krok 3 — Konfiguracja w TapHome

  1. W TapHome dodaj nowy moduł Packet Parser (HTTP)
  2. IP Address: wprowadź IP z kroku 2 (np. 192.168.1.50)
  3. Port: 80 (domyślny, nie wymaga zmiany)
  4. Zaimportuj szablon — TapHome będzie okresowo odpytywać /status w celu odczytu stanu urządzenia

Uwierzytelnianie HTTP jest domyślnie wyłączone na urządzeniach Shelly. Jeśli włączyłeś ochronę logowaniem, TapHome obecnie nie obsługuje HTTP Basic Auth — pozostaw uwierzytelnianie wyłączone dla integracji z TapHome.

Dostępne urządzenia

Shelly Pro 3 EM Moduł
Zmienne niestandardowe

Shelly Pro 3 EM

Odczyt (moduł)
VAR response := SENDHTTPREQUEST("/rpc/EM.GetStatus?id=0");
IF response.IsSuccess
    EMStatus := response.Content;
END;

response := SENDHTTPREQUEST("/rpc/EMData.GetStatus?id=0");
IF response.IsSuccess
    EMDataStatus := response.Content;
END
L1 Prąd Zmienna Tylko do odczytu
numeric Jednostka: A json_path

L1 Prąd

Odczyt
todouble(PARSEjson(EMStatus, "a_current"))
L1 From Grid Licznik energii Tylko do odczytu

Moc czynna fazy A (kW) i skumulowana energia pobrana z sieci (kWh), z napięciem, prądem, współczynnikiem mocy i energią oddaną

numeric Jednostka: kW / kWh json_path
Atrybuty serwisowe
Współczynnik mocy
Prąd
Napięcie
Łączna energia oddana do sieciSkumulowana energia zwrócona (eksportowana) fazy A w kWh

L1 From Grid

Odczyt całkowitego zużycia
todouble(PARSEjson(EMDataStatus, "a_total_act_energy"))/1000
Odczyt zapotrzebowania
todouble(PARSEjson(EMStatus, "a_act_power"))/1000
Atrybuty serwisowe
power factor
RETURN(todouble(PARSEjson(EMStatus, "a_pf")));
Current [A]
RETURN(todouble(PARSEjson(EMStatus, "a_current")));
voltage [V]
RETURN(todouble(PARSEjson(EMStatus, "a_voltage")));
Total returned energy [kWh]
RETURN(todouble(PARSEjson(EMDataStatus, "a_total_act_ret_energy"))/1000);
L1 To Grid Licznik energii Tylko do odczytu

Moc zwrócona fazy A (kW, odwrócona) i skumulowana energia oddana do sieci (kWh)

numeric Jednostka: kW / kWh json_path

L1 To Grid

Odczyt całkowitego zużycia
todouble(PARSEjson(EMDataStatus, "a_total_act_ret_energy"))/1000
Odczyt zapotrzebowania
todouble(PARSEjson(EMStatus, "a_act_power"))/-1000
L2 Prąd Zmienna Tylko do odczytu
numeric Jednostka: A json_path

L2 Prąd

Odczyt
todouble(PARSEjson(EMStatus, "b_current"))
L2 From Grid Licznik energii Tylko do odczytu

Moc czynna fazy B (kW) i skumulowana energia pobrana z sieci (kWh), z napięciem, prądem, współczynnikiem mocy i energią oddaną

numeric Jednostka: kW / kWh json_path
Atrybuty serwisowe
Współczynnik mocy
Prąd
Napięcie
Łączna energia oddana do sieciSkumulowana energia zwrócona (eksportowana) fazy B w kWh

L2 From Grid

Odczyt całkowitego zużycia
todouble(PARSEjson(EMDataStatus, "b_total_act_energy"))/1000
Odczyt zapotrzebowania
todouble(PARSEjson(EMStatus, "b_act_power"))/1000
Atrybuty serwisowe
power factor
RETURN(todouble(PARSEjson(EMStatus, "b_pf")));
current [A[
RETURN(todouble(PARSEjson(EMStatus, "b_current")));
voltage [V]
RETURN(todouble(PARSEjson(EMStatus, "b_voltage")));
total returned energy [kWh]
RETURN(todouble(PARSEjson(EMDataStatus, "b_total_act_ret_energy"))/1000);
L2 To Grid Licznik energii Tylko do odczytu

Moc zwrócona fazy B (kW, odwrócona) i skumulowana energia oddana do sieci (kWh)

numeric Jednostka: kW / kWh json_path

L2 To Grid

Odczyt całkowitego zużycia
todouble(PARSEjson(EMDataStatus, "b_total_act_ret_energy"))/1000
Odczyt zapotrzebowania
todouble(PARSEjson(EMStatus, "b_act_power"))/-1000
L3 Prąd Zmienna Tylko do odczytu
numeric Jednostka: A json_path

L3 Prąd

Odczyt
todouble(PARSEjson(EMStatus, "c_current"))
L3 From Grid Licznik energii Tylko do odczytu

Moc czynna fazy C (kW) i skumulowana energia pobrana z sieci (kWh), z napięciem, prądem, współczynnikiem mocy i energią oddaną

numeric Jednostka: kW / kWh json_path
Atrybuty serwisowe
Współczynnik mocy
Prąd
Napięcie
Łączna energia oddana do sieciSkumulowana energia zwrócona (eksportowana) fazy C w kWh

L3 From Grid

Odczyt całkowitego zużycia
todouble(PARSEjson(EMDataStatus, "c_total_act_energy"))/1000
Odczyt zapotrzebowania
todouble(PARSEjson(EMStatus, "c_act_power"))/1000
Atrybuty serwisowe
power factor
RETURN(todouble(PARSEjson(EMStatus, "c_pf")));
current [A]
RETURN(todouble(PARSEjson(EMStatus, "c_current")));
voltage [V]
RETURN(todouble(PARSEjson(EMStatus, "c_voltage")));
Total returned energy [kWh]
RETURN(todouble(PARSEjson(EMDataStatus, "c_total_act_ret_energy"))/1000);
L3 To Grid Licznik energii Tylko do odczytu

Moc zwrócona fazy C (kW, odwrócona) i skumulowana energia oddana do sieci (kWh)

numeric Jednostka: kW / kWh json_path

L3 To Grid

Odczyt całkowitego zużycia
todouble(PARSEjson(EMDataStatus, "c_total_act_ret_energy"))/1000
Odczyt zapotrzebowania
todouble(PARSEjson(EMStatus, "c_act_power"))/-1000
Total From Grid Licznik energii Tylko do odczytu

Łączna trójfazowa moc czynna (kW) i całkowita skumulowana energia pobrana z sieci (kWh)

numeric Jednostka: kW / kWh json_path

Total From Grid

Odczyt całkowitego zużycia
todouble(PARSEjson(EMDataStatus, "total_act"))/1000
Odczyt zapotrzebowania
todouble(PARSEjson(EMStatus, "total_act_power"))/1000
Total To Grid Licznik energii Tylko do odczytu

Łączna trójfazowa moc zwrócona (kW, odwrócona) i całkowita skumulowana energia oddana do sieci (kWh)

numeric Jednostka: kW / kWh json_path

Total To Grid

Odczyt całkowitego zużycia
todouble(PARSEjson(EMDataStatus, "total_act_ret"))/1000
Odczyt zapotrzebowania
todouble(PARSEjson(EMStatus, "total_act_power"))/-1000
Połączenie: Packet Parser → HTTP
Możliwe ulepszenia (14)
  • Phase A Apparent Power — Apparent power in VA, available per phase — could complement active power
  • Total Apparent Power — Sum of apparent power on all phases [VA]
  • Neutral Current — Current on neutral conductor [A] — Pro 3EM supports this (unlike 3EM Gen3)
  • Grid Frequency — Network frequency in Hz, available per phase — not exposed as device or SA
  • Total Current — Sum of current on all three phases [A]
  • MAC Address — No module-level service attributes in this template (unlike 3EM Gen3)
  • WiFi SSID — No module-level service attributes in this template (unlike 3EM Gen3)
  • Signal Strength — WiFi RSSI in dBm — not polled by module readscript
  • Firmware Update — No module-level service actions in this template (unlike 3EM Gen3)
  • Reboot — No module-level service actions in this template (unlike 3EM Gen3)
  • Uptime — Seconds since last reboot
  • Free RAM — Available RAM in bytes
  • Total Returned Energy (dedicated) — Already implemented as Total To Grid device (readtotalconsumption), listed for completeness
  • Phase Sequence Monitoring — Enable/disable phase sequence error detection via EM.SetConfig

Źródła