Drift
Tabell 2. Viktiga inställningar för att styra mätdata avläsningar och överföringar
|
LwM2M-resurs |
Inställning |
Beskrivning |
|---|---|---|
|
33906/./17 |
Meter Report Interval |
Intervall i minuter. Anger hur ofta modulen läser och lagrar värden från mätaren. Ett kort rapportintervall innebär att mätaren läses ofta, vilket innebär att en högre datagranularitet kan uppnås. Mätardata lagras kontinuerligt i icke-flyktigt minne och kan raderas genom att göra en fabriksåterställning. Om minnet är fullt kommer de äldsta uppgifterna att ersättas med den nyaste. |
|
33906/./18 |
Meter Transmit Interval |
Intervall i minuter. Anger hur ofta modulen skickar data till det mottagande systemet. Ett kort sändningsintervall innebär att modulen skickar data oftare, vilket gör att systemet kan hämta data från nyare mätaravläsningar. |
|
33906/./1 |
Report data encoding |
Anger hur data kodas före överföring. Välj det alternativ som bäst passar mottagningssystemet och andra krav |
Tips
Att överföra data är en mycket mer energikrävande operation än att läsa av mätaren. För batteridrivna enheter är det därför klokt att ställa in ett längre sändningsintervall än rapportintervall för att uppnå en lämplig dataupplösning.
Mätardata kan överföras med antingen MQTT-SN eller LwM2M Send. Protokollen kan inte användas samtidigt, men de kan konfigureras via LwM2M eller Elvaco OTC-appen. Innehållet i överförda data är detsamma oavsett vilket transportprotokoll som väljs. När en överföring av mätardata är schemalagd definieras de data som skickas av det valda meddelandeformatet. Om det finns mätardata i modulen som inte har skickats överförs de enligt den valda återställningsstrategin (First in First out (FiFo) eller Last in First out (LiFo)).
När du använder MQTT-SN publiceras mätardatameddelanden till ett MQTT-SN-topic. Topic kan konfigureras på distans med hjälp av LwM2M-resursen 33905/./11, eller via Elvaco OTC-appen.
Modulen förlitar sig på mätarens klocka för att hålla tiden. Tiden i mätaren antas vara i lokal lokal tid (ingen sommartid). Vid synkronisering av tid i mätaren med Elvaco OTC-appen används alltid lokal standardtid, även om sommartid är i kraft. Den tidsstämplade mätardata som skickas från modulen kan justeras för att skickas i UTC genom att specificera konfigurationsparametern "UTC offset". UTC-offset kommer att subtraheras från tidsstämpeln före sändning. Om mätaren är i Sverige, som använder CET (Central European Time), bör den ha UTC-offset satt till +60 (+1h). I detta fall skickas kl 12.00 ett telegram med tidsstämpel 11.00 då detta är motsvarande UTC-tid. En mätare i New York (USA) bör ha en UTC-offset på "-300" (-5h) etc. En UTC-offset på "0" betyder att mätartiden används som den är.
Om mätaren är inställd på använd sommartid ignoreras detta av modulen och standardtiden används. Det kan alltså hända att tiden på mätarens display inte matchar tiden i telegrammet eller i Elvaco OTC-appen.
Alla scheman är baserade på en synkronisering med en klocka. Detta indikerar att om ett avläsningsschema på 60 minuter används synkroniseras det ovanpå timmen, så 11:00, 12:00, 13:00 etc. 120 minuter ger 12:00, 14:00, 16:00 etc. När tiden i modulen (eller mätaren) synkroniseras sker en omplanering så att nästa mätaravläsning görs enligt en uppdaterad tid. Synkronisering av mätarklockan kan göras på olika sätt, antingen periodiskt (automatiskt) eller manuellt. Det rekommenderas att använda ett periodiskt tillvägagångssätt för att undvika risken att klockan driver för mycket (hamnar ur synk).
Alternativ för manuell synkronisering
-
Över NFC med Elvaco OTC App
-
Över LwM2m via resurs
3/./13 -
Ställa in mätarklockan i mätaren
För att hantera fallet där en tidssynkronisering "flyttar tiden" förbi en tidigare planerad avläsning (som 23.58 → 00.02) kommer modulen alltid att göra en avläsning och sändning av ett nytt värde när tiden är synkroniserad. Enheten kommer därför att skicka en extra avläsning som kan maskeras på serversidan.
För att förhindra att många enheter sänder data på exakt samma tid har enheterna en slumpmässig fördröjning innan de överför data. Fördröjningen kan konfigureras via antingen Elvaco OTC-appen och NFC-gränssnittet, eller på distans via ett enhetshanteringssystem.
Avläsningar från mätaren görs alltid varje hel timme, till exempel 11.00 och 13.00. Överföringar kan utföras vid andra tidpunkter men planeras till hela timmar utifrån ett angivet överföringsintervall (Ttransmit). Bilden nedan illustrerar detta. Överföringarna planeras vid tidpunkten T1. Det faktiska Ttransmit är en slumpmässig tid mellan (T1 + Toffset) och (T1 + Toffset + Tdelay).
Töverföring, Toffset och Tdröjsmål är parametrar i produkten.
Om data inte kan skickas, exempelvis på grund av nätverksproblem, görs det ett antal försök varefter enheten ger upp och sparar avläsningen som "icke-sänd". Nästa gång en överföring görs kommer data som inte skickats att skickas på nytt (om möjligt). Återsändning kan göras genom FIFO eller LIFO.
Regler för återsändningar inkluderar maximal ålder för data, dataordning, antal återsända data/överföringsintervall.
Exempel 1. Exempel 1
En enhet är konfigurerad på följande sätt:
-
Meddelandekodning: M-Bus
-
Automatisk uppladdningsordning: FIFO
-
Mätintervall: 60 minuter
-
Sändningsintervall: 60 minuter
-
Sändningsförskjutning: 15 minuter
-
Sändningsfördröjning: 30 minuter
-
Maximalt antal uppladdningar per överföring: 4
-
Ladda upp maximal ålder 72h
Ett nätverksproblem gjorde att modulen var offline i 5 dagar medan den fortfarande läste och lagrade mätdata. När enheten lyckas gå online sker följande scenario.
-
Enheten börjar med att överföra mätdata som är 3 dagar gammal (FIFO-ordning)
-
Enheten kommer att skicka 4 mättelegram per timme, vid en slumpmässigt vald tidpunkt mellan minut 15 och 45
-
Varje telegram innehåller en enda avläsning, totalt 4 avläsningar per sändning
-
Enheten tar ungefär 1 dag att "komma ikapp" och börja skicka en mätning per timme
Exempel 2. Exempel 2
En enhet är konfigurerad på följande sätt:
-
Meddelandekodning: SenML/CBOR/M-Bus
-
Automatisk uppladdningsordning: FIFO
-
Mätintervall: 60 minuter
-
Sändningsintervall: 60 minuter
-
Sändningsförskjutning: 15 minuter
-
Sändningsfördröjning: 30 minuter
-
Maximalt antal uppladdningar per överföring: 4
-
Ladda upp maximal ålder 72h
-
Enhetens maximala payloadstorlek: 12 (avläsningar per telegram)
Ett nätverksproblem gjorde att modulen var offline i 5 dagar medan den fortfarande läste och lagrade mätdata. När enheten lyckas gå online sker följande scenario.
-
Enheten börjar med att överföra mätdata som är 3 dagar gammal (FIFO-ordning)
-
Enheten kommer att skicka 4 mättelegram per timme, vid en slumpmässigt vald tidpunkt mellan minut 15 och 45
-
Varje telegram innehåller 12 meter avläsningar, totalt 4 x 12 = 48 avläsningar per sändning
-
Enheten tar ungefär 2 timmar att "komma ikapp" och börja skicka en mätning per timme
CMi6110 kan konfigureras för olika mätlägen. Det valda läget avgör hur modulen definierar vilka mätardata som ingår i den överförda nyttolasten. Information om hur du ändrar mätläge finns i LwM2M-objektet Elvaco MCM Config (objekt-ID 33906, resurs 68). I läget Anpassat kan användaren konfigurera nyttolasten utifrån en uppsättning tillgängliga mätarregister. I läget Förinställt avgör det valda meddelandeformatet vilka mätardata som skickas från modulen.
I läget Anpassat väljer användaren vilka mätarregister som stöds och som modulen ska inkludera i den överförda nyttolasten. Varje valbart register mappas till en bit i bitmasken för överföringsfält för anpassat format (se Anpassat meddelandeformat för tillgängliga register).
Tabell 3. Viktiga inställningar för hantering av mätläget Anpassat
|
LwM2M resource |
Setting |
Beskrivning |
|---|---|---|
|
33906/./68 |
Measurement mode |
Definierar mätläge. Ställ in på |
|
33906/./76 |
Custom format transmit fields |
Bitmask. Definierar vilka datafält som ingår i nyttolasten när läget Anpassat används. Varje bit i bitmasken motsvarar ett mätarregister som antingen är valt eller bortvalt. Bitmasken kodas som en little-endian-bytearray, där byte 0 innehåller bit 0–7, byte 1 innehåller bit 8–15 och så vidare. |
Notera
När läget Anpassat används ställs meddelandekodningen automatiskt in på SenML/CBOR.
När läget Förinställt används beror de data som skickas på det valda meddelandeformatet. CMi6110 har två olika meddelandeformat: Standard och Utökat. En fullständig lista över de poster som ingår i respektive format finns i avsnitt Förinställda meddelandeformat.
Mätarlarm överförs med det valda transportprotokollet, som kan vara antingen MQTT-SN eller LwM2M Send. Innehållet i överförda data är detsamma oavsett vilket transportprotokoll som väljs. När ett larm utlöses följer meddelandet det valda formatet och utökade felkoder läggs till. Om det finns mätardata i modulen som inte har skickats överförs de samtidigt med larmet.
När MQTT-SN används publiceras larmmeddelanden i ett separat ämne, skilt från den ordinarie leveransen av mätardata. Larmämnet kan konfigureras via LwM2M-resursen 33906/./67.
Varje bit i larmmasken är direkt mappad till ett mätarfel. De olika larmmaskerna som används för att styra larmövervakaren har samma mappning. Avsnitten nedan beskriver hur varje bitmask ska hanteras och tolkas.
Övervakning av ett larm aktiveras genom att biten sätts till hög (1). Larmet hålls tyst, det vill säga larmmeddelanden förhindras från att utlösas, genom att biten sätts till låg (0). Tabellen nedan visar några exempel på hur bitmasken kan ställas in för olika funktioner.
Tabell 5. Exempel på bitmasker för aktivering av larmfunktion
|
Binärt |
Hex |
Tolkning |
|---|---|---|
|
0b1111 1111 1111 1111 |
0xFFFF |
Alla larm övervakas |
|
0b0 |
0x0 |
Inga larm övervakas. |
|
0b0001 1100 0001 |
0x1C1 |
Larmbitarna 0, 6, 7 och 8 övervakas. |
I praktiken gör masken för automatisk larmåterställning det möjligt att utlösa ett nytt meddelande för ett mätarlarm som har återställts, till exempel genom naturlig återställning när mätaren har återhämtat sig eller reparerats, eller genom manuell återställning. Om inga larm aktiveras i masken för automatisk larmåterställning kan ett visst larm skickas högst två gånger under modulens livslängd, en gång när det aktiveras och en gång när det eventuellt återställs. Valet av vilka larm som ska återställas automatiskt hanteras på samma sätt som bitmasken för aktivering av larmfunktion.
Tabell 6. Exempel på mask för automatisk larmåterställning och bitmasker för larmåterställning
|
Binärt |
Hex |
Tolkning |
|---|---|---|
|
0b1111 1111 1111 1111 |
0xFFFF |
Alla larm i larmmasken återställs. |
|
0b0 |
0x0 |
Inga larm i larmmasken återställs (inte relevant när larmmasken ska återställas manuellt). |
|
0b0001 1100 0001 |
0x1C1 |
Larmbitarna 0, 6, 7 och 8 återställs när hystereskriteriet är uppfyllt. |
En manuell återställning kan göras när som helst, vilket gör att modulen kan utlösa meddelanden för mätarlarm igen. Valet av vilka larm som ska återställas manuellt hanteras på samma sätt som bitmasken för aktivering av larmfunktion.
Tabell 7. Bitmasker för larmåterställning
|
Binärt |
Hex |
Tolkning |
|---|---|---|
|
0b1111 1111 1111 1111 |
0xFFFF |
Alla larm i larmmasken återställs. |
|
0b0 |
0x0 |
Inga larm i larmmasken återställs (inte relevant när larmmasken ska återställas manuellt). |
|
0b0001 1100 0001 |
0x1C1 |
Larmbitarna 0, 6, 7 och 8 återställs. |
Med meddelandeformatet Standard kan en typisk nyttolast se ut så här:
046D002A323B0C7837266966040637570A000414EF472000022B0000023BFCFF025B0000025F000002FD170400
0x02FD17 är M-Bus DIF/VIF-indikatorn för felflaggor, och de två efterföljande bytevärdena 0x0400 anger att det finns ett fel. Eftersom M-Bus-kodningen använder LSB läses motsvarande bitmappning som 0x00 04, vilket ger bitarna 0b0000 0000 0000 0100. Det innebär att bit 2 är satt, vilket anger att det finns ett problem med returtemperaturgivaren (se tabellen Tolkning av mätarfel ovan).
Om en nyttolast i stället skickas som ett larmmeddelande ser den liknande ut, men de utökade felkoderna läggs också till i meddelandet:
046D0F2A323B0C7837266966040637570A000414EF472000022B0000023BFCFF025B0000025F000002FD17040002FD180400
0x02FD17 anger återigen felflaggorna, och de två efterföljande bytevärdena 0x04 00 är identiska med exemplet ovan. Eftersom detta meddelande har utlösts som ett larm läggs de utökade felkoderna till i nyttolasten, se 02FD180400. FD18 anger att det är en M-Bus-felmask. Bytevärdena i felmasken avkodas på samma sätt som felflaggorna enligt informationen i tabellen Tolkning av mätarfel ovan.
Under modulens livslängd kan olika händelser behöva loggas, till exempel för att analysera dess funktion och övergripande status. Den inbyggda systemloggen kan konfigureras för att lagra och rapportera sådana händelser baserat på deras allvarlighetsgrad.
Det finns två inställningar för att styra systemloggens funktion: lagringsnivå för systemlogg och nivå för automatisk överföring av systemlogg. Lagringsnivån avgör vilka händelser som ska loggas och lagras i modulen, medan nivån för automatisk överföring definierar vilka händelser som automatiskt ska skickas från modulen beroende på deras allvarlighetsgrad. På så sätt kan kritiska händelser lagras utan att de nödvändigtvis skickas, vilket minskar datatrafiken och strömförbrukningen. Nya systemloggposter med lämplig loggnivå skickas tillsammans med nästa leverans av mätardata.
Notera
En fullständig referens över LwM2M-resurser som rör modulens systemlogg finns i LwM2M-objektet Elvaco Syslog Config (objekt-ID: 33918).
Tabellerna nedan visar tillgängliga loggnivåer och de implementerade händelser som kan loggas.
Tabell 9. Loggnivåer som stöds
|
Loggnivå |
Loggnivåns namn |
Beskrivning |
Anmärkning |
|---|---|---|---|
|
0 |
DEBUG |
Används för felsökning av oväntade beteenden hos enheten eller servern. |
Vid normal drift rekommenderas att felsökningshändelser varken lagras eller skickas. |
|
1 |
INFO |
Informativa, normala händelser |
|
|
2 |
NOTICE |
Meddelanden om normal drift |
|
|
3 |
WARNING |
Varningsloggar |
|
|
4 |
ERROR |
Felloggar |
|
|
5 |
CRITICAL |
Loggar för kritiska fel |
|
|
Varierar |
Varierar |
Loggnivån bestäms utifrån loggpostens innehåll. |
Varierande loggnivå används till exempel för konfigurationsändringar. Vissa ändringar kan vara mer eller mindre känsliga. Känsligare loggposter får en högre loggnivå. |
Tabellen nedan visar alla poster som kan loggas i enheten. Kolumnen längst till höger anger om systemloggposten härrör från en konfigurationsändring. Utöver loggnivån kan denna kategorisering vara till hjälp när loggarna tolkas på den mottagande servern.
Tabell 10. Loggelement som stöds och motsvarande loggnivå
|
Post |
Loggdata |
Loggnivå |
Är konfigurationsändring |
|---|---|---|---|
|
Product activation |
Orsak till aktivering (knapp i förekommande fall, NFC, Aktivering vid flöde osv.) |
NOTICE |
NO |
|
Successful timesync |
INFO |
NO |
|
|
Unsuccessful time sync |
Misslyckade tidssynkroniseringar |
WARNING |
NO |
|
Modem restarts |
INFO |
NO |
|
|
Successful connections to Bootstrap, DM, MDM |
INFO |
NO |
|
|
Failed connections to Network, Bootstrap, DM, MDM |
Nätverksavvisningar, misslyckade DTLS-handskakningar osv. |
WARNING |
NO |
|
Startup cause |
Orsak till start, till exempel watchdog, brownout eller mjuk återställning (exempelvis knapp, NFC, LwM2M eller konsol). Nivån kan bero på orsaken. |
NOTICE |
NO |
|
Changed SIM |
Ändring av ICCID |
WARNING |
NO |
|
Successful FW Upgrade |
|
WARNING |
NO |
|
Unsuccessful FW Upgrade |
|
WARNING |
NO |
|
Config reset with result |
|
CRITICAL |
NO |
|
Unsuccessful NFC writes |
Orsak till misslyckande
|
WARNING |
NO |
|
Failed staged settings |
|
WARNING |
NO |
|
DeviceEnable |
Aktiveringskälla |
WARNING |
YES |
|
DevEUI |
Nytt och gammalt |
WARNING |
YES |
|
NfcCfgOpen |
WARNING |
YES |
|
|
NfcAutoLockEnable |
WARNING |
YES |
|
|
NfcAutoLockTimeout |
WARNING |
YES |
|
|
MessageEncoding |
INFO |
YES |
|
|
MessageType |
INFO |
YES |
|
|
NfcEnabled |
WARNING |
YES |
|
|
NdefUserText1 |
INFO |
YES |
|
|
NdefUserText2 |
INFO |
YES |
|
|
HwModel |
WARNING |
YES |
|
|
ConsoleEnable |
Logga för att fastställa konsolens aktuella status. |
WARNING |
YES |
|
HwRevision |
WARNING |
YES |
|
|
MeterMaxRetries |
INFO |
YES |
|
|
MeterCustomerNo |
WARNING |
YES |
|
|
MeterIdentificationSource |
INFO |
YES |
|
|
TraceLogLevels |
WARNING |
YES |
|
|
ApnMode |
WARNING |
YES |
|
|
ManualApn |
WARNING |
YES |
|
|
BootstrapIp |
WARNING |
YES |
|
|
BootstrapHostName |
WARNING |
YES |
|
|
BootstrapPort |
WARNING |
YES |
|
|
BootstrapSecurityMode |
WARNING |
YES |
|
|
NbIotTimer3412 |
WARNING |
YES |
|
|
NbIotTimer3324 |
WARNING |
YES |
|
|
NbIotEdrx |
WARNING |
YES |
|
|
NbIotEdrxMode |
WARNING |
YES |
|
|
NbIotUsePSM |
WARNING |
YES |
|
|
NbIotRadioBand |
WARNING |
YES |
|
|
MqttSnConnectionMode |
WARNING |
YES |
|
|
MqttSnTopic |
WARNING |
YES |
|
|
LwM2MQueueMode |
WARNING |
YES |
|
|
NbIotTxOffset |
WARNING |
YES |
|
|
NbIotTxDelay |
WARNING |
YES |
|
|
NbIotUploadsPerTx |
WARNING |
YES |
|
|
ManualPlmn |
WARNING |
YES |
|
|
NbIotDtlsMaxRewinds |
WARNING |
YES |
|
|
NbIotDtlsMinTimeout |
WARNING |
YES |
|
|
NbIotDtlsMaxTimeout |
WARNING |
YES |
|
|
NbIotMqttsnCommTimeout |
WARNING |
YES |
|
|
NbIotMqttsnCommAttempts |
WARNING |
YES |
|
|
NbIotMdmCommFailures |
WARNING |
YES |
|
|
NbIotCoapAckTimeout |
WARNING |
YES |
|
|
NbIotCoapMaxRetransmit |
WARNING |
YES |
|
|
NbIotIowaDtlsMinTimeout |
INFO |
YES |
|
|
NbIotIowaDtlsMaxTimeout |
INFO |
YES |
|
|
NbIotIowaCommRetryCount |
WARNING |
YES |
|
|
NbIotIowaCommRetryDelay |
WARNING |
YES |
|
|
NbIotIowaCommSeqRetryCount |
WARNING |
YES |
|
|
NbIotIowaCommSeqRetryDelay |
WARNING |
YES |
|
|
NbIotNwkConnMaxHoldoff |
WARNING |
YES |
|
|
NbIotNwkSearchPeriod |
WARNING |
YES |
|
|
NbIotModemRestartBackoff |
WARNING |
YES |
|
|
NbIotMdmReconnectBackoff |
WARNING |
YES |
|
|
NbIotLwM2MResumeBackoff |
WARNING |
YES |
|
|
NbIotAutoUploadAgeLimit |
WARNING |
YES |
|
|
NbIotAutoUploadOrder |
WARNING |
YES |
|
|
Lwm2mBsUri |
WARNING |
YES |
|
|
Lwm2mBsSecurityMode |
WARNING |
YES |
|
|
Lwm2mUri |
WARNING |
YES |
|
|
Lwm2mSecurityMode |
WARNING |
YES |
|
|
Lwm2mLifetime |
WARNING |
YES |
|
|
MqttsnUri |
WARNING |
YES |
|
|
MqttsnSecurityMode |
WARNING |
YES |
|
|
TimeSyncSource |
Logga det nya värdet. Relevant för att fastställa kvaliteten på de tidsstämplar som används i loggen |
WARNING |
YES |
|
NbIotUploadProtocol |
WARNING |
YES |
|
|
NbIotEnableRai |
WARNING |
YES |
|
|
PowerSource |
WARNING |
YES |
|
|
NbIotAllowedRadioBands |
WARNING |
YES |
|
|
MqttKeepaliveTimeout |
WARNING |
YES |
|
|
LwM2MForcedQueueMode |
WARNING |
YES |
|
|
NbIotRoamHomePlmnSearch |
WARNING |
YES |
|
|
NbIotSyslogLevel |
WARNING |
YES |
|
|
NbIotSyslogMqttSnTopic |
WARNING |
YES |
|
|
NbIotSyslogAutoUploadLevel |
WARNING |
YES |
|
|
NbIotSyslogAutoUploadAgeLimit |
WARNING |
YES |
|
|
NbIotAlarmFuncEnableBitmask |
WARNING |
YES |
|
|
NbIotAlarmMaskResetPeriod |
WARNING |
YES |
|
|
NbIotAlarmHysteresis |
WARNING |
YES |
|
|
NbIotAlarmAutoResetBitmask |
WARNING |
YES |
|
|
NbIotAlarmTxDelayMax |
WARNING |
YES |
|
|
NbIotEmcTestMode |
WARNING |
YES |
|
|
NbIotAlarmMqttSnTopic |
WARNING |
YES |
|
|
MeasurementMode |
WARNING |
YES |
|
|
TxInterval |
INFO |
YES |
|
|
MeterId |
Logga både från- och till-värden. Relevant för att spåra mätarbyten eller problem med mätarkommunikationen. |
WARNING |
YES |
|
UTCOffset |
INFO |
YES |
|
|
TimestampRounding |
INFO |
YES |
|
|
ModemConfigured |
INFO |
YES |
|
|
ReadoutInterval |
INFO |
YES |
|
|
ReportInterval |
INFO |
YES |
|
|
Meter data readout |
DEBUG |
NO |
|
|
Meter data transmission |
DEBUG |
NO |
|
|
Found long payload |
WARNING |
NO |
|
|
Meter data readout error |
Statuskod |
WARNING |
NO |
|
No valid timestamp from meter |
NOTICE |
NO |
|
|
Readout skipped on time change |
Gammal och ny tid |
NOTICE |
NO |
|
Performing readout on time change |
Gammal och ny tid |
INFO |
NO |
|
Stored [type] credentials for [address] |
[typ] BS, DM osv. [adress] server-URI |
NOTICE |
NO |
|
Unsupported encrypted meter communication |
ERROR |
NO |
Modulens systemlogg kan överföras med antingen MQTT-SN eller LwM2M Send. Vilket som används beror på det transportprotokoll som har valts för mätardata. Innehållet i överförda data är detsamma oavsett val. När en systemloggpost med en systemloggnivå som har konfigurerats för överföring lagras i modulen skickas den tillsammans med nästa överföring av mätardata. Alla loggposter som ska skickas men ännu inte har skickats inkluderas.
När MQTT-SN används skickas systemloggposter i ett separat ämne, skilt från ordinarie mätardata. Systemloggämnet kan konfigureras via LwM2M-resursen 33918/./0.
Oavsett om systemloggen skickas med MQTT-SN eller LwM2M Send struktureras nyttolasten enligt SenML-datamodellen och kodas med CBOR. Själva systemloggmeddelandet lagras som en ASCII-textsträng i SenML-posten.
En fullständig beskrivning av hur SenML/CBOR-paketen kodas finns i avsnitt SenML/CBOR. Exemplet nedan visar ett förenklat sätt att avkoda ett systemloggmeddelande, från den råa nyttolasten till ett läsbart systemloggmeddelande.
-
Rå nyttolast (referens):
82A200615602190200A322C11A699337A002020858335B636F6E6669675D204D65746572206964206368616E6765642066726F6D20383537323731363020746F203835373435303430 -
Avkoda den råa nyttolasten (till exempel med https://cbor.me/):
[{0: "V", 2: 512}, {-3: 1(1771255712), 2: 2, 8: h'5B636F6E6669675D204D65746572206964206368616E6765642066726F6D20383537323731363020746F203835373435303430'}] -
Identifiera dataposten i paketet:
5B636F6E6669675D204D65746572206964206368616E6765642066726F6D20383537323731363020746F2038353734353034305B636F6E6E48646C725D204D444D55706C6F61646564 -
Avkoda dataposten som en ASCII-sträng:
[config] Mätar-ID ändrat från 85727160 till 85745040
Produkten har tre alternativ när det kommer till meddelandekodning:
-
M-Bus
-
JSON
-
SenML/CBOR
Om M-Bus används som meddelandekodningsteknik kommer data att delas in i Data Information Block (DIB) som inkluderar datainformationsfält (DIF-kod), värdeinformationsfält (VIF-kod) och ett datafält (DATA) där den faktiska payloaden är sparad (illustreras i följande bild).
DIB-struktur
Tabellen nedan ger detaljerade exempel på hur data kodas när man använder M-Bus som kodning.
Tabell 11. Payload, M-Buskodat meddelande
|
DIB |
Fält |
Storlek |
Datatyp |
Beskrivning |
|---|---|---|---|---|
|
1 |
Datum/tid |
6 byte |
INT32 |
Mätarens datum och tid (ÅÅ-MM-DD TT:MM) Mappad till OBIS 9.36 046Dxxxxxxxx Bit 31-28 = år-högt* Bit 27-24 = Månad Bit 23-21 = år-lågt* Bit 20-16 = Dag Bit 15 = Sommartidsflagga** Bit 14-13 = Århundrade Bit 12-8 = Timme Bit 7 = Felflagga Bit 6 = Reserverad för framtida användning*** Bit 5-0 = Minut *Årtalet läses genom att kombinera fältet år-högt och år-lågt. Till exempel, årshögsta = 0010 och årslägsta = 010 =&; år = 0010010 **0 = standardtid, 1= sommartid ***0 = tidsstämpel är giltig, 1 = tidsstämpel är inte giltig |
|
2 |
Mätar-ID |
6 byte |
Enligt M-Bus EN13757-3 identifieringsfält |
Mätar-ID 0C78xxxxxxxx |
|
3 |
Energi |
6-7 byte |
INT32 |
Energiförbrukning (Wh, J) 0406xxxxxxxx = xxxxxxxx * 0,001 MWh (kWh) 0407xxxxxxxx = xxxxxxxx * 0,01 MWh 04FB00xxxxxxxx = xxxxxxxx * 0,1 MWh 04FB01xxxxxxxx = xxxxxxxx MWh 040Exxxxxxxxx = xxxxxxxx * 0,001 GJ (MJ) 040Fxxxxxxxx = xxxxxxxx * 0,01 GJ 04FB08xxxxxxxx = xxxxxxxx * 0,1 GJ 04FB09xxxxxxxx = xxxxxxxx GJ |
|
4 |
Volym |
6 byte |
INT32 |
Volym (m3) 0413xxxxxxxx = xxxxxxxx * 0,001 m3 0414xxxxxxxx = xxxxxxxx * 0,01 m3 0415xxxxxxxx = xxxxxxxx * 0,1 m3 0416xxxxxxxx = xxxxxxxx m3 |
|
5 |
Effekt |
4 byte |
INT16 |
Effekt (W) 022Bxxxxxx = xxxxxx * 0,001 kW (W) 022Cxxxxxx = xxxxxx * 0,01 kW 022Dxxxxxx = xxxxxx * 0,1 kW 022Exxxxxx = xxxxxx kW |
|
6 |
Flöde |
4 byte |
INT16 |
Flöde (m3/h) 023Bxxxxxx = xxxxxx * 0,001 m3/h 023Cxxxxxx = xxxxxx * 0,01 m3/h 023Dxxxxxx = xxxxxx * 0,1 m3/h 023Exxxxxxx = xxxxxx m3/h |
|
7 |
Fw temp |
4 byte |
INT16 |
Framledningstemperatur (°C) 025Axxxx = xxxx * 0,1 °C 025Bxxxx = xxxx * °C |
|
8 |
Rt temp |
4 byte |
INT16 |
Returtemperatur (°C) 025Exxxx = xxxx * 0,1 °C 025Fxxxx = xxxx °C |
|
9 |
Felflaggor |
5 byte |
INT16 |
Fel- och varningsflaggor 02FD17xxxx För ytterligare information om felflaggor, se den senaste mätarens manual |
|
10 |
Tariff 1 Energi |
7 byte |
INT32 |
Tariff 1 Energiförbrukning (Wh, J) 841003xxxxxxxx = xxxxxxxx Wh 841003xxxxxxxx = xxxxxxxx * 10 Wh 841003xxxxxxxx = xxxxxxxx * 100 Wh 841003xxxxxxxx = xxxxxxxx kWh 841003xxxxxxxx = xxxxxxxx *10 kWh 841003xxxxxxxx = xxxxxxxx MJ 841003xxxxxxxx = xxxxxxxx * 10 MJ |
|
11 |
Tariff 2 Energi |
7 byte |
INT32 |
Tariff 2 Energiförbrukning (Wh, J) 842003xxxxxxxx = xxxxxxxx Wh 842003xxxxxxxx = xxxxxxxx * 10 Wh 842003xxxxxxxx = xxxxxxxx * 100 Wh 842003xxxxxxxx = xxxxxxxx kWh 842003xxxxxxxx = xxxxxxxx *10 kWh 842003xxxxxxxx = xxxxxxxx MJ 842003xxxxxxxx = xxxxxxxx * 10 MJ |
|
12 |
Tariff 3 Energi |
7 byte |
INT32 |
Tariff 3 Energiförbrukning (Wh, J) 843003xxxxxxxx = xxxxxxxx Wh 843003xxxxxxxx = xxxxxxxx * 10 Wh 843003xxxxxxxx = xxxxxxxx * 100 Wh 843003xxxxxxxx = xxxxxxxx kWh 843003xxxxxxxx = xxxxxxxx *10 kWh 843003xxxxxxxx = xxxxxxxx MJ 843003xxxxxxxx = xxxxxxxx * 10 MJ |
|
13 |
Saknar tid |
6 byte |
INT32 |
3C22xxxxxxxx = xxxxxxxx timmar 3C23xxxxxxxx = xxxxxxxx dagar |
När du använder JSON-meddelandekodning består meddelanden som skickas av ett objekt med en lista med nyckel – värdepar. Exempel på namn för varje värdetyp och enhet presenteras i tabellen nedan. Värdena är kodade som siffror eller strängar och enheterna är kodade som strängar. JSON erbjuder datakodning som är läsbar för människor, på bekostnad av att den inte är lika Compact som exempelvis SenML/CBOR.
Tabell 12. Payload, JSON-kodat meddelande
|
Fält |
JSON-nyckel |
|---|---|
|
Mätar-ID |
ID |
|
Mätare datum/tid |
TS |
|
Energi |
E |
|
Energienhet |
U |
|
Volym |
V |
|
Volymenhet |
VU |
|
Effekt |
P |
|
Strömförsörjning |
PU |
|
Flöde |
F |
|
Flödesenhet |
FU |
|
Framledningstemperatur |
FT |
|
Framledningstemperaturenhet |
TU |
|
Returtemperatur |
RT |
|
Returtemperaturenhet |
RU |
|
Felflaggor |
EF |
|
Tariff 1 Energi |
T1 |
|
Tariff 1 Energienhet |
U1 |
|
Tariff 2 Energi |
T2 |
|
Tariff 2 Energienhet |
U2 |
|
Tariff 3 Energi |
T3 |
|
Tariff 3 Energienhet |
U3 |
|
Saknad tid |
MT |
|
Saknad tidsenhet |
MU |
Exempel på payload, JSON:
{
"TS":"2025-11-28T20:39Z",
"ID":87654321,
"E":12345.678,
"U":"MWh",
"V":3456.7,
"VU":"m3",
"P":5012,
"PU":"W",
"F":212,
"FU":"l/h",
"FT":80.3,
"TU":"C",
"RT":53.8,
"RU":"C",
"EF":"0x4012"
}
För batteridrivna enheter kan det vara nödvändigt att skicka flera mätningar i samma UDP-ram för att spara energi. För att uppnå detta används SenML (Sensor Measurement Lists) + CBOR (Concise Binary Object Representation) för att definiera en mätlista.
Tanken är att skicka en lista med mätningar, där den första posten innehåller bastiden för alla avläsningar (som endast behöver ange en offset) och ett mätar-id som delas av alla avläsningar. De andra posterna i listan kan innehålla färre avläsningsfält för att spara utrymme. Formatet gör det möjligt att skicka all data för varje avläsning, då lagringen (i termer av byte) blir mindre därför att färre telegram skickas, en del data behöver inte överföras för varje avläsning (som meter-id) och tidsstämplar kan hanteras mer effektivt. SenML/CBOR erbjuder även ett sätt att strukturera listor med avläsningar på ett effektivt sätt.
Elvaco använder SenML/CBOR/M-Bus datarepresentation för att överföra mätardata på ett kompakt och självbeskrivande sätt. Datan som överförs kallas ett paket som innehåller en post per avläsning.
Notera
SenML, CBOR och M-Bus är separata standarder, detta avsnitt beskriver hur produkter kan använda dessa tre tillsammans för att representera flera mätvärden i ett kompakt format lämpligt för radiosändning över till exempel NB-IoT.
Mätaravläsningsdata skickas som SenML, det vill säga en lista (eller array) av avläsningsvärden (poster), kodade med CBOR. Varje post är en karta över nyckel/värdepar med hjälp av SenML.
Notera
Varje produkt som använder SenML/CBOR-formatet måste följa kraven nedan. Dessutom ska det specificera det exakta innehållet i de inkluderade datavärdena, mätar-ID-format etc. Således är denna specifikation ensam inte tillräcklig för att bygga en parser för en specifik produkt.
Base time används för att ställa in en referenstid.
-
Tidsstämplar är alltid kodade enligt SenML (det vill säga UNIX-tid) (SenML-etikett -1 "Bastid", SenML-definition av Tidsfält)
-
Detta värde måste inkluderas i den första posten i paketet
-
Alla andra värden har ett tidsvärde som läggs till bastiden för att definiera den exakta tiden för avläsningen
Base name används för att representera MätarID (Mätaridentifikation in M-Bus) för produkter som levererar mätdata för en mätare.
-
Om basnamn används
-
Detta värde MÅSTE finnas med i den första posten i paketet
-
Detta representeras som en strängmatris (CBOR Major Type 3 - SenML-etikett -2 "Basnamn")
-
Produkten ska specificera det exakta formatet för detta fält, eftersom det kan variera beroende på vilken typ av "mätare" som används. För ett M-Busformat är det vanligtvis M-Busdata utan DIF/VIF.
-
-
Inget namn har angivits för återstående mätaravläsningsvärden, endast värden som tillhör en enskild mätare kan representeras i ett paket.
-
-
Om avläsningar som ska skickas innehåller olika MeterIDs (modul flyttad mellan mätare till exempel) får de INTE skickas i samma SenML-paket
-
Alla värden i ett SenML-paket MÅSTE vara för samma MeterID
-
Datavärdena FÅR INTE ha ett namnvärde som specificerar namnet för varje värde.
-
-
Basnamn FÅR INTE användas för SenML-paket som har data för flera mätare. I sådana fall ska varje post innehålla mätarens MeterID.
-
De faktiska värdena från mätaren kan kodas med flera metoder, såsom M-Bus.
-
Den första posten kan också innehålla ett datavärdefält som innehåller mer information än de återstående posterna i paketet. Detta för att inkludera mer information för den första läsningen och sedan endast en delmängd av värden för de återstående posterna för att spara utrymme. (SenML-etikett 8 - "Data value")
Alla poster i SenML-paketet förväntas innehålla mätvärden. Om det finns ett behov av att överföra ytterligare information i samma paket kan ytterligare poster läggas till. För sådana poster ska namnfältet användas genom att definiera ett namn med minst ett tecken. I SenML läggs basnamnet och namnfälten till för ett slutligt namn på posten.
Namnet ska innehålla minst ett tecken utanför [A-F, a-f, 0-9], vilket anger att representationen inte är hexadecimal. Eftersom mätar-ID vanligtvis är decimalt eller hexadecimalt blir det därmed enklare att kontrollera att postnamnet är giltigt. Om en parser hittar en post med ett namnfält enligt beskrivningen ovan som den inte känner igen ska posten ignoreras.
Följande ytterligare poster används för närvarande:
|
Spela in |
Namnfält |
Kommentar |
|---|---|---|
|
Kodartyp & Version |
"V" |
Detta fält gör det möjligt att definiera versioner för innehållet i mätfältet. |
|
Utökad felinformation |
"I" |
Den här posten gör det möjligt att skicka utökad information om en mätning, till exempel felinformation. |
Följande tabell definierar tillåtna kodartyper och versioner. Informationen skickas i en särskild post "Encoder Version field".
-
Detta fält kapslar in både kodningen av data och versionshantering
-
Den innehåller ingen tidsstämpel
-
Den är kodad som ett SenML-värde
-
Den har ett Namn-fält med den enda bokstaven "V"
-
Om en ogiltig version påträffas vid tolkning ska tolkningen stoppas med ett felmeddelande
-
Värdet ska tolkas som ett UINT16
-
Den första byten är kodartypen och den andra är kodarversionen, båda tolkade som UINT8.
Exempel: värde 0x0102 betyder kodartyp 0x01 och kodarversion 0x02.
-
Definierade giltiga kodartyper och versioner finns i en tabell nedan på denna sida o
-
Storleken på hela posten är maximalt 7 byte
-
-
Om posten exkluderas är encoder-typen 0 och encoder-versionen är 0
|
Spela in |
Namnfält |
Data |
Kommentar |
|---|---|---|---|
|
0 (M-Bus) |
0 |
0x0000 |
M-Buskodning av payloaddata. Varje datapost innehåller alla DIF/VIF/Värden enligt M-Bus. Notera att M-Bus använder LSB-ordning ("least significant byte" först) för data även här. |
|
1 (Gateway) |
0 |
|
Gateway för mätardata, det vill säga data för flera mätare finns i ett enda paket. Nyttolasten kan vara av olika typer beroende på vilket gränssnitt som används. Exempel på nyttolastformat är okrypterade eller krypterade M-Bus-data med ytterligare metadata. Den här kodartypen är för närvarande inte relevant för Elvacos produkter för mätaranslutning. |
|
2 (Syslog) |
0 |
|
Systemloggdatameddelande kodat som en hexadecimal ASCII-sträng. Nyckel 2 anger loggnivå. Mer information om värdena för respektive nivå finns i avsnittet om modulens systemlogg. |
|
3 (Transparent M-Bus) |
0 |
|
Transparenta M-Bus-data. Nyttolasten innehåller ett fullständigt (trådbundet) M-Bus-telegram, inklusive både rubrik och CRC. Den här kodartypen är relevant när det mätarstyrda mätläget Transparent används. |
|
4 (Anpassat format) |
0 |
|
Anpassat meddelandeformat. Nyttolasten innehåller M-Bus-kodade data och de returnerade fälten har konfigurerats i enheten. Ingen rubrik eller CRC ingår. Mätar-ID ingår i M-Bus-data och inte i basnamnet. |
Den här posten används för att skicka utökad information som inte kan skickas som en del av de normala mätaravläsningsdata. Ett typiskt användningsfall är ytterligare felkoder från mätaren eller enheten.
-
Formatet för den utökade informationen är specifikt för den valda kodaren. Se tabellen nedan.
-
Den detaljerade tolkningen av informationen är produktspecifik. Felkoderna för en mätare är till exempel specifika för en viss mätare även om de kodas med M-Bus.
-
Den kodas som ett SenML-datavärde
-
Den har ett namnfält med värdet ”I”
-
Den ska innehålla en tidsstämpel
-
Tidsstämpeln kan vara densamma som för en annan mätardatapost. Dessa två poster ska då betraktas som registrerade vid samma tidpunkt.
-
-
Den utökade informationen är en valfri post
|
Kodartyp |
Kodarversion |
Format för utökad felinformation |
|---|---|---|
|
0 (M-Bus) |
0 |
M-Buskodning av payloaddata. Varje datapost innehåller alla DIF/VIF/Värden enligt M-Bus. Notera att M-Bus använder LSB-ordning ("least significant byte" först) för data även här. |
|
1 (Gateway) |
0 |
Inte relevant för Elvacos moduler för mätaranslutning. |
|
2 (Syslog) |
0 |
Inte definierat ännu |
|
3 (Transparent M-Bus) |
0 |
M-Buskodning av payloaddata. Varje datapost innehåller alla DIF/VIF/Värden enligt M-Bus. Notera att M-Bus använder LSB-ordning ("least significant byte" först) för data även här. |
Nedan visas ett exempel på en nyttolast och hur den kan avkodas. Nyttolasten består av tre poster: först Kodartyp och version, därefter en vanlig mätaravläsning med Basnamn (mätar-ID) och Bastid och slutligen utökad information, som i detta fall motsvarar de utökade felkoderna.
Rå CBOR-kodad nyttolast (hex):
83A20061560200A32168363636393236333722C11A691C43A0085821040637570A000414EF472000022B0000023BFDFF025B0000025F000002FD170400A3006149084502FD1804000600
När nyttolasten avkodas, till exempel med https://cbor.me/, vecklas CBOR-strukturen ut:
01 83 # array(3) 02 A2 # map(2) 03 00 # unsigned(0) 04 61 # text(1) 05 56 # "V" 06 02 # unsigned(2) 07 00 # unsigned(0) 08 A3 # map(3) 09 21 # negative(1) 10 68 # text(8) 11 3636363932363337 # "66692637" 12 22 # negative(2) 13 C1 # tag(1) 14 1A 691C43A0 # unsigned(1763460000) 15 08 # unsigned(8) 16 58 21 # bytes(33) 17 040637570A000414EF472000022B0000023BFDFF025B0000025F000002FD170400 # "\u0004\u00067W\n\u0000\u0004\u0014\xEFG \u0000\u0002+\u0000\u0000\u0002;\xFD\xFF\u0002[\u0000\u0000\u0002_\u0000\u0000\u0002\xFD\u0017\u0004\u0000" 18 A3 # map(3) 19 00 # unsigned(0) 20 61 # text(1) 21 49 # "I" 22 08 # unsigned(8) 23 45 # bytes(5) 24 02FD180400 # "\u0002\xFD\u0018\u0004\u0000" 25 06 # unsigned(6) 26 00 # unsigned(0)
I en mer kompakt form blir resultatet:
[{0: "V", 2: 0}, {-2: "66692637", -3: 1(1763460000), 8: h'040637570A000414EF472000022B0000023BFDFF025B0000025F000002FD170400'}, {0: "I", 8: h'02FD180400', 6: 0}]
Notera
Eftersom detta paket innehåller den utökade felinformationen i den tredje posten har paketet skickats som ett larm. Det innebär att det har publicerats i ett separat ämne om MQTT-SN används, eller som en instans av mätardataobjektet 33911 om LwM2M Send används.
Nedan visas ett verkligt exempel på en nyttolast. Observera att flera (5) mätaravläsningar ingår i detta enda paket. En mätaravläsning ryms i en post. Paketets första post innehåller Bastid och Basnamn (mätar-ID). Den sista posten innehåller Kodartyp och version, vilket gör det möjligt att tolka och parsa data korrekt.
Rå nyttolast (Base64):
hqMhaDcxOTUxMzE4IsEaZtB0VAhYIQQGAHcDAAQUYdgKAAItEwACO1QBAlogAgJe8AEC/RcAAKIGOQODCFghBAYAdwMABBRY2AoAAi0TAAI7VAECWh8CAl7wAQL9FwAAogY5BwcIWCEEBv92AwAEFFDYCgACLRgAAjteAQJaHwICXuMBAv0XAACiBjkKiwhYIQQG/3YDAAQUR9gKAAItEwACO1QBAloeAgJe7wEC/RcAAKIGOQ4PCFghBAb+dgMABBQ/2AoAAi0UAAI7SgECWiACAl7sAQL9FwAAogBhVgIA
När detta avkodas, till exempel med en CBOR-avkodare, vecklas CBOR-strukturen ut:
1 86 # array(6) 2 A3 # map(3) 3 21 # negative(1) 4 68 # text(8) 5 3731393531333138 # "71951318" 6 22 # negative(2) 7 C1 # tag(1) 8 1A 66D07454 # unsigned(1724937300) # "2024-08-29T13:15:00Z" 9 08 # unsigned(8) 10 58 21 # bytes(33) 11 040600770300041461D80A00022D1300023B5401025A2002025EF00102FD170000 12 A2 # map(2) 13 06 # unsigned(6) 14 39 0383 # negative(899) # "2024-08-29T13:00:00Z" 15 08 # unsigned(8) 16 58 21 # bytes(33) 17 040600770300041458D80A00022D1300023B5401025A1F02025EF00102FD170000 18 A2 # map(2) 19 06 # unsigned(6) 20 39 0707 # negative(1799) # "2024-08-29T12:45:00Z" 21 08 # unsigned(8) 22 58 21 # bytes(33) 23 0406FF760300041450D80A00022D1800023B5E01025A1F02025EE30102FD170000 24 A2 # map(2) 25 06 # unsigned(6) 26 39 0A8B # negative(2699) # "2024-08-29T12:30:00Z" 27 08 # unsigned(8) 28 58 21 # bytes(33) 29 0406FF760300041447D80A00022D1300023B5401025A1E02025EEF0102FD170000 30 A2 # map(2) 31 06 # unsigned(6) 32 39 0E0F # negative(3599) # "2024-08-29T12:15:00Z" 33 08 # unsigned(8) 34 58 21 # bytes(33) 35 0406FE76030004143FD80A00022D1400023B4A01025A2002025EEC0102FD170000 36 A2 # map(2) 37 00 # unsigned(0) 38 61 # text(1) 39 56 # "V" 40 02 # unsigned(2) 41 00 # unsigned(0)
På https://cbor.me/ finns en validator för CBOR. Observera att den inte förstår SenML eller M-Bus.
Notera
En liten bugg har identifierats i hex-tolkningen av negativa tal i validatorn. Ha detta i åtanke om du använder validatorn.
SenML/CBOR är att betrakta som en meddelandekodning. Den definierar hur meddelandena kodas, men inte det faktiska innehållet i meddelandena (vilka fält från mätaren som ingår). SenML/CBOR/M-Bus är en sådan kodning, men det kan finnas flera baserat på denna SenML/CBOR-specifikation och kodarversionsfältet ovan definierar exakt vilken typ och version som används.
Innehållet i meddelandet definieras av meddelandeformatet. Meddelandeformatet anger vilka fält som ska inkluderas i både den första och de efterföljande posterna i SenML-paketet.
Antalet poster som ingår i ett paket ställs in av avläsnings- och sändningsintervallen. Se Schemalagda Avläsningar för mer information. Om avläsningsintervallet är 120 minuter och sändningsintervallet är 1440 minuter kommer totalt 12 avläsningar att inkluderas.
Varje produkt kan ha olika maximala payloadstorlekar i ett enda telegram. Beroende på konfiguration (till exempel DTLS eller inte) kan payloadens nettostorlek variera. Därför ska enheten "fylla" så många telegram som krävs för att skicka data. Användaren måste definiera en konfiguration som ger en rimlig avvägning mellan strömförbrukning (skicka färre telegram) och funktionskrav (mycket data skickas).
Om en enhet är konfigurerad med ett meddelandeformat och många avläsningar kanske data inte får plats i ett enda telegram. I sådana fall ska flera telegram skickas och varje telegram ska vara helt självbeskrivet, det vill säga innehålla mätar-ID, tidsstämplar etc.
|
Parameter |
Värde |
|---|---|
|
Avläsningsintervall |
60 |
|
Sändningsintervall |
1440 (daglig) |
|
Meddelandekodning |
SenML/CBOR/M-Bus version 0 |
|
Meddelandeformat |
Standard |
|
Max sändningar per dag |
3 |
Detta exempel resulterar i sändning av ett meddelande per dag, innehållande 24 avläsningar, alla med innehållet definierat i meddelandeformatet Standard. Data kodas med SenML/CBOR/M-Bus. Maximalt 3 icke-sända meddelanden skickas varje gång (om meddelandena av någon anledning inte skickades "förra gången"). Så maximalt sända meddelanden per dag är 3 (innehåller 3x24=72 avläsningar, som täcker 3 dagar)
|
Parameter |
Värde |
|---|---|
|
Avläsningsintervall |
120 |
|
Sändningsintervall |
720 |
|
Meddelandekodning |
SenML/CBOR/M-Bus version 0 |
|
Meddelandeformat |
Tariff |
|
Max sändningar per dag |
2 |
Detta exempel resulterar i sändning av ett meddelande var 12:e timme, innehållande 6 avläsningar, alla med innehållet definierat i Tariffmeddelandeformatet. Data kodas med SenML/CBOR/M-Bus. Maximalt 2 osända sådana meddelanden skickas varje gång (om meddelandena av någon anledning inte skickades "förra gången"), så maximalt sända meddelanden per dag är 4 (innehåller 4x6=24 avläsningar, som omfattar 2 dagar).
Tabell 13. Inställningar för styrning av lokal åtkomst till enheten
|
LwM2M-resurs |
Inställning |
Beskrivning |
|---|---|---|
|
33906/./4 |
NFC aktiverat |
Boolesk. Slår på eller av enhetens NFC-gränssnitt. Om det är inaktiverat går det inte att konfigurera enheten lokalt. |
|
33906/./5 |
NFC-konfigurationslåst |
Boolesk. Slår på eller av NFC-konfigurationslåset. Om det är aktiverat går det inte att konfigurera enheten lokalt utan tillgång till PAK. |
Tabell 14. Inställningar för styrning av det automatiska NFC-konfigurationslåset
|
LwM2M-resurs |
Inställning |
Beskrivning |
|---|---|---|
|
33906/./71 |
Aktivera automatiskt NFC-konfigurationslås |
Boolesk. Slår på eller av det automatiska NFC-konfigurationslåset. Om det slås på aktiveras konfigurationslåset när tidsgränsen för automatisk låsning har löpt ut. Timern startar när enheten har aktiverats. |
|
33906/./72 |
Tidsgräns för automatiskt NFC-konfigurationslås |
Tid i minuter. Anger hur många minuter efter aktivering som ska gå innan konfigurationslåset aktiveras. Det automatiska NFC-konfigurationslåset måste vara aktiverat. |
Kommentarer (0 kommentarer)