@City IoT Cloud Platform




iSys - Sistem calakan IoT Solusi









IoE.Sistem

Daptar eusi

1. Bubuka. 5

1.1 Jinis alat anu didukung. 5

1.2. Jenis produk anu didukung. 5

1.3. Protokol komunikasi anu dirojong 5

1.4. Téhnologi Komunikasi Alat anu dirojong 6

1.5. @City Cloud Server 6

1.5.1. Gerbang server sareng komunikasi 7

1.5.2 HTTP LoRaWAN integrasi 7

1.5.3. Antarmuka payun-8

1.5.3. Hak aksés sérver 8

1.6. Alat pinter 9

1.6.1. CIoT - Alat GSM 9

1.6.3. BAS, BMS, IoT - Alat Ethernet sareng WiFi 9

1.6.2. Devices -LoRaWAN alat 9

1.7. Pilihan Bisnis ka Usaha (B2B) 9

2. @City IoT Fungsionalitas Platform 10

3. Halaman Utama 11

4. Wangun Utama 11

4.1. Lulugu 12

4.1.1. Link Bumi - (muka tabel hasil anu saéstuna) 12

4.1.2. Kotak centang "X" - muka / nutup Formulir Query 12

4.1.3. Kotak centang "V" - muka / nutup Formulir 12

4.1.4. Ikon grafis - tautan kana hasil visualisasi (tiasa dirobih) 12

4.2. Wangun: 12

4.2.1. Kotak centang "X" - muka / nutup sacara lengkep Formulir Query 12

4.2.2. CSS - Pilih Téma Visualisasi 12

4.2.3. Kotak centang Témbong Témbong - nunjukkeun / nyumput Daptar Saringan Lapang 12

4.2.4. Tab: Ngaran Tab pikeun nambihan atanapi ngahapus 12

4.2.5. Tambihkeun / Cabut Tombol - Tambihkeun atanapi cabut tab nganggo nami dina Tab bidang 12

4.2.6. Pilih Tombol Inti 12

4.2.7. Hapus Pilih Sadaya Tombol 12

4.2.7. Pilih Sadaya Tombol 12

4.2.8. Sumputkeun Saring - Nyumputkeun sadayana Formulir 12

4.2.9. Tombol Ngaéksekusi - Robah setélan parameter 13

4.2.10. Kotak centang "V" - kolom show / filter tinggi. 13

4.3. Tab 13

4.4. Eusi Daptar 13

4.4.1. Ngaji - hasil pintonan tipe 13

4.4.2. Salin (+/- tautan) 13

4.4.3. Tautan Cell Méja 13

4.5. Urutan Data 13

4.6. Conto 13

5. Peta 15

5.1. Initialisasi Peta 15

5.2. Setélan Pilihan pikeun pamundut 15

5.2.1. Ngarobih skala MAP (Tingkat Zoom) 16

5.2.2. IMEI (Pilih Widang Alat) 16

5.2.3. Lon, Lat (Bujur, Widang koordinat lintang) 16

5.2.4. Ngarobih Gaya MAP (Téma) 16

5.2.5. KANA Klausa 16

5.2.6. Ngaéksekusi (Run Query Button) 16

5.2.7. Hapus Pilih Sadaya (Hapus sadaya bidang tina pamundut) 17

5.2.8. Kotak centang "V" (Buka / Tutup Wangun Lapang) 17

5.2.9. Kotak centang "X" (Tembongkeun / Nyumputkeun Formulir Permintaan) 17

5.3. Conto 17

6. Tembongkeun Hasil dina Tabel 18

6.1. Initialisasi tabel 18

6.2. Setélan Pilihan pikeun pamundut 19

6.2.1. Susun - milah kolom sareng mesen naék / turun 19

6.2.2. DB / IMEI - Pilih Alat 19

6.2.3. CSS - pilih gaya (Téma Visualisasi) 20

6.2.4. Sawah Anu Ditingali - Tembongkeun / Nyumputkeun Formulir 20

6.2.5. Hapuskeun Kosong - Entong ningalikeun kolom kosong 20

6.2.6. Kotak centang "X" (Tembongkeun / Sumputkeun Formulir Permintaan) 20

6.2.7. Klausa (pikeun watesan data) 20

6.2.8. Pilih Tombol Inti (Aktipkeun kolom paling umum) 20

6.2.9. Hapus pilihan Sadaya Tombol (Hapus sadaya kolom tina pamundut) 20

6.2.10. Ngaéksekusi (Run Query Button) 20

6.2.11. Kotak centang "V" (Buka / Tutup Wangun Lapang) 20

7. Bagan Bar. 21

8. Bagan Sejarah. 22

8.1. Initialisasi bagan Sejarah 22

8.2. Setélan Pilihan tina Bagan Sejarah 23

8.2.1. IMEI - (Pilih Alat pikeun ningalikeun data sajarah) 23

8.2.2. Min - batesan nilai minimal lapangan kahiji 23

8.2.3. Maks - wates nilai maksimal lapangan kahiji 23

8.2.4. "V" - Tembongkeun / Nyumputkeun Formulir Widang 23

8.2.5. Tina: atur tanggal / waktos minimal (*) 23

8.2.6. Ka: nyetél tanggal / waktos maksimal (*) 23

8.2.7. Kotak centang "X" (Tembongkeun / Sumputkeun Formulir Permintaan) 23

