LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

[Flexmotion] How to check if a stepper or servo connected?

Hallo!

In our lab we have a computer with a flexmotion card inside and two
different power amplifiers (both are made by MICOS/Germany). One
power amplifier has 3 stepper and 1 servo amplifiers and the other 4 servo
amplifiers inside. Because we have only one flexmotion we have to connect
the cable from the flexmotion to the right power amplifier.

We are now looking for a possibility to check if we have the amplifier for
the servos or the stepper motors connected. So we can avoid that we send
stepper signals to a servo or vice versa.

Any ideas, how this can be done?


--

Ciao , Frank .
0 Kudos
Message 1 of 6
(3,057 Views)
Unfortunately, it isn't very easy to do without sending commands to the motors. Since the amplifier doesn't communicate back to the card there isn't really a way to tell without sending commands. You could set up the motor as an open loop stepper and tell it to move and then check the encoder to see if it did (if your steppers are closed loop). Or if you aren't using the limits you could hardwire the limits and or home inputs so that you could initialize the card and check their status to see what type of drive it is. That is all that I could come up with.

Cheers,

JR A.
Application Engineer
National Instruments
0 Kudos
Message 2 of 6
(3,057 Views)
JR A. wrote:
> Unfortunately, it isn't very easy to do without sending commands to
> the motors. Since the amplifier doesn't communicate back to the card
> there isn't really a way to tell without sending commands. You could
> set up the motor as an open loop stepper and tell it to move and then
> check the encoder to see if it did (if your steppers are closed loop).

All stepper motors are open loop and all servos are closed loop.
And I don't know what will happen, if I send "stepper commands" to
servo and vice versa.

> Or if you aren't using the limits you could hardwire the limits and or
> home inputs so that you could initialize the card and check their
> status to see what type of drive it is. That is all that I could come
> up with.


We have now a working solution. In both MPA there is on axis 4 a servo
connected. We initialize the Flexmotion with a xml-File, where only this
axis is enabled. In one MPA the tripper input of this axis is set to High
and in the other MPA to low. We check now this trigger input and either
display an error message that the wrong MPA is connected or initialize
with a xml file which has all necessary axis enabled.
Any comments on this?

--

Ciao , Frank .
0 Kudos
Message 3 of 6
(3,057 Views)
That sounds like the best solution. You wouldn't even need to display the error message if you didn't want to you could just have it go ahead and initialize to the correct .xml file if it is incorrect. Glad to hear that there was a difference with the limits on one of them. FYI: If you send stepper commands to an open loop stepper axis that isn't actually connected or has a servo connected nothing happens since nothing is connected to the Step and Dir lines where it is outputting.

Cheers,

JR A.
Application Engineering
National Instruments
0 Kudos
Message 4 of 6
(3,057 Views)
JR A. wrote:
> That sounds like the best solution. You wouldn't even need to display
> the error message if you didn't want to you could just have it go
> ahead and initialize to the correct .xml file if it is incorrect.

Using the right xml-file is one thing, more importatnt is that we connect
the cable from the flexmotion to the correct MPA. Unfortunatly that
can't be done automatically.

> Glad to hear that there was a difference with the limits on one of
> them. FYI: If you send stepper commands to an open loop stepper axis
> that isn't actually connected or has a servo connected nothing happens
> since nothing is connected to the Step and Dir lines where it is
> outputting.

And what happen in the other way: servo c
ommands to an open loop stepper?

--

Ciao , Frank .
0 Kudos
Message 5 of 6
(3,057 Views)
If you send servo commands to an axis with an open loop stepper connected to it the motor won't see the signals because it isn't connected to the 'Analog Out' pin. However, since a servo must have feedback, if you told it to move further than the value set for the following error, it will give you a following error.

Cheers,

JR. A
0 Kudos
Message 6 of 6
(3,057 Views)