====== S7-200-Smart 使用说明 ====== S7-200-Smart是遵循西门子 snap7 标准协议开发的一个FreeIOE 通用应用,您可在任何内置了FreeIOE的网关中使用S7-200-Smart和西门子PLC(S7-200-Smart)进行通讯交互,读写这些设备或软件的数据。采用TCP套接字方式。 ---- ===== 准备工作 ===== 为使用S7-200-Smart应用和 西门子PLC S7-200-Smart 设备通讯时能更快更顺利的达到目标,我们有必要先了解及做一些准备工作。 1. 了解并确认现场设备是否西门子PLC S7-200-Smart这个型号。如是S7-200-Smart PLC,已经自带以太网口,只需确定PLC的IP地址后即可使用S7-200-Smart应用与之通讯获取数据。 2. 获取西门子PLC S7-200-Smart对外提供变量数据的列表文件,一般来说,电子表格格式比较多,这种文件在自动化行业多称为设备点表,在这份点表中,我们可以看到设备的很多变量及其设备变量属性都会被罗列出来,一般会包含:名称、描述、寄存器区、数据起始地址、运算系数等信息,如这份设备点表中无法获取到这些信息,那么就无法进行后面的工作。 3. 前面2个步骤的准备工作都完成后,还需要将设备提供点表整理为PLC S7-200-Smart应用所需的点表,这个整理点表的工作通过电子表格软件(如Office EXCEL)可达到事半功倍的效果。PLC S7-200-Smart应用的[[https://cloud.thingsroot.com/template/APP00000208/TPL000000208/2|参考设备模板]]。 4. 确认网关和PLC设备之间的物理连接是否正常,通过以太网方式连接PLC设备时,检查网线是否连接、网卡状态灯是否正常、还需要通过tcp/ip诊断工具检测是否可以连接到PLC设备的IP地址(一般多使用ping命令)。 ===== 设备模板 ===== 在平台上通过S7-200-Smart应用 [[https://cloud.thingsroot.com/template/APP00000208/TPL000000208/2|设备模板样例]]克隆一份到自己账户名下后,参考设备模板样例的格式制作目标设备的设备模板并上传。模板样例的格式如下图: {{:apps:app00000208:pasted:20191104-142313.png}} ^ 项目 ^ 描述 ^ | COMMENT | 这里固定为INPUT | | 名称 | 设备中的属性/标签/变量等的名称,只能英文/数字/下划线的组合 | | 描述 | 属性等的描述 | | 单位 | 属性等的单位 | | 读写属性 | RO-只读,RW-读写 | | 协议数据类型 | 对PLC返回数据进行解码时的数据类型可用: [bool,int8,uint8,int16,uint16,int32,uint,float,double,string],PLC点表对应关系,\\ B:按字节访问--8位\\ W:按字访问---16位\\ D:按双字访问---32位 | | 寄存器区 | PLC寄存器区的名称,支持I, Q, M, DB(V),CT, TM。 寄存器区为DB时后一列DB块编号须填写,否则保留0。\\ 200系列中的V区在点表中寄存器区填DB,DB块填1. | | DB区 | 前一列寄存器区为DB时DB区编号须填写,否则保留0 | | 起始地址 | 数据的起始地址。 | | 偏移 | 当协议数据类型为bool类型时,偏移范围是0-15;\\ 当协议数据类型为字符串string时,偏移指字符串长度,需要注意:PLC中1个寄存器长度是16位, \\ 而字符串中按照ASCII编码,1个英文字符的长度是1个字节(1个字节是8位); \\ 因此,PLC中存放字符串的寄存器个数是N,那么这里字符串的长度应该是2*N。 | | 倍率 | 当按照裸字符串进行读写(data_type 为 string或raw)时,需要指定此长度。 | | 平台数值类型 | 设备属性点数值类型,FreeIOE支持的类型有int, float, string三种类型 | ===== 应用配置 ===== 应用配置界面如下: {{:apps:app00000208:pasted:20191104-140716.png}} 其中: \\ 实例名在网关内必须唯一,且名称允许字符为字母、数字、下划线。 \\ 设备列表中设备的各参数必须填写,设备序列号允许字符为字母、数字。 \\ 配置完成后,点击安装按钮即可。