honghactrangxubacki
New Member
Download miễn phí Đồ án Nghiên cứu kiến trúc cluster của mạng cảm nhận không dây
MỤC LỤC 1
LỜI CẢM ƠN 3
NỘI DUNG CỦA ĐỀ TÀI 4
MỞ ĐẦU 5
CHƯƠNG I: GIỚI THIỆU VỀ MẠNG CẢM NHẬN KHÔNG DÂY 6
I.1Định nghĩa mạng cảm nhận không dây 6
I.2. Yêu cầu của mạng cảm nhận không dây 6
I.3.Ưu nhược điểm của WSN 6
I.3.1 Ưu điểm của WSN 6
I.3.2 Nhược điểm của WSN 6
I.4. CácKiến trúc của mạng cảm nhận không dây 7
I.4.1 Mạng đơn 7
I.4.2 Mạng liên kết bước 7
I.5 Tình hình nghiên cứu và ứng dụng WSN ở Trên thế giới và Việt Nam hiện nay 8
I.5.1 Ứng dụng WSN ở Trên thế giới 8
I.5.2 Ứng dụng WSN ở Việt Nam 9
CHƯƠNG II : KIẾN TRÚC NÚT MẠNG CẢM NHẬN KHÔNG DÂY 10
II.1 Bộ vi xử lý (xử lý dữ liệu: Nhiều loại) 10
II.2 Bo mạnh 10
II.3 Bộ lưu trữ 10
II.4 Bộ truyền thông 10
II.5 Bộ cảm biến, bộ khởi động 10
II.6 Giới thiệu về vi điều khiển CC1010 11
CHƯƠNG III : MẠNG CẢM NHẬN KHÔNG DÂY - KIẾN TRÚC CLUSTER 12
III.1 Giới thiệu chung về kiến trúc CLUSTER 12
III.2 Cấu trúc bó (địa chỉ các nút trong bó) 13
III.3.1Chu kỳ thiết lập bó 14
III.3.2 Giải thuật chọn nút đầu bó 15
III.3.3 Thiết lập bó 17
III.3.4 Giao thức phân cấp năng lượng thấp LEACH 20
III.4 Truyền thông trong WSN kiến trúc bó 23
III.4.1Truyền nhận dữ liệu 23
III.4.2 Giao thức truyền thông tránh xung đột 27
III.4.2.1 Giao thức lộ trình phản ứng DSR (Dynamic Source Routing) 28
III.4.2.2 Giao thức điều khiển truy cập môi trường trong mạng (MAC) 31
III.5 Các tình huống đặt ra đối với WSN kiến trúc bó 38
III.5.1 Giới hạn nút trong bó(quản lý kích thước bó) 38
III.5.2 khả năng tự cấu hình 38
III.5.3 khả năng cấu hình lại khi thêm nút hay có nút bị hỏng 39
CHƯƠNG IV: XÂY DỰNG THỬ NGHIỆM MẠNG CẢM NHẬN KHÔNG DÂY KIẾN TRÚC CLUSTER (Kiến trúc Bó) 43
IV.1. Yêu cầu 43
IV.2 Lập trình thử nghiệm 44
IV.2.1 Khái quát về chương trình 44
IV.2.2 Sơ đồ khối và giải thuật 46
IV.2.4 Thư viện HAL của CC1010 47
IV.2.5 Chương trình chính 59
IV.3 Các bước thực hiện chương trình 67
IV.3.1 Dịch chương trình 67
IV.3.2 Nạp chương trình 67
IV.3.3 Thực hiện truyền nhận dữ liệu 68
http://cloud.liketly.com/flash/edoc/web-viewer.html?file=jh2i1fkjb33wa7b577g9lou48iyvfkz6-demo-2016-01-14-do_an_nghien_cuu_kien_truc_cluster_cua_mang_cam_nhan_khong_d_lklOS5EOIo.png /tai-lieu/do-an-nghien-cuu-kien-truc-cluster-cua-mang-cam-nhan-khong-day-87319/
Để tải tài liệu này, vui lòng Trả lời bài viết, Mods sẽ gửi Link download cho bạn ngay qua hòm tin nhắn.
Ketnooi -
Ai cần tài liệu gì mà không tìm thấy ở Ketnooi, đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí
Tóm tắt nội dung tài liệu:
Giai đoạn 2: thiết lập bó:
Sau khi mỗi nút đã quyết định thuộc về bó nào, nó phải khai báo với nút đầu bó rằng nó sẽ là một thành viên của bó. Mỗi nút truyền lại thông tin này tới nút đầu bó sử dụng một giao thức CSMA MAC. Trong giai đoạn này, tất cả các nút đầu bó phải luôn giữ trạng thái lắng nghe
Giai đoạn 3: Khởi tạo lịch trình
Nút đầu bó nhận tất cả các thông báo từ các nút trong bó. Dựa vào số lượng các nút trong bó, nút đầu bó tạo ra một lịch trình TDMA để thông báo cho mỗi nút thành viên biết khi nào nó có thể truyền thông. Lịch trình này sẽ được quảng bá lại cho các nút trong bó.
Giai đoạn 4: Truyền thông dữ liệu
Một khi các bó được tạo, lịch trình TDMA được cố định, quá trình truyền dữ liệu được bắt đầu. Nút đầu bó nhận tất cả dữ liệu từ các nút trong bó, khi tất cả dữ liệu được thu thập, nút đầu bó thực hiện các chức năng xử lí tín hiệu để nén dữ liệu vào trong một tín hiệu đơn. Tín hiệu tổng hợp này sẽ được gửi tới trạm cuối
III.4 Truyền thông trong WSN kiến trúc bó
III.4.1Truyền nhận dữ liệu
Trong chế độ Transparent và UART dữ liệu đến và đi được đưa trực tiếp đến bộ điều chế và giải điều chế. Tuy nhiên trong chế độ Manchester và NRZ dữ liệu được đưa tới thanh ghi RFBUF
Để xác định tốc độ truyền dữ liệu qua RF, lựa chọn tần số dao động thạch anh và các chế độ dữ liệu ta có thể thiết lập ở thanh ghi MODEM0(Thanh ghi điều khiển Modem).
- MODEM0.BAUDRATE(2:0): Xác định tốc độ.
- MODEM.DATAFORMAT(1:0): Xác định các chế độ dữ liệu.
- MODEM.XOSC_FREG(2:0): Lựa chọn tần số dao động thạch anh.
Có 4 chế độ dữ liệu khác nhau được định sẵn cho việc truyền và nhận. Chúng có thể lập trình được thông qua MODEM0.DATA_FORMAT. Các chế độ này khác nhau trong cách mã hóa dữ liệu, cách gửi và nhận dữ liệu cho dù việc tái đồng bộ các bit có được thực hiện hay không. Định dạng dữ liệu phải được lựa chọn trước khi truyền nhận.
Hai trong các chế độ hoạt động, đó là NZR và Manchester. Tốc độ truyền dữ liệu được xác định trong MODEM0.BAUDRATE. MODEM thực hiện việc tái đồng bộ các bit trong suốt quá trình nhận. Trong chế độ hoạt động mã Manchester, Modem luôn thực hiện việc mã hóa và giải mã theo mã Manchester. Chế độ hoạt động Manchester và NZR nhận và gửi dữ liệu theo từng bit hay từng byte, có thể lập trình thông qua RFCON.BYTEMODE. Hai chế độ hoạt động này được sử dụng trong phần lớn các ứng dụng.
Hai chế độ hoạt động khác đó là: Transparent mode UART mode. Trong 2 chế độ này chỉ đơn giản là việc truyền dữ liệu giữa FSK modem, thanh ghi RFBUF và UART0.
Tốc độ truyền từ 0.6kBaud đến 76.8kBaud có thể được lập trình thông qua bit điều khiển MODEM0.BAUDRATE. Bit điều khiển MODEM0.XOSC_FREQ cũng phải được thiết lập theo đồng hồ dao động đang sử dụng:
Tốc độ truyền dữ liệu:
Truyền dữ liệu
Khi truyền dữ liệu trong chế độ bytemode(RFCON.BYTEMODE=1) thì các bit trong thanh ghi dịch 8 bit được chuyển tới bộ điều chế. Khi thanh ghi dịch này trống thì nó sẽ nạp dữ liệu mới từ thanh ghi RFBUF. Nội dung còn lại của thanh ghi RFBUF sẽ không bị ảnh hưởng gì, tuy nhiên sẽ có 1 yêu cầu ngắt được sinh ra để RFBUF có thể nạp dữ liệu mới.
Nếu 1 byte dữ liệu mới không được ghi thì thanh ghi dịch sẽ trống và nó sẽ nạp lại byte dữ liệu từ RFBUF.
Trong chế độ bitmode (RFCON.BYTEMODE=0) thì tại mỗi thời điểm chỉ có 1 bit được đưa vào bộ đệm. Vì vậy thanh ghi dịch sẽ nạp 1 bit mới từ RFBUF.0 sau mỗi bit được truyền đi. Để có thể ghi 1 bit mới vào RFBUF.0 trong chu kỳ 1 bit thì nên dùng chế độ hỏi vòng khép kín thay vì 1 thủ tục ngắt.
Để có thể bắt đầu truyền dữ liệu 1 cách nhanh chóng thì byte hay bit đầu tiên phải được nạp vào thanh ghi RFBUF. Sau đó nó sẽ được nạp vào thanh ghi dịch và 1 yêu cầu ngắt sẽ được sinh ra cho byte/bit thứ 2.
Nhận dữ liệu
Khi nhận dữ liệu bộ đệm sẽ làm các công việc ngược lại so với quá trình truyền dữ liệu. Từng bit 1 trong bộ giải mã được chuyển vào thanh ghi dịch đầu tiên là bit MSB: Khi thanh ghi dịch đầy dữ liệu được đưa sang RFBUF và yêu cầu ngắt được sinh ra. Các byte phải được đọc trong 1 chu kỳ byte (chu kỳ 8 Baud đối với mã NRZ và chu kì 16 Baud đối với mã Manchester). Nếu không thì dữ liệu cũ sẽ bị ghi đè.
Trong chế độ bitmode việc nạp đệm dữ liệu diễn ra tương tự nhưng tại một thời điểm chỉ có một bit được nạp vào. Vì vậy khi bit dữ liệu mới đến từ bộ giải mã thì thanh ghi dịch sẽ lưu trữ nó và lưu bit cuối cùng vào RFBUF.0. Nó sẽ sinh ra một yêu cầu ngắt để có thể nhận được bit dữ liệu.
RFBUF (0xC9) – RF Data Buffer
Bit
Name
R/W
Reset value
Description
7:0
RFBUF
R/W
0x00
RF Data Buffer, 8 bits, RFBUF is used as described below.
RFCON (0xC2) – RF Control Register:
III.4.2 Giao thức truyền thông tránh xung đột
Trong WSN các gói tin có thể được định tuyến thông qua nhiều chặng, đó cũng chính là điều cần giải quyết cho vấn đề lộ trình trong mạng cảm nhận không dây.
Mỗi nút tại các thời điểm luôn lưu giữ thông tin về đường đi tới tất cả các nút còn lại, kể cả các nút không giao tiếp tới. Bên cạnh đó là một tiếp cận cải tiến theo hướng phản ứng (reactive), việc thiết lập đường được thực hiện chỉ khi có yêu cầu.
Các giao thức trong phạm trù này bao gồm giao thức thứ tự vectơ khoảng cách đến (Destination sequenced distance vector DSDV), giải thuật lộ trình có trật tự thời gian (TORA), sơ đồ lộ trình toàn cầu (GSR), và giao thức vectơ khoảng cách theo yêu cầu (The ad hoc ondemand distance vector protocol - AODV). Trong phạm vi của đề tài, chúng ta đi sâu nghiên cứu về giao thức DSR (Dynamic Source Routing), DSR là giao thức định tuyến phản ứng sử dụng định tuyến nguồn (source routing) đặc trưng cho giao thức theo yêu cầu (on-demand protocol). Tiêu đề của các gói tin dữ liệu chứa thứ tự các nút mà gói tin cần đi qua để tới đích. Do vậy, các nút trung gian chỉ cần giữ liên lạc với các nút hàng xóm ngay sát cạnh mình để chuyển tiếp các gói tin. Ngược lại, nút nguồn cần biết thứ tự của toàn bộ các chặng để đạt tới đích.
III.4.2.1 Giao thức lộ trình phản ứng DSR (Dynamic Source Routing)
Khi một nút mạng được thêm hay giảm bớt khỏi mạng, quá trình tìm đường sẽ được tự động xác định và duy trì bởi giao thức DSR. Mỗi nút mạng có một Route Cache để lưu trữ mọi source route mà nó đã học. Khi một nút mạng cần gửi một gói dữ liệu, đầu tiên nó kiểm tra trong route cache của nó một source route tới nút đích. Nếu không có một source route tới nút đích thì nút gốc bắt đầu thực hiện quá trình phát hiện đường.
Để hạn chế băng thông mạng, quá trình thiết lập đường chỉ được thực hiện khi một nút yêu cầu thiết lập đường đi (Lộ trình theo yêu cầu – On Demand Routing). Trong DSR, nút yêu cầu (source, initiator) xác định toàn bộ lộ trình từ nguồn tới nút đích.(Source-Routing) và đặt địa chỉ của các nút trung gian của lộ trình trong các packets. DSR được phát triển dành cho MANET với một đường kính nhỏ giữa 5 đến 10 bước nhảy và các nút chỉ nên di chuyển với tốc độ vừa phải.
DSR dựa trên giải thuật link-state, trong đó mỗi nút có khả năng ghi nhớ cách tốt nhất để tới được đích. Và khi cấu trúc mạng có thay đổi, thì toàn bộ mạng sẽ có thông tin về sự thay đổi này.
DSR bao gồm 2 giai đoạn:
Route Discovery (Phát hiện đường)
Route Maintenance (Duy trì đường)
Bước 1hát hiện đường
Hình 3.8: Cơ chế phát hiện đường
Nếu trong nút A có một lộ trình tới nút đích E trong Route Cache, thì tuyến đường đó được sử dụng ngay lập tức. Nếu không có thì cơ chế phát hiện đường (Route discovery) sẽ được khởi động:
• Nút A (nút nguồn) gửi một Route Resquest qua toàn bộ mạng. Route Resquest này bao gồm địa chỉ nút nguồn, địa chỉ nút đích, một danh sách lộ trình (route record)
• Nếu gần đây nút B đã từng nhận Route Resquest có cùng một đích hay địa chỉ của nút B đã được liệt kê trong Route Record, thì nút B sẽ loại yêu cầu đó.
• Nếu nút B là đích của cơ chế phát hiện đường, nó sẽ gửi gói Route Reply tới nút nguồn. Gói Route Reply chứa danh sách đường đi tốt nhất từ nút nguồn tới nút đích. Khi nút nguồn nhận được gói Route Reply này, nó lưu quẵng đường này vào trong Route Cache của nó để chuyển tiếp các gói tin sau tới nút đích.
• Còn nếu nút B không phải là nút gốc thì nó chuyển tiếp Route Request tới các nút lân cận nó (ngoại trừ nút nguồn)
Hình 3.9: Quá trình tìm đường: ROUTE REQUEST & ROUTE REPLY
Bước 2uy trì đường
Trong DSR mọi nút đều chịu trách nhiệm để xác nhận rằng nút tiếp theo trong Source Route nhận được gói tin, mỗi gói tin chỉ được chuyển tiếp duy nhất một lần bởi một nút (hop-by-hop routing). Nếu một gói không không được nhận bởi một nút, nó sẽ được phát lại với một số lần lớn nhất cho đến khi nút kế tiếp nhận được.
Nếu kết quả quá trình phát lại thất bại, một thông báo Route Error được gửi tới nút nguồn,để loại bỏ Source Route trong Route Cache của nó. Như vậy nút nguồn có thể kiểm tra Route Cache cho tuyến đường khác tới đích. Nếu không có...