สำนวนโบราณ “จากกันสามวันนารีเป็นอื่น” ไม่รู้ปัจจุบันนี้ยังใช้ได้ไหม แต่สำหรับกับความรู้ภาษา Rust ที่ร่ำเรียนมาแบบหน้าดำคร่ำเครียด เพียงแค่หนึ่งเดือนไม่ได้จับ พอมาจับอีกครั้งเกิดอาการลืมเลือนไปอย่างรวดเร็ว วิธีการที่จะทำให้อาการลืมเร็วแล้วฟื้นไว มีวิธีเดียวครับคือขยันเขียนโปรแกรมประจุให้ความรู้เข้าไปในหน่วยความจำของสมองมากที่สุด เวลามาฟื้นทีหลังจะฟื้นไว ความจริงเครื่องมือช่วยออกแบบเส้นโครงแผนที่ความคลาดเคลื่อนต่ำ (LDP – Low Distortion Projection) นั้นมีอยู่แล้วใน Surveyor Pocket Tools แต่ผมเองในฐานะผู้พัฒนาด้วยภาษาไพทอนยังมองว่าใช้งานยากไปนิด ก็เลยมีความคิดจะแยกโครงการนี้มาทำต่างหาก โดยเน้นไปที่การใช้งานให้ง่ายที่สุด สุดท้ายกลายเป็นโครงการ “LDP Companion” ที่โปรแกรมนี้จะถูกเขียนด้วยภาษา Rust ขึ้นกราฟฟิคติดต่อผู้ใช้ (User Interface)…
Tag: โปรแกรม
ESP32 โครงการ #2 ส่งข้อมูลระดับน้ำ (Tide Station) ขึ้นคลาวด์ ThingSpeak ฟรี
โครงการที่สองยังเป็นโครงการใช้ไมโครคอนโทรลเลอร์เหมือนเดิม ผมเลือกใช้ ESP32 แทนที่จะเป็น Pico W เหมือนโครงการแรก และโปรแกรมด้วยภาษาซี บอร์ด ESP32 ผลิตโดยบริษัท Espressif จากจีนแผ่นดินใหญ่ และในวงการไมโครคอนโทรลเลอร์เองก็ยอมรับว่าไมโครคอนโทรลเลอร์ ESP32 ได้รับการออกแบบมาอย่างดี ซีพียูเร็วแกนคู่ กินพลังงานต่ำ มีแรมที่เพียงพอสำหรับการรันโปรแกรมสำหรับงาน iOT ต่างๆได้และที่สำคัญคือมันมีราคาถูกมากๆ (หลักร้อยบาท) ความเป็นมาของโครงการ สถานีวัดระดับน้ำ (Tide Station) ใช้ของยี่ห้อ Valeport รุ่น Tide Master ตัวเครื่องวัดระดับน้ำไม่มีอะไรมาก…
อัพเดท : ปรับปรุงผลการคำนวณแปลงค่าพิกัดโครงการรถไฟความเร็วสูง ไทย-จีน ให้ละเอียดถึงทศนิยมของมิลลิเมตรด้วย Surveyor Pocket Tools
จากรุ่นก่อนหน้านี้ของ Surveyor Pocket Tools นั้นสามารถแปลงค่าพิกัดในระบบ The First Construction Coordinate System ได้อย่างไม่มีปัญหา แต่ความละเอียดจะถูกลดทอนลง 3-4 มม. เมื่อใช้คำนวณ The Third Construction Coordinate System & The Fourth Construction Coordinate System ปัญหาจากที่จีนไม่เปิดเผยนิยามของพื้นหลักฐาน (datum) ให้ชัดเจน ผมปรับปรุงการคำนวณในโปรแกรมเพื่อให้ได้ความละเอียดที่เพิ่มขึ้นในระดับหลักทศนิยมของมิลลิเมตร จะเป็น Surveyor…
มหาเทพ HP Prime G2 ตอนโปรแกรมคำนวณโค้งดิ่ง (Vertical Curve)
บทความเครื่องคิดเลข HP Prime G2 นับเป็นบทความที่ 3 จากโค้งราบ (Horizontal Curve) มาสู่โค้งสไปรัล (Spiral Curve) และในบทความนี้จะมาปิดที่โค้งดิ่ง (Vertical Curve) สำหรับโค้งทั้งหลายเหล่านี้นำมาประยุกต์ใช้กับงานถนน, รถไฟ และรถไฟฟ้า โค้งดิ่ง (Vertical curve) ที่ผมจะนำเสนอในบทความนี้มี 2 แบบคือแบบโค้งพาราโบลา (Parabola vertical curve) และโค้งแบบวงกลม (Circular vertical curve) ส่วนใหญ่ที่เป็นนิยมมากที่สุดคือโค้งแบบพาราโบลา…
ปฐมฤกษ์โปรแกรมแรกบนเครื่องคิดเลขเทพเหนือเทพ HP Prime G2 (Horizontal Curve)
หนึ่งเดือนที่ผมจับเครื่องคิดเลขเอชพี ไพรม์ รุ่นจีทู ราคาแปดพันห้าร้อยบาทนับว่าเป็นเครื่องคิดเลขที่ราคาสูงที่สุดที่ผมเคยเป็นเจ้าของมา มีฟังก์ชั่นเยอะมาก วาดกราฟสามมิติได้ แต่ผมไม่ได้ใช้ จะไม่ขอพูดถึง สถาปัตยกรรมใช้ซีพียูแกน ARM Cortex A7 ความเร็ว 528 MHz มีแรม 256 MB และแฟลชรอม 512 MB หน้าจอแสดงผลขนาด 320 x 240 พิกเซล แสดงผลเป็นจอสีได้ 16 บิต หน้าจอสัมผัสแบบโทรศัพท์มือถือทั่วๆไป มีแบตเตอรีขนาด 2000 mAh HP…
ไพทอนบนเครื่องคิดเลข Casio fx-cg50 Prizm กลับมาวิ่งฉิวเป็นเทพแล้ว
สองปีที่แล้วพอดีผมถอยเครื่องคิดเลขคาสิโอ fx-cg50 Prizm เพราะว่าสนับสนุนภาษาไพทอน อยากลองเขียนไพทอนบนเครื่องคิดเลขดู แต่เนื่องจากไพทอนไม่สามารถเรียกใช้ฟังก์ชั่นในเครื่องคิดเลขต่างๆ เช่นฟังก์ชั่นวาดรูป ฟังก์ชั่นการพล็อทกราฟ คาสิโอเองก็รีบเอาไพทอนมาลงเครื่องคิดเลขเร็วเกินไป ผมเอามาทำที่ทับกระดาษเล่นๆ จนกระทั่งสองปีให้หลังจนบัดนี้ (10 กันยายน 2020) ทางคาสิโอเพิ่งอัพเดทโอเอสของเครื่องคิดเลขจากรุ่น 3.30 มาเป็น 3.40 และได้เพิ่มฟังก์ชั่นการวาดรูปให้กับเครื่องคิดเลขรุ่นนี้ มาลองดูว่าอัพเดทแล้วมีอะไรบ้าง เพิ่มโมดูล casioplot ในโมดูลนี้จะมีฟังก์ชั่นให้เรียกใช้อยู่ 4 ฟังก์ชั่น draw_string(,,) สำหรับเขียนตัวหนังสือเลือกสี ขนาด ตำแหน่งได้ set_pixel(,) สำหรับเขียนจุดเลือกสี ขนาด…
แปลงรูปแบบไฟล์แบบจำลองความสูงจีออยด์ TGM2017 เป็น GFF เพื่อใช้ในโปรแกรม Magnet และอุปกรณ์ของ Topcon
ในเมื่อต่อยอดแล้วคงเอาให้สุดๆ ตอนที่แล้วผมแปลงไฟล์แบบจำลองความสูงจีออยด์ TGM2017 จากต้นฉบับ (เครดิด: จัดทำโดยทีมงานดร.พุทธิพล ดำรงชัยและคณะ) เป็นรูปแบบ Lieca GEM เพื่อใช้ในโปรแกรม SKI-Pro & LGO ตอนนี้ที่คิดได้ยังมีอุปกรณ์ค่าย Sokkia & Topcon ที่ยังไม่ได้จัดทำ เหมือนเดิมคือไม่สามารถหารูปแบบไฟล์ Topcon GFF หรือคำอธิบายได้ จากเวบไซต์ทางการของ Topcon ได้ ผมลองค้นคว้าในอินเทอร์เน็ตพบว่าโปรแกรม Topcon Magnet ที่เอาไว้คำนวณและประมวลผลงาน GNSS รวมทั้งอุปกรณ์อื่นๆเช่นกล้องโททอลสเตชัน…
อัพเดท: คำนวณแปลงพิกัดในโครงการรถไฟความเร็วสูงไทย-จีน ด้วยโปรแกรมรวมเครื่องมือฉบับกระเป๋าสำหรับช่างสำรวจ (Surveyor Pocket Tools)
จากบทความที่แล้ว ผมได้พาย้อนรอยไปดูระบบพิกัดที่ใช้ในโครงการรถไฟความเร็วสูงไทยจีน และทางดร.ไพศาล ได้มาไขความกระจ่างว่าวิธีการออกแบบในโครงการนี้เป็นการขยายรูปทรงรีแบบอัตราส่วน (Scale reference ellipsoid) ตามค่าความสูง project plane ที่ทางผู้ออกแบบโครงการนี้ให้มา โดยที่ค่า K0 = 1.0 เป็นค่าคงที่ พร้อมได้เอื้อเฟื้อโค้ดไพทอนสำหรับการแปลงค่าพิกัดมาให้ดูเป็นตัวอย่าง ผมขอขอบคุณมา ณ ที่นี้เป็นอย่างสูง ดังนั้นผมขอนำเสนอรายละเอียดระบบพิกัดเส้นโครงแผนที่ความเพี้ยนต่ำอีกครั้ง ทางผู้ออกแบบได้ใช้ระบบพิกัดความเพี้ยนต่ำโดยการขยายขนาดทรงรี WGS84 (Scaled reference ellipsoid) โดยที่ขนาดมาตรฐานมีค่า a = 6378137.0 และ b…
พอร์ท:โปรแกรมเขียนแบบรูปตัด (XSection Plot) มาใช้บนแมคโอเอส
โปรแกรมเขียนแบบรูปตัด (XSection Plot) นับว่าเป็นโปรแกรมลำดับที่สามที่ผมพอร์ทมาใช้บนแมคโอเอส ถัดจาก Traverse Pro และ Surveyor Pocket Tools ติดตามบทความเดิมได้ด้านล่าง XSection Plot พัฒนาด้วยภาษาไพทอน (Python) กราฟฟิคติดต่อผู้ใช้ใช้ PySide2 (Qt for Python) บนแมคโอเอส ผมใช้ PyCharm (Community Edition) เป็นตัว IDE ในการพัฒนา ใช้ PyInstaller สำหรับการทำไฟล์…
ย้อนรอยเส้นโครงแผนที่ความเพี้ยนต่ำ โครงการรถไฟความเร็วสูงไทย-จีน
ผมได้เสนอบทความไปหลายตอนเรื่องเส้นโครงแผนที่ความเพี้ยนต่ำ ทั้งความเป็นมา ประโยชน์ ตลอดจนการคำนวณสร้างเส้นโครงแผนที่ มาดูตัวอย่างการใช้งานจริงๆในโครงการรถไฟความเร็วสูงไทย-จีน ว่าทางผู้ออกแบบได้มีการวางแผนสร้างเส้นโครงแผนที่นี้อย่างไร นำมาใช้อย่างไรบ้าง ก็ขออนุญาตนำเอกสารบางส่วนในโครงการนี้มาเผยแพร่ ในส่วนที่เกี่ยวข้องกับระบบพิกัดเส้นโครงแผนที่เท่านั้น โครงการรถไฟความเร็วสูงไทย-จีน (กรุงเทพฯ – นครราชสีมา) ระบบพิกัดแผนที่ ทางผู้ออกแบบได้แบ่งเป็นสองระบบคือ WGS-UTM (Drawing) เป็นระบบพิกัดยูทีเอ็มใช้พื้นหลักฐาน WGS84 Zone 47N ตัวนี้เอาไว้คุมแนวเส้นทาง (Route Alignment) ในภาพรวมทั้งหมด จะไม่นำมาใช้ในงานก่อสร้าง มีหมายเหตุในเอกสารด้วยว่ามีความถูกต้องต่ำ ก็คงหมายถึงมี Combined Scale Factor (CSF)…