Hardware modifications and upgrades of Hexy

Hi all,

In this post I would like to describe what kind of hardware modifications and upgrades I did to Hexy.

1) Metal-gear servos
As was mentioned here several times, Hexy suffers from overloading of the original servos with plastic gears. Therefore I purchased whole set of metal-gear servos Turnigy TGY-50090M. They are very cheap and powerful. Since the replacement I did not observe any mechanical problems.

2) Ankle servo zeroed at -45 deg
As was mentioned by people from Arcbotics, the metal-gear servos were not chosen for Hexy due to their tendency to get stuck at the end of the range. This is also true for Turnigy servos. However, you really don’t need the whole range of the servo, hence there is no practical reason for the servos to get stuck. Hip and Knee servos use range of about +/-45 deg. The only problem is with Ankle which in original design can go +/-130 deg, while the servos mechanical range is about +/-95 deg. However, the top part of the range (when the foot is aiming to the ceiling) is useless. Therefore I attached the horn of the Angle servo at -45 deg, having mechanical range of +45 to -135 deg. This way the servo never uses the whole range for any walk movement. On the pictures you can see middle of the range and two extreme positions.
Remark: Of course, you have to make proper adjustments in robot.py for all ankle servo position calculations.



3) Legs mirrored
The third modification is more aesthetic than practical. I didn’t like much that the left and right side of Hexy is not symmetrical. Therefore I disassembled all hips and knees on right-side legs and reassembled them back “inside-out” (the small dots mentioned in the assembly document are now outside instead of inside). This way the legs are symmetrical.
Also this modification required software change in robot.py, where you have to invert all angles for the knees and ankles of the right legs.
Remark: If you want, you can do the change to the left legs instead of the right.

4) Voltmeter
Probably all of you got to the situation when the robot started to shake strangely or didn’t respond well to the commands. Then one of the checks it to measure if the batteries are not dead. I don’t know how about you, but I found disconnecting and measuring the batteries each time as quite annoying. Especially when the voltage drop is most visible under load - when servos are moving. Therefore I was looking how to measure the voltage in “real-time”. First, I wanted to use some small digital voltmeter permanently attached to Hexy, but I found out that most kinds need auxiliary power supply or they start to operate from at least 4V. Therefore I chose old-school solution - an analog voltmeter. The benefits are that it is powered directly from the measured power source, it consumes only 1 mA (!!!) of current and it reacts relatively fast on the voltage changes. The voltmeter you can see on the picture was originally in much bigger plastic box which I threw away. I also changed the scaling to use the whole range (0-8V).
Please check my video to see how the voltmeter reacts for different load of the servos. I found the voltmeter very useful as a check of how power-demanding some movements are.



http://youtu.be/dPQxlHO5zb8

5) Angled connection of the bluetooth module
This is just a minor modification, but to accommodate 9V battery on the top of Hexy, I had to bend the connector of the bluetooth module. So now it is sticking in the back.

I hope you found this post useful! Next time I will present my software changes.

I, too, switched to the same metal geared servos for the legs. The others don’t seem to be critical. I have also tried some hobby king digital servos. I actually think they are better for the leg servos (more torque), but they don’t “detach” when you kill them. They still draw current. Not bad for holding position, however. I still haven’t decided which way to go.