nền tảng trong mô phỏng năng lượng tiêu thụ của nút mạng
Các nút cảm biến không dây trên thực tế thường có bốn chế độ hoạt động bao gồm các chế độ ngủ, chờ, đo lường và truyền thông. Để thử nghiệm mô phỏng về năng lượng tiêu thụ của nút cảm biến cần phải đo công suất tiêu thụ của nút ở từng chế độ hoạt động để làm tham số đầu vào cho mô phỏng. Việc thu thập dữ liệu về năng lượng ở từng chế độ hoạt động trong quá trình thử nghiệm phải làm đi làm lại nhiều lần, nên cần nút cảm biến hoạt động ở các chế độ một cách chủ động, trong một khoảng thời gian xác định để thực hiện các thực nghiệm cho riêng một chế độ hoạt động cụ thể được thuận tiện. Tuy nhiên, các nút cảm biến sẵn có thường hoạt động theo một chu trình qua các chế độ, khó để biết được thời gian chuyển giữa các chế độ. Người dùng không thể tác động để nút cảm biến hoạt động ở các chế độ theo ý
0.8 1 1.2 1.4 1.6 D ie n a p (V) Du lieu cong bo Mo phong -0.2 -0.1 0 0.1 Sa i le ch (V) 0 1 2 3 4 5 0 50 100 Thoi gian (h) SO C (% )
72 muốn. Do đó, việc khảo sát và đo năng lượng tiêu thụ ở từng chế độ hoạt động của nút cảm biến sẵn có trên thị trường gặp khó khăn.
Vì vậy, luận án thực hiện thiết kế và chế tạo nút cảm biến để phục vụ cho thử nghiệm nền tảng mô phỏng. Nút cảm biến đo nhiệt độ và độ ẩm môi trường được thiết kế với các mô đun cơ bản theo cấu trúc nút thực tế. Nút cảm biến thực nghiệm giúp có thể dễ dàng thực hiện đo năng lượng tiêu thụ ở từng chế độ hoạt động nhờ các thiết kế đặc biệt của phần cứng và phần mềm điều khiển, sẽ được trình bày cụ thể sau đây.
3.4.2.1. Chức năng nút cảm biến sử dụng trong thực nghiệm
Luận án thiết kế chế tạo nút cảm biến cơ sở với cấu trúc bao gồm các mô đun chức năng tương tự như mô hình nút trong nền tảng mô phỏng. Tuy nhiên, công việc chính là quan tâm đến năng lượng tiêu thụ của nút, nên trong thiết kế này không đề cập đến thành phần thu năng lượng. Nút cảm biến được thiết kế với các mô đun cơ bản như nguồn cung cấp, cảm biến, truyền thông và điều khiển. Sơ đồ khối của nút có thể được chỉ ra trên Hình 3.14. Trên cơ sở đó có thể tạo ra nhiều nút cảm biến có chức năng đo, thu thập nhiều đại lượng từ môi trường khác nhau như nhiệt độ, độ ẩm, ánh sáng, rung động, nồng độ chất khí, ... bằng cách thay đổi đầu cảm biến đo các đại lượng khác nhau.
Hình 3.14. Cấu trúc cơ bản nút cảm biến thực nghiệm.
Mô đun nguồn cung cấp sẽ cung cấp năng lượng cho tất cả các mô đun khác trong nút cảm biến hoạt động. Mô đun cảm biến có nhiệm vụ thu thập tín hiệu đo và biến đổi tín hiệu phù hợp với đầu vào mô đun điều khiển. Mô đun truyền thông thực hiện việc truyền nhận thông tin cũng như giao tiếp với các nút khác trong mạng. Mô đun điều khiển đóng vai trò rất quan trọng, thu thập thông tin đo từ cảm biến và xử lý tín hiệu, đồng thời điều phối các chế độ hoạt động cũng như việc sử dụng năng lượng của các mô đun khác.
Thực nghiệm này thực hiện chế tạo nút cảm biến đo nhiệt độ và độ ẩm với bốn chế độ hoạt động như ngủ, chờ, đo lường và truyền thông. Mức tiêu thụ năng lượng của nút ở các chế độ hoạt động khác nhau là khác nhau và có thể được nhìn nhận một cách định tính ở từng chế độ hoạt động [123] được biểu diễn như trong Hình 3.15. Ở mỗi chế độ hoạt động sẽ có những mô đun làm việc được biểu thị bởi khối hiện rõ và những mô đun không làm việc được biểu thị bởi khối bị mờ. Khi một mô đun làm việc sẽ tiêu tốn một mức năng lượng nhất định được tượng trưng bởi phần được tô đậm.
73
Hình 3.15. Mức năng lượng tiêu thụ ở các chế độ hoạt động của nút cảm biến.
Chế độ ngủ: các mô đun cảm biến và truyền thông hoàn toàn không hoạt động (thể hiện bị mờ), còn mô đun điều khiển ở trang thái ngủ. Ở chế độ này chỉ cần cung cấp một mức năng lượng rất nhỏ nên sẽ tiêu thụ năng lượng ít nhất (mức năng lượng tiêu thụ được tượng trưng là phần tô đậm) và phần năng lượng trong mô đun nguồn cung cấp thể hiện còn ở mức cao.
Chế độ chờ: các mô đun cảm biến và truyền thông cũng không làm việc giống ở chế độ ngủ. Mô đun điều khiển được khởi động và chờ thực hiện các công việc theo các yếu tố kích thích. Ở chế độ này nút cảm biến sẽ tiêu thụ mức năng lượng nhiều hơn chế độ ngủ.
Chế độ đo lường: các mô đun điều khiển và cảm biến đều hoạt động. Mô đun truyền thông không hoạt động. Mức năng lượng tiêu thụ của nút ở chế độ đo lường sẽ lớn hơn hai chế độ trên.
Chế độ truyền thông: mô đun điều khiển và truyền thông cùng hoạt động. Mô đun cảm biến không hoạt động. Ở chế độ này, mô đun điều khiển và truyền thông tiêu thụ năng lượng. Vì việc truyền thông đòi hỏi nhiều năng lượng như đã phân tích ở chương 1, nên ở chế độ truyền thông nút cảm biến sẽ tiêu thụ năng lượng nhiều nhất (trên Hình 3.15 thể hiện năng lượng trong nguồn cung cấp bị cạn xuống mức thấp nhất).
Nút cảm biến được thiết kế hỗ trợ các thao tác đo năng lượng tiêu thụ của nút được thuận tiện bởi các cổng đầu ra để đo năng lượng và các phím chức năng để lựa chọn các chế độ hoạt động và cài đặt các tham số. Nút cảm biến được thiết kế với hai chế độ làm việc bằng tay và tự động để thuận tiện cho việc sử dụng nút cảm biến trong các công việc thực nghiệm đo năng lượng tiêu thụ của từng chế độ hoạt động và chạy thử nghiệm.
Chế độ bằng tay được thiết kế nhằm mục đích thực hiện chuyển qua lại giữa bốn chế độ hoạt động nhờ bàn phím. Việc này giúp chủ động để nút làm việc ở bất kỳ chế độ hoạt động nào và trong khoảng thời gian bao nhiêu tùy ý. Do đó, việc thực nghiệm đo năng lượng tiêu thụ của từng chế độ hoạt động của nút sẽ hoàn toàn được chủ động.
Chế độ tự động được thiết kế cho nút cảm biến làm việc theo lịch trình với những ràng buộc về thời gian, số liệu đo hoặc tham số khác được cài đặt sẵn. Nghĩa là, nút sẽ ở các chế độ hoạt động theo các sự kiện về thời gian hoặc dữ liệu đo được từ môi
Vi điều khiển
Cảm
biến Truyền thông
Nguồn cung cấp
Chế độ ngủ Chế độ chờ
Chế độ đo lường Chế độ truyền thông Vi điều
khiển
Cảm
biến Truyền thông
Nguồn cung cấp
Vi điều
khiển Truyền thông
Nguồn cung cấp
Vi điều khiển
Cảm
biến Truyền thông
Nguồn cung cấp Cảm
74 trường như nhiệt độ và độ ẩm. Các sự kiện này được cài đặt tùy ý nhờ các phím chức năng. Giả sử nút có j chế độ hoạt động, một ngày được chia thành n chu kỳ, mỗi chu kỳ có khoảng thời gian hoạt động ở các chế độ khác nhau và khác với các chu kỳ khác, khi đó có thể biểu diễn lịch trình làm việc của nút trong một ngày theo như biểu thức 3.2. [ 𝑇1 𝑇2 ⋮ 𝑇𝑖 ⋮ 𝑇𝑛] = [ 𝑇11 𝑇12 𝑇13 ⋯ 𝑇1𝑗 𝑇21 𝑇22 𝑇23 ⋯ 𝑇2𝑗 ⋮ 𝑇𝑖1 ⋮ ⋮ 𝑇𝑖2 ⋮ ⋮ 𝑇𝑖3 ⋮ ⋯ ⋮ 𝑇𝑖𝑗 ⋮ 𝑇𝑛1 𝑇𝑛2 𝑇𝑛3 ⋯ 𝑇𝑛𝑗] với ∑𝑛𝑖=1𝑇𝑖 = 24ℎ ( 3.2) Trong đó:
𝑇𝑖 : chu kỳ thứ i trong một ngày
𝑇𝑖𝑗: thời gian hoạt động của chế độ j trong chu kỳ i (h)
𝑖: số chu kỳ trong một ngày (𝑖 = 1 … 𝑛)
𝑗: số chế độ hoạt động của nút.
Ví dụ chia ngày thành 4 chu kỳ (n=4), khi đó T1 + T2 + T3 + T4 = 24h, trong khoảng thời gian Ti (i =1..4) thì thời gian hoạt động ở các chế độ đo lường, ngủ, chờ và truyền thông có thể đặt tùy ý. Việc đặt thời gian cho các chế độ hoạt động của nút theo các chu kỳ có thể biểu diễn như Bảng 3.1 với một ngày chia làm 4 chu kỳ. Các thời lượng cài đặt cho các chế độ hoạt động ở các chu kỳ khác nhau là khác nhau và các chế độ hoạt động sẽ được luân chuyển theo thời lượng cài đặt cho đến khi hết chu kỳ sẽ chuyển sang hoạt động theo chu kỳ tiếp theo. Tuy nhiên, trong một chu kỳ sẽ ưu tiên hoạt động theo các sự kiện về ngưỡng nhiệt độ hoặc độ ẩm của môi trường. Nghĩa là mặc dù nút đang làm việc theo lịch trình với các mốc thời gian được cài đặt trước cho từng chế độ hoạt động, nhưng khi có sự thay đổi vượt ngưỡng nhiệt độ hoặc độ ẩm thì sẽ chuyển sang chế độ truyền thông để truyền dữ liệu hiện tại này về trạm gốc.
Bảng 3.1. Định thời gian các chế độ hoạt động theo 4 chu kỳ
CĐHĐ Chu kỳ Thời gian truyền thông (Tg_C) Thời gian đo lường (Tg_M) Thời gian chờ (Tg_I) Thời gian ngủ (Tg_S) T1 T11 T12 T13 T14 T2 T21 T22 T23 T24 T3 T31 T32 T33 T34 T4 T41 T42 T43 T44
Nút cảm biến được thiết kế với 2 chế độ nhằm phục vụ 2 mục đích, chế độ bằng tay phục vụ mục đích thực hiện đo năng lượng tiêu thụ của nút ở các chế độ hoạt động để lấy dữ liệu về năng lượng cài đặt cho nút trong nền tảng mô phỏng chạy thử nghiệm một cách chủ động. Chế độ tự động nhằm thử nghiệm cho nút chạy theo lịch trình để có thể giám sát năng lượng tiêu thụ trong một khoảng thời gian.
75 3.4.2.2. Chế tạo nút cảm biến đo nhiệt độ và độ ẩm môi trường
Nút cảm biến thực nghiệm với đầu cảm biến đo nhiệt độ và độ ẩm có các chức năng, chế độ hoạt động và mục tiêu đo năng lượng tiêu thụ ở từng chế độ hoạt động như đã xác định tại mục (3.4.2.1) có sơ đồ khối được chỉ ra như Hình 3.16.
Hình 3.16. Sơ đồ khối nút cảm biến đo nhiệt độ - độ ẩm.
Mô đun nguồn cung cấp sẽ cấp điện cho toàn bộ cảm biến làm việc. Mô đun cảm biến được sử dụng là DHT11 có khả năng đo nhiệt độ và độ ẩm môi trường với mức tiêu thụ năng lượng thấp, dòng tiêu thụ lớn nhất là 2.5mA. Mô đun Sim800L chịu trách nhiệm việc truyền thông dữ liệu. Mô đun điều khiển (bộ điều khiển) sử dụng vi điều khiển ATmega8A, đảm nhiệm thu thập, xử lí dữ liệu và điều phối chung cho mọi hoạt động của nút cảm biến như nhận lệnh tương tác với người dùng từ bàn phím, điều khiển cấp nguồn cũng như ra lệnh cho các mô đun khác của nút. Việc điều phối năng lượng ở các chế độ hoạt động cho các mô đun chức năng sẽ được bộ điều khiển thực hiện thông qua mô đun đổi nối cấp nguồn, thực chất là điều khiển việc đóng ngắt các transistor để cấp nguồn hay không cho các mô đun chức năng của nút.
Ngoài ra, còn có thêm một màn hình LCD được thiết kế như một mô đun độc lập. Năng lượng tiêu thụ của nó cũng độc lập, không liên quan tới các mô đun khác nên không ảnh hưởng đến năng lượng tiêu thụ của các chế độ hoạt động của nút cần đo trong quá trình thực nghiệm. Màn hình chỉ có ý nghĩa để hiển thị các giá trị đo và các chế độ hoạt động của nút cảm biến. Quá trình thực nghiệm đo năng lượng tiêu thụ của nút cần quan sát hiện nút đang làm việc ở chế độ nào để biết đang thực hiện đo năng lượng của chế độ hoạt động nào của nút. Sơ đồ mạch nguyên lý của nút cảm biến đo nhiệt độ và độ ẩm môi trường được chỉ ra trong Hình 3.17.
Cảm biến DHT11 Môđun Sim800L Môđun Nguồn cung cấp Môđun Đổi nối Bộ điều khiển Bàn phím Điểm đo năng lượng tiêu thụ
76
Hình 3.17. Sơ đồ mạch nguyên lý nút thực nghiệm đo nhiệt độ và độ ẩm.
Bước tiếp theo là việc viết chương trình điều khiển cho nút cảm biến theo hai chế độ làm việc:
Chế độ bằng tay được thực hiện bằng cách dùng chương trình con cho từng chế độ hoạt động và không quan tâm đến vấn đề thời gian hay các điều kiện khác mà hoàn toàn phụ thuộc vào tác động của người dùng từ bàn phím. Các chế độ làm việc cũng như chuyển chế độ hoạt động cho nút cảm biến được lựa chọn một cách tùy ý. Khi nút được chọn ở chế độ hoạt động nào thì năng lượng được đo ở đầu ra sẽ tương ứng của chế độ đó. Việc này giúp có thể chủ động trong việc thực hiện đo năng lượng tiêu thụ ở từng chế độ hoạt động của nút.
Đối với chế độ tự động, nút cảm biến được cài đặt lịch trình hoạt động theo thời gian thực, các tham số nhiệt độ và độ ẩm của môi trường cũng được cài đặt một cách tùy ý như các giá trị ngưỡng hoặc giá trị thay đổi tạo sự kiện. Một ngày có thể được chia thành các chu kỳ thời gian, và trong mỗi chu kỳ thời gian đó có thể đặt thời lượng cho các chế độ hoạt động của nút (thời gian đo: Tg_M, thời gian ngủ: Tg_S, thời gian chờ: Tg_I, thời gian truyền thông: Tg_C). Các chế độ hoạt động có thể được ưu tiên theo các sự kiện về nhiệt độ hoặc độ ẩm của môi trường. Ví dụ, mặc dù nút đang làm việc theo các sự kiện thời gian nhưng khi có sự kiện về nhiệt độ hoặc độ ẩm như giá trị nhiệt độ có sự thay đổi một lượng ΔT (ví dụ ΔT = 0.50C ), hoặc giá trị độ ẩm một lượng ΔH (ví dụ ΔH = 5%) thì sẽ chuyển sang hoạt động ở chế độ truyền thông để truyền dữ liệu hiện tại này về trạm phục vụ các xử lí của mạng. Ví dụ, cứ 10 phút lại đo 1 phút, nếu thấy giá trị đo vượt ngưỡng thì sẽ chuyển sang chế độ truyền thông. Vượt ngưỡng ở đây là sự thay đổi so với giá trị của lần đo gần nhất (nhiệt độ là 0.50C, hoặc độ ẩm là 5%). Giá trị vượt ngưỡng này cũng có thể đặt tùy ý với bước nhảy là
77 0.10C cho nhiệt độ và 1% cho độ ẩm. Nếu thấy không có sự vượt ngưỡng thì sẽ chuyển về ngủ, và nút cảm biến ngủ 9 phút lại thức dậy chờ 1 phút rồi tiếp tục sang chế độ đo lường. Cứ như vậy, chu trình được lặp lại cho đến khi hết khoảng thời gian Ti và chuyển sang chu kỳ tiếp theo và lại quay lại khi hết 24h. Lưa đồ thuật toán của nút cảm biến thực nghiệm đo nhiệt độ và độ ẩm được biểu diễn như Hình 3.18.
Hình 3.18. Lưu đồ thuật toán nút thực nghiệm đo nhiệt độ và độ ẩm.
Trong thuật toán điều khiển, nhằm tiết kiệm năng lượng cho nút nên tác vụ truyền thông sẽ chỉ thực hiện khi cần thiết. Nếu truyền thông không bị “Timeout” thì sẽ chuyển ngay sang chế độ ngủ, còn nếu bị “Timeout” thì sẽ thực hiện truyền lại với điều kiện thời lượng cho việc truyền thông vẫn còn. Mức năng lượng tiêu thụ cho một lần truyền thông được giám sát.
Sau khi thực hiện lắp ráp linh kiện, viết chương trình điều khiển và chạy thử. Nút thực nghiệm đã hoạt động đúng theo mục đích thiết kế, chờ cho công việc tiếp theo là đo năng lượng của từng chế độ hoạt động.
3.4.2.3. Đo công suất tiêu thụ của nút cảm biến
Các chế độ hoạt động của nút cảm biến có công suất tiêu thụ năng lượng thấp, thậm chí có thể chỉ vài mW và năng lượng biến động với tốc độ nhanh theo thời gian. Vì vậy việc đo năng lượng tiêu thụ ở từng chế độ hoạt động của nút cảm biến đòi hỏi thiết bị đo phải có độ nhạy cao, độ phân giải và tốc độ lấy mẫu cao.
78 Trong thực nghiệm này, luận án sử dụng vỉ thu thập dữ liệu NI-DAQ/BNC2110