News:

  • September 25, 2026, 05:24:02 AM

Login with username, password and session length

Author Topic: FIFOLoad same que same scan  (Read 6260 times)

etElMadr

  • Full Member
  • ***
  • Posts: 37
FIFOLoad same que same scan
« on: December 20, 2021, 08:48:29 PM »
I just ran into an issue, not sure if its bug or user misunderstanding. I've worked around it, so not a big deal now but still I wanted to ask. I hope the following depiction makes sense.

Lets say we have the following rungs in the same program. The FIFOLoads into the same que, to be unloaded later. In most cases C1 & C2 aren't Set during the same scan, but sometimes they might be. It appears that when C1 & C2 are both set on the same scan, the Rung 2 FIFOLoad doesn't work. Its not that Rung 2 FIFOLoad is overwritting; Rung 2 FIFOLoad isn't loading.

1: --|C1|---FIFOLoad("Data1" > queA)---
2: --|C2|---FIFOLoad("Data2" > queA)---

My actual input logic is more complex, but I was able to resolve it essentially be making C1 a Leading Edge Contact, and C2 a Trailing Edge Contact.

Bolt

  • Hero Member
  • *****
  • Posts: 598
Re: FIFOLoad same que same scan
« Reply #1 on: December 21, 2021, 01:57:48 AM »
What is you FIFOLOAD instruction's input leg modifier: edge triggered or power flow?

franji1

  • Bit Weenie
  • Host Moderator
  • Hero Member
  • *****
  • Posts: 3847
    • Host Engineering
Re: FIFOLoad same que same scan
« Reply #2 on: December 21, 2021, 09:15:16 AM »
It should work.  I tried it on the same rung (guaranteed to ALWAYS be on the same scan) and it worked (pushing scan counter DST0 and D0 equal to 0 on the same scan - see attachment).

Check your logic.  Another possibility, if the queue is getting FULL from the first one, it won't do the second one.