1 Bộ giáo dục đào tạo Tr-ờng Đại học bách khoa hà nội - Phi trọng hợp tính toán thiết kế tuyến truyền dẫn hệ thống viba số mặt đất Chuyên ngành: Điện tử - Viễn thông Luận văn thạc sỹ iện tử-viễn thông Ng-ời h-ớng dẫn khoa học: GS.TS Trần ức Hân Hà nội - 2004 Mục lục Lời nói đầu Danh mục Viết tắt tiếng Anh Ch-ơng 1: Tổng quan 1.1 Giới thiệu chung viba số ứng dụng 1 1.1.1 Phổ tần số vô tuyến 1.2.1 Liên minh viễn thông quốc tế ITU 1.3.1 Tại lại sử dụng vô tuyến 1.4.1 Mét sè øng dơng cđa viba 1.2 Quy ho¹ch phổ tần số vô tuyến điện 1.2.1 Khái niệm công tác quy hoạch phổ tần số VTĐ 1.2.2 Các nguyên tắc quy hoạch 1.2.3 Nội dung quy hoạch 1.2.4 Quy hoạch kênh tần số VTĐ Việt nam cho nghiệp vụ cố 11 định l-u động mặt đất(30-30000)MHz Ch-ơng 2: Anten 15 2.1 Tăng Ých anten 15 2.2 §é réng bóp sãng 19 2.3 Phân cực 21 2.4 Tr-ờng gần, tr-ờng xa 21 2.5 Tạp âm anten 23 Ch-ơng 3: Truyền sóng thông tin viba 26 3.1 Trun sãng kh«ng gian tù 26 3.2 Tác động khí 28 3.2.1 HÊp thơ 28 3.2.2 Khóc x¹ 30 3.2.3 èng dẫn 37 3.2.4 Truyền sóng dị th-ờng 38 Tác động địa hình 40 3.3 3.3.1 Phản xạ 40 3.3.2 Các vùng Fresnel 44 3.3.3 Nhiễu xạ 46 3.4 Fading 48 3.4.1 Fading phẳng 48 3.4.2 Fading lựa chọn tần số 50 3.4.3 Các yếu tố tác động tới fading đa đ-ờng 51 3.5 51 Các biện pháp cải thiện tín hiệu thu 3.5.1 Mục đích 51 3.5.2 Phân loại biện pháp đối phó 52 3.5.3 Phân tập 53 3.5.4 Đánh giá 57 Ch-ơng 4: Thiết kế tuyến tính toán can nhiễu 4.1 Chỉ tiêu chất l-ợng hiƯu st trun dÉn 59 59 4.1.1 §-êng trun tham chiếu có tính giả thuyết 61 4.1.2 Các định nghĩa lỗi 63 4.2 65 Tỷ số bảo vệ C/I ng-ỡng 4.2.1 Dự trữ fading đa đ-ờng 66 4.2.2 Dự trữ fading m-a 68 4.3 71 Ph©n tÝch tuyÕn 4.3.1 Tính toán tuyến 71 4.3.2 Trạm lặp 74 4.3.3 Các yếu tố ảnh h-ởng tới máy thu viba 79 4.4 ThiÕt kÕ tun 83 4.5 TÝnh to¸n can nhiƠu 88 4.6 Phần mềm ứng dụng tính toán can nhiễu tỷ số bảo vệ 89 ng-ỡng C/I 4.7 Nguyên tắc phối hợp tính toán ấn định tần số 95 Kết luận 96 Tài liệu tham khảo 98 Phụ lục - Mà nguồn ch-ơng trình tính toán can nhiễu - Giá trị hệ số khí hậu PL tháng điển hình năm Danh mục hình vẽ Hình vẽ Nội dung Trang 1.1 1.2 Sơ đồ đ-ờng truyền viba đơn giản Phân vùng giới ITU 1.3 Sơ đồ mạng vô tuyến điển hình 1.4 Sơ đồ mạng chuyên dùng điển hình 1.5 Sơ đồ mạng truyền hình điển hình 1.6 Sơ đồ mạng di động tế bào điển hình 1.7 Sơ đồ phân kênh truyền dẫn tần số 12 1.8 Sơ đồ phân kênh truyền dẫn hai tần số 12 1.9 Sơ đồ phân kênh cho băng tần (1427-1535)MHz 14 2.1 Giản đồ phát xạ anten đẳng h-ớng 16 2.2 Sự thay đổi tăng ích anten theo tần số 17 2.3 Giản đồ phát xạ anten viba(Nguồn Andrew corporation) 18 2.4 Mối quan hệ đ-ờng kính anten độ rộng búp sóng 20 2.5 Biểu diễn phân cực Ngang (a) Đứng(b) 21 2.6 23 Tác động tr-ờng gần lên tăng ích anten Mối quan hệ số tạp âm nhiệt độ tạp âm(Nguồn: 24 Panter, 1972, Communication Systems Design, Hình 6-6, Mcraw Hill) Suy hao không gian tự phát xạ đẳng h-ớng 27 28 Suy hao không gian tự theo tần số khoảng cách 2.7 3.1 3.2 3.3 Hấp thụ khí 29 3.4 Hiện t-ợng khúc xạ 31 3.5 Cự ly truyền dẫn tăng khúc xạ 31 3.6 33 Mặt cắt trái đất hiệu dụng ứng với giá trị k Tác động hệ số k lên ®-êng trun sãng(Ngn: 34 Panter, 1972, “Communication Systems Design”, H×nh 134, Mcraw Hill) 3.7 3.8 Mặt cắt trái đất t-ơng đ-ơng ứng với giá trị k 3.9 Giá trị ke v-ợt 99.9% tháng xấu nhất(Nguồn: 37 ITU, khuyến nghị ITU-R P.530-7, hình 2) 38 Tia sãng viba bÞ bÉy èng dÉn 3.10 3.11 35 39 3.12 Phân bố xác suất số gradient khóc x¹ n cong tia sãng khóc x¹ 3.13 Phản xạ mặt đất 40 3.14 Đảo pha phản xạ 41 3.15 Các phần tử hình học phản xạ từ trái đất hình cầu 42 3.16 44 Các vùng Fresnel Sơ đồ mặt cắt điển hình vùng Fresnel thứ tần 44 số 100MHz 10GHz Tác động độ thông thoáng đ-ờng truyền lên truyền 47 3.17 3.18 39 sãng viba 3.19 HiƯn t-ỵng tia sóng bị uốn cong khúc xạ 49 3.20 Cơ cấu fading đa đ-ờng 50 3.21 Cấu hình phân tập không gian tần số 54 3.22 Đ-ờng tín hiệu phân tập không gian 55 3.23 58 Hệ số cải thiện phân tập không gian Đ-ờng truyền số tham chiếu giả thiết theo khuyến nghị 62 4.1 ITU-T G.826 4.2 Đ-ờng truyền tham chiếu giả thiết ®èi víi hƯ thèng v« 63 tun sè theo ITU-R 4.3 Đ-ờng cong tỷ số bảo vệ ng-ỡng 71 4.4 Suy hao không gian tự 73 4.5 Tăng ích suy hao tuyến viba 73 4.6 75 Các phản xạ thụ động So sánh suy hao truyền dẫn phản xạ thụ 77 động Họ đ-ờng cong hiệu suất mặt phản xạ(Nguồn: Panter, 78 1972, “Communication Systems Design”, Mcraw Hill) 4.7 4.8 4.9 4.11 Các phản xạ thụ động đôi, đặt gÇn nhau(Nguån: Panter, 78 1972, “Communication Systems Design”, Mcraw Hill) 79 CÊu h×nh anten kiĨu kÝnh tiỊm väng 81 NhiƠu xuyên kênh 4.12 Các nguồn nhiễu 4.10 4.13 4.14 4.15 TÝch l tû sè BER Mèi quan hƯ gi÷a tû số BER Eb/N0 Ví dụ can nhiễu tun 82 83 85 88 Danh mơc b¶ng biĨu Bảng Nội dung Trang 1.1 Tần số ứng dụng 1.2 Một số băng tần dành cho viba 1.3 Cấu trúc bảng phân bố phổ tần ITU băng (450-470)MHz 1.4 Cấu trúc bảng phân bố phổ tần Việt nam băng (450- 10 470)MHz 3.1 Tiêu chuẩn phân loại theo khía cạnh vật lý 52 3.2 Tiêu chuẩn phân loại theo khía cạnh chức 53 4.1 Mối quan hệ độ tin cậy hệ thống với thời gian gián đoạn 60 4.2 Thời gian gián đoạn nhiều loại hình truyền dẫn 61 4.3 Giá trị hệ số C0 theo loại địa hình độ cao anten 67 4.4 Giá trị thông số k, a theo tần số 69 Viết t¾t tiÕng anh Am Amplitude Modulation AMR Analog Microwave Radio ATM Asynchronous Transfer Mode BB Base Band BBE Background Block Error BBER Background Block Error Ratio BER Bit Error Rate B-ISDN Broadband Integrated Services Digital Network BPSK Binary Phase Shift Keying BSC Base Station Controller BTS Base Transceiver Station C/I Carrier to Interference ratio C/N Carrier to Noise ratio CCIR International Radio Consultative Committee CCITT International Telegraph and telephone Consultative Committee CDMA Code-division Multiplexer CIS Commonwealth of Independent States Co Central Office DECT Digital European Cordless Telecommunication DMR Digital Microwave Radio DTH Direct to Home EB Error Block EHF Extremely High Frequency 10 EIRP Equivalent Isotropic Radiated Power ES Error Second ETSI Europen Telecommunications Standards Institude F/B Front to Back Ratio FCC Federal Communications Commission FDD Frequency-division Duplexed FDM Frequency-division Multiplexing Fm Frequency Modulation FM Fade Margin FSK Frequency Shift Keying GSM Global System for Mobile communication HRP Hypothetical Reference Path IFRB International Frequency Registration Board IMT International Mobile Telecommunications ISDN Integrated Services Digital Network ITU-R International Telecommunications Union - Radio LF Low Frequency MF Medium Frequency MSC Main Switching Centre NF Noise Figure PDh Plesiochronous Digital Hierarchy PMR Private Mobile Radio PSTN Public Swiched Telephone Network PTO Public Telecommunication Operations procedure AssignValueForAppend(var cc:CIResultType;var tt:TTable); begin tt['nom_lien'] := cc.nom_lien; tt['ref_emette']:=cc.ref_emette; tt['ref_emett2']:=cc.ref_emett2; tt['Freq_up']:=cc.freq_up; tt['Freq_down']:=cc.freq_down; tt['Longitude1']:=cc.Long1; tt['Latitude1']:=cc.Lat1; tt['Longitude2']:=cc.Long2; tt['Latitude2']:=cc.Lat2; tt['Freq_Plan']:=cc.Freq_Plan; tt['Tipa_hi_lo']:=cc.Extremite1; tt['Parity']:=cc.Parity; tt['D_ab']:=round(cc.D_ab*10)/10; tt['PL_ab']:=round(cc.PL_ab*10)/10;//chi mot chu so phan thap phan tt['H1']:=cc.H1; tt['H2']:=cc.h2; tt['Pa']:=cc.Pa; tt['Pb']:=cc.Pb; tt['Cia1']:=MyDeciTrunc(cc.Cia1,1); tt['cia2']:=MyDeciTrunc(cc.cia2,1); tt['cib1']:=MyDeciTrunc(cc.cib1,1); tt['cib2']:=MyDeciTrunc(cc.cib2,1); tt['ci1a']:=MyDeciTrunc(cc.ci1a,1); tt['ci1b']:=MyDeciTrunc(cc.ci1b,1); tt['ci2a']:=MyDeciTrunc(cc.ci2a,1); tt['ci2b']:=MyDeciTrunc(cc.ci2b,1); tt['a_a12']:=MyDeciTrunc(cc.a_a12,1); tt['a_b12']:=MyDeciTrunc(cc.a_b12,1); tt['a_b21']:=MyDeciTrunc(cc.a_b21,1); tt['a_a21']:=MyDeciTrunc(cc.a_a21,1); tt['a_1ab']:=MyDeciTrunc(cc.a_1ab,1); tt['a_2ab']:=MyDeciTrunc(cc.a_2ab,1); tt['a_2ba']:=MyDeciTrunc(cc.a_2ba,1); tt['a_1ba']:=MyDeciTrunc(cc.a_1ba,1); tt['result']:=cc.result; tt['d1a']:=0; tt['d1b']:=0; tt['d2a']:=0; tt['d2b']:=0; tt['f1a']:=0; tt['f1b']:=0; tt['f2a']:=0; tt['f2b']:=0; tt['fab']:=0; end; begin ResultDBGrid.Visible:=False; Panel1.Refresh; Screen.Cursor:= crHourGlass;//chuyen dang tro sang crHourGlass Tip1.Long:=DegToRad(LinkQuery.Field ByName('Long1').Value); Tip2.Long:=DegToRad(LinkQuery.Field ByName('Long2').Value); Tip1.Lat:=DegToRad(LinkQuery.FieldBy Name('Lat1').Value); Tip2.Lat:=DegToRad(LinkQuery.FieldBy Name('Lat2').Value); Tip1.comp_antenne:=LinkQuery.FieldBy Name('comp_anten').AsInteger; Tip2.comp_antenne:=LinkQuery.FieldBy Name('comp_ante2').AsInteger; Tip1.antH:=LinkQuery.FieldByName('ha ut_sol_a').Value; Tip2.antH:=LinkQuery.FieldByName('ha ut_sol_2').Value; Tip1.EIRP:=LinkQuery.FieldByName('PI RE').Value; Tip2.EIRP:=LinkQuery.FieldByName('PI RE1').Value; Tip1.Polar:=myPolar; Tip2.Polar:=myPolar; Tip1.FreqBand:=myBand; Tip2.FreqBand:=myBand; Tip1.sClass:=doiclass(myClass); Tip2.sClass:=Tip1.sClass; Tip1.Tx:=myF1; Tip2.Tx:=myF2; Tip1.Altitude:=LinkQuery.FieldByName( 'Altitude').Value; Tip2.Altitude:=LinkQuery.FieldByName( 'Altitude1').Value; //Tinh toan cac chi so CI, goc cc.nom_lien:=LinkQuery.FieldByName(' nom_lien').AsString; cc.ref_emette:=LinkQuery.FieldByName( 'ref_emette').AsString; cc.ref_emett2:=LinkQuery.FieldByName ('ref_emett2').AsString; cc.Long1:=LinkQuery.FieldByName('Lo ng1').Value; cc.Lat1:=LinkQuery.FieldByName('Lat1' ).Value; cc.Long2:=LinkQuery.FieldByName('Lo ng2').Value; cc.Lat2:=LinkQuery['Lat2']; // cc.Lat2:=LinkQuery.FieldByName('Lat2' ).Value; cc.Freq_up:=myF1; cc.Freq_down := myF2; cc.Freq_Plan := myChannelNo+' # '+GetPlanName(myPlan); cc.Extremite1:=LinkQuery.FieldByName ('Extremite1').AsString; if not Tip1CheckBox.Checked then if cc.Extremite1='H' then cc.Extremite1:='L' else cc.Extremite1:='H'; if cc.Extremite1='L' then begin cc.nom_lien := cc.nom_lien+ ' (*)'; cc.Freq_up := myF2; cc.Freq_down := myF1; tip1.tx := myF2; tip2.tx := myF1; end; tip_1 := cc.Extremite1; cc.Parity := False; cc.h1 := Tip1.antH; cc.H2 := Tip2.antH; cc.Pa := Tip1.EIRP; cc.Pb := Tip2.EIRP; { cc.Cia1 := 0; cc.cia2 :=0; cc, cib1,cib2,ci1a,ci1b,ci2a,ci2b:real;//Ti so C/I tai cac dau a_a12,a_b12,a_b21,a_ba21,a_1ab, a_2ab, a_2ba, a_1ba:real; //cac goc } cc.result:=1; val(DeltaDEdit.Text,DeltaD,code); if diffcheckbox.checked then diff_choice :=DiffRadioGroup.ItemIndex else diff_choice :=-1; //kiem tra Diffraction option val(dParityEdit.text,dParity,code); if PathLengthCheckBox.Checked then CorrectPL := else CorrectPL:=0; if AntenCheckBox.Checked then AntHV:=True else AntHV:=False; if tip1.long < tip2.Long then LongA :=tip1.Long else LongA := Tip2.long; if tip1.long < tip2.Long then LatA :=tip1.Lat else LatA := Tip2.lat; LongMin := LongAArcCos((cos(DegToRad(DeltaD/111.317) )Sin(LatA)*Sin(LatA))/(Cos(LatA)*Cos(L AtA))); LongMin := RadToDeg(LongMin); if tip1.long > tip2.Long then LongA :=tip1.Long else LongA := Tip2.long; if tip1.long > tip2.Long then LatA :=tip1.Lat else LatA := Tip2.lat; LongMax := LongA+ArcCos((cos(DegToRad(DeltaD/ 111.317))Sin(LatA)*Sin(LatA))/(Cos(LatA)*Cos(L atA))); LongMax := RadToDeg(LongMax); //LatMin if Tip1.LatTip2.Lat then LatMax:=Tip1.Lat else LatMax:=Tip2.Lat; LatMax:=LatMax+PI*(DeltaD/111.317)/ 180; LatMin:= RadToDeg(LatMin); LatMAx:= RadToDeg(LatMax); //Query LinkDeltaD { with LinkDeltaDQuery begin Close; with SQL begin Clear; Add('select * from viewphysicallink_ where '); Add('((Long1>LongMin) and (Long1LatMin) and (Lat1LongMin) and (Long2LatMin) and (Lat2'+sLongMin+')and(A.Long1 '+sLatMin+' )and(A.Lat1'+sLongMin+')and(A.Long 2'+sLatMin +')and(A.Lat2='+AsString(myF1deltaF)+')and(B.Freq_UP='+AsString(myF2deltaF)+')and(b.Freq_Down='+AsString(myF2deltaF)+')and(b.Freq_UP='+AsString(myF1deltaF)+')and(b.Freq_Down1'; //Lay cau truc file tmpResult with tmpResultQuery begin Close; with SQL begin Clear; Add(sSQL); end; Open; end;} //Them ban ghi vao TmpRes1Table with tmpRes1Table begin Active:=False;//Truoc xoa phai dong table EmptyTable;//Xoa het cac record table truoc Active:=True;//Truoc append phai mo table Append; FieldValues['nom_lien']:=cc.nom_lien; FieldValues['ref_emette']:=cc.ref_emette; FieldValues['ref_emett2']:=cc.ref_emett2; FieldByName('Long1').AsFloat:=cc.Long 1; FieldValues['Lat1']:=cc.Lat1; FieldValues['Long2']:=cc.Long2; FieldValues['Lat2']:=cc.Lat2; FieldValues['Freq_up']:=cc.Freq_up; FieldValues['Freq_Down']:=cc.Freq_Dow n; FieldValues['pire']:=cc.Pa; FieldValues['pire1']:=cc.Pb; FieldValues['haut_sol_a']:=cc.H1; FieldValues['haut_sol_2']:=cc.H2; //Lay thong so anten cAntQuery.Close; cAntQuery.SQL.Clear; cAntQuery.SQL.Add('Select * from ViewAntenna where comp_anten='+ IntToStr(LinkQuery.FieldByName('comp _anten').AsInteger)); cAntQuery.Open; FieldValues['nom_ant']:=trim(cAntQuery FieldValues['nom_ant']); FieldValues['gain']:=cAntQuery.FieldVal ues['gain_max']; cAntQuery.Close; cAntQuery.SQL.Clear; cAntQuery.SQL.Add('Select * from ViewAntenna where comp_anten='+ IntToStr(LinkQuery.FieldByName('comp _ante2').AsInteger)); cAntQuery.Open; FieldValues['nom_ant1']:=trim(cAntQuer y.FieldValues['nom_ant']); FieldValues['gain1']:=cAntQuery.FieldV alues['gain_max']; cAntQuery.Close; FieldValues['d']:=cc.D_ab; FieldValues['PL']:=cc.PL_ab; FieldValues['Channel']:=cc.Freq_Plan; FieldValues['Delta_D']:=StrToInt(DeltaD Edit.Text); FieldValues['Delta_F']:=StrToInt(DeltaF Edit.Text); FieldValues['Parity_D']:=StrToInt(DParit yEdit.Text); if DiffCheckBox.Enabled then begin if DiffRadioGroup.ItemIndex=0 then FieldValues['Diff_Loss']:='On (without altitude)' else FieldValues['Diff_Loss']:='On (with altitude)'; end else FieldValues['Diff_Loss']:='Off'; if PathLengthCheckBox.Enabled then FieldValues['PL_Corr']:='On' else FieldValues['PL_Corr']:='Off'; if AntenCheckBox.Enabled then FieldValues['Cros_pola']:='On' else FieldValues['Cros_pola']:='Off'; FieldValues['Total_link']:=0; FieldValues['Show_link']:=0; FieldValues['res_text']:=''; Post; end; //Them ban ghi vao tmpResultTable tmpResultTable.Active:=False;//Truoc xoa phai dong table tmpResultTable.EmptyTable;//Xoa het cac record table truoc tmpResultTable.Active:=True;//Truoc append phai mo table { tmpResultTable.Append; AssignValueForAppend(cc,tmpResultTab le); tmpResultTable.Post;} // 10 LinkDeltaDFQuery.First; // flag:=True; tempResultCount:=0; while not LinkDeltaDFQuery.eof begin inc(tempResultCount); // str(tempResultCount,st); cc.nom_lien:=LinkDeltaDFQuery['nom_l ien']; TipA.Long := DegToRad(LinkDeltaDFQuery['Long1']); TipB.Long:= DegToRad(LinkDeltaDFQuery['Long2']); TipA.Lat := DegToRad(LinkDeltaDFQuery['Lat1']); TipB.Lat := DegToRad(LinkDeltaDFQuery['Lat2']); TipA.comp_antenne:=LinkDeltaDFQuery ['comp_anten']; TipB.comp_antenne:=LinkDeltaDFQuery ['comp_ante2']; TipA.antH:=LinkDeltaDFQuery['haut_sol _a']; TipB.antH:=LinkDeltaDFQuery['haut_sol _2']; // ExAzimut1:=LinkDeltaDFQuery['azimut' ]; // ExAzimut2:=LinkDeltaDFQuery['azimut 1']; TipA.EIRP:=LinkDeltaDFQuery['pire']; TipB.EIRP:=LinkDeltaDFQuery['pire1']; TipA.Polar:=LinkDeltaDFQuery['polariza ti']; TipB.Polar:=TipA.Polar; //kiem tra du lieu truong class tmp:=LinkDeltaDFQuery.FieldByName(' class').AsInteger; if tmp=0 then ShowMessage(cc.nom_lien+' khong co Class') else TipA.sClass:=DoiClass(tmp); TipB.sClass:=TipA.sClass; TipA.FreqBand:=LinkDeltaDFQuery['co mp_bdw']; TipB.FreqBand:=TipA.FreqBand; TipA.Altitude:=LinkDeltaDFQuery['altitu de']; TipB.Altitude:=LinkDeltaDFQuery['altitu de1']; explan:=LinkDeltaDFQuery['comp_prop_ ']; ExChannelNo:=trim(LinkDeltaDFQuery FieldByName('channel_nu').asString); dAb:=Distance(TipA.Long, TipA.Lat, TipB.Long, TipB.Lat); d1A:=Distance(Tip1.Long, Tip1.Lat, TipA.Long, TipA.Lat); d2A:=Distance(Tip2.Long, Tip2.Lat, TipA.Long, TipA.Lat); d1B:=Distance(Tip1.Long, Tip1.Lat, TipB.Long, TipB.Lat); d2B:=Distance(Tip2.Long, Tip2.Lat, TipB.Long, TipB.Lat); //Loai cac tuyen trung toa dau cc.nom_lien:=LinkDeltaDFQuery['nom_l ien']; { if trim(cc.nom_lien)'1572_FH_0' then begin linkdeltadfquery.Next; continue; end else begin showmessage('OK'); end; } if LinkDeltaDFQuery['Extremite1']='H' then begin TipA.Tx:=LinkDeltaDFQuery['Freq_Up'] ; 11 TipB.Tx:=LinkDeltaDFQuery['Freq_Dow n']; end else begin TipB.Tx:=LinkDeltaDFQuery['Freq_Up']; TipA.Tx:=LinkDeltaDFQuery['Freq_Dow n']; cc.nom_lien:=cc.nom_lien+' (*)'; end; cc.ref_emette:=LinkDeltaDFQuery['ref_e mette']; cc.ref_emett2:=LinkDeltaDFQuery['ref_e mett2']; cc.Long1:=LinkDeltaDFQuery['Long1']; cc.Lat1:=LinkDeltaDFQuery['Lat1']; cc.Long2:=LinkDeltaDFQuery['Long2']; cc.Lat2:=LinkDeltaDFQuery['Lat2']; cc.Freq_up:=TipA.Tx; cc.Freq_Down:=TipB.Tx; cc.freq_plan:=trim(LinkDeltaDFQuery.Fi eldByName('channel_nu').AsString)+' # ' +GetPlanName(exPlan); cc.Extremite1:=LinkDeltaDFQuery['Extr emite1']; cc.Parity:=False; cc.D_ab:=dAB; cc.PL_ab:=Correct_Fact((TipA.Tx+TipB Tx)/2,dAB); cc.H1:=TipA.AntH; cc.H2:=TipB.antH; cc.Pa:=TipA.EIRP; cc.Pb:=TipB.EIRP; //Chi tinh voi cac tuyen khong trung ca dau tmp_x:=400; if (d1a+d2b=0) or (d2A+d1B=0) then begin cc.cia1:=999;//7 cc.cia2:=999;//8 cc.cib1:=999;//9 cc.cib2:=999; cc.ci1a:=999; cc.ci2a:=999; cc.ci2a:=999; cc.ci2b:=999;//14 end else begin {if trim(cc.nom_lien)='28_FH_0' then begin cc.nom_lien :='28_FH_0'; end; } cc.cia1:=GetCI(TipA, TipB, Tip1, Tip2);//truong cc.a_a12:=tmp_X; //truong 23 cc.a_1ab:=tmp_xx;//truong 27 cc.cia2:=GetCI(TipA, TipB, Tip2, Tip1);//truong cc.a_a21:=tmp_x;//truong 26 cc.a_2ab:=tmp_xx;//truong 28 cc.cib1:=GetCI(TipB, TipA, Tip1, Tip2);//truong cc.a_b12:=tmp_x;//truong 24 cc.a_1ba:=tmp_xx;//truong 30 cc.cib2:=GetCI(TipB, TipA, Tip2, Tip1);//10 cc.a_b21:=tmp_x;//truong 25 cc.a_2ba:=tmp_xx;//truong 29 cc.ci1a:=GetCI(Tip1, Tip2, TipA, TipB);//11 cc.ci2a:=GetCI(Tip2, Tip1, TipA, TipB);//12 cc.ci1b:=GetCI(Tip1, Tip2, TipB, TipA);//13 cc.ci2b:=GetCI(Tip2, Tip1, TipB, TipA);//14 //kiem tra Parity if d1A