Tyvärr stöder din webbläsare inte JavaScript!
Logga in

IAMMETER lägger till stöd för SunSpec Modbus/TCP: modellmappning och integrationsguide

IAMMETER-firmware i.91.065.18 lägger till en skrivskyddad SunSpec-mappning av heltalsbaserade mätarmodeller i den befintliga Modbus/TCP-tjänsten. Den ger programvara som förstår SunSpec-modeller ett standardiserat sätt att identifiera en IAMMETER-mätare och läsa utvalda elektriska värden över det lokala nätverket.

Detta är ett tillägg av ett gränssnitt, inte ett ersättande mätsystem. Mätaren fortsätter att samla in data på samma sätt. Befintliga IAMMETER Modbus-register, HTTP-API, MQTT-nyttolaster och NEM-inställningar är oförändrade.

SunSpec definierar standardiserade informationsmodeller för enheter som kan mappas till Modbus holding-register. Mappningen börjar med en SunS-markör, följd av Common-modellen och enhetsspecifika modeller som en klient kan identifiera genom att läsa varje modell-ID och längd i följd. Specifikationspaketet för SunSpec Modbus dokumenterar mönstret för modellidentifiering, inklusive de 0-baserade positionerna i Modbus-mappningen och reglerna för ej implementerade värden. SunSpec Modbus används i integreringar för distribuerad energi, bland annat mätare, växelriktare och lagringsenheter.

IAMMETER implementerar en fokuserad, skrivskyddad delmängd för mätardata. Denna implementering är inte SunSpec-certifierad. Behandla inte den här funktionen som certifiering, full SunSpec-överensstämmelse eller en garanti för att varje tredjeparts SunSpec-klient kommer att fungera utan konfiguration.

Aktuella modellmappningar i firmware

IAMMETER-mätare SunSpec-heltalsmodell för mätare Elektrisk tolkning
WEM3080 201 Enfas
WEM2067 202 Split phase
WEM3050T 203 Trefas wye (stjärnkoppling)
WEM3080T 203 Trefas wye (stjärnkoppling)
WEM3046T 203 Trefas wye (stjärnkoppling)
WEM3063T 203 Trefas wye (stjärnkoppling)

Dessa rader beskriver de aktuella modellmappningarna i firmware. Den validering på fysiska enheter som rapporteras här omfattar endast WEM3080T; de övriga listade modellerna kräver fortfarande testning på enhet.

För WEM2067 representerar modell 202 en verklig split phase-installation. Den beskriver inte två oberoende enfaskretsar som samma elektriska arrangemang.

Koden för modell 204 har täckning i värdtester, men firmware identifierar och väljer ännu inte automatiskt den för WEM3080TD. Denna artikel gör därför inget anspråk på att modell 204 är tillgänglig. WEM3046TE har inte heller fått någon dedikerad verifiering av modellidentifiering. Den första utgåvan innehåller endast heltalsmodeller: flyttalsmodellerna 211 till 214 är inte tillgängliga.

Vad en klient kan läsa

Heltalsmodellerna för mätare exponerar fasspänning, fasström, fasaktiv effekt, total aktiv effekt, frekvens, faseffektfaktor samt ackumulatorer för importerad/exporterad aktiv energi per fas och totalt. Common-modellen tillhandahåller data för enhetsidentifiering, såsom modell, firmwareversion och serienummer.

Energi representeras i Wh i SunSpec-mappningen; effektfaktor representeras som en procentandel. Punkterna för total energi återanvänder mätarens befintliga totalfält och NEM-semantiken. IAMMETER räknar inte om en trefastotal genom att addera fasackumulatorerna i denna mappning. Eftersom NEM-inställningen påverkar innebörden av dessa ackumulatorer får en klient inte utgå från att total energi alltid är lika med summan av fasernas energi.

Vissa fält saknas avsiktligt i denna första version: reaktiv effekt och reaktiv energi, skenbar effekt och skenbar energi, total effektfaktor för flerfas samt händelseflaggor. Deras standardpositioner finns kvar i modellen och returnerar lämplig markör för otillgängligt värde. En SunSpec-klient måste känna igen otillgängliga värden i stället för att tolka dem som mätvärden.

Tolkningen av spänning spelar roll

Fasvärdena kommer från mätaren. Vissa punkter för linjespänning är härledda för modellmappningen:

  • Linjespänningen i modell 202 är UA + UB.
  • Linjespänningen i modell 203 är en approximation av fasspänningen multiplicerad med √3; den är inte en direkt mätning mellan två linjer. Ett obalanserat system eller avvikelse i fasvinkeln kan ge upphov till fel.

Denna skillnad är viktig för applikationer som behöver en direkt uppmätt spänning mellan två linjer. Kontrollera modellpunktens definition och anslutningsarrangemanget innan ett härlett värde används för styrning eller beslut om efterlevnad.

