Sunday, October 17, 2010

Repairing a catastrophic failure of the Rapman 3.0



Little did I know when I was upgrading Slice and Dice to do prints of laser-cut Rapman parts that I would soon be confronting the problem of replacing such parts without having a 3D printer to print the parts. That is an ENTIRELY different problem.

I had upgraded Slice and Dice to do a better job of printing my sample laser-cut part from last time and was doing trial prints when I noticed that I was getting an enormous number of resets. This was odd because ordinarily I only get one or two resets per month since I uploaded firmware version 4.0.2. I checked the humidity and it was a bit dry, so I fired up the hot mist humidifier and drove the relative humidity up to 52%. No joy.

The next morning I undertook a new print and noticed a mushroom of ABS had formed under the extruder.






When I attempted to remove the extruder, the mushroom of ABS proved to be too big to easily get out of the mounting hole.  I then began to disassemble the x-axis carriage that holds the extruder only to discover that the top plate was being held together by the grace of God and nothing else.  It crumbled into two major pieces and half a hundred small fragments when I began to remove the bolts.





As well, one of the tiny little bars that hold the x-axis belt had also broken in half as is readily visible in the previous picture.

As you might imagine, this all made me very cranky.  A quick calculation revealed that I had historically been spending considerably more on preassembled BfB hot ends that I was on the filament that goes through them.  I run a lot of filament, too.

I spent several hours chatting with both Iain and Andy at BfB.  They were attempting to be as helpful as they could, but somehow I came away with the same feeling that I get when I take my car into the garage and they say recursively, "It MIGHT be X.  We could work on that and see what happens."  I began to steam up a bit when they started talking about my not using "BfB gcode".  They'd latched on to that fact that I'd written my own STL processing software that produces gcode right out of their manual and tagging this as a possible problem.  They then started talking about the fact that I was using very short line segments {0.1-0.1414 mm} and that was possibly touching off heretofore unsuspected bugs in the firmware.  I pointed out that the Rapman is supposed to have 0.1 mm resolution and you can't print objects at that level of resolution unless the firmware can handle that short a line segment.

I finally decided that I had to stop talking before I said things I'd regret later {I do that a lot}, and have a good think.

Here's what it came down to...

  • I needed a new top plate for the x-carriage and a new hot end.
  • I was going to have to pay for these and it was going to take a week to get them
  • It was entirely possible that the hot end had been destroyed by a firmware bug
  • There was nothing to say that the new top plate would last any longer than the last one, viz, ten months.
No matter how I looked at that equation it just didn't seem to balance.  A big bone in my throat was the fact that BfB wanted me to pay to replace a hot end that it was very possible that their firmware had broken.  A bigger bone was that there was no guarantee that if I put the new hot end that I bought into the system that the firmware wouldn't ruin it, too, in short order.

It seemed to me that the most reasonable course was to see if the problem was with the firmware.  I typically print with a 0.3 mm hot end.  I like what that kind of resolution does for my prints.  Before I settled on 0.3 mm, however, I bought two, preassembled 0.5 mm hot ends, so I had those in stock.

I also had Bogdan's experience that replacing the top plate on the x-carriage and grounding the hot end to it would stop the resets.  This from the observation that resets were most often caused by a static charge building up on the plastic of the x-axis carriage and extruder and then discharging, causing a reset.  BfB which is apparently located in a damp environment had never encountered this issue.  I noted that resets tended to get quite common when the relative humidity in the room holding the printer dropped  below about 42%.  I'd sorted out resets, except for the ones I encountered most recently which have led to the hot end failure, I think, by using a hot vapour humidifier.  After seeing how the top plate had crumbled, however, the notion of replacing the acrylic one with an aluminum one began to sound very attractive.

I decided to acquire the means to cut both acrylic and aluminum.  Harbour Freight in Salinas had a very nice scroll saw on sale for $69 which would reputedly do the trick.  





I bought that, a sheet of 0.22 inch (5 mm) acrylic and a billet of 3.35 mm aluminum plate.  I decided to cut an aluminum top plate first.  I began the process by simply tracing the bottom plate, which was identical to the top plate onto the aluminum with a fine tip marker.






I did the rough cut with the scroll saw and dressed it with a grinding wheel and a half round ring file after having set the plate in a small vise.






I then remarked two holes at diagonal corners of the plate, drilled 1/16th inch guide holes and widened them to 13/64th inch {as close as I could get to the 5.2 mm holes as I measured them on the original piece.   I did this with a hand drill after securing the plate in a vise. 






This done I then bolted the acrylic bottom plate to the developing aluminum one and drilled the guide holes for the rest of the holes using my Dremel drill press.






I then removed the acrylic bottom plate, secured the aluminum plate in the vise again and drilled out the rest of the holes.  






Afterwards I cleaned up the finished plate with a wire wheel and checked it for fit on the x-axis.






At this point my dyslexia set in.  The plate is not symmetrical and I'd got it flipped and completely reassembled and tested the carriage this way.  I didn't notice the problem till I tried to fit the extruder into the top plate assembly and discovered the symmetry problem.  The next pic is from the original, incorrect assembly.






The new top plate works smoothly.  Now I've got to swap out my ruined, 0.3 mm extruder with one of my spare 0.5 mm ones.  I will be able to see if I have a serious firmware problem or whether I just have a design fault with the hot end.  It could be either, or both.

I'm entering a big of a crisis with respect to 3D printing.  I bought into BfB's Rapman because I wanted to do some printing instead of screwing around with printer design and problems all the time.  At the time, a year ago, it was a good move.  Rapman was a bit pricy, but it was solid and the components of it were affordable. The 32bit MCU board was a delight after all of the Linux/Arduino/Sanguino/Bullshitino nonsense.  Some months ago there was talk of extending the Rapman MCU to where you could parameterise the firmware setpoints to deal with different machines and extruders, like the Mendel, for example, or even machines you'd designed yourself.  As it stands, it's not clear that BfB can design reliable firmware for their own machine, much less a parametric firmware app that would make it applicable to a wider range of machines.  

On top of that, they've recently jumped the price rather dramatically.

As it stands, BfB's Rapman has two Achille's heels; their firmware and their hot end.  Neither are reliable and the hot end is very difficult to repair.  I'm told that BfB is working on successors to the hot end, but that does me no good at all.  I'd like to shift over to something like Nophead's power resistor driven hot end.  The problem with that, however, is that I'll have to design a MCU to drive it and the printer both.  By the time I've done that,  BfB is out of the picture, since the those two components are what is defensible as corporate worth in the BfB.

I don't know quite what to do.

Sunday, October 10, 2010

Replicating laser-cut parts



In which your narrator confects his own idiosyncratic method of replicating laser cut parts.

The recent acquisition of the UK manufacturer of the reliable Rapman printer, BitsfromBytes {BfB}, by the American firm 3D Systems has exacerbated a long standing problem that the Rapman's users' community has had, vis, getting drawings of the laser cut acrylic parts that make up the system. While BfB uploaded drawing files of one of their early Rapman designs into the Reprap website, they have neglected to do so with version 3.0 and later models to the best of my knowledge.

That wouldn't be such a problem save for the fact that the acrylic parts in higher stress parts of the Rapman tend to develop shear cracks and spalls after hundreds of hours of operation. Rapman owners are then left to either request replacement parts from BfB or print their own spares. Interestingly, there is a healthy spares design effort underway for the Rapman, part of which is hosted on the BfB website itself.




Here the printed white ABS grips for the x-axis linear bearings replace the lower plate for the extruder carriage in a much stronger configuration that the original.  Indeed, at this moment, there is a very exciting redesign of its printable parts underway by an Australian newcomer that greatly reduces the print time required for what were finicky corner blocks.








All this aside, there are many pieces in a laser-cut printer that simply need to be printed as-is in ABS rather than redesigned.  Heretofore, I found myself carefully tracing the parts out on paper and using calipers to get the dimensions.  While that approach works well with many parts some, like the extruder z-depth stop plate are much more problematical.


This particular plate is the antithesis of rectilinear and locating the holes and pockets is tedious to put it mildly.  I'd thought that it ought to be possible to use an ordinary 2D scanner to capture this sort of information.  Today, I gave it a try and discovered that it was not as straightforward an operation as I'd imagined.  


I had an extra copy of this part that I'd bought still in the protective blue film, so I threw it in my Epson Perfection V500 Photo scanner, a very cheap and extremely high resolution machine.  Even with the blue film the image captured didn't have a lot of colour information that would let you think that you could separate the part from its background.










I pulled that one into Slice and Dice and tried to separate out the image with RGB manipulations to no avail.  I then tried putting a intense red background behind the piece figuring that the blue would override the red and tried playing with the colour mixes in both Slice and Dice and Photoshop, again to no avail.








Two things were killing me; the transparency of the part and it's depth, which you can see very clearly in this scan.  When I tried to just capture the edges by going high contrast, the depth of the object spoiled everything.








It occurred to me that I could paint the part on one side with tempra paint, which can be wiped off of slick surfaces.  Rather than drive into town and given that the part was already protected with a blue film I simply spray painted it with red enamel.  I then put it back in the scanner with a piece of dead black HDPE sheet behind it and instantly got the colour separation I needed. 


Popping the scan into Slice and Dice and filling the black with green, I had an image I could work with.  As you can see, it was a little nasty, largely due to the messy laser cutting on some features and a bit of flare here and there.








A few moments in Paint cleared that up.








Now that I had crisp colour separation, defining the part boundary in Slice and Dice was trivial.






While I was in paint I took the pixel counts across the diameter of the outer circular feature boundary and measured the same feature on the part with calipers.  I then adjusted the size of the image in Paint.


With a bit of pushing and shoving in Slice and Dice, I processed the part and created a print file.  Here you can see the print roads for the part.






With a print file, I did a trial print to check the dimensions.  The acrylic part lay precisely over the printed part.












I photographed it again with the original part slightly ajar so that you can see the holes in the print.










If you look closely at the several layers of part print that I ran before aborting it you can see that I need to increase the print flow a touch.  More importantly, with a part of this size and complexity, however, I am going to have to write a routine that makes a better job of reducing transition distance between print roads.  Transitioning was taking far too much of the machine time.  That's on my "to do" list now.


What I've demonstrated here is not a smooth operation on Slice and Dice just yet.  I was mostly trying to prove the concept.  That was a huge success.  What this means is that owners of laser cut reprap machines can readily exchange parts information with nothing more complicated than an ordinary 2D scanner and a set of calipers.  This should give us considerably more flexibility than we have at the moment.


I am certain as I finish this blog entry that someone is going to show me a simpler, faster way to do this in a few hours.  That's certainly happened before.  If not, though, we have this approach.  :-D


Saturday, September 25, 2010

When ego takes charge



Nordom recently printed a brilliantly executed M30x70 bolt, nut and washer ensemble.



I was, of course, quite jealous of his accomplishment and still am.  It is just a beautiful thing.

That got me to wondering, though, just how small a bolt one could print?  As usual, I was too impatient to wait till Nordom got permission to distribute the STLs for his bolt and finally found something similar in Thingiverse.

I hate recessed head bolts so I replaced it with a regular hex head and scaled it down to a M10x20.  After several tries I had something useful.


I've put it beside a similar metric bolt on the Rapman for scale.


Although the metric scale threads work in ABS, it seems obvious to me that something cut a bit deeper would be more useful.

Now that I've got that out of my system, I'll be going back to working on my carpal assembly.

Sunday, September 19, 2010

An interesting stringing behaviour



The ability to reverse the extruder on my Rapman printer during transitions between print roads has reduced stringing to an enormous extent. What stringing I do get tends to be very thin and feathery.

I've noticed an interesting stringing behaviour since the release of firmware version 4.0.2, though. You can see it here.


What you will get is a thin string between two objects being printed being propagated and then the string acting as a brush on th extruder orifice at intervals between roads.  These brushed accretions build up into quite beautiful forms resembling frost.

When you get just a tiny bit of string hanging off of your print you will see the brushed accretion building up at 45 degree angles into something resembling fractal patterns.

This phenomena isn't a big issue for me.  The accretions are thin and fragile and brush off easily without sandpaper.

They are pretty, though, in my opinion at least.  :-)

