Математические и программные модели движения кораблей
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
Оглавление
Цель работы и исходные данные
.Математическая модель движения кораблей
2.Программная модель движения кораблей в среде Matlab
.Графический интерфейс программы (GUI)
.Результаты исследования программной модели
Выводы
Цель работы и исходные данные
Цель курсовой работы: разработка математической модели движения кораблей, написание программной модели и исследование с ее помощью динамических свойств моделируемых объектов на ПК.
Исходные данные
Основные ТТД надводных кораблей
Исходные данные и ограничения, наложенные на систему, представлены в таблице 1.
движение корабль программный
Таблица 1
Основные ТТД надводного корабля№ вариантаТип корабляW, тN, л.с.V, узлы/Vк,V1max,V2max, узлы4Легкий крейсер "Красный кавказ9030550029Основные ТТД катера4Катер "Тритон"2.315029Основные ТТД корабля на подводных крыльях4-КПК9.4400111332
Необходимо учесть:
1 узел = 1 миля/час = 1852 м / 3600 с = 0.51 м/с
л.с. = 735.5 Вт; 1 Вт = 1 Нм/с
Ограничения разрабатываемой модели:
. Предполагается, что корабль движется на постоянном курсе.
. Не учитывается волнение моря, гидродинамические особенности корпуса, переменное воздействие ветра и т.п.
1. Математическая модель движения кораблей
Математическая модель движения надводного водоизмещающего корабля:
где xi+1 - значение координаты на следующем шаге; xi - значение координаты на текущем шаге; ?xi - приращение координаты на прошлом шаге; Pi - относительное значение силы тяги в процентах от максимальной; Fmax - максимальное значение силы тяги; ?t - шаг приращения времени; A - коэффициент пропорциональности; ?xi+1 - приращение координаты на текущем шаге; V2max - максимальное значение скорости корабля.
Математическая модель движения надводного корабля "Красный Кавказ"
. Шаг приращения времени (принимается) ?t = 1 с.
. Относительное (в процентах от максимальной) допустимое изменение силы тяги за время ?t = 1 с:
Fmax = Nmax / Vmax=(55000*735.5)/(29*0.51)=2735100 H
?Fmax =0.1Fmax (т.к. корабль имеет водоизмещение более 10000т)
?Pi ?t(?Fmax/Fmax) 100 50%.
. Коэффициент пропорциональности силы сопротивления движению:
=12504
. Координата пройденного расстояния:
xi+1 = xi + (xi-xi-1) + (Pi 273510012/100 - 12504(xi - xi-1) xi - xi-1) /9030000.
. Величина текущей скорости:
Vi+1 = ?xi+1 / ?t = (xi+1 -xi) / 1
Математическая модель движения катера "Тритон"
. Шаг приращения времени (принимается) ?t = 1 с.
. Относительное (в процентах от максимальной) допустимое изменение силы тяги за время ?t = 1 с:
Fmax = Nmax / Vmax=(150*735.5)/(29*0.51)=7459 Н
?Fmax =0,2Fmax (т.к. корабль имеет водоизмещение менее 10000т)
?Pi ?t(?Fmax/Fmax) 100 10%.
. Коэффициент пропорциональности силы сопротивления движению:
=34.1
. Координата пройденного расстояния:
xi+1 = xi + (xi-xi-1)+(Pi 74591/100-34.1(xi - xi-1) xi - xi-1) /2300.
5. Величина текущей скорости:
Vi+1 = ?xi+1 / ?t = (xi+1 -xi) / 1
Математическая модель движения корабля на подводных крыльях
где xi+1 - значение координаты на следующем шаге; xi - значение координаты на текущем шаге; ?xi - приращение координаты на прошлом шаге; Pi - относительное значение силы тяги в процентах от максимальной; Fmax - максимальное значение силы тяги; ?t - шаг приращения времени; A - коэффициент пропорциональности; ?xi+1 - приращение координаты на текущем шаге; V21max - максимальное значение скорости корабля при водоизмещающем режиме; V22max - максимальное значение скорости корабля при режиме глиссирования и движения на крыльях.
Математическая модель движения корабля на подводных крыльях
. Шаг приращения времени (принимается) ?t = 0.2с.
. Относительное (в процентах от максимальной) допустимое изменение силы тяги за время ?t = 0.2с:
Fmax = Nmax / Vmax=(150*735,5)/(32*0,51)=18027 H
?Fmax =0,2Fmax (т.к. корабль имеет водоизмещение менее 10000т)
?Pi ?t(?Fmax/Fmax)100 4%.
. Коэффициент пропорциональности силы сопротивления движению:
при V<Vк:
при VVк: .
. Координата пройденного расстояния:
При V<Vк:
xi+1 = xi + (xi - xi-1) + (Pi18027 - 410(xi - xi-1) xi - xi-1) /9400.
При VVк:
xi+1 = xi + (xi - xi-1) + (Pi18027 - 68(xi - xi-1) xi - xi-1) /9400.
. Величина текущей скорости:
Vi+1 = ?xi+1 / ? t = (xi+1 -xi) / 1.
2. Программная модель движения кораблей в среде Matlab
function varargout = Kurs_gui(varargin)
% KURS_GUI M-file for Kurs_gui.fig
% KURS_GUI, by itself, creates a new KURS_GUI or raises the existing
% singleton*.
%
% H = KURS_GUI returns the handle to a new KURS_GUI or the handle to
% the existing singleton*.
%
% KURS_GUI('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in KURS_GUI.M with the given input arguments.
%
% KURS_GUI('Property','Value',...) creates a new KURS_GUI or raises the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before Kurs_gui_OpeningFunction gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to Kurs_gui_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES
% Edit the above text to modify the response to help Kurs_gui
% Last Modified by GUIDE v2.5 12-Dec-2011 16:21:28
% Begin initialization code - DO NOT EDIT_Singleton = 1;_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @Kurs_gui_OpeningFcn, ...
'gui_OutputFcn', @Kurs_gui_OutputFcn, ...
'gui_LayoutFcn', [], ...
'gui_Callback', []);nargin & isstr(varargin{1})_State.gui_Callback = str2func(varargin{1});nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});_mainfcn(gui_State, vararg