
Mickey666Maus

Hey there,
I am having an issue with my robots movement here.
I build a litte Lego robot consisting of 10 micro servos, they are supposed to have a 4.8Volts input.
http://www.servodatabase.com/servo/towerpro/sg90
But since I just bought a power supply with a fixed Voltage output, I am putting 6Volts in for this is as far as I can lower the Voltage on this particular power supply...they should be able to take up to 8.4Volts I read!
I made an animation cycle using the AutoPostition in ARC and the movements are pretty smooth...but after a little while the whole motion becomes choppy and erratic.
The power supply is a 7.5v 20 amp switching supply that I found with the help of @SteveG, so the servos should be getting enough Amps!
What could be the problem? I had some Wifi connectivity problems with the EZ-B lately...could it be a problem of data transmittance, or is this some issue with AutoPosition in general?
My board is not having any brown outs so I guess power is supplied at any times!
Where would I start searching for my mistake here?
Also I experienced that my servos are getting jumpy at random points within the animation...it could run well for a good while and then all of a sudden it acts weird, servos are getting jumpy and they are falling back to normal shortly after!
Because of the randomness I was concluding it could be more of a data transmitting problem rather than one from within the Auto Position?
Or could it be that DELAY, STEP or SPEED are interfering and are causing problems at random stages within the animaton?
I tried Client and AP mode with the new channel I found, I am sort of thinking it improved the jumpiness a little, but since it is all random I cannot really tell!
It helped my EZ-B not being kicked out of the network though!
How could I test this better? I was thinking to just make a simple animation just an up/down movement with two servos and have it running for a while...I am a bit stuck here right now!
*confused*
Does your robot also have a ping sensor? If it does, you could try to flood the communications channel by running a script that queries this port with a very minimal sleep step while running the limited animation. If the robot starts experiencing similar issues, it is probably your wifi network still. If not, you know that your wifi network is now good and can start looking in another direction.
I do have the Ultrasonic Distance Sensor for the EZ-B, would this help to run the script you mentioned? Could you help me writing this script, so I can be sure it works properly?
Thanks for pushing this to the right direction, hope it can be solved soon!
This single control might not flood the channel, but a couple will if setup with a small interval.
The sensor script does not seem to be making any difference to the animation running and the animation is also still getting choppy at random times!
I am running the EZ-B on Ap mode and my Laptop sits right next to it!
I am using a Wifi channel which should be free of interferrence and I even removed the Power Supply from my desk!
Any other ideas on how to test for connectivity problems or did I make a mistake setting up those ping controls? *eek*
So, with 2 servos running, this is happening? I suppose it might be possible that the servos are interfering with wifi but I really doubt it.
Try moving the robot further away, like maybe half way across the room and see if the anamation has an issue with running only 2 servos and no ping sensors.
It is not a problem of the servos interferring with the Wifi I guess, it also happens when I hook up the original EZ-Robot HD servos...
I will try to move the robot, and let you know if it will make a difference...
I am off now for a couple of hours but will make further testing asap!
Good luck!
Here's how:
*Add a EZ Script control through the Menu bar; Projuct - Add Control.
*Open it and click on the Cheat Sheet Tab on the upper right.
*Scroll down till you find the frames you've made in Auto Position
*Find the frame you want to use but it needs to have "AutoPositionFrame" in the center of the command.
*Double click to add it the the script.
*After you add the command you will see at the end the Step, Delay, Speed settings in brackets. Replace these with your timing settings as DJ described in an earlier post. Do not use the brackets.
*You can sprinkle other ControlCommands among the AutoPositionFrame commands to get other things to work on your robot.
Hope this helps.
Will be back home in an hour...can't wait to try out the ideas you threw in here!
BTW, the method I laid out above does not exclude the autopositioner. It uses the AP control to execute AP frames individually and sets the timing pramitors from outside the AP control.
I unplugged my robot and for testing it's now just my EZ-B v4 with one EZ-Robot HD servo attached!
I just put a simple Auto Position animation just from a 1 to 180 movement which repeats, all settings on the Auto Position are default! It plays the animation and I am having the same jumpy servo movements as before!
I was also thinking that it might be a good idea to attach one of those continuous rotation servos for testing, but I guess this does not do anything to read disconnects, it keeps rotating when the HD servo gets jumpy!
I changed the mode from ap to client so now the router is also further away from the robot, and I moved the laptop of the desk too!
I will now try the approach that Dave was pointing out, but it is still kind of awkward that the jumpy servo problem persists...cross your fingers for my guys!
Any clues on how this could be solved would be great!
Got it working...
It took a little while to understand how this whole thing works, but being able to change the settings of the AutoPosition within EZ script I tweaked them for a bit and found out that the DELAY values messed up the movement and this caused the servos to get jumpy....so my Wifi connection seems to be OK and now I will plug my robot back in and check if I can tweak the motion so it will run smoothly!
Thank you guys for staying with me and guiding me thru this!
All of you were a great help, I am happy this is solved so I can keep on bringing my little K8 to life!
:Start
Sleep(1000)
ControlCommand("Auto Position", AutoPositionFrame, "Down", 0, 10, 0)
Sleep(1000)
ControlCommand("Auto Position", AutoPositionFrame, "Up", 0, 10, 0)
Goto (Start)
Another lesson to be learned on my way building K8, let's see what lies ahead!
Thanks for all the help, this is a great community!