Thursday, September 16, 2010

Dealing with detaching rafts



In which your narrator seems to have come up with a way to prevent raft peel for ABS on an acrylic print table.

About two weeks ago, the rafts for my ABS prints started detaching from the right hand side of my print table.  I was losing one out of two to one out of three prints that way.  At first I decided that my acrylic print table had simply got too warped and I had too much variation in level on the acrylic.  I removed the acrylic print table and checked its flatness with a milled straight edge.

Indeed, it was a little warped so I used a belt sander on it till if was as flat as the milled straightedge.  That seemed to work for about an hour but I was soon back to where I began.  I then decided that the table was now adjusted properly and went to a great deal of trouble getting it so on my Rapman.  Same result.

In desperation I began to print on the left hand side of the print table and the problem went away.  It was still troubling, though.

On Tuesday, I finally caught on.  In the last weeks the weather had cooled to where the outside temperature was in the teens more often than not and dropped into the single digits {Celsius} in the early mornings when I began to work.  I looked at the printer table and noticed that the window I used to ventilate the work area was on the right hand side of the printer.  The next time that I had a raft detach I measured the acrylic work surface temperature with my IR thermometer and discovered that whereas it was about 25-26 C on the left hand side of the table the draft from the window dropped that to 22-23 C on the right hand side.  I was rather shocked that I got that wide a variation in surface temperature over a few centimeters distance, but I certainly did.

