ปกติเครื่องคิดเลข HP Prime G2 ที่ผมยกให้เป็นเทพของเครื่องคิดเลขด้านวิทยาศาสตร์ทั้งหลาย ผมเขียนโปรแกรมด้วยภาษา HP PPL หรือ Prime Programming Language คล้ายๆปาสคาลแต่บางอย่างคล้ายไพทอน จากทิศทางที่เครื่องคิดเลขระดับไฮเอ็นต์ของ Casio และ TI ได้นำร่องโดยเอาภาษาไพทอนลงเครื่องคิดเลขไปก่อนหน้านี้ โดยจริงๆแล้วไพทอนในเวอร์ชั่นของเครื่องคิดเลขจะถูกออปติไมซ์ให้ใช้กับเครื่องที่มีความเร็วซีพียูที่ช้าและแรมไม่มากนัก ที่ดังที่สุดได้แก่ ไมโครไพทอน (Micropython) ที่พอร์ตภาษาไพทอนลงไมโครคอนโทรลเลอร์ ทำให้มีไลบรารีจำนวนมากที่ถูกพอร์ตลงมาใช้งานเช่นเดียวกัน อานิสงค์เลยได้มาลงที่เครื่องคิดเลขเช่นเดียวกัน ผมเห็นว่าทีมงานผู้พัฒนาเครื่องคิดเลข Prime ของ HP คงเล็งเห็นแล้วว่าการพัฒนาลากภาษา PPL ให้ใช้ในกลุ่มแคบๆ…
Tag: calculator
มหาเทพ 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 ตอนโปรแกรมคำนวณโค้งสไปรัล (Spiral Curve)
ตอนที่แล้วผมนำเสนอโปรแกรมคำนวณโค้งราบบน HP Prime G2 ค่อนข้างน่าประทับใจโปรแกรมเขียนด้วยภาษา PPL ภาษานี้พัฒนาโดย HP เอง ลักษณะคล้ายภาษาปาสคาลแต่เพิ่มเรื่องลิสต์ ปรับ syntax ให้กระชับเข้าใจง่าย ประกาศตัวแปรแต่ตัวแปรไม่มี type มีไลบรารีฟังก์ชั่นให้พร้อมสรรพทั้งด้านคณิตศาสตร์ สถิติ และมีฟังก์ชันวาดรูปมาค่อนข้างดี สามารถอ่านไฟล์ได้ การ Input ข้อมูลทาง HP เตรียมไลบรารีให้มาใช้ง่ายลดการเขียนโค้ดลงไปมาก ข้อเสียคือไม่สามารถคอมไพล์โปรแกรมเป็นไบนารีโค้ดได้ เวลาคนอื่นเอาโปรแกรมไปสามารถเปิดซอร์สโค้ดของปรแกรมได้ด้วย ซึ่งถ้าใครคิดจะขายโปรแกรมคงไม่เหมาะนัก เพราะก็อปปี้ต่อๆกันได้ และอีกอย่างคือราคาเครื่องคิดเลขค่อนข้างสูง แต่ถ้ามีเงินเหลือใช้จะซื้อหามาใช้งานดูก็ไม่ว่ากัน คุ้มค่าสมราคา จอสัมผัสใช้ง่ายใช้ควบคู่กับปุ่มคีย์บอร์ดที่กดง่ายตอบสนองดี…
ปฐมฤกษ์โปรแกรมแรกบนเครื่องคิดเลขเทพเหนือเทพ HP Prime G2 (Horizontal Curve)
หนึ่งเดือนที่ผมจับเครื่องคิดเลขเอชพี ไพรม์ รุ่นจีทู ราคาแปดพันห้าร้อยบาทนับว่าเป็นเครื่องคิดเลขที่ราคาสูงที่สุดที่ผมเคยเป็นเจ้าของมา มีฟังก์ชั่นเยอะมาก วาดกราฟสามมิติได้ แต่ผมไม่ได้ใช้ จะไม่ขอพูดถึง สถาปัตยกรรมใช้ซีพียูแกน ARM Cortex A7 ความเร็ว 528 MHz มีแรม 256 MB และแฟลชรอม 512 MB หน้าจอแสดงผลขนาด 320 x 240 พิกเซล แสดงผลเป็นจอสีได้ 16 บิต หน้าจอสัมผัสแบบโทรศัพท์มือถือทั่วๆไป มีแบตเตอรีขนาด 2000 mAh HP…
(ฟรี)โปรแกรมภาษาไพทอนบนเครื่องคิดเลขคาสิโอ fx-9750GIII fx-9860GIII และ fx-cg50 โปรแกรมพื้นฐานงานสำรวจชุดที่ 4 (COGO Selected Serie 4)
ตอนนี้มาถึงโปรแกรมพื้นฐานงานสำรวจชุดที่ 4 (COGO Selected Serie 4) สำหรับเครื่องคิดเลขคาสิโอ fx-9750GIII, fx-9860GIII และ fx-cg50 PRIZM สามรุ่นที่รองรับภาษาไพทอนหรือไมโครไพทอน ได้ในขณะนี้ หาซื้อได้ในเมืองไทย ราคาย่อมเยาที่สุดคือ fx-9750GIII ที่ราคาประมาณสามพันบาท ถ้ามีงานการทำเป็นหลักเป็นแหล่งแล้วไม่น่าแพง บางทีเราซื้อโทรศัพท์มือถือได้ราคาเป็นเรือนหมื่นไม่คิดอะไรมาก แต่กับเครื่องคิดเลขคิดแล้วคิดอีก สำหรับผมแล้วราคาขนาดนี้ถือว่าคุ้มค่ามาก ผมไปนั่งพลิกดูด้านหลังเครื่อง fx-9860GIII ปรากฎเห็น “Made in Thailand” ค่อนข้างประหลาดใจพอสมควร พอไปพลิกดูเครื่อง fx-cg50 กลับเป็น…
(ฟรี)โปรแกรมภาษาไพทอนบนเครื่องคิดเลขคาสิโอ fx-9750GIII fx-9860GIII และ fx-cg50 โปรแกรมพื้นฐานงานสำรวจชุดที่ 3 (COGO Selected Serie 3)
ตอนนี้มีเครื่องคิดเลขของคาสิโอสามรุ่นที่สามารถโปรแกรมด้วยภาษาไพทอนหรือไมโครไพทอน (MicroPython) ได้คือ fx-9750GIII, fx-9860GIII และ fx-cg50 ทั้งสามรุ่นสามารถหาซื้อได้ไม่ยากนัก ผมซื้อมาทางออนไลน์สะดวกดี สนนราคาเรียงตามรุ่นตอนนี้อยู่ที่ สามพันบาท สี่พันห้าร้อยบาทและเจ็ดพันกว่าบาทตามลำดับ ผมแนะนำให้สำหรับคนที่เบี้ยน้อยหอยน้อยลงทุนกับ fx-9750GIII เพราะราคาไม่แพง คุ้มค่าเกินราคา ทั้งสามรุ่นสามารถโปรแกรมด้วยภาษาคาสิโอเบสิคและภาษาไพทอน แล้วแต่ความถนัด ความชอบ ถ้าโปรแกรมด้วยไพทอนจะสามารถเขียนโปรแกรมที่ยากๆหรือคณิตศาสตร์ซับซ้อนขึ้นมาได้ นี่เป็นเหตุผลสำคัญ ถึงแม้หน่วยความจำของเครื่องคิดเลขจะน้อยก็เป็นโจทย์ให้ผู้พัฒนาโปรแกรมได้ออปติไมซ์โปรแกรมให้ทำงานได้ แต่สำหรับโปรแกรมพื้นฐานงานสำรวจส่วนใหญ่ก็พื้นๆ ไม่มีอะไรซับซ้อน ชุดโปรแกรมพื้นฐานงานสำรวจ COGO (Coordinate Geometry) ชุดที่ 3 มาถึงโปรแกรมพื้นฐานงานสำรวจชุดที่ 3 (COGO…
ไพทอนบนเครื่องคิดเลข Casio fx-cg50 Prizm กลับมาวิ่งฉิวเป็นเทพแล้ว
สองปีที่แล้วพอดีผมถอยเครื่องคิดเลขคาสิโอ fx-cg50 Prizm เพราะว่าสนับสนุนภาษาไพทอน อยากลองเขียนไพทอนบนเครื่องคิดเลขดู แต่เนื่องจากไพทอนไม่สามารถเรียกใช้ฟังก์ชั่นในเครื่องคิดเลขต่างๆ เช่นฟังก์ชั่นวาดรูป ฟังก์ชั่นการพล็อทกราฟ คาสิโอเองก็รีบเอาไพทอนมาลงเครื่องคิดเลขเร็วเกินไป ผมเอามาทำที่ทับกระดาษเล่นๆ จนกระทั่งสองปีให้หลังจนบัดนี้ (10 กันยายน 2020) ทางคาสิโอเพิ่งอัพเดทโอเอสของเครื่องคิดเลขจากรุ่น 3.30 มาเป็น 3.40 และได้เพิ่มฟังก์ชั่นการวาดรูปให้กับเครื่องคิดเลขรุ่นนี้ มาลองดูว่าอัพเดทแล้วมีอะไรบ้าง เพิ่มโมดูล casioplot ในโมดูลนี้จะมีฟังก์ชั่นให้เรียกใช้อยู่ 4 ฟังก์ชั่น draw_string(,,) สำหรับเขียนตัวหนังสือเลือกสี ขนาด ตำแหน่งได้ set_pixel(,) สำหรับเขียนจุดเลือกสี ขนาด…
Update : โปรแกรม Surveyor Pocket Tools คำนวณความสูงจีออยด์ จากไฟล์ค่าพิกัดภูมิศาสตร์
ในกรณีที่ต้องการค่าความสูงจีออยด์จากจุดที่มีจำนวนมากตัวอย่างเช่นเป็นสิบจุดขึ้นไป การมานั่งคำนวณทีละจุดคงไม่ใช่เรื่องที่สะดวกนัก ผมปรับปรุงโปรแกรมให้สามารถอ่านไฟล์ค่าพิกัดภูมิศาสตร์ (ละติจูดและลองจิจูด) ในรูปแบบ CSV ที่ใช้ตัวแบ่งด้วยเครื่องหมายคอมมา “,” ค่าพิกัดละติจูดและลองจิจูด ต้องเป็นรูปแบบทศนิยม (degree) เท่านั้น การจัดเรียงค่าพิกัดของให้ขึ้นต้นด้วยค่าลองจิจูดตามด้วยเครื่องหมายคอมม่าและค่าละติจูด ไฟล์ทดสอบ ไฟล์ที่จะมาทดสอบโปรแกรม ผมสร้างจากโค้ดภาษาไพทอน ให้สุ่มจำนวนจุดค่าพิกัดขึ้นมา 10000 จุด โดยให้ค่าพิกัดที่สุ่มอยู่ในกรอบสี่เหลี่ยมนี้คือ ละติจูด เริ่มที่ 3 องศา ไปสุดที่ 22.9833333333333 องศา ค่าลองจิจูดเริ่มที่ 95 องศา ไปสิ้นสุดที่ 107.9833333333…
ทดสอบเขียนโปรแกรมไพทอน (Python) บนเครื่องคิดเลข Casio fx-cg50 Prizm
ไพทอนบนเครื่องคิดเลข ช่วงนี้ผมมีโอกาสทำงานใกล้ชิดกับภาคสนาม ทำให้มีโอกาสได้จับและใช้เครื่องคิดเลขมากกว่าปกติ ในเวลาที่ผ่านมาไม่ถึงเดือนผมได้ซื้อเครื่องคิดเลข Casio fx-CG50 Prizm เคสสีขาว ที่ซื้อมาเพราะทราบว่าถ้า update OS เป็นรุ่น 3.20 จะสามารถใช้ ไพทอน (Python) ได้ ก็ขอหมายเหตุสักนิดว่าเป็นไมโครไพทอน (Micropython) ที่ทางทีมงาน Micropython ได้พอร์ตออกมาให้มีขนาดเล็กเพื่อเอาไปรันในบอร์ด iOT ได้ หรือบอร์ดที่เป็นไมโครคอนโทรลเลอร์ทั้งหลาย เน้นขนาดเล็ก หน่วยความจำต่ำ กินไฟน้อย ต่ออินเทอร์เน็ตได้ในตัว ผมจะไม่มุ่งไปทางนี้หรอกครับ ในบทความนี้ แต่จะพูดถึงเครื่องคิดเลขคาสิโอ…
Update: โปรแกรมคำนวณเล็งสกัดย้อนฉบับปรับปรุง (Resection) สำหรับเครื่องคิดเลขเทพ Casio fx 9860G II SD
ผมเขียนเรื่องการคำนวณเล็งสกัดย้อน (Resection) จากตอนก่อนหน้านี้ด้วยอัลกอริทีมใหม่ของ Josep M. Font-Llagunes อ่านได้ที่ ติดปีกเครื่องคิดเลขเทพ Casio fx 9860G II SD ด้วยโปรแกรมภาษาซีบน AddIn ตอนที่ 5 โปรแกรมคำนวณ Resection ด้วยอัลกอริทึ่มสมัยใหม่ ในตอนนี้ผมจะมาเรียบเรียงโปรแกรมด้วยไลบรารี MyLib ที่ใช้ก่อนหน้านี้มาหลายโปรแกรมแล้ว โดยในครั้งนี้จะใช้อัลกอริทึมหลายๆตัวมาคำนวณเพื่อเปรียบเทียบกันดู เมื่อคำนวณแล้วมีรูปกราฟฟิคหยาบๆให้ดูพอกล้อมแกล้ม การคำนวณเล็งสกัดย้อน หรือ Resection Problem มีมานานแล้วหลักๆแล้ววิธีการคำนวณแบ่งเป็น 2 วิธีหลักๆคือ แบบการตรีโกณมิติ…