นี่คือคำสั่ง gpsmon ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้หนึ่งในเวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
gpsmon - ตรวจสอบแพ็คเก็ต GPS แบบเรียลไทม์และยูทิลิตี้ควบคุม
เรื่องย่อ
จีพีเอสมอน [-L] [-V] [-h] [-n] [-a] [-l ไฟล์บันทึก] [-NS ไดรเวอร์-คำนำหน้า]
[[ เซิร์ฟเวอร์ [:ท่า [:อุปกรณ์- เครื่อง]] [-NS ระดับการดีบัก]
DESCRIPTION
gpsmon เป็นจอภาพที่เฝ้าดูแพ็กเก็ตที่มาจาก GPS และแสดงพร้อมกับ
ข้อมูลการวินิจฉัย รองรับคำสั่งที่สามารถใช้ปรับแต่งการตั้งค่า GPS ได้
วิธีต่างๆ บางตัวไม่ขึ้นกับอุปกรณ์ บางตัวแตกต่างกันไปตามประเภทชิปเซ็ต GPS มันจะ
ประพฤติตัวมีเหตุผล เพียงแค่ทิ้งแพ็กเก็ต เมื่อเชื่อมต่อกับประเภท GPS จะไม่รู้อะไรเลย
gpsmon แตกต่างจากไคลเอนต์การนำทางโดยส่วนใหญ่จะทิ้งข้อมูลดิบจาก GPS
มีข้อมูลเพียงพอในการนวดเพื่อตรวจสอบกับผลลัพธ์ที่คาดไว้ โดยเฉพาะอย่างยิ่ง,
เครื่องมือนี้ไม่ทำการประมาณค่าหรือสร้างแบบจำลองเพื่อให้ได้การปีน/จมหรือข้อผิดพลาด
ประมาณการ และจะไม่ละทิ้งรายงานระดับความสูงเมื่อคุณภาพการแก้ไขต่ำเกินไป
ต่างจาก gpsd ตรงที่ gpsmon จะไม่เขียนสตริงการควบคุมหรือโพรบไปยังอุปกรณ์เว้นแต่คุณจะ
บอกให้ชัดแจ้ง ดังนั้น ในขณะที่มันจะซิงค์อัตโนมัติกับประเภทแพ็คเก็ตไบนารี มันจะไม่
รับรู้อุปกรณ์ที่จัดส่งโปรโตคอล NMEA แบบขยายโดยอัตโนมัติว่าเป็นอย่างอื่น
มากกว่าอุปกรณ์ NMEA ธรรมดา ใช้ -t หรือตัวเลือก t เพื่อแก้ไขปัญหานี้
gpsmon ได้รับการออกแบบมาให้ทำงานในเทอร์มินัลอีมูเลเตอร์ที่มีขนาดขั้นต่ำ 25x80; ที่ไม่ใช่ GUI
อินเทอร์เฟซเป็นตัวเลือกการออกแบบเพื่อรองรับผู้ใช้ที่ทำงานในข้อจำกัด
สภาพแวดล้อมและผ่านการเชื่อมต่อ telnet หรือ ssh หากเรียกใช้ในหน้าต่างที่ใหญ่ขึ้น ขนาดของ
หน้าต่างบันทึกแพ็คเก็ตจะเพิ่มขึ้นเพื่อให้พอดี
gpsmon ยอมรับตัวเลือก -h ที่แสดงข้อความการใช้งาน หรือตัวเลือก -V เพื่อถ่ายโอนข้อมูล
รุ่นแพ็คเกจและออก
โปรแกรมนี้สามารถรันในโหมดใดโหมดหนึ่งจากสองโหมด เป็นไคลเอนต์สำหรับ gpsd daemon (และของมัน
ซ็อกเก็ตควบคุมที่เกี่ยวข้อง) หรือเชื่อมต่อโดยตรงกับอุปกรณ์อนุกรมที่ระบุ เมื่อวิ่ง
โดยไม่มีข้อโต้แย้ง มันพยายามเชื่อมต่อกับภูต ถ้าอาร์กิวเมนต์เริ่มต้นด้วย a
ข้อมูลจำเพาะของเซิร์ฟเวอร์:พอร์ต มันจะพยายามเชื่อมต่อกับภูตด้วย ถ้าข้อโต้แย้ง
ดูเหมือนชื่อเซิร์ฟเวอร์เปล่าซึ่งจะพยายามเชื่อมต่อกับ daemon ที่ทำงานบน
พอร์ต gpsd เริ่มต้นบนเซิร์ฟเวอร์นั้น เฉพาะในกรณีที่อาร์กิวเมนต์ของอุปกรณ์มีเครื่องหมายทับแต่ไม่มี
โคลอนจะถือว่าเป็นอุปกรณ์อนุกรมสำหรับการเชื่อมต่อโดยตรงหรือไม่ ในโหมดเชื่อมต่อโดยตรง
gpsmon จะค้นหาอัตราบอดที่ถูกต้องและล็อคโดยอัตโนมัติ กรณีที่เป็นไปได้
มีลักษณะดังนี้:
localhost:/dev/ttyS1
ดูพอร์ตเริ่มต้นของ localhost ลองใช้ทั้ง IPv4 และ IPv6 และดูเอาต์พุต
จากอุปกรณ์ซีเรียล 1
ตัวอย่าง.com:2317
ดูพอร์ต 2317 บน example.com ลองใช้ทั้ง IPv4 และ IPv6
71.162.241.5:2317:/dev/ttyS3
ดูพอร์ต 2317 ตามที่อยู่ IPv4 ที่ระบุ รวบรวมข้อมูลจากซีเรียลที่แนบมา
อุปกรณ์ 3
[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]:2317:/dev/ttyS5
ดูพอร์ต 2317 ตามที่อยู่ IPv6 ที่ระบุ รวบรวมข้อมูลจากซีเรียลที่แนบมา
อุปกรณ์ 5
ต่างจาก gpsd ตรงที่ gpsmon ทำงานในโหมดตรงไม่ได้ทำการตรวจสอบอุปกรณ์ของตัวเอง ดังนั้นใน
โดยเฉพาะถ้าคุณชี้ไปที่ GPS ด้วยโหมดไบนารีดั้งเดิมที่เปล่งแสงออกมา
NMEA จะไม่ระบุประเภทที่แท้จริงเว้นแต่อุปกรณ์จะส่ง NMEA . ที่รู้จัก
ประโยคกระตุ้น ตัวเลือก -t และ -i อาจช่วยคุณได้
ตัวเลือก -F ใช้ได้เฉพาะในโหมดไคลเอนต์เท่านั้น มันระบุซ็อกเก็ตควบคุมที่
โปรแกรมควรส่งสตริงการควบคุมอุปกรณ์ คุณต้องระบุชื่อพาธที่ถูกต้องของa
ซ็อกเก็ตโดเมน Unix บนระบบไฟล์ในเครื่องของคุณ
ตัวเลือก -D เปิดใช้งานเอาต์พุตการดีบัก packet-getter และอาจมีประโยชน์เฉพาะกับ
ผู้พัฒนารหัส GPSD ศึกษาซอร์สโค้ดของ packet-getter สำหรับค่าที่เกี่ยวข้อง
ตัวเลือก -L แสดงรายการตารางที่แสดงประเภทอุปกรณ์ GPS ที่ gpsmon รองรับในตัว
สำหรับ และคำสั่งทั่วไปใดบ้างที่ใช้ได้กับประเภท GPS แล้วจึงออก บันทึก
ที่ไม่แสดงรายการคำสั่งเฉพาะประเภทที่เกี่ยวข้องกับ GPS แต่ละประเภท
อ็อพชัน -l ตั้งค่าการบันทึกไปยังไฟล์ที่ระบุเพื่อเริ่มต้นทันทีเมื่อเปิดอุปกรณ์
ซึ่งอาจเป็นประโยชน์ เช่น คุณต้องการจับภาพข้อความเริ่มต้นจากอุปกรณ์
ที่แสดงข้อมูลเวอร์ชันเฟิร์มแวร์ที่นั่น
ตัวเลือก -n บังคับให้ gpsmon ขอแพ็กเก็ต NMEA0183 แทนการสตรีมข้อมูลดิบจาก
จีพีเอส
อ็อพชัน -t ตั้งค่าประเภททางเลือก ให้สตริงที่เป็นคำนำหน้าที่แตกต่างของ
ชื่อประเภทไดรเวอร์เพียงหนึ่งเดียว จะใช้สำหรับโหมด ความเร็ว และการสลับอัตราถ้า
ไดรเวอร์ที่เลือกตามประเภทแพ็กเก็ตขาดความสามารถเหล่านั้น มีประโยชน์มากที่สุดเมื่อแพ็คเก็ต
ประเภทคือ NMEA แต่อุปกรณ์ดังกล่าวมีโหมดไบนารีเช่นไบนารี SiRF
ตัวเลือก -a เปิดใช้งานโหมดการดีบักพิเศษที่ไม่ใช้การระบายสีหน้าจอ แพ็คเก็ต
ถูกทิ้งตามปกติ อักขระใดๆ ที่พิมพ์จะระงับการดัมพ์แพ็กเก็ตและเรียกใช้คำสั่ง
พร้อมท์ คุณลักษณะนี้จะเป็นที่สนใจของนักพัฒนา GPSD เป็นหลัก
หลังจากเริ่มต้น (ไม่มี -a) ส่วนบนของหน้าจอจะรายงานเนื้อหาของหลาย ๆ
ประเภทแพ็กเก็ตที่น่าสนใจเป็นพิเศษ ฟิลด์ "PPS" หากไม่ว่างเปล่า คือเดลต้าระหว่าง
วินาทีบนสุดของ 1PPS และนาฬิการะบบในขณะนั้น
ครึ่งล่างของหน้าจอคือดัมพ์ฐานสิบหกแบบเลื่อนของแพ็กเก็ตทั้งหมดที่ GPS ออก
หากประเภทแพ็กเก็ตเป็นข้อความ CR/LF ต่อท้ายจะถูกละเว้น เส้นการถ่ายโอนข้อมูลเริ่มต้น >>>
แสดงถึงแพ็กเก็ตควบคุมที่ส่งไปยัง GPS เส้นที่ประกอบด้วย "PPS" ล้อมรอบด้วยเส้นประ
หากมี ให้ระบุ 1PPS และเริ่มรอบการรายงาน
คำสั่ง
คำสั่งที่ไม่ขึ้นกับอุปกรณ์ต่อไปนี้พร้อมใช้งานในขณะที่ gpsmon กำลังทำงาน:
i
(โหมดตรงเท่านั้น) เปิด/ปิดการตรวจสอบประเภทย่อยและเริ่มต้นไดรเวอร์ใหม่ ใน
การทำงานปกติ gpsmon จะไม่ส่งสตริงการกำหนดค่าไปยังอุปกรณ์ (ยกเว้นสำหรับ
จำเป็นต้องใช้สตริงการปลุกเพื่อส่งข้อมูล หากมี) คำสั่ง 'i1' ทำให้เป็น
ส่งลำดับของโพรบชนิดย่อยเดียวกันกับที่ gpsd ทำ คำสั่ง 'i0' จะปิด
การซักถาม; 'ฉัน' คนเดียวสลับบิต ไม่ว่าในกรณีใด ไดรเวอร์ปัจจุบันจะถูกเลือกใหม่
หากเปิดใช้งานโพรบบิต โพรบจะเริ่มออกทันที
โปรดทราบว่าการเปิดใช้งานการตรวจสอบอาจทำให้อุปกรณ์เปลี่ยนไปเป็นโหมดอื่น โดยเฉพาะมัน
จะพลิกชิป SiRF เป็นโหมดไบนารีราวกับว่าคุณใช้คำสั่ง "n" นี้เป็นเพราะ
ถึงข้อจำกัดในเฟิร์มแวร์ SiRF ที่เราแก้ไขไม่ได้
คำสั่งนี้โดยทั่วไปจะไม่ทำอะไรเลยหลังจากใช้งานครั้งแรก เนื่องจากคำสั่ง
ประเภทของอุปกรณ์จะถูกค้นพบแล้ว
c
(โหมดตรงเท่านั้น) เปลี่ยนรอบเวลา ตามด้วยตัวเลขที่ตีความว่าเป็นวัฏจักร
เวลาเป็นวินาที อุปกรณ์ส่วนใหญ่มีรอบเวลาคงที่ 1 วินาที ดังนั้นคำสั่งนี้อาจ
ล้มเหลวด้วยข้อความ
l
สลับการบันทึกแพ็กเก็ต หากเปิดการบันทึกแพ็กเก็ต ระบบจะปิดและล็อก
ปิด. หากปิดอยู่ การเข้าสู่ชื่อไฟล์ตามหลัง l จะเปิดใช้งาน แตกต่าง
จากการเก็บข้อมูลจากอุปกรณ์ GPS ที่ทั้งแพ็กเก็ตเท่านั้น
เข้าสู่ระบบ ไฟล์บันทึกถูกเปิดสำหรับการต่อท้าย ดังนั้นคุณสามารถบันทึกไฟล์ . ได้มากกว่าหนึ่งส่วน
แพ็คเก็ตสตรีมและพวกเขาจะเย็บเข้าด้วยกันอย่างถูกต้อง
n
(โหมดตรงเท่านั้น) ด้วยอาร์กิวเมนต์ 0 ให้เปลี่ยนอุปกรณ์เป็นโหมด NMEA ที่กระแสไฟ
ความเร็ว; ด้วยอาร์กิวเมนต์ 1 ให้เปลี่ยนเป็นโหมดไบนารี (ดั้งเดิม) ไม่มีข้อโต้แย้ง ให้สลับ
การตั้งค่า. จะแสดงข้อผิดพลาดหากอุปกรณ์ไม่มีโหมดดังกล่าว
หลังจากที่คุณเปลี่ยน GPS แบบดูอัลโปรโตคอลเป็นโหมด NMEA ด้วยคำสั่งนี้ คำสั่งนี้จะคง
ข้อมูลเกี่ยวกับประเภทต้นฉบับและความสามารถในการควบคุม นั่นคือเหตุผลที่
ประเภทของอุปกรณ์ที่แสดงก่อนพรอมต์จะไม่เปลี่ยนแปลง
q
ออกจาก gpsmon Control-C หรืออักขระขัดจังหวะปัจจุบันของคุณทำงานเป็น
ดี.
s
(โหมดตรงเท่านั้น) เปลี่ยนอัตราบอด ตามด้วยตัวเลขที่ตีความว่าเป็นบิตต่อ
วินาที เช่น "s9600" หมายเลขความเร็วอาจตามด้วยเครื่องหมายทวิภาค
และข้อกำหนดความยาว-พาริตี-สต็อปบิตในรูปแบบดั้งเดิม เช่น 8N1 (the
ค่าเริ่มต้น), 7E1 ฯลฯ อุปกรณ์บางอย่างไม่รองรับโหมดซีเรียลนอกเหนือจากค่าเริ่มต้น
ดังนั้นคำสั่งนี้อาจล้มเหลวด้วยข้อความ
ใช้คำสั่งนี้ด้วยความระมัดระวัง บน USB และ Bluetooth GPSes ก็เป็นไปได้เช่นกันสำหรับ
การตั้งค่าโหมดซีเรียลล้มเหลวเนื่องจากชิปอะแดปเตอร์ซีเรียลไม่รองรับ
โหมดที่ไม่ใช่ 8N1 หรือเนื่องจากเฟิร์มแวร์ของอุปกรณ์ไม่ซิงโครไนซ์ซีเรียลอย่างถูกต้อง
ชิปอะแดปเตอร์ที่มี UART บนชิปเซ็ต GPS เมื่อความเร็วเปลี่ยนแปลง ความล้มเหลวเหล่านี้
สามารถแขวนอุปกรณ์ของคุณ อาจต้องใช้วงจรพลังงาน GPS หรือ (ในกรณีร้ายแรง)
ถอดแบตเตอรี่สำรอง NVRAM ออกทางกายภาพ
t
(โหมดตรงเท่านั้น) บังคับสลับประเภทการตรวจสอบ ตามด้วยสตริงที่เป็น
ไม่ซ้ำกับชื่อของไดรเวอร์ gpsd ที่รองรับ gpsmon gpsmon จะเปลี่ยนไปใช้
ไดรเวอร์และรหัสที่แสดงนั้น จะแสดงข้อความแสดงข้อผิดพลาดหากไม่มี gpsd . ที่ตรงกัน
ไดรเวอร์หรือการแข่งขันหลายรายการหรือการจับคู่ที่ไม่ซ้ำไม่รองรับการแสดงผลใน gpsmon
x
(โหมดตรงเท่านั้น) ส่งข้อมูลฐานสิบหกไปยังอุปกรณ์ ตามจดหมายคำสั่งคุณอาจ
พิมพ์คู่เลขฐานสิบหก ลงท้ายด้วยขึ้นบรรทัดใหม่ สิ่งเหล่านี้จะกลายเป็นส่วนของการควบคุม
แพ็กเก็ตที่จัดส่งไปยังอุปกรณ์ แพ็คเก็ตจะห่อด้วยส่วนหัว รถพ่วง และ
เช็คซัมที่เหมาะสมกับประเภทไดรเวอร์ปัจจุบัน หนึ่งหรือสองไบต์แรกของ
เพย์โหลดอาจถูกตีความเป็นพิเศษ โปรดดูคำอธิบายของ -x of จีพีเอส(1)
X
(โหมดตรงเท่านั้น) ส่งไบต์ฐานสิบหกดิบไปยังอุปกรณ์ ตามจดหมายคำสั่งคุณอาจ
พิมพ์คู่เลขฐานสิบหก ลงท้ายด้วยขึ้นบรรทัดใหม่ สิ่งเหล่านี้จะถูกส่งไปยังอุปกรณ์
Ctrl-S
หยุดการแสดงผล ระงับการเลื่อนในหน้าต่างแก้ไขข้อบกพร่อง
Ctrl-Q
ยกเลิกการตรึงการแสดงผล กลับสู่การทำงานปกติ
NMEA สนับสนุน
(ข้อสังเกตเหล่านี้ไม่เพียงแต่ใช้กับอุปกรณ์ NMEA ทั่วไปเท่านั้น แต่ยังใช้กับอุปกรณ์ NMEA ที่ขยายเพิ่มเติมทั้งหมดสำหรับ
ซึ่งปัจจุบัน gpsmon รองรับ)
ทุกช่องเป็นข้อมูลดิบจาก GPS ยกเว้น (a) หน้าต่าง "Cooked PVT" ใกล้กับด้านบนของ
หน้าจอที่ให้ไว้เป็นเช็คและ (b) ฟิลด์ "PPS offset"
ไม่มีคำสั่งเฉพาะอุปกรณ์ คำสั่งทั่วไปใดบ้างที่มีอาจแตกต่างกันไปตาม
ประเภท: ตรวจสอบผลลัพธ์ของ จีพีเอสมอน -l เพื่อเรียนรู้เพิ่มเติม
เซอร์ฟ สนับสนุน
ข้อมูลส่วนใหญ่เป็นข้อมูลดิบจาก GPS ช่องที่ขีดเส้นใต้จะได้มาจากการแปลจาก
พิกัด ECEF หรือการใช้การชดเชยเขตเวลาอธิกวินาทีและเขตเวลาท้องถิ่น 1PPS คือ
นาฬิกาล่าช้าตามปกติ
คำสั่งต่อไปนี้รองรับ SiRF GPS เท่านั้น:
A
(โหมดตรงเท่านั้น) สลับการรายงานข้อมูลเฟรมย่อย 50BPS
M
(โหมดตรงเท่านั้น) ตั้งค่าการนำทางคงที่ (M1) หรือล้าง (M0) เอกสาร SiRF
กล่าวว่า "การนำทางแบบคงที่คือตัวกรองตำแหน่งที่ออกแบบมาเพื่อใช้กับยานยนต์
เมื่อความเร็วของรถต่ำกว่าเกณฑ์ ตำแหน่งและทิศทางจะเป็น
ถูกแช่แข็งและตั้งค่าความเร็วเป็นศูนย์ เงื่อนไขนี้จะดำเนินต่อไปจนถึงการคำนวณ
ความเร็วเพิ่มขึ้นเหนือ 1.2 เท่าของเกณฑ์หรือจนกว่าตำแหน่งที่คำนวณจะอยู่ที่
อย่างน้อยก็ให้ห่างจากสถานที่เยือกแข็ง ความเร็วธรณีประตูและระยะทางที่กำหนด
อาจแตกต่างกันไปตามเวอร์ชันซอฟต์แวร์”
โหมดไม่คงที่ได้รับการออกแบบสำหรับใช้กับซอฟต์แวร์นำทางบนถนน ซึ่งมักจะสแน็ปช็อต
ตำแหน่งที่รายงานไปยังถนนที่ใกล้ที่สุดภายในรัศมีความไม่แน่นอนบางส่วน คุณน่าจะ
ต้องการปิดการนำทางแบบคงที่สำหรับคนเดินเท้า เนื่องจากมีแนวโน้มที่จะรายงานความเร็ว
ศูนย์และตำแหน่งเปลี่ยนในการกระโดดขนาดใหญ่
P
(โหมดตรงเท่านั้น) สลับโหมดการแสดงพารามิเตอร์การนำทาง สลับระหว่างปกติ
จอแสดงผลและพารามิเตอร์การนำทางที่เลือกจาก MID 19 รวมถึง
บิตการนำทางแบบคงที่สลับโดยคำสั่ง 'M'
ในการตีความสิ่งที่คุณเห็น คุณจะต้องมีสำเนาของ SiRF Binary Protocol Reference
คู่มือ.
คุณ-blox สนับสนุน
ข้อมูลส่วนใหญ่เป็นข้อมูลดิบจาก GPS ช่องที่ขีดเส้นใต้จะได้มาจากการแปลจาก
พิกัด กฟผ. 1PPS คือนาฬิกาแล็กตามปกติ ไม่มีคำสั่งพิเศษตามประเภท
ใช้ gpsmon ออนไลน์โดยใช้บริการ onworks.net