ROS2

ROS2 – 14 เขียน Publisher / Subscriber ด้วยภาษา C++

เขียน Publisher และ Subscriber ด้วยภาษา C++ Topics : ข้อความจะถูกส่งผ่านระบบการขนส่งที่มีการ Publisher / Subscriber โหนดที่ส่งข้อความจะเรียกว่า Publisher ชื่อที่ระบุใน Topic จะใช้เพื่อระบุเนื้อหาของข้อความ โหนดที่สนใจในข้อมูลบางประเภทจะทำการ Subscriber หัวข้อที่ต้องการ…

ROS2 – 13 เขียน Publisher / Subscriber ด้วยภาษา Python

เขียน Publisher และ Subscriber ด้วยภาษา Python Topics : ข้อความจะถูกส่งผ่านระบบการขนส่งที่มีการ Publisher / Subscriber โหนดที่ส่งข้อความจะเรียกว่า Publisher ชื่อที่ระบุใน Topic จะใช้เพื่อระบุเนื้อหาของข้อความ โหนดที่สนใจในข้อมูลบางประเภทจะทำการ Subscriber หัวข้อที่ต้องการ…

ROS2 – 12 ทดสอบ ควบคุมเต่าบน ROS2

ควบคุมเต่าบน ROS2 หลังจากที่เราทดสอบการใช้งาน โหนด ของ ROS2 มาบ้างแล้ว ต่อไปเราก็จะมาทำความเข้าใจการสื่อสาร ระหว่างโหนดต่างๆ และทดสอบการทำงานของมันว่าสามารถใช้งานได้แล้วรึเปล่า โดยเราจะใช้ Turtlesim (เต่าจำลอง) ที่ ROS2 มีให้มาอยู่แล้ว ซึ่งจะเป็นการเปิดหน้าต่างที่มีเต่าขึ้นมา แล้วควบคุมเต่าด้วย keyboard ให้เราได้ศึกษาการใช้งานคำสั่งพื้นฐานควบคุมการทำงานต่าง…

ROS2 – 11 เขียน Node ภาษา C++ แบบ OOP

เขียน Node ภาษา C++ แบบ OOP OOP ก็คือ “ธรรมชาติของวัตถุ” หมายความว่า OOP จะมองสิ่งแต่ละสิ่งถือเป็น “วัตถุชิ้นหนึ่ง” (Object) มันจะมีสีแดงหรือสีเขียว ยาวหรือสั้น มันก็คือวัตถุชิ้นหนึ่งเหมือนกัน และเราสามารถกำหนดประเภทหรือคลาสให้กับวัตถุเหล่านั้นได้ นอกจากนี้ เมื่อ…

ROS2 – 10 เขียน Node ภาษา C++ เบื้องต้น

เขียน Node ภาษา C++ เบื้องต้น การทำงานของ ROS จะแบ่งเป็น Node แต่ละ Node จะทำหน้าที่เฉพาะเช่น Node เซนเซอร์อุณหภูมิ, Node เซนเซอร์ความเร็ว, Node ควบคุมมอเตอร์, Node Lidar…

ROS2 – 9 เขียน Node ภาษา Python แบบ OOP

เขียน Node ภาษา Python แบบ OOP การเขียนโปรแกรมเชิงวัตถุ OOP (Object Oriented Programming) เป็นวิธีการเขียนโปรแกรมที่นำแนวคิดในโลกของความเป็นจริงมาใช้กับในโลกของการเขียนโปรแกรมในการที่ โปรแกรมเมอร์ สร้างซอฟต์แวร์ขึ้นมาเพื่อแก้ไขปัญหาต่างๆ OOP เป็นวิธีการเขียนโปรแกรมรูปแบบหนึ่ง โดยมองสิ่งต่างๆในระบบเป็นวัตถุ (Object) ชิ้นหนึ่งที่มีหน้าที่และความหมายในตัว โดยวัตถุๆนั้น…

ROS2 – 8 เขียน Node ภาษา Python เบื้องต้น

เขียน Node ภาษา Python เบื้องต้น Node :เป็นกระบวนการที่ใช้ในการดำเนินการโปรแกรมต่าง ซึ่ง ROS ได้รับการออกแบบให้เป็นระบบแบบแยกส่วนในระดับที่ละเอียด ระบบควบคุมหุ่นยนต์มักจะประกอบด้วยหลายโหนด ตัวอย่างเช่นหนึ่งโหนดควบคุม laser range-finder, หนึ่งโหนดควบคุมมอเตอร์ล้อ, หนึ่งโหนดทำการแปลงค่าต่างๆ, หนึ่งโหนดทำการวางแผนเส้นทาง, หนึ่งโหนดให้มุมมองกราฟิกของระบบและอื่น ๆ เป็นต้น…

ROS2 – 7 สร้าง Package ภาษา C++

Packages : เป็นโปรแกรมหลักที่ใช้ในการบริหาร บริการ จัดการซอฟต์แวร์ต่างๆใน ROS ซึ่งอาจจะประกอบไปด้วย ROS runtime processes (nodes), a ROS-dependent library, datasets, configuration files, และโปรแกรมอื่นๆที่จำเป็นสำหรับการจัดการและการใช้งาน สำหรับนักพัฒนาที่ออกแบบและสร้าง Packages…

ROS2 – 6 สร้าง Package ภาษา Python

Packages : เป็นโปรแกรมหลักที่ใช้ในการบริหาร บริการ จัดการซอฟต์แวร์ต่างๆใน ROS ซึ่งอาจจะประกอบไปด้วย ROS runtime processes (nodes), a ROS-dependent library, datasets, configuration files, และโปรแกรมอื่นๆที่จำเป็นสำหรับการจัดการและการใช้งาน สำหรับนักพัฒนาที่ออกแบบและสร้าง Packages…

ROS2 – 5 ติดตั้ง Visual Studio Code บน Ubuntu 20.04

ติดตั้ง Visual Studio Code บน Ubuntu 20.04 Visual Studio Code เป็นโปรแกรมแก้ไขโค้ดโอเพนซอร์ซที่มีประสิทธิภาพซึ่งพัฒนาโดย Microsoft มีการรองรับการดีบักในตัว, การควบคุม Git แบบฝัง, การเน้นไวยากรณ์, การเติมโค้ดให้สมบูรณ์, เทอร์มินัลรวม, การรีแฟคเตอร์โค้ด…

ROS2 – 4 สร้าง Workspace ROS2

ภาพองค์ประกอบโครงสร้าง (Layout) ของ Workspace ใน ROS ใน 1 Workspace จะมี Package ก็ได้ขึ้นอยู่กับโปรแกรมที่เราเขียนลงไปโดยสำหรับ ROS แต่จะรองรับอยู่ 2 ภาษาคือ Python และ C++ บทความการสร้าง…

ROS2 – 3 ติดตั้ง Colcon เครื่องมือช่วยสร้าง ROS2

ติดตั้ง Colcon เครื่องมือช่วยสร้าง และ Build ROS2 รุ่น Foxy 1 : ทดสอบการทำงาน ROS2 เบื้องต้น ทดสอบการทำงาน ROS2 เบื้องต้น ตามขั้นตอนลิงค์ด้านล่าง ทดสอบการทำงาน ROS2 เบื้องต้น…

ROS2 – 2 ทดสอบการทำงาน ROS2 เบื้องต้น

เริ่มแรก เรากำลังจะทำการทดสอบ Node 2 อัน ที่เป็นเดโม มาพร้อมกับการติดตั้งอยู่แล้ว 1 คือ Node talker ที่ทำหน้าที่พูด โดยการสุ่มตัวเลข แล้วส่งตัวเลขนั้นออกไป และ 2 คือ Node listener ทำหน้าที่รับฟัง…

ROS2 – 1 ติดตั้ง ROS2 Foxy บน Ubuntu 20.04

Robot Operating System(ROS) เป็นระบบที่สร้างขึ้นเพื่อทำให้เกิดความยืดหยุ่นในการเขียนซอฟต์แวร์ควบคุมหุ่นยนต์ ซึ่งใน ROS จะรวบรวมชุดเครื่องมือและชุดคำสั่งต่างๆที่จำเป็นในการพัฒนาหุ่นยนต์เอาไว้ ซึ่งสิ่งต่างๆเหล่านี้จะลดความยุ่งยากในการสร้างในการพัฒนาหุ่นยนต์ที่มีความซับซ้อน และทำให้มีประสิทธิภาพในการพัฒนาหุ่นยนต์หลากหลายรูปแบบ การพัฒนาหุ่นยนต์ในสมัยก่อนจะเป็นการพัฒนาแบบตัวใครตัวมัน ทำให้ความรู้หรือข้อมูลต่างๆถูกเก็บไว้ที่คนๆเดียวหรือเก็บเป็นความลับอยู่ในองค์กรนั้นๆ ซึ่งการพัฒนารูปแบบนี้ทำให้ยากต่อการพัฒนาหุ่นยนต์เพราะเนื่องจากผู้พัฒนาจำเป็นจะต้องพัฒนาหุ่นยนต์เองในทุกๆส่วนไม่ว่าจะเป็นระบบรับรู้ของหุ่นยนต์ ระบบขับเคลื่อนของหุ่นยนต์ รวมไปถึงกระบวนการทำงานต่างๆที่มีความซับซ้อน ส่งผลให้ ROS ถูกนำมาใช้งานเพื่อให้การพัฒนาหุ่นยนต์ที่มีความซับซ้อนเป็นไปได้อย่างรวดเร็ว ROS ถูกสร้างบนพื้นฐานของการสนับสนุนให้พัฒนาซอฟต์แวร์ของหุ่นยนต์ที่สามารถทำงานร่วมกันได้ ตัวอย่างเช่นห้องปฏิบัติการหนึ่งอาจมีผู้เชี่ยวชาญในการทำแผนที่สภาพแวดล้อมในร่ม…

ติดตั้ง Ubuntu 20.04 บน Virtual Machine (VirtualBox)

บทความการติดตั้ง Ubuntu 20.04 บน VirtualBox โดยใช้ Windows10 Ubuntu คือระบบปฎิบัติการ Linux ชนิดหนึงซึ่ง ลีนุกซ์ (Linux) ก็เป็นระบบปฏิบัติการเช่นเดียวกับ Dos , Window หรือ Unix โดยลีนุกซ์นั้นจัดว่าเป็นระบบปฏิบัติการยูนิกซ์ประเภทหนึ่ง…

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

Privacy Preferences

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

Allow All
Manage Consent Preferences
  • Always Active

Save