Instructables

Internet Arduino Controlled T-Slot XY Table

This is a ridiculously easy (in terms of power tool use - see below) way to make a lower precision XY Table.  With the wide availability of T-Slot extrusions on Amazon and Ebay, and using simple home improvement store hardware, this is a great way to build these kinds of projects.  Using patio door rollers on an angle is a low cost and easy way to handle what are often complex mechanics on CNC machines.

You can try this project out live on the Internet!  It's at the TeleToyland Sandbox 2.

This is a second version of a previous Instructable, and is another approach to making a lower cost, lower precision XY table.

How easy is "ridiculously easy"? Here is a list of all the fabrication required:
1) For each of the six timing belt pulley brackets, cut 2.25" of channel aluminum, drill two 1/2" holes (pro-tip: use a step drill), and two 13/64" holes.
2) Cut 7" off the ends of two 1"x2" t-slot extrusions.

That it! The rest is like assembling an Erector set. Nuts and bolts. T-Slot is so cool! :-)

The previous approach is working well, but having the ability to easily adjust each of the parts is a great advantage of the T-Slot.  Tightening the timing belts with screws in wood can be challenging to get just right, but with T-Slot it's very easy.  While the cost is a bit higher by using bearings vs. drawer slides, we don't have the drawer slides sticking out like we do now, getting tripped over and caught in bicycle spokes. :-)

In addition to the T-Slot, we tried to keep the parts easily available (i.e. from home improvement stores), and as always, requiring the least amount of precision drilling etc.  We've built a lot of projects, and anything that requires a hole to be drilled in a particular spot seems to be hard to get just right.  We do have the tools - punches, drill presses etc., but it's just cooler to be able to use a hacksaw and hand drill! :-)

Here's a video of it in operation during testing:


 
Remove these adsRemove these ads by Signing Up
hh3027 days ago

Hi, I am doing a similar project . I would appreciate if you do not mind to share your arduino code used to control the system especially the internet control.

Thanks in advance

CarlS (author)  hh3019 days ago

I think I replied via message, but to get it in the comments... The code should all be in this Instructable, and I am happy to answer any questions.

robjags22019 days ago

Carl,

I would just like to say thank you for all the help. Your documentation was very easily to follow and adapt as needed for our XY stage application. Per my school requirements. Would it be okay if I add you as a reference along with the pdf build procedures in my thesis. An email concurrence is okay. Thanks a bunch once again.

CarlS (author)  robjags22019 days ago
Absolutely. I'd love to see the report or some pictures of what you built. If you have anything online, I can also link from the site if you would like.
robjags2207 months ago
Appreciate the detailed instructions. This will be really helpful for my project. Would it be possible to get a copy of your arduino code used to controll your system with the stepper motors. This would really help for my project application. Thanks in advance
CarlS (author)  robjags2206 months ago
Thanks. I will PM you the code since it is not pretty! :-)
libelluleft CarlS6 months ago
would you please send it to me too? thank you
May i have the code too for step motors?please
CarlS (author)  danielbfmv2 months ago

I went ahead and added it to Step 7 since there have been a few requests.

CarlS (author)  libelluleft6 months ago
OK, I sent it
libelluleft CarlS6 months ago
Thank you so much! :)
danielbfmv3 months ago

How is the stepper controlled ? by joystick?

CarlS (author)  danielbfmv3 months ago

That was just a test, and hard-coded with an Arduino. If the project was switched to stepper motors, it would work as it does now - with commands being sent to the installation from the web site.

danielbfmv CarlS3 months ago

Congratulations on your work, your projects are awesome Carls.

Do you think im able to do the same with an arduino and an adafruit motor shield v2?

My project is similar to yours but with a positioning table, do you think it's better with step motors or servos ?

CarlS (author)  danielbfmv3 months ago

