@City IoT Cloud Platform




iSys - Intelligente systemer IoT Løsninger









IoE.Systems

Indholdsfortegnelse

1. Introduktion. 5

1.1 Understøttede enhedstyper. 5

1.2. Understøttede produkttyper. 5

1.3. Understøttede kommunikationsprotokoller 5

1.4. Enheders understøttede kommunikationsteknologi 6

1.5. @City Cloud Server 6

1.5.1. Server- og kommunikationsgateways 7

1.5.2 HTTP LoRaWAN-integration 7

1.5.3. Front-end interface 8

1.5.3. Serveradgangsrettigheder 8

1.6. Smart Devices 9

1.6.1. CIoT - GSM-enheder 9

1.6.3. BAS, BMS, IoT - Ethernet- og WiFi-enheder 9

1.6.2. IoT -LoRaWAN-enheder 9

1.7. Business to Business (B2B) muligheder 9

2. @City IoT Platforms funktionalitet 10

3. Vigtigste side 11

4. Hovedformular 11

4.1. Overskrift 12

4.1.1. Hjemlink - (åbner tabellen med faktiske resultater) 12

4.1.2. Afkrydsningsfelt "X" - åbner / lukker forespørgselsformular 12

4.1.3. "V" afkrydsningsfelt - åbner / lukker feltformular 12

4.1.4. Grafiske ikoner - links til visualiseringsresultater (redigerbare) 12

4.2. Form: 12

4.2.1. "X" afkrydsningsfelt - åbner / lukker hele forespørgselsformular 12

4.2.2. CSS - Vælg visualiseringstema 12

4.2.3 Afkrydsningsfelt Visible Fields - viser / skjuler feltfilterliste 12

4.2.4. Tab: Fanenavn for at tilføje eller fjerne 12

4.2.5. Tilføj / fjern knapper - Tilføj eller fjern faner med navnet i faneblad 12

4.2.6. Vælg kerneknap 12

4.2.7. Fravælg alle knap 12

4.2.7. Vælg knap alt 12

4.2.8. Skjul filter - Skjul hele formular 12

4.2.9. Udfør knap - Skift parametreindstillinger 13

4.2.10. "V" afkrydsningsfelt - vis / høj filterfelter. 13

4.3. Faner 13

4.4. Tabelindhold 13

4.4.1. Kørselsvisningsresultat type 13

4.4.2. Kopi (+/- links) 13

4.4.3. Tabelcelleforbindelser 13

4.5. Datarækkefølge 13

4.6. Eksempel 13

5. Kort 15

5.1. Kortinitialisering 15

5.2. Valgfri indstillinger for forespørgsel 15

5.2.1. Rediger MAP-skala (zoomniveau) 16

5.2.2. IMEI (Vælg enhedsfelt) 16

5.2.3. Lon, Lat (felter for længdegrad, breddegradskoordinater) 16

5.2.4. Rediger MAP-stil (tema) 16

5.2.5. HVOR Klausul 16

5.2.6. Udfør (Kør forespørgselsknap) 16

5.2.7. Fravælg alle (Fjern alle felter fra forespørgslen) 17

5.2.8. "V" afkrydsningsfelt (Åbn / luk feltformular) 17

5.2.9. "X" afkrydsningsfelt (Vis / skjul forespørgselsformular) 17

5.3. Eksempel 17

6. Vis resultater i tabel 18

6.1. Initialisering af tabel 18

6.2. Valgfri indstillinger for forespørgsel 19

6.2.1. Sorter - sorter felt og rækkefølge stigende / faldende 19

6.2.2. DB / IMEI - Vælg enhed 19

6.2.3. CSS - vælg stil (Visualiseringstema) 20

6.2.4. Synlige felter - Vis / skjul felter form 20

6.2.5. Fjern tom - vis ikke tomme kolonner 20

6.2.6. "X" afkrydsningsfelt (Vis / skjul forespørgselsformular) 20

6.2.7. Hvor klausul (til databegrænsning) 20

6.2.8. Vælg Kerneknap (Aktivér de mest almindelige felter) 20

6.2.9. Fjern markering af alle-knappen (Fjern alle felter fra forespørgslen) 20

6.2.10. Udfør (Kør forespørgselsknap) 20

6.2.11. "V" afkrydsningsfelt (åbne / lukke feltformular) 20

7. Søjlediagrammer. 21

8. Historiske kort. 22

8.1. Initialisering af historiske diagrammer 22

8.2. Valgfri indstilling af historiske diagrammer 23

8.2.1. IMEI - (Vælg enhed for at få vist historiske data) 23

8.2.2. Min - grænse minimal værdi for første felt 23

8.2.3. Maks - begræns maksimal værdi af første felt 23

8.2.4. "V" - Vis / skjul felter form 23

8.2.5. Fra: indstil minimal dato / tid (*) 23

8.2.6. Til: Indstil maksimal dato / tid (*) 23

8.2.7. "X" afkrydsningsfelt (Vis / skjul forespørgselsformular) 23

8.2.8. "Hvor" Klausul 23

8.2.9. Fjern markeringen af ​​alle-knappen (Fjern alle felter fra forespørgslen) 23

8.2.10. Udfør (Kør forespørgselsknap) 23

8.2.11. Afkrydsningsfelt "V" (Åbn / luk feltformular) 24

8.3. Søjlevariant: (viser kun tilgængelige data) 24

8.4. Kontinuerlig variant (med samme data): 24

9. Webbrowser Kompatibilitet 25

10. Tilpasning af temaer 26

11. Opdatering af algoritmer 27

12. Databasestruktur 28

12.1. "ithings_" og "*" tabeller struktur 29

12.2. Enhedskommandoer (begivenheder) kø "* _c" tabel - struktur 30

12.3. Adgang til resultater fra databaser - mellemniveau (læsedata) 30

12.3.1. Få aktuelle status på alle enheder 30

12.3.2. Hent historiske data for enheden 31

12.3.3. Få en liste over enheder - enkelt felt fra aktuelle status med begrænsning 32


1. Introduktion.

@City IoT Cloud Platform er dedikeret "mikro-sky" system til individuelle kunder. Platformen kan ikke deles, og kun en kunde har adgang til fysisk eller virtuel server (VPS eller dedikerede servere). Kunden kan vælge et af snesevis af datacentre i Europa eller i verden.

1.1 Understøttede enhedstyper.

@City IoT platform er dedikeret til at følge iSys.PL-produkter



1.2. Understøttede produkttyper.

@City (eCity) Cloud IoT Platform er forskellige størrelsessystemer til IP IoT-produkter (kaldes sammen som @City-hardware eller CioT-enheder ):


1.3. Understøttede kommunikationsprotokoller

@City IoT platform understøtter følgende protokoller til kommunikation:

Data sendt fra controller til cloud-server og omvendt krypteres i unikt binært format for lavest datastørrelse og øget sikkerhed. Hver partner får sin egen unikke krypteringsnøgle til enhedsgodkendelse, datagyldighedskontrol osv.


For ikke-eHouse / eCity-enheder kan vi levere individuelle krypteringsalgoritmer ( "C" kildekode) for hver partner til mikroprocessor for at beskytte data før kommunikation.

I dette tilfælde er dataene helt sikre under tovejskommunikation over de offentlige kommunikationsmedier (internet, Air osv. ).


1.4. Understøttet kommunikationsteknologi for enhederne

@City IoT platform understøtter:


@City IoT Platform er dedikeret til enheder / noder:


1.5. @City Cloud Server

@City-software fungerer på Linux-baseret VPS (Virtual Private Server) eller Dedikeret Server på internetsiden, afhængigt af den ønskede ydelse af Server (kaldet senere Server):


Der findes flere varianter af VPS afhængigt af:


Snesevis af dedikeret server findes afhængigt af:


Platformen @City is er dedikeret til en enkelt kunde:


Da det ikke kan deles mellem servere mellem kunder, forenkler det sikkerhedsadgang og ydeevne. Af denne grund er kun kunden ansvarlig for effektiv sikkerhed, stabilitet, effektivitet, datakapacitet osv. I tilfælde af utilstrækkelig ydelse kan kunden købe højere plan (VPS eller dedikeret server), mere optimal end forventet funktionalitet og ydeevne.

I særlige tilfælde "Cloud to cloud" kommunikation kan implementeres til globalisering og centralisering af data til større områder i stedet for multikund sky.

1.5.1. Server- og kommunikationsgateways

Kommunikation af @City Server realiseres baseret på lavt niveau applikation til ydeevne maksimering.

Hovedfunktionerne i @City Server-applikationen er:

@City Server-software er den samme for hver bruger og kan ikke tilpasses til forskellige kunder.

1.5.2 HTTP LoRaWAN-integration

LoRaWAN-controllere er integreret med @City-skyen via HTTP-grænsefladen (webhooks), der er tilgængelig på LoRaWAN-netværket / applikationsserveren.

Flere typer netværk / applikationsserver understøttes:

TTN (begrænset tid "I luften" og det maksimale antal kommandoer, der sendes til driveren og ikke understøtter firmwareopgradering)

LoraWAN-Stack (Kræver hosting på en fysisk enhed med internetadgang).

LoraServer.Io (Kræver hosting på en fysisk enhed med internetadgang - sender kun data til serveren og understøtter ikke firmwareopgradering)



@City Cloud for LoRaWAN-controllere er opdelt på samme måde som for andre grænseflader. Det diskuteres i det foregående kapitel.

