Allegro A3977, Idle noise Help

Status
Not open for further replies.
Also, have you tried running in microstepping mode yet?

Another thing to try is increase the operating voltage of your motor. You are running at 24V but the A3977 can handle up to 35V. A higher voltage will give you better performance at high speeds.

Finally, how much current is one motor using? If the duty cycle allows for it, there is no reason why you couldn't run the motor at a current that is higher than its rating. The more current flowing, the more torque you will have. Just make sure your operation duty cycle is such that the motor will not overheat.
 
Motor drive Options

Thanks,
Changing mechanical config of pump motor is not possible since the motor shaft goes straight into the rear of the pump rotor plate.

I'll try changing the ramp up curve. I can get the code cutter to put in more steps, but I'll do that after I try winding up the drive voltage. I'll also play with the ramp up steps values (freq + interval) since I can set these on-the-fly.

I can also squeeze more current out of the A3977, as that's presently set at about 75%. Heating should not be a problem as the pumps only run for about 5 seconds every minute or so, and we switch off the ENABLE line at the end of reach run, specifically for this reason. I did about 50 consecutive runs this afternoon (each about 20 secs) with no discernable heating in the chip.

I'll keep you posted. Thanks again.
 
Have admitted defeat with the current hardware. No matter what I do with the kit I'm working with, I still have unreliable operation. Basically, I get a stall once in every 7-8 attempts to run the motor, and, I still get some degree of stuttering/shuddering in every couple of runs. This is just not up to what is required for this application. The real limiting factor seems to be, as everyone has suggested, in the acceleration process. The code in our controller is able, currently, to generate a 5 step ramp-up sequence, and while this could easilly be expanded to 10 - 15 steps, or more, I don't think we have the capability to achieve the performance, and especiailly, the level of reliability, demanded by this application, in the time frame available.

For your interest, we have identified an alternate set of driver chips from TRINAMIC (Germany) that handle everything. With either an RS232/485, or an I2C, or CAN connection, you feed it the required number of steps and the desired step frequency, and it works out and manages the acceleration curve process for you. While the standard serial link is good, I2C is especially attractive to us, as this is what we use for our main machine control bus.
 
You went from stalling all the time to stalling 1 out of five and finally 1 out of 8 which means you were making progress.

The new driver chips will help a little but everything they do could be accomplished in your software with the existing drivers. I take it you don't want to waste any more time playing with acceleration algorithms?

Also be prepared to accept that the stepper motors on these pumps may simply not be adequate for your particular application regardless of how you drive them. It sounds like the pumps were intended for dispensing very small controlled quantities but you are going for a larger volume.

Let us know how it works out!
 
Hi Phalanx,

Yes, I was making progress, but much too slowly for the time imperatives of this project. Basically, the sales/marketing end of the team never fully comprehended what a development and prototyping cycle(s) is, and I didn't push pack hard enough this time around, so they sold the product too early. We have three! initial installs to do, right now!, and little time left to be ready for them. We are going to use some off-the-shelf commercial modules, at great cost, to do these first three systems, then go back and rework our own solution. It appears that the Trinamic chip set is by far the shortest path to a finished and economical drive system. I will probably go back and play with the present prototype, but only when I have time.

The pumps themselves were the other side of the problem. The pump unit is a product of another division of this client group, and was the original trigger for this whole project. They quoted a very high efficiency, but the units they delivered to us to use were only about 50% efficient (later found out they were 2nd generation proto's that had been fiddled with). This started us out on the whole high speed drive saga.

Thanks very much for your assistance. I'll keep in touch and let you know what develops.

Regards
Colin (colin@ptcsg.com)
 
hi all -

I'm designing a a3979 stepper board, and came across this forum, some really useful info here. I'd like to use the TVS trick Matilda mentioned last year, to protect from damage by hand-turning the motors:


The thing is, I'm not using external diodes on my board. So if I just put the TVS across VBB/GND, will that work? Because it looks like the back emf is going to go through the chip before it gets to the TVS. Any advice appreciated...
 
Putting external diodes from VBB and GND will not work because, like you said, there is a path through the chip. The back EMF is generated between the mosfets so even with the diode from VBB to GND, it will be forced to travel through them.

You will have to install 4 diodes, two each to VBB and GND on both sides of the motor. When you do this, make sure to turn off synchronous rectification on the chip to assure that the back EMF travels through the external diodes and not the internal ones.
 
phalanx, thanks for your reply...

I'm hoping to avoid using external diodes if I can. I've been thinking about it some more - tell me if this makes sense to anyone: wouldn't the mosfet body diodes perform the same function as the external ones? I know the drain-to-source breakdown of the mosfet is 35 volts. But shouldn't the body diodes in forward conduction handle much more than that? In that case all I'd need is a single unidirectional TVS across the power supply, no?

Thanks again...
 
For normal motor operation, the built-in rectification of the chip is more than adequate. In an application where you expect the motor to be forcefully driven by an external force, I would include the protection diodes since they will be able to handle higher voltages and currents without failing.
 
Hi,
I have read this thread several times because I have some issues with the noise - blanking time with 3977 boards.
Matilda, I have tried your reccomandation 10n+10K and it seems to perform better with higher inductance motors, unfortunately I have found that it doesn't work good on microstepping mode.
PRactically in 1/8 microstepping, 8 steps are going well and the next 8 are not executed - on 9-th step the motor is "jumping" one full mechanical step.

Did you met same problems ?
Also playing with RC values , on 10n+22K pair I have destroyed the 3977. Maybe was from something else...

Any ideas ?

Daniel
 
..hi
i have several question.
what home output in a3977?
how i can built step input signal?
we have 3 pionts on the linear path : left limit - right limit and home position.
i think , we can for 2 limit switchs , connect 2 switchs to dir pin ( a3977) by gate xor.
for home position , i don't know .
please help me. ( quicly)
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…