一准备工作。
1.1 在对接前我们需准备如下物品;
1) S7-200 一台(建议使用CPU226 或CPU224 有两个串口的PLC,1#port 做程序的下载和在线监视,0#port 做Modbus-RTU从站与GM10-DTU 模块通讯)。带编程电缆
2) USB 转232 数据线一颗(如果电脑主机有串口那就可以免去此线)。
3) 河北蓝蜂科技的GM10-DTU 模块一台。以及配带的232 串口线,天线和电源适配器。
4) SIM 卡一张,有流量,大卡。
5) DP9 针公头一个。
6) 联网电脑一台(WinXP/Win7/Win8 操作系统)
7) 电工工具、导线若干。

图1
1.2 GM10-DTU准备工作
此处参考《GM10-DTU 用户使用手册》进行操作,我们需要对GM10 连接天线、插上SIM 卡(移动/联通无欠费电话大卡)、连接12V 电源适配器、连接232 调试线到电脑串口(或USB 转232串口线)。
1.3 200PLC 准备工作。
200PLC 连接电源(注意电源是24VDC 还是220VAC),准备一颗9针串口头(如上图),用两颗导线分别焊接的3 和8 引脚(200 系统手册中有介绍,3 和8 引脚为485 通讯口)。
二,200PLC 从站创建。
1,将200PLC 经编程电脑连接到电脑上,打开Step7-MicroWin 编程软件,新建工程,在主程序中添加Modbus Slave Port0 功能块(MBUS_INIT,MBUS_SLAVE)

图2
库文件
•西门子Modbus从站协议库包括两条指令:MBUS_INIT 指令和MBUS_SLAVE指令。
•MBUS_SLAVE 指令用于为Modbus 主设备发出的请求服务。
•MBUS_INIT 指令用于启用、初始化或禁止Modbus 从站通讯。在使用MBUS_SLAVE 指令之前,必须正确执行MBUS_INIT 指令。指令完成后立即设定“完成”位,才能继续执行下一条指令。

图3
•EN:指令使能位。•Mode:模式选择,启动/停止Modbus从站通信。Mode 参数允许使用以下两个数值:1——启动,0——停止。
•Address:从站地址,MODBUS 从站地址,取值1~247。
•Baud:波特率,可选1200,2400,4800,9600,19200,38400,57600,115200。•Parity:奇偶校验,0=无校验;1=奇校验;2=偶校验。
•Delay:延时,附加字符间延时,缺省值为0。
•MaxIQ:最大I/Q 位,参与通信的最大I/O 点数,S7-200的I/O 映像区为128/128,缺省值为128。
•MaxAI:最大AI 字数,参与通信的最大AI 通道数,可为16 或32。
•MaxHold:设定供Modbus 地址4xxxx 使用的V 存储器中的字保持寄存器数目。
•HoldStart:保持寄存器区起始地址,以&VBx 指定(间接寻址方式)。
•Done:初始化完成标志,成功初始化后置1。
•Error:初始化错误代码。

图4
MBUS_SLAVE 指令说明:
MBUS_SLAVE 指令被用于为Modbus 主设备发出的请求服务,并且必须在每次扫描时执行,以便允许该指令检查和回答Modbus 请求。MBUS_SLAVE 指令无输入参数,在每次扫描且EN 输入开启时执行。
•EN:指令使能位。
•Done:Modbus 执行通信中时置1,无MODBUS通信活动时为0。
•Error:错误代码(同上表格)。
2,设置库存储区。
在“库存储区分配”对话框中输入库存储区的起始地址,注意避免该地址和程序中已经采用或准备采用的其它地址重合。上面我们将Modbus 保持寄存器区从VB1000 开始(HoldStart= VB1000),并且保持寄存器为100 个字(MaxHold=100),因保持寄存器以字(两个字节)为单位,实际上这个通信缓冲区占用了VB1000~VB1200 共200 个字节,可以点击“建议地址”跳过modbus 保持寄存区的区域,即库存储区要不在VB1000-VB1200 之内。

