khi FPGA ra đời đã giải quyết được vấn đề trên cho người thiết kế. Nó cho phép người thiết kế chủ động trong việc thiết kế và thực hiện mạch. Người thiết kế bây giờ chỉ cần thiết kế ra sơ đồ nguyên lý của mạch rồi sử dụng ngôn ngữ mô tả phần cứng cùng với các công cụ hỗ trợ để thực hiện mạch. Cả mạch số bây giờ được nằm trong một Chip FPGA duy nhất. Để thực hiện cùng một chức năng, mạch số được thực hiện dựa trên công nghệ FPGA đơn giản hơn rất nhiều so với mạch số được thực hiện theo phương pháp truyền thống.
LỜI CẢM ƠN Trước tiên em xin gửi lời cám ơn chân thành sâu sắc tới thầy cô trường đại học Công nghệ thông tin truyền thông Thái Nguyên tận tình giảng dạy, truyền đạt cho em kiến thức, kinh nghiệm quý báu suốt thời gian học tập trường Đặc biệt em xin gửi lời cảm ơn chân thành đến thầy Lê Bá Dũng người tận tình giúp đỡ, trực tiếp bảo, hướng dẫn em suốt trình thực đồ án tốt nghiệp Trong thời gian làm việc với thầy, em không ngừng tiếp thu thêm nhiều kiến thức bổ ích mà học tập tinh thần làm việc, thái độ nghiên cứu khoa học nghiêm túc, hiệu điều cần thiết cho em q trình học tập cơng tác sau Sau em xin gửi lời cảm ơn chân thành tới gia đình bạn bè động viên đóng góp ý kiến giúp đỡ q trình học tập nghiên cứu hoàn thành đồ án tốt nghiệp Thái Nguyên, ngày 19 tháng 06 năm 2012 Sinh viên thực Nguyễn Tất Quang LỜI CAM ĐOAN Em xin cam đoan nội dung đồ án em hoàn toàn em tự nghiên cứu xây dựng, không chép đồ án khác Nếu sai em xin chịu trách nhiệm hoàn toàn chịu kỷ luật Khoa Trường đề Thái Nguyên, ngày 19 tháng 06 năm 2012 Sinh viên thực Nguyễn Tất Quang MỤC LỤC LỜI CAM ĐOAN Em xin cam đoan nội dung đồ án em hoàn toàn em tự nghiên cứu xây dựng, không chép đồ án khác Nếu sai em xin chịu trách nhiệm hoàn toàn chịu kỷ luật Khoa Trường đề ra.2 .2 MỤC LỤC DANH MỤC CÁC BẢNG BIỂU 15 LỜI NÓI ĐẦU 20 PHẦN MỞ ĐẦU 21 .21 Chương 22 TỔNG QUAN VỀ NGÔN NGỮ MÔ TẢ PHẦN CỨNG VHDL 22 1.3.1 Các (constant) 27 1.3.2 Các biến (variable) .27 1.3.3 Các kiểu tín hiệu (signal) 27 1.4.2 Kiểu nguyên 28 1.4.3 Các kiểu liệu tiền định nghĩa VHDL 28 1.4.5 Kiểu Record 29 1.4.6 Các kiểu STD_LOGIC 29 Chương 33 TÌM HIỂU CHUNG VỀ BỘ KIT THỰC HÀNH FPGA FTKI_1.0 33 2.1 Tổng quan KIT thực hành FPGA FTKI_1.0 34 Hình 2.1 Sơ đồ khối thực hành FPGA FTKI_1.0 .34 Hình 2.2 Vị trí thành phần thực hành FPGA FTKI_1.0 36 2.2 Tìm hiểu số linh kiện thực hành Kit FPGA FTKI_1.0 .37 2.2.1 Cổng nối tiếp RS232 37 Hình 2.3: Sơ đồ chân tín hiệu RS232Ví trí chân kết nối với FPGA XC3S250E: 38 Bảng 2.1: vị trí chân kết nối RS232 với FPGA XC3S250E 38 2.2.2 LCD Character 16 ký tự hàng 1602M 38 Hình 2.4: LCD Character 1602M 39 Hình 2.5: Sơ đồ chân LCD 1602M 39 Bảng 2.2: Mô tả 16 chân LCD 1602M 40 Bảng 2.3: Vị trí chức chân kết nối LCD FPGA XC3S250E .41 Hình 2.6: DDRAM Memory LCD 1602M 41 Hình 2.7: Bảng ánh xạ mã ký tự mẫu ký tự .42 2.2.3 Khối hiển thị gồm LED thanh: 45 Hình 2.8: Sơ đồ kết nối chân đèn LED segment 45 Bảng 2.5: Bảng đối chiếu giá trị hiển thị tín hiệu điều khiển hiển thị 46 Bảng 2.6: Vị trí chân kết nối với FPGA LED segment 47 2.2.4 Bàn phím ma trận 4x5 .47 Hình 2.9: Sơ đồ khối bàn phím ma trận 4x5 48 Bảng 2.7: Vị trí chân kết nối bàn phím ma trận vào FPGA .49 2.2.5 Hiển thị LED công tắc Jump .49 Bảng 2.8: Vị trí chân kết nối với FPGA khối hiển thị LED công tắc jump 50 2.2.6 Đầu vào Analog chuyển đổi ADC 50 Bảng 2.9: Bảng ngõ vào chọn giải mã ADC0809 .52 Hình 2.12: Sơ đồ kết nối mạch ADC 0809 .53 Bảng 2.10: Vị trí chân kết nối ADC 0809 vào FPGA XC3S250E 54 2.2.7 Chân cắm mở rộng: 54 Bảng 2.11: Vị trí chân chân cắm mở rộng kết nối với FPGA XC3S250E 55 2.2.8 Clock 55 Chương 56 CƠ SỞ LÝ THUYẾT MÃ HÓA NHIỆT ĐỘ, CÁC SAI SỐ VÀ THUẬT TOÁN ĐIỀU KHIỂN PID 56 3.1 Cơ sở lý thuyết mã hóa nhiệt độ .56 Bảng 3.1: Bảng mã hóa nhiệt độ PT100 60 3.2 Các sai số .60 3.3 Bộ điều khiển PID FPGA 61 3.3.1 Thuật toán PID FPGA 61 3.3.2 Thiết kế song song 63 Hình 3.2 Kiến trúc mạch song song PID FPGA 63 3.3.3 Thiết kế mạch nối tiếp .64 Hình 3.3 Kiến trúc mạch nối tiếp PID FPGA .64 3.3.4 Sử dụng PID hiệu 65 Hình 3.4 Sơ đồ khối phương pháp DA 67 3.3.5 Module PID FPGA 68 Chương 71 ỨNG DỤNG KIT FPGA VÀ BỘ ĐIỀU KHIỂN PID CHO ĐIỀU KHIỂN NHIỆT ĐỘ 71 4.1 Mở đầu 71 4.2 Cấu trúc mạch điều khiển số sử dụng công nghệ FPGA 71 4.2.1 Sơ đồ khối mạch điều khiển 71 Hình 4.1 Mạch điều khiển xây dựng công nghệ FPGA 71 Hình 4.2 Sơ đồ Vi điều khiển 72 4.2.2 Khối xử lý thiết bị đo 73 4.2.3 Khối bàn phím 73 4.2.4 Thuật toán điều khiển PID áp dụng FPGA .73 4.2.5 Cơ cấu chấp hành 73 Hình 4.4 Các tín hiệu thiết kế mạch 75 4.2.6 Phân tích hệ thống điều khiển nhiệt độ thiết lập thông số PID 75 Hình 4.5 Kết mơ cho chọn thông số P, Ti, Td .77 4.3 Thử nghiệm thuật toán PID KIT 77 Chương 78 THIẾT KẾ PHẦN MỀM 78 5.1 Yêu cầu phần mềm 78 5.2 Các giải thuật 78 5.2.1 Ý nghĩa ghi sử dụng chức phím bàn phím 78 Hình 5.1 Thuật tốn qt ma trận bàn phím .79 5.2.2 Giải thuật chương trình 80 Hình 5.2 Giải thuật chương trình .80 5.2.3 Giải thuật so sánh nhiệt độ đo nhiệt độ đặt 82 Hình 5.3 Giải thuật so sánh nhiệt độ đo nhiệt độ đặt 82 5.2.4 Luồng chương trình kiểm tra phím nhấn 84 5.2.5 Lưu đồ hiển thị nhiệt độ thực hình .85 KẾT LUẬN 88 Đồ án trình bày cách đầy đủ hệ thống trình thiết kế, thực hệ thống thu thập xử lý số liệu công nghệ FPGA Trong đó, chương giới thiệu tổng quan ngôn ngữ mô tả phần cứng VHDL Chương tìm hiểu Kit thực hành FPGA FTKI_1.0 Chương trình bày sở lý thuyết mã hóa nhiệt độ, sai số thuật tốn điều khiển PID Chương trình bày ứng dụng kit FPGA cho điều khiển nhiệt độ với thuật toán PID chương giới thiệu thiết kế phần mềm cho hệ thống chương trình bày giải thuật sử dụng mã chương trình ứng dụng 88 Đồ án thực hệ thống cho phép thu thập nhiệt độ môi trường, cho phép đặt nhiệt độ từ bàn phím Sau hệ thống hiển thị nhiệt độ đo nhiệt độ đặt hình LCD so sánh nhiệt độ đo với nhiệt độ đặt để đưa tín hiệu điều khiển thích hợp 88 Trong đồ án có vấn đề nhiệt độ đo hiển thị giới hạn khoảng 00° ÷ 99° Vấn đề giải chúng em có nhiều thời gian .88 Trong đồ án nhiều thiếu sót, chúng em kính mong nhận góp ý chỉnh sửa thầy cô giáo khoa hội đồng để phát triển ứng dụng vào thực tế .88 Một lần nữa, chúng em xin chân thành cảm ơn thầy giáo PGS.TS Lê Bá Dũng tận tình bảo, giúp đỡ chúng em hoàn thành đồ án 88 .88 TÀI LIỆU THAM KHẢO 89 [1] Tống Văn On, Thiết kế mạch số với VHDL & Verilog, NXB Lao động xã hội .89 [2] Douglas L.Perry, VHDL Programming by Example .89 [3] VHDL cookbook 89 [4] Spartan-3E Generation FPGA User Guide [Online] Spartan-3 Generation 89 FPGA User Guide 89 Extended Spartan-3A, .89 Spartan-3E, and Spartan-3 .89 FPGA Families 89 UG331 (v1.8) June 13, 2011 89 [5] http://www.xilinx.com .89 [6] http://vi.wikipedia.org .89 [7] Embedded Control Using FPGA 89 PHỤ LỤC 90 MỘT SỐ HÌNH ẢNH VỀ KẾT QUẢ CỦA ĐỒ ÁN 105 DANH MỤC CÁC HÌNH VẼ LỜI CAM ĐOAN Em xin cam đoan nội dung đồ án em hoàn tồn em tự nghiên cứu xây dựng, khơng chép đồ án khác Nếu sai em xin chịu trách nhiệm hoàn toàn chịu kỷ luật Khoa Trường đề ra.2 .2 MỤC LỤC DANH MỤC CÁC BẢNG BIỂU 15 LỜI NÓI ĐẦU 20 PHẦN MỞ ĐẦU 21 .21 Chương 22 TỔNG QUAN VỀ NGÔN NGỮ MÔ TẢ PHẦN CỨNG VHDL 22 1.3.1 Các (constant) 27 1.3.2 Các biến (variable) .27 1.3.3 Các kiểu tín hiệu (signal) 27 1.4.2 Kiểu nguyên 28 1.4.3 Các kiểu liệu tiền định nghĩa VHDL 28 1.4.5 Kiểu Record 29 1.4.6 Các kiểu STD_LOGIC 29 Chương 33 TÌM HIỂU CHUNG VỀ BỘ KIT THỰC HÀNH FPGA FTKI_1.0 33 2.1 Tổng quan KIT thực hành FPGA FTKI_1.0 34 Hình 2.1 Sơ đồ khối thực hành FPGA FTKI_1.0 .34 Hình 2.2 Vị trí thành phần thực hành FPGA FTKI_1.0 36 2.2 Tìm hiểu số linh kiện thực hành Kit FPGA FTKI_1.0 .37 2.2.1 Cổng nối tiếp RS232 37 Hình 2.3: Sơ đồ chân tín hiệu RS232Ví trí chân kết nối với FPGA XC3S250E: 38 Bảng 2.1: vị trí chân kết nối RS232 với FPGA XC3S250E 38 2.2.2 LCD Character 16 ký tự hàng 1602M 38 Hình 2.4: LCD Character 1602M 39 Hình 2.5: Sơ đồ chân LCD 1602M 39 Bảng 2.2: Mô tả 16 chân LCD 1602M 40 Bảng 2.3: Vị trí chức chân kết nối LCD FPGA XC3S250E .41 Hình 2.6: DDRAM Memory LCD 1602M 41 Hình 2.7: Bảng ánh xạ mã ký tự mẫu ký tự .42 2.2.3 Khối hiển thị gồm LED thanh: 45 Hình 2.8: Sơ đồ kết nối chân đèn LED segment 45 Bảng 2.5: Bảng đối chiếu giá trị hiển thị tín hiệu điều khiển hiển thị 46 Bảng 2.6: Vị trí chân kết nối với FPGA LED segment 47 2.2.4 Bàn phím ma trận 4x5 .47 Hình 2.9: Sơ đồ khối bàn phím ma trận 4x5 48 Bảng 2.7: Vị trí chân kết nối bàn phím ma trận vào FPGA .49 2.2.5 Hiển thị LED công tắc Jump .49 Bảng 2.8: Vị trí chân kết nối với FPGA khối hiển thị LED công tắc jump 50 2.2.6 Đầu vào Analog chuyển đổi ADC 50 Bảng 2.9: Bảng ngõ vào chọn giải mã ADC0809 .52 Hình 2.12: Sơ đồ kết nối mạch ADC 0809 .53 Bảng 2.10: Vị trí chân kết nối ADC 0809 vào FPGA XC3S250E 54 10 93 94 Mã nguồn chương trình qt ma trận bàn phím 95 Mã nguồn chương trình hiển thị LCD 96 97 98 99 100 101 Mã nguồn chương trình xử lý ADC 102 103 MỘT SỐ HÌNH ẢNH VỀ KẾT QUẢ CỦA ĐỒ ÁN Khi nhiệt độ thực nhỏ nhiệt độ chuẩn 104 Khi nhiệt độ thực lớn nhiệt độ chuẩn 105 Khi nhiệt độ thực nhiệt độ chuẩn 106 ... dẫn, giúp đỡ em trình làm đồ án 20 PHẦN MỞ ĐẦU Tổng thể đồ án phải xây dựng hệ xử lý cho việc thu thập xử lý số liệu dựa công nghệ FPGA Cụ thể hệ xử lý phải thu thập liệu nhiệt độ môi trường,... khiển số sử dụng công nghệ FPGA 71 4.2.1 Sơ đồ khối mạch điều khiển 71 Hình 4.1 Mạch điều khiển xây dựng công nghệ FPGA 71 Hình 4.2 Sơ đồ Vi điều khiển 72 4.2.2 Khối xử lý. .. khiển số sử dụng công nghệ FPGA 71 4.2.1 Sơ đồ khối mạch điều khiển 71 Hình 4.1 Mạch điều khiển xây dựng công nghệ FPGA 71 11 Hình 4.2 Sơ đồ Vi điều khiển 72 4.2.2 Khối xử