8.2.8. "Dimana" Klausa 23

8.2.9. Hapus pilihan Sadaya Tombol (Hapus sadaya kolom tina pamundut) 23

8.2.10. Ngaéksekusi (Run Query Button) 23

8.2.11. Kotak centang "V" (Buka / Tutup Wangun Lapang) 24

8.3. Variasi Bar: (ngan ukur nembongkeun data anu sayogi) 24

8.4. Varian kontinyu (kalayan data anu sami): 24

9. Kasaluyuan browser wéb 25

10. Téma Kustomisasi 26

11. Pembaruan Algoritma 27

12. Struktur Basis Data 28

12.1. Struktur tabel "ithings_" sareng "*" 29

12.2. Paréntah parangkat (Kajadian) antrian "* _c" tabel - struktur 30

12.3. Ngakses hasil tina basis data - Tingkat Tengah (Maca Data) 30

12.3.1. Kengingkeun status ayeuna pikeun sadaya alat 30

12.3.2. Kéngingkeun data Sejarah pikeun Alat 31

12.3.3. Kéngingkeun daptar alat - kolom tunggal tina status ayeuna kalayan watesan 32


1. Bubuka.

@City IoT Cloud Platform didaptarkeun "maya-awan" sistem pikeun konsumén individu. Platform henteu tiasa dibagi sareng ngan ukur hiji nasabah anu ngagaduhan aksés kana server fisik atanapi virtual (VPS atanapi server khusus). Palanggan tiasa milih salah sahiji puluhan pusat data di Éropa atanapi di dunya.

1.1 Jinis alat anu didukung.

Platform @City IoT didaptarkeun pikeun nuturkeun produk iSys.PL



1.2. Jenis produk anu didukung.

@City (eCity) Cloud IoT Platform mangrupikeun sistem ukuran pikeun produk IP IoT (disebat babarengan salaku @City Hardware atawa Alat CioT ):


1.3. Protokol komunikasi anu dirojong

Platform @City IoT ngadukung protokol ieu pikeun komunikasi:

Data ngirim ti controller kana cloud server sareng sabalikna anu énkripsi dina format binér anu unik pikeun ukuran data anu paling handap sareng kaamanan anu ningkat. Unggal pasangan ngagaduhan konci énkripsi unikna pikeun otorisasina alat, mariksa validitas data, jst.


Pikeun alat sanés eHouse / eCity kami tiasa nyayogikeun algoritma enkripsi masing-masing ( "C" kode sumber) pikeun masing-masing pasangan pikeun microprocessor ngajaga data sateuacan komunikasi.

Dina hal ieu data leres-leres aman nalika komunikasi dua arah ngalangkungan média komunikasi umum (internét, Air, jst. ).


1.4. Didukung Téhnologi Komunikasi Parangkat

Platform @City IoT ngadukung:


@City IoT Platform didaptarkeun pikeun alat / titik:


1.5. @City Cloud Server

Parangkat lunak @City dianggo dina VPS dumasar Linux (Virtual Private Server) atanapi Dedicated Server di sisi internét, gumantung kana kinerja anu dipénta Server (disebat engké Server):


Sababaraha varian VPS aya gumantung:


Puluhan Dedicated server aya gumantung:


Platform @City IoT didedikasikan pikeun palanggan tunggal:


Kusabab éta henteu tiasa dibagi Server antara pelanggan, éta mempermudah aksés kaamanan sareng masalah kinerja. Kusabab alesan ieu ngan nasabah tanggel waler pikeun kaamanan anu efektif, stabilitas, épisién, throughput data, jsb. Dina hal kinerja henteu cekap, palanggan tiasa mésér rencana anu langkung luhur (VPS atanapi Dedicated Server), langkung optimal pikeun fungsionalitas sareng kinerja anu dipiharep.

Dina kasus-kasus khusus "Cloud to cloud" komunikasi panginten tiasa dilaksanakeun pikeun globalisasi sareng sentralisasi data ka daérah anu langkung ageung tibatan awan multi-nasabah.

1.5.1. Gerbang server sareng komunikasi

Komunikasi @City Server direalisasikeun dumasar kana aplikasi tingkat handap pikeun maksimalisasi kinerja.

Fitur utama aplikasi @City Server nyaéta:

Parangkat lunak @City Server sami kanggo masing-masing pangguna sareng teu tiasa disayogikeun pikeun palanggan anu béda.

1.5.2 HTTP LoRaWAN integrasi

Controllers LoRaWAN diintegrasikeun sareng cloud @City ngalangkungan antarbeungeut HTTP (webhooks) anu sayogi dina jaringan / server aplikasi LoRaWAN.

Sababaraha jinis jaringan / aplikasi server anu dirojong:

TTN (waktos terbatas "Dina Air" sareng jumlah maksimum paréntah anu dikirim ka supir sareng henteu ngadukung pamutahiran firmware)

LoraWAN-Stack (Meryogikeun hosting dina alat fisik kalayan aksés internét).

LoraServer.Io (Meryogikeun hosting dina alat fisik anu nganggo aksés internét - ngan ukur ngirim data ka sérver sareng henteu ngadukung ningkatkeun firmware)



Cloud @City Cloud pikeun pangendali LoRaWAN dibagi dina cara anu sami sareng antar muka anu sanés. Éta dibahas dina bab saméméhna.

