Mục lục:

Tạo đồ thị của riêng tôi cho dữ liệu IOT của tôi trên Raspberry PI: 3 bước
Tạo đồ thị của riêng tôi cho dữ liệu IOT của tôi trên Raspberry PI: 3 bước

Video: Tạo đồ thị của riêng tôi cho dữ liệu IOT của tôi trên Raspberry PI: 3 bước

Video: Tạo đồ thị của riêng tôi cho dữ liệu IOT của tôi trên Raspberry PI: 3 bước
Video: Cài đặt, cấu hình Raspberry Pi 4 | Bài 1 - Lập trình IoT cơ bản 2024, Tháng mười một
Anonim
Tạo đồ thị của riêng tôi cho dữ liệu IOT của tôi trên Raspberry PI
Tạo đồ thị của riêng tôi cho dữ liệu IOT của tôi trên Raspberry PI

Vui lòng đọc tiếp nếu bạn muốn có thể tạo đồ thị IOT của riêng mình bằng cách sử dụng 7 dòng mã.

Tôi muốn tạo biểu đồ để hiển thị dữ liệu ở định dạng đồ họa từ các cảm biến IOT của mình trên một trang web. Trước đây, để làm điều này, tôi đã sử dụng các dịch vụ của bên thứ 3 (một số hàm trả phí) và các hàm đồ thị của bên thứ 3 cho hệ thống cơ sở dữ liệu của mình - Mysql, sử dụng ngôn ngữ lập trình được gọi là Php. Tôi thấy các dịch vụ của bên thứ 3 này quá khó hoặc quá đắt để triển khai. Do đó, tôi đã viết hàm Php đơn giản của riêng mình, lấy dữ liệu dưới dạng mảng từ tệp văn bản hoặc bảng cơ sở dữ liệu (có lẽ từ Mysql) và hiển thị chúng dưới dạng biểu đồ đường trên trang web. Tôi đã cung cấp tất cả mã php trên github - https://github.com/scanos/php-simple-chart. Tôi cũng đã bao gồm một số mã ở đây - tệp php đầu tiên - PhpSimpleChart2.php - chứa tệp hàm biểu đồ đường còn lại, PhpSimpleChart_ex1.php, là tệp ví dụ hiển thị cách sử dụng nó. Tôi khuyên bạn nên truy cập trang github để cập nhật mã.

Tôi đang triển khai điều này trên Raspberry Pi của mình. Đây là những gì bạn cần:

1) Một số kiến thức về triển khai máy chủ web như Apache, cơ sở dữ liệu như Mysql và PHP. Gọi chung là LAMP - Linux, Apache, Mysql và PHP. và có một lượng lớn thông tin trên web liên quan đến việc triển khai những thứ này trên Raspberry Pi. Do đó, tôi sẽ không đề cập đến vấn đề này ở đây.

2) Một môi trường linux LAMP - một lần nữa, chẳng hạn như Raspberry Pi.

3) Một phương tiện để tải lên và tạo tệp vào môi trường web của bạn, tức là các thư mục trên Raspberry Pi nơi bạn triển khai các tệp php chương trình của mình.

Tiếp theo, tôi sẽ chỉ cho bạn cách tạo tệp Php của riêng bạn bằng cách sử dụng hai tệp php mà tôi đã đề cập trước đó.

Bước 1: Mã hàm PHP - PhpSimpleChart2.php

Mã hàm PHP - PhpSimpleChart2.php
Mã hàm PHP - PhpSimpleChart2.php

Tệp này có tên là PhpSimpleChart2.php - bạn sẽ phải tải xuống từ kho lưu trữ git bằng cách nhấp vào nút tải xuống / sao chép - xem hình ảnh ở trên. Khi bạn đã hoàn thành việc đó, hãy chuyển hai tệp php sang máy chủ web của bạn bằng ứng dụng FTP tiêu chuẩn của bạn hoặc có thể bạn đã thiết lập chia sẻ samba trên Raspberry Pi của mình, điều này làm cho các thư mục Pi của bạn trông giống như các thư mục windows..

