Showing results 1 to 7 of 7

Thread: LOG ERROR: 100ms Timer has not cycled

  1. #1
    Join Date
    27.03.2013
    Posts
    19

    Default LOG ERROR: 100ms Timer has not cycled

    Hi,
    At startup a limit violation was not always effective.
    The log error reported below could be the reason of the malfunction?
    What does it mean?

    Log Connection: ZenRt32
    Source file: ZENONRT.CPP (line 389)
    FunctionName: CZenonrtApp::MonitoringThread
    Text: 100ms Timer has not cycled for 10593ms

    Zenon 6.50 SP0 Build 16

    Thanks in advance,
    Alessandro.

  2. #2
    Join Date
    01.07.2008
    Location
    Salzburg, AT
    Posts
    995

    Default Re: LOG ERROR: 100ms Timer has not cycled

    This message means that the CPU of your PC was 10,5s long too busy and the application - zenon Runtime - had no possibility to execute all what it needs to proper work.

  3. #3
    Join Date
    27.03.2013
    Posts
    19

    Default Re: LOG ERROR: 100ms Timer has not cycled

    Thank you for your reply,

    Is It possible that in such conditions the execution of functions on the violation of a limit value of a variable is not execute?

    Best regards,
    Alessandro.

  4. #4
    Join Date
    01.07.2008
    Location
    Salzburg, AT
    Posts
    995

    Default Re: LOG ERROR: 100ms Timer has not cycled

    When CPU is too busy then it is not possible to predict what would be, and what not, executed in the application code. The loss of function calls or data changes is typically first what the user may notice.

    The question is why the RT causes by startup high CPU load. What is the typical CPU load while system is running (and how many Cores has your CPU)? How many variables do you have in your project?

    Also when the project is small, it is possible to make CPU busy by a simple mistake in project - by an recursive call, e.g.: script opening screen where function calls this script; or limit function changing variable value causing call of the same function, etc.

  5. #5
    Join Date
    27.03.2013
    Posts
    19

    Default Re: LOG ERROR: 100ms Timer has not cycled

    Hi ursulak,

    I did some tests
    The error message is presented in non- communication of MODBUS_ENERGY driver.

    Below its configuration:

    [FETCH_HW255]
    VERB_NAME=Default name
    IP_ADR=192.168.229.81
    IP_ADR2=0.0.0.0
    PORT=502
    UNITID=255
    IECTYPE=255
    IECSETTING0=0
    IECSETTING1=0
    IECSETTING2=0

    Other settings:

    Updatetime = 1000 (Global)
    Maximum blocksize =1
    Bundle connection to PLCs with same IP address = YES
    DWORD order = big-endian
    FLOAF order = big-endian
    STRING order = big-endian
    Error handling = 3000 ms
    Connecrion retries = 6
    Reconnection delay = 20000 ms

    Is the driver bad configured or is normal behavior in the event of non- communication?

    Is it present in zenOn an alternative Modbus driver with the possibility to set
    netAddress = 255?

  6. #6
    Join Date
    01.07.2008
    Location
    Salzburg, AT
    Posts
    995

    Default Re: LOG ERROR: 100ms Timer has not cycled

    now i'm totally confused, in the first post you have written "Log Connection: ZenRt32" and suddenly you write about driver configuration; and nothing about your CPU load.
    What is the log message from driver?

    As long as the processor is too busy any application on the PC may have severe problems to work correctly.

    If the driver configuration is correct, or not, is hard to say without the manual of your Slave (PLC). Unusual is when a slave supports so small block size = 1 (typical would be 32 or 253) - size 1 is possible but very seldom; the weakest slaves i know are supporting at least few registers per frame.
    hmm, only one register (variable) per TCP telegram? How many variables?

    I suppose your PC is too weak for the project or the project has recursive call or another configuration mistake. And your driver may have independent problem to establish communication to the slave - e.g. too small block size by many variables (or/and is also affected by too busy processor).

  7. #7
    Join Date
    27.03.2013
    Posts
    19

    Default Re: LOG ERROR: 100ms Timer has not cycled

    Hi ursulak,
    following your instructions, I found the cause of the log message:

    In the project, there is a timer that every second increments a variable on the driver MODBUS_ENERGY; if the driver does not communicate the error appears in the log messages.

    I resolved to increase an internal variable and copy that memory with a memory allocation on the PLC only in communication state.

    Note:
    You're right, a block size = 1 is too low. To increase communication speed will bring it to 32.

    Thank you for your help,

    Bye,
    Alessandro.

Similar Threads

  1. MessageControl sms log error
    By galax in forum zenon Network
    Replies: 2
    Last Post: 18th February 2016, 09:52
  2. Timer
    By zimou in forum zenon Service Engine Supervisor
    Replies: 1
    Last Post: 18th July 2014, 12:56
  3. Timer for control
    By yara in forum Drivers
    Replies: 6
    Last Post: 28th January 2011, 14:32
  4. Error log in server application event.
    By skywalker in forum zenon Service Engine Supervisor
    Replies: 4
    Last Post: 16th May 2010, 23:10
  5. VBA Timer
    By hansvanzijp in forum VBA
    Replies: 4
    Last Post: 15th September 2009, 03:04

Posting Rules

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •