วันพุธที่ 5 มิถุนายน พ.ศ. 2567

  • เริ่มต้นสร้าง Workspace ด้วยคำสั่ง
mkdir catkin_ws

  • เข้าไปใน catkin_ws จากนั้นสร้างโฟลเดอร์ src ด้วยคำสั่ง
mkdir src
  • สร้าง Environment สำหรับ Complie ด้วยคำสั่ง
catkin_make
  • ใช้คำสั่ง ls จะพบโฟล์เดอร์ build, devel และ src ทำให้ Ubuntu รู้จัก setup.bash ใน devel ด้วยคำสั่ง
echo "/home/catkin_ws/devel/setup.bash" >> ~/.bashrc
  • Run ไฟล์ .bashrc ด้วยคำสั่ง
source ~/.bashrc
  • เข้าไปใน catkin_ws/src แล้ว clone repository ที่ชื่อว่า bogie มาด้วยคำสั่ง
cd catkin_ws/src
git clone https://github.com/midnightpen/bogie.git
  • ออกไปยัง catkin_ws แล้ว Complie ด้วยคำสั่ง
cd ..
catkin_make
  • หากพบ error ให้ติดตั้ง Library ที่ขาดเข้าไปด้วยคำสั่ง
sudo apt-get install ros-melodic-amcl
sudo apt-get install ros-melodic-dwa-local-planner
sudo apt-get install ros-move-base
sudo apt-get install ros-melodic-gmapping
sudo apt-get install ros-melodic-map-server
sudo apt-get install ros-melodic-bfl
sudo apt-get install ros-melodic-serial
sudo apt-get install libavcodec-dev
sudo apt-get install libswscale-dev
sudo apt-get install libv4l-dev
  • หากพบ error เกี่ยวกับ opencv ให้ไปแก้ไขไฟล์โดยเปลี่ยน opencv เป็น opencv4 ด้วยคำสั่ง
sudo gedit /opt/ros/melodic/share/cv_bridge/cmake/cv_bridgeConfig.cmake
  • หากพบ error อีกให้ติดตั้ง Library ที่ขาดเข้าไปด้วยคำสั่ง
sudo apt-get install ros-melodic-camera-info-manager
  • ออกไปยัง catkin_ws แล้ว Complie อีกครั้งด้วยคำสั่ง
cd ..
catkin_make
  • เข้าไปใน catkin_ws/src แล้ว clone repository ที่ชื่อว่า teleop_twist_joy มาด้วยคำสั่ง
git clone https://github.com/ros-teleop/teleop_twist_joy.git
  • ออกไปยัง catkin_ws แล้ว Complie อีกครั้งด้วยคำสั่ง
cd ..
catkin_make
  • ssh เข้าไปใน bogie และ run rplidar ด้วยคำสั่ง
ssh bogie@ip-address
roscore
roslaunch rplidar rplidarNode
rostopic list
rostopic echo /scan
  • exit ออกจาก bogie จากนั้นเข้าไปแก้ไขไฟล์ .bashrc ด้วยคำสั่ง
sudo gedit ~/.bashrc
  • ทำให้ ROS MASTER กับ ROS SLAVE เชื่อมต่อถึงกันโดยพิมพ์คำสั่งต่อท้ายในไฟล์ .bashrc ทั้งฝั่ง MASTER และ SALVE ดังนี้
export ROS_MASTER_URI=http://bogie-ip-address:11311
export ROS_IP=device-ip-address
  • Run ไฟล์ .bashrc ด้วยคำสั่ง
source ~/.bashrc
  • ssh เข้าไปใน bogie และ run bogie_bringup ด้วยคำสั่ง
ssh bogie@ip-address
roslaunch bogie_bringup bringup.launch
  • exit ออกจาก bogie และ run rviz ด้วยคำสั่ง
rostopic list
rosrun rviz rviz
  • ไปที่ปุ่ม Add > By Topic > LaserScan
  • เปลี่ยน Fixed Frame เป็น base_link
  • เปิด Terminal ใหม่และโชว์ rqt ด้วยคำสั่ง
rqt
  • ไปที่เมนู Plugins > Topics > Topic Monitor
  • คลิก /scan เพื่อดูแต่ละ item ใน /scan ได้
  • ไปที่เมนู Plugins > Introspection > Node Graph
  • ควบคุม bogie ผ่าน keyboard ด้วยคำสั่ง
rostopic echo /cmd_vel
  • เปิด Terminal ใหม่และ run teleop-twist-keyboard ด้วยคำสั่ง
sudo apt-get install ros-melodic-teleop-twist-keyboard
rosrun teleop-twist-keyboard teleop-twist-keyboard.py
  • ทดสอบกด Keyboard ปุม u i o j k l m , .
  • ควบคุม bogie ผ่าน Joy Stick ด้วยคำสั่ง
    sudo apt-get install ros-melodic-teleop-twist-joy
    roslaunch teleop-twist-joy teleop.launch
  • ssh เข้าไปใน bogie และทำแผนที่ด้วยคำสั่ง
    ssh bogie@ip-address
    roslaunch bogie_bringup bringup.launch
    roslaunch bogie_navigation mapping.launch
    roslaunch bogie_navigation navigation.launch
  • exit ออกจาก bogie และ run rviz ด้วยคำสั่ง
    rosrun rviz rviz
  • ไปที่เมนู File > Open Config > opt > ros > melodic > share > hector_slam > rviz_config
  • ไปที่ปุ่ม Add > By Topic > /map
  • บันทึกแผนที่

  • ssh เข้าไปใน jetson และทำแผนที่ map-sr ด้วยคำสั่ง
    ssh jetson@ip-address
    roscore
    rosrun rplidar_ros rplidarNode
    rosrun mytf tf_tx
    rosrun odometry odom
    rosrun hector_mapping hector_mapping
    rosrun rviz rviz

ไม่มีความคิดเห็น:

แสดงความคิดเห็น