Tham số Giá trị
Tốc độ dữ liệu: Rb 2 Mbps
Mức điều chế sóng mang M-QAM M = 2, 4, 16, 64
Tần số lấy mẫu: fs fs
Số lượng sóng mang: Nsub 52 - 1024
Kích thước FFT: NFFT NFFT
Chu kỳ cơ bản: T 1/ Rb = 0,5 µs
Thời gian ký hiệu hữu ích: TFFT TFFT = Nsub ×log2(M) ×T Khoảng thời gian bảo vệ: TG TG
Chiều dài ký hiệu OFDM : Tsym = TFFT + TG Thời gian mô phỏng: Tsim Tsim = 0,064 s
Cửa sổ Kaiser, β = 10
Mơ hình kênh Pha đinh Rayleigh
Hình 6.5 Mơ phỏng tín hiệu OFDM trong miền thời gian,[sim_ofdm_signal.m] [sim_ofdm_signal.m]
Khoảng thời gian bảo vệ: G TU n 1 T = , n = 1/2, 1/4, 1/8, 1/64 ...., Tần số lấy mẫu: sym s T 1 3 f = , trong đó Tsym = TFFT + TG,
M là số trạng thái điều chế QAM (M = 2 ứng với BPSK), vì các thơng số có sự liên quan đến nhau do đó chỉ cần khai báo các thơng số: Rb, M, Nsubcarr, NFFT, TG. Từ kích thước file ảnh hoặc file text ta xác định thời gian mô phỏng:
Tsim = số lượng bit truyền/ Rb.
Trong chương trình mơ phỏng, các tham số khởi tạo hệ thống được tập trung vào trong một bảng, giá trị của các tham số được thiết lập khi khởi tạo và có thể thay đổi trong quá trình thực hiện chương trình mơ phỏng nếu chọn chức năng điều chế thích ứng. Tất nhiên các tham số sẽ giữ nguyên giá trị như khi khởi tạo nếu khơng chọn chức năng điều chế thích ứng. Giao diện tham số khởi tạo hệ thống được mở ra có cấu trúc như sau.
Để hiểu hoạt động của chương trình mơ phỏng AOFDM trước tiên cần phải hiểu rõ các tham số khởi tạo hệ thống và ảnh hưởng của nó đến hoạt động của hệ thống.
Kích thước FFT: Biểu thị bằng nhãn ‘Kích thước FFT’, tham số này chính là số điểm
FFT dùng trong một ký hiệu OFDM hay chính là độ dài ký hiệu OFDM. Để đảm bảo phổ OFDM là thực thì kích thước FFT > 2 lần số lượng sóng mang (trong mục 3.3.2.4). Kích thước FFT nếu chọn quá lớn sẽ lãng phí băng tần nhưng bù lại sẽ phân năng lượng tín hiệu đều trên các sóng mang, điều này có tác dụng phân tán lỗi. Tuy nhiên nếu kích
Chương 6: Chương trình mơ phỏng truyền dẫn OFDM thích ứng Đồ án tốt nghiệp Đại học
thước FFT chọn quá nhỏ thì mật độ năng lượng trên mỗi sóng mang con sẽ lớn và nếu bị lỗi thì sẽ gây lỗi cụm. Vì vậy nên chọn giá trị tham số:
2:1< kích thước FFT: số sóng mang ≤ 5:1 (6.1) Cụ thể đồ án thiết lập là 256.
Số lượng sóng mang: hiển thị bằng nhãn ‘Số sóng mang’, là số lượng sóng mang dùng
để truyền dữ liệu. Cần phải phân biệt giữa dữ liệu và dữ liệu người dùng, dùng thuật ngữ ‘dữ liệu người dùng’ có nghĩa là dữ liệu đi đến bộ điều chế AOFDM, còn ‘dữ liệu’ là dữ liệu người dùng và phần độn thêm (để thích ứng với kênh truyền), thường phần độn thêm này là các ký hiệu ‘0’. Tất nhiên số lượng sóng mang cũng phải thoả mãn phương trình (6.1).Số lượng sóng mang càng lớn, thì trễ điều chế càng cao song được lợi về tính phân tập, do sự phân tán lỗi đều trên băng tần của kênh. Mặt khác vì cơ chế thích ứng mà đồ án sử dụng là chọn lọc sóng mang tức là lựa chọn các sóng mang có SNR cao (hay BER thấp) để truyền dữ liệu do đó số lượng sóng mang lớn có ý nghĩa đặc biệt quan trọng vì khi đó cơ chế chọn lọc sẽ hoạt động hiệu quả hơn, sẽ lựa chọn chính xác các vùng tần số tương đối ổn định trên kênh. Tuy nhiên thường chọn số lượng sóng mang ≤500 vì tính chất mơ phỏng chạy trên phần mềm. Do đó tốc độ xử lý khơng cao như tốc độ xử lý phần cứng trong thực tế. Trong đồ án số lượng sóng mang sử dụng là 100.
Khoảng thời gian bảo vệ: Hãy tưởng tượng mỗi ký hiệu đều có một khoảng bảo vệ
được gắn trước mỗi ký hiệu và khoảng bảo vệ này được chọn sao cho lớn hơn thời gian trễ cực đại của kênh, thì khi đó các ký hiệu thu trước và sau sẽ không bị chồng lấn lên nhau mà chỉ chồng lấn lên các khoảng bảo vệ. Do đó năng lượng mỗi ký hiệu sẽ không bị phân tán trên các ký hiệu khác, tức là khơng có hiện tượng ISI. Vì vậy khoảng bảo vệ trong ký hiệu OFDM có ý nghĩa đặc biệt quan trọng nó giúp tăng chiều dài ký hiệu, chống pha đinh lựa chọn tần số (xem chương 3), đặc biệt chống lại hiện tượng ISI gây thu sai tín hiệu. Theo chuẩn DAB thì khoảng bảo vệ được chọn = 1/4 kích thước FFT và khoảng bảo vệ được gắn phía trước ký hiệu. Tuy nhiên khoảng bảo vệ cũng được chọn lựa theo bất kỳ tỷ lệ nào như: 1, 1/2, 1/4, 1/8, …. Tuỳ theo kích thước FFT là lớn hay nhỏ và giá trị trải trễ cực đại của kênh. Đồ án chọn giá trị khoảng bảo vệ = 1/4 kích thước FFT, trên giao diện nhập dữ liệu khoảng bảo vệ được hiển thị bằng nhãn 'Khoảng bảo vệ' (4 có nghĩa là khoảng bảo vệ = 1/4 kích thước FFT).
Ngưỡng BER: Ngưỡng BER là giá trị dùng để thiết lập xem sóng mang nào sẽ được
dùng truyền dữ liệu người dùng và sóng mang nào sẽ khơng sử dụng tức là phải tiến hành chèn ‘0’. Hàm thực hiện chức năng kiểm tra lỗi cho từng sóng mang con là hàm ‘dem_loi’. Hàm này sẽ tính ra giá trị BER của từng sóng mang con và kiểm tra xem nếu sóng mang nào có giá trị BER > BER ngưỡng thì sẽ gán cho phần tử của mảng QĐ tương ứng với vị trí sóng mang này giá trị là ‘1’, tức là khơng dùng sóng mang này. Sau đó hàm ‘chen_song_mang’ sẽ căn cứ vào giá trị của mảng QĐ mà sẽ quyết định dùng và khơng dùng sóng mang nào. Nếu ngưỡng BER được thiết lập q lớn thì sẽ khơng có tác dụng chọn lọc sóng mang vì các giá trị BER hiện thời trên mỗi sóng mang có thể đều nhỏ hơn giá trị BER ngưỡng. Tuy nhiên nếu thiết lập giá trị BER ngưỡng q nhỏ thì số sóng mang đảm bảo giá trị BER nhỏ hơn giá trị BER ngưỡng sẽ rất ít do đó tốc độ truyền dẫn sẽ rất chậm do chỉ tiến hành truyền dữ liệu trên một số ít sóng mang. Trong đồ án giá trị BER ngưỡng được thiết lập là 10-3.
Tần số Doppler: Do chuyển động tương đối giữa máy thu và máy phát gây ra hiệu ứng
Doppler. Doppler gây hiệu ứng điều tần ngẫu nhiên đối với các thành phần sóng mang do đó làm sai lệch giá trị tần số của các sóng mang con. Điều này dẫn đến phổ tần của các sóng mang con chồng lần quá mức lên nhau làm mất tính trực giao của các sóng mang con. Khi khơng cịn giữ tính trực giao thì năng lượng tín hiệu trên các sóng mang sẽ chồng lấn lên nhau điều này sẽ dẫn tới khơng cịn phân biệt được ranh giới giữa các ký hiệu trên các sóng mang con do đó gây lỗi tại bộ quyết định. Tất nhiên tần số Doppler trong đồ án chỉ là giá trị có ý nghĩa mơ phỏng để đảm bảo tính thực tế của mơ hình kênh, thơng thường tần số Doppler < 100 Hz. Đồ án thiết lập giá trị tần số Doppler là 50 Hz.
Đáp ứng xung kim kênh: Đáp ứng xung kim của kênh chính là số lượng xung kim và
giá trị biên độ suy giảm của các xung kim đó cùng với thời gian trễ.
Hình 6.6 Cho thấy hình dạng đáp ứng của kênh xung kim, với 3 đường trễ. Tương ứng các giá trị biên độ trên hình vẽ là các giá trị biên độ suy giảm của nhánh trễ của kênh. Và thời gian trễ của từng nhánh là thời gian trễ của các xung kim của kênh. Trên bảng khởi tạo giá trị ban đầu cho hệ thống AOFDM thì:
Thời gian trễ của xung thứ nhất sẽ là 5 tương ứng với nhãn ‘nhánh 1’ trên bảng. Thời gian trễ của xung thứ hai là 5+3 = 8 tương ứng với nhãn 'nhánh 2' trên bảng. Thời gian trễ của nhánh thứ ba là 5+3+9 = 17 tương ứng với nhãn ‘nhánh 3’ trên bảng. Các giá trị biên độ suy giảm của nhánh trễ sẽ tương ứng với các nhánh là các nhãn ‘suy giảm 1’, ‘suy giảm 2’, ’suy giảm 3’ với các giá trị lần lượt là 0.32, 0.28, 0.13. Tương ứng với các giá trị này thì hình dạng hàm truyền đạt của kênh sẽ có dạng:
Chương 6: Chương trình mơ phỏng truyền dẫn OFDM thích ứng Đồ án tốt nghiệp Đại học
Tần số lấy mẫu ký hiệu phát: Mỗi ký hiệu sau khi điều chế ký hiệu OFDM đều được
lấy mẫu với tần số lấy mẫu fs. Để đảm bảo lấy mẫu được đầy đủ ký hiệu phát thì tần số lấy mẫu cần thoả mãn định lý Nyquist: fs ≥2fsymtức là tần số lấy mẫu tối thiểu phải gấp
hai lần tần số ký hiệu. Trên bảng nhập các giá trị khởi đầu tần số lấy mẫu được thể hiện bằng giá trị dưới nhãn ‘Tần số lấy mẫu’, trên bảng giá trị này là 3 tức là đối với mỗi ký hiệu OFDM sau điều chế chúng ta sẽ lấy mẫu tại 3 vị trí của ký hiệu. Tất nhiên ký hiệu sau khi thu sẽ là giá trị trung bình của các mẫu của cùng tín hiệu phát, do đó khi tần số lấy mẫu lớn thì giá trị ký hiệu thu sẽ gần như giá trị ký hiệu phát vì thế BER sẽ giảm. Tuy nhiên nếu tần số lẫy mẫu quá lớn sẽ dẫn đến giảm tốc độ bit thực truyền dẫn do phát lặp lại cùng một ký hiệu nhiều lần. Trong đồ án giá trị tần số lấy mẫu = 3 lần giá trị tần số ký hiệu OFDM.
Số trạng thái điều chế: Trong đồ án dùng phương pháp điều chế chủ yếu là M-QAM,
với số trạng thái điều chế thay đổi với các giá trị M = 2, 4, 16, 64. Số trạng thái điều chế ban đầu được thiết lập là giá trị nằm dưới nhãn 'Mức điều chế QAM' trong bảng khởi tạo. Tất nhiên khi chọn ngun cơ chế thích ứng chọn lọc sóng mang hoặc khơng chọn cơ chế thích ứng nào thì số trạng thái điều chế được giữ ngun trong q trình mơ phỏng, nếu chọn cơ chế thích ứng mức điều chế thì số trạng thái điều chế sẽ được thay đổi tuỳ theo tình trạng kênh hiện thời hay giá trị BER tổng cộng sau mỗi lần phát ký hiệu OFDM. Trong đồ án giá trị số trạng thái điều chế ban đầu được thiết lập là 2.
Định dạng file truyền: Để linh hoạt trong việc tạo ra dữ liệu người dùng dùng trong mơ
phỏng, đồ án đã xây dựng hàm có thể đọc các loại file văn bản (text.txt) hoặc file hình ảnh (*.JPG, *.BMP,…). Tất nhiên mỗi loại file có một định dạng khác nhau và dung lượng hồn tồn khác nhau, do đó sẽ cần có một hàm đọc file khác nhau. Trên bảng khởi tạo định dạng file được mô tả thông qua nhãn ‘Loại file’. Nếu
Loại file = 1 tức là sẽ truyền file văn bản có tên ‘Design.txt’, kết quả mơ phỏng sau khi truyền qua môi trường kênh sẽ được lưu trong file ‘Result.txt’.
Loại file = 2 tức là sẽ truyền file đồ hoạ có tên ‘Fish.bmp’, kết quả mơ phỏng sau khi truyền qua môi trường kênh sẽ được lưu trong file ‘anh_dep.jpg’. Tất nhiên kết quả sẽ được hiển thi thông qua giao diện ‘xem_anh’. Nếu dùng file đồ hoạ để mơ phỏng thì thời gian đọc file và chuyển dữ liệu sang dạng nhị phân, sau đó tiến hành điều chế chuyển mức rồi điều chế tín hiệu OFDM sẽ rất lâu. Để ta có thể quan sát được q trình điều chế dữ liệu và thu phát qua kênh vơ tuyến thì đồ án đã thiết lập giao diện mơ phỏng ‘OFDM_S’. Trước tiên dữ liệu đọc từ file có dạng các mảng thập phân sẽ được cắt nhỏ thành từng khối (thơng thường mỗi khối gồm 200 phần tử). Sau đó sẽ tiến hành chuyển từng khối sang dạng nhị phân rồi tiến hành điều chế OFDM dữ liệu nhị phân trong khối này, tín hiệu sau điều chế OFDM sẽ được phát qua mơ hình kênh và thu tại bộ thu OFDM. Dữ liệu thu sẽ được chuyển lại thành các khối thập phân và được lưu vào một mảng, sau khi kết thúc mô phỏng dữ liệu thu dưới dạng các khối thập phân sẽ được ghép lại với nhau theo định dạng file ban đầu rồi tiến hành ghi ra file ảnh. Tiếp tục chương trình sẽ hiển thị kết quả ảnh thu được để so sánh chất lượng.
6.3 Chương trình mơ phỏng truyền dẫn OFDM thích ứng6.3.1 Giao diện chương trình mơ phỏng 6.3.1 Giao diện chương trình mơ phỏng
Chương trình mơ phỏng được thiết kế bằng ngôn ngữ Matlab 6.5, và được tổ chức thành từng module.
Tính module cho phép, cải tiến, phát triển và nâng cấp sau này.
Do có tính module nên thuận lợi cho việc kiểm tra, đánh giá, khảo sát mơ hình ở dạng rời rạc và liên kết.
Để chạy chương trình mơ phỏng AOFDM, từ cửa sổ lệnh của MatLab ta gõ lệnh “AOFDM”. Dưới đây là phần giao diện bắt đầu của chương trình.
Phần giao diện chính của chương trình sẽ được mở khi nhấn chuột vào nút tiếp tục. Trước khi đến với giao diện chính, giao diện minh hoạ hình ảnh dùng để truyền sẽ được mở ra. Hình bên trái với tiêu đề :’ Ảnh dùng để phát’ sẽ là hình ảnh phục vụ cho suốt q trình mơ phỏng. Trục toạ độ còn lại bên phải sẽ hiện ảnh sau khi truyền qua AOFDM. Sau khi hồn thiện mơ phỏng hệ thống AOFDM thì ảnh này sẽ được mở ra để so sánh giữa chất lượng ảnh gốc và ảnh sau khi truyền qua AOFDM. Tất nhiên vì lý do thời gian truyền quá lâu khi dùng ảnh mầu 32 bit (do xử lý số bằng phần mềm có tốc độ rất chậm, trong các hệ thống thực tế tốc độ tính tốn cao do các thao tác xử lý số được thực hiện phần lớn bằng phần cứng ). Cho nên để nhanh chóng đồ án chỉ mơ phỏng kết quả với ảnh trắng đen.
Chương 6: Chương trình mơ phỏng truyền dẫn OFDM thích ứng Đồ án tốt nghiệp Đại học
Khi kích hoạt vào nút “tiếp tục” ở giao diện đầu tiên thì chương trình sẽ gọi một giao diện để mơ phỏng hệ thống truyền dẫn OFDM thích ứng, giao diện có tên hàm là 'OFDM_S'. Dưới đây sẽ là phần giao diện thực hiện ý tưởng của đồ án, giao diện được cấu trúc theo từng module, mỗi module sẽ thực hiện một nhiệm vụ và minh họa một phần kết quả trong hệ thống truyền dẫn thích ứng OFDM.
Phần khung công cụ thực hiện bao gồm các nút cơng cụ:
‘Execute’: sẽ thực hiện kích hoạt hệ thống AOFDM hoạt động.
‘Input Data’: sẽ mở ra một giao diện để nhập các thông số khởi tạo hệ thống.
‘Close’: sẽ đóng giao diện mơ phỏng.
‘Back’: sẽ quay trở lại giao diện đầu tiên ‘AOFDM’.
Phần khung cơng cụ thích ứng bao gồm các nút cơng cụ:
‘Chọn lọc SM’: là biểu tượng khi tích vào hệ thống sẽ kích hoạt chế độ thích ứng theo cơ
chế chọn lọc sóng mang.
‘Mức điều chế’: khi tích vào biểu tượng này hệ thống sẽ kích hoạt chế độ thích ứng theo
mức điều chế (AQAM). Tất nhiên ta có thể kích hoạt đồng thời hai cơ chế thích ứng bằng cách tích vào cả hai biểu tượng trên.
‘Kênh động’: là cơng cụ mà khi kích hoạt nó sẽ tạo ra một kênh vơ tuyến có hàm truyền
đạt thay đổi theo thời gian. Nếu khơng kích hoạt cơng cụ này thì kênh mơ phỏng sẽ là kênh tĩnh, các tham số kênh sẽ giữ nguyên trong quá trình mơ phỏng.
Phần hiển thị tín hiệu M-QAM: sẽ hiển thị chịm sao M-QAM tại bộ thu sau khi tín
hiệu được giải điều chế OFDM. Khi số trạng thái điều chế là M thì phần giao diện này sẽ hiện thị chịm sao M-QAM, trên phần giao diện là chòm sao 16-QAM.
Phần hiển thị tín hiệu OFDM: sẽ hiển thị dạng sóng trong miền thời gian của tín hiệu
OFDM phát và thu đồng thời cũng hiển thị hàm truyền đạt của kênh và phổ của tín hiệu