Tài liệu Đồ án thiết kế hệ thống ip camera hỗ trợ chuẩn mjpeg trên nền fpga ứng dụng trong giám sát và điều khiển từ xa

  • Số trang: 125 |
  • Loại file: PDF |
  • Lượt xem: 1848 |
  • Lượt tải: 3
hoanggiang80

Tham gia: 27/02/2015

Mô tả:

Đồ Án Thiết kế hệ thống IP camera hỗ trợ chuẩn MJPEG trên nền FPGA ứng dụng trong giám sát và điều khiển từ xa
tailieucaohoc.com Đồ án Tốt nghiệp Đại học 2012 LỜI NÓI ĐẦU Ngày nay, các camera giám sát có kèm theo chức năng điều khiển có mặt ở khắp mọi nơi. Chúng được sử dụng trong gia đình, bảo tàng, các điểm nóng giao thông hay các vị trí mà con người ít khi đặt chân tới. Ngoài các chức năng giám sát thông thường, các camera loại này còn có khả năng giúp người dùng điều khiển các thiết bị điện tại nơi theo dõi. Tuy nhiên, các hệ thế này hoặc được nhập khẩu toàn bộ từ nước ngoài, có chi phí cao và khả năng cấu hình lại thấp. Ngoài ra, tốc độ truyền hình ảnh cũng là một trong những nhược điểm của các hệ thống này. Kỹ thuật nén dữ liệu trước khi truyền đi là vấn đề cốt lõi của các sản phẩm IP camera. Thông thường, có hai cách nén dữ liệu: một là nén bằng phần mềm, hai là nén bằng IC chuyên dụng. Với giải pháp thứ nhất, giá thành của sản phẩm có thể được giảm bớt nhưng tốc độ truyền hình ảnh sẽ rất thấp hoặc chất lượng hình ảnh không được đảm bảo. Với giải pháp thứ hai, ngoài việc có giá thành cao thì việc cấu hình lại sẽ rất khó khăn. Từ ý tưởng muốn xây dựng một hệ thống Camera có khả năng truyền hình ảnh tại nhiều nơi quan sát tới người dùng, cho phép người dùng có thể điều khiển các thiết bị điện từ xa và có thể thay đổi chức năng hoặc nâng cấp hệ thống, kết hợp với các kiến thức thu được trong suốt thời gian học Đại học, chúng em nhận thấy rằng công nghệ FPGA có thể đáp ứng được các yêu cầu trên. Cộng với việc một hệ thống tương tự đã được thực hiện và có các kết quả khả quan trên phòng Nghiên cứu Hệ thống nhúng và Tính toán khả cấu hình (ESRC Lab) của Viện Điện Tử Viễn Thông, chúng em quyết định chọn đề tài “Thiết kế hệ thống IP camera hỗ trợ chuẩn MJPEG trên nền FPGA ứng dụng trong giám sát và điều khiển từ xa” làm Đồ án tốt nghiệp Đại học của mình. Sau ba tháng phân tích và thiết kế, nhóm đã thu được các kết quả đang chú ý: lõi nén ảnh MJPEG đã được thực hiện thành công, phần mềm cho người dùng cũng đã được xây dựng hoàn chỉnh, việc giao tiếp với các thiết bị bên ngoài qua một mạch mở rộng cũng đang đi vào giai đoạn cuối. Để có được các kết quả này, nhóm tác giả xin được i Tailieucaohoc.com Đồ án Tốt nghiệp Đại học 2012 gửi lời cảm ơn chân thành tới Tiến sỹ Phạm Ngọc Nam, người đã hướng dẫn trực tiếp và cung cấp trang thiết bị cho nhóm. Nhóm tác giả cũng xin cảm ơn các tổ chức, các cá nhân:  Phòng Nghiên cứu Hệ thống nhúng và Tính toán khả cấu hình.  Tập thể lớp KSTN – ĐTVT – K52, Đại học Bách Khoa Hà Nội.  Thạc sỹ Nguyễn Minh Tiến  Kỹ sư Phạm Văn Hà  Kỹ sư Nguyễn Chu Tiến Mạnh  Kỹ sư Nguyễn Minh Dũng  Hãng cung cấp Xilinx đã giúp đỡ nhóm hoàn thành Đồ án Tốt nghiệp của mình. Hà Nội, tháng 6 năm 2012 Nhóm sinh viên thực hiện Vũ Hữu Tiệp Đỗ Tiến Thành ii Đồ án Tốt nghiệp Đại học 2012 TÓM TẮT ĐỒ ÁN Mục tiêu chính của hệ thống là thiết kế được một IP Camera giúp người dùng theo dõi và điều khiển các thiết bị điện tại nơi quan sát thông qua mạng Internet dựa trên nền tảng FPGA của Xilinx. Hình ảnh sau khi thu được từ một Camera truyền hình tương tự chuẩn PAL sẽ đi qua một IC giải mã tương tự - số, trước khi được nén lại theo chuẩn MJPEG. Dữ liệu nén này được lưu tạm thời trong DDR SDRAM trước khi được gửi đến người dùng mỗi khi có yêu cầu. Người dùng mỗi khi muốn xem thông tin về nơi cần quan sát, họ cần được admin phân quyền và có thể sử dụng các trình duyệt web thông thường như Firefox, Chrome hoặc một phần mềm chuyên biệt. Tại nơi đặt camera, một mạch ngoài có các cảm biến về nhiệt độ, độ ẩm, khói,… kết hợp với chức năng điều khiển các thiết bị điện được nối với mạch chính IP camera qua chuẩn giao tiếp RS485. Các thiết bị điện này có thể được điều khiển tự động hoặc thực hiện các chức năng mà người dùng yêu cầu. iii Đồ án Tốt nghiệp Đại học 2012 ABSTRACT The main purpose of this project is to design and implement a Xilinx FPGA platform based IP camera which has ability to capture images from the supervising place by an analog camera and control some electrical devices in the field. Images captured from a camera go through an ADC integrated circuit before being compressed by hardware (based on JPEG baseline standard) and transmitted to DDR SDRAM. Users, who have been decentralized by admin, can monitor by accessing to IP address of system through web-browsers such as Firefox, Chrome or a specialized software. Additionally, a external board which has ability to mesure environment parameters by sensors and control devices such as fan, air conditioning, fire alarm,… is connected to the IP Camera board through RS485 protocol. iv Đồ án Tốt nghiệp Đại học 2012 MỤC LỤC LỜI N I Đ U ...........................................................................................................i T M TẮT ĐỒ N .................................................................................................. iii ABSTRACT ............................................................................................................. iv M C L C ................................................................................................................ v DANH M C C C H NH V .................................................................................. ix DANH S CH C C ẢNG IỂU ............................................................................ xi DANH SÁCH CÁC TỪ VIẾT TẮT .......................................................................xiii PH N MỞ Đ U ....................................................................................................... 1 Chương 1. GIỚI THIỆU CHUNG ........................................................................ 3 1.1 Giới thiệu ..................................................................................................... 3 1.2 Tính khả thi của đề tài .................................................................................. 4 1.2.1 Tính khả thi về mặt kỹ thuật .................................................................. 4 1.2.2 Khả thi về mặt kinh tế ............................................................................ 4 1.2.3 Khả thi về mặt vận hành ........................................................................ 5 1.2.4 Khả thi về mặt thời gian ......................................................................... 5 1.3 Phân tích yêu cầu.......................................................................................... 5 1.3.1 Phân tích yêu cầu chức năng của hệ thống ............................................. 5 1.3.2 Phân tích yêu cầu phi chức năng của hệ thống ....................................... 8 1.4 Giới thiệu về công nghệ sử dụng .................................................................. 9 1.4.1 Công nghệ FPGA [6] ............................................................................. 9 1.5 Các phần mềm sử dụng trong đề tài .............................................................. 9 1.6 Kết luận chương ......................................................................................... 10 Chương 2. HỆ THỐNG NHÚNG VỚI MICROBLAZE VÀ HỆ ĐIỀU HÀNH XILKERNEL 11 v Đồ án Tốt nghiệp Đại học 2012 2.1 Vi xử lý Microblaze [9] .............................................................................. 11 2.1.1 Kiến trúc .............................................................................................. 11 2.1.2 Giao diện tín hiệu ................................................................................ 20 2.1.3 Giao diện ứng dụng.............................................................................. 24 2.1.4 Kiến trúc tập lệnh ................................................................................ 27 2.2 Kiến trúc hệ thống nhúng với Microblaze ................................................... 29 2.3 Hệ điều hành Xilkernel [10] ....................................................................... 30 2.3.1 Tổng quan ............................................................................................ 30 2.3.2 Tổ chức của hệ điều hành Xilkernel ..................................................... 31 2.3.3 Xây dựng ứng dụng cho Xilkernel ....................................................... 31 2.4 Kết luận chương ......................................................................................... 32 Chương 3. THIẾT KỂ HỆ THỐNG ................................................................... 33 3.1 Sơ đồ khối nền tảng cứng cho hệ thống ...................................................... 33 3.2 Cấu hình nền tảng phần cứng...................................................................... 35 3.3 Khối nén ảnh MJPEG ................................................................................. 36 3.4 Thiết kế phần mềm cho hệ thống ................................................................ 38 3.4.1 Cấu hình thư viện phần mềm cho hệ thống .......................................... 38 3.4.2 Thiết kế phần mềm cho hệ thống ......................................................... 43 3.5 Kết luận chương ......................................................................................... 48 Chương 4. 4.1 THIẾT KẾ LÕI M-JPEG .................................................................. 49 Khối Lẫy mẫu dữ liệu ................................................................................. 50 4.1.1 Phân tích chức năng ............................................................................. 50 4.1.2 Thiết kế chi tiết .................................................................................... 54 4.1.3 Kết quả tổng hợp khối .......................................................................... 57 4.2 Khối Biến đổi Cosin rời rạc (DCT)............................................................. 58 vi Đồ án Tốt nghiệp Đại học 2012 4.2.1 Phân tích chức năng ............................................................................. 58 4.2.2 Thiết kế chi tiết .................................................................................... 59 4.2.3 Kết quả tổng hợp khối .......................................................................... 60 4.3 Khối Lượng tử hóa ..................................................................................... 61 4.3.1 Phân tích chức năng ............................................................................. 61 4.3.2 Thiết kế chi tiết .................................................................................... 62 4.3.3 Kết quả tổng hợp khối .......................................................................... 63 4.4 Khối Quét zigzag........................................................................................ 63 4.4.1 Phân tích chức năng ............................................................................. 63 4.4.2 Thiết kế chi tiết .................................................................................... 64 4.4.3 Kết quả tổng hợp khối .......................................................................... 65 4.5 Khối RLE và Delta DC............................................................................... 65 4.5.1 Phân tích chức năng ............................................................................. 65 4.5.2 Thiết kế chi tiết .................................................................................... 67 4.5.3 Kết quả tổng hợp khối .......................................................................... 68 4.6 Khối Mã hóa Huffman................................................................................ 69 4.6.1 Phân tích chức năng ............................................................................. 69 4.6.2 Thiết kế................................................................................................ 71 4.6.3 Kết quả tổng hợp khối .......................................................................... 73 4.7 Khối AddHeader ........................................................................................ 74 4.7.1 Phân tích chức năng ............................................................................. 74 4.7.2 Thiết kế................................................................................................ 75 4.7.3 Kết quả tổng hợp khối .......................................................................... 75 4.8 Khối FIFO2750 .......................................................................................... 75 4.8.1 Phân tích chức năng ............................................................................. 75 vii Đồ án Tốt nghiệp Đại học 2012 4.8.2 Thiết kế................................................................................................ 76 4.8.3 Kết quả tổng hợp khối .......................................................................... 76 4.9 Kết quả tổng hợp khối nén ảnh JPEG ......................................................... 77 4.10 Kết luận chương ......................................................................................... 77 Chương 5. 5.1 THIẾT KẾ PH N MỀM DÀNH CHO NGƯỜI SỬ D NG ............. 78 Thiết kế cơ sở dữ liệu ................................................................................. 78 5.1.1 Chuẩn hóa ............................................................................................ 78 5.1.2 Chuẩn hóa các bảng dữ liệu ................................................................. 79 5.2 Phần mềm người sử dụng ........................................................................... 89 5.2.1 Chức năng giám sát hệ thống ............................................................... 89 5.2.2 Chức năng quản trị hệ thống ................................................................ 95 5.3 Kết luận chương ......................................................................................... 98 KẾT LUẬN ............................................................................................................. 99 TÀI LIỆU THAM KHẢO ..................................................................................... 100 BẢNG ĐỐI CHIẾU THUẬT NGỮ ANH VIỆT.................................................... 102 PH L C.................................................................................................................. 1 Phụ lục 1: Code VHDL cho khối Quét zigzag ........................................................ 1 Phụ lục 2: Hồ sơ sinh viên ...................................................................................... 5 viii Đồ án Tốt nghiệp Đại học 2012 DANH MỤC CÁC HÌNH VẼ Hình 1.1 Tổng quan về hệ thống IP Camera đã thiết kế ............................................. 3 Hình 1.2 Kế hoạch thực hiện đề tài ............................................................................ 5 Hình 2.1 Sơ đồ khối chức năng của MicroBlaze [9]................................................. 12 Hình 2.2 Pipeline ba trạng thái của MicroBlaze ....................................................... 13 Hình 2.3 Pipeline năm trạng thái của MicroBlaze .................................................... 14 Hình 2.4 Mô hình quản lí bộ nhớ ảo [9] ................................................................... 15 Hình 2.5 Xử lí cache lệnh ........................................................................................ 17 Hình 2.6 Xử lí cache dữ liệu .................................................................................... 19 Hình 2.7 Giao diện tín hiệu của MicroBlaze ............................................................ 20 Hình 2.8 Sơ đồ chân của một liên kết FSL ............................................................... 22 Hình 2.9 Khối IDCT liên kết với MicroBlaze qua FSL ............................................ 23 Hình 2.1 Lệnh loại A ............................................................................................. 29 Hình 2.11 Lệnh loại B ............................................................................................. 29 Hình 2.12 Kiến trúc hệ nhúng với MicroBlaze [9] ................................................... 30 Hình 2.13 Các mô đun của Xilkernel ....................................................................... 31 Hình 3.1 Sơ đồ khối của Hệ thống IP Camera .......................................................... 33 Hình 3.2 Sơ đồ giao tiếp khối MJPEG core với các khối khác ................................. 37 Hình 3.3 Các tín hiệu vào ra khối MJPEG core ....................................................... 38 Hình 3.4 Cửa sổ chọn Hệ điều hành Xilkernel ......................................................... 39 Hình 3.5 Cửa sổ cấu hình cho Xilkernel .................................................................. 40 Hình 3.6 Tùy chọn sử dụng giao thức Lwip ............................................................. 41 Hình 3.7 Chương trình server cho máy chủ.............................................................. 44 Hình 3.8 Giải thuật truyền dữ liệu lên Internet ......................................................... 47 Hình 4.1 Quy trình nén ảnh JPEG ............................................................................ 49 Hình 4.2 Tín hiệu vào/ra khối Lấy mẫu dữ liệu ........................................................ 51 Hình 4.3 Cấu trúc dữ liệu của một dòng theo chuẩn ITU-601 .................................. 52 Hình 4.4 Xác định tín hiệu SAV và EAV mành 0 .................................................... 55 Hình 4.5 ố trí dữ liệu trong mỗi thanh RAM ......................................................... 56 Hình 4.6 Tín hiệu vào/ra khối Biến đổi DCT ........................................................... 58 ix Đồ án Tốt nghiệp Đại học 2012 Hình 4.7 Ma trận AT ................................................................................................ 59 Hình 4.8 Ma trận AT sau khi nhân các hệ số với 216 ................................................. 60 Hình 4.9 Tín hiệu vào/ra khối Lượng tử hóa ............................................................ 62 Hình 4.1 Sơ đồ quét zigzag 8*8 ............................................................................. 64 Hình 4.11 Tín hiệu vào/ra khối Quét zigzag ............................................................ 64 Hình 4.12 Tín hiệu vào/ra khối RLE và Delta DC ................................................... 67 Hình 4.13 Thuật toán tìm phần tử cuối cùng khác không trong một block ............... 68 Hình 4.14 Tín hiệu vào/ra khối Mã hóa Huffman .................................................... 71 Hình 4.15 Code VHDL tìm SSSS của các số dương ................................................ 72 Hình 4.16 Code VHDL tìm SSSS của các số âm ..................................................... 73 Hình 4.17 Các tín hiệu vào/ra khối AddHeader........................................................ 74 Hình 4.18 Tín hiệu vào ra khối FIFO2750 ............................................................... 76 Hình 5.1 Sơ đồ thực thể liên kết .............................................................................. 89 Hình 5.2 Sử dụng thread trong C# [19] .................................................................... 90 Hình 5.3 Sơ đồ thuật toán việc nhận và hiển thị dữ liệu ........................................... 92 Hình 5.4 Giao diện chính theo dõi các camera ......................................................... 94 Hình 5.5 Giao diện chỉnh sửa các thông số của camera ............................................ 95 Hình 5.6 Giao diện chương trình thêm vào một hệ thống IP Camera ....................... 95 Hình 5.7 Giao diện đăng nhập của người quản trị hệ thống...................................... 96 Hình 5.8 Giao diện phát lại Video ........................................................................... 97 Hình 5.9 Giao diện tìm kiếm các hệ thống IP Camera .............................................. 97 Hình 5.1 Giao diện kiểm tra tác động của User lên cơ sở dữ liệu ........................... 98 x Đồ án Tốt nghiệp Đại học 2012 DANH SÁCH CÁC BẢNG BIỂU ảng 2.1 Địa chỉ vector ngắt, ngoại lệ và break ....................................................... 16 ảng 2.2 Mô tả bus cục bộ LMB ............................................................................. 21 ảng 2.3 Mô tả tín hiệu của FSL chủ ....................................................................... 22 ảng 2.4 Mô tả tín hiệu của FSL tớ ......................................................................... 22 ảng 2.5 Mô tả loại dữ liệu ..................................................................................... 24 ảng 2.6 Quy ước dùng thanh ghi ........................................................................... 25 ảng 2.7 Địa chỉ ngắt và ngoại lệ ............................................................................ 27 ảng 2.8 Kí hiệu của kiến trúc tập lệnh ................................................................... 27 ảng 3.1 Cấu hình nền tảng phần cứng.................................................................... 35 ảng 3.2 Mô tả các tín hiệu và ra khối MJPEG core ............................................... 38 ảng 3.3 Hiệu suất tối đa hoạt động của lwip 3.00.a ................................................ 42 ảng 3.4 Hiệu suất hoạt động tối đa của lwip 1.3.0 ................................................. 42 ảng 3.5 Thanh ghi giá trị cho ADV7183B hoạt động đầu vào CVBS .................... 45 ảng 3.6 Địa chỉ ADV7183B slave ......................................................................... 46 ảng 3.7 Tín hiệu điều khiển từ phần mềm hệ thống ............................................... 48 ảng 4.1 Chi tiết tín hiệu vào/ra khối lẫy mẫu dữ liệu ............................................. 51 ảng 4.2 ngh a các bit biểu diễn byte thứ tư của SAV và EAV ............................ 52 ảng 4.3 yte thứ tư của SAV và EAV ................................................................... 53 ảng 4.4 ảng mã SAV và EAV ............................................................................. 53 ảng 4.5 Kết quả tổng hợp khối lấy mẫu dữ liệu ..................................................... 57 ảng 4.6 Kết quả tổng hợp khối DCT ...................................................................... 60 ảng 4.7 ảng lượng tử cho tín hiệu chói ................................................................ 61 ảng 4.8 ảng lượng tử cho tín hiệu màu ................................................................ 62 ảng 4.9 Kết quả tổng hợp khối Lượng tử hóa ........................................................ 63 ảng 4.1 Kết quả tổng hợp khối Quét zigzag ......................................................... 65 ảng 4.11 Kết quả tổng hợp khối RLE và Delta DC ................................................ 68 ảng 4.12 ảng phân lớp các giá trị DC [12] .......................................................... 69 xi Đồ án Tốt nghiệp Đại học 2012 ảng 4.13 ảng phân lớp các giá trị AC [12] .......................................................... 70 ảng 4.14 iểu diễn giá trị của các số nhị phân 11 bit ............................................. 72 ảng 4.15 Kết quả tổng hợp khối Mã hóa Huffman ................................................. 73 ảng 4.16 Kết quả tổng hợp khối AddHeader .......................................................... 75 ảng 4.17 Kết quả tổng hợp khối FIFO2750 ........................................................... 76 ảng 4.18 Kết quả tổng hợp khối nén ảnh JPEG...................................................... 77 ảng 5.1 Thông tin vị trí hệ thống ip camera (UNF) ................................................ 80 ảng 5.2 Thông tin vị trí (3NF) ............................................................................... 80 ảng 5.3 Thông tin vị trí camera (2NF) ................................................................... 80 ảng 5.4 Thông tin vị trí camera (3NF) ................................................................... 81 ảng 5.5 Thông tin camera 3NF ........................................................................... 81 ảng 5.6 Thông tin lưu trữ IP Camera (UNF) .......................................................... 82 ảng 5.7 Thông tin IP Camera 3NF ...................................................................... 82 ảng 5.8 Thông tin bản ghi (2NF) ........................................................................... 83 ảng 5.9 Thông tin bản ghi IP Camera (3NF) .......................................................... 83 ảng 5.1 Thông tin bản ghi (3NF) ......................................................................... 83 ảng 5.11 Thông tin hoạt động người dùng (UNF).................................................. 84 ảng 5.12 Thông tin người dùng (3NF) ................................................................... 84 ảng 5.13 Thông tin hoạt động người dùng (2NF) .................................................. 85 ảng 5.14 Thông tin hoạt động người dùng (3NF) .................................................. 85 ảng 5.15 Thông tin hoạt động (2NF) ..................................................................... 86 ảng 5.16 Thông tin hoạt động (3NF) ..................................................................... 86 ảng 5.17 Thông tin bản ghi (3NF) ......................................................................... 86 ảng 5.18 Thông tin mã 3NF ................................................................................ 87 ảng 5.19 Danh sách các bảng dữ liệu ở dạng chuẩn 3NF ....................................... 87 ảng 5.2 ảng các bảng trùng nhau ....................................................................... 88 ảng 5.21 Các bảng dữ liệu chuẩn ........................................................................... 88 ảng 5.22 Hàm và biến chính được sử dụng trong việc nhận/hiển thị ...................... 93 xii Đồ án Tốt nghiệp Đại học 2012 DANH SÁCH CÁC TỪ VIẾT TẮT AC Alternative Coefficient ADC Analog – Digital Converter API Application Programming Interface ARP Address Resolution Protocol ASIC Application Specic Integrated Circuit ASMBL Advanced Silicon Modular Block ASSP Application Specific Standard Product BTR Branch Target Register CLB Configurable Logic Block CPLD Complex Programmable Logic Device DC Direct Coefficient DCM Digital Clock Manager DCT Discrete Cosin Transform DDR Double Data Rate DHCP Dynamic Host Configuration Protocol DLL Delay-Locked Loop DLMB Data interface, Local Memory Bus (BRAM only) DOPB Data interface, On-chip Peripheral Bus DPLB Data interface, Processor LocalBus DRFSL FSL slave direct connection interfaces DWFSL FSL master direct connection interfaces DXCL Data side Xilinx CacheLink interface EAR Exception Address Register EAV End Active Video EDK Embedded Development Kit EDR Exception Data Registe EEPROM Electrically Erasable Programmable Read-Only Memory EOB End OF Block EPROM Erasable Programmable Read-Only Memory xiii Đồ án Tốt nghiệp Đại học 2012 ESR Exception Status Registe FPGA Field-programmable gate array FPU Floating Point Unit FSL Fast Simplex Link FSR Floating Point Status Register GNU General Public License HSTL High-Speed Transceiver Logic ICMP Internet Control Message Protocol IE Interrupt Enable ILMB Instruction interface, Local Memory Bus IOB Input Output Block IP Intellectual Property IPC Inter-Process Communication IPLB Instruction interface, Processor LocalBus IXCL Instruction side Xilinx CacheLink interface JPEG Joint Photographic Experts Group LMB Local Memory Bus LUT LookUp Table LVCMOS Low Voltage Complementary Metal Oxide Semiconductor LVDS Low Voltage Differential Signaling LVTTL Low Voltage Transistor-Transistor Logic MB-GCC MicroBlaze GNU Compiler Collection MFSL FSL master interfaces MJPEG Motion Joint Photographic Experts Group MMU Memory Management Unit MPMC Multi-Port Memory Controller MSR Machine Status Register NIST National Institute of Standard and Technology NPI Native Port Interface OPB On-chip Peripheral Bus OS Operating System xiv Đồ án Tốt nghiệp Đại học 2012 PAL Phase Alternating Lines PC Program Counter PID Process Identifier Register PLA Programmable Logic Array PLB Processor Local Bus PLD Programmable Logic Device POSIX Portable Operating System Interface PVR Processor Version Register RAM Random Access Memory RISC Reduced Instructions Set Computer RSDS Reduced Swing Differential Signaling RTOS Real-Time Operating Systems RTP Real-time Transport Protocol SAV Start Active Video SDRAM Synchronous Dynamic RAM SFSL FSL slave interfaces SLICEL Slice- Logic SLICEM Slice- Memory SPLD Simplex PLD SSTL Stub Series-Terminated Logic TCP Transmission Control Protocol TLBHI Translation Look-Aside Buffer High Register TLBLO Translation Look-Aside Buffer Low Register TLBSX Translation Look-Aside Buffer Search Index TLBX Translation Look-Aside Buffer Index Register UDP User Datagram Protocol VHDL VHSIC Hardware Description Language XCL Xilinx Cache Link XSI X/Open System Interface ZPR Zone Protection Register xv Đồ án Tốt nghiệp Đại học 2012 PHẦN MỞ ĐẦU Hệ thống Intellectual Protocol IP camera đã được Phòng nghiên cứu Hệ thống nhúng và Tính toán khả cấu hình (Embeded System and Reconfigurable Computing Labolatory – ESRC Lab) triển khai từ năm 2 11 và đã thu được một vài kết quả khả quan. Cụ thể, hệ thống này đã có thể nén ảnh theo chuẩn Joint Photographic Experts Group (JPEG) và ghép lại thành luồng Motion – JPEG (MJPEG) đúng trong một số trường hợp, có thể gửi và nhận tín hiệu tới/ từ người dùng qua mạng Ethernet. Nhóm tác giả trước cũng đã xây dựng được giao diện web để quan sát và điều khiển khá hoàn chỉnh. Tuy nhiên, hệ thống trước đây vẫn chưa hoàn thành và còn một vài hạn chế. Một là, phương pháp lưu ảnh ở bộ First In, First Out (FIFO) trung gian giữa phần cứng và phần mềm dẫn đến việc FIFO bị tràn, chỉ hiện thị được một vài khung ảnh (frame) do việc điều khiển đọc dữ liệu từ phần mềm mất khá nhiều thời gian. Hai là, giao diện web hiện tại chỉ có thể quan sát được một IP camera một lúc và chưa có chức năng lưu trữ cũng như phân quyền cho người dùng. Để giải quyết các vấn đề trên, nhóm tác giả, gồm có hai thành viên: Vũ Hữu Tiệp và Đỗ Tiến Thành, đã phân công công việc và giải quyết từng vấn đề, cụ thể như sau:  Vũ Hữu Tiệp: o Chuẩn hóa và tối ưu khối nén ảnh JPEG. o Sử dụng bộ nhớ Double Data Rate (DDR) Synchronous Dynamic Random Access Memory SDRAM có kích thước lớn và tốc độ truy cập dữ liệu nhanh hơn FIFO để giải quyết vấn đề tràn bộ nhớ và chỉ hiện thị được một vài frame ảnh.  Đỗ Tiến Thành: o Thiết kế phần mềm hệ thống kết nối hệ thống Ip Camera với phần mêm người dùng. o Thiết kế phần mềm riêng cho người dùng (Client). Phần mềm này giúp người dùng có thể theo dõi 1, 2, 4 hoặc có thể nhiều hơn. Ngoài ra, Nhóm SV thực hiện: Vũ Hữu Tiệp, Đỗ Tiến Thành Trang 1 Đồ án Tốt nghiệp Đại học 2012 phần mềm có thể lưu trữ và chạy lại các video mỗi khi được người dùng yêu cầu. Đồ án này bao gồm 5 chương, mục đích và tác giả của từng chương như sau:  Chương 1. Giới thiệu chung – Vũ Hữu Tiệp. Giới thiệu các hệ thống IP camera hiện thời, báo cáo khả thi, công nghệ và các phần mềm được sử dụng.  Chương 2. Hệ thống nhúng với MicroBlaze và Hệ điều hành Xilkernel – Đỗ Tiến Thành. Trình bày kiến trúc của vi xử lý MicroBlaze và Hệ điều hành Xilkernel.  Chương 3. Thiết kế hệ thống – Vũ Hữu Tiệp, Đỗ Tiến Thành. Trình bày các khối chức năng chính của hệ thống.  Chương 4. Thiết kế lõi MJPEG – Vũ Hữu Tiệp. Trình bày chi tiết phương pháp thiết kế khối nén hình ảnh thu được theo chuẩn JPEG rồi chuyển thành luông MJPEG bằng ngôn ngữ mô tả phần cứng VHDL (VHSIC Hardware Description Language).  Chương 5. Thiết kế phần mềm dành cho người sử dụng – Đỗ Tiến Thành. Trình bày các bước thiết kế phần mềm cho người dùng. Sau đây là nội dung của từng chương: Nhóm SV thực hiện: Vũ Hữu Tiệp, Đỗ Tiến Thành Trang 2 Đồ án Tốt nghiệp Đại học 2012 Chương 1. GIỚI THIỆU CHUNG Sinh viên thực hiện: Vũ Hữu Tiệp Trong chương đầu tiên này, nhóm tác giả giới thiệu về hệ thống IP Camera đã được thiết kế trước đây tại ESRC Lab, báo cáo khả thi và phạm vi của đề tài. Đồng thời chương này cũng giới thiệu công nghệ FPGA (Field-Programmable Gate Array), các công cụ sử dụng trong đề tài và phân tích các yêu cầu chức năng, phi chức năng của hệ thống. 1.1 Giới thiệu Với các chức năng đã được nêu ở phần “Tóm tắt Đồ án”, hệ thống IP Camera đã được ESRC Lab thiết kế trước đây có sơ đồ như trên Hình 1.1 dưới đây: Mạch điều khiển mở rộng text H nh 1.1 Tổng quan về hệ thống IP Camera đã thiết kế Trong đồ án này, nhóm tác giả sử dụng lại các mạch của hệ thống trên và thiết kế lại lõi nén ảnh MJPEG [1], thiết kế phần mềm cho người dùng và cách giao tiếp giữa phần cứng và phần mềm. Nhóm SV thực hiện: Vũ Hữu Tiệp, Đỗ Tiến Thành Trang 3 Đồ án Tốt nghiệp Đại học 2012 1.2 Tính khả thi của đề tài 1.2.1 Tính khả thi về mặt kỹ thuật Để thiết kế hệ thống, ta cần một số yêu cầu cơ bản sau:  Phần cứng: o Camera CMOS (Complementary Metal-Oxide-Semiconductor) o IC (Intergrated Circuit) giải mã ADV7181B: chuyển tín hiệu tương tự PAL [2] (Phase Alternative Line) thu được từ Camera thành tín hiệu số. o Mạch FPGA Spartan 3E 1600 [3] của Xilinx. o Mạch ngoài sử dụng vi điều khiển trung tâm PIC16F877A [4], giao tiếp với mạch chính qua cap RS485 [5]. o Máy tính cá nhân (Personal Computer – PC) có cấu hình:  Bộ vi xử lý: từ Pentium III trở lên.  RAM: 512MB hoặc cao hơn.  Có Internet.  Phần mềm: o Hệ điều hành Window XP/ Vista/ 7. o Bộ phần mềm Xilinx ISE (Intergrated Sotware Environment), EDK (Embedded Development Kit), ChipScope Pro 10.1. o Visual Studio 2010. 1.2.2 Khả thi về mặt kinh tế Với việc đã có đầy đủ các thiết bị từ nhóm nghiên cứu trước, đề tài này có thể được thực hiện với chi phí không cao. Nhóm SV thực hiện: Vũ Hữu Tiệp, Đỗ Tiến Thành Trang 4 Đồ án Tốt nghiệp Đại học 2012 1.2.3 Khả thi về mặt vận hành Với việc hầu hết mọi người đều biết sử dụng Internet cũng như các phần mềm thông thường khác, việc sử dụng phần mềm do nhóm thiết kế sẽ không gặp nhiều khó khăn. 1.2.4 Khả thi về mặt thời gian Trong ba tháng thực hiện đề tài, nhóm đã lên kế hoạch và thực hiện như Hình 1.2. H nh 1.2 Kế hoạch thực hiện đề tài Trong đồ án này, nhóm tác giả dụng kit FPGA sẵn có Spartan 3E của Xilinx làm nền tảng. Việc này giúp nhóm có thể rút ngắn thời gian thiết kế và có thể dễ dàng kiểm thử, bắt lỗi bằng các công cụ phần mềm mà hãng hỗ trợ. 1.3 Phân tích yêu cầu 1.3.1 Phân tích yêu cầu chức năng của hệ thống Đề tài của nhóm được thiết kế với hai chức năng chính là giám sát và điều khiển. Sau khi phân tích các điều kiện khả thi và các chức năng của hệ thống một cách chi tiết, nhóm tác giả chia hệ thống cần xây dựng thành 3 khối chức năng chính như sau:  Mạch điều khiển chính cho IP camera.  Phần mềm cho hệ thống giám sát và điều khiển từ xa, hoạt động trên hệ điều hành Windows XP, Windows Vista, Windows 7.  Mạch điều khiển các thiết bị ngoài. Nhóm SV thực hiện: Vũ Hữu Tiệp, Đỗ Tiến Thành Trang 5
- Xem thêm -