Távoli P1 mérő (bridge)
Az ADA P1 Meter képes egy másik eszköz P1 adatait is felhasználni saját adatforrásként. Így anélkül tudsz második telephelyet vagy több eszközt egymásba integrálni, hogy mindegyikhez külön P1 kábel kellene.
Mire jó?
Néhány tipikus forgatókönyv:
- Távoli telephely – egy másik épület mérőjének adatait behozod a főépület rendszerébe
- Két darab ADA közös dashboard – az egyik olvassa a P1 portot, a másik megjeleníti
- Tesztelés – fejlesztés alatt egy másik gép által publikált mérésekkel dolgozol
- Redundancia – az egyik offline, a másik automatikusan átvesz
Hogyan működik
Az ADA képes feliratkozni egy MQTT topicra, és onnan olvasni a JSON-t, úgy, mintha saját P1 portja lenne. Az MQTT üzenetek ugyanabban a formátumban vannak, mint amit a /json végpont ad – így egyik ADA publishe egy brókerre, a másik subscribe-ol ott.
Beállítás
A forrás-eszköznek (annak, amelyik a valódi P1 porthoz csatlakozik) publish-elnie kell a saját JSON-jét egy MQTT topicra – ezt automatikusan megteszi az MQTT beállítás után.
A cél-eszközön (annak, amelyik a távoli adatokat akarja használni) engedélyezned kell a Remote P1 funkciót.
MQTT parancs:
{
"m": "SET_REMOTE_P1",
"topic": "ada/data/myuser_ABC123",
"mode": 2,
"interval": 10,
"id": "set1"
}
Paraméterek
| Mező | Jelentés |
|---|---|
topic | A forrás MQTT topicja, amire fel akarsz iratkozni |
mode | A keverési stratégia (lásd lent) |
interval | Mennyire sűrűn használja fel (másodperc, min. 1) |
Módok
| mode | Jelentés |
|---|---|
| 0 | KI – távoli P1 inaktív |
| 1 | Teljes felülírás – a teljes lokális JSON helyett a távoli érkezik |
| 2 | Felülírás az azonosítókon kívül – a saját username, client_id, local_ip megmarad, minden más a távoliból jön |
| 3 | Csak hiányzó kulcsok – a lokális P1 marad, de ha onnan hiányzik egy mező, beírja a távoliból |
A leggyakrabban használt a mode 2, mert így a készülék megtartja a saját azonosságát, de az energiaadatok a másikéból jönnek.
Lekérdezés
A beállítás ellenőrzése:
curl -X POST http://okosvillanyora.local:8989/restart
# majd nézd meg a logokat vagy státusz választ
Vagy MQTT-n:
mosquitto_pub -t 'ada/cmd/<topicKey>' \
-m '{"m":"STATUS_GET","id":"s1"}'
A status objektumban visszajön a remote P1 konfiguráció is.
Kikapcsolás
{
"m": "SET_REMOTE_P1",
"topic": "",
"mode": 0,
"interval": 10,
"id": "off"
}
Gyakoriság és ráta-korlát
Az interval mező szabályozza, milyen sűrűn használod fel a távoli adatokat. Alapértelmezett 10 mp – ha gyakrabban érkeznek üzenetek, a köztesek kihagyásra kerülnek. Ez véd az üzenet-floodtól, ha a forrás-eszköz túl gyakran publikál.
Fontos tudnivalók
- A távoli P1 nem helyettesíti a saját P1 csatlakozást – fizikailag csatlakoztathatsz P1 kábelt is, és akkor mindkettő elérhető (mode 3-nál)
- Az adatok ugyanolyan struktúrájúak, mint a saját
/json– a dashboard, JSON API, szabályok, MQTT, minden működik - A forrás- és cél-eszköznek ugyanarra az MQTT brókerre kell csatlakoznia
- A forrás-eszköznek publisha kell a topicot, amire a cél feliratkozik – ez alapértelmezetten megtörténik, ha az ADA MQTT-re van állítva
- Biztonsági megfontolás: csak megbízható topicot használj forrásként, mert a beérkező adatok kerülnek a saját JSON-odba, és szabályaid azokon alapulnak