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.
This mini project was initiated because I would have liked to see astable output in real time and also to build simple Arduino input pin protection. Maybe later both could be handy. Arduino can accept from 0 to +5V in analog input pin. (http://arduino.cc/en/Reference/AnalogRead)
Very good description of different type of protections:
I found all components for Zener type so this selected itself
As you can see I connected only part of the Arduino legs and used only two of them (GND+ 1 Analog Input pin):
Connected to astable output with mini grabber test hook:
int analogPin = 4;
int val = 0;
// 300, 600, 1200, 2400, 4800, 9600,
// 14400, 19200, 28800, 38400, 57600, or 115200
// 9600 baud = 9600 bits/sec = 1200 byte / sec
// “1023+enter” = 6 chars
// sampling freq = 200?
val = analogRead(analogPin); // 0.1 ms
This code can be used for the real time analysis (on few Hz). A much faster solution (on few KHz) also could work if the loop() contained only analogRead without serial sending. Every read data could be stored in an array and when it is fully loaded the array could be uploaded to the PC for further analysis (even in Excel or Calc).
Software oscilloscope in action (very short video) Read more…
I use normal IR control to change between different control modes (standing, walking, shut down, etc.) and also use it to change body height during the test.
Most important in this test is that the robot can walk with all the legs at the same time but only one can be in the air. If a second leg reaches rearmost position all 4 legs have to stop and wait for the moving leg landing. The result is automatic sync of all the legs and (almost) continuous walking independently from leg start positions and current body height.
In the previous post I had to fight a lot with this PCB board. So let’s begin the second round.
I have seen many pages explaining how this is working in terms of voltages but only one showed the currents in simulation: Simulation page
It was interesting to see that schematics shows electrolytic capacitors knowing that they will be charged in both directions One side to +Vcc the other one (-) only to 0,6V.
And the building. Sensitive elements are cooled with a simple crocodile clip during soldering.
The magic material: soldering flux. Also could help a lot if you work with dirty or older parts.
Finally I decided to use wires (WOW) to connect the legs.
How do you measure any voltage with normal cable ends? I felt real danger using these iron spears because they could easily short anything and kill the ultra fresh all-inclusive astable.
New measuring cable (crocodile to clip-on probe) solved the problem.