Arduino gps2 060314
-
Upload
benjamin-freeth -
Category
Documents
-
view
817 -
download
1
Transcript of Arduino gps2 060314
GLOBAL POSITIONING
& DATA LOGGING
Arduino 101 // Further Techniques
// Ben Freeth
// 080314
THE WATCH
20 WAYS TO FIND YOUR LOCATION?
What are these?
20 WAYS TO FIND YOUR LOCATION?What are these?• Assume: the Earth. Or, smaller domain, but assume that’s the largest space you have to
look in• Use the time• Ask someone• Association: who or what are you near?• Proximity to phone boxes, public transport stops and utility markings• Use a map• Which cell/public phone operators are available?• Phone number syntax• Newspapers available• Languages being spoken• Street names• Street corners / intersections• Street numbers• Business names• Mobile phone location (triangulation / triliteration)• Triangulation / Triliteration on other radio infrastructures e.g. TV, Radio, Public Wi-Fi• GPS, assisted GPS, WAAS, and other GPS enhancements• Landmarks and “littlemarks”• Dead reckoning
ARTHUR C CLARKE
August 1956: GPS prognostication // A network of geosynchronous satellites circling the globe
THE MULTIPATH EFFECTPhantom Beacons
TRILATERATION VS TRIANGULATION
Determining Position – distance is only part of this (1D)
GPS
What?
What?
GPS - RXReceivers
GPS – SERIAL PROTOCOLNMEA 0183 protocol
Serial Protocol
4800 bits per second (Baud Rate)
8 data bits
No parity
1 stop bit
Send via RS-232 or TTL serial levels
GPS - LOGSData in the NMEA protocol
GPS - LOGSData in the NMEA protocol
GPS - LOGS$GPRMC,15525.000,A,4043.8432,N,07359.7654,W,0.10,11.88,200407, , *20
Message Identifier
Time (GMT)
Status of data (valid = A, not valid = V) (Active, Void)
Latitude
North South Indicator
Longitude
East/West Indicator
Speed Over Ground
Course Over Ground
Date
Magnetic Variation
Mode
Checksum
ADDRESS 2007Mouna Andraos & Sonali Sridhar
REVERSE GEOCACHEhttp://arduiniana.org/2009/10/the-reverse-geocache-puzzle/
Blast Theory (2004)UNCLE ROY ALL AROUND YOU
PLAN B
10 Year Map Of Berlin Soul gpx track on openstreetmap background showing 3-day trip to UK and path of soul
Soul Walker
PSYCHOGEOGRAPHY
"the study of the precise laws and specific effects of the geographical environment, consciously organized or not, on the emotions and behavior of individuals.”
"a whole toy box full of playful, inventive strategies for exploring cities... just about anything that takes pedestrians off their predictable paths and jolts them into a new awareness of the urban landscape."
OPEN POSITIONING SYSTEMPhilipp Ronnenberg
Maps as power….
http://www.openps.info
ADAFRUIT GPS-165 dBm sensitivity, 10 Hz updates, 66 channels
Low power module - only 20mA current draw, half of most GPS's
Assembled & tested shield for Arduino Uno/Duemilanove/Diecimila/Leonardo MicroSD card slot for datalogging onto a removable card
RTC battery included, for up to 7 years backup
Built-in datalogging to flash
PPS output on fix
>25Km altitude
Internal patch antenna + u.FL connector for external active antenna
Power, Pin #13 and Fix status LED
Big prototyping area
ADAFRUIT GPSDirect Connect- Soft Serial selected- Bare Minimum Sketch
- Use the serial monitor to look at the raw strings- 9600 baud
ADAFRUIT GPS
Need – Adafruit_GPS library
https://github.com/adafruit/Adafruit-GPS-Library
Leo Echo (test this sketch)
SoftwareSerial mySerial(8, 7); // Make sure these are set in the code
Find the line about the Uno – uncomment the line recommended
Look at SoftwareSerial on Arduino.cc to understand what it does:
http://arduino.cc/en/Reference/SoftwareSerial?action=sourceblock&num=1
All data? Or just some of the NMEA sentences?
Logging – need SD library (give them yours) // they have this
shield_sdlog (arduino ino file to use to log data)
GPS DATA ACQUISITIONGo and collect some data
PLOTTING GPS DATAhttp://www.gpsvisualizer.com
CONCLUSION
In summary:
You should now have
a good understanding of
creating interactive projects
that utilise GPS for locating where someone or
something is
HOME WORK• Pick a location• Write code to determine how far you
are away from this location using GPS• Display this data on an lcd screen
• Try out the TinyGPS++ library• Specifically the courseTo() function
(should enable autonomous route finding)
• Teach yourself to write functions in Arduino IDE – there are many online resources for this
Parsing Data Processing Open Office Excel
.kml files Google Maps // Hamster Map
Extending this Drone UAV // unmanned flight Waymarkers // missions
Gps in wearables… context location aware… - papers about this??