1
Lecture 1: Your Boe-Bot's Servo Lecture 1: Your Boe-Bot's Servo MotorsMotors
Presentation based on:
"Robotics with the Boe-Bot"By Andy LindsayParallax, Inc
Presentation developed by:Presentation developed by:
Martin A. HebelMartin A. HebelSouthern Illinois University CarbondaleSouthern Illinois University CarbondaleCollege of Applied Sciences and ArtsCollege of Applied Sciences and ArtsElectronic Systems TechnologiesElectronic Systems Technologies7/6/04
2
Continuous Rotation ServoContinuous Rotation ServoUsed 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.
3
Tracking TimeTracking 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
4
5
Repeating ActionsRepeating Actions
A DO….LOOP is used to repeat a sequence of commands.DO
'Commands to performLOOP
6
Servo SignalsServo 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 2S (microsecond)
intervals, 1-65535. Microsecond = 1 millionth of a second.
PULSOUT 12, 1PULSOUT 13, 2
7
8
Servo SignalsServo 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?
9
Connecting the ServosConnecting the Servos
10
11
Centering the ServosCentering 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.
12
13
Storing and Counting ValuesStoring and Counting Values
Variable are used to store valuesVariables much be declared prior to
being used. Declaring a variable is giving it a name, and a size to hold.VariableName var Size
14
DEBUG ? is short hand to display the value of a variable or pin.
15
Counting and Controlling Counting and Controlling RepetitionsRepetitionsFOR…NEXT loops can be used to
control the number of repetitions a segment of code takes.
FOR StartValue TO EndValue {STEP StepValue}…NEXT
16
What will this code do?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 13NEXT
LOOP
17
Testing ServosTesting 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.
18
FOR…NEXT to Control Servo Run FOR…NEXT to Control Servo Run TimeTimeThe FOR…NEXT Loop can be used to
control how long to drive a servo.
19
20
ReviewReview
21