Talaan ng mga Nilalaman:

Lumikha ng Aking Sariling Mga Larawan para sa Aking Data ng IOT sa isang Raspberry PI: 3 Mga Hakbang
Lumikha ng Aking Sariling Mga Larawan para sa Aking Data ng IOT sa isang Raspberry PI: 3 Mga Hakbang

Video: Lumikha ng Aking Sariling Mga Larawan para sa Aking Data ng IOT sa isang Raspberry PI: 3 Mga Hakbang

Video: Lumikha ng Aking Sariling Mga Larawan para sa Aking Data ng IOT sa isang Raspberry PI: 3 Mga Hakbang
Video: “Papel”: A Gabay Guro Short Film 2024, Nobyembre
Anonim
Lumikha ng Aking Sariling Mga Larawan para sa Aking Data ng IOT sa isang Raspberry PI
Lumikha ng Aking Sariling Mga Larawan para sa Aking Data ng IOT sa isang Raspberry PI

Mangyaring basahin kung nais mong lumikha ng iyong sariling mga IOT graph gamit ang 7 mga linya ng code.

Nais kong lumikha ng mga tsart upang maipakita ang data sa isang grapikong format mula sa aking mga IOT sensor sa isang web page. Dati, para dito, ginamit ko ang mga serbisyo ng 3rd party (ilang bayad) at mga function ng graph ng 3rd party para sa aking system ng database - Mysql, gamit ang isang wikang pang-program na kilala bilang Php. Natagpuan ko ang mga serbisyong ito ng 3rd party na masyadong mahirap o masyadong mahal upang mai-deploy. Samakatuwid, nagsulat ako ng sarili kong simpleng pagpapaandar ng Php na kumukuha ng data bilang mga array mula sa isang text file o database table (mula sa Mysql marahil) at ipinapakita ang mga ito bilang isang line graph sa isang web page. Ginawa kong magagamit ang lahat ng php code sa github - https://github.com/scanos/php-simple-chart. Isinama ko rin ang ilan sa mga code dito - ang unang php file - PhpSimpleChart2.php-naglalaman ng file na function ng linya ng linya sa isa pa, PhpSimpleChart_ex1.php, ay isang halimbawang file na nagpapakita kung paano ito gamitin. Iminumungkahi ko na bisitahin mo rin ang pahina ng github upang makakuha ng mga pag-update ng code.

Inilalagay ko ito sa aking Raspberry Pi. Narito ang kailangan mo:

1) Ang ilang kaalaman sa pag-deploy ng isang web server tulad ng Apache, isang database tulad ng Mysql, at PHP. Sama-sama, ang mga ito ay kilala bilang LAMP - Linux, Apache, Mysql at PHP. at mayroong isang malaking halaga ng impormasyon sa web tungkol sa pag-deploy ng mga ito sa isang Raspberry Pi. Samakatuwid, hindi ko ito sasakupin dito.

2) Isang LAMP environment ng linux - muli, tulad ng Raspberry Pi.

3) Isang paraan upang mag-upload at lumikha ng mga file sa iyong kapaligiran sa web, ibig sabihin, ang mga folder sa iyong Raspberry Pi kung saan mo mailalagay ang iyong mga file ng php ng programa.

Susunod, ipapakita ko sa iyo kung paano lumikha ng iyong sariling mga file na Php gamit ang dalawang mga file na php kung saan ko pa binanggit kanina.

Hakbang 1: Ang PHP Function Code - PhpSimpleChart2.php

Ang PHP Function Code - PhpSimpleChart2.php
Ang PHP Function Code - PhpSimpleChart2.php

Ang file na ito ay tinatawag na PhpSimpleChart2.php - kakailanganin mong i-download ito mula sa git repository sa pamamagitan ng pag-click sa pindutan ng pag-download / clone - tingnan ang imahe sa itaas. Kapag nagawa mo na iyon, ilipat ang dalawang mga php file sa iyong web server gamit ang iyong karaniwang FTP client o marahil ay nag-set up ka ng isang pagbabahagi ng samba sa iyong Raspberry Pi na ginagawang mga folder ng windows ang iyong mga Pi folder..

