Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР 2. Акселерометр АТ-1104_ч.2_Калибровка.doc
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
3 Мб
Скачать
☆

Приложение п2. Программа калибровки

%Данная программа предназначена для определения калибровочных коэффициентов

%и нулевых отклонений блока акселерометров. Программой следует пользоваться

%вместе с порядком проведения лабораторной работы, приведенным в методичес-

%ком пособии "Акселерометр твердотельный косвенного измерения АТ-1104.

%Часть 2. Снятие показаний и калибровка блока акселерометров с использова-

%нием лабораторного стенда"

clear; clc;

% определение крутизны акселерометров

g=9.81; %ускорение свободного падения

%показания акселерометра Ах при вертикальном положении оси чувствительности

Ux1=2.351; %ось чувствительности направлена вверх, п.3.3

Ux2=-2.380; %ось чувствительности направлена вниз, п.3.6

%показания акселерометра Аy при вертикальном положении оси чувствительности

Uy1=2.373; %ось чувствительности направлена вверх, п.3.3

Uy2=-2.444; %ось чувствительности направлена вниз, п.3.6

%показания акселерометра Аz при вертикальном положении оси чувствительности

Uz1=2.442; %ось чувствительности направлена вверх, п.3.3

Uz2=-2.440; %ось чувствительности направлена вниз, п.3.6

%Определение крутизны акселерометров, п.3.7

Sax=(Ux1-Ux2)/2/g; %крутизна акселерометра Ах

Say=(Uy1-Uy2)/2/g; %крутизна акселерометра Аy

Saz=(Uz1-Uz2)/2/g; %крутизна акселерометра Аz

Sa=[Sax;Say;Saz];

%Формирование матрицы углов поворота платформы

dalfa=30*pi/180; %приращение угла alfa, рад

dbeta=15*pi/180; %приращение угла beta, рад

alfak=90*pi/180; %предельное значение угла alfa, рад

betak=90*pi/180; %предельное значение угла beta, рад

alfa=0; %Начальное значение угла alfa

beta=0; %Начальное значение угла beta

for bet=dbeta:dbeta:betak,

for alf=0:dalfa:alfak,

alfa=[alfa alf];

beta=[beta bet];

end

end

%Контрольная матрица углов поворота вида

%[0 alfa1 alfa2 alfa3...alfa1 alfa2...]

%[0 beta1 beta1 beta1...beta2 beta2...]

alfa_i_beta=180/pi*[alfa;beta];

N=size(alfa); %Определение размеров матрицы alfa

%определение количества измерений, равное количеству элементов

%в матрице alfa

N=N(2);

% определение проекции ускорения на оси базовой СК

Ag=[0 g 0]'; %измеряемое ускорение (g) в гор. СК, см. ф-лу (3)

A=zeros(3,N); %инициализация массива

for i=1:N,

%матрицы поворота, см. ф-лу (2)

P_beta=[cos(beta(i)) sin(beta(i)) 0;

-sin(beta(i)) cos(beta(i)) 0;

0 0 1];

P_alfa=[cos(alfa(i)) 0 -sin(alfa(i));

0 1 0;

sin(alfa(i)) 0 cos(alfa(i))];

%проекции ускорения на оси базовой СК, см. ф-лу (4), п.4.4

A(:,i)=P_alfa*P_beta*Ag;

%[ax1 ax2 ax3...axn]

%[ay1 ay2 ay3...ayn]

%[az1 az2 az3...azn]

end

%______________________________________________________________

%Измеренные напряжения на выходе акселерометров, п.4.2

%[Ux1 Ux2 Ux3...Uxn]

%[Uy1 Uy2 Uy3...Uyn]

%[Uz1 Uz2 Uz3...Uzn]

U=[ 0.004 0.629 0.536 0.301 -0.009 1.213 1.023 0.562 -0.040 1.722 1.451 0.790 -0.068 2.117 1.782 0.965 -0.088 2.361 1.988 1.093 -0.103 2.440 2.058 1.121 -0.116;

2.373 2.296 2.291 2.290 2.290 2.061 2.058 2.058 2.054 1.680 1.678 1.673 1.672 1.176 1.164 1.161 1.161 0.587 0.580 0.578 0.578 -0.039 -0.048 -0.050 -0.051;

-0.025 0.006 0.302 0.515 0.581 0.036 0.610 1.019 1.145 0.067 0.879 1.460 1.640 0.089 1.090 1.808 2.030 0.100 1.220 2.009 2.270 0.105 1.259 2.086 2.352];

%измеренные ускорения (нескорректированные), п.4.3

A_=[U(1,:)/Sa(1);U(2,:)/Sa(2);U(3,:)/Sa(3)];

%матрица погрешностей измерения ускорений

dAnk=abs(A_-A);

Z=A_;

%матрица H проекций ускорения (g) на оси базовой СК

%[ax1 ax2 ax3...axn]

%[ay1 ay2 ay3...ayn]

%[az1 az2 az3...azn]

%[ 1 1 1 ... 1 ]

H=[A;ones(1,N)];

%матрица калибровочных коэффициентов и нулевых отклонений, см. ф-лу (23)

%[t11 t12 t13 dax]

%[t21 t22 t23 day]

%[t31 t32 t33 daz]

X=Z*H'*(H*H')^-1;

%проверка

T=[X(:,1) X(:,2) X(:,3)]; %матрица калибровочных коэффициентов

%[t11 t12 t13]

%[t21 t22 t23]

%[t31 t32 t33]

%Получение матрицы откорректированных ускорений, см. ф-лу (17), п.5.2

Ak=zeros(3,N); %инициализация массива

for k=1:N,

Ak(:,k)=(T^-1)*(A_(:,k)-X(:,4));

end

dA=abs(A-Ak); %Погрешность скорректированных измерений

Л.Р. № 2: Акселерометр АТ-1104: Ч.2. Калибровка блока акселерометров Страница 24