P1 poort slimme meter (hardware)

slimme meter cartoon

Wat is een P1 poort?
De P1 poort is een seriele poort (is optioneel) op je digitale elektra meter waarin je een RJ (Registered Jack) stekkertje kan steken (bekend van de telefoonaansluitingen) om zo de meterstanden en het verbruik uit te lezen. Het is niet mogelijk om gegevens naar de poort te sturen!
Onderaan deze pagina heb ik de informatiebladen “Dutch Smart Meter Requirements” (DSMR) toegevoegd.

Niet standaard (zie DSMR v4.04, Hfdst 4.6 “signals”)
Deze seriele poort is echter niet standaard, ondanks dat hij op UART TTL niveau werkt, zijn de logische waarden omgedraaid: 1=0 en 0=1 ,dit is softwarematig op te lossen, maar geeft niet altijd het gewenste resultaat, oplossing is om dit hardwarematig te doen, bijvoorbeeld met een chip ertussen te plaatsen vaak wordt een MAX232 of 7404 gebruikt.
Volgens de specificatie kan de poort max. 15v aan, dus een echt RS232 signaal (+12v) vanuit een “echte” com poort moet hij aan kunnen.

Signaalniveaus

VoltageLogische waarde
>4v (max. 15v)0
<4v1

Stekker voor de P1 poort.
Het stekkertje dat je in de P1 poort kan steken is het type RJ11 6P4C of 6P6C, het formaat ook wel bekend van de “oude” telefoonaansluitingen, met 6 pins (6P6C) kan je ook 5V DC gebruiken vanuit de P1 poort:

RJ11_stekker

Schematische voorstelling P1 poort (ESMRv5.0 P1)

Meter pinouts

– Iskra ME 382 en MT 382 pinout
Kaifa MA105 en MA304 pinout
– Kamstrup 162, 382 en 351 pinout
– Landis + Gyr E350 pinoutPin 1 en 6 met DSMR 2.2:
Ps. Volgens de documentatie DSMR 2.2 is pin 1 & 6 oorspronkelijk bedoelt om de seriële hardware interface van de P1 poort te voeden, maar dit wordt vanuit de meter (intern) al gevoed (om eventuele kortsluiting door gebruikers te voorkomen?), daarom zijn ze vervallen!

DSMR 2.2 p1 signalen

Pin 1 en 6 met DSMR 4.0 / ESMR 5.0:
Pin 1 en 6 worden gebruikt om uitleesapparatuur van de P1 poort te voeden, er staat een spanning op van +5v

DSMR 4.x bepaalt namelijk dat de slimme meter 5v, 100mA moet kunnen leveren op pinnen 1 en 6 van de P1 poort.
“De voeding in de slimme meter is uitgevoerd met een stroombegrenzingschakeling. Uit betrouwbare bron heb ik dat deze terugschakelt naar 50mA wanneer de belasting boven de 100mA komt om weer terug te schakelen naar 100 mA wanneer de ‘kortsluit’ conditie is opgeheven. Het klinkt alsof er een Fairchild FPF 2000 achtige load switch is opgenomen in de meter. ”
Bron @ Tweakers

DSMR 4.0 p1 signalen


Hoe data uit te lezen?

De P1 poort stuurt alleen maar data als de RTS pin is voorzien van >+5v ten opzichte van de GND (-), zolang de spanning daarop blijft staan wordt er elke 10 seconden een “telegram” verzonden op de TxD

Echter om de seriele data goed te ontvangen is deze instelling van de P1 poort ook niet standaard (9600 8N1) maar heeft deze instelling:

DSMR 2.2
9600 7E1:
Baudrate = 9600
Data bits = 7
Parity = Even
Stop bits = 1

DSMR 4.0/4.2?
115200 8N1:
Baudrate = 115200
Data bits = 8
Parity = None
Stop bits = 1

Kijk op deze pagina hoe je een P1 poort kan uitlezen met behulp van een Arduino.

Instellingen gevonden op het internet hier en daar (heb je wijzigingen?, stuur een mailtje):

