Motion Control and Motor Drives

cancel
Showing results for 
Search instead for 
Did you mean: 

Configuring a third axis on vector space to perform a tangential following

Is there some kind a function call/mode in flexmotion library to configure a third axis in a vector space to perform a tangential following (ie to remain tangent to the trajectory of the other two axis)?
0 Kudos
Message 1 of 5
(4,009 Views)
I am a little confused about the definition of "tangential following". Would you like to make the velocity on the third axis equal to the tangential velocity of the other two? Please describe the mechanism and the desired results in a little more detail and I would be happy to help.

Regards,

Brent R.
Applications Engineer
National Instruments
Message 2 of 5
(4,009 Views)
Maybe I didn't get your question right but in general there is nothing special about configuring three axis into a vector space. This is the function prototype for configuring up to three axis in a vector space: status = flex_config_vect_spc (boardID, vectorSpace, xaxis, yaxis, zaxis)
If you are using LabVIEW the vi Configure Vector Space.flx provides three inputs for the three axes that can be configured.

Regards,

Jochen Klier
Application Engineering Group Leader
National Instruments Germany
0 Kudos
Message 3 of 5
(4,009 Views)
In some cutting machines, the tool's angle must stay tangent to the trajectory. Two axis are used for X Y positioning and a third axis is used to control the tool's angle (this is the case if the tool is some sort of knife where the side of the blade must be tangent to the trajectory vector). It came to my attention that another motion board manufacturer (Galil) claim that their board can do that without additional programming. Is there any way to do that using FlexMotion without I have to calculate the position of the axis that controls the tool's angle ?
0 Kudos
Message 4 of 5
(4,009 Views)
Tulio,

Thanks for the explanation. This makes perfect sense.

The Flexmotion driver does not have any built in function to perform this type of motion, however it would be relatively straightforward to implement this for contour moves. You could set this up as a 3 axis contour move. Based on the list of X,Y coordinates, use a simple difference equation to get the slope of the trajectory at each point. Convert this slope to rotation in counts and use these values for the third axis (cutter angle). This could be implemented with just a couple VIs or lines of code with negligible processing overhead or you could even use just a spreadsheet. I have attached below a spreadsheet that shows an example of using a difference equation (centra
l difference) to get cutter positions based on X,Y trajectory data.

Cheers,

Brent R.
Applications Engineer
National Instruments
0 Kudos
Message 5 of 5
(4,009 Views)