@城市ity云平台
iSys-智能系统IoT解决方案
物联网系统
目录
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。 Lo -LoRaWAN设备9
1.7。 企业对企业(B2B)选项9
2。 @CityIoT平台功能10
3。 主页11
4, 主要表格11
4.1。 标头12
4.1.1。 主页链接-(打开实际结果表)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。 选择核心按钮12
4.2.7。 取消选择所有按钮12
4.2.7。 全选按钮12
4.2.8。 隐藏筛选器-隐藏整个表格12
4.2.9。 执行按钮-更改参数设置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。 修改MAP比例(缩放级别)16
5.2.2。 IMEI(选择设备字段)16
5.2.3。 纬度,纬度(经度,纬度坐标字段)16
5.2.4。 修改MAP样式(主题)16
5.2.5。 第16条
5.2.6。 执行(运行查询按钮)16
5.2.7。 取消全选(从查询中删除所有字段)17
5.2.8。 “ V”复选框(打开/关闭字段表格)17
5.2.9。 “ X”复选框(显示/隐藏查询表单)17
5.3。 实施例17
六 在表18中显示结果
6.1。 初始化表18
6.2。 查询的可选设置19
6.2.1。 排序-字段排序和升序/降序19
6.2.2。 DB / IMEI-选择设备19
6.2.3。 CSS-选择样式(可视化主题)20
6.2.4。 可见字段-显示/隐藏字段表格20
6.2.5。 删除空-不显示空列20
6.2.6。 “ X”复选框(显示/隐藏查询表单)20
6.2.7。 条款(用于数据限制)20
6.2.8。 选择核心按钮(启用最常见的字段)20
6.2.9。 取消选择所有按钮(从查询中删除所有字段)20
6.2.10。 执行(运行查询按钮)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。 执行(运行查询按钮)23
8.2.11。 “ V”复选框(打开/关闭字段表格)24
8.3。 条形变化:(仅显示可用数据)24
8.4。 连续变式(具有相同数据):24
9。 Web浏览器兼容性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的单个字段
@CityIoTCloud Platform专用 "微云" 个人客户的系统。 平台不可共享,并且只有一位客户可以访问物理或虚拟服务器(VPS或专用服务器)。 客户可以选择欧洲或全球数十个数据中心之一。
@CityIoT平台专用于以下iSys.PL产品
IoT-RF / LoRaWAN(物联网)
CIoT-GSM / 2G / 3G / 4G / CATM1 / NBIoT(蜂窝物联网)
无线上网
乙太网路
@City(eCity)CloudIoTPlatform是用于IPIoT产品的各种大小的系统(统称为 @城市五金 或者 CioT设备 ):
@城市
@光
@计量
@痕迹
@AirQ
@宾
@CityIoT平台支持以下通信协议:
UDP-建议用于CIoT传感器/设备(尤其是NBIoT)-数据利用率最低
TCPIP-建议用于双向通信的设备-握手/确认
HTTP-仅建议用于数据访问/可视化/导出/ "云到云"
HTTP Webhooks-用于LoRaWAN网络/应用程序服务器和@City Cloud之间的LoRaWAN通信。
从控制器发送到云服务器(反之亦然)的数据将以唯一的二进制格式进行加密,以实现最小的数据大小和更高的安全性。 每个合作伙伴都有自己的唯一加密密钥,用于设备授权,数据有效性检查等。
对于非eHouse / eCity设备,我们可以提供单独的加密算法( "C" 源代码),供微处理器的每个合作伙伴在通信之前保护数据。
在这种情况下,在通过公共通信媒体(Internet,Air等)进行双向通信期间,数据是完全安全的。 )。
@CityIoT平台支持:
GSM:2G,3G,4G(LTE),CATM1(LTEM1),NBIoT-设备(UDP / TCPIP通信)
LoRaWAN设备(HTTP Webhooks)-通过LoRaWAN网关和LoRaWAN网络/应用服务器
以太网控制器(UDP / TCP通信)
WiFi控制器(UDP / TCP通信)
未来的IP产品
通过其他本地@ City / eHouse获得非IP产品。PRO硬件网关
@CityIoT平台专用于设备/节点:
本机iSys产品:
CIoT(GSM / 2G / 3G / 4G / CATM1 / NBIoT)
IoT(LoRaWAN)
WiFi-@City平台专用产品
以太网-@City平台的专用产品
共同生产的产品(由第三方根据iSys许可和外部品牌生产)
特许产品(由具有iSys徽标的iSys许可由第三方生产)
@City软件可在基于Linux的VPS(虚拟专用服务器)或Internet端的专用服务器上运行,具体取决于所请求的性能 服务器(以后称为Server):
私人/公共访问
整体设备数
设备状态频率更新
数据刷新率
存在以下几种VPS变体,具体取决于:
价格
数据中心地理定位
虚拟处理器核心(1-8)
虚拟RAM(1-32GB)
SSD磁盘(20GB-1TB)
存在数十个专用服务器,具体取决于:
价格
数据中心地理定位
处理器核心(4个.. 32)
内存(16 .. 512GB)
SSD / HDD(256GB .. 8TB)
@CityIoT平台专用于单个客户:
地方政府和当局(城市,社区,国家)
B2B(对于第三方所有者)
因为它不是客户之间的共享服务器,所以它简化了安全访问和性能问题。 因此,只有客户才对有效的安全性,稳定性,效率,数据吞吐量等负责。 在性能不足的情况下,客户可以购买更高的计划(VPS或专用服务器),以更好地满足预期的功能和性能。
在特殊情况下 "Cloud to cloud" 可以实现通信,以实现数据的全球化和集中化,而不是使用多客户云。
@City Server的通信基于低级应用程序实现,以实现性能最大化。
@City Server应用程序的主要功能是:
从设备异步接收数据(通过协议:UDP,TCP IP,HTTP)
最小化设备与云之间的数据利用率及其成本(通过使用低级通信协议UDP,TCP IP)
接收设备的加密状态(通过任何通信媒体)
通过解密设备的状态来授权和验证设备中的数据
解码设备状态并直接将其更新到MariaDB / MySQL表中(原始数据格式)
当前数据表(仅包含每个设备的最新状态)
历史数据表(包含单个设备的所有状态)
将待处理的命令(事件)发送到设备
确保握手,验证和确认
@City Server软件对于每个用户都是相同的,并且不能针对不同的客户进行自定义。
LoRaWAN控制器通过LoRaWAN网络/应用程序服务器上可用的HTTP接口(webhooks)与@City云集成。
支持多种类型的网络/应用服务器:
TTN(限时 "直播中" 以及发送给驱动程序且不支持固件升级的最大命令数)
LoraWAN堆栈(需要托管在具有Internet访问权限的物理设备上)。
LoraServer.Io(需要托管在具有Internet访问权限的物理设备上-仅向服务器发送数据,不支持固件升级)
用于LoRaWAN控制器的@City Cloud与其他接口的划分方式相同。 在上一章中进行了讨论。
前端接口通过PHP脚本实现,用于从@City Cloud Database中提取自定义数据。 它使用基于原始SQL查询的非常灵活的搜索机制来限制所需的数据。 接口以JSON格式提供查询结果,以供JavaScript前端Web“应用程序”进一步解码和处理。
原始的前端界面对于每个用户都是相同的,不能针对不同的客户进行自定义。
叠加界面可以由我们的员工或在合作中创建,以确保为客户量身定制。
客户访问权限(对物理服务器的访问权限)受到限制。
仅限“模板”目录(本地文本文件-.txt,.js,.css和.html)的文件访问权限:
添加,删除,修改纯HTML文件(前端GUI /接口开发)
添加,删除,修改纯JavaScript文件(前端GUI /接口开发和算法)
添加,删除,修改纯CSS文件(前端-自定义视图/主题)
添加,删除,修改模板的文本文件(前端GUI)
添加,删除,修改选项卡,快捷方式,数据结果链接
其他访问权限:
对存储所有设备数据的@City Cloud Database MySQL / MariaDB的完全访问权限
为客户定义了对Web服务的访问(凭据)。
不允许客户将凭据传递给第三方(对结果的多次访问可能会影响整个系统的性能,稳定性和安全性)
在特殊情况下和使用高性能专用服务器时,可能会设置公共帐户来观察最新数据(不是历史数据)。
用户可以将数据复制到自己的MySQL服务器并执行自己的数据分析和处理,以免影响@City Server的性能
iSys-Intelligent Systems员工-可以不受限制地访问整个服务器,包括root帐户和用于维护的完全数据库访问权限。
在某些情况下,如果不影响整体系统的安全性,稳定性和性能,iSys可能会在检查源代码,运行测试后向客户授予其他有限的权限(PHP脚本,文件)。
我们的设备包含用于通信的微控制器和GSM / GPS / GNSS模块(2G..4G,NBIoT,CATM1)。 微控制器包含加密的引导加载程序,用于安全的OTA固件升级。 这样就可以基于同一系统创建许多系统变体 "CIoT智能设备".
以太网和WiFi控制器允许与系统进行基于IP的通信(无需为向GSM运营商的数据传输付费)。 该设备还对引导加载程序进行了加密,并且可以通过其本机界面更新设备。 对于WiFi,它具有从主服务器进行的OTA固件升级
LoRaWAN可以实现很长距离的数据传输(最大可达 15公里)。 此范围取决于数据传输的速度,数据量,区域的城市化程度以及设备的无线路径的效率。
我们的设备包括一个微控制器和用于通信的LoRaWAN模块。 微控制器包含一个加密的引导加载程序,用于安全的OTA软件更新。 这使您可以基于同一系统创建多个系统变体 "IoT smart device". 这些设备在ISM开放频段内运行,无需支付额外的订阅费用。 必须使用LoRaWAN网关覆盖Internet的整个区域。 如果设备范围内已存在LoRaWAN网关(已为TTN服务器配置),则可以通过它们发送信息。 固件升级需要自己的网络/应用程序LoRaWAN服务器以及良好的通信范围。
有几种业务合作的选择:
进出口准备好的产品(配电盘,设备)-最终产品
进出口OEM产品(PCB,控制器等)-中间产品,备件
专营权-根据我们在iSys-智能系统品牌下在本地市场的许可证(仅提供经过编程的微控制器)进行生产
联合生产-(如上所述),但在外部品牌下
@City平台支持可定制的前端模板,用于数据可视化,查询,限制和处理(当前/历史数据):
可视化地图上的选定数据(地理定位)
在表格中显示选定的数据和结果
在条形图中显示所选数据
在历史图表中显示选定的数据
将数据导出到第三方应用程序并进行进一步处理
其他功能将根据个人要求进行更新。
可以通过静态IP或DNS重定向域/子域/文件访问用户的前端(如果有)。
示例和演示安装(仅对潜在客户启用)。
如果您想对其进行测试,请通知我们-以便公众访问该平台。
它可能需要远程计算机的静态IP才能与@City平台进行通信。
出于安全原因,有意将主页留空: http://%YourIP%/ IoT /
它可能会被单独启用和编辑,并包含指向以下所有可用服务的链接: @城市ity平台 如果需要
主表单旨在创建新的预设和标签:http://%IP%/IoT/que.php
这是用于为每种配置创建结果,视图和选项卡的初始形式
说明(从上,左到右方向)
修改可视化主题CSS文件必须存在于 "模板/ css /" 目录-自动列出。
选择表上可见的主要字段。 它 已更新 自动地。
取消选择所有字段(必须手动选择其中一些字段)
选择所有字段(之后必须手动取消选择其中一些字段)
这等效于所有(X)复选框
分别创建的带有名称和预设的选项卡(存储在 cfg / tabs.cfg 文件 )。
该文件实际上包含名称和URL(用tab char分隔)。
显示受“字段过滤器”限制的所有字段。
表格中的栏位:
地图-在地图上映射结果(可以选择一个或多个字段)
历史 -历史图表(可以选择一个或多个字段)
tab -显示表格(可以选择任何字段组合)
酒吧 -条形图上仅显示一个字段
按下其值之一时,它将打开具有选定字段的新结果(对于当前行)。
添加/删除名称设置为的选项卡 标签 场地。 它仅使用在表的同一行中选择的字段。
按下任何其他字段名称将启动所选行的所选字段的数据可视化。
显示字段的顺序与字段形式中的顺序相同(但是 Tm值 字段总是发送到text的末尾)。 只能通过直接编辑URL参数(字段顺序部分)来更改此顺序。
例如:使用 资产追踪 在地图上命名并包含时间和速度的地图
所有描述均指行所在的位置 "Map" 文字在 "跑步" 柱子。
输入名字 "资产追踪" 在 标签 字段(不带引号)
确保在行中未选中所有列
选择 Tm值, gps_speed_km 仅在行中
按 + 按钮在行中的位置
可以通过预先配置从MainForm启动地图
通过链接直接执行时,地图初始化是手动执行的: > http://%IP%/IoT/maps.php
用户应取消选择所有字段(按 取消选择 按钮 )
按下某些复选框以显示字段(例如 艾因5 (烟雾级别)和 Tm值 (用于测量日期/时间)
按 “ V” 复选框以隐藏字段表单
按 执行 按钮以运行数据库查询并显示所有传感器/设备的当前信息
包含数据的地图会在30秒或更长时间后更新。
从左到右描述的设置(在上面的屏幕截图中)。
可以使用(+/-)按钮缩放比例(分别为current_scale * 2或current_scale / 2)来修改缩放级别。 按此按钮之一将自动修改比例。
另一种方法是在 飞涨 组合框字段,然后按 执行 按钮。 在这种情况下,将重新加载和刷新整个View / Map(在初始化期间需要一些时间)。
IMEI字段包含设备的唯一ID或设备的唯一别名。 默认设置为 * (星号),其中显示了每个设备的最新值和地理位置。
将IMEI设置为任何其他值,将显示所选设备的历史数据。 仅对移动和移动传感器有意义,否则结果将在地图上的相同位置重叠。
设置地图的中心位置。 在地图上按下鼠标按钮时,此字段设置为光标位置。
可以从以下样式中选择地图样式/主题 Map 组合框字段(例如 深色,灰色,地形()。
各种地图主题可能具有不同的最大缩放级别,因此可能会强制使用适当的主题以增加地图比例。
其中Clause用于MySQL / MariaDB的附加查询字符串{WHERE part}。
对于数据库结果的构造完整的QUERY字符串,将考虑此子句。 它可能会通过限制结果计数来限制数据,时间和任何其他值。 必须在此字段中使用原始表字段名称(不是alias)。 例如。
gps_speed_km> 10 //速度超过10km / h
ain5> 3 // ain5大于3(持有2.5um粒子数-烟雾水平)
gps_speed_km> 10 and ain6> 5 //速度大于10km / h且ain6大于5(持有10um粒子数-烟雾水平)
需要按此按钮才能更改任何设置,参数(按除外)。 +/- 纽扣 )。
从新的预设开始加载地图。
当没有数据可用于当前查询时,根本不会加载地图。
按下此按钮后,至少必须手动选择一个字段才能在地图上显示结果。
此复选框用于显示/隐藏要显示的字段选择器。
此复选框启用隐藏整个表单,除了( +/- 纽扣 )
地图上的结果会不断刷新并使用新值进行更新
例如,烟雾结果(传感器安装在汽车上):烟雾级别2.5um粒子(Ain5),速度(gps_speed_km),日期/时间(tm),地图(2-地形),缩放级别16,
Where子句:
"gps_fix = 3和tm>“ 2019-02-18 00:00:00”和tm <“ 2019-02-19 00:00:00”和gps_speed_km> 0".
// GPS =有效的3D结果&日期= 2019-02-18&速度> 0 km / h
在表格中显示结果。
上 "主要形式" 按 "桌子" 项目,选择一些字段以显示预配置的表后
从链接打开表时 http://%IP%/IoT/que.php?func = tabs 它需要事先进行设置初始化。
您可以选择可见字段(通过按 "可见场" )复选框。
按下所有必填复选框以显示字段
按下复选框 "可见场" 隐藏字段表格
按执行按钮运行数据库查询并显示表
设置从左到右(在屏幕截图上)描述。
排序字段等效于按列标题。
IMEI字段包含设备的唯一ID或设备的唯一别名。 如果值为空,则显示最新值表。
将IMEI设置为任何其他值,将显示所选设备的历史数据。
这是MySQL / MariaDB附加查询字符串{WHERE部分}的sufix。
考虑此子句以构造数据库结果的完整QUERY字符串。 它可能会通过限制结果计数来限制数据,时间和任何其他值。 必须在此字段中使用原始表字段名称(不是alias)。 例如。
gps_speed_km> 10 //速度超过10km / h
ain5> 3 // ain5大于3(持有2.5um粒子数-烟雾水平)
gps_speed_km> 10 and ain6> 5 //速度大于10km / h且ain6大于5(持有10um粒子数-烟雾水平)
按下此按钮后,至少必须手动选择一个字段才能在地图上显示结果。
需要按此按钮才能更改任何设置,参数(按除外)。 +/- 纽扣 )。
从一开始就使用新的预设重新加载表格。
此复选框用于显示/隐藏要显示的字段选择器。
表中的结果按以下顺序排序 种类 字段设置。 可以通过按行标题来更改排序顺序(对于一个方向一次,对于另一个方向两次)。
列中的某些结果链接到其他可视化屏幕(硬编码)。
当显示设备的历史数据时,应该限制它以便不显示整个历史信息,因为这可能会导致性能或内存不足问题。
条形图应从“主窗体”中执行,方法是按“条形”行中的单个字段。
它显示归一化为最大值的排序条,从最高到最低顺序显示。
这对于快速检查极端结果并采取一些措施很有用。
鼠标悬停事件将显示设备的其他信息。
当按下“历史记录”行中的选定列(对于单个字段)时,可以从MainForm中启动历史记录图表。
对于“历史记录”行中的多个字段,必须选中所需的字段,并且必须在“运行”列中按下“历史记录”链接。
如果未设置任何限制,则历史结果仅限于过去24小时+接下来的24小时(以最终刷新图表)。
从主链接打开的历史图表在没有首选项参数的情况下从链接打开时,需要其他结果进行初始化。
可以选择多个字段以显示各种项目。 也可以在“字段过滤器表单”中设置。
按下所有必填复选框以显示字段
按下复选框 "可见场" 隐藏字段表格
按执行按钮运行数据库查询并显示表
从上到下,从左到右(在屏幕截图上)描述的项目。
IMEI字段包含设备的唯一ID或设备的唯一别名。 使用*(asterix)值显示没有意义的最新值表。
将IMEI设置为任何其他值,将显示所选设备的历史数据。
限制数据结果的子句MySQL / MariaDB附加查询字符串{WHERE part}。
对于数据库结果的构造完整的QUERY字符串,将考虑此子句。 它可能会通过限制结果计数来限制数据,时间和任何其他值。 必须在此字段和有效的SQL语法中使用原始表字段名称(不是alias)。 例如。
gps_speed_km> 10 //速度超过10km / h
ain5> 3 // ain5大于3(持有2.5um粒子数-烟雾水平)
gps_speed_km> 10 and ain6> 5 //速度大于10km / h且ain6大于5(持有10um粒子数-烟雾水平)
按下此按钮后,必须至少手动选择一个字段以显示历史结果。
需要按下此按钮才能更改任何设置和参数(显示字段或查询面板除外)。 从一开始就使用新的预设重新加载表格。
此复选框用于显示/隐藏要显示的字段选择器。
鼠标指针显示测量值和日期/时间。
功能/ WWW浏览器 | 镀铬72 | 火狐65 | 边缘 | 歌剧58 |
地图 | + | + | + | + |
历史的 | + | +(*) | + | + |
吧台 | + | + | + | + |
制表符 | + | + | + | + |
*-Firefox不支持日期/时间选择器(必须使用正确的日期时间格式手动编辑文本字段)。
不支持Internet Explorer(使用 边缘 反而 )
其他Web浏览器未经测试。
网页基于位于以下位置的常规模板文件 “模板” 目录“ * .template”。
此外,每种页面类型都包含:
“ * .head”文件,用于存储页面的页眉(链接,导入的CSS,JavaScript文件等)。 )
“ * .foot”文件,用于存储页面的页脚(链接等) )
可视化主题可以根据用户的喜好通过修改和修改CSS文件进行更改。 CSS文件位于 “模板/ css” 目录。 可能会使用不同的Web页面主题来进行优化,例如。 印刷,智能手机,PAD模板。
标签le 视图-具有用于选择CSS文件以完整修改主题的可选字段(存储在 “模板/ css /标签” 目录 )。
Map 意见 - 一般主题由 “地图” 键入组合框。 此外,还有默认的CSS文件 “模板/css/map.css” 其中包含一些其他功能,例如根据其值隐藏/着色结果。 该CSS文件的其余部分实际上仅限于查询和字段形式。
大多数 @城市平台 用于可视化的PHP文件接受 的CSS参数,带主题文件名的值(不带扩展名)。 文件必须位于“ templates / css”目录中,并且名称区分大小写。
主题显示的某些元素直接位于in文件中,该文件位于 “模板/ js” 目录。
主要的 @城市 脚本“ @ City.js” 位于上层目录中。 在此没有修改的可能性 位置,但是脚本可以复制到 “模板/ js” 目录并在那里进行修改。 使用单个脚本需要更新所有头文件。
一些独特的传感器可能需要专用的计算功能。
无法更新和维护以下版本的多个变体 @City Server软件, 前端PHP界面,这会导致很多问题,版本,错误。
最好的和最简单的方法是更新JavaScript“覆盖”文件,以正确显示值/说明。
原始JS脚本是开放文本文件,可以根据客户需要采用。 如上一章所述,必须将它们复制到 “模板/ js” 客户具有修改权限的目录。
编程技术方面 @城市 系统不是本文档的主题,但是具有HTML和JS基本知识的Web开发人员可以根据个人客户需求定制前端Web应用程序。
@City数据库的名称 “物联网” 或者 “ * IoT” 分为表格(其中asterix是前缀,具体取决于托管服务器-如果需要)。 在PHPAdmin(Web应用程序)的链接上可能会观察到数据库 http://%IP%/ phpmyadmin
为每个设备设置的表 ( 在哪里 * {asterix}是IMEI地址-唯一ID):
“ * _t” -当前用户授权的令牌(不适用于单客户云)
“*_C” -命令(事件)队列-要发送到设备
“ *” -所有解码状态结果。
其他表:
“ ithings_” 表格-包含所有设备的解码后的当前状态(在更新任何 “ *” 表格)。 结构 ithings_ 桌子几乎是一样的 “ *” 桌子。 “ ithings_” 有邮政地址和说明的其他字段。
“用户”表是受限制的,应进行修改。
“ idx” - 指数
“Tm值” -自动时间戳
“ dt” -Unix时间戳
“ imei” -唯一的设备地址
“ rssi” -RSSI信号电平
“ rsrp” -RSRP信号
“事件” -等待事件发送到控制器
“ out1” .. “ out16” -解码输出状态
“ in1” .. “ in16” -解码输入状态
“ ain1” .. “ ain8” -解码的ADC值(RAW)
“ sens1” .. “ sens8” -转换后的传感器值(取决于设备类型)
“ dimm1” .. “ dimm8” -解码的调光器值(取决于设备类型)
“ int1” .. “ int6” -解码后的计数器值(取决于设备类型)
“文本1” .. “ text6” -解码后的文本值(取决于设备类型)
“创建” -设备创建日期/时间
“最后的” -最后日期/时间
“用户”-将来使用
“通过”-将来使用
“ sn”-gsm串行nr
“地位” -当前控制器状态未以十六进制格式解码
“ hash_code”-将来使用
“ addr”-短设备地址
“ fwnr”-固件nr
“ disabled”-禁用的设备(未执行)
“ gsm_nr”-CIoT gsm编号
“供应商”-供应商代码(用于特许经营/合作生产)
“时区”-时区偏移量
“ dst”-使用“每日储蓄”设置
“ gps_lat” -GPS纬度
“ gps_long” -GPS经度
“ gps_hdop” -GPS HDOP
“ gps_alt” -GPS高度
“ gps_fix” -GPS固定(必须为3-以获得有效结果)
“ gps_cog” -GPS齿轮
“ gps_speed_km” -GPS速度[km / h]
“ gps_sat” -找到GPS卫星
“大陆”,“国家”,“区域”,“子区域”,“子子区域”,“城市”,“区域”,“街道”,“ street_nr”,“ item_nr”- 客户地址和描述字段 (!!!!不适用于“ *” 历史表)
“日志”-日志数据
字段名称对于创建SQL查询以增强搜索功能非常重要,因为必须在SQL语句中使用原始名称。
该表是每个设备的事件/命令队列,并具有以下结构:
“命令”-要发送或已经发送到控制器的命令
“已确认”-确认标志(如果已发送并确认)
“日期”-事件的Unix时间戳
“已更新”-自动更新标志(时间戳日期/时间)
无需前端Web应用程序就可以访问数据。 @City系统包含具有中级功能的脚本。 结果以JSON格式返回。
http://%IP%/IoT/que.php?func = devsjson
查询整体返回 “ _ithings” JSON格式的表格(所有设备的当前状态):
[{ "国家":"", "城市":"", "大陆":"", "国家":"", "地区":"", "次区域":"", "次分区":"", "城市":"", "区":"", "街道":"", "street_nr":"", "item_nr":"", “ gps_lat”:"0000.0000N", “ 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", "锡":"", “地位”:"73000200000f360033026800240000002c002c002dffffffffffffffff5b63000001c1000001c2000000000000000009250a4f0a760a7a0a750a780a7e0000031d032205fc34029b025c025600460eb305320000", "hash_code":"", "地址":"", "fwnr":"", "残障人士":"", "gsm_nr":"", "小贩":"", "时区":"", "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”:"", “事件”:"", “ 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", "in2":"0", "in3":"0", "in4":"0", "in5":"0", "in6":"0", "in7":"0", "in8":"0", "in9":"0", "in10":"0", "in11":"0", "in12":"0", "in13":"0", "in14":"0", "in15":"0", “ in16”:"0", “ ain1”:"3894", "ain2":"51", "ain3":"616", "ain4":"36", "ain5":"0", "ain6":"44", "ain7":"44", “ ain8”:"45", “ sens1”:"0", "感觉2":"0", "感觉3":"0", "感觉4":"0", "感觉5":"0", "感觉6":"0", "感觉7":"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", “文本1”:"", "文字2":"", "文字3":"", "文字4":"", "文字5":"", “ text6”:"" }]
通过IMEI nr查询单个设备的历史数据:
http://%IP%/IoT/que.php?func = imeijson&imei = 356345080018095
由于整个表可能包含数百万行,因此应使用WHERE子句进行限制,以免挂断服务器。
附加参数url参数:
功能 -imeijson
imei -设备的IMEI
场地 -要显示在结果中的字段(以逗号分隔的列表)
分 -列表中第一个字段的最小值
最大限度 -列表中第一个字段的最大值
s或者t - 排序字段
Tm值 -字段会自动添加到结果中。
where -限制数据的where子句
例子:
我们想要得到以下结果
用于具有 imei=356345080018095
显示字段: ain5,ain6,gps_lat,gps_long
和限制 ain5 在范围内 ( 1,10000 )-必须是列表中的第一个字段
和 全球定位系统 有有效数据 (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&field =ain5,ain6,gps_lat,gps_long&min =1&max =1000&where =gps_fix = 3和tm>“ 2019-02-14 23:00:19”和tm <“ 2019-02-15 00:00:00”
查询结果:
[{ "ain5":"66","ain6":"68",“ gps_lat”:"5202.7326N",“ gps_long”:"02115.8073E",“Tm值”:"2019-02-14 23:04:31" },{ "ain5":"67","ain6":"76",“ gps_lat”:"5202.7328N",“ gps_long”:"02115.8075E",“Tm值”:"2019-02-14 23:05:42" },{ "ain5":"63","ain6":"77",“ gps_lat”:"5202.7328N",“ gps_long”:"02115.8074E",“Tm值”:"2019-02-14 23:06:05" },{ "ain5":"58","ain6":"77",“ gps_lat”:"5202.7328N",“ gps_long”:"02115.8075E",“Tm值”:"2019-02-14 23:06:32" },{ "ain5":"58","ain6":"68",“ gps_lat”:"5202.7328N",“ gps_long”:"02115.8076E",“Tm值”:"2019-02-14 23:06:55" }]
此函数从“ _ithings”表返回有限的数据
http://%IP%/IoT/que.php?func = fieldjson&field = ain5&min = 13&max = 5000
参数:
功能 -fieldjson
场地 -要在结果中显示的字段- imei 和 Tm值 自动添加
分 -字段的最小值
最大限度 -字段的最大值
对于上述查询字符串,它返回 结果 ain5,imei,tm 领域:
如果 ain5 在范围内 (13,5000)
查询结果:
[{“ imei”:"353080090069142", “Tm值”:"2019-03-14 11:51:01", "ain5":"14" },
{“ imei”:"356345080018095", “Tm值”:"2019-02-20 09:13:04", "ain5":"115" },
{“ imei”:"卡切夫", “Tm值”:"2019-03-07 13:08:22", "ain5":"103" }]