Thursday, August 1, 2019

How to Transform Cartesian to Delta Coordinate for 3D Printing


Hi guys, this post is going to be my first tutorial on this blog.

So I've been planning on to make my own 3D printer from scratch, and after a couple of months researching, I've come to this type of printer called delta 3D printer. Instead of using 3 axes that are perpendicular to each other, delta printer's axes are parallel to each other. With this configuration, the printer bed doesn't have to move. And this printer doesn't need a lot of spaces too. 😊

This printer is called delta because the 3 axes are placed on a triangle configuration like the uppercase letter delta in the Greek alphabet (Δ). Now, 3D printers take the position commands in Cartesian coordinates. To move the printer head into that position, the 3 printer head holder need to be moved into a certain height accordingly.


First of all, let the target coordinate be the point C, the x axis is red, the y axis is green, and the z axis is blue. We want to find y position of the three white cylinders (py, qy, and ry) so that the printer head is hanging exactly on the point C like shown in the first picture on this post.

Next, imagine that all of the points are lying on the same xz plane (or y = 0), and calculate the needed length of Lp, Lr, and Lq.




Then go to the side view, with s is the rod length, you can see that Dr, Lr, and s made a right triangle. Dp, Lp, and s also made a right triangle, and lastly, Dq, Lq, and s also made a right triangle. With this information, we can find Dp, Dq, and Dr using the Pythagoras' theorem.





Finally, py, ry, and qy can be easily found by using the following formula:




I made this formula using my own intuition. 😀
So to test my formula, I made this simulation in unity that take the cursor's position, and move the white cylinders y position into the computed position using the formula. The connections between the rods are physically simulated, the gravity made the rods pointing down naturally. So no fishy manipulations here.

Use WASD to rotate the view, use QE to move the camera up and down, and use ZC to move the camera forward and backward.


As you can see that it works beautifully! I wish I could make my own delta 3D printer really soon.
Thanks for reading! I hope this post is useful for you.

0 comments:

Post a Comment