一个简易的可视化方案--从设备层到服务器层的可视化方案Yanhobey2020/4制数据收集工业现场数据收集的方式太多种,例如:1、物联盒,品类繁多,各有特点。2、MasterPLC,专门做收据收集和上传的PLC3、PC…、单片机数据上传一般分为上传到本地和到云服务器的上传。上传的方式也视情况而不一样。而现在物联网大多数使用的是MQTT协议,这里也使用的是MQTT协议。网上也有一些可以免费使用的MQTT服务器,可用来实验测试。网址这里不能打出来,因为这样文档就不会通过了(搜CloudMQTT)。一般来说,数据库是数据存储的首选。数据库有关系型数据库和非关系型数据库,具体使用哪种数据库视情况而定。这里使用的是非关系型时间序列数据库InfluxDB。数据存储数据分析数据显示一般关系到一些软件的前端开发和后端数据处理,有C/S和B/S两种架构。本文当然不会介绍那么复杂的。这里主要使用node-red和grafana两种dashboard工具。数据显示数据收集数据上传数据处理数据可视化简述数据收集如何收集设备数据?1、使用IOT盒子,一般盒子满足很多种通信协议,能够轻松收集设备数据2、使用PLC,作为自动化的核心,现在大多数情况下都是使用PLC进行数据收集。3、直接使用PC进行现场数据收集数据收集在自动化行业中的解决方案还是很多的,这里就不做赘述数据上传数据上传分两种:云端服务器本地服务器数据上传设备现在一般上传的协议都是MQTT和OPC本地服务器没有协议限制,根据现场情况而定一般来说,数据上传设备兼具数据收集的功能,并且兼有一部分数据处理的功能,这里PLC就起到很好的作用。这里只做MQTT协议上传的说明。据我了解,目前直接支持MQTT协议上传的PLC好像只有倍福和OMRON的。其他家的好像都是需要借助于网关盒子进行协议转换来上传数据(这里不是广告,我也是百度的)。SocketModbusCIP无协议ProfinetFinsMQTT、OPCMQTTOPC服务器专有协议网关设备数据处理数据处理的阶段,前面其实已经说到了一点,可以在数据收集层也可以放在服务器里去处理。数据上传设备设备层数据简单处理服务器数据高级处理本文只是对架构进行概述,不对算法什么的进行讲解。数据可视化可视化平台是搭建在服务器的两个dashboard服务,可以实现数据的处理和可视化。Grafana可视化演示Nodered可视化工具架构数据流向简单可视化实例讲解工具实验前先准备以下软件包,并进行安装1、MQTT客户端这里可以是网关服务器、PLC、MQTT软件,做数据上传。2、MQTTBroker(Mosquitto)MQTT服务终端3、NodeRed数据收集、存储处理、数据显示4、influxDB时间序列数据库,数据存储5、Grafana显示面板架构现场数据收集IOPLC单片机其他MasterPLC服务器数据存储、处理、显示实验可以只用两个层面1、数据上传,可以是有MQTT协议的masterPLC,也可以是网关,或者另外一台有MQTTClient软件的电脑。2、服务器,服务器要进行数据处理、存储和显示,也是本实验的主要内容MQTT协议上传服务器架构MQTT数据上传设备MQTT协议MQTTBroker安装MosquittoNode.js数据接收安装NodeRed数据处理和转存以及显示数据库安装InfluxDB数据存储可以选用自己想用的数据库,也可以多个数据库并用安装Grafana显示面板显示面板,提取数据库数据进行显示服务器其他软件数据流向MQTT数据上传设备MQTT协议MQTTBrokerMosquittoNode.js数据接收NodeRed数据处理和转存以及显示数据库InfluxDB数据存储,将数据按照时间格式进行存储Grafana显示面板显示面板,提取数据库数据进行显示服务器①字符串或者json字符②③④这里只做了数据的单向流。双向流可以通过当前架构进行反向操作也可以简单改下架构进行双向流的搭建。很多人看了这个架构后差不多会有一个疑问,node-red可以实现面板显示,为什么还要用grafana。这两个平台的功能其实是互补的,用过后就知道了。各位加油!NodeRED可视化通过MQTTClient连接到MQTTBroker上进行数据的收集,再通过json、function等功能进行数据转译,并通过仪表板进行显示,这里还将数据保存到了influxDB中。这是node-red中的编辑样式,下面的备注中有页面的导入代码,可以复制粘贴进行查看。这是具体效果,这些数据都是实时显示的,...