Tuesday, March 31, 2015

Effector assembly

I printed another, more basic Kossel mini effector of my own design, this is a simple remix of a design by Tobias Kornmayer I found on Thingiverse which thankfully was published with its OpenSCAD source code.


Note that all the various Kossel mini effector designs available on Thingiverse and elsewhere are directly derived from Johann C. Rocholl's original OpenSCAD source released under the GPLV3 (https://github.com/jcrocholl/kossel/blob/master/LICENSE), which requires that any modifications be released with their source code. Unfortunately, many are released just as STL files, hence not complying with the GPLV3 license. When people don't respect and comply with the GPL, we as a community all stand to lose. I intend to write a post regarding these issues later, where I'll explain my point of view in more detail. In the meantime, I have published my effector design remix on Thingiverse with proper attribution, source code and under the GPLV3 license.

Back to the effector itself, it is very thin and lightweight and prints in minutes, not hours:


I then assembled the rods, the effector and the carriages to see how all this fits:


This is starting to look like something!


As far as I can tell, the rods are parallel and 40mm apart, that distance being determined by the Kossel Mini effector, which is what I wanted to achieve when I redesigned the Delta-Pi carriages:


The next step is to install the three GT2 belts and check that they don't rub against any part.

Saturday, March 28, 2015

A jig for the diagonal rods

When calibrating a linear delta 3d Printer it is essential to have all diagonal rods the same length, or at least within close tolerance. The easiest way to achieve this is to assemble the diagonal rods on a jig.


I decided to reuse some of the OpenSCAD code from my earlier Traxxas 5347 ball link assembly tool to design and print the couple of jig posts required for the jig. Then it is just a matter of gluing the posts on a flat surface with one of the rods assembled on it, and then assembling the other five remaining rods on the jig.


By "assembling" I mean just mixing some epoxy glue and gluing the Traxxas connectors and the carbon fiber rods with the printed joiners on the jig, while making sure the Traxxas connectors are on the same plane.

Diagonal rods: done! Their measured length is 372mm.

Friday, March 27, 2015

Assembling the Delta Steel - bottom plate, electronics and steppers. Also some news about the firmware.

Progress on the Delta Steel prototype has been slow but steady these days. I have been working on installing and testing the electronics and the firmware. Here is how the underside of the bottom plate stands now:


The 17HS8401 NEMA 17 steppers come from China, these are 48mm long and are supposed to provide 48 N·cm holding torque at their maximum rated current of 1.8A. I adjusted the DRV8825 drivers for 1.4A peak current per coil or approximately 1A rms for both coils, that should be more than adequate for the Delta Steel. I always recommend the use of a fan blowing some cool air over the electronics, this one is a 12V 80mm LED fan. The three female connectors at the top of the picture correspond to their male counterparts from the ATX power supply.

Regarding the firmware, I have found a patch that allowed me to compile the latest commit from Johann C. Rocholl's GitHub repository. More on that later or check my fork of Johann's Marlin repository.

Wednesday, March 18, 2015

Endstops, Makerbot-style.

The Delta-Pi was designed to use plain mechanical micro switches as endstops, but nowadays a mechanical micro switch costs practically the same as a Makerbot-style mechanical endstop with cable and connectors, which I also use on the P3Steel. The main advantage of the Makerbot-style mechanical endstop is that it includes an LED that lights up when the endstop is triggered. The sole disadvantage I can think of is that it requires three wires (+5V, Ground and Signal), but since they come with a cable, that is a moot issue. Consequently, I re-redesigned the Delta-Pi top clamp:


The assembly requires two M3 10mm screws and two M3 nuts.


When assembled the top clamp looks like this:


The M3 25mm screw on the carriage can be used to provide some fine adjustment to the endstop position.

Sunday, March 15, 2015

The Holy Grail of RepRappers: very large print volume and crazy printing speeds - really?

After reading through many pages in quite a few topics on forums and blogs related to 3D printing, DIY RepRaps and particularly new 3D printer developments, one could conclude that all the exciting new developments as of March 2015 are related to either large print envelope 3D printers or high speed 3D printers, or what would seem to be the Holy Grail of RepRappers: printers that combine both high speed printing and large print envelopes. Hurray, we'll all be printing 50cm tall vases at 500mm/s in the near future!

My quick take on all that: nonsense! In this case, bigger is neither better nor worse, it's just that: bigger. And Fast & Furious won't get you anywhere when applied to 3D printing! Below I explain my point of view on these matters and how they relate to some of the design choices for the Delta Steel.