Hindi mo talaga kailangang baguhin ang code sa pangunahing file na Php - PhpSimpleChart2.php. Ito ay isang simpleng pag-andar ng paglikha ng tsart ng linya para sa Php. Talaga, 2 mga array ang ipinapasa sa pagpapaandar pati na rin iba pang mga argumento tulad ng mga sukat ng tsart. Ang 1st array ay naglalaman ng mga unang hilaw na halaga tulad ng temperatura atbp. Naglalaman ang pangalawang array ng nauugnay na mga halaga ng petsa. Sinusubukan ng programa na i-autosize ang grap depende sa saklaw, min, max at mga elemento ng array. Ang resulta na tsart ay maaaring i-cut at i-paste sa mga dokumento ng tanggapan ng MS bilang isang gif,-p.webp

Kapag na-upload mo ang PhpSimpleChart2.php sa iyong web server, maaari mo nang isulat ang iyong sariling script upang magamit ito. Ipinapakita ito sa susunod na pahina.

Hakbang 2: Pagsulat ng Iyong Sariling Program Batay sa Halimbawa ng Program

Pagsulat ng Iyong Sariling Program Batay sa Halimbawa ng Program
Pagsulat ng Iyong Sariling Program Batay sa Halimbawa ng Program

Nagpakita ako ng isang halimbawa ng programa, PhpSimpleChart_ex1.php na muling nasa repository ng git. Ang unang linya ng code ay upang tawagan ang php script na naglalaman ng pag-andar sa pag-chart -

nangangailangan ng ("PhpSimpleChart2.php");

Sa kasong ito, ang file na PhpSimpleChart2.php ay nakalagay sa parehong folder bilang script na sinusulat mo upang matawag ito. Inaasahan ko, malalaman mo na ang mga file ng php ay kailangang magkaroon ng wastong basahin / isulat ang mga katangian ng 755.

Susunod, kailangan mong likhain ang iyong mga mapagkukunan ng data at i-populate ang array. Narito ang mga halimbawang array, isa para sa data at isa para sa nauugnay na mga petsa at oras. Malinaw na, dapat magkaroon ng parehong bilang ng mga halaga sa parehong mga arrays.

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

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

Karaniwan, mababasa mo ang mga halagang ito mula sa isang query sa database o mai-load ang mga ito mula sa isang text file.

Susunod, kailangan mong itakda ang mga parameter para sa iyong tsart. Medyo deretso ito. Itakda mo muna ang mga pamagat at pagkatapos ay ayusin ang taas at lapad ng graph.

$ chart_text = "Ang aking tsart sa pagsubok Hulyo 2018";

$ y_title = "Temp Deg C";

$ x_scale = 1000;

$ y_scale = 400;

Pagkatapos ay gumawa ka ng isang tawag na pag-andar tulad ng sumusunod.

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

Ipinakita ko ang output ng halimbawang programa na ito sa naka-attach na imahe. Sinusubukan ng pagpapaandar ng charting na mag-autoscale at maiwasan ang kalat ng mga puntos ng y-axis at chart ng tagapaglarawan. Sana, ito ay gumagana para sa iyo. Iyon lang ang kailangan mo.

Hakbang 3: Konklusyon

Inaasahan kong nahanap mo itong kapaki-pakinabang. Maaaring gumagamit ka ng ibang pamamaraan na gumagana para sa iyo ngunit narito ang ilang mga saloobin sa anumang kaso;

1) Karamihan sa mga serbisyo sa graphing ng IOT ng ika-3 partido ay nagpapatakbo bilang isang serbisyong online na madaling ma-access bilang isang API.

2) Ang mga gumagamit ng IOT ay may malawak na hanay ng mga kakayahan tungkol sa pag-deploy ng pag-andar ng graphing.

PROS ng aking solusyon

a) Maaaring mapatakbo nang offline

b) Zero na gastos.

c) Maliit na bakas ng paa

CONS

a) Hindi nasubukan sa parehong kahigpit ng malalaking bahay ng software.

b) Limitado sa pag-andar, ibig sabihin walang mga chart ng bar atbp.

Pagkain para sa pag-iisip!

Inirerekumendang: