Upload
cameron-price
View
217
Download
0
Embed Size (px)
Citation preview
Bar Code ScanningSenior Capstone Experience
By: Rachel R. Rouse
Project DefinitionProject Description
Purchase and install a bar code reader and design real-time experiments for it.
Requirements:1. Purchase a barcode scanner that will ID passing trains
and calculate speed & velocity on CCR2. Write the scanner driver and provide a good API.3. Rewrite the user manual.4. Design and implement the application described in #1.5. Design and implement other experimentations involving
some real-time issues.
Goals & StrategiesGoals: Write applications for CCR, hexidecimal
communication between host and scanner, and audience participation application
Strategies: Trial-and-Error Experimentation & modify as a result Faculty, peer, vendors and manufacturer
resources Research
Three ApplicationsCCR Train Application Identifies trains, calculates speed, friendly user
interface
Hexidecimal Communication Application Establishes communication between host and
scanner; allows commands to be sent to scanner
MTV Trivia Application Simple application that will allow the audience to
scan bar codes
Edit Selected Train FormEdit Selected Train FormEdit Selected Train FormEdit Selected Train Form
Delete Train FormDelete Train FormDelete Train FormDelete Train Form
Add Train FormAdd Train FormAdd Train FormAdd Train Form
History form — displays the
information about the specified pass
CCR Train ApplicationCCR Train Application
Train FormTrain FormTrain FormTrain Form
Edit Train FormEdit Train FormEdit Train FormEdit Train Form
History FormHistory FormHistory FormHistory Form
Main form — displayed latest
scanned information Edit form — edited the train whose ID came
from Edit Train Form
Delete form — removed a train from the application
Add form — initialized train information
Calculating Speed
HO Gauge 1/17 of life size
D1 thru D4 Specific distances between bar codes
on an engine
Calculations: If D1: (18 / x) MPH If D2: (14.4 / x) MPH If D3: (12 / x) MPH If D4: (10.285714 / x) MPH*where x is the time difference between Time1 and
Time2 as seconds
FirstPassFirstPassFirstPassFirstPass
Time1Time1Time1Time1
Time2Time2Time2Time2
SpeedSpeedSpeedSpeed
Variables Constants
D1= 3.6414”D1= 3.6414”D1= 3.6414”D1= 3.6414”
D2= 2.88”D2= 2.88”D2= 2.88”D2= 2.88”
D3= 2.4276”D3= 2.4276”D3= 2.4276”D3= 2.4276”
D4= 2.0808”D4= 2.0808”D4= 2.0808”D4= 2.0808”
User-defined VB Classes
TrainClassTrainClass IDID NameName InitDirInitDir InitPosInitPos DirectionDirection PositionPosition SpeedSpeed Code DistanceCode Distance
ScannerClassScannerClass CodeCode TimeTime
Hexidecimal ApplicationHexidecimal Application
One form that allowed the following:One form that allowed the following:
Pre-defined menu options that sent commands to the scanner (i.e. Triggering Options)
User could enter parameter and parameter value and the application created the string to be sent to the scanner
UNDO ALL and UNDO LAST buttons to correct mistakes when appending
Turn Laser On and Turn Laser Off commands
Once the answer form is closed, a new question is displayed.
Depending on the bar code scanned, a different answer
is displayed.
MTV Trivia Application
A series of ten trivia questions appear on the form.
New question displayed after the answer form is closed.
A bar code that directly corresponds to the question is scanned and the answer to the question is displayed on the Answer Form
Question FormQuestion FormQuestion FormQuestion Form
Answer FormAnswer FormAnswer FormAnswer Form
Future Extensions
Creating bar codes without the use of software
Writing a DLL specifically for opening and closing ports
Purchasing a second scanner to do comparative experiments
Developing a new symbology and having the scanner recognize it
Thank You!
Rachel R. Rouse