Clarification on Silence Time in the subnetwork of the AB7319-B
I need clarification on the intended use of silence time. The documentation states:
Default = 0 (disabled)
The minimum required time between the end of one message and the start of the next. If a device on the subnetwork is slow or lacks a message queue, inserting a pause may be necessary to ensure proper message handling.
I interpret this to mean that when sending or receiving messages, the system waits at least the set silence time before transmitting the next message. However, does this also apply to message consumption? Specifically, if two consecutive messages share the same CAN ID, does silence time prevent one from overwriting the previous data before it can be read?
If silence time is not the solution, is this a common issue? In our implementation, when querying an ECU, we receive multiple frames in rapid succession (sub-millisecond to >10ms range). Since they share the same CAN ID, they overwrite each other before we can process the data, making it unusable.
-
Silence time is only applied to the messages sent by the Communicator CAN on the CAN bus, it causes the CAN transceiver in the Communicator CAN to insert a pause between frames that it is transmitting.
It seems as though you need the same option in the ECU, if it is streaming data using one CAN ID then only the last received value will be stored for passing to the Modbus TCP Client as you have found. There is no buffering in the Communicator range, messages are received continuously from the CAN bus and the data stored, overwriting the previous data sent on the same CAN ID.There is no solution to this problem in the Communicator CAN.
0
Please sign in to leave a comment.
Comments
1 comment