Motion Control and Motor Drives

cancel
Showing results for 
Search instead for 
Did you mean: 

3 Axis motion control with EtherCAT drives and FPGA

Solved!
Go to solution

I'm still very to labview so please bear with me, even if my questions seem trivial. 

My Setup:
- cRIO 9074 
- Kollmorgen EtherCAT AKD-x00306 

- 3 AKM 21 Motors 

- Labview 2016 

 

My goal is to control 3 axis based on machine gcode with the given hardware. 

My first idea was to run everything on the RTOS, because there I have access to all the softmotion VIs and I'm a bit more flexible when it comes to datatypes, compared to the FPGA . But I realized that due to commands sometimes covering very small distances when a move from point A to point B is executed, that the move would possibly be finished before to RTOS had enough time to do all the preparation for the next move. And thus it would be impossible to achieve continuous motion. 
So my idea was to move the interpreting of the commands off the RTOS and onto FPGA. 
The RTOS would now process the gcode in a way, that I can send it to the FPGA (via a FIFO).

On the FPGA the individual commands would be interpreted and my axis and other possible Hardware would be controlled form the FPGA.

 

At this point in time I'm not sure:

1) if my RTOS is actually too slow and I could actually do everything on the RTOS

2) if i can even use the FPGA platform to control my akd drives

3)if my concept is halfway decant 

0 Kudos
Message 1 of 4
(2,888 Views)

Hi schpongo,

 

You cannot control the AKD-EtherCAT drive directly from FPGA. The SoftMotion functions are working only on RT for EtherCAT drives.

For a continuous move you should not run a sequence of straight lines moves. Please check out the Contour move if you do not need a stop between every point. There are examples available in the NI Example Finder for the Contour move.

 

Regards,

Wolfgang Z.

0 Kudos
Message 2 of 4
(2,812 Views)
Solution
Accepted by topic author schpongo

Hi schpongo,

You cannot control the AKD-EtherCAT drive directly from FPGA. The SoftMotion functions are working only on RT for EtherCAT drives.
For a continuous move you should not run a sequence of straight lines moves. Please check out the Contour move if you do not need a stop between every point. There are examples available in the NI Example Finder for the Contour move.

Regards,
Wolfgang Z.

0 Kudos
Message 3 of 4
(2,811 Views)

I have since also determined that and have moved back to running all my code on the RT side.
But I have also learned that I could control the AKD drives using set-points, but then I would have to implement my own control loops and use the AKD drive in velocity or torque mode.

But thanks for the answer.
Daniel

0 Kudos
Message 4 of 4
(2,808 Views)