Trong bài viết này, chúng ta sẽ tìm hiểu các tính năng điều chỉnh biểu đồ dữ liệu và sử dụng ngôn ngữ Matlab để viết các script xử lý dữ liệu trên Thingspeak. Các bạn có thể theo dõi video-demo hoặc bài hướng dẫn dưới đây.

Mục lục

  1. Giới thiệu
  2. Điều chỉnh đồ thị
  3. Các ứng dụng Apps
  4. Tạo biểu đồ phân bố
  5. Thêm đồng hồ đo
  6. Kết luận
  7. Tài liệu tham khảo

1. Giới thiệu

Ở bài viết IoT-Ep2 trước chúng ta đã xem cách tạo kênh trên Thingspeak để lưu trữ dữ liệu nhiệt độ và độ ẩm thu được từ cảm biến DHT22. Với dữ liệu gửi lên từ mô-đun NodeMCU, chúng ta có được 2 biểu đồ nhiệt độ và độ ẩm theo thời gian. Trong bài viết này, chúng ta cùng xem một số tính năng trên Thingspeak, ví dụ như:

  • Điều chỉnh hiển thị đồ thị.
  • Thêm các loại biểu đồ phân tích khác.
  • Và tìm hiểu các Apps được Thingspeak hỗ trợ.

2. Điều chỉnh đồ thị

Với mỗi đồ thị dữ liệu từ các trường dữ liệu, Thingspeak cho phép chúng ta có thể điều chỉnh hiển thị ngay trên Website. Để mở cửa sổ tuỳ chỉnh đồ thị, chúng ta nhấn vào biểu tượng chiếc bút ở trên cửa sổ đồ thị (Hình 1).

Edit bieu do
Hình 1. Chọn điều chỉnh biểu đồ

Sau khi có được cửa sổ tuỳ chỉnh (Hình 2), chúng ta có thể điền các thông tin và tuỳ chỉnh đồ thị. Ví dụ cho biểu đồ nhiệt độ, tiêu đề có thể là Đồ thị nhiệt độ. Tiếp theo, chúng ta cũng có thể thay đổi tên các trục Ox - Thời gianOy - Nhiệt độ, °C. Trong phần tuỳ biến, chúng ta cũng có thể tuỳ chỉnh để hiển thị giá trị trung bình hoặc tổng các giá trị trong khoảng thời gian xem xét. Ngoài ra, chúng ta cũng chọn khoảng giá trị nhiệt độ từ 0 tới 60.

Edit bieu do
Hình 2. Lựa chọn tuỳ chỉnh hiển thị đồ thị

Tương tự với đồ thị độ ẩm, chúng ta nhận được như Hình 3 sau khi điều chỉnh.

Edit bieu do
Hình 3. Đồ thị nhiệt độ và độ ẩm

3. Các ứng dụng Apps

Ngoài ra, Thingspeak còn hỗ trợ chúng ta tạo ra các ứng dụng khác nhau (Hình 4).

Edit bieu do
Hình 4. Các Apps được Thingspeak hỗ trợ

Các Apps được Thingspeak chia thành 2 nhóm (Hình 5): Phân tích (Analytics) và Hành động (Actions):

  • Nhóm ứng dụng Analytics cho phép ta viết script Matlab để phân tích và vẽ đồ thị, trong nhóm này Thingspeak cũng cho phép tạo ra các plugins được viết với HTML, CSS và Javascript dành cho hiển thị Web.
  • Nhóm Actions cho phép tạo ra các lệnh request giúp ta liên kết với các ứng dụng khác như Twitter, hay chỉ đơn giản là một lệnh HTTP request cho ta điều khiển thiết bị từ xa.
  • Matlab Analysis cho phép chúng ta thực thi code bằng ngôn ngữ Matlab trực tiếp trên Cloud. Sử dụng Matlab, chúng ta có thể phân tích, xử lý dữ liệu cảm biến, và xây dựng các mô hình phân tích dữ liệu. Các script Matlab được liên kết với nhóm Actions, từ đây chúng ta có thể cài tần số script được gọi để thực thi, hoặc được thực thi khi nhận được request.
  • Matlab Visualization cho phép ta sử dụng Matlab để vẽ các biểu đồ hay đồ thị dữ liệu.
  • Sử dụng các Plugins, chúng ta có thể tạo ra các biểu đồ bằng HTML, CSS và Javascirpt. Từ đó bạn có thể nhúng bất kì Plugin nào vào trang Web của bạn.
  • ThingTweet giúp liên kết thiết bị tới tài khoản Twitter và cho phép gửi tin nhắn cảnh báo.
  • TimeControl cho phép chúng ta cài đặt thời gian thực hiện các câu lệnh với Matlab Analysis, ThingTweet và TalkBack.
  • React và TalkBack giúp ta tạo ra các logic hành động dựa trên trên dữ liệu đầu vào thu được.
  • Cuối cùng là ThingHTTP cho phép chúng ta tạo kênh giao tiếp giữa các thiết bị, trang web và dịch vụ web mà không cần phải triển khai giao thức ở cấp thiết bị. Ở đây chúng ta có thể liên kết với các Actions bằng cách sử dụng các ứng dụng ThingSpeak khác như TweetControl, TimeControl và React.

Edit bieu do
Hình 5. Nhóm Analytics và Actions

4. Tạo biểu đồ phân bố

Trở lại với private view của kênh, chúng ta sẽ sử dụng Matlab Visualization để vẽ các biểu đồ phân bố nhiệt độ và độ ẩm. Để tạo biểu đồ phân bố, chúng ta sẽ vào phần Matlab Visualization (Hình 6) và chọn mẫu code để vẽ histogram (Hình 7).

Edit bieu do
Hình 6. Chọn Matlab Visualization

Edit bieu do
Hình 7. Tạo biểu đồ phân bố

Sau khi nhấn chọn Create, chúng ta có được cửa sổ viết Matlab Code (Hình 8). Trong script này, chúng ta có thể đặt tên Phân bố nhiệt độ, và chúng ta cũng cần tới Channel ID, Read API Key, fieldID. Ở bên phải của màn hình chúng ta có thông tin của Channel, để chương trình có thể truy cập truy xuất và lưu trữ dữ liệu. Ngoài ra, trong phần Display Settings, chúng ta có thể chọn hiển thị biểu đồ ở kênh nào và hiển thị ở dạng Public hoặc Private.

Edit bieu do
Hình 8. Chỉnh sửa Matlab Code

Sau khi nhấn Save and Rung, biểu đồ được hiển thị ngay dưới Matlab Code (Hình 9).

Edit bieu do
Hình 9. Chạy Matlab Code

5. Thêm đồng hồ đo

Tiếp theo, để tạo đồng hồ hiển thị nhiệt độ, chúng ta có thể thêm bằng cách vào phần Add Widgets, và chọn mẫu hiển thị đồng hồ Gauge (Hình 10-12).

Edit bieu do
Hình 10. Thêm Widgets

Edit bieu do
Hình 11. Tạo đồng hồ Gauge

Edit bieu do
Hình 12. Tuỳ chỉnh Widgets

Tới đây, Private view sẽ cho chúng ta thấy được biểu đồ phân bố và đồng hồ cho giá trị nhiệt độ (Hình 12).

Edit bieu do
Hình 12. Biểu đồ phân bố và đồng hồ nhiệt độ

6. Kết luận

Có thể thấy rằng, việc sử dụng Matlab giúp chúng ta dễ dàng tuỳ biến trong việc phân tích và xử lý dữ liệu, cũng như vẽ các đồ thị dữ liệu. Hiện nay, Matlab là một trong những nền tảng và ngôn ngữ phổ biến cho các ứng dụng tính toán, và được sử dụng trong nhiều lĩnh vực khác nhau. Ngoài ra, sử dụng Matlab cũng cho phép tạo ra có mô hình học máy hay mạng nơ-ron để dự đoán sự thay đổi của dữ liệu trong tương lai. Hơn nữa, chúng ta cũng có thể thấy rằng việc vẽ và tuỳ biến đồ thị cũng được hỗ trợ dễ dàng trên Thingspeak, và cho phép tích hợp vào trang web khác một cách dễ dàng.

7. Tài liệu tham khảo