gyroparams
자이로스코프 센서 파라미터
설명
gyroparams
클래스는 자이로스코프 센서 파라미터 객체를 만듭니다. imuSensor
로 IMU를 시뮬레이션할 때 이 객체를 사용하여 자이로스코프를 모델링할 수 있습니다. gyroparams
모델링에 대한 자세한 내용은 imuSensor
의 Algorithms 섹션을 참조하십시오.
생성
설명
는 디폴트 값으로 이루어진 이상적인 자이로스코프 센서 파라미터 객체를 반환합니다.params
= gyroparams
는 하나 이상의 params
= gyroparams(Name,Value
)Name,Value
쌍 인수를 사용하여 gyroparams
객체의 속성을 구성합니다. 여기서 Name
은 속성 이름이고 Value
는 대응하는 값입니다. Name
은 작은따옴표(''
)로 묶어야 합니다. Name1,Value1,...,NameN,ValueN
과 같이 여러 개의 이름-값 쌍 인수를 임의의 순서로 지정할 수 있습니다. 지정되지 않은 속성은 디폴트 값을 가집니다.
속성
MeasurementRange
— 최대 센서 측정값(rad/s)
Inf
(디폴트 값) | 양의 실수형 스칼라
최대 센서 측정값(단위: rad/s)으로, 양의 실수형 스칼라로 지정됩니다.
데이터형: single
| double
Resolution
— 센서 측정값의 분해능((rad/s)/LSB)
0
(디폴트 값) | 음이 아닌 실수형 스칼라
센서 측정값의 분해능(단위: (rad/s)/LSB)으로, 음이 아닌 실수형 스칼라로 지정됩니다. 여기서 LSB는 Least Significant Bit(최하위 비트)의 머리글자어입니다.
데이터형: single
| double
ConstantBias
— 상수 센서 오프셋 편향(rad/s)
[0 0 0]
(디폴트 값) | 실수형 스칼라 | 요소를 3개 가진 실수형 행 벡터
상수 센서 오프셋 편향(단위: rad/s)으로, 실수형 스칼라 또는 요소를 3개 가진 행 벡터로 지정됩니다. 스칼라 입력값은 요소를 3개 가진 실수형 행 벡터(각 요소가 입력된 스칼라 값을 가짐)로 변환됩니다.
데이터형: single
| double
AxesMisalignment
— 센서 축 왜도(%)
diag([100 100 100])
(디폴트 값) | 스칼라 | 요소를 3개 가진 행 벡터 | 3×3 행렬
센서 축 왜도(단위: 백분율)로, 스칼라, 요소를 3개 가진 행 벡터 또는 3×3 행렬로 지정됩니다. 행렬의 대각선 요소는 각 축의 오정렬 영향을 설명합니다. 비대각선 요소는 교차 축의 오정렬 영향을 설명합니다. 측정된 상태 vmeasure는 다음과 같이 오정렬 행렬을 통해 true 상태 vtrue에서 구합니다.
속성을 스칼라로 지정하면, 행렬의 모든 비대각선 요소는 지정된 스칼라의 값을 취하며 모든 대각선 요소는 100이 됩니다.
속성을 벡터 [a b c]로 지정하면 m21 = m31 = a, m12 = m32 = b, 그리고 m13 = m23 = c입니다. 모든 대각선 요소는 100이 됩니다.
데이터형: single
| double
NoiseDensity
— 센서 잡음의 파워 스펙트럼 밀도((rad/s)/√Hz)
[0 0 0]
(디폴트 값) | 실수형 스칼라 | 요소를 3개 가진 실수형 행 벡터
센서 잡음의 파워 스펙트럼 밀도(단위: (rad/s)/√Hz)로, 실수형 스칼라 또는 요소를 3개 가진 행 벡터로 지정됩니다. 이 속성은 ARW(각도 무작위 행보)에 해당합니다. 스칼라 입력값은 요소를 3개 가진 실수형 행 벡터(각 요소가 입력된 스칼라 값을 가짐)로 변환됩니다.
데이터형: single
| double
BiasInstabilityCoefficients
— 편향 불안정성 잡음 생성을 위한 필터 계수
fractalcoef
(디폴트 값) | 구조체
편향 불안정성 잡음 생성을 위한 필터 계수로, 구조체로 지정됩니다. 구조체에는 다음 필드가 있습니다.
Numerator
- 분자 계수로, 실수 값 벡터로 지정됩니다.Denominator
- 분모 계수로, 실수 값 벡터로 지정됩니다.
프랙털 잡음의 계수를 지정하려면 fractalcoef
함수를 사용합니다.
예: struct(Numerator=1,Denominator=[1 -0.5])
데이터형: struct
BiasInstability
— 편향 오프셋의 불안정성(rad/s)
[0 0 0]
(디폴트 값) | 실수형 스칼라 | 요소를 3개 가진 실수형 행 벡터
편향 오프셋의 불안정성(단위: rad/s)으로, 실수형 스칼라 또는 요소를 3개 가진 행 벡터로 지정됩니다. 스칼라 입력값은 요소를 3개 가진 실수형 행 벡터(각 요소가 입력된 스칼라 값을 가짐)로 변환됩니다.
데이터형: single
| double
RandomWalk
— 센서의 적분된 백색 잡음((rad/s)(√Hz))
[0 0 0]
(디폴트 값) | 실수형 스칼라 | 요소를 3개 가진 실수형 행 벡터
센서의 적분된 백색 잡음(단위: (rad/s)(√Hz))으로, 실수형 스칼라 또는 요소를 3개 가진 행 벡터로 지정됩니다. 스칼라 입력값은 요소를 3개 가진 실수형 행 벡터(각 요소가 입력된 스칼라 값을 가짐)로 변환됩니다.
데이터형: single
| double
NoiseType
— 랜덤 잡음 유형
"double-sided"
(디폴트 값) | "single-sided"
랜덤 잡음 유형으로, 다음으로 지정됩니다.
"double-sided"
— 랜덤 잡음 계수의 스케일링 인자가 2입니다."single-sided"
— 랜덤 잡음 계수의 스케일링 인자가 1입니다.
데이터형: char
| string
TemperatureBias
— 온도에 의한 센서 편향((rad/s)/℃)
[0 0 0]
(디폴트 값) | 실수형 스칼라 | 요소를 3개 가진 실수형 행 벡터
온도에 의한 센서 편향(단위: (rad/s)/℃)으로, 실수형 스칼라 또는 요소를 3개 가진 행 벡터로 지정됩니다. 스칼라 입력값은 요소를 3개 가진 실수형 행 벡터(각 요소가 입력된 스칼라 값을 가짐)로 변환됩니다.
데이터형: single
| double
TemperatureScaleFactor
— 온도에 의한 스케일링 인자 오차(%/℃)
[0 0 0]
(디폴트 값) | 범위 [0,100] 내에 있는 실수형 스칼라 | 범위 [0,100] 내에 있는 요소를 3개 가진 실수형 행 벡터
온도에 의한 스케일링 인자 오차(단위: %/℃)로, 0에서 100까지의 범위에 있는 값을 갖는 실수형 스칼라 또는 요소를 3개 가진 행 벡터로 지정됩니다. 스칼라 입력값은 요소를 3개 가진 실수형 행 벡터(각 요소가 입력된 스칼라 값을 가짐)로 변환됩니다.
데이터형: single
| double
AccelerationBias
— 선형 가속에 의한 센서 편향((rad/s)/(m/s2))
[0 0 0]
(디폴트 값) | 실수형 스칼라 | 요소를 3개 가진 실수형 행 벡터
선형 가속에 의한 센서 편향(단위: (rad/s)/(m/s2))으로, 실수형 스칼라 또는 요소를 3개 가진 행 벡터로 지정됩니다. 스칼라 입력값은 요소를 3개 가진 실수형 행 벡터(각 요소가 입력된 스칼라 값을 가짐)로 변환됩니다.
데이터형: single
| double
예제
정상 입력값에서 자이로스코프 데이터 생성하기
정상 입력값에서 imuSensor 객체에 대한 자이로스코프 데이터를 생성합니다.
4.363의 최대 센서 측정값과 1.332e-4의 분해능으로 자이로스코프 파라미터 객체를 생성합니다. 상수 오프셋 편향은 0.349입니다. 센서는 8.727e-4의 파워 스펙트럼 밀도를 가집니다. 온도에 의한 편향은 0.349입니다. 온도에 의한 스케일링 인자 오차는 0.02%입니다. 센서 축 왜도는 2%입니다. 선형 가속에 의한 센서 편향은 0.178e-3 입니다.
params = gyroparams('MeasurementRange',4.363,'Resolution',1.332e-04,'ConstantBias',0.349,'NoiseDensity',8.727e-4,'TemperatureBias',0.349,'TemperatureScaleFactor',0.02,'AxesMisalignment',2,'AccelerationBias',0.178e-3);
1000개 샘플에 100Hz의 샘플 레이트를 사용합니다. 자이로스코프 파라미터 객체를 사용하여 imuSensor 객체를 만듭니다.
Fs = 100; numSamples = 1000; t = 0:1/Fs:(numSamples-1)/Fs; imu = imuSensor('accel-gyro','SampleRate', Fs, 'Gyroscope', params);
imuSensor 객체에서 자이로스코프 데이터를 생성합니다.
orient = quaternion.ones(numSamples, 1); acc = zeros(numSamples, 3); angvel = zeros(numSamples, 3); [~, gyroData] = imu(acc, angvel, orient);
결과로 생성된 자이로스코프 데이터를 플로팅합니다.
plot(t, gyroData) title('Gyroscope') xlabel('s') ylabel('rad/s')
확장 기능
C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.
버전 내역
R2018b에 개발됨R2023b: 편향 불안정성 잡음 계수와 잡음 유형 지정
gyroparams
객체의 새로운 BiasInstabilityCoefficients
속성을 사용하여 편향 불안정성 잡음을 생성하는 데 사용되는 전달 함수의 계수를 지정할 수 있습니다. 또한 이 객체의 새로운 NoiseType
속성을 사용하여 잡음 계수의 스케일링 인자를 1
또는 2
로 설정할 수 있습니다.
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)