TapHome

Shelly EM

Packet Parser → HTTP
Beküldő
Utoljára frissítve: 06. 2026
Shelly EM

A Shelly EM egy egyfázisú energiamérő két független mérőcsatornával és 2A relé kimenettel kontaktor vezérléshez. Minden csatorna egy külső CT (áramváltó) csatlakozóhoz kapcsolódik — 50A és 120A változatban elérhető — ami lehetővé teszi két különálló áramkör egyidejű, nem invazív monitorozását. A TapHome helyi hálózaton integrálódik az eszközzel Wi-Fi-n keresztül, HTTP REST API-n vagy MQTT-n. Nincs szükség felhőkapcsolatra.

Két TapHome sablon áll rendelkezésre: egy HTTP sablon, amely az eszköz REST végpontjait pollozza, és egy MQTT sablon, amely MQTT brókeren keresztül fogadja az adatokat. Mindkettő ugyanazt a három eszközt biztosítja — két energiamérőt (csatornánként egyet) és egy kontaktor kapcsolót.

Konfiguráció

HTTP sablon

A HTTP sablon csak az eszköz IP-címét igényli (vagy mDNS hostnevet). A TapHome 15 másodpercenként három végpontot kérdez le:

  • /emeter/0/ — 1. csatorna energiaadatai
  • /emeter/1/ — 2. csatorna energiaadatai
  • settings/relay/0 — relé állapot és ütemezés ellenőrzés

A modul szintű olvasószkript minden választ saját változóba ment (emeterZero, emeterOne, status), így az egyes eszköz szkriptek redundáns HTTP hívások nélkül dolgozhatják fel az adatokat.

A sablon a settings/relay/0-ból a relé ütemezési állapotát is ellenőrzi. Ha a Shelly eszközön belső ütemezés van engedélyezve, a sablon hibát jelez — tiltsd le az ütemezést a Shelly webes felületén, hogy elkerüld a TapHome automatizálásokkal való ütközést.

MQTT sablon

Az MQTT sablon a bróker IP-jét, portját és a Shelly Device ID-t igényli (formátum: shellyem-XXXXXXXXXXXX, ahol X = MAC hex számjegyek). A Device ID a Shelly webes felületén a Settings > Device Info alatt található.

Az MQTT engedélyezése után a Shelly EM-en (Internet & Security > Advanced — MQTT) a TapHome feliratkozik a shellies/shellyem-{deviceID}/ topicokra és listener szkripteken keresztül fogadja az adatokat.

A Gen1 Shelly eszközökön az MQTT engedélyezése letiltja a Shelly Cloudot. Mindkettő nem futhat egyszerre.

Eszközképességek

Energiamérés (csatornánként)

Minden csatorna független energiamérőként jelenik meg a TapHome-ban:

  • Pillanatnyi teljesítmény — hatásos teljesítmény kW-ban (W-ból átszámítva 1000-rel való osztással)
  • Kumulatív energia — összes felhasznált energia kWh-ban (HTTP: Wh-ból átszámítva; MQTT: a persistens total topicot használja Wh-ban)

A HTTP sablon a power és total mezőket olvassa az /emeter/{i}/ JSON válaszból. Az MQTT sablon az emeter/{i}/energy topicot figyeli (watt-perc, 60 000-rel osztva kWh-hoz) és az emeter/{i}/total topicot (watt-óra, újraindítások között is megmarad).

Az MQTT energy topic az eszköz újraindításakor nullázódik. A persistens energiakövetéshez a sablon a total topicot is olvassa, amely túléli az újraindításokat.

Minden csatorna három szervizattribútumot is biztosít:

AttribútumEgységLeírás
FeszültségVEffektív hálózati feszültség
Visszatáplált energiaWhHálózatba visszatáplált összes energia — napelemes/kétirányú méréshez
Meddő teljesítményVARPillanatnyi meddő teljesítmény

Az MQTT sablon csatornánként csak a feszültséget biztosítja szervizattribútumként. A meddő teljesítmény és a visszatáplált energia csak a HTTP sablonban érhető el.

Kontaktor kapcsoló

A relé kimenet a TapHome-ban kapcsolóként jelenik meg. A relé 2A / 230 VAC névleges terhelésű — kizárólag kontaktor vezérlésre tervezték, nem közvetlen terhelés kapcsolásra.

  • HTTP: a ison mezőt olvassa a settings/relay/0-ból, és a /relay/0?turn=on vagy /relay/0?turn=off parancsokkal vezérli
  • MQTT: a shellies/shellyem-{id}/relay/0 topicról olvas, és on/off üzenetet publikál a shellies/shellyem-{id}/relay/0/command topicra

A relé mindössze 2A névleges terhelésű. Az ezt meghaladó terhelésekhez mindig használj külső kontaktort. Nagy teljesítményű terhelések közvetlen csatlakoztatása tönkreteszi a relét.

További képességek

A Shelly EM emellett teljesítménytényezőt (0,00–1,00) és csatornánkénti mérési érvényességi jelzőt, csatornakonfigurációt (CT arány, maximális teljesítménykorlát), energiaszámláló nullázást, automatikus kikapcsolási időzítőt a relén és Wi-Fi jelerősséget is biztosít. MQTT-n keresztül további topicok is elérhetők valós idejű teljesítményhez, meddő teljesítményhez és visszatáplált energiához csatornánként. Ezek a funkciók egy jövőbeli sablonfrissítésben adhatók hozzá.

Hibaelhárítás

Az eszköz nem válaszol (HTTP)
  1. Ellenőrizd, hogy a Shelly EM csatlakozik a Wi-Fi-hez és érvényes IP-címe van
  2. Nyisd meg a http://{device-ip}/shelly címet böngészőben — ha "type":"SHEM" tartalmú JSON-nal válaszol, az eszköz elérhető
  3. Ellenőrizd, hogy a TapHome CCU és a Shelly EM ugyanazon a hálózaton / VLAN-on van
Nincs adat az egyik csatornán
  1. Ellenőrizd, hogy a CT csatlakozó a megfelelő 3,5 mm-es jackbe van dugva (0. vagy 1. csatorna)
  2. Győződj meg róla, hogy áram folyik a monitorozott vezetéken — a CT csatlakozónak egyetlen vezetéket kell körülvennie, nem a teljes kábelt
  3. Pollozd manuálisan az /emeter/0/ és /emeter/1/ végpontokat, és erősítsd meg a nem nulla power értékeket
MQTT üzenetek nem érkeznek
  1. Erősítsd meg, hogy az MQTT engedélyezve van a Shelly webes felületén (Internet & Security > Advanced — MQTT)
  2. Ellenőrizd, hogy a bróker címe és portja helyes mind a Shelly eszközben, mind a TapHome modul beállításaiban
  3. Ellenőrizd, hogy a deviceID egyéni változó pontosan megegyezik a Shelly Device ID-jával (pl. B929CC)
  4. Használj MQTT klienst (pl. MQTT Explorer) a shellies/# feliratkozáshoz és annak ellenőrzéséhez, hogy az eszköz publikál üzeneteket
Ütemezési konfliktus hiba

A HTTP sablon ellenőrzi a schedule mezőt a settings/relay/0-ban. Ha a Shelly eszközön belső ütemezés van engedélyezve, a sablon hibát jelez. Tiltsd le az ütemezést a Shelly webes felületén (Settings > Relay > Schedule) — használj helyette TapHome automatizálásokat.

A Gen1 Shelly eszközök csak 2 egyidejű HTTP kapcsolatot támogatnak. Ha a TapHome és egy másik rendszer (pl. Home Assistant) egyidejűleg pollozza ugyanazt az eszközt, a kommunikáció megbízhatatlanná válhat. Fontold meg az MQTT sablonra váltást több rendszeres környezetekben.

Telepítés a TapHome-ban

Előfeltételek

  • Shelly eszköz telepítve és bekapcsolva
  • Helyi Wi-Fi hálózat (2,4 GHz)
  • TapHome CCU ugyanazon a hálózaton

1. lépés — Shelly csatlakoztatása a Wi-Fi-hez

