@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
@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.
@City IoT platform er dedikeret til at følge iSys.PL-produkter
IoT - RF / LoRaWAN (tingenes internet)
CIoT - GSM / 2G / 3G / 4G / CATM1 / NBIoT (Cell Internet of Things)
Trådløst internet
Ethernet
@City (eCity) Cloud IoT Platform er forskellige størrelsessystemer til IP IoT-produkter (kaldes sammen som @City-hardware eller CioT-enheder ):
@City
@Lys
@Metering
@Spor
@AirQ
@Beholder
@City IoT platform understøtter følgende protokoller til kommunikation:
UDP - foreslået til CIoT-sensorer / enheder (især NBIoT) - laveste dataanvendelse
TCPIP - foreslået til enheder med tovejskommunikation - håndtryk / bekræftelse
HTTP - anbefales kun til dataadgang / visualisering / eksport / "sky til sky"
HTTP Webhooks - til LoRaWAN-kommunikation mellem LoRaWAN Network / Application Server og @City Cloud.
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. ).
@City IoT platform understøtter:
GSM: 2G, 3G, 4G (LTE), CATM1 (LTEM1), NBIoT - enheder (UDP / TCPIP-kommunikation)
LoRaWAN-enheder (HTTP Webhooks) - via LoRaWAN gateway og LoRaWAN netværk / applikationsservere
Ethernet-controllere (UDP / TCP-kommunikation)
WiFi-controllere (UDP / TCP-kommunikation)
Fremtidige IP-produkter
Ikke IP-produkter via yderligere lokale @ City / eHouse.PRO Hardware Gateway
@City IoT Platform er dedikeret til enheder / noder:
Native iSys-produkter:
CIoT (GSM / 2G / 3G / 4G / CATM1 / NBIoT)
IoT (LoRaWAN)
WiFi - dedikerede produkter til @City Platform
Ethernet - dedikerede produkter til @City Platform
Co-Production-produkter (fremstillet af tredjeparter under iSys-licens og eksternt mærke)
Franchiseprodukter (fremstillet af tredjeparter under iSys-licens med iSys-logoer)
@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):
privat / offentlig adgang
samlede enheder tæller
opdatering af enhedens statusfrekvens
data opdateringshastighed
Der findes flere varianter af VPS afhængigt af:
Pris
datacenter geo-lokalisering
Virtuelle processorkerner (1-8)
Virtuelt RAM (1-32 GB)
SSD-disk (20 GB-1 TB)
Snesevis af dedikeret server findes afhængigt af:
Pris
datacenter geo-lokalisering
Processorkerner (4 .. 32)
RAM (16 .. 512GB)
SSD / HDD (256 GB .. 8TB)
Platformen @City is er dedikeret til en enkelt kunde:
lokale myndigheder og myndigheder (by, samfund, land)
B2B (for tredjeparts ejer)
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.
Kommunikation af @City Server realiseres baseret på lavt niveau applikation til ydeevne maksimering.
Hovedfunktionerne i @City Server-applikationen er:
modtage asynkront data fra enheder (via protokoller: UDP, TCP IP, HTTP)
minimere dataanvendelse og dets omkostninger mellem enheder og Cloud (ved hjælp af UDP, TCP IP med lave kommunikationsprotokoller)
modtage krypteret status på enheder (via ethvert kommunikationsmedie)
godkendelse og validering af data fra enheder ved at dekryptere deres status
afkodning af enhedsstatus og opdatering af den direkte til MariaDB / MySQL-tabeller (i rådataformat)
aktuelle datatabel (indeholder kun nyeste status for hver enhed)
historisk datatabel (indeholder alle statuser for en enkelt enhed)
sende ventende kommandoer (begivenheder) til enheder
at sikre håndtryk, verifikation og bekræftelser
@City Server-software er den samme for hver bruger og kan ikke tilpasses til forskellige kunder.
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.
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.
Kundeadgangsrettigheder (til fysisk server) er begrænsede.
Filadgang kun til "skabeloner" -mappen (native tekstfiler - .txt, .js, .css, .html):
tilføje, fjerne, ændre rene HTML-filer (Front-End GUI / Interface Development)
tilføjelse, fjernelse, ændring af rene JavaScript filer (Front-End GUI / interfaceudvikling og algoritmer)
tilføjelse, fjernelse, ændring af rene CSS-filer (front-end - brugerdefinerede visninger / temaer)
tilføjelse, fjernelse, ændring af tekstfiler i skabeloner (Front-End GUI)
tilføje, fjerne, ændre faner, genveje, links til dateresultater
Andre adgangsrettigheder:
Fuld adgang til @City Cloud Database MySQL / MariaDB, hvor alle enhedsdata er gemt
Adgang til webservices er defineret (legitimationsoplysninger) for kunden.
Kunden har ikke tilladelse til at videregive legitimationsoplysninger til tredjeparter (multipel adgang til resultater kan påvirke ydeevne, stabilitet og sikkerhed i det samlede system)
Under særlige omstændigheder og brug af højtydende dedikeret server kan der oprettes en offentlig konto til at observere de fleste aktuelle data (ikke historiske).
Brugeren må duplikere data til sin egen MySQL-server og udføre egne dataanalyser og -behandling, for ikke at påvirke ydeevnen for @City Server
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.
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".
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
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.
Der er flere muligheder for forretning og samarbejde:
import / eksport-klare produkter (omstillingsborde, enheder) - slutprodukter
import / eksport af OEM-produkter (printkort, controllere osv.) - mellemprodukter, reservedele
franchise - produktion baseret på vores licens til lokale markeder (vi leverer kun programmerede mikrokontrollere) under iSys - Intelligent Systems Brands
Samproduktion - (som ovenfor) men under eksterne mærker
@City-platform understøtter tilpasset frontend-skabelon til datavisualisering, forespørgsel, begrænsning og behandling (aktuelle / historikdata):
visualisere valgte data på kortet (geo-lokalisering)
viser valgte data og resultater i tabellerne
viser valgte data i søjlediagrammer
viser valgte data i historiske diagrammer
eksportere data til tredjepartsapplikationer og videre behandling
anden funktionalitet opdateres efter individuelle anmodninger.
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.
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
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)
Modify Visualization Theme CSS-fil skal eksistere i "skabeloner / css /" katalog - automatisk opført.
Vælg de vigtigste felter, der er synlige på bordet. Det er opdateret automatisk.
Fravælg alle felter (skal følges ved at vælge nogle af dem manuelt)
Vælg alle felter (skal følges ved at fravælge nogle af dem manuelt)
Dette svarer til alle (X) afkrydsningsfelter
Individuelt oprettede faner med navne og forudindstillinger (gemt i cfg / tabs.cfg fil).
Filen indeholder faktisk navn og URL (adskilt af faneblad).
Viser alle felter, der er begrænset af feltfilter.
Felter i tabellen:
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).
Tilføjelse / fjernelse af en fane med navnet indstillet Tab Mark. Det bruger kun felter valgt i samme række i tabellen.
Hvis du trykker på et hvilket som helst andet feltnavn, startes datavisualisering af det valgte felt for den valgte række.
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).
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.
Indtast navn "Sporing af aktiver" i Tab felt (uden anførselstegn)
Sørg for, at alle kolonner ikke er markeret i rækken
Vælg tm, gps_hastighed_km kun i træk
trykke + knappen hvor i rækken
Kort kan startes fra MainForm med forudkonfiguration
Kortinitialisering udføres manuelt, når den udføres direkte med link: > http: //%IP%/IoT/maps.php
Brugeren skal fravælge alle felter (tryk på Fravælg markeringen Knap)
Tryk på et afkrydsningsfelt for viste felter (f.eks. Ain5 (for Smog-niveau) og tm (for måledato / -tid)
trykke "V" afkrydsningsfelt for at skjule felter
trykke Udfør knap til at køre DB-forespørgsel og vise aktuel information fra alle sensorer / enheder
Kort med data opdateres efter 30 sekunder eller mere.
Indstillinger beskrevet fra venstre mod højre (på ovenstående skærmbillede).
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.
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).
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.
Indstil kortets midterposition. Dette felt er indstillet til markørposition, når der trykkes på museknappen på kortet.
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.
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.
gps_speed_km> 10 // hastighed er mere end 10 km / t
ain5> 3 // ain5 er større end 3 (holder 2,5um partikler tæller - smog niveau)
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)
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.
Efter at have trykket på denne knap skal mindst et felt vælges manuelt for at vise resultaterne på kortet.
Dette afkrydsningsfelt bruges til at vise / skjule markøren af de felter, der skal vises.
Dette afkrydsningsfelt muliggør skjul hele form undtagen ( +/- knapper)
Resultaterne på kortet opdateres løbende og opdateres med nye værdier
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
Vis resultater i tabellen.
På "Hovedformular" trykke "bord" efter valg af nogle felter til visning af forudkonfigureret tabel
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.
Tryk på alle krævede afkrydsningsfelter for viste felter
Tryk på afkrydsningsfeltet "Synlige felter" for at skjule feltform
Tryk på Udfør-knappen for at køre DB-forespørgsel og vise tabel
Indstillinger er beskrevet fra venstre mod højre (på skærmbilledet).
Sorteringsfelt svarer til at trykke på kolonneoverskrift.
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.
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.
gps_speed_km> 10 // hastighed er mere end 10 km / t
ain5> 3 // ain5 er større end 3 (holder 2,5um partikler tæller - smog niveau)
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)
Efter at have trykket på denne knap skal mindst et felt vælges manuelt for at vise resultaterne på kortet.
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.
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.
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.
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.
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.
Tryk på alle krævede afkrydsningsfelter for viste felter
Tryk på afkrydsningsfeltet "Synlige felter" for at skjule feltform
Tryk på knappen Udfør for at køre DB-forespørgsel og vise tabellen
Elementer beskrevet ovenfra og fra venstre mod højre (på skærmbilledet).
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.
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.
gps_speed_km> 10 // hastighed er mere end 10 km / t
ain5> 3 // ain5 er større end 3 (holder 2,5um partikler tæller - smog niveau)
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)
Efter at have trykket på denne knap skal mindst et felt vælges manuelt for at få vist historiske resultater.
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.
Dette afkrydsningsfelt bruges til at vise / skjule markøren af de felter, der skal vises.
Musemarkørens værdier for målinger og dato / tid.
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.
Websider er baseret på en generel skabelonfil, der findes på "skabeloner" bibliotek "* .template".
Derudover indeholder hver sidetype:
"* .head" -fil, der gemmer sidehovedet (links, importeret CSS, JavaScript filer osv. )
"* .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.
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.
@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):
"* _t" - tokens til godkendelse af nuværende brugere (ikke brugt til skyer med en enkelt kunde)
"* _c" - kommandoer (begivenheder) kø - skal sendes til enheden
"*" - alle dekodede statusresultater.
Andre tabeller:
"ithings_" tabel - indeholder afkodet nuværende status for alle enheder (den kopieres under opdatering af en af "*" tabeller). Opbygning af ithings_ bordet er næsten det samme som "*" tabeller. "ithings_" har yderligere felter til postadresse og beskrivelser.
"brugere" -tabellen er begrænset og skal ændres.
"idx" - indeks
"tm" - automatisk tidsstempel
"dt" - unix tidsstempel
"imei" - unik enhedsadresse
"rssi" - RSSI-signalniveau
"rsrp" - RSRP signal
"begivenheder" - ventende begivenheder, der skal sendes til controlleren
"ud1" .. "ude16" - dekodet output status
"in1" .. "in16" - dekodet indgangsstatus
"ain1" .. "ain8" - dekodede ADC-værdier (RAW)
"sens1" .. "sens8" - konverterede sensorværdier (afhænger af enhedstype)
"dæmp1" .. "dimm8" - dekodede lysdæmperværdier (afhænger af enhedstype)
"int1" .. "int6" - dekodede tællerværdier (afhænger af enhedstype)
"tekst1" .. "tekst6" - dekodede tekstværdier (afhænger af enhedstype)
"skabelse" - dato / klokkeslæt for oprettelse af enhed
"sidst" - sidste dato / tid
"bruger" - fremtidig brug
"pass" - fremtidig brug
"sn" - gsm serienr
"status" - nuværende controller-status ikke afkodet i hex-format
"hash_code" - fremtidig brug
"addr" - kort enhedsadresse
"fwnr" - firmware nr
"deaktiveret" - deaktiveret enhed (ikke udført)
"gsm_nr" - CIoT gsm-nummer
"leverandør" - leverandørkode (til franchise / samproduktion)
"tidszone" - forskudt tidszone
"dst" - Brug daglige besparelsesindstillinger
"gps_lat" - GPS Latitude
"gps_long" - GPS længdegrad
"gps_hdop" - GPS HDOP
"gps_alt" - GPS højde
"gps_fix" - GPS-fixering (skal være 3 - for gyldige resultater)
"gps_cog" - GPS tandhjul
"gps_hastighed_km" - GPS-hastighed i [km / t]
"gps_sat" - GPS-satellitter fundet
"kontinent", "land", "region", "underregion", "underregion", "by", "distrikt", "gade", "gade_nr", "artikel_nr" - Kundeadresse og beskrivelsesfelter (!!!! Ikke tilgængelig for "*" historiske tabeller)
"log" - logdata
Felternes navne er vigtige for oprettelse af SQL-forespørgsler for at øge søgefunktionaliteten, fordi det originale navn skal bruges i SQL Statement.
Denne tabel er kø for begivenheder / kommandoer for hver enhed og har følgende struktur:
"kommando" - kommando, der skal sendes eller allerede sendes til controlleren
"bekræftet" - bekræftelsesflag, hvis det allerede var sendt og bekræftet
"dato" - unix tidsstempel for begivenheden
"opdateret" - automatisk opdateringsflag (tidsstempel dato / klokkeslæt)
Data kan være tilgængelige uden Front-end webapplikation. @City-systemet indeholder script med funktioner på mellemniveau. Resultaterne returneres i JSON-format.
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":"" }]
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" }]
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" }]