Merk:Model:Type:Uitvoering P1 poort:DSMR/EMSR versie:Seriële instellingen:Geïnverteerd signaal?P1 telegram header:
IskraME 3821-fase kleinverbruikRJ11 6P6CDSMR 2.29600 7E1Ja/ISk5\
IskraMT 3823-fase kleinverbruikRJ11 6P6CDSMR 2.29600 7E1Ja/ISk5\
IskraAM 5503-fase kleinverbruikRJ11 6P6C
(geen 5v voeding aanwezig op pin 1 en 6)
ESMR 5.0115200 8N1Ja/ISK5\
KaifaE00033-fase kleinverbruikRJ11 6P6CDSMR 4?115200 8N1JaKFM5
KFM5KAIFA-METER
KaifaE00251-fase kleinverbruikRJ11 6P6CDSMR 4115200 8N1Ja/KFM5
KaifaMA1051-fase kleinverbruikRJ11 6P6CDSMR 4.0 (4.0.5 / 4.0.7)115200 8N1Ja/KFM5
KaifaMA105C1-fase kleinverbruikRJ11 6P6CDSMR 4.2.2115200 8N1?Ja?/KFM5
KaifaMA3043-fase kleinverbruikRJ11 6P6CDSMR 4.0 (4.0.5 / 4.0.7)115200 8N1Ja/KFM5
KaifaMA304C3-fase kleinverbruikRJ11 6P6CDSMR 4.2.2115200 8N1?Ja?/KFM5
Kamstrup1621-fase kleinverbruikRJ11 6P4CDSMR 2.29600 7E1Ja/KMP5
Kamstrup3513-fase (ext. stroom spoelen)RJ11 6P6CDSMR 2.29600 7E1Ja/KMP5
Kamstrup3823-fase kleinverbruikRJ11 6P4CDSMR 2.29600 7E1Ja/KMP5
Landis + GyrE350 (ZCF100)1-fase kleinverbruikRJ11 6P6CDSMR 4.0115200 8N1Ja?/XMX5LG
Landis + GyrE350 (ZCF100)1-fase kleinverbruikRJ11 6P6CDSMR 4.2115200 7E1Ja/XMX5LG
Landis + GyrE350 (ZCF110)1-fase kleinverbruikRJ11 6P6CDSMR 4.2115200 8N1Zie mailtip onder/XMX5LG
Landis + GyrE350 (ZCF120ABdFs2)1-fase kleinverbruikRJ11 6P6CDSMR 2.29600 7E1Ja/XMX5XMXABCE000012345
Landis + GyrE350 (ZFF100)3-fase (3-aderig) kleinverbruikRJ11 6P6CDSMR 4.0115200 8N1Ja?/XMX5LG
Landis + GyrE350 (ZMF100)1-fase / 3-fase (4-aderig) kleinverbruikRJ11 6P6CDSMR 4.0115200 8N1Ja?/XMX5LG
Landis + GyrE360 (T11142)1-fase / 3-fase (4-aderig) kleinverbruikRJ11 6P6CESMR 5.0115200 8N1Ja/XMX5LG
SagemcomT210-D ESMR53-faseRJ11 6P6CESMR 5.0115200 8N1Ja/Ene5

Geen gegevens/telegram?, probeer eens een weerstandje!

*Mailtip* van Dhr. Lourens:
De Landis + Gyr, E350 (ZCF110) werkt zonder een inverter nodig te hebben. Deze meter heeft een open collector en met een weerstandje van 1kOhm van een 3.3V voeding kan je rechtstreeks de data uitlezen met een 3.3V seriele poort. De RTS heeft 5V nodig maar het werkt ook met 6V goed (to nu toe).

*Mailtip* van Dhr. Bouwstra
Mijn meter, de Landis + Gyr E350 DSMR 4.2 heeft een open collector uitgang om deze meter werkend te krijgen moet je een 1kOhm weerstand tussem de Vcc en RxD pin plaatsen.
Deze info heb ik gevonden op: domoticaforum.eu

*Mailtip* van Dhr. Otten
Voor wat betreft de CRC (de 4 hex waarden achter het “!”)
CRC is a CRC16 value calculated over the preceding characters in the data message
(from “/” to “!” using the polynomial: x16+x15+x2+1).
CRC16 uses no XOR in, no XOR out and is computed with least significant bit first.
The value is represented as 4 hexadecimal characters (MSB first).

*Mailtip* van Dhr. Jacobs
De Sagemcom T210-D is ook een open collector.
Met een 2kOhm weerstand tussen TX en +5V functioneert het uitlezen van telegrammen met een 1,8 meter lange kabel.
Het functioneert ook met die 2 kilo-ohm tussen TX en RTS als je dat gebruikt om softwarematig het zenden van telegrammen te starten en stoppen.

