Xây dựng hệ thống thu phát băng hẹp dải tần UHF có khả năng thay đổi tham số thu phát và các dạng điều chế số khác nhau

86 365 0
Xây dựng hệ thống thu phát băng hẹp dải tần UHF có khả năng thay đổi tham số thu phát và các dạng điều chế số khác nhau

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐỖ VĂN HÙNG XÂY DỰNG HỆ THỐNG THU PHÁT BĂNG HẸP DẢI TẦN UHF CÓ KHẢ NĂNG THAY ĐỔI THAM SỐ THU PHÁT VÀ CÁC DẠNG ĐIỀU CHẾ SỐ KHÁC NHAU Ngành: Công nghệ Điện tử - Viễn thông Chuyên ngành:Kỹ thuật điện tử Mã số:60520203 LUẬN VĂN THẠC SỸ NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS BẠCH GIA DƯƠNG Hà Nội - 2015 i Lời cam đoan Tôi xin cam đoan hệ thống thu phát băng hẹp dải tần UHF có khả thay đổi tham số thu phát dạng điều chế số khác trình bày luận văn thực hướng dẫn PGS.TS Bạch Gia Dương Tất tài liệu tham khảo từ nghiên cứu liên quan có nguồn gốc rõ ràng danh mục tài liệu tham khảo luận văn Trong luận văn, việc chép tài liệu, công trình nghiên cứu người khác mà không rõ tài liệu tham khảo Hà Nội, ngày tháng Học viên Đỗ Văn Hùng năm 2015 ii Lời cảm ơn Em xin chân thành cảm ơn PGS.TS Bạch Gia Dương, thầy tận tình giúp đỡ, bảo hướng dẫn em suốt thời gian thực luận văn tốt nghiệp Đồng thời, em xin gửi lời cảm ơn đến anh chị trung tâm nghiên cứu điện tử viễn thông – Khoa điện tử viễn thông Trường Đại học Công Nghệ giúp đỡ em trình thực luận văn Mặc dù có nhiều cố gắng, thời gian có hạn vốn kiến thức hạn chế nên công trình nhiều thiếu sót Vì vậy, em mong nhận đóng góp, bảo thầy cô bạn Em xin chân thành cảm ơn! iii Mục lục Lời cam đoan i Lời cảm ơn ii Mục lục iii Danh sách hình vẽ v Bảng ký hiệu viết tắt vii MỞ ĐẦU Chương – Tổng quan hệ thống 1.1 Hệ thống thông tin biển 1.2 Xây dựng hệ thống thu phát băng hẹp dải tần UHF có khả thay đổi tham số thu phát dạng điều chế số khác Chương – Kỹ thuật phối hợp trở kháng 2.1 Lý thuyết đường truyền [1] 2.1.1 Cách biểu diễn hệ có phần tử phân bố theo sơ đồ hệ có phần tử tập trung 2.1.2 Phương trình vi phân đường dây 2.1.3 Nghiệm phương trình vi phân 10 2.1.4 Đường truyền không tổn hao có mắc tải đầu cuối .13 2.1.5 Tóm tắt số quan hệ định lượng đường dây có sóng đứng .21 2.2 Giản đồ smith [1] 22 2.2.1 Giới thiệu .22 2.2.2 Họ đường tròn đẳng điện trở r: .24 2.2.3 Họ đường tròn đẳng điện kháng x 27 2.2.4 Vòng tròn đẳng || .27 2.2.5 Vòng tròn đẳng S 28 2.3 Một số phương pháp phối hợp trở kháng 29 2.3.1 Phối hợp trở kháng dùng phần tử tập trung 30 2.3.2 Phối hợp trở kháng dùng dây nhánh 30 2.3.3 Phối hợp trở kháng dùng hai dây nhánh .31 2.3.4 Phối hợp trở kháng doạn dây lamda/4 32 2.3.5 Phối hợp trở kháng đoạn dây có chiều dài 33 2.3.6 Phối hợp trở kháng đoạn dây mắc nối tiếp 33 2.4 Lý thuyết điều chế giải điều chế số .34 iv 2.4.1 Điều chế FSK 35 2.4.2 Giải điều chế FSK 40 2.4.3 Ưu điểm, nhược điểm điều chế, giải điều chế FSK 43 Chương – Thiết kế chế tạo thu phát sử dụng vi mạch ADF7021 tích hợp khuếch đại tạp âm thấp 43 3.1 Bộ khuếch đại tạp âm thấp 43 3.2 ADF7021 48 3.2.1 Giới thiệu chung ADF7021 .48 3.2.2 Thiết kế chế tạo module ADF7021 .49 3.2.3 Đo đạc kiểm tra hoạt động tuyến thu phát UHF 52 3.2.4 Lập trình phần mềm điều khiển ADF7021 57 Kết luận .63 TÀI LIỆU THAM KHẢO 64 PHỤ LỤC 65 v Danh sách hình vẽ Hình Sơ đồ hệ thống thu phát băng hẹp dải tần UHF Hình Biểu diễn mạch tương đương đoạn đường truyền sóng siêu cao tần Hình Mạng đơn giản hình T hay  đối xứng đường truyền sóng siêu cao tần Hình Sơ đồ đường truyền không tổn hao có mắc tải đầu cuối 13 Hình Sóng đứng điện áp đường truyền không tổn hao có mắc tải đầu cuối .16 Hình Sóng đứng dòng điện sóng đứng điện áp đường truyền không tổn hao có mắc tải đầu cuối 17 Hình Họ vòng tròn đẳng điện trở 24 Hình Họ vòng tròn đẳng điện kháng 25 Hình Vòng tròn đẳng điện kháng phía trục hoành 25 Hình 10 Vòng tròn đẳng điện kháng phía trục hoành 26 Hình 11 Vòng tròn đẳng điện trở điện kháng biểu đồ 26 Hình 12 Họ vòng tròn đẳng || 27 Hình 13 Giản đồ Smith chuẩn 29 Hình 14 Sơ đồ phối hợp trở kháng 29 Hình 15 Sơ đồ phối hợp trở kháng dùng phần tử tập trung 30 Hình 16 Phối hợp trở kháng đoạn dây nhánh .31 Hình 17 Sơ đồ phối hợp trở kháng sử dụng dây nhánh song song 32 Hình 18 Sơ đồ sử dụng đoạn dây λ/4 33 Hình 19 Phối hợp trở kháng đoạn dây có chiều dài 33 Hình 20 Phối hợp trở kháng hai đoạn dây mắc nối tiếp 33 Hình 21 Sơ đồ mô tả trình điều chế giải điều chế số 35 Hình 22 Phổ tần tín hiệu FSK 38 Hình 23 Dạng sóng FSK 39 Hình 24 Phương pháp điều chế FSK 40 Hình 25 Phương pháp giải điều chế FSK 41 Hình 26 MSK 41 Hình 27 Sơ đồ chung điều chế giải điều chế FSK 42 Hình 28 Điều chế FSK .42 Hình 29 Mô phần mềm ADS 44 Hình 30 Kết mô .44 Hình 31 Mạch ghép tầng thực tế (BGA2711 MAV-11+) 45 Hình 32 Sơ đồ kết nối chưa lắp khuếch đại 46 Hình 33 Kết chưa lắp khuếch đại 46 Hình 34 Sơ đồ kết nối lắp khuếch đại 47 Hình 35 Khi lắp khuếch đại 47 Hình 36 Ghép nối thực tế 48 Hình 37 Sơ đồ nguyên lý module thu/phát dùng ADF7021 .49 Hình 38 Mạch in module thu/phát 49 Hình 39 Hình ảnh thực tế sau hàn linh kiện 50 Hình 40 Mạch nguyên lý khối xử lý trung tâm (MCU) .50 vi Hình 41 Sơ đồ nguyên lý khối điều khiển hiển thị 51 Hình 42 Sơ đồ mạch in khối xử lý, điều khiển hiển thị .51 Hình 43 Sơ đồ khối tuyến thu 52 Hình 44 Kết đo đạc đặc trưng tần số thu UHF 53 Hình 45 Kết đo đạc máy phân tích phổ tần số 450MHz 54 Hình 46 Kết đo đạc máy phân tích phổ tần số 470MHz 54 Hình 47 Kết đo đạc máy phân tích phổ tần số 490MHz 55 Hình 48 Kết đo đạc máy phân tích phổ tần số 520MHz 55 Hình 49 Kết đo đạc máy phân tích phổ tần số 550MHz 56 Hình 50 Kết đo đạc máy phân tích phổ tần số 590MHz 56 Hình 51 Kết đo đạc máy phân tích phổ tần số 600MHz 57 Hình 52 Kết nối vi điều khiển ADF7021 qua giao tiếp SPI 57 Hình 53 Giản đồ xung ghi liệu 58 Hình 54 Giải thuật đề xuất cho máy phát 59 Hình 55 Trình tự khởi động ADF7021 chế độ phát 59 Hình 56 Giải thuật đề xuất cho máy thu 61 Hình 57 Trình tự khởi động ADF7021 chế độ thu 61 vii Bảng ký hiệu viết tắt STT 10 11 12 13 14 Ký hiệu GPS MF HF VHF UHF AM FM PM SSB ASK FSK PSK PLL VCO Giải thích Hệ thống định vị toàn cầu (Global Positioning System) Tần số trung bình (Medium Frequency) Tần số cao (High Frequency) Tần số cao (Very High Frequency) Tần số cực cao (Ultra High Frequency) Điều chế biên độ (Amplitude Modulation) Điều chế tần số (Frequency Modulation) Điều chế pha (Phase Modulation) Điều chế đơn biên (Single Side Bande) Khóa dịch biên độ (Amplitude Shift Key) Khóa dịch tần số (Frequency Shift Key) Khóa dịch pha (Phase Shift Key) Vòng khóa pha (Phase Locked Loop) Bộ dao động điều khiển điện áp (Voltage Controlled Oscillator) MỞ ĐẦU Vấn đề chủ quyền toàn vẹn lãnh thổ quan tâm đặc biệt Đảng nhà nước Cụ thể tại, tình hình Biển đông ngày phức tạp với tham gia nhiều nước lớn có công nghệ đại, vũ khí tối tân Việc quản lý tầu bè lại hải phận quốc gia đòi hỏi phải thống mã nhận dạng hỏi-đáp để phân biệt tàu thuyền lưu thông hợp pháp hay bất hợp pháp Việc nghiên cứu, thiết kế chế tạo toàn hệ thống thiết bị nhận dạng thống chung cho nước đặt với yêu cầu cấp bách, đòi hỏi phải triển khai nghiên cứu chế tạo triển khai sản xuất ứng dụng đồng sau Việc làm chủ chế tạo thiết bị cho phép mềm dẻo tạo mã nhận dạng cho phương tiện hàng hải phù hợp với mã nhận dạng chuẩn hóa quốc tế tạo mã bí mật cho phương tiện quân ta Với tên đề “Xây dựng hệ thống thu phát băng hẹp dải tần UHF có khả thay đổi tham số thu phát dạng điều chế số khác nhau” Trong khuôn khổ luận văn này, song song với việc nghiên cứu lý thuyết lĩnh vực siêu cao tần hoạt động hệ thống thông tin liên lạc biển luận văn xây dựng cấu trúc thiết kế hệ thống tin băng UHF, chọn lựa linh kiện phù hợp có khả thay đổi tham số thu phát dạng điều chế khác (ADF7201), thiết kế chế tạo thành công thu phát tích hợp vi mạch ADF7201, tích hợp với khuyếch đại tạp âm thấp băng tần UHF đáp ứng đầy đủ yêu cầu độ nhạy máy thu cho hệ thống thu phát kể Do thời gian thực ngắn cộng với vốn kiến thức hạn chế nên luận văn chắn nhiều thiếu sót, em mong nhận góp ý, bảo thầy cô để hoàn thiện viết Chương –Tổng quan hệ thống 1.1 Hệ thống thông tin biển Hiện giới Việt nam ta ,tất phương tiện giao thông biển phải trang bị thiết bị thông tin thu phát tín hiệu nhận dạng, thu phát tín hiệu cứu nạn tín hiệu cấp cứu Để quản lý tầu thuyền giao thông biển hiệp hội hang hải quốc tế có qui định chặt chẽ tần số làm việc, cấu trúc mã tín hiệu sử dụng Khi giao tiếp với đài thông tin biển phải tuân thủ chặt chẽ theo qui định hiệp hội Hàng hải quốc tế Đối với tầu thuyền đánh bắt cá nằm vùng A1 (cách đất liền từ 20 tới 50 hải lý tương ứng với khoảng từ gần 40Km tới 100Km) Yêu cầu đề phải trang bị thiết bị thông tin có yêu cầu chặt chẽ tần số làm việc dải tần HF VHF với công suất phát từ 8W tới 30W Đối với phương tiện hoạt động vùng A2 (cách đất liền từ 150 tới 200 hải lý tương ứng với cự ly hoạt động từ gần 300 Km tới 400 Km), yêu cầu tầu phải trang bị máy thông tin công suất lớn lên tới 400W băng tần MF(Medium Frequency) HF (High Frequency), tích hợp máy thu định vị vệ tinh GPS Đối với vùng A2 yêu cầu phải có phao cứu hộ EPIRB phát tín hiệu báo nạn qua vệ tinh Cospas-sarsat tần số UHF 406MHz Đối với vùng A3(nằm vùng phủ sóng vệ tinh địa tinh Inmarsat từ 70 vĩ độ Bắc tới 70 vĩ độ Nam), tầu thuyền thiết bị thu phát HF công suất lớn, thiết phải trang bị thiết vị thu phát vệ tinh, phải trang bị phao cứu hộ hoạt động dải tần số UHF Trang bị máy thu định vị vệ tinh GPS Ở vùng A3 khuyến khích trang bị máy thu phát qua vệ tinh Inmarsat Các thiết bị thu phát thông tin băng tần số MF, HF, VHF UHF trang bị tầu thuyền đại hóa sản xuất công nghiệp Tầu thuyền giao thông biển tránh thiệt hại gặp rủi ro, trợ giúp cứu nạn vùng A1,A2,A3 Các thiết bị thông tin biển tuân thủ nghiêm ngặt qui định hàng hải quốc tế, tạo điều kiện quản lý phương tiện giao thông biển cứu hộ cứu nạn cần thiết nhận dạng chủ quyền dẫn đường phương tiện toàn cầu Ở Việt nam, nhằm đảm bảo hiệu cao cho công tác tuyên truyền ứng phó với thiên tai, tìm kiếm cứu nạn biển, Vishipel nghiên cứu để nâng cao chất lượng thu phát sóng, đồng thời đề xuất tăng thêm kênh phát để thông tin từ hệ thống Đài Thông tin duyên hải Việt Nam không tiếp cận với ngư dân, người biển qua băng tần HF tần số 7906 kHz Với số lượng 10.000 tàu hàng, 100.000 tàu cá Việt Nam hoạt động biển, 7906 kHz tần số có lưu lượng sử dụng dày đặc, bị can nhiễu lúc Do vậy, cần có tần số bổ sung để thông tin đến với người biển thông suốt, vùng biển tần số 7906 kHz phủ sóng yếu Tuy nhiên, việc tăng thêm kênh phát, triển khai phát vấn đề lớn, mà khó khăn nằm việc đầu tư trang bị thiết bị thu sóng tàu cá Vì vậy, cần có nghiên cứu hỗ trợ Nhà nước 64 TÀI LIỆU THAM KHẢO Tiếng Việt [1] GS.TSKH Phan Anh Giáo trình lý thuyết kỹ thuật siêu cao tần, Bộ môn Thông tin vô tuyến, Khoa Điện tử - Viễn thông, Trường Đại Học Công Nghệ [2] GS.TSKH Phan Anh Trường điện từ truyền sóng, NXB Đại Học Quốc Gia Hà Nội, Hà Nội [3] Ths Vũ Tuấn Anh Luận văn cao học, Trung tâm nghiên cứu Điện tử - Viễn thông, Trường Đại Học Công Nghệ [4] TS Đỗ Trung Kiên, luận án tiến sĩ, môn Vật lý vô tuyến – ĐHKHTN ĐHQGHN [5] Giáo trình công nghệ thông tin vệ tinh, Tập đoàn bưu viễn thông [6] Phạm Minh Việt Kỹ thuật siêu cao tần, NXB Khoa học kỹ thuật, Hà Nội [7] PGS.TS Trần Quang Vinh – Ths Chử Văn An, Nguyên lý kỹ thuật điện tử, NXB giáo dục, Hà Nội Tiếng Anh [8] David M.Pozar, Microwave engineering, John Wiley & Sons, Inc [9] Guillermo Gonzalez, Microwave transistor amplifiers, Prentice Hall [10] W Alan Davis, Radio Frequency Circuit Design, John Wiley & Sons, Inc [11] Kai chang, Encyclopedia of RF and Microwave Enginneering, John Wiley & Sons, Inc 65 PHỤ LỤC  Chương trình điều khiển ADF7021 viết ngôn ngữ C  adf7021.h #ifndef _ADF7021_H_ #define _ADF7021_H_ #if defined(BBSTANDARD) #define ADF_PORT_SWD #define ADF_PORT_IN_SWD #define ADF_PORT_DIR_SWD #define ADF_SWD PORTE PINE DDRE #define #define #define #define ADF_PORT_SCLK ADF_PORT_IN_SCLK ADF_PORT_DIR_SCLK ADF_SCLK PORTC PINC DDRC #define #define #define #define ADF_PORT_SREAD ADF_PORT_IN_SREAD ADF_PORT_DIR_SREAD ADF_SREAD PORTC PINC DDRC #define #define #define #define ADF_PORT_SDATA ADF_PORT_IN_SDATA ADF_PORT_DIR_SDATA ADF_SDATA PORTB PINB DDRB #define #define #define #define ADF_PORT_SLE ADF_PORT_IN_SLE ADF_PORT_DIR_SLE ADF_SLE PORTB PINB DDRB #define #define #define #define ADF_PORT_MUXOUT PORTD ADF_PORT_IN_MUXOUT PIND ADF_PORT_DIR_MUXOUT DDRD ADF_MUXOUT #define ADF_PORT_CE PORTD #define ADF_PORT_IN_CE PIND #define ADF_PORT_DIR_CE DDRD #define ADF_CE #elif defined(BBMICRO) #define ADF_PORT_SWD PORTB #define ADF_PORT_IN_SWD PINB #define ADF_PORT_DIR_SWD DDRB #define ADF_SWD #define ADF_PORT_SCLK #define ADF_PORT_IN_SCLK PORTC PINC 66 #define ADF_PORT_DIR_SCLK #define ADF_SCLK DDRC #define #define #define #define ADF_PORT_SREAD ADF_PORT_IN_SREAD ADF_PORT_DIR_SREAD ADF_SREAD PORTC PINC DDRC #define #define #define #define ADF_PORT_SDATA ADF_PORT_IN_SDATA ADF_PORT_DIR_SDATA ADF_SDATA PORTC PINC DDRC #define #define #define #define ADF_PORT_SLE ADF_PORT_IN_SLE ADF_PORT_DIR_SLE ADF_SLE PORTC PINC DDRC #define #define #define #define ADF_PORT_MUXOUT PORTD ADF_PORT_IN_MUXOUT PIND ADF_PORT_DIR_MUXOUT DDRD ADF_MUXOUT #define #define #define #define #endif ADF_PORT_CE PORTD ADF_PORT_IN_CE PIND ADF_PORT_DIR_CE DDRD ADF_CE typedefunion { unsignedlong whole_reg; struct{ unsignedint lower; unsignedint upper; } word; unsignedchar byte[4]; } adf_reg_t; typedefstruct{ struct{ double data_rate; double mod_index; unsignedlong freq; } desired; struct{ double data_rate; double mod_index; unsignedlong freq; unsignedint freq_dev; } real; union{ adf_reg_t r0_reg; struct{ unsignedchar address_bits :4; unsignedint frac_n :15; unsignedint int_n :8; unsignedchar rx_on :1; unsignedchar uart_mode :1; unsignedchar muxout :3; } r0; }; 67 union{ adf_reg_t r2_reg; struct{ unsignedchar address_bits :4; unsignedchar modulation_scheme :3; unsignedchar pa_enable :1; unsignedchar pa_ramp :3; unsignedchar pa_bias :2; unsignedchar power_amplifier :6; unsignedint tx_frequency_deviation :9; unsignedchar tx_data_invert :2; unsignedchar rcosine_alpha :1; } r2; }; union{ adf_reg_t r3_reg; struct{ unsignedchar address_bits :4; unsignedchar bbos_clk_divide:2; unsignedchar dem_clk_divide :4; unsignedchar cdr_clk_divide :8; unsignedchar seq_clk_divide :8; unsignedchar agc_clk_divide :6; } r3; }; union{ adf_reg_t r4_reg; struct{ unsignedchar address_bits :4; unsignedchar demod_scheme :3; unsignedchar dot_product :1; unsignedchar rx_invert :2; unsignedint disc_bw :10; unsignedint post_demod_bw :10; unsignedchar if_bw :2; } r4; }; union{ adf_reg_t r5_reg; struct{ unsignedchar address_bits :4; unsignedchar if_cal_coarse :1; unsignedint if_filter_divider :9; unsignedchar if_filter_adjust :6; unsignedchar ir_phase_adjust_mag :4; unsignedchar ir_phase_adjust_direction :1; unsignedchar ir_gain_adjust_mac :5; unsignedchar ir_gain_adjust_iq :1; unsignedchar ir_gain_adjust_updn :1; } r5; }; union{ adf_reg_t r6_reg; struct{ unsignedchar address_bits :4; unsignedchar if_fine_cal :1; unsignedchar if_cal_lower_tone :8; unsignedchar if_cal_upper_tone :8; unsignedchar if_cal_dwell_time :7; unsignedchar ir_cal_source_drive :2; unsignedchar ir_cal_source_div_2 :1; } r6; 68 }; } adf_conf_t; typedefstruct{ unsignedlong adf_xtal; union{ adf_reg_t r1_reg; struct{ unsignedchar address_bits :4; unsignedchar r_counter :3; unsignedchar clockout_divide :4; unsignedchar xtal_doubler :1; unsignedchar xosc_enable :1; unsignedchar xtal_bias :2; unsignedchar cp_current :2; unsignedchar vco_enable :1; unsignedchar rf_divide_by_2 :1; unsignedchar vco_bias :4; unsignedchar vco_adjust :2; unsignedchar vco_inductor :1; } r1; }; union{ adf_reg_t r10_reg; struct{ unsignedchar address_bits :4; unsignedchar afc_en :1; unsignedint afc_scaling_factor :12; unsignedchar ki :4; unsignedchar kp :3; unsignedchar afc_range :8; } r10; }; union{ adf_reg_t r12_reg; struct{ unsignedchar address_bits :4; unsignedchar lock_thres_mode :2; unsignedchar swd_mode :2; unsignedchar packet_length :8; } r12; }; union{ adf_reg_t r14_reg; struct{ unsignedchar address_bits :4; unsignedchar test_tdac_en :1; unsignedint test_dac_offset :16; unsignedchar test_dac_gain :4; unsignedchar pulse_ext :2; unsignedchar leak_factor :3; unsignedchar ed_peak_resp :2; } r14; }; union{ adf_reg_t r15_reg; struct{ unsignedchar address_bits :4; unsignedchar rx_test_mode :4; unsignedchar tx_test_mode :3; unsignedchar sd_test_mode :3; unsignedchar cp_test_mode :3; 69 unsignedchar clk_mux :3; unsignedchar pll_test_mode :4; unsignedchar analog_test_mode :4; unsignedchar force_ld_high :1; unsignedchar reg1_pd :1; unsignedchar cal_override :2; } r15; }; } adf_sysconf_t; void adf_write_reg(adf_reg_t *reg); adf_reg_t adf_read_reg(unsignedint readback_config); void adf_set_power_on(unsignedlong adf_xtal); void adf_set_power_off(void); void adf_init_rx_mode(unsignedint data_rate, uint8_t mod_index,unsignedlong freq, uint8_t if_bw); void adf_init_tx_mode(unsignedint data_rate, uint8_t mod_index,unsignedlong freq); void adf_set_rx_mode(void); void adf_set_tx_mode(void); void adf_afc_on(unsignedchar range,unsignedchar ki,unsignedchar kp); void adf_afc_off(void); void adf_set_tx_power(char pasetting); #define #define #define #define ADF_SYNC_WORD_LEN_12 ADF_SYNC_WORD_LEN_16 ADF_SYNC_WORD_LEN_20 ADF_SYNC_WORD_LEN_24 #define #define #define #define ADF_SYNC_WORD_ERROR_TOLERANCE_0 ADF_SYNC_WORD_ERROR_TOLERANCE_1 ADF_SYNC_WORD_ERROR_TOLERANCE_2 ADF_SYNC_WORD_ERROR_TOLERANCE_3 void adf_set_rx_sync_word(unsignedlong word,unsignedchar len,unsignedchar error_tolerance); void adf_set_threshold_free(void); #define #define #define #define #define #define ADF_TEST_TX_MODE_CARRIER_ONLY ADF_TEST_TX_MODE_TONE_HIGH ADF_TEST_TX_MODE_TONE_LOW ADF_TEST_TX_MODE_PATTERN_1010 ADF_TEST_TX_MODE_PATTERN_PN9 ADF_TEST_TX_MODE_SYNC_BYTE void adf_test_tx(int mode); void adf_test_off(void); unsignedint adf_readback_version(void); signedint adf_readback_rssi(void); signedint adf_readback_afc(void); signedint adf_readback_temp(void); float adf_readback_voltage(void); void adf_configure(void); void adf_reset(void); #endif /* _ADF7021_H_ */ 70  adf7021.c #include #include #include #include #include #include #include #include "adf7021.h" "main.h" "ptt.h" "led.h" static adf_conf_t rx_conf, tx_conf; static adf_sysconf_t sys_conf; static uint32_t adf_current_syncword; externstruct bluebox_config conf; enum{ ADF_OFF, ADF_ON, ADF_TX, ADF_RX } adf_state; enum{ ADF_PA_OFF, ADF_PA_ON } adf_pa_state; void adf_write_reg(adf_reg_t *reg) { signedchar i, j; unsignedchar byte; ADF_PORT_SLE &=~_BV(ADF_SLE); ADF_PORT_SCLK &=~_BV(ADF_SCLK); /* Clock data out MSbit first */ for(i =3; i >=0; i ){ byte= reg->byte[i]; for(j =8; j >0; j ){ ADF_PORT_SCLK &=~_BV(ADF_SCLK); if(byte &0x80) ADF_PORT_SDATA |= _BV(ADF_SDATA); else ADF_PORT_SDATA &=~_BV(ADF_SDATA); ADF_PORT_SCLK |= _BV(ADF_SCLK); byte+= byte; } ADF_PORT_SCLK &=~_BV(ADF_SCLK); } /* Strobe the latch */ ADF_PORT_SLE |= _BV(ADF_SLE); ADF_PORT_SLE |= _BV(ADF_SLE); ADF_PORT_SDATA &=~_BV(ADF_SDATA); ADF_PORT_SDATA &=~_BV(ADF_SLE); } 71 adf_reg_t adf_read_reg(unsignedint readback_config) { adf_reg_t register_value; signedchar i, j; /* Write readback and ADC control value */ register_value.whole_reg =((readback_config &0x1F)0; j ){ ADF_PORT_SCLK |= _BV(ADF_SCLK); byte+= byte; if(ADF_PORT_IN_SREAD & _BV(ADF_SREAD)) byte|=1; ADF_PORT_SCLK &=~_BV(ADF_SCLK); } register_value.byte[i]= byte; } ADF_PORT_SCLK |= _BV(ADF_SCLK); ADF_PORT_SLE &=~_BV(ADF_SLE); ADF_PORT_SCLK &=~_BV(ADF_SCLK); return register_value; } void adf_set_power_on(unsignedlong adf_xtal) { /* Store locally the oscillator frequency */ sys_conf.adf_xtal = adf_xtal; /* Ensure the ADF GPIO port is correctly initialised */ ADF_PORT_DIR_SWD &=~_BV(ADF_SWD); ADF_PORT_DIR_SCLK |= _BV(ADF_SCLK); ADF_PORT_DIR_SREAD &=~_BV(ADF_SREAD); ADF_PORT_DIR_SDATA |= _BV(ADF_SDATA); ADF_PORT_DIR_SLE |= _BV(ADF_SLE); ADF_PORT_DIR_MUXOUT &=~_BV(ADF_MUXOUT); ADF_PORT_DIR_CE |= _BV(ADF_CE); ADF_PORT_CE |= _BV(ADF_CE); /* write R1, Turn on Internal VCO */ sys_conf.r1.address_bits =1; sys_conf.r1.r_counter =1; sys_conf.r1.clockout_divide =0; 72 sys_conf.r1.xtal_doubler =0; sys_conf.r1.xosc_enable =1; sys_conf.r1.xtal_bias =3; sys_conf.r1.cp_current =3; sys_conf.r1.vco_enable =1; sys_conf.r1.rf_divide_by_2 =1; sys_conf.r1.vco_bias =15; sys_conf.r1.vco_adjust =1; sys_conf.r1.vco_inductor =0; adf_write_reg(&sys_conf.r1_reg); /* write R15, set CLK_MUX to enable SPI */ sys_conf.r15.address_bits =15; sys_conf.r15.rx_test_mode =0; sys_conf.r15.tx_test_mode =0; sys_conf.r15.sd_test_mode =0; sys_conf.r15.cp_test_mode =0; sys_conf.r15.clk_mux =7; sys_conf.r15.pll_test_mode =0; sys_conf.r15.analog_test_mode =0; sys_conf.r15.force_ld_high =0; sys_conf.r15.reg1_pd =0; sys_conf.r15.cal_override =0; adf_write_reg(&sys_conf.r15_reg); /* write R14, enable test DAC */ sys_conf.r14.address_bits =14; sys_conf.r14.test_tdac_en =0; sys_conf.r14.test_dac_offset =0; sys_conf.r14.test_dac_gain =0; sys_conf.r14.pulse_ext =0; sys_conf.r14.leak_factor =0; sys_conf.r14.ed_peak_resp =0; adf_write_reg(&sys_conf.r14_reg); adf_state = ADF_ON; adf_pa_state = ADF_PA_OFF; } void adf_set_power_off() { /* Turn off chip enable */ ADF_PORT_CE &=~_BV(ADF_CE); adf_state = ADF_OFF; adf_pa_state = ADF_PA_OFF; } void adf_find_clocks(adf_conf_t *conf) { /* Find desired F.dev */ unsignedchar tx_freq_dev =(unsignedchar) round(((double)conf>desired.mod_index *0.5* conf->desired.data_rate *65536.0)/(0.5* sys_conf.adf_xtal)); double freq_dev =(tx_freq_dev * sys_conf.adf_xtal)/65536.0; /* Find K */ unsignedint k = round(100000/(freq_dev)); /* Run a variable optimisation for Demod clock divider */ int i_dem; int w_residual = INT16_MAX, residual; 73 double demod_clk, data_rate_real; unsignedint cdr_clk_divide, disc_bw; for(i_dem =1; i_dem desired.data_rate *32)); if(disc_bw >660) continue; if(cdr_clk_divide >255) continue; data_rate_real =(sys_conf.adf_xtal /((double) i_dem *(double) cdr_clk_divide *32.0)); residual= abs((unsignedint) data_rate_real - conf->desired.data_rate); /* Search for a new winner */ if(w_residual > residual){ w_residual = residual; conf->r3.dem_clk_divide = i_dem; } } /* Demodulator clock */ demod_clk =(double) sys_conf.adf_xtal / conf->r3.dem_clk_divide; /* CDR clock */ conf->r3.cdr_clk_divide =(unsignedint) round(demod_clk /((double)conf>desired.data_rate *32)); /* Data rate and freq deviation */ conf->real.data_rate =(sys_conf.adf_xtal /((double) conf->r3.dem_clk_divide *(double) conf->r3.cdr_clk_divide *32.0)); conf->real.freq_dev =(unsignedchar) round(((double)conf->desired.mod_index *0.5* conf->real.data_rate *65536.0)/(0.5* sys_conf.adf_xtal)); /* Discriminator bandwidth */ conf->r4.disc_bw = round((k * demod_clk)/400000); /* Post demodulation bandwidth */ conf->r4.post_demod_bw = round(((conf->real.data_rate *0.75)*3.141592654*2048.0)/ demod_clk); /* K odd or even */ if(k &1){ if(((k +1)/2)&1){ conf->r4.rx_invert =2; conf->r4.dot_product =1; }else{ conf->r4.rx_invert =0; conf->r4.dot_product =1; } }else{ if((k /2)&1){ conf->r4.rx_invert =2; conf->r4.dot_product =0; }else{ conf->r4.rx_invert =0; 74 conf->r4.dot_product =0; } } } void adf_init_rx_mode(unsignedint data_rate, uint8_t mod_index,unsignedlong freq, uint8_t if_bw) { /* Calculate the RX clocks */ rx_conf.desired.data_rate = data_rate; rx_conf.desired.mod_index = mod_index; rx_conf.desired.freq = freq; adf_find_clocks(&rx_conf); /* Setup RX Clocks */ rx_conf.r3.seq_clk_divide =round(sys_conf.adf_xtal /100000.0); rx_conf.r3.agc_clk_divide =round((rx_conf.r3.seq_clk_divide * sys_conf.adf_xtal)/10000.0); rx_conf.r3.bbos_clk_divide =2;// 16 rx_conf.r3.address_bits =3; /* IF filter calibration */ rx_conf.r5.if_filter_divider =(sys_conf.adf_xtal /50000); rx_conf.r5.if_cal_coarse =1; rx_conf.r5.address_bits =5; /* write R0, turn on PLL */ double n =((freq-100000)/(sys_conf.adf_xtal *0.5)); unsignedlong n_int = floor(n); unsignedlong n_frac = round((n - floor(n))*32768); rx_conf.r0.rx_on =1; rx_conf.r0.uart_mode =1; rx_conf.r0.muxout =2; rx_conf.r0.int_n = n_int; rx_conf.r0.frac_n = n_frac; rx_conf.r0.address_bits =0; /* write R4, turn on demodulation */ rx_conf.r4.demod_scheme =1; rx_conf.r4.if_bw = if_bw;// = 12.5, = 18.75, = 25 KHz rx_conf.r4.address_bits =4; } void adf_init_tx_mode(unsignedint data_rate, uint8_t mod_index,unsignedlong freq) { /* Calculate the RX clocks */ tx_conf.desired.data_rate = data_rate; tx_conf.desired.mod_index = mod_index; tx_conf.desired.freq = freq; adf_find_clocks(&tx_conf); /* Setup default R3 values */ tx_conf.r3.seq_clk_divide =round(sys_conf.adf_xtal /100000.0); tx_conf.r3.agc_clk_divide =round((tx_conf.r3.seq_clk_divide * sys_conf.adf_xtal)/10000.0); tx_conf.r3.bbos_clk_divide =2;// 16 tx_conf.r3.address_bits =3; /* write R0, turn on PLL */ double n =(freq /(sys_conf.adf_xtal *0.5)); 75 unsignedlong n_int = floor(n); unsignedlong n_frac = round((n - floor(n))*32768); tx_conf.r0.rx_on =0; tx_conf.r0.uart_mode =1; tx_conf.r0.muxout =2; tx_conf.r0.int_n = n_int; tx_conf.r0.frac_n = n_frac; tx_conf.r0.address_bits =0; /* Set the calcualted frequency deviation */ tx_conf.r2.tx_frequency_deviation = tx_conf.real.freq_dev; /* Set PA and modulation type */ tx_conf.r2.power_amplifier = (WARNING NON LINEAR) tx_conf.r2.pa_bias =3;// = tx_conf.r2.pa_ramp =7;// = tx_conf.r2.pa_enable =1;// tx_conf.r2.modulation_scheme tx_conf.r2.address_bits =2; conf.pa_setting;// = OFF, 63 = MAX 5uA, = 7uA, = 9uA, = 11 uA OFF, = LOWEST, = HIGHEST = OFF, = ON =1;// = FSK, = GFSK, = RCFSK /* Ensure rewrite of PA register */ adf_pa_state = ADF_PA_OFF; } void adf_afc_on(unsignedchar range,unsignedchar ki,unsignedchar kp) { /* write R10, turn AFC on */ sys_conf.r10.afc_en =1; sys_conf.r10.afc_scaling_factor =524;/* (2^24 * 500 / XTAL_FREQ) */ sys_conf.r10.ki = ki; sys_conf.r10.kp =kp; sys_conf.r10.afc_range = range; sys_conf.r10.address_bits =10; adf_write_reg(&sys_conf.r10_reg); } void adf_afc_off(void) { sys_conf.r10.afc_en =0; adf_write_reg(&sys_conf.r10_reg); } void adf_set_tx_power(char pasetting) { tx_conf.r2.power_amplifier = pasetting; adf_write_reg(&tx_conf.r2_reg); } void adf_set_rx_sync_word(unsignedlong word,unsignedchar len,unsignedchar error_tolerance) { adf_reg_t register_value; /* write R11, configure sync word detect */ adf_current_syncword = word; register_value.whole_reg =11; register_value.whole_reg |= word [...]... tàu thuyền bị nạn 1.2 Xây dựng hệ thống thu phát băng hẹp dải tần UHF có khả năng thay đổi tham số thu phát và các dạng điều chế số khác nhau TRANSMITTER GPS Antenna Module GPS HPA ADF7021 Transmit Antenna Filter Display and Control Audio Processor RECEIVER Receive Antena LNA Signal Processor ADF7021 Display Monitor Control Audio Processor Hình 1 Sơ đồ hệ thống thu phát băng hẹp dải tần UHF a Bên phát: ... pháp, xây dựng và làm chủ công nghệ thiết kế chế tạo hệ thống thu phát tín hiệu thông tin biển (âm thanh, tọa độ…) cho các tầu đánh cá của ngư dân Thiết bị thu phát thoại và dữ liệu có công suất nâng cao phù hợp, với độ nhạy máy thu thiết kế tối ưu, tích hợp GPS và truyền thông tin trạng thái của tầu thuyền trên biển, có khả năng thu phát qua vệ tinh VINASAT của Việt Nam sau này, chủ động cho hỗ trợ và. .. Thu tín hiệu GPS và xuất ra dữ liệu tọa độ trước khi đưa vào module ADF  Module ADF7021  Nhận tín hiệu tọa độ, điều chế tín hiệu số và tạo tín hiệu RF 5  Bộ khuếch đại công suất lớn  Trở kháng vào ra 50 Ohm  Hệ số khuếch đại và độ ổn định cao  Bộ lọc  Trở kháng vào ra 50 Ohm  Băng thông hẹp, tính triệt hài và nhiễu cao  Tỷ số sóng đứng thấp  Màn hình điều khiển và hiển thị  Điều khiển, thay. .. dân giao thông trên biển Hệ thống làm việc trên băng tần qui hoạch cho mạng di động, trong vòng 2 tháng đã có 200.000 thu bao đăng ký sử dụng dịch vụ See+ này Hệ thống hoạt động trên 2 băng tần dung cho điện thoại di động UHF từ 821 MHz tới 960 MHz và băng tần L từ 1710 MHz tới 2000 MHz Tuy nhiên do hạn chế về công suất phát của các trạm BTS trên bờ biển, hạn chế về độ nhạy máy thu của điện thoại di... nhạy của máy thu cũng như trang bị trên tầu chưa đồng bộ, cự ly liên lạc không ổn định, nhiều tầu thuyền đánh cá của ngư dân ra ngoài vùng phủ sóng HF, VHF mà thiết bị thông tin thu phát qua vệ tinh còn rất hạn chế, chưa đồng bộ trang bị máy thu GPS và tích hợp vào hệ thống thu phát dữ liệu về trạng thái của tầu thuyền Hệ thống thu phát tín hiệu cấp cứu trên kênh VHF cho các tầu đánh cá nhỏ và vừa của... ương, được phát ngay và liên tục trên tần số 7906 kHz với thời lượng 15 phút một phiên Các tầu thuyền trên biển chủ yếu được trang bị hệ thống thông tin ICOM tần số trên băng tầnHF liên lạc 2 chiều với đất liền Ngoài ra do ảnh hưởng môi trường truyền sóng biển có nhiều biến động, can nhiễu cho quá trình truyền sóng cũng như ảnh hưởng về công suất phát của thiết bị phát, ảnh hưởng về tần số làm việc,... thay đổi chế độ của ADF7021  Điều khiển và kiểm soát công suất phát  Hiển thị mức công suất phát, cảnh báo sóng dội  Tự động tắt khi có đột biến: quá dòng, quá áp, quá công suất dội…  Anten phát  Trở kháng 50 Ohm  Tỷ số sóng đứng thấp ... quan hệ thống 1.1 Hệ thống thông tin biển 1.2 Xây dựng hệ thống thu phát băng hẹp dải tần UHF có khả thay đổi tham số thu phát dạng điều chế số khác Chương – Kỹ thu t... này, chủ động cho hỗ trợ tìm kiếm tàu thuyền bị nạn 1.2 Xây dựng hệ thống thu phát băng hẹp dải tần UHF có khả thay đổi tham số thu phát dạng điều chế số khác TRANSMITTER GPS Antenna Module GPS... xin cam đoan hệ thống thu phát băng hẹp dải tần UHF có khả thay đổi tham số thu phát dạng điều chế số khác trình bày luận văn thực hướng dẫn PGS.TS Bạch Gia Dương Tất tài liệu tham khảo từ nghiên

Ngày đăng: 25/11/2015, 17:35

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan