Table of Contents

Microcontrollers and Robotics

Microcontrollers

First microcontroller in the world: Intel 8048

A microcontroller is basically a computer which is placed on a single integrated circuit chip. It consists of memory, a processor, as well as input-output interfaces. Microcontrollers are 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. Features that 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 ovens, TV-sets), toys (Lego NXT, talking dolls), vehicles (cars, hoists), etc. Microcontrollers’ wide usage has been possible because they are easy to program and have a wide range of functionalities; hence, it is very easy to add new features and upgrade the level of intelligence of the appliance they are in.

Robotics

Robotics is a science that combines the technology and knowledge necessary to build robots. Due to the fast development of technology, the term robot, as an automatic machine that replaces humans, is not so clearly defined anymore. A robot is no longer just a humanoid robot, robotic hand at an auto assembly line, autopilot in aircraft, artificial intelligence built of living neurons or simple cleaning robot; it is also computer software that completes tasks meant for humans (for example, compiles 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 systems can make better decisions than humans.

Microcontrollers in Robotics

Because of the breadth of robotics, we define it as hobby robotics; these systems are not too complex, and it is possible to build them by oneself. 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). The necessities for developing HomeLab that are described in this book are based on the AVR ATmega128 microcontroller. A question arises from the large amount of microcontrollers and development boards available: how to find the most appropriate? Generally we can classify the following four properties: - price, physical characteristics, development environment and customer support. Notable physical characteristics are:

Here the development environment is PC software, which allows creating and compiling programs, uploading programs to the microcontrollers and bridging in the programs during running in order to detect possible faults. How easy and comfortable it is to do all that becomes decisive because during the development phase of the program it will be the primary working area. All this leads to the fourth characteristic, which 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.