Tính toán thực tế

Một phần của tài liệu tính toán can nhiễu giữa các vệ tinh (Trang 74)

c. Duy trì vệ tinh trên quỹ đạo

4.5.Tính toán thực tế

 Nghiên cứu tình huống 1: tính T/T , C/I, C/N và M

Hình 4.11. Nghiên cứu tình huống 1

- Góc ở tâm (g )= {(132 - 0.05) – (130.5 + 0.05)} = 1.4 (1) - Khoảng cách vệ tinh với ES: d = 42644(1- 0.2954Cos)1/2

(2)

với: Cos = Cos(vĩ độ ES).Cos(hiệu kinh độ đông của VT với kinh độ đông của ES)

- Suy hao không gian tự do: L = 20{ log10 f+ log10 d } + 32.45 (dB) (f:MHz) (3) - w = cos –1[{d22 + d42 – (84332sin(g/2))2}/2 d2 d4] (4) - i = cos –1[{d32 + d52 – (84332sin(g/2))2}/2 d3 d5] (5) Áp dụng (1),(2),(3),(4),(5) ta tính ra các kết quả nhƣ hình - T/T : TE = pS’ + G3’ – L4 + G4(w) = - 48.6 + 20 -196.263+ 27.461 = -197.4 dB

Sinh viên thực hiện: Nguyễn Văn Linh 75  te = 10-19.74 TS = pe’ + G’1(i) – L3 + G2 = -20 + 27.461 - 199.977+21= -171.5 dB  ts = 10-17.15  = 9,6 dB   = 100.96 = 9.12 T = 15573K t = te+  ts = 10-19.74 + 9,12 x 10-17.15 = 6,458.10-17 (t/t)x100 = (6,458.10-17 x 100)/(15573 x 1,38.10-23) = 30050% - C/I : Cuplink = Pe + G1m-L1+ G2m = 25,6 + 53 – 200,08 + 21 = -100,48 dB Cdownlink= Ps+G3 – L2 + G4m= 12,9 + 21 – 194,7 + 49,1 = -111,7 dB

Iuplink = Pe’+G’1(I )- L3 +G2 = 16 + 27,461 – 199,977 + 21 = -135,516 dB Idownlink= Ps’+G3’–L4+G4(w) = -12,6 + 20 – 196,22 + 27,461 = -161,359 dB (C/I)uplink = -100,48 + 135,516 = 35.036 dB

(C/I)downlink = -111,7 + 161,359 = 49,659 dB C/Itotal = -10 lg ( 10-3,5 + 10-4,9659 ) =34,85 dB - C/N:

Nu là nhiễu nhiệt của vệ tinh mong muốn Nd là nhiễu nhiệt của trạm mặt đất

Nu = -228.6 + 10(log10(1778) + log10(36x106)] = -120,537 dB Nd= -228.6 + 10(log10(184) + log10(36x106)] = -130,389 dB  (C/N)u = -100,48 + 120,537 = 20,057 dB (C/N)d = -111,7 + 130,389 = 18,689 dB (C/N)total = -10 lg ( 10-2 + 10-1,8689 ) =16,28 dB - Dự trữ M:

(C/I)yêu cầu tối thiểu = (C/N)total + 12.2 dB = 16,28 +12,2 = 28,48 dB M = (C/I)Total - (C/I)yêu cầu tối thiểu = 34,85 – 28,48 = 6,37 dB

Sinh viên thực hiện: Nguyễn Văn Linh 76 Hình 4.12. Nghiên cứu tình huống 2

- Góc ở tâm (g )= {(132 - 0.05) – (130.5 + 0.05)} = 1.4 (1) - Khoảng cách vệ tinh với ES: d = 42644(1- 0.2954Cos)1/2

(2)

với: Cos = Cos(vĩ độ ES).Cos(hiệu kinh độ đông của VT với kinh độ đông của ES)

