Xây dựng các module

Một phần của tài liệu NGHIÊN CỨU VÀ MÔ PHỎNG GIAO THỨC TÌM ĐƯỜNG TRONG MẠNG CẢM BIẾN KHÔNG DÂY (Trang 85)

1. Nội dung thiết kế tốt nghiệp:

5.2.1xây dựng các module

Các mô hình mô phỏng, chúng ta đã xây dựng để kiểm tra hiệu quả hoạt động của mạng cảm biến bao gồm ba tiểu mô hình: một mô hình cảm biến (sensor-node), mô hình mạng ( a sensor-network), và mô hình một kẻ xâm nhập(. an intruder-object model).

Mô phỏng một node cảm biến (sensor node )

Chúng ta xây dựng môt node cảm biến giống hình trên (mô hình của The Sensor Network Research Group at Louisiana State University

Hình 5.4 cấu trúc một node cảm biến

Module Layer 0 : đại diện cho lớp vật lý của một nút cảm biến. nó có nhiệm vụ làm cho các kết nối giữa các node hang xóm và chuyển tiếp gói tin từ một lớp cao hơn tới các nút hang xóm , và ngược lại

Module MAC : đại diện cho lớp gói tin trước khi xử lí . Nó bao gồm các cửa (in / out) và hàng đợi (xếp hàng vào và hàng đợi gửi đi). Khi hàng đợi đã đầy, nó xóa một số các tin nhắn cũ nhất để tạo chỗ trong hàng đợi cho tin nhắn mới. Nó giúp để đánh giá hiệu suất của nút này. Trong mô phỏng hiện tại, em không xem xét những tính năng đó, do đó, mô-đun này bị vô hiệu hóa để tăng tốc độ mô phỏng

Module Application : module đại diện cho lớp ứng dụng. Lưu ý rằng, mỗi lần sau khi gửi một tin nhắn, module tự động gửi tin nhắn DECREASE_ENERGY cho module Energy (thông qua điều phối viên Coordinator) để cho giảm module năng một đơn vị năng lượng.

Module Coordinator: là một giao diện để kết nối tất cả các mô-đun lại với nhau. Nó phân loại tin nhắn gửi đến để mang nó vào một module đúng. Ví dụ, khi nhận được tin nhắn DECREASE_ENERGY, nó sẽ chuyển tiếp tin nhắn tới các module năng lượng (module energy)

Module sensor :đại diện cho bộ phận cảm biến trong một nút cảm biến. Nếu tham số SENSOR_SWITCH là ON (= 1), mô-đun tiêu thụ năng lượng, do đó, sau một khoảng thời (timer), module sẽ gửi tin nhắn DECREASE_ENERGY cho module năng lượng (thông qua sự điều phối). Các bộ đếm thời gian được thiết lập bởi các tin nhắn SENSOR_REFRESH từ các module ứng dụng. Nếu bộ đếm thời gian chờ đợi bằng không, các module sẽ tắt (tham số SENSOR_SWITCH được thiết lập để 0).

MAC

Layer 0

Coordinator

Module Energy

Modul Radio : đại diện Ban phát thanh ở một nút cảm biến. Nếu RADIO_SWITCH tham số là ON (= 1), mô-đun tiêu thụ năng lượng, do đó, sau một khoảng thời (timer), module sẽ gửi tin nhắn DECREASE_ENERGY cho module năng lượng (thông qua sự điều phối).

Modul energy: đại diện module pin trong một nút cảm biến. Nếu module nhận được một tin nhắn DECREASE_ENERGY, nó sẽ làm giảm mức năng lượng của một số đơn vị năng lượng.

• Tham số của node cảm biến :

o CNNCTVTY : Tối đa các kết nối tại một nút o OCCUPATION : tác vụ của một node

o PX : tọa độ X o PY : tọa độ Y o ID : ID của node

o FATHER_ID : ID của node cho gói tin chuyển tiếp

o SENSING_RADIUS : bán kính mà node có thể cảm biến được

o COMMUNICATION_RADIUS : Bán kính của vùng có hiệu quả trong đó các nút có thể giao tiếp.

o ENERGY : mức năng lượng

o SENSOR_SWITCH: tắt bật module sensor. o RECEIVER_SWITCH: tắt bật module radio. o POWER_SWITCH : tắt bật node

5.2.2 Mô phỏng đối tượng kẻ đột nhập (object module )

Trong một mạng lưới cảm biến thực tế, các bộ cảm biến liên tục cố gắng để phát hiện các đối tượng. Trong mô phỏng, các hành vi cảm biến được mô phỏng bằng cách tạo ra các kết nối đầu tiên giữa các đối tượng và các node cảm biến gần nó. ACTIVE các node cảm biến có cảm biến bao gồm các đối tượng khu định kỳ sẽ nhận được từ đối tượng một tin nhắn SENSOR_INFO. Các đối tượng mô phỏng gửi tin nhắn để các nút xung quanh nó. Do đó, nhu cầu chỉ có hai phân hệ: phân hệ các ObjectApplication và các module Layer 0 ,như trong hình 5.6.

Hình 5.6 cấu trúc của đối tượng

Các Layer 0 module trong đối tượng kẻ xâm nhập cũng tương tự như Layer 0

module của nút cảm biến. Tuy nhiên, các kết nối trong đối tượng kẻ đột nhập đang tái tạo sau khi mỗi lần di chuyển. Nhiệm vụ kết nối lại được xử lý bởi các module Mannager mà sẽ được thảo luận chi tiết trong phần 4.3.

ObjectApplication: Các đối tượng được di chuyển bằng cách đọc dữ liệu vị trí từ một tập tin văn bản. Trong thực tế, các nút cảm giác các đối tượng liên tục. Trong kịch bản mô phỏng, chúng ta không thể mô phỏng chính xác như hành vi. Vì vậy, các hành vi cảm biến được mô phỏng bằng cách tạo ra các kết nối giữa các đối tượng và các nút cảm biến trong chế độ ACTIVE mà vùng cảm nhận của chúng bao gồm các đối tượng, sau đó, đối tượng gửi một tin nhắn SENSOR_INFO cho tất cả các nút kết nối ở mỗi thời gian định sẵn. cấu trúc một object mô phỏng trong omnet được biểu diễn ở hình .

ObjectApplication Layer 0 (adsbygoogle = window.adsbygoogle || []).push({});

Hình 5.6 cấu trúc mô phỏng của đối tượng đột nhập

5.2.3 Mô phỏng một mạng cảm biến với các đối tượng kẻ đột nhập

Một mạng lưới cảm biến bao gồm một dãy các nút cảm biến. Để mô phỏng như một mạng lưới cảm biến trong môi trường mô phỏng, chúng ta cần một module manager

để giúp mô phỏng các công việc như làm cho các kết nối giữa các nút, làm cho các kết nối giữa các nút và các đối tượng,và các kết quả mô phỏng.

Để xây dựng mạng lưới cảm biến, phân hệ quản lý bắt đầu bằng cách đọc dữ liệu đầu tiên trong tập tin network.txt, lưu giữ thông tin cấu hình mạng, bao gồm nút cảm biến và các vị trí đối tượng. Sau đó, nó làm cho các kết nối giữa các nút (nó kiểm tra vùng phủ sóng của tất cả các nút để xem nút bất kỳ node nào trong phạm vi và làm cho các kết nối giữa các nút ). Thứ hai, mỗi lần di chuyển đối tượng module man sẽ xem xét nếu nút bất kỳ là trong vùng đối tượng, trong đó một nút có thể cảm nhận đối tượng. Nếu như các node trong một vùng cảm biến, phân hệ quản lý tạo ra một kết nối với các nút cảm biến, để các đối tượng có thể gửi tin nhắn SENSOR_INFO đến nút này. Ngoài ra, nó quản lý việc phát sóng từ BS đến tất cả các nút (tạo ra các kết nối từ BS để tất cả các nút). Cuối cùng, phân hệ quản lý điều khiển công tắc điện (tham số POWER_SWITCH) của tất cả các nút trong mạng. Hình 5.7 cho thấy một cấu trúc mạng cảm biến với một kẻ xâm nhập dưới OMNET + +. Hình 5.8 cho thấy một mạng lưới cảm biến trong chế độ mô phỏng.

Hình 5.7 cấu trúc mô phỏng mạng trong omnet++

Hình 5.8 Mạng luới cảm biến trong chế độ mô phỏng

• ZONE_X: chiều rộng x

• ZONE_Y: chiều dài y

• FILE_PATHS: Đường dẫn đến đầu vào / đầu ra cho các tập tin mô phỏng.

• NNODES: Số lượng các nút cảm biến trong mạng.

• NODE_SENSING_RADIUS: bán kính cảm biến của mỗi node.

• NODE_COMMUNICATION_RADIUS: giao bán kính của mỗi node

Lựa chọn phương pháp mô phỏng

Trong DC, các module cảm biến của tất cả các nút được bật (ON ) và các module radio nhận là OFF. Khi phát hiện được kẻ xâm nhập, node sẽ gửi thông tin về những kẻ xâm nhập trực tiếp vào BS

Trong Leach, các module cảm biến của tất cả các nút được bật( ON). Các module radio của các node clients là OFF, nhưng module radio nhận của cluster head là ON. Số lượng của cluster heads được chọn là 10% của tổng số các nút cảm biến trong mạng. Lưu ý rằng tỷ lệ bình thường là 5% trong một mạng Leach. Chúng ta đã tăng tỷ lệ để đảm bảo độ chính xác cao hơn trong phát hiện và theo dõi các đối tượng.

các loại message trong các mô phỏng:

có 6 loại message được dùng trong mô phỏng , external hoặc internal message (bên ngoài hoặc nội bộ)

a) NEIGHBOR_ACTIVATE (external message): Khi một nút nhận được thông báo này, nó sẽ kích hoạt các module cảm biến của nó.

b) SENSING_DATA (external message): Khi một nút nhận được các loại hình tin nhắn, nó sẽ chuyển tiếp tin nhắn tới node cha của nó

c) SENSOR_INFO (external message); Loại tin nhắn được tạo ra bởi các đối tượng xâm nhập. Khi một nút nhận được thông báo này, nó sẽ gửi cho vị trí của mình cho cơ sở để báo cáo rằng có một đối tượng ở gần của nó

d) DECREASE_ENERGY (internal message): Khi một module năng lượng nhận được tin nhắn, nó sẽ làm giảm mức năng lượng của nút bằng số đơn vị năng lượng chứa trong tin nhắn.

e) SENSOR_REFRESH (internal message): Khi các module cảm biến nhận được tin nhắn, nó sẽ thiết lập lại bộ đếm thời gian chờ đợi.

f) TIMER (internal message):điểm thời gian

Nhìn chung, có bốn loại số liệu được xem xét khi so sánh hiệu suất trong ba phương pháp được lựa chọn: tổng năng lượng tiêu thụ , độ chính xác, chi phí cho mỗi điểm phát hiện, và thời gian trước khi các nút chết đầu tiên.

“total energy consumption “Các tổng tiêu thụ năng lượng được định nghĩa là tổng số năng lượng mà mạng dành cho theo dõi trong kịch bản một.

accuracy”chính xác là một tỷ lệ phần trăm của vị trí đối tượng phát hiện của phương pháp trên số lượng vị trí phát hiện của DC. Các giả định cơ bản là phương pháp DC, do thông tin liên lạc trực tiếp với cơ sở, nên nó có độ chính xác cao nhất trong việc phát hiện các đối tượng.

“cost per detected” Các chi phí cho mỗi điểm phát hiện là một số trung bình của các đơn vị năng lượng được dành cho một vị trí phát hiện.

“time before first dead node” Thời gian trước khi node chết đầu tiên là thời điểm nút đầu tiên của mạng hết năng lượng.

5.3 lý thuyết nền tảng (adsbygoogle = window.adsbygoogle || []).push({});

5.3.1 cở sở lý thuyết thu phát không dây .

Radio model : Các module radio có trách nhiệm không dây giao tiếp giữa các nút. Một module radio điển hình được sử dụng trong các thiết bị không dây được thể hiện trong hình 24 Các khối Phát đại diện cho mạch điện tử thực hiện điều chế tín hiệu.

Tx Amplifier được sử dụng để khuếch đại tín hiệu điều chế cho ăng ten. Các khối thu được sử dụng để giải mã các tín hiệu điều chế. Eelec là năng lượng cần thiết cho điều chế hoặc giải điều chế một Bit của các mạch. Єamp là năng lượng cho các mạch khuếch đại để truyền tải một Bit vào khu vực của bán kính d = 1 mét (tức là, πd2). Trong một thiết bị thực, các truyền module (Transmit Electronics và Tx Amplifier) thường nằm trong chế độ ngủ. Nó chỉ tỉnh dậy khi có bất kỳ bit mà cần phải được gửi đi. Các module nhận (Receive Electronics) thực hiện chức năng đảo ngược. Nó cần phải được bật (ON) khi chờ đợi để nhận tin nhắn.

Hình 5.9: mô hình năng lượng cho một thiết bị không dây

Các công thức cho việc gửi tin nhắn k-bit sẽ được hiển thị trong hình 25 và 26

Hình 5.10: công thức năng lượng tiêu thụ cho việc gửi tin nhắn k-bit đến một khoảng cách d

ETx(k,d) đại diện cho năng lượng cần thiết để truyền bit k vào khu vực của bán kính d, trong khi k ERx(k) năng lượng cần thiết để giải điều chế k bit.

• Tính toán: Chúng ta sử dụng các giả định làm cơ sở khi tính toản năng lượng cho mô phỏng của chúng ta, được tóm tắt trong Bảng 5.1

Năng lượng tiêu thụ cho điều biến hoặc demodulating một bít

Eelec = 50nJ/bit

- Năng lượng tiêu thụ khi truyền một bít bán kính r = 1 meter (i.e., πm2): Єamp = 100pJ/bit/ m2 = 0.1nJ/bit/m2

- Tốc độ dữ liệu = 2000bits/s

- Kích thước gói tin data = 2000-bit - Kích thước gói tin tín hiệu = 64-bit

Bảng 5.1 giả định làm cơ sỏ tính toán

ERx_data = Eelec* k-bit/message

= 50nJ/bit * 2000 bits/message = 100 µJ/message

Ý nghĩa: module radio tiêu thụ 100 μJ cho mỗi thông điệp dữ liệu nhận được - ERx_signal = Eelec* k-bit/message

= 50nJ/bit * 64 bits/message = 3.2 µJ/message ~= 3 µJ/message

Ý nghĩa: module radio tiêu thụ 3 μJ cho mỗi tin nhắn tín hiệu nhận được . - ETx_data = Eelec* k-bit/message + Єamp* k * d2

= 50 nJ/bit * 2000 bits/message + 0.1 nJ/bit*2000 bits/message * d2

= (100 µJ + 200* d2)/message

Ý nghĩa: module radio tiêu thụ (100 + 200 * d2) μJ để truyền thông điệp dữ liệu đến một khoảng cách d

- ETx_signal = Eelec* k-bit/message + Єamp*k* d2

= (3 µJ + 6.4* d2)/message

Ý nghĩa: module radio tiêu thụ (3 + 64 * d2) μJ để truyền tin tín hiệu đến một khoảng cách d

Chúng ta cho rằng bán kính truyền thông tối ưu hóa các nút là 60m. Vì vậy:

- ETx_data = 2000(bit)*(50(nJ) + 0.1(nJ)*60*60) = 820 µJ/message

Ý nghĩa: module radio tiêu thụ 820 μJ để truyền thông điệp dữ liệu để khoảng cách d <= 60m.

- ETx_signal = 64(bit)*(50(nJ) + 0.1(nJ)*60*60)= 26.2 µJ/message ~= 26 µJ/message

Ý nghĩa: module radio tiêu thụ 26 μJ để truyền thông điệp dữ liệu đến một khoảng cách d <= 60m (adsbygoogle = window.adsbygoogle || []).push({});

- ERadio = Eelec * data_rate = 50nJ/bit* 2000 bits/s = 100 µJ/s

Ý nghĩa: module radio là trong trạng thái nhận, nó chiếm 100 μJ ở mỗi giây

- ESensor = ERadio * 2/3 = 66 µJ/s

Có nghĩa là: nếu module sensor là trong chế độ hoạt động đầy đủ, nó chiếm 66 μJ ở mỗi giây.

Nói chung, node là trong chế độ ngủ, nó chỉ chuyển sang hoạt động khi có một ngắt bên ngoài. Vì vậy, mô phỏng, chúng ta giả định rằng bộ xử lý được trong chế độ ngủ. Nó chỉ đến hoạt động đầy đủ khi có một sự kiện. Nó có nghĩa là khi tạo một tin nhắn mới, sẽ tiêu thụ năng lượng được tính như sau:

- EMCU_data = 2000(bit)*50(nJ) = 100 µJ/message

Ý nghĩa: node tiêu thụ 100 μJ cho việc tạo ra một thông điệp dữ liệu - EMCU_signal = 64(bit)*50(nJ) = 3.2 ~= 3 µJ/message

• Bảng Tóm lược

Có nguồn gốc từ các tính toán trên, Bảng 5.2 tóm tắt các hoạt động và năng lượng tiêu thụ tương ứng của node cảm biến.

Tạo /nhận một gói data Tạo/nhận một tín hiệu

100 µJ 3 µJ Gửi một gói tin data (d<= 60m)

Gửi một tín hiệu (d<=60m)

820 µJ 26 µJ

Gủi một gói tin (d > 60m) 100 µJ + 0.1* d2

node (full operation) 66 µJ/s thu phát (idle/receive mode) 100 µJ/s

Bảng 5.2 tóm tắt các hoạt động và năng lượng tiêu thụ tương ứng của node cảm biến.

5.3.1.1 Năng lượng tiêu thụ tính trong giao tiếp trực tiếp (DC)

Trong phương pháp này, Ban cảm biến của tất cả các nút đang hoạt động đầy đủ. Khi nút cảm biến được một đối tượng, nó truyền tải thông tin trực tiếp đến BS. Các nút không cần phải giao tiếp với nhau, vì vậy, module radio có trong chế độ ngủ. các trạng thái được tóm tắt trong bảng 5.3 :

Cảm biến Chức năng đầy đủ

Thu phát không dâ Trạng thái ngủ; thức dậy chỉ truyền gói tin. node Trạng thái Ngủ; thức dậy chỉ tạo gói tin .

Bảng 5.3 trạng thái của nobe cảm biến trong DC

5.3.1.2 Năng lượng tiêu thụ tính trong Leach

Trong phương pháp này, module cảm biến của tất cả các nút được hoạt động. Khi nút một came biến được một đối tượng , nó truyền tải thông tin về đầu Cluster

heads của nó, sau đó chuyển tiếp các thông tin trực tiếp đến BS. Một cluster heads có nhu cầu để nhận được tin nhắn từ client do đó, module radio của một cluster head ở chế độ nhận. module radio của các nút khác đều bị tắt (trong chế độ ngủ). Chúng ta biết rằng một trong những điểm yếu của Leach là các nút không luôn luôn nhận được một lời mời tham gia một cluster , vì không có cluster trong khu vực của chúng (gọi là các nút hoang dã “wild –node” ). Để mô phỏng, module cảm biến của tất cả các nút mà không ghi danh vào cluster bất kỳ đầu đều bị tắt. trạng thái các nút khác nhau trong Leach được tóm tắt trong Bảng

Một phần của tài liệu NGHIÊN CỨU VÀ MÔ PHỎNG GIAO THỨC TÌM ĐƯỜNG TRONG MẠNG CẢM BIẾN KHÔNG DÂY (Trang 85)