Obsah:

Vytvořte si vlastní grafy pro data IOT na Raspberry PI: 3 kroky
Vytvořte si vlastní grafy pro data IOT na Raspberry PI: 3 kroky

Video: Vytvořte si vlastní grafy pro data IOT na Raspberry PI: 3 kroky

Video: Vytvořte si vlastní grafy pro data IOT na Raspberry PI: 3 kroky
Video: Mini PC AC8-N na Intel N100 - část 3. Proxmox, Home Assistant OS 2024, Červenec
Anonim
Vytvořte si vlastní grafy pro data IOT na Raspberry PI
Vytvořte si vlastní grafy pro data IOT na Raspberry PI

Pokud chcete mít možnost vytvářet vlastní grafy IOT pomocí 7 řádků kódu, čtěte dále.

Chtěl jsem vytvořit grafy pro zobrazení dat v grafickém formátu ze svých senzorů IOT na webové stránce. Dříve jsem k tomu pro svůj databázový systém - Mysql používal služby třetích stran (některé placené) a funkce grafů třetích stran - pomocí programovacího jazyka známého jako Php. Považoval jsem tyto služby třetích stran za příliš obtížné nebo příliš nákladné na nasazení. Proto jsem napsal svou vlastní jednoduchou funkci Php, která bere data jako pole z textového souboru nebo databázové tabulky (možná z Mysql) a zobrazuje je jako čárový graf na webové stránce. Zpřístupnil jsem veškerý php kód na github-https://github.com/scanos/php-simple-chart. Také jsem zde zahrnoval část kódu - první soubor php - PhpSimpleChart2.php - obsahuje soubor funkcí čárového grafu, druhý, PhpSimpleChart_ex1.php, je ukázkovým souborem, který ukazuje, jak jej použít. Doporučuji také navštívit stránku github a získat aktualizace kódu.

Nasazuji to na svém Raspberry Pi. Zde je to, co potřebujete:

1) Některé znalosti o nasazení webového serveru, jako je Apache, databáze jako Mysql a PHP. Souhrnně se jim říká LAMP - Linux, Apache, Mysql a PHP. a na webu je obrovské množství informací o jejich nasazení na Raspberry Pi. Proto to zde nebudu rozebírat.

2) LAMP linuxové prostředí - opět jako Raspberry Pi.

3) Prostředek k nahrávání a vytváření souborů do vašeho webového prostředí, tj. Do složek na vašem Raspberry Pi, kam nasazujete soubory php programu.

Dále vám ukážu, jak vytvořit vlastní soubory Php pomocí dvou souborů php, o kterých jsem se zmiňoval dříve.

Krok 1: Kód funkce PHP - PhpSimpleChart2.php

Kód funkce PHP - PhpSimpleChart2.php
Kód funkce PHP - PhpSimpleChart2.php

Tento soubor se nazývá PhpSimpleChart2.php - budete jej muset stáhnout z úložiště git kliknutím na tlačítko Stáhnout / klonovat - viz obrázek výše. Jakmile to uděláte, přeneste dva soubory php na svůj webový server pomocí standardního FTP klienta nebo jste si na Raspberry Pi nastavili sdílení samby, díky čemuž budou vaše složky Pi vypadat jako složky Windows.

V tomto hlavním souboru Php - PhpSimpleChart2.php opravdu nemusíte měnit kód. Jedná se o jednoduchou funkci vytváření čárových grafů pro Php. V zásadě jsou do funkce předána 2 pole a další argumenty, jako jsou rozměry grafu. 1. pole obsahuje první nezpracované hodnoty, jako je teplota atd. Druhé pole obsahuje přidružené hodnoty data. Program se pokusí automaticky přizpůsobit graf v závislosti na rozsahu, min, max a prvcích pole. Výsledný graf lze vyjmout a vložit do dokumentů MS Office jako gif,-p.webp

Jakmile nahrajete PhpSimpleChart2.php na svůj webový server, můžete napsat svůj vlastní skript, který to použije. To je uvedeno na následující stránce.

Krok 2: Psaní vlastního programu na základě ukázkového programu

Psaní vlastního programu na základě ukázkového programu
Psaní vlastního programu na základě ukázkového programu

Ukázal jsem ukázkový program PhpSimpleChart_ex1.php, který je opět v úložišti git. První řádek kódu je zavolat skript php, který obsahuje funkci grafů -

vyžadují ("PhpSimpleChart2.php");

V tomto případě je soubor PhpSimpleChart2.php umístěn do stejné složky jako skript, který píšete, abyste jej nazvali. Naštěstí budete vědět, že soubory php musí mít správné vlastnosti pro čtení / zápis 755.

Dále musíte vytvořit zdroje dat a naplnit pole. Zde jsou ukázková pole, jedno pro data a jedno pro související data a časy. Očividně musí být v obou polích stejný počet hodnot.

$ data_array = pole („12“, „15“, „18“, „12“, „11“, „23“, „11“, „24“, „15“, „18“, „12“, „ 11 "," 23 "," 11 "," 24 ");

$ date_array = pole („12. 14h“, „12. 15h“, „12. 16h“, „12. 17h“, „12. 18h“, „12. 19h“, „12. 20h“, „12. 21h“, „12. 15h“, „12. 16h“, „12. 17h“, „12. 18h“, „12. 19h“, „12. 20h“, „12. 21. h“);

Obvykle byste tyto hodnoty přečetli z databázového dotazu nebo je načtli z textového souboru.

Dále musíte nastavit parametry pro svůj graf. Je to docela přímočaré. Nejprve nastavíte názvy a poté opravíte výšku a šířku grafu.

$ chart_text = "Můj testovací graf červenec 2018";

$ y_title = "Teplota Deg C";

$ x_scale = 1000;

$ y_scale = 400;

Poté zavoláte funkci následujícím způsobem.

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

Ukázal jsem výstup tohoto ukázkového programu na přiloženém obrázku. Funkce mapování se pokouší automaticky škálovat a vyhnout se nepořádku bodů osy y a deskriptoru grafu. Naštěstí vám to funguje. To je vše, co potřebujete.

Krok 3: Závěr

Doufám, že vám to přišlo užitečné. Možná používáte jinou metodu, která vám vyhovuje, ale v každém případě je zde několik myšlenek;

1) Většina grafických služeb IOT třetích stran funguje jako online služba, která je obvykle dostupná jako API.

2) Uživatelé IOT mají širokou škálu kompetencí, pokud jde o nasazení funkcí grafů.

PRO moje řešení

a) Může pracovat offline

b) Nulové náklady.

c) Malá stopa

NEVÝHODY

a) Netestováno stejně přísně jako velké softwarové domy.

b) Omezená funkčnost, tj. žádné sloupcové grafy atd.

K zamyšlení!

Doporučuje: