This is an old revision of the document!


Microcontrollers and Robotics

Microcontrollers

The 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:

  • All functions are placed on a single chip in a smaller and more compact scale.
  • It is programmed to perform certain task; in order to change its functionality new software must be installed.
  • It consumes less power because all physical characteristics are smaller and less energy demanding than in a PC, laptop or server. Developers of microcontrollers concentrate on low energy demand so that mobile applications that use batteries can work longer.
  • Single purpose inputs and outputs. Microcontrollers have so called peripherals, which establish connection between microcontroller and other microcontrollers or computers (e.g. USB, CAN, UART), helping to understand the processes in the real physical world (e.g. switching actions, temperature measuring, etc. ) and helping to control surroundings (e.g. control motor, trigger alert etc.)

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

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.

Microcontrollers in robotics

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:

  • Atmel AVR microcontrollers (ATmega, ATtiny, etc.)
  • Microchip Technology PIC microcontrollers (PIC16, PIC24, etc.)
  • Microcontrollers based on ARM technology.

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:

  • processor operating frequency - determines chip operating speed
  • program memory capacity – determines the size of the program that can be installed on the chip
  • data memory capacity – how much data can be processed in the program
  • number of input/output pins and their function – different pins have different possibilities
  • number of timers – important for pursue time criteria
  • energy consumption – important for mobile applications

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.

en/microcontrollers.1285310563.txt.gz · Last modified: 2020/07/20 09:00 (external edit)
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0