61
UNIVERSITY OF CENTRAL FLORIDA TRANSIT TRACKING SYSTEM

UNIVERSITY OF CENTRAL FLORIDA TRANSIT TRACKING SYSTEM

  • Upload
    myrrh

  • View
    43

  • Download
    0

Embed Size (px)

DESCRIPTION

UNIVERSITY OF CENTRAL FLORIDA TRANSIT TRACKING SYSTEM. Who is TTS?. 7. Karl Banks , CpE Chris Dorros , CpE Monica Nguyen , EE Tyler Zaino , CpE SPONSOR: David Norvell , PE, LEED AP, C.E.M. Energy Manager Sustainability & Energy Management University of Central Florida. GROUP. - PowerPoint PPT Presentation

Citation preview

Data Collection and Processing

UNIVERSITY OF CENTRAL FLORIDATRANSIT TRACKING SYSTEM1Who is TTS?Karl Banks, CpEChris Dorros, CpEMonica Nguyen, EETyler Zaino, CpE

SPONSOR:David Norvell, PE, LEED AP, C.E.M.Energy ManagerSustainability & Energy ManagementUniversity of Central Florida7GROUP2What is TTS?System for tracking the universitys shuttlesHarmony of hardware and softwareSystem of subsystemsEffort to increase the use of UCF shuttle service and ultimately decrease traffic around the university (or so we hope)

3Goals & ObjectivesSupport all shuttles both on campus and off campusEquip all shuttles with their own unique transmitter unitNo monthly cellular contractWaterproof and thoroughly resistant to continuous exposure to severe weather conditionsCross-browser compatibleDisplay each active bus route in color-coded fashionAllow user to filter map data by the route of each bus

4Requirements & specificationsGPS data accurate to a maximum differential of 10 m3 mile line of sight radius of the main receiver towerStandard 12V power supply unit No more than 5 lbsNo larger than 12 x 12 x 5Full functionality for 10,000 users at any given time

see what I did there?5

TTS: System of Subsystems6presented by: monica nguyenHardware design7Block diagrams

Transmitting SystemReceiving System8globalsat EM-406A 20-channel receiverBuilt in patch antenna Hot Start: 1s, Warm Start: 38s, Cold Start: 42sLed indicator: off- receiver switch off; on- signal searching, flashing- position lockedExtremely high sensitivity of -159dBm (note: which can pick up signals 1000x weaker then the typical signal at the -160dBW level)10m Position AccuracyAccepts supply voltage input range of 4.5V~6.5V DCPower Consumption of 44mAOperating Temperature of -40C to 85C

30mm9ADXL213AEDual Axis AccelerometerSensor measurement range of +/- 1.2g Turn on time of 20msAccepts supply voltage range of 3V ~ 6V DCOperating temperature of -40C to 85C

5mm10Accelerometer schematicA single 0.1 F capacitor is connected from VCC to GND which adequately decouples the accelerometer from noise on the power supply0.1uF capacitors are added at XFilter and YFilter pins to implement low-pass filtering for antialiasing and noise reductionA 1M resistor is added to the circuit to set the period to complete one duty cycle

11Atmel atmega2560Low power 8-bit microcontrollerClock Rate of 16MHz4 serial I/O Has analog to digital converterOperating temperature of -40C to 85CAs opposed to ATmega328

16mm12

13Types of communicationsSatelliteGreatest coverageRequires monthly feesCellularSecond greatest coverageRequires monthly feesRadio FrequencyLeast coverage No monthly costs14Digi 9Xtend (transmitting) Low power and FCC (Federal Communications Commission) approved Operates within 900MHz frequency ISM bandModem uses frequency band of 902-928MHzOutdoor RF line-of-sight: range of up to 40 miles with high gain antennaReceiver sensitivity of -110dBmTx current: 730mA; Rx current: 80mA for power output of 1WAccepts supply voltage range of 2.8V ~ 5.5V DCTransmit power output of 1mW ~ 1WOperating Temperature of -40C to 85C15Rf continuedUtilizes Frequency Hoping Spread Spectrum (FHSS)Agility to avoid interference by hoping to a new frequency on every packet transmission or re-transmissionOverallVast range coverageRequires minimal powerSmall form factor saves board space

61mm37mm16DIGI A09-hasm-675900MHz Dipole AntennaGain of 2.15 dBi +/- 1Frequency 915MHz (902MHz ~ 928MHz)

171mm17schematic

18Development board

19Pcb layout

20Implemented PCB

21Maxstream a09-f8nf-mFiberglass Omni-directional 900MHzFrequency 915MHz (902MHz ~ 928MHz)Gain of 8.1 dBiMaximum power input of 100WRoHS Compliant (Restriction of Hazardous Substances)

65in22Digi 9XTend (receiving) Weather Proof Outdoor RF line-of-sight: range of up to 40 miles with high gain antennaReceiver Sensitivity -110dBmRx current: 110mA; Tx current: 900mA for power output of 1WLow power Supply Voltage 7-28VOperating Temperature -40C to 85C

5.5in23presented by: chris dorrosMicrocontroller Code &RF Communication24Arduino Development PlatformWhat is Arduino?An open source electronics development platformWhy Arduino?Extensive libraries speed up development timeEasier to load code onto our board - especially useful for SW updatesLarge community of developersWritten in C language25Microcontroller Code StructureWritten in CBasic outline of code:InitializationPin numbersRF modem parameter settingsRuntime (infinite loop)Collect GPS & Accelerometer dataTransmit over RF modemFunctions both initialization and runtime26

27GPSSerial (UART) connection between GPS and MicrocontrollerBaud rate: 9600 bpsData is received in NMEA format:$GPGGA,161229.487,3723.2475,N,12158.3416,W,1,07,1.0,30.0,M,*18

Protocol headerUTC TimeLatitudeNorth/South IndicatorLongitudeEast/West IndicatorPosition Fix Indicator# of Satellites UsedAltitude (Mean Sea Level)Altitude UnitsChecksumDilution of Precision28AccelerometerAnalog input, converted to Digital signal via Analog to Digital converter built into MicrocontrollerMaps input voltage from 0 and 5V to integers between 0 and 1023

29AccelerometerRequired to determine if bus engine is runningData collected from the accelerometer is run through an algorithm on the microcontroller to calculate thisCalculation is done onboard since fast sampling (on the order of milliseconds) is requiredEquation and algorithm in work need to gather sample data from a bus while the engine is running30RF Modem (Transmitting)Digital pins required for RF modem operation controlled via codeExample pins: Shutdown, CTSPins controlled in software Packaged GPS & Accelerometer data is sent to the RF modem via Serial interfaceBaud rate: 9600bpsSend out every half second31RF Modem (Transmitting)Configuration required for RF Modems to communicateSource / destination addressesBaud rate of RF transmission

Configured using AT commands through same serial channel+++ to enter command modeATMYCD12AT command prefixMY source addressCD12 Hexadecimal value for address

9600bps40 miles max115200bps20 miles maxchosen32Loading Code onto MicrocontrollerArduino bootloader is flashed onto bare microcontroller hardware using Atmel In-System Programmer via ICSP pinsDeveloped code loaded via RS-232 interface to microcontrollerThis allows for fast, easy software updates to the tracking device via the RS-232 interface

1.00cmAtmel AVRISP mkIIIn-System Programmer33RF ModemS (Receiving)Receives data from each tracking unitProgrammed via RS232 interface to computer with X-CTU software (Digi)Frequency-hopping spread spectrumRepeaters will repeat all packets not addressed to themReceiving node collects all packets and sends out serial interface34RF Modem (receiving)Each packet of information will be in the same format, separated by carriage returnsSample output:

Protocol headerBus ID #LatitudeLongitudeTime (hhmmssi) i=incremented valueDate (yymmdd)Protocol tailEngine status35presented by: tyler zainoData Collection & Processing36Data Collections and Processing

37Data Processing ServerWritten in C#Outputs an executable fileHas built in MySQL and Serial I/O librariesDeployed on a dedicated computer running Windows XPThe RF modem is connected to the COM port of the computer at all timesA windows task is setup to run the program when the computer boots38Collects the data from the RF modem through the COM port of the serverBus IdentifierUnique integer that represents the shuttle the coordinates are being sent fromLongitude and Latitude coordinatesFloating point numbers that represent the real-time location of the shuttleAccelerometer dataBoolean value representing the real-time state of the shuttleDate and TimeCurrent date and time the bus data is collected

Data Processing Server39Data Processing ServerProcess the packets of dataThe data is received in packets from the microcontrollerThe Data Processor analyzes these packets and strip down the data into useable informationThis information is stored within the program and is analyzed

40Data Processing ServerAnalyzing the dataChecks to ensure all the data is accounted for within the packetThis ensures that information that is written to the database isnt missing any crucial componentsChecks to ensure the coordinate points are validIf the GPS is not connected it returns the longitude and latitude points 10000N and 10000EThis ensures that any incorrect coordinates dont make their way to the database

41Data Processing ServerPasses the data to the database for the WebserverCoded within the program using the MySQL library to write to the information to the databaseAll data is written to the DATA_BUS_COORDS in the database

FieldTypebusIDint(3)coordXvarchar(10)coordYvarchar(10)accelerometerDatabooleantimevarchar(10)42

43Variable NameTypeDescriptionGlobalucfdbMySqlConnection Connection to the databasespSerialPort Serial Port connectionLocalinputStringData from the Serial PortdataString ArrayData after ParsingbBus ObjectContains the data for a particular busObjectsBus.idInt32Identifier to the busBus.latitudeDoubleLatitude Coordinate of the BusBus.longitudeDoubleLongitude Coordinate of the BusBus.TimeStringString representation of the timeBus.AccelerometerBooleanBoolean representation of the engine status44Function NameInputsOutputDescriptionGetConnectionString()connNameStringRetrieves the database connection parameters from the XML configuration filedbConnect()(none)MySqlConnectionCreates and returns the connection to the databasegetInput()(none)voidRetrieves the data packets from the Serial PortparseInput()inputvoidParses and Validates the data packetdbWrite()bvoidWrites the validated data to the database45presented by: karl banksWeb Application46database

47DATABASE: BUSID : integerisActive : boolean

48DATABASE: BUS COORDSbusID : integercoordY : doublecoordX : doubleaccelerometerData : booleantime : integer

49DATABASE: BUS STOPID : integername : stringcoordX : doublecoordY : doubleisActive : boolean

50DATABASE: RouteID : integername : stringcolor : stringisActive : boolean

51User Interface TechnologiesMapsGoogleBingYahooMapQuestApplication Programming Interface (API)Provides access and makes use of services and resources provided by another particular software programComputer Program vs. Web ApplicationInteractivity vs. system requirementsCompatibility is key52Web ApplicationReal-time view of the UCF shuttle transit systemMap of the local UCF area, with each route highlighted in a unique colorUser has the option to toggle the visibility of each route on/off, through an options panel on the side of the screenEach active bus appears with its own icon based on the most recent coordinates sent from the RF modemAs the bus moves, the icon updates and moves in real-time53Problems & SolutionsProblemSolutionRF polling mode doesnt work with repeatersUsing packet mode with repeaters and variable delays on transmissionNot able to reload microcontroller code after first load since we dont have an external reset buttonModified Arduino bootloader to allow for a 10 second delay during bootup for uploadsGPS not connecting reliably. Found that this was being caused by interference from transmitting RF modem.Implemented checks in microcontroller code to only turn on RF modem when there is a successful GPS lock54BudgetSubsystemPercent AcquiredProjected TotalActual TotalHardware Development100%$188$187Software Development100%$0$0Mobile Tracking Device100%$385$354Receiving System100%$1753$730Repeater100%$500$500Data Acquisition Server100%$149$0Database / Web Server100%$0$0TOTAL100%$2975$177155Full range test

56Antenna Locations

Main Receiver Tower IIRepeater Physical Sciences57Antenna Locations

58Main Antenna

59Main Antenna

60

UNIVERSITY OF CENTRAL FLORIDATRANSIT TRACKING SYSTEM61