<sdf version='1.7'>
  <model name='big_quadrotor'>
    <link name='base_link'>
      <inertial>
        <pose>-0.018936 0.0001352 -0.081280 0 -0 0</pose>
        <mass>39.5332</mass>
        <inertia>
          <ixx>0.194612</ixx>
          <ixy>3.303707e-07</ixy>
          <ixz>2.219022e-13</ixz>
          <iyy>0.4849035</iyy>
          <iyz>4.8310771e-10</iyz>
          <izz>0.576687</izz>
        </inertia>
      </inertial>
      <collision name='base_link_collision'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://big_quadrotor/meshes/base_link.STL</uri>
          </mesh>
        </geometry>
      </collision>
      <collision name='base_link_fixed_joint_lump__uarm_baselink_collision_1'>
        <pose>0.53793 0 0.051 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://big_quadrotor/meshes/uarm_baselink.STL</uri>
          </mesh>
        </geometry>
      </collision>
      <visual name='base_link_visual'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://big_quadrotor/meshes/base_link.STL</uri>
          </mesh>
        </geometry>
      </visual>
      <visual name='base_link_fixed_joint_lump__uarm_baselink_visual_1'>
        <pose>0.53793 0 0.051 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://big_quadrotor/meshes/uarm_baselink.STL</uri>
          </mesh>
        </geometry>
      </visual>
    </link>
    <link name='/imu_link'>
      <pose>0 0 0.02 0 0 0</pose>
      <inertial>
        <pose>0 0 0 0 0 0</pose>
        <mass>0.015</mass>
        <inertia>
          <ixx>1e-05</ixx>
          <ixy>0</ixy>
          <ixz>0</ixz>
          <iyy>1e-05</iyy>
          <iyz>0</iyz>
          <izz>1e-05</izz>
        </inertia>
      </inertial>
    </link>
    <joint name='/imu_joint' type='revolute'>
      <child>/imu_link</child>
      <parent>base_link</parent>
      <axis>
        <xyz>1 0 0</xyz>
        <limit>
          <lower>0</lower>
          <upper>0</upper>
          <effort>0</effort>
          <velocity>0</velocity>
        </limit>
        <dynamics>
          <spring_reference>0</spring_reference>
          <spring_stiffness>0</spring_stiffness>
        </dynamics>
        <use_parent_model_frame>1</use_parent_model_frame>
      </axis>
    </joint>

    <joint name='rotor_2_joint' type='revolute'>
      <pose relative_to='base_link'>0.60093 0.60093 -0.1352 0 -0 0</pose>
      <parent>base_link</parent>
      <child>rotor_2</child>
      <axis>
        <xyz>0 0 -1</xyz>
        <limit>
          <lower>-1e+16</lower>
          <upper>1e+16</upper>
        </limit>
        <dynamics>
          <spring_reference>0</spring_reference>
          <spring_stiffness>0</spring_stiffness>
        </dynamics>
      </axis>
    </joint>
    <link name='rotor_2'>
      <pose relative_to='rotor_2_joint'>0 0 0 0 -0 0</pose>
      <inertial>
        <pose>-1e-06 -1.2e-05 -0.024177 0 -0 0</pose>
        <mass>2.4889</mass>
        <inertia>
          <ixx>0.26697</ixx>
          <ixy>-0.0046822</ixy>
          <ixz>-7.1151e-09</ixz>
          <iyy>0.0020804</iyy>
          <iyz>1.981e-08</iyz>
          <izz>0.26754</izz>
        </inertia>
      </inertial>
      <collision name='rotor_2_collision'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://big_quadrotor/meshes/rotor_0.STL</uri>
          </mesh>
        </geometry>
      </collision>
      <visual name='rotor_2_visual'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://big_quadrotor/meshes/rotor_0.STL</uri>
          </mesh>
        </geometry>
      </visual>
    </link>
    <joint name='rotor_0_joint' type='revolute'>
      <pose relative_to='base_link'>0.60093 -0.60093 -0.1352 0 -0 0</pose>
      <parent>base_link</parent>
      <child>rotor_0</child>
      <axis>
        <xyz>0 0 -1</xyz>
        <limit>
          <lower>-1e+16</lower>
          <upper>1e+16</upper>
        </limit>
        <dynamics>
          <spring_reference>0</spring_reference>
          <spring_stiffness>0</spring_stiffness>
        </dynamics>
      </axis>
    </joint>
    <link name='rotor_0'>
      <pose relative_to='rotor_0_joint'>0 0 0 0 -0 0</pose>
      <inertial>
        <pose>-1e-06 1.3e-05 -0.024178 0 -0 0</pose>
        <mass>2.48889</mass>
        <inertia>
          <ixx>0.266965</ixx>
          <ixy>0.00468223</ixy>
          <ixz>-1.09644e-08</ixz>
          <iyy>0.00208044</iyy>
          <iyz>1.0591e-08</iyz>
          <izz>0.267542</izz>
        </inertia>
      </inertial>
      <collision name='rotor_0_collision'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://big_quadrotor/meshes/rotor_1.STL</uri>
          </mesh>
        </geometry>
      </collision>
      <visual name='rotor_0_visual'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://big_quadrotor/meshes/rotor_1.STL</uri>
          </mesh>
        </geometry>
      </visual>
    </link>
    <joint name='rotor_1_joint' type='revolute'>
      <pose relative_to='base_link'>-0.60093 0.60093 -0.1352 0 -0 0</pose>
      <parent>base_link</parent>
      <child>rotor_1</child>
      <axis>
        <xyz>0 0 -1</xyz>
        <limit>
          <lower>-1e+16</lower>
          <upper>1e+16</upper>
        </limit>
        <dynamics>
          <spring_reference>0</spring_reference>
          <spring_stiffness>0</spring_stiffness>
        </dynamics>
      </axis>
    </joint>
    <link name='rotor_1'>
      <pose relative_to='rotor_1_joint'>0 0 0 0 -0 0</pose>
      <inertial>
        <pose>-1e-06 1.3e-05 -0.024178 0 -0 0</pose>
        <mass>2.48889</mass>
        <inertia>
          <ixx>0.266965</ixx>
          <ixy>0.00468223</ixy>
          <ixz>-1.09654e-08</ixz>
          <iyy>0.00208044</iyy>
          <iyz>1.06275e-08</iyz>
          <izz>0.267542</izz>
        </inertia>
      </inertial>
      <collision name='rotor_1_collision'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://big_quadrotor/meshes/rotor_2.STL</uri>
          </mesh>
        </geometry>
      </collision>
      <visual name='rotor_1_visual'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://big_quadrotor/meshes/rotor_2.STL</uri>
          </mesh>
        </geometry>
      </visual>
    </link>
    <joint name='rotor_3_joint' type='revolute'>
      <pose relative_to='base_link'>-0.60093 -0.60093 -0.1352 0 -0 0</pose>
      <parent>base_link</parent>
      <child>rotor_3</child>
      <axis>
        <xyz>0 0 -1</xyz>
        <limit>
          <lower>-1e+16</lower>
          <upper>1e+16</upper>
        </limit>
        <dynamics>
          <spring_reference>0</spring_reference>
          <spring_stiffness>0</spring_stiffness>
        </dynamics>
      </axis>
    </joint>
    <link name='rotor_3'>
      <pose relative_to='rotor_3_joint'>0 0 0 0 -0 0</pose>
      <inertial>
        <pose>-1e-06 -1.2e-05 -0.024177 0 -0 0</pose>
        <mass>2.48887</mass>
        <inertia>
          <ixx>0.266967</ixx>
          <ixy>-0.00468208</ixy>
          <ixz>-3.43828e-09</ixz>
          <iyy>0.00208039</iyy>
          <iyz>5.45279e-08</iyz>
          <izz>0.267544</izz>
        </inertia>
      </inertial>
      <collision name='rotor_3_collision'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://big_quadrotor/meshes/rotor_3.STL</uri>
          </mesh>
        </geometry>
      </collision>
      <visual name='rotor_3_visual'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://big_quadrotor/meshes/rotor_3.STL</uri>
          </mesh>
        </geometry>
      </visual>
    </link>



    <plugin name='rosbag' filename='libgazebo_multirotor_base_plugin.so'>
      <robotNamespace/>  <!-- 通常留空或设为模型命名空间 -->
      <linkName>base_link</linkName>
      <rotorVelocitySlowdownSim>10</rotorVelocitySlowdownSim>
    </plugin>


    <plugin name='front_right_motor_model' filename='libgazebo_motor_model.so'>
      <robotNamespace/>
      <jointName>rotor_0_joint</jointName>
      <linkName>rotor_0</linkName>
      <turningDirection>ccw</turningDirection>
      <timeConstantUp>0.025</timeConstantUp>
      <timeConstantDown>0.025</timeConstantDown>
      <maxRotVelocity>600</maxRotVelocity>
      <motorConstant>5.84e-04</motorConstant>
      <momentConstant>0.06</momentConstant>
      <commandSubTopic>/gazebo/command/motor_speed</commandSubTopic>
      <motorNumber>0</motorNumber>
      <rotorDragCoefficient>0.000175</rotorDragCoefficient>
      <rollingMomentCoefficient>1e-06</rollingMomentCoefficient>
      <motorSpeedPubTopic>/motor_speed/0</motorSpeedPubTopic>
      <rotorVelocitySlowdownSim>10</rotorVelocitySlowdownSim>
    </plugin>
    <plugin name='back_left_motor_model' filename='libgazebo_motor_model.so'>
      <robotNamespace/>
      <jointName>rotor_1_joint</jointName>
      <linkName>rotor_1</linkName>
      <turningDirection>ccw</turningDirection>
      <timeConstantUp>0.025</timeConstantUp>
      <timeConstantDown>0.025</timeConstantDown>
      <maxRotVelocity>600</maxRotVelocity>
      <motorConstant>5.84e-04</motorConstant>
      <momentConstant>0.06</momentConstant>
      <commandSubTopic>/gazebo/command/motor_speed</commandSubTopic>
      <motorNumber>1</motorNumber>
      <rotorDragCoefficient>0.000175</rotorDragCoefficient>
      <rollingMomentCoefficient>1e-06</rollingMomentCoefficient>
      <motorSpeedPubTopic>/motor_speed/1</motorSpeedPubTopic>
      <rotorVelocitySlowdownSim>10</rotorVelocitySlowdownSim>
    </plugin>
    <plugin name='front_left_motor_model' filename='libgazebo_motor_model.so'>
      <robotNamespace/>
      <jointName>rotor_2_joint</jointName>
      <linkName>rotor_2</linkName>
      <turningDirection>cw</turningDirection>
      <timeConstantUp>0.025</timeConstantUp>
      <timeConstantDown>0.025</timeConstantDown>
      <maxRotVelocity>600</maxRotVelocity>
      <motorConstant>5.84e-04</motorConstant>
      <momentConstant>0.06</momentConstant>
      <commandSubTopic>/gazebo/command/motor_speed</commandSubTopic>
      <motorNumber>2</motorNumber>
      <rotorDragCoefficient>0.000175</rotorDragCoefficient>
      <rollingMomentCoefficient>1e-06</rollingMomentCoefficient>
      <motorSpeedPubTopic>/motor_speed/2</motorSpeedPubTopic>
      <rotorVelocitySlowdownSim>10</rotorVelocitySlowdownSim>
    </plugin>
    <plugin name='back_right_motor_model' filename='libgazebo_motor_model.so'>
      <robotNamespace/>
      <jointName>rotor_3_joint</jointName>
      <linkName>rotor_3</linkName>
      <turningDirection>cw</turningDirection>
      <timeConstantUp>0.025</timeConstantUp>
      <timeConstantDown>0.025</timeConstantDown>
      <maxRotVelocity>600</maxRotVelocity>
      <motorConstant>5.84e-04</motorConstant>
      <momentConstant>0.06</momentConstant>
      <commandSubTopic>/gazebo/command/motor_speed</commandSubTopic>
      <motorNumber>3</motorNumber>
      <rotorDragCoefficient>0.000175</rotorDragCoefficient>
      <rollingMomentCoefficient>1e-06</rollingMomentCoefficient>
      <motorSpeedPubTopic>/motor_speed/3</motorSpeedPubTopic>
      <rotorVelocitySlowdownSim>10</rotorVelocitySlowdownSim>
    </plugin>







    <include>
      <uri>model://gps</uri>
      <pose>0.05 0 0.04 0 0 0</pose>
      <name>gps0</name>
    </include>
    <joint name='gps0_joint' type='fixed'>
    <pose relative_to='base_link'>0 0 0.0 -3.14159 0 0</pose>
      <child>gps0::link</child>
      <parent>base_link</parent>
    </joint>
    <plugin name='groundtruth_plugin' filename='libgazebo_groundtruth_plugin.so'>
      <robotNamespace/>
    </plugin>
    <plugin name='magnetometer_plugin' filename='libgazebo_magnetometer_plugin.so'>
      <robotNamespace/>
      <pubRate>100</pubRate>
      <noiseDensity>0.0004</noiseDensity>
      <randomWalk>6.4e-06</randomWalk>
      <biasCorrelationTime>600</biasCorrelationTime>
      <magTopic>/mag</magTopic>
    </plugin>
    <plugin name='barometer_plugin' filename='libgazebo_barometer_plugin.so'>
      <robotNamespace/>
      <pubRate>50</pubRate>
      <baroTopic>/baro</baroTopic>
      <baroDriftPaPerSec>0</baroDriftPaPerSec>
    </plugin>


    <plugin name='mavlink_interface' filename='libgazebo_mavlink_interface.so'>
      <robotNamespace/>
      <imuSubTopic>/imu</imuSubTopic>
      <magSubTopic>/mag</magSubTopic>
      <baroSubTopic>/baro</baroSubTopic>
      <mavlink_addr>INADDR_ANY</mavlink_addr>
      <mavlink_tcp_port>4560</mavlink_tcp_port> <!-- TCP端口，通常用于其他连接 -->
      <mavlink_udp_port>14560</mavlink_udp_port> <!-- 【关键】与你的launch文件中fcu_url的端口匹配 -->
      <serialEnabled>false</serialEnabled> <!-- 仿真中通常不使用串口 -->
      <serialDevice></serialDevice> <!-- 留空或保留占位符 -->
        <baudRate>57600</baudRate> <!-- 如果未启用串行，此值可保留默认 -->
      <qgc_addr>INADDR_ANY</qgc_addr>
      <qgc_udp_port>14550</qgc_udp_port>
      <sdk_addr>INADDR_ANY</sdk_addr>
      <sdk_udp_port>14540</sdk_udp_port>
      <hil_mode>false</hil_mode>
      <hil_state_level>0</hil_state_level>
      <send_vision_estimation>0</send_vision_estimation>
      <send_odometry>1</send_odometry>
      <enable_lockstep>1</enable_lockstep>
      <use_tcp>1</use_tcp>
      <motorSpeedCommandPubTopic>/gazebo/command/motor_speed</motorSpeedCommandPubTopic>
      <control_channels>
        <channel name='rotor1'>
          <input_index>0</input_index>
          <input_offset>0</input_offset>
          <input_scaling>1000</input_scaling>
          <zero_position_disarmed>0</zero_position_disarmed>
          <zero_position_armed>100</zero_position_armed>
          <joint_control_type>velocity</joint_control_type>
          <!-- <joint_name>rotor_0_joint</joint_name> -->
        </channel>
        <channel name='rotor2'>
          <input_index>1</input_index>
          <input_offset>0</input_offset>
          <input_scaling>1000</input_scaling>
          <zero_position_disarmed>0</zero_position_disarmed>
          <zero_position_armed>100</zero_position_armed>
          <joint_control_type>velocity</joint_control_type>
          <!-- <joint_name>rotor_1_joint</joint_name> -->
        </channel>
        <channel name='rotor3'>
          <input_index>2</input_index>
          <input_offset>0</input_offset>
          <input_scaling>1000</input_scaling>
          <zero_position_disarmed>0</zero_position_disarmed>
          <zero_position_armed>100</zero_position_armed>
          <joint_control_type>velocity</joint_control_type>
          <!-- <joint_name>rotor_2_joint</joint_name> -->
        </channel>
        <channel name='rotor4'>
          <input_index>3</input_index>
          <input_offset>0</input_offset>
          <input_scaling>1000</input_scaling>
          <zero_position_disarmed>0</zero_position_disarmed>
          <zero_position_armed>100</zero_position_armed>
          <joint_control_type>velocity</joint_control_type>
          <!-- <joint_name>rotor_3_joint</joint_name> -->
        </channel>
        <channel name='rotor5'>
          <input_index>4</input_index>
          <input_offset>1</input_offset>
          <input_scaling>324.6</input_scaling>
          <zero_position_disarmed>0</zero_position_disarmed>
          <zero_position_armed>0</zero_position_armed>
          <joint_control_type>velocity</joint_control_type>
          <joint_control_pid>
            <p>0.1</p>
            <i>0</i>
            <d>0</d>
            <iMax>0.0</iMax>
            <iMin>0.0</iMin>
            <cmdMax>2</cmdMax>
            <cmdMin>-2</cmdMin>
          </joint_control_pid>
          <joint_name>zephyr_delta_wing::propeller_joint</joint_name>
        </channel>
        <channel name='rotor6'>
          <input_index>5</input_index>
          <input_offset>0</input_offset>
          <input_scaling>0.524</input_scaling>
          <zero_position_disarmed>0</zero_position_disarmed>
          <zero_position_armed>0</zero_position_armed>
          <joint_control_type>position</joint_control_type>
          <joint_name>zephyr_delta_wing::flap_left_joint</joint_name>
          <joint_control_pid>
            <p>10.0</p>
            <i>0</i>
            <d>0</d>
            <iMax>0</iMax>
            <iMin>0</iMin>
            <cmdMax>20</cmdMax>
            <cmdMin>-20</cmdMin>
          </joint_control_pid>
        </channel>
        <channel name='rotor7'>
          <input_index>6</input_index>
          <input_offset>0</input_offset>
          <input_scaling>0.524</input_scaling>
          <zero_position_disarmed>0</zero_position_disarmed>
          <zero_position_armed>0</zero_position_armed>
          <joint_control_type>position</joint_control_type>
          <joint_name>zephyr_delta_wing::flap_right_joint</joint_name>
          <joint_control_pid>
            <p>10.0</p>
            <i>0</i>
            <d>0</d>
            <iMax>0</iMax>
            <iMin>0</iMin>
            <cmdMax>20</cmdMax>
            <cmdMin>-20</cmdMin>
          </joint_control_pid>
        </channel>
        <channel name='rotor8'>
          <input_index>7</input_index>
          <input_offset>0</input_offset>
          <input_scaling>0.524</input_scaling>
          <zero_position_disarmed>0</zero_position_disarmed>
          <zero_position_armed>0</zero_position_armed>
          <joint_control_type>position</joint_control_type>
        </channel>
      </control_channels>
    </plugin>
    <static>0</static>
    <plugin name='rotors_gazebo_imu_plugin' filename='libgazebo_imu_plugin.so'>
      <robotNamespace/>
      <linkName>/imu_link</linkName>
      <imuTopic>/imu</imuTopic>
    </plugin>


    <!-- 连接无人机和机械臂 -->
  <joint name='drone_arm_joint' type='fixed'>
      <pose relative_to='base_link'>0.53793 0 0.051 0 0 0</pose>
      <parent>base_link</parent>
      <child>arm_base</child>
      <physics>
    <ode>
      <implicit_spring_damper>1</implicit_spring_damper>
      <cfm_damping_ratio>0.9</cfm_damping_ratio>
      <cfm>0.0001</cfm>
      <erp>0.4</erp>
    </ode>
  </physics>
    </joint>

    <!-- 机械臂的插件和模型部分 -->
    <link name='arm_base'>
    <pose relative_to='drone_arm_joint'>0 0 0 0 -0 0</pose>
      <inertial>
        <pose>-0.00335 -0.000136 0.024958 0 -0 0</pose>
        <mass>0.472475</mass>
        <inertia>
          <ixx>0.00037937</ixx>
          <ixy>-3.5e-07</ixy>
          <ixz>-1.037e-05</ixz>
          <iyy>0.00041521</iyy>
          <iyz>-9.9e-07</iyz>
          <izz>0.00053066</izz>
        </inertia>
      </inertial>
      <collision name='arm_base_fixed_joint_lump__link00_collision'>
        <pose>0 0 0.0255 0 -0 0</pose>
        <geometry>
          <cylinder>
            <length>0.051</length>
            <radius>0.0325</radius>
          </cylinder>
        </geometry>
      </collision>
      <visual name='arm_base_fixed_joint_lump__link00_visual'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://z1_description/meshes/visual/z1_Link00.dae</uri>
          </mesh>
        </geometry>
      </visual>
    </link>
    <joint name='joint1' type='revolute'>
      <pose relative_to='arm_base'>0 0 0.0585 0 -0 0</pose>
      <parent>arm_base</parent>
      <child>link01</child>
      <axis>
        <xyz>0 0 1</xyz>
        <limit>
          <lower>-2.61799</lower>
          <upper>2.61799</upper>
          <effort>30</effort>
          <velocity>3.1415</velocity>
        </limit>
        <dynamics>
          <damping>1</damping>
          <friction>1</friction>
          <spring_reference>0</spring_reference>
          <spring_stiffness>0</spring_stiffness>
        </dynamics>
      </axis>
    </joint>
    <link name='link01'>
      <pose relative_to='joint1'>0 0 0 0 -0 0</pose>
      <inertial>
        <pose>2e-06 -0.000252 0.023172 0 -0 0</pose>
        <mass>0.673326</mass>
        <inertia>
          <ixx>0.00128328</ixx>
          <ixy>-6e-08</ixy>
          <ixz>-4e-07</ixz>
          <iyy>0.00071931</iyy>
          <iyz>5e-07</iyz>
          <izz>0.00083936</izz>
        </inertia>
      </inertial>
      <visual name='link01_visual'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://z1_description/meshes/visual/z1_Link01.dae</uri>
          </mesh>
        </geometry>
      </visual>
    </link>
    <joint name='joint2' type='revolute'>
      <pose relative_to='link01'>0 0 0.045 0 -0 0</pose>
      <parent>link01</parent>
      <child>link02</child>
      <axis>
        <xyz>0 1 0</xyz>
        <limit>
          <lower>0</lower>
          <upper>2.96706</upper>
          <effort>60</effort>
          <velocity>3.1415</velocity>
        </limit>
        <dynamics>
          <damping>2</damping>
          <friction>2</friction>
          <spring_reference>0</spring_reference>
          <spring_stiffness>0</spring_stiffness>
        </dynamics>
      </axis>
    </joint>
    <link name='link02'>
      <pose relative_to='joint2'>0 0 0 0 -0 0</pose>
      <inertial>
        <pose>-0.110126 0.0024 0.001583 0 -0 0</pose>
        <mass>1.19132</mass>
        <inertia>
          <ixx>0.00102138</ixx>
          <ixy>0.00062358</ixy>
          <ixz>5.13e-06</ixz>
          <iyy>0.0242946</iyy>
          <iyz>-2.1e-06</iyz>
          <izz>0.0246611</izz>
        </inertia>
      </inertial>
      <collision name='link02_collision'>
        <pose>0 0 0 1.5708 -0 0</pose>
        <geometry>
          <cylinder>
            <length>0.102</length>
            <radius>0.0325</radius>
          </cylinder>
        </geometry>
      </collision>
      <collision name='link02_collision_1'>
        <pose>-0.1625 0 0 0 1.5708 0</pose>
        <geometry>
          <cylinder>
            <length>0.235</length>
            <radius>0.0225</radius>
          </cylinder>
        </geometry>
      </collision>
      <collision name='link02_collision_2'>
        <pose>-0.35 0 0 1.5708 -0 0</pose>
        <geometry>
          <cylinder>
            <length>0.051</length>
            <radius>0.0325</radius>
          </cylinder>
        </geometry>
      </collision>
      <visual name='link02_visual'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://z1_description/meshes/visual/z1_Link02.dae</uri>
          </mesh>
        </geometry>
      </visual>
    </link>
    <joint name='joint3' type='revolute'>
      <pose relative_to='link02'>-0.35 0 0 0 -0 0</pose>
      <parent>link02</parent>
      <child>link03</child>
      <axis>
        <xyz>0 1 0</xyz>
        <limit>
          <lower>-2.87979</lower>
          <upper>0</upper>
          <effort>30</effort>
          <velocity>3.1415</velocity>
        </limit>
        <dynamics>
          <damping>1</damping>
          <friction>1</friction>
          <spring_reference>0</spring_reference>
          <spring_stiffness>0</spring_stiffness>
        </dynamics>
      </axis>
    </joint>
    <link name='link03'>
      <pose relative_to='joint3'>0 0 0 0 -0 0</pose>
      <inertial>
        <pose>0.106092 -0.005418 0.034764 0 -0 0</pose>
        <mass>0.839409</mass>
        <inertia>
          <ixx>0.00108061</ixx>
          <ixy>-8.669e-05</ixy>
          <ixz>-0.00208102</ixz>
          <iyy>0.00954238</iyy>
          <iyz>-1.332e-05</iyz>
          <izz>0.00886621</izz>
        </inertia>
      </inertial>
      <collision name='link03_collision'>
        <pose>0.128 0 0.055 0 1.5708 0</pose>
        <geometry>
          <cylinder>
            <length>0.116</length>
            <radius>0.02</radius>
          </cylinder>
        </geometry>
      </collision>
      <collision name='link03_collision_1'>
        <pose>0.2205 0 0.055 -1.5708 1.5708 0</pose>
        <geometry>
          <cylinder>
            <length>0.059</length>
            <radius>0.0325</radius>
          </cylinder>
        </geometry>
      </collision>
      <visual name='link03_visual'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://z1_description/meshes/visual/z1_Link03.dae</uri>
          </mesh>
        </geometry>
      </visual>
    </link>
    <joint name='joint4' type='revolute'>
      <pose relative_to='link03'>0.218 0 0.057 0 -0 0</pose>
      <parent>link03</parent>
      <child>link04</child>
      <axis>
        <xyz>0 1 0</xyz>
        <limit>
          <lower>-1.51844</lower>
          <upper>1.51844</upper>
          <effort>30</effort>
          <velocity>3.1415</velocity>
        </limit>
        <dynamics>
          <damping>1</damping>
          <friction>1</friction>
          <spring_reference>0</spring_reference>
          <spring_stiffness>0</spring_stiffness>
        </dynamics>
      </axis>
    </joint>
    <link name='link04'>
      <pose relative_to='joint4'>0 0 0 0 -0 0</pose>
      <inertial>
        <pose>0.043667 0.003647 -0.001702 0 -0 0</pose>
        <mass>0.564046</mass>
        <inertia>
          <ixx>0.00031576</ixx>
          <ixy>8.13e-05</ixy>
          <ixz>4.091e-05</ixz>
          <iyy>0.00092996</iyy>
          <iyz>-5.96e-06</iyz>
          <izz>0.00097912</izz>
        </inertia>
      </inertial>
      <collision name='link04_collision'>
        <pose>0.072 0 0 0 -0 0</pose>
        <geometry>
          <cylinder>
            <length>0.067</length>
            <radius>0.0325</radius>
          </cylinder>
        </geometry>
        <surface>
          <contact>
            <ode/>
          </contact>
          <friction>
            <ode/>
          </friction>
        </surface>
      </collision>
      <visual name='link04_visual'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://z1_description/meshes/visual/z1_Link04.dae</uri>
          </mesh>
        </geometry>
      </visual>
      <self_collide>1</self_collide>
    </link>
    <joint name='joint5' type='revolute'>
      <pose relative_to='link04'>0.07 0 0 0 -0 0</pose>
      <parent>link04</parent>
      <child>link05</child>
      <axis>
        <xyz>0 0 1</xyz>
        <limit>
          <lower>-1.3439</lower>
          <upper>1.3439</upper>
          <effort>30</effort>
          <velocity>3.1415</velocity>
        </limit>
        <dynamics>
          <damping>1</damping>
          <friction>1</friction>
          <spring_reference>0</spring_reference>
          <spring_stiffness>0</spring_stiffness>
        </dynamics>
      </axis>
    </joint>
    <link name='link05'>
      <pose relative_to='joint5'>0 0 0 0 -0 0</pose>
      <inertial>
        <pose>0.031215 0 0.006463 0 -0 0</pose>
        <mass>0.389385</mass>
        <inertia>
          <ixx>0.00017605</ixx>
          <ixy>4e-07</ixy>
          <ixz>5.689e-05</ixz>
          <iyy>0.00055896</iyy>
          <iyz>-1.3e-07</iyz>
          <izz>0.0005386</izz>
        </inertia>
      </inertial>
      <visual name='link05_visual'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://z1_description/meshes/visual/z1_Link05.dae</uri>
          </mesh>
        </geometry>
      </visual>
      <self_collide>1</self_collide>
    </link>
    <joint name='joint6' type='revolute'>
      <pose relative_to='link05'>0.0492 0 0 0 -0 0</pose>
      <parent>link05</parent>
      <child>link06</child>
      <axis>
        <xyz>1 0 0</xyz>
        <limit>
          <lower>-2.79253</lower>
          <upper>2.79253</upper>
          <effort>30</effort>
          <velocity>3.1415</velocity>
        </limit>
        <dynamics>
          <damping>1</damping>
          <friction>1</friction>
          <spring_reference>0</spring_reference>
          <spring_stiffness>0</spring_stiffness>
        </dynamics>
      </axis>
    </joint>
    <link name='link06'>
      <pose relative_to='joint6'>0 0 0 0 -0 0</pose>
      <inertial>
        <pose>0.072246 -0.000293 -0.002118 0 -0 0</pose>
        <mass>0.814795</mass>
        <inertia>
          <ixx>0.000570323</ixx>
          <ixy>1.93955e-07</ixy>
          <ixz>9.17803e-05</ixz>
          <iyy>0.0018682</iyy>
          <iyz>2.13376e-06</iyz>
          <izz>0.00184409</izz>
        </inertia>
      </inertial>
      <collision name='link06_collision'>
        <pose>0.0255 0 0 0 1.5708 0</pose>
        <geometry>
          <cylinder>
            <length>0.051</length>
            <radius>0.0325</radius>
          </cylinder>
        </geometry>
        <surface>
          <contact>
            <ode/>
          </contact>
          <friction>
            <ode/>
          </friction>
        </surface>
      </collision>
      <collision name='link06_fixed_joint_lump__gripperStator_collision_1'>
        <pose>0.051 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://z1_description/meshes/collision/z1_GripperStator.STL</uri>
          </mesh>
        </geometry>
        <surface>
          <contact>
            <ode/>
          </contact>
          <friction>
            <ode/>
          </friction>
        </surface>
      </collision>
      <visual name='link06_visual'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://z1_description/meshes/visual/z1_Link06.dae</uri>
          </mesh>
        </geometry>
      </visual>
      <visual name='link06_fixed_joint_lump__gripperStator_visual_1'>
        <pose>0.051 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://z1_description/meshes/visual/z1_GripperStator.dae</uri>
          </mesh>
        </geometry>
      </visual>
      <self_collide>1</self_collide>
    </link>
    <joint name='jointGripper' type='revolute'>
      <pose relative_to='link06'>0.1 0 0 0 -0 0</pose>
      <parent>link06</parent>
      <child>gripperMover</child>
      <axis>
        <xyz>0 1 0</xyz>
        <limit>
          <lower>-1.5708</lower>
          <upper>0</upper>
          <effort>30</effort>
          <velocity>3.1415</velocity>
        </limit>
        <dynamics>
          <damping>1</damping>
          <friction>1</friction>
          <spring_reference>0</spring_reference>
          <spring_stiffness>0</spring_stiffness>
        </dynamics>
      </axis>
    </joint>
    <link name='gripperMover'>
      <pose relative_to='jointGripper'>0 0 0 0 -0 0</pose>
      <inertial>
        <pose>0.013206 0.004767 0.003805 0 -0 0</pose>
        <mass>0.276213</mass>
        <inertia>
          <ixx>0.00017716</ixx>
          <ixy>1.683e-05</ixy>
          <ixz>-1.786e-05</ixz>
          <iyy>0.00026787</iyy>
          <iyz>2.62e-06</iyz>
          <izz>0.00035728</izz>
        </inertia>
      </inertial>
      <collision name='gripperMover_collision'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://z1_description/meshes/collision/z1_GripperMover.STL</uri>
          </mesh>
        </geometry>
        <surface>
          <contact>
            <ode/>
          </contact>
          <friction>
            <ode/>
          </friction>
        </surface>
      </collision>
      <visual name='gripperMover_visual'>
        <pose>0 0 0 0 -0 0</pose>
        <geometry>
          <mesh>
            <scale>1 1 1</scale>
            <uri>model://z1_description/meshes/visual/z1_GripperMover.dae</uri>
          </mesh>
        </geometry>
      </visual>
      <self_collide>1</self_collide>
    </link>
    <plugin name='gazebo_ros_control' filename='libgazebo_ros_control.so'>
      <robotNamespace>/z1_gazebo</robotNamespace>
      <robotSimType>gazebo_ros_control/DefaultRobotHWSim</robotSimType>
    </plugin>



    <!-- 无人机的模型部分 -->
    <frame name='uarm_base' attached_to='base_link'>
      <pose>0.53793 0 0.051 0 -0 0</pose>
    </frame>
    <frame name='UARM_baselink' attached_to='uarm_base'/>
    <frame name='base_static_joint' attached_to='arm_base'>
      <pose>0 0 0 0 -0 0</pose>
    </frame>
    <frame name='link00' attached_to='base_static_joint'/>
    <frame name='gripperStator' attached_to='link06'>
      <pose>0.051 0 0 0 -0 0</pose>
    </frame>
    <frame name='gripperStator' attached_to='gripperStator'/>
    <frame name='arm_base_to_mount' attached_to='arm_base'>
      <pose>0 0 0 0 -0 0</pose>
    </frame>
    <frame name='arm_base_uav' attached_to='arm_base_to_mount'/>
  </model>
</sdf>