KL6781 M-Bus Stromzähler auslese

Boschi42

Level-2
Beiträge
5
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Community,

Ich versuche gerade meinen Kaifa Stromzähler vom Energieversorger mit einer Beckhoff CX-9020 und der KL6781 auszulesen. Das Programm steht soweit. Der Energieversorger gibt einen Sicherheitsschlüssel für die Schnittstelle am Kaifa an. Weiß jemand wo ich diesen Schlüssel nun angeben muss? Dazu kann ich bei den M-Bus Bausteinen aus der Bibliothek nichts finden. Ich weiß nur von Bekannten, dass dieser Code zB bei einem P1 Meter von HomeWizard eingegeben werden muss.

P.S. Aktuell habe ich das Programm noch nicht testen können, da ich noch auf die Komponenten warte. Ich wollte dieses Thema mit dem Schlüssel vorab schon einmal klären.

Danke für eure Hilfe!
 
Keine Ahnung von Beckhoff

Du meinst mit Sicherheitsschlüssel aber nicht die Zählerpin die du vorher mit der

Taschenlampe einblinkst um Anzeigewerte und Zusatzausgaben freizugeben ?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Nein. Ich denke das ist dieser "Global Unicast Encryption Key". Dieser muss beim Netzversorge angefragt werden. Ich habe meinen Key auch. Dieser ist 32 Stellig und besteht aus Zahlen und Buchstaben. Ich weiß nur nicht wo ich diesen in der Beckhoff hinterlegen muss.

1743574043950.png

1743574292171.png
 
Ich glaube es gefunden zu haben. Die Daten werden mit dem Global Unicas und AES verschlüsselt. Für die Encryption gibt es bei Beckhoff dafür einen eigenen Baustein, an dem man den Key anhängen muss. Manchmal muss man über die Dokus einfach ein paar mal darüber gelesen haben um alles zu verstehen :ROFLMAO:
 
Na dann sprich mal, welcher Baustein ist es denn?
Ich habe aus Neugier im Infosys gesucht bin aber nicht über die passende Stelle gefunden.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ja das stimmt, da muss ich mich korrigieren. ChatGBT hat mir den Baustein TC3_Crypto und TC3_Security vorgeschlagen. Aber das stimmt, die beiden gibt es nicht. Nach weiterer Recherche wird empfohlen ein C++ Skript zum Encrypten zu verwenden. Für die AES128 Verschlüsselung werden Matrizenrechnungen benötigt, was in ST nur schwer zu programmieren ist (laut Internet). Für C++ sollte es dazu Libraries geben. Ich werde diesen weg einmal versuchen und informiere euch über meine Erkenntnisse ;)
 
Ich bin jetzt nicht MBus-affin befüchte aber das du hier nicht weiterkommst.

Was ich am Rande nur zu MBus mitbekommen habe durch den Haustechniker der im Büro ein paar Schalter angelernt hat.
Die Verschlüsselung wird wohl jetzt verpflichtend/relevant (für Neuanlagen).
Die KL6781 gibt es schon seit > 15 Jahren soweit ich glaube es zu wissen. Falls es die (optionale) Verschlüsselung damals überhaupt im MBus Standard schon gab war das sicherlich eher exotisch.

An das "mal so eben das selber schreiben" der Codieren/Decodieren einer EAS128 Verschlüsselung glaube ich nicht. Wenn du es im UserMode-Bereich mit C++ machen willst (falls es dafür Libs gibt) dann kommt da noch ein ADS-Interface von/zur SPS hinzu.
Also schön viel Aufwand...
Als Hobby/Spielprojekt machbar aber ansonsten würde ich einen anderen Weg suchen.
 
Danke für die Info. Es ist für mich aktuell ein Hobby/Spielprojekt. Mal sehen wie weit ich komme. Ansonsten gibt es immer noch die Möglichkeit einen P1 Meter von HomeWizard oder ähnliches, zu verwenden. Wenn es am ende vom Tag überhaupt notwendig ist, denn im Grunde ist es nur ein Nice to have.
 
Zurück
Oben