Monday, January 27, 2014

Robot Motherboard.

I've been working on a prototype motherboard for a new robot I'm developing.  Above is my recreation of the Fabkit V2 board in Fritzing, a fabulous open source PCB editing platform (check it out here).  This will be the first of a two-sided board.

The other side of the board, which does two things: 1.) Routes 8 i/o pins to be neatly mated with servo connectors, and 2.)  Regulates a 9-24v input voltage to be 5v with a max current output of 5 amps - perfect for driving a bunch of servo motors!  

Toner transferred to blank PCB.  Check out this post if you're interested in the process.

TRF foil applied to seal toner image.

Side one of the board, post-etch.  Check out my new etching agitator, here!

Registration holes drilled.

Toner image for side two prepared.  I marked the registration holes in red, to highlight how I align the holes in the next image.

Registration holes aligned.

Toner transfer for side two complete.  Not perfect, but close enough for this prototype.

Side two, post-etch.

A new part of the process for me: tinning.  It is good to tin plate your copper clad board, to protect it from oxidizing (tarnishing) over time.  I decided to try Liquid Tin by MG chemicals, because it seemed simple enough: 1.) Pour in Plastic Dish, 2.) Put PCB in Dish, 3.) Enjoy your tin-plated copper.

A quick video of the plating process. It happens almost immediately, so is kinda hard to spot.

I couldn't resist.

The board, post-tinning and trimming.

Circuit boards are so pretty!

Front and back.

Detail shot!

Soldering the capacitors and indicator light for the voltage regulator circuit.

Behold! The finished motherboard.  I should probably build a robot to put this in...

Saturday, January 25, 2014

New agitator design.

This is my old agitator.  When I first started etching my own PCBs, I cobbled this thing together in about an hour.  While it got the job done, it was ugly, bulky, required a dedicated micro controller, and did not accommodate different sized containers.  I thought it was time for an upgrade...

I drew this thing up last summer.  The idea here was to mechanize the oscillation, to cut out the need for a micro controller and servo.  Also, I wanted to design the frame to be adjustable, to accommodate different container shapes and sizes.  This design would also allow anyone to build one for themselves without having to own the exact same glass container I use.

The brackets for the frame, and several other key components, can be 3D printed.  I'll be publishing the designs on thingiverse in the near future.

The most complex part of the design in the oscillator.  This will convert the radial motion from a 12v DC gear motor, to an up and down sine wave oscillation. 

I designed the 3d-printed bearing block to hold one 608 bearing, and two 8mm linear bearings (the former can be salvaged from old roller skates, both can be ordered from most 3d printer part suppliers.)

The "lever" for the oscillator can be made from a small chunk of aluminum.  I cut a bit off a scrap from an old project.

One hold should be drilled in the face of the aluminum block to accomodate the diameter of the motor shaft you're using.  Mine was about 5mm.  Another hole will be threaded with a 5/16" tap, so should be drilled to about 9/32".  A third hole should be drilled in the side of the block for a set screw for the motor shaft.

Tapping the 5/16" hole.

Tapping the set screw hole (I went with a 6-32 tap for this.)

Pictured above: the newly machined lever attached the the motor shaft.  To mount the motor I just used a steel bracket from a local hardware store.

With the oscillator finished, it was time to cut a bunch of steel rods.  8mm rods are ideal... I had some left over from 3D printer projects.  But in a pinch you can get away with 5/16" rods for this design... I ended up using a couple of these as well because I can buy them locally.

Above: first test of the oscillating mechanism.  Was a bit too dramatic for the application of agitating chemicals, so I ended up moving the 5/16th hole closer to the motor shaft hole.

The last thing to fabricate was the rubber "grippers" for holding the glass container steady in the agitator.  I used some scrap rubber tubing with foam rubber super glued around them.

The finished frame, with rubber grippers attached.

As you can see, the middle bar of the frame can be slid from side to side to accommodate various containers.

First footage of the finished agitator.  I wired a toggle switch to easily start and stop the machine.

I'll be using this quite a bit in the near future for a new project, so look forward to more images and footage of this guy in action!

Saturday, January 18, 2014

PCB fab - Toner transfer method

I finally perfected the toner transfer method for fabbing my own printed circuit boards.  David Kelley of Ideo says "Fail often to succeed sooner."  Let's just say that the video above was not my first attempt at this process...

I recently picked up a used HP laserjet 5000. The main paper tray feed is broken, but the single feed tray works fine.  This is perfect for printing toner transfers!  You can find them on amazon for around $200, here.

With the printer set to use maximum toner density, I printed a sheet of fabkit arduino boards (plans from MIT here) for practice using this method of making an etch resist for a pcb.  I use toner transfer paper by Pulsar, here.

In the past I've attempted to use a clothes iron to apply heat to the transfer paper, but decided to pick up a cheap laminator to hopefully simplify the process.  This one works like a charm, as long as I run the board through several times.

I found that folding a bit of the paper over the edge of the copper clad board helps hold it in place as it goes through the laminator.

As SOON as the board runs through the laminator, toss it in some room temperature water (as shown in the video at the beginning of this post.)  In the past I've waited too long before putting it in the water, and it doesn't release properly.

Next I add a layer of green TRF foil.  This will adhere to the transferred toner and strengthen the resist against the acid.  Again, I fold a bit over the edge of the board.

And run that through the laminator...

I peeled the TRF foil away, and voilĂ ! The resist is complete.  Time to etch...

For that, I do what printmakers call the "Edinburgh Etch."  A mixture of ferric chloride, citric acid, and water will etch the unprotected copper away from my board.

I add some adhesive-backed craft foam so the board will float in the acid...

Normally I use an agitator to keep the acid moving around, but I'm currently in the process of upgrading mine.  In that case, I make sure to have the copper side of the board facing down, so that the copper will fall away from the board as it etches.

The board after the etch...

Resist removed with acetone, board trimmed on my bandsaw & beltsander.

My arduino SMD components...

And after (painfully) soldering the tiny components, the board is finished!  Next step would be flashing the atmega chip, but I'll save that for another post.

Thursday, January 2, 2014

Pung Remake

For an upcoming show at the Madison Public Library Gallery, I decided to remake my interactive piece Pung (see old versions here and here.)  Versions 0.3 and earlier required a hidden laptop to run, so I decided V 0.4 would run solely on an arduino micro controller. 

The new Pung utilizes Wayne and Layne's open-source Video Game Shield along with the TVout library for Arduino.

For audio input/interaction, I'm using two electret microphones and breakout boards from Adafruit, here

 The first test-footage of Pung V 0.4:

Still some debugging to do, but the software is working well enough to show in Madison next week.  The next step is installing the new system inside of the old Pung console-case.

If anyone is interested, I will most likely do a build detail on this project in the future.