Lets talk about Hexy's shaking

I’ve been poking around on the forums, and I’ve noticed many people experience variations of this issue so I thought I’d make a central post for us to discuss it.

I got my hexy kit and put it together and noticed a few things happen:
Problem: Hexy would ‘crash’ and curl up
Solution: Batteries were not strong enough/drained. I instead wired up a low voltage lipo I had around that was spitting out ~6v to test. This fixed the problem

Problem: Hexy twitches and shakes
Solution: ? I’m not sure here.

From reading through the forums, I think we need to agree on:
What is hexy’s max draw? - It was stated the servos pull ~800 mamps at stall. What is the average pull in a complex maneuver? We need to agree on what amp rating batteries are needed to atleast ensure the issue is batteries.

What in the software helps increase twitching? - Can we point to what things in the software actually lead to this? I’ve done a ton of programming and could help contribute fixes, but it would help if the people that have already poked around know what issues need to be addressed.

Thanks!

looks like they solved the twitches with version 1.7. Based on the fixes listed, looks to me that the servos would update too fast.

Oh I can see updating too fast to cause the issue - I actually saw this before.

I have 1.7 on my device but I am still seeing the same issue unfortunately. Anyone else seeing it?

I had one servo that was especially prone to shaking, swapping it with the spare showed that it was that particular servo.

The servo would shake even with nothing connected, but the jitter was limited to one end of the servo’s range. Upon teardown, that servo had a gear that was partially broken.

Ah nice find, I didnt realize this - I take it you actually opened it up and saw the broken gear?

Yes, I had to teardown two of the servos in the end. Both suffered from the same broken gear (top, idle axle). Unfortunately, I’m going to have to make do with 1 less than all the servos for the time being (there appears to be a 4-6 week backlog in the store).

I can swap the servo from the head to get all the legs working again, but it’s a bummer.

-Sandro

The head servo is definitely one that can be “sacrificed”, the head is mostly useless when you’re starting out anyway and it gets in the way when flipping the Hexy over. :slight_smile:

Ya head will be sacrificed as needed.

Has anyone else found ways to reduce the stutter/shaking? Even if the robot is sitting idle it still seems to do it, and I am running the 1.7 firmware with 1.0 pomoco :frowning:

You may have over volted your servos by flowing the (bug) build instructions. Take a look at this post: [url]Servos Jitter Continuously When Testing]

It took me quite some time before coming across a comprehensive fix for this issue.
FIX: http://www.seizurerobots.com/

Just built up my Hexy. Seeing shakes from the servos (USB logic and 4xNiMH for servos). My memory of control theory suggests that we’ve got an overly aggressive feedback loop in the Servotor32 firmware. This is purely conjecture at the moment as I’ve not had a rummage around in the Servotor32 source yet.

(From memory) high proportional gain in a feedback loop controller (Proportional-Integral or Proportional-Integral-Differential) is the first parameter that will push a loop towards instability. Of course, no-one’s reporting unstable operation (complete control failure), merely the system rattling about. As a feedback loop gets closer to instability you tend to see more oscillatory behaviors. Of course, this is based on a purely linear analysis of the system (physical systems rarely are truly linear).

Anyone had a look at Servotor32 to see if there’s some obvious feedback parameters that can be played with? NB turning down the feedback (proportional gain) in the servo loop might increase stability margin for the reasons stated above, but this will be at the expense of speed of response (no 100m finalist Hexys).

You might try 5xNiMH (Powerex) for the servos. I believe the theory was that the voltage from the NiMH was 1.2 V per battery, so 5 gives you 6 volts for the servos. However, lately I’ve seen that some rechargable batteries have higher no-load voltages (which could be bad), so you mileage may vary.
Also, I get a little servo shaking when the all the legs are stuck straight out horizontally, but no shaking when doing moves (i.e. legs are fully loaded). This leads me to believe that you may be correct in that there is a little unstable feedback when all of the legs have no load and are free to vibrate away!

Servotor32 simply tells the servo where to go, the feedback looping is left up to the little chip inside the servo, so there’s not much you can do about the feedback loop besides buying considerably more expensive servos.

Whoops! Don’t get me wrong - I’m more than pleased with the performance of my Hexy. A little shaking when the legs are all off the table doesn’t in any way cause problems when the bot is up and moving.