Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Исследовательская часть.docx
Скачиваний:
137
Добавлен:
09.02.2015
Размер:
4.19 Mб
Скачать

6. Список использованной литературы:

  1. Кудрявцев С.И., Савченко А.А. и др. Исследование характеристик системы управления спуском ТК “Союз ТМА”. НТО ЦНИИМАШ, 2002.

  2. Методика проведения оперативных расчётов по баллистическому обеспечению спуска СА “Союз ТМА”. П36594-012, 2001.

  3. Кудрявцев С.И. Алгоритмы оперативного контроля и управления движением КА на конечном участке спуска по внешнетраекторной информации. Кандидатская диссертация, ЦНИИМАШ, 1988.

  4. Инструкция по управлению в полёте. Материалы по баллистике №211. 11Ф732 А17 ИЭ63 кн.4, 2002.

  5. Ю.Б. Сажин, С.В. Самохин «Методическое пособие по выполнению организационно-экономической части дипломных проектов по разработке и использованию программных продуктов», Москва, издательство МГТУ, 2004

  6. Данные бухгалтерии ЦУП.

  7. Н.Ф. Измеров, Н.Н. Молодкина, Р.Ф. Афанасьева «Руководство по гигиенической оценке факторов рабочей среды и трудового процесса. Критерии и классификация условий труда P 2.2.2006-05», ГУ НИИ медицины труда Российской академии медицинских наук, 2005

  8. Данные по рабочим местам в ЦУП.

Приложение 1. Структурная схема ПМО ЦУП обмена.

Приложение 2. Структурная схема ПМО визуализации стандартной баллистической информации.

Приложение 3. Структурная схема модуля расчета рассеивания ТП ТК «Союз ТМА» .

Приложение 4. Листинг основных процедур программ.

П4.1. Листинг программы обмена.

void __fastcall TForm2::ComboBox1Change(TObject *Sender)

{

int NServ;

AnsiString Con,k100;

ADOConnection1->Connected=false;

k100=ComboBox1->Text;

if(k100=="k100")k100="Spusk";

NServ=ADOConnection1->ConnectionString.Pos("Spusk");

if(NServ==0)

{

NServ=ADOConnection1->ConnectionString.Pos("mkc");

Con=ADOConnection1->ConnectionString;

Con.Delete(NServ,4);

Con.Insert(k100,NServ);

ADOConnection1->ConnectionString=Con;

}

else

{

Con=ADOConnection1->ConnectionString;

Con.Delete(NServ,5);

Con.Insert(k100,NServ);

ADOConnection1->ConnectionString=Con;

}

//ADOConnection1->Connected=true;

}

Variant form509[]={id_nu,name_ka,name_nu,name_f,status,n_tlg,writer,vari,n_ka,

n_nu,n_sol,n_form,vitok,vitok_s,t_eqvator,s_eqvator,l_eqvator,imp_size1,

imp_time1,reg_sp,t_vkl_du1,s_vkl_du1,psi1,gamma1,teta1,u_v1,t_1,u_v2,t_2,

u_v3,t_3,t_razd,s_t_razd,metka_r,t_h_104,t_25_6,l_25_6,teta_25_6,dt_vn,u_n,u_s,u_vsr,

f_vsr,u_k,u_yt,f_yt,kod_gr1,kod_gr2,abs_dsp,t_osp,b_osp,l_osp,gka,gbo,gsa,p_dpobt,xt_sa,yt_sa,zt_sa,comm,form};

ADOTable1->Active=false;

ADOTable1->TableName="f509";

ADOTable1->Active=true;

ADOTable1->Insert();

ADOTable1->FieldValues["ID_NU;NAME_KA;NAME_NU;NAME_F;STATUS;N_TLG;WRITER;VARI;N_KA;\

N_NU;N_SOL;N_FORM;VITOK;VITOK_S;T_EQVATOR;S_EQVATOR;L_EQVATOR;IMP_SIZE1;\

IMP_TIME1;REG_SP;T_VKL_DU1;S_VKL_DU1;PSI1;GAMMA1;TETA1;U_V1;T_1;U_V2;T_2;\

U_V3;T_3;T_RAZD;S_T_RAZD;METKA_R;T_H_104;T_25_6;L_25_6;TETA_25_6;DT_VN;U_N;U_S;U_VSR;\

F_VSR;U_K;U_YT;F_YT;KOD_GR1;KOD_GR2;ABS_DSP;T_OSP;B_OSP;L_OSP;\

GKA;GBO;GSA;P_DPOBT;XT_SA;YT_SA;ZT_SA;COMM;FORM"]=

VarArrayOf(form509,60);

ADOTable1->Post();

ADOTable1->Active=false;

Memo3->Lines->Add("Форма "+base+" записана в таблицу f509");

kivkfile<<base.c_str()<<endl;

П.4.2. Листинг программы визуализации.

#include<vcl.h>

#pragma hdrstop

#include <fstream.h>

#include "oblozka.h"

#include "grafform.h"

#include <stdio.h>

#include "map.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm2 *Form2;

void vvod() {

AnsiString ntlg;

double shirota_dr[75], dolgota_dr[75], shirota_cel[75], dolgota_cel[75] ; // чтение формы 516d из файла

double shir_str[75], dolg_str[75];

Form2->Memo1->Lines->LoadFromFile(MyFileName);

ifstream formfile(MyFileName.c_str());

while(formfile.getline(postr,80))

formfile.close();

for(i=0;i<Form2->Memo1->Lines->Count;i++)

{

bstr=Form2->Memo1->Lines->Strings[i];

str=bstr.c_str();

OemToChar(str,str);

cstr=StringReplace(bstr,bstr,str,TReplaceFlags()<<rfReplaceAll);

Form2->Memo1->Lines->Strings[i]=cstr;

}

stroka=Form2->Memo1->Lines->Strings[3];

ntlg=stroka.SubString(14,3);

// File515="E:\\Program Files\\Microsoft Visual

Studio\\MyProjects\\Sadik\\Debug\\FORMS\\F515."+ntlg;

stroka=Form2->Memo1->Lines->Strings[0];

nka=stroka;

for (j = 9; j<88; j++) {

DecimalSeparator='.';

stroka=Form2->Memo1->Lines->Strings[j];

if (stroka.SubString(3,1)=="П") {

j_end=j;

break;

}

shir_str[j-9]=stroka.SubString(19,7).ToDouble();

dolg_str[j-9]=stroka.SubString(28,7).ToDouble();

shirota_cel[j-9]=stroka.SubString(19,4).ToDouble();

dolgota_cel[j-9]=stroka.SubString(28,4).ToDouble();

shirota_dr[j-9]=stroka.SubString(24,2).ToDouble();

dolgota_dr[j-9]=stroka.SubString(33,2).ToDouble();

shirota[j-9]=(shirota_cel[j-9]+(shirota_dr[j-9])*5/300); // пересчет из градусов миниты в градусы доли градуса

dolgota[j-9]=(dolgota_cel[j-9]+(dolgota_dr[j-9])*5/300);

Form2->StringGrid1->RowCount=j-7; // запись широты и долготы в таблицу

Form2->StringGrid1->Cells[0][j-8]=IntToStr(j-8);

Form2->StringGrid1->Cells[1][0]="Широта";

Form2->StringGrid1->Cells[2][0]="Долгота";

Form2->StringGrid1->Cells[1][j-8]=FloatToStr(shir_str[j-9]); // вывод в стрингрид непереведенных значений

Form2->StringGrid1->Cells[2][j-8]=FloatToStr(dolg_str[j-9]);

}

}

void pereschet() { // пересчет в экранную систему координат карта казахстана

int i;

h=Form3->Image1->Height;

l=Form3->Image1->Width;

for (i = 0; i <= j_end-10; i++) {

fi[i]=h*(1-((shirota[i]-44)/(53-44)));

lamda[i]=l*((dolgota[i]-57)/(82-57));

}

}

void graf() { // построение графика на карте

int x1,y1,x2,y2;

x1=lamda[j_end-10]-l*20/(25*70);

x2=lamda[j_end-10]+l*20/(25*70);

y1=fi[j_end-10]-h*20/(11*110);

y2=fi[j_end-10]+h*20/(11*110);

Form3->Image1->Canvas->Pen->Width=3;

int i;

for (i = 0; i <= j_end-10; i++) {

if (shirota[i]>38 && dolgota[i]>40 && dolgota[i]<300 && shirota[i]!=0 && dolgota[i]!=0) {

Form3->Image1->Canvas->LineTo(lamda[i],fi[i]);

Form3->Image1->Canvas->Brush->Style=bsClear;

Form3->Image1->Canvas->Ellipse(x1,y1,x2,y2);

}

}

Form3->Image1->Canvas->Font->Height=2;

Form3->Image1->Canvas->Pen->Style=bsClear;

Form3->Image1->Canvas->Font->Size=24;

Form3->Image1->Canvas->TextOutA(400,30,"Спуск "+nka);

}

Приложение 5. Перечень используемых сокращений.

АУС – автоматический управляемый спуск

БИЛУ – блок измерений линейных ускорений

БНО – баллистико-навигационное обеспечение

БН ПС – баллистико-навигационная поддержка спуска

БО СС – баллистическое обеспечение срочного спуска

БФ – баллистическая форма

БЦВК – бортовой цифровой вычислительный комплекс

ВБК – возвращаемая баллистическая капсула

ВС – вектор состояния

ГОГУ – главная оперативная группа управления

ДМВ – декретное московское время

ДПО-Бт – двигатель причаливания и ориентации большой тяги, работающий на торможение

ДУ – двигательная установка

ИСЗ – искусственный спутник Земли

ИСК – инерциальная система координат

КА – космический аппарат

КРЛ – командная радиолиния

МКС – международная космическая станция

НИП – наземный измерительный пункт

НЭК – несгоревшие элементы конструкции

ОИСЗ – орбита искусственного спутника Земли

ОК – орбитальный комплекс

ОСК – орбитальная система координат

ОСП – основная система парашютов

РКК – Ракетно-космическая корпорация

РКО – радиоконтроль орбиты

РН – ракета-носитель

РУС – ручной управляемый спуск

СА – спускаемый аппарат

СКД – сближающе-корректирующий двигатель

СМО – специальное математическое обеспечение

СУС – система управления спуском

ТК – транспортный корабль

ТП СА – текущий прогноз движения спускаемого аппарата

ЦМ – центр масс

ЦУП-М – Центр управления полетом и моделирования