I closed the window and the peeling instantly stopped.

That remedy wasn't workable because of the ABS fumes, so I rigged a portable heat lamp onto my camera tripod to shine on the print table.




The radiant energy keeps the acrylic print table at 34-40 C with the window open.

I haven't had a raft detach since then.  I've done a few dozen prints, mind.

Thursday, September 09, 2010

Acid test



I decided to give the new non-loop road finder routine a tough workout to see how robust it is. For that I designed a 20 mm diameter herringbone pinion gear.



I did a solid print for strength.  As you can see, there were no problems.  The stl's processed without drama and the gcode is good.

Wednesday, September 08, 2010

Changes to Slice and Dice



Slice and Dice was fine as long as your parts were more or less continuous along the z-axis and not so complicated that you got a lot of clashing with print loops. When I got to working on the thumb joint on my telepresence hand, however, I started having a lot of trouble with both of those limitations.

A major strength of Slice and Dice is that if you have a dodgy STL file you can clean up little imperfections on the slice images. That's wonderful until you have a part that you want to print that has little in the way of commonality between slices. I found myself fixing faults on 30-40 slices in Paint. That was seriously not fun. The main problem, as it developed, lay in the implicit dependence of Slice and Dice on looped road descriptions. Once you get into complicated parts it becomes very difficult to meet the app's expectation of clean looped print roads.

This is the part that started causing me trouble.


Virtually every slice is unique.

I rewrote the road making routine to deal with non-looped roads this evening. This is the resulting test print of the part shown above.


A problem that the old Rapman firmware was that it expected minimum print road line segments to be about 0.6 mm long. When I finished the rewrite, I was not looking forward to fitting line segments to the non-loop print roads. I had the output, but it was all 0.1 mm print roads.

Andrew at BitsfromBytes has said that the updated firmware would handle 0.1 mm roads with no problem. I frankly didn't believe him because the older firmware would slow the print down to 6 mm/sec with 0.1 mm roads. I decided to give it a try with the 4.0.2 code, however, and it turned out that Andrew is absolutely correct. The Rapman firmware has no trouble print sequential 0.1 mm line segments at my chosen print speed of 16 mm/sec.

That made the print file for the two halves of the thumb joint some 8 meg long. Since I have a 1 gig SD card, however, that's no trouble at all.

Monday, September 06, 2010

Wondering what the fuss is about



In which your narrator wonders what all the fuss is all about?

