Giám sát trên Web

Một phần của tài liệu Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua ethernet và SMS (Trang 38 - 41)

CHƯƠNG 4 :THIẾT KẾ VÀ THI CÔNG

4.3 Thiết kế và thi công Webserver

4.3.2 Giám sát trên Web

39 Nhiệm vụ đặt ra là làm thế nào để biết được trạng thái các biến hệ thống và kiểm tra các trạng thái này thường xuyên trên webserver?

Để làm điều này chúng ta đưa ra khái niệm biến động (dynamic variable) . Biến động cho phép webserver lấy dữ liệu từ hệ thống như là giá trị lấy từ một cảm biến hay dữ liệu trên một vùng nhớ và dữ liệu này sẽ được hiển thị trên giao diện người dùng (trình duyệt web). Sau đây, chúng ta sẽ đi vào một ví dụ cụ thể là đưa giá trị nhiệt độ đo được từ cảm biến nhiệt độ lên trình duyệt.

Hình 4.3 Từ cảm biến nhệt độ lên trình duyệt

Biến động được tạo ra bằng cách chèn biến cần giám sát vào giữa cặp dấu “~” (ngã) trong code HTML của trang web. Khi module HTTP2 webserver bắt gặp biến này nó sẽ xử lý “hàm triệu tập” (callback function). Hàm này được xử lý trong code C của ứng dụng.

Chẳng hạn,chúng ta muốn biết nhiệt độ phòng – giá trị này được thể hiện qua biến nhietdo trong code cua webserver. Để đưa biến nhietdothành biến

động,ta cần thực hiện hai bước.

40 Thứ hai, là thực hiện hàm HTTPPrint_nhietdo() trong file code CustomHTTPApp.c của chương trình. Khi xử lý,hàm này sẽ đặt dữ liệu lên gói tin (socket) để truyền đi. HTTP server hoạt động trên một vùng đệm có kích thước nhất định. Khi hàm HTTPPrint_nhietdo() được gọi,server sẽ đảm bảo ít nhất 16 byte trống trong vùng đệm. Nếu giá trị biến động nhietdonhỏ hơn vùng dữ liệu mà server dành ra này thì nó sẽ được xử lý ngay lập tức. Ngược lại,khi kích thước biến lớn hơn vùng trên thì hàm trên sẽ kiểm tra vùng đó hiện giờ trống bao nhiêu và đưa ra kết quả hàm đã được xử lý hay chưa thông qua biến curHTTP.callbackPosition.

41 Và kết quả thu được trên trình duyệt:

Hình 4.4 Kết quả nhiệt độ phịng trên trình duyệt

Một phần của tài liệu Thiết kế hệ thống điều khiển thiết bị điện trong gia đình qua ethernet và SMS (Trang 38 - 41)

Tải bản đầy đủ (PDF)

(58 trang)