IoT数采平台2:文档
IoT数采平台1:开篇
IoT数采平台2:文档
IoT数采平台3:功能
IoT数采平台4:测试
【平台功能】
管理功能: 平台首页、 基础配置、 实时监控、 设备管理、 网关服务、 规则引擎、 场景联动、 告警列表、 系统配置、 版本信息、 接口文档
消息通知: 设备上线、设备下线、 数据变化、 告警信息、 实时数据
【平台部署】
操作系统:Windows、Linux、macOS
使用方式:软件授权
适用场景:内网部署
组网方式:有线、WIFI、LORA
【支持设备】
PLC:三菱、西门子、Modbus、汇川、欧姆龙、LSiS、基恩士、松下、罗克韦尔、倍福、通用电气、安川、山武、理化、永宏、丰炜、富士、信捷、麦格米特、横河、丰田、台达
机器人:EFORT、KuKa(库卡)、YRC1000(安川)、HighEthernet(安川)、ABB、Fanuc(发那科)、Estun(埃斯顿)、Hyundai(现代)、YamahaRCX(雅马哈)
CNC:Fanuc(发那科)
仪器仪表:DAM3601(阿尔泰科技)、DLT-645 1997、DLT-698、CJT188
其他设备:自定义通信协议
【网关服务】
网关类型: Modbus网关、 OPC网关、 MQTT网关、数据备份(MySQL、SQL Server、PostgreSQL)、内置MQTTServer、内置ModbusServer(支持DTU连接RTU,ASCII设备上云)
【场景联动】
联动场景:开启数采/关闭数采/上报数据/数据清洗
触发参数:多设备联动请用以英文分号(;)隔开
场景1:信号数采,通过轮询Modbus RTU IO采集模块,当io=true,指定设备开启数采;当io=false,指定设备关闭数采/上报数据
输入: 更新modbus tcp 00105:true -> false
输出:iot/data {"sn":"","d":[{"tag":"a1","value":"0"},{"tag":"a2","value":"0"}],"ts":"2024-04-30 12:00:15"}
场景2:扫码数采,PDA扫码webapi触发数据变化事件,开始数采指定设备,当结束io=true,上报扫码值+测试设备数据
测试用例 输入:{"sn":"w0nMdNkLtZQmMcvW","d":[{"tag":"content","value":"2730001"}],"ts":"2024-04-01 00:00:00"} + 更新modbus tcp 00106:true
输出:iot/data {"sn":"","d":[{"tag":"QRCode","value":"2730001"},{"tag":"aa1","value":"0"},{"tag":"aa2","value":"0"},{"tag":"aa3","value":"0"},{"tag":"aa4","value":"0"},{"tag":"aa5","value":"0"}],"ts":"2024-04-30 11:55:10"}
场景3:数据清洗,采集时间,产能,计算效率
【驱动参数】
串口组:适用场景Lora,串口透传,主站通过一个串口轮询不同地址设备
Modbus串口参数 {"PortName":"COM1","BaudRate":9600,"Parity":"None","DataBits":8,"StopBits":"One","SalveId":1,"AddressStartWithZero":false}
PortName: 串口号 Window:COM1 Linux:/dev/ttyS0
BaudRate: 波特率
DataBits: 数据位
Parity: 校验位(None, Odd, Even, Mark, Space)
StopBits: 停止位(None, One, Two, OnePointFive)
SalveId: 从站地址
AddressStartWithZero: 首地址从0开始
Modbus网口参数 {"HostAddress":"192.168.0.88","PortNumber":521,"SalveId":1,"AddressStartWithZero":false}
HostAddress: 服务器ip
PortNumber: 服务器端口
SalveId: 从站地址
AddressStartWithZero: 首地址从0开始
Opc Ua参数 {"Url":"opc.tcp://192.168.0.99:51210/OpcUaServer.Data_Center","LoginType":"Anonymous","UserName":"admin","Password":"123456","CertPath":"D:\\\\xx.pfx","CertKey":"123456"}
LoginType: 登陆方式(Anonymous:匿名登陆;Account:账号登陆;Certificate:证书登陆)
UserName: 用户名
Password: 密码
CertPath: 证书地址
CertKey: 证书密钥
MQTT参数 {"MQIP":"192.168.0.88","MQPort":1883,"MQUid":"admin","MQPwd":"123456","SubTopic":"data/device_id","PubTopic":"cmd/device_id","Decode":""}
MQIP: MQTT服务器IP
MQPort: MQTT端口
MQUid: MQTT用户名
MQTT密码: MQTT密码
SubTopic: 订阅主题
PubTopic: 发布主题
Decode: 解码器名称(空时,为数据透传,更新EquipInfo表中的UData字段)
参数示例:研华网关ECU1251
{"MQIP":"192.168.0.88","MQPort":1883,"MQUid":"admin","MQPwd":"123456","SubTopic":"data/IQYGQTTgrUD4Z5A6","PubTopic":"cmd/IQYGQTTgrUD4Z5A6","Decode":"ecu1251"}
报文示例:
{"d":[{"tag":"address1","value":11.00},{"tag":"address2","value":0.00},{"tag":"address3","value":0.00}],"ts":"2024-03-30T03:43:00Z"}
自定义参数
TCP/UDP监听 {"PortNumber":8080,"Decode":"","EncodeData":[],"EncodeType":"HEX"}
PortNumber: 监听端口,端口复用,该端口同时支持TCP/UDP
TCP/UDP主动 {"RemoteIp":"127.0.0.1","RemotePort":6780,"LocalIp":"127.0.0.1","LocalPort":6880,"Decode":"","EncodeData":[],"EncodeType":"HEX"}
RemoteIp: 服务器IP
RemotePort: 服务器端口
LocalIp: 客户端IP
LocalPort: 客户端端口(当LocalPort等于0时,任意端口连接,当LocalPort不等于0时,指定端口连接,端口释放再启用,需等待系统清理端口时间,约3分钟)
Decode: 解码器名称(空时,为数据透传,更新EquipInfo表中的UData字段)
EncodeData: 编码数据(1条或者多条),当server监听到client连接时或者client连接server成功后,定时发送该数据
EncodeType: 编码格式(HEX:流数据,ASCII:字符串)
支持TcpServer,TcpClient、UdpServer、UDPClient,使用场景:DTU数据透传/Client主动反馈结果/Server发送请求,Client反馈结果
文件参数 {"ShareUrl":"\\\\192.168.0.88\\share","Decode":""}
ShareUrl:共享路径
Decode: 解码器名称(空时,无操作)
文件数据采集流程:读 -> 入库 -> 删除,支持文件后缀为txt、xlsx
HTTP参数:
接口名称: 批量数据采集 api/collect/batch
接口方式: post
接口报文:
{"sn":"wdCUuqWQ4p6NHc2Z","d":[{"tag":"address1","value":"1"},{"tag":"address2","value":"2"}],"ts":"2024-04-01 13:07:17"}
{"sn":"wdCUuqWQ4p6NHc2Z","d":[{"tag":"io1","value":"True"}],"ts":"2024-04-01 13:07:17"}
sn: 对应设备表 设备SN
tag:对应点位表 点位地址
云服务参数
mqtt 上行报文 {"sn":"wdCUuqWQ4p6NHc2Z","d":[{"tag":"address1","value":"1"}],"ts":"2024-04-01 13:07:17"}
sn: 对应设备表 设备SN
tag:对应点位表 点位别名
数据备份数据表(backup_data):
equip_alias:设备id
point_alias:点位id
record_time:采集时间
record_value:采集值