hạn do vậy, sau biến đổi FFT sẽ chịu hiệu ứng biên, hiệu ứng biên làm sai lệch các giá trị tín hiệu ứng với các tần số ngồi rìa. Vì thế để giảm hiệu ứng biên ta phải tăng kích thước FFT so với số sóng mang, muốn vậy:
Kích thước FFT/2 > số sóng mang con
Nhưng cũng vì thế mà số lượng các mẫu tần số tại đầu vào FFT bị thiếu, lượng thiếu = Kích thước FFT/2 - số sóng mang con. cho nên ta phải tiến hành chèn thêm các tần số ‘0’ trước khi biến đổi IFFT.
Theo bảng tham số dùng mơ phỏng ta có: Kích thước FFT/2 = 128, mà số sóng mang = 90. Do đó cần chèn thêm 128-90 = 38 sóng mang ‘0’. Cho nên số lượng sóng mang thực tế phải dùng cho mỗi ký hiệu OFDM sẽ là 90 + 38 = 128, tuy nhiên 38 sóng mang chèn thêm sẽ khơng mang dữ liệu người dùng và chúng được đặt là ‘0’. Hình 6.3 sẽ minh hoạ q trình này:
Do đó số lượng ký hiệu ‘0’ phải chèn thêm là: 4266752 -3000000=1266752 ký hiệu. Ta thấy nếu chọn kích thước FFT quá lớn so với 2 lần số sóng mang thì sẽ phải chèn rất nhiều ký hiệu không mang thông tin. Điều này sẽ làm giảm hiệu quả truyền dẫn.
Để tạo dạng phổ thực cho tín hiệu OFDM, thì phần cịn lại của kích thước FFT (có chiều dài FFT/2 là phần có các mẫu tần số có giá trị cao hơn), sẽ được lấp đầy bằng cách lấy liên hợp phức phần đầu của kích thước FFT (có chiều dài FFT/2 gồm các mẫu tần số có giá trị thấp). Q trình này được mơ tả bằng hình 6.4 dưới đây:
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
Sau khi sắp xếp các mẫu tần số trong ký hiệu OFDM, sẽ thực hiện biến đổi IFFT lên ký hiệu OFDM trong miền tần số. Quá trình này sẽ chuyển tín hiệu OFDM từ miền tần số sang miền thời gian.
Bước tiếp theo trong cơng đoạn mơ phỏng tín hiệu OFDM là chèn khoảng bảo vệ, quá trình này được thực hiện cho từng ký hiệu OFDM (xem lại phần 3.5). Cuối cùng ta sẽ được một tín hiệu OFDM có dạng:
Thiết lập các thông số khởi tạo cho hệ thống truyền dẫn OFDM thích ứng
Trước tiên để hiểu ngun lý hoạt động của chương trình mơ phỏng ta hãy xét các tham số vào ra của hệ thống.
Bảng 6.2 Thơng số mơ phỏng hệ thống OFDM thích ứng
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 q 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 nguyên 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 để