Motion Control and Motor Drives

cancel
Showing results for 
Search instead for 
Did you mean: 

9148 chassis, 951x modules, and SoftMotion

I'd like to develop a motion control application using C series modules without using LabVIEW Real Time. I've found a few sources pointing to a possible solution, but am having trouble finding detailed information.

 

My main source is one section of a motion control applications engineering document:

 

http://www.ni.com/white-paper/12127/en#toc4

 

"For simple automated motion tasks you can execute a NI SoftMotion based application with a Windows based host PC connected to the new NI 9148 Ethernet RIO Expansion Chassis and a C Series drive Interface module. Using this approach, the NI SoftMotion engine is deployed on the NI 9148 to assure reliable execution of the motion control application, and so that users don’t have to realize a real-time application. The user application will be executed on the Windows based host PC, sending the position commands directly to the C Series Drive Interface modules using the RIO Scan Engine. This implementation offers the ease-of-use of programming a Windows based application and provides reliable motion control for closing the position control loops on dedicated hardware inside the C Series module."

 

Has anyone done this before? Any thoughts on pros/cons? Does any better documentation exist?

 

Thanks!

0 Kudos
Message 1 of 3
(6,169 Views)

One thought I have is extra I/O.  Did you select this hardware based on the ability to incorporate other C-series modules for general purpose I/O as well as motion control?  It would be advantageous in that case to program in Real-Time as well.  

 

If you use the Scan Engine, you can access other I/O channels from your PC without programming in Real-Time, but it becomes less effective above sampling rates of about 500 Hz.

0 Kudos
Message 2 of 3
(6,151 Views)

Hey maxwellb,

 

Here is a list of pros and cons (as compared to other RT based RIO solutions) that I was able to come up with when using 951x modules with a 9148:

 

Pros

 

  • It's cheaper than alternative solutions, both from a hardware and software standpoint.

 

Cons

 

  • In scan mode, there is a hard limit of 4 951x modules per chassis. You might be able to get around this limit in FPGA mode, but it is not worth the extra complexity and reduction in functionality.
  • The motion communication between the host and the 9148 is slow and can be CPU intensive (I am referring to the 9148's CPU). It works well for doing moves, but if you want to get back data (such as position feedback, velocity feedback, limit switch states, etc) faster than ~10Hz, you will run into trouble. Keep in mind that when I say 'get back data,' I mean this for reporting purposes only on the host; the module itself is getting feedback much quicker so that it can close control loops, react to limits,etc. 
  • You have less flexibility. If you need to do something custom on an RT cRIO (for instance, a custom control loop), you can always get down on the FPGA, implement your custom feature, and still use the high level SoftMotion API (function blocks and express VIs). With the 9148, you can implement the custom feature, but you are no longer able to use the high level SoftMotion API since you don't have access to RT.

Those are the pros/cons that come to me off the top of my head.

 

Thanks,

 

Message 3 of 3
(6,141 Views)