นี่คือคำสั่ง gpsctl ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS
โครงการ:
ชื่อ
gpsctl - ควบคุมโหมดของ GPS
เรื่องย่อ
จีพีเอส [-h] [-b | -n] [-x ควบคุม] [-e] [-f] [-l] [-s ความเร็ว] [-NS ประเภทอุปกรณ์] [-NS]
[-NS ระดับการดีบัก] [-วี] [พอร์ตอนุกรม]
DESCRIPTION
gpsctl สามารถสลับ GPS สองโหมดระหว่าง NMEA และโหมดไบนารีของผู้ขาย นอกจากนี้ยังสามารถ
ใช้เพื่อตั้งค่ารับส่งข้อมูลของอุปกรณ์ หมายเหตุ: อุปกรณ์บางเครื่องเท่านั้นที่มีความสามารถเหล่านี้
หากคุณมี GPS เพียงเครื่องเดียวที่ต่ออยู่กับเครื่องของคุณ และ gpsd กำลังทำงานอยู่ แสดงว่าไม่ใช่
จำเป็นต้องระบุอุปกรณ์ gpsctl ทำงานผ่าน gpsd ซึ่งจะระบุตำแหน่ง
สำหรับคุณ
เมื่อ gpsd ไม่ทำงาน จำเป็นต้องใช้ข้อมูลจำเพาะของอุปกรณ์ และคุณจะต้อง
ทำงานเป็นรูทหรือเป็นสมาชิกของกลุ่มที่เป็นเจ้าของอุปกรณ์เพื่อให้มีสิทธิ์เขียน
ไปที่อุปกรณ์ ใน Unix หลายรุ่น กลุ่มการเป็นเจ้าของจะมีชื่อว่า 'dialout'
โปรแกรมยอมรับตัวเลือกต่อไปนี้:
-b
ใส่ GPS ลงในโหมดเนทีฟ (ไบนารี)
-c
เปลี่ยนรอบเวลาของ GPS หน่วยเป็นวินาที หมายเหตุ GPS ส่วนใหญ่มีวงจรคงที่
เวลา 1 วินาที
-e
สร้างแพ็กเก็ตจากอาร์กิวเมนต์อื่นที่ระบุและส่งไปยังเอาต์พุตมาตรฐาน
แทนอุปกรณ์ สวิตช์นี้สามารถใช้กับ -t ตัวเลือกโดยไม่ระบุ a
อุปกรณ์. หมายเหตุ: ข้อมูลแพ็กเก็ตสำหรับต้นแบบไบนารีจะเป็นแบบดิบ ไม่ใช่แบบ ASCII ใน
อย่างไรก็ตาม.
-f
บังคับการเข้าถึงระดับต่ำ (ไม่ผ่าน daemon)
-l
แสดงรายการตารางที่แสดงสวิตช์ตัวเลือกที่สามารถนำไปใช้กับประเภทอุปกรณ์และ
ทางออก
-n
วาง GPS ลงในโหมด NMEA
-s
ตั้งค่าอัตราบอดที่ GPS ส่งแพ็กเก็ต
ใช้ตัวเลือกนี้ด้วยความระมัดระวัง บน USB และ Bluetooth GPSes ก็เป็นไปได้เช่นกันสำหรับ
การตั้งค่าโหมดซีเรียลล้มเหลวเนื่องจากชิปอะแดปเตอร์ซีเรียลไม่รองรับ
โหมดที่ไม่ใช่ 8N1 หรือเนื่องจากเฟิร์มแวร์ของอุปกรณ์ไม่ซิงโครไนซ์ซีเรียลอย่างถูกต้อง
ชิปอะแดปเตอร์ที่มี UART บนชิปเซ็ต GPS เมื่อความเร็วเปลี่ยนแปลง ความล้มเหลวเหล่านี้
สามารถแขวนอุปกรณ์ของคุณ อาจต้องใช้วงจรพลังงาน GPS หรือ (ในกรณีร้ายแรง)
ถอดแบตเตอรี่สำรอง NVRAM ออกทางกายภาพ
-t
บังคับประเภทอุปกรณ์
-x
ส่งสตริงควบคุมที่ระบุไปยัง GPS gpsctl จะให้ส่วนหัวของแพ็กเก็ตและ
ตัวอย่างและการตรวจสอบตามความเหมาะสมสำหรับประเภทแพ็คเก็ตไบนารีและการตรวจสอบใด ๆ
และต้องมีตัวอย่างสำหรับประเภทแพ็กเก็ตข้อความ (คุณต้องใส่ $ for . นำหน้า
แพ็กเก็ต NMEA) เมื่อส่งไปยังอุปกรณ์ UBX สองไบต์แรกของสตริง
ที่ให้มาจะกลายเป็นคลาสและประเภทข้อความ และส่วนที่เหลือจะเป็นส่วนของข้อมูล เมื่อไหร่
ส่งไปยังอุปกรณ์ Navcom NCT หรือ Trimble TSIP ไบต์แรกจะถูกตีความว่าเป็น
รหัสคำสั่งและส่วนที่เหลือเป็นเพย์โหลด เมื่อส่งเครื่องราศี XNUMX ตัวแรก
ไบต์ถูกใช้เป็น ID ข้อความประเภท little-endian short และส่วนที่เหลือเป็น
เพย์โหลดเป็นคู่ไบต์ตีความว่าเป็น short-endian short สำหรับการสนับสนุนอื่น ๆ ทั้งหมด
GPS แบบไบนารี (รวมถึง SiRF) สตริงจะถูกนำมาเป็นข้อความทั้งหมด
น้ำหนักบรรทุกและห่อด้วยไบต์ส่วนหัว ตัวอย่าง และเช็คซัมที่เหมาะสม สไตล์ซี
แบ็กสแลช Escape ในสตริง โดยเฉพาะอย่างยิ่ง \xNN สำหรับเลขฐานสิบหก จะถูกตีความ
นอกจากนี้ \e จะถูกแทนที่ด้วย ESC สวิตช์นี้หมายถึง -f.
-T
เปลี่ยนการหมดเวลาสุ่มตัวอย่าง ค่าเริ่มต้นคือ 8 วินาที ซึ่งน่าจะเพียงพอเสมอ
เพื่อรับแพ็กเก็ตการระบุตัวตนจากอุปกรณ์ที่เปล่งออกมาในอัตราปกติ 1 ต่อ
ที่สอง
-R
ลบส่วนหน่วยความจำที่ใช้ร่วมกันของ GPSD ที่ใช้สำหรับการส่งออก SHM ปกติตัวเลือกนี้จะ
เป็นที่สนใจของนักพัฒนา GPSD เท่านั้น
-h
แสดงการใช้งานโปรแกรมและออก
-D
ตั้งค่าระดับของข้อความดีบัก
-V
แสดงเวอร์ชันของโปรแกรมและออก
อาร์กิวเมนต์ของตัวเลือกการบังคับ -t, ควรเป็นสตริงที่บรรจุอยู่ในทุกประการ
หนึ่งในชื่อไดรเวอร์ที่รู้จัก สำหรับรายการ ทำ จีพีเอส -l.
การบังคับประเภทอุปกรณ์ทำงานแตกต่างกันบ้างขึ้นอยู่กับว่าเครื่องมือนี้เป็น
จะผ่านภูตหรือไม่. ในโหมดระดับสูง หากอุปกรณ์ที่ daemon เลือกสำหรับ
คุณไม่ตรงกับไดรเวอร์ที่คุณระบุ gpsctl จะออกพร้อมกับคำเตือน (นี่อาจจะเป็น
มีประโยชน์ในสคริปต์)
ในโหมดระดับต่ำ หากอุปกรณ์ระบุว่าเป็น NMEA ทั่วไป ให้ใช้ไดรเวอร์ที่เลือก
แทนที่. ซึ่งจะเป็นประโยชน์หากคุณมีอุปกรณ์ GPS ที่เป็นประเภทที่รู้จักซึ่งอยู่ในโหมด NMEA
และไม่ตอบสนองต่อการสอบสวน (ตัวเลือกนี้เดิมใช้สำหรับพูดคุยกับ
ชิป SiRFStar I ซึ่งไม่ตอบสนองต่อโพรบ SiRF ID ปกติ)
หากไม่มีตัวเลือกใดๆ โปรแกรมจะแสดงข้อความระบุประเภท GPS ของ
อุปกรณ์ที่เลือกและออก
การดำเนินการรีเซ็ต (-r) ต้องยืนอยู่คนเดียว อื่น ๆ สามารถรวมกันได้ หลายตัวเลือกจะเป็น
ดำเนินการตามลำดับนี้: การเปลี่ยนแปลงโหมด (-b และ -n) ก่อน การเปลี่ยนแปลงความเร็ว (-s) วินาที และ
control-string ส่ง (-c) สุดท้าย
และพวกเรา ตัวแปร
โดยการตั้งค่าตัวแปรสภาพแวดล้อม GPSD_SHM_KEY, คุณสามารถควบคุมค่าคีย์ที่ใช้ในการ
กำหนดเซ็กเมนต์หน่วยความจำที่ใช้ร่วมกันที่ลบออกด้วยตัวเลือก -R นี้จะเป็นประโยชน์เป็นหลัก
เมื่อแยกอินสแตนซ์ทดสอบของ gpsd ออกจากอินสแตนซ์ที่ใช้งานจริง
ตัวอย่าง
จีพีเอส /dev/ttyUSB0
ความพยายามที่จะระบุอุปกรณ์บนอุปกรณ์อนุกรม USB 0 หมดเวลาหลังจากค่าเริ่มต้น
จำนวนวินาที การเพิ่ม -f จะบังคับการเข้าถึงระดับต่ำและปราบปรามปกติ
ร้องเรียนเมื่อเครื่องมือนี้ไม่พบ GPSD ที่จะทำงาน
gpsctl -f -n -s 9600 /dev/ttyUSB0
ใช้การทำงานระดับต่ำ (ไม่ผ่านอินสแตนซ์ gpsd) เพื่อเปลี่ยน GPS เป็น NMEA
โหมดที่ 9600bps. เครื่องมือจะระบุประเภท GPS เอง
ใช้ gpsctl ออนไลน์โดยใช้บริการ onworks.net