Motion Control and Motor Drives

annuler
Affichage des résultats de 
Rechercher plutôt 
Vouliez-vous dire : 

Stepper motor noise in 1 direction

Hi guys, i'm currently using my 6221 DAQ to provide the pulse train to drive my stepper motor (through a stepper driver). But i'm currently having a problem. The motor always produce clicking noises when i run it in 1 direction. I've tried swapping the driver and checking the cables but to no avail. Based on your experiences, what may be the problem here?
0 Compliments
Message 1 sur 16
6 047 Visites
As I have posted many times in this forum, I'm not a fan of using DAQ boards for controlling motors (e. g. here, here and here). Typically the costs that you can save by using a cheaper DAQ board (compared to a motion control board) will be wasted rapidly by the additional time that you need to spend for implementing a solution that is anything but ideal.

But anyway.
Which part of the 6221 are you using to control the motor? (DIO, AO, Counter)? Are you using software timing or hardware timing? Have you checked the electrical signals with a scope? There is a chance that the control signals are pulled down by low-impedance inputs of the drive. E. g. if this happens to the Dir+ signal, you may see the problem that you are talking about (ok, when Dir+ signal is low, not reliable if Dir+ signal is high).

By the way: NI motion control boards provide open collector outputs that allow to drive up to 64 mA.

Best regards,

Jochen Klier
National Instruments

0 Compliments
Message 2 sur 16
6 041 Visites
Thanks Jochen for your reply.

>As I have posted many times in this forum, I'm not a fan of using DAQ boards for controlling motors (e. g. here, here and here). Typically the costs that you can save by using a >cheaper DAQ board (compared to a motion control board) will be wasted rapidly by the additional time that you need to spend for implementing a solution that is anything but ideal.

Well, sometimes tasks are given to us just like this...


>But anyway.
>Which part of the 6221 are you using to control the motor? (DIO, AO, Counter)? Are you using software timing or hardware timing?

I'm using AO to generate the TLL pulses. I'm using software timing

>Have you checked the electrical signals with a scope? There is a chance that the control signals are pulled down by low-impedance inputs of the drive. E. g. if this happens to the Dir+ signal, you may see the problem that you are talking about (ok, when Dir+ signal is low, not reliable if Dir+ signal is high).

I've checked the pulse train for both forward and reverse action and it both looks the same. My Dir signal is driven with a DIO line. How would i know if my Dir signal is causing the problem? I haven't thought of probing it with the scope yet but what kind of 'unreliability' should i be looking for? Isn't it just 5V and 0V?

And if Dir signal is the problem how can i rectify it?

>By the way: NI motion control boards provide open collector outputs that allow to drive up to 64 mA.
Mine requires 1.5A
0 Compliments
Message 3 sur 16
6 037 Visites
Hi Jochen, the driver i'm using is L297 from ST. If what you say about the direction pin is true, would pulling is high to 5V with a 10k resistor help?
0 Compliments
Message 4 sur 16
6 032 Visites
  1. As long as you are not running the application on a real-time operating system, you definitely should switch to hardware timed AO (waveform generation). Otherwise the jitter caused by Windows will always result in bad step timing, which could result in step loss or bumpy moves.
    Please note, that the AO can drive only +/- 5 mA.

  2. If the problem is caused by the Dir signal, you may see a voltage drop when you connect the digital line to the Dir input. Maybe the voltage is pulled down close to a level of the drive's switching voltage, which could result in the drive not being able to detect the Dir signal reliably. Depending on the output you are using, the DIOs on your board can drive 24 or 16 mA.

  3. The 64 mA that I gave you didn't refer to the current required to drive the motor but to the current that you can draw from the controller's outputs. So you should compare it to the other current specs in this post.

Please check your drive's input impedance specs and monitor the control signals with a scope. If you see a voltage drop, the drive's input impedances are too low to connect it directly to the outputs of the 6221. In this case you should use buffers (e .g. voltage follower circuitry) between the 6221 and your drive (or use a motion control board instead Smiley clignant de l'œil)

I hope this helps,

Jochen Klier
National Instruments


0 Compliments
Message 5 sur 16
6 029 Visites
Does it rotate while making the noise? Is the motor shaft connected to anything else?
~~~~~~~~~~~~~~~~~~~~~~~~~~
"It’s the questions that drive us.”
~~~~~~~~~~~~~~~~~~~~~~~~~~
0 Compliments
Message 6 sur 16
6 016 Visites
Hi AnalogKid. Yes, when it makes the clicking noise it is still rotating, sometimes it looks as if it's skipping a step. The shaft is connected to a series of gears.

Jochen,
>1. As long as you are not running the application on a real-time operating system, you definitely should switch to hardware timed AO (waveform generation). Otherwise the jitter >caused by Windows will always result in bad step timing, which could result in step loss or bumpy moves.

I'll try to look up on AO hardware timed pulse generation then post back. But it's strange though the noise only happens at 1 direction, if the waveform generation is an issue shouldn't i be having same problem in both direction? Furthermore, when i tried with other units which uses stepper motors the same problem doesn't exist.

>2. If the problem is caused by the Dir signal, you may see a voltage drop when you connect the digital line to the Dir input. Maybe the voltage is pulled down close to a level of the >drive's switching voltage, which could result in the drive not being able to detect the Dir signal reliably. Depending on the output you are using, the DIOs on your board can drive 24 >or 16 mA.
>Please check your drive's input impedance specs and monitor the control signals with a scope. If you see a voltage drop, the drive's input impedances are too low to connect it >directly to the outputs of the 6221. In this case you should use buffers (e .g. voltage follower circuitry) between the 6221 and your drive (or use a motion control board instead >:smileywink

The driver i have uses L297 and L298. I've checked the datasheet for L297 and the direction pin is connected to a flip-flop. Flip-flops shouldnt' need an extra buffer does it?
0 Compliments
Message 7 sur 16
6 009 Visites
Hi guys, i've checked the direction pin. No problem, no sudden voltage drop...
0 Compliments
Message 8 sur 16
6 002 Visites

I wonder if you have some gear lash issues that are unidirectional. Can you test the motor in both directions when disconnected from the gear train?

Another test is to provide a stable frequency from a function generator to control speed and just use a voltage source to control direction. This would eliminate the use of your program and DAQ card as a test to see if it a problem with the motor and gears.

~~~~~~~~~~~~~~~~~~~~~~~~~~
"It’s the questions that drive us.”
~~~~~~~~~~~~~~~~~~~~~~~~~~
0 Compliments
Message 9 sur 16
5 993 Visites
That's a good idea analogkid. I'll try it with a function generator.

Another thing, though i don't this is the case, would the power supply quality be a problem? Maybe it's not 'clean' enough etc...though i don't think it's the problem otherwise i would have the same issue on both directions of the motor.
0 Compliments
Message 10 sur 16
5 982 Visites