1.5.3. Antarmuka payun-tungtung

Antarmuka payun-tungtung diwujudkeun ku skrip PHP pikeun ngekstrak data khusus tina @City Cloud Database. Éta nganggo mékanisme milarian anu élastis pisan, dumasar kana pamundut SQL asli pikeun ngawatesan data anu dipikahoyong. Antarmuka nyayogikeun hasil pamundut dina format JSON pikeun panyandian sareng pamrosésan salajengna ku JavaScript Front-end Web "application".

Antarbeungeut hareup-hareup anu asli sami pikeun masing-masing pangguna sareng teu tiasa disayogikeun pikeun palanggan anu béda.

Antarmuka overlay tiasa didamel ku staf kami atanapi dina kerjasama pikeun mastikeun kustomisasi pikeun konsumén.

1.5.3. Hak aksés sérver

Hak aksés palanggan (kana Server fisik) diwatesan.

Aksés file pikeun diréktori "témplat" (file téks asli - .txt, .js, .css, .html):

Hak aksés séjén:


iSys - Staf Sistem calakan - ngagaduhan aksés henteu lengkep pikeun sérver sérp anu kalebet akun root sareng aksés DB pikeun pangropéa.

Dina kaayaan anu tangtu, iSys tiasa masihan hak terbatas tambahan pikeun nasabah (skrip PHP, file) saatos mariksa kode sumber, ngajalankeun tés, upami éta henteu mangaruhan kaamanan sistem, stabilitas sareng kinerja anu saéstuna.


1.6. Alat pinter

1.6.1. Alat CIoT - GSM

Alat-alat kami ngandung mikrokontroler sareng modul GSM / GPS / GNSS (2G..4G, NBIoT, CATM1) pikeun komunikasi. Microcontroller ngandung bootloader énkripsi pikeun pamutahiran firmware OTA anu aman. Ieu ngamungkinkeun nyiptakeun seueur varian sistem anu sami "Alat CIoT Smart".


1.6.3. BAS, BMS, IoT - Alat Ethernet sareng WiFi


Kontroler Ethernet sareng WiFi ngamungkinkeun komunikasi berbasis IP ka sistem (tanpa ngeusi batre pikeun mindahkeun data ka operator GSM). Alat ieu ogé énkripsi bootloader sareng alat-alat panginten tiasa diénggalan ngalangkungan antar muka aslina. Pikeun WiFi éta gaduh OTA firmware ningkatkeun ti server utama


1.6.2. IoT - Alat LoRaWAN

LoRaWAN ngaktipkeun transmisi data jarak anu jauh pisan (dugi ka sakitar. 15km). Kisaran ieu gumantung kana kagancangan pangiriman data, jumlah data, urbanisasi daérah sareng épisiénsi jalur radio alat-alatna.

Alat-alat urang kalebet mikrokontroler sareng modul LoRaWAN pikeun komunikasi. Mikrokontroler ngandung bootloader énkripsi pikeun update parangkat lunak OTA anu aman. Ieu ngamungkinkeun anjeun nyiptakeun sababaraha variasi sistem dumasar kana anu sami "IoT smart device". Alat-alat éta beroperasi dina band terbuka ISM tanpa biaya langganan tambahan. Perlu nganggo LoRaWAN Gateways pikeun nutupan sakumna daérah kalayan aksés kana Internét. Dina hal gerbang LoRaWAN anu aya dina kisaran alat (ngonpigurasi pikeun server TTN), dimungkinkeun pikeun ngirim informasi ngalangkungan aranjeunna. Ngaronjatkeun firmware peryogi jaringan / aplikasi LoRaWAN sérver nyalira sareng rentang anu saé pikeun komunikasi.

1.7. Pilihan Usaha kana Usaha (B2B)


Aya sababaraha pilihan pikeun bisnis sareng kerjasama:

2. @City IoT Fungsionalitas Platform

Platform @City ngadukung témplat Front-End anu tiasa disesuaikan pikeun visualisasi data, pamundut, ngawatesan sareng ngolah (Data ayeuna / riwayat):


Hareup-Tungtung pangguna tiasa diaksés ngalangkungan IP statik atanapi domain redirection DNS / subdomain / file upami sayogi.


Instalasi conto & Demo (Éta ngan ukur diaktipkeun pikeun calon nasabah).

Mangga wartosan kami nalika rék nguji éta - pikeun ngaktipkeun aksés umum kana platform.

Éta tiasa meryogikeun IP statik komputer jauh pikeun ngaktipkeun komunikasi kana platform @City.


3. Halaman Utama

Halaman utama dibiarkan kosong ngahaja pikeun alesan kaamanan: http: //% YourIP% / IoT /

Éta panginten tiasa diaktipkeun sareng diédit sareng ngandung tautan kana sadaya jasa anu sayogi tina @City IoT Platform upami diperyogikeun


4. Wangun utami

Formulir Utami dimaksudkeun pikeun nyiptakeun prasetél sareng tab anyar: http: //%IP%/IoT/que.php

Ieu mangrupikeun bentuk awal pikeun nyiptakeun hasil, tampilan sareng tab pikeun tiap konfigurasi




Pedaran (Ti luhur sareng kénca ka katuhu)

4.1. Lulugu

4.1.1. Link Bumi - (muka tabel hasil saleresna)

4.1.2. "X" kotak centang - muka / nutup Formulir Query

