Моделирование алгоритма комплексирования результатов независимых измерений
Разработка математического и алгоритмического обеспечения, моделирование процессов комплексирования результатов независимых измерений для двухпозиционной радиолокационной системы наземного базирования. Оптимальное оценивание при совместных измерениях.
Рубрика | Коммуникации, связь, цифровые приборы и радиоэлектроника |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 28.12.2017 |
Размер файла | 6,0 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
8. В.М. Кутузов,С.П. Калениченко, А.Г. Попов, В.И Веремьев, А.А. Коновалов, А.В. Бархатов, В.Н. Михайлов. Принципы построения системы совместной траекторной обработки в многопозиционном радиолокационном комплексе мониторинга окружающего пространства // XVIII международная научно-техническая конференция «Радиолокация, навигация, связь». Воронеж, 17 - 19 апреля 2012г. - Т.3. - С. 1453-1461.
9. Кузьмин С.З. Основы теории цифровой обработки радиолокационной информации. - М.: Советское радио. 1974 г. - 432 с.
10. Верба В.С. Оценивание дальности и скорости в радиолокационных системах.Ч.3. - М.: Радиотехника. 2010 г. - 472 с.
11. Быков В.В. Цифровое моделирование в статистической радиотехнике М.: Советское Радио. 1971 г. - 328 с.
12. Верба В.С. Справочник по радиолокации. Книга 2. - М.: Техносфера. 2015 г. - 680 с.
13. Дудник П.И., Ильчук А.Р., Татарский Б.Г. Многофункциональные радиолокационные системы. - М.: Дрофа, 2007 г.
14. Дьяконов В., Абраменкова И. MATLAB обработка сигналов и изображений. - СПБ.: Питер. 2002 г.
15. Киселев В. Ю., Монаков А. А. Предсказание траектории воздушного судна в автоматизированных системах управления воздушным движением. с. 33-40. 2014 г.
16. Кондратенков Г.С. Радиолокационные станции обзора Земли. - М.: Радио и связь. 1983 г.
17. Крамер Г. Математические методы статистики Пер. с англ. А. С. Монина и А. А. Петрова под редакцией академика А. Н. Колмогорова. - М.: Изд-во иностр. лит, 1948 г. - 632 c.
18. Сколник Н. И. Справочник по радиолокации: в 4 т. - М.: Советское Радио, 1976 - 1979. Том 2.
19.Ширман Д.Я, Голиков В.Н. Основы теории обнаружения радиолокационных сигналов и измерения их параметров. - М.: Советское радио. 1963 г.
20. Bassem R. MATLAB simulations for radar systems design / Bassem R. Mahafza, Atef Z. Elsherbeni, 2004. Pp. 706.
ПРИЛОЖЕНИЕ А
Код программы
ГУАП 11.03.04.4310.02.00
Код программы MATLAB
function varargout = Block_1(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @Block_1_OpeningFcn, ...
'gui_OutputFcn', @Block_1_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
function Block_1_OpeningFcn(hObject, eventdata, handles, varargin)
handles.output = hObject;
guidata(hObject, handles);
function varargout = Block_1_OutputFcn(hObject, eventdata, handles)
varargout{1} = handles.output;
function edit1_Callback(hObject, eventdata, handles)
function edit1_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function pushbutton1_Callback(hObject, eventdata, handles)
handles.pulsenum = str2num(get(handles.edit1, 'String'));
handles.prf = str2num(get(handles.edit2, 'String'));
%% Платформы
% Инициализация нач. положения платформы 1
handles.X_init_pos_ant_1=str2num(get(handles.edit3, 'String'));
handles.Y_init_pos_ant_1=str2num(get(handles.edit4, 'String'));
handles.Z_init_pos_ant_1=str2num(get(handles.edit5, 'String'));
handles.Vx_init_pos_ant_1=str2num(get(handles.edit6, 'String'));
handles.Vy_init_pos_ant_1=str2num(get(handles.edit7, 'String'));
handles.Vz_init_pos_ant_1=str2num(get(handles.edit8, 'String'));
% Инициализация нач. положения платформы 2
handles.X_init_pos_ant_2=str2num(get(handles.edit9, 'String'));
handles.Y_init_pos_ant_2=str2num(get(handles.edit10, 'String'));
handles.Z_init_pos_ant_2=str2num(get(handles.edit11, 'String'));
handles.Vx_init_pos_ant_2=str2num(get(handles.edit12, 'String'));
handles.Vy_init_pos_ant_2=str2num(get(handles.edit13, 'String'));
handles.Vz_init_pos_ant_2=str2num(get(handles.edit14, 'String'));
%% Цели
% Инициализация нач. положения и скорости цели 1
handles.X_init_pos_tgt_1=str2num(get(handles.edit15, 'String'));
handles.Y_init_pos_tgt_1=str2num(get(handles.edit16, 'String'));
handles.Z_init_pos_tgt_1=str2num(get(handles.edit17, 'String'));
handles.Vx_init_pos_tgt_1=str2num(get(handles.edit18, 'String'));
handles.Vy_init_pos_tgt_1=str2num(get(handles.edit19, 'String'));
handles.Vz_init_pos_tgt_1=str2num(get(handles.edit20, 'String'));
% Инициализация нач. положения и скорости цели 2
handles.X_init_pos_tgt_2=str2num(get(handles.edit21, 'String'));
handles.Y_init_pos_tgt_2=str2num(get(handles.edit22, 'String'));
handles.Z_init_pos_tgt_2=str2num(get(handles.edit23, 'String'));
handles.Vx_init_pos_tgt_2=str2num(get(handles.edit24, 'String'));
handles.Vy_init_pos_tgt_2=str2num(get(handles.edit25, 'String'));
handles.Vz_init_pos_tgt_2=str2num(get(handles.edit26, 'String'));
% Инициализация нач. положения и скорости цели 3
handles.X_init_pos_tgt_3=str2num(get(handles.edit27, 'String'));
handles.Y_init_pos_tgt_3=str2num(get(handles.edit28, 'String'));
handles.Z_init_pos_tgt_3=str2num(get(handles.edit29, 'String'));
handles.Vx_init_pos_tgt_3=str2num(get(handles.edit30, 'String'));
handles.Vy_init_pos_tgt_3=str2num(get(handles.edit31, 'String'));
handles.Vz_init_pos_tgt_3=str2num(get(handles.edit32, 'String'));
% Инициализация нач. положения и скорости цели 4
handles.X_init_pos_tgt_4=str2num(get(handles.edit33, 'String'));
handles.Y_init_pos_tgt_4=str2num(get(handles.edit34, 'String'));
handles.Z_init_pos_tgt_4=str2num(get(handles.edit35, 'String'));
handles.Vx_init_pos_tgt_4=str2num(get(handles.edit36, 'String'));
handles.Vy_init_pos_tgt_4=str2num(get(handles.edit37, 'String'));
handles.Vz_init_pos_tgt_4=str2num(get(handles.edit38, 'String'));
% Инициализация нач положения и скорости цели 5
handles.X_init_pos_tgt_5=str2num(get(handles.edit39, 'String'));
handles.Y_init_pos_tgt_5=str2num(get(handles.edit40, 'String'));
handles.Z_init_pos_tgt_5=str2num(get(handles.edit41, 'String'));
handles.Vx_init_pos_tgt_5=str2num(get(handles.edit42, 'String'));
handles.Vy_init_pos_tgt_5=str2num(get(handles.edit43, 'String'));
handles.Vz_init_pos_tgt_5=str2num(get(handles.edit44, 'String'));
guidata(hObject,handles);
function pushbutton2_Callback(hObject, eventdata, handles)
multi_radar_target_visual3d_move(hObject,handles);
function pushbutton3_Callback(hObject, eventdata, handles)
function edit3_Callback(hObject, eventdata, handles)
function edit3_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit4_Callback(hObject, eventdata, handles)
function edit4_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit5_Callback(hObject, eventdata, handles)
function edit5_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit6_Callback(hObject, eventdata, handles)
function edit6_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit7_Callback(hObject, eventdata, handles)
function edit7_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit8_Callback(hObject, eventdata, handles)
function edit8_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit2_Callback(hObject, eventdata, handles)
function edit2_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit9_Callback(hObject, eventdata, handles)
function edit9_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit10_Callback(hObject, eventdata, handles)
function edit10_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit11_Callback(hObject, eventdata, handles)
function edit11_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit12_Callback(hObject, eventdata, handles)
function edit12_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit13_Callback(hObject, eventdata, handles)
function edit13_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit14_Callback(hObject, eventdata, handles)
function edit14_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit26_Callback(hObject, eventdata, handles)
function edit26_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit25_Callback(hObject, eventdata, handles)
function edit25_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit24_Callback(hObject, eventdata, handles)
function edit24_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit23_Callback(hObject, eventdata, handles)
function edit23_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit22_Callback(hObject, eventdata, handles)
function edit22_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit21_Callback(hObject, eventdata, handles)
function edit21_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit44_Callback(hObject, eventdata, handles)
function edit44_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit43_Callback(hObject, eventdata, handles)
function edit43_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit42_Callback(hObject, eventdata, handles)
function edit42_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit41_Callback(hObject, eventdata, handles)
function edit41_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit40_Callback(hObject, eventdata, handles)
function edit40_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit39_Callback(hObject, eventdata, handles)
function edit39_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit38_Callback(hObject, eventdata, handles)
function edit38_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit37_Callback(hObject, eventdata, handles)
function edit37_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit36_Callback(hObject, eventdata, handles)
function edit36_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit35_Callback(hObject, eventdata, handles)
function edit35_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit34_Callback(hObject, eventdata, handles)
function edit34_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit33_Callback(hObject, eventdata, handles)
function edit33_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit32_Callback(hObject, eventdata, handles)
function edit32_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit31_Callback(hObject, eventdata, handles)
function edit31_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit30_Callback(hObject, eventdata, handles)
function edit30_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit29_Callback(hObject, eventdata, handles)
function edit29_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit28_Callback(hObject, eventdata, handles)
function edit28_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit27_Callback(hObject, eventdata, handles)
function edit27_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit20_Callback(hObject, eventdata, handles)
function edit20_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit19_Callback(hObject, eventdata, handles)
function edit19_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit18_Callback(hObject, eventdata, handles)
function edit18_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit17_Callback(hObject, eventdata, handles)
function edit17_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit16_Callback(hObject, eventdata, handles)
function edit16_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit15_Callback(hObject, eventdata, handles)
function edit15_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function multi_radar_target_visual3d_move(hObject, handles)
prf=handles.prf; % prf=1000; 1 мкс
pulsenum=handles.pulsenum;
% Инициализация нач положения платформы 1
X_init_pos_ant_1=handles.X_init_pos_ant_1;
Y_init_pos_ant_1=handles.Y_init_pos_ant_1;
Z_init_pos_ant_1=handles.Z_init_pos_ant_1;
Vx_init_pos_ant_1=handles.Vx_init_pos_ant_1;
Vy_init_pos_ant_1=handles.Vy_init_pos_ant_1;
Vz_init_pos_ant_1=handles.Vz_init_pos_ant_1;
% Инициализация нач положения платформы 2
X_init_pos_ant_2=handles.X_init_pos_ant_2;
Y_init_pos_ant_2=handles.Y_init_pos_ant_2;
Z_init_pos_ant_2=handles.Z_init_pos_ant_2;
Vx_init_pos_ant_2=handles.Vx_init_pos_ant_2;
Vy_init_pos_ant_2=handles.Vy_init_pos_ant_2;
Vz_init_pos_ant_2=handles.Vz_init_pos_ant_2;
% Инициализация нач положения и скорости цели 1
X_init_pos_tgt_1=handles.X_init_pos_tgt_1;
Y_init_pos_tgt_1=handles.Y_init_pos_tgt_1;
Z_init_pos_tgt_1=handles.Z_init_pos_tgt_1;
Vx_init_pos_tgt_1=handles.Vx_init_pos_tgt_1;
Vy_init_pos_tgt_1=handles.Vy_init_pos_tgt_1;
Vz_init_pos_tgt_1=handles.Vz_init_pos_tgt_1;
% Инициализация нач положения и скорости цели 2
X_init_pos_tgt_2=handles.X_init_pos_tgt_2;
Y_init_pos_tgt_2=handles.Y_init_pos_tgt_2;
Z_init_pos_tgt_2=handles.Z_init_pos_tgt_2;
Vx_init_pos_tgt_2=handles.Vx_init_pos_tgt_2;
Vy_init_pos_tgt_2=handles.Vy_init_pos_tgt_2;
Vz_init_pos_tgt_2=handles.Vz_init_pos_tgt_2;
% Инициализация нач положения и скорости цели 3
X_init_pos_tgt_3=handles.X_init_pos_tgt_3;
Y_init_pos_tgt_3=handles.Y_init_pos_tgt_3;
Z_init_pos_tgt_3=handles.Z_init_pos_tgt_3;
Vx_init_pos_tgt_3=handles.Vx_init_pos_tgt_3;
Vy_init_pos_tgt_3=handles.Vy_init_pos_tgt_3;
Vz_init_pos_tgt_3=handles.Vz_init_pos_tgt_3;
% Инициализация нач положения и скорости цели 4
X_init_pos_tgt_4=handles.X_init_pos_tgt_4;
Y_init_pos_tgt_4=handles.Y_init_pos_tgt_4;
Z_init_pos_tgt_4=handles.Z_init_pos_tgt_4;
Vx_init_pos_tgt_4=handles.Vx_init_pos_tgt_4;
Vy_init_pos_tgt_4=handles.Vy_init_pos_tgt_4;
Vz_init_pos_tgt_4=handles.Vz_init_pos_tgt_4;
% Инициализация нач положения и скорости цели 5
X_init_pos_tgt_5=handles.X_init_pos_tgt_5;
Y_init_pos_tgt_5=handles.Y_init_pos_tgt_5;
Z_init_pos_tgt_5=handles.Z_init_pos_tgt_5;
Vx_init_pos_tgt_5=handles.Vx_init_pos_tgt_5;
Vy_init_pos_tgt_5=handles.Vy_init_pos_tgt_5;
Vz_init_pos_tgt_5=handles.Vz_init_pos_tgt_5;
% Задаем начальное положение РЛС1
hantplatform{1}= phased.Platform('InitialPosition',[X_init_pos_ant_1; Y_init_pos_ant_1; Z_init_pos_ant_1],...
'Velocity', [Vx_init_pos_ant_1; Vy_init_pos_ant_1; Vz_init_pos_ant_1]);
% Задаем начальное положение РЛС2
hantplatform{2}= phased.Platform('InitialPosition',[X_init_pos_ant_2; Y_init_pos_ant_2; Z_init_pos_ant_2],...
'Velocity', [Vx_init_pos_ant_2; Vy_init_pos_ant_2; Vz_init_pos_ant_2]);
% Уставнока параметров цели 1 (подвижная)
% Задаем начальное положение и скорость цели 1
htargetplatform{1} = phased.Platform(...
'InitialPosition',[X_init_pos_tgt_1; Y_init_pos_tgt_1; Z_init_pos_tgt_1],...
'Velocity',[Vx_init_pos_tgt_1; Vy_init_pos_tgt_1; Vz_init_pos_tgt_1]);
% вычисляем дальность, угол до цели 1
[tgt1_rng,tgt1_ang] = rangeangle(htargetplatform{1}.InitialPosition,hantplatform{1}.InitialPosition);
% вычисляем радиальную скорость до цели 1
tgt1_speed = radialspeed(htargetplatform{1}.InitialPosition,...
htargetplatform{1}.Velocity,hantplatform{1}.InitialPosition);
% Уставнока параметров цели 2 (подвижная)
htargetplatform{2} = phased.Platform(...
'InitialPosition',[X_init_pos_tgt_2; Y_init_pos_tgt_2; Z_init_pos_tgt_2],...
'Velocity',[Vx_init_pos_tgt_2; Vy_init_pos_tgt_2; Vz_init_pos_tgt_2]);
[tgt2_rng,tgt2_ang] = rangeangle(htargetplatform{2}.InitialPosition,...
hantplatform{1}.InitialPosition);
tgt2_speed = radialspeed(htargetplatform{2}.InitialPosition,...
htargetplatform{2}.Velocity,hantplatform{1}.InitialPosition);
% Уставнока параметров цели 3 (подвижная)
% Задаем начальное положение и скорость цели 3
htargetplatform{3} = phased.Platform(...
'InitialPosition',[X_init_pos_tgt_3; Y_init_pos_tgt_3; Z_init_pos_tgt_3],...
'Velocity',[Vx_init_pos_tgt_3; Vy_init_pos_tgt_3; Vz_init_pos_tgt_3]);
% вычисляем дальность, угол до цели 3
[tgt3_rng,tgt3_ang] = rangeangle(htargetplatform{3}.InitialPosition,hantplatform{1}.InitialPosition);
% вычисляем радиальную скорость до цели 3
tgt3_speed = radialspeed(htargetplatform{3}.InitialPosition,...
htargetplatform{3}.Velocity, hantplatform{1}.InitialPosition);
% Уставнока параметров цели 4 (неподвижная)
% Задаем начальное положение и скорость цели 4
htargetplatform{4} = phased.Platform(...
'InitialPosition',[X_init_pos_tgt_4; Y_init_pos_tgt_4; Z_init_pos_tgt_4],...
'Velocity',[Vx_init_pos_tgt_4; Vy_init_pos_tgt_4; Vz_init_pos_tgt_4]);
% вычисляем дальность, угол до цели 4
[tgt4_rng,tgt4_ang] = rangeangle(htargetplatform{4}.InitialPosition,hantplatform{1}.InitialPosition);
% вычисляем радиальную скорость до цели 4
tgt4_speed = radialspeed(htargetplatform{4}.InitialPosition,...
htargetplatform{4}.Velocity, hantplatform{1}.InitialPosition);
% Уставнока параметров цели 5 (неподвижная)
% Задаем начальное положение и скорость цели 5
htargetplatform{5} = phased.Platform('InitialPosition',[5000.66; 3700; 0], 'Velocity',[120; 1000; 0]);
% вычисляем дальность, угол до цели 5
[tgt5_rng,tgt5_ang] = rangeangle(htargetplatform{5}.InitialPosition,hantplatform{1}.InitialPosition);
% вычисляем радиальную скорость до цели 5
tgt5_speed = radialspeed(htargetplatform{5}.InitialPosition,...
htargetplatform{5}.Velocity, hantplatform{1}.InitialPosition);
htargetplatform{5} = phased.Platform(...
'InitialPosition',[X_init_pos_tgt_5; Y_init_pos_tgt_5; Z_init_pos_tgt_5],...
'Velocity',[Vx_init_pos_tgt_5; Vy_init_pos_tgt_5; Vz_init_pos_tgt_5]);
hPlots = ViewSetup_3D(hantplatform{1},hantplatform{2},htargetplatform);
numtargets = length(htargetplatform);
beta=1:0.5:360;
R_min=5*ones(1,length(beta));
R_max=75*ones(1,length(beta));
for m = 1:pulsenum % кол-во излучаемых импульсов
[ant_pos,ant_vel] = step(hantplatform{1},1/prf);% обновляется положение антенны
[ant_pos2,ant_vel2] = step(hantplatform{2},1/prf);
for n = numtargets:-1:1 % цикл по целям
[tgt_pos(:,n),tgt_vel(:,n)] = step(htargetplatform{n},1/prf);
% обновляется положение цели на каждом Тр
[target{m}.tgt_rng(n),target{m}.tgt_ang(:,n)] = rangeangle(tgt_pos(:,n),ant_pos); % вычисляется направление между целями и положением антенны
[target{m}.tgt_rng2(n),target{m}.tgt_ang2(:,n)] = rangeangle(tgt_pos(:,n),ant_pos2);
end
figure(64)
polarplot(target{m}.tgt_ang(1,:)*(pi/180),target{m}.tgt_rng,'+',beta*(pi/180),R_min,'r--',beta*(pi/180),R_max,'r--');
title('Полярная СК РЛС 1')
figure(65)
polarplot(target{m}.tgt_ang2(1,:)*(pi/180),target{m}.tgt_rng2,'+');
title('Полярная СК РЛС 2')
hold on
ViewTrajectory_3D(hPlots,ant_pos,ant_pos2,tgt_pos)
set(handles.text2,'String',num2str(m));
set(handles.text3,'String',num2str(m*(1/prf)));
% Цель 1
set(handles.text137,'String',num2str(target{m}.tgt_ang(1,1)));
set(handles.text92,'String',num2str(target{m}.tgt_ang(2,1)));
set(handles.text93,'String',num2str(target{m}.tgt_rng(1,1)));
set(handles.text135,'String',num2str(target{m}.tgt_ang2(1,1)));
set(handles.text96,'String',num2str(target{m}.tgt_ang2(2,1)));
set(handles.text97,'String',num2str(target{m}.tgt_rng2(1,1)));
% Цель 2
set(handles.text139,'String',num2str(target{m}.tgt_ang(1,2)));
set(handles.text107,'String',num2str(target{m}.tgt_ang(2,2)));
set(handles.text106,'String',num2str(target{m}.tgt_rng(1,2)));
set(handles.text141,'String',num2str(target{m}.tgt_ang2(1,2)));
set(handles.text103,'String',num2str(target{m}.tgt_ang2(2,2)));
set(handles.text102,'String',num2str(target{m}.tgt_rng2(1,2)));
end
save('block_A1.mat','target','prf','pulsenum','htargetplatform')
end
function hPlots = ViewSetup_3D(sTxPlat,sRxPlat,sTgtPlat)
% function hPlots = ViewSetup_3D(sTxPlat,sRxPlat,sTgtPlat,sWav,sRD,y)
% This function helperBistatViewSetup is only in support of
% BistaticPolarimetricExample. It may be removed in a future release.
% Copyright 2012 The MathWorks, Inc.
figure('Color','w');
txpos = sTxPlat.InitialPosition/1000;
rxpos = sRxPlat.InitialPosition/1000;
tgtpos = [sTgtPlat{1}.InitialPosition sTgtPlat{2}.InitialPosition sTgtPlat{3}.InitialPosition sTgtPlat{4}.InitialPosition sTgtPlat{5}.InitialPosition]/1000;
msize = 10;
% figure(1)
subplot(4,4,[1 2 3 5 6 7 9 10 11]);
% Цветовые параметры для РЛС1
hPlots.htxpath = plot3(txpos(1),txpos(2),txpos(3),...
'Color','k','Marker','>','MarkerSize',msize,'LineStyle','none');
hold on;
% положение надписи антенны РЛС 1
text(1.1*txpos(1),1.1*txpos(2),1.1*txpos(3),'РЛС1')
hPlots.hrxpath = plot3(rxpos(1),rxpos(2),rxpos(3),...
'Color','m','Marker','>','MarkerSize',msize,'LineStyle','none');
% положение надписи антенны РЛС 2
text(1.1*rxpos(1),1.1*rxpos(2),1.1*rxpos(3),'РЛС2')
% залаем цвет и маркер целей их количество должно соответствовать кол-ву
% целей
tgtcolor = ['r','r','r','b','b' ]; % r - ДЦ, b - НЦ
tgtmarker = ['x','x','x','+','+']; % x - ДЦ, + - НЦ
for m =1: size(tgtpos,2)
hPlots.htgtpath(m) = plot3(tgtpos(1,m),tgtpos(2,m),tgtpos(3,m),...
'Color',tgtcolor(m),'Marker',tgtmarker(m),...
'MarkerSize',msize,'LineStyle','none');
end
drawnow;
view(30,10);
grid on;
set(gca,'Color','none');
xlabel('x (km)');
ylabel('y (km)');
zlabel('z (km)');
title('Взаимное расположение РЛС и целей');
msize = 5;
% figure(2)
subplot(4,4,4);
hPlots.htxline = line(get(hPlots.htxpath,'XData'),get(hPlots.htxpath,'YData'),...
get(hPlots.htxpath,'ZData'),...
'Color','m','Marker','>','MarkerSize',msize);
view(40,48);
grid on;
set(gca,'Color','none');
xlabel('x (km)');
ylabel('y (km)');
zlabel('z (km)');
title('РЛС1');
subplot(4,4,8);
hPlots.hrxline = line(get(hPlots.hrxpath,'XData'),get(hPlots.hrxpath,'YData'),...
get(hPlots.hrxpath,'ZData'),...
'Color','m','Marker','>','MarkerSize',msize);
view(40,48);
grid on;
set(gca,'Color','none');
xlabel('x (km)');
ylabel('y (km)');
zlabel('z (km)');
title('РЛС2');
% figure(3)
subplot(4,4,12);
hPlots.htgtline1 = line(get(hPlots.htgtpath(1),'XData'),get(hPlots.htgtpath(1),'YData'),...
get(hPlots.htgtpath(1),'ZData'),...
'Color','r','Marker','+','MarkerSize',msize);
view(40,48);
grid on;
set(gca,'Color','none');
xlabel('x (km)');
ylabel('y (km)');
zlabel('z (km)');
title('Цель 1');
subplot(4,4,16);
hPlots.htgtline2 = line(get(hPlots.htgtpath(2),'XData'),get(hPlots.htgtpath(2),'YData'),...
get(hPlots.htgtpath(2),'ZData'),...
'Color','r','Marker','+','MarkerSize',msize);
view(40,48);
grid on;
set(gca,'Color','none');
xlabel('x (km)');
ylabel('y (km)');
zlabel('z (km)');
title('Цель 2');
subplot(4,4,15);
hPlots.htgtline3 = line(get(hPlots.htgtpath(3),'XData'),get(hPlots.htgtpath(3),'YData'),...
get(hPlots.htgtpath(3),'ZData'),...
'Color','r','Marker','+','MarkerSize',msize);
view(40,48);
grid on;
set(gca,'Color','none');
xlabel('x (km)');
ylabel('y (km)');
zlabel('z (km)');
title('Цель 3');
subplot(4,4,14);
hPlots.htgtline4 = line(get(hPlots.htgtpath(4),'XData'),get(hPlots.htgtpath(4),'YData'),...
get(hPlots.htgtpath(4),'ZData'),...
'Color','r','Marker','+','MarkerSize',msize);
view(40,48);
grid on;
set(gca,'Color','none');
xlabel('x (km)');
ylabel('y (km)');
zlabel('z (km)');
title('Цель 4');
subplot(4,4,13);
hPlots.htgtline5 = line(get(hPlots.htgtpath(5),'XData'),get(hPlots.htgtpath(5),'YData'),...
get(hPlots.htgtpath(5),'ZData'),...
'Color','r','Marker','+','MarkerSize',msize);
view(40,48);
grid on;
set(gca,'Color','none');
xlabel('x (km)');
ylabel('y (km)');
zlabel('z (km)');
title('Цель 5');
drawnow;
function ViewTrajectory_3D(hPlots,txpos,rxpos,tgtpos)
% This function helperBistatViewTrajectory is only in support of
% BistaticPolarimetricExample. It may be removed in a future release.
% Copyright 2012 The MathWorks, Inc.
txpos = txpos/1000;
rxpos = rxpos/1000;
tgtpos = tgtpos/1000;
set(hPlots.htxpath,'XData',[get(hPlots.htxpath,'XData') txpos(1)],...
'YData',[get(hPlots.htxpath,'YData') txpos(2)],...
'ZData',[get(hPlots.htxpath,'ZData') txpos(3)]);
set(hPlots.hrxpath,'XData',[get(hPlots.hrxpath,'XData') rxpos(1)],...
'YData',[get(hPlots.hrxpath,'YData') rxpos(2)],...
'ZData',[get(hPlots.hrxpath,'ZData') rxpos(3)]);
for m = 1:size(tgtpos,2)
set(hPlots.htgtpath(m),'XData',[get(hPlots.htgtpath(m),'XData') tgtpos(1,m)],...
'YData',[get(hPlots.htgtpath(m),'YData') tgtpos(2,m)],...
'ZData',[get(hPlots.htgtpath(m),'ZData') tgtpos(3,m)]);
end
% платформы РЛС
set(hPlots.htxline,'XData',get(hPlots.htxpath,'XData'),'YData',get(hPlots.htxpath,'YData'),...
'ZData',get(hPlots.htxpath,'ZData'));
set(hPlots.hrxline,'XData',get(hPlots.hrxpath,'XData'),'YData',get(hPlots.hrxpath,'YData'),...
'ZData',get(hPlots.hrxpath,'ZData'));
% цели
set(hPlots.htgtline1,'XData',get(hPlots.htgtpath(1),'XData'),'YData',get(hPlots.htgtpath(1),'YData'),...
'ZData',get(hPlots.htgtpath(1),'ZData'));
set(hPlots.htgtline2,'XData',get(hPlots.htgtpath(2),'XData'),'YData',get(hPlots.htgtpath(2),'YData'),...
'ZData',get(hPlots.htgtpath(2),'ZData'));
set(hPlots.htgtline3,'XData',get(hPlots.htgtpath(3),'XData'),'YData',get(hPlots.htgtpath(3),'YData'),...
'ZData',get(hPlots.htgtpath(3),'ZData'));
set(hPlots.htgtline4,'XData',get(hPlots.htgtpath(4),'XData'),'YData',get(hPlots.htgtpath(4),'YData'),...
'ZData',get(hPlots.htgtpath(4),'ZData'));
set(hPlots.htgtline5,'XData',get(hPlots.htgtpath(5),'XData'),'YData',get(hPlots.htgtpath(5),'YData'),...
'ZData',get(hPlots.htgtpath(5),'ZData'));
drawnow;
%Пересчет дальностей и моделирование 10000 экспериментов.
clear all
close all
clc
% Истинные значения дальностей
dist_ist_rls1 = 43116.182;
dist_ist_rls2 = 43577.618;
b = 10000;
% Углы места
beta_rls1 = 35.4385;
beta_rls2 = 35.0079;
% sigma = input('Введите СКО');
N=10000; %количество эксп.
sigma = 100;
for i=1:1:N
sigma_rls_1(i) = normrnd(0,sigma+2);
sigma_rls_2(i) = normrnd(0,sigma);
% Дальности с погрешностью
dist_izm_rls1(i) = dist_ist_rls1 + sigma_rls_1(i);
dist_izm_rls2(i) = dist_ist_rls2 + sigma_rls_2(i);
% Высота по нормали (в СК РЛС2)
h2(i) = dist_izm_rls2(i) * sind(beta_rls2);
% Дальность РЛС1 измеренная в СК РЛС2
dist_rls1_v_sk_rls2(i) = h2(i)/sind(beta_rls1);
%Скомлексированное значение дальности РЛС1
komplex1(i) = (dist_izm_rls1(i) + dist_rls1_v_sk_rls2(i))/2;
end;
i = 1:1:N;
plot(i,dist_izm_rls1,'r',i,komplex1,'b',i,ones(1,N).*dist_ist_rls1,'--g'),grid;
xlabel('Количество измерений дальности')
ylabel('Дальность, м')
%Счет дальности в ходе движения цели 1.
clear all
close all
clc
load('block_A1.mat','target','prf','pulsenum','htargetplatform')
sigma = 100;
for i=1:1:10
dist_ist_rls1(i) = target{1,i}.tgt_rng(1);
dist_ist_rls2(i) = target{1,i}.tgt_rng2(1);
% СКО РЛС 1 и 2
dist_izm_rls1(i) = normrnd(dist_ist_rls1(i),sigma);
dist_izm_rls2(i) = normrnd(dist_ist_rls2(i),sigma);
beta_rls1(i) = target{1,i}.tgt_ang(2,1);
beta_rls2(i) = target{1,i}.tgt_ang2(2,1);
% Высота по нормали (в СК РЛС2)
h2(i) = dist_izm_rls2(i) * sind(beta_rls2(i));
% Дальность РЛС1 измеренная в СК РЛС2
dist_rls1_v_sk_rls2(i) = h2(i)/sind(beta_rls1(i));
%Скомлексированное значение дальности РЛС1
komplex1(i) = (dist_izm_rls1(i) + dist_rls1_v_sk_rls2(i))/2;
end;
i = 1:10;
plot(i,dist_izm_rls1,'r',i,komplex1,'b',i,dist_ist_rls1,'--g'),grid;
xlabel('Количество измерений дальности')
ylabel('Дальность, м')
ylim([(dist_ist_rls1(1)-550) (dist_ist_rls1(1)+550)])
Размещено на Allbest.ru
Подобные документы
Средства электрических измерений: меры, преобразователи, комплексные установки. Классификация измерительных устройств. Методы и погрешности измерений. Определение цены деления и предельного значения модуля основной и дополнительной погрешности вольтметра.
практическая работа [175,4 K], добавлен 03.05.2015Основные свойства измеряемых погрешностей. Технические и метрологические характеристики средств электротехнических измерений, их сравнительный анализ. Моделирование и реализация виртуального прибора в программной среде National Instruments, Labview.
курсовая работа [2,4 M], добавлен 09.04.2015Рассмотрение систематических и случайных погрешностей измерений основных показателей в метрологии. Правила суммирования погрешностей. Основы обработки однократных прямых, многократных и косвенных измерений. Определение границы доверительного интервала.
курсовая работа [78,9 K], добавлен 14.10.2014Метрология как наука об измерениях, методах и средствах обеспечения их единства и способах достижения требуемой точности. Способы нормирования метрологических характеристик средств измерений, поверка электродинамических и электромагнитных приборов.
курсовая работа [178,5 K], добавлен 09.11.2012Методы статистической обработки результатов измерений. Структурная схема ИЦВ с усреднением мгновенных значений измеряемого напряжения. Цифровые вольтметры, реализующие кодо-импульсный метод преобразования. Схема цифровых вольтметров переменного тока.
реферат [82,8 K], добавлен 17.11.2008Моделирование работы справочной телефонной сети города. Главные составляющие процесса ее функционирования, схема модели, анализ результатов моделирования системы. Проектирование инструментально-программного комплекса для анализа загруженности процессоров.
курсовая работа [179,7 K], добавлен 22.06.2011Государственная метрологическая аттестация: методы и проблемы проверки магнитоэлектрических логометров, стандарты достоверности, средства измерений и контроля. Правила и схемы метрологических проверок средств измерения для обеспечения единства измерений.
курсовая работа [44,2 K], добавлен 27.02.2009Технология Ethernet, построение схемы сети и алгоритм работы. Показатели работы сети до и после ввода дополнительных станций, результатов аналитического и имитационного моделирования. Запуск процесса моделирования и анализ результатов базовой модели.
курсовая работа [357,5 K], добавлен 17.04.2012Параметры ошибок и методы их измерений по G.821. Схема измерений параметров каналов ЦСП типа "точка-точка". Основные принципы методологии измерений по G.826. Методика индикационных измерений. Измерение параметров кодовых ошибок, их связь с битовыми.
реферат [405,0 K], добавлен 12.11.2010Направления автоматизации измерений. Применение микропроцессоров в измерительных приборах. Измерительно-вычислительный комплекс как автоматизированное средство измерений, имеющее в своем составе микропроцессоры. Номенклатура входящих в ИВК компонентов.
реферат [28,4 K], добавлен 23.01.2009