(ฟรี)โปรแกรมภาษาไพทอนบนเครื่องคิดเลขคาสิโอ fx-9750GIII fx-9860GIII และ fx-cg50 โปรแกรมพื้นฐานงานสำรวจชุดที่ 2 (COGO Selected Serie 2)

ตอนนี้มีเครื่องคิดเลขของคาสิโอสามรุ่นที่สามารถโปรแกรมด้วยภาษาไพทอนหรือไมโครไพทอน (MicroPython) ได้คือ fx-9750GIII, fx-9860GIII และ fx-cg50 ข้อดีของภาษาไพทอนนั้นคือง่าย ทรงพลัง แต่ข้อจำกัดของเครื่องคิดเลขคือหน่วยความจำที่มีมาน้อย ดังนั้นบนเครื่องคิดเลขจะมีไลบรารีที่นำมาจากเครื่องคอมพิวเตอร์มาใช้งานได้น้อย ต้องปรับกันพอสมควร ไม่มีไลบรารีเทพแบบ Numpy ที่จะมาใช้คำนวณเรื่องเมตริกซ์ (Matrix) ดังนั้นถ้าใช้เมตริกซ์ก็ต้องออกแรงเขียนโค้ดเองมากหน่อย แต่ยังมี Matplotlib ฉบับย่อที่พอกล้อมแกล้มได้เล็กน้อย…

Continue Reading →

(ฟรี)โปรแกรมภาษาไพทอนบนเครื่องคิดเลขคาสิโอ fx-9750GIII fx-9860GIII และ fx-cg50 โปรแกรมพื้นฐานงานสำรวจชุดที่ 1 (COGO Selected Serie 1)

ไม่กี่วันนี้ผมได้ถอยเครื่องคิดเลข fx-9860GIII มาหนึ่งเครื่องราคาประมาณสี่พันห้าร้อยบาท ส่วนน้องๆในที่ทำงานถอย fx-9750GIII มาหนึ่งเครื่องเช่นเดียวกันแต่ราคาย่อมเยากว่า ราคาเครื่องประมาณสามพันบาท สองรุ่นนี้เขียนภาษาไพทอนได้ ไพทอนที่ลงในเครื่องคิดเลขเป็นไพทอนรุ่นเล็กเรียกว่า ไมโครไพทอน (Micropython) แต่ไมโครไพทอนที่ลงในเครื่องคิดเลข ทางคาสิโอลงไลบรารีมาให้ใช้แค่สองไลบรารีคือ math และ random ที่อยากได้มากคือไลบรารี io ที่สามารถเขียนอ่านไฟล์ได้กลับไม่ลงมาให้ ทำให้การใช้งานจำกัดจำเขี่ยเหมือนโดนมัดมือมัดเท้า…

Continue Reading →

ไพทอนบนเครื่องคิดเลข Casio fx-cg50 Prizm กลับมาวิ่งฉิวเป็นเทพแล้ว

สองปีที่แล้วพอดีผมถอยเครื่องคิดเลขคาสิโอ fx-cg50 Prizm เพราะว่าสนับสนุนภาษาไพทอน อยากลองเขียนไพทอนบนเครื่องคิดเลขดู แต่เนื่องจากไพทอนไม่สามารถเรียกใช้ฟังก์ชั่นในเครื่องคิดเลขต่างๆ เช่นฟังก์ชั่นวาดรูป ฟังก์ชั่นการพล็อทกราฟ คาสิโอเองก็รีบเอาไพทอนมาลงเครื่องคิดเลขเร็วเกินไป ผมเอามาทำที่ทับกระดาษเล่นๆ จนกระทั่งสองปีให้หลังจนบัดนี้ (10 กันยายน 2020) ทางคาสิโอเพิ่งอัพเดทโอเอสของเครื่องคิดเลขจากรุ่น 3.30 มาเป็น 3.40 และได้เพิ่มฟังก์ชั่นการวาดรูปให้กับเครื่องคิดเลขรุ่นนี้ มาลองดูว่าอัพเดทแล้วมีอะไรบ้าง…

Continue Reading →

แนะนำ beeware เครื่องมือพัฒนาโปรแกรมด้วยภาษาไพทอนแบบเนทีฟสำหรับโทรศัพท์มือถือ

ผมได้ติดตามเป็นแฟนของ beeware มาได้ประมาณร่วมๆจะสองปีแล้วครับ beeware เป็นแพล็ตฟอร์มพัฒนาโปรแกรมแบบ cross-platform ที่อ้างว่าสามารถพัฒนาโปรแกรมแบบ desktop ได้ทั้งวินโดส์ ลีนุกซ์และแมคโอเอส รวมไปถึงแอนดรอยด์และไอโอเอส ปกติผมใช้ PySide2 สำหรับโปรแกรมบนเดสค์ท็อปอยู่แล้วเลยไม่รู้สึกตื่นเต้นตรงที่สนับสนุนโปรแกรมบนเดสค์ท็อปเท่าไหร่นัก แต่สำหรับภาษาไพทอนที่จะไปใช้ได้แบบเนทีฟ (native) บนโทรศัพท์มือถือแอนดรอยด์และไอโอเอส ยอมรับว่าตื่นเต้นพอสมควร ความนิยมภาษาไพทอนในปัจจุบันเป็นที่นิยมมาก เป็นที่ได้รับการพิสูจน์แล้วว่าเรียนรู้ง่าย…

Continue Reading →

แปลงรูปแบบไฟล์แบบจำลองความสูงจีออยด์ TGM2017 เป็น GFF เพื่อใช้ในโปรแกรม Magnet และอุปกรณ์ของ Topcon

ในเมื่อต่อยอดแล้วคงเอาให้สุดๆ ตอนที่แล้วผมแปลงไฟล์แบบจำลองความสูงจีออยด์ TGM2017 จากต้นฉบับ (เครดิด: จัดทำโดยทีมงานดร.พุทธิพล ดำรงชัยและคณะ) เป็นรูปแบบ Lieca GEM เพื่อใช้ในโปรแกรม SKI-Pro & LGO ตอนนี้ที่คิดได้ยังมีอุปกรณ์ค่าย Sokkia & Topcon ที่ยังไม่ได้จัดทำ เหมือนเดิมคือไม่สามารถหารูปแบบไฟล์…

Continue Reading →

แปลงรูปแบบไฟล์แบบจำลองความสูงจีออยด์ TGM2017 เป็น GEM เพื่อใช้ในโปรแกรม SKI-Pro & LGO

ที่ผ่านมาผมได้จัดทำรูปแบบไฟล์ TGM2017 จากต้นฉบับเดิมให้มีรูปแบบหลากหลายสามารถนำไปใช้ในโปรแกรมต่างๆ เช่น รูปแบบ GTX, GGF ส่วนรูปแบบ PGM ที่เอื้อเฟื้อจัดทำโดยดร.ไพศาล สันติธรรมนนท์ แต่ก็มีน้องๆทัดทานมาว่ารูปแบบ Leica Geoid Model (GEM) น่าจะยังไม่มีคนจัดทำ Leica Geoid Model…

Continue Reading →

รวมคลิปสอนวิธีการใช้งาน Surveyor Pocket Tools

ผมได้เริ่มจัดทำคลิปสอนการใช้งานโปรแกรมรวมเครื่องมือฉบับกระเป๋าสำหรับช่างสำรวจ ซึ่งจะเป็นการย่นระยะเวลาทำความเข้าใจกับการใช้โปรแกรมได้เร็วกว่า จากที่เดิมผมเคยอธิบายประกอบภาพแบบแห้งๆ 1.คลิปสอนการใช้งานทูลส์ Geo-UTM Converter การแปลงพิกัดระหว่างระบบพิกัดฉาก UTM และค่าพิกัดภูมิศาสตร์ (Geographic) บนพื้นหลักฐาน เดียวกันคือ WGS84 สามารถแปลงพิกัดโดยทูลส์ตัวนี้ เพียงแค่ป้อนค่าพิกัดที่ต้องการแปลงแล้วทำการแปลงพิกัดได้อย่างง่ายดาย และมีความสะดวกในการปักหมุดลง Google Maps 2.คลิปสอนการใช้งานทูลส์ Transform…

Continue Reading →

อัพเดท: นำเข้ารูปตัดตามขวางจาก Civil3D เข้า XSection Plot

งาน Earthwork หรืองานดินตัดดินถมนั้นคงขาดรูปตัดตามขวางและรูปตัดตามยาวไม่ได้ และเป็นทราบดีกันว่า Civil3D นั้นเก่งกาจในเรื่องพวกนี้อยู่แล้ว ทำอะไรที่ยากๆได้เช่นสร้าง Grading Object สำหรับงาน Earthwork ที่มีความซับซ้อนได้ แต่ก็แลกกับความยากของการศึกษาโปรแกรมนี้มาเช่นเดียวกัน ข้อเสียของ Civil3D นั้นคือความใหญ่โตของมัน กินทรัพยากรเครื่องคอมพิวเตอร์ของผู้ใช้สูงมากทีเดียวและอีกอย่างคือราคาค่อนข้างจะสูง เหมาะกับองค์กรมากกว่า แต่ถ้าผู้ใช้ตามบ้านๆมีกำลังซื้อก็ไม่ว่ากันครับ ดังนั้นการสร้างแผนที่รูปตัดตามขวางใน…

Continue Reading →

อัพเดท: คำนวณแปลงพิกัดในโครงการรถไฟความเร็วสูงไทย-จีน ด้วยโปรแกรมรวมเครื่องมือฉบับกระเป๋าสำหรับช่างสำรวจ (Surveyor Pocket Tools)

จากบทความที่แล้ว ผมได้พาย้อนรอยไปดูระบบพิกัดที่ใช้ในโครงการรถไฟความเร็วสูงไทยจีน และทางดร.ไพศาล ได้มาไขความกระจ่างว่าวิธีการออกแบบในโครงการนี้เป็นการขยายรูปทรงรีแบบอัตราส่วน (Scale reference ellipsoid) ตามค่าความสูง project plane ที่ทางผู้ออกแบบโครงการนี้ให้มา โดยที่ค่า K0 = 1.0 เป็นค่าคงที่ พร้อมได้เอื้อเฟื้อโค้ดไพทอนสำหรับการแปลงค่าพิกัดมาให้ดูเป็นตัวอย่าง ผมขอขอบคุณมา ณ ที่นี้เป็นอย่างสูง…

Continue Reading →

โปรแกรมมิ่ง: เขียนโค้ดไพทอนสร้างเส้นชั้นความสูง (contours) ด้วยไลบรารี matplotlib

เป็นความฝันของผมอันหนึ่งตั้งแต่สมัยจบใหม่ๆที่จะเขียนโปรแกรมสร้างชั้นความสูงจากข้อมูลจุดงานสำรวจ x, y, z แต่จนแล้วจนเล่าโครงการนี้ไม่เคยเกิดสักที เนื่องจากความรู้ความสามารถและทักษะไม่เพียงพอ ด้วยความยากในการคิดอัลกอริทึมที่จะสร้างสามเหลี่ยมด้านที่สั้นที่สุดจากจุด (point) งานสำรวจ จนกระทั่งเลยวัยแห่งความฝันอันนั้นมาไกลมากแล้ว ปัจจุบันในยุค open source มีไลบรารีด้านนี้ที่มีโมดูลส่วนหนึ่งที่มีความสามารถใกล้เคียงที่สามารถนำมาสร้างเส้นชั้นความสูงได้คือ matplotlib ไลบรารี matplotlib ตัว matplotlib เองถูกนำไปใช้ร่วมกับ…

Continue Reading →