Friday, September 11, 2015

Filtering Silly Putty

Years ago, probably about 1995 or thereabout, I hosted a 100lb Silly Putty group buy. I wrote a little web page using JSP, Perl, and Firebird, and used it to let dorks like myself sign up to buy Silly Putty in half-pound increments. I think I ended up with about 25 orders ranging from half a pound up to 15 pounds. Once we reached that magic 100lb aggregate, the minimum order quantity for Dow Corning® 3179 Dilatant Compound I had everyone mail me a check, and ordered a box of the stuff.

Not long after the boxes showed up I and one of the guys from the buy, a Cisco engineer from Austin, spent an evening dividing it up according to the order list and packing it into cardboard boxes for shipping. New 3179 Dilatant Compound is tough stuff, dividing it up is a tough forearm workout!

That was so successful I hosted a second buy for unpigmented translucent putty and a kilo of green glow powder to make glowing putty.

So, tl;dr: that's how I ended up with about 8 pounds of coral Silly Putty, several pounds of white putty, and a fist-sized blob of glowing putty.

The problem with Silly Putty is that over the years it collects lint and grit which makes it less fun to play with, and it darkens, especially if you like to use it to pull ink off of newspapers. So I was thinking of ways I could clean it. Picking out lint and grit is too slow to be realistic, but bulk filtering is impossible because it's a putty. But what if I dissolve it first and then filtered it?

I have a new bottle of Ronsonol lighter fluid that I bought as a home lab solvent a while back, so I figured I'd give it a job. I dropped a small blob of putty into a 20mm test tube, threw in a couple of tiny magnets to act as a stir bar, covered it in a few mL of lighter fluid and loaded it up on the stir plate:

I let it run for an hour or so, but the big chunk wasn't dissolving very fast, so I added a hot water bath to encourage it. Eventually, and with a little encouragement from a glass rod, it all dissolved into a clear solution and the coral pigment.

I centrifuged it and transferred the clear solution and the coral mess to evaporation dishes in the vent hood. After driving off the solvent I was left with unpigmented putty base and the coral pigment with it's contaminant load of lint and grit:

However, as you can see, the solids were a gummy mess. This is because I did not rinse the solids with clean solvent before evaporating the solution, which means that some of the putty base was left behind.

So I repeated the process with the gummy mess, this time rinsing, centrifuging, decanting twice more before drying the solids. The result is a very fine coral powder with some contaminants that I've halfheartedly manually separated. 

I don't have a good way to divide the coral powder to show how small the particle size is, but it's talc-like. If I can get it down to fine powder I will be able to run it through a mesh to remove the remaining lint, and then I can incorporate it back into the putty to achieve the original goal, filtered putty (with only a faint smell of lighter fluid). I may try this again with a different solvent, maybe something that smells nicer. I'm sure alcohol will work, and it's easier to evaporate.

Monday, February 16, 2015

Van Overhead Console

I'm building a new overhead console for the '93 B250 conversion van I've recently acquired:

After driving it around a while I decided that it doesn't have enough storage up front, and there isn't a good place to mount my FT-8800 amateur radio transceiver. A good way to fix that is a new overhead center console. Fortunately, all the interior trim is oak, so it's easy to match the existing style.

The roof of the van is 3/16 OSB, or something similar, in two pieces with a gap running down the center. The gap is covered by a third piece which is attached to the ceiling and holds everything up.

 To that center piece I've attached some LED lighting, to brighten up the interior:

One of the problems with this is that the center strip is visible if the rear view mirror is angled upward a bit. This means that in the normal viewing position the night-mode reflection is pointed up at the LEDs, producing a ghostly reflection. The sight-line from the mirror to the rear windows is about four inches below the original center console, which means that if the new one comes down just less than 4 inches I won't be able to see it, but it will block the view of those LEDs.

This is the original upper center console. It's just a 3/4" oak plate.

The first step is to mock up the shape of the new console so I can drop it as low as possible without interfering with the rear view mirror sight-line. Cardboard and packing tape:

That gives me an approximate template. A little sketching and measuring provides the details.

For construction I used a 4'x8"x1/2" oak board. The angled cuts for the side pieces were interested. I don't have a sled for the table saw that will make those safely, so I just carefully cut them with the bandsaw, clamped the planks together and ran it across the jointer a couple of times to clean it up.

For the trapezoidal bits that extend up into the recessed area above the front seats I reused the existing trim pieces.

I ran the old finish pieces through the jointer to take off the old finish and glued them on.

Unfortunately I made a construction mistake and built the whole thing a half inch too narrow. Rather than rebuild it I just ran it through the table saw and glued in a carefully sized piece. Then, after much swearing and fine tuning with the Dremel, it went right in.

At the rear one of the storage pockets is visible. There are two, one on each side. They don't match exactly, but you can only see one at a time anyway, so no problem. At the front is a red LED that shines down on the center console. Just in front of the storage pocket is space for the body of the FT-8800 radio. The face of the radio (removable with remote mount) will go on the side near the front, and the handset will be stored inside behind the radio face. I'll have to make a door of some sort for access to the handset. For that I'm thinking I'll just cut a hole in the bottom plate at the front and stick some magnets in there to hold it on.

The bottom plate is screwed on and can be removed without removing the entire console, which is screwed to the ceiling panels. This is so that I can mount the console on the ceiling and then connect the various power and antenna cables that attach to the parts inside, and then put the cover plate on.

Sunday, December 28, 2014

What's in an Inexpensive Centrifuge?

I've added a low-speed centrifuge to my lab equipment. It is a Chinese-made device sold on Amazon by Hardware Factory Store. It works well, I can recommend it if you need a basic centrifuge.

I was curious what was inside, what does $110 get you?

Looks like a 25W 110V universal motor and a NXP BT136-600E triac controller. The rotor is light aluminum sheet, and the motor is mounted with rubber isolators.

The control panel:

Has a speed control (top), power switch and indicator (middle) and a mechanical timer (bottom). Notice that this control panel is different from the external picture of the unit which uses an illuminated switch where this one has a separate light.

Details of the motor controller:

Just your basic triac controller.

I noticed that if I put 115mm centrifuge tubes into it the tub runs into something inside. I put a camera inside and closed the unit to see what the problem was:

Turns out that modified power indicator is in the way. I'll fix that by 3D printing some collars to hold the tubes up a little farther so that they clear the indicator.

Monday, October 27, 2014

Crystal Chamber PID Tuning

Since I'm trying to use a PID controller to keep the chamber temperatures under control I need to tune the PID parameters. And since this is designed to run for hours at a time, and because I'm crap at PID tuning, getting it right it is very tedious. Also presumably I'll need to tune it differently for different chamber loads. A liter of water is going to behave differently from a 50mL of solvent, so I figure I may need to retune it several times for different uses.

So I set it up to dump the parameters so I can visualize the process. Nothing fancy, just CSV out the serial port to a log file, then into Excel so I can see what's going on:

I've run half a dozen trials while I learn how to do PID tuning. That image is from part of the process where I'm looking for a good Kp that doesn't overshoot. After playing with it for a while I decided that I might as well get the rest of the hardware and software done, then play with the fine tuning later.

Sunday, October 26, 2014

Crystal Chamber Controller Interface

The code I've been using to run the temperature controller for the crystal chamber so far has been pretty bare, just the core PID loop. I don't have it tuned yet, but it's generally functional, so it's time to start getting it in shape to be an appliance.

A while back I picked up some old IBM modems that were being retired from the modem pool at work. I was hoping maybe I could convince one to speak Bell 202, but that didn't pan out. Anyway, they have nice boxes and the front panel has a set of buttons and an HD44780 LCD controller, so I held on to it:

The box has a nice power cord and switch built in, so I will be able to just stuff everything inside and put a connector on the back for the heater and temp sensor wires. Then I can use different chambers depending on what size I need. I could also run set it up to run multiple chambers, it only takes a couple more pins to run additional chambers, so I suppose I could set up to run about three. Maybe for version 2.

I wired it up for the LiquidCrystal library, plugged it in and away it went. The controller is only good for 8 characters, so I've got it set up to cycle the display through each setting one at a time. Right now, that's the setpoint temp, the current temp, and the number of seconds left in the ramp.

I also noticed that at some heater PWM frequencies the power supply squeals, so I added start and end cycle beepers. When I switch power supplies I'll probably need to add an actual beeper, but this was kinda fun in the meantime.

I also mounted the heater and temp sensor for real:

It's there at the bottom of the image. I used poly tube standoffs to keep the leads from contacting the aluminum tape and to provide a relatively stable mounting to the foam. The temp sensor is in the upper right-hand corner. Previously it was just laying on the floor of the chamber. Keeping it up in the warm air rising off the heater helps the response time, but also makes it clear that there's some pretty strong stratification going on in there. I'm pretty sure I'll need to add a tiny fan to keep the air mixed. I didn't want to do that because of the possibility for vibration to affect the crystals, but if it does end up being necessary I can probably isolation mount it somehow. Or maybe I should use an ionic wind type fan. Every project needs some nice high voltages, right?

The next step will be to scare up a new power supply that'll fit into the old modem box and come up with a connector for attaching the chamber.

Monday, October 20, 2014

Crystal Chamber Temperature Controller v0.1b

I cobbled together a simple temp controller to try to get a feel for what it'll take to make one that will work for my temp controlled crystal-growing chamber. For this first iteration I've just got a simple PID-controlled heater, LM75 I2C temp sensor, and a 25W heater element.

For now I'm just running on an Arduino and a crappy bench supply (with a way-too-bright power indicator). For the finished project I'm thinking I will use a Teensy 3.0 as I've got some samples of them that I'd like to do a write-up about.