A lehetőség — Shelly alkalmazás (ajánlott):

  1. Töltse le a Shelly alkalmazást (iOS / Android)
  2. Érintse meg a +Add Device gombot, és kövesse a Bluetooth párosítási varázslót
  3. Adja meg Wi-Fi hitelesítő adatait, amikor a rendszer kéri

B lehetőség — AP mód (alkalmazás nélkül):

  1. Első bekapcsoláskor az eszköz létrehoz egy hotspotot: ShellyXXX-AABBCCDDEE
  2. Csatlakoztassa telefonját/PC-jét ehhez a hotspothoz
  3. Nyissa meg a http://192.168.33.1 címet → Internet & SecurityWi-Fi Mode - Client
  4. Adja meg az SSID-t és a jelszót → Save

A Shelly csak 2,4 GHz-es hálózatokat támogat. Az 5 GHz-es hálózatok nem jelennek meg a keresésben.

2. lépés — IP-cím megkeresése

A Wi-Fi-hez való csatlakozás után az alábbi módszerek egyikével keresse meg a hozzárendelt IP-címet:

  • Shelly alkalmazás: Eszköz részletei → Device info → IP-cím
  • Shelly webes felület: Csatlakozzon az eszköz AP-jához a Wi-Fi beállítás előtt — az IP a mentés után jelenik meg
  • Router DHCP tábla: Keressen egy hasonló hosztnevet: shelly1pm-AABBCCDDEE
  • mDNS: Pingelje a shelly<model>-<mac>.local címet (pl. shelly1pm-AABBCCDDEE.local) ugyanarról a hálózatról

Rendeljen statikus IP-t (DHCP foglalást) a Shelly eszközhöz a routerben, hogy a cím ne változzon a router újraindítása után.

3. lépés — Konfigurálás a TapHome-ban

  1. A TapHome-ban adjon hozzá egy új Packet Parser (HTTP) modult
  2. IP Address: adja meg a 2. lépésben kapott IP-t (pl. 192.168.1.50)
  3. Port: 80 (alapértelmezett, nem kell módosítani)
  4. Importálja a sablont — a TapHome rendszeresen lekérdezi a /status végpontot az eszköz állapotának olvasásához

A HTTP hitelesítés a Shelly eszközökön alapértelmezetten ki van kapcsolva. Ha engedélyezte a bejelentkezésvédelmet, a TapHome jelenleg nem támogatja a HTTP Basic Auth-ot — a TapHome integrációhoz hagyja kikapcsolva a hitelesítést.

Elérhető eszközök

Shelly EM Modul
Egyéni változók

Shelly EM

Olvasás (modul)
VAR response := SENDHTTPREQUEST("settings/relay/0");
IF response.IsSuccess
 status := response.Content;
 IF PARSEJSON(status, "schedule")
  ADDERROR("Internal scheduling on");
 END
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
 RETURN(NaN);
END
response := SENDHTTPREQUEST("/emeter/0/");
IF response.IsSuccess
 emeterZero := response.Content;
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
 RETURN(NaN);
END
response := SENDHTTPREQUEST("/emeter/1/");
IF response.IsSuccess
 emeterOne := response.Content;
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
 RETURN(NaN);
END
Villamos mérő — 1. csatorna Villanyóra Csak olvasható

Pillanatnyi teljesítmény (kW) és kumulatív energia (kWh) a CT csatlakozóról az 1. csatornán

numeric Egység: kW / kWh json_path
Szerviz attribútumok
Feszültség
Visszatáplált energiaAz 1. csatornán a hálózatba visszatáplált összes energia — napelemes és kétirányú mérési rendszerekhez
Meddő teljesítmény

Villamos mérő — 1. csatorna

Összes fogyasztás olvasása
RETURN(PARSEJSON(emeterZero, "total")/1000);
Igény olvasása
RETURN(PARSEJSON(emeterZero, "power")/1000);
Szerviz attribútumok
Voltage [V]
RETURN(PARSEJSON(emeterZero, "voltage"));
backward [Wh]
RETURN(PARSEJSON(emeterZero, "total_returned"));
reactive [W]
RETURN(PARSEJSON(emeterZero, "reactive"));
Villamos mérő — 2. csatorna Villanyóra Csak olvasható

