Jump to content
OMRON Forums

synchronous gather trigger


wfsteele

Recommended Posts

I wanted to synchronously trigger a gather at a particular point in a motion program by using a synchronous assignment:

 

Gather.Enable == 2

 

but it didn't work. According to the documentation for synchronous assignments, local variables and self-assigned M-variables cannot be assigned to this way, the implication being that anything else is OK. Since Gather.Enable isn't included in either of those categories, I assumed it would work. If, instead I synchronously assign a Q-variable, and then, in a plc program, enable gather when the Q-variable changes; that works (but then there's the latency of the plc program), so I know that the synchronous assign mechanism is working.

Link to comment
Share on other sites

  • Replies 1
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

A clarification is needed in the manual. Data structure elements that are simply registers (or part of registers) can have values assigned synchronously. This is the vast majority of elements. However, a few of the elements are "function" elements -- when assigning a value to one of these in the script environment, a whole host of actions are performed. Gather.Enable is one of these. "Function" elements cannot be written to synchronously.

 

You can tell if an element is a function element by querying its address. If the returned value is 0, it is a function element, so its value cannot be set in a synchronous assignment. So if you query:

 

Gather.Enable.a

 

Power PMAC will return a value of 0.

 

My apologies for the confusion.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.

×
×
  • Create New...