Radio Shack Mobile Robot User Manual




Mobile Robot
For Hobbyist, Research and
Education
Assembly and User Guide
Copyright (c) 2005 Arrick Robotics
All Rights Reserved
Robotics.com
ARobot Mobile Robot
Table of Contents
Introduction
Introduction....................................................1
About ARobot................................................1
What You’ll Need ..........................................2
Feature List ....................................................2
Specifications.................................................3
Precautions.....................................................4
Component Locator .......................................5
Glossary of Terms..........................................6
Assembly
Assembly Overview.......................................9
Parts................................................................10
Painting ..........................................................13
Whiskers ........................................................14
Drive Motor and Brackets..............................16
Encoder Sensor ..............................................17
Front Wheel Assembly ..................................18
Steering Motor and Rear Wheels...................19
Controller Board ............................................21
Battery Pack ...................................................22
Body Cable.....................................................23
Finishing Up...................................................24
Usage
About the Controller ......................................25
Basic Stamp II Installation.............................25
Cable to your PC............................................26
PC Editor/Downloader...................................26
The Test Program...........................................27
Steering Straightening Steering .....................27
Wander Program ............................................27
Controller Schematic .....................................28
Batteries .........................................................29
Power On/Off Switch.....................................29
Reset Button...................................................29
Whiskers ........................................................30
Speaker...........................................................30
LED Indicators...............................................30
Push Buttons and Jumpers .............................31
Drive Motor and Encoder ..............................31
Steering Motor ...............................................32
Coprocessor Command Summary .................33
Hexadecimal, Binary, Bytes, Words..............35
Revision D
11/17/2005
Table of Contents Continued
Connectors
Battery Connector ..........................................36
Body Connector .............................................36
Serial Port Connector.....................................36
RC Servo Motor Connectors..........................37
DC Motor Connector .....................................37
Powerful Output Connector ...........................37
Expansion
Expansion Connector .....................................38
User RC Servo Motors...................................38
Expansion Circuit Examples..........................39
Coprocessor Network Expansion...................42
Using Other Controllers.................................43
Additional Information
Suggested Reading.........................................44
Component/Accessory Suppliers ...................45
Internet Robot Resources...............................47
Troubleshooting .............................................49
Warranty Information ....................................50
ARobot Project Database – www.robotics.com/arobot/projects.html
ARobot FAQ – www.robotics.com/arobot/faq.html
Introduction
Congratulations for purchasing the ARobot mobile robot. This manual should answer all of your questions. We suggest that you read and understand all of it before using your new robot. If you have any questions, please view our web site at www.robotics.com/arobot
The software provided is designed for use with IBM-style personal computers. This manual assumes the user has full understanding of how to use their computer and operating system. Refer to the documentation for the computer for additional information.
ARobot is designed for the beginning robot hobbyist, but if it looks beyond your skill level, please return the unit before going any further.
Parents: If you’re buying ARobot for a young person, be prepared to help them.
About ARobot
The ARobot (pronounced "A robot") is a computer controlled mobile robot designed for hobbyists and educators. Ages 16 and up (younger if helped by an adult) can enjoy unlimited experimentation by programming the on-board Basic Stamp II control computer. Learn and use concepts such as computer programming, motion control, sensor reading, path planning, object avoidance, and more. Easily assembled in a few hours using common hand tools (no soldering required). Connect ARobot to your personal computer for programming and begin your adventure.
Basic Stamp II Control Computer
The Basic Stamp II is a small, self-contained computer controller manufactured by Parallax Inc. This easy-to-use system is programmed using a Basic-like language called PBasic. Programs are written on an IBM-style PC then downloaded to the Basic Stamp II for execution. Large libraries of programs can be created and saved. ARobot's controller board accepts the Basic Stamp II (purchased separately) which controls motors, LEDs, buzzer, and other devices. The Parallax Web site at www.parallaxinc.com provides complete information about the Basic Stamp II including the programming manual.
ARobot is a versatile system that can perform a variety of tasks. Here are just a few examples:
Hobby robotics projects. Education and training. Research in artificial intelligence, A-life, etc. Science projects. Testing platform for navigation algorithms. Simulation of planetary exploration. Maze solving. Contests. Publicity. Fun, Fun, Fun!
1
What You’ll Need
To build and program ARobot you will need the following items:
 Common hand tools – screwdriver, pliers, etc.  Your choice of spray paint (optional).  Basic Stamp II computer chip.  Basic Stamp II programming information – available free on the Internet or you can purchase a book.  Understanding of Basic programming or a willingness to learn.  IBM style PC running DOS or Windows, 3-1/2“ disk drive, unused serial port (9 pin connector).  Internet access for technical support and application notes.  8 AA batteries. (over 5 hours of continuous run time).  A never-ending desire to experiment and play with robots!
Note: Expansion may require knowledge of electronics, soldering and other advanced skills.
Feature List
The following list of features will help you get aquatinted with ARobot.
 Safe, low voltage system.  Dimensions: 10" x 10", 5" tall, 2-1/4 lbs. Whiskers extend beyond these dimensions.  High quality machined aluminum frame (no plastic or wood).  Dual front whisker sensors.  Maximum speed: 10" per second.  Surfaces: Low pile carpet, tile, concrete, moderate bumps and inclines.  1 pound payload capacity for radio data link, embedded PC, accessories.  Removable battery pack uses 8 standard AA-cells or rechargeables.  5 hour or longer typical run time.  Socket accepts the popular Basic Stamp II controller.  Controllable Red and Green LEDs.  Sound output transducer.  Two user defined push button switches.  Two user defined jumper switches.  Rear wheel steering RC servo motor.  Front wheel DC gear drive motor.  Optical wheel encoder for distance measurement.  Second H-bridge for motor or power device control.  3 User defined RC servo motor control ports.  Serial communications port.  Program using a desktop PC then download for autonomous operation.  Expansion port allows unlimited possibilities.  Mounting holes for Radio Shack Breadboard or perfboard.  Coprocessor network allows multiple processors to communicate and distribute tasks.  Application notes for sonar range finding, head light, light sensors, compass, and more.
