PX4之Gazebo多機仿真嘗試

PX4之Gazebo多機仿真嘗試

在這裏插入圖片描述

運行多機前,確保你的單機運行沒有問題。
Px4源碼中已經包含了二機的仿真,運行以下命令:

roslaunch px4 multi_uav_mavros_sitl.launch

修改Launch相關代碼,實現四機仿真:
模仿單機UAV1的寫法,完成UAV1-4的編寫。

    <!-- UAV1 -->
    <group ns="uav1">
        <!-- MAVROS and vehicle configs -->        
        <arg name="ID" value="1"/>
        <!--<arg name="fcu_url" default="udp://:14540@localhost:14557"/>-->
        
        <arg name="fcu_url" default="udp://:[email protected]:14557"/>
        <!-- PX4 SITL and vehicle spawn -->
        <include file="$(find px4)/launch/single_vehicle_spawn.launch">
            <arg name="x" value="1"/>
            <arg name="y" value="0"/>
            <arg name="z" value="0"/>
            <arg name="R" value="0"/>
            <arg name="P" value="0"/>
            <arg name="Y" value="0"/>
            <arg name="vehicle" value="$(arg vehicle)"/>
            <arg name="rcS" value="$(find px4)/posix-configs/SITL/init/$(arg est)/$(arg vehicle)_1"/>
            <arg name="mavlink_udp_port" value="14560"/>
            <arg name="ID" value="$(arg ID)"/>
        </include>
        <!-- MAVROS -->
        <include file="$(find mavros)/launch/px4.launch">
            <arg name="fcu_url" value="$(arg fcu_url)"/>
            <arg name="gcs_url" value=""/>
            <arg name="tgt_system" value="$(arg ID)"/>
            <arg name="tgt_component" value="1"/>
        </include>
    </group>

在這裏插入圖片描述
運行多機仿真mavros

roslaunch px4 multi_uav_mavros_sitl.launch

在這裏插入圖片描述
修改基礎的offboard節點,添加發布節點爲UAV1-4,並完成編譯

catkin_make
source devel/setup.sh 

在這裏插入圖片描述
運行offboard

rosrun offboard offboard

在這裏插入圖片描述
很多東西還沒有理解
多機之間的飛行策略有問題,延時太大等等等,各種節點的操作處理,沒有明白。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章