PDA

View Full Version : [Project] Roz



JonHylands
11-17-2009, 07:16 AM
My first step in world domination...

http://forums.trossenrobotics.com/gallery/files/1/3/2/0/ax-12-triangle-01_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1938&c=newimages)

...more to come...

- Jon

darkback2
11-17-2009, 07:39 AM
Making a tripod? What is the plastic that you are using in the middle?

DB

JonHylands
11-17-2009, 07:47 AM
No, its not a tripod... The piece of plastic is one I printed to hold three servos in that configuration.

- Jon

JonHylands
11-17-2009, 08:15 AM
Okay, here's the CAD render:

http://forums.trossenrobotics.com/gallery/files/1/3/2/0/quad-cad-03_thumb.png (http://forums.trossenrobotics.com/gallery/showimage.php?i=1939&c=3)

- Jon

JonHylands
11-17-2009, 09:47 AM
Actually, I just realized I put the triangle together wrong...

Here's the proper version:

http://forums.trossenrobotics.com/gallery/files/1/3/2/0/ax-12-triangle-02_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1940&c=3)

Its the neck servo, and the two Coxa (shoulder) servos for the front legs.

- Jon

DresnerRobotics
11-17-2009, 09:58 AM
Woo! Cannot wait to see more. :)

Zenta
11-17-2009, 10:29 AM
Hi,
Looking interesting! I'm guessing you are using your new 3D printer to make the custom parts?

-Zenta

JonHylands
11-17-2009, 02:24 PM
Yeah, that's a good guess :-)

If fact, for those interested, here's a picture of the printer working on the "chest" part of the robot:

http://forums.trossenrobotics.com/gallery/files/1/3/2/0/quad-chest-printing_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1941&c=3)

The brown stuff is the support material the printer uses to support hollows and overhangs...

- Jon

Adam
11-17-2009, 04:50 PM
Maybe your new slogan should be:

"The best way to predict the future is to 3D print it."

:D

JonHylands
11-17-2009, 05:49 PM
You're close...

"The best way to predict the future is to invent it. The best way to invent it is with a 3D printer."

- Jon

Adrenalynn
11-17-2009, 05:53 PM
You're close...

"The best way to predict the future is to invent it. The best way to invent it is with a 3D printer."

- Jon

Dang - I've been doin' it wrong all along...

Anyone wanna buy a well, but lovingly, used 32oz Ball Pean Hammer? ;)

Quantum
11-17-2009, 06:09 PM
Is the plastic pretty strong?

JonHylands
11-17-2009, 06:39 PM
Yes, it is very strong. If I printed a rectangular piece 1/4" x 1/2" x 2" long, I'll bet you couldn't break it with your bare hands...

- Jon

JonHylands
11-18-2009, 07:13 AM
So, here it is. I put all the limbs together last night, and once the chest (center section) was done, and all the support material dissolved away, I put it together.

http://forums.trossenrobotics.com/gallery/files/1/3/2/0/roz-01_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1946&c=3)

The mounts on the back are spaced 2.5" apart, which by no coincidence is the spacing of the ArbotiX. The large rectangle in the middle is actually hollow, with the other side open, and my 2000 mAh 11.1 volt LiPoly battery pack slides nicely in.

I've got to change the bracket on the head - because of how I have the head pitch servo mounted, it won't "look" down any farther. Fortunately, the Bioloid kit comes with a large variety of brackets, so it won't be a problem.

Tomorrow (or maybe later today) I'll be printing the feet.

- Jon

Adam
11-18-2009, 09:34 AM
I've got to change the bracket on the head - because of how I have the head pitch servo mounted, it won't "look" down any farther. Fortunately, the Bioloid kit comes with a large variety of brackets, so it won't be a problem.


Have you considered mounting the head pitch servo from the bottom instead of the side?

JonHylands
11-18-2009, 10:25 AM
Yeah, I considered it, but I don't want the head mounted so low... Its almost too low as it is. The other option is to mount the pitch servo on top of the yaw servo, directly to the servo horn.

- Jon

