@City IoTแพลตฟอร์มคลาวด์




iSys - ระบบอัจฉริยะIoTโซลูชั่น









IoE.Systems

สารบัญ

1. บทนำ. 5

1.1 ประเภทอุปกรณ์ที่รองรับ 5

1.2. ประเภทผลิตภัณฑ์ที่รองรับ 5

1.3. โปรโตคอลการสื่อสารที่รองรับ 5

1.4. เทคโนโลยีการสื่อสารที่รองรับของอุปกรณ์ 6

1.5. @ ซิตี้คลาวด์เซิร์ฟเวอร์ 6

1.5.1. เกตเวย์เซิร์ฟเวอร์และการสื่อสาร 7

1.5.2 การรวม HTTP LoRaWAN 7

1.5.3. อินเทอร์เฟซส่วนหน้า 8

1.5.3. สิทธิ์การเข้าถึงเซิร์ฟเวอร์ 8

1.6. อุปกรณ์สมาร์ท 9

1.6.1 CIoT - อุปกรณ์ GSM 9

1.6.3. BAS, BMS, IoT - อุปกรณ์อีเธอร์เน็ตและ WiFi 9

1.6.2. IoT -LoRaWAN อุปกรณ์ 9

1.7. ตัวเลือก Business to Business (B2B) 9

2. @City IoT Platform ฟังก์ชั่น 10

3. หน้าหลัก 11

4. แบบฟอร์มหลัก 11

4.1. ส่วนหัว 12

4.1.1. Home Link - (เปิดตารางผลลัพธ์จริง) 12

4.1.2. ช่องทำเครื่องหมาย "X" - เปิด / ปิดแบบฟอร์มแบบสอบถาม 12

4.1.3. ช่องทำเครื่องหมาย "V" - เปิด / ปิดช่องแบบฟอร์ม 12

4.1.4. ไอคอนกราฟิก - ลิงก์ไปยังผลการแสดงภาพ (แก้ไขได้) 12

4.2. แบบฟอร์ม: 12

4.2.1. ช่องทำเครื่องหมาย "X" - เปิด / ปิดแบบฟอร์มแบบสอบถามทั้งหมด 12

4.2.2. CSS - เลือกธีมการแสดงภาพ 12

4.2.3 ช่องทำเครื่องหมายฟิลด์ที่มองเห็นได้ - แสดง / ซ่อนรายการตัวกรองฟิลด์ 12

4.2.4. แถบ: ชื่อแท็บเพื่อเพิ่มหรือลบ 12

4.2.5. ปุ่มเพิ่ม / ลบ - เพิ่มหรือลบแท็บที่มีชื่อในช่องแท็บ 12

4.2.6. เลือกปุ่ม Core 12

4.2.7 ยกเลิกการเลือกปุ่มทั้งหมด 12

4.2.7 เลือกปุ่มทั้งหมด 12

4.2.8. ซ่อนตัวกรอง - ซ่อนทั้งแบบฟอร์ม 12

4.2.9. Execute Button - เปลี่ยนการตั้งค่าพารามิเตอร์ 13

4.2.10. ช่องทำเครื่องหมาย "V" - ช่องแสดง / ตัวกรองสูง 13

4.3. แท็บ 13

4.4. สารบัญตาราง 13

4.4.1. เรียกใช้ - ดูประเภทผลลัพธ์ 13

4.4.2. คัดลอก (ลิงก์ +/-) 13

4.4.3. ลิงค์เซลล์ตาราง 13

4.5. ลำดับข้อมูล 13

4.6. ตัวอย่างที่ 13

5. แผนที่ 15

5.1. การเริ่มต้นแผนที่ 15

5.2. การตั้งค่าเพิ่มเติมสำหรับแบบสอบถาม 15

5.2.1. แก้ไขมาตราส่วนแผนที่ (ระดับการซูม) 16

5.2.2. IMEI (เลือกฟิลด์อุปกรณ์) 16

5.2.3. Lon, Lat (ช่องพิกัดลองจิจูด, ละติจูด) 16

5.2.4. ปรับเปลี่ยนรูปแบบแผนที่ (ธีม) 16

5.2.5. WHERE ข้อ 16

5.2.6. ดำเนินการ (ปุ่มเรียกใช้แบบสอบถาม) 16

5.2.7. ยกเลิกการเลือกทั้งหมด (ลบเขตข้อมูลทั้งหมดออกจากแบบสอบถาม) 17

5.2.8. ช่องทำเครื่องหมาย "V" (แบบฟอร์มช่องเปิด / ปิด) 17

5.2.9. ช่องทำเครื่องหมาย "X" (แสดง / ซ่อนแบบฟอร์มแบบสอบถาม) 17

5.3. ตัวอย่างที่ 17

6. แสดงผลลัพธ์ในตารางที่ 18

6.1. การเริ่มต้นตาราง 18

6.2. การตั้งค่าเพิ่มเติมสำหรับแบบสอบถาม 19

6.2.1. Sort - ช่องเรียงลำดับและเรียงลำดับจากน้อยไปมาก / มากไปหาน้อย 19

6.2.2. DB / IMEI - เลือกอุปกรณ์ 19

6.2.3. CSS - เลือกสไตล์ (ธีมการแสดงภาพ) 20

6.2.4. ฟิลด์ที่มองเห็นได้ - แสดง / ซ่อนฟิลด์แบบฟอร์ม 20

6.2.5. ลบ Empty - อย่าแสดงคอลัมน์ว่าง 20

6.2.6. ช่องทำเครื่องหมาย "X" (แสดง / ซ่อนแบบฟอร์มแบบสอบถาม) 20

6.2.7. โดย Clause (สำหรับการ จำกัด ข้อมูล) 20

6.2.8. เลือกปุ่ม Core (เปิดใช้งานฟิลด์ทั่วไปส่วนใหญ่) 20

6.2.9. ยกเลิกการเลือกปุ่มทั้งหมด (ลบเขตข้อมูลทั้งหมดออกจากแบบสอบถาม) 20

6.2.10. ดำเนินการ (Run Query Button) 20

6.2.11. ช่องทำเครื่องหมาย "V" (แบบฟอร์มช่องเปิด / ปิด) 20

7. แผนภูมิแท่ง 21

8. แผนภูมิประวัติศาสตร์ 22

8.1. การเริ่มต้นแผนภูมิประวัติศาสตร์ 22

8.2. การตั้งค่าเพิ่มเติมของแผนภูมิประวัติศาสตร์ 23

8.2.1. IMEI - (เลือกอุปกรณ์เพื่อแสดงข้อมูลย้อนหลัง) 23

8.2.2. ต่ำสุด - จำกัด ค่าต่ำสุดของฟิลด์แรก 23

8.2.3. สูงสุด - จำกัด ค่าสูงสุดของฟิลด์แรก 23

8.2.4. "V" - แสดง / ซ่อนฟิลด์แบบฟอร์ม 23

8.2.5. จาก: ตั้งค่าวันที่ / เวลาน้อยที่สุด (*) 23

8.2.6. ถึง: ตั้งค่าวันที่ / เวลาสูงสุด (*) 23

8.2.7 ช่องทำเครื่องหมาย "X" (แสดง / ซ่อนแบบฟอร์มแบบสอบถาม) 23

8.2.8. "ที่ไหน" ข้อ 23

8.2.9. ยกเลิกการเลือกปุ่มทั้งหมด (ลบเขตข้อมูลทั้งหมดออกจากแบบสอบถาม) 23

8.2.10. ดำเนินการ (Run Query Button) 23

8.2.11. ช่องทำเครื่องหมาย "V" (แบบฟอร์มช่องเปิด / ปิด) 24

