Chƣơng trình nhúng cho các nút mạng

Một phần của tài liệu Lưu và cập nhật động dữ liệu lên website cho mạng cảm biến không dây (Trang 38)

- Phần mềm nhúng viết cho CC1010 đƣợc viết bằng ngôn ngữ C, sử dụng các thƣ viện cho CC1010 do hãng CHIPCON cung cấp, chƣơng trình đƣợc biên dịch bởi KeilC Vision 2.0.

- Phần mềm viết cho nút mạng WSN cần thực hiện những chức năng cơ bản sau:

o Cảm nhận o Tính toán o Truyền thông

Một thách thức đƣợc đặt ra là phải tích hợp tất cả các chức năng trên vào một vi điều khiển bị ràng buộc về mặt tài nguyên. Điều đó đòi hỏi chƣơng trình viết phải càng ngắn và càng tiêu tốn ít bộ nhớ càng tốt, trong khi vẫn đảm bảo việc viết chƣơng trình nhanh, bảo trì và nâng cấp dễ dàng.

Các bƣớc thuật toán cho phần mềm nhúng trên nút mạng Bƣớc 1: Khởi tạo các tham số

+ Khởi tạo RF, ADC, TIMER + Khởi tạo cảm biến

Bƣớc 2: Đọc thông tin dữ liệu từ kênh gắn cảm biến (AD1) Bƣớc 3: Truyền dữ liệu không dây

Bƣớc 4: Nhận dữ liệu không dây Bƣớc 5: Truyền thông tin về máy tính

Sơ đồ giải thuật chung

Hình 3.12: Sơ đồ giải thuật đơn giản cho phần mềm nhúng trên CC1010

Trong phần thực nghiệm viết phần mềm nhúng cho nút mạng WSN, thực hiện giao thƣ́c lập lịch tập trung cho mạng. Bao gồm 3 nút cơ sở và 1 nút chủ trực tiếp kết nối PC. Sau đây ta sẽ xem xét giải thuật xây dựng cho 2 nút: nút chủ và nút cảm nhận.

Đọc kênh ADC (AD1) gắn cảm biến

Truyền dữ liệu không dây

Nhận dữ liệu không dây

Truyền dữ liệu về máy tính Khởi tạo các tham số:

- Khởi tạo: RF, ADC, TIMER. - Khởi tạo cảm biến nhiệt.

a. Với nút chủ

Hình 3.13: Sơ đồ giải thuật nút chủ

Bƣớc 1: Thiết lập bộ đệm truyền . Bộ đệm truyền chứa các trƣờng địa chỉ tƣơng ứng của nút mà nó cần thăm dò.

Bƣớc 2: Thiết lập xo ng bộ đệm truyền , nút chủ thƣ̣c hiện việc truyền khung thăm dò.

Bƣớc 3: Nút chủ chờ nút cảm nhận truyền dƣ̃ liệu đến ; nếu nút chủ nhận đƣợc gói tin NAK thì thêm 1 vào địa chỉ và quay lại thiết lập bộ đệm truyền

Bƣớc 4: Nếu không, nó nhận dữ liệu và kiểm tra xem dữ liệu còn hay không? Nếu còn thì nhận tiếp; nếu hết thì thì tăng địa chỉ lên 1 và quay lại thiết lập bộ đệm truyền.

b. Với nút cảm nhận

Hình 3.14: Sơ đồ giải thuật cảm nhận

Bƣớc 1: Nhận khung thăm dò từ nút chủ, tách các trƣờng trong gói tin, trong đó có trƣờng địa chỉ.

Bƣớc 2: Kiểm tra xem địa chỉ đó có trùng với địa chỉ của nút cảm nhận đó hay không. Nếu không trùng với địa chỉ của nút đó , nút lại trở về trạng thái chờ khung thăm dò. Nếu địa chỉ trong trƣờng địa chỉ thu đƣợc trùng với địa chỉ của nút cảm nhận đó, nút cảm nhận sẽ kiểm tra xem có dữ liệu hay không

Bƣớc 3: Nếu không có dữ liệu thì nút cảm nhận sẽ gửi khung NAK cho nút chủ. Nếu có dữ liệu nó sẽ chuyển dữ liệu vào bộ đệm truyền và thực hiện truyền dữ liệu

Bƣớc 4: Tiếp theo, nó kiểm tra xem còn dữ liệu hay không? Nếu còn dữ liệu nó tiếp tục gửi. Nếu hết dữ liệu thì nó quay lại chờ nhận khung thăm dò từ nút cơ sở

Phần mã nguồn của chƣơng trình của từng nút mạng sẽ đƣợc trình bày ở phần phụ lục cuối luận văn này.

3.3. Thu thập dữ liệu từ các nút mạng về nút chủ và truyền thông qua cổng nối tiếp lên PC

Một phần của tài liệu Lưu và cập nhật động dữ liệu lên website cho mạng cảm biến không dây (Trang 38)