Keyboard Shortcuts
Likes
Search
Improving JMRI response to sensors
开云体育I'm trying to get asymetric brake control (ABC) working and for
cases where I have coaches with lighting wiring I have to switch
the ABC circuit based on a sensor. Tis works, but is very
unreliable and it appears to be because JMRI can take a
significant time to process the event. In this case the first
event shown is the sensor detecting the train and the last event
shown is the relay turning on the ABC circuit to the coaches. The other events are related to the train leaving the previous block and so the system clearing the signal and the ABC relays. The swtiching is being done by LogixNG which a simple if then else so should not take over 2 seconds, unless it is blocked behind other processing, even that seems slow. Is there anyway to speed up processing and or make the stop actions have a higher priority or run in dedicated threads? Thank you Chris
|
开云体育It seems when creating a new thread for
logixNG that does not take effect until you restart JMRI.
I now have the stop processing running
in it's own thread and will see how that works.
Sorry for the noise
chris
On 14/05/2025 18:16, Chris Gerhard via
groups.io wrote:
|
开云体育On 14/05/2025 18:28, Chris Gerhard via
groups.io wrote:
It's much better but it still takes nearly second to respond: JMRI? < <? CBUS |? 18:33:03.586 ACON NN:256 EN:2? Sensor
Active: UDIR1 Long Event On [+n256e2] Dyn Pri: 2 Min Pri: 3 CAN ID
: 1 JMRI? > >? CBUS |? 18:33:04.523 ACOF NN:266 EN:6? Turnout
Closed: ABC_UD1 Long Event Off [-n266e6] Dyn Pri: 2 Min Pri: 3 CAN
ID : 126 This is running on a raspberry pi 5 which does nothing else and appears to be idle. I could bypass JMRI in the electronics but that feels wrong as the logic then appears twice. --chris
|
Chris, What does the ConditionalNG look like? ?Post a screenshot or the Browse output. You might also add a couple of simple "Log data" messages to get the LogixNG timing. Dave Sand ----- Original message ----- From: "Chris Gerhard via groups.io" <chris=[email protected]> Subject: Re: [jmriusers] Improving JMRI response to sensors Date: Wednesday, May 14, 2025 12:45 PM On 14/05/2025 18:28, Chris Gerhard via
groups.io wrote:
It's much better but it still takes nearly second to respond: JMRI? < <? CBUS |? 18:33:03.586 ACON NN:256 EN:2? Sensor Active: UDIR1 Long Event On [+n256e2] Dyn Pri: 2 Min Pri: 3 CAN ID : 1 JMRI? > >? CBUS |? 18:33:04.523 ACOF NN:266 EN:6? Turnout Closed: ABC_UD1 Long Event Off [-n266e6] Dyn Pri: 2 Min Pri: 3 CAN ID : 126 This is running on a raspberry pi 5 which does nothing else and appears to be idle. I could bypass JMRI in the electronics but that feels wrong as the logic then appears twice. --chris
Attachments:
|
开云体育On 14/05/2025 19:16, Dave Sand wrote:
ABC_UD1a is the relay that controls the block directly before the
signal and is set to Closed when the signal is red. That happened
ages in the past as for testing purposes I'm holding the signal at
red. ABC_UD1 is the relay that controls the previous block and has
to be closed when a train pulling coaches that have lighting bar
wiring in them so that they dont interfere with the ABC signal. The timing shown was with a single train running so the only JMRI work will be due to block occupancy changing which from the original trace is signal protecting the previous block becoming yellow and therefore the ABC relays for that block changing. However now I have only one LogixNG running on the thread. I kept the test running and the timing seems to have improved but since I did not change anything I don't think I can rely on that. Thanks
|