8.3. Bars Variant: (แสดงเฉพาะข้อมูลที่มี) 24

8.4. ตัวแปรต่อเนื่อง (ที่มีข้อมูลเดียวกัน): 24

9. ความเข้ากันได้ของเว็บเบราว์เซอร์ 25

10. การปรับแต่งธีม 26

11. อัลกอริทึมอัพเดท 27

12. โครงสร้างฐานข้อมูล 28

12.1. "ithings_" และ "*" โครงสร้างตาราง 29

12.2. คำสั่งอุปกรณ์ (เหตุการณ์) คิวตาราง "* _c" - โครงสร้าง 30

12.3. การเข้าถึงผลลัพธ์จากฐานข้อมูล - ระดับกลาง (การอ่านข้อมูล) 30

12.3.1. รับสถานะปัจจุบันของอุปกรณ์ทั้งหมด 30

12.3.2. รับข้อมูลย้อนหลังสำหรับอุปกรณ์ 31

12.3.3. รับรายการอุปกรณ์ - ช่องเดียวจากสถานะปัจจุบันที่มีข้อ จำกัด 32


1. บทนำ.

@City IoT Cloud Platform ทุ่มเท "ไมโครคลาวด์" ระบบสำหรับลูกค้าแต่ละราย แพลตฟอร์มไม่สามารถแชร์ได้และมีลูกค้าเพียงรายเดียวเท่านั้นที่สามารถเข้าถึงเซิร์ฟเวอร์จริงหรือเซิร์ฟเวอร์เสมือน (VPS หรือเซิร์ฟเวอร์เฉพาะ) ลูกค้าสามารถเลือกศูนย์ข้อมูลหนึ่งในหลายสิบแห่งในยุโรปหรือในโลก

1.1 ประเภทอุปกรณ์ที่รองรับ

แพลตฟอร์ม @City IoTมีไว้เพื่อติดตามผลิตภัณฑ์ iSys.PL



1.2. ประเภทผลิตภัณฑ์ที่รองรับ

@City (eCity) Cloud IoT Platform คือระบบขนาดต่างๆสำหรับผลิตภัณฑ์ IP IoT (เรียกรวมกันว่า @ ซิตี้ฮาร์ดแวร์ หรือ อุปกรณ์ CioT ):


1.3. โปรโตคอลการสื่อสารที่รองรับ

@City IoTแพลตฟอร์มรองรับโปรโตคอลสำหรับการสื่อสารต่อไปนี้:

ข้อมูลที่ส่งจากคอนโทรลเลอร์ไปยังเซิร์ฟเวอร์คลาวด์และในทางกลับกันจะถูกเข้ารหัสในรูปแบบไบนารีเฉพาะสำหรับขนาดข้อมูลที่ต่ำที่สุดและเพิ่มความปลอดภัย พาร์ทเนอร์แต่ละรายจะได้รับคีย์การเข้ารหัสเฉพาะสำหรับการอนุญาตอุปกรณ์การตรวจสอบความถูกต้องของข้อมูล ฯลฯ


สำหรับอุปกรณ์ที่ไม่ใช่ eHouse / eCity เราสามารถจัดหาอัลกอริทึมการเข้ารหัสแต่ละรายการ ( "C" ซอร์สโค้ด) สำหรับคู่ค้าแต่ละรายสำหรับไมโครโปรเซสเซอร์เพื่อปกป้องข้อมูลก่อนการสื่อสาร

ในกรณีนี้ข้อมูลจะปลอดภัยอย่างสมบูรณ์ในระหว่างการสื่อสารแบบสองทิศทางผ่านสื่อการสื่อสารสาธารณะ (อินเทอร์เน็ตอากาศ ฯลฯ ).


1.4. เทคโนโลยีการสื่อสารที่รองรับของอุปกรณ์

@City IoTแพลตฟอร์มรองรับ:


@City IoT Platform ทุ่มเทให้กับอุปกรณ์ / โหนด:


1.5. @ ซิตี้คลาวด์เซิร์ฟเวอร์

ซอฟต์แวร์ @City ทำงานบน VPS บน Linux (Virtual Private Server) หรือเซิร์ฟเวอร์เฉพาะบนอินเทอร์เน็ตขึ้นอยู่กับประสิทธิภาพที่ร้องขอของ เซิร์ฟเวอร์ (เรียกว่าเซิร์ฟเวอร์ในภายหลัง):


VPS มีหลายรูปแบบขึ้นอยู่กับ:


มีเซิร์ฟเวอร์เฉพาะหลายสิบเครื่องขึ้นอยู่กับ:


แพลตฟอร์ม @City IoTมีไว้สำหรับลูกค้ารายเดียว:


เนื่องจากเป็นเซิร์ฟเวอร์ที่แชร์ระหว่างลูกค้าไม่ได้จึงทำให้การเข้าถึงความปลอดภัยและปัญหาด้านประสิทธิภาพง่ายขึ้น เนื่องจากเหตุผลนี้มีเพียงลูกค้าเท่านั้นที่ต้องรับผิดชอบต่อความปลอดภัยเสถียรภาพประสิทธิภาพปริมาณข้อมูลและอื่น ๆ ที่มีประสิทธิภาพ ในกรณีที่ประสิทธิภาพไม่เพียงพอลูกค้าอาจซื้อแผนบริการที่สูงขึ้น (VPS หรือเซิร์ฟเวอร์เฉพาะ) ซึ่งเหมาะสมกับฟังก์ชันและประสิทธิภาพที่คาดหวังมากขึ้น

ในกรณีพิเศษ "Cloud to cloud" การสื่อสารอาจถูกนำไปใช้เพื่อโลกาภิวัตน์และการรวมศูนย์ข้อมูลไปยังพื้นที่ที่ใหญ่กว่าแทนที่จะใช้ระบบคลาวด์สำหรับลูกค้าหลายราย

1.5.1. เกตเวย์เซิร์ฟเวอร์และการสื่อสาร

การสื่อสารของ @City Server เกิดขึ้นจากแอปพลิเคชันระดับต่ำเพื่อการเพิ่มประสิทธิภาพสูงสุด

คุณสมบัติหลักของแอปพลิเคชัน @City Server คือ:

ซอฟต์แวร์ @City Server จะเหมือนกันสำหรับผู้ใช้แต่ละคนและไม่สามารถปรับแต่งให้เหมาะกับลูกค้าที่แตกต่างกันได้

1.5.2 การรวม HTTP LoRaWAN

ตัวควบคุม LoRaWAN ถูกรวมเข้ากับ @City cloud ผ่านอินเทอร์เฟซ HTTP (webhooks) ที่มีอยู่บนเครือข่าย LoRaWAN / แอปพลิเคชันเซิร์ฟเวอร์

รองรับเครือข่าย / แอปพลิเคชันเซิร์ฟเวอร์หลายประเภท:

TTN (จำกัด เวลา "บนอากาศ" และจำนวนคำสั่งสูงสุดที่ส่งไปยังไดรเวอร์และไม่รองรับการอัพเกรดเฟิร์มแวร์)

LoraWAN-Stack (ต้องโฮสต์บนอุปกรณ์จริงที่มีอินเทอร์เน็ต)

LoraServer.Io (ต้องโฮสต์บนอุปกรณ์จริงที่มีการเข้าถึงอินเทอร์เน็ต - ส่งข้อมูลไปยังเซิร์ฟเวอร์เท่านั้นและไม่รองรับการอัปเกรดเฟิร์มแวร์)



@City Cloud สำหรับคอนโทรลเลอร์ LoRaWAN ถูกแบ่งออกในลักษณะเดียวกับอินเทอร์เฟซอื่น ๆ มีการกล่าวถึงในบทที่แล้ว

