Category Archives: CNC

Believe christmas sign

Its rare that my wife asks me to make something for her. I think its hard for her to get over some internal negative connotation she has with ‘homemade’. This year for Christmas she did ask me to make her a sign for the front yard. My marching orders were for it to be as big as possible, and to say ‘Believe’. My CNC machine has only a 2×4′ bed, and for the first run at this I didn’t want to be patching together multiple boards. I chose to use 1/2″ plywood, as painted I think it will hold up pretty well to the elements.

First order of business was to grab an appropriate font. I usually go to 1001freefonts.com. No affiliation, but they have a nice selection of free fonts, and there is no hoops to jump through to get them. I chose the new font, typed up the word, and expanded it to fill my 2’x4′ work area. I then did a profile around the word, leaving a 2″ gap all around. The ‘fanciest’ part of this design was to use vectors to draw inside the letters to outline where the lights would go. My software could then space holes along those lines, and I chose to space them 1″ apart – end the end this worked out very nicely. The only other open question was how big the holes should be. Using my calipers I found out the lights were of inconsistent size. Most were around 0.21″. In the top center of the drawing you can see where I had a few holes of differing sizes that I machined initially to determine which size hole would have the best ‘friction fit’ to hold the lights in.

believe_cad

I painted the 2×4 sheet bright red and let it dry overnight. From there it was off to the CNC. I had big plans to use a contact paper (for lining drawers) mask for masking off the letters so they could be easily spray-painted white. This did not work well, and I would not do it again in the future. The mask isn’t super sticky, and it had a tendancy to pull up when routing. It also had a tendancy to ‘melt’ when sprayed with the spray paint I had. Regardless, my first machine operation was a profile to cut the mask with a downcut bit. This will also prevent tearout on future machine operations using an upcut bit.

So what you see here is the mask, along with repairs to mask made with blue painters tape.
believe masked

Second operation was to pocket the letters. This was just a shallow 0.2″ pocket. I then cut out the sign, spray painted the pockets (letters) and removed the mask. The led lights inserted from the rear with a friction fit, no adhesives used. Sorry I didn’t think to take more pictures of that process. Below see both day and nighttime photos of the final product.

believe_day

believe_dark

2013 Christmas light controller :: Part 2

The controller portion of this project will be based off an Arduino Mega 2650.  Of that the intent is to use 30 of the available digital channels.  The target for 30 is arrived that for each remote board I can get 6 channels pretty easily.  That is driven by 8 wires in an rj-45, with 2 being used for power – leaving 6.  Based off how many lights we actually wanted to hang, we decided 5 groups of 6 channels should fit the bill.  Getting to the design on the Arduino shield I quickly discovered I was limited by the 4×3 inch area provided by the freeware version of Eagle PCB design.  In hindsight I should have just ponied up the credit card and purchased the hobbyist version.  I will probably end up getting that for next years’ inevitable growth.

With the working limitations I had, I needed to break the shield up into two pieces, as I could not fit everything in the 4×3 working area.  I ended up making one board for 18 channels, and another for 12.  Here is a zip with the eagle files.  I warn you in advance the .sch files are not pretty… 🙂  They are free to use for non-commercial purposes.

Overall its a pretty simple design.  Arduino pin goes high, opens the gate on an NPN transistor.  This grounds the led on board lighting it, as well as proving a ground leg for the remote board which turns on the remote LED and Optocoupler which in turn flips the triac on.  Simple daisy chain effect.

master board

Turning that into a working board was a bit trickier, as I couldn’t get it designed as a single sided board.  That mean I had to get the board aligned perfectly after milling one side and flipping it over.  After the first board which I got close but not quite (pictures below) I figured it out on the second board.  It turned out to be much easier than I was making it..

Of importance is the get the board aligned straight along the x axis.  I did this by routing a .1″ deep square the board fit in.  The square was oversized, I just wanted a straight x-axis line.  I then mounted the board against that axis with double-sided tape.  make sure there is 100% coverage on the board.. don’t leave tape gaps as board will flex down on z axis in those spots.  I then aligned the x/y corner and etched the bottom of the board, and drilled the bottom.  The gcode for these operations were created through pcbgcode which I wrote about in another article.

To get the top of the board, flip, re-tape, and align to the x axis.  Then jog the CNC to line up on a few selected holes from the previous drilling operation.  In eagle, hover your  mouse over these holes and you will see the x,y location.  Enter these in your machine, and validate a few other holes.  You should be good to go for etching on the top!

eagle xy

First attempt with trying to measure offsets for the front/back operations.  This created some offset holes, which had to be managed a bit with a dremel grinder.  Still a usable board.

offset2offset1

Second attempt using the eagle offsets described above, which came out very nice.

master1master2

Next update will show assembled boards, and hopefully a video of everything operational.

2013 Christmas light controller :: Part 1

I really don’t like hanging or taking down Christmas lights.  I generally do the bare minimum my wife requires to get through the holidays.  I HAVE always been intrigued with the computer controlled lighting displays that are synced to music.  Last year I got into a fun partnership with one of my neighbors.  He wanted to do the whole music shebang, but didn’t know how to do the hardware side of the equation.  Mmmm.. symbiotic relationship.

Last years’ system was a 12 channel deal controlled by a basic arduino.  Worked well enough, built on perfboard and stuffed into a 2-gang junction box.  Downsides were it was not engineered well at all, with the 5v logic intermixed with the 110v ac.  It also required a lot of extension cords as all 12 channels/outlets were combined at the same location (in his garage).

So, we are at it again this year.  The objectives are:

  • increase to 30 channels (arduino mega)
  • hub/spoke design.. with centralized control and 6-channel remote boards to minimize extension cord usage
  • add LEDs to show when channels are on/off for easier programming/debugging
  • safer design.. with better isolation between logic and 110v.  also include little things like fusing on board.
  • waterproof enclosures as we are approaching this as a modular multi-year initiative

So with that in mind, I first created one of the satellite boards.  I designed this in eagle, with a goal of keeping it a single-sided board for easy machining.  The initial trial board machined out well (see previous posts showing generation of gcode from eagle-cad).

First run was pretty good, and soldered up into a usable board.  I did have to hand-dremel a joined trace.  Improvements identified were:

  • Increase the amount of cnc routing around the traces to improve isolation
  • fix the 110v connector pin sizing.  I had them at .1 and they are really .2, so my screw terminal connector wont fit
  • Add a fuse which I forgot to add
  • Increase trace size where possible.  Mid-trace holes sometimes cut the whole trace, so had to bridge with solder.

Did solder up ok into a usable board though:

After a few eagle cad changes and some modifications to the cnc gcode generator you can see the a/b comparison of the boards.  With the original run on the right, and the new one of the left.  Machine time takes about 30 minutes/board.  Using a 60 degree v-carve bit… probably not the best tool for the job.  If you have recommendations on bits please let me know.

CNC sign from Plywood

My neighbor is starting to brew his own beer, which is a great boon to me.  In an attempt to curry additional favor I offered to make him a sign for his garage.  My intent was to do a trial run in plywood, then do a final in maple with walnut letters.  While doing a clearing operation the main portion of the sign, I got into a layer of plywood that had a very nice grain/color.  I am no real wood expert, so I don’t know what it is, but it was very pleasing overall.

Got off easy on this project, just routed the letters down into the next layer of lighter colored wood, and I was set.  Few coats of rubbed poly and off to the neighbors.

Lesson learned – look at the edges of plywood when routing, you may be able to use the various layers to your benefit!

Water Rocket Launcher 3.0 :: The Plan

Been launching water rockets with the kids for a few years, and thought I would try to amp things up a bit this year.  I have been using the air compressor to generate the launching pressure, and the 80psi or so I get makes for an impressive launch – but I think we can do better.  I have also been trying to make an electronic push-button type launcher, little kids have trouble pulling the rope to release the wrocket sometimes.

So I thought I would take a different approach and try to generate the pressure internally via combustion.  That way the bottle would be basically sitting on the pad, not under pressure until ignition.  I had previously thought I could generate H2O via electrolysis but thought that may be too dangerous to have 120vAC in the mix..  🙂

So new plan is to use propane.  I think if you start the bottle with x amount of air, then add propane until you hit the right mix and ignite you should be in business.  The wrocket will either fly or blow up!  Hopefully after a few tests I can identify the right mix.

Or maybe it will just blow up each time.  Should be fun either way.

HT Controller : Overview

Ok, this is a quick post to index the previous posts relating to my Home Theater controller build for later reference.

Project Goal(s):

  1. Mostly to use the CNC machine to make something new, with materials other than wood.  Learn in the process.
  2. Fix a previous project that broke.  I had a power strip that turned on my amps sequentially but the voltage regulator burned up (no heatsink)
  3. Address the problem that my cable modem is behind my theater equipment rack, and when it needs to be reset it’s a pain to get to.

With that in mind, here are the posts covering the basic steps – in order:

  1. Learning to make a circuit board.  Isolation routing one and two.
  2. Cutting the front/back panels out of acrylic.
  3. Assembling the innards of the controller, and connecting input/outputs.
  4. Troubleshooting the things that went wrong.
  5. Final pics and video of completed project.

HT Controller : Troubleshooting

So I had some issues when putting the final product into use.  Which is to be expected, but this bugger had me opening the case at least 6 seperate times..

Issue 1 : when the 5v relays would kick in, it my 7805 voltage regulators didn’t have the reserver to engage them both at the same time.  I needed to add a capacitor.  I did it the easy way, and just screwed it into the terminals.  The +5v is wired in parallel so both relays benefit.