- Suy hao không gian tự do: L = 20{ log10 f+ log10 d } + 32.45 (dB) (f:MHz) (3) - w = cos –1[{d22 + d42 – (84332sin(g/2))2}/2 d2 d4] (4) - i = cos –1[{d32 + d52 – (84332sin(g/2))2}/2 d3 d5] (5) Áp dụng (1),(2),(3),(4),(5) ta tính ra các kết quả nhƣ hình - T/T : TE = pS’ + G3’ – L4 + G4(w) = - 60,4 + 20 -196.263+ 27.461 = -209,2 dB  te = 10-20,9 TS = pe’ + G’1(i) – L3 + G2 = -39,9 + 27.461 - 199.977+26= - 186,3 dB  ts = 10-18,63  = -6 dB   = 10-0,6 = 0,2511 T = 2309K t = te+  ts = 10-20,9 + 0,2511 x 10-18,63 = 6,012.10-20

Sinh viên thực hiện: Nguyễn Văn Linh 77 (t/t)x100 = (6,012.10-20 x 100)/(2309 x 1,38.10-23) = 188,7% - C/I : Cuplink = Pe + G1m-L1+ G2m = 22,7 + 53 – 200,08 + 21 = -104,1 dB Cdownlink= Ps+G3 – L2 + G4m= 12,9 + 21 – 194,7 + 49,1 = -111,7 dB Iuplink = Pe’+G’1(I )- L3 +G2 = 19 + 27,461 – 199,977 + 26 = -127,516 dB Idownlink= Ps’+G3’–L4+G4(w) = -1,6 + 20 – 196,22 + 27,461 = -150,359 dB (C/I)uplink = -104,1 + 127,516 = 23,416 dB (C/I)downlink = -111,7 + 150,359 = 38,659 dB C/Itotal = -10 lg ( 10-2,3416 + 10-3,8659 ) =23,288 dB - C/N:

Nu là nhiễu nhiệt của vệ tinh mong muốn Nd là nhiễu nhiệt của trạm mặt đất

Nu = -228.6 + 10(log10(1000) + log10(36x106)] = -123,037 dB Nd= -228.6 + 10(log10(161) + log10(36x106)] = -130,969 dB  (C/N)u = -104,1 + 123,037 = 18,937 dB (C/N)d = -111,7 + 130,969 = 19,269 dB (C/N)total = -10 lg ( 10-1,8937 + 10-1,9269 ) =16,09 dB - Dự trữ M:

(C/I)yêu cầu tối thiểu = (C/N)total + 12.2 dB = 16,09 +12,2 = 28,29 dB M = (C/I)Total - (C/I)yêu cầu tối thiểu = 23,288 – 28,29 = -5,002 dB

* Kết luận:

T /T và C/I: những nghiên cứu trên đã cho ta thấy rằng:

- Những tín hiệu kết hợp của vệ tinh mong muốn và vệ tinh gây nhiễu: + Chỉ ra sự cần thiết phải phối hợp (T /T = 30050%)

+ Cho thấy các thông số tƣơng thích khác (M = 6,37; C/I = 34.85dB và (C/I)tối thiểu = 28,48 dB)

- Sự kết hợp khác của những tín hiệu trong trƣờng hợp 2: + Cho T /T = 188,7%

+ Cho thấy sự không phù hợp của M (M = -5.002 dB) - Vì thế có thể suy ra rằng:

Sinh viên thực hiện: Nguyễn Văn Linh 78

+ Khi T /T vƣợt quá 6%, thì khi tính C/I không cần thiết phải chỉ ra nhiễu + Trong trƣờng hợp xấu nhất của ∆T/T không cần để ý tới trƣờng hợp xấu nhất của C/I, đó là bản chất của ∆T/T đại diện cho C/N, dung sai có thể lớn trong kết hợp này và có thể nhỏ trong kết hợp khác

Sinh viên thực hiện: Nguyễn Văn Linh 79

CHƢƠNG V (adsbygoogle = window.adsbygoogle || []).push({});

XÂY DỰNG PHẦN MỀM TÍNH CAN NHIỄU GIỮA VỆ TINH VINASAT VỚI VỆ TINH LÂN CẬN

 Mục đích: việc tính toán can nhiễu vệ tinh có rất nhiều thông số và công thức, với việc tạo ra phần mềm này giúp ngƣời dùng có thể tiết kiệm thời gian, giảm nhầm lẫn và tiện lợi khi biết các nhiễu ảnh hƣởng đến vệ tinh, đƣa ra biện pháp giúp giảm ảnh hƣởng đến thông tin vệ tinh

 Ngôn ngữ lập trình: phần mềm này đƣợc viết trên ngôn ngữ lập trình C#, ƣu điểm của ngôn ngữ này là dễ sử dụng, C# là sự kết hợp sức mạnh, sự chính xác của ngôn ngữ lập trình C++ và tính dễ phát triển của Visual Basic, môi trƣơng phát triển thân thiện… và quan trọng là thực tế hiện nay các phần mềm giúp quản lý hệ thống VINASAT đều dựa trên C# để lập trình

Sinh viên thực hiện: Nguyễn Văn Linh 81

 Các chức năng của chƣơng trình: - Giao diện chính của chƣơng trình:

Hình 5.2. Giao diện chính

- Interfering Sat (I.Sat):

Hình 5.3. Interfering Sat F, P, Orbit...

Phần này chỉ nhập các dữ liệu của vệ tinh gây nhiễu + Orbit: kinh độ đông của I.Sat (độ)

+ Tolerance: độ chênh lệch hay dung sai của I.sat (độ) + X: kinh độ đông của ES (độ)

+ Y: vĩ độ bắc của ES (độ)

+ Fup và Fdown: tần số up và down của I.Sat (MHz)

+ Bwup và Bwdown: băng thông up và down của I.Sat (MHz) + Ps’ và Pe’: công suất tại đầu ra của anten I.Sat và ES(dBW)

Sinh viên thực hiện: Nguyễn Văn Linh 82

+ Ps’ và Pe’: công suất trên băng thông tại đầu ra của anten I.Sat và ES (dBW/Hz)

+ I.Sat transmit antenna gain towards wanted ES receiver: I.Sat truyền độ lợi G đến ES của vệ tinh vinasat (dBW)

- Wanted Sat (W.Sat):

Hình 5.4. Wanted Sat F, P, Orbit...

Phần này chỉ nhập các dữ liệu của vệ tinh Vinasat + Orbit: kinh độ đông của I.Sat (độ)

+ Tolerance: độ chênh lệch hay dung sai của I.sat (độ) + X: kinh độ đông của ES (độ)

+ Y: vĩ độ bắc của ES (độ)

+ Fup và Fdown: tần số up và down của W.Sat (MHz)

+ Bwup và Bwdown: băng thông up và down của W.Sat (MHz) + Ps: công suất tại đầu ra của anten W.Sat (dBW)

+ Pe: công suất tại đầu ra của anten ES (dBW)

+ Ts và Te: nhiệt độ tạp âm của máy thu tại W.Sat và ES (0 K) + T: nhiệt độ tạp âm tƣơng đƣơng toàn bộ hệ thống

+ ¥: độ khuếch đại = Pe/ Ps

+ W.Sat transmit antenna gain towards wanted ES receiver: W.Sat truyền độ lợi G đến ES của vệ tinh vinasat (dBW)

+ Max receiver antenna gain of W.Sat: giá trị lớn nhất độ lợi anten ở W.Sat (dBW)

Sinh viên thực hiện: Nguyễn Văn Linh 83

+ Max receiver antenna gain of wanted ES: giá trị lớn nhất độ lợi anten ở W.Sat truyền đến ES (dBW) (adsbygoogle = window.adsbygoogle || []).push({});

+ receiver antenna gain of W.Sat towards I.transmitting ES: độ lợi nhận đƣợc từ I.ES truyền đến W.Sat (dBW)

- Công cụ làm việc:

Hình 5.5. Công cụ tính toán

+ Calculate: tính số liệu

+ Save: lƣu lại dữ liệu đã nhập + Load: lấy dữ liệu đã có

+ Reset: trở lại trạng thái ban đầu - các kết quả 1:

Hình 5.6. Các kết quả d, L...

+ wanted ES receiver antenna gain towards I.Sat: độ lợi trạm W.ES thu đƣợc do I.Sat (dB)

+ Interfering ES transmit antenna gain towards W.Sat: I.ES truyền độ lợi đến W.Sat (dB)

+ lossup I.Sat (L5): suy hao up của I.Sat (dB) + lossup W.Sat (L1): suy hao up của W.Sat (dB) + lossdown I.Sat (L2): suy hao down của I.Sat (dB)