1.5.3. อินเทอร์เฟซส่วนหน้า

อินเทอร์เฟซส่วนหน้ารับรู้ด้วยสคริปต์ PHP สำหรับการดึงข้อมูลที่กำหนดเองจาก @City Cloud Database ใช้กลไกการค้นหาที่ยืดหยุ่นมากขึ้นอยู่กับการสืบค้น SQL ดั้งเดิมเพื่อ จำกัด ข้อมูลที่ต้องการ ผลการสืบค้นอุปกรณ์เชื่อมต่อในรูปแบบ JSON สำหรับการถอดรหัสและการประมวลผลเพิ่มเติมโดย application Front-end Web "application"

อินเทอร์เฟซฟรอนต์เอนด์ดั้งเดิมจะเหมือนกันสำหรับผู้ใช้แต่ละรายและไม่สามารถปรับแต่งสำหรับลูกค้าที่แตกต่างกันได้

อินเทอร์เฟซการซ้อนทับอาจถูกสร้างขึ้นโดยเจ้าหน้าที่ของเราหรือโดยความร่วมมือเพื่อรับรองการปรับแต่งสำหรับลูกค้า

1.5.3. สิทธิ์การเข้าถึงเซิร์ฟเวอร์

สิทธิ์การเข้าถึงของลูกค้า (ไปยังเซิร์ฟเวอร์จริง) มี จำกัด

การเข้าถึงไฟล์สำหรับไดเร็กทอรี "template" เท่านั้น (ไฟล์ข้อความดั้งเดิม - .txt, .js, .css, .html):

สิทธิ์การเข้าถึงอื่น ๆ :


iSys - เจ้าหน้าที่ระบบอัจฉริยะ - สามารถเข้าถึงเซิร์ฟเวอร์ทั้งหมดได้ไม่ จำกัด รวมถึงบัญชีรูทและการเข้าถึงฐานข้อมูลแบบเต็มสำหรับการบำรุงรักษา

ภายใต้สถานการณ์บางอย่าง iSys อาจให้สิทธิ์ที่ จำกัด เพิ่มเติมแก่ลูกค้า (สคริปต์ PHP, ไฟล์) หลังจากตรวจสอบซอร์สโค้ดรันการทดสอบหากไม่ส่งผลกระทบต่อความปลอดภัยความเสถียรและประสิทธิภาพโดยรวมของระบบ


1.6. อุปกรณ์สมาร์ท

1.6.1 CIoT - อุปกรณ์ GSM

อุปกรณ์ของเราประกอบด้วยไมโครคอนโทรลเลอร์และโมดูล GSM / GPS / GNSS (2G..4G, NBIoT, CATM1) สำหรับการสื่อสาร ไมโครคอนโทรลเลอร์ประกอบด้วย bootloader ที่เข้ารหัสสำหรับการอัพเกรดเฟิร์มแวร์ OTA ที่ปลอดภัย สิ่งนี้ช่วยให้สามารถสร้างตัวแปรของระบบหลายระบบโดยใช้สิ่งเดียวกัน "อุปกรณ์ CIoT Smart".


1.6.3. BAS, BMS, IoT - อุปกรณ์อีเธอร์เน็ตและ WiFi


ตัวควบคุมอีเธอร์เน็ตและ WiFi ช่วยให้สามารถสื่อสารผ่าน IP ไปยังระบบได้ (โดยไม่ต้องชาร์จสำหรับการถ่ายโอนข้อมูลไปยังตัวดำเนินการ GSM) อุปกรณ์นี้ยังมีการเข้ารหัส bootloader และอุปกรณ์อาจได้รับการอัปเดตผ่านอินเทอร์เฟซดั้งเดิม สำหรับ WiFi มีการอัพเกรดเฟิร์มแวร์ OTA จากเซิร์ฟเวอร์หลัก


1.6.2. IoT - อุปกรณ์ LoRaWAN

LoRaWAN ช่วยให้สามารถรับส่งข้อมูลได้ในระยะทางไกลมาก (สูงสุดประมาณ. 15 กม.). ช่วงนี้ขึ้นอยู่กับความเร็วในการรับส่งข้อมูลปริมาณข้อมูลการขยายตัวของพื้นที่และประสิทธิภาพของเส้นทางวิทยุของอุปกรณ์

อุปกรณ์ของเราประกอบด้วยไมโครคอนโทรลเลอร์และโมดูล LoRaWAN สำหรับการสื่อสาร ไมโครคอนโทรลเลอร์ประกอบด้วย bootloader ที่เข้ารหัสสำหรับการอัปเดตซอฟต์แวร์ OTA ที่ปลอดภัย สิ่งนี้ช่วยให้คุณสร้างตัวแปรของระบบหลายระบบโดยอิงจากสิ่งเดียวกัน "IoT smart device". อุปกรณ์ทำงานในวงเปิด ISM โดยไม่มีค่าสมัครเพิ่มเติม จำเป็นต้องใช้ LoRaWAN Gateways เพื่อให้ครอบคลุมพื้นที่ทั้งหมดที่สามารถเข้าถึงอินเทอร์เน็ตได้ ในกรณีของประตู LoRaWAN ที่มีอยู่ภายในช่วงของอุปกรณ์ (กำหนดค่าสำหรับเซิร์ฟเวอร์ TTN) คุณสามารถส่งข้อมูลผ่านประตูเหล่านี้ได้ การอัพเกรดเฟิร์มแวร์ต้องใช้เซิร์ฟเวอร์ LoRaWAN ของเครือข่าย / แอปพลิเคชันของตัวเองและช่วงที่ดีสำหรับการสื่อสาร

1.7. ตัวเลือก Business to Business (B2B)


มีหลายทางเลือกสำหรับธุรกิจและความร่วมมือ:

2. @City IoTการทำงานของแพลตฟอร์ม

แพลตฟอร์ม @City รองรับเทมเพลต Front-End ที่ปรับแต่งได้สำหรับการแสดงข้อมูลการสืบค้นการ จำกัด และการประมวลผล (ข้อมูลปัจจุบัน / ประวัติ):


Front-End ของผู้ใช้สามารถเข้าถึงได้ผ่านทาง IP แบบคงที่หรือโดเมนการเปลี่ยนเส้นทาง DNS / โดเมนย่อย / ไฟล์หากมี


การติดตั้งที่เป็นแบบอย่างและการสาธิต (เปิดใช้งานสำหรับลูกค้าที่คาดหวังเท่านั้น)

โปรดแจ้งให้เราทราบเมื่อคุณต้องการทดสอบ - เพื่อเปิดใช้งานการเข้าถึงแพลตฟอร์มแบบสาธารณะ

อาจต้องใช้ IP แบบคงที่ของคอมพิวเตอร์ระยะไกลเพื่อเปิดใช้งานการสื่อสารไปยังแพลตฟอร์ม @City


3. หน้าหลัก

หน้าหลักถูกปล่อยให้ว่างโดยเจตนาเพื่อเหตุผลด้านความปลอดภัย: http: //% YourIP% / IoT /

อาจมีการเปิดใช้งานและแก้ไขทีละรายการและมีลิงก์ไปยังบริการที่มีอยู่ทั้งหมดของ @City IoT Platform หากจำเป็น


4. แบบฟอร์มหลัก

แบบฟอร์มหลักมีไว้เพื่อสร้างค่าที่ตั้งล่วงหน้าและแท็บใหม่: http: //%IP%/IoT/que.php

นี่เป็นรูปแบบเริ่มต้นสำหรับการสร้างผลลัพธ์มุมมองและแท็บสำหรับการกำหนดค่าแต่ละรายการ




คำอธิบาย (จากบนและซ้ายไปขวา)

4.1. หัวข้อ

4.1.1. ลิงค์หน้าแรก - (เปิดตารางผลลัพธ์จริง)

4.1.2. "X" ช่องทำเครื่องหมาย - เปิด / ปิดแบบฟอร์มแบบสอบถาม

4.1.3. "V" ช่องทำเครื่องหมาย - เปิด / ปิดแบบฟอร์มฟิลด์

4.1.4. ไอคอนกราฟิก - ลิงก์ไปยังผลการสร้างภาพ (แก้ไขได้)


4.2. แบบฟอร์ม:

4.2.1. "X" ช่องทำเครื่องหมาย - เปิด / ปิดแบบฟอร์มแบบสอบถามทั้งหมด

4.2.2. CSS - เลือกธีมการแสดงภาพ

ต้องมีไฟล์ CSS Modify Visualization Theme อยู่ใน "แม่แบบ / css /" ไดเรกทอรี - แสดงรายการโดยอัตโนมัติ

4.2.3 ฟิลด์ที่มองเห็นได้ checkbox - แสดง / ซ่อนรายการตัวกรองฟิลด์

4.2.4. แท็บ: ชื่อแท็บเพื่อเพิ่มหรือลบ

4.2.5. เพิ่ม / ลบ ปุ่ม - เพิ่มหรือลบแท็บที่มีชื่อใน แท็บ ฟิลด์

4.2.6. เลือก Core ปุ่ม

เลือกฟิลด์หลักที่มองเห็นได้บนตาราง มัน ได้รับการอัปเดต โดยอัตโนมัติ

4.2.7 ยกเลิกการเลือกทั้งหมด ปุ่ม

ยกเลิกการเลือกช่องทั้งหมด (ต้องตามด้วยการเลือกบางช่องด้วยตนเอง)

4.2.7 เลือกทั้งหมด ปุ่ม

เลือกช่องทั้งหมด (ต้องตามด้วยการยกเลิกการเลือกบางช่องด้วยตนเอง)

4.2.8. ซ่อนตัวกรอง - ซ่อนแบบฟอร์มทั้งหมด

สิ่งนี้เทียบเท่ากับช่องทำเครื่องหมาย (X) ทั้งหมด

4.2.9. ดำเนินการ ปุ่ม - เปลี่ยนการตั้งค่าพารามิเตอร์

4.2.10. "V" ช่องทำเครื่องหมาย - ช่องแสดง / ตัวกรองสูง


4.3. แท็บ

แท็บที่สร้างขึ้นเป็นรายบุคคลพร้อมชื่อและค่าที่ตั้งล่วงหน้า (เก็บไว้ใน cfg / tabs.cfg ไฟล์)

ไฟล์นี้มีชื่อและ URL (คั่นด้วยแท็บถ่าน)


4.4. สารบัญตาราง

แสดงฟิลด์ทั้งหมดที่ถูก จำกัด โดยตัวกรองฟิลด์


ฟิลด์ในตาราง:

4.4.1. วิ่ง - ประเภทผลการดู

แผนที่- ผลการทำแผนที่บนแผนที่ (อาจเลือกฟิลด์อย่างน้อยหนึ่งฟิลด์)

ประวัติศาสตร์ - แผนภูมิประวัติศาสตร์ (อาจเลือกฟิลด์หนึ่งหรือหลายฟิลด์)

tab - แสดงตาราง (อาจเลือกการรวมกันของฟิลด์ใดก็ได้)

บาร์ - แสดงเพียงฟิลด์เดียวบนแผนภูมิแท่ง

เมื่อกดค่าใดค่าหนึ่งจะเป็นการเปิดผลลัพธ์ใหม่พร้อมฟิลด์ที่เลือก (สำหรับแถวปัจจุบัน)


4.4.2. คัดลอก (+/- ลิงค์)

การเพิ่ม / ลบแท็บที่มีชื่อที่ตั้งไว้ แท็บ ฟิลด์ ใช้เฉพาะเขตข้อมูลที่เลือกในแถวเดียวกันของตาราง


4.4.3. ลิงค์เซลล์ตาราง

การกดชื่อฟิลด์อื่น ๆ จะเป็นการเริ่มต้นการแสดงข้อมูลของฟิลด์ที่เลือกสำหรับแถวที่เลือก


4.5. ลำดับข้อมูล


ลำดับของฟิลด์ที่แสดงเป็นลำดับในรูปแบบฟิลด์ (อย่างไรก็ตาม tm ฟิลด์จะถูกส่งไปที่ส่วนท้ายของข้อความเสมอ) คำสั่งนี้สามารถเปลี่ยนแปลงได้ด้วยการแก้ไขพารามิเตอร์ URL โดยตรงเท่านั้น (ส่วนลำดับฟิลด์)


4.6. ตัวอย่าง

ตัวอย่างเช่น: การตั้งค่าแท็บด้วย การติดตามทรัพย์สิน ชื่อและมีแผนที่พร้อมเวลาและความเร็วบนแผนที่

คำอธิบายทั้งหมดอ้างถึงแถวที่ "Map" ข้อความอยู่ใน "วิ่ง" คอลัมน์.

  1. ใส่ชื่อ "การติดตามทรัพย์สิน" ใน แท็บ ฟิลด์ (ไม่มีเครื่องหมายคำพูด)

  2. ตรวจสอบให้แน่ใจว่าไม่ได้เลือกคอลัมน์ทั้งหมดในแถว

  3. เลือก tm, gps_speed_km เฉพาะในแถว

  4. กด + ปุ่มที่อยู่ในแถว






5. แผนที่

แผนที่สามารถเปิดได้จาก MainForm ด้วยการกำหนดค่าล่วงหน้า


5.1. การเริ่มต้นแผนที่