I guess I just don't get it. When you work with a plastic, after a while you get a feel for what it can do and what it can't. I started getting along along quite happily with no heated bed and ABS.

I print with a 0.3 orifice at an axis speed of 16 mm/sec. I suspect that I could kick it up to 22 mm/sec without a lot of drama, but I don't want to take the time out to play "who can print fastest" games at this point.

Once I started doing thin walled pieces and no infill my warping problems virtually disappeared. Most of the pieces I design have a largest dimension <= 90 mm though I've printed a herringbone rack that was 250 mm long. My acrylic print table temperature stays at about 25-30 degrees. You also don't find my prints warping after a few days from the internal stresses that Bogdan has talked about. I've seen that with HDPE. I was also printing with cross-hatched infill in those days, too.

I got into thin walled, no infill after I realised that if I went that way I got pretty fast prints that way at lower print head velocities.

Watching you guys reminds me of the first and second year architectural studio students that I used to lecture to back in my university professor days. They'd make models of buildings out of either "shipboard" {2 mm solid cardboard} or carve them out of expanded polystyrene foam treating it like it was so much cool butter or cheese. We used to say "form follows chipboard". If you followed the careers of those students they usually spent the first five years of their careers designing actual building that got built that looked as if they'd been carved out of cool butter. That's an extremely expensive way to design and build buildings. Those guys either got out of the habit fast or wound up doing architectural detail drawings for other designers who'd developed a feel and respect of the potential and limitations of the materials that went into their buildings.

Around here I see parts designed like you were more used to using an expensive CNC milling machine to carve parts out of a block of steel or aluminum.

That looks really cool but begs the fact that you're not taking advantage of the strengths and avoiding the weaknesses of the material you're working with, viz, plastic and extruded plastic at that. Somewhere along the line with Reprap we got the idea that we ought to be able to design parts in any shape we wished and whatever the material wanted to be be damned. You can see the trouble it's caused us in the chase after things like heated beds and support materials. We're spending a lot of time on that chase when we could be designing killer apps that make having a much simpler reprap machine very desirable.

That's just an old architectural technologist talking, I suppose.


I've included a link of the telepresence hand that I'm currently designing. That is human sized, btw. The largest part dimension is a touch over 80 mm. No warping whatsoever on any part.




Thin walled, no infill, snapped or glued together. There'll be a few screws in it to secure some elastic bands that return fingers to their rest positions. I haven't figured out how to secure elastics bands with snap on parts or glue yet. I'm thinking about how that might be possible all the time, though. :-)

Saturday, August 28, 2010

Making a lid for a potentiometer mounting box



In which your narrator shows you a few tricks of the trade with thin-walled prints.


In my telepresence robot hand project I'm not using off-the-shelf servomotors but rather making them from scratch. A servomotor basically consists of a gearmotor, a potentiometer and some electronics, in my case an MCU.

You saw in my previous posting how I'd developed the hand segment and sorted out the gearmotor positioning therein. That done, I had to turn to see to mounting a potentiometer. I decided to simply add an extension to the back of the hand segment to contain the potentiometer.

I'll not go into detail about the design of the box itself but rather cover the trick one uses to design the lid for the box. Here is the box.

The mounting box is nothing special.  It's a simple square box with mounting rack groves in the sides, seating for the potentiometer and screw posts to secure the lid.



The box is simple to design.  It took me about seven design iterations to make everything fit properly and to get the proportions worked out.  Using the Reprap 3D printer at every step meant that it was a very low risk exercise.

The box itself in Art of Illusion 2.8 was a simple box in which I'd removed the mounting slots on the sides with two boolean ops.



Once that was done I simply removed the voids where the potentiometer would be seated and where the mounting screws would be fitted.  I've switched Art of Illusion over to wireframe mode so that you can see the voids since they don't penetrate the surface of the mounting box.





Designing thin walled parts is a bit like designing an old photographic negative.  You design the  skin of the object and the holes inside of it rather than trying to design the object itself.  When you print the object you simply don't use any infill.  The top of the box is just another kind of infill, so it is omitted, too.

Here you can see how the printed box seats the potentiomenter.