2
Technical Specifications
Body: .062 aluminum - cut, punched, and formed. Configuration: 3-wheel, front wheel drive, rear wheel steer. Dimensions: 10" x 10", 5" tall, 2-1/4 lbs. Payload capacity: 1 lbs. Wheel size: 3.25" diameter. Drive Motor: 12 volt DC gear motor, 74 full load RPM, 1.6 amp full load current. Quality machined wheel coupling and bearings. Optical wheel encoder for distance measurement Encoder: 20 counts per revolution - 2 per inch of travel (1/2” resolution). Motor driver: H bridge - 1 amp max. Speed control: Pulse Width Modulation. Controller PCB size: 2.1" x 6" Steering Motor: Standard size RC servo motor. Power source: 8-AA cells in removable pack. Runs on 8 AA-cell batteries for 5 hours or more. Current draw: 50ma at standstill, 200ma with motor running typical. Coprocessor: PIC16F84 for motor control. Expansion connector - 40 pin (2x20) IDC .1 centers.
3
Precautions
The following precautions must be taken to insure trouble free operation of ARobot. The order that these precautions are listed does not indicate their importance. Failure to observe these precautions may result in loss of life, damage of property and/or damage to the Robot.
Never attach or remove cables while power is applied to the Robot.
Never use the robot in areas near water such as swimming pools.
Never allow the whisker wires to be inserted into electrical outlets or other dangerous places.
Never use the robot in areas that could result in a fall such as lofts, stairways, hills.
Never allow cables to fall out or to be broken by the robot's motion.
Never control devices with the robot that could be dangerous to life or property such as lawn mowers or high power lasers.
Never connect the robot's controller to inappropriate equipment.
Never use the robot in situations where a programming error or other malfunctions could cause damage to property or life.
Never exceed the specifications such as payload, incline, current drain, etc.
Failure to observe these precautions may result in loss of life, damage to property and/or damage to the robot.
4
Component Locator
Use the following diagrams to familiarize yourself with ARobot's various components.
Encoder
Wheel
Front
Steering
Motor
Drive
Motor
Controller
Battery
Pack
Whiskers
Steering
Arm
Right Side
Steering
Linkage
Expansion Connector
Basic Stamp
Green LED
Red LED
Coprocessor
Reset Jumpers Buttons
Proto Area
Controller
Body
Connector
Serial Port Speaker
RC Servo
Motors
Drive motor
Connector
H-bridge
Powerful
Output
Battery
Connector
Power
Switch
5V Voltage
Regulator
5
Glossary of Terms
Analog Signals – Signals that have values between on and off (1 and 0). Android – A robot that has a human-like form. Artificial Intelligence (AI) – A computer program that simulates intelligence like that found in
biological systems. Artificial Life – Behavior that is simulated by a computer program or other machine that mimics some or all aspects of biological life. Baud Rate – The number of bits per second. In a serial signal from a typical personal computer, the baud rate is the number of bytes per second times 10. Each byte consists of 8 data bits, 1 start bit, and 1 stop bit.
BASIC – A high-level programming language. Binary – A numbering system using 2 numbers – 1 and 0. Bit – Abbreviation for binary digit. Each bit can have a value of 1 or 0. Byte – A group of 8 bits. C – A high-level programming language. Cellular Automata – A system constructed with an array of cells where each cell can act according to
preset instructions and can respond to nearby cells. Once started the system proceeds without further instructions. Central Processing Unit (CPU) - The central component of a computer that executes instructions written by a programmer and controls I/O devices and memory.
Chaos – Disorder displayed by some complex systems. Closed Loop – In motor control, the use of a feedback device such as an encoder to adjust the motor
driver to achieve the desired position, speed, or acceleration. ARobot’s drive motors are closed loop. Compiler – A program that converts a high-level program into a low-level program that can be executed directly by a CPU.
Digital Signals – Signals that can have a value of on or off (1 or 0). Encoder – A feedback device used by a motor to sense position and speed. Normally a wheel with
holes or slots that are detected with an optical sensor. EEPROM – Electrically Erasable Programmable Read Only Memory. A type of memory IC that can be written and read, and will retain data even after power is turned off. Used by the Basic Stamp to store programs and parameters. EPROM – Erasable Programmable Read Only Memory. A type of memory that can be read only, and retains its data after power is turned off.
Emergent Behavior – Unexpected behavior in a robot that was not explicitly programmed. Expert System – An intelligent system based on a database of rules. Feedback – A signal produced by a sensor such as an encoder that is used to adjust motor position and/
or speed. Finite State Machine (FSM) – A machine or program that has a limited number of states, can examine its own state, can change its own state according to a set of rules, and can receive input from external sources. Firmware – Programs that are stored on EPROM such as the Basic Stamps PBasic interpreter.
6
Glossary of Terms
Fractals – A geometric pattern in which an object looks the same regardless of the viewing scale. Fractal concepts can be used in AI programming. Fuzzy Logic – Logic in which boundaries between sets are not crisp. This concept is often used to control systems that would be too complex to model with traditional sequential programs. Genetic Algorithm – A set of instructions that mimic biological life by simulating genes, mutation, and other aspects of living systems.
Gripper – A device that allows a robot to grasp objects. Hardware – Physical circuitry including circuit boards, ICs (integrated circuits), transistors, etc. H-Bridge – An arrangement of 4 transistors in the shape of the letter ‘H’ used to control the direction of
a DC motor. ARobot uses a single IC that contains 2 H-bridges to control the drive motor and powerful output.. Hexadecimal – Base 16 numbering system. Each digit is written as 0-9,A-F. Hexadecimal makes it easier to enter data and address values. Example of a hex byte is 4A, example of a hex word is A04F. High-Level Language – A computer programming language that allows the user to create complex programs using instructions that represent many simpler instructions. PBasic used by the Basic Stamp II is a high level language. Infrared (IR) - Electromagnetic radiation generated by thermal agitation. IR is invisible to the human eye. IR is used by most TV and Stereo remote controls. Also see Passive Infrared Integrated Circuit (IC) - A device where many electrical components are built together as a single component. ARobot uses integrated circuits on it’s circuit boards to perform most functions. Interpreter – A computer language that converts instructions while the program is running. Unlike a compiler that first converts the program to machine code. Interpreters are normally slower than compilers.
Joystick – A control device that employs a stick to achieve 2 axis control. Laws of Robotics - Three laws written by Isaac Asimov which prevent robots from intentionally
harming humans and set other task priorities.
A robot may not injure a human being or, through inaction, allow a human being to come to harm
A robot must obey the orders given it by human beings except where such an order would conflict with the First Law.
A robot must protect its own existence as long as such protection does not not conflict with the First or Second Law.
Light Emitting Diodes (LED) - Semiconductor that gives off light. Liquid Crystal Display (LCD) - A type of display that can be controlled electrically and uses minimal
power. Many calculators use LCD type displays. Loops – In a computer program, the re-execution of instructions using control flow statements such as GOTO and WHILE. Low-Level Language – The set of instructions used directly by a CPU to perform operations. Often referred to as assembly language.
continued
7
Glossary of Terms
Mechatronics – A combination of mechanical and electrical devices to create a system. Natural Language – Language used by humans to communication. Neural Network – A network of processing elements that are connected together to simulate the intelli-
gence created by biological brains. Often used to perform pattern recognition.
Open Loop – in motor control, the lack of a feedback device. Parallel Data – Data that is transmitted multiple bits at a time using multiple wires. Parameters – Values used to control functions. Passive Infrared (PIR) sensor - A type of sensing device that converts infrared energy into electrical
signals. Motion detectors for alarm systems often use PIR sensors to detect moving living objects. PC/104 – Embedded computer system standard which has connectors with 104 pins. PC/104 modules are similar to cards found in desktop personal computers except that they stack together instead of plug­ging into a mother board. Complete computer systems can be created using PC/104 products. Printed Circuit Board (PCB) - A non-conductive board that is laminated with layers of copper to pro­vide electrical connections between components. ARobot’s controller is a PCB. Pulse Width Modulation (PWM) - In motor control, the use of electrical pulses of various widths to control the motor’s position and speed. In speech and sound creation, the use of various pulse widths to generate an analog signal by using a low-pass filter.
RAM – Random Access Memory. Read/write memory. Remote Control – Control of a system at a distance. Resolution – In a motor control system, the smallest motion that a motor can make. Robot – Any device that operates automatically performing tasks like a human. Rule-based System – See Expert Systems. Sensor – A device that converts light, temperature, and other phenomena to electrical signals. Also re-
ferred to as transducer. The ARobot uses many different sensors to detect the environment.
Serial Data – Data that is transmitted a signal bit at a time over one wire. Servo Motors RC, DC – DC (direct current) servo motors use encoder feedback to monitor speed and
position such as ARobot’s drive motor. RC (remote control) servo motors are small servo systems that include motor, gear train, feedback device, and controller in a small package intended for remote control airplanes and cars. RC servos are used by ARobot to control the steering.
Software – Instructions used to direct operations on a CPU. Sonar – See Ultrasonic. Speech Synthesizer – An electronic device that generates human speech and sounds. Subsumption Architecture – A programming method designed by Rodney Brooks of MIT that allows
various functions to subsume other functions based on a predefined priority scheme. Telepresence – Control of a robotic system at a different location. The operator may be provided feed­back using various sensors. Transistor – A silicon-based semiconductor device that can be used as an electrical switch or as an am­plifier. Ultrasonic – Sound waves with a frequency greater then humans can detect. Polaroid offers an ultra­sonic ranging system that can be used to avoid obstacles. Whiskers – Hair-like, flexible wires used to detect walls and other objects. ARobot has 2 such whiskers to aid in navigation.
continued
8
Assembly Overview
ARobot’s assembly normally takes about 2 hours or less excluding time for painting. Children as young as 10 can build ARobot with the help of an adult. The controller board and cables are pre-built, so sol­dering is not required.
During assembly you will do these things:
Sand and paint the metal robot body pieces (this is optional). Mounting whiskers, drive motor, steering motor, wheels, etc. Route cables. Install the Basic Stamp II onto the controller board.
You’ll learn:
Identification and names of all parts. Screw, nut, and washer sizes. Basic electronic terminology. Basic mechanical assembly techniques. Basic wiring skills.
Tools you’ll need:
Medium Phillips screwdriver Needle nose pliers Sand paper (200-600 grit), or file Wire cutters
9
Parts
ARobot is easy to put together. Make sure you have all of the parts listed below before beginning. If something doesn’t look right, send us some email at info@robotics.com
Quantity Description Used For
1) Robot Body Sheetmetal Body
2) Motor Brackets Mounting front drive wheel assembly
1) Encoder wheel Encoder assembly
7) Screw, 4-40 x 3/16” Whisker spacers, drive motor
12) Screw, 4-40 x 3/8” Motor brackets, encoder sensor, steering motor
16) Screw, 6-32 x 1/4” Collars, whisker brackets, steering arms, controller spacers
12) Nut, 4-40 Motor brackets, encoder sensor, steering motor
5) Nut, 10-32 Front axle, encoder wheel
13) Washer, #4 star (teeth) Motor brackets, encoder sensor, steering motor
2) Washer, #6 plastic Under whisker brackets
2) Washer, #6 shoulder Whisker bracket mounting
4) Washer, #10 star (teeth) Encoder wheel, front axle
2) Spacer, 4-40 x 1/4” Whisker mounting
4) Spacer, 1” plastic Controller circuit board mounting
1) RC Servo Motor Rear wheel steering motor with horns (attachments).
1) DC Gear Motor Front wheel drive motor
4) Plastic wire tie Bundling wires
1) Body Cable Connects controller to whiskers and encoder sensor
1) Encoder sensor To sense encoder wheel slots, mounts to motor bracket
1) Shaft coupling Attach front wheel axle to drive motor
8) Collar Rear wheel assemblies
2) Rear axle Rear wheels
1) Front axle Front wheel assembly – Don’t damage threads!
1) Bronze bearing Front axle
2) Steering arm Connects steering linkage wire to rear wheel axle
2) Steering arm linkage wire Links steering servo motor to steering arm
2) Whisker wires, 8-3/4” Whiskers
3) Wheel, 3-1/4” diameter Front and rear wheels
1) 3” Velcro Battery pack mounting
1) Battery holder for 8-AA cells Power source
1) Battery cable Connects battery pack to controller
About Screw, nut, and washer sizes
Numeric screw sizes start with a number indicating the diameter such as #4, #6, #10, etc (lower numbers are smaller) followed by the number of threads per inch (32, 40 etc), then the length. For example: 4- 40 x 3/16 is a #4 screw with 40 threads per inch and a length of 3/16”. Nut sizes are the same except they do not have a length. Spacers are like nuts but have a length. Washers simply have the # size and no threads per inch or length. Star washers have small teeth to prevent slipping.
10
Parts
Here are drawings of SOME of the parts in the ARobot package. Drawings are not to scale. As you build ARobot, refer back to these drawings to identify parts.
continued
Screw, 4-40 x 3/16
Screw, 4-40 x 3/8
Nut, 10-32 Nut, 4-40
Washer, #4 star Washer, #10 star
Washer, #6 plastic Washer, #6 shoulder
Spacer, 4-40 x 1/4
Spacer, 1” plastic
Screw, 6-32 x 1/4
Encoder Wheel Encoder Sensor
Collar
Front Axle
Rear Axle
Steering Arm
Bronze Bearing
Robot Body
Coupling
Body Cable
Steering Motor
Horn
Drive Motor
Motor Brackets
MTA Connector
11
Parts
continued
Drive Motor
Body Cable
Battery Cable
Encoder
Wheel
Body
Motor Brackets
RC Servo
Steering
Motor
Controller
Battery Holder
Wire Ties
Whisker
Wires
Steering
Linkages
Bronze
Bearing
Rear Axles
Steering
Arms
Encoder Sensors
Controller
Spacers
4-40 x 3/8 4-40 x 3/16
Front Axle
Whisker
Shoulder
Washers
Whisker Spacers
Whisker
Washers
Collars
#4 Star Washers
Plastic
Velcro
4-40 nuts
10-32 nuts
12
6-32 x 1/4
Painting
ARobot's paint job is your first chance to be creative and have a little fun. Who wants every robot to look alike anyway? Five parts are candidates for painting: The robot base, 2 motor brackets, encoder wheel, and the motor coupling. Or if you prefer, simply leave these parts unpainted.
Here's the process:
Sanding Paint primer Finish coat Accents
Sanding
Sand the metal, especially the edges, with fine sand paper (200-600 grit). This process could also be done with a file. When done, clean the surface well using soapy water. Dry thoroughly before continu­ing.
Paint Primer
Paint primer is a special kind of fast-drying paint that helps paint stick to a surface. Primer is normally gray or red and comes in a normal spray can. You’ll need less than one can. Read and follow the in­structions on the paint can. Make sure the surface is clean and dry before priming.
Finish Coat
Apply the finish coat according to the directions on the paint can. You may want to check out some of the non-conventional paints that add texture to a surface. Normally you should let the finish coat dry overnight before continuing.
Accents
Be creative, consider using special accents to make your robot stand out.
Masking to create special shapes such as flames or zebra stripes. Colored electrical tape from Radio Shack - Catalog #64-2340. Colored adhesive dots from an office supply store. Flexible, plastic molding from an auto parts store. Stick-on reflectors from a motor cycle shop. Textured paint for special effects. Text using stick-on letters or a permanent marker. Use large washers on the rear wheel axles as hub caps. Oh I almost forgot, try using your imagination!.
See some great examples of creative paint jobs on our web site at www.robotics.com/arobot
It may be necessary to clean out holes on the robot that have a build-up of paint. Simply use a pocket knife or Exact-o knife to clean them out. This is especially important on the whisker wire mounting holes since they must make electrical contact to the base for grounding. We’ll deal with this later.
13
Whiskers
Two whisker wires are mounted on the front of the robot to detect obstacles. Locate the 4 whisker mounting holes near the front center of the robot body. Scratch off paint around the two smaller holes. Next, bend each whisker wire using the drawing as a full scale pattern. Locate the body cable and find the ground lug. Mount the 2 whisker spacers like the drawing and place the ground wire from the body cable under one of the whisker spacers and a #4 star washer under the other. Next, mount the whisker brackets which are wired to the body cable. The bracket connected to the white wire is the robot’s right side, the black wire is the left side. Pay special attention to the plastic insulating washers. The brackets MUST NOT make electrical connection to the body. Slide the whisker wires through the bracket hole. Mount the whisker to the spacer with a 4-40 x 3/16 screw through the whisker's loop. When done, bend each whisker so it rests in the center of the bracket hole without touching. Place a piece of tape on the end of each whisker.
Summary:
Locate the 4 mounting holes (2 per whisker) 2 small, 2 large. Scratch off any paint around the two small spacer holes. Bend whisker wires using the drawing as a full scale pattern. Mount the spacers and brackets according to the drawing. The whisker wires should rest inside the bracket hole without touching. Place a small piece of tape over the ends of prevent poking people.
How it Works:
The robot’s body is connected to the battery minus wire (ground) which connects to the spacers and the whisker wires. When the whisker wire is bumped, it touches the metal bracket. These metal brackets are wired to the controller through the body cable. In a program, the robot can read the whisker status.
Whisker Placement
14
Loading...
+ 37 hidden pages