Tuesday, December 21, 2010

Wednesday, December 1, 2010

Star Trek Door

If you don't feel like reading the whole post, feel free to just watch the video!

>> Edit:  I just posted a new "extended version" of the video.

>> Edit:  Be sure to check out and vote for my Instructable in both the Humana and Craftsman Tools Contests starting next week!

I haven't posted much recently because I'm working on a few projects that aren't complete yet and I would rather wait to post them after they're further along.  But in the next few posts I'm going to be digging up an old project I finished over four years ago, which I am going to enter into the Craftsman Tools Contest.  I'm also going to talk about my ongoing work on the project, trying to turn it into a viable product. 

When I was younger, one of my favorite shows to watch was Star Trek: The Next Generation.  I also visited Disney World about once a year with my family, and my favorite "ride" has always been the monorail.  It is just an icon of all that is futuristic.  To think that it was built almost 40 years ago is amazing. 

The USS Enterprise Bridge

Walt Disney World Monorail

I always wanted a piece of Star Trek and the Disney Monorail in my house, and one thing they have in common is that they both have automatic sliding doors.  It would be the perfect, most geek-ified entryway for my bedroom.  Only one problem:  I was still in school and still lived at home with my mother in New Orleans.  I had tried to convince her for years that installing a Star Trek Door would be a good idea, but it never happened.  It wasn't until we were renovating our house after Hurricane Katrina that she finally caved in.  There wouldn't be a better time to do it. 

To be acceptable as a permanent renovation to our house, I knew the door had to have a normal appearance, as well as be practical and maintenance free.  To reduce the number of moving parts (and maybe for a little coolness factor) I decided to make the door air-powered.  The air would be supplied by a small compressor and storage tank located in the attic.  In order to open and close from the inside and out, the door needed a little bit of brainpower.  I decided to use a small PIC microcontroller, my platform of choice still to this day.  Arduino didn't exist back then. 

With a rough plan in my head, I drew a quick CAD model of the door and the brackets that would connect the pistons to the door halves.  I was ready to start purchasing parts:
  • Small air compressor with tank from Home Depot
  • 32" wide, solid wood door from Home Depot (to be cut in half)
  • Pocket Door Track from McMaster.com
  • Two 16" stroke, 3/4" bore pneumatic pistons from McMaster.com
  • A 5-way, 12V solenoid-operated valve from McMaster.com
  • Various pneumatic hose, fittings, a regulator, push-on hose connectors, two valves for air supply and purge

Here is the site of installation, where I had already started busting out the wall. 

I proceeded to cut the solid wood door in half with a circular saw, sanding the edges when done.  I considered using bi-fold doors which are already the right size, but they didn't give the appearance of a normal door when joined together. 

With all of the interfering studs removed from the wall, I held the rear drywall in place with 3/4" thick wood boards, which would still leave room for the door to travel through the wall.  I added a new 2x4 stud on one side to support the pocket door track, and installed the track and a door half using the included hardware.  You can see below how the one half will slide into the wall cavity. 

The track only came with one pair of rollers, since normal people only put one pocket door, not two, on the same track.  Luckily McMaster sells the rollers individually, so I ordered another set.  With some additional metal L-shaped brackets to reinforce the wood, the second door gets installed.  I also started adding electrical boxes for light switches that would need to be moved out of the way. 

By this point, the hallway outside my room was a mess, with cracked drywall from my not-so-elegant crowbar and sledgehammer stud removal process.  Carpet was about to go down in the hallway, so it was time to patch things up on the outside.

Some strips of drywall, mud, and trim take care of the hallway with no problem.  Of course you know what the keypad is for.  It was one of those things I had laying around from back in the day when Radio Shack was actually cool.  After about 8 years, I had finally found the perfect application for that piece of alarm equipment I purchased for no reason. 

With steady progress, the project is starting to take shape at this point. Now it was time for some of the details to come together.  I welded up a bracket out of some steel flat bar and attached it to the back of the door with a spacer block.  I could have really used some more advanced tools at this point, but I had to work with what I had at the time. 

With the two brackets fabricated and installed, I mounted the two 16" pistons above the door, side by side.  Air supplied to the back of the pistons would open the doors, and air supplied to the front of the pistons would close the doors, as seen below.  I rigged up the valve temporarily to test everything out. 

With the mechanical side of the project functional now, it was time to work on the electrical a bit.  I mounted a DIP socket, a relay, and a few other components on a Radio Shack perf board, and placed the whole thing inside a plastic junction box.  I added two power switches, one supplying AC power to the wall adapter for the circuitry, and the other supplying power to the compressor in the attic.  I wanted the whole system to be enabled and disabled from this "control panel", including the air supply. 

Around this time, the doors were starting to move under their own power.  The solenoid valve required a minimum of 30 PSI of air to activate properly, and with nothing limiting the flow of air, the door motion started out very violent.  Occasionally they would even cause damage to themselves from such rapid movement.  I also had to add a flow control to each individual piston in order to tweak the doors to meet in the center at the same time. 

I took a few videos around this time showing the doors moving in the exposed wall.  Sorry for the horrible video quality.


After countless cycles of testing and tweaking the door operation with the wall open for a month or two, I finally felt comfortable closing up the wall.  Here you can see some of the new drywall starting to go back up.

From there it was just a matter of painting the wall, and it was back to looking stock.  I purchased a blank white wall plate from Home Depot.  I drilled it out for an illuminated pushbutton and a 3-position keyswitch, both of which I bought from McMaster.  I also purchased a plastic hatch door from McMaster for the control box.  Lastly, I added an air conditioning vent above the door.  This lets the air venting noises be heard, and it also provides me access to the valve and pistons should anything go wrong. 

