주요 콘텐츠

이 페이지는 기계 번역을 사용하여 번역되었습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

6DOF (Euler Angles)

6자유도 운동 방정식의 오일러 각도 표현 구현

  • 6DOF (Euler Angles) block

라이브러리:
Aerospace Blockset / Equations of Motion / 6DOF

설명

6DOF (Euler Angles) 블록은 평평한 지구 기준 프레임(Xe, Ye, Ze)에 대한 물체 고정 좌표 프레임(Xb, Yb, Zb)의 회전을 고려하여 6자유도 운동 방정식의 오일러 각도 표현을 구현합니다. 이러한 참조 지점에 대한 자세한 내용은 알고리즘를 참조하세요.

6DOF (Euler Angles), Simple Variable Mass 6DOF (Euler Angles), Custom Variable Mass 6DOF (Euler Angles) 블록은 동일한 블록의 대체 구성입니다.

  • 6DOF (Euler Angles) — 6자유도 운동 방정식의 Euler 각도 표현 구현

  • Simple Variable Mass 6DOF (Euler Angles) — 단순 변수 질량의 6자유도 운동 방정식에 대한 Euler 각도 표현 구현

  • Custom Variable Mass 6DOF (Euler Angles) — 사용자 정의 변수 질량의 6자유도 운동 방정식의 Euler 각도 표현을 구현합니다.

제한 사항

이 블록은 적용된 힘이 물체의 중심에서 작용하고, 질량과 관성은 일정하다고 가정합니다.

포트

입력

모두 확장

3개 요소 벡터로 지정된, 물체 고정 축에 적용된 힘입니다. 프레임에 대한 자세한 내용은 Body Coordinates를 참조하세요.

데이터형: double

3개 요소 벡터로 지정된, 물체 고정 축에 적용된 모멘트입니다. 프레임에 대한 자세한 내용은 Body Coordinates를 참조하세요.

데이터형: double

출력

모두 확장

평평한 지구 기준 프레임에서의 속도는 3개 요소 벡터로 반환됩니다.

데이터형: double

평평한 지구 기준 프레임에서의 위치는 3개 요소 벡터로 반환됩니다.

데이터형: double

오일러 회전 각도[롤, 피치, 요]는 라디안 단위의 3개 요소 벡터로 내재적인 x-y-z 회전을 정의합니다. 요, 피치, 롤 각도는 angle2dcm(yaw,pitch,roll,"ZYX")와 같은 z-y-x 회전 시퀀스를 사용하여 적용됩니다.

데이터형: double

평평한 지구 축에서 천체 고정 축으로의 좌표 변환은 3x3 행렬로 반환됩니다.

데이터형: double

물체가 고정된 프레임에서의 속도는 3개 요소 벡터로 반환됩니다.

데이터형: double

물체에 고정된 축의 각도율은 초당 라디안 단위로 3개 요소 벡터로 반환됩니다.

데이터형: double

질량은 스칼라로 반환됩니다.

종속성

이 포트를 활성화하려면 Output mass properties for acceleration computation 파라미터를 선택하세요.

데이터형: double

관성 텐서 행렬은 3x3 행렬로 반환됩니다.

종속성

이 포트를 활성화하려면 Output mass properties for acceleration computation 파라미터를 선택하세요.

데이터형: double

파라미터

모두 확장

기본

입력 및 출력 단위는 Metric (MKS), English (Velocity in ft/s) 또는 English (Velocity in kts)로 지정됩니다.

단위모멘트가속도속도위치질량관성
Metric (MKS) NewtonNewton-meterMeters per second squaredMeters per secondMetersKilogramKilogram meter squared
English (Velocity in ft/s) PoundFoot-poundFeet per second squaredFeet per secondFeetSlugSlug foot squared
English (Velocity in kts) PoundFoot-poundFeet per second squaredKnotsFeetSlugSlug foot squared

프로그래밍 방식 사용

블록 파라미터: units
유형: 문자형 벡터
값: Metric (MKS) | English (Velocity in ft/s) | English (Velocity in kts)
기본값: Metric (MKS)

질량 유형은 다음 표에 따라 지정됩니다.

Simple Variable 선택은 이전에 설명된 운동 방정식을 따릅니다.

프로그래밍 방식 사용

블록 파라미터: mtype
유형: 문자형 벡터
값: Fixed | Simple Variable | Custom Variable
기본값: 'Fixed'

평평한 지구 기준 프레임에서 천체의 초기 위치는 3요소 벡터로 지정됩니다.

프로그래밍 방식 사용

블록 파라미터: xme_0
유형: 문자형 벡터
값: '[0 0 0]' | 3개 요소 벡터
기본값: '[0 0 0]'

물체 고정 좌표 프레임에서 3개 요소 벡터로 지정된 물체 축의 초기 속도입니다.

프로그래밍 방식 사용

블록 파라미터: Vm_0
유형: 문자형 벡터
값: '[0 0 0]' | 3개 요소 벡터
기본값: '[0 0 0]'

초기 오일러 방향 각도[롤, 피치, 요]는 라디안 단위의 3개 요소 벡터로 지정됩니다. 오일러 회전 각도는 본체 좌표계와 북쪽-동쪽-아래쪽(NED) 좌표계 사이의 각도입니다.

프로그래밍 방식 사용

블록 파라미터: eul_0
유형: 문자형 벡터
값: '[0 0 0]' | 3개 요소 벡터
기본값: '[0 0 0]'

NED 프레임을 기준으로 한 초기 본체 고정 각속도로, 초당 라디안 단위의 3요소 벡터로 지정됩니다.

프로그래밍 방식 사용

블록 파라미터: pm_0
유형: 문자형 벡터
값: '[0 0 0]' | 3개 요소 벡터
기본값: '[0 0 0]'

강체의 초기 질량은 double형 스칼라로 지정됩니다.

프로그래밍 방식 사용

블록 파라미터: mass_0
유형: 문자형 벡터
값: '1.0' | double형 스칼라
기본값: '1.0'

바디의 빈 질량은 double형 스칼라로 지정됩니다.

프로그래밍 방식 사용

블록 파라미터: mass_e
유형: 문자형 벡터
값: double형 스칼라
기본값: '0.5'

바디의 전체 질량은 double형 스칼라로 지정됩니다.

프로그래밍 방식 사용

블록 파라미터: mass_f
유형: 문자형 벡터
값: double형 스칼라
기본값: '2.0'

물체의 관성은 double형 스칼라로 지정됩니다.

종속성

이 파라미터를 활성화하려면 Mass typeFixed로 설정하세요.

프로그래밍 방식 사용

블록 파라미터: inertia
유형: 문자형 벡터
값: eye(3) | double형 스칼라
기본값: eye(3)

물체의 빈 관성에 대한 관성 텐서 행렬로, 3x3 행렬로 지정됩니다.

프로그래밍 방식 사용

블록 파라미터: inertia_e
유형: 문자형 벡터
값: 'eye(3)' | 3x3 행렬
기본값: 'eye(3)'

물체의 전체 관성에 대한 관성 텐서 행렬로, 3x3 행렬로 지정됩니다.

프로그래밍 방식 사용

블록 파라미터: inertia_f
유형: 문자형 벡터
값: '2*eye(3)' | 3x3 행렬
기본값: '2*eye(3)'

질량 흐름 상대 속도 포트를 추가하려면 이 체크박스를 선택하세요. 이는 질량이 흡수되거나 소멸되는 상대 속도입니다.

프로그래밍 방식 사용

블록 파라미터: vre_flag
유형: 문자형 벡터
값: off | on
기본값: off

가속도에 대한 질량 속성에 대한 포트를 활성화하려면 이 체크박스를 선택하세요. 그런 다음 이러한 포트를 다음 블록의 입력으로 사용할 수 있습니다.

  • 6DOF Accelerationm 출력 포트

  • 6DOF Angular AccelerationIdI/dt coeff 포트.

프로그래밍 방식 사용

블록 파라미터: mass_flag
유형: 문자형 벡터
값: 'off' | 'on'
기본값: off

상태 속성

각 상태에 고유한 이름을 지정합니다. 선형화하는 동안 블록 경로 대신 상태 이름을 사용할 수 있습니다.

  • 단일 상태에 이름을 지정하려면 'velocity'와 같이 따옴표 사이에 고유한 이름을 입력합니다.

  • 여러 상태에 이름을 지정하려면 중괄호로 묶은 쉼표로 구분된 목록을 입력합니다(예: {'a', 'b', 'c'}). 각 이름은 고유해야 합니다.

  • 파라미터가 비어 있으면(' ') 이름이 할당되지 않습니다.

  • 상태 이름은 이름 파라미터가 있는 선택된 블록에만 적용됩니다.

  • 상태의 개수는 상태 이름의 개수에 균등하게 분배되어야 합니다.

  • 상태보다 적은 수의 이름을 지정할 수 있지만, 상태보다 많은 이름을 지정할 수는 없습니다.

    예를 들어, 4개의 상태가 있는 시스템에서 두 개의 이름을 지정할 수 있습니다. 첫 번째 이름은 처음 두 상태에 적용되고 두 번째 이름은 마지막 두 상태에 적용됩니다.

  • MATLAB® 작업 공간에서 변수에 상태 이름을 지정하려면 따옴표 없이 변수를 입력하세요. 변수는 문자형 벡터, 셀형 배열 또는 구조체가 될 수 있습니다.

속도 상태 이름은 중괄호로 묶인 쉼표로 구분된 목록으로 지정됩니다.