*Mailtip* van Dhr. Reinier
Merk: Landis Gyr
Model: E350 ZCF120ABdFs2
Op de meter zit een sticker met XMXABCE000012345 dus de header is een mix van meter model identifier en een unieke meter ID.

  • Er staat een aantal verschillende opmerkingen over het gebruik van pull-up weerstanden op de pagina. Vanuit de DSMR specificaties is hier ook een richtlijn voor, maar niet expliciet.

Vanaf de DSMR 2.2 spec wordt vermeld dat de maximale sink current van de output 30mA is. Er wordt echter vanaf versie 4.0 een typische waarde van 5mA opgegeven, die bij 5V een minimale weerstand van 1kΩ oplevert. Alles tussen de 1kΩ en 100kΩ zal dus prima werken. Hoger misschien ook, maar dat weet ik niet zeker.

  • Als laatste: op de pagina staat een citaat van circuitsonline, over dat DSMR 4.0 / ESMR 5.0 meters 100mA uit de P1 poort kunnen leveren. Dit klopt, met als toevoeging dat vanaf versie 5.0 geen 100mA maar 250mA beschikbaar is.

Hoe zien de telegrammen eruit?

Hieronder zie je een voorbeeld van de telegrammen die elke 10 seconden verstuurd worden.

 


In de DSMR documentatie vind je wat de “codes” betekenen:

Value OBIS

reference

Attribute Class ID Value Format Value Unit
Header information Manufacturer specific
Version information

for P1 output

1-3:0.2.8.255 2 1

Data

S2, tag 9
Date-time stamp of

the P1 message

0-0:1.0.0.255 2 8 TST YYMMDDhhmm

ssX

Equipment identifier 0-0:96.1.1.255 2

Value

1

Data

Sn (n=0..96), tag 9
Meter Reading electricity delivered to client (Tariff 1) in

0,001 kWh

1-0:1.8.1.255 2

Value

3

Register

F9(3,3), tag 6 kWh
Meter Reading electricity delivered to client (Tariff 2) in

0,001 kWh

1-0:1.8.2.255 2

Value

3

Register

F9(3,3), tag 6 kWh
Meter Reading electricity delivered by client (Tariff 1) in

0,001 kWh

1-0:2.8.1.255 2

Value

3

Register

F9(3,3), tag 6 kWh
Meter Reading electricity delivered by client (Tariff 2) in

0,001 kWh

1-0:2.8.2.255 2

Value

3

Register

F9(3,3), tag 6 kWh
Tariff indicator elec- tricity. The tariff in- dicator can also be used to switch tariff dependent loads

e.g boilers. This is

the responsibility of the P1 user

0-0:96.14.0.255 2

Value

1

Data

S4, tag 9
Actual electricity power delivered (+P) in 1 Watt reso-

lution

1-0:1.7.0.255 2

Value

3

Register

F5(3,3), tag 18 kW
Actual electricity power received (-P)

in 1 Watt resolution

1-0:2.7.0.255 2

Value

3

Register

F5(3,3), tag 18 kW
Number of power

failures in any phase

0-0:96.7.21.255 2

Value

1

Data

F5(0,0), tag 18

 

Value OBIS

reference

Attribute Class ID Value Format Value Unit
Number of long power failures in

any phase

0-0:96.7.9.255 2

Value

1

Data

F5(0,0), tag 18
Power Failure Event Log (long power failures) 1-0:99.97.0.255 2

Buffer

7

Profile Ge- neric

TST, F10(0,0) – tag 6

Format applicable for the value within the log (OBIS code 0-

0:96.7.19.255)

Timestamp (end of failure) – duration in se- conds
Number of voltage

sags in phase L1

1-0:32.32.0.255 2

Value

1

Data

F5(0,0), tag 18
Number of voltage

sags in phase L2

1-0:52.32.0.255 2

Value

1

Data

F5(0,0), tag 18
Number of voltage

sags in phase L3

1-0:72.32.0.255 2

Value

1

Data

F5(0,0), tag 18
Number of voltage

swells in phase L1

1-0:32.36.0.255 2

Value

1

Data

F5(0,0), tag 18
Number of voltage

swells in phase L2

1-0:52.36.0.255 2

Value

1

Data

F5(0,0), tag 18
Number of voltage

swells in phase L3

1-0:72.36.0.255 2

