Level 1 Robot

Level 1 Robot |
In this unit, participants will build the robot platform, learn
how to program the Atmel ATmega16 AVR microcontroller to control
motors and read sensors, and explore algorithms for more complex
robot behavior.
The three workshops for the Level 1 material are described below. See the
Workshop Schedule to register.
The kit for this level includes a microprocessor control board,
light sensors, bump sensors, chassis, motors, wheels, and caster. See the
Level 1 Parts List for details.
You can also view the data sheets
for various components.
You can download a
ZIP of the workshop files [5.7M, 6-25-2006].
This includes the
Level 1 Kit Manual [3.2M, 11-3-2005] and
Sample Programs (BASCOM and C) [160k, 6-25-2006].
The best way to view the manual is to right-click (ctrl-click on the Mac) and
choose the "save link as..." option to download the file to your
machine, then open it locally. It may take several minutes to download,
depending on your connection.
Computer Requirements
To program the robot, you will need one of the following connections:
- a DB-25 parallel port -- this will work with the programming cable
included in the kit. (Note that it will most likely
not work to use a USB-to-parallel converter; they do not provide
full parallel port functionality, just what's necessary for printing!)
- a DB-9 serial port and an AVR-ISP programmer --
the AVR-ISP can be purchased from Digi-Key (part number ATAVRISP2-ND)
for $36.
- a USB port with a USB-to-serial converter and
an AVR-ISP programmer -- USB-to-serial converters are available
from a variety of places, including Fry's Electronics;
the AVR-ISP can be purchased from Digi-Key (part number ATAVRISP2-ND)
for $36.
To communicate with the robot, you will need either:
- a DB-9 serial port, or
- a USB port with a USB-to-serial converter.
Recommended Equipment
Participants will need to supply 6 AA batteries. We recommend
rechargeable batteries (NiMH or NiCd). Please also bring as many of the
following items as possible. There will be a small quantity of these
available to use during the workshop.
- Safety glasses
- Soldering iron
- Solder (e.g. 60/40 0.032" dia rosin core solder, Radio Shack 64-005)
- Wire cutter/stripper
- Side cutters (for trimming leads on soldered components)
- Needlenose pliers
- Pliers
- Small screwdrivers (phillips and slotted)
- Small adjustable wrench
- Scissors
- X-acto knife
- Ruler
- Small file for smoothing circuitboard edges
- Multimeter
- Cardboard (scrap is fine)
- Magnifier may be useful
- Extension cord/power strip will be helpful at the workshops
Workshops
Workshop 1.1
In this session, participants will solder components to a printed circuit
board, build cables, download a simple program to blink an LED, and assemble
the chassis with motors, sensors, and controller board.
Topics covered: Identifying electronic components, soldering,
software setup, building programs, downloading from the PC to the robot's
microcontroller.
Workshop 1.2
This session will cover robot programming (parts 1 and 2 in the manual),
including motor control, sensor reading and interpretation, and communication
between the robot and computer (e.g. to send commands or monitor sensors).
Topics covered: Software setup, building programs, downloading from
the PC to the robot's microcontroller, digital input and output, controlling
motors with PWM (pulse width modulation), sending and receiving serial data,
using the analog-to-digital converter, understanding how the bump sensor works.
Workshop 1.3
This session will cover robot programming (parts 3 and 4 in the manual),
including using a Timer/Counter, algorithms for more complex
robot bevavior, and a discussion of state machines.
Topics covered: Reading and writing EEPROM, using a Timer/Counter
for more accurate timing, using a Timer/Counter for PWM, algorithms for
line following techniques, maze junction detection and reaction, using a
state table for dead reckoning, and storing constant data in Flash instead
of SRAM.
|