Arexx AAR User guide

AREXX ARDUINO ROBOT
AAR
MANUAL: AAR-04
© AREXX - The Netherlands V062012
- 1 -
Contents
1. PRODUCT DESCRIPTION AAR
1.1 The ARDUINO Robotics Family 3
1.2 Specifications 3
2. ARDUINO General Description 5
3. AREXX ARDUINO ROBOT 10
3.1. Blockdiagram 10
3.2. AAR hardware 11
3.2. ARDUINO Software 12
4. The AREXX ARDUINO ROBOT (AAR) 13
4.1. Download and installation of the software 13
4.2. The Arduino language 13
4.3. Installation of a USB-driver 13
4.4. AAR Hardware 14
4.4.1. Installing the battery-compartment 14
4.5. ARDUINO Software 15
4.5.1. Programming with Arduino Programs. 15
4.5.2. Selecting an Arduino Program 15
4.5.3. Selecting the correct COM-port 16
4.5.4. Program transfers to the Arduino Robot 17
6. Background-information to the H-Bridge circuits 18
7. Odometry 21
8. Programming a Boot-loader 24
9. APPENDIX 25
9.1 Parts List 26
9.2 Main Board - Top View 28
9.3 Main Board - Bottom View 29
9.4 Schematics AAR 30
NOTICE! AAR is a trademarks of AREXX, The Netherlands and JAMA, Taiwan.
All rights reserved.
Reprinting any of this instruction manual without our permission is prohibited. The specifications, form, and contents of this product are subject to change without prior
Technical help:
WWW.AREXX.COM
Manufacturer: AREXX Engineering JAMA Oriental
European Importer: AREXX Engineering ZWOLLE Holland
© AREXX Holland and JAMA Taiwan © English translation: AREXX - The Netherlands
WWW.ROBOTERNETZ.DE
- 2 -
1. PRODUCT DESCRIPTION AAR
1.1. The ARDUINO Robotics Family
Arduino is an open source-Platform for developing of electronic prototypes, which provides us with a microcontroller including all peripheral interfaces and the required software.
The Arduino-concept has been designed to learn modern electronics for robotics, software control and sensors in the simplest possible way.
As a successor for the ASURO-robot, which has been programmed in C-language we now designed the AREXX Arduino robot. The new robot resembles its predecessor ASURO, but in combination with an „open source“- programming language Arduino programming the system will be much easier.
1.2. Specications:
Motors 2 DC-motors (3 Volt) Processor-type ATmega328P Programming language ARDUINO Supply voltage 4 x AAA-type batteries 4,8 - 6 Volts Supply current Min. 10 mA Max. 600 mA Communication USB-plug Extensions ASURO-extensions are compatible Height 40 mm Width 120 mm Depth 180 mm
- 3 -
1.3. Precautions
1. Attention! You must read this manual before supplying power to any of the terminals! Incorrect connections may damage the hardware.
2. Attention! Please check the pin function diagram carefullyBe careful in wiring the circuitry. Incorrect connections may damage the modules. Respect the correct power supply’s polarity. A reversed power supply may damage the hardware.
3. Attention! Don’t use power supply with voltages beyond the
rated voltages! Use stabilized and ltered power supplies to avoid
voltage and spikes.
4. Attention! The board does not provide any waterproof or wet proof protection. Please use and save the system in dry environment.
5. Attention! Avoid short circuits at any metallic surface and do not stress the printed circuit board or the plugs by excessive forces or weights.
6. Attention! Be careful to avoid ESD (see prevention measures, precautions and descriptions at
Wikipedia’s Electro-Statical Discharges).
1.4. General Precautions
* When you open the parts the return right will be disposed * Read before you start assembly the instruction manual * Be careful with tools * Keep this product out of reach of children and do not build this kit when children are in the neighbourhood, the tools and parts are dangerous for children * Check the polarity of the batteries * Keep the batteries dry, when the ASURO gets wet remove the batteries and let the AAR dry for some time * Remove the batteries when you are not using the robot for a longer period
- 4 -
2. ARDUINO General Description
2.1. Who or what is ARDUINO?
Arduino is an open source- single board microcontroller, which pro­vides an easy access to programming, microcontrollers and project­platforms for interactive objects for artists, designer, hobbyists and others.
The Arduino-platform has been based on an Atmel’s ATmega168 or ATmega328 microcontroller. The system provides users with digital I/O-ports and analog input channels, which allow the Arduino-sy­stem to receive and respond to signals from the environment.
The market supplies us with several Arduino-boards such as Arduino Uno, Arduino LilyPad and Arduino Mega 2560. Each Arduino-board
has been designed for specied purposes and users obviously may
choose an ideal Arduino-assembly for almost any project.
For example input signals may be delivered by switches, light sen­sors, speed and acceleration sensors, proximity sensors and tem­perature sensors. Additionally commands will be allowed from any web-sources. Output-signals will be used to control motors, pumps and screen displays.
The system has been equipped with a compiler for a standardized programming language and a boot-loader. The programming lan­guage has been based on Wiring- language, which corresponds to C++.
Originally the Arduino project started 2005 in Ivrea, Italy. The con­cept aimed to support students in projects, in which the prototyping
should be cheaper and more efcient as in most standard methods.
The developer group under Massimo Banzi and David Cuartielles decided to name the project after a historical character named ‘Arduin of Ivrea’. “Arduino” is the Italian version of the name, meaning “strong friend”.
The English version of the name is “Hardwin”.
- 5 -
2.2 Microcontrollers!
2.2.1. Applications
A microcontroller (sometimes abbreviated µC, uC or MCU) is a small computer on a single integrated circuit containing a processor core, memory, and programmable input/output peripherals. Program memory and a small amount of data memory (RAM) is also often included on chip.
Microcontrollers are used in automatically controlled products and devices, such as automobile engine control systems, implanta-
ble medical devices, remote controls, ofce machines, appliances,
power tools, and toys. By reducing the size and cost compared to a design that uses a separate microprocessor, memory, and input/out­put devices, microcontrollers make it economical to digitally control even more devices and processes.
A typical home in a developed country is likely to have four general­purpose microprocessors and three dozen microcontrollers. A typical mid-range automobile has as many as 30 or more microcontrollers. They can also be found in many electrical device such as washing machines, microwave ovens, and telephones.
- 6 -
2.3. Power Consumption and Speed
Some microcontrollers may operate at clock rate frequencies as low as 4 kHz, for low power consumption (milliwatts or micro­watts). They will generally have the ability to retain functionality while waiting for an event such as a button press or other interrupt; power consumption while sleeping (CPU clock and most peripherals off) may be just nanowatts, making many of them well suited for long lasting battery applications. Other microcontrollers may serve performance-critical roles, where they may need to act more like a digital signal processor (DSP), with higher clock speeds and power consumption. The Arduino system applies a powerful Atmel ATmega328P single­chip, providing an 8-bit microcontroller at 16 MHz with 32K bytes
In-system programmable ash. The power supply voltage has been
designed quite versatile in the range DC7-12V, providing stabilized and protected operating conditions for the chip and isolated power lines up to 2A for motor circuitry.
2.4 Microcontroller Programs
Microcontroller programs must t in the available on-chip program
memory, since it would be costly to provide a system with exter­nal, expandable, memory. Compilers and assemblers are used to convert high-level language and assembler language codes into a compact machine code for storage in the microcontroller’s memory. Depending on the device, the program memory may be permanent, read-only memory that can only be programmed at the factory, or
program memory may be eld-alterable ash or erasable read-only
memory.
- 7 -
Microcontrollers were originally programmed only in assembly language, but various high-level programming languages are now also in common use to target microcontrollers. These languages are either designed specially for the purpose, or versions of general purpose languages such as the C programming language. Microcon­troller vendors often make tools freely available to make it easier to adopt their hardware.
The Arduino system provides us with approximately 32K bytes of
ash-memory for sketches programs, which may be programmed in
C programming language.
2.5. Interface Architecture
Microcontrollers usually contain from several to dozens of general purpose input/output pins (GPIO). GPIO pins are software con­gurable to either an input or an output state. When GPIO pins are
congured to an input state, they are often used to read sensors or external signals. Congured to the output state, GPIO pins can drive
external devices such as LEDs or motors.
Many embedded systems need to read sensors that produce analog signals. This is the purpose of the analog-to-digital converter (ADC). Since processors are built to interpret and process digital data, i.e. 1s and 0s, they are not able to do anything with the analog signals that may be sent to it by a device. So the analog to digital converter is used to convert the incoming data into a form that the proces­sor can recognize. A less common feature on some microcontrollers is a digital-to-analog converter (DAC) that allows the processor to
output analog signals or voltage levels.
- 8 -
In addition to the converters, many embedded microprocessors in­clude a variety of timers as well. One of the most common types of timers is the Programmable Interval Timer (PIT). A PIT just counts down from some value to zero. Once it reaches zero, it sends an in-
terrupt to the processor indicating that it has nished counting. This
is useful for devices such as thermostats, which periodically test the temperature around them to see if they need to turn the air condi­tioner on, the heater on, etc.
Universal Asynchronous Receiver/Transmitter (UART) block makes it possible to receive and transmit data over a serial line with very little load on the CPU. Dedicated on-chip hardware also often inclu­des capabilities to communicate with other devices (chips) in digital formats such as I2C and Serial Peripheral Interface (SPI).
The Arduino system provides us with 14 digital I/O-lines, 7 analog I/O-lines.
- 9 -
Loading...
+ 21 hidden pages