Analog Line Follower + Custom PCB [Part 1]

For the final project in my analog electronics course, the assignment was to make an analog circuit. This circuit had to have at least three transistors or op-amps and do something. Some groups are making amps for their guitar, others are build analog computers. I decided to rebuild one of my first robots in analog form.
            Originally this bot used an ATMega8 to follow a line on the ground. It used a couple photo-resistors and LEDs to determine if it was on the line. The Thing worked pretty well, but had some trouble on low contrast surfaces.
In its analog rebirth, I am using only transistors to make the same logic decision as before. I’m also only using a single photo-transistor to follow the line instead of several photo-resistors. This version of The Thing will use a home made PCB instead of a tangle of wires soldered directly to the pins.
            I started off by using other analog robots as resources to figure out what sort of design I needed. After a lot of digging and some testing I eventually ended up with a schematic and parts list in Eagle CAD (awesome circuit design program). Using Eagle awesomeness, I turned it into a single layer PCB design.
Board schematic [Eagle CAD]
Board design file [Eagle CAD]

I decided to make my own PCB instead of using a breadboard. The process of actually making my own board would give me brownie points, if not actual points, on my final project.

I thought about ordering a short run but the production and shipping times for sites like BatchPCB would put delivery after the project was due. The cost of doing a short run elsewhere was too high for me to consider as well. So I went with etching my own at home.
            My first search brought me to the Society of Robots website and a guide there on making a PCB. It listed all of the steps but was very vague on some of the materials or curing periods. I ended up following a guide posted by the Cal Poly Robotics Club. To my surprise, Radio Shack still carries etchant solution and copper clad boards. The etchant is actually a ferric chloride (MSDS). I picked up a bottle and a board and started to work that night.
            Using a laser printer available on campus, I printed out my design onto some glossy paper and ironed it onto the cleaned and scrubbed board. After a lot of soaking and scrubbing and more soaking, I got most of the paper off. Next time I need to use lower quality paper, it did not want to break down/dissolve/act wet even after an hour submerged and scrubbed. About 95% of the ink traces were intact. I fixed those that weren’t with some permanent marker.
Inked copper clad board

The etching process went much quicker. I poured about 1/4 to 1/2 in of etchant into a plastic container and microwaved it for 30ish seconds (outside of course, I don’t know what the heated chemical odors could do to me and I would rather not experience them first hand). I tossed in the board and kept the liquid moving the whole time. Every so often I would take the board out and gently wipe it off with a paper towel. This helped speed up the process greatly. After 20 to 25 minutes, the board was done. I washed it off with soapy water to make sure the etchant was gone. Then I washed the board with acetone to get rid of all the ink.
Etched and cleaned board

A few basic tests with a multimeter showed that all the traces were good. Nothing connected where it shouldn’t have either. Not bad for my first try. The next step is to drill out the holes and solder in the components. Sadly, I forgot to purchase a bit small enough to work. The smallest I have is 1/16in and I need something closer to 1/32in bit for the through hole components.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s