Aerodynamics - modulabs/gazebo-tutorial GitHub Wiki
์ด ์ฅ์์๋ ๋ฌผ๋ฆฌ์ ํ์์ธ lift์ drag์ ๋ํด ์์๋ณด๊ณ ์ด๋ป๊ฒ LiftDragPlugin์ ์ ์ฉ๋๋์ง ์์๋ณธ๋ค.
์ ์ฒด์ญํ์ ๊ฐ์ค๋ ์ก์ฒด ์์์์ ํ์ ๋ํ ํ๋ฌธ์ด๋ค. ์ ์ฒด์ญํ์ ํธ๋๊ฒ์ ๋งค์ฐ ๋ณต์กํ๊ธฐ ๋๋ฌธ์ ๊ณ์ฐ์ ํตํ ์๋ฎฌ๋ ์ด์ ์ด ๋ถ๊ฐํผํ๋ค. ๋๋ฌธ์ ๊ฐ์ ๋ณด์์๋ ๋ฌผ์ฒด์ ์์ฉํ๋ ํ์ ์๋ฎฌ๋ ์ด์ ํ๊ณ ๋งํฌ์ ์ง์ ์ ์ฉํ๋ค. ํนํ lift ์ drag force๋ ์์ค ๋ฐ ๊ณต๊ธฐ์ญํ์ ์ ์ฉํ๊ฒ ์ฌ์ฉ ๋ ์ ์๋ค.
์๋ ฅ. ์ ์ฒด์ ํ๋ฆ์ ์์ง์ธ ๋ฐฉํฅ์ผ๋ก ์์ฉ
ํญ๋ ฅ. ๋ฌผ์ฒด์ ์์ง์์ ๋ฐ๋๋ฐฉํฅ์ผ๋ก ์์ฉ.
AOA ๋๋ alpha. ๊ธฐ์ค ํ๋ฉด๊ณผ ์์ง์ ๋ฐฉํฅ ์ฌ์ด์ ๊ฐ. ๊ธฐ์คํ๋ฉด์ ์ฃผ๋ก ์ค๋ ฅ์ ์์ง์ธ ํ๋ฉด์ด๋ค.

LiftDragPlugin์์๋ smooth curve ๋์ ์ stall ์ ๊ณผ ํ๋ฅผ ์ง์ ์ผ๋ก ๊ฐ์ ํ๋ค.

<plugin name="lifting_surface" filename="libLiftDragPlugin.so">
<!-- taken from the lift curve figure -->
<!-- alpha_0 is 5 degrees -->
<a0>0.08727</a0>
<!-- alpha_stall is 19.3 degrees -->
<alpha_stall>0.3368</alpha_stall>
<!-- slope of the lift curve to the left of the stall angle -->
<cla>5.418</cla>
<!-- slope of the lift curve to the right of the stall angle -->
<cla_stall>-2.1419</cla_stall>
<!-- below are just random values in this example -->
<cda>0.0</cda>
<cda_stall>0.0</cda_stall>
<cma>0.0</cma>
<cma_stall>0.0</cma_stall>
<area>3</area>
<fluid_density>1.2041</fluid_density>
<forward>-1 0 0</forward>
<upward>0 -1 0</upward>
<cp>0 0 1</cp>
<link_name>lifting_surface_link</link_name>
<radial_symmetry>false</radial_symmetry>
</plugin>๋นํ์ฒด์ ์ขํ๊ณ๋ ๋ค์๊ณผ ๊ฐ๋ค.
๋ค์ ํ๋ผ๋ฏธํฐ๋ค์ LiftDragPlugin์์ ์ฌ์ฉ๋๋ค.
-
link_name: Name of the link affected by the group of lift/drag properties. -
air_density: Density of the fluid this model is suspended in. -
area: Surface area of the link. -
a0: The initial "alpha" or initial angle of attack.a0is also the y-intercept of the alpha-lift coefficient curve. -
cla: The ratio of the coefficient of lift and alpha slope before stall. Slope of the first portion of the alpha-lift coefficient curve. -
cda: The ratio of the coefficient of drag and alpha slope before stall. -
cp: Center of pressure. The forces due to lift and drag will be applied here. -
forward: 3-vector representing the forward direction of motion in the link frame. -
upward: 3-vector representing the direction of lift or drag. -
alpha_stall: Angle of attack at stall point; the peak angle of attack. -
cla_stall: The ratio of coefficient of lift and alpha slope after stall. Slope of the second portion of the alpha-lift coefficient curve. -
cda_stall: The ratio of coefficient of drag and alpha slope after stall.
gazebo --verbose worlds/cessna_demo.world

-
CessnaPlugin: ์ด ๋ชจ๋ธ ํ๋ฌ๊ทธ์ธ์ ์ถ๋ ฅ๊ณผ ์กฐ์ข ์ต์ ์ ์ดํ๊ธฐ ์ํด
~/cessna_c172/controlํ ํฝ์ ๊ฐ์ ๋ณด ๋ฉ์์ง๋ฅผ ํตํด ๋ ธ์ถ์ํจ๋ค. ๋ํ ๋ชจ๋ธ์ ์ํ๋ฅผ~/cessna_c172/stateํ ํฝ์ ํตํด publish ํ๋ค. ํ๋ฌ๊ทธ์ธ์ ๋ํ ๋ ์์ธํ ์ ๋ณด์ ํ์ ํ๋ผ๋ฏธํฐ๋ฅผ ์๊ณ ์ถ์ผ๋ฉด ํค๋ํ์ผ์ ์ฝ์ผ๋ฉด ๋๋ค.๋ค์์cessna_demo.world์ ํฌํจ๋ ํ๋ฌ๊ทธ์ธ ์ฝ๋์ด๋ค.<!-- A plugin for controlling the thrust and control surfaces --> <plugin name="cessna_control" filename="libCessnaPlugin.so"> <propeller>cessna_c172::propeller_joint</propeller> <propeller_max_rpm>2500</propeller_max_rpm> <left_aileron>cessna_c172::left_aileron_joint</left_aileron> <left_flap>cessna_c172::left_flap_joint</left_flap> <right_aileron>cessna_c172::right_aileron_joint</right_aileron> <right_flap>cessna_c172::right_flap_joint</right_flap> <elevators>cessna_c172::elevators_joint</elevators> <rudder>cessna_c172::rudder_joint</rudder> </plugin> -
CessnaGUIPlugin: ์ด GUI ํ๋ฌ๊ทธ์ธ์ ์ถ๋ ฅ์ ํฌ๊ธฐ์ ์กฐ์ข ์ต์ ๊ฐ๋๋ฅผ ์์ ํ๊ธฐ ์ํด Cessna message๋ฅผ ๋ฐํํ๋ค. ๋ค์์ ์ปจํธ๋กค ํค์ด๋ค.
w Increase thrust (+10 %)
s Decrease thrust (-10 %)
d Increase rudder angle (+1 degree)
a Decrease rudder angle (-1 degree)
Left-Key Left roll (+1 degree)
Right-Key Right roll (+1 degree)
Up-Key Pitch down (+1 degree)
Down-Key Pitch up (+1 degree)
1 Preset for take-off
2 Preset for cruise
3 Preset for landing
- LiftDragPlugin: ์ด ํ๋ฌ๊ทธ์ธ์ ์๋ ฅ๊ณผ ํญ๋ ฅ์ ๋ง๋ค๊ธฐ ์ํด ์ฌ์ฉ๋๋ค. ํ๋กํ ๋ฌ๋ ๊ฐ์๋์ ๋น๋กํ์ฌ ์ถ๋ ฅ์ ์์ฑํ๋ค. ์กฐ์ข ์ต์ ๊ฐ๋์ ์๋ ฅ์ ๋ฐ๋ผ ๋ค๋ฅธ ํ์ ๋ง๋ค์ด ๋ธ๋ค. LiftDragPlugin aerodynamic parameters๋ jsbsim for Cessna 172P์ ๊ฐ์ ๊ทผ์ฌํ์ฌ ์ฌ์ฉ๋๋ค.
์ ํฐ๋ฏธ๋์ ์คํ์ํค๊ณ ์๋ ๋ช ๋ น์ ์ ๋ ฅํ๋ฉด Cessna์ ์ํ๋ฅผ ๋ณผ ์ ์๋ค.
gz topic -e /gazebo/default/cessna_c172/state
