Saturday 7 March 2009

Simply better

I find it very satisfying when making something simpler also makes it better. I tested the simplified heater / nozzle design using the same stainless steel insulator and heatsink arrangement, so I could get a direct comparison of the results.



The heater warms up a lot faster than the one made with two AL clad resistors. It also extrudes faster and the times are more consistent. ABS pushed with 2.32Kg went from 3.7 mm3 to 4.6 mm3, an increase of 24%. HDPE pushed with 4.6Kg went from 3.8 mm3 to 9.3 mm3!

The nozzle is 0.6mm rather than 0.5mm, which reduces its contribution to the pressure by a factor of 2, but all my other tests have shown that what happens at the other end of the heater dominates the force requirement. As I improve things though, the nozzle hole becomes more significant.

Here are the drawings :-



Although it looks complex it isn't difficult to make with a drill press, drill vice, and some taps and dies.

I glued the thermistor in with Cerastil, but I expect it could just be wrapped in tin foil and jammed in like the ceramic resistor, taking care to insulate the wires of course. I use PTFE sleeving.

I didn't need to seal the threads with PTFE tape. I just screwed them up tight and there was no sign of any leakage.

The next thing to try is putting a taper in my PEEK version to see if that can be made to perform as well as this one.

Of course I haven't built anything yet with any of these designs, so caveat emptor.

Friday 6 March 2009

Rheology

Rheology is the study of the flow of matter and that is what I have mainly been doing for the past few weeks. When I made my experimental set-up to measure flow rate versus extrusion force I expected to be able to produce some nice graphs for different plastics and different temperatures. I found this excellent page which derives the formula for flow rate I in a pipe in terms of pressure P, radius a, viscosity η and length L.
I = πΔPa4 / 8ηL
A cylindrical section of flow is considered. Since it flows at a constant speed the force pushing it forwards, which is the pressure plus the viscous drag from the faster inner cylinder, must equal the force retarding it, which is the viscous drag from the slower outer cylinder. Integrating twice yields the formula.

Until recently I had assumed that the large amount of force required to extrude was due to pushing viscous plastic through a tiny hole. The equation shows that for a given flow rate and viscosity, the force is proportional to the length and inversely to the fourth power of the bore.

The RepRap V1.1 extruder has a heater barrel that is 45mm long with a 3mm bore and a nozzle with a 0.5mm hole that is about 3mm long, so that would mean that it is about (3/0.5)4×3/45 = 86.4 times harder to push the plastic through the nozzle than the heater. However, that assumes the viscosity is constant. At the point where the plastic melts the viscosity tends towards infinity, so the actual force required to push the filament through the heater is much higher. I have had some extruder configurations where it was hard to push the filament even without the nozzle attached. This simple experiment showed that cutting off 5mm of the heater barrel from the cold end made a significant difference.

Despite these observations I expected the flow rate to be directly proportional to pressure and, with a constant pressure provided by gravity, I expected the flow rate to be constant. In fact the flow rate varies wildly from one run to the next and often increases towards the bottom of the fall. Flow is not directly proportional to pressure, it increases faster than pressure does, and lower pressures seem to give more erratic results.

I tried improving my test equipment to see if I could get more consistency. I reduced the size of the opto tab to record just the last 20mm of the fall, so things had plenty of time to reach equilibrium. I also made a piece to guide the tab into the slot as the weights have a tendency to rotate and make it catch.



I also tried force cooling the heatsink with a small fan. I made a cowling to stop the fan cooling the heater.



This is probably the most complicated shape I have modelled so far. The only mistake I made was not leaving enough room for two of the nuts to hold the fan. I used self tapping screws instead. If I were designing it again I would put tubular bosses behind the screw holes and use four self tappers. It takes some time to get used to designing in plastic. I tend to use a lot of nuts and bolts, and so do RepRap designs, but they are rarely used in commercial plastic products.



The fan didn't seem to make much difference when extruding ABS, either in the variability or the flow rate. If it did affect the flow rate its effect was lost in the variability.

So after some thought about where the variability was coming from I came to realise that it is an inherently unstable experiment. A lot of the force required is pushing the solid plastic plug through the entrance to the extruder.

For ABS and PLA, which both have glass transitions, the situation in the thermal transition zone looks like this.



When the filament meets the point in the thermal barrier where the temperature is above Tg (the glass transition temperature) the filament transitions from its glassy brittle state to a soft rubbery state. In this state it will change shape as force is applied, but it will not flow. Further down it gets to the point where it melts and becomes a very viscous fluid until it warms up to extrusion temperature, where the viscosity is much less. The soft plug gets compressed length-wise by the extrusion pressure, which makes it expand outwards and grip the wall of the insulator. This greatly increases the force required to push the filament, which in turn causes even more outwards force. If the plug is long enough, relative to the coefficient of friction with the wall, it can become impossible to slide it along. Applying more force simply exerts more force against the tube wall, increasing the friction to match the extra push. This is the condition that causes the extruder to jam.

A plug is formed even in plastics without a glass transition, like HDPE and PCL. Molten plastic simply flows backwards until it freezes.

The plug acts like a piston pushing the molten plastic out of the nozzle. Its front face is continually consumed by melting, but the back is replaced by new plastic that is softening.

To prevent the jam, either the coefficient of friction has to be low, or the thermal transition, and hence the plug, has to be short. An outward taper seems to help a lot.

I was asked for a drawing of my tapered stainless steel transition zone, so I drew one from measurements and extrapolation of the taper. The result was scary: -

I hadn't realised I got so close to rupturing the pipe, although it may not actually be as close as the drawing implies. It does work well though.

The reason the plug leads to an unstable result is that the slower the filament travels, the longer the plug is and so the resistance increases and the flow slows further. I.e. a positive feedback effect. It is also why increasing the force gives a disproportionate increase in flow rate. The faster flow reduces the plug length (because the plastic has less time to absorb heat) reducing the resistance, so more pressure gets to the nozzle, increasing the flow rate.

One implication of this effect is that an open loop DC motor is never going to work well. Another is that measuring the force applied to the filament is not a good guide to the nozzle pressure.

I think a more consistent experiment would be to extrude at the desired rate and measure the force applied. The plug would then have a fairly constant length and hence the force should be fairly constant.

Although I cannot get any accurate measurements from the experiment, I did get a rough idea of the force required to extrude various plastics at the extrusion speed I use. I.e. I added weights to get the flow rate around π mm3.

Material Diameter Temperature Nozzle Weight Flow rate
HDPE 3.1 mm 240 C 0.5mm 4.60 Kg 3.81 mm3
HDPE 3.1 mm 200 C 0.5mm 4.60 Kg 2.39 mm3
PCL 2.8 mm 150 C 0.5mm 4.60 Kg 3.44 mm3
ABS 2.7 mm 240 C 0.5mm 2.32 Kg 3.67 mm3
PLA 2.9 mm 200 C 0.5mm 3.32 Kg 6.95 mm3

The viscosity of PCL and PLA drops rapidly with temperature, for example PLA would not extrude at all at 180°C but was very fast at 200°C.

The next thing to try is putting a taper in my PEEK extruder and evaluating the copper welding nozzles.

Monday 23 February 2009

Three times better

I made a plastic mounting plate to allow me to test the new stainless steel extruder in my test rig.



Here it is under test: -



I felt that this design was working well. Now I have the figures to back it up. It is three times better! I.e. with the same weight the extrusion rate is three times faster through the same nozzle and at the same temperature. With 8.27Kg I am now extruding HDPE at 9.43 mm3/s.

This is a dramatic improvement, especially considering it did not work at all until I added the taper to the end of the transition zone. It shows that the design of the entrance to the extruder is critical and at least as important as the exit.

It is really good news because using stainless steel as the insulator really simplifies the extruder and at the same time extends its temperature range and makes it strong and reliable.

By replacing the heater block with one made with a vitreous enamel resistor and a screw-in welding nozzle, I should have a design that can be made with a drill press, a couple of taps and a die.



I haven't tried the welding tip yet, but now I have a means of comparing it against the standard nozzle.

Saturday 21 February 2009

If at first you don't succeed ...

Remember this?



It was my last attempt to get a high temperature extruder idea working. ABS jammed in it, so I put it to one side. This morning I made a slight modification and got it to work extremely well.

The filament was getting stuck in the end of the stainless steel tube where it enters the heater block. I removed the PTFE tape from the threaded joint as I thought that may have been insulating it. That made a small improvement. I could push ABS through it by hand, but only just.

