LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

measuring current of linear actuator

Hello All Lab users,

 

I am trying to develop a 3 axis robot arm with the help of linear actuators. in order to move the arm it should first do a refrence run to reach 0 position that i have done using infrared sensors. Till here everything worked as expected. 

 

Now i would like to measure the current of motors in the running mode, so that in case anything comes in the way of motor path due to high amount (more than the current needed for normal run) of current use  the motor stops in order to avoid any hardware damage. Generally speaking i know this is possible but how exactly can i implement that i am not sure. does anybody has any example or article refrence so that i can get idea about how to do that. 

 

Here is the motor i am using:

http://en.nanotec.com/products/657-l20-linearaktuator-mit-trapezspindel/

 

And the encoder and controller of this motor:

http://en.nanotec.com/products/191-noe1-3-channel-miniature-encoder/    (NOE1-05-C12 (6 mm))

 

http://en.nanotec.com/products/1029-smcp33-stepper-motor-controllers-with-closed-loopdevice-plug-in-...

 

In closed loop one can measure the current.

 

Any help would be appreciated. Thank a lot in advance.

0 Kudos
Message 1 of 6
(4,825 Views)
Are you asking how to measure current in a circuit? If so...typically you would use a shunt resistor (low value, high power resistor to drop a small voltage across which you can measure) or a hall effect current sensor (you pass the cable/wire through it). Either one gives you a voltage you can measure using a suitable DAQ card.

Some motor controllers have built-in current feedback.

LabVIEW Champion, CLA, CLED, CTD
(blog)
0 Kudos
Message 2 of 6
(4,819 Views)

Hi,

 

As far as i know my controller has built in current feedback. The thing i dont know is how this can be implemented in Labview. As a wrote earlier i am new to labview. Any working example or article regarding current measurement would be helpfull.secondly i am not using any NI hardware, all the motors, encoders and controllers are from Nanotec and i can communicate/control those motors using USB . 

 

Thanks

0 Kudos
Message 3 of 6
(4,810 Views)
Then you need to find the LabVIEW drivers for the Nanotec controller you are using and the user manual which describes how to read the current data.

If you are new to LabVIEW - then take some of the free tutorials (e.g. http://www.learnni.com).

LabVIEW Champion, CLA, CLED, CTD
(blog)
0 Kudos
Message 4 of 6
(4,782 Views)

Generally a motor controller has two parameters which will safely limit the output of the motor, commonly referred to as 'run current' and 'peak current'.  The 'run current' is the maximum allowable current output for continuous duty operations and the 'peak current' is for short duty operations, usually defined over a finite time to handle large instantaneous loads like those of overcoming inertia when moving a load from rest position.

 

I'd check the motor controller's options and you'll likely find these values.  Then you can configure them in firmware and let the motor controller detect and limit the current using it's real time hardware rather than trying to close the loop externally in software. 

0 Kudos
Message 5 of 6
(4,768 Views)

Hi,

 

Thanks for the info. I have checked in the technical documentation. There are run and peak currents but both values remain same i.e. my run current and peak current are same i cannot change one  another so limiting peak current over specified time cannot be done with this type of motor. With that i left only with doing it in software. 

0 Kudos
Message 6 of 6
(4,713 Views)