adccommunitymod (AutomationDirect) asked a question.

Do-more timer

Created Date: October 16,2019

Created By: Ryan_Poethke

**** This post has been imported from our legacy forum. Information in this post may be outdated and links contained in the post may no longer work.****

I'm trying to sequence some outputs using comparative contacts by looking at the accumulator value of a timer. It's not working. Greater-than and less-than contacts are not working as expected. I 've attached a screenshot. { "data-align ": "none ", "data-size ": "thumb ", "data-attachmentid ":125898} I want Y3 to turn on for 1sec between 0 and 1sec, and Y6 to turn on for 1sec between 3 and 4sec. I 've done this many times in DirectSoft, but I can't get it to work in Do-more Designer. What silly, simple thing am I missing here? Do comparative contacts work with timer accumulator values? DMD 2.6 PLC: BX-DM1E-18ED13-D Thanks, Ryan Poethke


  • adccommunitymod (AutomationDirect)

    Created Date: October 16,2019

    Created by: Ryan_Poethke

    I'm trying to sequence some outputs using comparative contacts by looking at the accumulator value of a timer. It's not working. Greater-than and less-than contacts are not working as expected. I 've attached a screenshot.

    { "data-align ": "none ", "data-size ": "thumb ", "data-attachmentid ":125898}

    I want Y3 to turn on for 1sec between 0 and 1sec, and Y6 to turn on for 1sec between 3 and 4sec. I 've done this many times in DirectSoft, but I can't get it to work in Do-more Designer. What silly, simple thing am I missing here? Do comparative contacts work with timer accumulator values?

    DMD 2.6

    PLC: BX-DM1E-18ED13-D

    Thanks,

    Ryan Poethke

    Expand Post
  • adccommunitymod (AutomationDirect)

    Created Date: October 16,2019

    Created by: MikeN

    It looks like it should work to me. Ther only two things I can think of would be if you are using those Y outs somewhere else and it is keeping them from turning on, or a strange interaction with the timer start and latch. If your timer is not working, then it *may* be because the edge contact is turning the line on for one scan, which turns the output on, but perhaps the output is not on during the next scan since the edge contact doesnt hold it on, and this the timer never latches? But thats assuming the timer isnt starting is the problem you are having.

    Expand Post
  • adccommunitymod (AutomationDirect)

    Created Date: October 16,2019

    Created by: M123

    Accumulator is ms

  • adccommunitymod (AutomationDirect)

    Created Date: October 16,2019

    Created by: franji1

    Accumulator is ms

    Yes. The .Acc member is an integer constant representing the number of milliseconds.

    Just change your constant compare values from floating point seconds to integer milliseconds (e.g. change 3.000 to 3000). That should get it working.

  • adccommunitymod (AutomationDirect)

    Created Date: October 16,2019

    Created by: franji1

    That is definitely confusing. Hopefully we can make it more obvious that the status is intelligently formatting the .Acc value to be hours:minutes:seconds.milliseconds, but programmatically, the .Acc value is an integer in milliseconds.

  • adccommunitymod (AutomationDirect)

    Created Date: October 16,2019

    Created by: Ryan_Poethke

    Accumulator is ms

    That was it. I got fooled since you set the timer in seconds now, and don't have to do the mental math. I knew it was something silly.

    Thanks,

    Ryan Poethke

  • adccommunitymod (AutomationDirect)

    Created Date: October 17,2019

    Created by: Ryan_Poethke

    That is definitely confusing. Hopefully we can make it more obvious that the status is intelligently formatting the .Acc value to be hours:minutes:seconds.milliseconds, but programmatically, the .Acc value is an integer in milliseconds.

    It would be cool if the comparative contacts "knew " they were looking at a timer's accumulator, and be able to be addressed as hours:minutes:seconds.milliseconds. If you weren't comparing a timer's accumulator, the contact would behave as it always has. Perhaps a "Timer Compare " set of instructions, so that people don't get confused regarding behavior?

    Thanks,

    Ryan Poethke

    Expand Post
  • adccommunitymod (AutomationDirect)

    Created Date: March 25,2020

    Created by: franji1

    We addressed this in Designer 2.7 by displaying constants in a relational contact in the same display format as the other parameter.

    So if the LHS of a>= contact is a Timer Accumulator (with HH:MM:SS.mmm format), a constant of 3.000 on the RHS will show up as 0.003s , not 3.000 constant, because the LHS accumulator value is an integer equal to the number of milliseconds, not number of seconds.

    Expand Post