@City IoT Piattaforma Cloud
iSys - Sistemi Intelligenti IoT Soluzioni
IoE.Sistemi
Table di Cuntenutu
1. Introduzione. 5
1.1 Tipi di dispositivi supportati. 5
1.2. Tipi di prudutti supportati. 5
1.3. Protocolli di cumunicazione supportati 5
1.4. Tecnulugia di Comunicazione Supportata di i Dispositivi 6
1.5. @City Cloud Server 6
1.5.1. Server è gateway di cumunicazione 7
1.5.2 Integrazione HTTP LoRaWAN 7
1.5.3. Interfaccia front-end 8
1.5.3. Diritti d'accessu à u servitore 8
1.6. Dispositivi Smart 9
1.6.1. CIoT - Dispositivi GSM 9
1.6.3. BAS, BMS, IoT - Dispositivi Ethernet è WiFi 9
1.6.2. Dispositivi IoT -LoRaWAN 9
1.7. Opzioni Business to Business (B2B) 9
2. @City IoT Funzionalità di a Piattaforma 10
3. Pagina principale 11
4. Principale Form 11
4.1. Intestazione 12
4.1.1. Link Home - (apre a tabella di risultati effettivi) 12
4.1.2. Casella di selezzione "X" - apre / chjude u Form 12 di Query
4.1.3. Casella di cuntrollu "V" - apre / chjude i Campi Form 12
4.1.4. Icone grafiche - ligami per risultati di visualizazione (modificabile) 12
4.2. Forma: 12
4.2.1. Casella di selezzione "X" - apre / chjude tuttu u Form 12 di Query
4.2.2. CSS - Selezziunate u Tema di Visualizazione 12
4.2.3 Casella di cuntrollu Campi Visibili - mostra / nasconde Lista di Filtri Campi 12
4.2.4. Tab: Tab Name per aghjunghje o eliminà 12
4.2.5. Add / Remove Buttons - Aghjunghjite o sguassate tabulature cù u nome in u campu Tab 12
4.2.6. Selezziunate u Pulsante Core 12
4.2.7. Deselezziunate tuttu u Pulsante 12
4.2.7. Selezziunate Tuttu u Pulsante 12
4.2.8. Nascondite u Filtru - Nascondite a Forma 12 sana
4.2.9. Execute Button - Cambia i paràmetri 13
4.2.10. Casella di cuntrollu "V" - mostra / campi di filtru altu. 13
4.3. Schede 13
4.4. Table Table 13
4.4.1. Run - vede u risultatu tippu 13
4.4.2. Copia (+/- ligami) 13
4.4.3. Ligami di Cellula di Table 13
4.5. Ordine di dati 13
4.6. Esempiu 13
5. Carti 15
5.1. Inizializazione di a carta 15
5.2. Impostazioni Opzionali per a query 15
5.2.1. Mudificà a scala MAP (Livellu Zoom) 16
5.2.2. IMEI (Selezziunà u Campu di Dispositiu) 16
5.2.3. Lon, Lat (Longitudine, campi di coordinate di latitudine) 16
5.2.4. Modificà u Stile MAP (Tema) 16
5.2.5. ONDE Clausula 16
5.2.6. Execute (Run Query Button) 16
5.2.7. Deselezziunate tuttu (Eliminate tutti i campi da a quistione) 17
5.2.8. Casella di selezzione "V" (Apertura / Close Formu di Campu) 17
5.2.9. Casella di selezzione "X" (Mostra / Nascite u Forma di Query) 17
5.3. Esempiu 17
6. Mostra Risultati in a Tabella 18
6.1. Inizializazione di u tavulu 18
6.2. Impostazioni Opzionali per a dumanda 19
6.2.1. Ordina - ordina u campu è ordina ascendente / discendente 19
6.2.2. DB / IMEI - Selezziunà u Dispositivu 19
6.2.3. CSS - selezziunate stile (Tema di Visualizazione) 20
6.2.4. Campi Visibili - Mostra / Nascondi Campi Forma 20
6.2.5. Elimina Vuotu - Ùn vede micca e colonne viote 20
6.2.6. Casella di selezzione "X" (Mostra / Nascite u modulu di quistione) 20
6.2.7. Clausola induve (per limitazione di dati) 20
6.2.8. Selezziunate u Pulsante Core (Attivate i campi più cumuni) 20
6.2.9. Deselezziunate tuttu u Pulsante (Elimina tutti i campi da a quistione) 20
6.2.10. Execute (Run Query Button) 20
6.2.11. Casella di selezzione "V" (Forma di Campu Apertu / Chjuditu)
7. Grafici à barre. 21
8. Grafichi Storichi. 22
8.1. Inizializazione di i grafichi storichi 22
8.2. Impostazioni Opzionali di Grafici Storichi 23
8.2.1. IMEI - (Selezziunà Dispositivu per visualizà i dati storichi) 23
8.2.2. Min - limite u valore minimu di u primu campu 23
8.2.3. Max - limite valore massimu di u primu campu 23
8.2.4. "V" - Mostra / Nascite i Campi Forma 23
8.2.5. Da: stabilisce data / ora minima (*) 23
8.2.6. À: imposta data / ora massima (*) 23
8.2.7. Casella di selezzione "X" (Mostra / Nascite u Modulu di Query) 23
8.2.8. "Induve" Soggiru 23
8.2.9. Deselezziunate tuttu u Pulsante (Elimina tutti i campi da a quistione) 23
8.2.10. Esecutà (Esecutà Query Button) 23
8.2.11. Casella di selezzione "V" (Apertura / Close Formu di Campu) 24
8.3. Variante di Bar: (mostra solu i dati dispunibili) 24
8.4. Variante cuntinua (cù listessi dati): 24
9. Compatibilità di u navigatore Web 25
10. Personalizazione di i Temi 26
11. Actualizazione d'Algoritmi 27
12. Struttura di basa di dati 28
12.1. "ithings_" è "*" tavule struttura 29
12.2. Comandi di dispositivi (Eventi) in coda "* _c" tavula - struttura 30
12.3. Accessu à i risultati da e basi di dati - Livellu Mediu (Lettura di Dati) 30
12.3.1. Uttenite i statuti attuali di tutti i dispositivi 30
12.3.2. Uttenite dati storichi per u Dispositiu 31
12.3.3. Uttenite l'elencu di dispositivi - campu unicu da stati attuali cù limitazione 32
@City IoT Cloud Platform hè dedicatu "micru-nuvulu" sistema per i clienti individuali. A piattaforma ùn hè micca spartibile è solu un cliente hà accessu à u servitore fisicu o virtuale (VPS o servitori dedicati). U Cliente pò selezziunà unu di decine di centri di dati in Europa o in u mondu.
A piattaforma @City IoT hè dedicata à seguità i prudutti iSys.PL
IoT - RF / LoRaWAN (Internet di e Cose)
CIoT - GSM / 2G / 3G / 4G / CATM1 / NBIoT (Internet Cellulare di e Cose)
WiFi
Ethernet
@City (eCity) Cloud IoT A piattaforma hè un sistema di dimensioni diverse per i prudutti IP called (chjamati inseme cum'è @Materiale di a cità o Dispositivi CioT ):
@Cità
@Luce
@Metering
@Traccia
@AirQ
@Bin
A piattaforma @City supports supporta i seguenti protocolli per a cumunicazione:
UDP - suggeritu per sensori / dispositivi CIoT (in particulare NBIoT) - utilizzazione più bassa di dati
TCPIP - suggeritu per i dispositivi cun cumunicazione bidirezionale - stretta di manu / cunferma
HTTP - suggeritu solu per l'accessu à i dati / visualizazione / esportazione / "nuvulu à nuvulu"
Webhooks HTTP - per a cumunicazione LoRaWAN trà Rete LoRaWAN / Server d'applicazione è @City Cloud.
L'inviu di dati da u cuntrollore à u servitore in nuvola è vice-versa sò criptati in furmatu binariu unicu per a dimensione più bassa di dati è una sicurezza aumentata. Ogni cumpagnu riceve a so propria chjave di crittografia unica per l'autorizazione di dispositivi, verificazione di validità di dati, ecc.
Per i dispositivi non eHouse / eCity pudemu furnisce algoritmi di crittografia individuale ( "C" codice surghjente) per ogni cumpagnu per microprocessatore per prutege i dati prima di cumunicà.
In questu casu i dati sò cumpletamente sicuri durante a cumunicazione bidirezionale nantu à i media di cumunicazione publica (internet, Air, etc.) ).
@City IoT piattaforma supporta:
GSM: 2G, 3G, 4G (LTE), CATM1 (LTEM1), NBIoT - dispositivi (cumunicazione UDP / TCPIP)
Dispositivi LoRaWAN (HTTP Webhooks) - via gateway LoRaWAN è servitori di rete / applicazione LoRaWAN
Controllers Ethernet (cumunicazione UDP / TCP)
Controllori WiFi (cumunicazione UDP / TCP)
Prudutti IP futuri
Prudutti micca IP via Local @ City / eHouse.PRO Gateway Hardware
@City IoT A piattaforma hè dedicata à dispositivi / nodi:
Prudutti iSys nativi:
CIoT (GSM / 2G / 3G / 4G / CATM1 / NBIoT)
IoT (LoRaWAN)
WiFi - prudutti dedicati per @City Platform
Ethernet - prudutti dedicati per @City Platform
Prudutti di Coproduzione (fabbricati da terze parti sottu licenza iSys è marca esterna)
Franchise products (fabbricati da terze parti sottu licenza iSys cù loghi iSys)
U software @City funziona nantu à VPS basatu in Linux (Server Privatu Virtuale) o Server Dedicatu in Internet, secondu e prestazioni richieste di u Servitore (chjamatu Servitore dopu):
accessu privatu / publicu
i dispusitivi in generale contanu
aghjurnamentu di a frequenza di statutu di i dispositivi
frequenza di rinfrescamentu di i dati
Diversi varianti di VPS esistenu secondu:
U prezzu
geo-lucalizazione di u centru di dati
Nuclei di processatore virtuale (1-8)
RAM virtuale (1-32 GB)
Discu SSD (20 GB-1 TB)
Decine di servitori Dedicati esistenu secondu:
U prezzu
geo-lucalizazione di u centru di dati
Nuclei di processatore (4 .. 32)
RAM (16 .. 512 GB)
SSD / HDD (256 GB .. 8 TB)
A piattaforma @City IoT hè dedicata à un cliente unicu:
Amministrazioni lucali è autorità (Cità, Cumunità, Paese)
B2B (per un pruprietariu di terzu)
Perchè ùn hè micca servitore spartibile trà i clienti, simplifica l'accessu à a sicurezza è e prublemi di prestazione. Per questa ragione solu u cliente hè responsabile di sicurezza efficace, stabilità, efficienza, trasmissione di dati, ecc. In casu di prestazioni insufficienti, u cliente pò cumprà un pianu più altu (VPS o Servitore Dedicatu), più ottimale per a funzionalità è e prestazioni previste.
In casi speciali "Cloud to cloud" A cumunicazione pò esse implementata per a mundialisazione è a centralisazione di i dati in e zone più grandi invece di u cloud multi-cliente.
A cumunicazione di @City Server hè realizata basatu annantu à l'applicazione di livellu bassu per a massimizazione di e prestazioni.
Caratteristiche principali di l'applicazione @City Server sò:
riceve dati di manera asincrona da dispositivi (via protocolli: UDP, TCP IP, HTTP)
minimizà l'utilizazione di dati è i so costi trà dispositivi è Cloud (aduprendu protocolli di cumunicazione di bassu livellu UDP, TCP IP)
riceve u statu crittografatu di i dispositivi (per mezu di qualsiasi media di cumunicazione)
autorizazione è validazione di dati da i dispositivi decifrendu i so statuti
decodificà u statu di i dispositivi è l'aghjurnallu in tavule MariaDB / MySQL direttamente (in furmatu di dati grezzi)
tavula di dati attuale (cuntene solu u più novu statutu di ogni dispositivu)
tavula di dati storichi (cuntene tutti i stati per un dispositivu unicu)
mandà cumandamenti pendenti (Eventi) à i dispositivi
assicurendu a stretta di mani, a verificazione è e cunfirmazioni
U software @City Server hè u listessu per ogni utilizatore è ùn pò micca esse persunalizatu per i clienti diversi.
I cuntrolli LoRaWAN sò integrati cù u nuvellu @City via l'interfaccia HTTP (webhooks) dispunibule nantu à a rete / servitore d'applicazione LoRaWAN.
Parechji tippi di rete / servitore d'applicazione sò supportati:
TTN (tempu limitatu "In diretta" è u numeru massimu di cumandamenti mandati à u driver è ùn supportanu micca l'upgrade di firmware)
LoraWAN-Stack (Richiede l'ospitu nantu à un dispositivu fisicu cù accessu internet).
LoraServer.Io (Richiede l'ospitu nantu à un dispositivu fisicu cù accessu à Internet - invia solu dati à u servitore è ùn supporta micca l'upgrade di firmware)
U @City Cloud per i controller LoRaWAN hè divisu di listessa manera chì per altre interfacce. Hè discuttu in u capitulu precedente.
L'interfaccia front-end hè realizata cù script PHP per estrarre dati persunalizati da @City Cloud Database. Utilizza un meccanismu di ricerca assai elasticu, basatu annantu à e richieste SQL originali per limità i dati desiderati. L'interfaccia furnisce risultati di query in furmatu JSON per ulteriore decodificazione è trasfurmazioni da JavaScript "applicazione" Web front-end.
L'interfaccia front-end originale hè listessa per ogni utilizatore è ùn pò micca esse persunalizata per diversi clienti.
L'interfaccia di superposizione pò esse creata da u nostru persunale o in a cooperazione per assicurà a persunalizazione per u cliente.
I diritti di accessu à i clienti (à u Server fisicu) sò limitati.
Accessu à u schedariu solu per u cartulare "mudelli" (fugliali di testu nativi - .txt, .js, .css, .html):
aghjuntu, rimozione, mudificazione di file HTML puri (Front-End GUI / Sviluppu d'interfaccia)
aghjuntu, rimozione, mudificazione di file pure puri (Front-End GUI / Sviluppu d'interfaccia è Algoritmi)
aghjuntu, rimozione, mudificazione di File CSS puri (Front-End - Viste / Temi persunalizati)
aghjuntu, eliminazione, mudificazione di fugliali di testu di mudelli (Front-End GUI)
aghjuntu, rimozione, mudificazione di schede, accurtatoghji, ligami per risultati di dati
Altri diritti d'accessu:
Accessu cumpletu à @City Cloud Database MySQL / MariaDB induve sò salvati tutti i dati di i dispositivi
L'accessu à i servizii Web sò definiti (credenziali) per u cliente.
U Cliente ùn hè micca permessu di trasmette credenziali à terze parti (l'accessu multiplu di i risultati puderia influenzà e prestazioni, a stabilità è a sicurezza di u sistema generale)
In circustanze speciali è usu di Servitore Dedicatu di prestazioni elevate, un cuntu publicu pò esse istituitu per osservà a maggior parte di i dati attuali (micca storichi).
L'utilizatore pò duplicà dati à u so servitore MySQL è fà analisi è trasfurmazioni di dati proprii, per ùn influenzà micca e prestazioni di @City Server
iSys - Staff di Sistemi Intelligenti - anu un accessu illimitatu à tuttu u servitore cumpresu u contu root è l'accessu DB cumpletu per a manutenzione.
In certe circustanze iSys puderia cuncede diritti limitati addiziunali à u cliente (script PHP, fugliali) dopu avè verificatu u còdice surghjente, esaminatu testi, s'ellu ùn affetta micca a sicurezza generale, a stabilità è e prestazioni di u sistema.
I nostri dispositivi cuntenenu microcontrollore è modulu GSM / GPS / GNSS (2G..4G, NBIoT, CATM1) per a cumunicazione. U Microcontrollore cuntene bootloader crittografatu per un aghjurnamentu di firmware OTA sicuru. Questu permette di creà molte varianti di sistema basate annantu à u listessu "Dispositiu intelligente CIoT".
Controllori Ethernet è WiFi permettenu una cumunicazione basata IP à u sistema (senza carica per u trasferimentu di dati à l'operatore GSM). Questi dispositivi anu ancu criptatu u bootloader è i dispositivi ponu esse aggiornati via a so interfaccia nativa. Per u WiFi hà l'aghjurnamentu di firmware OTA da u servitore principale
LoRaWAN permette a trasmissione di dati nantu à distanze assai lunghe (finu à ca. 15km). Questa gamma dipende da a velocità di trasmissione di dati, a quantità di dati, l'urbanizazione di a zona è l'efficienza di i percorsi radio di i dispositivi.
I nostri dispositivi includenu un microcontrollore è un modulu LoRaWAN per a cumunicazione. U microcontrollore cuntene un bootloader criptatu per l'aghjurnamentu sicuru di u software OTA. Questu vi permette di creà parechje varianti di sistema basate annantu à listesse "IoT smart device". I dispositivi operanu in a banda aperta ISM senza spese di abbonamentu addiziunali. Hè necessariu aduprà LoRaWAN Gateways per copre tutta l'area cù accessu à Internet. In u casu di e porte LoRaWAN esistenti in a gamma di dispositivi (configurati per u servitore TTN), hè pussibile invià informazioni per mezu di elli. L'aghjurnamentu di u firmware richiede un servitore LoRaWAN propiu rete / applicazione è una bona gamma per a cumunicazione.
Ci hè parechje opzioni per l'imprese è a cooperazione:
impurtazione / esportazione di prudutti pronti (quadri, dispositivi) - prudutti finali
importazione / esportazione di prudutti OEM (PCB, controllori, ecc) - prudutti intermedi, pezzi di ricambio
franchise - produzione basata nantu à a nostra licenza per i mercati lucali (furnemu solu microcontrollori prugrammati) in iSys - Marchi di Sistemi Intelligenti
Coproduzione - (cum'è sopra) ma sottu Marche esterne
A piattaforma @City supporta un mudellu Front-End persunalizabile per a visualizazione di dati, query, limitazione è elaborazione (Dati attuali / storichi):
visualizà i dati selezziunati nantu à a carta (geo-lucalizazione)
mostra i dati selezziunati è i risultati in i tavuli
mostra i dati selezziunati in i grafichi à barre
mostra i dati selezziunati in i grafichi storichi
spurta i dati à l'applicazioni di terze parti è più trasfurmazioni
altre funziunalità saranu aggiornate à e dumande individuali.
U Front-End di l'Usuariu hè accessibile via IP staticu o duminiu / sottodominiu / fugliale di reindirizzamentu DNS s'ellu dispunibule.
Installazione esemplaria & Demo (Hè permessa solu per i futuri clienti).
Per piacè informateci quandu vulete testallu - per abilità l'accessu publicu à a piattaforma.
Puderia richiede IP statica di urdinatore remoto per abilità a cumunicazione à a piattaforma @City.
A pagina principale hè lasciata viota intenzionalmente per ragioni di sicurezza: http: //% YourIP% / IoT /
Pò esse attivatu è modificatu individualmente è cuntene ligami per tutti i servizii dispunibili di @City IoT Piattaforma s'ellu hè necessariu
Main Form hè destinatu à creà novi presets è tabulazioni: http: //%IP%/IoT/que.php
Questa hè una forma iniziale per creà risultati, viste è schede per ogni cunfigurazione
Descrizzioni (Da a cima à a direzzione di sinistra à destra)
Mudificà u Tema di Visualizazione U file CSS deve esiste in "mudelli / css /" annuariu - elencatu automaticamente.
Sceglite i campi principali visibili nantu à a tavula. Hè hè aghjurnata automaticamente.
Deselezziunate tutti i campi (deve esse seguitatu selezziunendu alcuni di elli manualmente)
Sceglite tutti i campi (deve esse seguitatu cun deselezziunate alcuni di elli manualmente)
Questu hè equivalente à tutte e caselle (X)
Schede create individualmente cù nomi è preselezzioni (archiviate in cfg / tabs.cfg schedariu).
U fugliale cuntene in realtà nome è URL (separati da tab char).
Mostra tutti i campi limitati da Filtru Campu.
Campi in a tavula:
mappa- risultati di cartografia nantu à a carta (unu o più campi ponu esse selezziunati)
storia - grafichi storichi (unu o più campi ponu esse selezziunati)
tab - mostra a tavula (qualsiasi cumbinazione di campi pò esse selezionata)
bar - solu un campu hè visualizatu nantu à u graficu à barre
Premendu unu di i so valori aprirà novi risultati cù i campi selezziunati (per a fila attuale).
Aggiunta / rimozione di una Tabulazione cù u nome messu in Tab campu. Aduprà solu campi selezziunati in a listessa fila di a tavula.
A pressione di qualsiasi altru nome di campu inizierà a Visualizazione di Dati di u campu selezziunatu per a fila selezionata.
L'ordine di i campi visualizati sò cum'è u so ordine in forma di campi (tuttavia tm campu hè sempre mandatu à a fine di u testu). Questu ordine pò esse cambiatu solu cù l'editurazione diretta di parametri URL (parte di l'ordine di i campi).
Per esempiu: Impostazione Tab cù Tracciatu Asset nome è cuntene a carta cù u tempu è a velocità nantu à a carta
Tutte e descrizzioni riferite à a fila induve "Map" u testu hè in "Curriri" culonna.
Ingressu u nome "Tracciatu Asset" in Tab campu (senza virgulette)
Assicuratevi chì tutte e colonne ùn sò micca selezziunate in a fila
selezziunà tm, gps_speed_km solu in a fila
stampa + buttone induve in a fila
E carte ponu esse lanciate da MainForm cun preconfigurazione
L'inizializazione di a carta hè fatta manualmente quandu eseguita direttamente cù u ligame: > http: //%IP%/IoT/maps.php
L'utilizatore deve Deselezziunà tutti i campi (Press Deselezziunà Buttone)
Pulsà qualchì casella di selezzione per i campi visualizati (per esempiu. Ain5 (per u nivellu Smog) è tm (per a data / ora di misurazione)
stampa "V" casella di selezzione per piattà i campi
stampa Esecutà buttone per eseguisce a quistione di DB è visualizà l'infurmazioni attuali da tutti i sensori / dispositivi
A carta cù i dati hè aghjurnata dopu 30 secondi o più.
Impostazioni descritte da manca à destra (sopra a screenshot).
U nivellu di zoom puderia esse mudificatu cù i buttoni (+/-) per scala (current_scale * 2 o current_scale / 2 rispettivamente). A pressione di unu di sti buttoni mudificherà automaticamente a scala.
Un altru modu hè selezziunate Zoom Level in Zoom Combo Box campu è stampa Esecutà buttone. In questu casu tutta a Vista / Mappa hè ricaricata è rinfriscata (dura un pocu durante l'inizializazione).
IMEIcampu cuntene un dispositivu ID unicu o alias Unicu per un dispositivu. A paràmetru predeterminatu hè * (asteriscu) chì mostra i valori più recenti è a geolocalizazione per ogni dispusitivu.
A messa in IMEI à qualsiasi altru valore, mostrerà i dati storichi di u dispositivu selezionatu. Hà sensu solu per i sensori mobili è in muvimentu, altrimenti i risultati si sovrappondenu nantu à a carta à a listessa pusizione.
Piazzà a pusizione centrale di a carta. Stu campu hè impostatu nantu à a pusizione di u cursore quandu u buttone di u mouse hè pressatu nantu à a carta.
Stile di carta / tema pò esse sceltu da Map Campu ComboBox (per esempiu. Scuru, Gris, Topugraficu).
Diversi temi di carte puderebbenu avè sfarenti livelli di zoom massimi cusì puderia infurzà un Tema propiu per aumentà a scala di a carta.
Induve Clause hè aduprata per una stringa di query addizionale {WHERE part} per MySQL / MariaDB.
Questa clause hè presa in contu per custruisce una stringa QUERY cumpleta per u risultatu di a basa di dati. Pò limità i dati, u tempu è qualsiasi altri valori limitendu u conte di risultati. I nomi di campi originali di a tavula (micca alias) devenu esse aduprati in questu campu. Es.
gps_speed_km> 10 // a velocità hè più di 10km / h
ain5> 3 // ain5 hè più grande di 3 (cuntene 2.5um particule count - smog level)
gps_speed_km> 10 è ain6> 5 // a velocità hè più di 10km / h è ain6 hè più grande di 5 (tenendu 10um count di particule - livellu di smog)
A pressione di stu buttone hè necessariu per cambià qualsiasi paràmetri, parametri (eccettu pressendu +/- buttoni).
A carta hè caricata da u principiu cù novi presets.
A carta ùn hè micca carricata in tuttu, quandu nisuna dati hè dispunibule per a dumanda attuale.
Dopu avè premutu stu buttone, almenu un campu deve esse sceltu manualmente per visualizà i risultati nantu à a carta.
Sta casella di selezzione hè aduprata per mustrà / piattà u selettore di i campi da visualizà.
Sta casella permette di piattà u Forme sanu eccettu ( +/- buttoni)
I risultati nantu à a carta sò continuamente rinfrescati è aghjurnati cù novi valori
Es. Risultati Smog (Sensore installatu nantu à a vittura): Livellu Smog particule 2.5um (Ain5), Velocità (gps_speed_km), Data / Ora (tm), mappa (2 - topografica), livellu di zoom 16,
Induva clause:
"gps_fix = 3 è tm> "2019-02-18 00:00:00" è tm <"2019-02-19 00:00:00" è gps_speed_km> 0".
// GPS = risultati 3D validi & data = 18/02/2019 & velocità> 0 km / h
Mostra risultati in u tavulu.
On "Forma Principale" stampa "tavula" articulu, dopu avè sceltu alcuni campi per visualizà a tavula preconfigurata
Quandu a tavula hè aperta da u ligame http: //%IP%/IoT/que.php? func = tabs richiede inizializazione previa di i paràmetri.
Pudete selezziunà i campi visibili (pressendu "Campi Visibili" ) casella di selezzione.
Pulsà tutte e caselle di selezzione richieste per i campi affissati
Casella di stampa di stampa "Campi Visibili" per piattà i campi formanu
Pulsà Execute buttone per eseguisce a quistione di DB è mostra a tavula
I paràmetri sò discritti da manca à diritta (nantu à a screenshot).
U campu di sorte hè equivalente à pressà l'intestazione di colonna.
IMEIcampu cuntene un dispositivu ID unicu o alias Unicu per un dispositivu. Cù u valore viotu mostra a tavula di i valori più recenti.
A messa in IMEI à qualsiasi altru valore, mostrerà i dati storichi di u dispositivu selezionatu.
Questu hè suffissu per MySQL / MariaDB stringa di dumanda addizionale {WHERE part}
Questa clause hè presa in contu per custruisce una stringa QUERY cumpleta per u risultatu di a basa di dati. Pò limità i dati, u tempu è qualsiasi altri valori limitendu u conte di risultati. I nomi di campi originali di a tavula (micca alias) devenu esse aduprati in questu campu. Es.
gps_speed_km> 10 // a velocità hè più di 10km / h
ain5> 3 // ain5 hè più grande di 3 (cuntene 2.5um particule count - smog level)
gps_speed_km> 10 è ain6> 5 // a velocità hè più di 10km / h è ain6 hè più grande di 5 (tenendu 10um count di particule - livellu di smog)
Dopu avè premutu stu buttone, almenu un campu deve esse sceltu manualmente per visualizà i risultati nantu à a carta.
A pressione di stu buttone hè necessariu per cambià qualsiasi paràmetri, parametri (eccettu pressendu +/- buttoni).
Table hè ricaricata da u principiu cù novi presets.
Sta casella di selezzione hè aduprata per mustrà / piattà u selettore di i campi da visualizà.
I risultati in a tavula sò urdinati secondu Ordina paràmetru di campu. L'urdinamentu di l'urdinamentu pò esse mudificatu premendu l'intestazione di fila (una volta per una direzzione duie volte per un'altra direzzione).
Alcuni risultati in colonne liganu à ulteriori schermi di visualizazione (codificati duramente).
Quandu si visualizanu i dati storichi per u dispositivu duveria esse limitatu per ùn visualizà micca l'infurmazioni di a storia sana perchè pò purtà à prestazioni o prublemi di memoria.
I grafichi à barre devenu esse eseguiti da a Forma Principale premendu un campu singulu in a fila "Bar".
Mustrà e bar ordinate nurmalizate à u valore massimu, mostrendu da u più altu à u più bassu ordine.
Hè utile per verificà rapidamente risultati estremi è fà alcune azzioni.
L'avvenimentu Mouse Over mostrerà informazioni addiziunali per u dispositivu.
E carte storiche ponu esse iniziate da u MainForm quandu preme a colonna selezionata in a fila "Storia" (per campu singulu).
Per campi multipli in a fila "Storia" i campi desiderati devenu esse verificati è u ligame "Storia" deve esse pressatu in a colonna "Run".
I risultati storichi sò limitati à l'ultime 24 ore + prossime 24 ore (per eventuali grafichi rinfrescanti), quandu ùn sò stati stabiliti limiti.
I grafichi storichi quandu sò aperti da u ligame principale richiedenu inizializazione cum'è altri risultati, quandu sò aperti da u ligame senza parametri di preferenze.
Campi multipli ponu esse selezziunati per visualizà vari elementi. Pò esse ancu impostatu in Forma di Filtru Campu.
Pulsà tutte e caselle di selezzione richieste per i campi affissati
Casella di stampa di stampa "Campi Visibili" per piattà i campi formanu
Pulsà Execute buttone per eseguisce a quistione DB è visualizà a tavula
Articuli descritti da cima è da manca à diritta (nantu à u screenshot).
IMEIcampu cuntene un dispositivu ID unicu o alias Unicu per un dispositivu. Cù u valore * (asterix) mostra a tavula di i valori più recenti chì ùn hà micca sensu.
A messa in IMEI à qualsiasi altru valore, mostrerà i dati storichi di u dispositivu selezionatu.
Clausula per limità i risultati di dati MySQL / MariaDB stringa di quistione addizionale {WHERE part}.
Questa clause hè presa in contu per custruisce una stringa QUERY cumpleta per u risultatu di a basa di dati. Pò limità i dati, u tempu è qualsiasi altri valori limitendu u conte di risultati. I nomi di campi di tàvule originali (micca alias) devenu esse aduprati in questu campu è una sintassi SQL valida. Es.
gps_speed_km> 10 // a velocità hè più di 10km / h
ain5> 3 // ain5 hè più grande di 3 (cuntene 2.5um particule count - smog level)
gps_speed_km> 10 è ain6> 5 // a velocità hè più di 10km / h è ain6 hè più grande di 5 (tenendu 10um count di particule - livellu di smog)
Dopu avè premutu stu buttone, almenu un campu deve esse sceltu manualmente per visualizà i risultati storichi.
A pressione di stu buttone hè necessariu per cambià qualsiasi paràmetri, parametri (eccettu chì mostra campi o pannellu di query). Table hè ricaricata da u principiu cù novi presets.
Sta casella di selezzione hè aduprata per mustrà / piattà u selettore di i campi da visualizà.
U puntatore di u mouse mostra i valori di e misure è a data / ora.
Funzione / Navigatore WWW | Cromu 72 | FireFox 65 | Edge | Opera 58 |
Mappe | + | + | + | + |
Storicu | + | + (*) | + | + |
Bars | + | + | + | + |
Schede | + | + | + | + |
* - Firefox ùn sustene micca u selezziunatore di data / ora (u campu di testu deve esse modificatu manualmente cù u furmatu di data è ora adattu).
Internet Explorer ùn hè micca suppurtatu (aduprate Edge invece)
Altri navigatori web ùn sò micca stati testati.
E pagine Web sò basate nantu à un mudellu di mudellu generale situatu in "mudelli" annuariu "* .template".
Inoltre ogni tippu di pagina cuntene:
File "* .head" chì memorizza l'intestazione di a pagina (ligami, CSS impurtati, JavaScript Files, etc. )
Fichieri "* .foot" chì memorizanu u footer di a pagina (ligami, ecc.) )
U Tema di Visualizazione pò esse cambiatu secondu e preferenze di l'utilizatore affruntendu è mudificendu i fugliali CSS. I fugliali CSS si trovanu in "mudelli / css" annuariu. Diversi Temi di Pagina Web ponu esse aduprati per creà ottimizzati per esempiu. stampatura, SmartPhones, mudelli PAD.
Table viste - anu un campu selezziunabile per sceglie u fugliale CSS per a mudificazione cumpleta di u tema (almacenatu in "mudelli / css / tabs" annuariu).
Map viste - u tema generale hè sceltu da "mappa" tipu scatula combo. Inoltre ci hè un schedariu CSS predefinitu "templates / css / map.css" chì cuntene alcune funzionalità addiziunali cume risultati di nascondere / colorà basati annantu à i so valori. U restu di stu schedariu CSS hè praticamente limitatu à e forme di query è campu.
A maiò parte di Piattaforma @City I fugliali PHP per a visualizazione accettanu cssparàmetru cù valore di nome di fugliale per u Tema (senza estensione). U schedariu deve esse situatu in u repertoriu "mudelli / css" è u nome hè sensibule.
Alcuni elementi di a visualizazione di u Tema si trovanu direttamente in u schedariu located situatu in "mudellu / js" annuariu.
Main @Cità script"@ City.js" si trova in u repertoriu superiore. Ùn ci hè micca pussibilità di mudificazione in questu locu, quantunque u script pò esse cupiatu in "mudelli / js" annuariu è mudificatu quì. L'utilizazione di script individuale richiede un aghjurnamentu di tutti i fugliali di intestazione.
Alcuni sensori unici ponu richiede funzioni di calculu dedicate.
Ùn ci hè micca pussibilità di aghjurnà è mantene parechje varianti di Software @City Server, Interfaccia PHP front-end, chì causerebbe assai prublemi, versioni, errori.
U modu u più faciule è u più faciule per ghjunghje, hè d'aghjurnà i fugliali JavaScript "superposizione" per una visualizazione curretta di u valore / descrizzione.
I script JS originali sò un file di testu apertu è ponu esse aduttati à e necessità di i clienti. Cum'è dichjaratu in u capitulu precedente anu da esse copiati in "mudelli / js" annuariu induve u cliente hà diritti d'accessu per mudificà.
Aspettu tecnicu nantu à a prugrammazione di @Cità U sistema ùn hè micca un sughjettu di stu documentu, in ogni modu u sviluppatore Web cun cunniscenze basiche di HTML è JS pò persunalizà l'applicazione Web Front-end per e necessità individuali di i clienti.
@City Database cù un nome "IoT" o "* IoT" hè divisu in tavule (induve l'asterix hè prefissu secondu u servitore d'ospitu - se necessariu). DataBase pò esse osservatu in PHPAdmin (applicazione web) à u ligame http: //% IP% / phpmyadmin
Tabelle Set per ogni Dispositivu (induve * {asterix} hè l'indirizzu IMEI - ID unicu):
"* _t" - gettoni per l'autorizazione di l'utilizatori attuali (micca aduprati per i nuvuli di Cliente Unicu)
"* _c" - cumanda (Eventi) in coda - da invià à u dispusitivu
"*" - tutti i risultati di statutu decodificatu.
Altri tavuli:
"ithings_" tavula - cuntene u statutu attuale decodificatu di tutti i dispusitivi (hè cupiatu durante l'aghjurnamentu di qualsiasi "*" tavule). Struttura di francescac tavula hè guasi listessa à a "*" tavule. "ithings_" avè campi addiziunali per l'indirizzu postale è e descrizzioni.
A tola "utilizatori" hè ristretta è deve esse mudificata.
"idx" - indice
"tm" - timestamp automaticu
"dt" - timestamp unix
"imei" - indirizzu unicu di u dispositivu
"rssi" - Livellu di signale RSSI
"rsrp" - Segnale RSRP
"eventi" - eventi in attesa per esse inviati à u controller
"fora1" .. "fora16" - statutu di uscite decodificatu
"in1" .. "in16" - statu di input decodificatu
"ain1" .. "ain8" - valori ADC decodificati (RAW)
"sens1" .. "sens8" - valori di sensori cunvertiti (dipende da u tippu di dispositivu)
"dimm1" .. "dimm8" - valori di dimmers decodificati (dipende da u tippu di dispositivu)
"int1" .. "int6" - valori di contatori decodificati (dipende da u tippu di dispositivu)
"testu1" .. "testu6" - valori di testu decodificati (dipende da u tippu di dispositivu)
"creazione" - data / ora di creazione di l'apparechju
"ultimu" - ultima data / ora
"utilizatore" - usu futuru
"passà" - usu futuru
"sn" - gsm serial nr
"statutu" - statutu di cuntrollu attuale micca decodificatu in furmatu hex
"hash_code" - usu futuru
"addr" - indirizzu cortu di u dispusitivu
"fwnr" - firmware nr
"disattivatu" - dispositivu disattivatu (micca realizatu)
"gsm_nr" - CIoT numeru gsm
"venditore" - codice venditore (per franchise / coproduzione)
"fuseau horaire" - Offset di Fusula Oraria
"dst" - Utilizà i paràmetri di risparmi di u ghjornu
"gps_lat" - GPS Latitude
"gps_long" - Longitudine GPS
"gps_hdop" - GPS HDOP
"gps_alt" - Altitudine GPS
"gps_fix" - Fissazione GPS (deve esse 3 - per risultati validi)
"gps_cog" - GPS Cog
"gps_speed_km" - Velocità GPS in [km / h]
"gps_sat" - Satelliti GPS truvati
"cuntinente", "paese", "regione", "sottoregione", "sottoregione", "cità", "distrettu", "strada", "street_nr", "item_nr" - Indirizzi di u cliente è campi di descrizzione (!!!! Micca dispunibule per "*" tavule storiche)
"log" - dati di log
I nomi di campi sò impurtanti per creà dumande SQL per aumentà a funzionalità di ricerca perchè u nome originale deve esse adupratu in SQL Statement.
Questa tavula hè una fila di eventi / cumandamenti per ogni dispositivu è anu a seguente struttura:
"cumanda" - cumanda da invià o digià inviata à u cuntrollieru
"cunfirmatu" - bandiera di cunferma s'ella hè stata digià mandata è cunfirmata
"data" - timestamp unix di l'eventu
"aghjurnatu" - bandiera d'aghjurnamentu auto (data / ora di timestamp)
I dati ponu esse accessibili senza applicazione Web Front-end. U sistema @City cuntene script cù funzioni di livellu mediu. I risultati sò restituiti in furmatu JSON.
http: //%IP%/IoT/que.php? func = devsjson
A dumanda torna sana "_citazioni" tabella (stati attuali di tutti i dispositivi) in Formatu JSON:
[{ "paese":"", "cità":"", "cuntinente":"", "paese":"", "regione":"", "sottoregione":"", "sotturregione":"", "cità":"", "distrettu":"", "strada":"", "street_nr":"", "item_nr":"", "gps_lat":"0000.0000N", "gps_long":"00000.0000E", "tm":"2019-02-10 12:56:23", "creazione":"2019-02-09 18:12:38", "ultimu":"0000-00-00 00:00:00", "eventi":"", "utilizatore":"", "passà":"", "imei":"351580051067110", "sn":"", "statutu":"73000200000f360033026800240000002c002c002dffffffffffffffff5b63000001c1000001c20000000000000009250a4f0a760a7a0a750a780a7e0000031d032205fc34029b025c025600400", "hash_code":"", "addr":"", "fwnr":"", "disattivatu":"", "gsm_nr":"", "venditore":"", "timezone":"", "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":"", "eventi":"", "fora1":"0", "fora2":"0", "fora3":"0", "fora4":"0", "fora5":"0", "fora6":"0", "7":"0", "fora8":"0", "fora9":"0", "fora10":"1", "fora11":"0", "fora12":"0", "fora13":"0", "fora14":"0", "fora15":"0", "fora16":"0", "in1":"0", "in2":"0", "in3":"0", "in4":"0", "in5":"0", "in6":"0", "in7":"0", "in8":"0", "in9":"0", "in10":"0", "in11":"0", "in12":"0", "in13":"0", "in14":"0", "in15":"0", "in16":"0", "ain1":"3894", "ain2":"51", "ain3":"616", "ain4":"36", "ain5":"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", "testu1":"", "testu2":"", "testu3":"", "testu4":"", "testu5":"", "testu6":"" }]
Interrogazione di i dati storichi di u dispositivu unicu da IMEI nr:
http: //%IP%/IoT/que.php? func = imeijson & imei = 356345080018095
Perchè a tavula sana pò cuntene milioni di righe deve esse limitata cù a clausula WHERE per ùn chjappà u servitore.
Parametri addiziunali parametri url:
funz - imeijson
imei - IMEI di u dispositivu
campu - campi da visualizà in i risultati (lista separata da coma)
min - valore minimu per u primu campu di a lista
max - valore massimu per u primu campu di a lista
sot - campu per sorte
tm - U campu hè aghjuntu automaticamente à i risultati.
where - induve clausula per limità i dati
Esempiu:
Vulemu uttene u seguitu risultatu
per u dispositivu cù imei=356345080018095
mostra i campi: ain5, ain6, gps_lat, gps_long
è limite ain5 in portata ( 1, 10000 ) - Deve esse u primu campu di a lista
è gps avè dati validi (gps_fix = 3)
è data / ora (tm) from2019-02-14 23:00:19 to 2019-02-15 00:00:00
Stringa URL custruita:
http: //%IP%/IoT/que.php? func =imeijson& imei =356345080018095& campu =ain5, ain6, gps_lat, gps_long& min =1& max =1000è induve =gps_fix = 3 è tm> "2019-02-14 23:00:19" è tm <"2019-02-15 00:00:00"
Risultati di a quistione:
[{ "ain5":"66","ain6":"68","gps_lat":"5202.7326N","gps_long":"02115.8073E","tm":"2019-02-14 23:04:31" }, { "ain5":"67","ain6":"76","gps_lat":"5202.7328N","gps_long":"02115.8075E","tm":"2019-02-14 23:05:42" }, { "ain5":"63","ain6":"77","gps_lat":"5202.7328N","gps_long":"02115.8074E","tm":"2019-02-14 23:06:05" }, { "ain5":"58","ain6":"77","gps_lat":"5202.7328N","gps_long":"02115.8075E","tm":"2019-02-14 23:06:32" }, { "ain5":"58","ain6":"68","gps_lat":"5202.7328N","gps_long":"02115.8076E","tm":"2019-02-14 23:06:55" }]
Sta funzione restituisce dati limitati da a tavula "_ithings"
http: //%IP%/IoT/que.php? func = fieldjson & field = ain5 & min = 13 & max = 5000
Parametri:
funz - fieldjson
campu - campu da vede in i risultati - imei è tm sò aghjuntu automaticamente
min - valore minimu per u campu
max - valore massimu per u campu
Per a stringa di quistione sopra torna risultati di ain5, imei, tm campi:
si ain5 hè in portata (13,5000)
Risultati di a quistione:
[{"imei":"353080090069142", "tm":"2019-03-14 11:51:01", "ain5":"14" },
{"imei":"356345080018095", "tm":"2019-02-20 09:13:04", "ain5":"115" },
{"imei":"karczew", "tm":"2019-03-07 13:08:22", "ain5":"103" }]