@City IoT Cloud Platform
iSys - Inteligentni sustavi lutions Rješenja
IoE.Sustavi
Sadržaj
1. Uvod. 5
1.1 Podržane vrste uređaja. 5
1.2. Podržane vrste proizvoda. 5
1.3. Podržani komunikacijski protokoli 5
1.4. Podržana komunikacijska tehnologija uređaja 6
1.5. @City Cloud Server 6
1.5.1. Poslužiteljski i komunikacijski pristupnici 7
1.5.2 HTTP LoRaWAN integracija 7
1.5.3. Sučelje sučelja 8
1.5.3. Prava pristupa poslužitelju 8
1.6. Pametni uređaji 9
1.6.1. CIoT - GSM uređaji 9
1.6.3. BAS, BMS, IoT - Ethernet i WiFi uređaji 9
1.6.2. IoT -LoRaWAN uređaji 9
1.7. Opcije za poduzetništvo (B2B) 9
2. @City IoT Funkcionalnost platforme 10
3. Glavna stranica 11
4. Glavni obrazac 11
4.1. Zaglavlje 12
4.1.1. Domaća poveznica - (otvara tablicu stvarnih rezultata) 12
4.1.2. Potvrdni okvir "X" - otvara / zatvara obrazac za upit 12
4.1.3. Potvrdni okvir "V" - otvara / zatvara polja Obrazac 12
4.1.4. Grafičke ikone - poveznice do rezultata vizualizacije (moguće uređivanje) 12
4.2. Obrazac: 12
4.2.1. Potvrdni okvir "X" - otvara / zatvara cijeli obrazac za upit 12
4.2.2. CSS - Odaberite temu vizualizacije 12
4.2.3. Potvrdni okvir Vidljiva polja - prikazuje / skriva popis filtara polja 12
4.2.4. Kartica: Naziv kartice za dodavanje ili uklanjanje 12
4.2.5. Gumbi za dodavanje / uklanjanje - dodajte ili uklonite kartice s imenom u polju kartice 12
4.2.6. Odaberite Core Button 12
4.2.7. Poništi odabir gumba Sve 12
4.2.7. Odaberite gumb 12
4.2.8. Sakrij filtar - sakrij cijeli obrazac 12
4.2.9. Gumb Izvrši - Promjena postavki parametara 13
4.2.10. Potvrdni okvir "V" - prikaži / polja visokog filtra. 13
4.3. Kartice 13
4.4. Sadržaj tablice 13
4.4.1. Pokreni - pregledava tip rezultata 13
4.4.2. Kopija (+/- poveznice) 13
4.4.3. Linkovi tabličnih stanica 13
4.5. Redoslijed podataka 13
4.6. Primjer 13
5. Karte 15
5.1. Inicijalizacija karte 15
5.2. Izborne postavke za upit 15
5.2.1. Izmijenite MAP ljestvicu (razina zumiranja) 16
5.2.2. IMEI (Odaberite polje uređaja) 16
5.2.3. Lon, Lat (Zemljopisna dužina, koordinatna polja) 16
5.2.4. Izmijeni MAP stil (tema) 16
5.2.5. GDJE Klauzula 16
5.2.6. Izvrši (gumb za pokretanje upita) 16
5.2.7. Poništi odabir svega (Ukloni sva polja iz upita) 17
5.2.8. Potvrdni okvir "V" (obrazac za otvaranje / zatvaranje polja) 17
5.2.9. Potvrdni okvir "X" (Prikaži / sakrij obrazac upita) 17
5.3. Primjer 17
6. Prikaži rezultate u tablici 18
6.1. Inicijalizacija tablice 18
6.2. Izborne postavke za upit 19
6.2.1. Poredaj - sortiraj polje i redoslijed uzlazno / silazno 19
6.2.2. DB / IMEI - Odaberite uređaj 19
6.2.3. CSS - odabir stila (tema vizualizacije) 20
6.2.4. Vidljiva polja - Pokaži / sakrij polja, obrazac 20
6.2.5. Ukloni prazno - Ne prikazuj prazne stupce 20
6.2.6. Potvrdni okvir "X" (Prikaži / sakrij obrazac upita) 20
6.2.7. Klauzula (za ograničenje podataka) 20
6.2.8. Odaberite Core Button (Omogući najčešća polja) 20
6.2.9. Poništi odabir gumba All (Ukloni sva polja iz upita) 20
6.2.10. Izvrši (gumb za pokretanje upita) 20
6.2.11. Potvrdni okvir "V" (obrazac za otvaranje / zatvaranje polja) 20
7. Grafikoni. 21
8. Povijesne karte. 22
8.1. Inicijalizacija povijesnih karata 22
8.2. Neobvezna podešavanja povijesnih karata 23
8.2.1. IMEI - (Odaberite uređaj za prikaz povijesnih podataka) 23
8.2.2. Min - granična minimalna vrijednost prvog polja 23
8.2.3. Max - ograniči maksimalnu vrijednost prvog polja 23
8.2.4. "V" - Prikaži / sakrij polja obrazac 23
8.2.5. Od: postavi minimalni datum / vrijeme (*) 23
8.2.6. Za: postavljanje maksimalnog datuma / vremena datuma (*) 23
8.2.7. Potvrdni okvir "X" (Prikaži / sakrij obrazac upita) 23
8.2.8. "Gdje" Klauzula 23
8.2.9. Poništi odabir gumba Sve (Ukloni sva polja iz upita) 23
8.2.10. Izvrši (gumb za pokretanje upita) 23
8.2.11. Potvrdni okvir "V" (obrazac za otvaranje / zatvaranje polja) 24
8.3. Varijanta trake: (prikazuje samo dostupne podatke) 24
8.4. Kontinuirana varijanta (s istim podacima): 24
9. Kompatibilnost web preglednika 25
10. Prilagođavanje tema 26
11. Ažuriranje algoritama 27
12. Struktura baze podataka 28
12.1. Struktura tablica "ithings_" i "*" 29
12.2. Tablica reda naredbi uređaja (Događaji) "* _c" - struktura 30
12.3. Pristup rezultatima iz baza podataka - srednja razina (čitanje podataka) 30
12.3.1. Dohvatite trenutne statuse svih uređaja 30
12.3.2. Dohvatite povijesne podatke za uređaj 31
12.3.3. Dohvatite popis uređaja - jedno polje iz trenutnih statusa s ograničenjem 32
@City dedicated Cloud Platform je posvećen "mikro oblak" sustav za pojedinačne kupce. Platforma se ne može dijeliti i samo jedan kupac ima pristup fizičkom ili virtualnom poslužitelju (VPS ili namjenski poslužitelji). Kupac može odabrati jedan od desetaka podatkovnih centara u Europi ili u svijetu.
Platforma @City is posvećena je praćenju proizvoda iSys.PL
IoT - RF / LoRaWAN (Internet stvari)
CIoT - GSM / 2G / 3G / 4G / CATM1 / NBIoT (Mobitel Internet stvari)
WiFi
Ethernet
@City (eCity) Cloud IoT Platforma je sustav različitih veličina za IP IoT proizvode (koji se zajedno nazivaju @City Hardware ili CioT uređaji ):
@Grad
@Svjetlo
@Mjerenje
@Trag
@AirQ
@Bin
Platforma @City supports podržava sljedeće protokole za komunikaciju:
UDP - predloženo za CIoT senzore / uređaje (posebno NBIoT) - najniža iskorištenost podataka
TCPIP - predlaže se za uređaje s dvosmjernom komunikacijom - rukovanje / potvrda
HTTP - predložen samo za pristup podacima / vizualizacija / izvoz / "oblak do oblaka"
HTTP Webhooks - za LoRaWAN komunikaciju između LoRaWAN mreže / poslužitelja aplikacija i @City Cloud.
Podaci poslani s kontrolera na cloud server i obrnuto šifrirani su u jedinstvenom binarnom formatu za najmanju veličinu podataka i povećanu sigurnost. Svaki partner dobiva svoj jedinstveni ključ za šifriranje za autorizaciju uređaja, provjeru valjanosti podataka itd.
Za uređaje koji nisu eHouse / eCity možemo isporučiti pojedinačne algoritme za šifriranje ( "C" izvorni kod) za svakog partnera za mikroprocesor za zaštitu podataka prije komunikacije.
U ovom su slučaju podaci potpuno sigurni tijekom dvosmjerne komunikacije putem javnih komunikacijskih medija (Internet, Air, itd.) ).
@City IoT platforma podržava:
GSM: 2G, 3G, 4G (LTE), CATM1 (LTEM1), NBIoT - uređaji (UDP / TCPIP komunikacija)
LoRaWAN uređaji (HTTP Webhooks) - putem LoRaWAN pristupnika i LoRaWAN mrežne / aplikacijske poslužitelje
Ethernet kontroleri (UDP / TCP komunikacija)
WiFi kontroleri (UDP / TCP komunikacija)
Budući IP proizvodi
Proizvodi koji nisu IP putem dodatnih lokalnih @ City / eHouse.PRO Hardverski pristupnik
@City IoT Platforma je namijenjena uređajima / čvorovima:
Izvorni iSys proizvodi:
CIoT (GSM / 2G / 3G / 4G / CATM1 / NBIoT)
IoT (LoRaWAN)
WiFi - namjenski proizvodi za platformu @City
Ethernet - namjenski proizvodi za platformu @City
Proizvodi za koprodukciju (proizvedeni od trećih strana pod licencom iSys i vanjskom robnom markom)
Franšizni proizvodi (proizvedeni od trećih strana pod iSys licencom s iSys logotipom)
Softver @City radi na VPS baziranom na Linuxu (virtualni privatni poslužitelj) ili namjenskom poslužitelju na internetskoj strani, ovisno o traženim performansama Poslužitelj (kasnije nazvan Poslužitelj):
privatni / javni pristup
ukupni uređaji se računaju
ažuriranje učestalosti statusa uređaja
brzina osvježavanja podataka
Postoji nekoliko varijanti VPS-a, ovisno o:
Cijena
geolokalizacija podatkovnog centra
Virtualne procesorske jezgre (1-8)
Virtualni RAM (1-32 GB)
SSD disk (20GB-1TB)
Deseci namjenskog poslužitelja postoje ovisno o:
Cijena
geolokalizacija podatkovnog centra
Jezgre procesora (4 .. 32)
RAM (16 .. 512 GB)
SSD / HDD (256 GB .. 8 TB)
Platforma @City is posvećena je jednom kupcu:
lokalne samouprave i vlasti (grad, zajednica, država)
B2B (za vlasnika treće strane)
Budući da nije poslužitelj za zajedničko korištenje između kupaca, to pojednostavljuje sigurnosni pristup i probleme s izvedbom. Iz tog razloga samo je kupac odgovoran za učinkovitu sigurnost, stabilnost, učinkovitost, protok podataka itd. U slučaju nedovoljne izvedbe, kupac može kupiti veći plan (VPS ili namjenski poslužitelj), optimalniji od očekivane funkcionalnosti i performansi.
U posebnim slučajevima "Cloud to cloud" komunikacija se može primijeniti za globalizaciju i centralizaciju podataka na veća područja umjesto u oblak za više korisnika.
Komunikacija @City servera ostvarena je na temelju niskorazinske aplikacije za maksimalizaciju performansi.
Glavne značajke aplikacije @City Server su:
asinkrono prima podatke s uređaja (putem protokola: UDP, TCP IP, HTTP)
minimizirati upotrebu podataka i njegove troškove između uređaja i Cloud-a (upotrebom komunikacijskih protokola niske razine UDP, TCP IP)
primati šifrirani status uređaja (putem bilo kojeg komunikacijskog medija)
autorizacija i provjera valjanosti podataka s uređaja dešifriranjem njihovih statusa
dekodiranje stanja uređaja i njegovo ažuriranje izravno u MariaDB / MySQL tablice (u formatu neobrađenih podataka)
trenutna tablica podataka (sadrži samo najnoviji status svakog uređaja)
tablica povijesnih podataka (sadrži sve statuse za jedan uređaj)
poslati naredbe na čekanju (Događaji) na uređaje
osiguravanje rukovanja, provjere i potvrde
Softver @City Server jednak je za svakog korisnika i ne može se prilagoditi različitim kupcima.
LoRaWAN kontroleri integrirani su s oblakom @City putem HTTP sučelja (webhooks) dostupnog na mreži LoRaWAN / poslužitelju aplikacija.
Podržano je nekoliko vrsta mrežnog / aplikacijskog poslužitelja:
TTN (ograničeno vrijeme "U eteru" i maksimalan broj naredbi poslanih upravljačkom programu i ne podržavaju nadogradnju firmvera)
LoraWAN-Stack (zahtijeva hosting na fizičkom uređaju s pristupom internetu).
LoraServer.Io (Zahtijeva hosting na fizičkom uređaju s pristupom internetu - samo slanje podataka na poslužitelj i ne podržava nadogradnju firmvera)
Kontroleri @City Cloud za LoRaWAN podijeljeni su na isti način kao i za ostala sučelja. O tome se govori u prethodnom poglavlju.
Front-end sučelje realizirano je s PHP skriptama za izdvajanje prilagođenih podataka iz @City Cloud Database. Koristi vrlo elastičan mehanizam pretraživanja, zasnovan na izvornim SQL upitima, kako bi ograničio željene podatke. Sučelje daje rezultate upita u JSON formatu za daljnje dekodiranje i obradu putem application Front-end web „aplikacije“.
Izvorno sučelje sučelja je isto za svakog korisnika i ne može se prilagoditi različitim kupcima.
Sučelje za prekrivanje može stvoriti naše osoblje ili u suradnji kako bi se osiguralo prilagođavanje kupca.
Korisnička prava pristupa (na fizički poslužitelj) su ograničena.
Pristup datoteci samo za direktorij "predlošci" (izvorne tekstualne datoteke - .txt, .js, .css, .html):
dodavanje, uklanjanje, izmjena čistih HTML datoteka (Front-End GUI / Razvoj sučelja)
dodavanje, uklanjanje, izmjena čistih JavaScript datoteka (Front-End GUI / Razvoj sučelja i algoritmi)
dodavanje, uklanjanje, izmjena čistih CSS datoteka (Front-End - Prilagođeni pogledi / teme)
dodavanje, uklanjanje, izmjena tekstualnih datoteka predložaka (Front-End GUI)
dodavanje, uklanjanje, mijenjanje kartica, prečaca, veza do rezultata podataka
Ostala prava pristupa:
Puni pristup MySQL / MariaDB @City Cloud Database, gdje su pohranjeni svi podaci uređaja
Pristup web uslugama definiran je (vjerodajnice) za kupca.
Kupac ne smije prosljeđivati vjerodajnice trećim stranama (višestruki pristup rezultatima može utjecati na performanse, stabilnost i sigurnost cjelokupnog sustava)
Pod posebnim okolnostima i korištenjem namjenskog poslužitelja visokih performansi, javni račun može se postaviti za promatranje najnovijih podataka (koji nisu povijesni).
Korisnik može duplicirati podatke na vlastiti MySQL poslužitelj i izvršiti vlastitu analizu i obradu podataka kako ne bi utjecao na performanse @City poslužitelja
iSys - osoblje inteligentnih sustava - ima neograničen pristup cijelom poslužitelju, uključujući root račun i puni DB pristup za održavanje.
U određenim okolnostima iSys može dodijeliti dodatna ograničena prava kupcu (PHP skripte, datoteke) nakon provjere izvornog koda, pokretanja testova, ako to ne utječe na cjelokupnu sigurnost sustava, stabilnost i performanse.
Naši uređaji sadrže mikrokontroler i GSM / GPS / GNSS modul (2G..4G, NBIoT, CATM1) za komunikaciju. Mikrokontroler sadrži šifrirani bootloader za sigurnu nadogradnju OTA firmvera. To omogućuje stvaranje mnogih inačica sustava temeljenih na istima "CIoT Smart uređaj".
Ethernet i WiFi kontroleri omogućuju IP komunikaciju u sustav (bez naplate prijenosa podataka GSM operateru). Ovi uređaji imaju i šifrirani bootloader, a uređaji se mogu ažurirati putem izvornog sučelja. Za WiFi ima OTA nadogradnju firmvera s glavnog poslužitelja
LoRaWAN omogućuje prijenos podataka na vrlo velike udaljenosti (do cca. 15km). Ovaj raspon ovisi o brzini prijenosa podataka, količini podataka, urbanizaciji područja i učinkovitosti radio staza uređaja.
Naši uređaji uključuju mikrokontroler i LoRaWAN modul za komunikaciju. Mikrokontroler sadrži šifrirani pokretački program za sigurno ažuriranje OTA softvera. To vam omogućuje stvaranje više varijanti sustava temeljenih na istoj "IoT smart device". Uređaji rade u otvorenom opsegu ISM-a bez dodatnih pretplata. LoRaWAN Gateways potrebno je koristiti za pokrivanje cijelog područja pristupom Internetu. U slučaju postojećih LoRaWAN ulaza unutar dometa uređaja (konfiguriranih za TTN poslužitelj), moguće je putem njih poslati podatke. Nadogradnja firmvera zahtijeva vlastitu mrežu / aplikaciju LoRaWAN poslužitelj i dobar domet za komunikaciju.
Postoji nekoliko mogućnosti za poslovanje i suradnju:
uvoz / izvoz gotovih proizvoda (razvodne ploče, uređaji) - gotovi proizvodi
uvoz / izvoz OEM proizvoda (PCB-ovi, kontroleri, itd.) - međuproizvodi, rezervni dijelovi
franšiza - proizvodnja temeljena na našoj licenci za lokalna tržišta (isporučujemo samo programirane mikrokontrolere) pod iSys - Brandovi inteligentnih sustava
Koprodukcija - (kao gore), ali pod vanjskim robnim markama
@City platforma podržava prilagodljivi prednji predložak za vizualizaciju podataka, upite, ograničavanje i obradu (trenutni / povijesni podaci):
vizualizirati odabrane podatke na karti (geo-lokalizacija)
prikazuje odabrane podatke i rezultate u tablicama
prikazuje odabrane podatke na trakasti grafikonima
prikazuje odabrane podatke na povijesnim kartama
izvoz podataka u programe trećih strana i daljnja obrada
ostale će se funkcije ažurirati na pojedinačne zahtjeve.
Korisnički front-end dostupan je putem statičke IP ili DNS preusmjeravajuće domene / poddomene / datoteke ako je dostupna.
Uzorna i demo instalacija (Omogućena je samo potencijalnim kupcima).
Obavijestite nas kada to želite testirati - kako biste omogućili javni pristup platformi.
Mogao bi zahtijevati statički IP udaljenog računala kako bi se omogućila komunikacija na platformu @City.
Glavna stranica namjerno ostaje prazna iz sigurnosnih razloga: http: //% YourIP% / IoT /
Može se pojedinačno omogućiti i uređivati te sadržavati veze na sve dostupne usluge tvrtke @City IoT platforma ako je potrebno
Glavni obrazac namijenjen je stvaranju novih unaprijed postavljenih postavki i kartica: http: //%IP%/IoT/que.php
Ovo je početni obrazac za stvaranje rezultata, pogleda i kartica za svaku konfiguraciju
Opisi (od gore i slijeva udesno)
Izmijeni CSS datoteku teme teme vizualizacije mora postojati u "predlošci / css /" direktorij - automatski se navodi.
Odaberite glavna polja vidljiva na tablici. To se ažurira automatski.
Poništite odabir svih polja (mora se slijediti ručnim odabirom nekih od njih)
Odaberite sva polja (mora se slijediti i ručno poništiti odabir nekih od njih)
Ovo je ekvivalentno svim potvrdnim okvirima (X)
Pojedinačno stvorene kartice s imenima i unaprijed postavljenim postavkama (pohranjene u sustavu Windows cfg / tabs.cfg datoteka).
Datoteka zapravo sadrži ime i URL (odvojene znakom tabulatora).
Prikazuje sva polja ograničena filtrom polja.
Polja u tablici:
karta- mapiranje rezultata na karti (može se odabrati jedno ili više polja)
povijesti - povijesne karte (može se odabrati jedno ili više polja)
tab - prikazuje tablicu (može se odabrati bilo koja kombinacija polja)
bar - na trakasti grafikonu prikazano je samo jedno polje
Pritiskom na jednu od njegovih vrijednosti otvorit će se novi rezultati s odabranim poljima (za trenutni redak).
Dodavanje / uklanjanje kartice s imenom postavljenim u Tab polje. Koristi samo polja odabrana u istom retku tablice.
Pritiskom na bilo koje drugo ime polja pokrenut će se Vizualizacija podataka odabranog polja za odabrani redak.
Redoslijed prikazanih polja je kao redoslijed u obliku polja (međutim tm polje se uvijek šalje na kraj teksta). Ovaj se redoslijed može promijeniti samo izravnim uređivanjem parametara URL-a (dio narudžbe polja).
Na primjer: Postavljanje kartice s Praćenje imovine ime i sadrži kartu s vremenom i brzinom na karti
Sav opis koji se odnosi na redak gdje "Map" tekst je u "Trčanje" stupac.
Unesite ime "Praćenje imovine" u Tab polje (bez navodnika)
Provjerite nisu li odabrani svi stupci u retku
Odaberi tm, gps_speed_km samo u redu
pritisnite + gumb gdje je u redu
Karte se mogu pokrenuti iz MainForma s predkonfiguracijom
Inicijalizacija karte vrši se ručno kada se izvodi izravno s vezom: > http: //%IP%/IoT/maps.php
Korisnik bi trebao poništiti odabir svih polja (Pritisnite Poništi odabir Dugme)
Pritisnite neki potvrdni okvir za prikazana polja (npr. Ain5 (za razinu smoga) i tm (za datum / vrijeme mjerenja)
pritisnite "V" potvrdni okvir za sakrivanje obrazaca polja
pritisnite Izvršiti gumb za pokretanje DB upita i prikaz trenutnih podataka sa svih senzora / uređaja
Karta s podacima ažurira se nakon 30 sekundi ili više.
Postavke opisane slijeva udesno (na gornjoj snimci zaslona).
Razina zumiranja može se izmijeniti pomoću tipki (+/-) za mjerilo (trenutna_skala * 2 odnosno trenutna_skala / 2). Pritiskom na jedan od ovih gumba automatski će se izmijeniti skala.
Drugi način je odabir Razine zumiranja Zum Polje kombiniranog okvira i pritisnite Izvršiti dugme. U ovom se slučaju cijeli View / Map ponovno učitava i osvježava (traje neko vrijeme tijekom inicijalizacije).
IMEIpolje sadrži jedinstveni ID uređaja ili jedinstveni zamjenski naziv uređaja. Zadana postavka je * (zvjezdica) koja prikazuje najnovije vrijednosti i geolokaciju za svaki uređaj.
Ako IMEI postavite na bilo koju drugu vrijednost, prikazat će se povijesni podaci odabranog uređaja. Ima smisla samo za pokretne i pokretne senzore, inače će se rezultati preklapati na karti na istom položaju.
Postavite središnji položaj karte. Ovo je polje postavljeno na položaj kursora kad se na karti pritisne tipka miša.
Može se odabrati stil / tema karte Map Polje ComboBox (npr. Tamna, Siva, Topografska).
Različite teme karata mogu imati različite maksimalne razine zumiranja, pa bi moglo nametnuti odgovarajuću temu za povećanje razmjera karte.
Gdje se klauzula koristi za dodatni niz upita {WHERE part} za MySQL / MariaDB.
Ova se klauzula uzima u obzir za konstrukciju kompletnog niza QUERY za rezultat baze podataka. Može ograničiti podatke, vrijeme i bilo koje druge vrijednosti ograničavanjem broja rezultata. U ovom se polju moraju koristiti izvorna imena polja tablice (ne alias). Npr.
gps_speed_km> 10 // brzina je veća od 10km / h
ain5> 3 // ain5 je veći od 3 (zadržavanje broja čestica od 2.5um - razina smoga)
gps_speed_km> 10 i ain6> 5 // brzina je veća od 10 km / h i ain6 je veća od 5 (zadržavanje broja 10 čestica - razina smoga)
Pritiskom na ovaj gumb potrebno je promijeniti bilo koje postavke, parametre (osim pritiska na +/- gumbi).
Karta se učitava od početka s novim unaprijed postavljenim postavkama.
Karta se uopće ne učitava kada za trenutni upit nisu dostupni podaci.
Nakon pritiska ove tipke mora se ručno odabrati najmanje jedno polje za prikaz rezultata na karti.
Ovaj potvrdni okvir koristi se za prikaz / sakrivanje selektora polja za prikaz.
Ovaj potvrdni okvir omogućuje sakrivanje cijelog obrasca, osim ( +/- gumbi)
Rezultati na karti kontinuirano se osvježavaju i ažuriraju novim vrijednostima
Npr. Rezultati smoga (senzor instaliran na automobilu): čestice razine smoga 2.5um (Ain5), brzina (gps_speed_km), datum / vrijeme (tm), karta (2 - topografska), razina zumiranja 16,
Klauzula where:
"gps_fix = 3 i tm> "2019-02-18 00:00:00" i tm <"2019-02-19 00:00:00" i gps_speed_km> 0".
// GPS = važeći 3D rezultati & datum = 2019-02-18 & brzina> 0 km / h
Prikaži rezultate u tablici.
Na "Glavni obrazac" pritisnite "stol" stavku, nakon odabira nekih polja za prikaz unaprijed konfigurirane tablice
Kada je tablica otvorena s veze http: //%IP%/IoT/que.php? func = tabs potrebna je prethodna inicijalizacija postavki.
Možete odabrati vidljiva polja (pritiskom na "Vidljiva polja" ) potvrdni okvir.
Pritisnite sve potrebne potvrdne okvire za prikazana polja
Pritisnite potvrdni okvir "Vidljiva polja" sakriti obrazac polja
Pritisnite gumb Izvrši za pokretanje DB upita i prikaza tablice
Postavke su opisane slijeva udesno (na snimci zaslona).
Polje sortiranja ekvivalentno je pritisku zaglavlja stupca.
IMEIpolje sadrži jedinstveni ID uređaja ili jedinstveni zamjenski naziv uređaja. S praznom vrijednošću prikazuje tablicu najnovijih vrijednosti.
Ako IMEI postavite na bilo koju drugu vrijednost, prikazat će se povijesni podaci odabranog uređaja.
Ovo je sufiks za dodatni niz upita MySQL / MariaDB {WHERE part}
Ova se klauzula uzima u obzir za izradu kompletnog niza QUERY za rezultat baze podataka. Može ograničiti podatke, vrijeme i bilo koje druge vrijednosti ograničavanjem broja rezultata. U ovom se polju moraju koristiti izvorna imena polja tablice (ne alias). Npr.
gps_speed_km> 10 // brzina je veća od 10km / h
ain5> 3 // ain5 je veći od 3 (zadržavanje broja čestica od 2.5um - razina smoga)
gps_speed_km> 10 i ain6> 5 // brzina je veća od 10 km / h i ain6 je veća od 5 (zadržavanje broja 10 čestica - razina smoga)
Nakon pritiska ove tipke mora se ručno odabrati najmanje jedno polje za prikaz rezultata na karti.
Pritiskom na ovaj gumb potrebno je promijeniti bilo koje postavke, parametre (osim pritiska na +/- gumbi).
Tablica se od početka učitava novim unaprijed postavljenim postavkama.
Ovaj potvrdni okvir koristi se za prikaz / sakrivanje selektora polja za prikaz.
Rezultati u tablici poredani su prema Vrsta postavka polja. Redoslijed sortiranja može se promijeniti pritiskom na zaglavlje retka (jednom za jedan smjer dva puta za drugi smjer).
Neki rezultati u stupcima vode na daljnje zaslone vizualizacije (tvrdo kodirani).
Prilikom prikazivanja povijesnih podataka za uređaj treba ga ograničiti kako se ne bi prikazivale cijele povijesne informacije, jer to može dovesti do problema s performansama ili nedostatka memorije.
Trakasti grafikoni trebaju se izvršiti iz glavnog obrasca pritiskom na jedno polje u retku "Traka".
Prikazuje sortirane trake normalizirane na maksimalnu vrijednost, prikazujući od najvišeg do najnižeg reda.
Korisno je za brzu provjeru ekstremnih rezultata i poduzimanje nekih radnji.
Događaj miša prikazat će dodatne informacije za uređaj.
Povijesne se karte mogu pokrenuti iz glavnog obrasca pritiskom na odabrani stupac u retku "Povijest" (za jedno polje).
Za više polja u retku "Povijest" potrebno je označiti željena polja i pritisnuti vezu "Povijest" u stupcu "Pokreni".
Povijesni rezultati ograničeni su na zadnja 24 sata + sljedeća 24 sata (za eventualne osvježavajuće karte), kada nisu postavljena ograničenja.
Povijesne grafikone kada se otvaraju s glavne veze zahtijevaju inicijalizaciju kao i drugi rezultati, kada se otvaraju s veze bez parametara preferencija.
Za prikaz različitih stavki može se odabrati više polja. Može se postaviti i u Obrascu za filtriranje polja.
Pritisnite sve potrebne potvrdne okvire za prikazana polja
Pritisnite potvrdni okvir "Vidljiva polja" sakriti obrazac polja
Pritisnite gumb Izvrši za pokretanje DB upita i prikaz tablice
Stavke opisane od vrha i slijeva nadesno (na snimci zaslona).
IMEIpolje sadrži jedinstveni ID uređaja ili jedinstveni zamjenski naziv uređaja. Vrijednošću * (asterix) prikazuje tablicu najnovijih vrijednosti koja nema smisla.
Ako IMEI postavite na bilo koju drugu vrijednost, prikazat će se povijesni podaci odabranog uređaja.
Klauzula za ograničavanje rezultata podataka MySQL / MariaDB dodatni niz upita {WHERE dio}.
Ova se klauzula uzima u obzir za konstrukciju kompletnog niza QUERY za rezultat baze podataka. Može ograničiti podatke, vrijeme i bilo koje druge vrijednosti ograničavanjem broja rezultata. U ovom se polju moraju koristiti izvorna imena polja tablice (ne alias) i valjana SQL sintaksa. Npr.
gps_speed_km> 10 // brzina je veća od 10km / h
ain5> 3 // ain5 je veći od 3 (zadržavanje broja čestica od 2.5um - razina smoga)
gps_speed_km> 10 i ain6> 5 // brzina je veća od 10 km / h i ain6 je veća od 5 (zadržavanje broja 10 čestica - razina smoga)
Nakon pritiska ove tipke mora se ručno odabrati najmanje jedno polje za prikaz povijesnih rezultata.
Pritisak na ovaj gumb potreban je za promjenu bilo kojih postavki, parametara (osim prikazivanja polja ili ploče s upitima). Tablica se od početka učitava novim unaprijed postavljenim postavkama.
Ovaj potvrdni okvir koristi se za prikaz / sakrivanje selektora polja za prikaz.
Pokazivač miša prikazuje vrijednosti mjerenja i datum / vrijeme.
Funkcija / WWW preglednik | Chrome 72 | FireFox 65 | Rub | Opera 58 |
Karte | + | + | + | + |
Povijesni | + | + (*) | + | + |
Barovi | + | + | + | + |
Kartice | + | + | + | + |
* - Firefox ne podržava alat za odabir datuma / vremena (tekstno polje mora se ručno uređivati u odgovarajućem formatu datuma i vremena).
Internet Explorer nije podržan (koristite Rub umjesto toga)
Ostali web preglednici nisu testirani.
Web stranice temelje se na općenitoj datoteci predloška koja se nalazi na "predlošci" direktorij "* .template".
Uz to svaka vrsta stranice sadrži:
Datoteka "* .head" koja pohranjuje zaglavlje stranice (veze, uvezeni CSS, JavaScript datoteke itd.) )
Datoteke "* .foot" u kojima se nalazi podnožje stranice (veze itd.) )
Tema vizualizacije može se mijenjati prema željama korisnika suočavanjem i izmjenom CSS datoteka. CSS datoteke nalaze se u "predlošci / css" imenik. Za izradu optimiziranih za npr. Mogu se koristiti različite teme web stranica. ispis, pametni telefoni, predlošci PAD-ova.
Table pogledi - imaju odabirljivo polje za odabir CSS datoteke za cjelovitu izmjenu teme (pohranjene u "predlošci / css / kartice" imenik).
Map pogleda - opću temu odabire "karta" tip kombinirani okvir. Uz to postoji i zadana CSS datoteka "predlošci / css / map.css" koji sadrži neke dodatne funkcije poput rezultata skrivanja / bojanja na temelju njegovih vrijednosti. Ostatak ove CSS datoteke praktički je ograničen na obrasce upita i polja.
Većina @City platforma PHP datoteke za vizualizaciju prihvaćaju cssparametar s vrijednošću naziva datoteke za temu (bez nastavka). Datoteka se mora nalaziti u direktoriju "templates / css", a naziv razlikuje velika i mala slova.
Neki se elementi prikaza teme nalaze izravno u datoteci located koja se nalazi u "predložak / js" imenik.
Glavni @Grad skripta"@ City.js" nalazi se u gornjem direktoriju. U tome nema mogućnosti preinake mjesto, međutim skripta se može kopirati na "predlošci / js" direktorij i tamo izmijenjen. Korištenje pojedinačne skripte zahtijeva ažuriranje svih datoteka zaglavlja.
Neki jedinstveni senzori mogu zahtijevati namjenske funkcije izračuna.
Ne postoji mogućnost ažuriranja i održavanja više varijanti @City Server softver, Prednje PHP sučelje, što bi uzrokovalo mnogo problema, verzija, pogrešaka.
Najbolji i najjednostavniji način da se to postigne je ažuriranje JavaScript "overlay" datoteka za pravilan prikaz vrijednosti / opisa.
Izvorne JS skripte su otvorena tekstualna datoteka i mogu se prilagoditi potrebama kupaca. Kao što je navedeno u prethodnom poglavlju, u njih se moraju kopirati "predlošci / js" direktorij u kojem kupac ima prava pristupa za izmjenu.
Tehnički aspekt programiranja @Grad sustav nije predmet ovog dokumenta, međutim web programer s osnovnim znanjem HTML-a i JS-a može prilagoditi Front-end web aplikaciju individualnim potrebama kupaca.
Baza podataka @City s imenom "IoT" ili "* IoT" podijeljen je u tablice (gdje je asterix prefiks, ovisno o poslužitelju hostinga - ako je potrebno). Baza podataka može se vidjeti u PHPAdmin (web aplikacija) na poveznici http: //% IP% / phpmyadmin
Postavljene tablice za svaki uređaj (gdje * {asterix} je IMEI adresa - jedinstveni ID):
"* _t" - tokeni za trenutnu autorizaciju korisnika (ne koriste se za oblake s jednim kupcem)
"* _c" - red naredbi (Događaji) - za slanje na uređaj
"*" - svi dekodirani rezultati statusa.
Ostale tablice:
"ithings_" tablica - sadrži dekodirani trenutni status svih uređaja (kopira se tijekom ažuriranja bilo kojeg od "*" tablice). Struktura stvari_ tablica je gotovo ista kao "*" stolovi. "ithings_" imaju dodatna polja za poštansku adresu i opise.
tablica "korisnici" je ograničena i treba je izmijeniti.
"idx" - indeks
"tm" - automatski vremenski žig
"dt" - unix vremenska oznaka
"imei" - jedinstvena adresa uređaja
"rssi" - Razina RSSI signala
"rsrp" - RSRP signal
"događaji" - čekanje događaja da se pošalju kontroloru
"out1" .. "out16" - status dekodiranih izlaza
"in1" .. "u16" - status dekodiranih ulaza
"ain1" .. "ain8" - dekodirane vrijednosti ADC (RAW)
"sens1" .. "sens8" - pretvorene vrijednosti senzora (ovisno o vrsti uređaja)
"dimm1" .. "dimm8" - dekodirane vrijednosti prigušivača (ovisi o vrsti uređaja)
"int1" .. "int6" - dekodirane vrijednosti brojača (ovisi o vrsti uređaja)
"tekst1" .. "tekst6" - dekodirane vrijednosti teksta (ovisno o vrsti uređaja)
"stvaranje" - datum / vrijeme izrade uređaja
"posljednji" - zadnji datum / vrijeme
"korisnik" - buduća upotreba
"pass" - buduća upotreba
"sn" - gsm serijski br
"status" - trenutni status kontrolera nije dekodiran u hex formatu
"hash_code" - buduća upotreba
"addr" - kratka adresa uređaja
"fwnr" - firmware br
"disabled" - onemogućen uređaj (nije izveden)
"gsm_nr" - gsm broj CIoT-a
"dobavljač" - kod dobavljača (za franšizu / koprodukciju)
"vremenska zona" - pomak vremenske zone
"dst" - Koristite postavke dnevne uštede
"gps_lat" - GPS Latitude
"gps_long" - GPS zemljopisna dužina
"gps_hdop" - GPS HDOP
"gps_alt" - GPS nadmorska visina
"gps_fix" - GPS fiksacija (mora biti 3 - za valjane rezultate)
"gps_cog" - GPS zupčanik
"gps_speed_km" - GPS brzina u [km / h]
"gps_sat" - Pronađeni GPS sateliti
"kontinent", "zemlja", "regija", "podregija", "podregija", "grad", "četvrt", "ulica", "ulica_nr", "stavka_nr" - Polja za adresu i opis kupca (!!!! Nije dostupno za "*" povijesne tablice)
"log" - podaci dnevnika
Imena polja su važna za stvaranje SQL upita za povećanje funkcionalnosti pretraživanja, jer se izvorni naziv mora koristiti u SQL Statementu.
Ova je tablica red događaja / naredbi za svaki uređaj i ima sljedeću strukturu:
"naredba" - naredba za slanje ili već poslana kontroloru
"potvrđeno" - potvrdna zastava ako je već poslana i potvrđena
"datum" - unix vremenska oznaka događaja
"ažurirano" - zastavica automatskog ažuriranja (datum / vrijeme vremenske oznake)
Podaci mogu biti dostupni bez Front-end web aplikacije. Sustav @City sadrži skriptu s funkcijama srednje razine. Rezultati se vraćaju u JSON formatu.
http: //%IP%/IoT/que.php? func = devsjson
Upit se vraća cjelovit "_stvari" tablica (trenutni statusi svih uređaja) u JSON formatu:
[{ "zemlja":"", "Grad":"", "kontinent":"", "zemlja":"", "regija":"", "podregija":"", "subregija":"", "Grad":"", "okrug":"", "ulica":"", "ulica_br":"", "artikl_nr":"", "gps_lat":"0000,0000N", "gps_long":"00000.0000E", "tm":"2019-02-10 12:56:23", "stvaranje":"2019-02-09 18:12:38", "posljednji":"0000-00-00 00:00:00", "događaji":"", "korisnik":"", "proći":"", "imei":"351580051067110", "s n":"", "status":"73000200000f360033026800240000002c002c002dffffffffffffffffff5b63000001c1000001c2000000000000000009250a4f0a760a7a0a750a780a7e0000031d032205fc34029b025c025600460eb30532", "hash_code":"", "adr":"", "fwnr":"", "onemogućeno":"", "gsm_nr":"", "prodavač":"", "Vremenska 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":"", "događaji":"", "out1":"0", "out2":"0", "out3":"0", "out4":"0", "van5":"0", "out6":"0", "out7":"0", "out8":"0", "out9":"0", "out10":"1", "out11":"0", "van12":"0", "out13":"0", "out14":"0", "out15":"0", "out16":"0", "in1":"0", "u2":"0", "in3":"0", "in4":"0", "u5":"0", "in6":"0", "in7":"0", "in8":"0", "u9":"0", "u10":"0", "u11":"0", "u12":"0", "u13":"0", "u14":"0", "u15":"0", "u16":"0", "ain1":"3894", "ain2":"51", "ain3":"616", "ain4":"36", "au5":"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", "tekst1":"", "tekst2":"", "tekst3":"", "tekst4":"", "tekst5":"", "tekst6":"" }]
Upit povijesnih podataka jednog uređaja prema IMEI br:
http: //%IP%/IoT/que.php? func = imeijson & imei = 356345080018095
Budući da cijela tablica može sadržavati milijune redaka, trebala bi biti ograničena klauzulom WHERE kako ne bi prekinula poslužitelj.
Dodatni parametri url parametri:
func - imeijson
imei - IMEI uređaja
polje - polja koja će se prikazati u rezultatima (popis odvojen zarezom)
min - minimalna vrijednost za prvo polje s popisa
maks - maksimalna vrijednost za prvo polje s popisa
silit - polje za sortiranje
tm - polje se automatski dodaje rezultatima.
where - gdje klauzula o limt podacima
Primjer:
Želimo dobiti sljedeći rezultat
za uređaj sa imei=356345080018095
prikaži polja: ain5, ain6, gps_lat, gps_long
i ograničiti au5 u dometu ( 1, 10000 ) - mora biti prvo polje na popisu
i GPS imaju valjane podatke (gps_fix = 3)
i datum / vrijeme (tm) from2019-02-14 23:00:19 to 2019-02-15 00:00:00
Konstruirani niz URL-a:
http: //%IP%/IoT/que.php? func =imeijson& imei =356345080018095& polje =au5, ain6, gps_lat, gps_long& min =1& max =1000& gdje =gps_fix = 3 i tm> "2019-02-14 23:00:19" i tm <"2019-02-15 00:00:00"
Rezultati upita:
[{ "au5":"66","ain6":"68","gps_lat":"5202.7326N","gps_long":"02115.8073E","tm":"2019-02-14 23:04:31" }, { "au5":"67","ain6":"76","gps_lat":"5202.7328N","gps_long":"02115.8075E","tm":"2019-02-14 23:05:42" }, { "au5":"63","ain6":"77","gps_lat":"5202.7328N","gps_long":"02115.8074E","tm":"2019-02-14 23:06:05" }, { "au5":"58","ain6":"77","gps_lat":"5202.7328N","gps_long":"02115.8075E","tm":"2019-02-14 23:06:32" }, { "au5":"58","ain6":"68","gps_lat":"5202.7328N","gps_long":"02115.8076E","tm":"2019-02-14 23:06:55" }]
Ova funkcija vraća ograničene podatke iz tablice "_ithings"
http: //%IP%/IoT/que.php? func = fieldjson & field = ain5 & min = 13 & max = 5000
Parametri:
func - fieldjson
polje - polje za prikaz u rezultatima - imei i tm automatski se dodaju
min - minimalna vrijednost za polje
maks - maksimalna vrijednost za polje
Za gornji niz upita vraća se rezultati ain5, imei, tm polja:
ako au5 je u dometu (13.5000)
Rezultati upita:
[{"imei":"353080090069142", "tm":"2019-03-14 11:51:01", "au5":"14" },
{"imei":"356345080018095", "tm":"2019-02-20 09:13:04", "au5":"115" },
{"imei":"karczew", "tm":"2019-03-07 13:08:22", "au5":"103" }]