Robot Captain Ann Droid

Steve S

USA
robot video thumbnail
robot video thumbnail
robot video thumbnail
robot video thumbnail
robot video thumbnail
robot video thumbnail
robot video thumbnail
robot video thumbnail
robot video thumbnail
robot video thumbnail
robot video thumbnail
robot video thumbnail
robot video thumbnail
robot video thumbnail
robot video thumbnail

This is my first showcase of my robot. Her name is Captain Ann Droid. My last robot was built 25 yrs. ago. When I told my wife and daughter I was going to build a faster and smarter robot they told me it should be a female? She uses an Irobot Create platform, EZ robot kit and software, Radio Shack blue tooth speech unit and other parts. EZ robot has been far above my expectations. Thanks D.J. I hope my links work. Steve S

Thank you to the EZ robot community;)

User-inserted image

User-inserted image

By — Last update

ARC Pro

Upgrade to ARC Pro

Experience early access to the latest features and updates. You'll have everything that is needed to unleash your robot's potential.

#89  

@Glen- You always give me a good chuckle. I try to put some fun into my posts as well. The world is a better place when you try to make people smile.

@Steve. Nice work. Those arms are moving real fluidly. I often find adjusting my speeds helps with fluidity of motion. What speed(s) are you running your servos at? It almost looks like they are full blast 10. (or is it 0 that's faster? I can't remember off hand)

#90  

Antron007 , Thank you for the comments. Great work on the 3D printer. Here are the speeds. I run the head pan and tilt at speed 1 The arm 4 DOF are shoulder speed 2, bicep speed 2, elbow speed 2, and hands are speed 1. I have better movement running the arm movements with FrameJump instead of AutoPosition? This is how they ran in the last video. say("I will raise arms then lower them") sleep(1000) ControlCommand("Auto Position", AutoPositionFrameJump, "hands close") sleep(2700) ControlCommand("Auto Position", AutoPositionFrameJump, "hands open") sleep(2000) ControlCommand("Auto Position", AutoPositionFrameJump, "arms up") sleeP(2500) ControlCommand("Auto Position", AutoPositionFrameJump, "arms middle") sleep(1000) ControlCommand("Auto Position", AutoPositionFrameJump, "arms up") sleeP(1000) ControlCommand("Auto Position", AutoPositionFrameJump, "arms middle") sleep(1500) ControlCommand("Auto Position", AutoPositionFrameJump, "bicep up elbow90") sleep(1800) ControlCommand("Auto Position", AutoPositionFrameJump, "shouldersup") sleep(2000) ControlCommand("Auto Position", AutoPositionFrameJump, "arms up") sleeP(1000) ControlCommand("Auto Position", AutoPositionFrameJump, "shouldersup") sleep(1000) ControlCommand("Auto Position", AutoPositionFrameJump, "arms down") sleep(1500)

ReleaseAll(0)

ControlCommand("Script Manager", ScriptStart, "Reset Servos") and #ControlCommand("Auto Position", AutoPositionAction, "wave") ControlCommand("Auto Position", AutoPositionFrameJump, "R arm wave2") sleep(2500) Say("Hello, how are you on this" + $dayname) Say("in" + $monthname) sleep(1500) ControlCommand("Auto Position", AutoPositionFrameJump, "Rarm wave1") sleep(600) ControlCommand("Auto Position", AutoPositionFrameJump, "R arm wave2") sleep(600) ControlCommand("Auto Position", AutoPositionFrameJump, "Rarm wave1") sleep(600) ControlCommand("Auto Position", AutoPositionFrameJump, "R arm wave2") sleep(600)

ControlCommand("Auto Position", AutoPositionFrameJump, "arms down") sleep(1000) ControlCommand("Script Manager", ScriptStart, "Reset Servos")

When I try AutoPosition with the same frames, it skips steps? I have tried different delays and speeds in Auto Position, but have not stumbled across anything that runs as well as individual FrameJumps? I did have much improvement replacing the 1/4/ scale shoulder servos with standard EZ Robot servos. Steve S

#91  

Awesome tip on the frame jumps. I'm going to be playing with Auto Position a lot here real soon so that is some info I will definitely keep in mind. Thank you for the info and compliments.

#92  

After looking at Daves request for a variable movement for send serial and Richs,s response, I used Rich,s script and modified to create several script speeds to Irobot Create, variable speed forward and reverse scripts. Thank you "Rich" for inspiring me to explore and create new scripts! This script identifies two speeds, $speed and $speed2, one is for ramping up speed and the other ramping down. I think this will only work with Irobot Create "Superset Command"s. Roomba users can easily add a sleep timer instead of wait for distance 156 command. I used a simple serial command wait for distance that moved Create about an inch then added varible ramping speed up and down. The 137,0,0,0,0 is needed to stop. Captain Ann Droid has a total arm span of about 36" / 0.91 meters.

#third attempt Say("I will move forward variable speed up then down")

Set the speeds

$Speed = 25 $Speed2 = 225

Make a point to loop back to

:loop

Send the serial command for ramp up

SendSerial(D0,57600,137,0,$Speed,128,0,156,0,25,137,0,0,0,0) print($Speed ) sleep(100)

Check the speed and act accordingly

IF($Speed < 225) $Speed = $Speed + 25 Else

If the speed is already at 25 end the script.

#Halt() Goto(loop2)

EndIf

Go back to the loop

Goto(loop) :loop2 #Set start of ramp downspeed print($speed2)

Send the serial command for ramp down

SendSerial(D0,57600,137,0,$Speed2,128,0,156,0,25,137,0,0,0,0) print($Speed2 ) sleep(100) IF($Speed2 > 25) $Speed2 = $Speed2 - 25 Else #If speed2 is at 225 end the script Halt() EndIf Goto(loop2)

Second Script #third attempt Say("I will move reverse variable speed up then down")

Set the speeds

$Speed = 225 $Speed2 = 25

Make a point to loop back to

:loop

Send the serial command for ramp up

SendSerial(D0,57600,137,255,$Speed,128,0,156,255,230,137,0,0,0,0) print($Speed ) sleep(100)

Check the speed and act accordingly

IF($Speed > 25) $Speed = $Speed - 25 Else

If the speed is already at 25 end the script.

#Halt() Goto(loop2)

EndIf

Go back to the loop

Goto(loop) :loop2 #Set start of ramp downspeed print($speed2)

Send the serial command for ramp down

SendSerial(D0,57600,137,255,$Speed2,128,0,156,255,230,137,0,0,0,0) print($Speed2 ) sleep(100) IF($Speed2 < 225) $Speed2 = $Speed2 + 25 Else #If speed2 is at 225 end the script Halt() EndIf Goto(loop2)

I hope this works for you! Please let me know. Steve S

United Kingdom
#93  

Looking good Steve, and glad my input on the forums has spurred you on and inspired you to have a go at adapting scripts to suit your needs:)

#94  

Awesome @Steve ! You are definitely one the Forum people who inspires me to create my own Scripting and post videos:) Great job Steve..thank you !

#95  

Thank you Rich and Glen, Both of you are always helpful and encouraging. There are so many great people on this forum. Steve S

#96  

You did a GREAT job on her. I disassembled my roomba robot. The batteries kept going bad and I did not like the design. I took the basic stuff and moved it to the omnibot base, then I took most of the stuff and put it on my new robot "SUNSHINE" named after my wife. It is on a wheelchair base made similar to Lexi-3000. I just put the pictures up. Look in the showcase.