Friday, March 26, 2010

Wires pt. 6: G-code control

It's time to take our print head off the bench and do some robotic tests on the machine itself. We've written custom G-code to print out the square with wires, and mounted our extruder. I'll just recap the recent progress.

Having switched to a sturdy 0.5mm pencil, we've found our solenoid mechanism to be incapable of clicking the new device. Anticipating this, I quickly designed a servo clicking system that will accomplish the same job but with excessive force, thanks to the servo's gearing. It's a very crude system: the servo pulls a cable tied to the pencil end once for each click. There's a lot of room for improvement, but at least it's proven to be extremely reliable so far.

A video of the new system undergoing testing:

The job of this mechanism is to advance the wire far enough for it to grab the plastic. Once it's in the plastic, we can just hold the button down and pull the wire any which way by moving the print head. So the wire click speed doesn't limit the wire print speed. What does limit the wire print speed, with the current algorithm at least, is the very long heat-up and cool-down times. We're heating the tip up to 170 degrees to form each bond, then cooling the tip down to 50 Celsius before we move the wire from that point. The thermal mass is not large, but this process takes a long time nonetheless. We can try experimenting with other temperatures too; the current settings lean heavily on the side of "play it safe".

The next step was to try printing from G-code. Mo and Bing have already coded up the commands to print out the test square, . For now, we've taken off Wade's extruder to mount the spoolhead, mainly because we don't want excessive weight pulling on Darwin's cantilevered Z-axis.

The prints we've done from G-code look almost exactly like the prints done by hand, which is a very good sign. The major difference was that the wires kept falling somewhat short of the design length. Watching the print in progress, I noticed that the tip underwent a significant deflection as it travelled horizontally.

From benchtop tests and earlier predictions, we had expected that bending the wire 90 degrees as it prints would take a lot of force; what I'd overestimated was the stiffness of our mounting on the Darwin. Mendel's design puts the extruder between the two rails, which should lead to a huge improvement in stiffness, resolving this issue. But for now, we can compensate by measuring the deflection in X and Y, and adding that distance to our travel, and then moving backward by that amount at the end to un-flex the tip. This should improve our tolerances quite a bit.

We also supsect that the wire guides we posted before may not be necessary at all, because it appears that we don't have to pull the wire down below the top layer to push the wire in. But we'll have to test it to be sure.

So what else is next? Wire cutting, hopefully. The new cutter is ready to use, but I expect that it won't have quite as much strength as the rotating type. Only tests will show if that's the case, though.

1 comment:

  1. ... heating the tip up to 170 degrees to form each bond, then cooling the tip down to 50 Celsius ... The thermal mass is not large, but this process takes a long time nonetheless

    To optimise this you may want to look into the workings of Stirling engines. These employ a 'regenerator' to cycle the temperature of a medium without draining the heat into the environment. While Sirling engines work on gasses I see no reason this wouldn't work with other media, like for example oil.