MỤC LỤC
1. DANH MỤC CÁC TỪ VIẾT TẮT . i
2. DANH MỤC CÁC BẢNG . viii
3. DANH MỤC CÁC HÌNH VẼ . viii
LỜI MỞ ĐẦU 1
CHƯƠNG 1:GIỚI THIỆU CÁC HỆ THỐNG THÔNG TIN DI ĐỘNG . 3
1.1 Giới thiệu chương . 3
1.2 Hệ thống thông tin di động thế hệ 1 3
1.3 Hệ thống thông tin di động thế hệ 2 4
1.3.1 Đa truy cập phân chia theo thời gian TDMA . 5
1.3.2 Đa truy cập phân chia theo mã CDMA . 6
1.4 Hệ thống thông tin di động thế hệ 3 8
1.5 Hệ thống thông tin di động thế hệ tiếp theo . 10
1.6 Kết luận chương . 11
CHƯƠNG 2:TÌM HIỂU MẠNG 3G WCDMA UMTS . 12
2.1 Giới thiệu chung . 12
2.1.1 Mục đích chương 12
2.1.2 Các chủ đề được trình bày trong chương 12
2.2 Kiến trúc chung của một hệ thống thông tin di động 3G . 12
2.3 Chuyển mạch kênh (CS), chuyển mạch gói (PS), dịch vụ chuyển mạch kênh và dịch vụ chuyển mạch gói . 14
2.4 Các loại lưu lượng và dịch vụ được 3G WCDMA UMTS hỗ trợ 18
2.5 Kiến trúc 3G WCDMA UMTS R3 . 21
2.5.1 Thiết bị người sử dụng (UE) . 22
2.5.2 Mạng truy nhập vô tuyến UMTS . 24
2.5.3 Mạng lõi . 26
2.5.4 Các mạng ngoài 30
2.5.5 Các giao diện 30
2.6 Kiến trúc 3G WCDMA UMTS R4 . 31
2.7 Kiến trúc 3G WCDMA UMTS R5 và R6 33
2.8 Chiến lược dịch chuyển từ GSM sang UMTS 36
2.8.1 3GR1 : Kiến trúc mạng UMTS chồng lấn . 37
2.8.2 3GR2 : Tích hợp các mạng UMTS và GSM 38
2.8.3 3GR3 : Kiến trúc RAN thống nhất . 39
2.9 Cấu hình địa lý của hệ thống thông tin di động 3G . 40
2.9.1 Phân chia theo vùng mạng . 40
2.9.2 Phân chia theo vùng phục vụ MSC/VLR và SGSN 41
2.9.3 Phân chia theo vùng định vị và vùng định tuyến 41
2.9.4 Phân chia theo ô 42
2.9.5 Mẫu ô 43
2.9.6 Tổng kết phân chia vùng địa lý trong các hệ thống thông tin di động
3G . 44
2.10 TỔNG KẾT 45
CHƯƠNG 3:ĐIỀU KHIỂN CÔNG SUẤT TRONG HỆ THỐNG THÔNG TIN DI ĐỘNG THẾ HỆ BA UMTS . 46
3.1 Giới thiệu chương 46
3.2 Ý nghĩa của điều khiển công suất 46
3.3 Điều khiển công suất vòng hở trong UMTS 48
3.3.1 Giới thiệu . 48
3.3.2 Kỹ thuật điều khiển công suất vòng hở đường lên 48
3.3.3 Kỹ thuật điều khiển công suất vòng hở đường xuống 49
3.4 Điều khiển công suất vòng kín trong UMTS 50
3.4.1 Giới thiệu . 50
3.4.2 Các thủ tục điều khiển công suất vòng trong . 53
3.4.3 Điều khiển công suất vòng ngoài . 61
3.5 Điều khiển công suất ở các kênh chung đường xuống . 65
3.6 Phương pháp điều khiển công suất theo bước động DSSPC 67
3.6.1 Khái niệm và lợi ích của độ dự trữ, cửa sổ công suất . 67
3.6.2 Sự hoạt động của mạng . 68
3.6.3 Sự hoạt động của trạm di động 70
3.6.4 Các công thức tính toán . 73
3.7 Phương pháp điều khiển công suất phân tán DPC . 75
3.7.1 Tổng quan 75
3.7.2 Mô hình hệ thống . 77
3.7.3 Thuật toán điều khiển công suất phân tán DPC . 77
3.8 Kết luận chương 80
CHƯƠNG 4:KẾT QUẢ TÍNH TOÁN VÀ MÔ PHỎNG 81
4.1 Giới thiệu chương 81 4.2 Quỹ đường truyền vô tuyến tham khảo cho hệ thống UMTS 81
4.3 Phương pháp tính toán cụ thể . 83
4.4 Kết quả mô phỏng 85
4.5 Kết luận chương . 90
KẾT LUẬN CHUNG . 91
TÀI LIỆU THAM KHẢO . I
PHỤ LỤC III
LỜI MỞ ĐẦU
Khả năng liên lạc thông tin với những người đang di động đã tiến triển mạnh mẽ kể từ khi Guglielm Marrconi lần đầu tiên chứng minh khả năng sóng radio có thể liên lạc liên tục với các con tàu đang chạy trên eo biển Anh, đó là vào năm 1897. Kể từ khi đó các phương pháp truyền thông không dây mới và các dịch vụ đã được con người đón nhận trên toàn thế giới.
Trong thế kỷ 21, thế giới đã chứng kiến sự bùng nổ của thông tin vô tuyến trong đó thông tin di động đóng vai trò rất quan trọng. Để đáp ứng các nhu cầu ngày càng tăng về số lượng lẫn chất lượng dịch vụ đặc biệt là dịch vụ truyền số liệu đa phương tiện công nghệ băng rộng đã ra đời. Với khả năng tích hợp nhiều dịch vụ, công nghệ băng rộng đã dần chiếm lĩnh thị trường viễn thông. Có nhiều chuẩn thông tin di động thế hệ ba được đề xuất, trong đó chuẩn WCDMA đã được ITU chấp nhận và hiện nay đang được triển khai ở một số khu vực. Hệ thống UMTS là sự phát triển tiếp theo của các hệ thống thông tin di động thế hệ hai sử dụng công nghệ TDMA như GSM, PDC, IS-136 UMTS sử dụng công nghệ CDMA đang là mục tiêu hướng tới của các hệ thống thông tin di động trên toàn thế giới, điều này cho phép thực hiện tiêu chuẩn hóa giao diện vô tuyến công nghệ truyền thông không dây trên toàn cầu.
Điều khiển công suất trong hệ thống thông tin di động là một trong những khâu quan trọng của hệ thống, hạn chế được ảnh hưởng của hiệu ứng gần xa đến chất lượng dịch vụ thoại, dung lượng của hệ thống và khả năng chống lại fading vốn là đặc trưng của môi trường di động.
Xuất phát từ những suy nghĩ như vậy nên em đã quyết định chọn đề tài: “Điều khiển công suất trong hệ thống thông tin di động thế hệ ba UMTS”. Đồ án thực hiện giới thiệu,nghiên cứu, phân tích, kỹ thuật điều khiển công suất là DSSPC và DPC nhằm tối ưu hoạt động của mạng đồng thời cải thiện chất lượng của hệ thống.
Nội dung đồ án chia làm 4 chương:
v Chương 1: Giới thiệu các hệ thống thông tin di động.
v Chương 2:Tìm hiểu mạng 3G WCDMA UMTS
v Chương 3: Điều khiển công suất trong hệ thống thông tin di động thế hệ ba UMTS
v Chương 4: Tính toán và mô phỏng
Vì thời gian có hạn cũng như còn hạn chế về kiến thức nên đồ án của em khó tránh khỏi thiếu sót. Em rất mong nhận được sự đóng góp ý kiến của thầy cô giáo và bạn bè.
Với lòng biết ơn sâu sắc, em xin chân thành cảm ơn thầy giáo NGUYỄN ĐÌNH LUYỆN cùng các thầy cô giáo trong khoa Kỹ Thuật và Công Nghệ đã nhiệt tình hướng dẫn giúp em hoàn thành đồ án này.
Em xin chân thành cảm ơn !
Quy Nhơn, tháng 6 năm 2010
130 trang |
Chia sẻ: lvcdongnoi | Lượt xem: 2770 | Lượt tải: 4
Bạn đang xem trước 20 trang tài liệu Điều khiển công suất trong hệ thống thông tin di động thế hệ ba UMTS, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
suất truyền:
Pdki = Poi - a.bmax
Lệnh giảm công suất truyền:
Pdki = Poi - a.bmin
Lệnh tăng công suất truyền:
Pdki = Poi + a.bmin
Lệnh tăng công suất truyền:
Pdki = Poi + a.bmax
Công suất nhận là tối ưu:
Pdki = Poi
Sai
Sai
Sai
Sai
Đúng
Đúng
Đúng
Đúng
Đúng
[111]
[010]
[100]
[110]
[101]
i N
Kết thúc
Sai
Đúng
Tính SIR_reali
Tính Poi
i = i+ 1
Nhập số thuê bao N, các mức SIR đích
Nhập các thông số của chương trình
Hình 3.12 Lưu đồ thuật toán điều khiển công suất theo bước động DSSPC
Như trong hình (3.12), trạm gốc phát lệnh công suất truyền (TPC: Transmit Power Command) bằng việc so sánh SIR nhận được/công suất của kênh đường lên với các ngưỡng xác định của SIR/độ dự trữ công suất.
3.6.3 Sự hoạt động của trạm di động
Đầu tiên, trạm di động nhận lệnh điều khiển công suất từ trạm gốc. Nó ghi lệnh điều khiển công suất tiếp theo vào thanh ghi lệnh. Việc thay đổi dữ liệu gốc được lưu trữ ở đây bao gồm dữ liệu về những lệnh điều khiển công suất gần đây nhất, kích cỡ bước, và tọa độ máy thu cầm tay .
Trạm di động kiểm tra giá trị của lệnh điều khiển công suất, kích cỡ bước, và thông tin hỗ trợ định vị bao gồm sự thay đổi dữ liệu gốc. Nếu lệnh điều khiển công suất hay chuỗi kích thước bước là chẵn, nghĩa là mức công suất không hoàn toàn thay đổi nhưng giữ ổn định và không có số lượng đáng kể cần thay đổi công suất truyền.
Để tính kích thước của DSS (Dynamic Step-Size) dựa vào phương trình (3.5), trạm di động xác định giá trị của toàn bộ điều khiển công suất.
Bước điều khiển công suất là kết quả kết hợp của giá trị không đổi và giá trị thay đổi của điều khiển công suất. Do đó, trạm di động điều chỉnh công suất truyền của nó bằng cách thêm DSS vào công suất tín hiệu ban đầu Po như sau :
Ptrx(dB) = Po(dB) + DSS (dB)
DSS(dB) = a. b. g , và g =
1 khi ∆SIR < 0
-1 khi ∆SIR > 0 (3.5)
Trong phương trình (3.5), α là kích thước bước cố định đã được xác định trước và β là thành phần động của DSS được định nghĩa dựa trên giá trị thực và đích của SIR tương ứng với kết nối vô tuyến. Mục đích của DSS là để bù vào sự suy giảm công suất vì kênh truyền không ổn định.
Để định nghĩa giá trị của thông số SIR nhận được và SIR đích cần phải sẵn có. Tuy nhiên, thông tin này sẵn có tại trạm gốc. Do đó, việc điều chỉnh công suất truyền đường lên có hai khả năng thực hiện :
- Thông tin liên quan đến SIR được truyền đến trạm di động bằng cách dùng tín hiệu kênh chuyên dụng hay kênh chung. Bộ phân tích dữ liệu gốc (HDLA: History Data Analyzer Logic) của trạm di động tính toán giá trị của β dựa trên bảng dò tìm (bảng 3.2).
- Giá trị của β được tính toán tại trạm gốc bằng việc dùng tiêu chuẩn được định nghĩa trong bảng dò tìm. Như một kết quả, thông tin được truyền đến trạm di động thật ra là α.β. Trong trường hợp trạm di động không cần tính tham số liên quan đến SIR, giảm bớt sự phức tạp và sự tiêu thụ pin của nó.
Trong bảng (3.2) ki = ( 0,…,kk+1 ) là số nguyên, có thể tối ưu dựa trên những phép đo thực tế liên quan đến mạng vô tuyến.
Do đó, nó có thể thay đổi phụ thuộc vào sự thay đổi thời gian thực trong chất lượng tín hiệu vì fading và đích SIR cho kênh mang yêu cầu ánh xạ bởi mạng. Trong ví dụ này các giá trị nhiều mức của SIR đích được định nghĩa như : SIR_max, SIRopt_ max, SIRopt_ min, SIR_min.
Bảng 3.2 Bảng tra cứu ứng dụng DSSPC
Tiêu chuẩn so sánh SIR
SIRopt_min SIRreal SIR max
0
X
SIRopt_max SIRreal SIRmax
K1
1
SIRreal > SIRmax
K2
1
SIRmin SIRreal SIRopt_min
K1
-1
SIRreal < SIRmin
K2
-1
Đối với 5 điều kiện căn bản trong thuật toán, sử dụng 3 bit để truyền thông tin yêu cầu giữa trạm gốc và máy di động. Có thể sử dụng 3 điều kiện khác nhau của thuật toán, để giảm số bit yêu cầu điều khiển công suất truyền TPC .
Hình (3.13) chỉ ra một ví dụ về sơ đồ khối thực hiện phương pháp điều khiển công suất ứng dụng cho đường lên. Trạm gốc nhận tín hiệu được truyền bởi trạm di động và hướng tới để giữ cường độ tín hiệu nhận được không thay đổi bằng cách gởi lệnh điều khiển công suất đến trạm di động.
Hình 3.13 Mô hình chung của DSSPC đối với điều khiển công suất đường lên
Trạm gốc chịu trách nhiệm để đo SIR nhận được và một phần của những phép đo đó yêu cầu thiết lập thông số dự trữ công suất và các đích SIR. Các phép đo được thực hiện sau máy thu phân tập RAKE, nơi kết nối nhiều nhánh khác nhau của tín hiệu nhận được. Tại khối trạm gốc, các giá trị đích và giá trị đo được của SIR được so sánh. Để xác định lệnh công suất truyền, bộ phát trạm gốc gởi các lệnh công suất phát (TPCs) đến trạm di động để tăng, giảm hay giữ công suất truyền không thay đổi.
Tại trạm di động, các lệnh điều khiển công suất được tập hợp thành một vector mà trạm di động ghi vào bộ phân tích dữ liệu gốc (HDLA). HDLA phân tích vector bit lệnh nhận được khi đưa ra giá trị thích ứng của DSS. HDLA đưa ra thành phần thích ứng của DSS dựa trên thông tin nhận được từ trạm gốc dưới dạng luồng bit TPC. Cuối cùng, phần tử điều khiển điều chỉnh công suất truyền của trạm di động dựa trên phương trình (3.5).
Các công thức tính toán
- Tỷ số tín hiệu trên nhiễu (SIR : Signal to Interference Ratio)
Theo phương thức song công FDD tín hiệu đường lên và tín hiệu đường xuống được truyền trên 2 dải thông phân biệt. Mã trải phổ dùng cho tín hiệu đường xuống từ một BS là các mã trực giao trong khi mã trải phổ đường lên hay đường xuống từ một BS khác nhau là các mã giả ngẫu nhiên.
Vì môi trường truyền sóng trong thông tin di động là môi trường đa đường nên mặc dù sử dụng các mã trực giao ở đường xuống thành phần nhiễu do tín hiệu người sử dụng khác trong cùng BS gây ra vẫn không bị triệt tiêu. Tỷ số công suất tín hiệu trên tạp âm đường lên SIR đối với một thuê bao được xác định như sau :
Trong đó SF là hệ số trãi phổ (spreading factor) , Pr là công suất thu, là hệ số giảm trực giao (0££1). Iin là nhiễu gây ra do tín hiệu cùng một BS, Iout là nhiễu gây ra do tín hiệu từ BS khác và PN là công suất nhiệt tạp âm (nhiễu nền). Đối với đường lên, không có trực giao nên Ġ = 1.
Trước khi nén phổ SIR được tính theo phương trình sau :
Sau khi nén phổ tổng công suất can nhiễu I = Iintra + Iinter +PN , vì vậy SIR được viết lại như sau :
với : I = Io . Bw
hay SIR = SF (dB) +Pr (dB) – Io – 10. lg(Bw) (dB) (3.6)
- Hệ số trải phổ
hay
(dB) (3.7)
Trong đó : Rt là tốc độ dữ liệu (Mbps)
- Khuếch đại công suất di động
Pma = Pme - Lm - Gm ( dBm ) (3.8)
Pma : công suất ra của bộ khuếch đại công suất di động (dBm)
Pme : ERP từ anten phát của MS (dBm)
Lm : suy hao cáp giữa đầu ra của bộ khuếch đại công suất và đầu vào của anten MS (dB)
Gm : tăng ích anten phát MS (dBm)
- Công suất thu ở BS trên người sử dụng
Pr = Pme + Lp + Al + Gt + Lt (dBm) (3.9)
Pr : công suất kênh lưu lượng thu tại BS phục vụ từ MS (dBm)
Lp : tổn hao truyền sóng trung bình giữa MS và BS (dB)
Al : suy hao pha dinh chuẩn lg (dB)
Gt : tăng ích anten thu BS (dB)
Lt : tổn hao conector và cáp thu của BTS (dB)
- Mật độ công suất của các MS khác ở BTS phục vụ
Iutr = Pr + 10 lg(Nt - 1) + 10 lgCa – 10 lgBw (dBm/Hz) (3.10)
Iutr : mật độ nhiễu giao thoa từ các MS khác ở BTS phục vụ (dBm/Hz)
Ca : hệ số tích cực thoại kênh lưu lượng (0,4 ÷ 0,6)
Nt : số kênh lưu lượng trong cell đang xét
Bw : độ rộng băng tần (Hz)
- Mật độ nhiễu giao thoa từ các trạm di động ở các BTS khác
Ictr = Iutr + 10. lg(1/ fr -1 ) (dBm/Hz) (3.11)
Ictr : mật độ nhiễu giao thoa từ các MS ở các BS khác (dBm/Hz)
fr : hệ số tái sử dụng tần số (0,6)
- Mật độ nhiễu giao thoa từ các MS khác tại BS đang phục vụ và từ các BS khác
Itr = 10 lg (10 0,1. Iutr + 10 0,1 Ictr ) (dBm/Hz) (3.12)
Itr : là mật độ nhiễu giao thoa từ các MS khác đến BS đang phục vụ và từ các BS khác (dBm/Hz).
- Mật độ tạp âm nhiệt
N0 = 10 lg (290 * 1,38 . 10 -23) + Nf + 30 (dBm/Hz) (3.13)
Trong đó :
No : mật độ tạp âm nhiệt tại nhiệt độ tham khảo 290 oK
Nf : hệ số tạp âm của máy thu BTS (dB)
- Mật độ phổ công suất nhiễu
I0 = 10 lg ( 10 0,1. Itr + 10 0,1. N0 ) (dBm/Hz) (3.14)
3.7 Phương pháp điều khiển công suất phân tán DPC
(Distributed Power Control)
3.7.1 Tổng quan
Đa truy nhập phân chia theo mã (CDMA) là kỹ thuật đa truy nhập sử dụng trong hệ thống thông tin di động thế hệ 3. Mạng thông tin di động thế hệ 3 tích hợp dịch vụ multimedia gồm âm thanh, dữ liệu, hình ảnh, ảnh động và một vài sự kết hợp của chúng. Các loại lưu lượng khác nhau sẽ khác nhau về tốc độ bit, tỷ lệ lỗi bit BER, độ ưu tiên truy cập. Dung lượng CDMA được giới hạn bởi nhiễu tổng cộng từ tất cả các kết nối vô tuyến. Nhiễu đa truy cập MAI (Multiple Access Interference) là nhân tố chính ảnh hưởng đến dung lượng của hệ thống, trong thiết kế việc giảm MAI sẽ làm tăng dung lượng. Một kỹ thuật hiệu quả được sử dụng để giảm MAI và đáp ứng các yêu cầu về chất lượng là điều khiển công suất truyền của người sử dụng.
Thuật toán điều khiển công suất được phân thành điều khiển phân tán và tập trung. Nhiều nghiên cứu về kỹ thuật phân tán hơn là tập trung bởi vì điều khiển công suất tập trung chịu ảnh hưởng lớn về điều khiển dữ liệu và phải chịu tình trạng mạng không được bảo vệ. Trong kỹ thuật điều khiển công suất phân tán (DPC), tại mỗi trạm sử dụng công suất truyền hiện thời của nó. Kỹ thuật phân tán cũng đơn giản hơn và sử dụng ít thông tin hơn kỹ thuật tập trung. Kỹ thuật phân tán chỉ yêu cầu đo nhiễu đường truyền tại mỗi trạm và tiếp tục truyền đến máy di động tương ứng. Tuy nhiên kỹ thuật phân tán cần nhiều thời gian hơn để tối thiểu hoá mức SIR.
Kỹ thuật điều khiển công suất sử dụng theo dạng tập trung yêu cầu thông tin về cường độ tín hiệu của tất cả các kết nối vô tuyến đang hoạt động mà không chú ý khả năng điều chỉnh công suất truyền. Phương pháp này gia tăng sự phức tạp mạng vì thông tin chi tiết trong các mạng di động nhiều ô liên quan được yêu cầu của kênh vô tuyến tập trung là không sẵn sàng trong thời gian thực.
Ngược lại, kỹ thuật điều khiển công suất phân tán không yêu cầu thông tin trạng thái tập trung tất cả các kênh riêng lẻ. Thay vào đó, nó có thể thích nghi các mức công suất nhờ sử dụng các phép đo vô tuyến cục bộ, chú ý tới thay đổi chất lượng dịch vụ đồng thời giải quyết hiệu ứng tồn tại trong hệ thống tế bào. Tuy nhiên, phương pháp này không xét đến sự liên quan giữa các kết nối mới cho QoS của các kết nối hiện hữu.
Trong hệ thống, mong muốn công suất truyền giảm đến mức tối ưu trong khi vẫn duy trì chất lượng thông tin yêu cầu, đặc biệt đối với các kết cuối di động công suất truyền được cung cấp bởi pin. DPC là một thuật toán điều khiển công suất phân tán chỉ sử dụng thông tin SIR và sử dụng kỹ thuật lặp để điều khiển công suất truyền. Thuật toán có khả năng đạt được mức SIR yêu cầu và tối ưu hoá hoạt động của mạng.
Mô hình hệ thống
Mô hình hệ thống sử dụng đối với điều khiển công suất đường lên. Giả thiết 1 trạm di động (M), J thuê bao di động trong hệ thống. Tại trạm M, tỷ số tín hiệu trên nhiễu nhận được của thuê bao thứ i là :
(3.15)
Trong đó Eb là năng lượng bit thông tin và No là mật độ phổ công suất tạp âm. Công suất truyền của thuê bao thứ i là pi được giới hạn bởi mức công suất cực đại là :
Pi≤ Pimax với 1 ≤i≤j (3.16)
Ri là tốc độ dữ liệu của thuê bao thứ i, GMi là độ lợi đường truyền giữa thuê bao thứ i và trạm M. Giá trị của GMi được giả thiết là hằng. Việc giả thiết này là hợp lý nếu thuật toán điều khiển công suất có thể hội tụ trong khoảng thời gian ngắn. W độ rộng băng tần trải phổ, (M là nhiễu nền. Do vậy, việc chính yếu của điều khiển công suất là tìm ra vector công suất dương p = (p1, p2. . . pJ) thoả mãn :
gi gT 1 iJ (3.17)
Trong đó T là mức SIR tối thiểu yêu cầu được xác định bởi mỗi dịch vụ hay môi trường BER.
3.7.3 Thuật toán điều khiển công suất phân tán DPC
Mỗi thuê bao điều khiển công suất truyền của nó trong giới hạn cực đại dựa trên thông tin mức công suất của nó và phép đo SIR. Thuật toán DPC điều khiển mức SIR của tất cả các thuê bao để đạt được SIR yêu cầu nếu có thể.
Chúng ta đề xuất thuật toán điều khiển công suất phân tán mới sử dụng tham số thay đổi từ thuật toán truyền thống để cải thiện hiệu quả của nó. Hàm công suất mới là vấn đề chính cần thiết để đạt được mức SIR tối thiểu. Nếu SIR của thuê bao trên mức cực tiểu trong suốt thời gian điều khiển công suất thì ít nhất một kết nối thuê bao-trạm gốc sẽ bị cắt. Do vậy, tốc độ hội tụ liên quan đến dung lượng hệ thống. Thuật toán có thể được mô tả như sau :
pi(0) = p
pi(n+1) (dBm) = ek (gT - gi(n)) + pi(n) (dBm) (3.18)
Trong đó k là tham số dương theo kinh nghiệm chọn k = 0,1 là tốt cho cho hầu hết các hệ thống, nếu k quá lớn tốc độ hội tụ sẽ chậm, nếu k quá nhỏ SIR sẽ dao động. Chúng ta có thể đạt được tốc độ hội tụ nhanh hơn bằng cách tối ưu hoá k. pi(0) là công suất truyền ban đầu của thuê bao, pi(n+1) là công suất truyền của thuê bao thứ i trong vòng lặp thứ n, γi(n) là SIR của thuê bao thứ i tại vòng lặp thứ n. Theo các kết quả thực nghiệm n được chọn trong khoảng 10-20 là tối ưu.
Có các trường hợp sau :
Trường hợp 1 : γi(n) < γT pi(n+1) < pi(n) (3.19)
Trường hợp 2 γi(n) > γT pi(n+1) > pi(n) (3.20)
Trường hợp 3 : γi(n) = γT pi(n+1) = pi(n) (3.21)
Mục đích chính của thuật toán này là tăng hay giảm công suất truyền của thuê bao liên quan SIRi được nhận bởi trạm M. Bằng cách điều chỉnh thông số k trong hàm điều khiển công suất, hệ thống sẽ thoả mãn các yêu cầu vận hành khác nhau. Kết quả mô phỏng thể hiện khả năng ổn định của hệ thống cao hơn các phương pháp điều khiển công suất truyền thống.
Bắt đầu
Nhập số thuê bao J
Nhập các thông số chương trình
i =1
Tính Poi
j = 0
pi(0) = Poi
j n -1
Công suất điều khiển :
pi(j +1) = ek (gT - gi( j )) + pi(j )
j = j +1
i = i+1
i J
Kết thúc
Sai
Đúng
Đúng
Sai
Hình 3.14 Lưu đồ thuật toán điều khiển công suất phân tán DPC
Kết luận chương
Điều khiển công suất trong hệ thống thông tin di động UMTS là một trong những khâu quan trọng của hệ thống. Nó hạn chế được ảnh hưởng của hiệu ứng gần xa đến chất lượng dịch vụ thoại, dung lượng của hệ thống và khả năng chống lại fading vốn là đặc trưng của môi trường di động. Chương này đã trình bày ý nghĩa của việc điều khiển công suất và phân tích một số kỹ thuật điều khiển công suất đồng thời đề xuất hai phương pháp điều khiển công suất trong hệ thống thông tin di động thế hệ ba UMTS là phương pháp điều khiển công suất theo bước động DSSPC và phương pháp điều khiển công suất phân tán DPC. Đối với phương pháp điều khiển công suất theo bước động DSSPC đã tập trung vào điều khiển công suất truyền bằng cách dùng khái niệm ngưỡng nhiều mức, các lệnh điều khiển công suất TPC. Bước động bù cho sự chậm của phương pháp điều khiển công suất cố định nhưng cũng cần sự bù nhanh của công suất truyền trong cửa sổ chấp nhận được, cân bằng sự ổn định của hệ thống. Trong khi đó, phương pháp điều khiển công suất phân tán DPC cũng dùng thông tin về tỷ số tín hiệu trên nhiễu giao thoa SIR nhưng mức ngưỡng SIR(i) được điều chỉnh cho phù hợp với từng đường truyền vô tuyến để đạt được chất lượng đường truyền tốt nhất. Do đó DPC có khả năng đạt được mức SIR yêu cầu và hệ thống hoạt động ổn định hơn các phương pháp điều khiển công suất truyền thống. Tuy nhiên DPC cần nhiều thời gian hơn để tối thiểu hoá mức SIR. Mỗi phương pháp đều có những ưu và nhược điểm riêng, tuy nhiên cả hai phương pháp đều điều chỉnh công suất truyền hiệu quả hơn các phương pháp điều khiển công suất truyền thống. Do đó cả hai phương pháp này hi vọng sẽ là cơ sở để nghiên cứu nhằm điều khiển công suất cho một số hệ thống thông tin di động thế hệ ba hiện nay.Chương tiếp theo sẽ thực hiện tính toán và mô phỏng 2 thuât toán nêu trên.
CHƯƠNG 4
KẾT QUẢ TÍNH TOÁN VÀ MÔ PHỎNG
4.1 Giới thiệu chương
Sau khi nghiên cứu hai mô hình điều khiển công suất DSSPC và DPC trong chương này sẽ đi vào tính toán cụ thể và mô phỏng kết quả của hai phương pháp điều khiển công suất sử dụng ngôn ngữ Visual Basic 6.0 . 4.2 Quỹ đường truyền vô tuyến tham khảo cho hệ thống UMTS
Quỹ đường truyền được sử dụng để tính toán vùng phủ và chất lượng cho trạm gốc và trạm di động. Các thành phần này bao gồm cả hệ số truyền lan để tính toán tổn hao đường truyền và các thông số hệ thống (công suất phát, hệ số tạp âm máy thu, hệ số khuếch đại anten, độ rộng băng tần máy thu, độ lợi xử lý và nhiễu giao thoa). Các tổn hao khác như : lỗi điều khiển công suất, truy nhập toàn nhà và nhiễu từ các nguồn khác.
Bảng 4.1 Quỹ đường truyền cho tham khảo cho dịch vụ thoại 12,2 Kbps
Máy phát MS
Hệ số khuếch đại anten phát của MS (dB)
2
Tổn hao cáp thu và bộ lọc máy thu MS (dBm)
-3
Công suất bức xạ ERP của MS (dBm)
21
Máy thu trạm gốc
Hệ số khuếch đại anten trạm gốc BS (dB)
18
Hệ số tạp âm máy thu trạm gốc (dB)
5
Suy hao đường truyền cho phép đối với vùng phủ của ô (dB)
-141,9
Suy hao pha đinh log chuẩn (dB)
-7,3
Tổn hao cáp và bộ lọc máy phát BS (dBm)
-2
Hệ số tích cực thoại
67%
Hệ số tái sử dụng tần số
0,65
Độ rộng băng tần (MHz )
5
Bảng 4.2 Quỹ đường truyền tham khảo cho dịch vụ số liệu thời gian thực 144 Kbps
Máy phát MS
Hệ số khuếch đại anten phát của MS (dB) (Gm )
2
Tổn hao cáp thu và bộ lọc máy thu MS (dBm) (Lm )
-3
Công suất bức xạ ERP của MS (dBm) (Pme )
26
Máy thu trạm gốc
Hệ số khuếch đại anten trạm gốc BS (dB) (Gt )
18
Hệ số tạp âm máy thu trạm gốc (dB) (Nf)
5
Suy hao đường truyền cho phép đối với vùng phủ của ô (dB) ( Lp )
-133,8
Suy hao pha đinh log chuẩn (dB) (Al )
-4,2
Tổn hao cáp và bộ lọc máy phát BS (dBm) (Lt)
-2
Hệ số tích cực thoại
100%
Hệ số tái sử dụng tần số (fr)
0,65
Độ rộng băng tần (MHz ) (Bw)
5
Bảng 4.3 Quỹ đường truyền tham khảo cho dịch vụ số liệu phi thoại 384 Kbps
Máy phát MS
Hệ số khuếch đại anten phát của MS (dB)
2
Tổn hao cáp thu và bộ lọc máy thu MS (dBm)
-3
Công suất bức xạ ERP của MS (dBm)
18
Máy thu trạm gốc
Hệ số khuếch đại anten trạm gốc BS (dB)
18
Hệ số tạp âm máy thu trạm gốc (dB)
5
Suy hao đường truyền cho phép đối với vùng phủ của ô (dB)
-139,9
Suy hao pha đinh log chuẩn (dB)
-7,3
Tổn hao cáp và bộ lọc máy phát BS (dBm)
-2
Hệ số tích cực thoại
100%
Hệ số tái sử dụng tần số
0,65
Độ rộng băng tần (MHz )
5
Phương pháp tính toán cụ thể
Dựa vào quỹ đường truyền tham khảo cho dịch vụ số liệu thời gian thực 144 Kbps (bảng 4.2) ta tính được cụ thể tỷ số tín hiệu trên nhiễu SIR còn các mức điều chỉnh công suất truyền của hai phương pháp điều khiển công suất được thực hiện trong chương trình mô phỏng.
Khuếch đại công suất di động
Pma = Pme - Lm - Gm = 26 - (- 3) - 2 = 27 (dBm)
Công suất thu ở BS trên người sử dụng
Pr = Pme + Lp + Al + Gt + Lt
= 26 - 133,8 - 4,2 + 18 - 2 = -96 (dBm)
Tải lưu lượng
Lưu lượng của 1 thuê bao : (Erl)
Trong đó A : là lưu lượng thông tin trên một người sử dụng (Erlang)
n : là số cuộc gọi trung bình trên giờ người sử dụng
T : là thời gian trung bình cho một cuộc gọi (s)
Thời gian trung bình của 1 cuộc gọi là T = 90 (s)
Lưu lượng của 45 thuê bao/1cell = 45. 0,025 = 1,125 (Erl)
Cấp bậc phục vụ GoS = 2%. Sử dụng bảng Erlang B (phụ lục) ta xác định được số kênh Nt = 4.
Mật độ công suất của các MS khác ở BTS phục vụ
Iutr = Pr + 10 lg(Nt - 1) + 10 lgCa – 10 lgBw
= -96 + 10 lg(4 - 1) + 10 lg(0,6) – 10 lg3840000
= -159,29 (dBm/Hz)
Mật độ nhiễu giao thoa từ các trạm di động ở các BTS khác
Ictr = Iutr + 10. lg(1/ fr -1 )
= -159,29 + 10. lg(1/ 0,65 -1 )
= -161,98 (dBm/Hz)
Mật độ nhiễu giao thoa từ các MS khác tại BS đang phục vụ và từ các BS khác
Itr = 10 lg (10 0,1. Iutr + 10 0,1. Ictr )
= 10 lg (10 0,1. (-159,29) + 10 0,1 . (-161,98) )
= -157,42 (dBm/Hz)
Mật độ tạp âm nhiệt
N0 = 10 lg (290 * 1,38 . 10 -23) + Nf + 30
= 10 lg (290 * 1,38 . 10 -23) + 5 + 30
= -168,98 (dBm/Hz)
Mật độ phổ công suất nhiễu
I0 = 10 lg ( 10 0,1. Itr + 10 0,1. N0 )
= 10 lg ( 10 0,1.(-157,42) + 10 0,1.(-168,98))
= -157,13 (dBm/Hz)
Hệ số trải phổ
hay (dB)
Tỷ số tín hiệu trên nhiễu SIR
hay SIR = SF (dB) + Pr (dB) – Io – 10. lg(Bw)
= 14,25 - 96 - (-157,13) – 10. lg(3840000)
= 9,54 (dB)
4.4 Kết quả mô phỏng
Form giới thiệu
Hình 4.1. Hiển thị form giới thiệu
Form nhập số liệu
Hình 4.2. Hiển thị form nhập số liệu
Form kết quả tính toán
Hình 4.3. Hiển thị form kết quả tính toán
Form kết quả mô phỏng bằng đồ thị hình dây
Hình 4.4. Kết quả mô phỏng bằng đồ thị hình dây
Form kết quả mô phỏng bằng đồ thị điểm
Hình 4.5. Kết quả mô phỏng bằng đồ thị điểm
Nhận xét:
Điều khiển công suất là một vấn đề rất quan trọng đem lại lợi thế to lớn cho hệ thống thông tin di động trong việc nâng cao dung lượng, chất lượng của hệ thống và hạn chế can nhiễu mà không đòi hỏi nâng cấp công nghệ.
Kỹ thuật điều khiển công suất theo bước động DSSPC dựa trên tham số tỷ số tín hiệu trên nhiễu giao thoa SIR để điều khiển công suất truyền bằng cách dùng khái niệm ngưỡng nhiều mức. Tốc độ điều chỉnh công suất cũng rất nhanh. Do đó phương pháp này có khả năng chi phối linh hoạt sự thay đổi fading của tín hiệu truyền hơn các phương pháp truyền thống.
Kỹ thuật điều khiển công suất phân tán DPC không yêu cầu thông tin trạng thái tập trung tất cả các kênh riêng lẻ. Thay vào đó, nó có thể thích nghi các mức công suất nhờ sử dụng các phép đo vô tuyến cục bộ, chú ý tới thay đổi chất lượng dịch vụ đồng thời giải quyết hiệu ứng tồn tại trong hệ thống tế bào. Tuy nhiên, phương pháp này không xét đến sự liên quan giữa các kết nối mới cho QoS của các kết nối hiện hữu và cần nhiều thời gian hơn để tối ưu hoá mức SIR.
Trong chương này đã tính toán cụ thể tỷ số tín hiệu trên nhiễu SIR, các mức công suất điều chỉnh và kết quả được thể hiện qua chương trình mô phỏng. Tuy nhiên trong thực tế tính toán điều khiển công suất phải tính đến sự ảnh hưởng của các tham số khác nên hai phương pháp điều khiển này hy vọng sẽ là cơ sở nghiên cứu nhằm điều khiển công suất cho một số hệ thống thông tin di động hiện nay. Ngoài ra các tham số mô phỏng chỉ là các tham số chọn lọc từ các bài báo nghiên cứu nên các kết quả tính chưa chính xác với thực tế.
4.5 Kết luận chương
Dựa vào các thông số được chọn lọc kỹ từ các tài liệu, chương này đã tính toán cụ thể được tỷ số tín hiệu trên nhiễu SIR, công suất trước khi điều khiển và công suất điều chỉnh tối ưu của hai thuật toán điều khiển công suất DSSPC và DPC. Các kết quả đó được biểu diễn dưới dạng đồ thị thể hiện khả năng điều chỉnh công suất truyền của hai phương pháp là khác nhau. Từ đó thấy được khả năng tối ưu và độ ổn định của cả hai phương pháp điều khiển công suất so với các phương pháp điều khiển công suất truyền thống.
KẾT LUẬN CHUNG
Quá trình nghiên cứu và thực hiện đồ án đã thu được một số kết quả như sau:
- Về lý thuyết: Đồ án đưa ra những kiến thức chung nhất và cơ bản nhất về thông tin di động cũng như xu hướng phát triển lên thế hệ ba. Trong đó dành nhiều thời gian cho việc tìm hiểu về hệ thống 3G WCDMA UMTS và việc điều khiển công suất trong hệ thống thông tin di động thế hệ 3 UMTS. Từ đó thấy rằng việc điều khiển công suất đóng góp phần quan trọng cho hệ thống hoạt động hoàn hảo hơn. Trong đồ án đã trình bày phương pháp điều khiển công suất theo bước động DSSPC và phương pháp điều khiển công suất phân tán DPC.
- Về thực nghiệm: Đã học hỏi, thực hành với Visual Basic 6.0 xây dựng được
các thuật toán tính toán, mô phỏng cho thuật toán điều khiển công suất.
Trong thời gian nghiên cứu tiếp theo,tôi hy vọng có thể thực hiện được các tính toán cụ thể hơn và tối ưu hơn nữa.
TÀI LIỆU THAM KHẢO
Tài liệu tiếng Việt
[1] TS. Nguyễn Phạm Anh Dũng (2004), Giáo trình Thông tin di động thế hệ ba, Học Viện Công nghệ Bưu chính Viễn thông , Nhà xuất bản Bưu Điện.
[2] TS Nguyễn Phạm Anh Dũng (7-2003), cdmaOne và cdma2000, Tập 1, Nhà xuất bản Bưu Điện.
[3] TS. Nguyễn Phạm Anh Dũng (2007), Bài giảng Thông tin di động, cho đào tạo từ xa, Học Viện Công nghệ Bưu chính Viễn thông .
[4] TS. Nguyễn Phạm Anh Dũng,bài giảng khóa học Công nghệ 3G WCDMA UMTS.
[5] KS Nguyễn Thanh Hải, Bài báo Điều khiển công suất và quản lý tài nguyên vô tuyến đối với hệ thống thông tin vô tuyến CDMA đa phương tiện.
[6] Ngô Hán Chiêu, Trần Quý, Ngô Duy Tân, Bài báo Điều khiển công suất trong thông tin di động DS/CDMA.
[7] KS Lê Xuân Dũng, Bài báo Một số thuật toán điều khiển công suất cho hệ thống tế bào CDMA.
Tài liệu tiếng Anh
[8] Clint Smith, P.E, Daniel Collins, 3G Wireless Network, McGraw – Hill.
[9] Siamak Naghian, Matti Rintamaki, Ramin Baghaie, Dynamic Step-size Power Control in UMTS.
[10] Ling Lv, Shihua Zhu, Yonggang Wang, A Distributed Power Control Algorithm for Wideband CDMA Cellular Mobile Systems, Department of Information & Communication Engineering Xi’an’Jiaotong.
[11] Dejan M. Novakovic and Miroslav L. Dukic, Belgrade, Yugoslavia, Faculity of Electrical Engineering, Evolution of the Power Control Techniques for DS-CDMA toward 3G Wireless Communication Systems, IEEE Communication Surveys .
PHỤ LỤC
Bảng tra cứu tải lưu lượng hệ thống tính theo Erlang mô hình B
N : Kênh điều khiển
kênh
Cấp phục vụ
N
0.002
0.005
0.008
0.010
0.015
0.020
0.025
0.030
0.050
0.100
1
0.002
0.005
0.008
0.010
0.015
0.020
0.026
0.031
0.053
0.111
2
0.065
0.105
0.135
0.153
0.190
0.222
0.254
0.282
0.381
0.595
3
0.249
0.349
0.418
0.455
0.535
0.602
0.661
0.715
0.899
1.271
4
0.535
0.701
0.810
0.869
0.992
1.092
1.180
1.259
1.525
2.045
5
0.900
1.132
1.281
1.361
1.524
1.657
1.772
1.875
2.218
2.881
6
1.325
1.622
1.809
1.909
2.112
2.276
2.417
2.543
2.960
3.758
7
1.798
2.157
2.382
2.501
2.742
2.935
3.102
3.250
3.738
4.666
8
2.311
2.730
2.990
3.128
3.405
3.627
3.817
3.987
4.543
5.597
9
2.855
3.333
3.627
3.783
4.095
4.345
4.558
4.748
5.370
6.546
10
3.427
3.961
4.289
4.461
4.807
5.084
5.320
5.529
6.216
7.511
11
4.022
4.610
4.971
5.160
5.539
5.842
6.099
6.328
7.076
8.487
12
4.637
5.279
5.671
5.876
6.287
6.615
6.894
7.141
7.950
9.474
13
5.270
5.964
6.386
6.607
7.049
7.402
7.701
7.967
8.835
10.470
14
5.919
6.663
7.115
7.352
7.824
8.200
8.520
8.803
9.730
11.473
15
6.582
7.376
7.857
8.108
8.610
9.010
9.349
9.650
10.633
12.484
16
7.258
8.100
8.609
8.875
9.406
9.828
10.188
10.505
11.544
13.500
17
7.946
8.834
9.371
9.652
10.211
10.656
11.034
11.368
12.461
14.522
18
8.644
9.578
10.143
10.437
11.024
11.491
11.888
12.238
13.385
15.548
19
9.351
10.331
10.922
12.230
11.845
12.339
12.748
13.115
14.315
16.579
20
10.068
11.092
11.709
12.031
12.672
13.182
13.615
13.997
15.249
17.613
21
10.793
11.860
12.503
12.838
13.506
14.036
14.487
14.885
16.189
18.651
22
11.525
12.635
13.303
13.651
14.345
14.896
15.364
15.778
17.132
19.692
23
12.265
13.416
14.110
14.470
15.190
15.761
16.246
16.675
18.080
20.737
24
13.011
14.204
14.922
15.295
16.040
16.631
17.133
17.577
19.031
21.784
25
13.763
14.997
15.739
16.125
16.894
17.505
18.024
18.483
19.985
22.833
26
14.522
15.795
16.561
16.959
17.753
18.383
18.918
19.392
20.943
23.885
27
15.285
16.598
17.387
17.797
18.616
19.265
19.817
20.305
21.904
24.939
28
16.054
17.406
18.218
18.640
19.482
20.150
20.719
21.221
22.867
25.995
29
16.828
18.218
19.053
19.487
20.352
21.039
21.623
22.140
23.833
27.053
30
17.606
19.034
19.891
20.337
21.226
21.932
22.531
23.062
24.802
28.113
31
18.389
19.854
20.734
21.193
22.103
22.827
23.442
23.987
25.773
29.174
32
19.176
20.678
21.580
22.048
22.983
23.725
24.356
24.914
26.746
30.237
33
19.966
21.505
22.429
22.909
23.866
24.626
25.272
25.844
27.721
31.301
34
20.761
22.336
23.281
23.772
24.751
25.529
26.191
26.776
28.698
32.367
35
21.559
23.169
24.136
24.638
25.640
26.435
27.112
27.711
29.677
33.434
36
22.361
24.006
24.994
25.507
26.530
27.343
28.035
28.647
30.657
34.503
37
23.166
24.846
25.854
26.378
27.424
28.254
28.960
29.585
31.640
35.572
38
23.974
25.689
26.718
27.252
28.319
29.166
29.887
30.526
32.624
36.643
39
24.785
26.534
27.583
28.129
29.217
30.081
30.816
31.468
33.609
37.715
40
25.599
27.382
28.451
29.007
30.116
30.997
31.747
32.412
34.596
38.787
41
26.416
28.232
29.322
29.888
31.018
31.916
32.680
33.357
35.584
39.861
42
27.235
29.085
30.194
30.771
31.922
32.836
33.615
34.305
36.574
40.936
43
28.057
29.940
31.069
31.656
32.827
33.758
34.551
35.253
37.565
42.011
44
28.882
30.797
31.946
32.543
33.735
34.682
35.488
36.203
38.557
43.088
45
29.708
31.656
32.824
33.432
34.644
35.607
36.428
37.155
39.550
44.165
46
30.538
32.517
33.705
34.322
35.554
36.534
37.368
38.108
40.545
45.243
47
31.369
33.381
34.587
35.215
36.466
37.462
38.310
39.062
41.540
46.322
48
32.203
34.246
35.471
36.109
37.380
38.392
39.254
40.018
42.537
47.401
49
33.039
35.113
36.357
37.004
38.296
39.323
40.198
40.975
43.534
48.481
50
33.876
35.982
37.245
37.901
39.212
40.255
41.144
41.933
44.533
49.562
51
34.716
36.852
38.134
38.800
40.130
41.189
42.091
42.892
45.533
50.644
52
35.558
37.724
39.024
39.700
41.050
42.124
43.040
43.852
46.533
51.726
53
36.401
38.598
39.916
40.602
41.971
43.060
43.989
44.813
47.534
52.808
54
37.247
39.474
40.810
41.505
42.893
43.997
44.940
45.776
48.536
53.891
55
38.094
40.351
41.705
42.409
43.816
44.936
45.891
46.739
49.539
54.975
56
38.942
41.229
42.601
43.315
44.740
45.875
46.844
47.703
50.543
56.059
57
30.793
42.109
43.499
44.222
45.666
46.816
47.797
48.669
51.548
57.144
58
40.645
42.990
44.398
45.130
46.593
47.758
48.752
49.635
52.553
58.229
59
41.498
43.873
45.298
46.039
47.521
48.700
49.707
50.602
53.559
59.315
60
42.353
44.757
46.199
46.950
48.449
49.644
50.664
51.570
54.566
60.401
61
43.210
45.642
47.102
47.861
49.379
50.589
51.621
52.539
55.573
61.488
62
44.068
46.528
48.005
48.774
50.310
51.534
52.579
53.508
56.581
62.575
63
44.927
47.416
48.910
49.688
51.242
52.481
53.538
54.478
57.590
63.663
64
45.788
48.305
49.816
50.603
52.175
53.428
54.498
55.450
58.599
64.750
65
46.650
49.195
50.723
51.518
53.109
54.376
55.459
56.421
56.609
65.839
66
47.513
50.086
51.631
52.435
54.043
55.325
56.420
57.394
60.619
66.927
67
48.378
50.978
52.540
53.353
54.979
56.275
57.383
58.367
61.630
68.016
68
49.243
51.872
53.450
54.272
55.915
57.226
58.346
59.341
62.642
69.106
69
50.110
52.766
54.361
55.191
56.852
58.177
59.309
60.316
63.654
70.196
70
50.979
53.662
55.273
56.112
57.790
59.129
60.274
61.291
64.667
71.286
71
51.848
54.558
56.186
57.033
58.729
60.082
61.239
62.267
65.680
72.376
72
52.718
55.455
57.099
57.956
59.669
61.036
62.204
63.244
66.694
73.467
73
53.590
56.354
58.014
58.879
60.609
61.990
63.171
64.221
67.708
74.558
74
54.463
57.253
58.929
59.803
61.550
62.945
64.138
65.199
68.723
75.649
75
55.337
58.153
59.846
60.728
62.492
63.900
65.105
66.177
69.738
76.741
76
56.211
59.054
60.763
61.653
63.434
64.857
66.073
67.156
70.753
77.833
77
57.087
59.956
61.681
62.579
64.378
65.814
67.042
68.136
71.769
78.925
78
57.964
60.859
62.600
63.506
65.322
66.771
68.012
69.116
72.786
80.018
79
58.842
61.763
63.519
64.434
66.266
67.729
68.982
70.096
73.803
81.110
80
59.720
62.668
64.439
65.363
67.211
68.688
69.952
71.077
74.820
82.203
81
60.600
63.573
65.360
66.292
68.157
69.647
70.923
72.059
75.838
83.297
82
61.480
64.479
66.282
67.222
69.104
70.607
71.895
73.041
76.856
84.390
83
62.362
65.386
67.204
68.152
70.051
71.568
72.867
74.024
77.874
85.484
84
63.244
66.294
68.128
69.084
70.998
72.529
73.839
75.007
78.893
86.578
85
64.127
67.202
69.051
70.016
71.947
73.490
74.813
75.990
79.912
87.672
86
65.011
68.111
69.976
70.948
72.896
74.452
75.786
76.974
80.932
88.767
87
65.896
69.021
70.901
71.881
73.845
75.415
76.760
77.959
81.952
89.861
88
66.782
69.932
71.827
72.815
74.795
76.378
77.735
78.944
82.972
90.956
89
67.669
70.843
72.753
73.749
75.745
77.342
78.710
79.929
83.993
92.051
90
68.556
71.755
73.680
74.684
76.696
78.306
79.685
80.915
85.014
93.146
91
69.444
72.668
74.608
75.620
77.648
79.271
80.661
81.901
86.035
94.242
92
70.333
73.581
75.536
76.556
78.600
80.236
81.638
82.888
87.057
95.338
93
71.222
74.495
76.465
77.493
79.553
81.201
82.614
83.875
88.079
96.434
94
72.113
75.410
77.394
78.430
80.506
82.167
83.592
84.862
89.101
97.530
95
73.004
76.325
78.324
79.368
81.459
83.133
84.569
85.850
90.123
98.626
96
73.895
77.241
79.255
80.306
82.413
84.100
85.547
86.838
91.146
99.722
97
74.788
78.157
80.186
81.245
83.368
85.068
86.526
87.826
92.169
100.819
98
75.681
79.074
81.117
82.184
84.323
86.035
87.504
88.815
93.193
101.916
99
76.575
79.992
82.050
83.124
85.278
87.003
88.484
89.804
94.216
103.013
100
77.469
80.910
82.982
84.064
86.234
87.972
89.463
90.794
95.240
104.110
Mã lệnh chương trình
Option Explicit
Dim a() As Double
Dim t() As Integer
Dim tongLuuLuong As Double
Dim Rt() As Double
Dim Pme() As Double
Dim Pma() As Double
Dim SF() As Double
Dim Pcu() As Double
Dim Iutr() As Double
Dim Ictr() As Double
Dim Itr() As Double
Dim Io() As Double
Dim SIRreal() As Double
Dim Pdk() As Double
Dim Po() As Double
Dim Pn() As Double
Dim Pn1() As Double
Dim gamaI() As Double
Dim i As Integer
Dim l As Integer
Dim gamaT As Double
Dim ERL() As Double
Dim kenhNt As Integer
Dim Gm As Integer
Dim Lp As Double
Dim Al As Double
Dim Ca As Double
Const Lm As Integer = -3
Const Gt As Integer = 18
Const Lt As Double = -2
Const Bw As Double = 3.84
Const fr As Double = 0.65
Const Nf As Integer = 5
Const aa As Double = 0.5
Const b1 As Double = 1
Const b2 As Double = 2
Const SIRMax = 33
Const SIROptMax = 27
Const SIROptMin = 19
Const SIRMin = 8
Const k = 0.1
Const EbNo1 = 5
Const EbNo2 = 1.5
Const EbNo3 = 1
Dim n As Integer
Public Function Rnd1(Lower As Double, Upper As Double) As Double
On Error GoTo LocalError
Randomize
Rnd1 = CLng((Upper - Lower + 1) * Rnd + Lower)
Exit Function
LocalError:
Rnd1 = 1
End Function
Private Function log10(x As Double) As Double
log10 = Log(x) / Log(10)
End Function
Private Function getSub(x As String) As String
Dim Index
Index = InStr(x, ".")
getSub = Left(x, Index + 4)
End Function
Private Function dBtodBm(x As Double) As Double
dBtodBm = 10 * Log(Exp((x / 10) * Log(10)) * 1000) / Log(10)
End Function
Private Sub Tinh()
Dim n1 As Integer
'**************************************
'Bang ERLANG B chon GoS = 0.05
ERL(0) = 0.053
ERL(1) = 0.381
ERL(2) = 0.899
ERL(3) = 1.525
ERL(4) = 2.218
ERL(5) = 2.96
ERL(6) = 3.738
ERL(7) = 4.543
ERL(8) = 5.37
ERL(9) = 6.216
ERL(10) = 7.076
ERL(11) = 7.95
ERL(12) = 8.835
ERL(13) = 9.73
ERL(14) = 10.633
ERL(15) = 11.544
ERL(16) = 12.461
ERL(17) = 13.385
ERL(18) = 14.315
ERL(19) = 15.249
ERL(20) = 16.189
ERL(21) = 17.132
ERL(22) = 18.08
ERL(23) = 19.031
ERL(24) = 19.985
ERL(25) = 20.943
ERL(26) = 21.904
ERL(27) = 22.867
ERL(28) = 23.833
ERL(29) = 24.802
ERL(30) = 25.773
ERL(31) = 25.746
ERL(32) = 26.721
ERL(33) = 28.698
ERL(34) = 29.677
ERL(35) = 30.657
ERL(36) = 31.64
ERL(37) = 32.624
ERL(38) = 33.609
ERL(39) = 34.596
ERL(40) = 35.584
ERL(41) = 36.574
ERL(42) = 37.565
ERL(43) = 38.557
ERL(44) = 39.55
ERL(45) = 40.545
ERL(46) = 41.54
ERL(47) = 42.537
ERL(48) = 43.534
ERL(49) = 44.533
ERL(50) = 45.533
ERL(51) = 46.533
ERL(52) = 47.534
ERL(53) = 48.536
ERL(54) = 49.539
ERL(55) = 50.543
ERL(56) = 51.548
ERL(57) = 52.553
ERL(58) = 53.559
ERL(59) = 54.566
ERL(60) = 55.573
ERL(61) = 56.581
ERL(62) = 57.59
ERL(63) = 58.599
ERL(64) = 56.609
ERL(65) = 60.619
ERL(66) = 61.63
ERL(67) = 62.642
ERL(68) = 63.654
ERL(69) = 64.667
ERL(70) = 65.68
ERL(71) = 66.694
ERL(72) = 67.708
ERL(73) = 68.723
ERL(74) = 69.38
ERL(75) = 70.753
ERL(76) = 71.769
ERL(77) = 72.786
ERL(78) = 73.803
ERL(79) = 74.82
ERL(80) = 75.838
ERL(81) = 76.856
ERL(82) = 77.874
ERL(83) = 78.893
ERL(84) = 79.912
ERL(85) = 80.932
ERL(86) = 81.952
ERL(87) = 82.972
ERL(88) = 83.993
ERL(89) = 85.014
ERL(90) = 86.035
ERL(91) = 87.057
ERL(92) = 88.079
ERL(93) = 89.101
ERL(94) = 90.123
ERL(95) = 91.146
ERL(96) = 92.169
ERL(97) = 93.193
ERL(98) = 94.216
ERL(99) = 95.24
'********************************************
'Tính tổng lưu lượng
n1 = 1
tongLuuLuong = 0
For i = 1 To Val(TxtN.Text)
a(i) = n1 * t(i) / 3600
tongLuuLuong = tongLuuLuong + a(i)
Next i
'********************************************
'Tinh số kênh
Dim temp1 As Double
Dim temp2 As Double
Dim vt As Integer
kenhNt = 0
vt = 0
temp1 = Abs(ERL(0) - tongLuuLuong)
For i = 1 To 99
temp2 = Abs(ERL(i) - tongLuuLuong)
If (temp1 > temp2) Then
temp1 = temp2
vt = i
End If
Next i
kenhNt = vt + 1
'********************************************
'Tính SIR_real
Dim No As Double
No = 10 * log10(290 * 1.38 * Exp(-23 * Log(10))) + Nf + 30
For i = 1 To Val(TxtN.Text)
SF(i) = 10 * log10(3.84 / Rt(i))
If Rt(i) = 144 Then
Lp = -81.9
Al = -4.2
Gm = 2
Ca = 1
ElseIf Rt(i) = 384 Then
Lp = -84.5
Al = -7.3
Gm = 2
Ca = 1
Else
Lp = -72.8
Al = -7.3
Gm = 0
Ca = 0.67
End If
Pma(i) = Pme(i) - Lm - Gm
Pcu(i) = Pme(i) + Lp + Al + Gt + Lt
Iutr(i) = Pcu(i) + 10 * log10(kenhNt - 1) + 10 * log10(Ca) - 10 * log10(Bw)
Ictr(i) = Iutr(i) + 10 * log10(1 / fr - 1)
Itr(i) = 10 * log10(Exp(0.1 * Iutr(i) * Log(10)) + Exp(0.1 * Ictr(i) * Log(10)))
Io(i) = 10 * log10(Exp(0.1 * Itr(i) * Log(10)) + Exp(0.1 * No * Log(10)))
SIRreal(i) = SF(i) - Io(i) - 10 * log10(Bw)
Next i
'*************************************************
'Phương pháp DSSPC
For i = 1 To Val(TxtN.Text)
If SIRreal(i) > SIRMax Then
Pdk(i) = Pma(i) - aa * b2
ElseIf (SIRreal(i) >= SIROptMax) And (SIRreal(i) <= SIRMax) Then
Pdk(i) = Pma(i) - aa * b1
ElseIf (SIRreal(i) >= SIROptMin) And (SIRreal(i) < SIROptMax) Then
Pdk(i) = Pma(i)
ElseIf (SIRreal(i) >= SIRMin) And (SIRreal(i) < SIROptMin) Then
Pdk(i) = Pma(i) + aa * b1
ElseIf SIRreal(i) < SIRMin Then
Pdk(i) = Pma(i) + aa * b2
End If
Po(i) = Pma(i)
Next i
'Phương pháp DPC
For i = 1 To Val(TxtN.Text)
If Rt(i) = 144 Then
gamaT = EbNo2 + 10 * log10(Rt(i) / 3840)
ElseIf Rt(i) = 384 Then
gamaT = EbNo3 + 10 * log10(Rt(i) / 3840)
Else: gamaT = EbNo1 + 10 * log10(Rt(i) / 3840)
End If
Pn(1) = Pma(i)
For l = 1 To Val(TxtN.Text) - 1
gamaI(l) = SIRreal(i)
Pn(l + 1) = Pn(l) + Exp(k * (dBtodBm(gamaT) - dBtodBm(gamaI(i))))
Pn1(i) = Pn(10)
Next l
Next i
Dim j As Integer
Dim tt As Double
For i = 1 To Val(TxtN.Text) - 1
For j = i + 1 To Val(TxtN.Text)
If SIRreal(i) > SIRreal(j) Then
tt = SIRreal(i)
SIRreal(i) = SIRreal(j)
SIRreal(j) = tt
End If
If Po(i) < Po(j) Then
tt = Po(i)
Po(i) = Po(j)
Po(j) = tt
End If
If Pdk(i) < Pdk(j) Then
tt = Pdk(i)
Pdk(i) = Pdk(j)
Pdk(j) = tt
End If
If Pn1(i) < Pn1(j) Then
tt = Pn1(i)
Pn1(i) = Pn1(j)
Pn1(j) = tt
End If
Next j
Next i
End Sub
Private Sub cmbRt_Click()
If cmbRt.Text = 12.2 Then
Txt1.Text = 0
Txt2.Text = -3
Txt3.Text = 21
Txt4.Text = 18
Txt5.Text = 5
Txt6.Text = -141.9
Txt7.Text = -7.3
Txt8.Text = -2
Txt9.Text = 0.67
Txt10.Text = 0.65
Txt11.Text = 5
ElseIf cmbRt.Text = 144 Then
Txt1.Text = 2
Txt2.Text = -3
Txt3.Text = 26
Txt4.Text = 18
Txt5.Text = 5
Txt6.Text = -133.8
Txt7.Text = -4.2
Txt8.Text = -2
Txt9.Text = 1
Txt10.Text = 0.65
Txt11.Text = 5
Else
Txt1.Text = 2
Txt2.Text = -3
Txt3.Text = 18
Txt4.Text = 18
Txt5.Text = 5
Txt6.Text = -139.9
Txt7.Text = -7.3
Txt8.Text = -2
Txt9.Text = 1
Txt10.Text = 0.65
Txt11.Text = 5
End If
End Sub
Private Sub cmdL1KetQua_Click()
Grid1.Row = 0
Grid1.Col = 0
Grid1.Text = " SIR(I)"
Grid1.Row = 0
Grid1.Col = 1
Grid1.Text = "KET QUA "
Call Startva
For i = 1 To (Val(TxtN.Text))
Grid1.Rows = i + 1
Grid1.Row = i
Grid1.Col = 0
Grid1.Text = "SIR[" & Trim(Str(i - 1)) & "]" & "="
Grid1.Col = 1
Grid1.Text = Round(SIRreal(i), 4)
Next i
End Sub
Private Sub cmdL1Xoa_Click()
For i = 1 To (Val(TxtN.Text))
Grid1.Rows = i + 1
Grid1.Row = i
Grid1.Col = 0
Grid1.Text = " "
Grid1.Col = 1
Grid1.Text = " "
Next i
End Sub
Private Sub cmdL2KetQua_Click()
Grid2.Row = 0
Grid2.Col = 0
Grid2.Text = " Po(i)"
Grid2.Row = 0
Grid2.Col = 1
Grid2.Text = " KET QUA "
For i = 1 To (Val(TxtN.Text))
Grid2.Rows = i + 1
Grid2.Row = i
Grid2.Col = 0
Grid2.Text = " Po[" & Trim(Str(i - 1)) & "]" & "="
Grid2.Col = 1
Grid2.Text = Po(i)
Next i
End Sub
Private Sub cmdL2Xoa_Click()
For i = 1 To (Val(TxtN.Text))
Grid2.Rows = i + 1
Grid2.Row = i
Grid2.Col = 0
Grid2.Text = " "
Grid2.Col = 1
Grid2.Text = " "
Next i
End Sub
Private Sub cmdL3KetQua_Click()
Grid3.Row = 0
Grid3.Col = 0
Grid3.Text = " Pdk(i) "
Grid3.Row = 0
Grid3.Col = 1
Grid3.Text = " DSSPC "
Grid3.Row = 0
Grid3.Col = 2
Grid3.Text = " DPC "
For i = 1 To (Val(TxtN.Text))
Grid3.Rows = i + 1
Grid3.Row = i
Grid3.Col = 0
Grid3.Text = "PDK[" & Trim(Str(i - 1)) & "]" & "= "
Grid3.Col = 1
Grid3.Text = Pdk(i)
Grid3.Col = 2
Grid3.Text = Round(Pn1(i), 3)
Next i
End Sub
Private Sub putPixel1(x, y, mau As Byte)
graph.Circle (391, 279), 1.6, RGB(255, 0, 0)
graph.Circle (396, 284), 1.6, RGB(255, 0, 0)
End Sub
Private Sub putPixel(x, y, mau As Byte)
Dim CX As Double
Dim CY As Double
Dim delx As Double
Dim dely As Double
Dim x1 As Double
Dim y1 As Double
Dim j As Double
CX = 0
CY = 0
delx = 0
dely = 0
x1 = 0
y1 = 0
If (x < 6) Or (y < 22) Then Exit Sub
For i = 1 To (x \ 1) - 6 'vi truc x bat dau tu 6
x1 = x1 + 31.825
Next i
CX = x1 + (x - x \ 1) * 31.825
For i = 1 To (y \ 1) - 22 'vi truc y bat dau tu 22
y1 = y1 + 21.407
Next i
CY = y1 + (y - y \ 1) * 21.407
CY = graph.ScaleHeight * (1#) - CY
If mau = 1 Then
graph.Circle (CX, CY), 1.6, RGB(255, 0, 0)
ElseIf mau = 2 Then
graph.Circle (CX, CY), 1.6, RGB(0, 0, 255)
Else
graph.Circle (CX, CY), 1.6, RGB(0, 255, 0)
End If
End Sub
Private Sub cmdL4BieuDo_Click()
picBieuDo.Visible = False
graph.Visible = True
Dim y As Double
For y = 1 To Val(TxtN.Text)
Call putPixel(SIRreal(y), Po(y), 1)
Call putPixel(SIRreal(y), Pdk(y), 2)
Call putPixel(SIRreal(y), Pn1(y), 3)
Next y
End Sub
Private Sub Command10_Click()
MGrid1.Row = 0
MGrid1.Col = 0
MGrid1.Text = " SIR_real"
MGrid1.Row = 0
MGrid1.Col = 1
MGrid1.Text = " Po"
MGrid1.Row = 0
MGrid1.Col = 2
MGrid1.Text = " DSSPC"
MGrid1.Row = 0
MGrid1.Col = 3
MGrid1.Text = " DPC"
For i = 1 To (Val(TxtN.Text))
MGrid1.Rows = i + 1
MGrid1.Row = i
MGrid1.Col = 0
MGrid1.Text = Round(SIRreal(i), 4)
MGrid1.Col = 1
MGrid1.Text = Po(i)
MGrid1.Col = 2
MGrid1.Text = Pdk(i)
MGrid1.Col = 3
MGrid1.Text = Round(Pn1(i), 3)
Next i
End Sub
Private Sub command6_Click()
For i = 1 To (Val(TxtN.Text))
Grid3.Rows = i + 1
Grid3.Row = i
Grid3.Col = 0
Grid3.Text = " "
Grid3.Col = 1
Grid3.Text = " "
Grid3.Col = 2
Grid3.Text = " "
Next i
End Sub
Private Sub cmdL4Thoat_Click()
End
End Sub
Private Sub Command7_Click()
For i = 1 To (Val(TxtN.Text))
MGrid1.Rows = i + 1
MGrid1.Row = i
MGrid1.Col = 0
MGrid1.Text = " "
MGrid1.Col = 1
MGrid1.Text = " "
MGrid1.Col = 2
MGrid1.Text = " "
MGrid1.Col = 3
MGrid1.Text = " "
Next i
End Sub
Private Sub Command9_Click()
End
End Sub
Private Sub Form_Load()
TxtN.Text = " "
ReDim t(Val(TxtN.Text))
ReDim a(Val(TxtN.Text))
ReDim Rt(Val(TxtN.Text))
ReDim Pme(Val(TxtN.Text))
ReDim Pma(Val(TxtN.Text))
ReDim SF(Val(TxtN.Text))
ReDim Pcu(Val(TxtN.Text))
ReDim Iutr(Val(TxtN.Text))
ReDim Ictr(Val(TxtN.Text))
ReDim Itr(Val(TxtN.Text))
ReDim Io(Val(TxtN.Text))
ReDim SIRreal(Val(TxtN.Text))
ReDim ERL(100)
ReDim gamaI(Val(TxtN.Text))
ReDim Pdk(Val(TxtN.Text))
ReDim Po(Val(TxtN.Text))
ReDim Pn(Val(TxtN.Text))
ReDim Pn1(Val(TxtN.Text))
For i = 1 To Val(TxtN.Text)
t(i) = CInt(Rnd1(90, 210))
Rt(i) = Rnd1(9.6, 374 + 9.6)
Pme(i) = Rnd1(18, 30)
Next i
Tinh
End Sub
Private Sub Startva()
ReDim t(Val(TxtN.Text))
ReDim a(Val(TxtN.Text))
ReDim Rt(Val(TxtN.Text))
ReDim Pme(Val(TxtN.Text))
ReDim Pma(Val(TxtN.Text))
ReDim SF(Val(TxtN.Text))
ReDim Pcu(Val(TxtN.Text))
ReDim Iutr(Val(TxtN.Text))
ReDim Ictr(Val(TxtN.Text))
ReDim Itr(Val(TxtN.Text))
ReDim Io(Val(TxtN.Text))
ReDim SIRreal(Val(TxtN.Text))
ReDim ERL(100)
ReDim gamaI(Val(TxtN.Text))
ReDim Pdk(Val(TxtN.Text))
ReDim Po(Val(TxtN.Text))
ReDim Pn(Val(TxtN.Text))
ReDim Pn1(Val(TxtN.Text))
For i = 1 To Val(TxtN.Text)
t(i) = CInt(Rnd1(90, 210))
Rt(i) = Rnd1(9.6, 374 + 9.6)
Pme(i) = Rnd1(18, 30)
Next i
Tinh
End Sub
Private Function getSub1(x As String) As String
Dim Index
Index = InStr(x, ".")
getSub1 = Left(x, Index + 1)
End Function
Private Sub command1_Click()
graph.Visible = False
picBieuDo.Visible = True
picBieuDo.Cls
' Ve bieu do: SIRreal(), Po()
Dim MaxHDrawArea As Double, MaxWDrawArea As Double ' do rong vung de ve
Dim goc As PointType
Dim XUnit As Double, YUnit As Double ' 1 don vi = bao nhieu twip
Dim countPoint As Double
Dim temp, temp0, temp1, temp2 As Double, i As Long
MaxHDrawArea = picBieuDo.Height - 480
MaxWDrawArea = picBieuDo.Width - 480
goc.x = 360
goc.y = picBieuDo.Height - 360
' Vẽ các phương tọa độ
picBieuDo.DrawWidth = 2
picBieuDo.Line (goc.x, goc.y)-(goc.x, 120), QBColor(13) 'trucPo
picBieuDo.Line (goc.x, goc.y)-(MaxWDrawArea, goc.y), QBColor(13) 'trucsir
've mui ten sir
picBieuDo.Line (MaxWDrawArea - 150, goc.y - 40)-(MaxWDrawArea, goc.y), QBColor(12)
picBieuDo.Line (MaxWDrawArea - 150, goc.y + 30)-(MaxWDrawArea, goc.y), QBColor(12)
've mui ten Po
picBieuDo.Line (goc.x - 30, 270)-(goc.x, 120), QBColor(12)
picBieuDo.Line (goc.x + 25, 270)-(goc.x, 120), QBColor(12)
picBieuDo.CurrentX = 60
picBieuDo.CurrentY = 0
picBieuDo.Print "CONG SUAT"
picBieuDo.CurrentX = 1600
picBieuDo.CurrentY = 80
picBieuDo.Print "Po"
picBieuDo.CurrentX = 3000
picBieuDo.CurrentY = 80
picBieuDo.Print " PDC"
picBieuDo.CurrentX = 4400
picBieuDo.CurrentY = 80
picBieuDo.Print "DSSPC"
picBieuDo.CurrentX = 6200
picBieuDo.CurrentY = 5200
picBieuDo.Print "SIR"
'********************************************
picBieuDo.DrawWidth = 4
picBieuDo.Line (goc.x + 1200, goc.y - 4850)-(goc.x + 1500, goc.y - 4850), QBColor(9) 'trucPo
picBieuDo.Line (goc.x + 2700, goc.y - 4850)-(goc.x + 3000, goc.y - 4850), QBColor(5) 'trucPo
picBieuDo.Line (goc.x + 4100, goc.y - 4850)-(goc.x + 4500, goc.y - 4850), QBColor(12) 'trucPo
'********************************************kẻ đường ngang
picBieuDo.CurrentX = 60
picBieuDo.CurrentY = 3800
picBieuDo.Print "10 ------------------------------------------------------------------------------------------------"
picBieuDo.CurrentX = 60
picBieuDo.CurrentY = 4400
picBieuDo.Print "5 ------------------------------------------------------------------------------------------------"
picBieuDo.CurrentX = 60
picBieuDo.CurrentY = 3200
picBieuDo.Print "15 ------------------------------------------------------------------------------------------------"
picBieuDo.CurrentX = 60
picBieuDo.CurrentY = 2600
picBieuDo.Print "20 ------------------------------------------------------------------------------------------------"
picBieuDo.CurrentX = 60
picBieuDo.CurrentY = 2000
picBieuDo.Print "25 ------------------------------------------------------------------------------------------------"
picBieuDo.CurrentX = 60
picBieuDo.CurrentY = 1400
picBieuDo.Print "30 ------------------------------------------------------------------------------------------------"
picBieuDo.CurrentX = 60
picBieuDo.CurrentY = 800
picBieuDo.Print "35 -------------------------------------------------------------------------------------------------"
'*******************************************************
countPoint = Val(TxtN.Text)
' Xac dinh XUnit, YUnit
temp = 0
For i = 0 To countPoint
If temp < SIRreal(i) Then temp = SIRreal(i)
Next i
XUnit = Round(MaxWDrawArea / (Round(temp) + 4))
've pdk
temp0 = 0
For i = 0 To countPoint
If temp0 < Pdk(i) Then temp0 = Pdk(i)
Next i
YUnit = Round(MaxHDrawArea / (Round(temp0) + 8))
've pn1
temp1 = 0
For i = 0 To countPoint
If temp1 < Pn1(i) Then temp1 = Pn1(i)
Next i
YUnit = Round(MaxHDrawArea / (Round(temp1) + 8))
've pn1
temp2 = 0
For i = 0 To countPoint
If temp2 < Po(i) Then temp2 = Pn1(i)
Next i
YUnit = Round(MaxHDrawArea / (Round(temp2) + 8))
' Vẽ biểu đồ
picBieuDo.DrawWidth = 2
For i = 1 To countPoint
picBieuDo.Line (goc.x + Round(SIRreal(i - 1) * XUnit), goc.y - Round(Pdk(i - 1) * YUnit))-(goc.x + Round(SIRreal(i) * XUnit), goc.y - Round(Pdk(i - 1) * YUnit)), QBColor(12)
picBieuDo.Line (goc.x + Round(SIRreal(i - 1) * XUnit), (goc.y - Round(Po(i - 1) * YUnit)) + 100)-(goc.x + Round(SIRreal(i) * XUnit), (goc.y - Round(Po(i - 1) * YUnit)) + 100), QBColor(9)
picBieuDo.Line (goc.x + Round(SIRreal(i - 1) * XUnit), (goc.y - Round(Pn1(i - 1) * YUnit)) - 100)-(goc.x + Round(SIRreal(i) * XUnit), (goc.y - Round(Pn1(i - 1) * YUnit)) - 100), QBColor(5)
Next i
End Sub
Private Sub Image1_Click()
End Sub
Private Sub MGrid1_Click()
End Sub
Các file đính kèm theo tài liệu này:
- nguyenbadiep.doc