Go Down

Topic: 3 servos for robot arm interfering big time (Read 3 times) previous topic - next topic

automagp68

ok stand by let me see if i can come up with a quick diagram on Eagle that i can post

automagp68



Sorry i did this in 5 min

I just wanted to get something up

This is accurate

automagp68

No one has any ideas?

The code is posted on the first page.

I increased the delay with no real change in behavior other then a noticeable jerk in the arm.

AWOL

"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

automagp68

What do you mean debug output?

There is no debug output 16 lines of code thats it

I dont understand what your asking for

PeterH

Is the Arduino ground directly connected to the servo PSU's GND? Its ambiguous on the diagram.
I only provide help via the forum - please do not contact me for private consultancy.

automagp68


Is the Arduino ground directly connected to the servo PSU's GND? Its ambiguous on the diagram.


Hi I'm sorry that is an error in the schematic

The arduino ground pin connects to the ground bus i created.
Its not hooked to GND directly on the PSU even though its really the same thing

its run to the bus

zoomkat

Quote
No one has any ideas?


I think your wiring choise is bad. Power your pots from the arduino instead of the servo power supply. Also, putting capacitors on servo motors has yet to solve any servo issues in my experience.
Consider the daffodil. And while you're doing that, I'll be over here, looking through your stuff.   8)

automagp68


Quote
No one has any ideas?


I think your wiring choise is bad. Power your pots from the arduino instead of the servo power supply. Also, putting capacitors on servo motors has yet to solve any servo issues in my experience.


The pots are reading in nice clean and smooth signals i can watch them on my scope with exactly the values expected. there is no deviation or spikes in the supply as this was the first thing i checked.

Thats not the issue. But thanks for the idea and input its much appreciated.


zoomkat

Quote
The pots are reading in nice clean and smooth signals i can watch them on my scope with exactly the values expected. there is no deviation or spikes in the supply as this was the first thing i checked. Thats not the issue.


So you monitored these parameters while the servos are dynamically not acting as expected? Static measurements won't identify the issues. One final thought on "Thats not the issue." You have a lot of stuff that you consider you have done correctly (powersupply, pots, etc), but one or more are not as you think.
Consider the daffodil. And while you're doing that, I'll be over here, looking through your stuff.   8)

AWOL

#25
May 01, 2012, 09:02 am Last Edit: May 01, 2012, 09:05 am by AWOL Reason: 1
Quote
What do you mean debug output?

There is no debug output 16 lines of code thats it


By "debug output", I mean getting the sketch to tell you what it knows it is doing, not what you think it should be doing.
Sometimes, the differences in those two outlooks can be quite illuminating.

Try reading reply #14 again.

Shouldn't take long.

Maybe it isn't the issue, but it would be good to eliminate it from inquiries, don't you think?
"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

PeterH

Do you still get the problem if you have all the servos connected but only move one of them at a time?

Do you still get the problem if you remove the input sensing and move the servos through a predefined sequence of positions?

Electromagnetic interference on the servo control wires seems unlikely to me. I think more likely causes are:

  • floating earth

  • brown-out on a power supply

  • pwm moutput on the Arduino being distorted by something that prevents the timer interrupts from triggering/being handled promptly

  • hardware or logic fault in your sketch causing the sketch to command servo positions which are incorrect. Debug trace output would make this obvious.


I only provide help via the forum - please do not contact me for private consultancy.

kf2qd

What is being asked for is to put serial println statements in so that every pass through loop() you can see what the inputs and outputs are doing. You are assuming that they are correct, but they may not be. Unless you print them out you will never know. It will put out a lot of numbers, but those numbers may have a clue as to what is happening.

You ask for help, the hardware is in your hands and not ours, we need to see some data to make any further suggestions.

I have run 3 servos off an Arduino powered from the USB and had no problem so I am fairly confident that the servo commands work just fine.

What size wire are you using to connect things together?

automagp68

Hello

Ok here is the latest. Im trying to get everyones answers so you guys can keep assisting me.

Thanks in advance

What i just now is i took out the analog read and ran all 3 servos together. I put it in a loop with the values incrementing and they ran all together with little problem

So with that being said, what does that tell me. Well I'm not really sure.
From what i gather is the following

the Servo map or code is not the issue.

Im either not reading analog values correct--Which i doubt because it works one at a time.

Im not reading analog correct when I'm reading more then one at a time. -- debug report on reads coming in 5 minutes

orrr.............

Any ideas after this development

trying to answer all ur questions

the wire size is actually pretty large. for this project as i usually work with high voltage.
its being done with 20 gauge wire 600v rating 2 amps

AWOL

Quote
So with that being said, what does that tell me. Well I'm not really sure.

Maybe it is your inputs then.

But we won't know until we see the debug output.
Or maybe that's not the issue.
"Pete, it's a fool looks for logic in the chambers of the human heart." Ulysses Everett McGill.
Do not send technical questions via personal messaging - they will be ignored.

Go Up