@City IoT Platform Awan




iSys - Sistem Pintar IoT Penyelesaian









Sistem IoE

Isi kandungan

1. Pengenalan. 5

1.1 Jenis peranti yang disokong. 5

1.2. Jenis produk yang disokong. 5

1.3. Protokol komunikasi yang disokong 5

1.4. Teknologi Komunikasi yang Disokong Peranti 6

1.5. @City Cloud Server 6

1.5.1. Gerbang pelayan dan komunikasi 7

1.5.2 Integrasi HTTP LoRaWAN 7

1.5.3. Antara muka depan 8

1.5.3. Hak akses pelayan 8

1.6. Peranti Pintar 9

1.6.1. Peranti CIoT - GSM 9

1.6.3. BAS, BMS, IoT - Peranti Ethernet dan WiFi 9

1.6.2. IoT -LoRaWAN peranti 9

1.7. Pilihan Perniagaan ke Perniagaan (B2B) 9

2. @City IoT Fungsi Platform 10

3. Halaman Utama 11

4. Borang Utama 11

4.1. Tajuk 12

4.1.1. Pautan Laman Utama - (membuka jadual hasil sebenar) 12

4.1.2. Kotak semak "X" - membuka / menutup Borang Pertanyaan 12

4.1.3. Kotak semak "V" - membuka / menutup Borang Medan 12

4.1.4. Ikon grafik - pautan ke hasil visualisasi (boleh diedit) 12

4.2. Bentuk: 12

4.2.1. Kotak semak "X" - membuka / menutup keseluruhan Borang Pertanyaan 12

4.2.2. CSS - Pilih Tema Visualisasi 12

4.2.3. Kotak semak Medan Terlihat - menunjukkan / menyembunyikan Senarai Penapis Medan 12

4.2.4. Tab: Nama Tab untuk menambah atau membuang 12

4.2.5. Butang Tambah / Buang - Menambah atau membuang tab dengan nama di medan Tab 12

4.2.6. Pilih Butang Teras 12

4.2.7. Nyahpilih Semua Butang 12

4.2.7. Pilih Semua Butang 12

4.2.8. Sembunyikan Penapis - Sembunyikan keseluruhan Borang 12

4.2.9. Execute Button - Ubah tetapan parameter 13

4.2.10. Kotak semak "V" - medan penunjuk / penapis tinggi. 13

4.3. Tab 13

4.4. Kandungan Jadual 13

4.4.1. Jalankan - paparan hasil jenis 13

4.4.2. Salin (+/- pautan) 13

4.4.3. Pautan Sel Jadual 13

4.5. Pesanan Data 13

4.6. Contoh 13

5. Peta 15

5.1. Permulaan Peta 15

5.2. Tetapan Pilihan untuk pertanyaan 15

5.2.1. Ubah skala MAP (Tahap Zum) 16

5.2.2. IMEI (Pilih Medan Peranti) 16

5.2.3. Lon, Lat (Medan koordinat Longitud, Lintang) 16

5.2.4. Ubahsuai Gaya PETA (Tema) 16

5.2.5. DI MANA Fasal 16

5.2.6. Laksanakan (Jalankan Butang Pertanyaan) 16

5.2.7. Nyahpilih Semua (Keluarkan semua medan dari pertanyaan) 17

5.2.8. Kotak Centang "V" (Borang Medan Buka / Tutup) 17

5.2.9. Kotak Centang "X" (Tunjukkan / Sembunyikan Borang Pertanyaan) 17

5.3. Contoh 17

6. Tunjukkan Hasil dalam Jadual 18

6.1. Permulaan jadual 18

6.2. Tetapan Pilihan untuk pertanyaan 19

6.2.1. Isi - urutkan bidang dan urutan menaik / menurun 19

6.2.2. DB / IMEI - Pilih Peranti 19

6.2.3. CSS - pilih gaya (Tema Visualisasi) 20

6.2.4. Medan Terlihat - Tunjukkan / Sembunyikan Medan Borang 20

6.2.5. Buang Kosong - Jangan paparkan lajur kosong 20

6.2.6. Kotak Centang "X" (Tunjukkan / Sembunyikan Borang Pertanyaan) 20

6.2.7. Di mana Klausa (untuk had data) 20

6.2.8. Pilih Butang Teras (Dayakan medan yang paling biasa) 20

6.2.9. Nyahpilih Semua Butang (Keluarkan semua medan dari pertanyaan) 20

6.2.10. Laksanakan (Jalankan Butang Pertanyaan) 20

6.2.11. Kotak Centang "V" (Borang Medan Buka / Tutup) 20

7. Carta Bar. 21

8. Carta Sejarah. 22

8.1. Permulaan carta Sejarah 22

8.2. Tetapan Pilihan Carta Sejarah 23

8.2.1. IMEI - (Pilih Peranti untuk memaparkan data sejarah) 23

8.2.2. Min - had nilai minimum medan pertama 23

8.2.3. Maksimum - had nilai maksimum medan pertama 23

8.2.4. "V" - Tunjukkan / Sembunyikan Medan Borang 23

8.2.5. Dari: tetapkan tarikh / masa minimum (*) 23

8.2.6. Ke: tetapkan tarikh / masa maksimum (*) 23