Most lower cost precision tables use stepper motors, so that may be worth checking. The Adafruit shield may work. With DC motors and potentiometers, you would need to write code for the motion control - preferably with PID control, which may work. For this project, I used the Pololu motor drivers to off-load that functionality. The other concern with the Adafruit board is if you can have motors with sufficient power to move a project of this size and mass - I am thinking that shield may not be able to supply quite enough power unless you are building a smaller one, but I have not tried it.

apos004 months ago
Hi Carl
You instructions are amazing and I used your idea to base my project that uses the xy table on your design. The issue that I am having is that following the analog calibration the commands don't seem to correspond to a linear mapping i.e commanding the jrk to go to 2045 does not drive the motor to the centre of the range. Rather it behaves somehow logarithmically. I have double checked the specs of my potentiometers and are definitely linear. I was wondering if you experienced a similar issue?
Thanks
Apollon
johnny17845 months ago
Very nice work.

I sent you a PM.
Bye Mr. Carl.
JoeStrout8 months ago
Beautiful project and a really nice write-up!

I'm tempted to try something like this myself, but I find myself balking a little bit at the $50 (each!) motor controllers. Are there any other closed-loop options? Seems like it's just a microcontroller with an A/D input and an H-bridge... shouldn't be more than $10 in parts. But I know the devil is in the details. I know Pololu does great work, but were there any other options you considered?
CarlS (author)  JoeStrout8 months ago
Thanks! Most of the people who use this design use stepper motors, so that is one way to go. You would either need to manually home the system every once in awhile, or use limit switches and automatically home it...

For the DC motor approach, you may be able to use H-Bridge chips and an Arduino or something to do the motor control. I just like the JRK controllers since you can calibrate them (PID, max accel, and travel limits) easily with the Windows program.

For the Y Axis, you could use a hobby servo pulled apart - see the previous design Instructable that is linked in the intro of this one. For the Y axis, a reasonably powerful servo will work. For the X axis, though, there seems to be a bit too much momentum for regular higher power servos to handle. There are some monster servos, but then you are getting back up to the same price point.

Good luck!
rimar200010 months ago
What a great work! Congratulations.
CarlS (author)  rimar200010 months ago
Thanks!
GrfxGawd10 months ago
I have a very strong motivation to build my own mill, or cnc machine. I VERY much like your choice of frame materials and overall construction method. But higher resolution will be necessary, as some of the parts will require military spec final dimensions. (Not aerospace specs mind you...) Stepper motors and a control system are obviously indicated. What other factors am I obviously missing? I am an absolute novice yet at this point. But, on a positive note, I'm very quickly assimilating information on processes and materials. My problem with many of the current build I see are materials used in construction, and especially max size of parts. I don't need to machine "large pieces", but I need something larger than a pencil box.
CarlS (author)  GrfxGawd10 months ago
You should definitely look at other home made CNC projects. This one was designed to be low cost and low precision, so it would not work for your application. Many of the materials (t-slot & timing belts) are used in other CNC machines. Good luck!
ScottCE1 year ago
This is a great design and write-up, thanks for taking the time to document it so well.
I am looking to do something similar but on a rather smaller scale, roughly about 1/4 of what you've made. I want to be able to cut a designs into 3" by 6" sheets of 0.02" vinyl. I will be using MicroRAX instead of T-Slot for the smaller cross-section, but what other changes would you recommend to fulfill those needs?
CarlS (author)  ScottCE1 year ago
Another user was building a smaller one too, though I think he is using the same design with a smaller frame. It's important to note that this design is not very accurate since it's just a sand box. You most likely want stepper motors etc., and there are a lot of great CNC designs on the web. I have some MicroRAX, OpenBeam, and MakerBeam extrusions - all about 10mm, and you would definitely want to test it out to see how it flexes, but on a smaller scale, it might be great. Some of the 3D printers, like the BukoBot, also use T-slot, and work in a very similar fashion. Good luck! I am also interested in making a more portable one to show at Maker Faires etc.
prekdal1 year ago
Is it possible to purchase this as a kit or at least grab the parts from a single online retailer? :)
CarlS (author)  prekdal1 year ago
Sorry - it was a custom project. The parts and sources should all be listed, though.
@ CarlS, I'm looking to make a larger desing of this XY Linear table, do you know what changes in the potentiometer, motor, and controller will I need. I found longer T-slots, hardware and programing will be the same, but also can'
t find a longer timing belt right now. Do you think you could help point me in the right direction?
CarlS (author)  marco.bucao1 year ago
The motors and controller would be fine. The trick with the potentiometer, though, is that the design in the Instructable uses almost all of the 10 turns that the potentiometer allows. So, using the same setup would require some other approach - maybe gearing the potentiometer down (at a lower resolution), or a different approach like using stepper motors or DC motors + encoders.