+ lossup I.Sat -> W.Sat (L3): suy hao up I.Sat truyền đến W.Sat (dB) + lossdown I.Sat -> W.Sat (L4): suy hao down I.Sat truyền đến W.Sat (dB) + d1, d2, d3, d4, d5: khoảng cách từ ES đến SES (Km)

Sinh viên thực hiện: Nguyễn Văn Linh 84

- Các kết quả 2:

Hình 5.7. Các kết quả ∆Te, ∆Ts, M…

+ θg : góc ở tâm (độ)

+ θw và θi: góc tạo bởi 2 vệ tinh (rad) + ∆Te: độ tăng nhiệt độ tạp âm SES (dB) + ∆Ts: độ tăng nhiệt độ tạp âm ES (dB) + ∆T/T (%)

+ C/Itotal: tỷ số tín hiệu trên nhiễu ngoài (dB) + C/Ntotal: tỷ số tín hiệu trên tạp âm (dB) + Margin M: độ dữ trữ M (dB)

Sinh viên thực hiện: Nguyễn Văn Linh 85

TỔNG KẾT

Với sự phát triển của xã hội hiện nay, các sản phẩm truyền thông đa phƣơng tiện ngày càng phát triển, các dịch vụ di dộng và truyền hình kỹ thuật số đòi hỏi thông tin phải thông suốt, cải thiện chất lƣợng dịch vụ làm cho dung lƣợng đòi hỏi tăng cao, số lƣợng vệ tinh do đó cũng tăng dần làm cho nhiễu tăng cao, yêu cầu cấp thiết phải tính toán can thiệp sao cho nhiễu không quá lớn, tránh ảnh hƣởng đến truyền thông tin.

Với những gì đã đạt đƣợc trong nghiên cứu và trình bày trong luận văn này chƣa phải là hoàn chỉnh nhƣng tôi mong muốn kết quả nghiên cứu của tôi sẽ giúp đƣợc phần nào giải quyết vấn đề nhiễu trong thông tin vệ tinh VINASAT.

Tôi sẽ tiếp tục nghiên cứu, hoàn thiện và phát triển luận văn này để đáp ứng đƣợc yêu cầu của xã hội.

Tôi xin chân thành cảm ơn Giảng Viên Nguyễn Tiến Khải đã hƣớng dẫn tôi thực hiện đề tài này. Cảm ơn toàn thể bạn bè và đồng nghiệp công ty “Cục Tần Số Vô Tuyến Điện” đã giúp đỡ trong quá trình thực hiện luận văn.

Sinh viên thực hiện: Nguyễn Văn Linh 86

TÀI LIỆU THAM KHẢO

[1] PGS-TS. Phạm Minh Việt, Thông Tin Vệ Tinh, NXB KH&KT, 2007 [2] Trần Đình Lƣơng, Thông Tin Vệ Tinh, NXB KH&KT, Tổng Cục Buu Điện [3] http://www.tapchibcvt.gov.vn/News/PrintView.aspx?ID=19477 [4] http://www.vnpt.com.vn/vi-VN/Tin-tuc/Thong-cao-bao-chi/Ve-tinh-vien- thong-VINASAT-1-Ve-tinh-dau-tien-cua-Viet-Nam-chuan-bi-duoc-phong- len-quy-dao.html [5] http://vi.wikipedia.org/wiki/Vinasat [6] http://www.rfd.gov.vn/Noi_dung/Chinh_phu/dac_diem_cua_cac_he_thong_v e_tinh_trong_cac_bang_tan/ [7] http://www.rfd.gov.vn/Noi+dung+tin+tuc/Thong+tin+vo+tuyen+va+tan+so/B ang_tan_su_dung_trong_thong_tin_ve_tinh [8] http://itu.int

Sinh viên thực hiện: Nguyễn Văn Linh 87 PHỤ LỤC Code chƣơng trình phần mềm: using System; using System.Collections.Generic; using System.IO; using System.Text; using System.Windows.Forms; using Calculator.Component; using Calculator.Global; using DevComponents.DotNetBar; using FileHelpers.DataLink; using FileHelpers; namespace Calculator {

publicpartialclassfrmMain : Office2007RibbonForm

{

#region Variable (adsbygoogle = window.adsbygoogle || []).push({});

privatebool m_CheckCalculator = false; #endregion #region frmMain #region Constructor public frmMain() { InitializeComponent();

frmSplash f = newfrmSplash(); f.Show();

System.Threading.Thread.Sleep(2000); f.Close();

}

#endregion #region Load

privatevoid frmMain_Load(object sender, EventArgs e) {

//if (DataService.OpenConnection()) //{

//Default(); //DangNhap();

Sinh viên thực hiện: Nguyễn Văn Linh 88

this.Cursor =

MyCursors.Create(System.IO.Path.Combine(Application.StartupPath,

"Pointer.cur"));

// Create the list of frequently used commands for the QAT Customize menu //ribbonControl.QatFrequentCommands.Add(btnDangNhap);

//ribbonControl.QatFrequentCommands.Add(btnDangXuat); //ribbonControl.QatFrequentCommands.Add(btnThoat);

// Load Quick Access Toolbar layout if one is saved from last session... Microsoft.Win32.RegistryKey key =

Microsoft.Win32.Registry.CurrentUser.OpenSubKey(@"Software\DevComponents \Ribbon");

if (key != null) {

try {

string layout = key.GetValue("RibbonPadCSLayout", "").ToString(); if (layout != "" && layout != null)

ribbonControl.QatLayout = layout; } finally { key.Close(); } } } #endregion

#region Lƣu lại trạng thái khi thoát chƣơng trình privatevoid frmMain_Closing(object sender, System.ComponentModel.CancelEventArgs e) {

// Save Quick Access Toolbar layout if it has changed... if (ribbonControl.QatLayoutChanged)

{

Microsoft.Win32.RegistryKey key =

Microsoft.Win32.Registry.CurrentUser.CreateSubKey(@"Software\DevComponent s\Ribbon");

try {

key.SetValue("RibbonPadCSLayout", ribbonControl.QatLayout); }

finally {

Sinh viên thực hiện: Nguyễn Văn Linh 89 } } } #endregion #endregion

#region Window form generater code (adsbygoogle = window.adsbygoogle || []).push({});

privatevoid btnCaculator_Click(object sender, EventArgs e) {

bool checkControl = CheckControl(); if (!checkControl)

return;

m_CheckCalculator = true; try

{

decimal X1S1 = Converter.ConvertStringToDecimal(txtX1S1.Text); decimal Y1S1 = Converter.ConvertStringToDecimal(txtY1S1.Text); int X2S1 = Converter.ConvertStringToInt(txtX2S1.Text);

int Y2S1 = Converter.ConvertStringToInt(txtY2S1.Text);

decimal F1up = Converter.ConvertStringToDecimal(txtF1up.Text);

decimal B1up = Converter.ConvertStringToDecimal(txtB1up.Text);

decimal F1down = Converter.ConvertStringToDecimal(txtF1down.Text);

decimal B1down = Converter.ConvertStringToDecimal(txtB1down.Text);

decimal Ps1 = Converter.ConvertStringToDecimal(txtPs1.Text);

decimal Pe1 = Converter.ConvertStringToDecimal(txtPe1.Text);

decimal Gp3 = Converter.ConvertStringToDecimal(txtGp3.Text);

decimal G2 = Converter.ConvertStringToDecimal(txtG2.Text);

decimal X1S2 = Converter.ConvertStringToDecimal(txtX1S2.Text);

decimal Y1S2 = Converter.ConvertStringToDecimal(txtY1S2.Text);

int X2S2 = Converter.ConvertStringToInt(txtX2S2.Text); int Y2S2 = Converter.ConvertStringToInt(txtY2S2.Text);

decimal Fup2 = Converter.ConvertStringToDecimal(txtFup2.Text);

decimal Bup2 = Converter.ConvertStringToDecimal(txtBup2.Text);

decimal Fdow2 = Converter.ConvertStringToDecimal(txtFdow2.Text);

decimal Bdown2 = Converter.ConvertStringToDecimal(txtBdown2.Text);

decimal Ps2 = Converter.ConvertStringToDecimal(txtPs2.Text);

decimal Ts = Converter.ConvertStringToDecimal(txtTs.Text);

decimal Pe2 = Converter.ConvertStringToDecimal(txtPe2.Text);

decimal Te = Converter.ConvertStringToDecimal(txtTe.Text);

decimal T = Converter.ConvertStringToDecimal(txtT.Text);

decimal Gamma = Converter.ConvertStringToDecimal(txtGamma.Text);

decimal G2M = Converter.ConvertStringToDecimal(txtG2M.Text);

Sinh viên thực hiện: Nguyễn Văn Linh 90 (adsbygoogle = window.adsbygoogle || []).push({});

decimal G4M = Converter.ConvertStringToDecimal(txtG4M.Text);

decimal G3 = Converter.ConvertStringToDecimal(txtG3.Text);

decimal ps11 = Converter.ConvertStringToDecimal(txtPs11.Text);

decimal pe11 = Converter.ConvertStringToDecimal(txtPe11.Text);

decimal dentaG = 0, minDentaG = 0;

//decimal tg1, tg2; //Tinh denta G

minDentaG = Math.Abs((X1S1 + Y1S1) - (X1S2 + Y1S2)); //if (minDentaG > dentaG)

// minDentaG = dentaG;

dentaG = Math.Abs((X1S1 + Y1S1) - (X1S2 - Y1S2)); if ( minDentaG > dentaG)

minDentaG = dentaG;

dentaG = Math.Abs((X1S1 - Y1S1) - (X1S2 + Y1S2)); if (minDentaG > dentaG)

minDentaG = dentaG;

dentaG = Math.Abs((X1S1 - Y1S1) - (X1S2 - Y1S2)); if (minDentaG > dentaG)

minDentaG = dentaG;

txtPhiG.Text = Converter.ConvertDecimalToString(minDentaG); //Tinh S

double latitude1 = Math.Abs((double) X1S2 - (double) X2S2); double costW1 = (Math.Cos((latitude1 * Math.PI) / 180)) * (Math.Cos((Y2S2 * Math.PI) / 180));

//double temp = Math.Cos((90 * Math.PI) / 180); double d1 = 42644*Math.Sqrt(1 - (0.2954*costW1)); double d2 = d1;

double l1 = 20*(Math.Log10((double) Fup2) + Math.Log10(d1)) + 32.45; double l2 = 20*(Math.Log10((double) Fdow2) + Math.Log10(d1)) + 32.45;

//Tinh S'

double latitude2 = Math.Abs((double) X1S1 - (double) X2S1); double costW2 = Math.Cos((latitude2 * Math.PI) / 180) *

Math.Cos((Y2S1 * Math.PI) / 180);

double d5 = 42644*Math.Sqrt(1 - (0.2954*costW2)); double d6 = d5;

double l5 = 20*(Math.Log10((double) F1up) + Math.Log10(d5)) + 32.45; double l6 = 20*(Math.Log10((double) F1down) + Math.Log10(d5)) + 32.45;

Sinh viên thực hiện: Nguyễn Văn Linh 91

//Tinh d3: Khoang cach tu tram mat dat S' den ve tinh S

double latitude3 = Math.Abs((double) X2S1 - (double) X1S2); double costW3 = Math.Cos((latitude3 * Math.PI) / 180) *

Math.Cos((Y2S1 * Math.PI) / 180);

double d3 = 42644*Math.Sqrt(1 - (0.2954*costW3));

double l3 = 20*(Math.Log10((double) F1up) + Math.Log10(d3)) + 32.45; //Tinh d4: Khoang ve tinh S' xuong tram mat dat S

double latitude4 = Math.Abs((double) X1S1 - (double) X2S2); double costW4 = Math.Cos((latitude4 * Math.PI) / 180) * (adsbygoogle = window.adsbygoogle || []).push({});

Math.Cos((Y2S2 * Math.PI) / 180);

double d4 = 42644*Math.Sqrt(1 - (0.2954*costW4));

double l4 = 20*(Math.Log10((double) F1down) + Math.Log10(d4)) + 32.45;

//Hien thi L

txtLossUpS1.Text = Converter.ConvertDecimalToString((decimal) l5); txtLossUpS2.Text = Converter.ConvertDecimalToString((decimal) l1); txtLossDownS.Text = Converter.ConvertDecimalToString((decimal) l2); txtLossUpSS.Text = Converter.ConvertDecimalToString((decimal) l3); txtLossDownSS.Text = Converter.ConvertDecimalToString((decimal) l4);

//Hien thi cac gia tri cua d

textBoxX1.Text = Converter.ConvertDecimalToString((decimal)d5); textBoxX2.Text = Converter.ConvertDecimalToString((decimal)d1); textBoxX3.Text = Converter.ConvertDecimalToString((decimal)d2 ); textBoxX4.Text = Converter.ConvertDecimalToString((decimal)d3); textBoxX5.Text = Converter.ConvertDecimalToString((decimal)d4); double sinDentaG = Math.Sin((((double)minDentaG / 2) * Math.PI) / 180);

//Tinh goc teta double tetaW =

Math.Acos(((d2 * d2 + d4 * d4 - Math.Pow((84332 * sinDentaG), 2)) / (2 * d2 * d4)));

double tetaI =

Math.Acos(((d3 * d3 + d5 * d5 - Math.Pow((84332 * sinDentaG), 2)) / (2 * d3 * d5)));

//double tetatem = ((d3*d3 + d5*d5 -

Math.Pow((84332*Math.Sin((double) minDentaG/2)), 2)/(2*d3*d5))); double GTetaW = 32 - 25*Math.Log10(tetaW*180/Math.PI); double GTetaI = 32 - 25 * Math.Log10(tetaI * 180 / Math.PI);