8.2.7. Kotak Centang "X" (Tunjukkan / Sembunyikan Borang Pertanyaan) 23

8.2.8. "Di mana" Fasal 23

8.2.9. Nyahpilih Semua Butang (Keluarkan semua medan dari pertanyaan) 23

8.2.10. Laksanakan (Jalankan Butang Pertanyaan) 23

8.2.11. Kotak Centang "V" (Borang Medan Buka / Tutup) 24

8.3. Varian Bar: (hanya memaparkan data yang ada) 24

8.4. Varian berterusan (dengan data yang sama): 24

9. Keserasian penyemak imbas web 25

10. Penyesuaian Tema 26

11. Kemas kini Algoritma 27

12. Struktur Pangkalan Data 28

12.1. Struktur jadual "ithings_" dan "*" 29

12.2. Perintah peranti (Acara) beratur jadual "* _c" - struktur 30

12.3. Mengakses hasil dari pangkalan data - Tahap Pertengahan (Membaca Data) 30

12.3.1. Dapatkan status terkini semua peranti 30

12.3.2. Dapatkan data Sejarah untuk Peranti 31

12.3.3. Dapatkan senarai peranti - medan tunggal dari status semasa dengan had 32


1. Pengenalan.

@City IoT Cloud Platform dikhaskan "awan mikro" sistem untuk pelanggan individu. Platform tidak boleh dikongsi dan hanya satu pelanggan yang mempunyai akses ke pelayan fizikal atau maya (VPS atau pelayan khusus). Pelanggan boleh memilih salah satu daripada puluhan pusat data di Eropah atau di dunia.

1.1 Jenis peranti yang disokong.

Platform @City is didedikasikan untuk mengikuti produk iSys.PL



1.2. Jenis produk yang disokong.

