09-27-2012 08:33 AM
Hi,
We are using NI-USB multi function DAQ cards, NI-DAQmx and Measurement Studio.
A next project might be a closed loop control where we would like to control many stepper motors (max. 20). Is there any nice way to make the stepper motor controllers by C# and Visual Studio? Maybe I must make a wrapper around NI motion software library.. or something..?
What driver software we need? What new hardware?
The closed loop controller's cycle time is not critical; a few hertz is OK..
BR,
Ilkka
09-28-2012 03:52 AM
Hi, it depends which HW-Platform you want to use.
There are basically two possibilities.
1) PCI- or PXI-Card programmed with NI-Motion --> C-API can be use in C#/C++-Projects
2) NI-RIO based Softmotion System, programming with LabVIEW (FPGA) / System can be interfaced via C-API
for 20 axes you need a couple of Motion-Cards or a cRIO-Chassis + Expansion Chassis loaded with motion modules + the drives for 20 axes (depends on the power of the steppers)
Marco Brauner NIG
09-29-2012 10:04 AM
speed control or position control? what is your feedback mechanism?
10-01-2012 10:28 AM
Hello Stu,
A simple position control is enough.
The feedback: We would like to balance and tune a big diesel engine. We are measuring cylinder pressures and some other parameters. Based on that we would like to mechanically push some parts affecting to fuel injection. A linear stepper motor accutuator is maybe a good solution for that..
The maximum twenty stepper motors is related to a cylinder count of the engine; one stepper motor per cylinder.
BR,
Ilkka
10-01-2012 10:50 AM
i would solve this with a cRIO chassis and FPGA control of step and direction to stepper motor controller that can use step and direction input. then implement a TCP/IP protocol to control/monitor it from C. the pressure feedback could be incorporated into the cRIO as well.
one chassis, one digitital module, one analog module.
i have created this kind of application for stepper control several times.
10-01-2012 12:32 PM
Yes.. thanks a lot. I will check the cRIO solution for driving the actuators. I found also an idea, that it is possible to make a communication link between the C#/.NET application and cRIO with a help of shared network variables.
I will surely make the feedback control algorithms into the existing C# application. It contains many years of work and I am not ready to transfer those into cRIO. (I have no experience of it :-)).
Have a nice day,
Ilkka