SN96
11-18-2009, 03:51 PM
Looks good How much more is left to do?
________
Honda VT750 (http://www.cyclechaos.com/wiki/Honda_VT750)

JonHylands
11-18-2009, 04:03 PM
Well, on Saturday I'm going to get an ArbotiX board from Fergs, and mount it. We're going to try and get it to walk using NUKE, his alpha IK generator.

I have the feet printed - they're in the dissolve tank right now, getting the support material removed.

I need to fix the connector on my Lipo to include a power switch, so I can hook it up to the ArbotiX.

And, of course, I'll need to write a little code to go along with whatever NUKE produces.

- Jon

JonHylands
11-18-2009, 06:16 PM
Here's where it stands now...

http://forums.trossenrobotics.com/gallery/files/1/3/2/0/roz-02_263566_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1948&c=3)

I've got the battery converted to a proper R/C plug. I mounted a switch (since the ArbotiX doesn't have one). I've got the servos and the two AX-S1's all wired in, and mounted the six-plug crossover (I love ABS - you can drill and tap it).

So, at this point, I'm ready to screw down the ArbotiX when I get it, plug in the battery terminals, and immediately start working with it.

- Jon

rebel
11-19-2009, 12:26 PM
I would love that printer :p

JonHylands
11-19-2009, 12:31 PM
Here's what it looks like with feet:

http://forums.trossenrobotics.com/gallery/files/1/3/2/0/roz-03_thumb.jpg (http://forums.trossenrobotics.com/gallery/showimage.php?i=1949&c=3)

I've glued a silicone pad to the bottom of each foot, so it doesn't slip-slide away.

- Jon

rebel
11-19-2009, 12:34 PM
That looks awsome :D

Adam
11-19-2009, 02:02 PM
Current progress looks great. You're not wasting much time. Hey, isn't your sumo competition in a few days? That's some serious multi-tasking. :robotsurprised:


Yeah, I considered it, but I don't want the head mounted so low... Its almost too low as it is. The other option is to mount the pitch servo on top of the yaw servo, directly to the servo horn.


Or you could print a longer bracket that will raise it up. ;)

Is that a custom camera between the AX-S1's?

JonHylands
11-19-2009, 02:22 PM
As you can see in the last image I posted, I've moved the pitch servo on top of the servo horn of the yaw servo, which seems to work great.

The camera is a serial Jpeg camera (http://www.techdesign.be/shop/product_info.php?products_id=266), mounted inside a custom printed case. I had that case printed a year or two ago from a commercial place...

- Jon

Zenta
11-19-2009, 02:46 PM
Looking good! Great work Jon!
I do envy you that 3D printer;)
Are you planning to mount the ArbotiX on top of the battery holder/body part?

Keep us posted, always inspiring to see your projects.
-Zenta

JonHylands
11-19-2009, 03:18 PM
Yeah, the Arbotix will screw right in to the mounts I printed as a part of the chest.

If you look really closely at the big version of the last image I posted, you can see the #4-40 stainless steel machine screws there. When I get the ArbotiX, I simply unscrew them, put it in place, and screw them back down.

- Jon

ScuD
11-20-2009, 08:15 AM
Wait, you're using components ordered in Belgium?

Mwuha.. what are the odds of that happening ;-)

Upgrayd
11-20-2009, 08:48 AM
Very nice use of the 3D printer Jon.
Looking forward to seeing more of this project.

Noog
11-20-2009, 10:33 AM
Here's what it looks like with feet:

I've glued a silicone pad to the bottom of each foot, so it doesn't slip-slide away.

- Jon

Hi Jon,

That is a great looking 'bot! I'm envious of the quick production time that the 3D printer has given you. Thank you for sharing your project with us.

Did you specifically choose not to instrument the feet with sensors (e.g. strain gauges or even just a simple contact sensor)?

Noog

JonHylands
11-20-2009, 09:36 PM
Hi Jon,

That is a great looking 'bot! I'm envious of the quick production time that the 3D printer has given you. Thank you for sharing your project with us.

Did you specifically choose not to instrument the feet with sensors (e.g. strain gauges or even just a simple contact sensor)?

Noog

Yeah, this version of the feet is simply for the flat-floor walking contest we're running this weekend.

Over the next few months, I'm going to design and build new feet that have multiple pressure sensors per foot, with full terrain compliance and linear leg compliance as well.

I have big plans for this robot. See my MicroRaptor wiki page (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor) for some of the stuff I'm going to be working on. Specifically, see the AI (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor+AI)/Sensing (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor+Sensing)/Navigation (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor+Navigation)/Goals (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor+Goals) pages for where I'm going to start. The AI-level stuff will be running offboard on a PC, and the motion control will all be on the robot, running on an ARM7.

- Jon

Noog
11-21-2009, 06:54 PM
Yeah, this version of the feet is simply for the flat-floor walking contest we're running this weekend.

