Mittwoch, 15. März 2017

UVR 16x2 Daten Logging

Letzte Woche kam die neue Steurung und ich war einfach neugierig. Der existierende UVR 1611 Loggingcode läuft nun fast komplett in python statt in C. Im selben Atemzug wurden die Abfragen für die 16x2 gleich mit programmiert.

Die Zeit, Eingänge sowie Ausgänge mit den Bezeichnern werden abgefragt und die Auswertung erschließt sich größtenteils. Etwas Grübelei wird es wohl noch geben.

Das Bild zeigt die Spiellandschaft mit dem CAN Logger im praktischen Gehäuse, einer alten UVR 1611 und der neuen UVR 16x2 darunter. Ein BL-Net ist auch noch an diesem CAN Bus angeschlossen.


Es werden ggw. vom Logger keine NMT Nachrichten erzeugt, die anderen Netzteilnehmern das Vorhandensein bestätigt. Alle Anfragen an die SDOs werden vorher gebündelt und als kleine Gruppen abgesendet. Jeweils mit eigenen Verbindungsauf- und abbau. Sofern ein Fehler in der Gruppe auftaucht wird die betroffene Gruppe wiederholt.

Das funktioniert deutlich robuster als in der C Implementierung.  Hier ein paar SDO request und die dynamische Gruppierung. Die Kodierung ist KnotenId_Index_Subindex. Die UVR 16x2 hat die KnotenID 4. Jede dieser kurzen Listen wird sequentiell abgearbeitet. Unter Index 8207 finden sich mit dem Subindex 0 bis 15 die Bezeichner der Eingänge im Unicode.

running batch:
['4_8207_7' '4_8207_6' '4_8207_5' '4_8207_4' '4_8207_3' '4_8207_2'
running batch:
['4_8207_0' '4_8207_9' '4_8207_8' '4_8207_13' '4_8207_12' '4_8207_11'
 '4_8207_10']




Keine Kommentare:

Kommentar veröffentlichen