Pillanatnyi teljesítmény (kW) és kumulatív energia (kWh) a CT csatlakozóról a 2. csatornán

numeric Egység: kW / kWh json_path
Szerviz attribútumok
Feszültség
Visszatáplált energiaA 2. csatornán a hálózatba visszatáplált összes energia — napelemes és kétirányú mérési rendszerekhez
Meddő teljesítmény

Villamos mérő — 2. csatorna

Összes fogyasztás olvasása
RETURN(PARSEJSON(emeterOne, "total")/1000);
Igény olvasása
RETURN(PARSEJSON(emeterOne, "power")/1000);
Szerviz attribútumok
Voltage [V]
RETURN(PARSEJSON(emeterOne, "voltage"));
backward [Wh]
RETURN(PARSEJSON(emeterOne, "total_returned"));
reactive [W]
RETURN(PARSEJSON(emeterOne, "reactive"));
Kontaktor kapcsoló Kapcsoló

2A relé kimenet kontaktor vezérléshez — nem alkalmas közvetlen terhelés kapcsolásra

boolean
Értékek / Állapotok: ON · OFF

Kontaktor kapcsoló

Kapcsoló állapot olvasása
RETURN(PARSEJSON(status, "ison"));
Kapcsoló állapot írása
# Simple HTTP Request:
# VAR response := SENDHTTPREQUEST("/example/set/value=" + St);
VAR response := SENDHTTPREQUEST("/relay/0?turn="+ if(St = 1, "on","off"));
IF response.IsSuccess = false
 ADDERROR(response.StatusCode);
END
# Set Http request method, body and headers
# VAR response := SENDHTTPREQUEST("/example/setValue", "GET", "value=" + St, "header1:value1", "header2:value2", ...);\r
# Or VAR request := HTTPREQUEST("/example/setValue");
# request.Method := "PUT";
# VAR response := SENDHTTPREQUEST(request);
#r
#
# Send TCP, UDP data:
# VAR data1 := "{\"name\":\"John\", \"age\":" + St + "}";
# SENDDATA(data1);
# VAR data2 := TOBYTES("{\"name\":\"John\", \"age\":" + St + "}", "iso-8859-1");
# SENDDATA(data2);
# You can process received TCP or UDP data in the Listener script
#
#
# Upload data to FTP:
# FTPUPLOAD("filePath", "somedata=" + St, "write"); # use "append" mode to append data to existing file
Kapcsolat: Packet Parser → HTTP
Lehetséges fejlesztések (9)
  • Power Factor — Power factor (0.00–1.00) per channel, available in /emeter/{i} and /status response. Not available via MQTT.
  • Measurement Validity — Boolean flag indicating if the measurement is valid. Available per channel in /emeter/{i}.
  • Per-Channel Configuration — CT ratio (ctrafos: 50/120), max_power limit, appliance_type. Could be exposed as service actions.
  • Reset Energy Counters — Resets accumulated energy data for both channels. Available via HTTP GET and MQTT command topic.
  • Auto-off Timer — Auto-off timer in seconds on relay endpoint. Could be added as service action parameter.
  • WiFi Signal Strength — WiFi RSSI in dBm, available in /status response
  • MQTT Real-time Power — Instantaneous power via MQTT (W). MQTT template uses energy+total topics instead.
  • MQTT Reactive Power — Reactive power via MQTT (VAR). HTTP template has it as service attribute, MQTT template does not.
  • MQTT Energy Returned — Energy returned to grid via MQTT (Wh). HTTP template has it as service attribute (backward), MQTT template does not.

Források

Talált problémát ezzel az eszközsablonnal?

Írja meg, mi nem működik, mi hiányzik, vagy hogyan kellene a sablonnak viselkednie. Visszajelzése segít, hogy a katalógus pontos maradjon.

TapHome által hitelesítve

Használni szeretnéd ezt a TapHome Core-odban?

Nyisd meg ezt a sablont az ügyfélportálon, hogy alkalmazd az otthonaid egyikére, vagy készíts egy módosítást és küldd vissza a katalógusba.

Megnyitás a portálon