@City IoT Mākoņu platforma




iSys - inteliģentu sistēmu risinājumi









IoE.Sistēmas

Satura rādītājs

1. Ievads. 5

1.1 Atbalstītie ierīču veidi. 5

1.2. Atbalstīto produktu veidi. 5

1.3. Atbalstītie sakaru protokoli 5

1.4. Atbalstītā ierīču komunikācijas tehnoloģija 6

1.5. @City Cloud Server 6

1.5.1. Servera un sakaru vārtejas 7

1.5.2 HTTP LoRaWAN integrācija 7

1.5.3. Priekšējā saskarne 8

1.5.3. Servera piekļuves tiesības 8

1.6. Viedās ierīces 9

1.6.1. CIoT - GSM ierīces 9

1.6.3. BAS, BMS, IoT - Ethernet un WiFi ierīces 9

1.6.2. IoT -LoRaWAN ierīces 9

1.7. Uzņēmējdarbības bizness (B2B) iespējas 9

2. @City IoT Platformas funkcionalitāte 10

3. 11. galvenā lapa

4. 11. galvenā veidlapa

4.1. 12. galvene

4.1.1. Mājas saite - (atver faktisko rezultātu tabulu) 12

4.1.2. "X" izvēles rūtiņa - atver / aizver 12. vaicājuma veidlapu

4.1.3. "V" izvēles rūtiņa - atver / aizver 12. lauka veidlapu

4.1.4. Grafiskās ikonas - saites uz vizualizācijas rezultātiem (rediģējami) 12

4.2. Forma: 12

4.2.1. "X" izvēles rūtiņa - atver / aizver visu 12. vaicājuma veidlapu

4.2.2. CSS - atlasiet 12. vizualizācijas tēmu

4.2.3. Redzamie lauki Redzamie lauki - parāda / slēpj 12. lauka filtru sarakstu

4.2.4. Cilne: cilnes nosaukums, lai pievienotu vai noņemtu 12

4.2.5. Pievienot / noņemt pogas - pievienojiet vai noņemiet cilnes ar nosaukumu cilnes 12. laukā

4.2.6. Atlasiet kodola pogu 12

4.2.7. Noņemiet visas pogas 12 atlasi

4.2.7. Atlasiet visu pogu 12

4.2.8. Slēpt filtru - paslēpt visu 12. veidlapu

4.2.9. Izpildīt pogu - mainīt parametru iestatījumus 13

4.2.10. "V" izvēles rūtiņa - rādīt / augsta filtra laukus. 13

4.3. 13. cilnes

4.4. Tabulas saturs 13

4.4.1. Run - skata 13. rezultāta tips

4.4.2. Kopēt (+/- saites) 13

4.4.3. Galda šūnu saites 13

4.5. Datu secība 13

4.6. 13. piemērs

5. Kartes 15

5.1. Kartes inicializēšana 15

5.2. Papildu iestatījumi 15. vaicājumam

5.2.1. Mainīt MAP skalu (Tālummaiņas līmenis) 16

5.2.2. IMEI (Atlasīt ierīces lauku) 16

5.2.3. Lon, Lat (garuma, platuma koordinātu lauki) 16

5.2.4. Mainīt MAP stilu (motīvu) 16

5.2.5. KUR 16. klauzula

5.2.6. Izpildīt (Palaist vaicājuma pogu) 16

5.2.7. Noņemt visu atlasi (noņemt visus vaicājuma laukus) 17

5.2.8. "V" izvēles rūtiņa (atvērt / aizvērt lauka formu) 17

5.2.9. "X" izvēles rūtiņa (rādīt / paslēpt vaicājuma veidlapu) 17

5.3. 17. piemērs

6. Rādīt rezultātus 18. tabulā

6.1. 18. tabulas inicializēšana

6.2. 19. vaicājuma izvēles iestatījumi

6.2.1. Kārtot - kārtot lauku un kārtot augšupejošu / dilstošu 19

6.2.2. DB / IMEI - atlasiet 19. ierīce

6.2.3. CSS - izvēlieties stilu (vizualizācijas tēma) 20

6.2.4. Redzamie lauki - parādīt / paslēpt 20. veidlapu

6.2.5. Noņemt tukšu - nerādīt tukšas 20. kolonnas

6.2.6. "X" izvēles rūtiņa (rādīt / paslēpt vaicājuma veidlapu) 20

6.2.7. Kur klauzula (datu ierobežošanai) 20

6.2.8. Atlasiet pogu Core (Iespējot visbiežāk sastopamos laukus) 20

6.2.9. Noņemiet pogas Atlasīt visu pogu (noņemt visus laukus no vaicājuma) 20

6.2.10. Izpildīt (Run Query Button)

6.2.11. "V" izvēles rūtiņa (atvērt / aizvērt lauka formu) 20

7. Bāra diagrammas. 21

8. Vēsturiskās diagrammas. 22

8.1. Vēsturisko diagrammu inicializēšana 22

8.2. Izvēles vēsturisko diagrammu iestatījumi 23

8.2.1. IMEI - (Atlasiet ierīci, lai parādītu vēsturiskos datus) 23

8.2.2. Min - pirmā lauka minimālā minimālā vērtība 23

8.2.3. Max - pirmā lauka maksimālās vērtības ierobežojums 23

8.2.4. "V" - parādīt / paslēpt 23. veidlapu

8.2.5. No: iestatiet minimālo datumu / laiku (*) 23

8.2.6. Kam: iestatīt maksimālo datuma / laika datumu (*) 23

8.2.7. "X" izvēles rūtiņa (rādīt / paslēpt vaicājuma veidlapu) 23

8.2.8. "Kur" 23. klauzula

8.2.9. Noņemt pogas Atlasīt visu pogu (noņemt visus laukus no vaicājuma) 23

8.2.10. Izpildīt (Palaist vaicājuma pogu) 23

8.2.11. "V" izvēles rūtiņa (atvērt / aizvērt lauka formu) 24

8.3. Bāru variants: (parāda tikai pieejamos datus) 24

8.4. Nepārtraukts variants (ar tiem pašiem datiem): 24

9. Tīmekļa pārlūka saderība 25

10. Motīvu pielāgošana 26

11. Algoritmu atjauninājums 27

12. Datu bāzes struktūra 28

12.1. Tabulu "ithings_" un "*" struktūra 29

12.2. Ierīču komandu (notikumi) rinda "* _c" tabula - 30. struktūra

12.3. Piekļuve rezultātiem no datu bāzēm - vidēja līmeņa (datu lasīšana) 30

12.3.1. Iegūstiet visu ierīču pašreizējos statusus 30

12.3.2. Iegūt 31. ierīces vēsturiskos datus

12.3.3. Iegūt ierīču sarakstu - viens lauks no pašreizējiem statusiem ar ierobežojumu 32


1. Ievads.

@City IoT Mākoņu platforma ir veltīta "mikromākonis" individuālajiem klientiem. Platforma nav koplietojama, un tikai vienam klientam ir piekļuve fiziskajam vai virtuālajam serverim (VPS vai speciālajiem serveriem). Klients var izvēlēties vienu no desmitiem datu centru Eiropā vai pasaulē.

1.1 Atbalstītie ierīču veidi.

@City IoT platforma ir veltīta iSys.PL produktu sekošanai



1.2. Atbalstīto produktu veidi.

@City (eCity) Cloud IoT Platform ir dažāda lieluma sistēma IP IoT produktiem (saukti kopā kā @City aparatūra vai CioT ierīces ):


1.3. Atbalstītie saziņas protokoli

@City IoT platforma atbalsta šādus saziņas protokolus:

Datu sūtīšana no kontroliera uz mākoņa serveri un otrādi tiek šifrēta unikālā binārā formātā, lai nodrošinātu zemāko datu lielumu un paaugstinātu drošību. Katrs partneris iegūst savu unikālo šifrēšanas atslēgu ierīces autorizācijai, datu derīguma pārbaudei utt.


Ierīcēm, kas nav eHouse / eCity, mēs varam piegādāt individuālus šifrēšanas algoritmus ( "C" pirmkods) katram mikroprocesora partnerim, lai aizsargātu datus pirms saziņas.

Šajā gadījumā dati ir pilnīgi droši divvirzienu komunikācijas laikā, izmantojot publiskos saziņas līdzekļus (internetu, gaisu utt.). ).


1.4. Atbalstītā ierīču komunikācijas tehnoloģija

@City IoT platforma atbalsta:


@City IoT Platforma ir paredzēta ierīcēm / mezgliem:


1.5. @City Cloud Server

@City programmatūra darbojas uz Linux balstītas VPS (Virtual Private Server) vai Dedicated Server interneta pusē, atkarībā no pieprasītās programmas Serveris (saukts vēlāk par serveri):


Pastāv vairāki VPS varianti atkarībā no:


Ir vairāki desmiti veltīta servera atkarībā no:


@City IoT platforma ir veltīta vienam klientam:


Tā kā serveris nav koplietojams starp klientiem, tas vienkāršo piekļuvi drošībai un veiktspēju. Šī iemesla dēļ tikai klients ir atbildīgs par efektīvu drošību, stabilitāti, efektivitāti, datu caurlaidspēju utt. Nepietiekamas veiktspējas gadījumā klients var iegādāties augstāku plānu (VPS vai Dedicated Server), kas ir optimālāks par paredzamo funkcionalitāti un veiktspēju.

Īpašos gadījumos "Cloud to cloud" komunikāciju varētu īstenot globalizācijai un datu centralizēšanai lielākos apgabalos, nevis vairāku klientu mākonī.

1.5.1. Serveru un sakaru vārtejas

@City Server komunikācija tiek realizēta, pamatojoties uz zema līmeņa lietojumu veiktspējas maksimizēšanai.

@City Server lietojumprogrammas galvenās iezīmes ir:

@City Server programmatūra katram lietotājam ir vienāda, un to nevar pielāgot dažādiem klientiem.

1.5.2 HTTP LoRaWAN integrācija

LoRaWAN kontrolieri ir integrēti ar @City mākoni, izmantojot HTTP saskarni (tīmekļa āķus), kas pieejami LoRaWAN tīklā / lietojumprogrammu serverī.

Tiek atbalstīti vairāki tīkla / lietojumprogrammu serveru veidi:

TTN (ierobežots laiks "Gaisā" un maksimālais draiverim nosūtīto komandu skaits un neatbalsta programmaparatūras jaunināšanu)

LoraWAN-Stack (Nepieciešams mitināšana fiziskajā ierīcē ar piekļuvi internetam).

LoraServer.Io (Nepieciešams mitināšana fiziskajā ierīcē ar piekļuvi internetam - datu sūtīšana tikai uz serveri un neatbalsta programmaparatūras jaunināšanu)



LoRaWAN kontrolieru @City Cloud ir sadalīts tāpat kā citām saskarnēm. Tas ir apspriests iepriekšējā nodaļā.

1.5.3. Front-end interfeiss

Front-end interfeiss tiek realizēts ar PHP skriptiem pielāgotu datu iegūšanai no @City Cloud Database. Lai ierobežotu vēlamos datus, tiek izmantots ļoti elastīgs meklēšanas mehānisms, kura pamatā ir oriģināli SQL vaicājumi. Saskarnes piegādes vaicājumu rezultāti JSON formātā tālākai dekodēšanai un apstrādei, izmantojot Front-end Web "lietojumprogrammu".

Sākotnējā saskarne katram lietotājam ir vienāda, un to nevar pielāgot dažādiem klientiem.

Pārklājuma saskarni var izveidot mūsu personāls vai sadarbībā, lai nodrošinātu klienta pielāgošanu.

1.5.3. Servera piekļuves tiesības

Klienta piekļuves tiesības (fiziskajam serverim) ir ierobežotas.

Piekļuve failam tikai direktorijai "veidnes" (vietējie teksta faili - .txt, .js, .css, .html):

Citas piekļuves tiesības:


iSys - inteliģento sistēmu personālam - ir neierobežota piekļuve visam serverim, ieskaitot root kontu un pilnīgu piekļuvi DB uzturēšanai.

Noteiktos apstākļos iSys var piešķirt papildu ierobežotas tiesības klientam (PHP skripti, faili) pēc avota koda pārbaudes, testu veikšanas, ja tas neietekmē sistēmas vispārējo drošību, stabilitāti un veiktspēju.


1.6. Viedās ierīces

1.6.1. CIoT - GSM ierīces

Mūsu ierīces satur mikrokontrolleru un GSM / GPS / GNSS moduli (2G..4G, NBIoT, CATM1) saziņai. Mikrokontrolieris satur šifrētu sāknēšanas programmu drošai OTA programmaparatūras jaunināšanai. Tas ļauj izveidot daudzus sistēmas variantus, pamatojoties uz to pašu "CIoT viedierīce".


1.6.3. BAS, BMS, IoT - Ethernet un WiFi ierīces


Ethernet un WiFi kontrolieri ļauj veikt IP sakarus ar sistēmu (bez maksas par datu pārsūtīšanu GSM operatoram). Šīm ierīcēm ir arī šifrēts sāknēšanas ielādētājs, un ierīces, iespējams, tiks atjauninātas, izmantojot vietējo saskarni. WiFi gadījumā tai ir OTA programmaparatūras jauninājums no galvenā servera


1.6.2. IoT - LoRaWAN ierīces

LoRaWAN nodrošina datu pārraidi ļoti lielos attālumos (līdz apm. 15km). Šis diapazons ir atkarīgs no datu pārraides ātruma, datu daudzuma, teritorijas urbanizācijas un ierīču radio ceļu efektivitātes.

Mūsu ierīcēs ietilpst mikrokontrolleris un LoRaWAN modulis saziņai. Mikrokontrollerī ir šifrēts sāknēšanas ielādētājs drošam OTA programmatūras atjauninājumam. Tas ļauj jums izveidot vairākus sistēmas variantus, pamatojoties uz to pašu "IoT smart device". Ierīces darbojas ISM atvērtā joslā bez papildu abonēšanas maksas. Ir nepieciešams izmantot LoRaWAN Gateways, lai visu teritoriju aptvertu ar piekļuvi internetam. Esošo LoRaWAN vārtu gadījumā ierīču diapazonā (konfigurēts TTN serverim) ir iespējams nosūtīt informāciju caur tiem. Programmaparatūras jaunināšanai nepieciešams savs tīkls / lietojumprogramma LoRaWAN serveris un labs diapazons saziņai.

1.7. Uzņēmējdarbības (B2B) iespējas


Ir vairākas uzņēmējdarbības un sadarbības iespējas:

2. @City IoT Platformas funkcionalitāte

@City platforma atbalsta pielāgojamu priekšgala veidni datu vizualizēšanai, vaicājumiem, ierobežošanai un apstrādei (pašreizējie / vēstures dati):


Lietotāja priekšgals ir pieejams, izmantojot statisku IP vai DNS novirzīšanas domēnu / apakšdomēnu / failu, ja tas ir pieejams.


Parauga un demonstrācijas instalēšana (tā ir iespējota tikai potenciālajiem klientiem).

Lūdzu, informējiet mūs, kad vēlaties to pārbaudīt - lai iespējotu publisku piekļuvi platformai.

Tas varētu prasīt statisku attālā datora IP, lai iespējotu saziņu ar @City platformu.


3. Galvenā lapa

Drošības nolūkos galvenā lapa ir tīši atstāta tukša: http: //% JūsuIP% / IoT /

Tas var būt individuāli iespējots un rediģēts, un tajā var būt saites uz visiem pieejamajiem pakalpojuma @City IoT Platforma ja tas ir vajadzīgs


4. Galvenā forma

Galvenā forma ir paredzēta jaunu sākotnējo iestatījumu un cilņu izveidošanai: http: //%IP%/IoT/que.php

Šī ir sākotnējā forma katras konfigurācijas rezultātu, skatu un cilņu izveidošanai




Apraksti (no augšas un pa kreisi uz labo pusi)

4.1. Galvene

4.1.1. Mājas saite - (atver faktisko rezultātu tabulu)

4.1.2. "X" izvēles rūtiņa - tiek atvērta / aizvērta vaicājuma forma

4.1.3. "V" izvēles rūtiņa - atver / aizver lauku formu

4.1.4. Grafiskas ikonas - saites uz vizualizācijas rezultātiem (rediģējami)


4.2. Forma:

4.2.1. "X" izvēles rūtiņa - tiek atvērta / aizvērta visa vaicājuma forma

4.2.2. CSS - Atlasiet Vizualizācijas motīvs

Modificēt vizualizācijas motīvu CSS failam jābūt "veidnes / css /" direktorijs - tiek uzskaitīts automātiski.

4.2.3. Redzamie lauki izvēles rūtiņa - parāda / slēpj lauku filtru sarakstu

4.2.4. Cilne: Cilnes nosaukums, lai pievienotu vai noņemtu

4.2.5. Pievienot / noņemt Pogas - pievienojiet vai noņemiet cilnes ar nosaukumu Tab laukā

4.2.6. Atlasiet Core Poga

Atlasiet galvenos tabulā redzamos laukus. Tā tiek atjaunināts automātiski.

4.2.7. Atsijāt visu Poga

Noņemt visu lauku atlasi (jāseko, dažus no tiem atlasot manuāli)

4.2.7. Izvēlēties visus Poga

Atlasiet visus laukus (jāievēro, manuāli atceļot dažus no tiem)

4.2.8. Slēpt filtru - Paslēpt visu veidlapu

Tas ir ekvivalents visām izvēles rūtiņām (X)

4.2.9. Izpildīt Poga - mainiet parametru iestatījumus

4.2.10. "V" izvēles rūtiņa - rādīt / augsta filtra laukus.


4.3. Cilnes

Individuāli izveidotas cilnes ar nosaukumiem un sākotnējiem iestatījumiem (saglabāti cfg / tabs.cfg fails).

Failā faktiski ir nosaukums un URL (atdalīti ar tabulēšanas rakstzīmi).


4.4. Tabulas saturs

Parāda visus laukus, kurus ierobežo lauka filtrs.


Lauki tabulā:

4.4.1. Skriet - skatu rezultāta tips

karte- kartēšanas rezultāti kartē (var izvēlēties vienu vai vairākus laukus)

vēsture - vēsturiskās diagrammas (var izvēlēties vienu vai vairākus laukus)

tab - parāda tabulu (var izvēlēties jebkuru lauku kombināciju)

bārs - joslu diagrammā tiek parādīts tikai viens lauks

Nospiežot vienu no tā vērtībām, tiks atvērti jauni rezultāti ar atlasītajiem laukiem (pašreizējai rindai).


4.4.2. Kopēt (+/- saites)

Cilnes ar iestatīto nosaukumu pievienošana / noņemšana Tab laukā. Tas izmanto tikai laukus, kas atlasīti tajā pašā tabulas rindā.


4.4.3. Tabulas šūnu saites

Nospiežot jebkuru citu lauka nosaukumu, tiks sākta atlasītā lauka datu vizualizācija.


4.5. Datu secība


Parādīto lauku secība ir tā secība lauku formā (tomēr tm vienmēr tiek nosūtīts teksta beigās). Šo secību var mainīt tikai ar tiešu URL parametru rediģēšanu (lauku pasūtījuma daļa).


4.6. Piemērs

Piemēram: cilne Iestatīšana ar Aktīvu izsekošana nosaukums un kartē ir karte ar laiku un ātrumu

Viss apraksts attiecas uz rindu kur "Map" teksts ir "Palaist" kolonna.

  1. Ievadiet vārdu "Aktīvu izsekošana" iekšā Tab lauks (bez pēdiņām)

  2. Pārliecinieties, vai rindā nav atlasītas visas kolonnas

  3. atlasiet tm, gps_speed_km tikai pēc kārtas

  4. nospiediet + pogu, kur rindā






5. Kartes

Kartes var palaist no MainForm ar iepriekšēju konfigurāciju


5.1. Kartes inicializēšana