To house the controller I'll be repurposing an old modem that has a front panel with a small LCD and a set of buttons that I can use for menu navigation. I can mount a power supply and all the electronics inside and put a connector on the back that plugs into different chambers. This big chamber will be nice for large beakers, but I'd like to have a smaller one for test tubes. I can put a resistor on the chamber side of the connector so the control box can identify which chamber is connected and select the appropriate PID tuning.

I ran this for a few hours to see how it behaves. The 0.5C resolution on the sensor is pretty bad, but overall the results were encouraging. I don't really care much about how it handles large rates of change, since the hot solution will go into a preheated chamber. The main concern will be whether it can hold a stable downward ramp with minor fluctuations outside the chamber. I haven't tested that yet.

Next step is to get the heating element mounted so it is stable and out of the way and then test with a beaker of hot water so I can see how well it do temperature ramping. I'm pretty sure I'll need to upgrade to a higher resolution sensor for really long ramps, but for a day or two this 0.5C should be ok if I screw with the PID tuning enough.

The PID library has some kind of auto-tune that looks interesting, but I haven't figured out how to use it yet.

Wednesday, October 15, 2014

Insulated Temperature Controlled Chamber

For my crystal-growing I'd like to have better control over temperature so that I can cool solutions very slowly. I've been using a heavy ceramic dish and a hot water bath for this, but I want to try cooling rates of days or weeks. To achieve that I think I'm going to want heavy insulation, radiant barrier, and probably a small computer-controlled heater element.

As a start I'm using 2" pink foam with aluminum tape as radiant barrier on the inside surface:

The foam is rated R-10. I'll put a liter of hot water in this and log the rate of change to get an idea of how much it reduces heat loss over open air. That should give me an idea of how much power I'll need the microcontroller temperature controller to handle.

I'd like to be able to keep it as low as 0.1degC per hour while minimizing fluctuations, but at this point I don't have any idea how challenging that will be.


As described above I put a 1 liter beaker of hot tap water into the chamber and stuck a thermometer through the top down into the water. I recorded the temperature every 10 minutes for a couple of hours, then wandered off for a while and then came back and got a final reading: 

So I figure 1000L dropping 0.578C in 10 minutes is about 578 calories per 10 minutes, or 4.03 joules/second, 4 watts.

Room temp was 24C, and I was testing around 62C. The box surface is about 0.25 square meters, so that would be 4.03W/0.25sq.m, 16.1W/sq.m. R-value is ΔT/W/sq.m, so 38/16.1 = 2.36. The 2" pink foam spec is is R-10. Even with my shoddy construction I'd expect better than R-2.36.

Maybe that value is in RSI units. Wikipedia says the conversion from RSI to R-US is RSI * 5.68, so R-13.4. That sounds pretty reasonable considering the radiant barrier.

I might want to ramp the crystallization down to very cold temps, and it's a lot easier to just put the box in the freezer than it is to make a box that can cool itself, so the temp outside the box might be down at -20C. So, if I want to hold the box at 100C in a -20C environment, how much power do I need? Flipping the equation around and using the RSI value of 2.36: W/sq.m = ΔT/R, ΔT is 120C, so: 120C/2.36 = 50.9W/sq.m, or 12.7W for the 0.25 square meters of the box. Within my ability to measure that's linear scaling, which seems pretty reasonable from eye-balling the graph, which is also pretty linear over this narrow temperature range.

I'll give it some headroom and call the target 15W. On a 12V power supply I'll need to switch 1.25A. I've got a pile of IRF540N that'll be fine for that. My power supply is 12V at 3A, so my heating element needs to be between 4 and 10 ohms. Too low and I'll send the PSU into protection, too high and I can't get enough power out of it. That's probably another junk-box item.

Next up is electronics. I've got some old LM77 temp sensors laying around. They're not very accurate, but they'll be fine for a first iteration. 


Started prototyping the controller:

The chip is an LM75 I had laying around. It's only 9 bit with the LSB reporting 0.5C increments. That's fairly awful, but it's good enough to get started. I can swap in a better sensor later.

I dug up an old nichrome toaster element to see if it would work as a heater:

I connected it to the desktop supply (which seems to be running 15V open-circuit, I may need to get in there and see what's going on with the regulation), and it runs at 13.7V and 2.05A, for 28.1W. That'll be perfect, I just need to put a MOSFET on to drive it and I should be able to hold the chamber at any temperature I like.

The insulated board it is wrapped around is 5 inches across which is just right to fit inside the chamber. I think that if I leave it on the board I can put it on one side of the chamber so that convection will prevent any stratification. I'll probably use one of the other toaster elements which is wrapped with all the turns on one side. I can face it toward the wall to create a chimney while avoiding radiant heating of the solution, That could definitely disturb crystal formation.