4.1.3. "V" kotak centang - muka / nutup Formulir Widang

4.1.4. Ikon grafis - tautan kana hasil visualisasi (tiasa diédit)


4.2. Formulir:

4.2.1. "X" kotak centang - muka / nutup sadayana Formulir Query

4.2.2. CSS - Pilih Téma Visualisasi

Ngarobih Visualisasi Téma file CSS kedah aya di "témplat / css /" diréktori - didaptarkeun sacara otomatis.

4.2.3. Widang Anu Ditingali kotak centang - nunjukkeun / nyumput Daptar Saringan Lapang

4.2.4. Tab: Ngaran Tab pikeun nambihan atanapi ngahapus

4.2.5. Tambihkeun / Cabut Tombol - Tambihkeun atanapi cabut tab nganggo nami dina Tab sawah

4.2.6. Pilih Inti Tombol

Pilih lapangan utama anu katingali dina tabel. Ieu parantos dianyarkeun otomatis.

4.2.7. Hapuskeun Sadayana Tombol

Hapus pilihan sadayana bidang (kedah dituturkeun ku milih sababaraha na sacara manual)

4.2.7. Pilih Sadayana Tombol

Pilih sadaya bidang (kedah dituturkeun sareng batal pilih sababaraha bidangna sacara manual)

4.2.8. Sumputkeun Saringan - Nyumputkeun sadayana Formulir

Ieu sami sareng sadaya (X) kotak centang

4.2.9. Laksanakeun Tombol - Robah setélan parameter

4.2.10. "V" kotak centang - acara / médan saringan tinggi.


4.3. Tab

Tab anu didamel sacara individual nganggo nami sareng prasetél (disimpen dina cfg / tabs.cfg file).

File saleresna ngandung nami sareng URL (dipisahkeun ku tab char).


4.4. Eusi Tabél

Nembongkeun sadaya bidang anu diwatesan ku Saringan Sawah.


Widang dina tabel:

4.4.1. Lumpat - pintonan tipe hasil

peta- hasil pemetaan dina peta (hiji atanapi sababaraha lapangan tiasa dipilih)

sajarah - bagan sajarah (hiji atanapi sababaraha lapangan tiasa dipilih)

tab - nembongkeun méja (naon waé kombinasi bidang tiasa dipilih)

palang - ngan hiji lapangan ditampilkeun dina bagan batang

Nalika mencét salah sahiji nilaina éta bakal muka hasil énggal sareng kolom anu kapilih (kanggo jajar ayeuna).


4.4.2. Salin (+/- tautan)

Nambahkeun / miceun Tab kalayan nami parantos disetél Tab sawah. Éta ngan ukur nganggo lapangan anu dipilih dina baris anu sami dina tabel.


4.4.3. Méja Cell Tautan

Mencet nami lapangan anu sanés bakal ngamimitian Data Visualisasi kolom anu dipilih pikeun baris anu dipilih.


4.5. Urutan Data


Urutan kolom ditampilkeun nyaéta sapertos urutan na dina bentuk lapangan (kumaha waé ogé tm lapangan sok kirimkeun ka tungtung téks). Urutan ieu ngan ukur tiasa dirobih ku éditan langsung parameter URL (bagian urutan kolom).


4.6. Conto

Salaku conto: Setting Tab with Nyukcruk Aset ngaranan sareng ngandung peta kalayan waktos sareng kagancangan dina peta

Sadaya pedaran ngarujuk kana baris dimana "Map" téks aya dina "Lumpat" kolom.

  1. Lebetkeun nami "Nyukcruk Aset" di Tab lapangan (tanpa tanda petik)

  2. Pastikeun sadaya kolom teu dipilih dina baris

  3. pilih tm, gps_speed_km ngan ukur dina barisan

  4. pencét + tombol dimana dina urutan






5. Peta

Peta tiasa diluncurkeun ti MainForm kalayan pre-konfigurasi


5.1. Initialisasi Peta

