下載下傳hector_quadrotor軟體包
軟體庫位址
https://github.com/tu-darmstadt-ros-pkg/hector_quadrotor/tree/indigo-devel
下載下傳後解壓到自己的工作空間的src目錄下.
注意:最後一個檔案包括了hector_quadrotor及其依賴項的下載下傳指令.
執行指令:
[email protected]:~/indigo_workspace/hector_quadrotor_ws$ wstool init src /home/g214-m1/indigo_workspace/hector_quadrotor_ws/src/hector_quadrotor/tutorials.rosinstall
下載下傳完成後,有可能會将hector_quadrotor重新下載下傳一遍,如果是的話,那麼删除其中一個即可.
到此,hector_quadrotor和一些依賴包就下載下傳完了.
編譯:
整個編譯過程會出現好幾個缺失包的錯誤,解決辦法就是耐心地一個一個下載下傳,然後再編譯
錯誤1:
辦法:
https://github.com/ros-controls/ros_control/tree/indigo-devel
到上面的網址下載下傳缺失的程式包,放到src目錄下.
錯誤2:
辦法:
https://github.com/ros-simulation/gazebo_ros_pkgs/tree/indigo-devel
到上面的網址下載下傳缺失的程式包,放到src目錄下.
錯誤3:
辦法:
https://github.com/ros-controls/realtime_tools/tree/indigo-devel
到上面的網址下載下傳缺失的程式包,放到src目錄下.
錯誤4:
辦法:
https://github.com/ros-controls/control_toolbox/tree/indigo-devel
到上面的網址下載下傳缺失的程式包,放到src目錄下.
錯誤5:
辦法:
https://github.com/ros-geographic-info/geographic_info
到上面的網址下載下傳缺失的程式包,放到src目錄下.
錯誤6:
辦法:
https://github.com/ros-geographic-info/unique_identifier
到上面的網址下載下傳缺失的程式包,放到src目錄下.
到此,該下載下傳的東西都已經下載下傳好了
編譯catkin_make,最後還會有一個hector_pose_estimation_core程式包找不到geographic_msgs/GeoPose.h的編譯錯誤!
這個錯誤是因為hector_pose_estimation_core程式包下的include檔案夾下沒有包含geographic_msgs/GeoPose.h頭檔案,那怎麼辦呢?
解決辦法很有可能是将geographic_msgs程式包安裝進系統,hector_pose_estimation_core編譯的時候即使在自身的程式包中不含有geographic_msgs/GeoPose.h這個頭檔案,那麼也能在系統路徑中搜尋到.
sudo apt-cache search geographic-msgs
發現真的有可用的安裝包,那麼我們就選擇安裝!
然後再catkin_make,就真得可以編譯成功了!!!
番外:
再記錄一下安tab補全ros包時有可能會出現的小問題,如下
[rospack]Warning: error while crawling /home/g214-m1:boost::filesystem::status: Permission denied: "/home/g214-m1/.gvfs"
解決辦法:
tab補全操作将會變得正常.
跑一下demo
roslaunch hector_quadrotor_demo outdoor_flight_gazebo.launch
rviz:
gazebo: