Files
PX4-Autopilot/Tools/simulation/gz/models/foxtech_loong_2160/model.sdf
T
2023-01-27 09:47:21 -05:00

799 lines
25 KiB
XML

<?xml version="1.0"?>
<sdf version="1.9">
<model name="foxtech">
<pose>0 0 0.5 0 0 0</pose>
<link name="base_link">
<visual name="visual_base_link">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/VTOL.dae</uri>
</mesh>
</geometry>
</visual>
<collision name="collision_base_link">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/VTOL.dae</uri>
</mesh>
</geometry>
</collision>
<inertial>
<pose>5.5496318928189852e-08 -0.13220957545547668 0.04102677817672417 1.5707963267949001 -1.5231416921301011 1.5707963267948919</pose>
<mass>3.584838964525901</mass>
<inertia>
<ixx>0.67738485351961117</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>0.40350427325261343</iyy>
<iyz>0</iyz>
<izz>0.28925142846350795</izz>
</inertia>
</inertial>
<sensor name="imu_sensor" type="imu">
<always_on>1</always_on>
<update_rate>250</update_rate>
</sensor>
</link>
<link name="legs_link">
<visual name="visual_legs_link">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/legs.dae</uri>
</mesh>
</geometry>
<material>
<ambient>1 1 1 1.0</ambient>
<diffuse>1 1 1 1.0</diffuse>
</material>
</visual>
<collision name="collision_legs_link">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/legs.dae</uri>
</mesh>
</geometry>
</collision>
</link>
<joint name='legs_joint' type='fixed'>
<child>legs_link</child>
<parent>base_link</parent>
</joint>
<link name="airspeed_link">
<pose>0 0 0 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>
<visual name="visual">
<geometry>
<cylinder>
<radius>0.01</radius>
<length>0.1</length>
</cylinder>
</geometry>
<material>
<ambient>0 0 0 1.0</ambient>
<diffuse>0 0 0 1.0</diffuse>
</material>
</visual>
<sensor name="air_speed" type="air_speed">
<always_on>1</always_on>
<update_rate>30</update_rate>
<air_speed>
<airspeed>
<noise type="gaussian">
<mean>0</mean>
<stddev>0.01</stddev>
</noise>
</airspeed>
</air_speed>
</sensor>
</link>
<joint name='airspeed_joint' type='fixed'>
<child>airspeed_link</child>
<parent>base_link</parent>
</joint>
<link name="aileron_left_link">
<pose>-0.713 -0.122 0.062 0 0 0</pose>
<visual name="visual_aileron_left_link">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/aileron_left.dae</uri>
</mesh>
</geometry>
</visual>
<collision name="collision_aileron_left_link">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/aileron_left.dae</uri>
</mesh>
</geometry>
</collision>
<inertial>
<pose>0.016428520956860652 -0.026006344294799606 -0.0023574007803185606 -1.5395303459623877 -1.5044452951949348 -1.6400967799666224</pose>
<mass>0.48889497715279695</mass>
<inertia>
<ixx>0.0046714785213929121</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>0.0044549919806967505</iyy>
<iyz>0</iyz>
<izz>0.00022471747503113157</izz>
</inertia>
</inertial>
</link>
<joint name="servo_0" type="revolute">
<parent>base_link</parent>
<child>aileron_left_link</child>
<axis>
<xyz>-1 0 0</xyz>
<limit>
<lower>-0.53</lower>
<upper>0.53</upper>
</limit>
<dynamics>
<damping>1.000</damping>
</dynamics>
</axis>
</joint>
<link name="aileron_right_link">
<pose>0.713 -0.122 0.062 0 0 0</pose>
<visual name="visual_aileron_right_link">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/aileron_right.dae</uri>
</mesh>
</geometry>
</visual>
<collision name="collision_aileron_right_link">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/aileron_right.dae</uri>
</mesh>
</geometry>
</collision>
<inertial>
<pose>-0.016428520373255796 -0.026006344259039589 -0.0023573984798765397 -1.6020624043352432 -1.5044453783967096 -1.5014957739781367</pose>
<mass>0.48889496879062661</mass>
<inertia>
<ixx>0.0046714784977765411</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>0.0044549919610427299</iyy>
<iyz>0</iyz>
<izz>0.00022471747055809963</izz>
</inertia>
</inertial>
</link>
<joint name="servo_1" type="revolute">
<parent>base_link</parent>
<child>aileron_right_link</child>
<axis>
<xyz>-1 0 0</xyz>
<limit>
<lower>-0.53</lower>
<upper>0.53</upper>
</limit>
<dynamics>
<damping>1.000</damping>
</dynamics>
</axis>
</joint>
<link name="elevator_right_link">
<pose>0.145 -0.883 0.058 0 0 0</pose>
<visual name="visual_elevator_right_link">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/elevator_right.dae</uri>
</mesh>
</geometry>
</visual>
<collision name="collision_elevator_right_link">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/elevator_right.dae</uri>
</mesh>
</geometry>
</collision>
<inertial>
<pose>-0.0016067211671852988 -0.018030442713651468 -0.00069522433005383619 -1.5781803398819152 -1.5333187237477242 -1.557643721247719</pose>
<mass>0.060753042156032153</mass>
<inertia>
<ixx>0.00020350509255462549</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>0.00019480985651122032</iyy>
<iyz>0</iyz>
<izz>8.8355306524910641e-06</izz>
</inertia>
</inertial>
</link>
<joint name="servo_2" type="revolute">
<parent>base_link</parent>
<child>elevator_right_link</child>
<axis>
<xyz>1 0 0</xyz>
<limit>
<lower>-0.53</lower>
<upper>0.53</upper>
</limit>
<dynamics>
<damping>1.000</damping>
</dynamics>
</axis>
</joint>
<link name="elevator_left_link">
<pose>-0.145 -0.883 0.058 0 0 0</pose>
<visual name="visual_elevator_left_link">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/elevator_left.dae</uri>
</mesh>
</geometry>
</visual>
<collision name="collision_elevator_left_link">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/elevator_left.dae</uri>
</mesh>
</geometry>
</collision>
<inertial>
<pose>0.0016067211849514255 -0.01803044297097545 -0.00069522588918623891 -1.5634123386853667 -1.5333186393334697 -1.5839489042016495</pose>
<mass>0.060753043945841481</mass>
<inertia>
<ixx>0.00020350510004415204</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>0.00019480986370137352</iyy>
<iyz>0</iyz>
<izz>8.8355309624774113e-06</izz>
</inertia>
</inertial>
</link>
<joint name="servo_3" type="revolute">
<parent>base_link</parent>
<child>elevator_left_link</child>
<axis>
<xyz>1 0 0</xyz>
<limit>
<lower>-0.53</lower>
<upper>0.53</upper>
</limit>
<dynamics>
<damping>1.000</damping>
</dynamics>
</axis>
</joint>
<link name="rudder_link">
<pose>0 -0.887 0.201 0 0 0</pose>
<visual name="visual_rudder_link">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/rudder.dae</uri>
</mesh>
</geometry>
</visual>
<collision name="collision_rudder_link">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/rudder.dae</uri>
</mesh>
</geometry>
</collision>
<inertial>p
<pose>3.0720176589210631e-09 -0.014597633583934367 -0.00023793299837082617 -0.00096325055376496349 0 0</pose>
<mass>0.08686124232617691</mass>
<inertia>
<ixx>0.00029239473616759126</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>0.00028035840542611708</iyy>
<iyz>0</iyz>
<izz>1.2453403617197103e-05</izz>
</inertia>
</inertial>
</link>
<joint name="servo_4" type="revolute">
<parent>base_link</parent>
<child>rudder_link</child>
<axis>
<xyz>0 0 1</xyz>
<limit>
<lower>-0.53</lower>
<upper>0.53</upper>
</limit>
<dynamics>
<damping>1.000</damping>
</dynamics>
</axis>
</joint>
<link name="rotor_0">
<gravity>true</gravity>
<self_collide>false</self_collide>
<velocity_decay/>
<pose>0.427 -0.403 0.083 0 0 0</pose>
<inertial>
<mass>0.016076923076923075</mass>
<inertia>
<ixx>3.8464910483993325e-07</ixx>
<iyy>2.6115851691700804e-05</iyy>
<izz>2.649858234714004e-05</izz>
</inertia>
</inertial>
<visual name="rotor_0_visual">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/propeller_ccw.dae</uri>
</mesh>
</geometry>
</visual>
<collision name="rotor_0_collision">
<pose>0 0 0 0 0 0 </pose>
<geometry>
<box>
<size>0.2792307692307692 0.016923076923076923 0.0008461538461538462</size>
</box>
</geometry>
<surface>
<contact>
<ode>
<min_depth>0.001</min_depth>
<max_vel>0</max_vel>
</ode>
</contact>
<friction>
<ode/>
</friction>
</surface>
</collision>
</link>
<joint name="rotor_0_joint" type="revolute">
<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_1">
<gravity>true</gravity>
<self_collide>false</self_collide>
<velocity_decay/>
<pose>-0.427 0.403 0.083 0 0 0</pose>
<inertial>
<mass>0.016076923076923075</mass>
<inertia>
<ixx>3.8464910483993325e-07</ixx>
<iyy>2.6115851691700804e-05</iyy>
<izz>2.649858234714004e-05</izz>
</inertia>
</inertial>
<visual name="rotor_1_visual">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/propeller_ccw.dae</uri>
</mesh>
</geometry>
</visual>
<collision name="rotor_1_collision">
<pose>0 0 0 0 0 0 </pose>
<geometry>
<box>
<size>0.2792307692307692 0.016923076923076923 0.0008461538461538462</size>
</box>
</geometry>
<surface>
<contact>
<ode>
<min_depth>0.001</min_depth>
<max_vel>0</max_vel>
</ode>
</contact>
<friction>
<ode/>
</friction>
</surface>
</collision>
</link>
<joint name="rotor_1_joint" type="revolute">
<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_2">
<gravity>true</gravity>
<self_collide>false</self_collide>
<velocity_decay/>
<pose>0.427 0.403 0.083 0 0 0</pose>
<inertial>
<mass>0.016076923076923075</mass>
<inertia>
<ixx>3.8464910483993325e-07</ixx>
<iyy>2.6115851691700804e-05</iyy>
<izz>2.649858234714004e-05</izz>
</inertia>
</inertial>
<visual name="rotor_2_visual">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/propeller_cw.dae</uri>
</mesh>
</geometry>
</visual>
<collision name="rotor_2_collision">
<pose>0 0 0 0 0 0 </pose>
<geometry>
<box>
<size>0.2792307692307692 0.016923076923076923 0.0008461538461538462</size>
</box>
</geometry>
<surface>
<contact>
<ode>
<min_depth>0.001</min_depth>
<max_vel>0</max_vel>
</ode>
</contact>
<friction>
<ode/>
</friction>
</surface>
</collision>
</link>
<joint name="rotor_2_joint" type="revolute">
<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_3">
<gravity>true</gravity>
<self_collide>false</self_collide>
<velocity_decay/>
<pose>-0.427 -0.403 0.083 0 0 0</pose>
<inertial>
<mass>0.016076923076923075</mass>
<inertia>
<ixx>3.8464910483993325e-07</ixx>
<iyy>2.6115851691700804e-05</iyy>
<izz>2.649858234714004e-05</izz>
</inertia>
</inertial>
<visual name="rotor_3_visual">
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/propeller_cw.dae</uri>
</mesh>
</geometry>
</visual>
<collision name="rotor_3_collision">
<pose>0 0 0 0 0 0 </pose>
<geometry>
<box>
<size>0.2792307692307692 0.016923076923076923 0.0008461538461538462</size>
</box>
</geometry>
<surface>
<contact>
<ode>
<min_depth>0.001</min_depth>
<max_vel>0</max_vel>
</ode>
</contact>
<friction>
<ode/>
</friction>
</surface>
</collision>
</link>
<joint name="rotor_3_joint" type="revolute">
<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_puller'>
<pose>0.0 0.379 0.0 -1.57 1.57 0</pose>
<inertial>
<pose>0 0 0 0 0 0</pose>
<mass>0.005</mass>
<inertia>
<ixx>9.75e-07</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>0.000166704</iyy>
<iyz>0</iyz>
<izz>0.000167604</izz>
</inertia>
</inertial>
<collision name='rotor_puller_collision'>
<geometry>
<cylinder>
<length>0.005</length>
<radius>0.06</radius>
</cylinder>
</geometry>
<surface>
<contact>
<ode/>
</contact>
<friction>
<ode/>
</friction>
</surface>
</collision>
<visual name='rotor_puller_visual'>
<geometry>
<mesh>
<uri>model://foxtech_loong_2160/meshes/propeller_cw.dae</uri>
</mesh>
</geometry>
</visual>
<gravity>1</gravity>
<velocity_decay/>
<self_collide>0</self_collide>
</link>
<joint name='rotor_puller_joint' type='revolute'>
<pose>0.0 0 0.0 0 -1.57 0</pose>
<child>rotor_puller</child>
<parent>base_link</parent>
<axis>
<xyz>1 0 0</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>
<plugin filename="gz-sim-multicopter-motor-model-system" name="gz::sim::systems::MulticopterMotorModel">
<jointName>rotor_0_joint</jointName>
<linkName>rotor_0</linkName>
<turningDirection>ccw</turningDirection>
<timeConstantUp>0.0125</timeConstantUp>
<timeConstantDown>0.025</timeConstantDown>
<maxRotVelocity>1500</maxRotVelocity>
<motorConstant>2e-05</motorConstant>
<momentConstant>0.06</momentConstant>
<commandSubTopic>command/motor_speed</commandSubTopic>
<motorNumber>0</motorNumber>
<rotorDragCoefficient>0.000106428</rotorDragCoefficient>
<rollingMomentCoefficient>1e-06</rollingMomentCoefficient>
<rotorVelocitySlowdownSim>20</rotorVelocitySlowdownSim>
<motorType>velocity</motorType>
</plugin>
<!-- <plugin name='back_left_motor_model' filename='libgazebo_motor_model.so'> -->
<plugin filename="gz-sim-multicopter-motor-model-system" name="gz::sim::systems::MulticopterMotorModel">
<jointName>rotor_1_joint</jointName>
<linkName>rotor_1</linkName>
<turningDirection>ccw</turningDirection>
<timeConstantUp>0.0125</timeConstantUp>
<timeConstantDown>0.025</timeConstantDown>
<maxRotVelocity>1500</maxRotVelocity>
<motorConstant>2e-05</motorConstant>
<momentConstant>0.06</momentConstant>
<commandSubTopic>command/motor_speed</commandSubTopic>
<motorNumber>1</motorNumber>
<rotorDragCoefficient>0.000106428</rotorDragCoefficient>
<rollingMomentCoefficient>1e-06</rollingMomentCoefficient>
<rotorVelocitySlowdownSim>20</rotorVelocitySlowdownSim>
<motorType>velocity</motorType>
</plugin>
<plugin
filename="gz-sim-multicopter-motor-model-system"
name="gz::sim::systems::MulticopterMotorModel">
<jointName>rotor_2_joint</jointName>
<linkName>rotor_2</linkName>
<turningDirection>cw</turningDirection>
<timeConstantUp>0.0125</timeConstantUp>
<timeConstantDown>0.025</timeConstantDown>
<maxRotVelocity>1500</maxRotVelocity>
<motorConstant>2e-05</motorConstant>
<momentConstant>0.06</momentConstant>
<commandSubTopic>command/motor_speed</commandSubTopic>
<motorNumber>2</motorNumber>
<rotorDragCoefficient>0.000106428</rotorDragCoefficient>
<rollingMomentCoefficient>1e-06</rollingMomentCoefficient>
<rotorVelocitySlowdownSim>20</rotorVelocitySlowdownSim>
<motorType>velocity</motorType>
</plugin>
<plugin
filename="gz-sim-multicopter-motor-model-system"
name="gz::sim::systems::MulticopterMotorModel">
<jointName>rotor_3_joint</jointName>
<linkName>rotor_3</linkName>
<turningDirection>cw</turningDirection>
<timeConstantUp>0.0125</timeConstantUp>
<timeConstantDown>0.025</timeConstantDown>
<maxRotVelocity>1500</maxRotVelocity>
<motorConstant>2e-05</motorConstant>
<momentConstant>0.06</momentConstant>
<commandSubTopic>command/motor_speed</commandSubTopic>
<motorNumber>3</motorNumber>
<rotorDragCoefficient>0.000106428</rotorDragCoefficient>
<rollingMomentCoefficient>1e-06</rollingMomentCoefficient>
<rotorVelocitySlowdownSim>20</rotorVelocitySlowdownSim>
<motorType>velocity</motorType>
</plugin>
<plugin
filename="gz-sim-multicopter-motor-model-system"
name="gz::sim::systems::MulticopterMotorModel">
<jointName>rotor_puller_joint</jointName>
<linkName>rotor_puller</linkName>
<turningDirection>cw</turningDirection>
<timeConstantUp>0.0125</timeConstantUp>
<timeConstantDown>0.025</timeConstantDown>
<maxRotVelocity>3500</maxRotVelocity>
<motorConstant>8.54858e-06</motorConstant>
<momentConstant>0.01</momentConstant>
<commandSubTopic>command/motor_speed</commandSubTopic>
<motorNumber>4</motorNumber>
<rotorDragCoefficient>0.000106428</rotorDragCoefficient>
<rollingMomentCoefficient>1e-06</rollingMomentCoefficient>
<rotorVelocitySlowdownSim>20</rotorVelocitySlowdownSim>
<motorType>velocity</motorType>
</plugin>
<plugin filename="gz-sim-lift-drag-system" name="gz::sim::systems::LiftDrag">
<a0>0.05984281113</a0>
<cla>4.752798721</cla>
<cda>0.6417112299</cda>
<cma>0.0</cma>
<alpha_stall>0.3391428111</alpha_stall>
<cla_stall>-3.85</cla_stall>
<cda_stall>-0.9233984055</cda_stall>
<cma_stall>0</cma_stall>
<cp>-0.05 0.3 0.05</cp>
<area>0.50</area>
<air_density>1.2041</air_density>
<forward>1 0 0</forward>
<upward>0 0 1</upward>
<link_name>base_link</link_name>
<control_joint_name>servo_0</control_joint_name>
<control_joint_rad_to_cl>-1.0</control_joint_rad_to_cl>
</plugin>
<plugin
filename="gz-sim-joint-position-controller-system" name="gz::sim::systems::JointPositionController">
<joint_name>servo_0</joint_name>
<sub_topic>servo_0</sub_topic>
</plugin>
<plugin filename="gz-sim-lift-drag-system" name="gz::sim::systems::LiftDrag">
<a0>0.05984281113</a0>
<cla>4.752798721</cla>
<cda>0.6417112299</cda>
<cma>0.0</cma>
<alpha_stall>0.3391428111</alpha_stall>
<cla_stall>-3.85</cla_stall>
<cda_stall>-0.9233984055</cda_stall>
<cma_stall>0</cma_stall>
<cp>-0.05 -0.3 0.05</cp>
<area>0.50</area>
<air_density>1.2041</air_density>
<forward>1 0 0</forward>
<upward>0 0 1</upward>
<link_name>base_link</link_name>
<control_joint_name>servo_1</control_joint_name>
<control_joint_rad_to_cl>-1.0</control_joint_rad_to_cl>
</plugin>
<plugin
filename="gz-sim-joint-position-controller-system" name="gz::sim::systems::JointPositionController">
<joint_name>servo_1</joint_name>
<sub_topic>servo_1</sub_topic>
</plugin>
<plugin filename="gz-sim-lift-drag-system" name="gz::sim::systems::LiftDrag">
<a0>-0.2</a0>
<cla>4.752798721</cla>
<cda>0.6417112299</cda>
<cma>0.0</cma>
<alpha_stall>0.3391428111</alpha_stall>
<cla_stall>-3.85</cla_stall>
<cda_stall>-0.9233984055</cda_stall>
<cma_stall>0</cma_stall>
<cp>-0.5 0 0</cp>
<area>0.01</area>
<air_density>1.2041</air_density>
<forward>1 0 0</forward>
<upward>0 0 1</upward>
<link_name>base_link</link_name>
<control_joint_name>servo_2</control_joint_name>
<control_joint_rad_to_cl>-12.0</control_joint_rad_to_cl>
</plugin>
<plugin
filename="gz-sim-joint-position-controller-system" name="gz::sim::systems::JointPositionController">
<joint_name>servo_2</joint_name>
<sub_topic>servo_2</sub_topic>
</plugin>
<plugin filename="gz-sim-lift-drag-system" name="gz::sim::systems::LiftDrag">
<a0>0.0</a0>
<cla>4.752798721</cla>
<cda>0.6417112299</cda>
<cma>0.0.</cma>
<alpha_stall>0.3391428111</alpha_stall>
<cla_stall>-3.85</cla_stall>
<cda_stall>-0.9233984055</cda_stall>
<cma_stall>0</cma_stall>
<cp>-0.5 0 0.05</cp>
<area>0.02</area>
<air_density>1.2041</air_density>
<forward>1 0 0</forward>
<upward>0 1 0</upward>
<link_name>base_link</link_name>
<control_joint_name>servo_3</control_joint_name>
</plugin>
<plugin
filename="gz-sim-joint-position-controller-system" name="gz::sim::systems::JointPositionController">
<joint_name>servo_3</joint_name>
<sub_topic>servo_3</sub_topic>
</plugin>
<plugin filename="gz-sim-lift-drag-system" name="gz::sim::systems::LiftDrag">
<a0>0.0</a0>
<cla>4.752798721</cla>
<cda>0.6417112299</cda>
<cma>0.0.</cma>
<alpha_stall>0.3391428111</alpha_stall>
<cla_stall>-3.85</cla_stall>
<cda_stall>-0.9233984055</cda_stall>
<cma_stall>0</cma_stall>
<cp>-0.5 0 0.05</cp>
<area>0.02</area>
<air_density>1.2041</air_density>
<forward>1 0 0</forward>
<upward>0 1 0</upward>
<link_name>base_link</link_name>
<control_joint_name>servo_4</control_joint_name>
</plugin>
<plugin
filename="gz-sim-joint-position-controller-system" name="gz::sim::systems::JointPositionController">
<joint_name>servo_4</joint_name>
<sub_topic>servo_4</sub_topic>
</plugin>
</model>
</sdf>