1.5.3. Front-end interface

Front-end interface er realiseret med PHP-scripts til udpakning af tilpassede data fra @City Cloud Database. Det bruger meget elastisk søgemekanisme, der er baseret på originale SQL-forespørgsler for at begrænse de ønskede data. Interface leverer forespørgselsresultater i JSON-format til yderligere afkodning og behandling via JavaScript Front-end Web "applikation".

Den originale front-end-interface er den samme for hver bruger og kan ikke tilpasses til forskellige kunder.

Overlay-interface kan oprettes af vores personale eller i samarbejde for at sikre kundetilpasning.

1.5.3. Serveradgangsrettigheder

Kundeadgangsrettigheder (til fysisk server) er begrænsede.

Filadgang kun til "skabeloner" -mappen (native tekstfiler - .txt, .js, .css, .html):

Andre adgangsrettigheder:


iSys - Intelligent Systems-personale - har ubegrænset adgang til hele serveren inklusive rodkonto og fuld DB-adgang til vedligeholdelse.

Under visse omstændigheder kan iSys give yderligere begrænsede rettigheder til kunden (PHP-scripts, filer) efter kontrol af kildekode, kørsel af test, hvis det ikke påvirker den generelle systemsikkerhed, stabilitet og ydeevne.


1.6. Smart Devices

1.6.1. CIoT - GSM-enheder

Vores enheder indeholder mikrocontroller og GSM / GPS / GNSS-modul (2G..4G, NBIoT, CATM1) til kommunikation. Microcontroller indeholder krypteret bootloader til sikker OTA-firmwareopgradering. Dette muliggør oprettelse af mange systemvarianter baseret på det samme "CIoT Smart enhed".


1.6.3. BAS, BMS, IoT - Ethernet- og WiFi-enheder


Ethernet- og WiFi-controllere tillader IP-baseret kommunikation til systemet (uden betaling for dataoverførsel til GSM-operatøren). Disse enheder har også krypteret bootloader, og enheder kan opdateres via dens oprindelige grænseflade. Til WiFi har den OTA-firmwareopgradering fra hovedserveren


1.6.2. IoT - LoRaWAN-enheder

LoRaWAN muliggør datatransmission over meget lange afstande (op til ca. 15 km). Dette interval afhænger af hastigheden af ​​datatransmission, mængden af ​​data, områdets urbanisering og effektiviteten af ​​enhedernes radiostier.

Vores enheder inkluderer en mikrokontroller og et LoRaWAN-modul til kommunikation. Mikrocontrolleren indeholder en krypteret bootloader til sikker OTA-softwareopdatering. Dette giver dig mulighed for at oprette flere systemvarianter baseret på det samme "IoT smart device". Enhederne fungerer i det åbne ISM-bånd uden yderligere abonnementsgebyrer. Det er nødvendigt at bruge LoRaWAN Gateways til at dække hele området med adgang til Internettet. I tilfælde af eksisterende LoRaWAN-porte inden for rækkevidden af ​​enheder (konfigureret til TTN-server) er det muligt at sende information gennem dem. Firmwareopgradering kræver eget netværk / applikation LoRaWAN-server og godt rækkevidde for kommunikation.

1.7. Business to Business (B2B) muligheder


Der er flere muligheder for forretning og samarbejde:

2. @City IoT Platforms funktionalitet

@City-platform understøtter tilpasset frontend-skabelon til datavisualisering, forespørgsel, begrænsning og behandling (aktuelle / historikdata):


Brugerens front-end er tilgængelig via statisk IP- eller DNS-omdirigeringsdomæne / underdomæne / fil, hvis det er tilgængeligt.


Eksemplarisk & demo-installation (Den er kun aktiveret for potentielle kunder).

Du bedes informere os, når du vil teste det - for at muliggøre offentlig adgang til platformen.

Det kan kræve statisk IP på en fjerncomputer for at muliggøre kommunikation til @City-platformen.


3. Forside

Hovedsiden efterlades med vilje tom af sikkerhedsmæssige årsager: http: //% YourIP% / IoT /

Det kan muligvis aktiveres og redigeres individuelt og indeholder links til alle tilgængelige tjenester fra @City IoT Platform hvis det er nødvendigt


4. Hovedformular

Hovedformular er beregnet til at oprette nye forudindstillinger og faner: http: //%IP%/IoT/que.php

Dette er den oprindelige form til oprettelse af resultater, visninger og faner for hver konfiguration




Beskrivelser (fra top og venstre til højre retning)

4.1. Header

4.1.1. Hjem Link - (åbner den aktuelle resultattabel)

4.1.2. "X" afkrydsningsfelt - åbner / lukker forespørgselsformular