Issue 2 : I used digital pins 0 and 1 on the arduino to control the relays.  Turns out those pins are used for serial communications.  So when updating the board the relays woudl clickclickclickclick like no tomorrow.  No good, had to use different pins.  Obviously I didn’t account for that on the board creation, so they got solder to the pins directly.  Picture is a little out of focus, but it is the orange/yellow leads in the foreground.

Issue 3 : In the external power strip where 6 seperate relays live and are controlled by the arduino here, I made a mistake in that I didn’t have any 10k pull-down resistors on the 6 control lines.  I should have put them in my original circuit, and instead I added them via a little ‘daughter’ board I added to my original circuit board.  Oh, and if you actually jump to read about the external power strip know I took the power supply and arduino out as they are replaced by this build.  All that is left is the transistors and relays.

Ribbon cable removed, and ‘riser’ pins installed:

Daughter board freshly machined:

And installed:

Lessions Learned :

* Patience.  I had to keep telling myself that there was no way I would get everything right on the first try.

* That a 7805 regulator needs a headsink in most cases.

* That a 7805 also needs filter capacitors.  You can’t just plop it in a circuit and expect clean output.

HT Controller : Assembly

Installing the various components to get the HT controller to work was probably my favorite part of the build.  Something satisfying about seeing everything coming together.  At a high level these are the key components:

Arduino : Brains of the operation

Custom circuit board : Connections out from arduino and 5v power regulation

Relays : control each of the 2 outlets (cable modem and router)

Scavanged switching power supply : 120v ac to 12v dc

DB9 : connection out to the power strip where a relay controls each of 6 outlets/amps

So everything was installed on nylon spacers, with small machine bolts coming up through the bottom.  That can be seen well on the relay installation:

And here is the custom circuit board I created in my isolation routing tutorial.  All wired up to the front panel, buttons, db9, and relays:

Overall unit in early assembly:

And (almost) final:

Primary lesson learned on this assembly was when routing a circuit board that you are going to attach ribbon cables to, ensure the holes are lined up straight.  Do not stagger them as I did, it makes it very difficult.

I also learned that when soldering to plain copper boards you really need Flux – more than than what is in your solder.  I had good luck with some acid-based plumbers flux I had laying around.  I put that on the board where the pads where, and then tinned them.  Don’t forget to clean it of with rubbing alchohol or acetone.

HT Controller : Panels

So for my home theater controllers I needed front/back panels.  I knew I wanted to make these out of acrylic sheet, and that I wanted to use the CNC to cut them out.  One of my drivers was that in the past button layout was always a bit tricky, using the drill/dremel it was difficult to get everything lined up right.  So with that said, here is where I ended up:

Getting the actual panel cutout was pretty straighforward.  Measured the case, and setup the outside dimensions and then measured out where the controls would be.  The biggest challenge was the cutout for the outlet.  For that I traced an outlet cover plate, scanned it in, and imported the scan into my cad software.  This is the backplage all coutout.

This chassis has been used in previous projects.. so never mind all the fan cutouts!  Used to hold 4 500gb drives which was a HUGE storage array (in its time).  I didn’t quite get the speed/feed for cutting the acrylic down – so that is a continuing learning opportunity.

Same panel painted with spraypaint (on the inside):

and installed using clear silicone as an adhesive:

The front panel had some text v-carved around the buttons as labels.  This was done with a 60 degree v-carve bit, then filled in with white crayon.  Worked out quite well!  Again, the back is painted black and the text is engraved in the front.  Only the right button is crayoned at this point:

Only other task I had that was panel-related was to route a spacer out of 1/8″ hardboard for mounting the LCD panel.  This got sandwiched between the LCD and the front panel (with clear silicone) to make the LCD be flush with the front.

Primary lesson learned : When cutting thin 1/8″ material (acrylic in this instance) do NOT use an upcut bit.  It will pull the material up off the table and into the route.  This would be a use case for a downcut!

Ring light for CNC

I recently put LED strip lights under the cabinets in the kitchen, and had a few left over.  They are pretty basic white 12v LED lights, similar to the ones you see here.  While milling a circuit board the other day, I found myself using a flashlight to see how things were progressing.  It was also hard to photograph the process, so I thought I would install some lights.  Pretty straightforward process.  The strips are made of small segments which can be cut off the roll.  I cut 4 sections off, and arranged them in a square.  Soldered the corners up and left a longer lead which would go through my cable raceway to the computer running the show.

The LED’s I had are backed with a 3m adhesive, so mounting them under my z-axis was pretty easy.  Peel and stick!

From there, I opened up the computer case and cut the leads off one of the molex connectors.  The power things like cdroms/hard drives, and contain both a 5v(red) and 12v(yellow) power source.  I connected the Leds up to the 12v, and now whenever the computer is on the LEDs light up the work piece.