图5
3、编译程序,编译无误后,通过PPI 电缆将程序下载到PLC,下载完成后断电,打开程序监控查看MBUS_INIT 指令和MBUS_SLAVE 指令的“Error”引脚输出是否为正常(0 位正常,其他数值为故障,
请参看上面的故障列表)。
四,GM10-DTU 模块设置。
4.1 连接S7-200PLC 和GM10
注意:通过上面的工作,我们已经成功创建S7-200 的MODBUS 从站,此时我们将PLC prot0 串口的3 引脚连接GM10 模块的“485A”端子,8 引脚连接GM10 模块的“485B”端子。

图6
4.2 配置GM10-DTU
通过GM10 随机配带的串口线一端连接GM10 端子(TXD TXD SGND),另一端连接电脑的COM 口,如果电脑没有COM 口可使USB转232 线转接。

图7
在对模块进行配置时,具体操作请参照《DTU 配置软件使用手册》,我们通过《DTU 配置软件》对GM10-DTU 进行设置的目的,一是建立一个MODBUS 主站定时采集PLC Modbus 从站寄存器中的数据。二是设置与EMCP 平台连接的参数(只需设置模块密码或默认密码111111)。此外,通过《DTU 配置软件》我们可以读取GM10-DTU 模块的运行状态,检查DTU 是否连接GPRS 网络是否正常,以及模块和PLC通讯是否正常。





图8
至图12
五,EMCP 平台设置。
用管理员账号登录蓝蜂科技的EMCP平台,对EMCP 云平台进行设置。具体操作参照《EMCP物联网云平台用户手册V2.0》。登录EMCP 后首先进入设备列表显示页面,因为我们未创建任何设备,所
以是一个空页面。点击右上角的“用户名”下拉按钮,在弹出的窗口中点击“后台管理”进入EMCP 后台。

图13
5.1 新建数据规则
进入后台,首先显示的是设备管理,我们首先要创建一个数据规则,点击左侧的“规则管理”进入规则设置页面,点击右上角的“新增”,在弹出的窗口中点击“新增采集数据”创建前台“实时数据”页面的显示规则,点击“新增读写命令”创建前台“数据读写”页面的显示规则,创建规则如下。

图14

图15
5.2 新建设备
新建“设备”, 选择菜单“设备管理”-> “新增”新建一个设备。新建这个设备是填写设备的基本信息,1 选择设备匹配的图片(也可不选择,系统会以默认图片显示),2 绑定GM10 模块,需输入模块的SN 码和在DTU 配置软件中设置的密码(默认密码111111),3 选择上面创建的数据规则。4,点击“地图”按钮选择设备所在的地理位置。

图16
六,实验效果。
打开Step7-MicroWin 编程软件的“程序状态监控”和“状态表监控”,查看程序的运行状态和内部数据的数值显示。通过状态表我们可以查看各数据的当前值和对数据进行强制。S7-200PLC在线监视实况
如下图。

图17

图18、
用户登录EMCP 平台,点击S7-200PLC 设备的“进入设备”。首先看到的是200PLC定时采集数据的显示(实时数据),通过点击“读写数据”对200PLC 进行读写操作,点击“历史曲线”查看对定时数据采集的数据报表。显示如下

图19

图20

图21
在手机(安卓)安装《云联物通》手机APP,凭用户名和密码登录,进入设备列表后点击S7-200PLC设备,在弹出的选项框中选择“设备详情”查看设备的属性,点击“实时数据”显示设备的定时采集的各数据值,单击实时数据列表的数据行,弹出该数据的历史曲线。点击“读写数据”对读写数据进行读写操作。

图22

图23
七,其他注意事项。
7.1 设备离线的原因
1.EMCP 平台新建设备后未重启。EMCP 新增设备后都需要重启对应的GM10 模块。
2.SN 码和密码绑定错误,EMCP 平台所建设备的SN 码必须和所连GM10 模块的SN 码相同(SN
位于GM10 右侧面标签),密码必须和DTU 配置软件设置的密码相同(默认111111)。
7.2 如平台无法 |