Lec 1 .ppt

advertisement
Lecture 1: Your Boe-Bot's Servo Motors
Presentation based on:
"Robotics with the Boe-Bot"
By Andy Lindsay
Parallax, Inc
Presentation developed by:
Martin A. Hebel
Southern Illinois University Carbondale
College of Applied Sciences and Arts
Electronic Systems Technologies
7/6/04
1
Continuous Rotation Servo
 Used to provide drive motion for the Bot.
 Standard Servo: Used for positioning, such as
with RC airplanes rudder and flaps.
 Continuous Rotation Servo: Rotate in a certain
direction and speed.
2
Tracking Time
PAUSE is used to have the BASIC Stamp
wait a short amount of time.
PAUSE duration
• Duration is in milliseconds (mS) or 1/1000th
of a second, 1-65535
PAUSE 1000
3
4
Repeating Actions
A DO….LOOP is used to repeat a
sequence of commands.
DO
'Commands to perform
LOOP
5
Servo Signals
Servos are controlled with a high pulse
lasting a short time, and repeated.
The PULSOUT instruction can be used
to send a short pulse.
PULSOUT Pin, Duration
• Pin: Pin device is connected to.
• Duration: Time in 2S (microsecond)
intervals, 1-65535. Microsecond = 1
millionth of a second.
PULSOUT 12, 1
PULSOUT 13, 2
6
7
Servo Signals
Typical servos require a pulse of 1mS to
2mS to define the direction/position.
A 20mS pause be between each pulse.
What values of PULSOUT are in the valid
range?
8
Connecting the Servos
9
10
Centering the Servos
The pulse width defines the direction and
speed of the servo motor.
• 1000 – Maximum speed one direction
• 750 – Stopped
• 500 – Maximum speed other direction
Use the servo center programs to ensure
it is stopped at 750.
11
12
Storing and Counting Values
Variable are used to store values
Variables much be declared prior to
being used. Declaring a variable is giving
it a name, and a size to hold.
VariableName var Size
13
DEBUG ? is short hand to display the value of a
variable or pin.
14
Counting and Controlling Repetitions
FOR…NEXT loops can be used to control
the number of repetitions a segment of
code takes.
FOR StartValue TO EndValue {STEP StepValue}
…
NEXT
15
What will this code do?
Freq VAR Word
DO
FOR Freq = 1000 to 5000 Step 100
DEBUG ? Freq
FREQOUT 4, 100, Freq
TOGGLE 12
TOGGLE 13
NEXT
LOOP
16
Testing Servos
To control the servo, send a series of
pulses with values between 500 to 1000
(1-2mS)
Changing the value will change the
direction and speed to some extent.
17
FOR…NEXT to Control Servo Run Time
The FOR…NEXT Loop can be used to
control how long to drive a servo.
18
19
Review
20
21
Download