Personal Info Page

Hi! I am David Cofer. I recently graduated with a B.S. in Electrical Engineering from Tennessee Tech University, and I have one year of classes left to get a second degree in computer science. Right now I am in the process of trying to find a good job for the summer. So, if you are an employer, then be sure to check out my online resume. My interests cover the whole range of science. However, I am most interested in robotics, machine intelligence, and machine life. Notice I did not call it artificial intelligence. I am one of the new breed of researchers who believe that the answers to making intelligent machines lies in combining evolution, biology, and math (chaos), not in logic and explicit programming. That is why I dislike the term artificial. If done correctly, the only difference between an intelligent human and an intelligent machine will be that one has biological neurons and cells, and the other has virtual neurons and cells on a silicone chip. Artificial means "made by humans to imitate nature." I believe that living machines can never be constructed, they have to be grown through evolution. This is the area where I wish to devote my time in the future. And to help me with that I have set up some long term goals and some short term goals. Short Term Goals

Most of my spare time is spent working on various electronics, robotics, and programming projects. My main purpose in getting the EE degree was so that I could learn how to build computer, and robotics systems. The reason I am getting the CSC degree is because the bulk of my work in machine life will be carried out in software and not hardware. So, I had better be a good programmer. These are two of my most important short term goals. Most people, including my parents, believe that the work I do on these projects is just a hobby, or just for fun. While it is true that I love designing and building these things, there is a method to my madness. When I started out, my initial goal was to get to the point where I could build robots. For this I knew I would need an electronics lab. So I slowly started building or buying everthing that I needed. Virtually all of the equipment had to be built because it was way out of my price range. I started out building simple logic probes and debounced switches to help me learn how to build printed circiut boards. From there I took it up a notch and bought a small 8085 computer kit. This taught me alot about how computers worked. In the next step, I designed and built a simple interface circiut so that the 8085 computer could communicate with my PC through the parrallel port.

At this point I saw that there was some flaws in the design of that simple kit system. It worked, but it was really inefficient. So I felt that I needed to be able to design and build my own system. To do this, though, I would need some special equipment. So in order to program the EEProms I knew I would need an EEProm programmer. I could have bought one for about $130, but why waste the money. My design only costed about $15. It just took time to design, build, and test both it and the software. I had to write three other programs for this to work correctly. The first was the portcontroller program which allowed me to control the various parrallel port signals so that I could test the hardware. The second was the actual program that used the hardware to program the chip. And, the third was a simple 8085 assembler program that would convert assembly language programs into machine code.

The next big piece of equipment that I knew I would need was a logic analyzer. This is a device which lets you record the signals on a computers bus lines so that you can study the timing information and stuff. I could have bought a cheap one for a few hundred dollars. Instead, I decided to make a really good one. The design I ended up with would cost about $70. However, the only other types of machines that could compete with it costed thousands of dollars. It was a modular design that used a central bus and PC cards similiar to the type you use in computer systems. It was built using only logic components (ie. no onboard computer). And the part that actually gathered the data only used a few chips so that it could be as fast as possible. In the end the analyzer could have up to 32 inputs. It had a computer programmable 8 bit trigger word, and could potentially reach speeds between 10 - 30 MHZ. I have never tested how high it can actually go, so I can't say for sure. I also wrote a very nice windows application that could communicate with the hardware and display the signals on the screen as a timing diagram.

However, about two or three weeks before I was finished with the logic analyzer, I ran across something that would make it pretty useless, at least in the short term. I saw the new Basic Stamp II. I had read about the first basic stamp, and breifly considered using it in the robot. But, it did not have enough EEProm, ram, or I/O lines to really meet my needs. So I went ahead with my plans for building an 8085 systems to control the robot. When the BS2 came out though, it changed everything. It had 2K of EEProm, 32 bytes of ram, 16 I/O lines, seperate lines for serial port connection, and it ran at 20 MHZ. This could just barely fit my needs for the robot, and I chose to use it as the brains of the system. As of right now almost all of the PC boards for the robot are built and tested. And I have the first phase of the mechanics of the system almost complete as well.

At this point you might be asking "what is this robot, and what does it do?" From the very beggining of my work there was one very large problem that I encountered. It takes forever to design and build good PC boards. I have managed to get it down to about a day for simpler boards and usually three or four days for complex boards. This is very hard and tedious work. So one of my goals has been to find a way to free myself of this drudgery while still being able to produce quality work. Thats the main idea behind the design of my robot. It is a robotic arm system with a modular wrist. It has 4 degrees of freedom in the main unit, and the wrist can have more degrees on its own. I wanted the system to be as versatile as possible, so I made it were the wrist is interchangeable. One wrist might have a dremel tool attached which can cut, drill, and etch, and another wrist might have a gripper for picking up parts. I hope to eventually get the system to the point where all that I have to do is design the PC board layout in the computer, lay out the parts, hit the print button, and in a couple of hours out pops a brand new PC board. To do this I have broken everything down into a number of different steps. For instance, at first I am only going to worry about drilling holes, and then about etching patterns, picking up parts, and so on.

However, there is a second reason I am making this robot. As I have been learning the basics of robotics, I had to either hunt for books to tell me what I wanted to know, or I had to just figure it out for myself. There are a number of very good books on the market. And in the future I am going to put the names of those books up on this page. However, most of them either deal in theory or they are to general. The robot builders bonaza is a good book. But, he spends so much time trying to show you 99 different robots that you never spend any time on the details. How do you couple a motor to a shaft? What is a bearing and how do you use it for the robot? Where do I get these parts, and what do I ask for? How do you hook up a lead screw so that it works right? How do I make PC boards? These are just a few of the simple questions I had when reading through the various books. Yes, they may seem simple to you, but those people who are just starting out in robotics may not know the answers to these questions. And it is frustrating. I would like to gather everything that I have learned while building this robot and wrtie a book that will help the beginers and interest the old hands. It will show a person how to build this robotic arm system from start to finish, explaining everything along the way. It will interest the begginers because it will introduce them to the world of robotics and show them how they do things. It will interest the experienced because it will show them how to build a machine that helps them build PC boards, and thus makes thier life easier. It will also contain a lot of the tricks and tips I have devised to get the job done while saving money. Things like how to make your own gears for almost no money, and so on. After the book is completed I would like to set up a small publishing company and begin selling it. From there I have a number of inventions I would like to make and sell, and several more books I would like to write. So those are my short term goals for my future, and the long term goals I am keeping private for the moment.


Thank you for your interest in me. If you want to contact me then just send me some E-Mail and I would be happy to write back to you.




Send me mail at:david_cofer@geocities.com


This page hosted by Get your own Free Home Page
1