นี่คือบทช่วยสอนง่ายๆ สำหรับผู้ที่ต้องการทราบวิธีการเชื่อมต่อและใช้งานโมดูล GPS กับ Arduino
ผมใช้ Arduino UNO Shield #Hackduino และโมดูล VK16E GPS
สำหรับข้อมูลเพิ่มเติม โปรดดู datasheet
ขั้นตอนที่ 1: การเชื่อมต่อวงจร
สาย BLACK ไปที่การเชื่อมต่อ Gnd ของบอร์ด Ultimate
สาย RED ไปที่การเชื่อมต่อ 5V ของบอร์ด Ultimate
สาย BLUE ไปที่การเชื่อมต่อ RxD ของบอร์ด Ultimate
สาย GREEN ไปที่การเชื่อมต่อ TxD ของบอร์ด Ultimate
สาย WHITE ไปที่การเชื่อมต่อ PPS ของบอร์ด Ultimate
ตามโค้ดของเรา
เชื่อมต่อ
RXPin ของบอร์ดเข้ากับ digitalPin 4,
TXPin ของบอร์ดเข้ากับ digitalPin 3
Vcc ไปที่ 5V และ GND ไปที่ GND
ขั้นตอนที่ 2: การเขียนโปรแกรม
อันดับแรกที่คุณต้องการคือ library:
คุณสามารถดาวน์โหลดได้จาก ที่นี่
หลังจากติดตั้ง library ใน Arduino ให้เปิด DeviceExample.ino จาก examples> tinyGPS++
หรือคัดลอกโค้ดด้านล่างนี้ได้เลย
ขั้นตอนที่ 3: ข้อควรทราบ
โปรดวางโมดูล GPS ไว้ด้านนอกบ้านของคุณหรือที่หน้าต่าง
- โมดูล GPS ราคาไม่แพง เช่น VK16E ไม่มีสัญญาณ 1pps ที่แม่นยำมาก
- คุณอาจพบว่าเช่นเดียวกับโมดูล GPS จำนวนมากที่ใช้ patch antenna โมดูล GPS อาจต้องอยู่ใกล้หน้าต่างหรือภายนอกอาคาร สัญญาณ GPS ดูเหมือนจะมีความแรงแตกต่างกันอย่างมากขึ้นอยู่กับตำแหน่งและอาคารโดยรอบ เป็นต้น โมดูล GPS อาจได้รับประโยชน์จากการอยู่ห่างจาก Ultimate kit มากขึ้น ขึ้นอยู่กับรูปแบบของห้องและระบบสายดินของคุณ ด้วยเหตุผลนี้ คุณอาจต้องการเชื่อมต่อโมดูล GPS เข้ากับชุดอุปกรณ์โดยใช้สายไฟยาวหลายเมตร ผมแนะนำให้ใช้ screened cable โดยต่อ screen เข้ากับ Gnd. 4)
- โมดูลนี้มี Green LED ดังที่แสดงในภาพด้านบน ซึ่งจะติดสว่างต่อเนื่องในขณะที่โมดูล GPS กำลังค้นหา satellite lock และจะกระพริบ 1 ครั้งต่อวินาทีเมื่อทำการล็อกได้แล้ว
วิธีตรวจสอบตำแหน่งบน Google Maps เพียงใช้ลิงก์ด้านล่าง
https://maps.google.com/?q=<lat>, <lng>
lat-> lattitude
lng->longitude
รายละเอียดทางเทคนิคเพิ่มเติม
การประมวลผลตำแหน่งทางภูมิศาสตร์จากดาวเทียม
โมดูล VK16E GPS เป็นตัวรับสัญญาณดาวเทียมประสิทธิภาพสูง ราคาประหยัด ที่ให้ข้อมูล Latitude, Longitude และ Time ที่แม่นยำ
- UART Serial Link: โมดูลสื่อสารผ่าน NMEA-0183 protocol ที่ 9600 baud Arduino ใช้
SoftwareSerialเพื่อดึง raw strings จากกลุ่มดาวเทียม - NMEA Decoding: โดยใช้ library
TinyGPS++ตัว Arduino จะแปลง raw sentences$GPRMCและ$GPGSVให้เป็น coordinates, altitude และ atomic-synced UTC time ที่มนุษย์อ่านเข้าใจได้
ความแม่นยำและการระบุตำแหน่ง
- PPS Interaction: มีเอาต์พุต Pulse-Per-Second (PPS) สำหรับการซิงโครไนซ์เวลาในระดับ microsecond
- Applications: เป็นรากฐานสำหรับการติดตามทรัพย์สิน, นาฬิกาดิจิทัลกลางแจ้ง และระบบนำทางสำหรับยานพาหนะอัตโนมัติที่ต้องการ global coordinates โดยไม่คำนึงถึงความพร้อมใช้งานของอินเทอร์เน็ตหรือสัญญาณโทรศัพท์มือถือ