Kartes inicializēšana tiek veikta manuāli, ja to veic tieši ar saiti: > http: //%IP%/IoT/maps.php


  1. Lietotājam jāatceļ visu lauku atlase (nospiediet Atcelt atlasi Poga)

  2. Nospiediet kādu izvēles rūtiņu parādītajiem laukiem (piem., Ain5 (par smoga līmeni) un tm (mērījuma datumam / laikam)

  3. nospiediet "V" izvēles rūtiņa, lai paslēptu lauku formu

  4. nospiediet Izpildīt poga, lai palaistu DB vaicājumu un parādītu pašreizējo informāciju no visiem sensoriem / ierīcēm

  5. Karte ar datiem tiek atjaunināta pēc 30 sekundēm vai ilgāk.


5.2. Izvēles vaicājuma iestatījumi

Iestatījumi, kas aprakstīti no kreisās uz labo (augšējā ekrānuzņēmumā).

5.2.1. Mainīt MAP skalu (Tālummaiņas līmenis)

  1. Tālummaiņas līmeni var mainīt, izmantojot mēroga pogas (+/-) (pašreizējais_mērogs * 2 vai pašreizējais_mērogs / 2 attiecīgi). Nospiežot vienu no šīm pogām, skala tiks automātiski modificēta.

  2. Cits veids ir atlasīt Tālummaiņas līmenis Tālummaiņa Combo Box lauks un nospiediet Izpildīt pogu. Šajā gadījumā viss skats / karte tiek atkārtoti ielādēta un atsvaidzināta (inicializācijas laikā tas aizņem kādu laiku).

5.2.2. IMEI (Atlasiet ierīces lauku)

IMEIlauks satur ierīces unikālo ID vai unikālo aizstājvārdu ierīcei. Noklusējuma iestatījums ir * (zvaigznīte), kas parāda katras ierīces jaunākās vērtības un ģeogrāfisko atrašanās vietu.

Iestatot IMEI jebkurai citai vērtībai, tiks parādīti izvēlētās ierīces vēsturiskie dati. Tam ir jēga tikai mobilajiem un kustīgajiem sensoriem, pretējā gadījumā rezultāti kartē pārklāsies tajā pašā pozīcijā.


5.2.3. Lon, Lat (Garuma, platuma koordinātu lauki)

Iestatiet kartes centra pozīciju. Šis lauks ir iestatīts uz kursora pozīciju, kad kartē tiek nospiesta peles poga.


5.2.4. Mainīt MAP stilu (motīvs)

Kartes stilu / motīvu var izvēlēties Map ComboBox lauks (piem. Tumšs, pelēks, topogrāfisks).

Dažādām karšu tēmām var būt atšķirīgi maksimālie tālummaiņas līmeņi, tāpēc tā var ieviest pareizu motīvu, lai palielinātu kartes mērogu.


5.2.5. KUR klauzula

Kur klauzula tiek izmantota papildu vaicājuma virknei {WHERE part} MySQL / MariaDB.

Šis noteikums tiek ņemts vērā, lai izveidotu pilnu QUERY virkni datu bāzes rezultātam. Tas var ierobežot datus, laiku un citas vērtības, ierobežojot rezultātu skaitu. Šajā laukā jāizmanto oriģinālie tabulas lauku nosaukumi (nevis aizstājvārdi). Piem.

  1. gps_speed_km> 10 // ātrums ir lielāks par 10 km / h

  2. ain5> 3 // ain5 ir lielāks par 3 (turot 2,5 um daļiņu skaitu - smoga līmenis)

  3. gps_speed_km> 10 un ain6> 5 // ātrums ir lielāks par 10 km / h un ain6 ir lielāks par 5 (turot 10um daļiņu skaitu - smoga līmenis)


5.2.6. Izpildīt (Palaist vaicājuma pogu)

Nospiežot šo pogu, ir nepieciešams mainīt visus iestatījumus, parametrus (izņemot +/- pogas).

Karte no sākuma tiek ielādēta ar jauniem sākotnējiem iestatījumiem.

Karte vispār netiek ielādēta, ja pašreizējam vaicājumam nav pieejami dati.

5.2.7. Atsijāt visu (Noņemt visus laukus no vaicājuma)

Pēc šīs pogas nospiešanas vismaz viens lauks ir jāizvēlas manuāli, lai parādītu rezultātus kartē.


5.2.8. "V" Izvēles rūtiņa (Atvērt / aizvērt lauka formu)

Šo izvēles rūtiņu izmanto, lai parādītu / paslēptu parādāmo lauku atlasītāju.


5.2.9. "X" Izvēles rūtiņa (rādīt / paslēpt vaicājuma veidlapu)

Šī izvēles rūtiņa ļauj paslēpt visu veidlapu, izņemot ( +/- pogas)


Rezultāti kartē tiek pastāvīgi atsvaidzināti un atjaunoti ar jaunām vērtībām

5.3. Piemērs

Piemēram, smoga rezultāti (sensors uzstādīts automašīnai): smoga līmenis - 2.5um daļiņas (Ain5), ātrums (gps_speed_km), datums / laiks (tm), karte (2 - topogrāfisks), tālummaiņas līmenis 16

Kur klauzula:

"gps_fix = 3 un tm> "2019-02-18 00:00:00" un tm <"2019-02-19 00:00:00" un gps_speed_km> 0".

// GPS = derīgi 3D rezultāti un datums = 2019-02-18 un ātrums> 0 km / h



6. Rādīt rezultātus tabulā

Rādīt rezultātus tabulā.

Ieslēgts "Galvenā forma" nospiediet "tabula" pēc dažu lauku atlasīšanas, lai parādītu iepriekš konfigurētu tabulu




6.1. Tabulas inicializēšana

Kad tabula ir atvērta no saites http: //%IP%/IoT/que.php? func = cilnes tas prasa iepriekšēju inicializēt iestatījumus.

Varat atlasīt redzamos laukus (nospiežot "Redzamie lauki" ) izvēles rūtiņu.



  1. Atzīmējiet visus nepieciešamos izvēles rūtiņas parādītajiem laukiem

  2. Nospiediet izvēles rūtiņu "Redzamie lauki" lai slēptu lauku formu

  3. Nospiediet pogu Izpildīt, lai palaistu DB vaicājumu un displeja tabulu


6.2. Izvēles vaicājuma iestatījumi

Iestatījumi ir aprakstīti no kreisās uz labo (ekrānuzņēmumā).

6.2.1. Kārtot - kārtot lauku un kārtot augoši / dilstoši

Kārtot lauks ir ekvivalents kolonnas galvenes nospiešanai.

6.2.2. DB / IMEI - Atlasiet Ierīce

IMEIlauks satur ierīces unikālo ID vai unikālo aizstājvārdu ierīcei. Ar tukšu vērtību tā parāda jaunāko vērtību tabulu.

Iestatot IMEI jebkurai citai vērtībai, tiks parādīti izvēlētās ierīces vēsturiskie dati.


6.2.3. CSS - izvēlēties stilu (vizualizācijas tēma)

6.2.4. Redzamie lauki - Rādīt / paslēpt lauku formu

6.2.5. Noņemt Tukšs - Nerādīt tukšas kolonnas

6.2.6. "X" Izvēles rūtiņa (rādīt / paslēpt vaicājuma veidlapu)

6.2.7. Kur Klauzula (datu ierobežošanai)

Šis ir papildinājums MySQL / MariaDB vaicājuma virknei {WHERE part}

Šis noteikums tiek ņemts vērā, lai izveidotu pilnu QUERY virkni datu bāzes rezultātam. Tas var ierobežot datus, laiku un citas vērtības, ierobežojot rezultātu skaitu. Šajā laukā jāizmanto oriģinālie tabulas lauku nosaukumi (nevis aizstājvārdi). Piem.

  1. gps_speed_km> 10 // ātrums ir lielāks par 10 km / h

  2. ain5> 3 // ain5 ir lielāks par 3 (turot 2,5 um daļiņu skaitu - smoga līmenis)

  3. gps_speed_km> 10 un ain6> 5 // ātrums ir lielāks par 10 km / h un ain6 ir lielāks par 5 (turot 10um daļiņu skaitu - smoga līmenis)


6.2.8. Atlasiet Core Poga (iespējot visbiežāk sastopamos laukus)


6.2.9. Atsijāt visu Poga (noņemt visus laukus no vaicājuma)

Pēc šīs pogas nospiešanas vismaz viens lauks ir jāizvēlas manuāli, lai parādītu rezultātus kartē.


6.2.10. Izpildīt (Palaist vaicājuma pogu)

Nospiežot šo pogu, ir nepieciešams mainīt visus iestatījumus, parametrus (izņemot +/- pogas).

Tabula no jauna tiek ielādēta ar jauniem sākotnējiem iestatījumiem.



6.2.11. "V" Izvēles rūtiņa (Atvērt / aizvērt lauka formu)

Šo izvēles rūtiņu izmanto, lai parādītu / paslēptu parādāmo lauku atlasītāju.



Rezultāti tabulā ir sakārtoti pēc Kārtot lauka iestatīšana. Šķirošanas kārtību var mainīt, nospiežot rindas galveni (vienu reizi vienam virzienam divreiz citam virzienam).

Daži kolonnu rezultāti novirza uz turpmākajiem vizualizācijas ekrāniem (kodēti).


Rādot ierīces vēsturiskos datus, to vajadzētu ierobežot, lai netiktu rādīta visa vēstures informācija, jo tas var izraisīt veiktspēju vai atmiņas problēmas.


7. Bāra diagrammas.

Joslu diagrammas jāizpilda no galvenās formas, rindā "Josla" nospiežot vienu lauku.

Tas parāda sakārtotās joslas, kas normalizētas pēc maksimālās vērtības, rādot no augstākās līdz zemākajai kārtībai.

Tas ir noderīgs, lai ātri pārbaudītu ekstremālos rezultātus un veiktu dažas darbības.





Mouse Over notikums parādīs papildu informāciju par ierīci.


8. Vēsturiskās diagrammas.

Vēsturiskās diagrammas var sākt no MainForm, nospiežot atlasīto kolonnu rindā "Vēsture" (atsevišķam laukam).

Vairākiem laukiem rindā "Vēsture" ir jāpārbauda vēlamie lauki un slejā "Palaist" jānospiež saite "Vēsture".

Vēsturiskie rezultāti ir ierobežoti līdz pēdējām 24 stundām un nākamajām 24 stundām (iespējamām atsvaidzinošām diagrammām), kad ierobežojumi netika iestatīti.

8.1. Vēsturisko diagrammu inicializēšana


Vēsturiskajām diagrammām, kas atvērtas no galvenās saites, ir jāveic inicializācija kā citiem rezultātiem, ja atvērtas no saites bez preferenču parametriem.

Var tikt atlasīti vairāki lauki, lai parādītu dažādus vienumus. To var iestatīt arī lauka filtra formā.




  1. Atzīmējiet visus nepieciešamos izvēles rūtiņas parādītajiem laukiem

  2. Nospiediet izvēles rūtiņu "Redzamie lauki" lai slēptu lauku formu

  3. Nospiediet pogu Izpildīt, lai palaistu DB vaicājumu un parādītu tabulu


8.2. Izvēles vēsturisko diagrammu iestatījumi

Vienumi, kas aprakstīti no augšas un no kreisās uz labo (ekrānuzņēmumā).

8.2.1. IMEI - (Atlasiet ierīci, lai parādītu vēsturiskos datus)

IMEIlauks satur ierīces unikālo ID vai unikālo aizstājvārdu ierīcei. Ar * (zvaigznīte) vērtību tas parāda jaunāko vērtību tabulu, kurai nav jēgas.

Iestatot IMEI jebkurai citai vērtībai, tiks parādīti izvēlētās ierīces vēsturiskie dati.

8.2.2. Min - ierobežot pirmā lauka minimālo vērtību

8.2.3. Maks - ierobežot pirmā lauka maksimālo vērtību

8.2.4. "V" - Rādīt / paslēpt lauku formu

8.2.5. No: iestatiet minimālo datumu / laiku (*)

8.2.6. Uz: iestatiet maksimālo datuma / laika datumu (*)

8.2.7. "X" Izvēles rūtiņa (rādīt / paslēpt vaicājuma veidlapu)

8.2.8. "Kur" Klauzula

Klauzula par datu rezultātu ierobežošanu MySQL / MariaDB papildu vaicājumu virkne {WHERE part}.

Šis noteikums tiek ņemts vērā, lai izveidotu pilnu QUERY virkni datu bāzes rezultātam. Tas var ierobežot datus, laiku un citas vērtības, ierobežojot rezultātu skaitu. Šajā laukā jāizmanto oriģinālie tabulas lauku nosaukumi (nevis aizstājvārdi) un derīga SQL sintakse. Piem.

  1. gps_speed_km> 10 // ātrums ir lielāks par 10 km / h

  2. ain5> 3 // ain5 ir lielāks par 3 (turot 2,5 um daļiņu skaitu - smoga līmenis)

  3. gps_speed_km> 10 un ain6> 5 // ātrums ir lielāks par 10 km / h un ain6 ir lielāks par 5 (turot 10um daļiņu skaitu - smoga līmenis)


8.2.9. Atsijāt visu Poga (noņemt visus laukus no vaicājuma)

Pēc šīs pogas nospiešanas vismaz viens lauks ir jāizvēlas manuāli, lai parādītu vēsturiskos rezultātus.


8.2.10. Izpildīt (Palaist vaicājuma pogu)

Nospiežot šo pogu, ir nepieciešams mainīt visus iestatījumus, parametrus (izņemot lauku vai vaicājumu paneļa rādīšanu). Tabula no jauna tiek ielādēta ar jauniem sākotnējiem iestatījumiem.

8.2.11. "V" Izvēles rūtiņa (Atvērt / aizvērt lauka formu)

Šo izvēles rūtiņu izmanto, lai parādītu / paslēptu parādāmo lauku atlasītāju.


8.3. Bāri Variants: (parāda tikai pieejamos datus)



8.4. Nepārtraukts variants (ar tiem pašiem datiem):



Peles rādītājs parāda mērījumu vērtības un datumu / laiku.

9. Tīmekļa pārlūka saderība


Funkcija / WWW pārlūks

Chrome 72

FireFox 65

Mala

Opera 58

Kartes

+

+

+

+

Vēsturiski

+

+ (*)

+

+

Bāri

+

+

+

+

Cilnes

+

+

+

+


* - Firefox neatbalsta datuma / laika atlasītāju (teksta lauks jāmaina manuāli, izmantojot pareizu datuma un laika formātu).

Internet Explorer netiek atbalstīts (izmantojiet Mala tā vietā)

Pārējās tīmekļa pārlūkprogrammas netika pārbaudītas.



10. Motīvu pielāgošana

Tīmekļa lapu pamatā ir vispārīgs veidnes fails, kas atrodas "veidnes" direktorija "* .template".

Katrā lappuses tipā ir arī:

  1. "* .head" fails, kurā glabājas lapas galvene (saites, importētie CSS, JavaScript faili utt. )

  2. "* .foot" faili, kas glabā lapas kājeni (saites utt. )


Vizualizācijas tēmu var mainīt atbilstoši lietotāja vēlmēm, kopējot un modificējot CSS failus. CSS faili atrodas "templates / css" direktorijā. Lai izveidotu, piemēram, optimizētus, var izmantot dažādas tīmekļa lapu tēmas. drukāšana, viedtālruņi, PAD veidnes.


Table skati - ir atlasāms lauks CSS faila izvēlei, lai pilnībā modificētu tēmu (saglabāts "templates / css / tabs" direktorija).




Map skati - vispārējo tēmu izvēlas "karte" tipa kombinētā kaste. Turklāt ir noklusējuma CSS fails "templates / css / map.css" kas satur dažas papildu funkcionalitātes, piemēram, slēpšanas / krāsošanas rezultātus, pamatojoties uz tā vērtībām. Pārējā šī CSS faila daļa praktiski aprobežojas ar vaicājumu un lauku veidlapām.


Lielākā daļa @Pilsētas platforma PHP faili vizualizācijai pieņem cssparametrs ar tēmas faila nosaukuma vērtību (bez paplašinājuma). Failam jāatrodas direktorijā "templates / css", un nosaukums ir reģistrjutīgs.


Daži motīvu displeja elementi atrodas tieši failā JavaScript, kas atrodas "template / js" direktorijā.

Galvenais @City scenārijs"@ City.js" atrodas augšējā direktorijā. Tajā nav modifikācijas iespēju atrašanās vieta, tomēr skriptu var kopēt "templates / js" direktorijā un tur modificēts. Lai izmantotu atsevišķu skriptu, ir jāatjaunina visi galvenes faili.

11. Algoritmu atjaunināšana


Dažiem unikāliem sensoriem var būt nepieciešamas īpašas aprēķina funkcijas.

Nav iespējas atjaunināt un uzturēt vairākus @City Server programmatūra, Front-end PHP interfeiss, kas radītu daudz jautājumu, versiju, kļūdu.

Labākais un vienkāršākais veids, kā to sasniegt, ir JavaScript "pārklājuma" failu atjaunināšana, lai pareizi parādītu vērtību / aprakstu.

Oriģinālie JS skripti ir atvērts teksta fails, un tos var pielāgot klientu vajadzībām. Kā norādīts iepriekšējā nodaļā, tie ir jākopē "templates / js" direktoriju, kurā klientam ir piekļuves tiesības modifikācijai.


Programmēšanas tehniskais aspekts @City sistēma nav šī dokumenta tēma, tomēr tīmekļa izstrādātājs, kuram ir pamatzināšanas par HTML un JS, var pielāgot priekšgala tīmekļa lietojumprogrammu individuālām klientu vajadzībām.


12. Datu bāzes struktūra


@City datu bāze ar nosaukumu "IoT" vai "* IoT" ir sadalīts tabulās (kur zvaigznīte ir prefikss atkarībā no mitināšanas servera - ja nepieciešams). DataBase var novērot saitē PHPAdmin (tīmekļa lietojumprogramma) http: //% IP% / phpmyadmin




Katrai ierīcei iestatītie tabulas (kur * {asterix} ir IMEI adrese - unikāls ID):

Citas tabulas:



12.1. "ithings_" un "*" tabulu struktūra

12.2. Ierīču komandu (Notikumi) rinda "* _c" tabula - struktūra


Šī tabula ir notikumu / komandu rinda katrai ierīcei, un tai ir šāda struktūra:



12.3. Piekļuve rezultātiem no datu bāzēm - vidēja līmeņa (datu lasīšana)


Dati var būt pieejami bez Front-end tīmekļa lietojumprogrammas. @City sistēmā ir skripts ar vidēja līmeņa funkcijām. Rezultāti tiek atgriezti JSON formātā.


12.3.1. Iegūstiet visu ierīču pašreizējos statusus

http: //%IP%/IoT/que.php? func = devsjson


Vaicājums atgriežas vesels "_ithings" tabula (visu ierīču pašreizējie statusi) JSON formātā:

[{ "valstī":"", "pilsēta":"", "kontinents":"", "valstī":"", "novads":"", "apakšreģions":"", "apakšreģions":"", "pilsēta":"", "apgabals":"", "iela":"", "iela_nr":"", "item_nr":"", "gps_lat":"0000.0000N", "gps_long":"00000.0000E", "tm":"2019-02-10 12:56:23", "radīšana":"2019-02-09 18:12:38", "Pēdējais":"0000-00-00 00:00:00", "notikumi":"", "lietotājs":"", "iziet":"", "imei":"351580051067110", "sn":"", "statuss":"73000200000f360033026800240000002c002c002dffffffffffffffff5b63000001c1000001c200000000000000000009250a4f0a760a7a0a750a780a7e0000031d032205fc34029b025c02560040030", "hash_code":"", "adrese":"", "fwnr":"", "invalīdiem":"", "gsm_nr":"", "pārdevējs":"", "laika zona":"", "dst":"", "rssi":"91", "rsrp":"99", "gps_lat":"0000.0000N", "gps_long":"00000.0000E", "gps_hdop":"", "gps_alt":"", "gps_fix":"4", "gps_cog":"", "gps_speed_km":"", "gps_sat":"", "notikumi":"", "out1":"0", "out2":"0", "out3":"0", "out4":"0", "out5":"0", "ārā6":"0", "ārā7":"0", "ārā8":"0", "out9":"0", "ārā10":"1", "ārā11":"0", "ārā12":"0", "ārā13":"0", "ārā14":"0", "out15":"0", "out16":"0", "in1":"0", "in2":"0", "in3":"0", "in4":"0", "5":"0", "in6":"0", "in7":"0", "8.":"0", "in9":"0", "10. gadā":"0", "11. gadā":"0", "12. gadā":"0", "in13":"0", "14":"0", "15. gadā":"0", "in16":"0", "ain1":"3894", "ain2":"51", "ain3":"616", "ain4":"36", "a5":"0", "ain6":"44.", "ain7":"44.", "ain8":"45", "sens1":"0", "sens2":"0", "sens3":"0", "sens4":"0", "sens5":"0", "sens6":"0", "sens7":"0", "sens8":"0", "dimm1":"255", "dimm2":"255", "dimm3":"255", "dimm4":"255", "dimm5":"255", "dimm6":"255", "dimm7":"255", "dimm8":"255", "int1":"-16776767", "int2":"450", "int3":"", "int4":"", "int5":"", "int6":"0", "text1":"", "teksts2":"", "teksts3":"", "teksts4":"", "teksts5":"", "text6":"" }]

12.3.2. Iegūstiet ierīces vēsturiskos datus

IMEI pieprasījumi par vienas ierīces vēsturiskajiem datiem:

http: //%IP%/IoT/que.php? func = imeijson & imei = 356345080018095


Tā kā visa tabula var saturēt miljoniem rindu, tā jāierobežo ar WHERE klauzulu, lai netiktu pakļauts serverim.

Papildu parametru URL parametri:

func - imeijsons

imei - ierīces IMEI

laukā - lauki, kas jāparāda rezultātos (ar komu atdalīts saraksts)

min - minimālā vērtība pirmajam saraksta laukam

maks - maksimālā vērtība pirmajam saraksta laukam

svait - lauks kārtošanai

tm - lauks tiek automātiski pievienots rezultātiem.

where - kur klauzula par ierobežotiem datiem


Piemērs:

Mēs vēlamies iegūt šādu rezultātu

ierīcei ar imei=356345080018095

rādīt laukus: ain5, ain6, gps_lat, gps_long

un ierobežot a5 diapazonā ( 1, 10000 ) - jābūt pirmajam saraksta laukam

un GPS ir derīgi dati (gps_fix = 3)

un datums / laiks (tm) from2019-02-14 23:00:19 to 2019-02-15 00:00:00


Izveidota URL virkne:

http: //%IP%/IoT/que.php? func =imeijson& imei =356345080018095& lauks =a5, ain6, gps_lat, gps_long& min =1& max =1000& kur =gps_fix = 3 un tm> "2019-02-14 23:00:19" un tm <"2019-02-15 00:00:00"


Vaicājumu rezultāti:

[{ "a5":"66","ain6":"68","gps_lat":"5202,7326N","gps_long":"02115.8073E","tm":"2019-02-14 23:04:31" }, { "a5":"67","ain6":"76","gps_lat":"5202,7328N","gps_long":"02115.8075E","tm":"2019-02-14 23:05:42" }, { "a5":"63","ain6":"77","gps_lat":"5202,7328N","gps_long":"02115.8074E","tm":"2019-02-14 23:06:05" }, { "a5":"58","ain6":"77","gps_lat":"5202,7328N","gps_long":"02115.8075E","tm":"2019-02-14 23:06:32" }, { "a5":"58","ain6":"68","gps_lat":"5202,7328N","gps_long":"02115.8076E","tm":"2019-02-14 23:06:55" }]

12.3.3. Iegūt ierīču sarakstu - viens lauks no pašreizējiem statusiem ar ierobežojumu

Šī funkcija atgriež ierobežotus datus no tabulas "_ithings"


http: //%IP%/IoT/que.php? func = fieldjson & field = ain5 & min = 13 & max = 5000



Parametri:

func - laukdžsons

laukā - lauks, kas jāparāda rezultātos - imei un tm tiek automātiski pievienoti

min - lauka minimālā vērtība

maks - lauka maksimālā vērtība


Iepriekš norādītajai vaicājuma virknei tā atgriežas rezultāti ain5, imei, tm lauki:

ja a5 ir diapazonā (13,5000)


Vaicājumu rezultāti:

[{"imei":"353080090069142", "tm":"2019-03-14 11:51:01", "a5":"14" },

{"imei":"356345080018095", "tm":"2019-02-20 09:13:04", "a5":"115" },

{"imei":"karczew", "tm":"2019-03-07 13:08:22", "a5":"103." }]