Few pictures about the servo bus building:
Breadboard was used to hold the 3 line pin header while I soldered everything
Maybe it is just my paranoid schizophrenia but I always want to measure the result before use. I found only one problematic leg but that could have caused more fun in production later. Sometimes I check the resistors value in both directions. Who knows if electrons can go through the wire the same way they come?The real test if Arduino can control all the servos:
Used Arduino code (just raw position control):
This is little Johnny: totally offline it is able to stand and wears an Arduino on its back. The question is simple: how the 12 servos can be connected to the Arduino and to the power source without using cable jungle?
A possible solution can be to use a 3 row pin header as power and control sign bus:
Only the common ground and 5V line need to be soldered with the help of prototype PCB. 3rd line will be used to provide PWM by servo (the only complicated part where additional wire and one line 90 degree pin header is required). The result could be a 100% servo terminal compatible connector.
Very cheap headers: http://www.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=31589
Last time we used simple toy rubber balls for leg protection but this time my brother wanted to have professional solution using very high quality 2 component Polyurethane Casting Resin. This requires a mold so a brand new mold was designed and manufactured.
In my opinion the technology is much more interesting than the result itself. These are amazing photos and I think the last one really looks like an alien hatching device
My brother sent me few photos of the second phase of the printed robot body assembly. The screw is not a huge as you can see below:
Next steps: prepare the mortise, test with screw, assemble servo arm, and do the same for 8 times
I always wanted to check one of these units and luckily I found many optical sensors. Only 2 of them are used in the below test circuit:
(Resistors are connected to ground: on infrared emitter side 1K, on phototransistor side 10K used, + marked legs are connected to +5V)
int prev1 = 0;
int prev2 = 0;
int pos = 0;
int cur1 = digitalRead(26);
int cur2 = digitalRead(28);
int sum = cur1*2+cur2;
int psum = prev1*2+prev2;
if(psum==3 && sum==2)pos–;
if(psum==2 && sum==0)pos–;
if(psum==0 && sum==1)pos–;
if(psum==1 && sum==3)pos–;
if(psum==2 && sum==3)pos++;
if(psum==0 && sum==2)pos++;
if(psum==1 && sum==0)pos++;
if(psum==3 && sum==1)pos++;
This configuration can count 16 pulses per rotation. The sensors not only required to detect direction but they simply increases the resolution too.
Almost unbelievable: 1024 pulse per rotation and Maximum Rotating Speed: 6000rpm!
Let’s check the result of 2 years work
My brother developed a holding frame where we use a simple counterweight in order to decrease the load.
This way the robot can “easily” stand up and move. I do not know the exact weight (few Kgs) but you can see the size of this iron block.