Sinh viên thực hiện: Nguyễn Văn Linh 92

//Hien thi teta

txtUpPhiI.Text = Converter.ConvertDecimalToString((decimal) tetaI); txtDownPhiW.Text = Converter.ConvertDecimalToString((decimal) tetaW);

txtDoLoiPhatGocLechVT.Text =

Converter.ConvertDecimalToString((decimal) GTetaW);

txtDoLoiPhatGocLechMD.Text =

Converter.ConvertDecimalToString((decimal) GTetaI);

//Tinh denta E, S

decimal dentaE = ps11 + Gp3 - (decimal) l4 + (decimal) GTetaW; decimal dentaS = pe11 + G2 - (decimal) l3 + (decimal) GTetaI; txtDentaTe.Text = Converter.ConvertDecimalToString(dentaE); txtDentaTs.Text = Converter.ConvertDecimalToString(dentaS); //Tinh Shi Te, Ts, gamma

double shiTe = Math.Pow(10, (double) dentaE/10); double shiTs = Math.Pow(10, (double) dentaS/10); double gamma = Math.Pow(10, (double) Gamma/10); double tongShi = shiTe + shiTs*gamma;

double dentaT_T = (tongShi*100)/((double) T*1.38*Math.Pow(10, -23)); txtDentaTT.Text = Converter.ConvertDecimalToString((decimal)

dentaT_T);

//Tinh tong C/I, C/N, Ia

double bWInteferingP = 10 * Math.Log10((double)B1up); double bWWantedP = 10 * Math.Log10((double)Bup2); double iA = 0;

if (bWInteferingP > bWWantedP) iA = bWInteferingP - bWWantedP; //up

decimal cUp = Pe2 + G1M - (decimal) l1 + G2M;

decimal iUp = Pe1 + G2 - (decimal) l3 + (decimal) GTetaI - (decimal)iA; decimal tongC_Iup = cUp - iUp; (adsbygoogle = window.adsbygoogle || []).push({});

//down

decimal cDown = Ps2 + G3 - (decimal) l2 + G4M;

decimal iDown = Ps1 + Gp3 - (decimal)l4 + (decimal)GTetaW - (decimal)iA;

Sinh viên thực hiện: Nguyễn Văn Linh 93

//C/I

decimal tongC_Idown = cDown - iDown; double tongC_I = -10*

Math.Log10(Math.Pow(10, -(double) tongC_Iup/10) + Math.Pow(10, -(double) tongC_Idown/10)); txtTotalCI.Text = Converter.ConvertDecimalToString((decimal) tongC_I);

//C/N

Một phần của tài liệu tính toán can nhiễu giữa các vệ tinh (Trang 74)