Các thao tác cơ bản với cooja trên contikỉ Tao môt kích bản mô phỏng đoc nhỉêt đô

Một phần của tài liệu nghiên cứu và triển khai một số thuật toán đánh giá chất lượng tuyến của mạng cảm biến không dây dựa trên nền tảng cảm biến zolertia zl (Trang 69 - 76)

j L.PT1Ị K

1.2 Các thao tác cơ bản với cooja trên contikỉ Tao môt kích bản mô phỏng đoc nhỉêt đô

Tao môt kích bản mô phỏng đoc nhỉêt đô

Bước 1 : bấm vào cooja trên màn hành desktop của VM, màn hình như

Trong đó:

Simulatỉon name: để đặt tên kịch bản mô phỏng. Radio medium: chọn kiểu mô phỏng, tham khảo tại:

http://www.george-sinart.co.uk/wiki/Contiki Cooia Simulator Bước 3:

bấm creat, màn hình như sau:

Bước 4: Chọn một nền tảng phần cứng cho quá trình mô phỏng, chọn zl cho zorletia.

Trong đó: Contiki process/firmware: để nạp đoạn code vào zl, giả sử chọn file như hình, bấm open để hoàn tất.

Bước 5: Bấm compile để biên dịch chương trình vừa chọn.

Bước 6: ẩ ếu quá trình biên dịch thành công thì bấm créât, ẩ ếu lỗi thì thông báo lỗi hiện ra đề ta sửa như.

Bước 7: Sau khi bấm creat thì ta chọn số node, chọn topology của mạng, màn hình như

Bước 8: bấm add mote để hoàn tất mô phỏng, màn hình như

Trong đó: có 4 cửa sổ hiện thị

Cửa sổ hiện thị network có 2 tùy chọn:

View: chọn các thông số hiện thị ra cửa sồ mô phỏng network. Zoom: để phóng to thu nhỏ cửa sổ mô phỏng.

Cửa sổ simulation control Star: bắt đầu mô phỏng. Pause: tạm dừng mô phỏng.

Step: chạy từng bước một. Reload: khởi tạo lại mô phỏng. Speed limit: chọn tốc độ mô phỏng. Cửa sổ mote output: có 3 tùy chọn

File: tạo ra file lưu lại các thông số output cửa sổ mô phỏng. Edit: đưa ra tùy chọn coppy hoặc xóa dữa liệu hiện thị. View: chọn các thuộc tính hiện thị.

Của sổ timeline showing mote

File: tạo ra các file lưu lại timeline output mô phỏng. Edit: xóa data cửa sổ timeline.

Zoom: phóng to thu nhỏ cửa sổ timeline. Bước 9: Bấm star để bắt đầu quá trình mô phỏng.

Trên cửa sổ Simulation Control có thể điều khiển việc bắt đầu cho chạy mô phỏng, cho tạm dừng, nhảy từng lệnh, điều khiển tốc độ, hiển thị thời gian chạy và cho chạy lại từ đầu.

Cửa sổ Timeline: có thể theo dõi được rõ quá trình truyền tin, thức ngủ của các notes mạng, ẩ ó được thể hiện dưới dạng màu:

RadioOẩ /OFF: Không màu: radio off Màu xám : radio on RadioTX/RX:

Xanh lá cây: sẵn sàng nhận packet. Xanh lam: packet sent Đỏ :

nhiễu radio (xung đột...) Bước 10: phân tích code nạp #include "contiki.h"

#include "dev/i2cmaster.h" #inelude "dev/tmpl02.h" #if 1

#define PRIa TF(...) printf( VA ARGS_____) #else

#define PRli TF(...) #endif

#if 0

#else

#define PRli TFDEBUG(...) #endif

#define TMP102_READ_li TERYAL (CLOCK SECOi D/2) PROCESS(temp_process, "Test Temperature process"); AUTOSTART PROCESSES(&temp process);

/*______________________________________________________________*/

static struct etimer et;

PROCESS THREAD (temp process, ev, datal

{

uintlót tempfrac; intl6_traw; uintlót absraw; intl6_t sign; char minus = '

tmpl02_init(); // khoi tao cam bien while(l) {

etimer_set(&et, TMP102_READ_Iẩ TERVAL);

PROCESS WAIT EYEa T_uẩ TIL(etimer_expừed(&et));

sign= 1;

//tinh toan gia tri nhiet do va hien thi PRIẩ TFDEBUG("Reading Temp...\nMt; raw = tmp 102_read_temp_raw(); absraw = raw;

if(raw < 0) { // Perform 2C's if sensor returned negative data absraw = (raw A OxFFFF) +

1; sign = -1; }

tempint = (absraw » 8) * sign;

tempffac = ((absraw » 4) % 16) * 625; // Info in 1/10000 of degree minus = ((tempint == 0) & (sign == - 1 ' ' ;

PRIẩ TFC'Temp = %c%d.%04d\n", minus, tempint, tempfrac); }

Một phần của tài liệu nghiên cứu và triển khai một số thuật toán đánh giá chất lượng tuyến của mạng cảm biến không dây dựa trên nền tảng cảm biến zolertia zl (Trang 69 - 76)