
Shelly EM je jednofázový elektroměr se dvěma nezávislými měřicími kanály a 2A reléovým výstupem pro ovládání stykače. Každý kanál se připojuje k externímu proudovému transformátoru (CT svorce) – dostupnému v 50A a 120A variantách – což umožňuje neinvazivní sledování dvou samostatných obvodů současně. Tato šablona se připojuje k zařízení přes MQTT broker v lokální síti. Cloudové připojení není potřeba.
Šablona vytváří tři zařízení: dva elektroměry (jeden na CT kanál) sledující kumulativní spotřebu energie a spínač pro stykačové relé.
Konfigurace
Device ID
Shelly EM používá Device ID ve formátu shellyem-XXXXXX, kde XXXXXX je posledních 6 znaků MAC adresy v hexadecimálním formátu (např. shellyem-B929CC). Při importu šablony zadejte pouze hexadecimální část (např. B929CC) do parametru Device ID.
Device ID najdete:
- Ve webovém rozhraní Shelly: Settings > Device Info
- Přes API:
GET http://<device-ip>/settings– polemqtt.id
Toto zařízení podporuje mDNS discovery. Místo IP adresy můžete při konfiguraci MQTT brokeru použít hostname
shellyem-{MAC}.local. Nahraďte{MAC}plnou MAC adresou v hexadecimálním formátu (např.shellyem-b929cc.local). Použití hostname předchází problémům s konektivitou při změně IP adresy zařízení.
Nastavení MQTT
Před importem šablony aktivujte MQTT na zařízení Shelly EM:
- Otevřete webové rozhraní Shelly na
http://<device-ip> - Přejděte do Internet & Security > Advanced — Developer Settings
- Zaškrtněte Enable action execution via MQTT
- Do pole Server zadejte adresu MQTT brokeru ve formátu
broker-ip:1883 - Stiskněte SAVE
Na zařízeních Shelly Gen1 aktivace MQTT deaktivuje Shelly Cloud. Obě funkce nemohou běžet současně.
Nastavení šablony
Po importu šablony v TapHome:
- Nastavte MQTT Broker IP na adresu vašeho MQTT brokeru
- Nastavte MQTT Broker Port (výchozí
1883) - Nastavte Device ID na hexadecimální část Device ID zařízení Shelly EM (např.
B929CC)
Modul odebírá topic shellies/# a listener skripty na každém zařízení filtrují zprávy podle nakonfigurovaného Device ID.
Možnosti zařízení
Měření energie (na kanál)
Každý kanál je v TapHome vystaven jako nezávislé zařízení Elektroměr. Listener skript odebírá dva MQTT topicy na kanál:
| Topic | Jednotka | Popis |
|---|---|---|
emeter/{i}/energy | watt-minuty | Kumulativní energie od posledního restartu – dělená 60 000 pro převod na kWh |
emeter/{i}/total | Wh | Trvalá celková spotřebovaná energie – přežije restarty |
Šablona ukládá obě hodnoty: Ed (energie z topicu watt-minut, převedená na kWh) a To (celková spotřeba ve Wh z perzistentního topicu).
Topic
energyse při restartu zařízení vynuluje. Pro trvalé sledování energie šablona čte i topictotal, který přežije restarty.
Každý kanál také vystavuje servisní atribut Napětí, který čte efektivní síťové napětí z MQTT topicu emeter/{i}/voltage.
Skripty
readtotalconsumptionareaddemandjsou zakomentovaný šablonový boilerplate – veškeré údaje o energii přicházejí přes MQTT listener. To znamená, že šablona neposkytuje okamžité odečty výkonu (W). Sleduje se pouze kumulativní energie (kWh) a celková spotřeba (Wh). Okamžitý činný výkon je dostupný přes MQTT topicemeter/{i}/power, ale tato šablona jej neodebírá.
Stykačové relé
Reléový výstup je v TapHome vystaven jako spínač. Relé je dimenzováno na 2A / 230 VAC – je určeno pouze pro ovládání stykače, nikoli pro přímé spínání zátěže.
- Čtení: odebírá topic
shellies/shellyem-{id}/relay/0– payloadon= zapnuto,off= vypnuto - Zápis: publikuje
onnebooffdoshellies/shellyem-{id}/relay/0/command
Relé je dimenzováno pouze na 2A. Pro zátěže překračující tento limit vždy použijte externí stykač. Přímé připojení výkonových zátěží poškodí relé.
Řešení problémů
Žádné údaje o energii
- Ověřte, že MQTT je aktivováno ve webovém rozhraní Shelly (Internet & Security > Advanced – MQTT)
- Zkontrolujte, že adresa a port MQTT brokeru jsou správné v nastavení zařízení Shelly i modulu TapHome
- Zkontrolujte, že vlastní proměnná Device ID přesně odpovídá Device ID zařízení Shelly (např.
B929CC) - Pomocí MQTT klienta (např. MQTT Explorer) odebírejte topic
shellies/#a ověřte, že zařízení publikuje topicyemeter/0/energyaemeter/1/energy
Údaje pouze z jednoho kanálu
- Ověřte, že CT svorka je připojena do správného 3,5mm jacku (kanál 0 nebo kanál 1)
- Zkontrolujte, že měřeným vodičem protéká proud – CT svorka musí obepínat jeden vodič, nikoli celý kabel
- Samostatně odebírejte topicy
shellies/shellyem-{id}/emeter/0/#ashellies/shellyem-{id}/emeter/1/#a ověřte, že oba kanály publikují údaje
Relé nereaguje
- Zkontrolujte, že Shelly EM je napájeno a připojeno k MQTT brokeru
- Manuálně publikujte
onnebooffdoshellies/shellyem-{id}/relay/0/commandpřes MQTT klienta a otestujte funkci relé nezávisle na TapHome - Ověřte správné zapojení reléového výstupu (zkontrolujte označení svorek na zařízení)
Zařízení Shelly Gen1 nepodporují MQTT přes TLS. Komunikace mezi zařízením a MQTT brokerem je nešifrovaná (plain MQTT, port 1883). Ujistěte se, že MQTT broker je v důvěryhodné lokální síti.