I then flared the hole with this tapered reamer so that it has a 5mm inside diameter at the end, tapering back to 3.6mm, which is the internal diameter of the stainless steel tube.



That made all the difference, I can now extrude my oversized ABS very easily and even HDPE only requires moderate force.

I am not sure why it made so much difference. It makes the wall thinner, so the heat from the heater can get to the plastic easier. It also reduces the friction of the plastic against the inside pipe wall because any downwards motion causes the plastic to come away from the wall.

The next step is to connect it to my test rig to get some comparative pressure figures. My feeling is this extrudes more easily than my PEEK version. That may well benefit from a taper as well.

Thursday 19 February 2009

Lead kebabs

I am aware that I have often stated things like "HDPE needs more force than ABS to extrude" and a "short thermal transition is easier to push plastic through than a long one" but I have never produced any figures to back up these statements. In fact I don't think anybody on the RepRap project has published any extruder pressure figures. Odd because it is the key piece of information needed to design an extruder and it isn't too hard to measure.

I have put together a test rig to measure the rate of extrusion for a given pressure, which I can vary. That will allow me to evaluate different extruder barrel and nozzle designs quantitatively.

I designed most of the parts in CoCreate and printed them with HydraRaptor.



The boss on the far right has mounting holes which match the extruder pump and holds a PTFE cylinder over the filament entrance of the thermal break. I chose PTFE for its low friction. I place a 55mm sample of filament into the cylinder and then push it down with a piston laden with weights. The piston is just the end of a 6mm aluminium rod turned down to 3mm.



An M6 nut stops the green cylindrical saddle, which carries the weights, from sliding down the rod.

The top of the rod is held in line by a guide that it clips into and slides through. A flag 40mm long slides through an opto switch to allow me to measure how long it takes to extrude 40mm of the sample.



The 2mm thick green ABS allows a little IR through, not surprising as it lets some visible light through as well. It was not enough to give a bad logic level but I painted it with black paint to be on the safe side. I should have used black ABS!

The opto connects to the unused filament empty input of HydraRaptor's extruder controller and the heater and thermistor connect to their usual places. A simple Python script tells me how long it takes the flag to pass.

My first idea for weights was to use reels of solder and that is what I designed the rig to accommodate. I managed to muster this little lot, which weigh about 2.2 Kg.



That weight only managed to extrude HDPE at a rate about 1.1 mm3, which is only about 1/3 of the rate I normally extrude at, so I figured I needed about 6Kg to get realistic results.

I needed long thin weights with a hole in the middle, so I ordered some stackable lead sash window weights. I got 10lb, 5lb, 3lb and two 1lb. That allows me to add any weight between 1 and 20lbs in 1lbs increments. A shame they are not in kilograms but sash windows are rather traditional. They cost £50 including shipping so not a cheap solution but they should be handy for measuring motor torque, etc.



They were supposed to be next day delivery but I ordered on Sunday and got them Thursday. The two one pound weights were not the painted stackable ones I ordered and paid for. When I complained I was told they don't stock them any more. Why they let me order them and invoiced me for them I don't know. I shall not be using that company again!

I made a new saddle for the weights to ride on, a centralising collar for the top and two containers for the unpainted weights.



I also insulated the heater with ceramic wool. That reduced the heatsink temperature from 67°C to 57°C by stopping convected heat from the heater warming it. Unfortunately the boss that holds the PTFE cylinder covers a large area of the heatsink. When I make a new pump I will try to leave more of the aluminium exposed.



With this heater, which is a 20 x 20 x 12 mm block with the thermistor mounted halfway between the heater and the melt chamber, the simple bang-bang temperature control works extremely well. The temperature measured at the thermistor varies by less than 1°C. I have an LED which shows when the heater is on. With previous heater arrangements I see it go on and off at about 0.5 Hz. It does not switch cleanly on and off but fades in and out because of noise in the thermistor reading, i.e. I get PWM for free. With this heater the LED simply gets brighter and dimmer, so I have proportional control with just a single if statement! Who needs PID?

Here is the experimental set-up: -



So far the results are a bit disappointingly inconsistent. Six runs loading it with 55mm of 3.1mm HDPE filament and measuring the time to extrude 40mm of it at 240°C through a 0.5mm nozzle with a weight of 8.27Kg gives the following times: -

90, 95, 100, 114, 163 and 98 seconds.

