ทดสอบ ROS หลังติดตั้งเสร็จ
บทความสอนวิธีทดสอบการทำงานของ ROS หลังจากติดตั้งเสร็จ
22 November, 2019 by
ทดสอบ ROS หลังติดตั้งเสร็จ
Liew Wuttipat
| No comments yet

        หลังจากที่เราติดตั้ง ROS เสร็จเรียบร้อยแล้ว ต่อไปเราก็จะมาทดสอบการทำงานของมันกัน ว่าสามารถใช้งานได้รึเปล่า ถ้าตามตัวอย่างเราจะใช้แพ็กเกจ Turtlesim ซึ่งหากติดตั้ง ROS แบบ desktop-full ก็จะมีให้มาอยู่แล้ว หากไม่มีก็สามารถติดตั้งเองได้ โดยแพ็กเกจนี้จะเป็นการเปิดหน้าต่าง GUI ที่มีเต่าตรงกลางจอขึ้นมา แล้วจะให้เราควบคุมการเคลื่อนที่ของเต่าด้วยคีย์บอร์ด

        ในบทความนี้ สำหรับมือใหม่สุดๆ อาจจะงงหรือสับสนสักหน่อย เนื่องจาก จะมีคำแปลกๆที่ไม่เคยได้ยินโผล่ขึ้นมา เช่น Node (โหนด), Package (แพ็กเกจ), roscore (รอสคอร์), roslaunch (รอสลันช์), rosrun (รอสรัน) ซึ่งเดี๋ยวผมจะมาอธิบายคำศัพท์ต่างๆที่ใช้ใน ROS เหล่านี้ ให้ได้เข้าใจกันในบทความต่อๆไป บทความนี้จะเป็นการทดสอบ Verify ก่อนว่า ROS ที่เราเพิ่งติดตั้งเสร็จนั้นสามารถใช้งานได้โดยไม่มีปัญหา

เรามาเริ่มกันเลย

  1. เปิดใช้งาน roscore
    เปิด Terminal ขึ้นมาคีย์ลัด (ctrl + alt + t) และเราจะเปิด ROS System ขึ้นมา โดยให้พิมพ์คำสั่ง roscore เข้าไป

    $ roscore


  2. รัน Turtlesim Node ที่อยู่ใน Turtlesim Package
    เปิดอีก Terminal ขึ้นมาใหม่แล้วพิมพ์คำสั่งว่า

    $ rosrun turtlesim turtlesim_node

    คำสั่งนี้จะเป็นการรันโหนดที่ชื่อว่า turtlesim_node ในแพกเก็จชื่อว่า turtlesim



    เมื่อรันเสร็จเราจะเห็นหน้าต่าง GUI สีฟ้าที่มีรูปเต่าอยู่ตรงกลางโผล่ขึ้นมา ตามภาพด้านล่างนี้ (เต่าบางทีอาจจะไม่เหมือนกันในการรันแต่ละครั้ง มันจะสุ่มออกมา)

  3. รัน Teleop key Node ที่อยู่ใน Turtlesim Package
    เปิดอีก Terminal ขึ้นมาใหม่แล้วพิมพ์คำสั่งว่า

    $ rosrun turtlesim turtle_teleop_key
    คำสั่งนี้จะเป็นการรันโหนดที่ชื่อว่า turtle_teleop_key ในแพกเก็จชื่อว่า turtlesim



    เราจะเห็นข้อความเขียนบอกว่า ให้เรากดลูกศรที่คีย์บอร์ด เพื่อที่จะสั่งให้เต่าเคลื่อนที่ (เวลากดปุ่ม ต้องมากดในหน้าต่าง Terminal อันนี้เท่านั้น) เมื่อเรากดปุ่มลูกศรแล้วเต่าที่อยู่ที่หน้าต่าง GUI ก็จะเคลื่อนทีไปตามที่เรากด



  4. รัน RQt graph Node ที่อยู่ใน RQt graph Package
    เปิดอีก Terminal ขึ้นมาใหม่แล้วพิมพ์คำสั่งว่า

    $ rosrun rqt_graph rqt_graph

    rqt_graph เป็นหน้าต่าง GUI แสดงกราฟการเชื่อมต่อกันระหว่างโหนดต่างๆ ที่มีการส่งข้อมูลหากันใน ROS System


    โดยตัวที่อยู่ในวงกลม (วงรี) จะหมายถึง Node (โหนด) และตัวที่อยู่ในสี่เหลี่ยม จะหมายถึง Topic (ทอปปิก) ที่ส่งข้อมูลหากัน (**เดียวผมอธิบายในบทความถัดไป**)

    จากภาพ จะเห็นว่ามีลูกศรชี้จากโหนด /teleop_turtle ไปยังโหนด /turtlesim แล้วคั่นกลางด้วยทอปปิก /turtle1/cmd_vel ซึ่งรวมๆแล้วที่กราฟนี้แสดงการทำงาน คือ การที่เรากดคีย์บอร์ดจะเป็นการส่ง ความเร็วการเคลื่อนที่ของเต่าจากโหนด teleop_turtle ไปยังโหนด turtlesim ที่รอรับความเร็วอยู่ ซึ่งส่งผลให้เต่าสามารถเคลื่อนที่ไปมาได้

    ถ้าทำมาถึงขั้นนี้แล้วไม่มีปัญหาก็แสดงว่า ROS ของเราสามารถทำงานได้ปกติ

  5. การปิดทุกอย่าง
    การปิดนั้นให้เราเข้าไปที่หน้าต่าง Terminal ทั้งหลายที่เราเปิดอยู่แล้วกด (ctrl +c) ก็จะเป็นการปิดการทำงานของโปรแกรมที่เปิดเอาไว้อยู่

ก็จบไปแล้วสำหรับบทความนี้ ทดสอบการทำงานของ ROS เบื้องต้น ในบทความหน้าผมจะเขียนเกี่ยวกับคำศัพท์ที่เวลาใช้ ROS แล้วเจอกันบ่อยๆ ให้ได้เข้าใจกัน ฝากติดตามด้วยนะครับ


 
in ROS
# ROS
Sign in to leave a comment