Innerbreed Pull-Pull Animatronics (3D Printed)

Now you absolutely need to make a video.

Sounds like a reasonable plan. Disregarding the other class I introduced, assuming you are already using the Servo library, the added functionality I added to ServoEx is pretty simple to use.

If today you are using the Servo write method, like:

Servo MyServo; ... MyServo.write(1500);
If you wish for this write to take lets say 1/4 second, you could say.

ServoEx MyServoEx; MyServoEx.move(1500, 250);

which is like using the SSC-32 with a command like: #0P1500T250

If you wish to know if the servo is still in the process of getting to the current position (i.e. still moving), you can do something like:

if (MyServ.Moving()) ...

The other class just makes it, such having multiple servos all start and stop their movement in the exact same 20ms instant more exact…
That is, easy to see from the implementation of the move method.void ServoEx::move(int value, unsigned int MoveTime) { // For now just do shorthand of start, write and commit ServoGroupMove.start(); write(value); ServoGroupMove.commit(MoveTime); }
So if you had two servos, you could do either:

MyServo1.move(1500, 250); MyServo2.move(1500, 250);
or

ServoGroupMove.start(); MyServo1.write(1500); MyServo2.write(1500); ServoGroupMove.commit(250);
The 2nd version has a slight bit less overhead and will have a better chance that both servos will start their changes in the same servo cycle, but my guess is you won’t see any differences…

Note: I am using the write method, but you could have used the writeMicroseconds method instead. The servo write method checks to see if the value you passed in is within a valid set of degrees like 0-180 and maps them to microseconds, otherwise it passes it straight through to writeMicroseconds.

Hope that helps
Kurt

This is great info Kurt. Thank you.

yes, i am using the MyServo1.write command
here i an using two random pickers to randomly select servo values.
one has a small window to select from and the other a larger selection window:

Random_Trigger = random(1200, 1800); Random_value = random(700, 2300);

The code can be used in two ways.
i can use the selected random trigger to randomly select a value from the given window:

MyServo1.write (Random_Trigger);

or i can just set the value range if one or two servos require a slightly limited range.

MyServo1.write (random(1300, 1600));

im sure a combination of the ServoEx code and this would work great.

@Kurte
Thanks for the clarification… :wink:

Yes, looks like I’ll be ordering a few of your shields with a batch of promini chips. :smiley:

Ok we have made a few minor changes to the control base. Added a power switch plate, adjusted a few of the dimensions, and I have chosen to use a 6" high stack instead of 7".

Those updates to follow shortly…

Anyway, apart from my pc being in the repair shop due to some issues, I haven’t had a chance to finalise the programming. I an happy with 80% of the code but it’s not perfect.

While I wait for my pc and also a few parts I have ordered for another unit, here is the latest images.
http://i531.photobucket.com/albums/dd355/innerbreed/afterfocus_1352473188239.jpg
http://i531.photobucket.com/albums/dd355/innerbreed/Untitled5.jpg

— Stunning —

Jonny,

That is FANTASTIC!

But from my all too brief time in England, I learned never to trust a bird with blue eyes - especially when she was batting her big eyelids at me. :open_mouth:

I would really like to see some videos of this thing. Congratulations on another fascinating project.

Thank you.

Yes a video would be nice but I have no pc to process one. It’s being repaired. :angry:

I have a bit of work to do once I get it back. This will be followed by a video. :wink:

With no pc I have had time to clean my work area as I have another delivery of bird parts arriving this morning so I’ll post those also.

He has a buddy…
Although iv not seen his friend moved yet… not sure how to tell him. Lol
http://i531.photobucket.com/albums/dd355/innerbreed/Untitled-2.jpg

Look like the first one killed the second… !

Here are the today cut Stand V2… :wink:

http://farm9.staticflickr.com/8479/8203102591_c98fe6f074_c.jpg

http://farm9.staticflickr.com/8206/8203101813_f7997801df_c.jpg

http://farm9.staticflickr.com/8057/8204193224_e9867b4a9c_c.jpg

http://farm9.staticflickr.com/8063/8203067437_6b3ae98205_c.jpg

http://farm9.staticflickr.com/8341/8203067023_b58cf10f98_c.jpg

Now package it upland send it to me… lol

Looks great, thanks Eric. :wink:

How many attempts at balancing that thing did it take? Lol

I am an expert… only one… :stuck_out_tongue:

http://farm9.staticflickr.com/8202/8204231048_f9d9b89335_c.jpg

Showing off now. New toy looks to work well.
Very professionally done.

I did the sealing with a soldering iron… i made a mistake when ordering the machine and they send me only remplacement heat element… :blush:

Nice tip. :slight_smile:

Aww - sad pic (well posed)

Hopefully ill get things up and running again soon. I should be aiming to send if off to the taxidermist by mid January - February time.

ok small update.
nothing new… well slightly.

here is the new control case i had Eric make for me.
Its 6" as appose to the 7" ones i was using previously.
http://i531.photobucket.com/albums/dd355/innerbreed/SAM_0767.jpg

I have also added the acrylic infill color to the lettering…
http://i531.photobucket.com/albums/dd355/innerbreed/SAM_0766.jpg

i also had eric make me up a switch mount also. this has helped keep things neat.
http://i531.photobucket.com/albums/dd355/innerbreed/SAM_0764.jpg

here are the 6" cylinders and also a comparison with the 7" case.
http://i531.photobucket.com/albums/dd355/innerbreed/1353335678380.jpg
http://i531.photobucket.com/albums/dd355/innerbreed/1354207110960.jpg