Programming the RCX

Download Report

Transcript Programming the RCX

ENGR 100 - Robotics Project
What is a Robot?
1.
2.
A ElectroMechanical
system Plus
Artificial
intelligence
Can do certain
tasks that
human like
Robot Arm
Honda Asimo
Robot Fish
Robot Vacuum
Basic Component of Robot
Artificial Intelligence(software)
Learning (Neuron network training)
Motion control(output)
Information analysis(input)
http://www.youtube.com/watch?v=Q3C5sc8b3xM
Physical Part(Hardware)
Leg,
Hand, Head
http://www.youtube.com/watch?v=9vRg64HX5gA
spine
http://www.youtube.com/watch?v=eO9oseiCTdk
Project Objectives
The goals of this project are to:
Basic computer programming.
Experience the design process.
Build a programmable robot.
Tasks
Three different tasks:
Robotic Wheelchair, Car, The defender.
Three different programs:
Program 1 - Robotic Wheelchair (do first!)
Program 2 - Car
Program 3 – Dog/Cat. The defender (be creative!)
Arena Layout
8 ft
1 ft
8 1/3 ft
1ft
4 ft
68”
4 ft
Defender Free Zone
2 ft
This is the competition!
Scoring for performance grading
Pts
Tmin
Score  75%(
)  25%(
)  Ex
Ptsmax
T
10 pts
10 pts
10 pts
10 pts
10 pts
Base Pts – At some point before competition day, each team’s
robot must complete the entire course.
Additional points each round - 20 pts for Wheel chair car, 20 pts
for Car, and 20 pts for Defender.(build by NQC or your own
sensor)
Project flow
Know the project goals/requirements.
Learn RCX programming/Gather ideas for
robot design.
Build a pathfinder.
Test run.
Final competition.
Rules
(see handout for complete listing)
Robotic wheelchairs cannot be touched once
competition has started.
Malfunctioning defenders and cars will be
removed from the course.
Max robot dimensions at start of competition
- 1 ft x 1 ft x 1 ft
Wheelchairs and cars sending messages will
be disqualified. Defenders not limited.
Robot Basics -RCX
Command
Brick
3 output
3input
5 programe
Robot Basics - Sensors & Motors
Input/Output Ports
Touch sensors
Light sensor
Motors
RCX signals
Tips Use view mode to check light sensor. Battery
power affects speed of motors. Batteries run
out fast! Don’t block infrared sensor.
Robot basics – Programming
No matter what language you use, there
are 3 basic control structures for
organizing the programming commands:
Sequential
Repetition (Loops)
Conditional
Sequential
Sequential statements
are defined as a list of
commands that are
executed in order.
For example:
Set Forward
Direction
Go forward for 3 s
Stop
Repetition
Repetition statements
allow for a series of
commands to be repeated
for a set number times.
For example:
Repeat 3 times
Set forward direction
Move forward for 3 s
Stop
End Repeat
Conditional
Conditional statements allow for two (or
more) different sets of commands to be
executed depending on a condition.
For example,
If certain conditions are true - one set of
commands will be execute.
Else if any (or all) are false - another set
of commands will be executed.
Example of Conditional Statements
For example If the light is <50%
Set Direction Forward
Move Forward for 3 s
Stop
Else If light is >= 50%
Stop
End
Exercise
3 types of control structures
Sequential, Repetition, Conditional
Which one above would work best for the
following situations Robotic wheelchair executes a left turn.
Robot wheelchair backs up if it hits the wall.
Car moves back and forth across crosswalk.
Programming Environment
(Robotics Invention System 2.0 )
 Graphical
language
 High level
 Drag in desired
function
 Upload the
program to RCX
by IR signal
IR Com.
RCX
Features of RCX software
Multi-threaded language
Different parts of the program execute at the same time.
Loops in main program interfere with subprogram.
Variables limited to 1 or 0
Use counter as variable.
Not Quite C (NQC) language allows for more variables.
Programming Environment
(Not Quite C )
 C based
program
 Allows more
variable
 Command
list is
provided
 Text coding
What are we going to do today?
1. Build your robot.
 inventory
2. Plan your project.
 Share your work
3. Learn how to build a robot and
communicate with it~
Gear
Transmission device
 Angular velocity is
the same
 the bigger wheel
will run faster
 Smaller wheel will
run slower
 The torque and
power from the
motor is the
constant
 Smaller wheel will
have higher
surface force
Tongue=10
R1=10
R2=1
F1=1
F1*R1=Tongue
F2=?
Gear
 No Slip condition
 The tangential velocity is a
constant
 W*R is a constant
 W=angular velocity
 R=radius
5
W1=10
W6
W5
10
W3=1
5*10=10*W2
5
W4
1*10=5*W4 W4=?
W4=W5?
W5*10=W6*5 W6=?
10