PLC网关采集西门子S7-1200对接MQTT服务器的操作步骤详解

一、软硬件描述
西门子plc s7-1215
钡铼bl102网关
mosquitto mqtt服务器(腾讯云上搭建)
可以上网的路由器一套
二、需要使用的软件。
西门子portal v15.1 (西门子plc编程软件)
钡铼bl102调试软件及说明书。
说明书下载链接: http://rtu-m2m.com/download/manual/中文/bl102_中文说明书_v1.0.zip 调试软件下载链接: http://rtu-m2m.com/download/software/中文/bl10x_中文配置软件.zip  
mqtt.fx mqtt服务器调试工具
腾讯云服务器(各种云服务器都可以,不限腾讯云)
三、网络构架及需实现功能描述
1.bl102网关将s7-1200 plc中的数据上传入云服务器中的mosquitto mqtt服务器,云上的后台软件可以截取相关数据。然后发送给前端显示。
后台软件如何截取,见b站视频django物联网后台开发`https://www.bilibili.com/video/bv1ql4y1b7nu?spm_id_from=333.337.search-card.all.click `  
2.前端接受到信息后,将信息传送给后台软件,后台软件通过mosquitto服务器将信息发送到bl102上,bl102网关修改plc中是数据。
四、在腾讯云上安装mosquitto mqtt服务器以及mqtt mqtt.fx软件的使用。
具体操作详见我的博客: https://www.cnblogs.com/zhangming82/p/16122210.html  
五、bl102连接西门子s7-1200 plc。
1.将24v直流电源接入bl102网关以及plc的供电端子。 2.将网线一端插入bl102 wan网口,一端插入plc网口。 3.取另外一根网线,一端插入bl102 lan网口,一端插入电脑网口。并且将电脑ip设置成192.168.3.**(除192.168.3.1以外的ip) 4.打开bl102调试软件,点击软件上的设备搜索。开始搜索到设备。搜索到设备后进入主界面。 5.鼠标双击界面上的“wan”,在弹出界面中,将wan口改成与plc同一个域的ip(例如目前我设置的plc ip为192.168.1.250,而bl102 wan口ip改为了192.168.1.254)。子网掩码和网关同样填写,dns不做要求。填写后,点击“写入配置”将信息写入bl102网关。 6.拔下bl102 lan口网线,将网线插到路由器上,使电脑和路由器连接。将电脑和路由器ip改为同一个域。(比如我的电脑ip改为 192.168.1.22//路由器ip改为 192.168.1.20)。 7.再取第三根网线,一段插在路由器上,一段插在plc的网口上。 8.打开西门子portal v15.1软件,在硬件组态中设置好plc的属性。特别要注意的是因为bl102可以通过s7通讯协议直接读取plc中的数据,因此必须在portal软件中“连接机制”里的“允许来自远程对象的put/get通讯访问”打开。否则bl102将无法与plc进行通讯。然后将改好的配置程序下载到plc中。 9.打开bl102调试软件,在界面“wan”点击鼠标右键后,选择添加。在弹出的设备信息上,填写西门子plc的ip端口号等。填写后点击确定。(端口号为102) 10.点击确定后,在界面右侧灰色区域点击鼠标右键,选择添加。加入需要监控的plc数据。然后将修改好的配置下载入bl102网关中。(注意,可以对plc的 i/q/m/db等进行监控,但是如果要监控db块的内容。必须在portal软件中选择db块的属性,取消“优化块的访问”)。
11.进入bl102调试界面,当界面上“wan”红灯亮起,表示已经与plc连接。  
六、bl102网关连接mosquitto mqtt服务器。
1.打开bl102网关调试界面,双击云平台-- >mqtt client one,进入界面。在界面中设置好ip,端,用户名,密码口等信息,并且数据模板选择“kingpigeon”,以及填写好订阅主题和发布主题,以及上传周期。(之所以选择kingpiageon是因为这个模板比较简单,说明书写的内容也比较多一点) 2.在右侧灰色界面中,点击鼠标右键,选择添加。加入需要通讯的plc变量点(plc变量点如何设置见上面),选择完毕后,将数据下载到bl102中。 特此强调:订阅主题,必须在主题内容的后面,增加/+。 3.进入bl102调试界面,当界面上“mqtt client one上线状态”红灯亮起,表示已经与mqtt服务器连接正常。 4.将修改的配置下载如bl102中后,可以通过mqtt.fx软件对bl102进行mqtt发布,订阅信息的验证。  
七、bl102网关订阅、发布信息格式---kingpigeon模板
1.bl102网关订阅格式
{ sensordatas: [{ //布尔量flag: y0, //读写标识switcher: 1 //数据类型及值},{ //数值型flag: vw0, //读写标识value: 8 //数据类型及值}],}  
2.bl102网关发布格式


代码质量:需求可追溯性同样重要
FDMA1024NZ 有效延长电池寿命的MicroFET M
华为荣耀Note9什么时候上市?荣耀Note9最新消息:荣耀V9、荣耀9开胃菜,荣耀Note9放大招?
余承东发话:华为P10双版本春季发布,麒麟965+莱卡双摄
浏览器HTTP请求分析
PLC网关采集西门子S7-1200对接MQTT服务器的操作步骤详解
4G技术的三大关键技术进行探讨及其实际应用面临的挑战分析
当颜值遇上配置:荣耀8青春版,荣耀V9和华为P10,该如何选择?
紫光国微旗下国芯晶源获评2023年“国家知识产权优势企业”
大数据工程师的工作内容有哪些
从芯片到测试,详细解析Type-C 产业链全部细节
细说GNSS模拟器的RTK功能(二)应用实例01 — 硬件和软件设置
大幅面扫描仪的扫描速度
d型空气开关和c型空气开关的区别
dfrobot树莓派UPS电源扩展板简介
智能门禁电源的注意事项你都知道吗!
日本对韩限贸后首次批准向韩国出口半导体制造材料
Free RTOS的互斥信号量
什么是步进电机?步进电机的种类
智芯传感连续荣获国家“高新技术企业”称号