機器人操作系統(tǒng)(ROS)課件10.3Hector四旋翼無人機仿真_第1頁
機器人操作系統(tǒng)(ROS)課件10.3Hector四旋翼無人機仿真_第2頁
機器人操作系統(tǒng)(ROS)課件10.3Hector四旋翼無人機仿真_第3頁
機器人操作系統(tǒng)(ROS)課件10.3Hector四旋翼無人機仿真_第4頁
機器人操作系統(tǒng)(ROS)課件10.3Hector四旋翼無人機仿真_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

機器人操作系統(tǒng)(ROS)機器人操作系統(tǒng)(ROS)Hector四旋翼無人機仿真10.3機器人操作系統(tǒng)(ROS)10.3Hector四旋翼無人機仿真四旋翼無人機是一種非共軸式碟形飛行器,在平面上呈十字對稱結(jié)構(gòu)并均勻分布有4個旋翼。通過調(diào)節(jié)四個旋翼旋轉(zhuǎn)產(chǎn)生的升力來控制6個自由度方向的動作。它除了具有一般無人機的優(yōu)點,如不懼傷亡、制造成本低廉、隱蔽性好、操作靈活等,還具有多旋翼無人機的獨特優(yōu)勢:(1)能夠在狹小的空間內(nèi)實現(xiàn)垂直升降、定點懸停、低速飛行、旋轉(zhuǎn)、側(cè)飛及倒飛等,機動靈活,可控性較強;(2)結(jié)構(gòu)簡單,拆卸方便,且易于維護;(3)四個旋翼同時旋轉(zhuǎn)提供升力,相對一般無人機,可以使用較小的旋翼和較低的轉(zhuǎn)速,安全性提高。機器人操作系統(tǒng)(ROS)10.3.1四旋翼無人機簡介四旋翼無人機是無人飛行器(UAV)的一種,其旋翼對稱分布在機體的前后、左右四個方向,四個旋翼處于同一高度平面,且四個旋翼的結(jié)構(gòu)和半徑都相同,四個電機對稱的安裝在飛行器的支架端,支架中間部分安放飛行控制計算機和外部設(shè)備。結(jié)構(gòu)形式如圖所示。四旋翼無人機的結(jié)構(gòu)形式四旋翼飛行器通過調(diào)節(jié)四個電機轉(zhuǎn)速來改變旋翼轉(zhuǎn)速,實現(xiàn)升力的變化,從而控制飛行器的姿態(tài)和位置。四旋翼飛行器是一種六自由度的垂直升降機,有四個輸入力,同時有六個狀態(tài)輸出。機器人操作系統(tǒng)(ROS)10.3.1四旋翼無人機簡介如圖所示,無人機繞三個坐標軸旋轉(zhuǎn)的角度分別由滾轉(zhuǎn)角(roll)、俯仰角(pitch)和偏航角(yaw)表示。滾轉(zhuǎn)角是飛機對稱平面與通過飛機機體縱軸的鉛垂平面間的夾角,右滾為正。俯仰角是機體軸與地平面(水平面)之間的夾角,飛機抬頭為正。偏航角是機體軸在水平面上的投影與地軸之間的夾角,以機頭右偏為正。飛機滾轉(zhuǎn)角、俯仰角和偏航角機器人操作系統(tǒng)(ROS)10.3.2Hector四旋翼無人機仿真本實驗采用的是塔姆斯塔特工業(yè)大學的HectorDarmstadt團隊開源的hector仿真旋翼UAV項目,其開源代碼網(wǎng)站為:/tu-darmstadt-ros-pkg/hector_quadrotor。該功能包包含了UAV的URDF描述建模、飛行控制及在Gazebo中運行四旋翼無人機的啟動文件等。https://www.teamhector.de/open-source機器人操作系統(tǒng)(ROS)10.3.2Hector四旋翼無人機仿真hector_quadrotorhector_quadrotor_description包含了基礎(chǔ)四旋翼及搭載各種傳感器的urdf文件;hector_quadrotor_gazebo包含了四旋翼在gazebo仿真中的驅(qū)動、插件;hector_quadrotor_teleop包含了四旋翼遙控器接口文件;hector_quadrotor_gazebo_plugins包含了gazebo仿真中氣動、推力、控制等模擬文件;hector_quadrotor_demo包含了官網(wǎng)例程的啟動文件;hector_quadrotor_actions包含了支持的action(起飛、降落、航點)文件;hector_quadrotor_controller_gazebo包含了gazebo仿真中的控制器接口插件;hector_quadrotor_controllers包含了姿態(tài)、位置、速度控制器文件;hector_quadrotor_interface包含了四旋翼的接口文件;hector_quadrotor_model包含了四旋翼的動力學模型文件;hector_quadrotor_pose_estimation包含了四旋翼的位姿解算文件;hector_uav_msgs包含了四旋翼的消息、動作、服務匯總;hector_quadrotor包含了hector_quadrotor功能包的管理文件;整個tu-darmstadt-ros-pkg功能包的各個子功能包的結(jié)構(gòu)如下所示機器人操作系統(tǒng)(ROS)10.3.2Hector四旋翼無人機仿真hector_modelshector_sensors_description包含了sonar/laser/camera/rgb-camera等xacro宏文件及gazeboplugin;hector_xacro_tools包含了轉(zhuǎn)動慣量計算、關(guān)節(jié)驅(qū)動、傳感器安裝的xacro宏文件;hector_components_description包含了一些例程中采用的傳感器搭配xacro文件;hector_model包含了hector_model功能包的管理文件;hector_gazebohector_gazebo_plugins包含了GPS/IMU/MAG/SONAR的gazebo插件(噪聲、飄移、頻率);hector_gazebo_thermal_camera包含了熱成像相機的gazebo插件;hector_gazebo_worlds包含了例程中應用的gazebo場景和啟動文件;hector_sensors_gazebo關(guān)聯(lián)hector_sensors_description包;hector_gazebo包含了hector_gazebo功能包的管理文件;hector_localizationhector_pose_estimation包含了傳感器數(shù)據(jù)匯總、位姿估計發(fā)布文件;hector_pose_estimation_core包含了EKF核心算法文件;message_to_tf包含了傳感器信息的坐標轉(zhuǎn)換文件;hector_localization包含了hector_localization功能包的管理文件;機器人操作系統(tǒng)(ROS)10.3.2Hector四旋翼無人機仿真hector_slamhector_mapping包含了建圖、定位節(jié)點文件;hector_geotiff包含了存儲二位柵格地圖及機器人軌跡的節(jié)點文件;hector_trajectory_server包含了存儲tf軌跡的節(jié)點文件;hector_compressed_map_transport包含了地圖轉(zhuǎn)換成圖片的節(jié)點文件;hector_geotiff_plugins包含了擴展柵格地圖的插件;hector_imu_attitude_to_tf包含了將姿態(tài)角發(fā)布到tf的節(jié)點文件;hector_imu_tools包含了IMU的位姿方向角解算;hector_map_server包含了地圖檢索及障礙物檢測文件;hector_map_tools包含了一個地圖構(gòu)建的頭文件;hector_marker_drawing包含了可視化標記的函數(shù)文件;hector_nav_msgs包含了hector_slam包用到的消息、服務文件;hector_slam_launch包含了例程中關(guān)于不同配置hector_slam的啟動文件;hector_slam包含了hector_slam功能包的管理文件;機器人操作系統(tǒng)(ROS)10.3.3Hector仿真環(huán)境搭建為了方便讀者調(diào)試,我們提供了HectorDarmstadt的源碼。本實驗使用到的功能包有:hector_quadrotor、hector_models、hector_gazebo、hector_localization、hector_slam、gazebo_ros_pkgs、geographic_info,其中前五個是源碼,其余為依賴安裝包。首先我們需要對功能包進行編譯:$cd~/catkin_ws$catkin_make可能會出現(xiàn)“Couldnotfindxxxpackage”的報錯,這是因為缺少相關(guān)的依賴,運行以下命令安裝相應的依賴包,其中xxx代表所缺少依賴的名稱,如圖所示:$sudoapt-getinstallros-melodic-xxx此外還可以通過rosdep指令安裝所需依賴:$rosdepinstall--from-pathssrc--ignore-src-r-y依賴安裝完成后,重新編譯功能包。編譯運行截圖機器人操作系統(tǒng)(ROS)10.3.4啟動Hector仿真實驗(2)室內(nèi)飛行同樣在hector_quradrotor功能包包含四旋翼飛行器的室內(nèi)模擬飛行例程。運行以下命令啟動節(jié)點:$roslaunchhector_quadrotor_demoindoor_slam_gazebo.launch節(jié)點啟動后,Gazebo中將顯示W(wǎng)illowGarage室內(nèi)辦公室的模擬環(huán)境,若沒有加載出環(huán)境,需要將Gazebo的官方模型庫(/osrf/gazebo_models)拷貝到路徑為~/.gazebo(如若不行,放置在/share/gazebo-9/models)的文件夾里,可以通過以下命令查看是否裝好Gazebo的庫結(jié)果如圖所示:$roslaunchgazebo_roswillowgarage_world.launch運行指令可以調(diào)出Gazebo窗口并加載模擬辦公室的環(huán)境。成功配置Gazebo庫后,運行如下命令啟動室內(nèi)時SLAM節(jié)點,運行結(jié)果如圖所示:$roslaunchgazebo_rosindoor_slam_gazebo.launch機器人操作系統(tǒng)(ROS)10.3.4啟動Hector仿真實驗Hector無人機室內(nèi)Gazebo圖像Hector無人機室內(nèi)Rviz圖像機器人操作系統(tǒng)(ROS)10.3.4啟動Hector仿真實驗調(diào)用使能電機的服務,控制無人機起飛,命令如下:$rosservicecall/enable_motors"enable:true"運行如下命令啟動Xbox手柄控制節(jié)點:$roslaunchhector_quadrotor_teleopxbox_controller.launch通過手柄控制無人機移動,并實時建立環(huán)境地圖,如圖所示。使用rqt_graph工

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論