Links - 2010 Dec 26

3D printer - day 2

Some more 3d printing and testing today. The video shows a snowflake, thing:1321. G-code was created with repsnapper. We are using a Weller hot-plate meant for smd-soldering, covered with kapton tape, as the printing base.

Here's video from Risto's blog (shot with an N900, I like the quality):

3D printer – first test

After some initial tuning we did three test-prints today of a 10x10mm square, 30 layers, raising the z-axis by 0.5mm for each layer. We tried to set it up so that when the X or Y-axis moves 10mm, the extruder A-axis should also move 10 units. The way it is set up right now it might be extruding slightly too much plastic per mm. The maximum feedrate we tried was 600mm/min.

We printed the same geometry three times, here is the second try (in the first try the base/bed wasn't staying very fixed, so the print resembles the leaning tower of Pisa...)

Here is the third try. Now we are moving the Z-axis +0.5 mm during the last Y-axis move. This is at 600mm/min.

We were pretty happy with the print-quality so far, considering this is the first ever test of our extruder/xyz-table setup. Some tuning of how much plastic is extruded for each mm of xyz-feed, and perhaps a heated printing-bed, should improve the quality further. Next is learning to use one of the many STL to G-code CAM programs and filtering the G-code output so it is suitable for our EMC2 setup (the extruder is the A-axis, in absolute mode).

Update: Risto has more on this in his blog: ?

Links - 2010 Dec 19

Temperature control circuits

I made two small circuits today for temperature control of the extruder head on a reprap type 3D printer. The idea is to control the temperature, which needs to be somewhere between 200 and 240 C I think, using EMC2 and two parallel port pins.

The first circuit is based on the 555 and produces a square waveform with variable frequency depending on the resistance of a thermistor. At room temperature the thermistor resistance is 100 kOhms and the output frequency is below 1 Hz, and when the temperature is suitable for extrusion the thermistor resistance is about 200 Ohms which produces an output frequency of around 25-30 Hz. If the EMC2 base-thread runs with a 50 us period then it should be possible to record the frequency of this square wave using an input pin on the parallel port with an accuracy of roughly 1/500 (half a degree C?), which should suffice.

Testing the heating side of things, a wire with about 6 ohms of resistance wrapped around the extruding head, showed that a suitable DC voltage is around 8 V and produces a current of 1.3 A. The idea is to use a HAL PWM-generator to drive the base of a 337 transistor which drives the gate of an IRF610 FET that controls the current through the heating wire. By adjusting the PWM duty cycle it should be possible to control the temperature using a PID controller based on the temperature measurement.

OpenCAMLib machining simulation, v.2

This is my second attempt at a machining simulation where a moving milling tool cuts away voxels from the stock material. To save space an octree data structure is used to store the voxels, and to produce a nice looking surface you store the signed distance to the exact surface in each vertex of the octree. You then use marching-cubes to extract triangles for a distance=0 isosurface in order to draw the stock.

Unlike my first attempt, this works well enough to warrant further experiments (on the to-do list are: differently shaped tools, colouring triangles based on which tool cut the voxel, lathe operations, material removal-rate, etc.). It should be straightforward to hook this up to the EMC2 G-code interpreter so that any G-code, not just densely sampled CL-points from OCL, can be simulated. You could also flip the sign of all the numbers, and simulate an additive process, like 3D printing (reprap / makerbot).

This approach to machining simulation is described in a 2005 paper by Yau, Tsou, and Tong.

Links - 2009 Dec 10

© 2019

Theme by Anders NorénUp ↑