ME 224-Final Project Jim Lovsin Erica Morales Dan Sheehan Josh Widzer Overview Introduction Robot Activities Gyroscope Activities Path Programming Results Future Work Conclusion.
Download
Report
Transcript ME 224-Final Project Jim Lovsin Erica Morales Dan Sheehan Josh Widzer Overview Introduction Robot Activities Gyroscope Activities Path Programming Results Future Work Conclusion.
ME 224-Final Project
Jim Lovsin
Erica Morales
Dan Sheehan
Josh Widzer
Overview
Introduction
Robot Activities
Gyroscope Activities
Path Programming
Results
Future Work
Conclusion
Objectives
To design and implement an
experiment to realize the control of a
commercially available robot
To enhance our knowledge of
LabView, data acquisition, feedback
control, and MEMS sensing
The Goal
To create a robot which utilizes gyroscopic
feedback control to navigate the
predetermined path shown below.
6
3
53.1°
90°
4
5
36.9°
The Equipment
A computer with LabVIEW and a data
acquisition card
A gyroscope sensor (ADXRS150EB)
from Analog Devices
A Boe-Bot Robot Kit
(www.parallax.com, #28132)
Robot Activities
Servo Centering
Assembly
Basic Paths
Servo Centering
Since the servos are not preadjusted in the
factory, it is necessary to adjust the servos
so that they are stopped when a 1.5 ms
pulse is used
Assembly
The Boe-Bot came unassembled so some
assembly was required
Followed the instructions provided
Basic Paths
Forward
– Both wheels rotating in the same direction at the same
speed
Right turn
– Both wheels rotating at the same speed but the left wheel
goes forward and the right wheel goes backward
Left turn
– Both wheels rotating at the same speed but the right
wheel goes forward and the left wheel goes backward
Gyroscope Familiarity
Operating Principles
– Coriolis Acceleration
Fc = 2mv x Ω
Capacitive Sensing
Self-Test
Calibration
– First Attempt
– Second Attempt
Vibrating MEMS Gyroscope
Ref: K. Elliot, P. Gupta, K. Reed, and R. Rodriguez
“Micromachined Vibrating Gyroscopes: Design and
Fabrication” (2002) Northwestern University Mechanical
Engineering 381: Introduction to Microelectromechanical
Systems Final Project
Self-Test
Followed Self-Test
Procedure from Chip Data
Sheet
Power supply, Multimeter,
and Oscilloscope
– RATEOUT Initially 2.5 V
– Applied 4.6 V to pin 10.
RATEOUT 3.2 V
– Applied 4.6 V to pin 11.
RATEOUT 1.81 V
Satisfactory Self-Test
Schematic of ADXRS150EB
Ref: Analog Devices, ±1500/s Single Chip Yaw Rate Gyro with Signal Conditioning,
ADXRS150EB Data Sheet
http://www.analog.com/UploadedFiles/Data_Sheets/778386516ADXRS150 B.pdf
Calibration
First Attempt
– Correlate Angle to
Voltage Signal
Second Attempt
– Correlate Angular
Rate to Voltage
Signal
LabVIEW to acquire
and collect the data
Excel to analyze the
data
Block Diagram of LabVIEW
Calibration Program
Calibration First Attempt
Correlate Angle to Voltage
Θi = B0 + B1 Σ Vi Δt
Where: B0 and B1 are parameters
from OLS
Experiment:
Turned Boe-Bot by hand to a
known angle for a given time
Theta versus integral of dV
200
Angles
180
160
•90 and 180
(deg)
•Accurate
Positioning and
Timing
angle (deg)
Problems
140
120
y = -0.0028x + 161.61
R2 = 0.042
100
80
R2 = 0.04
60
40
20
•Numerical
Integration
0
0
2000
4000
6000
8000
integral of dV (deg)
10000
12000
14000
Calibration Second Attempt
Correlate Angular Rate to Voltage
d/dt (Θi) = B0 + B1Vi
Where: B0 and B1 are parameters
from OLS
Experiment:
Turned Boe-Bot at a known
angular rate for a given time
Theta versus integral of dV
200
Angular Rate
180
160
•2.06, 3.05,
1.78 (rad/s)
•Accurate
Positioning and
Timing
angle (deg)
Problems
140
120
y = -0.0028x + 161.61
R2 = 0.042
100
80
60
R2 = 0.64
40
20
•Numerical
Integration
0
0
2000
4000
6000
8000
integral of dV (deg)
10000
12000
14000
Path following programs
Basic Stamp Program
– Directly creates the PWM signal needed
for the servos
LabView Program
– Reads & analyzes readings from
gyroscope, controls basic stamp program
Basic Stamp Program
Main
Forward
Forleft
Forright
Left
Right
Sto
' Robotics with the Boe-Bot - PathProgram.bs2
' Closed loop path control for the Boe-Bot.
' {$STAMP BS2}
' Stamp directive.
' {$PBASIC 2.5}
' PBASIC directive.
DEBUG "Program Running!"
'-----------------[Variables]-------------------INPUT 0
INPUT 1
INPUT 2
INPUT 3
DO
Main:
IF ( IN0 = 1 ) THEN Sto
IF ( IN1 = 1 ) THEN Forward
IF ( IN2 = 1 ) THEN Right
IF ( IN3 = 1 ) THEN Left
LOOP
END
Sto:
PULSOUT 13, 750
PULSOUT 12, 750
PAUSE 18
GOTO Main
Forward:
IF ( IN2 = 1 ) THEN Forright
IF ( IN3 = 1 ) THEN Forleft
PULSOUT 13, 700
PULSOUT 12, 800
PAUSE 18
GOTO Main
Forright:
PULSOUT 13, 600
PULSOUT 12, 800
PAUSE 18
GOTO Main
Forleft:
PULSOUT 13, 700
PULSOUT 12, 950
PAUSE 18
GOTO Main
Right:
PULSOUT 13, 775
PULSOUT 12, 775
PAUSE 18
GOTO Main
Left:
PULSOUT 13, 725
PULSOUT 12, 725
PAUSE 18
GOTO Main
LabView Program
1
8
9
180
2
6
53.1
7
There are three types of steps:
90
•Stopped (0,9)
•Straight line (1,3,5,7)
•Turning (2,4,6,8)
3
5
Nine total steps
36.9
4
143.1
LabView
Program
Front Panel
Stop Step
LabView Program
Turning Step
Step 8: 180 degrees CCW
LabView
Program
Straight Path Step
Read Accumulated
Voltage
No
Zero?
Yes
Greater than
Zero?
No
Yes
Forward
Forright
Forleft
Path Demonstration
Reliability Testing
Performed ten trials to see accuracy of
Boe-Bot
Measured x and y distance from
starting point and endpoint
Recorded angles robot made using
LabVIEW
Results of Reliability
Testing
Deviation from Starting Point:
X Error (mm)
Y Error (mm)
Theta Error (deg)
Average
20.1
17.5
3.15
Standard Error
7.680422442
10.84486566
1.901023116
Angle Results:
Desired Angle
(degrees)
90
143.1
-53.1
-180
Average
Value
(degrees
90.568
143.727
-53.702
-180.581
Standard
Deviation
0.422027
0.357026
0.281772
0.256361
Future Works
Create large deviation correction functionality.
Closed loop control of distance.
– Use encoders on servo wheels.
Use LabVIEW Realtime to improve
performance over Windows.
Use wireless 802.11g or bluetooth protocol to
remove cable from system.
– Parallax has kits for sale.
Conclusion
Successfully completed the task of
programming the Boe-Bot to execute a
path
Enhanced our knowledge of LabVIEW,
Basic Stamp, data acquisition,
feedback control, and MEMS sensing
Questions?