Bạn không thực sự cần thay đổi mã trong tệp Php chính này - PhpSimpleChart2.php. Đây là một chức năng tạo biểu đồ đường đơn giản cho Php. Về cơ bản, 2 mảng được chuyển cho hàm cũng như các đối số khác như kích thước biểu đồ. Mảng thứ nhất chứa các giá trị thô đầu tiên như nhiệt độ, v.v. Mảng thứ hai chứa các giá trị ngày tháng liên quan. Chương trình cố gắng tự động hóa biểu đồ tùy thuộc vào phạm vi, tối thiểu, tối đa và các phần tử mảng. Biểu đồ kết quả có thể được cắt và dán vào các tài liệu MS office dưới dạng gif, png, v.v. Một ví dụ-g.webp

Khi bạn đã tải PhpSimpleChart2.php lên máy chủ web của mình, bạn có thể viết tập lệnh của riêng mình để sử dụng. Điều này được hiển thị trong trang tiếp theo.

Bước 2: Viết chương trình của riêng bạn dựa trên chương trình mẫu

Viết chương trình của riêng bạn dựa trên chương trình mẫu
Viết chương trình của riêng bạn dựa trên chương trình mẫu

Tôi đã hiển thị một chương trình ví dụ, PhpSimpleChart_ex1.php một lần nữa nằm trong kho lưu trữ git. Dòng đầu tiên của mã là để gọi tập lệnh php chứa hàm biểu đồ -

request ("PhpSimpleChart2.php");

Trong trường hợp này, tệp PhpSimpleChart2.php được đặt trong cùng thư mục với tập lệnh bạn đang viết để gọi nó. Hy vọng rằng bạn sẽ biết rằng các tệp php phải có các thuộc tính đọc / ghi chính xác 755.

Tiếp theo, bạn cần tạo nguồn dữ liệu của mình và điền vào mảng. Dưới đây là các mảng ví dụ, một mảng cho dữ liệu và một mảng cho ngày và giờ được liên kết. Rõ ràng, phải có cùng một số giá trị trong cả hai mảng.

$ data_array = array ("12", "15", "18", "12", "11", "23", "11", "24", "15", "18", "12", " 11 "," 23 "," 11 "," 24 ");

$ date_array = array ("14h thứ 12", "15h thứ 12", "16h thứ 12", "17h thứ 12", "18h thứ 12", "19h thứ 12", "20h thứ 12", "21h thứ 12", "15h thứ 12", "16h thứ 12", "17h thứ 12", "18h thứ 12", "19h thứ 12", "20h thứ 12", "21h thứ 12");

Thông thường, bạn sẽ đọc các giá trị này từ truy vấn cơ sở dữ liệu hoặc tải chúng từ tệp văn bản.

Tiếp theo, bạn phải thiết lập các thông số cho biểu đồ của mình. Nó khá thẳng về phía trước. Bạn đặt tiêu đề trước rồi sửa chiều cao và chiều rộng của biểu đồ.

$ chart_text = "Biểu đồ thử nghiệm của tôi tháng 7 năm 2018";

$ y_title = "Nhiệt độ Độ C";

$ x_scale = 1000;

$ y_scale = 400;

Sau đó, bạn thực hiện một cuộc gọi hàm như sau.

draw_line_chart ($ data_array, $ date_array, $ chart_text, $ x_scale, $ y_scale, $ y_title);

Tôi đã hiển thị đầu ra của chương trình ví dụ này trong hình ảnh đính kèm. Chức năng lập biểu đồ cố gắng phân tỷ lệ tự động và tránh sự lộn xộn của trục y và các điểm mô tả biểu đồ. Hy vọng rằng, nó làm việc cho bạn. Đó là tất cả những gì bạn cần.

Bước 3: Kết luận

Tôi hy vọng rằng bạn thấy điều này hữu ích. Bạn có thể đang sử dụng một phương pháp khác phù hợp với bạn nhưng đây là một vài suy nghĩ trong mọi trường hợp;

1) Hầu hết các dịch vụ vẽ đồ thị IOT của bên thứ 3 hoạt động như một dịch vụ trực tuyến thường có thể truy cập được dưới dạng API.

2) Người dùng IOT có nhiều năng lực liên quan đến việc triển khai chức năng vẽ đồ thị.

PROS của giải pháp của tôi

a) Có thể hoạt động ngoại tuyến

b) Chi phí bằng không.

c) Dấu chân nhỏ

CONS

a) Không được kiểm tra nghiêm ngặt như các nhà phần mềm lớn.

b) Hạn chế về chức năng, tức là không có biểu đồ thanh, v.v.

Thức ăn cho suy nghĩ!

Đề xuất: