30 มิ.ย. 2021 เวลา 08:30 • การศึกษา
2021 Programming Language For Robotics – อยากสร้างหุ่นยนต์ต้องเรียนเขียนโปรแกรมภาษาอะไรบ้าง ?
2021 Programming Language For Robotics – อยากสร้างหุ่นยนต์ต้องเรียนเขียนโปรแกรมภาษาอะไรบ้าง ?
มันเป็นความจริงที่หลีกเลี่ยงไม่ได้เลยว่า ในปัจจุบันการ Coding หรือที่เรียกว่าการเขียนโปรแกรมได้เข้ามามีบทบาทในหลายอาชีพ ไม่ว่าจะเป็นนักวิทยาศาสตร์ นักวิเคราะห์ข้อมูล การบัญชี หรือแม้แต่ในสายงานวิศวกรรมหุ่นยนต์ก็มีการใช้การเขียนโปรแกรมเป็นหลักเช่นกัน
หากใครคุ้นเคยในการเขียนโปรแกรม จะทราบดีว่าก่อนที่เราจะตัดสินใจเขียนโปรแกรม เราจะต้องเลือกว่าเราจะเขียนโปรแกรมภาษาอะไร ภาษาโปรแกรมก็เหมือนกับภาษาพูดของเรานั่นแหละครับ หากเราเลือกที่จะเขียนภาษาหนึ่ง เราจะต้องเขียนโดยยึดตามไวยากรณ์ของภาษานั้น ซึ่งภาษาโปรแกรมแต่ละภาษาก็จะมีไวยากรณ์ที่แตกต่างกันไป และในโลกนี้ก็มีคนประดิษฐ์ภาษาโปรแกรมมาให้เลือกมากมายอีกด้วย
แล้วนักพัฒนาหุ่นยนต์เขาใช้ภาษาโปรแกรมอะไรกันล่ะ !?
วันนี้แอดมินในฐานะคนที่คลุกคลีอยู่ในวงการของคนสร้างหุ่นยนต์ จะมาเล่าให้ฟังว่าภาษาโปรแกรมที่นิยมใช้ในการพัฒนาหุ่นยนต์มีอะไรบ้างนะครับ
1. Python
Python (ขอบคุณภาพจาก : https://commons.wikimedia.org/wiki/File:Python-logo-notext.svg)
ภาษางูหลาม (Python) เป็นหนึ่งในภาษาที่มาแรงที่สุดในศตวรรษนี้เลยก็ว่าได้ สาเหตุที่มันโด่งดังและแพร่หลายเนื่องจากไวยากรณ์ของภาษาเข้าใจง่าย อีกทั้งยังมี Library เยอะมาก (Library คือโปรแกรมที่คนอื่นเขียนมาให้เราใช้ ซึ่งมักจะเป็นโปรแกรมที่คนนิยมเขียนกัน ก็เลยมีคนเขียนแล้วแชร์ให้คนอื่น คนอื่นจะได้ไม่ต้องเขียนใหม่เองหมด)
นักพัฒนาหุ่นยนต์ก็ใช้ Library จาก Python เองด้วย ในการทำ Machine Learning Python ก็มี Library ที่หลายคนนิยมใช้คือ Tensorflow และ Image Processing ก็มี OpenCV ให้ใช้ ซึ่งสะดวกกว่าเขียนเองมาก จึงเป็นที่แพร่หลายในวงการหุ่นยนต์ ส่วนมาก Python จะถูกใช้ใน High-level Computing (คำนวณในคอมพิวเตอร์)
2. C++
C++ (ขอบคุณภาพจาก : https://en.wikipedia.org/wiki/C%2B%2B)
สำหรับคนที่ต้องการ Performance ของโปรแกรมที่ตัวเองเขียน ก็จะขยับจากภาษา Python มาเป็นภาษา C++ ซึ่งก็มี Library ระดับ High-level Computing รองรับด้วย เช่น Tensorflow และ OpenCV เหมือนกับ Python เลย อีกทั้งการคำนวณใน C++ จะประมวลผลเร็วกว่าภาษา Python แต่ก็แลกมาด้วยการเขียนโปรแกรมที่ยากกว่า
ส่วนมาก C++ จะใช้ได้ทั้งใน High-level Computing จนไปถึง Low-level Computing โดยที่ตัวอย่างของ Low-level Computing ที่ใช้ภาษา C++ คือการเขียนโปรแกรมลงในบอร์ด Arduino นั่นเอง (ไว้ในตอนถัดไปจะมาเขียนเกี่ยวกับ Arduino นะครับ)
3. C
C (ขอบคุณภาพจาก : https://simple.wikipedia.org/wiki/C_(programming_language))
ภาษา C เป็นภาษามาตรฐานที่แพร่หลายมาอย่างช้านาน ในวงการหุ่นยนต์มักจะใช้ภาษา C ในการเขียนโปรแกรมระดับ Low-level หรือพูดง่าย ๆ คือเขียนลงบอร์ดนั่นแหละ เนื่องจากมันเป็นภาษาที่เข้าถึง Hardware ได้ง่าย ประมวลผลเร็ว ประหยัดพลังงาน และเป็นภาษาที่บอร์ดหลายยี่ห้อเลือกใช้อีกด้วย
4. MATLAB
MATLAB (ขอบคุณภาพจาก : https://commons.wikimedia.org/wiki/File:Matlab_Logo.png)
MATLAB เป็นโปรแกรมที่ไม่ใช่ Open-source หนึ่งเดียวในภาษาทั้งหมดที่กล่าวมา กล่าวคือหากต้องการใช้ Framework MATLAB ก็ต้องจ่ายเงินซื้อ (ซึ่งค่อนข้างแพงอยู่) แต่ความสามารถของ Framework มันล้นหลามมาก นักพัฒนาหุ่นยนต์มักจะนำ MATLAB มาวิเคราะห์การเคลื่อนไหว ทำ Simulation ก่อนที่จะนำไปใช้จริงเพื่อยืนยันว่าแบบและสมการที่คิดมาสามารถใช้ได้จริงหรือไม่
ซึ่งเป็นขั้นตอนที่จำเป็นมาก หากเราไม่ทำ Simulation ก่อนแล้วมาลองว่ามันใช้ได้ไหมในระบบจริงเลย มันจะทำให้เราเสียเงินและเวลามากหากมันล้มเหลว
5. Julia
Julia (ขอบคุณภาพจาก : https://en.wikipedia.org/wiki/Julia_(programming_language))
Julia ถือว่าเป็นภาษาน้องใหม่ที่ Open-source สำหรับวิเคราะห์ ทำ Simulation โดยเฉพาะ ในปัจจุบันข้อดีของมันคือไม่ต้องเสียค่าใช้จ่ายในการใช้เลย ซึ่งฟีเจอร์อาจจะยังไม่ครอบคลุมเท่า MATLAB แต่ก็ถือว่าเป็น Tools ที่ทรงพลังเลยทีเดียวสำหรับคนที่ต้องการทำสาย Simulation ฟรี ๆ ภาษานี้แอดมินก็คาดว่าจะเรียนเพิ่มปีนี้เหมือนกันครับ XD
จากที่กล่าวมาทั้งหมดนี้ก็จะเห็นได้ว่าภาษาโปรแกรมจะถูกเลือกใช้ตามการใช้งานของมัน ซึ่งการพัฒนาหุ่นยนต์ตัวนึงมีการใช้ภาษาโปรแกรมค่อนข้างหลากหลายมากก จึงต้องใช้หลายภาษาปะปนกันไปหน่อย แต่นักพัฒนาก็ไม่จำเป็นต้องถนัดหรือโปรทุกภาษานะครับ ในการทำหุ่นยนต์จริงเราจะทำกันเป็นทีม ซึ่งเราสามารถเลือกภาษาโปรแกรมที่ถนัดได้เลยตามหน้าที่เราครับ 😉
เขียนโดย - แอดมิน ROBOKU
โฆษณา