@City (eCity) Cloud IoT Platform adalah pelbagai sistem ukuran untuk produk IP ((dipanggil bersama sebagai Perkakasan @City atau Peranti CioT ):


1.3. Protokol komunikasi yang disokong

Platform @City supports menyokong protokol berikut untuk komunikasi:

Data dihantar dari pengawal ke pelayan awan dan sebaliknya dienkripsi dalam format binari yang unik untuk ukuran data terendah dan peningkatan keselamatan. Setiap rakan kongsi mendapat kunci penyulitan yang unik untuk kebenaran peranti, pemeriksaan kesahan data, dll.


Untuk peranti bukan eHouse / eCity, kami dapat menyediakan algoritma penyulitan individu ( "C" kod sumber) untuk setiap rakan kongsi untuk mikropemproses untuk melindungi data sebelum komunikasi.

Dalam hal ini data benar-benar aman semasa komunikasi dua arah melalui media komunikasi awam (internet, Udara, dll. ).


1.4. Teknologi Komunikasi Peranti yang Disokong

Platform @City supports menyokong:


Platform @City is dikhaskan untuk peranti / nod:


1.5. Pelayan Awan @City

Perisian @City berfungsi pada VPS berasaskan Linux (Virtual Private Server) atau Dedicated Server di sisi internet, bergantung pada prestasi yang diminta Pelayan (dipanggil Server kemudian):


Terdapat beberapa varian VPS yang bergantung kepada:


Berpuluh pelayan Dedicated ada bergantung pada:


Platform @City is dikhaskan untuk pelanggan tunggal:


Oleh kerana ia tidak dapat dikongsi Server antara pelanggan, ini memudahkan akses keselamatan dan masalah prestasi. Atas sebab ini, hanya pelanggan yang bertanggungjawab untuk keselamatan, kestabilan, kecekapan, throughput data, dll. Sekiranya prestasi tidak mencukupi, pelanggan dapat membeli rancangan yang lebih tinggi (VPS atau Dedicated Server), lebih optimum untuk fungsi dan prestasi yang diharapkan.

Dalam kes khas "Cloud to cloud" komunikasi mungkin dilaksanakan untuk globalisasi dan pemusatan data ke wilayah yang lebih besar dan bukannya awan multi-pelanggan.

1.5.1. Gerbang pelayan dan komunikasi

Komunikasi @City Server direalisasikan berdasarkan aplikasi tahap rendah untuk memaksimumkan prestasi.

Ciri utama aplikasi @City Server adalah:

Perisian @City Server adalah sama untuk setiap pengguna dan tidak dapat disesuaikan untuk pelanggan yang berbeza.

1.5.2 Integrasi HTTP LoRaWAN

Pengawal LoRaWAN diintegrasikan dengan awan @City melalui antara muka HTTP (webhooks) yang tersedia di pelayan rangkaian / aplikasi LoRaWAN.

Beberapa jenis pelayan rangkaian / aplikasi disokong:

TTN (masa terhad "Di udara" dan jumlah maksimum arahan yang dihantar kepada pemacu dan tidak menyokong peningkatan firmware)

LoraWAN-Stack (Memerlukan hosting pada peranti fizikal dengan akses internet).

LoraServer.Io (Memerlukan hosting pada peranti fizikal dengan akses internet - hanya menghantar data ke pelayan dan tidak menyokong peningkatan firmware)



Pengawal @City Cloud untuk LoRaWAN dibahagikan dengan cara yang sama seperti untuk antara muka lain. Ia dibincangkan dalam bab sebelumnya.

1.5.3. Antara muka depan

Antaramuka front-end direalisasikan dengan skrip PHP untuk mengekstrak data yang disesuaikan dari @City Cloud Database. Ia menggunakan mekanisme carian yang sangat elastik, berdasarkan pertanyaan SQL asli untuk membatasi data yang diinginkan. Hasil carian persediaan antara muka dalam format JSON untuk penyahkodan dan pemprosesan lebih lanjut dengan "" aplikasi "Web Front-end.

Antara muka depan asli adalah sama untuk setiap pengguna dan tidak dapat disesuaikan untuk pelanggan yang berbeza.

Antara muka overlay mungkin dibuat oleh kakitangan kami atau dalam kerjasama untuk memastikan penyesuaian pelanggan.

1.5.3. Hak akses pelayan

Hak akses pelanggan (kepada Pelayan fizikal) adalah terhad.

Akses fail untuk direktori "templat" sahaja (fail teks asli - .txt, .js, .css, .html):

Hak Akses lain:


iSys - kakitangan Sistem Pintar - mempunyai akses tanpa had ke seluruh pelayan termasuk akaun root dan akses penuh DB untuk penyelenggaraan.

Dalam keadaan tertentu, iSys mungkin memberikan hak terbatas tambahan kepada pelanggan (skrip PHP, file) setelah memeriksa kod sumber, menjalankan ujian, jika tidak mempengaruhi keselamatan, kestabilan dan kinerja sistem secara keseluruhan.


1.6. Peranti Pintar

1.6.1. Peranti CIoT - GSM

Peranti kami mengandungi modul mikrokontroler dan GSM / GPS / GNSS (2G..4G, NBIoT, CATM1) untuk komunikasi. Microcontroller mengandungi bootloader yang disulitkan untuk peningkatan firmware OTA yang selamat. Ini membolehkan membuat banyak varian sistem berdasarkan yang sama "Peranti CIoT Smart".


1.6.3. BAS, BMS, IoT - Peranti Ethernet dan WiFi


Pengawal Ethernet dan WiFi membolehkan komunikasi berasaskan IP ke sistem (tanpa mengenakan bayaran untuk pemindahan data ke operator GSM). Peranti ini juga mempunyai bootloader yang dienkripsi dan peranti mungkin akan dikemas kini melalui antara muka asalnya. Untuk WiFi ia mempunyai peningkatan firmware OTA dari pelayan utama


1.6.2. IoT - Peranti LoRaWAN

LoRaWAN membolehkan penghantaran data pada jarak yang sangat jauh (hingga lebih kurang. 15km). Julat ini bergantung pada kelajuan penghantaran data, jumlah data, pembandaran kawasan dan kecekapan laluan radio peranti.

Peranti kami merangkumi mikrokontroler dan modul LoRaWAN untuk komunikasi. Mikrokontroler mengandungi pemuat but yang disulitkan untuk kemas kini perisian OTA yang selamat. Ini membolehkan anda membuat pelbagai varian sistem berdasarkan yang sama "IoT smart device". Peranti beroperasi dalam jalur terbuka ISM tanpa bayaran langganan tambahan. Anda perlu menggunakan LoRaWAN Gateways untuk menutup seluruh kawasan dengan akses ke Internet. Sekiranya terdapat gerbang LoRaWAN yang ada dalam jangkauan peranti (dikonfigurasi untuk pelayan TTN), adalah mungkin untuk menghantar maklumat melalui mereka. Peningkatan firmware memerlukan pelayan LoRaWAN rangkaian / aplikasi sendiri dan rangkaian komunikasi yang baik.

1.7. Pilihan Perniagaan ke Perniagaan (B2B)


Terdapat beberapa pilihan untuk perniagaan dan kerjasama:

2. @City IoT Fungsi Platform

Platform @City menyokong templat Front-End yang dapat disesuaikan untuk visualisasi data, pertanyaan, pembatasan dan pemprosesan (Data semasa / sejarah):


Front-End Pengguna dapat diakses melalui domain / subdomain / fail pengalihan IP statik atau DNS jika tersedia.


Pemasangan Contoh & Demo (Diaktifkan hanya untuk calon pelanggan).

Sila maklumkan kepada kami bila anda ingin mengujinya - untuk membolehkan akses awam ke platform.

Ia memerlukan IP statik komputer jarak jauh untuk membolehkan komunikasi ke platform @City.


3. Muka surat utama

Halaman utama dibiarkan kosong dengan sengaja kerana alasan keselamatan: http: //% YourIP% / IoT /

Ia mungkin diaktifkan dan diedit secara individu dan mengandungi pautan ke semua perkhidmatan yang tersedia Platform @City IoT sekiranya diperlukan


4. Borang Utama

Borang Utama bertujuan untuk membuat pratetap dan tab baru: http: //%IP%/IoT/que.php

Ini adalah bentuk awal untuk membuat hasil, paparan dan tab untuk setiap konfigurasi




Penerangan (Dari arah atas dan kiri ke kanan)

4.1. Kepala

4.1.1. Pautan Laman Utama - (membuka jadual hasil sebenar)

4.1.2. "X" kotak semak - membuka / menutup Borang Pertanyaan

4.1.3. "V" kotak semak - membuka / menutup Borang Medan

4.1.4. Ikon grafik - pautan ke hasil visualisasi (boleh diedit)


4.2. Borang:

4.2.1. "X" kotak semak - membuka / menutup keseluruhan Borang Pertanyaan

4.2.2. CSS - Pilih Tema Visualisasi

Fail CSS Tema Ubahsuai mesti ada di "templat / css /" direktori - disenaraikan secara automatik.

4.2.3. Medan Terlihat kotak semak - menunjukkan / menyembunyikan Senarai Penapis Medan

4.2.4. Tab: Nama Tab untuk menambah atau mengalih keluar

4.2.5. Tambah / Buang Butang - Menambah atau membuang tab dengan nama di Tab bidang

4.2.6. Pilih Teras Butang

Pilih bidang utama yang kelihatan di atas meja. Ia dikemas kini secara automatik.

4.2.7. Nyahpilih Semua Butang

Nyahpilih semua medan (mesti diikuti dengan memilih beberapa daripadanya secara manual)

4.2.7. Pilih semua Butang

Pilih semua medan (mesti diikuti dengan membatalkan pilihan beberapa daripadanya secara manual)

4.2.8. Sembunyikan Penapis - Sembunyikan keseluruhan Borang

Ini adalah setara dengan semua (X) kotak pilihan

4.2.9. Laksanakan Butang - Tukar tetapan parameter

4.2.10. "V" kotak pilihan - medan tunjuk / penapis tinggi.


4.3. Tab

Tab yang dibuat secara individu dengan nama dan pratetap (disimpan di cfg / tabs.cfg fail).

Fail sebenarnya mengandungi nama dan URL (dipisahkan dengan tab tab).


4.4. Kandungan Jadual

Memaparkan semua bidang yang dihadkan oleh Field Filter.


Medan dalam jadual:

4.4.1. Lari - jenis hasil pandangan

peta- hasil pemetaan di peta (satu atau lebih bidang boleh dipilih)

sejarah - carta sejarah (satu atau lebih bidang boleh dipilih)

tab - Jadual paparan (kombinasi bidang boleh dipilih)

bar - hanya satu medan yang dipaparkan pada carta palang

Dengan menekan salah satu nilainya, ia akan membuka hasil baru dengan medan terpilih (untuk baris semasa).


4.4.2. Salin (+/- pautan)

Menambah / membuang Tab dengan nama yang ditetapkan Tab bidang. Ia hanya menggunakan bidang yang dipilih dalam baris jadual yang sama.


4.4.3. Pautan Sel Jadual

Menekan nama medan lain akan memulakan Visualisasi Data bidang yang dipilih untuk baris yang dipilih.


4.5. Pesanan Data


Urutan bidang yang dipaparkan adalah susunannya dalam bentuk bidang (namun tm bidang selalu dihantar hingga akhir teks). Urutan ini hanya dapat diubah dengan pengeditan langsung parameter URL (bahagian pesanan bidang).


4.6. Contohnya

Contohnya: Menetapkan Tab dengan Penjejakan Aset nama dan mengandungi peta dengan masa dan kelajuan di peta

Semua penerangan merujuk kepada baris di mana "Map" teks dalam "Lari" kolum.

  1. Masukkan nama "Penjejakan Aset" dalam Tab medan (tanpa tanda petik)

  2. Pastikan semua lajur tidak dipilih dalam baris

  3. pilih tm, gps_laju_km hanya di barisan

  4. tekan + butang di mana berturut-turut






5. Peta

Peta boleh dilancarkan dari MainForm dengan pra-konfigurasi


5.1. Permulaan Peta

Permulaan peta dilakukan secara manual apabila dijalankan secara langsung dengan pautan: > http: //%IP%/IoT/maps.php


  1. Pengguna harus Nyahpilih semua bidang (Tekan Nyahpilih Butang)

  2. Tekan beberapa kotak pilihan untuk bidang yang dipaparkan (mis. Ain5 (untuk tahap Smog) dan tm (untuk tarikh / masa pengukuran)

  3. tekan "V" kotak semak untuk menyembunyikan borang medan

  4. tekan Laksanakan butang untuk menjalankan pertanyaan DB dan memaparkan maklumat terkini dari semua sensor / peranti

  5. Peta dengan data dikemas kini selepas 30 saat atau lebih.


5.2. Tetapan Pilihan untuk pertanyaan

Tetapan dijelaskan dari kiri ke kanan (pada tangkapan skrin di atas).

5.2.1. Ubah skala MAP (Tahap Zum)

  1. Tahap zum mungkin diubah dengan menggunakan butang (+/-) untuk skala (current_scale * 2 atau current_scale / 2 masing-masing). Menekan salah satu butang ini secara automatik akan mengubah skala.

  2. Cara lain ialah pilih Zoom Level in Zum Medan Kotak Kombo dan tekan Laksanakan butang. Dalam kes ini keseluruhan Tampilan / Peta dimuat semula dan dimuat semula (memerlukan beberapa saat semasa inisialisasi).

5.2.2. IMEI (Pilih Medan Peranti)

IMEImedan mengandungi ID unik peranti atau alias Unik untuk peranti. Tetapan lalai adalah * (tanda bintang) yang menunjukkan nilai terkini dan geolokasi untuk setiap peranti.

Menetapkan IMEI ke nilai lain, akan menunjukkan data sejarah peranti terpilih. Ini hanya masuk akal untuk sensor bergerak dan bergerak, jika tidak, hasilnya akan bertindih di peta pada kedudukan yang sama.


5.2.3. Lon, Lat (Medan koordinat Longitud, Latitud)

Tetapkan kedudukan tengah peta. Medan ini diatur ke posisi kursor ketika butang tetikus ditekan pada peta.


5.2.4. Ubahsuai Gaya PETA (Tema)

Gaya / tema peta boleh dipilih Map Medan kotak kombo (mis. Gelap, Kelabu, Topografi).

Berbagai tema peta mungkin mempunyai tahap zoom maksimum yang berbeza sehingga mungkin menerapkan Tema yang tepat untuk meningkatkan skala peta.


5.2.5. DI MANA Fasal

Di mana Klausa digunakan untuk rentetan pertanyaan tambahan {WHERE part} untuk MySQL / MariaDB.

Klausa ini diambil kira untuk membina rentetan QUERY lengkap untuk hasil pangkalan data. Ini mungkin mengehadkan data, masa dan nilai lain dengan mengehadkan jumlah hasil. Nama medan jadual asal (bukan alias) mesti digunakan dalam bidang ini. Cth.

  1. gps_speed_km> 10 // kelajuan lebih daripada 10km / j

  2. ain5> 3 // ain5 lebih besar daripada 3 (menahan jumlah zarah 2.5um - tahap asap)

  3. gps_speed_km> 10 dan ain6> 5 // kelajuan lebih dari 10km / j dan ain6 lebih besar daripada 5 (menahan bilangan zarah 10um - tahap kabut)


5.2.6. Laksanakan (Jalankan Butang Pertanyaan)

Menekan butang ini diperlukan untuk mengubah pengaturan, parameter (kecuali menekan +/- butang).

Peta dimuat dari awal dengan pratetap baru.

Peta tidak dimuat sama sekali, ketika data tidak tersedia untuk pertanyaan semasa.

5.2.7. Nyahpilih Semua (Keluarkan semua medan dari pertanyaan)

Setelah menekan butang ini sekurang-kurangnya satu bidang mesti dipilih secara manual untuk memaparkan hasil di peta.


5.2.8. "V" Kotak Centang (Borang Medan Buka / Tutup)

Kotak centang ini digunakan untuk menunjukkan / menyembunyikan pemilih bidang yang akan dipaparkan.


5.2.9. "X" Kotak pilihan (Tunjukkan / Sembunyikan Borang Pertanyaan)

Kotak pilihan ini membolehkan menyembunyikan keseluruhan Borang kecuali ( +/- butang)


Hasil di peta terus diperbaharui dan diperbaharui dengan nilai baru

5.3. Contohnya

Contohnya hasil Smog (Sensor dipasang pada kereta): Zarah 2.5um tahap asap (Ain5), Kelajuan (gps_speed_km), Tarikh / Masa (tm), peta (2 - topografi), tahap zoom 16

Di mana fasal:

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

// GPS = hasil & tarikh 3D yang sah = 2019-02-18 & kelajuan> 0 km / j



6. Tunjukkan Hasil dalam Jadual

Tunjukkan hasil dalam jadual.

Dihidupkan "Borang Utama" tekan "meja" item, setelah memilih beberapa bidang untuk memaparkan jadual yang telah dikonfigurasi sebelumnya




6.1. Permulaan jadual

Apabila jadual dibuka dari pautan http: //%IP%/IoT/que.php? func = tab ia memerlukan permulaan tetapan terlebih dahulu.

Anda boleh memilih medan yang kelihatan (dengan menekan "Medan Terlihat" kotak pilihan.



  1. Tekan semua kotak pilihan yang diperlukan untuk medan yang dipaparkan

  2. Tekan kotak pilihan "Medan Terlihat" untuk menyembunyikan bentuk medan

  3. Tekan butang Execute untuk menjalankan pertanyaan DB dan jadual paparan


6.2. Tetapan Pilihan untuk pertanyaan

Tetapan dijelaskan dari kiri ke kanan (pada tangkapan skrin).

6.2.1. Isih - urutkan bidang dan tertib menaik / menurun

Isi medan sama dengan menekan tajuk tajuk.

6.2.2. DB / IMEI - Pilih Peranti

IMEImedan mengandungi ID unik peranti atau alias Unik untuk peranti. Dengan nilai kosong, ia menunjukkan jadual nilai terkini.

Menetapkan IMEI ke nilai lain, akan menunjukkan data sejarah peranti terpilih.


6.2.3. CSS - pilih gaya (Tema Visualisasi)

6.2.4. Medan Terlihat - Tunjukkan / Sembunyikan Borang Medan

6.2.5. Keluarkan Kosong - Jangan paparkan lajur kosong

6.2.6. "X" Kotak pilihan (Tunjukkan / Sembunyikan Borang Pertanyaan)

6.2.7. Di mana Fasal (untuk had data)

Ini adalah penyelesaian untuk rentetan pertanyaan tambahan MySQL / MariaDB {WHERE part}

Klausa ini diambil kira untuk membina rentetan QUERY lengkap untuk hasil pangkalan data. Ini mungkin mengehadkan data, masa dan nilai lain dengan mengehadkan jumlah hasil. Nama medan jadual asal (bukan alias) mesti digunakan dalam bidang ini. Cth.

  1. gps_speed_km> 10 // kelajuan lebih daripada 10km / j

  2. ain5> 3 // ain5 lebih besar daripada 3 (menahan jumlah zarah 2.5um - tahap asap)

  3. gps_speed_km> 10 dan ain6> 5 // kelajuan lebih dari 10km / j dan ain6 lebih besar daripada 5 (menahan bilangan zarah 10um - tahap kabut)


6.2.8. Pilih Teras Butang (Dayakan medan yang paling biasa)


6.2.9. Nyahpilih Semua Butang (Keluarkan semua medan dari pertanyaan)

Setelah menekan butang ini sekurang-kurangnya satu bidang mesti dipilih secara manual untuk memaparkan hasil di peta.


6.2.10. Laksanakan (Jalankan Butang Pertanyaan)

Menekan butang ini diperlukan untuk mengubah pengaturan, parameter (kecuali menekan +/- butang).

Jadual dimuat semula dari awal dengan pratetap baru.



6.2.11. "V" Kotak Centang (Borang Medan Buka / Tutup)

Kotak centang ini digunakan untuk menunjukkan / menyembunyikan pemilih bidang yang akan dipaparkan.



Hasil dalam jadual disusun mengikut Susun penetapan padang. Urutan menyusun dapat diubah dengan menekan header baris (sekali untuk satu arah dua kali untuk arah yang lain).

Sebilangan hasil di lajur menghubungkan ke skrin visualisasi lebih lanjut (hard-coded).


Semasa memaparkan data sejarah untuk peranti, ia harus dibatasi agar tidak memaparkan keseluruhan maklumat sejarah kerana boleh menyebabkan prestasi atau kehabisan memori.


7. Carta Bar.

Carta palang harus dieksekusi dari Bentuk Utama dengan menekan medan tunggal di baris "Bar".

Ia memaparkan bar yang diurutkan dinormalisasi ke nilai maksimum, menunjukkan dari urutan tertinggi hingga terendah.

Ia berguna untuk memeriksa hasil yang ekstrem dan melakukan beberapa tindakan dengan pantas.





Acara Mouse Over akan memaparkan maklumat tambahan untuk peranti.


8. Carta Sejarah.

Carta sejarah dapat dimulakan dari MainForm ketika menekan lajur terpilih di baris "Sejarah" (untuk bidang tunggal).

Untuk berbilang bidang dalam baris "Sejarah" bidang yang diinginkan mesti diperiksa dan pautan "Sejarah" mesti ditekan di lajur "Jalankan".

Hasil sejarah terhad kepada 24 jam terakhir + 24 jam berikutnya (untuk carta penyegaran akhirnya), apabila tiada had ditetapkan.

8.1. Permulaan carta Sejarah


Carta sejarah ketika dibuka dari pautan utama memerlukan inisialisasi seperti hasil lain, ketika dibuka dari pautan tanpa parameter pilihan.

Beberapa bidang boleh dipilih untuk memaparkan pelbagai item. Ia juga boleh ditetapkan dalam Bentuk Penapis Medan.




  1. Tekan semua kotak pilihan yang diperlukan untuk medan yang dipaparkan

  2. Tekan kotak pilihan "Medan Terlihat" untuk menyembunyikan bentuk medan

  3. Tekan butang Execute untuk menjalankan pertanyaan DB dan memaparkan jadual


8.2. Tetapan Pilihan Carta Sejarah

Item yang dijelaskan dari atas dan dari kiri ke kanan (pada tangkapan skrin).

8.2.1. IMEI - (Pilih Peranti untuk memaparkan data sejarah)

IMEImedan mengandungi ID unik peranti atau alias Unik untuk peranti. Dengan nilai * (asterix) ia menunjukkan jadual nilai terkini yang tidak mempunyai arti.

Menetapkan IMEI ke nilai lain, akan menunjukkan data sejarah peranti terpilih.

8.2.2. Min - hadkan nilai minimum bidang pertama

8.2.3. Maksimum - hadkan nilai maksimum bidang pertama

8.2.4. "V" - Tunjukkan / Sembunyikan Borang Medan

8.2.5. Dari: tetapkan tarikh / masa minimum (*)

8.2.6. Ke: tetapkan tarikh / masa maksimum tarikh (*)

8.2.7. "X" Kotak pilihan (Tunjukkan / Sembunyikan Borang Pertanyaan)

8.2.8. "Di mana" Fasal

Klausa untuk mengehadkan hasil data MySQL / MariaDB rentetan pertanyaan tambahan {WHERE part}.

Klausa ini diambil kira untuk membina rentetan QUERY lengkap untuk hasil pangkalan data. Ini mungkin mengehadkan data, masa dan nilai lain dengan mengehadkan jumlah hasil. Nama medan jadual asal (bukan alias) mesti digunakan dalam bidang ini dan sintaks SQL yang sah. Cth.

  1. gps_speed_km> 10 // kelajuan lebih daripada 10km / j

  2. ain5> 3 // ain5 lebih besar daripada 3 (menahan jumlah zarah 2.5um - tahap asap)

  3. gps_speed_km> 10 dan ain6> 5 // kelajuan lebih dari 10km / j dan ain6 lebih besar daripada 5 (menahan bilangan zarah 10um - tahap kabut)


8.2.9. Nyahpilih Semua Butang (Keluarkan semua medan dari pertanyaan)

Setelah menekan butang ini sekurang-kurangnya satu bidang mesti dipilih secara manual untuk memaparkan hasil sejarah.


8.2.10. Laksanakan (Jalankan Butang Pertanyaan)

Menekan butang ini diperlukan untuk mengubah tetapan, parameter (kecuali menunjukkan bidang atau panel pertanyaan). Jadual dimuat semula dari awal dengan pratetap baru.

8.2.11. "V" Kotak Centang (Borang Medan Buka / Tutup)

Kotak centang ini digunakan untuk menunjukkan / menyembunyikan pemilih bidang yang akan dipaparkan.


8.3. Bar Varian: (hanya memaparkan data yang ada)



8.4. Berterusan varian (dengan data yang sama):



Penunjuk tetikus menunjukkan nilai pengukuran dan tarikh / masa.

9. Keserasian penyemak imbas web


Fungsi / Penyemak Imbas WWW

Chrome 72

FireFox 65

Hujung

Opera 58

Peta

+

+

+

+

Bersejarah

+

+ (*)

+

+

Bar

+

+

+

+

Tab

+

+

+

+


* - Firefox tidak menyokong pemilih tarikh / masa (medan teks mesti diedit secara manual menggunakan format tarikh tarikh yang betul).

Internet Explorer tidak disokong (gunakan Hujung sebaliknya)

Penyemak imbas web lain tidak diuji.



10. Penyesuaian Tema

Halaman web berdasarkan pada fail templat umum yang terdapat di "templat" direktori "*. template".

Selain itu setiap jenis halaman mengandungi:

  1. Fail "* .head" yang menyimpan tajuk halaman (pautan, CSS yang diimport, JavaScript Fail, dll. )

  2. Fail "* .foot" yang menyimpan footer halaman (pautan, dll. )


Tema Visualisasi dapat diubah mengikut pilihan pengguna dengan menyalin dan mengubah fail CSS. Fail CSS terletak di "templat / css" direktori. Tema Halaman Web yang berbeza mungkin digunakan untuk membuat dioptimumkan misalnya. mencetak, templat SmartPhones, PAD.


Table paparan - mempunyai bidang yang dapat dipilih untuk memilih fail CSS untuk pengubahsuaian tema yang lengkap (disimpan di "templat / css / tab" direktori).




Map pandangan - tema umum dipilih oleh "peta" taip kotak kombo. Selain itu terdapat fail CSS lalai "templat / css / map.css" yang mengandungi beberapa fungsi tambahan seperti menyembunyikan / mewarnai hasil berdasarkan nilainya. Selebihnya fail CSS ini praktikalnya terhad kepada borang pertanyaan dan medan.


Kebanyakan daripada Platform @City Fail PHP untuk visualisasi terima cssparameter dengan nilai nama fail untuk Tema (tanpa peluasan). Fail mesti terletak di direktori "templates / css" dan namanya peka huruf besar kecil.


Beberapa elemen paparan Tema terletak secara langsung dalam fail located yang terletak di "templat / js" direktori.

Utama @Kota skrip"@ Bandar.js" terletak di direktori atas. Tidak ada kemungkinan pengubahsuaian dalam hal ini lokasi, namun skrip boleh disalin ke "templat / js" direktori dan diubah suai di sana. Penggunaan skrip individu memerlukan kemas kini semua fail tajuk.

11. Kemas kini Algoritma


Beberapa sensor unik mungkin memerlukan fungsi pengiraan khusus.

Tidak ada kemungkinan untuk mengemas kini dan mempertahankan beberapa varian Perisian @City Server, Antara muka PHP bahagian depan, yang akan menyebabkan banyak masalah, versi, kesalahan.

Kaedah terbaik dan termudah untuk mencapainya, adalah mengemas kini fail "overlay" untuk paparan nilai / keterangan yang betul.

Skrip JS asli adalah fail teks terbuka dan mungkin digunakan untuk keperluan pelanggan. Seperti yang dinyatakan dalam bab sebelumnya mereka harus disalin "templat / js" direktori di mana pelanggan mempunyai hak akses untuk pengubahsuaian.


Aspek teknikal dalam pengaturcaraan @Kota sistem bukan merupakan subjek dokumen ini, namun pembangun Web dengan pengetahuan asas HTML dan JS dapat menyesuaikan aplikasi Web Front-end untuk keperluan pelanggan individu.


12. Struktur Pangkalan Data


Pangkalan Data @City dengan nama "IoT" atau "* IoT" dibahagikan dalam jadual (di mana asterix adalah awalan bergantung pada pelayan hosting - jika diperlukan). DataBase dapat dilihat di PHPAdmin (aplikasi web) di pautan http: //% IP% / phpmyadmin




Jadual ditetapkan untuk setiap Peranti (di mana * {asterix} adalah alamat IMEI - ID unik):

Jadual lain:



12.1. Struktur jadual "ithings_" dan "*"

12.2. Perintah peranti (Acara) antrian "* _c" jadual - struktur


Jadual ini adalah barisan acara / arahan untuk setiap peranti dan mempunyai struktur berikut:



12.3. Mengakses hasil dari pangkalan data - Tahap Pertengahan (Membaca Data)


Data dapat diakses tanpa aplikasi Web Front-end. Sistem @City mengandungi skrip dengan fungsi peringkat pertengahan. Hasil dikembalikan dalam format JSON.


12.3.1. Dapatkan status terkini semua peranti

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


Pertanyaan mengembalikan keseluruhan "_peranan" jadual (status semasa semua peranti) dalam Format JSON:

[{ "negara":"", "bandar":"", "benua":"", "negara":"", "wilayah":"", "subkawasan":"", "subkawasan":"", "bandar":"", "daerah":"", "jalan":"", "jalan_nr":"", "item_nr":"", "gps_lat":"0000.0000N", "gps_long":"00000.0000E", "tm":"2019-02-10 12:56:23", "ciptaan":"2019-02-09 18:12:38", "terakhir":"0000-00-00 00:00:00", "acara":"", "pengguna":"", "lulus":"", "imei":"351580051067110", "sn":"", "status":"73000200000f360033026800240000002c002c002dffffffffffffffff5b63000001c1000001c2000000000000000009250a4f0a760a7a0a750a780a7e0000031d032205fc34029b025c025600460", "kod hash":"", "tambah":"", "fwnr":"", "kurang upaya":"", "gsm_nr":"", "penjual":"", "Zon masa":"", "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":"", "acara":"", "keluar1":"0", "keluar2":"0", "keluar3":"0", "keluar4":"0", "keluar5":"0", "keluar6":"0", "keluar7":"0", "keluar8":"0", "keluar9":"0", "keluar10":"1", "keluar11":"0", "keluar12":"0", "keluar13":"0", "keluar14":"0", "keluar15":"0", "keluar16":"0", "dalam1":"0", "dalam2":"0", "dalam3":"0", "dalam4":"0", "dalam5":"0", "dalam6":"0", "dalam7":"0", "dalam8":"0", "dalam9":"0", "dalam10":"0", "pada tahun11":"0", "pada tahun12":"0", "pada13":"0", "pada tahun14":"0", "pada tahun15":"0", "dalam16":"0", "ain1":"3894", "ain2":"51", "ain3":"616", "ain4":"36", "adalam5":"0", "ain6":"44", "ain7":"44", "ain8":"45", "sens1":"0", "sens2":"0", "sens3":"0", "sens4":"0", "sens5":"0", "sens6":"0", "sens7":"0", "sens8":"0", "malang":"255", "malap2":"255", "malap3":"255", "malap4":"255", "malap5":"255", "malap6":"255", "malap7":"255", "dimm8":"255", "int1":"-16776767", "int2":"450", "int3":"", "int4":"", "int5":"", "int6":"0", "teks1":"", "teks2":"", "teks3":"", "teks4":"", "teks5":"", "teks6":"" }]

12.3.2. Dapatkan data Sejarah untuk Peranti

Pertanyaan data sejarah peranti tunggal oleh IMEI nr:

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


Kerana keseluruhan jadual mungkin mengandungi berjuta-juta baris, ia harus dihadkan dengan klausa WHERE agar tidak melayan pelayan.

Parameter url parameter tambahan:

keseronokan - imeijson

imei - IMEI peranti

bidang - medan yang akan dipaparkan dalam hasil (senarai dipisahkan koma)

min - nilai minimum untuk bidang pertama dari senarai

maks - nilai maksimum untuk bidang pertama dari senarai

sataut - bidang untuk mengurut

tm - medan ditambahkan secara automatik ke hasilnya.

where - di mana klausa untuk mengehadkan data


Contoh:

Kami mahu hasil yang berikut

untuk peranti dengan imei=356345080018095

medan tunjuk: ain5, ain6, gps_lat, gps_long

dan had adalam5 dalam jarak ( 1, 10000 ) - mestilah bidang pertama dalam senarai

dan gps mempunyai data yang sah (gps_fix = 3)

dan tarikh / masa (tm) from2019-02-14 23:00:19 to 2019-02-15 00:00:00


Rentetan URL yang dibina:

http: //%IP%/IoT/que.php? func =imeijson& imei =356345080018095& bidang =adalam5, ain6, gps_lat, gps_long& min =1& maks =1000& di mana =gps_fix = 3 dan tm> "2019-02-14 23:00:19" dan tm <"2019-02-15 00:00:00"


Hasil Pertanyaan:

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

12.3.3. Dapatkan senarai peranti - medan tunggal dari status semasa dengan had

Fungsi ini mengembalikan data terhad dari jadual "_ithings"


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



Parameter:

keseronokan - fieldjson

bidang - medan yang akan dipaparkan dalam hasil - imei dan tm secara automatik ditambah

min - nilai minimum untuk padang

maks - nilai maksimum untuk padang


Untuk rentetan pertanyaan di atas, ia dikembalikan hasil daripada ain5, imei, tm bidang:

sekiranya adalam5 berada dalam jangkauan (13,5000)


Hasil Pertanyaan:

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

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

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