I have no idea why there is such a big variation. 96s would correspond to 3.14 mm3/s, which is the normal rate I extrude at. So we are looking at a force of 81N. With a 5mm shaft that Adrian's pinch wheel design uses that would require a 0.2 Nm motor, I think. You need some margin so it would be the top end of what a Nema 17 can provide.

I don' think I counter bored my 0.5mm nozzle like I did my 0.3mm one, so I may be able to reduce the force somewhat. A lot more experimenting required I think.

Saturday 7 February 2009

Siamese twins

I designed a right angle bracket that I intend to use in pairs. Due to its triangular shape, and the fact that my software creates rectangular rafts, it would be quite wasteful to print them individually.

I am not sure if STL files are supposed to contain more than one object. CoCreate seems to think so but ArtOfIllusion not. However, if you have a set of parts that go together to make one item then it would more convenient to store them in one file and print them together.

A simple workaround is to join all your parts together with an impossibly thin rectangle at base level.



The slice software samples at the middle height of each layer so this 0.1mm base gets missed out completely.

The down side is a bit more stringing as the head moves between the two objects.



These were made with 0.5mm filament through a 0.3mm nozzle and highlighted a problem. As you can see the top surface of the lower triangular part is rippled. The reason is that the filament is not being stretched much, if at all. That means that the sparse infill sags because it is not pulled taught. Three solid layers over the top is not enough to recover to flat as they are not being pulled tight either.

So it appears that some stretch is definitely needed unless you are making a solid object. Here is the same thing made with 0.4mm filament and all is well again.



The upper limit on filament diameter that is usable from a given size of nozzle is somewhat less than the die swell as you need to stretch it a bit.

Wednesday 4 February 2009

Top tip

I got the tip to use welding tips for an extruder nozzle from Andy. They come in packs of five from Halfords for £4 on-line and £5 in the shops.



They are made from copper and have a 0.6mm hole down the middle. The thread is M5.

I drilled out the one on the right to 3mm, almost to the end, to reduce the pressure needed to extrude. They drill easily if the drill is lubricated with a little paraffin. It's a shame they don't work as is, but all the same it is much quicker and easier than turning, drilling and tapping the standard design.

They also simplify my evolving extruder design because the heater block no longer needs a spout. I can simply drill and tap the bottom of the melt chamber M5 and screw these in. I can also change the M8 penny washer for an M6 one. That allows me to reduce the outside diameter of the PEEK collar to 8mm so it can be made from the same stock as the thermal transition. The area of the collar will be less so it will conduct less heat.

The 0.6mm orifice can be made smaller if necessary by filling it with high temperature solder and then drilling it with a fine drill. Solder is very easy to drill so less chance of breaking a fine bit. Also Vik Olliver suggested you can make a small hole by soldering in some fine Nichrome wire and then pulling it out again to leave the hole (solder does not stick to Nichrome).

I haven't tried one yet but I can't see any reason why they wont work well.

Monday 2 February 2009

Evolving extruder

The fanless version of my new year extruder works well but is not the easiest thing to make.



I have redesigned the lower half to be a lot simpler. I also wanted to see what would happen if I made a cavity of molten plastic inside the heater. Up till now I have been trying to minimise the amount of molten plastic to reduce ooze, but according to Anon's comments here, professional machines have a relatively large melt chamber. I wondered if plunging the filament into a chamber of already molten plastic would make it any easier to feed.

This is a cross section of my design: -


The plastic clamp and cylindrical finned heatsink have been replaced by a single horizontal 6mm thick aluminium plate that combines both roles.



The easiest and most accurate way to have made this would have been to mill it with HydraRaptor. If I make another, that will be the way I do it, but I made this one with a hack saw, a file and a drill press. I start by gluing a paper template on the aluminium with stencil mount.

I then centre punch through the cross hairs and drill all the holes. The paper can be removed easily by dissolving the spray mount with paraffin. The larger mounting holes fit the Darwin X-carriage and the smaller ones fit HydraRaptor. The group of four holes allow the standard filament guide to be attached. The Darwin extruder clamp has slots but slightly oversized holes are fine.

The 8mm counter bore was a bit tricky. I drilled it with an 8mm drill and then bottomed it with an 8mm end mill. That showed that my drill press / mill is not really stiff enough to mill aluminium with an 8mm bit even though it has a 45mm thick steel pillar. I don't think HydraRaptor would have any problem doing it slowly with a small end mill. It probably doesn't make much difference if the counter bore does not have a flat bottom, so simply drilling would suffice.

Moving down the design is the PEEK insulator that forms the short thermal transition zone.



This is 8mm PEEK rod tapped with an M8 x 1 thread so it can screw into the heater block. I used the metric fine pitch because I didn't have the correct tap drill for M8 x 1.25 (6.75mm). The 3.5mm hole down the middle is drilled in-situ to ensure it lines up with the hole through the heatsink.

Small diameter PEEK rods are far more reasonably priced: 250mm x 8mm is only £3 here and is enough to make about 20.

The heater is a block of aluminium with a 6.5mm hole through it to take a vitreous enamel resistor for the heating element as described before.



As well as the tapped entrance to the melt chamber there is a small hole to take the thermistor.

I made this on my lathe, using a four jaw chuck. It could however be made with a drill press if the nozzle screwed into it instead of it screwing into the nozzle. The lathe gets all the faces perfectly square but there is no reason why it has to be accurate.

The next part down is a PEEK collar to insulate the heater from its retaining washer.



This is the only part I haven't thought of a way to make without a lathe. It might be possible to mill it with the right shaped cutter.

It snaps into the stainless steel washer and is a tight fit to the M6 spout so it anchors the nozzle laterally as well as vertically. It is counter bored at the back to reduce the thermal coupling.



Here is the assembly: -



It leaked a little bit of ABS but it seemed to stop when the leaked ABS oxidised. I should have sealed the joint with PTFE plumbers tape as I normally do. Apart from that it seems to work very well. I was able to manually push ABS through a 0.5mm nozzle very easily, at great speed. HDPE extrudes pretty quickly as well. When I stop pushing, it stops pretty quick. I think with a reversible drive ooze should be OK.

The design is much shorter than the previous one which will increase the build volume on Darwin. It is also very rigid so will not deflect when extruding.

I intend to simplify construction further. Rather than drill the stainless steel washer I can use the technique Ian Adkins uses on the BfB extruder where it is trapped between nuts and washers on studding. The only reason I did it this way was because I had the stainless steel bolts but did not have any M3 stainless studding.

I will also look at screw in nozzles. Andy Hall uses copper welding tips. The exit hole is a bit on the large size but I can reduce it by blocking it with high temperature solder and then drilling that, as I did with the solder sucker bit I tried.

The next task is to make a reliable drive mechanism to go on top.

Saturday 24 January 2009

HydraRaptor's New Year's Resolution

My new extruder has a 0.3mm nozzle compared to 0.5mm that I have used before. The actual filament diameter is controlled by the flow rate versus the head feed rate, so a single nozzle can give a range of filament diameters.

The maximum diameter is governed by the hole size and the die swell. The head movement has to be about the same as the rate that the filament leaves the nozzle, or faster, otherwise the filament squirms about and makes a zigzag instead of a straight line. Fortunately the faster the flow rate, the more die swell there is, which works in our favour when trying to extrude the maximum diameter filament. With the 0.5mm nozzle I could extrude up to about 1mm with ABS and I used that to good effect when making the first layer of the raft. With a 0.3mm hole die swell is more but even so I can only get 0.8mm filament. That makes the first raft layer thinner, so it is less tolerant to the bed being uneven.

I normally extrude at a rate that produces filament the same diameter as the nozzle but it can be stretched further making it smaller than the nozzle. The limiting factor is when the filament starts to snap. I did make some 0.3mm filament with the 0.5mm nozzle but I don't think I got the full benefit of the extra resolution because the filament was less constrained as the nozzle changed direction.



These two gears are both made from the same gcode with 0.3mm filament giving a layer height of 0.24mm. The one on the left was made with a 0.5mm nozzle and the one on the right with the new extruder with 0.3mm nozzle. The latter is slightly better defined. The benefit is more apparent on the underside.



The bottom of the one on the left feels perfectly smooth due to being made on a raft with a very fine surface. It is actually smoother than a sample I have from a commercial machine.

I was disappointed that it did not improve the clockwise slant of the teeth. This must be due to the same effect that makes holes come out too small. The filament likes to cut corners, so when the head moves on a curved path the filament takes a smaller radius path. I noticed that the teeth are straight at the base but slanted at the top, so the effect is somewhat cumulative.