4.1.3. "V" afkrydsningsfelt - åbner / lukker feltformular

4.1.4. Grafiske ikoner - links til visualiseringsresultater (redigerbare)


4.2. Form:

4.2.1. "X" afkrydsningsfelt - åbner / lukker hele forespørgselsformularen

4.2.2. CSS - Vælg Visualiseringstema

Modify Visualization Theme CSS-fil skal eksistere i "skabeloner / css /" katalog - automatisk opført.

4.2.3 Synlige felter afkrydsningsfelt - viser / skjuler feltfilterliste

4.2.4. Fane: Fanenavn, der skal tilføjes eller fjernes

4.2.5. Tilføj / fjern Knapper - Tilføj eller fjern faner med navnet i Tab Mark

4.2.6. Vælg Core Knap

Vælg de vigtigste felter, der er synlige på bordet. Det er opdateret automatisk.

4.2.7. Fravælg alle Knap

Fravælg alle felter (skal følges ved at vælge nogle af dem manuelt)

4.2.7. Vælg alle Knap

Vælg alle felter (skal følges ved at fravælge nogle af dem manuelt)

4.2.8. Skjul filter - Skjul hele formularen

Dette svarer til alle (X) afkrydsningsfelter

4.2.9. Udfør Knap - Skift parametreindstillinger

4.2.10. "V" afkrydsningsfelt - vis / højt filterfelter.


4.3. Faner

Individuelt oprettede faner med navne og forudindstillinger (gemt i cfg / tabs.cfg fil).

Filen indeholder faktisk navn og URL (adskilt af faneblad).


4.4. Indhold i tabel

Viser alle felter, der er begrænset af feltfilter.


Felter i tabellen:

4.4.1. Løb - visning resultattype

kort- kortlægning af resultater på kortet (et eller flere felter kan vælges)

historie - historiske diagrammer (et eller flere felter kan vælges)

tab - viser tabel (enhver kombination af felter kan vælges)

bar - kun et felt vises på søjlediagrammet

Når du trykker på en af ​​dens værdier, åbner den nye resultater med valgte felter (for den aktuelle række).


4.4.2. Kopiér (+/- links)

Tilføjelse / fjernelse af en fane med navnet indstillet Tab Mark. Det bruger kun felter valgt i samme række i tabellen.


4.4.3. Table Cell Links

Hvis du trykker på et hvilket som helst andet feltnavn, startes datavisualisering af det valgte felt for den valgte række.


4.5. Datarækkefølge


Rækkefølgen af ​​de viste felter er som dens rækkefølge i form af felter (dog tm feltet sendes altid til slutningen af ​​teksten). Denne rækkefølge kan kun ændres ved direkte redigering af URL-parametre (felter bestiller del).


4.6. Eksempel

For eksempel: Indstillingsfane med Sporing af aktiver navn og indeholder kort med tid og hastighed på kortet

Al beskrivelse med henvisning til række hvor "Map" teksten er i "Løb" kolonne.

  1. Indtast navn "Sporing af aktiver" i Tab felt (uden anførselstegn)

  2. Sørg for, at alle kolonner ikke er markeret i rækken

  3. Vælg tm, gps_hastighed_km kun i træk

  4. trykke + knappen hvor i rækken






5. Kort

Kort kan startes fra MainForm med forudkonfiguration


5.1. Kortinitialisering

