Skip to content

Prajuab Riabroy's Blog

Survey Application – GNSS – UAV – Programing – Python – Dart&Flutter – Rust

Menu
  • Home
  • About Us
  • Survey Application
    • Surveyor Pocket Tools
    • Traverse Pro
    • XSection Plot
    • Geoid Height Pro
    • Spot Fire
    • โปรแกรมงานสำรวจสำหรับเครื่องคิดเลข Casio fx-5800P
    • โปรแกรมงานสำรวจสำหรับเครื่องคิดเลข Casio fx-9860G II SD
  • Download
  • Privacy Policy
Menu

การเขียนโปรแกรมต่อ GPS ด้วยคอมโพเน็นต์ OpenGPSX (ภาค 1)

Posted on 08/04/2010
  • ขออภัยที่เรื่อง “การเขียนโปรแกรมต่อ GPS ตอน NMEA Parser ด้วย Lazarus (ภาค 1)” ทิ้งช่วงไว้นาน ผมจะเขียนเนื้อเรื่องต่อแต่ขอเปลี่ยนชื่อเป็น “การเขียนโปรแกรมต่อ GPS ด้วยคอมโพเน็นต์ OpenGPSX (ภาค 1)” เพื่อให้สัมพันธ์กับคอมโพเน็นต์ที่ผมพัฒนาขึ้นมา ขอให้ทราบตามนี้ครับ

การเขียนโปรแกรม Interface กับ GPS

  • เป็นที่ทราบกันดีครับว่าเครื่อง GPS ในปัจจุบันใช้กันแพร่หลายมากจนเป็นเรื่องธรรมดา โดยเฉพาะทีฺ่ฮิตคือติดบนรถยนต์เพื่อนำทาง (Car Navigator) ในส่วนข่าวสาร ข้อมูลเกี่ยวกับเรื่อง GPS ก็มีให้อ่านได้ทั่วๆไป GPS ที่ bundle มากับโทรศัพท์มือถือก็เป็นเรื่องธรรมดาไปแล้ว ในอนาคตการใช้ GPS จะเป็นเรื่องธรรมดาสามัญมากอีกไม่กี่ปีรถที่ใช้ในชีวิตประจำวันจะติด GPS กันเพราะเครื่องมีราคาถูกลง แต่การนำทางรถยนต์ด้วย GPS บนรถยนต์ไม่ใช่มีแค่ GPS ก็ไปได้ จะต้องประกอบไปด้วย โปรแกรมนำทาง และที่สำคัญที่สุดคือแผนที่ GIS ที่จะนำทางไปเป้าหมายนั่นเอง ซึ่งในส่วนหลังผมไม่คิดว่าจะมีราคาถูกลงมากนักหรอก ต่อให้มีหลายๆบริษัทฯมาทำแข่งกัน เพราะต้นทุนไม่น่าจะลดไปได้มากขนาดนั้น
  • ผมเองเคยมีประสบการณ์สั้นๆในการสำรวจภาคสนามเพื่อจัดทำแผนที่แบบนี้ ค่อนข้างยากลำบากพอสมควรเรื่องการควบคุมคุณภาพข้อมูลสนาม บริษัทฯที่จะทำด้านนี้ในครั้งแรกจะลงทุนมากเพื่อสำรวจถนนกันทั้งประเทศทั้งของกรมทางหลวงและกรมทางหลวงชนบท ส่วนในปีต่อๆไปจะมีค่าใช้จ่ายเพื่อ update ไม่มากเพราะถนนที่ตัดใหม่ หรือสถานที่น่าสนใจ (POI – Point of Interest) ที่เพิ่มในแต่ละปีไม่มากมายนัก
  • มาดูในส่วนที่สองกันคือโปรแกรมนำทาง ในด้านโปรแกรมมิ่ง ด่านแรกคือการเขียนโค๊ดเพื่อต่อ (Interface) กับ GPS ผ่าน driver ของ USB และเก่าหน่อยก็เป็น Serial เพื่อรับหรืออ่านข้อมูลจาก GPS ที่เรียกว่า NMEA (National Marine Electronics Association) ซึ่งกลายเป็น protocol มาตรฐานในปัจจุบัน สมาคม NMEA ได้คิด protocol ซึ่งไม่ได้ใช้กับ GPS เพียงอย่่างเดียว มีอุปกรณ์ electronic อื่นๆเช่น  Echo sounder วัดความลึกของน้ำ เครื่องวัดกระแสลม เรดาร์ เป็นต้น ส่วน NMEA สำหรับ GPS ก็ไม่มีอะไรมากไปกว่าขุดข้อความเป็นบรรทัด (เรียกว่าประโยคหรือ Sentence) ซึ่งแต่ละบรรทัดจะมีคำ (word) ที่เป็นตัวแยกแยะแต่ละบรรทัดว่าหมายถึงอะไร NMEA ตัวอย่าง

$GPGLL,4916.45,N,12311.12,W,225444,A,*1D

  • จากประโยคด้านบนข้อความจะนำด้วยเครื่องหมาย $GP (GP เป็นคำย่อของ GPS)  และที่ติดกันคือ GLL คำว่า GLL ย่อมาจาก Geographic Latitude and Longitude ก็คือค่าพิกัดในระบบพิกัดภูมิศาสตร์นั่นเอง ในการเขียนโปรแกรมขั้นตอนต่อมาก็คือการเขียนโค๊ดเพื่อแปล NMEA จากเครื่อง GPS เราก็ต้องการอ่าน sentence ที่อยู่ในรูปแบบ NMEA แล้วแปลข้อความออกมา ตามแต่ละรูปแบบ ซึ่งจะได้กล่าวต่อไปดังนี้

รูปแบบ NMEA

  • ประโยคของ NMEA จะมีหลากหลายรูปแบบดังลิสต์ด้านล่าง (ซึ่งบางอย่างไม่ได้ใช้กับ GPS เช่น DBT, DPT ใช้กับ Echo sounder)
        AAM - Waypoint Arrival Alarm
        ALM - GPS Almanac Data
        APB - Autopilot Sentence "B"
       *ASD - Autopilot System Data
        BEC - Bearing & Distance to Waypoint, Dead Reckoning
        BOD - Bearing, Origin to Destination
        BWC - Bearing & Distance to Waypoint, Great Circle
        BWR - Bearing & Distance to Waypoint, Rhumb Line
        BWW - Bearing, Waypoint to Waypoint
        DBT - Depth Below Transducer
        DCN - Decca Position
       *DPT - Depth
       *FSI - Frequency Set Information
        GGA - Global Positioning System Fix Data
        GLC - Geographic Position, Loran-C
        GLL - Geographic Position, Latitude/Longitude
        GSA - GPS DOP and Active Satellites
        GSV - GPS Satellites in View
        GXA - TRANSIT Position
       *HDG - Heading, Deviation & Variation
       *HDT - Heading, True
        HSC - Heading Steering Command
        LCD - Loran-C Signal Data
        MTW - Water Temperature
       *MWV - Wind Speed and Angle
        OLN - Omega Lane Numbers
       *OSD - Own Ship Data
        RMA - Recommend Minimum Specific Loran-C Data
        RMB - Recommend Minimum Navigation Information
        RMC - Recommend Minimum Specific GPS/TRANSIT Data
       *ROT - Rate of Turn
       *RPM - Revolutions
       *RSA - Rudder Sensor Angle
       *RSD - RADAR System Data
        RTE - Routes
       *SFI - Scanning Frequency Information
        STN - Multiple Data ID
        TRF - TRANSIT Fix Data
       *TTM - Tracked Target Message
       *VBW - Dual Ground/Water Speed
        VDR - Set and Drift
        VHW - Water Speed and Heading
        VLW - Distance Traveled through the Water
        VPW - Speed, Measured Parallel to Wind
        VTG - Track Made Good and Ground Speed
        WCV - Waypoint Closure Velocity
        WNC - Distance, Waypoint to Waypoint
        WPL - Waypoint Loacation
        XDR - Transducer Measurements
        XTE - Cross-Track Error, Measured
        XTR - Cross-Track Error, Dead Reckoning
        ZDA - Time & Date
        ZFO - UTC & Time from Origin Waypoint
        ZTG - UTC & Time to Destination Waypoint
  • ในการเขียนโปรแกรมจริงๆ เราอาจไม่ต้อง เขียนเพื่อแปลข้อความทุกๆรูปแบบ ที่สำคัญคือ GGA, GSV, GSA และ RMC ก่อนนี้ผมบอกว่าไม่มีเพียงแค่อุปกรณ์ GPS เท่านั้นที่ใช้ protocol ของ NMEA มีอุปกรณ์ที่ใช้ดังต่อไปนี้ สังเกตดูจะเห็น GP ก็คือ GPS นั่นเอง หรือตัวอย่างอื่นได้แก่ SD คือ Echo sounder บางท่านอาจจะเคยใช้พวก GPSMap 420s/421s/520s ซึ่งอุปกรณ์แบบ 2 in 1 คือนอกจะมี GPS แล้วยังมี Echo sounder ที่สามารถใช้วัดความลึกของท้องน้ำได้ เครื่องมือพวกนี้จะส่ง NMEA ออกมาในรูปแบบ SD
AG	Autopilot - General
AP	Autopilot - Magnetic
CC	Computer - Programmed Calculator (obsolete)
CD	Communications - Digital Selective Calling (DSC)
CM	Computer - Memory Data (obsolete)
CS	Communications - Satellite
CT	Communications - Radio-Telephone (MF/HF)
CV	Communications - Radio-Telephone (VHF)
CX	Communications - Scanning Receiver
DE	DECCA Navigation (obsolete)
DF	Direction Finder
EC	Electronic Chart Display & Information System (ECDIS)
EP	Emergency Position Indicating Beacon (EPIRB)
ER	Engine Room Monitoring Systems
GP	Global Positioning System (GPS)
HC	Heading - Magnetic Compass
HE	Heading - North Seeking Gyro
HN   	Heading - Non North Seeking Gyro
II	Integrated Instrumentation
IN	Integrated Navigation
LA	Loran A (obsolete)
LC	Loran C
MP	Microwave Positioning System (obsolete)
OM	OMEGA Navigation System (obsolete)
OS	Distress Alarm System (obsolete)
RA	RADAR and/or ARPA
SD	Sounder, Depth
SN	Electronic Positioning System, other/general
SS	Sounder, Scanning
TI	Turn Rate Indicator
TR      TRANSIT Navigation System
VD	Velocity Sensor, Doppler, other/general
DM	Velocity Sensor, Speed Log, Water, Magnetic
VW	Velocity Sensor, Speed Log, Water, Mechanical
WI	Weather Instruments
YC	Transducer - Temperature (obsolete)
YD	Transducer - Displacement, Angular or Linear (obsolete)
YF	Transducer - Frequency (obsolete)
YL	Transducer - Level (obsolete)
YP	Transducer - Pressure (obsolete)
YR	Transducer - Flow Rate (obsolete)
YT	Transducer - Tachometer (obsolete)
YV	Transducer - Volume (obsolete)
YX      Transducer
ZA	Timekeeper - Atomic Clock
ZC	Timekeeper - Chronometer
ZQ	Timekeeper - Quartz
ZV	Timekeeper - Radio Update, WWV or WWVH

รายละเอียดรูปแบบ GGA, GSA, GSV และ RMC

  • GGA – รูปแบบที่แสดงว่าข้อมูลของ GPS เพียงพอที่จะแสดงพิกัดได้สามมิติ (3D) ซึ่งดาวเทียมที่รับได้ต้องมากถึง 4 ดวงขึ้นไป ภาษาอังกฤษเรียกว่า Fix data

