Leica Infinity vs CHC Geo Office
เนื่องจากตอนที่สองผมได้นำ Leica Geo Office (LGO) มวยแทนที่อายุมากแล้วมาขึ้นเวที ตอนนี้ได้ Leica Infinity ต่อไปจะขอเรียกย่อๆว่า LI ที่สดกว่าขึ้นมาประกบกับ CHC Geo Office จากค่ายจีนแผ่นดินใหญ่เรียกย่อๆว่า CGO ที่มาปักหลักอยู่ในไทยนานพอสมควรแล้ว ว่าผลลัพธ์จะออกมาอย่างไร
CHC Geo Office
สำหรับผมแล้วที่ผ่านมาเป็นแฟนคลับของ Trimble Business Center (TBC) มานานจะคุ้นเคยกันอยู่ จำได้ว่าช่วงนั้นทางผู้ขายและ technical support ที่เป็นพรรคพวกเอา TBC รุ่น 3.00 มาให้ลองใช้พร้อมมี dongle ที่เป็นฮาร์ดล๊อคมาด้วยก็เลยติด TBC ตั้งแต่นั้นเป็นต้นมา ส่วนแนวทางของ CGO การออกแบบโปรแกรม ใช้ user interface ของ TBC เป็นต้นแบบ จึงมีความคล้ายคลึง ทำให้ผู้ใช้สามารถเปลี่ยนมาใช้งาน CGO ได้อย่างไม่ยากเย็นนัก และ CGO ได้จัดหมวดหมู่คำสั่งได้ดีกว่า TBC ในภาพรวมตอนนี้ CGO ใช้งานง่ายกว่ามาก
Leica Infinity
LI นั้นออกแบบโปรแกรมมาได้สวยงามมาก ลักษณะการใช้งานถ้าเพิ่งมาเริ่มใช้ และมานั่งแกะกันสดๆ โดยไม่อ่านคู่มือหรือดูคลิปยูทูปมาก่อน (ตัวอย่างที่ไม่ดีนะครับ แต่ผมคุ้นเคยกันแบบนี้ ต้องขออภัยครับ แต่ในความไม่ดีก็มีความดีอยู่บ้าง คือได้รู้ว่าโปรแกรมไหนใช้งานได้ยากง่ายกว่ากัน) อาจจะมีการ สตั๊นท์งงงันพอสมควร ตัวอย่างเช่นการกำหนดระบบพิกัด ในหน้าแรก ที่เป็นหน้าว่างเปล่าที่ทำผมนั่งงงแบบคนตาบอดคลำทางลองถูกลองผิด ส่วนใหญ่จะผิดมากกว่าถูก ประมาณสิบนาทีถึงกำหนดได้ ถ้า CGO เป็นดนตรีป๊อปร็อคที่แนวทางดนตรีผู้ฟังคุ้นหูแล้ว ส่วน LI ออกไปทางดนตรีแจ๊สวงใหญ่ที่ต้องปีนกระไดฟังกันเลยทีเดียว แต่นั่นคือภาพฉาบฉวยยามแรกพบ เราจะมาเจาะกันลึกๆต่อไป
ส่วนใหญ่แนวทางของ CGO หรือ TBC จะกำหนดระบบพิกัดโลกให้มาด้านซ้ายเฉพาะตัวหลักๆ ให้เราเลือก แล้วค่อยเลือกคลิกไล่ลงมา หรือจะป้อนระบบพิกัดที่ EPSG รองรับก็ไปได้เร็วเช่นป้อนหมายเลข 32647 ผมจำได้เลยว่าเป็น UTM Zone 47N บน WGS84
กรณีศึกษา
เคสรังวัดโครงข่าย GNSS ที่จะนำเสนอต่อไปเป็นกรณีศึกษา
- จำนวนหมุดทั้งหมด 5 หมุด
- เครื่อง GNSS ทั้งหมด 5 เครื่อง โดยใช้ CHCNav รุ่น i73+
- หมุดควบคุมคือหมุดหลักฐานที่มีค่าพิกัดและค่าระดับ 2 หมุด
- หมุด 2 หมุดที่ต้องการ verify คือตรวจสอบว่าสภาพพร้อมจะใช้งานหรือไม่
- สร้างและรังวัดหมุดใหม่อีก 1 หมุด
- การรังวัดใช้เป็นแบบ double sessions แต่ละคาบใช้เวลา 1 ชั่วโมง เมื่อเสร็จคาบแรกจะมีการยกขาตั้งกล้องแล้วตั้งใหม่ วัดความสูง HI กันใหม่
การออกแบบโครงข่าย GNSS
ฉบับนี้เหมือนเดิมเราจะทวนกันเรื่องการออกแบบโครงข่าย GNSS กันก่อนด้วยเส้นฐานอิสระที่จะมาประกอบกันเป็นวงหรือลูป เพื่อให้สามารถนำไปคำนวณ Loop closure ได้ ที่จะสามารถนำไปประเมินคุณภาพ (QC) จากงานรังวัดโครงข่าย GNSS ได้ โดยเปรียบเทียบจากข้อกำหนดของ FGCC
เมื่อจำนวนเครื่องเท่ากับ 5 เครื่อง (N = 5) เส้นฐานอิสระตามสูตรจำนวน = N – 1 แสดงว่ามีเส้นฐานอิสระ = 5 -1 = 4 เส้น ดังนั้นการออกแบบเส้นโครงข่าย GNSS จะลากเส้น 4 เส้นก่อนสำหรับการรังวัดคาบแรก (session #1) และเส้นที่ลากต้องไม่มาปิดตัวเอง ตามรูปลากเส้นด้วยสีฟ้าก่อน 4 เส้นเพื่อเชื่อมหมุดดังต่อไปนี้ ST34N -> ST35 -> VTBU -B-2017 -> VTBU-A-2020 -> DS01
การรังวัดคาบที่สอง (session #2) ลากได้ 4 เส้นเช่นกัน มาถึงตอนนี้เราต้องการ loop ให้เกิดเป็นวงปิดมากที่สุด ดังนั้นจะไม่มีการลากทับสีฟ้าที่ลากมาก่อนนี้โดยเด็ดขาด ตามรูปลากเส้นด้วยสีแดง สุดท้ายจะได้วงปิด (loop closure) ที่ประกอบด้วยเส้นฐานอิสระต่างคาบกัน จำนวน 4 วง หมายเหตุวงปิดส่วนใหญ่เราจะพิจารณาจากเส้นฐาน 3 เส้นเท่านั้น ไม่นิยม 4 เส้นหรือมากกว่านั้น สังเกตว่าวงที่ได้จะประกอบไปด้วยสีฟ้าสองเส้นสีและมีสีแดงอักหนึ่งเส้นเป็นตัวปิด หรือถ้าสีแดงสองเส้นจะมีสีฟ้าหนึ่งเส้นปิด
จำนวนเส้นฐานทั้งหมดต่อหนึ่งคาบการรังวัด = N * (N-1)/2 = 5 * (5-1)/2 = 10 เส้น ดังนั้นการรังวัดหนึ่งคาบจะเกิดเส้นฐานทั้งหมด 10 เส้น มีเส้นฐานอิสระ 4 เส้นที่เหลือคือ 6 เส้นเป็นเส้นฐานที่ไม่อิสระ เมื่อรังวัดเสร็จสองคาบ จะมีเส้นฐานอิสระ 8 เส้น (สีฟ้า 4 เส้นและสีแดง 4 เส้น) และมีเส้นฐานไม่อิสระรวมเท่ากับ 6 + 6 = 12 เส้น
การกำหนดเส้นฐานอิสระรูปแบบอื่นๆ
การลากเส้นฐานอิสระ ไม่ได้กำหนดตายตัวว่าจะต้องลากแบบผม จะมีรูปแบบอื่นๆที่สามารถลากได้หลากหลาย ตัวอย่างเช่นรูปด้านล่าง
เมื่อรังวัดเสร็จแล้วจะมีเส้นฐานรวมทั้งหมดสองคาบ 20 เส้น จะต้องไปทำการ disabled baseline เส้นฐานไม่อิสระ ซึ่ง CGO และ LI จะมีวิธีการต่างกัน ดังที่ผมจะได้เสนอในลำดับต่อไป
ข้อกำหนด Loop Closure ของ FGCC
สำหรับข้อกำหนดมาตรฐานที่นิยมใช้อ้างอิงกันคือ FGCC 1989 สำหรับงานก่อสร้างทางวิศวกรรมทั่วๆไป นิยมกำหนดความคลาดเคลื่อนไม่เกิน 10 ppm หรือเทียบได้กับอัตราส่วนคือ 1 : 100000 ่ซึ่งเพียงพอกับงานก่อสร้างทั่วๆไป
ถ้าเรารังวัดตัวอย่างเช่นคาบเดียวโดยไม่มีการออกแบบเรื่องเส้นฐานอิสระและวงปิด เมื่อคำนวณแล้วจะไม่มีทางทราบคุณภาพงานเลยว่าได้แค่ไหน ซึ่งเป็นสุ่มเสี่ยงว่าค่าพิกัดที่ได้มาใช้งาน อาจจะแฝงไปด้วย error ที่มากเกินจะยอมรับได้ การออกแบบเส้นฐานอิสระเพื่อกำหนดวงปิดและตรวจสอบคุณภาพของงานรังวัด ทั้งนี้เพื่อจะเป็นการยกมาตรฐานการรังวัด GNSS ต่อไป
ขั้นตอนการคำนวณ
ขั้นตอนการคำนวณโครงข่าย GNSS หลายโปรแกรมจะมีขั้นตอนคล้ายๆกันดังนี้
ต่อไปผมจะนำเสนอการใช้งานด้วยข้อมูลรังวัดกรณีศึกษาข้างต้นด้วยข้อมูลเดียวกัน ผ่านทางโปรแกรม CGO และ LI โดยแยกเนื้อหาการใช้งานแต่ละโปรแกรม ไม่รวมกันเหมือนบทความตอนที่สอง แล้วสุดท้ายจะนำผลลัพธ์มาเปรียบเทียบกัน รวมถึงสรุปความยากง่ายในการใช้งานแต่ละโปรแกรมด้วย
การคำนวณโครงข่าย GNSS ด้วย Leica Infinity
เราจะเริ่มต้นด้วย Leica Infinity ในคู่มือจะเรียกชื่อย่อว่า “Infinity” ส่วนผมจะเรียกย่อกว่านั้นอีกคือ LI เมื่อเปิด LI มาแบบไม่เคยใช้มาก่อนจะเห็นหน้าว่างๆดังนี้ ผมตั้งธีมมืดไว้ รูปแบบ UI ของ LI นั้นเป็นระเบียบสวยงาม แยกหมวดหมู่คำสั่งไว้ดี
การตั้งระบบพิกัด (Coordinate Systems Configuration)
ผมขอลัดนิ้วมือมาตั้งระบบพิกัดที่ประเทศไทยเราใช้งานกันก่อน โดยคลิกที่ 1 “Coordinate Systems” จากนั้นจะเริ่มสร้างโครงการรังวัดใหม่ (New Project) ตามลำดับ
จะเห็นพาเนลด้านซ้ายเลื่อนลงมาที่ Tools > Coordinate System คลิกที่ Manager
จะมีหน้าต่างขึ้นมา จะสังเกตว่าพาเนลด้านซ้ายไม่มีระบบพิกัดโลกต้นแบบให้เราเลือกเพื่อที่จะมาแก้ไข ผมมางงหน้านี้นานมาก เพราะผมเลือก New Coordinate System ก่อน แต่พบว่าไปไม่ได้เนื่องจากไม่มี Projection ให้เลือก
สร้าง Geoid Model และ Projection
วิธีการที่ถูกต้องให้สร้าง Geoid Model และ Projection ก่อน ส่วน Ellipsoid สามารถเลือกได้จากรายการ เริ่มต้นจาก Geoid Model ผมแนะนำให้ไปดาวน์โหลดได้ที่หน้า Download ของบล็อกผม เลือก tgm2017_s1200.gem แล้วก็อปปี้ไปเก็บไว้ในโฟลเดอร์ที่หาได้สะดวก
เลือกไฟล์จากโฟลเดอร์ที่เก็บไฟล์ยีออยด์ไว้ แล้วคลิกสร้าง “Create” จากนั้นยีออยด์ TGM2017 จะปรากฎในหน้าด้านซ้าย
ต่อไปจะสร้าง Projection ซึ่งวิธีการคล้ายๆกันกับสร้าง Geoid Model เราจะสร้างเส้นโครงแผนที่ที่ใช้กันอยู่ในประเทศไทยคือ UTM Zone 47N และ UTM Zone 48N
ต่อไปสร้าง Coordinate System โดยเลือก Geoid Model และ Projection ที่เราสร้่างไว้ก่อนหน้านี้ และเลือก Ellipsoid เป็น WGS1984 เนื่องจากประเทศไทยใช้เส้นโครงแผนที่แบบยูทีเอ็มสองโซนคือโซน 47 และโซน 48 ดังนั้นผมสร้างระบบพิกัดสำหรับประเทศไทยแยกตามโซนตั้งชื่อ “Thailand WGS84 UTM Zone 47N” และ “Thailand WGS84 UTM Zone 48N” ตามลำดับ ตอนนี้ยังอยู่ที่พาเนล Tools > Antenna ผมจะใช้ NGS20 Absolute เพราะพบว่ามีข้อมูลอัพเดทมากที่สุด
สร้าง New Project
เมื่อเตรียมระบบพิกัดแล้วก็พร้อมที่จะไปต่อ ขั้นต่อไปคือสร้าง New Project เลือกระบบพิกัดที่เราสร้่างไว้ ตอนนี้เลือกเป็น “Thailand WGS84 UTM Zone 47N” แล้วค่อยมาเลือกหน่วย เลือกที่จัดเก็บ project ตรงนี้ผมเลือก default จากนั้นคลิกที่ “Create…” ก็จะสร้างโปรเจคใหม่ พร้อมที่จะนำเข้าข้อมูล (Import) ในลำดับถัดไป
นำเข้าข้อมูล (Import)
เมื่อสร้างระบบพิกัดสำหรับใช้งานเสร็จแล้วจะกลับมาที่หน้า Home ของ LI ตอนนี้ให้คลิกเพื่อเปลี่ยนค่าพิกัดของ Map ให้ตรงกับงานของเรา ถ้าไม่คลิกตรงนี้จะเห็นแต่ความว่างเปล่า เอาข้อมูลอะไรเข้าก็ไม่ขึ้น จากนั้นคลิก Import เพื่อนำเข้าข้อมูล เข้าโฟลเดอร์ที่เก็บไฟล์ข้อมูล Rinex เลือกไฟล์ ทำอย่างนี้ทุกๆหมุด ในที่นี้รังหมุด 5 หมุด จำนวนสองคาบ จะมีชุดไฟล์ 10 ชุด
แก้ไขชื่อหมุด
ในขณะจัดเก็บไฟล์ Rinex ขณะทำการรังวัด เมื่อเริ่มคาบใหม่บางครั้งอาจจะป้อนชื่อหมุดไม่เหมือนเดิม เมื่อนำเข้าแล้วโปรแกรมจะเห็นเป็นหมุดต่างกัน วิธีการแก้ไขโดยการแก้ชื่อหมุดให้ตรงกัน โปรแกรมจะทำการ merge point ให้
การประมวลผลเส้นฐาน (Baseline Processing)
เมื่อนำข้อมูลเข้ามาเรียบร้อยแล้ว ก่อนจะคำนวณจะต้องตั้งค่าก่อน ให้คลิก (1) ที่ “Processing” เพื่อที่จะให้ริบบอนไอคอนขึ้นมา แล้วคลิก (2) เพื่อจะเลือก antenna เป็น “NGS 20 Absolute” เลือก (3) “Inspector” เลือก (4) “GNSS” แล้วเลือก (5) “GNSS Intervals”
คลิกที่ “View” จะเห็นโปรแกรมลากเส้นเชื่อมระหว่างหมุดให้ ลองคลิกเส้นดูจะเห็น properties ขึ้นมาดังรูป
การตั้งค่า (Settings)
การตั้งค่าสำหรับการคำนวณ ผมเลือกเป็นค่าปริยายทั้งหมด
จับคู่เส้นฐานอิสระ
เนื่องจาก LI จะไม่มีการจับคู่เส้นฐานมาใหอัตโนมัติ ข้อดีคือเราไม่ต้องการกังวลว่าจะต้อง disable เส้นฐานไม่อิสระ จะเริ่มจับคู่แรกคือเส้นฐานระหว่างหมุด ST-34N และ ST-35 เมื่อคลิกเลือกหมุด ST-34N แล้วไปคลิกที่ไอคอน Rover สีเขียว จากนั้นคลิกที่หมุด ST-35 แล้วไปคลิกที่ไอคอน Reference สีแดง หมายเหตุสามารถสลับสีกันได้โดยไม่มีผลอะไร ตอนนี้เราได้จับคู่เส้นฐานแล้ว แต่ยังไม่เรียบร้อย จากนั้นทำการคลิกไอคอน Process โปรแกรมจะพามาที่พาเนล GNSS processing results จากนั้นให้ดูสถานะผลการคำนวณว่า Phase Fixed หรือไม่ จากคอลัมน์ Solution type คลิกขวาเลือก store เพื่อให้โปรแกรมจัดเก็บ baseline ที่เราคำนวณนี้ไว้
กลับมาที่พาเนล GNSS intervals อีกเที่ยว เราจะล้างสถานะ Rovers & Reference ที่เราจับคู่ไปแล้ว ด้วยการคลิก Clear all selections ตอนนี้พร้อมที่จะจับคู่เส้นฐานอิสระคู่ที่สองต่อไป
สถานะเส้นฐานอิสระที่คำนวณและจัดเก็บแล้ว จะมาแสดงผลที่พาเนล All GNSS Observations เมื่อวนทำจนครบเส้นฐานอิสระ 8 เส้น ครบสองคาบการรังวัด (double sessions)
การตรวจสอบความสูง HI
ผมได้เช็คว่า LI นั้นมี Antenna Model ของ CHCNav i73+ อยู่ และการจะไปคำนวณข้ามค่ายนั้นจะต้องแปลงข้อมูลเป็น Rinex ข้อควรที่ระวังคือความสูง HI เพราะแต่ละยี่ห้อจะมีระยะต่างๆไม่เหมือนกัน ในที่นี้เมื่อใช้โปรแกรมที่มากับอุปกรณ์ CHCNav i73+ แปลงข้อมูลดิบ (*.hcn) ไปเป็น Rinex โปรแกรมจะแปลงความสูง Vertical ไปที่ ARP (Antenna Reference Point) ซึ่งก็คือ Bottom of antenna mount ไม่ได้บวก offset ไปถึง APC ที่เราต้องการ
เมื่อสอบถามระยะ offset ของ APC ไปที่ support ของ CHCNav i73+ ที่ความถี่ L1 และ L2 ได้ระยะ 84.24 มม. และ 69.55 มม. ตามลำดับ และมีค่าเฉลี่ยที่ 76.90 มม. ดังนั้นเมื่อนำข้อมูล Rinex เข้า LI จะต้องมีการใส่ค่า Carrier Offset ไปที่ 0.0769 เมตร
การแก้ไข HI ของ LI โดยการป้อน Carrier Offset = 0.0769 เพื่อให้ค่า ARP Height ที่ได้จากไฟล์ Rinex ปรับมาที่ APC Height ได้ถูกต้อง
สุดท้าย LI จะได้ค่าความสูงจริง (Real antenna phase center height)
การคำนวณวงปิด (Loop closure)
การคำนวณวงปิดนั้นมีทั้งแบบสองมิติ 2D คือไม่นำค่าระดับมาคิดด้วย และแบบสามมิติ 3D คือนำค่าระดับมาคิดด้วย การคำนวณวงปิดในแบบสามมิติ นั้นต้องการความสูง Height of Instrument (HI) ของเครื่อง GNSS ปัญหาที่ผมประสบมาคือการวัดความสูง HI อาจจะมีการวัดผิดแล้วตรวจสอบยาก ดังนั้นสมัยใหม่ มีกล้องถ่ายรูปบนโทรศัพท์มือถือและบังคับให้ช่างสำรวจได้ถ่ายรูปไว้เป็นหลักฐาน ถึงจะอ่านผิดแต่ก็ยังมีรูปให้ตรวจสอบได้ภายหลัง
ต่อไปจะไปที่ริบบอน Adjustment คลิกตามดังรูป แล้วจะเข้าไปคลิกไอคอน Settings ก่อน ตั้งค่าความมั่นใจ (Confidence Levels) ไปที่ 95% จากนั้นจะตั้งค่าสำหรับ GNSS คลิกที่ไอคอนใกล้ๆกัน แล้วตั้งค่า Test criteria ตามลำดับ
เมื่อตั้งค่าทั้งสามเสร็จแล้ว จากนั้นคลิกไปที่ไอคอนคำนวณวงปิด เลือก 3D เมื่อคำนวณเสร็จแล้ว LI จะเปลี่ยนหน้าจอมาที่พาเนล Computed loop results แสดงสถานะว่าเป็น 3D สังเกตว่ามี observations จำนวน 8 ก็คือเส้นฐานอิสระที่เราเลือกไว้
แสดงรายงานผลการคำนวณวงปิด (Loop closure report)
เมื่อคำนวณวงปิดแล้ว สิ่งที่จะต้องพิจารณากันต่อคือตรวจสอบคุณภาพของงานจากวงปิด (Loop closure) คลิกที่ไอคอน Report แล้วเลือก Loops and Misclosures Report ดังรูป
จากนั้น LI จะเรียก Report Manager ออกมา แต่พบว่าแสดงตัวหนังสือขนาดเล็กมาก ให้คลิกไปที่ไอคอน Browser เพื่อไปดูรายงานที่เว็บบราวเซอร์แทน เห็นตัวเลข W-Test ขึ้นมาก็ยังไม่กังวลใจมากนักเพราะค่า ppm ออกมาไม่เกิน 10 ppm ตามเกณฑ์ที่เราวางไว้
ผลของการคำนวณวงปิด (Loop closure) ขอสรุปดังตาราง
Loop No | Misclosure (m) | Distance (m) | PPM | Ratio |
---|---|---|---|---|
Loop 1 | 0.006 | 5422.997 | 1.2 | 1/855522 |
Loop 2 | 0.014 | 6507.319 | 2.1 | 1/478363 |
Loop 3 | 0.020 | 10419.154 | 1.9 | 1/526373 |
Loop 4 | 0.030 | 11961.754 | 0.3 | 1/3554897 |
การคำนวณ Network Adjustment
เมื่อผลลัพธ์ของการคำนวณวงปิดเข้าเกณฑ์และผ่านแล้ว จะทำการคำนวณที่สำคัญในลำดับต่อไปคือการคำนวณค่าพิกัดและระดับของหมุดที่ต้องการ โดยการ Fixed หมุดควบคุมที่ทราบค่าพิกัดและระดับโดยการป้อนแบบแมนวลหรือจะนำเข้าไฟล์ค่าพิกัดและระดับของหมุดควบคุมแล้วแต่ความสะดวก ในที่นี้ผมจะเลือกนำเข้าเป็นไฟล์ กลับไปที่ริบบอน Home คลิกที่ไอคอน Import แล้วเบราส์ไปที่ไฟล์หมุดควบคุม รูปแบบที่ผมเตรียมไว้คือ csv คั่นคอลัมน์ด้วยเครื่องหมายคอมมา แต่เนื่องจากเป็นครั้งแรกโปรแกรมยังไม่รู้จักรูปแบบนี้เราต้องทำการสร้างรูปแบบโดยคลิกไปที่ New… แล้วป้อนชื่อในเคสผมคือป้อน PNEZ (comma) จากนั้นตั้งค่าต่างๆตามรูป สุดท้ายคลิกที่ Import
ถ้านำเข้าไฟล์สำเร็จ LI จะสวิชท์หน้าจอมาที่ Adjustment ให้ติ๊กเครื่องหมายถูกตามรูปให้เป็น Fixed 3D
ตั้งค่า Coordinate System
ผู้อ่านอาจจะสงสัยว่าระบบพิกัดตั้งไปแล้วทำไมต้องตั้งอีก อันนี้คือจุดสลบที่ผมเจอมาก่อน ถ้าไม่ได้ตั้ง เมื่อคลิกไอคอน Run Full 3D Adjusment ผมต้องพบกับความประหลาดใจเพราะเกิด Error ฟ้องว่า Error, Adjusment cannot continue, Not enough observations available คือฟ้องว่าข้อมูลไม่พอที่จะทำการคำนวณ ผมทราบดีว่าข้อมูลที่จะคำนวณนั้นมีมากเกินพอ
แต่การมาฟ้อง error แบบนี้ทำให้ผู้ใช้อย่างผมเอาหัวไปโขกกำแพงเหล็กหลายครั้ง สุดท้ายผ่านด่านนี้ไม่ได้ ต้องไปไล่ดูคลิปยูทูปที่เป็นทางการของ LI พร้อมกับเอะใจ ที่ในคลิปมีการตั้งค่า Coordinate system อีกครั้ง จึงทราบว่าระบบพิกัดในที่นี้น่าจะเป็นคนละความหมายที่ผมเข้าใจ เมื่อตามไปอ่านในคู่มือที่เป็น pdf ระบุว่า เนื่องจาก LI โปรแกรมนี้ได้ผสานโมดูลอุปกรณ์หลายอย่างเข้าด้วยกันเช่น GNSS, TPS และ Leveling ดังนั้นการคำนวณ Network adjustment ในเบื้องต้นต้องการค่าพิกัดที่อ้างอิงถึงข้อมูลการรังวัด (observations) สำหรับการคำนวณครั้งนี้ได้ใช้ GNSS อย่างเดียวไม่ได้ใช้อุปกรณ์อย่างอื่น ดังนั้นระบบพิกัดจึงอ้างอิงไปถึงค่าพิกัดคาร์ทีเซียนที่อยู่บนทรงรี WGS84 ดังนั้นต้องเลือก “WGS84” ไม่ใช่ “Local grid”
เอาละเมื่อต้องการระบบพิกัดที่เกี่ยวข้องกับข้อมูลรังวัดแบบนี้ แต่ทำไม error ต้องฟ้องว่าข้อมูลรังวัดไม่เพียงพอ ผมเก็บความสงสัยนี้ไว้ต่อไป
ทำการตั้งค่า Coordinate System โดยเลือก “WGS84” ส่วน Height mode ปล่อยเป็น “Ellipsoid” ตามดีฟอลต์ไม่ต้องแก้ไข จากนั้นคลิก Run Full 3D Adjustment โปรแกรม LI จะทำการคำนวณให้เมื่อคำนวณเสร็จสิ้นแล้วคลิก Store Result
การสร้างรายงาน Network Adjustment
จากนั้นคลิกที่ไอคอน Report แล้วเลือก Network Adjustment Report เพื่อแสดงผลลัพธ์การคำนวณ Network adjustment
ผลลัพธ์ค่าพิกัดและระดับที่ปรับแก้แล้ว (Adjusted Coordinates)
จากรายงานของ Network adjustment จะมีค่าพิกัดและค่าระดับของหมุดที่เราต้องการ ถ้าผลลัพธ์การคำนวณวงปิดอยู่ในเกณฑ์และ ค่า error จาก Network adjustment ไม่มีหนักหนา ค่าพิกัดและค่าระดับของหมุดก็สามารถนำไปใช้งาน แต่เนื่องจากกรณีศึกษานี้ จะใช้การเดินระดับ (Leveling) แทนค่าระดับที่ได้จากการรังวัด GNSS ดังนั้นค่าระดับที่ได้จากการคำนวณจึงเป็นค่าระดับใช้ในการอ้างอิงเท่านั้น
ตอนท้ายๆบทความ ผมจะนำค่าพิกัดและระดับที่ได้จากการคำนวณของ LI ไปเปรียบเทียบกับ CGO และเปรียบเทียบกับค่าที่มีอยู่แล้วว่าจะสอดคล้องกันหรือไม่อย่างไร
การคำนวณโครงข่าย GNSS ด้วย CHC Geo Office
จากบทความตอนที่ 2 ได้นำเสนอการใช้งาน CGO มาพอสังเขป ในตอนนี้จะพยายามแสดงแง่มุมการใช้งานที่ตอนที่แล้วได้ละเลยหรือข้ามไป
สร้าง New Project
เมื่อเปิดโปรแกรมาครั้งแรกจะมาอยู่ที่หน้า Start หน้านี้เราสามารถสร้างโปรเจคใหม่ได้ หรือเลือกเปิดไฟล์โปรเจคที่สร้างไว้แล้ว การจะสร้างไฟล์โปรเจคใหม่ สามารถป้อนชื่อโปรเจคแล้วคอนเฟิร์ม
การตั้งคุณสมบัติของโครงการ (Project Property)
เนื่องจากโปรแกรมประมวลผล GNSS ทั้งหลายจะมีการตั้งค่า (settings) ต่างๆมากมาย ในส่วน CGO จะมีการจัดกลุ่มการตั้งค่าไว้ดี เป็นหมวดหมู่เข้าใจง่าย ในส่วนการตั้งค่าที่ไม่อยู่ในหมวดหมู่ที่เป็นลักษณะเฉพาะเช่นหมวดหมู่ประมวลผลเส้นฐาน (Baseline processing) , หมวดหมู่คำนวณปรับแก้โครงข่าย (Network adjustment) จะถูกจัดเข้ามาเป็นหมวดการตั้งค่าของโครงการหรือคุณสมบัติของโครงการ เช่น ข้อมูลพื้นฐานของโครงการ (Basic info.), ระบบพิกัด (Coordinate System), หน่วยและรูปแบบ (Unit/Format) และ ความละเอียดของจุดทศนิยม (Precision)
หลังจากคอนเฟิร์มสร้างโครงการใหม่เสร็จแล้ว โปรแกรม CGO พามาหน้า Project จากนั้นคลิกที่ Coordinate System เพื่อไปตั้งค่าระบบพิกัด นอกจากนั้นยังสามารถตั้งค่าอื่นๆได้จากการคลิกเปลี่ยนแท็ปเช่น ข้อมูลพื้นฐาน (Basic info.), หน่วยและรูปแบบ (Unit/Format), ความละเอียดจุดทศนิยม (Precesion)
สามารถตั้งค่าต่างๆได้อย่างง่ายๆ สำหรับแบบจำลองยีออยด์ (Geoid Model) ผมเลือกฟอร์แม็ตเป็น GTX สามารถเลือกเป็นอย่างอื่นได้เช่น Trimble GGF ต้องยอมรับว่า CGO เลือกรูปแบบจำลองยีออยดฺ์แทบจะทั้งหมดที่ใช้กันในทุกๆประเทศ
นำเข้าข้อมูล (Import)
ไฟล์ข้อมูลที่จะนำเข้าจะเป็นรูปแบบ Rinex โดยผมเก็บแยกเป็นไฟล์แต่ละจุดตั้งกล้อง 1 หมุดจะมีสองไฟลฺ์แยกเป็นรังวัดคาบแรกและคาบที่สอง ดังนั้นการรังวัด 5 หมุดจะมี 10 ไฟล์ และจัดเก็บอยู่ 10 โฟลเดอร์
การนำเข้าข้อมูลจะเบราส์ไปทีละโฟลเดอร์จนครบ 10 โฟลเดอร์ เมื่อเข้าไปในแต่ละโฟลเดอร์ ถ้าพยายามเลือกไฟล์มาทั้งหมด ทั้งไฟล์ observation และไฟล์ nav ซึ่งจะเก็บ ephemeris ของดาวเทียมแต่ละค่ายไว้ แต่พบว่า CGO เตือนว่าไม่สามารถอ่านไฟล์ได้
วิธีการเลี่ยง error นี้ทำการเลือกเฉพาะไฟล์ .??p ในที่นี้คือ .24p เพราะเป็นตัวเก็บไฟล์ ephemeris รวม (Mixed nav file) และเลือกไฟล์ observation คือ .??o ในที่นี้คือ .24o รวมสองไฟล์นี้ก็พอ
แก้ไขชื่อหมุด
ในขณะสำรวจรังวัดการป้อนหมุดผ่านคอนโทรลเลอร์บางครั้งอาจจะเผลอป้อนชื่อหมุดต่างกัน ชื่อหมุดจะถูกจัดเก็บอยู่ในไฟล์ rinex แต่ไม่ใช่ปัญหาใหญ่ สามารถเปลี่ยนชื่อหมุดให้ตรงกันได้
การตรวจสอบ HI
สิ่งที่จะต้องตรวจข้อมูลจากการรังวัดคือความสูงของอุปกรณ์ ในที่นี้ได้ใช้เครื่องรับสัญญาน GNSS ของ CHCNav i73+ จะมี instruction สำหรับการวัดความสูงดังนี้
ในการวัดในภาคสนามครั้งนี้จะใช้ขาตั้งกล้องและวัดเอียงซึ่งจะต้องป้อนข้อมูล HI ใน controller เป็น Center of bumber (Slant HI)
การตรวจสอบว่าข้อมูล HI ที่รังวัดมาจากภาคสนามถูกต้องสามารถตรวจได้ที่
การตั้งค่าสำหรับการประมวลผลเส้นฐาน (Baseline Configuration)
กอนจะประมวลเผลเส้นฐาน จะตั้งค่าก่อนเพื่อกำหนดการตั้งค่าต่างๆเช่นการแสดงผลเวลาของข้อมูลรังวัด การกำหนดเกณฑ์ของการคำนวณวงปิด เป็นต้น
การประมวลผลเส้นฐาน (Baseline Processing)
สำหรับ CGO จะต่างจาก LI ตรงที่เมื่อนำเข้าข้อมูลโปรแกรมจะจับคู่เส้นฐานให้อัตโนมัติ จากที่กล่าวไว้ต้นบทความ จะมีเส้นฐานรวมกันทั้งหมด 20 เส้น และจะต้องเลือกเส้นฐานอิสระจำนวน 8 เส้นตามที่เราได้วางแผนไว้แล้ว และที่เหลือ 12 เส้นเราจะ disable ให้หมด
แต่ปัญหาของ CGO ถ้ามีการนำเข้าข้อมูลครบทั้งสองคาบการรังวัด ในหน้า Baseline ไม่มีข้อมูล “Start time” และ “End time” มีแต่ข้อมูล “Observation Session” ที่แสดงช่วงเวลาของการรังวัดทำให้ไม่ทราบได้ว่าเส้นฐานไหนรังวัดคาบไหน เพื่อแก้ปัญหานี้ เราได้นำเข้าข้อมูลเพียงคาบแรกคาบเดียว มีเส้นฐานทั้งหมด 10 เส้น และจะเป็นเส้นฐานอิสระจำนวน 4 เส้น และ 6 เส้นที่เหลือคือเส้นฐานไม่อิสระที่จะต้อง disable ไว้
ส่วน Timeline สามารถดูได้ แต่ข้อมูลไม่ได้แสดงการเชื่อมโยงกับเส้นฐานแต่อย่างใด
ขั้นตอนการเลือกเส้นฐานอิสระ
ขั้นตอนแรกที่ผมเห็นว่าง่ายสุดคือทำการ disabled baseline ทั้งหมดก่อน แล้วค่อยมาเลือกเส้นฐานอิสระทีละเส้น เริ่มต้นด้วยการเลือกเส้นฐานมาทั้งหมดแล้วคลิกขวาเลือก Disable baselines
จากนั้นคลิกทีละเส้นฐานอิสระที่เราออกแบบไว้ เริ่มจากเลือก ST-35 และ ST-34N ก่อน แล้วคลิกขวาเลือก Enable baselines ทำแบบนี้ไปจนครบเส้นฐานอิสระ
ต่อไปจะนำเข้าข้อมูล Rinex สำหรับการรังวัดคาบที่สอง ทำการแก้ไขชื่อหมุด เมื่อเรียบร้อยแล้วจะได้เส้นฐาน 10 เส้นที่เพิ่มมาใหม่
จากนั้นทำการ Disable baselines ทั้ง 10 เส้น แล้วเลือกเส้นฐานอิสระจำนวน 4 เส้น เช่นเดียวกันกับวิธีการในคาบที่ 1 ที่กล่าวมาข้างต้น
เมื่อได้เส้นฐานอิสระจำนวน 8 เส้นตามที่ต้องการแล้วจะทำการประมวลผลเส้นฐาน (Baseline Processing) ถ้าผ่านจะได้สถานะ L1 Fix ตรงคอลัมน์ Solution ปัจจุบันเนื่องจากดาวเทียมนำหนในปัจจุบันมีอยู่จำนวนมาก ไม่เหมือนสมัยก่อนที่มีเฉพาะ GPS และ Glonass ทำให้คำนวณตรงนี้ผ่านยากมาก แต่ปัจจุบัน ถ้าไม่ไปตั้งใต้ต้นไม้ หรือมีสิ่งก่อสร้างบังครึ่งท้องฟ้า โอกาสผ่านสูงมาก 99.9%
การคำนวณวงปิด (Loop closure)
เมื่อทำการประมวลผลเส้นฐาน CGO จะคำนวณ loop closure มาให้เสร็จสรรพ ไม่เหมือนของ LI ที่คำนวณให้เมื่อผู้ใช้สั่ง ถ้าเรายังไม่ได้ filter จะมีวงปิดทุกรูปแบบมาแสดง ต่อไปเราจะฟิลเตอร์เฉพาะที่ต้องการเท่านั้นคือ Loop type เป็น “Async” และ Qualified เป็น “Conformity“
จะเห็นในตารางคอลัมน์ “Relative Error (ppm)” จะเห็นตัวเลข error ทุกวงไม่เกิน 10 ppm โดยมีค่า 0.55, 1.76, 0.60, 1.29 และ 1.36 เมื่อคลิกที่ Loop No แต่ละวง แล้วไปคลิกที่ Map จะเห็นวงปิดจำนวน 5 วง โดยเฉพาะวงปิด C20 ที่เป็นวงตามเงื่อนไขแต่ผมไม่ได้คิดเอาไว้
รายงานแสดงผลลัพธ์การคำนวณวงปิด (Loop Closure Report)
เมื่อตรวจสอบค่า error จากตารางแล้วไม่เกิน 10 ppm ในลำดับต่อไปถ้าต้องการเจนรายงานในรูปแบบ html สามารถเลื่อนตรงพาเนลของริบบอนไปขวาสุด จะเห็น “Report” คลิกให้รายการตกลงมาเลือก “Loop Closure Report” เนื่องจากผมตั้งให้สร้างรายงานลง html ผ่าน browser ไม่ใช่ pdf เวลาแสดงผลก็สามารถดูได้ทันที
ส่วนผลลัพธ์จะเจอรายงานที่บอกจำนวนวงปิด 25 วง แทนที่จะเป็น 5 วง และมีวงปิดที่ไม่ผ่านอยู่ 5 วง และเกณฑ์ที่เราตั้งไว้ตั้งแต่แรกว่า เป็น ppm ไม่ใช่ ratio โดยเฉพาะค่าที่ยอมเป็นค่า absolute ไม่ว่าระยะทางวงปิดจะยาวแค่ไหน ค่าที่ยอมทางราบ 3 มม. และทางดิ่ง 5 มม. ถือว่าเป็นเกณฑ์ที่สูงมาก เนื่องจากผมลองคำนวณอยู่หลายเที่ยวตั้งแต่เริ่มต้นจนถึงจุดที่เป็นปัญหานี้ สรุปได้ว่าเป็นบั๊กโปรแกรมของ CGO
วิธีการแก้ไขบั๊กของ CGO ตรงนี้ไม่ได้ยาก เพียงแค่ไปคลิกที่ “Report” แล้วเลือก “Loop Closure Report Configuration” จากนั้นคลิกย้ำไปที่ ppm อีกครั้ง แต่ปัญหายังไม่จบเพียงเท่านี้
การค้นหาวงปิด
เมื่อเข้าไปดู report อีกครั้งจะเห็นว่าเกณฑ์ที่ยอมรับเปลี่ยนมาใช้ Ratio (ppm) ตามที่เราต้องการ แต่ยังมีรูปแบบวงที่เราไม่ต้องการอยู่อีกมาก เช่นวงปิดประเภท Syncronize และ Non conformity วิธีการแก้ไขให้ไปคลิก “Search Closed Loops” พอโปรแกรมคำนวณค้นหาให้เสร็จตอนนี้ Loop no จะเป็นใหม่เป็น C1, C2, C3, C4 และ C5 หมายเหตุตรงขั้นตอนนี้เป็น destructive step คือไม่สามารถ undo ได้ คือสั่ง undo ได้ แต่ C1- C5 ไม่เปลี่ยนให้เหมือนของเดิม
จากนั้นคลิก Report > Loop Closure Report อีกครั้ง
ตรงนี้เองที่ทำให้ผู้ใช้สับสน ซึ่ง CGO น่าจะทำทางเลือกให้ใน Loop Closure Report Configuration ว่าต้องการ Loop type และ Qualified แบบใด โดยที่ผู้ใช้ไม่ต้องคลิกซ้ำไปซ้ำมา
การคำนวณปรับแก้โครงข่าย (Network Adjustment)
การคำนวณปรับแก้โครงข่ายจะเป็นวิธีการได้มาซึ่งค่าพิกัดและค่าระดับของหมุดใหม่ที่ทำการรังวัด โดยที่เราจะต้องป้อนค่าพิกัดและค่าระดับของหมุดควบคุมที่อยู่ในโครงข่ายเข้าไปก่อน ก่อนอื่นเราจะทำการตั้งค่าก่อน ส่วนใหญ่จะใช้ค่าดีฟอลท์ แต่ตรงความมั่นใจให้เลือก 2 sigma (95%)
การนำเข้าไฟล์ค่าพิกัดและระดับของหมุดควบคุม
วิธีการนำเข้าค่าพิกัดและระดับของหมุดควบคุมของ CGO ก็เช่นเดียวกันกับ LI คือสามารถป้อนด้วยการพิมพ์เข้าไปแบบแมนวล หรือจะนำเข้าแบบไฟล์ก็ได้ สำหรับหมุดควบคุมของโครงการนี้คือหมุด VTBU-A-2017 และ VTBU-B-2020 และจะนำเข้าแบบไฟล์ ตอนแรกผมพยายามนำเข้าไฟล์โดยการไปคลิกไอคอน Import ไฟล์ข้อมูลรังวัดแตกลับไม่ใช่ วิธีการคือในพาเนลของ “Control Points” ที่เป็นหน้าว่างๆให้คลิกขวาที่เมาส์ จะเห็นเมนูป๊อปอัพขึ้นมา จากนั้นนำเข้าไฟล์
ทำการคำนวณปรับแก้ เมื่อเสร็จแล้วคลิกที่ลิ๊งค์ (4) จะเข้าไปหารายงานการคำนวณปรับแก้ที่เป็น pdf
ผมได้นำบางส่วนของรายงานมาให้ดู ซึ่งจะมีรายงานการทดสอบด้วย Chi-squares test และประเมินความถูกต้องที่ความมั่นใจ 95% รวมไปถึงค่าพิกัดและค่าระดับที่ปรับแก้มาแล้วของหมุดที่ต้องการคือ ST-35, ST-34N และ DS01
ก็ขอปิดวิธีการใช้งาน CGO แต่เพียงเท่านี้ ต่อไปจะนำค่าพิกัดและค่าระดับที่ได้จากการคำนวณจาก CGO และ LI มาทำการเปรียบเทียบ โดยที่หมุด ST-35 จะเป็นหมุดของโครงการก่อสร้างที่มีค่าพิกัดหมุดอยู่แล้ว ส่วนหมุด ST-34N เข้าใจว่าเป็นหมุดที่สร้างใหม่เพราะมีการย้ายหมุดจากที่เดิมคือ ST-34 กลางสะพานข้ามคลอง ย้ายมาข้างสะพาน น่าเสียดายที่ไม่มีค่าพิกัดและระดับจะมาตรวจสอบได้ในตอนนี้
ค่าพิกัดค่อนข้างเกาะกันดี ส่วนหมุดที่จะ verify และได้ค่าพิกัดหมุดจากเจ้าของโครงการกับหมุดค่าพิกัดที่รังวัดถ้าต่างกันไม่เกิน 15 มม. ในทางปฏิบัติแล้วจะใช้ค่าหมุดเดิม ถ้ามากกว่า 15 มม. จะใช้ค่าพิกัดหมุดที่ได้จากการรังวัดครั้งใหม่
จากที่ได้สัมผัสและใช้งาน CGO เพื่อมาคำนวณงานปรับแก้โครงข่าย GNSS ในระดับที่ลึกกว่าทุกครั้ง ในภาพรวม CGO ทำได้ดีใช้งานง่าย ถึงแม้จะยังมีบั๊กใบบางจุดบ้างก็ไม่ใช่เรื่องหนักหนาอะไรมาก ซึ่งผมจะได้นำเสนอให้ทาง CGO ได้ปรับปรุงในวาระต่อไป สำหรับ LI เท่าที่ใช้งานโปรแกรม stable มากแทบจะไม่เห็นบั๊กให้รำคาญหรือกวนใจแต่อย่างใต เพียงแต่สะดุดการใช้งานบางขั้นตอนตามที่ผมรายงานไปแล้ว ถ้าได้อ่านคู่มือเพียงพอ ก็จะไม่ประสบภัยแบบผม UI สวยงาม รายงานต่างๆรูปแบบเรียบง่าย อ่านง่าย ภาพรวมผมชอบทั้งสองโปรแกรม ถ้า CGO คือดนตรีป๊อปร๊อคที่ฟังง่ายสบายหู LI ก็เป็นดนตรีฟิวชั่นแจ๊สสมัยใหม่ที่ละเมียดละไมพลิ้วไหวพอตัวครับ
มาตรฐานงานรังวัด GNSS ในเวทีโลก
ถ้าใครติดตามมาตรฐานงานรังวัดใหม่เช่นของ ICSM ของออสเตรเลียจะเห็นความเปลี่ยนแปลงในช่วงสิบปีที่ผ่านมา แต่ของอเมริกาเหมือนจะหยุดนิ่ง
ไม่กี่วันนี้เองผมได้อ่านข้อกำหนดการรังวัด GNSS ฉบับร่างใหม่ล่าสุดของอเมริกา “NOAA Technical Memorandum NOS NGS 92” ที่มาแทนที่ฉบับเดิมที่ 58 และ 58 ที่ออกมาในปี 1997 และ 2008 ตามลำดับที่ล้าสมัยแล้ว โดยมีหัวข้อรองคือ “Classifications, Accuracy Standards, and General Specifications for GNSS Geodetic Control Surveys using OPUS Projects” จะเห็นคำว่า GNSS ไม่ใช่ GPS นัยยะนี้คือได้ยอมรับ GNSS 4 ระบบคือ GPS (USA), Glonass (Russia), Beidou (China) และ Galileo (Europe)
นอกจากนั้นการคำนวณการรังวัด GNSS ต้องอัพโหลดไปคำนวณที่โครงการรวมศูนย์คือ OPUS และได้แบ่งชั้นของงานไปหลายระดับเป็น Primary, Secondary และ Local ที่น่าสนใจคือการรังวัดต้องทำอย่างน้อย 2 session ขึ้นไป และบางระดับการรังวัด 2 หรือ 3 session ต้องมีอย่างน้อย 1 session ที่ต้องรังวัดในวันที่ต่างวันกัน ผมมองในแง่ดีคือ surveyor ไม่ตกงานแน่ๆมีงานให้ทำอีกเยอะ ส่วนสเป็ค accuracy ได้ปรับมาในระดับที่สูงมากๆ ที่ความมั่นใจ 95%
ดังนั้นแนวทางที่ผมพยายามรณรงค์คือการรังวัดแบบโครงข่ายที่มีเส้นฐานอิสระปิดเป็นวง และแน่นอนจะต้องรังวัดมากกว่าสองคาบขึ้นไป เพื่อให้ตรวจสอบคุณภาพได้ จึงเป็นเรื่องไม่เกินเลยไป ดังที่เราเห็นข้อกำหนดใหม่ของอเมริกา บทความนี้ขอจบตอนที่ 3 เพียงเท่านี้ โปรดติดตามบทความตอนต่อไปครับ
ข้อดีของ Infinity อีกอย่างคือ
เราสามารถเลือก Model การประมวลผลเส้นฐานได้ด้วยนะครับ
ทั้งรูปแบบการผสมเคลื่อนและชั้นบรรยากาศ
ขอบคุณครับจักร ลืมๆ TBC ไปแล้วหรือยังครับ
ขอบคุณครับ ละเอียดอ่านเข้าใจง่ายเห็นภาพทุกมุมมอง ตอนนี้รอติดตามภาคต่อไปของงานโครงข่ายครับ
ขอบคุณครับพี่สอ
สอบถามหน่อยครับ งานส่วนมากที่ทำตั้งแค่ 1 session แล้วถ้าเส้นฐานอิสระไม่สามารถปิดเป็น loop ได้ เราก็ต้องตั้ง session ที่ 2 อยู่ดีใช่ไหมครับ ยกเว้นงาน HSR ไทย-จีน ที่ตั้ง 2 session แต่คนจีนไม่ได้ให้เลือกใช้แค่เส้นฐานอิสระ คือใช้ทุกเส้น
ปล.ผมขออนุญาตขอข้อมูลจากช่างทิวมาลองกับ TBC หน่อยนะครับ
สวัสดีครับ ข้อกำหนดสมัยใหม่เท่าที่ศึกษาของตปท.คือต้องตั้ง session 2 ครับเป็นอย่างน้อย เรื่องข้อมูลตามสะดวกครับไม่มีอะไรที่เป็นชั้นความลับครับ