การเริ่มต้นแผนที่จะดำเนินการด้วยตนเองเมื่อดำเนินการโดยตรงกับลิงค์: > http: //%IP%/IoT/maps.php


  1. ผู้ใช้ควรยกเลิกการเลือกช่องทั้งหมด (กด ยกเลิกการเลือก ปุ่ม)

  2. กดช่องทำเครื่องหมายสำหรับช่องที่แสดง (เช่น Ain5 (สำหรับระดับหมอกควัน) และ tm (สำหรับวันที่ / เวลาที่วัด)

  3. กด "V" ช่องทำเครื่องหมายเพื่อซ่อนฟอร์มฟิลด์

  4. กด ดำเนินการ ปุ่มเพื่อเรียกใช้แบบสอบถาม DB และแสดงข้อมูลปัจจุบันจากเซ็นเซอร์ / อุปกรณ์ทั้งหมด

  5. แผนที่พร้อมข้อมูลจะอัปเดตหลังจาก 30 วินาทีขึ้นไป


5.2. การตั้งค่าเพิ่มเติมสำหรับแบบสอบถาม

การตั้งค่าอธิบายจากซ้ายไปขวา (บนภาพหน้าจอด้านบน)

5.2.1. ปรับเปลี่ยนมาตราส่วนแผนที่ (ระดับการซูม)

  1. ระดับการซูมอาจแก้ไขได้โดยใช้ปุ่ม (+/-) สำหรับมาตราส่วน (current_scale * 2 หรือ current_scale / 2 ตามลำดับ) การกดปุ่มใดปุ่มหนึ่งจะเป็นการปรับขนาดโดยอัตโนมัติ

  2. อีกวิธีหนึ่งคือเลือกระดับการซูมเข้า ซูม ช่อง Combo Box แล้วกด ดำเนินการ ปุ่ม. ในกรณีนี้ View / Map ทั้งหมดจะถูกรีโหลดและรีเฟรช (ใช้เวลาสักครู่ระหว่างการเริ่มต้น)

5.2.2. IMEI (เลือกฟิลด์อุปกรณ์)

IMEIฟิลด์ประกอบด้วย ID เฉพาะอุปกรณ์หรือนามแฝงเฉพาะสำหรับอุปกรณ์ การตั้งค่าเริ่มต้นคือ * (เครื่องหมายดอกจัน) ซึ่งแสดงค่าล่าสุดและตำแหน่งทางภูมิศาสตร์สำหรับแต่ละอุปกรณ์

การตั้งค่า IMEI เป็นค่าอื่น ๆ จะแสดงข้อมูลประวัติของอุปกรณ์ที่เลือก มีความรู้สึกเฉพาะสำหรับเซ็นเซอร์มือถือและเซ็นเซอร์ที่เคลื่อนที่มิฉะนั้นผลลัพธ์จะทับซ้อนกันบนแผนที่ในตำแหน่งเดียวกัน


5.2.3. โหลน, ลาด (ลองจิจูดฟิลด์พิกัดละติจูด)

กำหนดตำแหน่งกึ่งกลางของแผนที่ ฟิลด์นี้ถูกตั้งค่าเป็นตำแหน่งเคอร์เซอร์เมื่อกดปุ่มเมาส์บนแผนที่


5.2.4. ปรับเปลี่ยนรูปแบบแผนที่ (ธีม)

รูปแบบแผนที่ / ธีมสามารถเลือกได้จาก Map ฟิลด์ ComboBox (เช่น มืด, เทา, ภูมิประเทศ)

ธีมแผนที่ต่างๆอาจมีระดับการซูมสูงสุดที่แตกต่างกันดังนั้นจึงอาจบังคับใช้ธีมที่เหมาะสมเพื่อเพิ่มขนาดแผนที่


5.2.5. WHERE ข้อ

โดยที่ Clause ใช้สำหรับสตริงการสืบค้นเพิ่มเติม {WHERE part} สำหรับ MySQL / MariaDB

ประโยคนี้ถูกนำมาพิจารณาเพื่อสร้างสตริง QUERY ที่สมบูรณ์สำหรับผลลัพธ์ของฐานข้อมูล อาจ จำกัด ข้อมูลเวลาและค่าอื่น ๆ โดย จำกัด จำนวนผลลัพธ์ ต้องใช้ชื่อฟิลด์ตารางเดิม (ไม่ใช่นามแฝง) ในฟิลด์นี้ เช่น.

  1. gps_speed_km> 10 // ความเร็วมากกว่า 10 กม. / ชม

  2. ain5> 3 // ain5 มากกว่า 3 (ถืออนุภาค 2.5um - ระดับหมอกควัน)

  3. gps_speed_km> 10 และ ain6> 5 // ความเร็วมากกว่า 10 กม. / ชม. และ ain6 มากกว่า 5 (ถืออนุภาค 10um - ระดับหมอกควัน)


5.2.6. ดำเนินการ (เรียกใช้ปุ่ม Query)

การกดปุ่มนี้จำเป็นเพื่อเปลี่ยนการตั้งค่าพารามิเตอร์ต่างๆ (ยกเว้นการกด +/- ปุ่ม)

แผนที่ถูกโหลดตั้งแต่เริ่มต้นด้วยค่าที่ตั้งล่วงหน้าใหม่

แผนที่จะไม่ถูกโหลดเลยเมื่อไม่มีข้อมูลสำหรับการสืบค้นปัจจุบัน

5.2.7. ยกเลิกการเลือกทั้งหมด (ลบเขตข้อมูลทั้งหมดออกจากแบบสอบถาม)

หลังจากกดปุ่มนี้จะต้องเลือกฟิลด์อย่างน้อยหนึ่งฟิลด์ด้วยตนเองเพื่อแสดงผลลัพธ์บนแผนที่


5.2.8. "V" ช่องทำเครื่องหมาย (แบบฟอร์มฟิลด์เปิด / ปิด)

ช่องทำเครื่องหมายนี้ใช้เพื่อแสดง / ซ่อนตัวเลือกเขตข้อมูลที่จะแสดง


5.2.9. "X" ช่องทำเครื่องหมาย (แสดง / ซ่อนแบบฟอร์มแบบสอบถาม)

ช่องทำเครื่องหมายนี้เปิดใช้งานซ่อนแบบฟอร์มทั้งหมดยกเว้น ( +/- ปุ่ม)


ผลลัพธ์บนแผนที่จะได้รับการรีเฟรชและอัปเดตด้วยค่าใหม่อย่างต่อเนื่อง

5.3. ตัวอย่าง

เช่นผลหมอกควัน (เซนเซอร์ที่ติดตั้งบนรถ): หมอกควันระดับ 2.5um อนุภาค (Ain5) ความเร็ว (gps_speed_km) วันที่ / เวลา (tm) แผนที่ (2 - ภูมิประเทศ) ระดับการซูม 16

โดยที่ประโยค:

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

// GPS = ผลลัพธ์ 3 มิติที่ถูกต้องและวันที่ = 2019-02-18 และความเร็ว> 0 กม. / ชม



6. แสดงผลลัพธ์ในตาราง

แสดงผลลัพธ์ในตาราง

บน "แบบฟอร์มหลัก" กด "โต๊ะ" หลังจากเลือกบางฟิลด์เพื่อแสดงตารางที่กำหนดค่าไว้ล่วงหน้า




6.1. การเริ่มต้นตาราง

เมื่อเปิดตารางจากลิงค์ http: //%IP%/IoT/que.php? func = tabs ต้องมีการเริ่มต้นการตั้งค่าก่อน

คุณสามารถเลือกช่องที่มองเห็นได้ (โดยการกด "ฟิลด์ที่มองเห็นได้" ) ช่องทำเครื่องหมาย



  1. กดช่องทำเครื่องหมายที่จำเป็นทั้งหมดสำหรับช่องที่แสดง

  2. กดช่องทำเครื่องหมาย "ฟิลด์ที่มองเห็นได้" เพื่อซ่อนฟอร์มฟิลด์

  3. กดปุ่ม Execute เพื่อเรียกใช้แบบสอบถาม DB และแสดงตาราง


6.2. การตั้งค่าเพิ่มเติมสำหรับแบบสอบถาม

การตั้งค่าอธิบายจากซ้ายไปขวา (บนภาพหน้าจอ)

6.2.1. จัดเรียง - ฟิลด์เรียงลำดับและเรียงลำดับจากน้อยไปมาก / มากไปหาน้อย

เขตข้อมูลจัดเรียงเทียบเท่ากับการกดส่วนหัวของคอลัมน์

6.2.2. DB / IMEI - เลือกอุปกรณ์

IMEIฟิลด์ประกอบด้วย ID เฉพาะอุปกรณ์หรือนามแฝงเฉพาะสำหรับอุปกรณ์ ด้วยค่าว่างจะแสดงตารางของค่าล่าสุด

การตั้งค่า IMEI เป็นค่าอื่น ๆ จะแสดงข้อมูลประวัติของอุปกรณ์ที่เลือก


6.2.3. CSS - เลือกสไตล์ (ธีมการแสดงภาพ)

6.2.4. ฟิลด์ที่มองเห็นได้ - แสดง / ซ่อนแบบฟอร์มฟิลด์

6.2.5. ลบ Empty - อย่าแสดงคอลัมน์ว่าง

6.2.6. "X" ช่องทำเครื่องหมาย (แสดง / ซ่อนแบบฟอร์มแบบสอบถาม)

6.2.7. ที่ไหน ข้อ (สำหรับข้อ จำกัด ของข้อมูล)

นี่คือ sufix สำหรับสตริงการสืบค้นเพิ่มเติม MySQL / MariaDB {WHERE part}

ประโยคนี้ถูกนำมาพิจารณาเพื่อสร้างสตริง QUERY ที่สมบูรณ์สำหรับผลลัพธ์ของฐานข้อมูล อาจ จำกัด ข้อมูลเวลาและค่าอื่น ๆ โดย จำกัด จำนวนผลลัพธ์ ต้องใช้ชื่อฟิลด์ตารางเดิม (ไม่ใช่นามแฝง) ในฟิลด์นี้ เช่น.

  1. gps_speed_km> 10 // ความเร็วมากกว่า 10 กม. / ชม

  2. ain5> 3 // ain5 มากกว่า 3 (ถืออนุภาค 2.5um - ระดับหมอกควัน)

  3. gps_speed_km> 10 และ ain6> 5 // ความเร็วมากกว่า 10 กม. / ชม. และ ain6 มากกว่า 5 (ถืออนุภาค 10um - ระดับหมอกควัน)


6.2.8. เลือก Core ปุ่ม (เปิดใช้งานฟิลด์ทั่วไปส่วนใหญ่)


6.2.9. ยกเลิกการเลือกทั้งหมด ปุ่ม (ลบเขตข้อมูลทั้งหมดออกจากแบบสอบถาม)

หลังจากกดปุ่มนี้จะต้องเลือกฟิลด์อย่างน้อยหนึ่งฟิลด์ด้วยตนเองเพื่อแสดงผลลัพธ์บนแผนที่


6.2.10. ดำเนินการ (เรียกใช้ปุ่ม Query)

การกดปุ่มนี้จำเป็นเพื่อเปลี่ยนการตั้งค่าพารามิเตอร์ต่างๆ (ยกเว้นการกด +/- ปุ่ม)

ตารางถูกโหลดซ้ำตั้งแต่เริ่มต้นด้วยค่าที่ตั้งล่วงหน้าใหม่



6.2.11. "V" ช่องทำเครื่องหมาย (แบบฟอร์มฟิลด์เปิด / ปิด)

ช่องทำเครื่องหมายนี้ใช้เพื่อแสดง / ซ่อนตัวเลือกเขตข้อมูลที่จะแสดง



ผลลัพธ์ในตารางจะเรียงตาม จัดเรียง การตั้งค่าฟิลด์ สามารถเปลี่ยนลำดับการจัดเรียงได้โดยกดส่วนหัวของแถว (หนึ่งครั้งสำหรับทิศทางหนึ่งสองครั้งสำหรับทิศทางอื่น)

ผลลัพธ์บางรายการในคอลัมน์จะเชื่อมโยงไปยังหน้าจอการแสดงภาพเพิ่มเติม (ฮาร์ดโค้ด)


เมื่อแสดงข้อมูลประวัติสำหรับอุปกรณ์ควร จำกัด เพื่อไม่ให้แสดงข้อมูลประวัติทั้งหมดเนื่องจากอาจทำให้ประสิทธิภาพการทำงานหรือปัญหาหน่วยความจำหมด


7. แผนภูมิแท่ง

ควรเรียกใช้แผนภูมิแท่งจากฟอร์มหลักโดยการกดช่องเดียวในแถว "บาร์"

จะแสดงแถบที่เรียงตามมาตรฐานเป็นค่าสูงสุดโดยแสดงจากลำดับสูงสุดไปต่ำสุด

มีประโยชน์สำหรับการตรวจสอบผลลัพธ์ที่รุนแรงและดำเนินการบางอย่างได้อย่างรวดเร็ว





เหตุการณ์ Mouse Over จะแสดงข้อมูลเพิ่มเติมสำหรับอุปกรณ์


8. แผนภูมิประวัติศาสตร์

แผนภูมิประวัติศาสตร์สามารถเริ่มต้นได้จาก MainForm เมื่อกดคอลัมน์ที่เลือกในแถว "ประวัติ" (สำหรับช่องเดียว)

สำหรับช่องหลายช่องในแถว "ประวัติ" ต้องเลือกช่องที่ต้องการและต้องกดลิงก์ "ประวัติ" ในคอลัมน์ "เรียกใช้"

ผลลัพธ์ที่ผ่านมาจะ จำกัด ไว้ที่ 24 ชั่วโมงล่าสุด + 24 ชั่วโมงถัดไป (สำหรับการรีเฟรชแผนภูมิในที่สุด) เมื่อไม่มีการตั้งค่าขีด จำกัด

8.1. การเริ่มต้นของแผนภูมิประวัติศาสตร์


แผนภูมิประวัติศาสตร์เมื่อเปิดจากลิงก์หลักจำเป็นต้องมีการเริ่มต้นเป็นผลลัพธ์อื่น ๆ เมื่อเปิดจากลิงก์โดยไม่มีพารามิเตอร์การกำหนดลักษณะ

อาจมีการเลือกหลายช่องเพื่อแสดงรายการต่างๆ นอกจากนี้ยังสามารถตั้งค่าในแบบฟอร์มตัวกรองฟิลด์




  1. กดช่องทำเครื่องหมายที่จำเป็นทั้งหมดสำหรับช่องที่แสดง

  2. กดช่องทำเครื่องหมาย "ฟิลด์ที่มองเห็นได้" เพื่อซ่อนฟอร์มฟิลด์

  3. กดปุ่ม Execute เพื่อเรียกใช้แบบสอบถาม DB และแสดงตาราง


8.2. การตั้งค่าเพิ่มเติมของแผนภูมิประวัติศาสตร์

รายการที่อธิบายจากด้านบนและจากซ้ายไปขวา (บนภาพหน้าจอ)

8.2.1. IMEI - (เลือกอุปกรณ์เพื่อแสดงข้อมูลในอดีต)

IMEIฟิลด์ประกอบด้วย ID เฉพาะอุปกรณ์หรือนามแฝงเฉพาะสำหรับอุปกรณ์ ด้วยค่า * (asterix) จะแสดงตารางของค่าล่าสุดที่ไม่มีความหมาย

การตั้งค่า IMEI เป็นค่าอื่น ๆ จะแสดงข้อมูลประวัติของอุปกรณ์ที่เลือก

8.2.2. ต่ำสุด - จำกัด ค่าต่ำสุดของฟิลด์แรก

8.2.3. สูงสุด - จำกัด ค่าสูงสุดของฟิลด์แรก

8.2.4. "V" - แสดง / ซ่อนแบบฟอร์มฟิลด์

8.2.5. จาก: ตั้งค่าวันที่ / เวลาน้อยที่สุด (*)

8.2.6. ถึง: ตั้งค่าวันที่ / เวลาสูงสุด (*)

8.2.7 "X" ช่องทำเครื่องหมาย (แสดง / ซ่อนแบบฟอร์มแบบสอบถาม)

8.2.8. "ที่ไหน" ข้อ

ประโยคสำหรับการ จำกัด ผลลัพธ์ของข้อมูลสตริงการสืบค้นเพิ่มเติม MySQL / MariaDB {WHERE part}

ประโยคนี้ถูกนำมาพิจารณาเพื่อสร้างสตริง QUERY ที่สมบูรณ์สำหรับผลลัพธ์ของฐานข้อมูล อาจ จำกัด ข้อมูลเวลาและค่าอื่น ๆ โดย จำกัด จำนวนผลลัพธ์ ต้องใช้ชื่อฟิลด์ตารางดั้งเดิม (ไม่ใช่นามแฝง) ในฟิลด์นี้และไวยากรณ์ SQL ที่ถูกต้อง เช่น.

  1. gps_speed_km> 10 // ความเร็วมากกว่า 10 กม. / ชม

  2. ain5> 3 // ain5 มากกว่า 3 (ถืออนุภาค 2.5um - ระดับหมอกควัน)

  3. gps_speed_km> 10 และ ain6> 5 // ความเร็วมากกว่า 10 กม. / ชม. และ ain6 มากกว่า 5 (ถืออนุภาค 10um - ระดับหมอกควัน)


8.2.9. ยกเลิกการเลือกทั้งหมด ปุ่ม (ลบเขตข้อมูลทั้งหมดออกจากแบบสอบถาม)

หลังจากกดปุ่มนี้จะต้องเลือกฟิลด์อย่างน้อยหนึ่งฟิลด์ด้วยตนเองเพื่อแสดงผลลัพธ์ที่ผ่านมา


8.2.10. ดำเนินการ (เรียกใช้ปุ่ม Query)

การกดปุ่มนี้จำเป็นเพื่อเปลี่ยนการตั้งค่าพารามิเตอร์ (ยกเว้นการแสดงฟิลด์หรือแผงคิวรี) ตารางถูกโหลดซ้ำตั้งแต่เริ่มต้นด้วยค่าที่ตั้งล่วงหน้าใหม่

8.2.11. "V" ช่องทำเครื่องหมาย (แบบฟอร์มฟิลด์เปิด / ปิด)

ช่องทำเครื่องหมายนี้ใช้เพื่อแสดง / ซ่อนตัวเลือกเขตข้อมูลที่จะแสดง


8.3. บาร์ ตัวแปร: (แสดงเฉพาะข้อมูลที่มี)



8.4. ต่อเนื่อง ตัวแปร (ที่มีข้อมูลเดียวกัน):



ตัวชี้เมาส์แสดงค่าของการวัดและวันที่ / เวลา

9. ความเข้ากันได้ของเว็บเบราว์เซอร์


ฟังก์ชั่น / เบราว์เซอร์ WWW

Chrome 72

ไฟร์ฟอกซ์ 65

ขอบ

โอเปร่า 58

แผนที่

+

+

+

+

ประวัติศาสตร์

+

+ (*)

+

+

บาร์

+

+

+

+

แท็บ

+

+

+

+


* - Firefox ไม่รองรับตัวเลือกวันที่ / เวลา (ต้องแก้ไขช่องข้อความด้วยตนเองโดยใช้รูปแบบวันที่เวลาที่เหมาะสม)

ไม่รองรับ Internet Explorer (ใช้ ขอบ แทน)

ไม่ได้ทดสอบเว็บเบราว์เซอร์อื่น



10. การปรับแต่งธีม

หน้าเว็บจะขึ้นอยู่กับไฟล์เทมเพลตทั่วไปที่อยู่ที่ "เทมเพลต" ไดเร็กทอรี "* .template"

นอกจากนี้แต่ละประเภทหน้าประกอบด้วย:

  1. ไฟล์ "* .head" ซึ่งเก็บส่วนหัวของหน้า (ลิงก์, CSS ที่นำเข้า, ไฟล์JavaScript ฯลฯ )

  2. ไฟล์ "* .foot" ซึ่งเก็บส่วนท้ายของหน้า (ลิงก์ ฯลฯ )


Visualization Theme สามารถเปลี่ยนแปลงได้ตามความต้องการของผู้ใช้โดยการจัดการและแก้ไขไฟล์ CSS ไฟล์ CSS อยู่ใน "แม่แบบ / css" ไดเรกทอรี อาจมีการใช้ธีมของหน้าเว็บที่แตกต่างกันเพื่อสร้างให้เหมาะสมเช่น การพิมพ์, SmartPhones, เทมเพลต PADs


แท็บle มุมมอง - มีฟิลด์ที่เลือกได้สำหรับการเลือกไฟล์ CSS สำหรับการปรับเปลี่ยนชุดรูปแบบที่สมบูรณ์ (เก็บไว้ใน "แม่แบบ / css / แท็บ" ไดเรกทอรี)




Map มุมมอง - ธีมทั่วไปถูกเลือกโดย "แผนที่" พิมพ์กล่องคำสั่งผสม นอกจากนี้ยังมีไฟล์ CSS เริ่มต้น "แม่แบบ / css / map.css" ซึ่งมีฟังก์ชันเพิ่มเติมบางอย่างเช่นการซ่อน / ระบายสีผลลัพธ์ตามค่าของมัน ส่วนที่เหลือของไฟล์ CSS นี้ถูก จำกัด ไว้ที่แบบสอบถามและแบบฟอร์มฟิลด์


ส่วนใหญ่ @ ซิตี้แพลตฟอร์ม ยอมรับไฟล์ PHP สำหรับการแสดงภาพ cssพารามิเตอร์ที่มีค่าของชื่อไฟล์สำหรับธีม (ไม่มีนามสกุล) ไฟล์ต้องอยู่ในไดเร็กทอรี "template / css" และชื่อต้องตรงตามตัวพิมพ์เล็กและใหญ่


องค์ประกอบบางอย่างของการแสดงธีมจะอยู่ในไฟล์JavaScriptที่อยู่ในไฟล์ "template / js" ไดเรกทอรี

หลัก @เมือง สคริปต์"@ City.js" อยู่ในไดเรกทอรีด้านบน ไม่มีความเป็นไปได้ในการปรับเปลี่ยนในเรื่องนี้ ตำแหน่งอย่างไรก็ตามสคริปต์อาจถูกคัดลอกไป "แม่แบบ / js" ไดเรกทอรีและแก้ไขที่นั่น การใช้งานสคริปต์แต่ละรายการต้องอัปเดตไฟล์ส่วนหัวทั้งหมด

11. อัปเดตอัลกอริทึม


เซ็นเซอร์เฉพาะบางตัวอาจต้องการฟังก์ชันการคำนวณเฉพาะ

ไม่มีความเป็นไปได้ที่จะอัปเดตและบำรุงรักษารูปแบบต่างๆของ @City Server Software, อินเทอร์เฟซ PHP ส่วนหน้าซึ่งจะทำให้เกิดปัญหาเวอร์ชันข้อผิดพลาดมากมาย

วิธีที่ดีที่สุดและง่ายที่สุดคือการอัปเดตไฟล์ files "ซ้อนทับ" เพื่อการแสดงค่า / คำอธิบายที่เหมาะสม

สคริปต์ JS ดั้งเดิมเป็นไฟล์ข้อความแบบเปิดและอาจนำไปใช้กับความต้องการของลูกค้า ตามที่ระบุไว้ในบทก่อนหน้านี้พวกเขาจะต้องคัดลอกไป "แม่แบบ / js" ไดเร็กทอรีที่ลูกค้ามีสิทธิ์เข้าถึงเพื่อแก้ไข


ด้านเทคนิคเกี่ยวกับการเขียนโปรแกรมของ @เมือง ระบบไม่ใช่หัวข้อของเอกสารนี้อย่างไรก็ตามนักพัฒนาเว็บที่มีความรู้พื้นฐานเกี่ยวกับ HTML และ JS สามารถปรับแต่งแอปพลิเคชัน Front-end Web ตามความต้องการของลูกค้าแต่ละรายได้


12. โครงสร้างฐานข้อมูล


@ ฐานข้อมูลเมืองที่มีชื่อ "IoT" หรือ "* IoT" ถูกแบ่งออกเป็นตาราง (โดยที่เครื่องหมายดอกจันเป็นคำนำหน้าขึ้นอยู่กับเซิร์ฟเวอร์ที่โฮสต์ - หากจำเป็น) อาจพบ DataBase ใน PHPAdmin (เว็บแอปพลิเคชัน) ที่ลิงค์ http: //% IP% / phpmyadmin




ตารางที่ตั้งไว้สำหรับแต่ละอุปกรณ์ (ที่ไหน * {asterix} คือที่อยู่ IMEI - รหัสเฉพาะ):

ตารางอื่น ๆ :



12.1. โครงสร้างตาราง "ithings_" และ "*"

12.2. คำสั่งอุปกรณ์ (เหตุการณ์) คิวตาราง "* _c" - โครงสร้าง


ตารางนี้เป็นคิวเหตุการณ์ / คำสั่งสำหรับแต่ละอุปกรณ์และมีโครงสร้างดังต่อไปนี้:



12.3. การเข้าถึงผลลัพธ์จากฐานข้อมูล - ระดับกลาง (การอ่านข้อมูล)


ข้อมูลสามารถเข้าถึงได้โดยไม่ต้องใช้เว็บแอปพลิเคชันส่วนหน้า ระบบ @City มีสคริปต์พร้อมฟังก์ชันระดับกลาง ผลลัพธ์จะแสดงในรูปแบบ JSON


12.3.1. รับสถานะปัจจุบันของอุปกรณ์ทั้งหมด

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


การค้นหาส่งคืนทั้งหมด "_ithings" ตาราง (สถานะปัจจุบันของอุปกรณ์ทั้งหมด) ในรูปแบบ JSON:

[{ "ประเทศ":"", "เมือง":"", "ทวีป":"", "ประเทศ":"", "ภูมิภาค":"", "อนุภูมิภาค":"", "อนุภูมิภาค":"", "เมือง":"", "อำเภอ":"", "ถนน":"", "street_nr":"", "item_nr":"", "gps_lat":"0000.0000 น", "gps_long":"00000.0000E", "tm":"2019-02-10 12:56:23 น", "การสร้าง":"2019-02-09 18:12:38 น", "ล่าสุด":"0000-00-00 00:00:00 น", "เหตุการณ์":"", "ผู้ใช้":"", "ผ่าน":"", "imei":"351580051067110", "sn":"", "สถานะ":"73000200000f360033026800240000002c002c002dffffffffffffffffff5b63000001c1000001c2000000000000000009250a4f0a760a7a0a750a780a7e0000031d032205fc34029b025c025600460eb305320000", "hash_code":"", "addr":"", "fwnr":"", "ปิดการใช้งาน":"", "gsm_nr":"", "ผู้ขาย":"", "เขตเวลา":"", "dst":"", "rssi":"91", "rsrp":"99", "gps_lat":"0000.0000 น", "gps_long":"00000.0000E", "gps_hdop":"", "gps_alt":"", "gps_fix":"4", "gps_cog":"", "gps_speed_km":"", "gps_sat":"", "เหตุการณ์":"", "out1":"0", "ออก 2":"0", "ออก 3":"0", "ออก 4":"0", "ออก 5":"0", "ออก 6":"0", "ออก 7":"0", "ออก 8":"0", "ออก 9":"0", "ออก 10":"1", "ออก 11":"0", "ออก 12":"0", "ออก 13":"0", "ออก 14":"0", "ออก 15":"0", "out16":"0", "in1":"0", "ใน 2":"0", "ใน 3":"0", "ใน 4":"0", "ใน 5":"0", "ใน 6":"0", "ใน 7":"0", "ใน 8":"0", "ใน 9":"0", "ใน 10":"0", "ใน 11":"0", "ใน 12":"0", "ใน 13":"0", "ใน 14":"0", "ใน 15":"0", "ใน 16":"0", "ain1":"3894", "ain2":"51", "ain3":"616", "ain4":"36", "aใน 5":"0", "ain6":"44", "ain7":"44", "ain8":"45", "sens1":"0", "ความรู้สึก 2":"0", "ความรู้สึก 3":"0", "ความรู้สึก 4":"0", "ประสาทสัมผัส 5":"0", "ประสาทสัมผัส 6":"0", "ประสาทสัมผัส 7":"0", "sens8":"0", "dimm1":"255", "หรี่ 2":"255", "หรี่ 3":"255", "หรี่ 4":"255", "หรี่ 5":"255", "หรี่ 6":"255", "หรี่ 7":"255", "dimm8":"255", "int1":"-16776767", "int2":"450", "int3":"", "int4":"", "int5":"", "int6":"0", "text1":"", "text2":"", "text3":"", "ข้อความ 4":"", "ข้อความ 5":"", "text6":"" }]

12.3.2. รับข้อมูลประวัติสำหรับอุปกรณ์

ค้นหาข้อมูลประวัติของอุปกรณ์เครื่องเดียวโดย IMEI nr:

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


เนื่องจากทั้งตารางอาจมีหลายล้านแถวจึงควร จำกัด ด้วยคำสั่ง WHERE เพื่อไม่ให้เซิร์ฟเวอร์วางสาย

พารามิเตอร์ url พารามิเตอร์เพิ่มเติม:

func - imeijson

imei - IMEI ของอุปกรณ์

ฟิลด์ - ฟิลด์ที่จะแสดงในผลลัพธ์ (รายการที่แยกโคม่า)

นาที - ค่าต่ำสุดสำหรับฟิลด์แรกจากรายการ

สูงสุด - ค่าสูงสุดสำหรับฟิลด์แรกจากรายการ

sหรือt - ฟิลด์สำหรับการจัดเรียง

tm - ฟิลด์จะถูกเพิ่มลงในผลลัพธ์โดยอัตโนมัติ

where - ที่ซึ่งเป็นส่วนคำสั่งเพื่อ จำกัด ข้อมูล


ตัวอย่าง:

เราต้องการได้ผลลัพธ์ดังต่อไปนี้

สำหรับอุปกรณ์ที่มี imei=356345080018095

แสดงฟิลด์: ain5, ain6, gps_lat, gps_long

และ จำกัด aใน 5 ในช่วง ( 1, 10,000 ) - ต้องเป็นช่องแรกในรายการ

และ จีพีเอส มีข้อมูลที่ถูกต้อง (gps_fix = 3)

และวันที่ / เวลา (tm) from2019-02-14 23:00:19 น to 2019-02-15 00:00:00 น


สตริง URL ที่สร้างขึ้น:

http: //%IP%/IoT/que.php? func =imeijson& imei =356345080018095& ฟิลด์ =aใน 5, ain6, gps_lat, gps_long& min =1& max =1,000& ที่ไหน =gps_fix = 3 และ tm> "2019-02-14 23:00:19" และ tm <"2019-02-15 00:00:00"


ผลการค้นหา:

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

12.3.3. รับรายการอุปกรณ์ - ช่องเดียวจากสถานะปัจจุบันที่มีข้อ จำกัด

ฟังก์ชันนี้ส่งคืนข้อมูลที่ จำกัด จากตาราง "_ithings"


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



พารามิเตอร์:

func - fieldjson

ฟิลด์ - ฟิลด์ที่จะแสดงในผลลัพธ์ - imei และ tm จะถูกเพิ่มโดยอัตโนมัติ

นาที - ค่าต่ำสุดสำหรับฟิลด์

สูงสุด - ค่าสูงสุดสำหรับฟิลด์


สำหรับสตริงข้อความค้นหาด้านบนจะส่งกลับ ผลลัพธ์ของ ain5, imei, tm สาขา:

ถ้า aใน 5 อยู่ในช่วง (13,5000)


ผลการค้นหา:

[{"imei":"353080090069142", "tm":"2019-03-14 11:51:01 น", "aใน 5":"14" },

{"imei":"356345080018095", "tm":"2019-02-20 09:13:04 น", "aใน 5":"115" },

{"imei":"Karczew", "tm":"2019-03-07 13:08:22 น", "aใน 5":"103" }]