Đồ Á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 -