LungMaker

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 โดยลีนุกซ์นั้นจัดว่าเป็นระบบปฏิบัติการยูนิกซ์ประเภทหนึ่ง…

การติดตั้ง Driver CH340G บน Windows 10

การติดตั้ง Driver CH340G บน Windows 10 สำหรับการติดต่อสื่อสารหรือจะอัปโหลดโปรแกรมลงบอร์ด PLC หรือบอร์ดอื่นๆ ที่ใช้ชิป USB to Serial CH340 หรือ CH340G นั้น บนระบบปฏิบัติการ Windows จำเป็นต้องติดตั้ง…

การใช้งานจอ LCD 1602 กับ Arduino Keyestudio PLUS

การใช้งานจอ LCD 1602 กับ Arduino บทความนี้ กล่าวถึงขั้นตอนการใช้งานจอ I2C LCD 1602 กับ Arduino Keyestudio PLUS โดยใช้ Character LCD เป็นจอที่แสดงผลเป็นตัวอักษรตามช่องแบบตายตัว เช่น จอ LCD…

การใช้งาน ATmega32 ภาษาซี กับ 7 Segment

การใช้งาน ATmega32 ภาษาซี กับ 7 Segment Seven Segment Display (SSD) เป็นอุปกรณ์แสดงผลแบบคลาสสิกสำหรับอุปกรณ์อิเล็กทรอนิกส์ดิจิทัลระดับล่าง 7 Segment คือหน้าจอแสดงผลตัวเลข – ตัวอักษร (ได้บางตัว) ที่มีหน้าจอทำมาจากการจัดวางหลอด LED ในแนวยาว…