Stepper driver interference/noise ?

Hi,

For a hobby project i'm driving 2 steppers using Arduino(Accelstepper library) and 3rd-party stepper drivers.

When i run both steppers at the same time with the same ammount of steps/second(frequency) then there is no problem.
When i run both steppers at different times with different steps/second then it seems that the stepper1 picks up some traces of the steps-frequency of stepper2 (or the other way around).

It's really noticeable when i run stepper1 back and forth 200 steps, and let stepper2 run continiously in 1 direction.
Stepper2 will pick up noise every time stepper1 ramps and changes direction. Depending on the frequency and pulsewidth the behaviour gets worse or better but it never goes away.

both drivers take a +5VDC from the arduino to power the logic and we use 1 powersupply to deliver +12VDC to both drivers
all grounds are bridged together and then connected to the arduino ground and to the ground of the 12V psu

I can try shielded wire for the Steps/direction wiring from arduino --> driver
But i've read somewhere that it's likely to be noise on the ground plane ?
How do i solve "noise on the ground plane" ?

I'd love some tips/solutions to this problem.
note: i'm just starting with electronics, i'll try to understand but don't be supprised if i have more questions after someone posts a solution :slight_smile:

Kind regards

Jeroen

might be worth putting up your circuit
in the meantime do you have smoothing capacitors on the power rails?
and 0.1uF as well?

I'll try to post something that looks like my circuit later today ...

I have no capacitors anywhere, wouldn't know what types there are nor how to use em.

Could you elaborate on that ?

From your description this is what I think I am reading -

you have 2 stepper drivers connected to you Arduino.
The Arduino is supplying the 5V DC for the logic side of your stepper drivers.
The output side of the drivers shares a 12VDC supply.

When running both devices at different rates you get some noise to one or the other driver.

I would question whether the Arduino has enough power to cleanly supply power to the logic side of the 2 drivers. I would suggest that you make sure you have a big enough supply for the logic side of the drivers and use it to power the Arduino board. You may be putting enough load on the Arduino 5VDC that you are pulling the voltage level down at the Arduino and the drivers are nit getting quite the signal level they want. Or suply the Arduino through the USB (I am assuming you are probably working on code) and the stepper drivers with their own 5V supply with all grounds tied together.

I'll try to post something that looks like my circuit later today ...

No waste of time, you post what you have got, not something like it.

I have no capacitors anywhere,

Well you need lots.
http://www.thebox.myzen.co.uk/Tutorial/De-coupling.html

Hi,

I've created a schematic of my situation. Do note i am not using the easydriver but for
practical purposes i'm using a different chopper driver (specs & schematic see http://en.uirobot.com/userfiles/UIM240Manual.pdf)

I hope someone can explain a beginner like me how to sort the interference between the two steppers
Also the Ground and +5V connections from the logic are patched on a breadboard if that makes a difference
The +5V is supplied by the usb connection of a laptop to the arduino board

I'll add the schematics of the drivers, that way those interested don't need to search the pdf

I said:-

No, waste of time, you post what you have got, not something like it.

So we are supposed to guess that you merged those two diagrams correctly and fill in all the missing bits. For example are you actually supplying 12V and do you have the grounds connected together and what power supply are you using.

It is those bits where you could be going wrong. I would have no problem making what you posted work, but you are not me and you do have a problem.
How about a photograph?

i'll try to post a picture tonight ...
i think the schematic should be acurate, all the grounds are connected
my steppers both run almost the way they are supposed to, they don't miss steps (not that i can notice anyway)

but if stepper1 runs continously at a fixed speed and stepper2 start/stops, let say, every 200 steps i get interference in stepper1.

when i hold stepper1 in my hand and close my eyes i can feel when stepper2 start/stops :wink:
i'm not sure if this makes sense to anyone.
there is also a difference in the sound stepper1 produces at that time....

It sounds to me like the power supply can't handle the power requirement. If not that then the lack of large bulk decoupling on the supply is giving you trouble. Try putting a large capacitor (>= 470uF) across the supply of each stepping motor driver.

like this ?

Have never used the stepper library and do not know how the pulse is done for the step (on time versus off time) but you will notice that the driver you mentioned likes to see a "low" rather than the usual "high" for the step because of the way they did the opto-isolation of the inputs. You can see the logic inverter ( transistor ) pictured in the "User MCU " . Have not looked into it but see if the library allows the inversion of the step signal.

I'm not sure how the pulse is done, but at first we did have issues running the steppers, but then we read in the manual that the driver needs
at least 8µs of LOW to step ...

The accelstepper library offcourse has a 'minpulsewidth' setting to allow you to change the length of the pulse. Setting this value > 8 makes the steppers run flawlessly. (perhaps i can assume both High and Low are the same length and are equal to 'minpulsewidth' )

I've set the minpulsewidth to various values in the range of 5 --> 500. This does not change my interference/noise levels when running both at the same time.
The only thing i've noticed to "influence" the behaviour somewhat is when the microstepping and step-frequency of either or both steppers is altered.

I'm going to pick up some capacitors tomorrow and post back my findings.

Thanks for the help so far

Yes, get those capacitors as close to the driver boards as you can.