프로그래밍 방식 사용

블록 파라미터: Vm_statename
유형: 문자형 벡터
값: '' | 중괄호로 묶인 쉼표로 구분된 목록
기본값: ''

쉼표로 구분된 목록으로 지정되고 중괄호로 묶인 위치 상태 이름입니다.

프로그래밍 방식 사용

블록 파라미터: xme_statename
유형: 문자형 벡터
값: '' | 중괄호로 묶인 쉼표로 구분된 목록
기본값: ''

바디 회전 속도 상태 이름은 중괄호로 묶인 쉼표로 구분된 목록으로 지정됩니다.

프로그래밍 방식 사용

블록 파라미터: pm_statename
유형: 문자형 벡터
값: '' | 중괄호로 묶인 쉼표로 구분된 목록
기본값: ''

오일러 회전 각도 상태 이름은 중괄호로 묶인 쉼표로 구분된 목록으로 지정됩니다.

프로그래밍 방식 사용

블록 파라미터: eul_statename
유형: 문자형 벡터
값: '' | 중괄호로 묶인 쉼표로 구분된 목록
기본값: ''

문자형 벡터로 지정된 질량 상태 이름입니다.

프로그래밍 방식 사용

블록 파라미터: mass_statename
유형: 문자형 벡터
값: '' | 문자형 벡터
기본값: ''

대체 구성

모두 확장

Simple Variable Mass 6DOF (Euler Angles) 블록은 단순 변수 질량의 6자유도 운동 방정식의 오일러 각도 표현을 구현합니다. 이 블록을 활성화하려면 Mass typeSimple Variable로 설정하세요.

라이브러리:
Aerospace Blockset / Equations of Motion / 6DOF

Custom Variable Mass 6DOF (Euler Angles) 블록은 사용자 정의 변수 질량의 6자유도 운동 방정식의 오일러 각도 표현을 구현합니다. 이 블록을 활성화하려면 Mass typeCustom Variable로 설정하세요.

라이브러리:
Aerospace Blockset / Equations of Motion / 6DOF

알고리즘

6DOF (Euler Angles) 블록은 이러한 기준 프레임 개념을 사용합니다.

  • 물체 고정 좌표계의 원점은 물체의 중심이며, 물체는 강체라고 가정하는데, 이 가정으로 인해 개별 질량 요소 사이에 작용하는 힘을 고려할 필요가 없습니다.

    평평한 지구 기준 프레임은 관성 좌표계로 간주되는데, 이는 "고정된 별"에 대한 지구의 운동으로 인한 힘을 무시할 수 있게 해주는 훌륭한 근사치입니다.

    Flat Earth Reference frame

  • 물체 고정 좌표 프레임의 평행 이동 운동으로, 적용된 힘 [Fx Fy Fz]T는 물체 고정 프레임에 있고, 물체의 질량 m는 일정하다고 가정합니다.

    F¯b=[FxFyFz]=m(V¯˙b+ω¯×V¯b)Abb=[u˙bv˙bw˙b]=1mF¯bω¯×V¯bAbe=1mFbV¯b=[ubvbwb],ω¯=[pqr]

  • 적용된 모멘트가 [L M N]T이고 관성 텐서 I가 원점 O에 대한 물체 고정 프레임의 회전 동역학입니다.

    M¯B=[LMN]=Iω¯˙+ω¯×(Iω¯)I=[IxxIxyIxzIyxIyyIyzIzxIzyIzz]

  • 물체 고정 각속도 벡터 [p q r]T와 오일러 각도의 변화율 [ϕ˙θ˙ψ˙]T 사이의 관계는 오일러 비율을 물체 고정 좌표 프레임으로 분해하여 결정됩니다.

    [pqr]=[ϕ˙00]+[1000cosϕsinϕ0sinϕcosϕ][0θ˙0]+[1000cosϕsinϕ0sinϕcosϕ][cosθ0sinθ010sinθ0cosθ][00ψ˙]J1[ϕ˙θ˙ψ˙]

    J를 역으로 하면 오일러 속도 벡터를 결정하는 데 필요한 관계가 나옵니다.

    [ϕ˙θ˙ψ˙]=J[pqr]=[1(sinϕtanθ)(cosϕtanθ)0cosϕsinϕ0sinϕcosθcosϕcosθ][pqr]

참고 문헌

[1] Stevens, Brian, and Frank Lewis, Aircraft Control and Simulation. Hoboken, NJ: Second Edition, John Wiley & Sons, 2003.

[2] Zipfel, Peter H., Modeling and Simulation of Aerospace Vehicle Dynamics. Reston, Va: Second Edition, AIAA Education Series, 2007.

확장 기능

모두 확장

C/C++ 코드 생성
Simulink® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.

버전 내역

R2006a에 개발됨

모두 확장