From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Motion Control and Motor Drives

cancel
Showing results for 
Search instead for 
Did you mean: 

Softmotion move based on external input

I've inherited a softmotion system (CRIO, FPGA is running in scan mode) that's currently not working. I've got a single axis controlled by a stepper motor.

This axis moves a pin down and pushes the pin into a plastic surface. I need to maintain a specified force. When the pin is pushing down, the plastic is being heated up and is deforming, so the axis will need to move. Additionally, the specified force changes over time.

 

I'm curious if softmotion has any built in features to make this sort of thing happen. Like I could just give it a setpoint (in force), and tell it an analog input channel, and say move. Then as I'm going change the setpoint.

I've tried to do this with velocity moves, with pretty poor results. (Start a velocity line moves, then periodically update the velocity property of the move, then call the start invode node) I think the problem is that to change velocities, it stops the motor, then starts it again. So if I need to go from 400 to 500, it really goes from 400 to 0 to 500 (numbers in Units/s). Additionally, if it's on target, setting the velocity to 0 and calling start sometimes throws an error, sometimes does nothing (the axis continues to move at the previously specified speed). I've experimented with blended line moves as well, but every time I try to update the velocity I get error -77063

 

Any suggestions? This is my first experience with softmotion, so let me know if I've left out any important info.

 

Thanks

0 Kudos
Message 1 of 3
(5,529 Views)

Hi Derek,

 

I'm curious, was this system working before you inherited it? If so, was there anything about this system's code or setup that changed?

 

Here is a link on blending that might be useful:

http://zone.ni.com/reference/en-XX/help/371093M-01/mclvhowto/moveblendinginfo/

 

That error seems to indicate that you might be trying to do a blend move before the last one is finished.

 

 

You might also want to check out this forum post:

http://forums.ni.com/t5/LabVIEW/Velocity-profiling-with-SoftMotion-Module/td-p/1062345

0 Kudos
Message 2 of 3
(5,478 Views)

My first instinct tells me that it may be tough to control the force you are applying by controlling the velocity of the motor, but the fact that you are doing that leads me to believe that I may not fully understand your application.  Any chance you can send some video or a picture?

 

Assuming that I do understand I would try controlling the position instead of velocity.  In regards to what softmotion is capable of I'm not sure, but it sounds like your on the right track except I would again update position instead of velocity.

0 Kudos
Message 3 of 3
(5,476 Views)