For longer belts, I think they make ones that are adjustable - you make any length you want.

Good luck!
@ CarlS,
Thank you for the helpful hints. Hopefully the 10 turn potentiometer can be geared down enough to cover the length of the linear table. Would you think using one with more turns would also be ok? As far as the adjustable timing belts, I tried looking around for them but can't seem to find, would you happen to know where they sell those?
Thank you!
CarlS (author)  marco.bucao1 year ago
I guess getting one with more turns and gearing a 10-turn one down are about the same - you would be getting the same voltage range across the table. With either approach, you probably want to use as much of the range of the potentiometer as possible so you will get the most precision. If I were making a larger one, I would probably consider using steppers or a dc motor with encoders.

For the belts, maybe this page will help. I have not used them myself.
http://www.mcmaster.com/#timing-belts/=ign0e1

I am not sure how you join them - the plate may work if it can travel from one pulley to the other, and not go around a pulley.
Thank you for your help, think I might gear down the 10-turn pot or try and find one with more turns, decided to use cable wire and more pulleys instead of trying to find an exact longer belt pitch pattern, we were planning to use 3x3" frame t-slots, but the moving X and Y axis beams would still be 1 x 3". I couldn't quite tell but did you use the same motor for the X and Y axis? Also we may not need a pot if we use a stepper motor appication, but well see. And also I couldn't quite tell if you had a separate controller for the X and Y axis? BUt thank you for all your help, I love the design of the Arduino stage.
CarlS (author)  marco.bucao1 year ago
Yes, I used the same motors for each axis, and two JRK controllers - one for each axis. With the larger frame, momentum may be more of an issue, so the motors may or may not be powerful enough. You can set the ramp up/down with the JRK, so that may help.
CarlS (author)  marco.bucao1 year ago
Also, check out Matthew Epler's design below - he used steppers. I did some tests with those too. For my project, I needed it to be un-attended for long periods of time, so I opted for the potentiometers over using limit switches with steppers, but I could have gone either way - with steppers I would just have had an auto-home feature with the limit switches.
mepler2 years ago
Hey there, I finished the seed-dropping machine based on your design. Couldn't have done it without you doing all the heavy lifting. Many thanks. I hope to put it in "the field" (heh) when it warms up. http://mepler.com/#2598027/Earth-Printer-A-Work-in-Progress
CarlS (author)  mepler1 year ago
I just watched the video - very nice! What stepper drivers did you use?
CarlS (author)  mepler2 years ago
Cool - good luck!
mepler2 years ago
Re: my comment below - I'm thinking that a rail system would allow me to do that. Similar to this YouTube vid: http://www.youtube.com/watch?v=35EUhrxN0GI
CarlS (author)  mepler2 years ago
That looks like a nice implementation. I prefer to minimize the fabrication, but the extra parts that I see there seem mostly 2D, so they would be easier to make.
mepler2 years ago
I'm trying to build a version of this that drops seeds instead of drawing. Any ideas on how to modify the design to drop seeds out of a hopper attached to the drawing arm?

M
Pro

Get More Out of Instructables

Already have an Account?

close

PDF Downloads
As a Pro member, you will gain access to download any Instructable in the PDF format. You also have the ability to customize your PDF download.

Upgrade to Pro today!