Very large print envelope 3D printers

First, what on Earth is a "very large" print envelope?

Now that's a large print envelope 3D printer! The Betabram P3, a house printer, image courtesy of 3DPrint.com.
Back to the roots: the Prusa i3 has a theoretical print volume of 200 x 200 x 200mm, quite enough for it to print its own plastic parts, and enough for the vast majority of print jobs that one can reasonably print in less than 24 hours with an average 50mm/s print speed. So let's assume that 8l is a "normal" or "medium size" print envelope.

The P3Steel is a compact Prusa i3 variant with the same theoretical print volume of 200 x 200 x 200mm.
Let's double that (16l) and we have what we could call a "large" print envelope for a desktop 3D printer. The Delta Steel, for example, has a "large" print envelope, since it can print 200 x 200 x 400mm objects - theoretically speaking, of course. That is similar to the print volume of the original Rostock:

The Rostock - image courtesy of the RepRap.org website.
A "very large" print envelope would be something again twice as large i.e. 32l or more. Now, why didn't I aim for a "very large" print envelope for the Delta Steel? All I would need to do would be to use a round heatbed with a 300mm radius, and these are available on AliExpress (hence they don't cost a fortune).

How many vases are you going to print?

The answer is simple: I don't expect to need to print anything larger than what I can already print on my P3Steel, at least in the short term. And I don't think I'll ever use the 400mm maximum print height that I have available on the Delta Steel (actually it's a little bit more than that, but who cares?). Yes, the Rostock, the Kossel, the Delta-Pi and all similar-sized linear delta 3D printers are often pictured printing vases, where the extra height comes in handy:





 

However, I confess personally I am not so much into printing vases in PLA or ABS - I rather prefer my vases in porcelain or glass and I would rather buy them at the China store than going through the trouble of printing them myself.

Now, apart from vases, surely there must be things that one would like to print that exceed the 8l print envelope of the Prusa i3? Well, you just have to check Thingiverse and look for such objects, from what I have seen there aren't that many (again, apart from tons of different vases...).

The simple truth of the matter is that the Delta Steel inherited its size from the Delta-Pi which in turn inherited its size (roughly speaking) from the Rostock which has a print envelope of 200 x 200 x [200-400]mm (MK2 heatbed area x approximately (column_height - (0.9 x arm length))). And the Rostock inherited the MK2 heatbed from the Prusa i3, of course. So we are back at our starting point.

Scalable 3D printer designs (scaling down is easy, up - not so much)

It used to be that 3d printer developers would come up with a good Open Source design and release it without any grand claims of scalability. Take the Prusa i3 developed by Josef Prusa : the dimensions of the printer are set in OpenSCAD files and they can be changed somewhat from the original values (and you would still end up with a working printer), but Josef Prusa never made any claims that the Prusa i3 design could be scaled up or down, as far as I know. Same goes for Mike Paauwe who designed the Delta-Pi: he does not use the word "scalable" a single time in the documentation for the Delta-Pi.

I went through the Rostock documentation in the RepRap.org wiki and Johann Rocholl did not use the word "scalable" either, although he does mention that the printer can be made taller or shorter:
You can make your Rostock taller or shorter simply by adjusting the length of the smooth rods and timing belts.
That's it. The Kossel, however, was designed as a parametric printer and Johann explicitly mentions the possibility of scaling it down:
Optionally scale down to a Traveling RepRap that fits within IATA hand luggage size limit
So far so good. Now check the following quote from Richard Horne's blog, about the 3DR delta printer based on the Kossel and Tantillus:
"Is 3DR scale-able?" Yes, easy to go taller, just needs some thought about rod length. To go wider you will need to consider rod sizes. I always intended to be able to insert another printed part (spacer) and a new bigger middle triangle to get an overall bigger build area with the same parts. I actually wondered about keeping the size smaller to start with and doing extensions that could be printed out in order for it to be able to self reproduce, but that was getting messy.
And to the person who asked me if it's possible to make a Delta printer 3 Meters tall - YES!, Oh yes!, you can and if you build one (or want me to make you one) - please let me know :)
and in another blog post:
I get asked a lot about building Bigger Delta printers. - Going higher is not a mystery you just extend everything taller. Going wider in X and Y is also quite easy, you just need to also extend the print arms. General relation in size of these arms is the horizontal distance between the vertical posts x 0.8
(emphasis in bold is mine)

And to prove his point, Richard developed the 3DRmega (seen here not-yet-functioning with an antique mirror in place of a heatbed, as described by the author):


Now, not only the 3DRmega does not look at all like the original 3DR, but its development doesn't seem to have gone quite as Richard expected. This is what he posted in July 2014:
And guess what? When I posted about 3DRmega in February, I had a flood of requests for design files (I posted way too early, sorry) and also hundreds of people saying I should put it up on Kickstarter...
That's enough of the mega for now, I'll post more and release the design files when I'm in a better mood with it :) and I can document them a little better. I will also get some video's done to show it printing, it's even more impressive than when you saw your first delta printer, big smiles for big 3D printers.
Fast forward to March 2015 and we are still waiting for news and the design files for the 3DRmega.

So, what is my point? From an engineering perspective, scaling a RepRap 3D printer design up or down is probably possible within relatively narrow margins, but beyond that, scaling requires a partial or complete redesign. And when scaling up, as the size of the printer increases, some issues become exponentially more difficult to solve and building costs also increase exponentially.

Speed, inertia, kinetic energy and vibrations

(to be continued)

A connector for 8mm carbon fiber tubes and Traxxas 5347 ball joints

I designed this extremely simple part:



The idea is to attach the carbon fiber tubes to the Traxxas 5347 ball joints using a lightweight printed part instead of some other (possibly heavier) hardware. This is what it looks like printed in blue PLA on my P3Steel:


I believe it should do the job. I needed to print 12 of these, obviously.


I'll be gluing them with two-part epoxy, but first I have to make a jig.

Saturday, March 14, 2015

Belt tensioner system for Delta-Pi and Delta Steel

I have been working these days on designing a belt tensioner system for the Delta Steel (and it can be retrofitted to a Delta-Pi).

The Delta-Pi motor mounts allow the stepper's position to be adjusted vertically by a few mm, thereby adjusting the GT2 belt tension, however this is far from practical since the steppers are mounted under the base. Once the printer is assembled and running it is highly unlikely that it can be disassembled / decommissioned for such trivial maintenance as adding a little bit of tension to one of the GT2 belts.

I started thinking about this a couple of weeks ago and since I was unable to find anything similar to what I wanted, this week I began writing my own OpenSCAD code for a much more convenient system to adjust the tension in the GT2 belt of each column. My design uses an extra assembly for each column, placed on top of the printer opposite of the top clamp, whereby the belt tension is adjusted simply by turning a knurled knob.

Actually I decided to base myself on a belt tensioner design that I have been using for the X-axis idler end in the P3Steel, which has worked very well so far:



I redesigned the whole assembly to fit the dimensions defined by the column clamping system designed for the Delta-Pi by Mike Paauwe. I also tried to strengthen all the parts, since the Delta Steel's GT2 belts are quite long and will require a reasonable amount of tension to keep tight and avoid backslash.


I managed to print some parts of the idler assembly today:


The pulleys (an earlier design which you can find on Thingiverse) use the same small and inexpensive 623ZZ bearings as the carriages, just like in the original Delta-Pi idler. They spin around an M3 20mm hex screw inside the tensioner (the part on the left in the picture above).


I sized the parts correctly so that the tensioner slides inside the idler with little play, as shown above.



For the knurled knob, I am reusing my previous design published on Thingiverse a few months ago:


Yes, it has an Open Hardware logo on top. :-)

Tuesday, March 10, 2015

Firmware: jcrocholl Marlin latest commits don't compile, had to go back a few months

OK, this commit compiles:

https://github.com/jcrocholl/Marlin/tree/4ffdbcbd4e062ca9a822d49432ce2618d0006a8a

The problem occurs if I enable the LCD Controller support in Configuration.h in later versions: the Arduino IDE shows an error during compilation.

Since I really want the LCD Controller support I had to go looking for an earlier version of Marlin (deltabot branch) that would compile.


Once I got the Marlin code to compile using the Arduino IDE, I wrote the firmware to the Arduino using avrdude and voilĂ ! It works. Next step is to connect the steppers to the RAMPS, the ATX PSU, the heatbed, the hotend, and check that everything works without smoke and flames.

Monday, March 9, 2015

A quick note on scaling up or down the Delta-Pi and Delta Steel designs

The Delta-Pi and Delta Steel are very much scalable designs - within reasonable margins and not as easily in all directions.

If you intend to print taller objects, you can just use longer pieces of square stainless steel tube (my Delta Steel prototype uses 800mm long columns, whereas the original Delta-Pi is specified for 670mm tall columns). Yes, you'll need longer GT2 belts, but that's not expensive. Within reason, the printer structure is strong enough to avoid any flexing that would significantly degrade the quality of the prints.

On the other hand, if you want to have a larger print area, you can just use a wider spacing between the columns, but that implies two things:
  1. You'll need longer carbon fiber arms.
  2. You'll need a larger heatbed.
Now, longer carbon fiber arms are easy to get, but larger heatbeds... well, that's different. I am using a standard MK2B PCB heatbed because these are very inexpensive (< €8) and the size (200x200mm) is quite enough, at least for this prototype. Also a 200x200mm piece of borosilicate glass is < €12, so again, not a fortune.

Going for a slightly larger round heatbed would practically double the cost of this subassembly, and a much larger heatbed of non-standard dimensions would require a custom machined aluminum plate and a heater of some sort, plus again a specially cut piece of glass, costing four times as much or more.

With the total cost of this prototype well under €300, I don't see myself spending nearly €100 just for a larger heatbed that I would use at most once or twice a year. I guess it all depends on your budget!

Test fit and hiding the PSU under the table

I temporarily assembled the Delta Steel to check what it would look like when finished:


And from a different angle:



The small table is from Ikea and cost me less than €10. I designed a printed part that allows me to securely mount the ATX PSU under the table using wood screws and nylon ties:


I printed two pairs of these mounting corners and screwed them to the underside of the table using eight wood screws:


Then wrapped two 7mm wide nylon zipties around the PSU.


It won't fall off!

WARNING! Do not try to fit a cheap passively cooled LED strip PSU under a table, these require as much airflow as possible and if installed upside down, will probably overheat and possibly burn and start a fire.

Wednesday, March 4, 2015

Slow progress is better than no progress

I have only had just enough time these days to screw down the motor end and bottom clamps to the base of the Delta Steel, and try out the screws for the heatbed. This is what the MDF base looks like now:


The large round hole in front of each bottom clamp is for the GT2 belt. The smaller hole you can see at the back is for the heatbed power and heatbed thermistor wires that will go to the RAMPS electronics which is underneath the base.

I have checked the distance between the columns and it seems I have indeed an equilateral triangle, +/- 1mm. We'll see during calibration if my build was sufficiently precise or not.

And yes, the table is a total mess.

Tuesday, March 3, 2015

First Bowden extruder, direct drive, MK8 gear

After checking various direct drive extruders on Thingiverse, I finally made up my mind to work on the original design by Dominik Scholz, this one: Thingiverse

Imho it has the following qualities:
  • Open Source and written in OpenSCAD.
  • Excellent quality source code.
  • Parametric.
  • Simple.
  • Uses MK8 gear.
  • Uses easy to find hardware (608ZZ ball bearing, single small spring, readily available M3 screws, etc).
  • Easy and quick to print.
  • Minimum amount of material.
I had to make a few changes to the original design though, because my MK8 gear is slightly larger, and also my pressfit Bowden connector is much larger than the one Dominik is using. The slightly larger MK8 gear was easy to accommodate in the original source code, but for the much larger Bowden connector I had to add an entire block. This is the result:


Next step of course is to test it in actual use, but I am not there quite yet!

Monday, March 2, 2015

An easy to print drill and alignment jig for the Delta Steel

This weekend I managed to design, print and use a very simple drill and alignment jig for the delta Steel. Obviously, if you are having the base and top MDF boards CNC machined or laser-cut, you don't need this, but in my case, I am drilling these boards manually and so I designed this jig to help align the holes properly. Without any further ado, here is the jig:


The different colors in the OpenSCAD render above correspond to different elements:
  • Yellow for the bottom MDF board holes.
  • Blue for the PCB heatbed.
  • Green for the RAMPS holder (note that I am using the usual self-threading wood screws for the RAMPS holder so these are just used to mark the place where the screws go, on the underside of the bottom board).
  • Red are just distance checking lines.
  • Purple is for the top MDF board holes that slightly differ from the bottom ones.
Well, it doesn't look like much in OpenSCAD but it proved really useful once I had printed it:


I can't print the whole jig on my P3Steel because its size exceeds the size of the MK2B heatbed, but it's easy to print in parts. The jig is just 1mm thick (adjustable in the OpenSCAD source) so it prints very quickly with a minimum amount of material.

I uploaded the OpenSCAD source and STL files for the two partial prints of the jig to Thingiverse. The OpenSCAD source can easily be modified to accommodate different printer designs. As coded right now the jig can be used for both the Delta Steel and the original Delta-Pi.

So at this stage I have drilled all the holes for the bottom and top MDF boards and I am ready to begin assembling my Delta Steel prototype.