Hallo zusammen,
mal wieder ein Dommas-spezial-Problem.
Ich will den CAN-Traffic auf Knopfdruck mitloggen können. Eigentlich überhaupt kein Problem. Aber wie immer liegt der Teufel im Detail:
Ich brauch
- die Befehle, die ich schicke, und die Antworten die zurückkommen ("hört sich nicht schwer an")
- jeweils mit TimeStamp ("kein Problem, ist ja eh mit dabei")
- nicht über ein zweites Interface (eigener CAN-Node), sondern alles direkt in LV ("sollte nicht schwer sein")
So, und jetzt muss ich leider feststellen, dass meine Kommantare in den Klammern, zumindest leider in der Kombination, wohl nicht richtig sind
Der Timestamp wird ja erst auf die Daten gehauen, wenn sie sich auf den CAN-Bus begeben. Also wenn überhaupt, dann sind die in LV erst und nur in der Funktion "ncWriteNet" verfügbar. Oder?
Hat jemand eine Idee, wie ich in mein *.txt statt den Nullen den Timestamp vom "CAN Frame Timed"-Cluster der Write-Funktion bekomme? Mir gehts in diesem Thema wirklich nur darum. Alles andere läuft.
Ich hänge mal ein Pseudo-Code-Snippet an, das hoffentlich mehr erklärt als verwirrt:
CAN-Bus ist ganz normal geöffnet und irgendwoher kommen die zu schreibenden Daten. Aber hier eben noch OHNE TimeStamp.
Folglich ist der im "NoError"-Case natürlich einfach der Standard-Wert. Das "Output String-Array" im gleichen Case ist dann das, was ich in die Textdatei schreibe.
Was ich auch schon probiert habe ist in der Write-Funktion den Data-Ausgang der "Call Library Function Node" nach außen zu legen, und den mitzuloggen.
Aber auch hier ist kein Zeitstempel drauf
Ich hoffe von Euch hat noch einer eine Idee, denn ich weiß nichts mehr.
Danke und Gruß
Dommas