Over the next few months, I'm going to design and build new feet that have multiple pressure sensors per foot, with full terrain compliance and linear leg compliance as well.

I have big plans for this robot. See my MicroRaptor wiki page (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor) for some of the stuff I'm going to be working on. Specifically, see the AI (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor+AI)/Sensing (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor+Sensing)/Navigation (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor+Navigation)/Goals (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor+Goals) pages for where I'm going to start. The AI-level stuff will be running offboard on a PC, and the motion control will all be on the robot, running on an ARM7.

- Jon

The wiki looks good and I am glad to see new updates in your blog.

I think your goals are ambitious but still realistic and I look forward to seeing how you implement your ideas. :veryhappy: Being able to off load the heavier processing to a networked PC will certainly make it easier to implement the advanced ideas. So do you plan to change from the Arbotix controller to an ARM7 in the future, or would you run both at the same time?

Are you doing any sort of power control and monitoring? In my current project I have included an Attopilot to monitor the voltage and current draw from the main battery. It is a bit of overkill, but it will give me an easy way to monitor my power usage.

You mentioned that you are using a LiPoly battery, did you include a low voltage cutoff of some sort?

Good luck getting the IK routines running with Roz.

Noog

JonHylands
11-23-2009, 04:30 PM
Here's a video of Roz (and Jeff and Issy) competing in the walking race at CNRG:


http://www.youtube.com/watch?v=9txYyPYVAMM

More to come...

- Jon

JonHylands
12-03-2009, 08:55 PM
Okay, so I've done a lot of tuning and playing with Roz, and he walks a lot faster and smoother now.


http://www.youtube.com/watch?v=M_YN8-OwVf4

Roz is moving about 28 cm/sec, and I've basically reached the limits of the servo speeds.

- Jon

Suicidal.Banana
12-04-2009, 03:35 AM
very nice :D

Zenta
12-04-2009, 05:33 AM
Great work Jon!
It looks and sounds like the servos are working on almost max speed too.
Are you using a distance sensor on each side? Or just one sensor at the front?

-Zenta

JonHylands
12-04-2009, 07:31 AM
I'm using all three. It does wall following with the side sensors, and obstacle avoidance with the front one. That sideways glitch you can see in the movie is actually the wall following - the control routine is set up for when it was going much slower, and it was a nice gentle curve away from the wall. Now its rather abrupt, so I need to tune how much it reacts to that.

Now that I'm approaching the limits of speed of this configuration, I want to add more intelligence to it, and start working on harder problems like terrain adaptability. I'm working on a new sensor head design, and I'm going to start implementing my goal (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor+Goals)/navigation (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor+Navigation)/sensor query (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor+Sensing) system I described for MicroRaptor (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor).

- Jon

SN96
12-04-2009, 04:02 PM
I'm using all three. It does wall following with the side sensors, and obstacle avoidance with the front one. That sideways glitch you can see in the movie is actually the wall following - the control routine is set up for when it was going much slower, and it was a nice gentle curve away from the wall. Now its rather abrupt, so I need to tune how much it reacts to that.

Now that I'm approaching the limits of speed of this configuration, I want to add more intelligence to it, and start working on harder problems like terrain adaptability. I'm working on a new sensor head design, and I'm going to start implementing my goal (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor+Goals)/navigation (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor+Navigation)/sensor query (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor+Sensing) system I described for MicroRaptor (http://www.bioloid.info/tiki/tiki-index.php?page=MicroRaptor).

- Jon

That was awesome! What kind of distance sensors are used on the sides and front? Does the bot consider the front readings when checking the sides? If the front sensor detects a lot of space perhaps the side sensors can auto compensate to a less strict limitation. If the front sensor detects a wall within X distance, then the side sensors could be set to tighter values so that an approaching corner would be more centralized. I don't know, just thinking out loud.

