Hey! This thing is still a Work in Progress. Files, instructions, and other stuff might change!

TOM Tri-Track dual servo robot tank chassis

by krux, published

TOM Tri-Track dual servo robot tank chassis by krux Mar 17, 2012

Featured Thing!

18 Share
Download All Files

Thing Apps Enabled

Order This Printed View All Apps


Liked By

View All

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag.

Print Thing Tag

Thing Statistics

50036Views 10855Downloads


This is a varient of http://www.thingiverse.com/thing:14599 by Ktronics. The Tri-track frame is too large to print on a Thing-o-matic, so I've updated the design to split the frame into three parts which can be bolted together. I've also updated the drive wheels to include holes for mounting the servos, mounting holes in the frame for the servo mounts. As well as updated the servo mounts to be the correct size for the CSRC-311 servo.


The file "Stationary.ino" is a basic Arduino sketch which reads distance from two PING sensors, and does obstacle avoidance. It's named "Stationary" as that is my robot's name. He spent awhile without a brain, and thusly didn't move all that much, thus the name.


Print the following components:

2 - Tri-Track frame end segments
1 - Tri-Track frame middle segment
42 - Track Sections
2 - drive sprockets
4 - 608 idler sprockets
4 - 608 Bearings
2 - Servo Mounts

The following hardware is required to assemble:

42 - M3 x 45mm socket cap bolt
42 - M3 nylon-insert hex locknut
8 - M3 x 15mm socket cap bolt
4 - M3 x 20mm socket cap bolt
6 - M3 x 25mm socket cap bolt
32 - M3 washer
4 - M4 x 16mm socket cap bolt
8 - M4 washer
2 - M8 x 160mm threaded rod
20 - M8 hex nut
16 - M8 washer

Hardware can be found online through McMaster-Carr.

All Apps

3D Print your file with 3D Hubs, the world’s largest online marketplace for 3D printing services.

App Info Launch App

Auto-magically prepare your 3D models for 3D printing. A cloud based 3D models Preparing and Healing solution for 3D Printing, MakePrintable provides features for model repairing, wall thickness...

App Info Launch App

Kiri:Moto is an integrated cloud-based slicer and tool-path generator for 3D Printing, CAM / CNC and Laser cutting. *** 3D printing mode provides model slicing and GCode output using built-in...

App Info Launch App
KiriMoto Thing App

With 3D Slash, you can edit 3d models like a stonecutter. A unique interface: as fun as a building game! The perfect tool for non-designers and children to create in 3D.

App Info Launch App

Print through a distributed network of 3D printing enthusiasts from across the US, at a fraction of the cost of the competitors. We want to change the world for the better through technology, an...

App Info Launch App

Quickly Scale, Mirror or Cut your 3D Models

App Info Launch App

3D Print a wide range of designs with Treatstock. Easy to use tools to get the perfect result. The global 3D printing network that connects you with high-quality and fast working print services nea...

App Info Launch App

what is the angle between the two parallax sensor ?

not sure. it was an arbitrary angle I chose because I thought it looked good. nothing scientific about it. ideally you would match it to the pick up area angle, so you didn't have a blind spot immediately in front of the robot.


I've got this basically built, THANKS!

Only thing is, how did you connect the servo's to the drive sprocket?

I used the servo horns that came with the servos. You should be able to screw them into the drive sprockets.

i am building this one for myself on an uno. great design. however, i need a way for it to keep track of its path, can you suggest anything?

I'm just getting started with 3D printing and I've been looking for a software that would allow me to place the boards I plan to use (given that they're popular enough), kind of similar to Fritzing but for 3D modelling.

One of the images you included has two boards at the bottom and the servos, and the boards have some of the components on them - I'm wondering if you manually modeled them or if you used this magic software that I hope exists...

Manually modeled in Sketchup. There is software available for Eagle CAM which will render boards, but I never installed it, since you still need to create models of all your parts. For as often as I need that, it's easier to spend some time with some digital calipers and draw it out myself.

So far so good with my build. Thanks for this. I'm building it with my 7 year old daughter. We have an uno, a due, and a mega. It looks like the uno should work. I can't see what shield you have stacked on there. Can you point me in the right direction?


Yea, I'm using an Arduino UNO. Though anything would work. As for the shield, It's just a basic prototyping shield I used for mounting the servo headers, and the I2C switch I needed (which knowing what I know now, I would have just did better research on which sensors I was using to make sure you could change their I2C address so you could run more than one) Then the top most is just some protoboard I made into a shield to mount the PING sensors, since I didn't like the idea of having a third servo to be able to sweep a single sensor back and forth.

SparkFun has one here: https://www.sparkfun.com/products/7914
Adafruit also carries a prototyping shield: http://www.adafruit.com/products/2077

Of course both places also have things like GPS shields, etc.. You don't really need a motor shield, since to drive a servo, you really just need a three pin header. I modified my servos for continuous rotation, but you can also buy them that way from sites like HobyKing which have a good servo collection.

Another question , could you mention in the BOM for hardware where some bolts and screws are ment for? Are the bolts included for mounting the drive train to the servo, how many 2 or 4? I got a 3kg /cm and 60 degrees in 0.16 is that fast enough? They are continuous rotating.

Does somebody have an arduino sketch for getting this thing alive?

I uploaded the sketch I used. It's only reading values from two PING sensors at this point, and does obstacle avoidance.

Thank you! I see you use normal ping sensors with 3 pins . I got the hcrs04 (4pins) sonar sensor which can make use of the Newping library. So i should adjust some of the program.

Hi friend what sensors brand type are you using there below.

The sensors on top are Parallax PING sensor. They work great.

The sensors on the bottom are the Adafruit VCNL4000 Proximity IR sensors. Unfortunately, I would avoid using these at all cost. What they didn't make clear is that you can't change the I2C address of these, which means you can only normally run one sensor. Since I have more than one sensor, I had to try and hack it together using an I2C bus switch which lets you run multiple I2C buses. I then got busy, and haven't had a chance to write the code for them, so at the moment my rover is just using the PING ultrasonic sensors.

Ok thank you, i think i get some QTR's Pololu like

FYI, I updated to the latest version of the sketchup file for the robot. There is a sensor mount that I added as well.

oh wow, 1/2 thought printing this bad bay, very awesome, thank you krux!!!

any idea where I can fine some of the needed sockets/bolts/nuts? I don't think HomeDepot will cut it this time...

oh, and why have triangular track profile as opposing to having a flat robot? is it because of the way servos are mounted ? or is there some other advantage in elevating the driving gears?

McMaster-Carr is a good resource for hardware.

Great design! I'm about 30 minutes into my first print of it now on my Replicator 2 :) Printing everything but the track parts in one run. I'll let you know how it goes.

Great, it fits the Hitec HS-303 Servos too

You track plates seem to be broken - whether skeinforge nor slic3r does render them correctly. They have open surfaces.

Thanks for pointing that out. That was likely in the original. However I did remake the tracks, as track.skp file is a remake of the track from scratch in google sketchup, so that exported to stl should be fine. I just had not exported the single track to a stl, since when you need 42 of them it was best to print multiples.