The key switch has three positions:  Hold Open, Hold Closed, and Normal Operation.  Normal operation means the door will open when the inside or outside buttons are pushed, and close after a few seconds.  I wired up the keypad so that I could lock the door from the outside, and a #* combination opens the door.  The keypad also has red and green lights which I used to indicate the door's status.  If the door is locked, the red light turns on, and the green light illuminates when the door is open.

And that just about wraps it up.  Four years later, the door is still up and running, and I recently took some photos and video of it in action during my last trip back home.  I also decided to upgrade the air compressor to a new Craftsman 1HP model with a much higher SCFM for faster refilling.  The compressor is hung from a roof beam in the attic with padding to dampen any vibrations.  


Watch the quick video:

And the extended version:

Tuesday, September 7, 2010

iPhone Controlled LED Suit In Action

Here is a compilation video I threw together showing my LED suit in action this past weekend at Dragon*Con 2010 in Atlanta. More build reports, photos, and video to come soon.

Wednesday, September 1, 2010

iPhone Controlled LED Suit - Quick Demo

iPhone Controlled LED Suit -- Part 2

The Controller / PCB

In the interest of time, and seeing how well my Lantronix breakout board came out on the CNC mill, I decided to CNC my own PCB for the entire suit.  I knew it would be fairly simple since most of the components are built on to the Arduino Pro Mini.  I still haven't found a decent way to design a PCB to be milled.  I use Altium for my circuit design, but this time I had to put my nerves to the test by taking the design into SolidWorks.

First, I started by drawing the overall board shape.  Then I extruded a .002" layer of copper on top of the board as a separate body.  Then I made a sketch containing all of the drilled through-holes for every component.  This took a lot of time because it involved looking up every component (luckily there weren't very many) and creating the footprint in the 2D sketch.  In the next feature I extruded away the excess copper, leaving only the rings around the holes I drilled.  This is accomplished by offsetting all of the entities in the previous sketch by a certain amount that I varied accordingly for each component.  Each piece of copper is a separate body in Solidworks at this point.


Next I began drawing traces.  Thankfully Solidworks lets me draw a single line, then extrude it in two directions to create a trace of the same height as the copper layer and with a thickness I choose.  Unfortunately it won't let me create multiple traces in one sketch and extrude them all at once.  So for now I am stuck drawing each trace in its own sketch and extruding them over and over again.  It was a very slow and painful process, but once I got used to it I knocked it out in a few hours.  

Most PCB design software, including my favorite one, Altium, lets you design a PCB by viewing from the top, but while drawing traces on the top or bottom layer.  Unfortunately I forgot about this when getting started with the PCB in Solidworks, but that was easily fixed with a Body Move/Copy to flip the copper to the other side without mirroring it.  Then I performed the same steps on the other side for a few more traces.  To check my sanity, I drew up the larger components and placed them to check for interference.

I chose a right-angle slider switch for the power, and screw terminals (not pictured) for attaching the wires on the right side.  I knew it would be a heavy toll for a 3.3v linear regulator powering the Lantronix module (~250mA) from approximately 12 volt supply voltage.  That is a lot of heat to burn off.  I found this awesome little 1 amp 3.3v switching regulator that is a drop-in replacement for the TO-220 style linear regulators, but it is way more efficient.

Being the impatient person I am, I didn't want to spend any more time on the design.  It was time to start milling right now!  First, all the tools were set up in the tool changer and indicated.  Then a piece of double-sided copper-clad FR4 PCB material was taped down to a 1/4" aluminum plate and clamped in the mill vise.  The first operation involved drilling the different sized holes, and then the traces were routed out with a .020" endmill.

After the traces got routed out and the operations for one side were complete, I cleaned up the burrs and the finish with a Scotchbrite pad.  With some acetone, the tape's adhesive broke down and I removed the board from the aluminum plate.  Then, using the holes that were just drilled, the aluminum plate was tapped for #4-40 screws, and I flipped the board over and mounted it back to the aluminum plate to perform the operations on the other side.  Then with a razor blade under a microscope, the excess copper was separated then peeled away from the board with pliers, leaving just the traces.

Since the Lantronix module was not cheap (around $65) I knew I wanted to make it removable in case this PCB turned into a disaster.  I had some 2mm headers from Sparkfun, but they needed a little work to fit properly.  The ends of the headers had extra material, which kept me from placing them in line with each other.  I took care of this in a few minutes on a manual mill.

I was ready to start soldering the components.  I used a DIP socket for easy Arduino removal as well.  Because the board is double-sided but the through-holes are not plated, I purposely designed some through-holes just to insert pieces of wire to transfer traces from one side to another.  Cool, everything fits!

Now it was back to Solidworks to design an enclosure.  When you have access to a FDM printer, it is fun to reminisce about all the adventures you've had with radio shack project boxes, but it's so nice to move on.  My friend Alex taught me all the tricks to plastic enclosure design in Solidworks:  Lip & Groove, Snap Hooks, and good practices in general.

And seriously, no lie, I pressed "PRINT" and it appeared a few hours later.  I had picked up a 2.4ghz antenna, and added a right-angle male header to my Arduino Mini for easy programming using the FTDI Basic Breakout.

That wraps up the controller for the most part.  I added a tactile pushbutton switch and a LAN activity LED after I took these pictures, but that is what those little holes in the top are for.  Now it's time to get on to more important things, like coding this shenanigans...