Inisialisasi peta dilakukeun sacara manual nalika dilaksanakeun langsung kalayan tautan: > http: //%IP%/IoT/maps.php


  1. Pamaké kedah Pilih pilihan sadaya bidang (Pencét Ngaleungitkeun Tombol)

  2. Pencét sababaraha kotak centang pikeun kolom anu ditampilkeun (mis. Ain5 (pikeun tingkat Smog) jeung tm (kanggo ngukur tanggal / waktos)

  3. pencét "V" kotak centang pikeun nyumputkeun bentuk lapangan

  4. pencét Laksanakeun tombol pikeun ngajalankeun pamundut DB sareng nampilkeun inpormasi ayeuna tina sadaya sénsor / alat

  5. Peta kalayan data diénggalan saatos 30 detik atanapi langkung.


5.2. Setélan Pilihan pikeun pamundut

Setélan dijelaskeun ti kénca ka katuhu (dina screenshot luhur).

5.2.1. Ngarobih skala MAP (Tingkat Zoom)

  1. Tingkat zum tiasa dirobih nganggo tombol (+/-) pikeun skala (current_scale * 2 atanapi current_scale / 2). Mencet salah sahiji tombol ieu bakal otomatis ngarobih skala.

  2. Cara séjén nyaéta milih Zum Level di Zum Widang Combo Box teras pencét Laksanakeun kancing. Dina hal ieu sakabeh Tampilan / Peta dimuat deui sareng disegerkeun (peryogi sakedap nalika inisialisasi).

5.2.2. IMEI (Pilih Widang Alat)

IMEImédan ngandung alat unik ID atanapi Unik landian pikeun alat. Setélan standar nyaéta * (tanda asterisk) anu nunjukkeun nilai-nilai terakhir sareng geolokasi pikeun unggal alat.

Nyetél IMEI kana nilai sanés, bakal nunjukkeun data sajarah alat anu dipilih. Éta ngan ukur ngagaduhan akal pikeun sélulér sareng sélular anu bergerak, upami henteu hasilna bakal tumpang tindih dina peta dina posisi anu sami.


5.2.3. Lon, Lat (Bujur, Widang koordinat lintang)

Atur posisi tengah peta. Widang ieu disetél ka posisi kursor nalika tombol mouse dipencet dina peta.


5.2.4. Modifikasi MAP Style (Téma)

Gaya peta / téma tiasa dipilih Map Widang ComboBox (contona Poék, Abu, Topografi).

Rupa-rupa téma peta mungkin gaduh tingkat zum maksimal anu béda sahingga tiasa ngalaksanakeun Téma anu saé pikeun ningkatkeun skala peta.


5.2.5. KANA Klausa

Klausa anu dianggo pikeun string pamundut tambahan {WHERE part} kanggo MySQL / MariaDB.

Klausa ieu diperhatoskeun pikeun nyusun string QUERY lengkep pikeun hasil database. Éta tiasa ngawatesan data, waktos sareng nilai sanés ku ngabatesan jumlah hasil. Ngaran méja méja asli (sanés landihan) kedah dianggo dina kolom ieu. Misalna.

  1. gps_speed_km> 10 // kagancangan langkung ti 10km / jam

  2. ain5> 3 // ain5 langkung ageung tibatan 3 (nahan partikel 2.5um diitung - tingkat smog)

  3. gps_speed_km> 10 sareng ain6> 5 // kagancangan langkung ti 10km / h sareng ain6 langkung ageung tibatan 5 (nahan jumlah partikel 10um - tingkat asap)


5.2.6. Laksanakeun (Ngajalankeun Tombol Permintaan)

Pencét tombol ieu diperyogikeun pikeun ngarobih setélan, parameter (kecuali mencét +/- kancing).

Peta dimuat ti mimiti ku prédépét anyar.

Peta henteu dimuat pisan, upami teu aya data pikeun pamundut ayeuna.

5.2.7. Hapuskeun Sadayana (Cabut sadaya bidang tina pamundut)

Saatos mencét tombol ieu sahenteuna hiji lapangan kedah dipilih sacara manual pikeun nembongkeun hasil dina peta.


5.2.8. "V" Kotak centang (Buka / Tutup Bentuk Lapang)

Kotak centang ieu dianggo pikeun ningalikeun / nyumputkeun pamilih lapangan pikeun ditampilkeun.


5.2.9. "X" Kotak centang (Tembongkeun / Nyumputkeun Formulir Permintaan)

Kotak centang ieu ngamungkinkeun nyumputkeun sadayana Formulir kecuali ( +/- kancing)


Hasil dina peta teras teras-terasan disegerkeun sareng diénggalan ku nilai-nilai énggal

5.3. Conto

Hasil Eg Smog (Sensor dipasang dina mobil): Partikel tingkat 2,5um asap (Ain5), Laju (gps_speed_km), Tanggal / Waktos (tm), peta (2 - topografi), tingkat zoom 16,

Klausa dimana:

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

// GPS = hasil 3D anu leres & tanggal = 2019-02-18 & kagancangan> 0 km / jam



6. Tembongkeun Hasil dina Méja

Tembongkeun hasilna dina tabél.

Hurung "Wangun utami" pencét "méja" item, saatos milih sababaraha bidang pikeun nembongkeun tabel anu parantos dikonfigurasi




6.1. Initialisasi tina méja

Nalika tabel kabuka tina tautan http: //%IP%/IoT/que.php? func = tab éta peryogi inisialisasi setélan sateuacanna.

Anjeun tiasa milih lapangan anu katingali (ku mencét "Sawah Anu Katémbong" ) kotak centang.



  1. Pencét sadaya kotak centang anu diperyogikeun pikeun bidang anu ditampilkeun

  2. Pencét kotak centang "Sawah Anu Katémbong" pikeun nyumputkeun bentuk lapang

  3. Pencét tombol Laksanakeun pikeun ngajalankeun query DB sareng méja tampilan


6.2. Setélan Pilihan pikeun pamundut

Setélan dijelaskeun ti kénca ka katuhu (dina screenshot).

6.2.1. Susun - milah lapangan sareng mesen naék / turun

Widang sortir sarimbag sareng header kolom anu mencét.

6.2.2. DB / IMEI - Pilih Alat

IMEImédan ngandung alat unik ID atanapi Unik landian pikeun alat. Kalayan nilai kosong nunjukkeun tabel tina nilai-nilai anu pang anyarna.

Nyetél IMEI kana nilai sanés, bakal nunjukkeun data sajarah alat anu dipilih.


6.2.3. CSS - pilih gaya (Téma Visualisasi)

6.2.4. Sawah Anu Katémbong - Tembongkeun / Nyumputkeun Widang Widang

6.2.5. Hapuskeun Kosong - Entong ningalikeun kolom kosong

6.2.6. "X" Kotak centang (Tembongkeun / Nyumputkeun Formulir Permintaan)

6.2.7. Dimana Klausa (pikeun watesan data)

Ieu sufiks pikeun string pamundut tambihan MySQL / MariaDB {WHERE part}

Klausa ieu diperhatoskeun pikeun ngawangun string QUERY lengkep pikeun hasil database. Éta tiasa ngawatesan data, waktos sareng nilai sanés ku ngabatesan jumlah hasil. Ngaran méja méja asli (sanés landihan) kedah dianggo dina kolom ieu. Misalna.

  1. gps_speed_km> 10 // kagancangan langkung ti 10km / jam

  2. ain5> 3 // ain5 langkung ageung tibatan 3 (nahan partikel 2.5um diitung - tingkat smog)

  3. gps_speed_km> 10 sareng ain6> 5 // kagancangan langkung ti 10km / h sareng ain6 langkung ageung tibatan 5 (nahan jumlah partikel 10um - tingkat asap)


6.2.8. Pilih Inti Tombol (Aktipkeun kolom paling umum)


6.2.9. Hapuskeun Sadayana Tombol (Hapus sadaya bidang tina pamundut)

Saatos mencét tombol ieu sahenteuna hiji lapangan kedah dipilih sacara manual pikeun nembongkeun hasil dina peta.


6.2.10. Laksanakeun (Ngajalankeun Tombol Permintaan)

Pencét tombol ieu diperyogikeun pikeun ngarobih setélan, parameter (kecuali mencét +/- kancing).

Méja dimuat deui ti mimiti ku prédét anyar.



6.2.11. "V" Kotak centang (Buka / Tutup Bentuk Lapang)

Kotak centang ieu dianggo pikeun ningalikeun / nyumputkeun pamilih lapangan pikeun ditampilkeun.



Hasil dina tabel diurut numutkeun Susun setting lapangan. Urutan asihan tiasa dirobih ku mencét header barisan (sakali pikeun hiji arah dua kali pikeun arah anu sanés).

Sababaraha hasil dina kolom ngahubungkeun ka layar visualisasi salajengna (dikodekeun keras).


Nalika ningalikeun data sajarah pikeun parangkat éta kedah diwatesan supados henteu nembongkeun inpormasi sajarah sadayana sabab éta tiasa nyababkeun kinerja atanapi kaluar tina masalah mémori.


7. Bagan Bar.

Bagan batang kedah dieksekusi tina Formulir Utama ku mencét hiji kolom dina baris "Bar".

Éta méréskeun bar anu diurutkeun anu dinormalisasi dugi ka nilai maksimal, nunjukkeun tina urutan anu luhur dugi ka anu paling handap.

Éta mangpaat pikeun mariksa gancang hasil ekstrim sareng nyandak sababaraha tindakan.





Acara Mouse Over bakal nembongkeun inpormasi tambihan pikeun alatna.


8. Bagan Sejarah.

Bagan sajarah tiasa diawalan tina MainForm nalika mencét kolom anu dipilih dina baris "Sejarah" (pikeun kolom tunggal).

Kanggo sababaraha bidang dina baris "Sejarah" baris anu dipikahoyong kedah diparios sareng tautan "Sejarah" kedah diteken dina kolom "Run".

Hasil sajarah diwatesan kana 24 jam terakhir + 24 jam salajengna (pikeun grafik anu akhirna disegerkeun), nalika teu aya wates anu disiapkeun.

8.1. Initialisasi bagan Sejarah


Bagan sajarah nalika dibuka tina tautan utami meryogikeun inisialisasi salaku hasil anu sanés, nalika kabuka tina tautan tanpa parameter karesep.

Sababaraha widang tiasa dipilih pikeun mésér sababaraha barang. Éta ogé tiasa disetél dina Field Filter Form.




  1. Pencét sadaya kotak centang anu diperyogikeun pikeun bidang anu ditampilkeun

  2. Pencét kotak centang "Sawah Anu Katémbong" pikeun nyumputkeun bentuk lapang

  3. Pencét tombol Laksanakeun pikeun ngajalankeun pamundut DB sareng nunjukkeun tabél


8.2. Setélan Pilihan tina Bagan Sejarah

Barang dijelaskeun ti luhur sareng ti kénca ka katuhu (dina screenshot).

8.2.1. IMEI - (Pilih Alat pikeun ningalikeun data sajarah)

IMEImédan ngandung alat unik ID atanapi Unik landian pikeun alat. Kalayan nilai * (asterix) nunjukkeun tabel tina nilai-nilai anu pang anyarna anu teu aya akal.

Nyetél IMEI kana nilai sanés, bakal nunjukkeun data sajarah alat anu dipilih.

8.2.2. Mnt - ngawatesan nilai minimal lapangan kahiji

8.2.3. Max - batesan nilai maksimal lapangan kahiji

8.2.4. "V" - Tembongkeun / Nyumputkeun Widang Widang

8.2.5. Ti: atur tanggal / waktos minimal (*)

8.2.6. Ka: atur tanggal / waktos maksimal (*)

8.2.7. "X" Kotak centang (Tembongkeun / Nyumputkeun Formulir Permintaan)

8.2.8. "Dimana" Klausa

Klausa pikeun ngawatesan hasil data MySQL / MariaDB string query tambihan {WHERE part}.

Klausa ieu diperhatoskeun pikeun nyusun string QUERY lengkep pikeun hasil database. Éta tiasa ngawatesan data, waktos sareng nilai sanés ku ngabatesan jumlah hasil. Ngaran méja méja asli (sanés landihan) kedah dianggo dina kolom ieu sareng sintaksis SQL anu sah. Misalna.

  1. gps_speed_km> 10 // kagancangan langkung ti 10km / jam

  2. ain5> 3 // ain5 langkung ageung tibatan 3 (nahan partikel 2.5um diitung - tingkat smog)

  3. gps_speed_km> 10 sareng ain6> 5 // kagancangan langkung ti 10km / h sareng ain6 langkung ageung tibatan 5 (nahan jumlah partikel 10um - tingkat asap)


8.2.9. Hapuskeun Sadayana Tombol (Hapus sadaya bidang tina pamundut)

Saatos mencét tombol ieu sahenteuna hiji lapangan kedah dipilih sacara manual pikeun nembongkeun hasil sajarah.


8.2.10. Laksanakeun (Ngajalankeun Tombol Permintaan)

Pencét tombol ieu diperyogikeun pikeun ngarobih setélan, parameter (kecuali nunjukkeun bidang atanapi panel pamundut). Méja dimuat deui ti mimiti ku prédét anyar.

8.2.11. "V" Kotak centang (Buka / Tutup Bentuk Lapang)

Kotak centang ieu dianggo pikeun ningalikeun / nyumputkeun pamilih lapangan pikeun ditampilkeun.


8.3. Bar Varian: (ngan ukur nembongkeun data anu sayogi)



8.4. Terus-terusan varian (kalayan data anu sami):



Nilai tampilan mouse pointer tina ukuran sareng tanggal / waktos.

9. Kasaluyuan browser wéb


Fungsi / WWW Browser

Chrome 72

FireFox 65

Tepi

Opera 58

Peta

+

+

+

+

Sejarah

+

+ (*)

+

+

Bar

+

+

+

+

Tab

+

+

+

+


* - Firefox henteu ngadukung pamilih tanggal / waktos (bidang téks kedah diédit sacara manual nganggo format waktos tanggal anu pas).

Internet Explorer didukung (dianggo Tepi tibatan)

Paramban wéb sanésna henteu diuji.



10. Téma Kustomisasi

Halaman wéb dumasar kana file témplat umum anu aya di "témplat" diréktori "* .pikir".

Salaku tambahan unggal jenis halaman ngandung:

  1. file "* .head" anu nyimpen header halaman (tautan, CSS impor, JavaScript Payil, jst. )

  2. file "* .foot" anu nyimpen footer halaman (tautan, jst. )


Téma Visualisasi tiasa dirobih numutkeun kahoyong pangguna ku cara coping sareng ngarobih file CSS. File CSS aya di "témplat / css" diréktori. Téma Halaman Wéb anu Béda tiasa dianggo pikeun ngaoptimalkeun contona. percetakan, SmartPhones, témplat PADs.


Table pintonan - gaduh lapangan anu tiasa dipilih pikeun milih file CSS kanggo modifikasi lengkep téma (disimpen dina "témplat / css / tab" diréktori).




Map pintonan - téma umum dipilih ku "peta" ngetik kotak kombo. Salaku tambahan aya file CSS standar "témplat / css / map.css" anu ngandung sababaraha fungsi tambahan sapertos nyumput / ngawarnaan hasil dumasar kana nilaina. Sesa file CSS ieu sacara praktis dugi ka pamundut sareng bentuk lapangan.


Kaseueuran @City Platform File PHP pikeun visualisasi nampi cssparameter kalayan nilai nami file pikeun Téma (tanpa penyuluhan). File kedah aya dina diréktori "template / css" sareng namina sénsitip bisi.


Sababaraha elemen tampilan Téma ayana langsung dina JavaScript file anu aya di "témplat / js" diréktori.

Utama @KotaBandung naskah"@ City.js" perenahna dina diréktori luhur. Teu aya kamungkinan modifikasi dina ieu lokasi, kumaha naskahna tiasa disalin kana "témplat / js" diréktori sareng dirobih didinya. Pamakéan skrip masing-masing peryogi ngamutahirkeun sadaya file lulugu.

11. Pembaruan Algoritma


Sababaraha sensor unik tiasa meryogikeun fungsi perhitungan khusus.

Teu aya kamungkinan pikeun ngapdet sareng ngajaga sababaraha jinis Software Parangkat Lunak @City, Antarmuka PHP payun-tungtung, anu bakal nyababkeun seueur masalah, vérsi, kasalahan.

Cara anu pangsaéna sareng paling gampang pikeun ngahontal éta, nyaéta ngamutahirkeun over "overlay" file pikeun tampilan anu leres tina nilai / katerangan.

Skrip JS asli mangrupikeun file téks kabuka sareng tiasa diadopsi pikeun kabutuhan pelanggan. Sakumaha nyatakeun dina bab samemehna aranjeunna kedah disalin "témplat / js" diréktori dimana palanggan gaduh hak aksés pikeun modifikasi.


Aspék téknis dina program tina @KotaBandung sistem sanés poko tina dokumén ieu, tapi pamekar Wéb anu gaduh pengetahuan dasar ngeunaan HTML sareng JS tiasa ngarobih aplikasi Wéb Front-end pikeun kabutuhan pelanggan masing-masing.


12. Struktur Basis Data


@City Database kalayan nami "IoT" atawa "* IoT" dibagi dina tabel (dimana asterix nyaéta awalan gumantung kana hosting server - upami diperyogikeun). DataBase bisa dititénan dina PHPAdmin (aplikasi wéb) dina tautan http: //% IP% / phpmyadmin




Tables Set kanggo unggal Alat (dimana * {asterix} nyaéta alamat IMEI - unik ID):

Tabél séjén:



12.1. Struktur tabel "ithings_" sareng "*"

12.2. Paréntah parangkat (Kajadian) antrian "* _c" tabel - struktur


Tabel ieu mangrupikeun antrian acara / paréntah pikeun unggal alat sareng ngagaduhan struktur ieu:



12.3. Ngaksés hasil tina basis data - Tingkat Tengah (Maca Data)


Data tiasa diakses tanpa aplikasi Wéb Front-end. Sistem @City ngandung skrip kalayan fungsi tingkat sedeng. Hasilna dipulangkeun dina format JSON.


12.3.1. Kengingkeun status ayeuna pikeun sadaya alat

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


Patarosan mulih sadayana "_ithings" tabel (status ayeuna sadaya alat) dina JSON Format:

[{ "nagara":"", "kota":"", "buana":"", "nagara":"", "daérah":"", "subregion":"", "subsubregion":"", "kota":"", "kabupatén":"", "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", "kajadian":"", "pangguna":"", "ngaliwat":"", "imei":"351580051067110", "sn":"", "status":"73000200000f360033026800240000002c002c002dffffffffffffffffff5b63000001c1000001c2000000000000000009250a4f0a760a7a0a750a780a7e0000031d032205fc34029b025c025600460eb305320000", "hash_code":"", "addr":"", "fwnr":"", "ditumpurkeun":"", "gsm_nr":"", "jelema nu ngajual":"", "zona waktos":"", "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":"", "kajadian":"", "kaluar1":"0", "kaluar2":"0", "kaluar3":"0", "kaluar4":"0", "kaluar5":"0", "kaluar6":"0", "kaluar7":"0", "kaluar8":"0", "kaluar9":"0", "kaluar10":"1", "kaluar11":"0", "kaluar12":"0", "kaluar13":"0", "kaluar14":"0", "kaluar15":"0", "kaluar16":"0", "in1":"0", "di2":"0", "di3":"0", "di4":"0", "di5":"0", "di6":"0", "di7":"0", "di8":"0", "di9":"0", "di10":"0", "di11":"0", "di12":"0", "di13":"0", "di14":"0", "di15":"0", "dina16":"0", "ain1":"3894", "ain2":"51", "ain3":"616", "ain4":"36", "adi5":"0", "ain6":"44", "ain7":"44", "ain8":"45", "sens1":"0", "sens2":"0", "sens3":"0", "sens4":"0", "sénsor5":"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", "téks1":"", "téks2":"", "téks3":"", "téks4":"", "téks5":"", "téks6":"" }]

12.3.2. Kéngingkeun data Sejarah pikeun Alatna

Data sajarah pamundut tina hiji alat ku IMEI nr:

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


Kusabab tabel lengkepna tiasa ngandung jutaan jajar maka éta kedah diwatesan ku WHERE klausa supados henteu ngagantungkeun server.

Parameter tambahan parameter url:

func - imeijson

imei - IMEI alat

sawah - Widang pikeun ditampilkeun dina hasil (koma dipisahkeun daptar)

mnt - nilai minimum pikeun kolom kahiji tina daptar

maks - nilai maksimum pikeun kolom kahiji tina daptar

satawat - sawah pikeun diurutkeun

tm - Widang sacara otomatis ditambihan kana hasil.

where - dimana klausa pikeun ngaleutikan data


Conto:

Kami hoyong kéngingkeun hasilna

pikeun alat sareng imei=356345080018095

acara lapangan: ain5, ain6, gps_lat, gps_long

sareng had adi5 dina rentang ( 1, 10000 ) - kedah janten lapangan kahiji dina daptar

jeung GPS gaduh data anu leres (gps_fix = 3)

sareng tanggal / waktos (tm) from2019-02-14 23:00:19 to 2019-02-15 00:00:00


Struktur URL diwangun:

http: //%IP%/IoT/que.php? func =imeijson& imei =356345080018095& sawah =adi5, ain6, gps_lat, gps_long& mnt =1& maks =1000& dimana =gps_fix = 3 sareng tm> "2019-02-14 23:00:19" sareng tm <"2019-02-15 00:00:00"


Hasil Pamundut:

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

12.3.3. Kéngingkeun daptar alat - kolom tunggal tina status ayeuna kalayan watesan

Fungsi ieu mulihkeun data anu kawates tina tabel "_ithings"


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



Parameter:

func - Fieldjson

sawah - lapangan pikeun ditampilkeun dina hasil - imei jeung tm sacara otomatis ditambihan

mnt - nilai minimum pikeun lapangan

maks - nilai maksimum pikeun lapangan


Pikeun string query di luhur éta mulih hasil tina ain5, imei, tm sawah:

upami adi5 aya dina jangkauan (13.5000)


Hasil Pamundut:

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

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

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