I made another one with the outlines anti-clockwise on every second layer. Here is a video of it being made: -

HydraRaptor RepRapping a gear from Nop Head on Vimeo.

The teeth came out straighter but the edges are slightly more ridged because each layer alternates a little.



The surface is not quite as good as the previous one. I put that down to variations in the feed stock diameter. You need exactly the right amount of plastic to get a good surface.

I also need to up the resolution of my z-axis. 0.05mm is significant with 0.24 mm layers, so I will have to add microstepping like my other axes.

So in summary 0.3mm nozzle gives noticeably better results and can still make 0.5mm filament due to die swell. It is harder to get the raft heights and temperatures correct. To get the same build rate with 0.3mm filament I would have to extrude at 44mm/s, but HydraRaptor is currently limited to 32mm/s. I could probably tune it up to 44 but the vibration gets a bit ridiculous as the moving mass of the table is 9Kg.

Saturday 17 January 2009

Yet another quick heater hack

The ideal off the shelf heater would be a cartridge heater but they tend to be at least 1" long, need mains voltage and are very expensive. Here is a cheap 12V alternative: -



It is a vitreous enamel wire wound resistor that can handle surface temperatures up to 450°C. It is a 6.8Ω RWM 6 x 22 rated at 10W, but I am overloading it somewhat to get 240°C.

I bought a pack of five from RS. Farnell and Newark also stock them I believe.

I drilled a hole to accept it in a 19 x 19 x 8mm block of aluminium with an M6 tapped hole for the heater barrel and a small hole for a thermistor.



The tapped hole is at right angles so that the hot zone is as short as possible. It could be made parallel to get more contact area.

The outside diameter of the resistor measured 6.3mm so I drilled a 1/4" hole for it. That was too tight so I drilled it out to 6.5mm. I then wrapped aluminium kitchen foil around the resistor to make it a tight fit and rammed it in.

Here it is under test with a random bit of tube to simulate a heater barrel.



It needs about 11W (8.7V) to get to 240°C. 14.7W (10V) gives 300 °C. I haven't run it for very long so no guarantees it will last, but I can't see why not.

Compared to the aluminium clad resistors I tried before, these are cheaper and you get a more compact heater with a smaller surface area to lose heat from. Also making connections should be no problem with normal solder because the wires are long enough to cool down.

Fanless

I have not succeeded yet in getting the stainless steel barrel to extrude easily, so I had a go at improving my aluminium extruder to remove the need for a fan.



A lot of heat is lost from the large flange on the top of the heater barrel and transfers by convection to the heatsink above and by conduction through the bolts.



When I stripped it down I noticed the bolts had loosened.



The PTFE had shrunk lengthways and expanded in diameter and was no longer making a good compression seal.



Although no plastic had escaped it had leaked under the PTFE.



I think it was leaking so slowly that it oxidized where it met the air and went hard, stopping further flow. I hadn't run it very long so it may have escaped eventually.

So PTFE is obviously no good in compression at these temperatures. I replaced it with PEEK, which is a shame because it is about ten times more expensive.

I also replaced the aluminium flange with an M8 x 25mm steel washer insulated from the barrel by a PEEK collar.

Here are the parts, the PEEK section is drilled in situ to get perfect alignment: -



And here it is assembled: -



I put some PTFE plumbing tape over the hot end of the PEEK before pushing it into the aluminium in an attempt to improve the seal.

The heatsink now runs at 80°C without the fan. I would have liked it to be lower but as long as it is below the glass transition of the filament and the clamp it should be OK. I tried insulating the bolts with PEEK washers but that only dropped the temperature by 5°C, so not really worth the effort.



After one heat cycle I noticed the bolts were not as tight as they should be so it looks like PEEK creeps a bit as well. Perhaps glass filled would be better.

It is disappointingly complex with lots of machined parts but it does work very well. The heater power has dropped to 50% from about 80-90% with the fan. ABS filament extrudes manually very easily and even HDPE only requires moderate force. I think actually having the long heatsink preheating the filament to just below the glass transition is probably a benefit.

It is too early to say whether this design will be reliable but other than the PEEK section leaking there isn't anything likely to fail. I don't mind making things that are difficult to make provided I only have to do it once.

I also have a much simpler design in mind that should achieve the same short transition zone.