News:

  • May 31, 2026, 02:37:18 PM

Login with username, password and session length

Recent Posts

Pages: 1 ... 7 8 [9] 10
81
Do-more CPUs and Do-more Designer Software / Ring buffer for fault logging
« Last post by Bobby Tables on March 26, 2026, 01:05:52 PM »
I've been lurking for a while but this is my first post.

Background for the issue:
I want to record the machine state as a file that is able to be loaded into DmDesigner on the simulator so I can troubleshoot the machine state remotely. The BACKUP instruction takes multiple scans to complete so machine states may change before it is done.

I would also like to log important state history leading up to the fault in a ring buffer to be logged in the event of a fault. So as to not bog down the system and the log with writing non important events.

I want to log fault bits being turned on at rungs that trigger them 0->1. The machine itself has a fault reset switch that will turn off the faults when the cause has been resolved. But I want to use FILELOG or DMLOGGER as an event log so I know what rung caused the fault, important machine state bits, etc. so errors can be reproduced.

To solve the multi scan BACKUP issue I would like to similarly buffer the machine state of the last few scans before the fault occurred.

The issue is FILELOG and DMLOGGER do not have a ring buffer to allow the order and time to be preserved. And I have had trouble finding example of implementing a ring buffer for an event log on here.


Question for the forum:

  • Does anyone have references on how to implement an event log ring buffer in DmDesigner?
  • And has anyone been able to buffer the BACKUP instruction?


The implementation I want is
  • A fault bit 0->1
  • The event is logged in a ring buffer
  • The log is only sent to FILELOG or DMLOGGER upon the machine stop occurring and it waits until the loging is complete before restarting
  • The ring buffer is emptied
  • The machine enters the restarting state
Event logging rough idea:

---|state_variable1 rising contact|---(write to buffer)

---|write_complete_bit|----(MATH: buffer_length=buffer_length+1)

---|state_variable1 falling contact|---(write to buffer)

---|write_complete_bit|----(MATH: buffer_length(V###)=buffer_length+1)

---|fault_on_bit|----(read_from_buffer_trigger_bit)

[fault handling logic follows and the machine enters a stopped state]

----|machine_is_stopped_state_bit|------[logic to read from buffer in order using for loop and/or buffer read instruction for FIFO into FILELOG or DMLOGGER]
 
Or creating an image reading from a different larger buffer with the whole machine state in the last few scans
 
---|read_1_buffer_entry_complete_bit|----(MATH:  buffer_length=buffer_length-1)

---|EQU buffer_length=0|-----(buffer_length_is_full_bit)

The FIFO buffer by default doesn't seem to necessarily be a ring buffer implementation. Is there a way to modify it to work like one?
for reference
https://en.wikipedia.org/wiki/Circular_buffertcplclib_tc2_utilities/35413643.html&id=
82
My pleasure. Thanks for the fix!
We'll get it fixed in the next version of DmDesigner. Thanks for pointing it out.
83
We'll get it fixed in the next version of DmDesigner. Thanks for pointing it out.
84
Do-more Programming Examples / Re: Example: Set an IP address using a SS string.
« Last post by franji1 on March 23, 2026, 09:15:53 AM »
I tried this, but it didn't work. Is this a depreciated feature?

Which specific Ethernet Port are you trying to configure?  There is the built-in one, but then there are others that can exist such as in a BRX POM module or in a 205 ECOM module.
85
Do-more Programming Examples / Re: Example: Set an IP address using a SS string.
« Last post by plcnut on March 21, 2026, 01:47:37 PM »
There is a sample program attached to my fist post. If you load that sample program in your PLC, then it should work.
86
The "Command Timeout:" in the Ethernet Peer-to-Peer Client Settings has a label of seconds (sec) when it should be milliseconds (ms) like the ACK Timeout.

Pretty minor issue, and it's clear from the documentation that the default can't be 250 sec (250,000 ms) because the max is 32,767 ms, but it confused me the first time I opened the settings, and it would be good to fix for correctness' sake. This is already correct in the Internal Ethernet menu.

More details:
Do-More Designer Version: 2.11.2.75 (Production)
Build environment: Windows 10 Enterprise (Build 26200) labeled "Windows 11"
Selected PLC Hardware Class: any with Built-in Ethernet (x-DM1E-x or DM-SIM)

How to find the menu:
Main DMD window in the top menubar: PLC → System Configuration (brings up a window)
System Configuration window, on the left: Configuration Entries → Device Configuration
System Configuration window, in the middle: Device Configuration: Device Name → @IntEthDMPPClient → double-click/click Edit Device button on the right (brings up a window)
Edit Do-more Ethernet Peer-to-Peer Client Settings: "Command Timeout:" (third from the top) default value "250" units "sec" should be "ms"

87
I tried this, but it didn't work. Is this a depreciated feature?
88
Do-more CPUs and Do-more Designer Software / Re: BX-08AD-3 not detected by CPU
« Last post by Kristjan on March 18, 2026, 01:28:45 PM »
Thank you for the feedback guys, we appreciate it  :)
I will be shipping the modules to Host and looking forward to the outcome.
89
Do-more CPUs and Do-more Designer Software / Re: BX-08AD-3 not detected by CPU
« Last post by MikeS on March 16, 2026, 03:14:12 PM »
I put together a quick test system here with the same I/O modules in the same layout you have and tried doing hateful things to it do make it fail with no success. Any error condition I could generate was resolved when the cause of the error was removed.

If you have a specific I/O configuration that can readily reproduce the error you're seeing please let me know. If it takes a particular module to generate the error, I'd like to have that module back here to see what's going wrong. If the module is damaged, it will be repaired before being sent back.
90
Do-more CPUs and Do-more Designer Software / Re: BX-08AD-3 not detected by CPU
« Last post by BobO on March 16, 2026, 12:07:20 PM »
I know of no problems with the -3 analog. If you have failing hardware, I'd really love to test it.
Pages: 1 ... 7 8 [9] 10