Robotics Starter
|
I'm not really into robots. Mainly because of a lack of time. I have been keen to build a robot of some sort since first reading about home made robots in the mid 1970s. Over the years I have put together most of the parts that would be required to build a robot for other projects. As I currently use and sell quite a few microprocessors, I am quite often asked how to get started building a robot. The usual questions are:
This is a very general question. You have to break it down and define what you want to achieve then think about how to do it. Break the whole job into smaller segments that can be completed individually. The first thing to do is to: Search the Net.
What is it I guess a robot is currently a mobile platform of some sort. I may include a microprocessor or two (or more) and enough program code to make it act on its own. If not it's probably more like a super-heavy-duty radio controller car, similar to the robot wars machines we see on TV. Design the vehicle You'll need some sort of mechanical design. It may have wheels or legs, or could even fly, float or move about under water. The machine must be large enough to carry the required equipment. As the size increases, the drive and power supply will become larger, heavier and more expensive. Drive and Power system Most robots will be powered by electric motors. Typically permanent magnet motors or stepper motors. Both are available ranging in size from a few watts to many hundreds of watts. Many surplus or second hand parts are available. To be cost effective, easy to use and clean, the power will probably come from sealed lead acid batteries. These batteries can deliver a lot of power; some form of over current protection or fusing is very important. Proper charging is also important to maximize the life of the batteries. A motor controller delivers power to a motor as required by the radio or micro. As the motor size increases, the motor controller becomes larger, a bit more complex and more expensive. The motor controller is connected to a micro or to a radio control system. The H-Bridge is a common form of motor controller. This consists of four electronic power switches connected between the power source and motor so that the speed and direction can be controlled. For motor control you have a choice of build-it-yourself or purchase off-the-shelf. It's a trade between spending more time or more money. Many people have trouble with reliability of larger home made motor controllers. Mechanical design and layout become important as the currents increase. Microcontroller Almost any micro can be used. Generally, the faster it is and the more memory it has, the more it can do. One approach is to use one micro to do everything directly, another approach is to use a number of smaller micros, each handling a function, all connected back to a central controller or master. Typical micros are the HC11, PICs and Atmel chips among others. Often a CPU circuit board will be purchased ready-built or home made that has the micro and close support components. Micros require a good clean power supply and don't take kindly to voltages above about 5V. Often the biggest part will be interfacing the input sensors and output servos and motor controllers to the micro. This will have a big affect on overall reliability. Electrical noise from the motor control can upset radio reception and micros. Servos A servo is a mechanical output device. Typically an arm or disc that provides proportional movement under control of a micro or radio system. Hobby and model shops sell small servos for use in model boats, cars and planes. These are low cost and very useful. They operate from 5 to 6 volts and require a pulse stream control signal. This can come from a radio control system or be generated by an on-board micro. Sensors Sensors come in all shapes and sizes. Mostly you will have to design and build your own. Some examples are: contact detection, infra-red and ultrasonic ranging. Programming A micro on its own recognizes only its own machine language instructions. These are usually compiled at a basic level using an assembler (assembly language). Higher level languages like C and Basic can also be used to create assembly code (compiled). Sometimes an interpreter program is already loaded into the micro with directly interprets high level language instructions on the fly. This method is slower and more limited. If you start with a pre-assembled CPU board it should come with some instructions and some tools making it possible to program and use the board. If you build it yourself you will have to track down the support tools and possibly create some of your own. My Preference I would probably start with a wheeled robot because I think it would be easier to get it up and running. Too small and it won't have enough future potential, too large and it will be too expensive. I would like to build a robot that had a practical purpose. Maybe it wanders the garden at night and kills bad bugs but leaves the good ones alone. I prefer to build my own motor controllers. This way I have total control, and it's more fun. I would use small micros to handle the routine tasks like servo, motor control and sensor input. Then one central micro that issues simplified commands ie. forward-slow. The smaller micros I would use assembly programming for speed and small size (and I like assembly). The central micro might use basic or some other higher level language allowing in-the-field changes to be made without messing everything up.
|
|
|
|
PMB home |
|
last updated: 17 Feb 2001 |