markshancock (Customer) asked a question.

How can an edge be both rising and falling

We have a PLC program that in one part, forwards modbus commands to another controller.

See the screen shot below. Note in rung 2 and 4 C70 is showing as both rising and falling at the same time. I can't see how that should be possible.

PLC_ScreenShotJPG


  • Todd Dice (Customer)

    The blue is to illustrate the status of the C70 address, meaning it's true. What it does not show is the actual status of the one-shot instructions. This is because one-shot rising - or falling - happen in one scan, so an attempt to show this would be almost futile.

    Selected as Best
  • Todd Dice (Customer)

    C70 isn't "rising and falling" at the same time. What is happening is rung 2 is going true only when C70 is going true (and this happens for just one scan), while rung 4 is only true when C70 is going false (and this happens at one later scan).

  • markshancock (Customer)

    But nothing set C70 false. See that only happens on rung 3 if DS9=5 which you can see is not true.

  • markshancock (Customer)

    Yes, I agree that in rung 4, C70 is still on. So, why is the C70 falling edge sensor marked as true (light blue) since a falling edge only happens when C70 turns off - which it didn't.

    • Todd Dice (Customer)

      The blue is to illustrate the status of the C70 address, meaning it's true. What it does not show is the actual status of the one-shot instructions. This is because one-shot rising - or falling - happen in one scan, so an attempt to show this would be almost futile.

      Selected as Best
      • markshancock (Customer)

        Interesting (and possibly logical) but confusing/misleading

    • Matt Pawlak (Customer)

      I mean the light blue highlight indicates the state of the bit, not the state of the instruction. If it indicated a rising or falling edge, you would never see it. If I'm not mistaken.

       

      • markshancock (Customer)

        Light blue should indicate the output of the operation - like the = operator. Yes, I know that if is transient and so will never show but showing it as light blue is inconsistent with how other operators work.

  • markshancock (Customer)

    I have requested someone to capture the values of C59-C65 in case those could be a better way to not keep sending the command but handle a case when the command doesn't work (maybe that is what is causing the problem we are seeing)