Intense jitter of servos

I have really interesting problem. I have robotic skeleton that has 6 servos. Here is where story begins: every servo operated perfectly for two weeks and i was writing real time controll program for robot when i uploaded it worked, when i reuploaded my program for random behavior two body turn servos started freaking out, jitterning like crazy (jitter was like 25 degrees back and forth), here i am after two day troubleshooting looking for help. Here is what i have discovered so far: jitter happens only when head turn servo is connected, it doesn't matter on which pin it's connected it just happens, head turn servo doesn't need to be connected to ground and 5volts it happens either when it is connected to ground or 5 volts, jitter happens only when head servo is connected to arduino, when it is not connected to arduino it can be connected to 5volts and ground and jitter won't happen, it happens only with head turn servo, arduino and servos are not grounded together.

How are you powering the servos? You should never power servos from the arduino 5v pin.

You mention that the servos and arduino are not grounded together. They must be. Give them a common ground.

A good detailed wiring diagram will help us look for wiring and power problems, which is usually the cause of jitter like you describe.

ok i will ground them together, i power them with old server psu

Yep, it solved problem right away, but the think is reason why i really started this topic is to gather information about why it happened out of a blue like that.

The problem is that so many of the tutorials show powering devices like servos from the arduino 5v pin.
And it works under some conditions - a single, small, low current servo with no physical load.
And the regulator can keep up, if only just barely.
But then someone gets a bigger servo. Now the regulator is closer to failure.
They put more servos on.
The attach the servos to things that actual take work to move.

It would be so much better if the tutorials were more like this:

ServoDiagram.jpg

Some argue that the tutorials as they are force the beginner to fail, and then discover the solution, setting that solution into their experience much better than words.

I am not sure I agree.

I know that arduino can't provide enough power for servo, it barely powers my led indicator and real time switch. I want to know why were my servos working normally and all of a sudden started jittering, at first they worked just fine without common ground why they started malfunctioning out of a blue.

I'd wonder why they worked in the first place without a common ground.

I see. Why? Why did it work some times and not work other times?

Without the common ground the servo cannot accurately interpret the signal from the arduino. The arduino sends a 5v signal based on its ground.
The servo is looking for a servo based on its ground.

If both those grounds are the same, then the 5v signal is going to be seen as a 5v signal by the servo.

If the grounds are not tied together/attached/common, then they are at some random level relative to each other. A 5v signal from one ground will be a random voltage signal as seen from the other ground.

That random voltage may or may not fall within the variation that the servo permits when it tries to interpret a signal. When it does, your servos behave. When it does not, the servos jitter.
The additional servos affected the relative state of the 2 independent grounds in some way and the servos could not interpret the signal.

I have seen systems where reaching over the arduino would be enough to throw off behavior. (INPUT_PULLUP)

Thanks, i thought of that myself but i wasn't sure, i wanted to hear that from someone else too.

I read another description that made a lot of sense.

How tall is a mountain?
You need to tell me how tall a mountain is. But from what point do you start measuring? Where you are standing? Where I am standing? Unless we are standing at the same height, we would have different measurements.

Connecting the grounds gives us a common point from which to make all measurements.

how to you guys make arduino diagrams like that shown above? I would like to learn!

Mixailo:
Yep, it solved problem right away, but the think is reason why i really started this topic is to gather information about why it happened out of a blue like that.

It was never working right. It happened not to show up before by accident, whereby at least one of the servo
control signals happened to be low at any given time and thus defined ground for all of them. Once
that coincidence went away the whole system was floating and picking up mains-borne noise.

Daniel5815:
how to you guys make arduino diagrams like that shown above? I would like to learn!

It's a Fritzing diagram. Don't go there.