Now, designing the lid you simply take the Art of Illusion file for the box and leave out the void that seats the potentiometer.





You want the lid to have holes that match the screw posts in the box so you leave those voids in.  

Next you slice off the top of the box leaving the screw hole voids exposed.  You do this in Art of Illusion by simply creating a block and merging it with the top of the box down to where the screw voids begin.






Then you remove the top of the box using Art of Illusion's boolean ops function.




While you don't want to have a hole big enough to slip the whole potentiometer through, you do need to accommodate its shaft.  A simple way to do that is to simply take a copy of the seating void cylinder and put it back into the object as a solid rather than a void.




Since we've sliced off the top of the box you can see the top of the cylinder now.  Now it's just a simple matter of reducing the radius of the cylinder to a bit more than the radius of the protruding shaft.




Now do a boolean op to remove that cylinder so that you there will be a hole in your lid.




When I looked more closely at the potentiometer I noticed that there was a little metal tab on one side to act as a stop to keep it from rotating around its shaft.  I had to design a little slot into the lid to accommodate that tab.  I did that by simply locating a little block where I wanted the slot to be.





Then I did a boolean op to remove the space occupied by the block.




At that point I brought back the cube I used to slice off the top of the box and moved it down so that exactly the thickness of the lid was exposed.




I then did a boolean op that chopped off the bottom of the box so that only the lid remained.





At this point I discovered that I'd made a mistake.  I'd designed the hole in the lid so that it fit the shaft.  Actually, the shaft fitted into a seating hub in the potentiometer that stuck out about a millimeter.  I brought back in the shaft cylinder that I'd used a moment ago and widened the radius to a bit over the radius of the hub.




I then removed that cylinder via a boolean op which widened the hole to accommodate the seating hub.





Now comes the tricky part.  The lid as designed will sit on top of the box.  I want it to recess into the box.  I could try to do this using Art of Illusion, but there is a much simpler way much less likely to fail.

Remember that the box will be printed without infill.  In this particular case we will print it with two 0.8 mm print roads describing the perimeter with a thickness of 1.6 mm.  Print roads tend to be rounded on the inside of the box, a fact that makes working them with Art of Illusion a bit messy.  It is easier to just process the  lid in Slice and Dice.

Once you've done that you simply go into the Filled folder and pull out the image of the print roads for the lid.

In the present state of development of Slice and Dice with complex prints roads like this it is necessary to go in with Windows Paint and clean up the print road image a bit.  Here you can see a few flaws in the roads image.




I've circled two of the most obvious.  In the upper right hand circle we have a feature that is less than 1 mm in diameter.  The lower circle encloses a loose print segment that is too small to print.  It's best just to remove those in Paint.  You will also, when inspecting the print, note that several of the print road loops are broken by a missing pixel or have tags of pixels hanging on.  Those should also be fixed or removed.

You usually only encounter this kind of problem on slices with very complicated print roads.  That's not a big deal and it is a quick thing to fix in Paint.  Since Slice and Dice processes images rather than arrays of numbers at each step you can go in and make changes with Paint if there is some flaw that you want to fix.  You can even alter the print roads in Paint if that suits you.

Altering print roads is exactly the trick we will be using to make the lid recessed.  The box has a perimeter of two print roads.  We simply go into Paint with our lid and erase the outer three print roads.

That lets the print box lid fit into the box and sit atop the screw posts inside.  We could have simply removed two.  In practice, however, that requires a bit of touching up with fine grit sandpaper on the edges to get the lid to fit.  Removing three roads leaves a 0.8 mm gap between the box and the edges of the lid.  That's good enough for this job.

Here you can see the potentiometer box with the newly printed lid lying beside it.






Now you can see that the lid fits nicely over the potentiometer.






After that it's a simple matter of securing the lid with metal screws and putting on the potentiometer's washer and nut to complete the job.





Now you check the fit between the potentiometer box and the hand segment.





You are now ready to connect your potentiometer box onto the back of the hand segment with boolean union ops in Art of Illusion and then print out the resulting large part.

This is how you create a large complicated part by designing it as a set of smaller, simpler parts.