Value

1

Data

F5(0,0), tag 18
Text message max

1024 characters.

0-0:96.13.0.255 2

Value

1

Data

Sn (n=0..2048), tag 9
Instantaneous volt-

age L1 in V resolu- tion

1-0:32.7.0.255 2

Value

3

Register

F4(1,1), tag 18 V
Instantaneous volt- age L2 in V resolu-

tion

1-0:52.7.0.255 2

Value

3

Register

F4(1,1), tag 18 V
Instantaneous volt- age L3 in V resolu-

tion

1-0:72.7.0.255 2

Value

3

Register

F4(1,1), tag 18 V
Instantaneous cur- rent L1 in A resolu-

tion.

1-0:31.7.0.255 2

Value

3

Register

F3(0,0), tag 18 A
Instantaneous cur- rent L2 in A resolu-

tion.

1-0:51.7.0.255 2

Value

3

Register

F3(0,0), tag 18 A
Instantaneous cur- rent L3 in A resolu-

tion.

1-0:71.7.0.255 2

Value

3

Register

F3(0,0), tag 18 A
Instantaneous ac- 1-0:21.7.0.255 2 3 F5(3,3), tag 18 kW

 

Value OBIS

reference

Attribute Class ID Value Format Value Unit
tive power L1 (+P)

in W resolution

Value Register
Instantaneous ac-

tive power L2 (+P) in W resolution

1-0:41.7.0.255 2

Value

3

Register

F5(3,3), tag 18 kW
Instantaneous ac-

tive power L3 (+P) in W resolution

1-0:61.7.0.255 2

Value

3

Register

F5(3,3), tag 18 kW
Instantaneous ac-

tive power L1 (-P) in W resolution

1-0:22.7.0.255 2

Value

3

Register

F5(3,3), tag 18 kW
Instantaneous ac- tive power L2 (-P) in

W resolution

1-0:42.7.0.255 2

Value

3

Register

F5(3,3), tag 18 kW
Instantaneous ac- tive power L3 (-P) in

W resolution

1-0:62.7.0.255 2

Value

3

Register

F5(3,3), tag 18 kW
Device-Type 0-n:24.1.0.255 9

Device type

72

M-Bus cli- ent

F3(0,0), tag 17
Equipment identifier

(Gas)

0-n:96.1.0.255 2

Value

1

Data

Sn (n=0..96), tag 9
Last 5-minute value (temperature con- verted), gas deliv- ered to client in m3, including decimal values and capture time 0-n:24.2.1.255 5

Capture time

4

Extended Register

TST
0-n:24.2.1.255 2

Value

4

Extended Register

F8(2,2)/F8(3,3), tag 18

(See note 2)

m3
Device-Type 0-n:24.1.0.255 9

Device type

72

M-Bus cli- ent

F3(0,0), tag 17
Equipment identifier (Thermal: Heat or

Cold)

0-n:96.1.0.255 2

Value

1

Data

Sn (n=0..96), tag 9
Last 5-minute Meter reading Heat or Cold in 0,01 GJ and capture time 0-n:24.2.1.255 5

Capture time

4

Extended Register

TST
0-n:24.2.1.255 2 4 Fn(2,2) GJ

 

Value OBIS

reference

Attribute Class ID Value Format Value Unit
Value Extended

Register

(See note 1)
Device-Type 0-n:24.1.0.255 9

Device type

72

M-Bus cli- ent

F3(0,0), tag 17
Equipment identifier

(Water)

0-n:96.1.0.255 2

Value

1

Data

Sn (n=0..96), tag 9
Last 5-minute Meter reading in 0,001 m3 and capture time 0-n:24.2.1.255 5

Capture time

4

Extended Register

TST
0-n:24.2.1.255 2

Value

4

Extended Register

Fn(3,3)

(See Note 1)

m3
Device-Type 0-n:24.1.0.255 9

Device type

72

M-Bus cli- ent

F3(0,0), tag 17
Equipment identifier 0-n:96.1.0.255 2

Value

1

Data

Sn (n=0..96), tag 9
Last 5-minute Meter reading and capture time (e.g. slave E meter) 0-n:24.2.1.255 5

Capture time

4

Extended Register

TST
0-n:24.2.1.255 2

Value

4

Extended Register

Fn(3,3)

(See Note 1)

kWh

Bronnen:
“Dutch Smart Meter Requirements” (netbeheer nederland)