Great project!
________
KTM 525XC-G (http://www.cyclechaos.com/wiki/KTM_525XC-G)

sam
12-04-2009, 04:27 PM
That gait looks really nice Jon! Much faster than the previous one. Good job.

Sam

JonHylands
12-04-2009, 05:19 PM
That was awesome! What kind of distance sensors are used on the sides and front? Does the bot consider the front readings when checking the sides? If the front sensor detects a lot of space perhaps the side sensors can auto compensate to a less strict limitation. If the front sensor detects a wall within X distance, then the side sensors could be set to tighter values so that an approaching corner would be more centralized. I don't know, just thinking out loud.

Great project!

Roz has a single AX-S1 on the front - this sensor provides front and side range measurements.

The basic routine is:
- try and steer away from walls (uses the side sensors)
- if we see an obstacle in the front sensor, turn right if we also see something in the left side sensor, otherside turn left

Its a very basic FSM.


That gait looks really nice Jon! Much faster than the previous one. Good job.

Sam

Well, the gait is all Mike's - I just did a bunch of fine tuning.

- Jon

JonHylands
12-14-2009, 11:29 PM
So, I decided to implement my own version of an "amble" gait (Mike will be including his own version of that in NUKE when he releases it). It worked out well, and Roz is even faster than before:


http://www.youtube.com/watch?v=6le3z78TK74

42 cm/sec, more or less. I can crank it up even higher, but he starts to get unstable, so I've got a bit of tuning to do...

- Jon

darkback2
12-15-2009, 01:34 AM
Wow that thing is fast. Sweet work! I am starting to love AX-12s! What speed setting are you using? or is the hold up now somewhere else?

DB

Suicidal.Banana
12-15-2009, 04:33 AM
RUN forest RUN! :P awesome speed man, nice job

JonHylands
12-15-2009, 08:18 AM
Wow that thing is fast. Sweet work! I am starting to love AX-12s! What speed setting are you using? or is the hold up now somewhere else?

DB

What speed setting where? In the NUKE software, for that video, I was using 125 mm step size. The AX-12's are always running at full speed, but the software interpolates and moves the servos at full speed to intermediate positions. I haven't hit the servo speed limits yet with this gait, because the legs are now moving backwards (pushing) as fast as they are returning. In the 8-step ripple gait, the legs are moving backwards at 1/3 the rate they are moving forwards, so the forwards speed sets the limit.

If I jack the speed up that high, his legs move at a tremendous rate, but he's just slipping and bouncing on the floor. I need to incorporate movement dynamics in order to go any faster than I'm going now.

Here's a couple short clips showing both gaits at a slow speed:


http://www.youtube.com/watch?v=cdc4zHkvXAE


http://www.youtube.com/watch?v=gPY9RxS1WwI

You can see how much more stable the second ripple gait is at slow speed, but the amble gait even this slow is still significantly faster...

- Jon

lnxfergy
12-15-2009, 08:29 AM
I guess it's worth just saying this: I wouldn't expect these type of results for most builders (such high speed that is). Most of our bots carry quite a bit more payload (mechs/fire fighters/etc), and with just about any payload, an Amble gait is probably going to overheat the servos quite quickly.

-Fergs

(Just wanted that out there, so people don't come complaining to me that later that NUKE won't give them as fast of a gait as Jon had).

TobiasV
10-14-2013, 04:20 PM
Nice project!! Maybe rubber tips would help with traction and noise?

JonHylands
11-24-2013, 06:20 PM
I've updated my blog (http://blog.huv.com/2013/11/roz-robotsconf.html) with some more information about Roz - I've been working on him slowly over the past few months.

KevinO
11-24-2013, 09:38 PM
Great progress! I did something similar using raspberry pi. Though I used a usb2ax for communication to the servos.

https://www.youtube.com/watch?v=9iE3Yv2s6n4

siempre.aprendiendo
11-25-2013, 01:42 AM
Hi, Jon!

I'm very happy you're still working on your projects! They're a great inspiration and I (and a lot of people) have learned a lot from them.

Thanks for sharing!

KevinO, also a great project!

JonHylands
12-27-2013, 08:45 PM
Here's Roz, walking again with a Beaglebone Black running Python:


http://www.youtube.com/watch?v=BBNOs9JHqXA

jwatte
12-28-2013, 12:28 PM
Very nice!

I noticed that the first time it went into the wall on the left, it turned right, but the next time, it turned left. What generated that difference in behavior? Are you keeping a SLAM-like map of what you've seen and where you've been?

JonHylands
12-28-2013, 03:33 PM
No, nothing that complicated...

The rule is, when it has an obstacle in front, it checks the side sensors. If it sees anything in either side sensor, it chooses to turn the opposite direction. If it sees something on both sides, it picks a direction at random.

If it only sees something in one of the side sensors (and not in the front sensor), it tries to turn away from that direction while still moving forwards.

- Jon

JonHylands
12-28-2013, 03:37 PM
Incidentally, the current Python code running on Roz can be found on my GitHub respository - https://github.com/JonHylands/roz

- (https://github.com/JonHylands/roz) Jon

jwatte
12-28-2013, 05:50 PM
I see, that would explain it -- the angle is somewhat different in the two cases.