This is an old revision of the document!
Microcontroller is basically a computer which is placed on a single integrated circuit chip. It consists of memory, processor, as well as input-output interfaces. Microcontroller is programmed to run a certain task, which means, if there is a need to change or enhance its functionality, one must install a new program on the chip. Aspects which differentiate microcontrollers from other computers (PC, laptop, server, etc.) are:
Microcontrollers can be found in a variety of everyday items: household appliances (e.g. microwave oven, TV-set), toys (Lego NXT, talking dolls), vehicles (cars, hoists), etc. Microcontrollers’ wide usage has been possible because they are easy to program and have wide range of functionality, hence is very easy to add new features and upgrade the level of intelligence of the appliance they are in.
Robotics is science which combines technology and knowledge necessary to build robots. Due to fast development of technology the term robot, as an automatic machine that replaces human, is not so clear anymore. Robot is not anymore just humanoid robot, robotic hand at automotive industry’s assembly line, autopilot in aircraft, artificial intelligence built of living neurons or simple cleaning robot, it is also computer software witch completes tasks meant for humans(for example complies reports). It is known that robots are built to replace humans at certain tasks. There are many reasons for this: dangerous working conditions, cheaper production, monotonous work may cause humans to err, new systems are so complex and time critical, that automatic system makes better decisions than human.
Because of the wideness of the robotics, we determinate it as hobby robotics, the systems are not too complex and it is possible to build them alone. Common microcontrollers in hobby robotics are:
Quite often third parties have created development boards and environments based on microcontrollers mentioned herein before. For example: Arduino (AVR), BASIC Stamp (PIC) and Lego NXT (ARM). Necessaries for developing HomeLab witch are described in this book hereinafter are based on AVR ATmega128 microcontroller. Question arises from the large amount of microcontrollers and development boards available: how to find the most appropriate? Generally we can classify following four properties: - price, physical characteristics, development environment and customer support. Notable physical characteristics are:
Here development environment is PC software, witch allows creating and compiling programs, uploading programs to the microcontrollers and bridging in the programs during work in order to detect possible faults. How easy and comfortable it is to do all that becomes decisive, because during development period of the program it will be the primary working area. All this leads to the fourth characteristic, witch is customer support. It is important that receiving help and support for solving possible issues is made as easy as possible. By considering all four mentioned properties, it should be possible to find the development board needed.