Jump to content
OMRON Forums

I'm looking for help about the rotation buffer!


Unicornai

Recommended Posts

I'm using the PDK link library in C# now, and then I want to use the rotation buffer, is there any function that can directly send the motion program for him to run directly? I want to send the motion program directly through the HMI interface for him to execute line by line, is there such a function?

Link to comment
Share on other sites

  • Replies 9
  • Created
  • Last Reply

Top Posters In This Topic

  • 2 weeks later...
On 4/12/2024 at 12:26 AM, steve.milici said:

I have attached an application note on this topic. Also see the “Power PMAC User’s Manual” in the chapter “Writing and Executing Script Programs in the Power PMAC” starting on page 610.Rotary Motion Program Buffers in Power PMAC.pdf

hello i used this and When I send the second part of the program, my program header is "open rotary" but it says "error buffer in used", what can I do to make it not prompt this so that my program can be entered,pleaseimage.png.e2f5581f852687f274e2c0ff53f6ac8f.png

Link to comment
Share on other sites

The description of your issue is somewhat vague.

The error #33, “BUFFER IN USE” indicates the command being sent may be trying to “modify” a rotary buffer that is currently in “use”.

Please describe in detail what is being sent to PMAC and how it is being sent and the exact PMAC responses that you get.

Link to comment
Share on other sites

Thank you I know how to solve this problem, but I have encountered a new problem, that is, when I send the program to go in, if the rotation buffer is not executing the motion program, that is, it is only opening the rotation buffer to receive, in fact, it is not rotating in the open state?

Link to comment
Share on other sites

You must send a run command “r” to the rotary buffer pointed to a CS by the begin command “b” as in:

“&1b0r”.

You can also send the run command “r” while the buffer is open – this would make it “live” for any motion content sent.

This is documented in the application note provided.

Link to comment
Share on other sites

On 4/25/2024 at 11:33 PM, steve.milici said:

You must send a run command “r” to the rotary buffer pointed to a CS by the begin command “b” as in:

“&1b0r”.

You can also send the run command “r” while the buffer is open – this would make it “live” for any motion content sent.

This is documented in the application note provided.

thanks,i will try this,and i use

&1delete rotary

&1 define rotary 20000

&1 open rotary

close

&1b0r

&1 open rotary

x..z..c..

and i continue to input coordinate information if rotary buffer is full,it will the coordinate information I input next be overwritten from scratch?

 

 

 

then ,i have other question,if i  want to execute the motion, but there is only one motor in the coordinate system,actully,ihaving done it,but i used two coordinate,one only have z-axis,anther only have x-axis,but the F command only Only effective on the Z-axis ,Z means &1#2, X means &3#1,I don't know how to make the F command work on the X-axis, I just mentioned it separately in a separate coordinate system. Their X-axis and Z-axis are originally in the first coordinate system. When they are together, even if they move separately, the F value will not fluctuate significantly. However, if the X-axis is mentioned separately in the third coordinate system, the F command seems to be ineffective and its fluctuations will increase. I searched for an explanation but did not get a detailed explanation. Please help me, thank you! 

Link to comment
Share on other sites

20 hours ago, Unicornai said:

then ,i have other question,if i  want to execute the motion, but there is only one motor in the coordinate system,actully,ihaving done it,but i used two coordinate,one only have z-axis,anther only have x-axis,but the F command only Only effective on the Z-axis ,Z means &1#2, X means &3#1,I don't know how to make the F command work on the X-axis, I just mentioned it separately in a separate coordinate system. Their X-axis and Z-axis are originally in the first coordinate system. When they are together, even if they move separately, the F value will not fluctuate significantly. However, if the X-axis is mentioned separately in the third coordinate system, the F command seems to be ineffective and its fluctuations will increase. I searched for an explanation but did not get a detailed explanation. Please help me, thank you! 

Some things can interfere in F command (vector feedrate):

  • Axis not within the axes defined by the frax - If you haven't defined anything, you might be okay with that, since by default the axes X, Y and Z are defined.
  • Limitation by Coord[x].MaxFeedRate
  • Limitation by Motor[x].MaxSpeed

 

Have a look at "F{data}" section in the Software Reference Manual.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...