ตัวอย่าง : $GPGGA,123519,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*47

ความหมาย :

GGA –  Global Positioning System Fix Data

123519 –  ข้อมูล Fix เมื่อเวลา 12:35:19 UTC

4807.038,N –  ค่าพิกัดแล็ตติจูดด้านเหนือเส้นศูนย์สูตร 48 deg 07.038′ N

01131.000,E –  ค่าพิกัดลองจิจูดด้านตะวันออก 11 deg 31.000′ E

1  – คุณภาพของข้อมูล Fix :

0 = ช้อมูลไม่ถูกต้อง

1 = GPS fix (SPS)

2 = DGPS fix

3 = PPS fix

4 = Real Time Kinematic

5 = Float RTK

6 = estimated (dead reckoning) (2.3 feature)

7 = Manual input mode

8 = Simulation mode

08 – จำนวนดาวเทียม GPS ที่รับได้

0.9 – ค่าความคลาดเคลื่อนการระบุตำแหน่งแนวราบ

545.4,M – ค่าความสูงเหนือระดับน้ำทะเลปานกลาง

46.9,M  – ความสูงของจีออยด์เหนือทรงรี WGS84

(ช่องว่าง) – เวลาเป็นวินาทีนับจากที่ได้รับค่า fix รูปแบบ DGPS

(ช่องว่าง) – แสดงหมายเลขสถานีของ DGPS

*47 – ค่า checksum นำหน้าด้วย *

  • GSA – รูปแบบที่แสดงรายละเอียดของข้อมูล Fix จำนวนดาวเีทียมที่ใช้งานได้ รวมถึงค่าความคลาดเคลื่อน DOP (dilution of precision) ซึ่งตัวเลขน้อยๆจะเป็นค่าที่ดีมีความถูกต้องสูง

ตัวอย่าง : $GPGSA,A,3,19,28,14,18,27,22,31,39,,,,,1.7,1.0,1.3*35

ความหมาย :

GSA – Satellite status

A – คือ mode ของสถานะของข้อมูล fix เป็น A – Automatic, M = Manual

3  – คือตัวเลขแสดงสถานะการ fix ประกอบไปด้วยค่า :

1 = ช้อมูลไม่ fix

2 = ข้อมูล fix แบบสองมิติ

3 = ข้อมูล fix แบบสามมิติ

19,28,14,18,27,22,31,39  –   คือหมายเลขดาวเทียมที่รับได้ ในที่นี้รับได้ 8 ดวงและ

ตามด้วยเครื่องหมายคอมมาว่างๆอีก 4 ซึ่งเครื่อง GPS จะรับได้สูงสุด 12 ดวง

1.7  – ค่าความคลาดเคลื่อนในการระบุตำแหน่ง PDOP (dilution of precision)

1.0  – ค่าความคลาดเคลื่อนในการระบุตำแหน่งทางราบ (HDOP)

1.3  – ค่าความคลาดเคลื่อนในการระบุตำแหน่งทางดิ่ง (VDOP)

*35  – ค่า checksum นำหน้าด้วย *

  • GSV – รูปแบบที่แสดงรายละเอียดของ GPS แต่ละดวงเช่นระดับความสูง (Elevation) อะซิมัทและ SNR (Signal to Noise Ratio) ซึ่ง เทียบได้กับความแรงของสัญญาณ SNR มีค่าตั้งแต่ 0 ถึง 99 ซึ่งค่ามากเป็นค่าที่ดี ในบางขณะเครื่อง GPS อาจจะรับสัญญาณได้เต็มที่ทั้งหมด 12 ดวง การส่งข้อความจะมากไปถ้าต้องแสดงในบรรทัดเดียว สมาคม NMEA จึงออกแบบให้รูปแบบ GSV สามารถแสดงข้อมูลดาวเทียมได้เต็มที่ประโยคหรือบรรทัดละ 4 ดวงเท่านั้น ดังนั้นถ้ารับสัญญาณดาวเทียมได้ทั้ง 12 ดวงจะได้รับประโยคทั้งหมด 3 บรรทัด

ตัวอย่าง $GPGSV,2,1,08,01,40,083,46,02,17,308,41,12,07,344,39,14,22,228,45*75

ความหมาย :

GSV – Satellites in view

2 – จำนวนประโยคข้อความ (ในที่นี้รับดาวเทียมได้ 8 ดวง จึงใช้แค่ 2 บรรทัดเท่านั้น)

1 –  ประัโยคที่ 1 จากทั้งหมด 2 ประโยค

08 – จำนวนดาวเทียมที่รับสัญญาณได้

01 – หมายเลขดาวเทียม GPS

40 – ระดับความสูง หน่วงเป็นองศา

083 – อะซิมัท (ทิศเหนือ 0 ทิศตะวันออก 90 ทิศใต้ 180 ทิศตะวันตก 270)

46 – SNR – ความแรงของสัญญาณ ค่าสูงเป็นค่าที่ดี

02,17,308,41 – ดาวเทียมหมายเลข 2 พร้อมข้อมูล elevation, azimuth และ SNR

12,07,344,39 – ดาวเทียมหมายเลข 12 พร้อมข้อมูล elevation, azimuth และ SNR

14,22,228,45 – ดาวเทียมหมายเลข 14 พร้อมข้อมูล elevation, azimuth และ SNR

*75 – ค่า checksum นำหน้าด้วย *

  • RMC – รูปแบบที่แสดงรายละเอียดของ GPS เรื่องความเร็ว (velocity) ค่าพิกัด เวลา ตลอดจนทิศทาง

ตัวอย่าง : $GPRMC,123519,A,4807.038,N,01131.000,E,022.4,084.4,230394,003.1,W*6A

ความหมาย :
RMC – Recommended Minimum sentence C
123519 – ข้อมูล fix เมื่อเวลา 12:35:19 UTC
A – สถานะ A=กำลังใช้งาน หรือ V=ยกเว้น
4807.038,N – ค่าแล็ตติจูด 48 องศา 07.038′  เหนือ
01131.000,E – ค่าลองจิจูด 11 องศา 31.000′ ตะวันออก
022.4 – ความเร็วเทียบกับพื้นดิน หน่วยเป็น knot (ไมล์ทะเลต่อชั่วโมง)
084.4 – มุมของทิศทางเทียบกับเหนือจริง
230394 – วันที่ – 23 มีนาคม 1994
003.1,W – มุมต่างระหว่างเหนือจริงกับเหนือแม่เหล็ก
*6A – ค่า checksum นำหน้าด้วยเครื่องหมาย *

ลักษณะของโปรแกรม

  • ลักษณะของโปรแกรมที่จะเขียนจะ implement คอมโพเน็นท์ OpenGPSX (มีแผนจะไปฝากไว้ที่ Sourceforge) มาใช้งาน ซึ่งในเวอร์ชั่นแรกๆ ประมาณ 0.3 สามารถเชื่อมต่อกับ GPS ได้ผ่านทาง Seiral Port  การแสดงผลวาดรูปท้องฟ้าแสดงสัญลักษณ์ของ GPS ขณะนั้น (SkyPlot View) แสดงความแรงของสัญญาณ GPS (Signal Strength) และวาดลูกศรแสดงทิศทางถ้าตั้ง Waypoint ไว้(ดูรูปด้านล่าง) และก็ขอจบตอนนี้ไปก่อนมาติดตามโปรแกรมมิ่งได้ในตอนต่อไป
ตัวอย่างโปรแกรมมิ่งด้วย Lazarus ใช้คอมโพเน็นต์ OpenGPSX

Related

2 thoughts on “การเขียนโปรแกรมต่อ GPS ด้วยคอมโพเน็นต์ OpenGPSX (ภาค 1)”

  1. pkgis2007 says:
    05/05/2010 at 21:46

    พี่ครับ แอบสงสัยขออนุญาติถามทำไมพี่ใช้ lazarus ไม่ใช้ dephi หรือ c++ หรือ lazarus คือ dephi อันนี้สงสัยนิดหน่อยเพราะผมไม่ค่อยเจอใครใช้เลย

    Reply
    1. prajuab riabroy says:
      07/05/2010 at 08:11

      เคยใช้ Delphi มาก่อน ไม่อยากใช้แล้วเพราะติดเรื่องลิขสิทธิ์ lazarus ฟรีและเป็น opensource ที่สำคัญคือมัน cross platform ครับ

      Reply

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

October 2026
M T W T F S S
 1234
567891011
12131415161718
19202122232425
262728293031  
« Sep    

Blog Stats

There was an issue retrieving stats. Please try again later.

Recent Posts

  • เร็วแรงทะลุนรกกับ POCUT (POint Cloud UTils)
  • อัพเดทแอพ “SurveyStar LDP Thailand” เพื่อรับกับยกร่างมาตรฐาน “TH-LDP”
  • ออกแอพใหม่ SurveyStar Traverse Pro สืบสานงานคำนวณวงรอบ ตอนที่ 2
  • ออกแอพใหม่ SurveyStar Traverse Pro สืบสานงานคำนวณวงรอบ ตอนที่ 1
  • โปรแกรมอรรถประโยชน์ Pocut (POint Cloud Utils)
  • โปรแกรมแปลงไฟล์แคดข้ามระบบพิกัด (Drawing Transformer)
  • มาตรฐานระบบพิกัดแผนที่แบบแอลดีพีของประเทศไทยสำหรับงานวิศวกรรมและการก่อสร้าง (Thailand Low Distortion Map Coordinate System for Engineering and Construction)
  • ประสบการณ์ใช้งาน Kimi K3 Code เขมือบแบบสยอง
  • สร้างแพลตฟอร์มดู Point Cloud บนเว็บด้วย Potree + CesiumJS — เรื่องเล่าจากสนามบินอู่ตะเภา
  • เมื่อวิศวกรสำรวจคำนวณเรื่องน้ำ – วิเคราะห์ระบบระบายน้ำบริเวณ RESA
  • แนะนำหนังสือ “จีออเดซี” ที่ยอดเยี่ยมของดร.พุทธิพล
  • ESPrtk ทำให้ ESP32 ใช้ไม่ได้? วิธีกู้คืน
  • กรณีศึกษา – คืนชีพ SDL30 ปี 2000 ด้วย ESP32 และแอพทำเอง SDL30 Collector
  • DIY RTK Base Station (survey-grade) รุ่น V3.21 ด้วย Raspberry Pi 2B + UM980 เมื่อคุณปู่กลับมาเป็นฮีโร่ ตอนที่ 4
  • รีวิวกูปรี (CoPre2) โปรแกรมประมวลผลไลดาร์จากค่าย CHCNav
  • DIY RTK Base Station (survey-grade) รุ่น V3.2 ด้วย Orange Pi 3 Zero + UM980 ตอนที่ 3
  • DIY RTK Base Station (survey-grade) รุ่น V3 ด้วย Orange Pi 3 Zero + UM980 ตอนที่ 2
  • เส้นทางและไทม์ไลน์ของใบรับรองความรู้ความชำนาญในการประกอบอาชีพวิศวกรรม(สำรวจ)ระดับวิศวกรวิชาชีพ
  • มัดแหนมรวมสามโปรแกรมไปใช้บนสโตร์ Snap ฝั่งลีนุกซ์
  • ปัดฝุ่น Traverse Pro เพิ่มรายละเอียดรายการคำนวณใหม่แบบแนวนอน (Landscape) และธีมมืด
  • DIY RTK Base Station (Survey-Grade) ด้วยชิป UM980 และบอร์ด ESP32 ตอนที่ 1
  • สร้าง NTRIP Caster ด้วย BNC บนคลาวด์แบบ DIY สำหรับ RTK Base Station ใช้ CHCNav P5
  • จับ AI มาไตรกรีฬา สร้างตัวติดตั้ง Snap สำหรับ Surveyor Pocket Tools กับประเด็นแฝงเร้นความเป็นส่วนตัวของผู้ใช้
  • ทดสอบรีด QGIS แบบโหดสัสด้วยชุดข้อมูล Open Building V3 โพลีกอน 74 ล้านหลัง
  • เมื่อ AI เป็นพิษชักจูงผู้ใช้ด้วยข้อมูลผิดๆ

Subscribe to Blog via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 122 other subscribers

Archives

  • October 2026
  • September 2026
  • August 2026
  • July 2026
  • May 2026
  • April 2026
  • March 2026
  • January 2026
  • December 2025
  • November 2025
  • September 2025
  • August 2025
  • July 2025
  • June 2025
  • May 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • July 2024
  • May 2024
  • April 2024
  • January 2024
  • November 2023
  • October 2023
  • September 2023
  • July 2023
  • June 2023
  • May 2023
  • March 2023
  • February 2023
  • January 2023
  • November 2022
  • October 2022
  • September 2022
  • July 2022
  • May 2022
  • December 2021
  • October 2021
  • September 2021
  • August 2021
  • May 2021
  • February 2021
  • January 2021
  • December 2020
  • November 2020
  • October 2020
  • September 2020
  • July 2020
  • June 2020
  • May 2020
  • April 2020
  • March 2020
  • February 2020
  • January 2020
  • December 2019
  • November 2019
  • September 2019
  • August 2019
  • July 2019
  • May 2019
  • April 2019
  • March 2019
  • February 2019
  • January 2019
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • June 2018
  • May 2018
  • April 2018
  • March 2018
  • January 2018
  • November 2017
  • July 2017
  • June 2017
  • May 2017
  • April 2017
  • March 2017
  • February 2017
  • January 2017
  • December 2016
  • November 2016
  • October 2016
  • August 2016
  • November 2015
  • March 2015
  • August 2014
  • March 2014
  • January 2014
  • December 2013
  • February 2012
  • January 2012
  • November 2011
  • October 2011
  • August 2011
  • April 2011
  • February 2011
  • December 2010
  • November 2010
  • October 2010
  • September 2010
  • June 2010
  • April 2010
  • March 2010
  • January 2010
  • December 2009
  • November 2009
  • October 2009
  • September 2009
  • August 2009

Recent Comments

  • priabroy on ออกแอพใหม่ SurveyStar Traverse Pro สืบสานงานคำนวณวงรอบ ตอนที่ 1
  • Konexana Yomleuangsa on ออกแอพใหม่ SurveyStar Traverse Pro สืบสานงานคำนวณวงรอบ ตอนที่ 1
  • เฟือง เถา on DIY RTK Base Station (survey-grade) รุ่น V3.21 ด้วย Raspberry Pi 2B + UM980 เมื่อคุณปู่กลับมาเป็นฮีโร่ ตอนที่ 4
  • priabroy on DIY RTK Base Station (survey-grade) รุ่น V3.21 ด้วย Raspberry Pi 2B + UM980 เมื่อคุณปู่กลับมาเป็นฮีโร่ ตอนที่ 4
  • ตรันฟองนาม on DIY RTK Base Station (survey-grade) รุ่น V3.21 ด้วย Raspberry Pi 2B + UM980 เมื่อคุณปู่กลับมาเป็นฮีโร่ ตอนที่ 4
©2026 Prajuab Riabroy's Blog | Design: Newspaperly WordPress Theme