Anslut med Modbus/TCP

Aktivera mätarens befintliga Modbus/TCP-tjänst och anslut sedan till dess LAN-adress:

Post Inställning
Värd Mätarens LAN-IP-adress
TCP-port 502
Läsfunktion 03 — Read Holding Registers
Startadress för SunSpec 40000
Skrivåtkomst Stöds inte av IAMMETER:s SunSpec-mappning

Adresserna i denna guide är 0-baserade Modbus-begäranadresser. Vissa applikationer visar 1-baserade registernummer, så verifiera deras konvention innan du konfigurerar en läsning; en adress som avviker med ett kommer inte att returnera den förväntade markören.

Använd funktionskod 03 för varje läsning nedan. Registerantalet omfattar modell-ID och längd där så är tillämpligt.

Läsning Startadress (0-baserad) Antal register Förväntat resultat
SunSpec-markör 40000 2 0x5375, 0x6E53 (SunS)
Common-modell 40002 68 Modell-ID 1, längd 66, enhetsinformation
Mätarmodell 40070 107 Modell-ID 201, 202 eller 203, längd 105, mätardata
Slutmarkör 40177 2 Modell-ID 0xFFFF, längd 0

En Modbus-begäran kan läsa högst 125 register, så läs Common-modellen och mätarmodellen separat. Klienter bör identifiera modell-ID:n och längderna i stället för att hårdkoda ett antagande om varje framtida modellsekvens.

Heltalsvärden och skalfaktorer

SunSpec-heltalspunkter använder skalfaktorer. Omvandla ett råheltal med:

faktiskt värde = registerheltal × 10^skalfaktor

Till exempel:

W = 12345
W_SF = 1
faktisk aktiv effekt = 123450 W

Skalfaktorer kan ändras med mätområdet. Läs en komplett mätarmodell i varje pollningscykel så att ett värde och dess skalfaktor kommer från samma svar. Cachelagra inte skalfaktorer på obestämd tid.

Validering och aktuella begränsningar

Valideringen har två separata omfattningar:

  • Validering av implementationen: värdtester godkändes för modellayout, omvandling, spill, skrivskyddat beteende och regressionskontroller för befintliga register. En WEM3080T-testmätare bekräftade identifiering av modell 203 och kontinuerliga läsningar, med spänning och effekt kontrollerade mot de befintliga HTTP- och Modbus-gränssnitten. Andra mätarmodeller och enskilda tredjepartsklienter behöver fortfarande ytterligare fysisk testning.
  • Verifiering av utgivningsfilen: firmware i.91.065.18 byggdes, laddades upp och laddades ned igen för filverifiering. Exakt denna utgivningsfil flashades inte under denna valideringscykel; resultaten för implementationen ovan bör inte tolkas som ett enhetstest av den nedladdade utgivningsfilen.

Firmware innehåller inte den väntande förbättringen av TCP-inramning. Den förväntar sig för närvarande en komplett begäran per mottagningsoperation. Delade eller kombinerade TCP-begäranden kan stänga anslutningen. Skicka en begäran och vänta på svaret innan nästa begäran, samtidigt som du är medveten om att detta inte eliminerar alla risker med TCP-segmentering.

Var detta passar in i en IAMMETER-installation

För val av arkitektur, börja med IAMMETER:s integrations- och egenhostningslösningar. Guiden för lokala API:er och öppna gränssnitt jämför de tillgängliga mätargränssnitten.

Använd SunSpec-mappningen när en lokal klient är byggd för att identifiera och läsa SunSpec-mätarmodeller. Använd den befintliga registermappningen för IAMMETER Modbus/TCP när en applikation behöver IAMMETER-specifika register. Den befintliga lokala Modbus-vägen är fortfarande användbar för integrering av energimätare med Home Assistant, medan HTTP, MQTT och IAMMETER Cloud förblir oberoende alternativ.

Ladda ned firmware: i.91.065.18.bin.

Följ IAMMETER:s instruktioner för firmwareuppdatering och gå igenom din mätarmodell, anslutningsmetod och lokala nätverksåtkomst innan du uppdaterar. Detta är ett skrivskyddat datagränssnitt; det erbjuder inte styrning av växelriktare, skrivoperationer eller något anspråk på fullständig interoperabilitet med tredjeparters SunSpec.

Dela din IAMMETER SunSpec-integration och få 5 000–10 000 Reward Points

Använd riktig utrustning för att läsa IAMMETER-mätardata via SunSpec. Resultat från en simulator är inte giltiga.

Deltagare som tar fram detaljerad integrationsdokumentation och publicerar den i ett offentligt forum kan få 5 000–10 000 Reward Points efter granskning av IAMMETER. Poängnivån beror på dokumentationens kvalitet och fullständighet.

Öppna aktivitetssidan och klicka på Apply för att delta.

Upp