Motion Control and Motor Drives

cancel
Showing results for 
Search instead for 
Did you mean: 

Is 'feed per rev' axis to spindle interpolation possible with the 7344?

Just evaluating the NI-7344 motion controller for a machine tool application. Whilst axis to axis interpolation functions are well described, it is unclear if it would be possible to synchronize an axis with a continuously rotating spindle. My application would have a rotary spindle drive (under closed loop control) continuously running at around 3000rpm, with TTL encoder feedback. There would then be a single linear axis programmed to move at say, 0.2mm per rev of this spindle, to create a fine 'spiral' on the part. A change of spindle speed would not affect the pich of the spiral. Searches brought up helical interpolation but I think this would not work with a continuously running rotary axis. Any advice welcome. Thanks,                                             Chris.

 

0 Kudos
Message 1 of 4
(3,952 Views)

Hi Chris,

 

Could I clarify, would you want the spindle drive driven by the card as well or is this externally driven?  What is your other motor e.g. servo or stepper?  How do you plan to drive this?

 

I forsee two scenarios on here:

 

1) If they are both from the same card then effectively what you want is a 2 axis linear move e.g. axis 1 = k*axis 2 and we should be able to do this with the 7344.

 

2) If the spindle is driven elsewhere and we are driving a stepper motor we could use a counter card to generate x number of pulses to control the stepper per pulses seen from the encoder.  This would be a less intelligent motion system but I believe should work.

 

3) If the spindle is driven elsewhere and we are driving a servo then this will be trickier.  Depending on the drive you have we would have to look at what signals we need to produce for this.

 

Regards,

James Mc
========
Ask me about Rust & NI Hardware
My writings are at https://www.wiresmithtech.com/devs/
Message 2 of 4
(3,940 Views)

Thanks for the reply James.

 

To clarify, I intend to control the spindle using the same card (with 0-10v analog speed command and encoder feedback to the 73440). My other axis is a servo, again +/-10v with TTL encoder.

 

I understand how a traditional 2-axis move would work, for example commanding axis1 move 1000 pulses whilst axis2 moves 500 would result in a linear diagonal move. However, my spindle would be an 'open ended' move, rotating continuously. So in effect we would be asking the linear axis to begin to interpolate with an axis that was already moving  - I am not sure this could be done.

 

Test regards,

                       Chris.

0 Kudos
Message 3 of 4
(3,924 Views)

Hi Chris,

 

I have been pondering how to do this and have come up with a couple of ideas.

 

1) Using the 7344 - You could send a movement command for your linear axis and then gear the other axis off this.  I say this way because then you must have definitive start and stop point for this axis.  I believe this would work but I am unsure of just how well.

 

2) Using other hardware - Our motion hardware/software is generally geared towards positional control rather than speed control.  You could try to set up your own speed controllers using multipurpose hardware and PID loops e.g. DAQ in LabVIEW Real Time or FPGA.  That way a start or endpoint is not required as with our NI-Motion driver.


Regards,

James Mc
========
Ask me about Rust & NI Hardware
My writings are at https://www.wiresmithtech.com/devs/
0 Kudos
Message 4 of 4
(3,899 Views)