Kortinitialisering udføres manuelt, når den udføres direkte med link: > http: //%IP%/IoT/maps.php


  1. Brugeren skal fravælge alle felter (tryk på Fravælg markeringen Knap)

  2. Tryk på et afkrydsningsfelt for viste felter (f.eks. Ain5 (for Smog-niveau) og tm (for måledato / -tid)

  3. trykke "V" afkrydsningsfelt for at skjule felter

  4. trykke Udfør knap til at køre DB-forespørgsel og vise aktuel information fra alle sensorer / enheder

  5. Kort med data opdateres efter 30 sekunder eller mere.


5.2. Valgfri indstillinger for forespørgsel

Indstillinger beskrevet fra venstre mod højre (på ovenstående skærmbillede).

5.2.1. Rediger MAP-skala (zoomniveau)

  1. Zoomniveauet kan ændres ved hjælp af (+/-) knapperne til skalering (henholdsvis nuværende_skala * 2 eller nuværende_skala / 2). Hvis du trykker på en af ​​disse knapper, ændres skalaen automatisk.

  2. En anden måde er at vælge Zoomniveau ind Zoom Kombinationsfelt og tryk Udfør knap. I dette tilfælde genindlæses hele visning / kort og opdateres (tager et stykke tid under initialiseringen).

5.2.2. IMEI (Vælg enhedsfelt)

IMEIfelt indeholder enheds unikt id eller unikt alias for en enhed. Standardindstillingen er * (stjerne), der viser de seneste værdier og geolokalisering for hver enhed.

Indstilling af IMEI til en hvilken som helst anden værdi viser historiske data for den valgte enhed. Det har kun mening for mobile og bevægelige sensorer, ellers overlapper resultaterne på kortet på samme position.


5.2.3. Lon, Lat (Koordinatfelter for længdegrad, bredde)

Indstil kortets midterposition. Dette felt er indstillet til markørposition, når der trykkes på museknappen på kortet.


5.2.4. Rediger MAP-stil (tema)

Kortstil / tema kan vælges fra Map ComboBox-felt (f.eks. Mørk, grå, topografisk).

Forskellige korttemaer kan have forskellige maksimale zoomniveauer, så det kan håndhæve det rette tema for at øge kortets skala.


5.2.5. HVOR Klausul

Hvor klausul bruges til yderligere forespørgselsstreng {WHERE part} til MySQL / MariaDB.

Denne klausul tages i betragtning for at konstruere komplet QUERY-streng til databaseresultat. Det kan begrænse data, tid og andre værdier ved at begrænse antallet af resultater. Oprindelige tabelfeltnavne (ikke alias) skal bruges i dette felt. F.eks.

  1. gps_speed_km> 10 // hastighed er mere end 10 km / t

  2. ain5> 3 // ain5 er større end 3 (holder 2,5um partikler tæller - smog niveau)

  3. gps_speed_km> 10 og ain6> 5 // hastighed er mere end 10 km / t og ain6 er større end 5 (holder 10um partikler tæller - smog niveau)


5.2.6. Udfør (Kør forespørgselsknap)

Det er nødvendigt at trykke på denne knap for at ændre indstillinger, parametre (undtagen at trykke på +/- knapper).

Kort er indlæst fra begyndelsen med nye forudindstillinger.

Kortet indlæses slet ikke, når der ikke er nogen data tilgængelige for den aktuelle forespørgsel.

5.2.7. Fravælg alle (Fjern alle felter fra forespørgslen)

Efter at have trykket på denne knap skal mindst et felt vælges manuelt for at vise resultaterne på kortet.


5.2.8. "V" Afkrydsningsfelt (Åbn / luk feltformular)

Dette afkrydsningsfelt bruges til at vise / skjule markøren af ​​de felter, der skal vises.


5.2.9. "X" Afkrydsningsfelt (Vis / skjul forespørgselsformular)

Dette afkrydsningsfelt muliggør skjul hele form undtagen ( +/- knapper)


Resultaterne på kortet opdateres løbende og opdateres med nye værdier

5.3. Eksempel

Eksempelvis Smog-resultater (sensor installeret på bilen): Smogniveau 2.5um partikler (Ain5), Hastighed (gps_hastighed_km), Dato / tid (tm), kort (2 - topografisk), zoomniveau 16,

Hvor klausul:

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

// GPS = gyldige 3D-resultater & dato = 2019-02-18 & hastighed> 0 km / t



6. Vis resultater i tabellen

Vis resultater i tabellen.

På "Hovedformular" trykke "bord" efter valg af nogle felter til visning af forudkonfigureret tabel




6.1. Initialisering af tabellen

Når bordet er åbent fra linket http: //%IP%/IoT/que.php? func = faner det kræver forudgående initialisering af indstillingerne.

Du kan vælge synlige felter (ved at trykke på "Synlige felter" ) afkrydsningsfelt.



  1. Tryk på alle krævede afkrydsningsfelter for viste felter

  2. Tryk på afkrydsningsfeltet "Synlige felter" for at skjule feltform

  3. Tryk på Udfør-knappen for at køre DB-forespørgsel og vise tabel


6.2. Valgfri indstillinger for forespørgsel

Indstillinger er beskrevet fra venstre mod højre (på skærmbilledet).

6.2.1. Sorter - sorter felt og rækkefølge stigende / faldende

Sorteringsfelt svarer til at trykke på kolonneoverskrift.

6.2.2. DB / IMEI - Vælg Enhed

IMEIfelt indeholder enheds unikt id eller unikt alias for en enhed. Med tom værdi viser den tabel over de seneste værdier.

Indstilling af IMEI til en hvilken som helst anden værdi viser historiske data for den valgte enhed.


6.2.3. CSS - vælg stil (Visualiseringstema)

6.2.4. Synlige felter - Vis / skjul feltformular

6.2.5. Fjern tom - Vis ikke tomme kolonner

6.2.6. "X" Afkrydsningsfelt (Vis / skjul forespørgselsformular)

6.2.7. Hvor Klausul (til databegrænsning)

Dette er sufix for MySQL / MariaDB yderligere forespørgselsstreng {WHERE part}

Denne klausul tages i betragtning for at konstruere komplet QUERY-streng til databaseresultat. Det kan begrænse data, tid og andre værdier ved at begrænse antallet af resultater. Oprindelige tabelfeltnavne (ikke alias) skal bruges i dette felt. F.eks.

  1. gps_speed_km> 10 // hastighed er mere end 10 km / t

  2. ain5> 3 // ain5 er større end 3 (holder 2,5um partikler tæller - smog niveau)

  3. gps_speed_km> 10 og ain6> 5 // hastighed er mere end 10 km / t og ain6 er større end 5 (holder 10um partikler tæller - smog niveau)


6.2.8. Vælg Core Knap (Aktiver mest almindelige felter)


6.2.9. Fravælg alle Knap (Fjern alle felter fra forespørgslen)

Efter at have trykket på denne knap skal mindst et felt vælges manuelt for at vise resultaterne på kortet.


6.2.10. Udfør (Kør forespørgselsknap)

Det er nødvendigt at trykke på denne knap for at ændre indstillinger, parametre (undtagen at trykke på +/- knapper).

Tabellen genindlæses fra begyndelsen med nye forudindstillinger.



6.2.11. "V" Afkrydsningsfelt (Åbn / luk feltformular)

Dette afkrydsningsfelt bruges til at vise / skjule markøren af ​​de felter, der skal vises.



Resultaterne i tabellen er sorteret efter Sortere feltindstilling. Sorteringsrækkefølgen kan ændres ved at trykke på rækkeoverskrift (en gang i en retning to gange i en anden retning).

Nogle resultater i kolonner linker til yderligere visualiseringsskærme (hårdkodet).


Når der vises historiske data for enheden, skal det begrænses for ikke at vise hele historikinformation, fordi det kan føre til ydeevne eller problemer med hukommelsen.


7. Søjlediagrammer.

Søjlediagrammer skal udføres fra hovedformularen ved at trykke på et enkelt felt i rækken "Søjle".

Det viser sorterede søjler normaliseret til maksimal værdi, der vises fra højeste til laveste rækkefølge.

Det er nyttigt til hurtig kontrol af ekstreme resultater og tage nogle handlinger.





Mouse Over-begivenheden viser yderligere oplysninger for enheden.


8. Historiske kort.

Historiske diagrammer kan startes fra MainForm, når du trykker på den valgte kolonne i rækken "Historie" (for et enkelt felt).

For flere felter i rækken "Historie" skal de ønskede felter kontrolleres, og linket "Historie" skal trykkes i kolonnen "Kør".

Historiske resultater er begrænset til sidste 24 timer + næste 24 timer (for eventuel opdatering af diagrammer), hvor der ikke blev oprettet nogen grænser.

8.1. Initialisering af historiske diagrammer


Historiske diagrammer, når de åbnes fra hovedlinket, kræver initialisering som andre resultater, når de åbnes fra link uden præferenceparametre.

Flere felter kan vælges for at vise forskellige emner. Det kan også indstilles i feltfilterformular.




  1. Tryk på alle krævede afkrydsningsfelter for viste felter

  2. Tryk på afkrydsningsfeltet "Synlige felter" for at skjule feltform

  3. Tryk på knappen Udfør for at køre DB-forespørgsel og vise tabellen


8.2. Valgfri indstilling af historiske diagrammer

Elementer beskrevet ovenfra og fra venstre mod højre (på skærmbilledet).

8.2.1. IMEI - (Vælg enhed for at få vist historiske data)

IMEIfelt indeholder enheds unikt id eller unikt alias for en enhed. Med * (asterix) -værdien viser den en tabel over de nyeste værdier, som ikke har nogen mening.

Indstilling af IMEI til en hvilken som helst anden værdi viser historiske data for den valgte enhed.

8.2.2. Min - begrænse den minimale værdi af det første felt

8.2.3. Max - begrænse den maksimale værdi af det første felt

8.2.4. "V" - Vis / skjul feltformular

8.2.5. Fra: indstil minimal dato / tid (*)

8.2.6. Til: indstil maksimal dato / klokkeslæt (*)

8.2.7. "X" Afkrydsningsfelt (Vis / skjul forespørgselsformular)

8.2.8. "Hvor" Klausul

Klausul om begrænsning af dateresultater MySQL / MariaDB yderligere forespørgselsstreng {WHERE del}.

Denne klausul tages i betragtning for at konstruere komplet QUERY-streng til databaseresultat. Det kan begrænse data, tid og andre værdier ved at begrænse antallet af resultater. Originale tabelfeltnavne (ikke alias) skal bruges i dette felt og gyldig SQL-syntaks. F.eks.

  1. gps_speed_km> 10 // hastighed er mere end 10 km / t

  2. ain5> 3 // ain5 er større end 3 (holder 2,5um partikler tæller - smog niveau)

  3. gps_speed_km> 10 og ain6> 5 // hastighed er mere end 10 km / t og ain6 er større end 5 (holder 10um partikler tæller - smog niveau)


8.2.9. Fravælg alle Knap (Fjern alle felter fra forespørgslen)

Efter at have trykket på denne knap skal mindst et felt vælges manuelt for at få vist historiske resultater.


8.2.10. Udfør (Kør forespørgselsknap)

Det er nødvendigt at trykke på denne knap for at ændre indstillinger, parametre (undtagen visning af felter eller forespørgselspanel). Tabellen genindlæses fra begyndelsen med nye forudindstillinger.

8.2.11. "V" Afkrydsningsfelt (Åbn / luk feltformular)

Dette afkrydsningsfelt bruges til at vise / skjule markøren af ​​de felter, der skal vises.


8.3. Barer Variant: (viser kun tilgængelige data)



8.4. Sammenhængende variant (med de samme data):



Musemarkørens værdier for målinger og dato / tid.

9. Webbrowser Kompatibilitet


Funktion / WWW-browser

Chrome 72

FireFox 65

Edge

Opera 58

Kort

+

+

+

+

Historisk

+

+ (*)

+

+

Barer

+

+

+

+

Faner

+

+

+

+


* - Firefox understøtter ikke dato- / tidsvælger (tekstfelt skal redigeres manuelt ved hjælp af korrekt datoformat).

Internet Explorer understøttes ikke (brug Edge i stedet for)

Andre webbrowsere blev ikke testet.



10. Temaer Tilpasning

Websider er baseret på en generel skabelonfil, der findes på "skabeloner" bibliotek "* .template".

Derudover indeholder hver sidetype:

  1. "* .head" -fil, der gemmer sidehovedet (links, importeret CSS, JavaScript filer osv. )

  2. "* .foot" -filer, der gemmer sidefoden på siden (links osv. )


Visualiseringstema kan ændres i henhold til brugerpræferencer ved at kopiere og ændre CSS-filer. CSS-filer findes i "skabeloner / css" vejviser. Forskellige websides temaer kan bruges til at skabe optimeret til f.eks. udskrivning, SmartPhones, PAD-skabeloner.


Table visninger - har valgbart felt til valg af CSS - fil til komplet ændring af temaet (gemt i "skabeloner / css / faner" bibliotek).




Map synspunkter - generelt tema er valgt af "kort" skriv kombinationsboks. Derudover er der standard CSS-fil "skabeloner / css / map.css" som indeholder nogle ekstra funktioner som at skjule / farve resultater baseret på dens værdier. Resten af ​​denne CSS-fil er praktisk talt begrænset til forespørgsel og feltformularer.


Mest af @City Platform PHP-filer til visualisering accepteres cssparameter med værdien af ​​filnavnet til temaet (uden udvidelse). Filen skal være placeret i "skabeloner / css" -mappen, og navnet skelnes mellem store og små bogstaver.


Nogle elementer i temavisningen er placeret direkte i JavaScript-filen i "skabelon / js" vejviser.

Vigtigste @City manuskript"@ City.js" er placeret i øverste bibliotek. Der er ingen ændringsmulighed i dette placering, men script kan kopieres til "skabeloner / js" bibliotek og ændret der. Brug af individuelt script kræver opdatering af alle headerfiler.

11. Opdatering af algoritmer


Nogle unikke sensorer kan kræve dedikerede beregningsfunktioner.

Der er ingen mulighed for at opdatere og vedligeholde flere varianter af @City Server-software, Front-end PHP interface, hvilket ville forårsage mange problemer, versioner, fejl.

Den bedste og nemmeste måde at opnå det på er at opdatere over "overlay" filer for korrekt visning af værdien / beskrivelsen.

Originale JS-scripts er åben tekstfil og kan blive vedtaget efter kundens behov. Som nævnt i forrige kapitel skal de kopieres til "skabeloner / js" katalog, hvor kunden har adgangsrettigheder til ændring.


Teknisk aspekt ved programmering af @City systemet er ikke genstand for dette dokument, men webudvikler med grundlæggende kendskab til HTML og JS kan tilpasse Front-end-webapplikation til individuelle kundebehov.


12. Databasestruktur


@City Database med et navn "IoT" eller "* IoT" er opdelt i tabeller (hvor asterix er præfiks afhængigt af hosting-server - hvis det kræves). DataBase kan observeres i PHPAdmin (webapplikation) på linket http: //% IP% / phpmyadmin




Tabeller indstillet til hver enhed (hvor * {asterix} er IMEI-adresse - unikt ID):

Andre tabeller:



12.1. "ithings_" og "*" tabeller struktur

12.2. Enhedskommandoer (begivenheder) kø "* _c" tabel - struktur


Denne tabel er kø for begivenheder / kommandoer for hver enhed og har følgende struktur:



12.3. Adgang til resultater fra databaser - mellemniveau (læsning af data)


Data kan være tilgængelige uden Front-end webapplikation. @City-systemet indeholder script med funktioner på mellemniveau. Resultaterne returneres i JSON-format.


12.3.1. Få aktuelle status på alle enheder

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


Forespørgsel returnerer hel "_ithings" tabel (aktuelle status for alle enheder) i JSON-format:

[{ "Land":"", "by":"", "kontinent":"", "Land":"", "område":"", "underregion":"", "underregion":"", "by":"", "distrikt":"", "gade":"", "street_nr":"", "vare_nr":"", "gps_lat":"0000.0000N", "gps_long":"00000.0000E", "tm":"2019-02-10 12:56:23", "skabelse":"2019-02-09 18:12:38", "sidst":"0000-00-00 00:00:00", "begivenheder":"", "bruger":"", "passere":"", "imei":"351580051067110", "sn":"", "status":"73000200000f360033026800240000002c002c002dffffffffffffff5b63000001c1000001c2000000000000000009250a4f0a760a7a0a750a780a7e0000031d032205fc34029b025c025600460eb305320000", "hash_code":"", "addr":"", "fwnr":"", "handicappet":"", "gsm_nr":"", "sælger":"", "tidszone":"", "dst":"", "rssi":"91", "rsrp":"99", "gps_lat":"0000.0000N", "gps_long":"00000.0000E", "gps_hdop":"", "gps_alt":"", "gps_fix":"4", "gps_cog":"", "gps_hastighed_km":"", "gps_sat":"", "begivenheder":"", "ud1":"0", "ud2":"0", "ud3":"0", "ud4":"0", "ud5":"0", "ud6":"0", "ud7":"0", "ud8":"0", "ud9":"0", "ud10":"1", "ud11":"0", "ud12":"0", "ud13":"0", "ud14":"0", "ude15":"0", "ude16":"0", "in1":"0", "in2":"0", "in3":"0", "in4":"0", "i5":"0", "i6":"0", "i7":"0", "in8":"0", "i9":"0", "i10":"0", "i11":"0", "i12":"0", "i13":"0", "i14":"0", "i15":"0", "in16":"0", "ain1":"3894", "ain2":"51", "ain3":"616", "ain4":"36", "ai5":"0", "ain6":"44", "ain7":"44", "ain8":"45", "sens1":"0", "sens2":"0", "sens3":"0", "sens4":"0", "sens5":"0", "sens6":"0", "sens7":"0", "sens8":"0", "dæmp1":"255", "dæmpning2":"255", "dæmpning3":"255", "dæmp4":"255", "dæmp5":"255", "dæmp6":"255", "dimm7":"255", "dimm8":"255", "int1":"-16776767", "int2":"450", "int3":"", "int4":"", "int5":"", "int6":"0", "tekst1":"", "tekst2":"", "tekst3":"", "tekst4":"", "tekst5":"", "tekst6":"" }]

12.3.2. Få historiske data til enheden

Forespørgselshistoriske data for en enkelt enhed af IMEI nr:

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


Da hele tabellen muligvis indeholder millioner af rækker, bør den begrænses med WHERE-klausulen for ikke at lægge på server.

Yderligere parametre url-parametre:

func - imeijson

imei - Enhedens IMEI

Mark - felter, der skal vises i resultaterne (komasepareret liste)

min - minimumsværdi for det første felt fra listen

maks - maksimumværdi for det første felt fra listen

sellert - felt til sortering

tm - felt tilføjes automatisk til resultaterne.

where - hvor klausul om begrænsede data


Eksempel:

Vi ønsker at få følgende resultat

til enhed med imei=356345080018095

Vis felter: ain5, ain6, gps_lat, gps_long

og begræns ai5 inden for rækkevidde ( 1, 10000 ) - skal være det første felt i listen

og GPS har gyldige data (gps_fix = 3)

og dato / tid (tm) from2019-02-14 23:00:19 to 2019-02-15 00:00:00


Konstrueret URL-streng:

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


Forespørgselsresultater:

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

12.3.3. Få en liste over enheder - enkelt felt fra aktuelle status med begrænsning

Denne funktion returnerer begrænsede data fra "_ithings" -tabellen


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



Parametre:

func - fieldjson

Mark - felt, der skal vises i resultaterne - imei og tm tilføjes automatisk

min - minimumsværdi for feltet

maks - maksimal værdi for feltet


For ovenstående forespørgselsstreng vender den tilbage resultater af ain5, imei, tm felter:

hvis ai5 er inden for rækkevidde (13,5000)


Forespørgselsresultater:

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

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

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