I. Mạng Cảm Biến Tổng Quan Luận Văn Tiết Kiệm Năng Lượng
Mạng không dây đang phát triển mạnh mẽ, dần thay thế các ứng dụng mạng có dây. Mạng cảm biến không dây (WSN) ra đời dựa trên công nghệ vi điện tử và thông tin. WSN được sử dụng rộng rãi trong quân sự, dân sự và công nghiệp. Đặc điểm chung là hoạt động không cần con người. Ứng dụng chính bao gồm: đo thông số môi trường, điều khiển công nghiệp, giám sát khu vực quân sự,... Các ứng dụng khác của WSN đang được nghiên cứu và phát triển. WSN cần gọn nhẹ và tích hợp chức năng mạng và cảm nhận. Nguồn năng lượng nhỏ gọn đi kèm, hoạt động qua các bước: cảm nhận, đo đạc, truyền dữ liệu. Chi phí triển khai giảm thiểu, chỉ cần đặt thiết bị nhỏ gọn. Mạng dễ mở rộng, hoạt động tự động. Hệ thống có thể hoạt động nhiều năm với một nguồn pin duy nhất. Vấn đề quan trọng hiện nay là tiêu thụ năng lượng cho từng nút mạng, tăng tuổi thọ mạng cảm biến. Đây là hướng nghiên cứu quan trọng để cải thiện chất lượng mạng không dây. Khi kích thước giảm, khả năng tích trữ năng lượng cũng giảm. Các ràng buộc về năng lượng tạo nên giới hạn về tính toán và lưu trữ, cần kiến trúc mới. Cần cơ chế thích nghi và chuyển đổi chế độ làm việc để tiết kiệm năng lượng, kéo dài thời gian sống của hệ thống mạng. Luận văn này nghiên cứu về mạng cảm biến không dây sử dụng CC1010 và vấn đề tiết kiệm năng lượng cho các nút trong mạng cảm biến không dây.
1.1. Khái niệm và Ứng dụng Mạng Cảm Biến Không Dây
Mạng cảm biến không dây (WSN) là mạng từ các thiết bị hoạt động độc lập, thu thập và truyền thông tin về môi trường như nhiệt độ, âm thanh, áp suất,... cho trung tâm giám sát. Hệ thống WSN còn có trạm gốc và trung tâm điều khiển. Trạm gốc là cổng kết nối giữa các nút mạng và trung tâm điều khiển, nhận thông tin của các nút mạng và chuyển tới trung tâm điều khiển. Các nút mạng truyền thông tin theo kiểu nhiều chặng, về trạm gốc, sau đó gửi thông tin cho người sử dụng. Sự ra đời của WSN xuất phát từ nhu cầu phát triển các ứng dụng trong quân sự, nhưng hiện nay được sử dụng rộng rãi trong nhiều lĩnh vực. Mô hình triển khai mạng WSN bao gồm các thành phần: thiết bị cảm biến, đầu thu phát sóng vô tuyến, vi điều khiển và nguồn năng lượng (pin). Một số nút mạng có thể có thêm bộ nạp năng lượng, bộ vi điều khiển thứ hai, hoặc bộ thu phát vô tuyến thứ hai. Ứng dụng của WSN rất phong phú, bao gồm giám sát môi trường, các ứng dụng chăm sóc sức khoẻ, tự động hoá các thiết bị gia đình và điều khiển luồng giao thông. Ví dụ: theo dõi độ ẩm, nhiệt độ, áp suất hoặc giám sát giao thông, an ninh.
1.2. Đặc điểm và Thách thức Phát Triển Mạng Cảm Biến
Các đặc điểm của WSN gồm: kích thước nhỏ, năng lượng giới hạn, hoạt động trong điều kiện khắc nghiệt, dễ xảy ra lỗi, có thể dịch chuyển được, mô hình mạng động, linh hoạt, các nút mạng hỗn hợp và cho phép khả năng mở rộng cao. Thách thức chính là sản xuất các nút mạng cảm nhận có giá thành thấp và kích thước nhỏ. Các chuẩn: ISO 18000-7, 6lowpan và WirelessHART. Các chuẩn khác đang được nghiên cứu bởi các nhà nghiên cứu như ZigBee, Wibree. Năng lượng là nguồn tài nguyên quan trọng nhất của WSN, quyết định thời gian sống của WSN. Các thuật toán và giao thức cần tập trung vào: thời gian sống được tối đa hoá, chịu lỗi tốt, khả năng tự cấu hình. Hệ điều hành cho nút mạng cảm nhận thường ít phức tạp hơn hệ điều hành thông thường do tài nguyên hạn chế. TinyOS là hệ điều hành đầu tiên được thiết kế riêng cho WSN. Ngôn ngữ lập trình phổ biến để lập trình cho nút mạng cảm nhận là ngôn ngữ C. Thuật toán WSN hoàn toàn là thuật toán phân phối. Trong WSN, năng lượng là yếu tố đáng quan tâm nhất và việc truyền dữ liệu tốn nhiều năng lượng nhất. Do đó, WSN tập trung vào thiết kế các thuật toán tối ưu sử dụng năng lượng khi dữ liệu được truyền từ các nút mạng đến trạm gốc.
II. Thách Thức Tiết Kiệm Năng Lượng Mạng Cảm Biến Không Dây
Định tuyến trong WSN là một thách thức lớn do sự khác biệt giữa đặc điểm của WSN và các mạng thông thường. Khó xây dựng cơ chế đánh địa chỉ toàn cầu cho nút mạng cảm nhận. Các giao thức dựa trên địa chỉ IP khó áp dụng cho WSN. Các nút mạng dễ xảy ra lỗi do thiếu công suất, hỏng phần cứng hoặc bị nhiễu môi trường. Mỗi nút đóng hai vai trò truyền số liệu và chọn đường, một số nút cảm biến hoạt động sai do lỗi nguồn công suất có thể gây ra sự thay đổi cấu hình mạng nghiêm trọng. Luồng dữ liệu phát đi từ các nút mạng có số lượng đáng kể các bản tin bị trùng lặp. Dữ liệu dư thừa cần được giao thức định tuyến loại bỏ để tiết kiệm năng lượng và tăng băng thông. Mỗi nút mạng cảm nhận đều có năng lượng, khả năng tính toán và bộ nhớ hạn chế. Do những khó khăn trên, nhiều giao thức định tuyến mới cho WSN đã được nghiên cứu và ứng dụng. Các giao thức đó có thể được chia thành các loại chính là: ngang hàng, phân cấp và định vị. Trong giao thức ngang hàng, tất cả các nút thường có vai trò hoặc chức năng như nhau. Hoạt động định tuyến dựa trên cơ chế hỏi đáp, phụ thuộc vào việc đặt tên các gói dữ liệu do đó loại bỏ được việc gửi dư thừa dữ liệu trong mạng. Giao thức phân cấp dựa trên việc chia mạng thành các cụm, mỗi cụm có một nút làm chủ có nhiệm vụ tập hợp dữ liệu của các thành viên lại và loại những dữ liệu không cần thiết trước khi truyền. Nút chủ sẽ được thay đổi khi bắt đầu chu kỳ làm việc mới. Giao thức định vị sử dụng các thông tin về vị trí của các nút để truyền dữ liệu cho các nút cần thiết thay vì truyền cho tất cả các nút trong mạng.
2.1. Các Giao Thức Định Tuyến Phổ Biến trong Mạng Cảm Biến
Một giao thức định tuyến được coi là thích ứng nếu các tham số của hệ thống có thể điều khiển được để phù hợp với các trạng thái mạng hiện tại và các mức năng lượng khả dụng. Một số giao thức định tuyến đã phát huy hiệu quả tiết kiệm tiêu thụ năng lượng như: LEACH, TEEN & APTEEN, MECN & SVECN, PEGASIS thuộc định tuyến phân cấp; SPIN, CADR, CUGAR thuộc định tuyến ngang hàng.
2.2. Yêu Cầu Thiết Kế Hệ Thống Mạng Cảm Biến Tiết Kiệm Năng Lượng
Xuất phát từ các đặc điểm và kiến trúc của hệ thống WSN, ta có thể đưa ra các yêu cầu để xây dựng một mạng WSN tốt, tối ưu khi triển khai trong các ứng dụng. Các chỉ tiêu đó bao gồm: thời gian sống, độ bao phủ, chi phí, thời gian đáp ứng, độ chính xác, bảo mật, tốc độ lấy mẫu hiệu quả. Khi tăng hiệu quả của chỉ tiêu này lại làm giảm hiệu quả của chỉ tiêu khác, ví dụ khi tăng tốc độ lấy mẫu lại làm giảm thời gian sống. Do đó tuỳ thuộc vào nhu cầu mà có thể chọn chỉ tiêu nào là ưu tiên và phải chấp nhận không đạt chỉ tiêu nào.
III. Giải Pháp Tiết Kiệm Năng Lượng Dựa trên Vi Điều Khiển CC1010
Lựa chọn loại vi điều khiển để xây dựng nút mạng đáp ứng được các yêu cầu về nút mạng và chỉ tiêu của hệ thống mạng là một vấn đề quan trọng. Khi chọn được một vi điều khiển thích hợp sẽ làm cho quá trình xây dựng hệ thống dễ triển khai hơn, dễ phát triển chức năng hơn, mạng hoạt động ổn định trong khoảng thời gian dài hơn và có thể sử dụng trong các ứng dụng mới. Vi điều khiển CC1010 của hãng Chipcon có chứa nhân CPU 8051, được tích hợp bộ thu phát sóng vô tuyến và các thành phần phụ khác và có mức tiêu thụ năng lượng thấp. CC1010 còn có các chế độ làm việc tiêu thụ ít năng lượng, có thể lập trình điều khiển chế độ làm việc. Do đó, CC1010 rất phù hợp để trở thành nút mạng cảm nhận không dây, đặc biệt trong các mạng đo các thông số môi trường. CC1010 có phần lõi MCU: Vi xử lý 8051 có tốc độ bằng 2,5 lần vi xử lý 8051 tiêu chuẩn, có các chế độ tiết kiệm năng lượng (nghỉ và ngủ), 32 KB bộ nhớ Flash, 2048 + 128 byte bộ nhớ trong SRAM, 3 kênh ADC 10 bit, 4 bộ định thời, 2 cổng UART, RTC, Watchdog, SPI, mã hoá DES, 26 chân vào ra chung.
3.1. Ưu Điểm của CC1010 Trong Ứng Dụng Mạng Cảm Biến
Vi điều khiển CC1010 tích hợp bộ thu phát sóng vô tuyến, tần số 300 – 1000 MHz, tiêu thụ dòng rất thấp (9.1 mA trong chế độ thu), công suất phát có thể lập trình được (lên đến +10dBm), tốc độ thu phát dữ liệu lên đến 76,8 kbps, độ nhạy cao (thông thường -107 dBm), hỗ trợ các giao thức nhảy tần. CC1010 đã có sẵn các thư viện hỗ trợ lập trình do hãng Chipcon cung cấp, CC1010IDE, do đó việc viết chương trình cho CC1010 trở nên dễ dàng và thuận tiện hơn. Khi được tích hợp thêm bộ cảm biến, vi điều khiển CC1010 sẽ có những phẩm chất tốt để trở thành một nút mạng, đáp ứng được các yêu cầu cho hệ thống mạng WSN đã nêu. Module CC1010EM (Evaluation Module) của Chipcon tích hợp hầu hết các linh kiện cần cho một nút mạng như: CC1010, các chân cổng, một cảm biến nhiệt độ đưa vào chân AD1, anten, dao động thạch anh. CC1010EM được lựa chọn làm nút mạng để đo thông số nhiệt độ môi trường và thử nghiệm chương trình tiết kiệm năng lượng nhúng trên đó.
3.2. Xây Dựng Mạng Cảm Biến Đo Nhiệt Độ Sử Dụng CC1010
Đề xuất xây dựng một mạng WSN thực tế thu thập thông tin về nhiệt độ, sử dụng vi điều khiển CC1010, module CC1010EM và bo mạch ghép nối CC1010EB. Topology sử dụng cho mạng kết hợp cả topology dạng cây và dạng tuyến tính để truyền dữ liệu đi xa, với khoảng cách trên 1 km. Các nút mạng CC1010 giao tiếp với nhau qua sóng vô tuyến 300 – 1000MHz, có ba loại nút mạng: trạm gốc, nút mạng chuyển tiếp và nút mạng cảm nhận. Trạm gốc nhận dữ liệu và chuyển và máy tính để xử lý. Module CC1010EB là bo mạch giúp kết nối CC1010 với các thiết bị ngoại vi, trong trường hợp này là kết nối với máy tính. Các module CC1010EM thu thập thông tin về nhiệt độ và truyền về cho trạm gốc qua các nút trung gian. Một số vi điều khiển CC1010 được sử dụng làm nút trung gian để chuyển tiếp dữ liệu về trạm gốc và không gắn đầu cảm biến. Việc xây dựng một mạng WSN không phức tạp, khó khăn chủ yếu vẫn là vấn đề tối ưu hoá hoạt động tại mỗi nút mạng để giảm đến mức thấp nhất sự tiêu thụ năng lượng.
IV. Phân Tích Các Chế Độ Năng Lượng Giải Pháp Cho CC1010
Chương này sẽ tập trung vào phân tích sự tiêu thụ năng lượng tại nút mạng qua đó chỉ ra các yếu tố làm tiêu tốn năng lượng cho nút mạng. Tiếp đến là khái quát các giao thức điều khiển truy cập môi trường đáp ứng yêu cầu tiết kiệm năng lượng. Một phần quan trọng của chương này là phân tích các chế độ hoạt động của vi điều khiển CC1010 và đưa ra các giải pháp nhằm tiết kiệm năng lượng cho nút mạng sử dụng CC1010. Các công nghệ gần đây đột phá trong lĩnh vực siêu tích hợp và điện tử năng lượng thấp đã cho phép phát triển các loại sensor cực nhỏ hoạt động dựa trên nguồn năng lượng pin (0,5 ~ 1,5 Ah, 1,5 ~ 3,6 V). Các sensor trên được sử dụng trong các ứng dụng triển khai không cần có mặt của con người với điều kiện môi trường khắc nghiệt, sự cung cấp thêm năng lượng cho pin của sensor là không thể thực hiện được, do đó sensor được khống chế tiêu thụ năng lượng và tuổi của nó phụ thuộc chủ yếu vào thời gian hoạt động của pin.
4.1. Các Chế Độ Hoạt Động và Mức Tiêu Thụ Năng Lượng
Các bộ phận tiêu thụ năng lượng chủ yếu trong nút mạng cảm nhận không dây là bộ thu phát sóng vô tuyến và bộ vi xử lý. Có bốn trạng thái hoạt động chính của nút mạng, bao gồm: nghỉ (idle), nhận, truyền và ngủ (sleep), trong đó nút tiêu tốn năng lượng tối đa khi truyền và nhận dữ liệu. Khi ở trạng thái ngủ, các nút mạng hầu như không tiêu tốn năng lượng, còn ở trạng thái nghỉ, nút mạng tiêu thụ năng lượng ít hơn đáng kể so với trạng thái nhận và truyền. Ngoài ra, nút mạng khi tham gia vào hệ thống mạng sẽ tiêu tốn thêm nhiều năng lượng cho các hoạt động khác như điều khiển truy cập, xung đột với nút mạng khác, nhiễu từ hệ thống khác. Vấn đề đặt ra là làm sao cho nút mạng hoạt động ở chế độ tiết kiệm năng lượng nhất và cần có các cơ chế điều khiển truy cập môi trường tối ưu để tránh mất mát năng lượng khi hoạt động trên mạng cùng các nút khác.
4.2. Giải Pháp Tiết Kiệm Năng Lượng Bằng Lập Trình CC1010
Giải pháp sử dụng các giao thức tiết kiệm năng lượng, hầu hết các công trình nghiên cứu tập trung vào các giao thức điều khiển truy cập môi trường (MAC), theo đó MAC phải có cơ chế quản lý quá trình hoạt động thu phát vô tuyến một cách tối ưu, tránh được sự mất mát năng lượng một cách vô ích như xung đột trong mạng, truyền dư thừa, truyền lại do mất mát và cả do thời gian nút mạng ở chế độ tích cực quá lâu. Còn đối với giải pháp viết phần mềm cho nút mạng, tuỳ thuộc vào ứng dụng của WSN và loại vi điều khiển được sử dụng cho nút mạng mà có các chương trình khác nhau, thay đổi một cách linh hoạt.
V. Phân Tích Các Hoạt Động Tiêu Thụ Năng Lượng Trong Mạng
Phần này sẽ phân tích các chế độ năng lượng của mạch thu phát vô tuyến nói riêng và nút mạng nói chung cùng các nhân tố ảnh hưởng đến mức tiêu thụ năng lượng của nút trong hệ thống mạng WSN. Thông thường, thiết bị thu phát vô tuyến hoạt động ở bốn chế độ khác nhau: nghỉ, nhận, truyền và ngủ. Trong chế độ tích cực (gồm truyền và nhận), mạch tiêu tốn năng lượng nhiều nhất. Chế độ nghỉ tiêu thụ năng lượng ít hơn, tuy nhiên nếu nút mạng ở chế độ tắt nguồn thì việc tiết kiệm năng lượng sẽ là triệt để nhất. Do vậy, điều mong muốn là hoàn toàn tắt nút mạng (chế độ ngủ) hơn là để nó trong chế độ tích cực hoặc nghỉ. Tuy nhiên, việc bật, tắt liên tục mạch thu phát radio đôi khi có thể làm năng lượng tiêu thụ nhiều hơn là để nguyên nó trong chế độ nghỉ do mất năng lượng khởi động. Thêm vào đó, khi kích thước gói tin truyền nhỏ, năng lượng chuyển đổi này trở nên lớn hơn năng lượng tiêu thụ để truyền và nhận gói tin. Do vậy để có thể tiết kiệm năng lượng một cách hiệu quả cho nút mạng, cần áp dụng nhiều giải pháp khác nhau.
5.1. Công Thức Tính Năng Lượng Tiêu Thụ của Mạch Thu Phát
Năng lượng tiêu thụ của mạch thu phát vô tuyến Eradio có thể tính đơn giản theo công thức sau: Eradio = [(c * Ptx) + b] * T, trong đó: c là hệ số năng lượng truyền dẫn, b là hằng số offset năng lượng, Ptx là năng lượng sử dụng trong truyền tín hiệu và T là thời gian truyền dẫn. Công thức chính xác hơn: Eradio = [Ptx(Ttx + Ntx * Tst) +Pout * Ttx] + [Prx (Trx + Nrx * Tst] + Pidle * Tidle Trong đó: Ptx/rx là năng lượng tiêu thụ khi truyền/nhận tương ứng của bộ thu phát. Pout là năng lượng đầu ra bộ phát, Pout phụ thuộc vào khoảng cách tín hiệu truyền đến đích và địa hình xung quanh. Pidle là năng lượng nút mạng sử dụng trong chế độ nghỉ. Pidle có giá trị nhỏ hơn đáng kể so với Ptx
5.2. Các Nguyên Nhân Tiêu Tốn Năng Lượng Khi Hoạt Động Trong WSN
Các nguyên nhân tiêu tốn năng lượng cho nút khi hoạt động trong WSN: - Khoảng thời gian mỗi nút mạng hoạt động ở chế độ truyền nhận quá lâu hoặc không hoạt động ở chế độ năng lượng thấp. - Overhearing, nghĩa là nút mạng nhận gói tin mà đúng ra đích đến là nút khác. - Năng lượng bị tiêu tốn trong qúa trình gửi và nhận các gói tin điều khiển truy cập môi trường. - Xung đột trong việc truyền đồng thời nhiều gói tin làm khuếch đại tín hiệu nhiễu và do đó gây nên việc truyền lại gói tin. - Nhiễu sóng vô tuyến từ các hệ thống khác làm các gói tin bị gián đoạn và cần truyền lại hoặc phải tăng công suất truyền để khắc phục nhiễu đó. - Việc chuyển đổi liên tục các mode làm việc, đặc biệt là từ mode ngủ sang mode tích cực dẫn đến tiêu tốn năng lượng đáng kể.
VI. Kết Luận Hướng Nghiên Cứu Luận Văn Tiết Kiệm Năng Lượng
Như vậy chương đầu tiên của luận văn này đã trình bày được các vấn đề cơ bản về mạng cảm nhận không dây: các thành phần, đặc điểm, kiến trúc, các chỉ tiêu cần đáp ứng đối với một WSN. Ngoài các phần lý thuyết chung, chương này còn hướng đến mô hình thực tế và đặt ra vấn đề trọng tâm cần nghiên cứu, vấn đề xuyên suốt trong toàn bộ luận văn này, là giải pháp tiết kiệm năng lượng cho nút mạng WSN. Mạng WSN được tạo thành từ một tập hợp các thiết bị có khả năng cảm biến, xử lý và phu phát tín hiệu qua sóng vô tuyến. Các nút mạng hoạt động mà không cần tác động của con người với một nguồn năng lượng chỉ được cung cấp trong lần đầu.
6.1. Tóm Tắt Các Vấn Đề Chính Về Tiết Kiệm Năng Lượng
Trong các yếu tố ảnh hưởng đến WSN thì yếu tố năng lượng là quan trọng nhất, có ý nghĩa sống còn đối với WSN và việc nghiên cứu tiết kiệm năng lượng là chủ đề được quan tâm nhiều nhất khi nghiên cứu về WSN. Vi điều khiển CC1010 được chọn làm nút mạng WSN đo thông số môi trường do các phẩm chất nổi bật của nó. Vấn đề đặt ra là làm thế nào để tối ưu hoá hoạt động của vi điều khiển nhằm tiết kiệm được nhiều năng lượng nhất cho nút mạng. Vấn đề này sẽ dần được giải quyết trong các chương sau của luận văn này.
6.2. Hướng Nghiên Cứu Tiếp Theo và Phát Triển Đề Tài
Trong chương hai, tác giả sẽ trình bày các phương pháp chung để tiết kiệm năng lượng và các giải pháp tiết kiệm năng lượng cụ thể áp dụng cho nút mạng cảm nhận sử dụng vi điều khiển CC1010.