《SiemensS7驱动》该驱动支持与西门子的S7系列PLC之间的通讯,通讯方式通过以太网进行通讯。
支持的硬件型号有:
uSIMATIC S7-200;
uSIMATIC S7-300;
uSIMATIC S7-400(H);(冗余的主备通讯由驱动程序根据PLC状态信息自动判断并切换连接。)
uSIMATIC S7-1200;
uSIMATIC S7-1500;
uS7-200 SMART(对于此款PLC的通讯支持于iCV5.6.2 patch7版本正式增加)。
该驱动无需SIMATIC NET软件及CP卡。
主要包含以下步骤:
usiemenss7drv驱动支持plc400 run<->stop状态切换
首先,需要配置好相应的SCADA节点。双击scada节点下的驱动配置,如下图:
❖新增驱动
进入驱动配置页面,点击“添加驱动”的按钮,弹出“可用驱动列表”的选择对话框,如下图。选中“SiemensS7Drv”,点击“确定”。
❖编辑已有驱动
若已添加过该驱动,如下图,在可用驱动列表中见该驱动名。点击驱动名为“SiemensS7Drv”左侧的勾,实现对“SiemensS7Drv”驱动配置的签出,然后点击“配置驱动”进入驱动配置页面。
当一个工程中,需要连接不同工艺组的众多PLC设备时,可以用“设备组”来进行分组管理。如果所连PLC设备不多,也可归为一个设备组。
1.SiemensS7Drv驱动配置界面,如下图:
2.在驱动配置界面上,左侧树形列表中右击“SiemensS7Drv”,选择“添加设备组”,如下图:
3.点击树形列表中计划编辑的设备组名,右侧可修改该设备组的“名称”和“设备组描述”,修改完成点击“保存”按钮。注意设备组名称在该驱动下不可重名。如下图:
在驱动配置界面上,右键点击树控件列表中的设备组节点,选择“添加设备”,在树控件列表的右侧显示新添加设备的配置界面,设备的名称自动生成,其他属性为默认值。
如果现场设备存在冗余,需要选中“备设备”复选框,然后填入备机的ip地址和端口号;除此之外,还需要配置各项参数,驱动配置工具中所列的默认配置参数为推荐的配置值,并非所有的设备均合适,如果通讯出现问题,需要调整配置参数,请咨询设备厂商。
参数配置的意义如下:
❖设备名称:自定义设备名称。
❖设备描述:添加对设备的描述信息。
❖PLC设备类型:请填选实际的西门子PLC的设备类型。(除S7-200 SMART请选S7-300)。
❖重试次数:连接或发送失败时的重试次数。
❖响应超时:连接和发送时的响应超时时间。
❖设备地址:设备地址是PLC的IP地址:即为通过Step7 编程软件为通讯模块(CP443-1)设定的IP地址。
❖端口号:设备连接的端口号。默认为102。
❖机架号:设备插入的机架的机架号。
❖槽号:设备CPU插入机架中的槽号。
1.在驱动配置界面上,右键点击树控件列表中的设备节点或数据块节点,弹出右键菜单,选择“添加数据块”菜单。
2.在SiemensS7Drv驱动的数据块配置如下图:
❖数据块名称:自定义的数据块名称。
❖数据块描述:自定义的数据库描述信息。
❖起始地址:数据块的起始位置。
❖长度:数据块的读取长度。
注意:
1.数据块所配置长度不能大于PLC DB/I/Q/M区实际长度;
2.本驱动一个报文长度有限制,例如PLC寄存器是DB类型,s7-400长度限制416字节, s7-300长度限制188字节。对于其他寄存器类型的数据块长度一般会小于DB类型,具体长度需要查阅西门子相关手册。因而,对于大于416/188字节的PLC DB块,需要断成多个数据块对应。
❖刷新周期:数据块的刷新周期。
❖相位:数据块的刷新相位。
❖寄存器类型:对应到S7PLC中的寄存器类型。
❖数据排列方式:对应到S7寄存器中的数据排列方式。
数据排列方式(dataorder)与iCV变量配置管理中数据类型相关:
AI 8位,DI: dataorder=0
AI 16 位: dataorder=2
AI 32位,单精度浮点型: dataorder=4
❖DB分区号:寄存器类型为DB时有效,对应到S7中的DB分区号。
注意:数据块下的寄存器类型选择DB的时候如果只修改了DB分区号是不能在线部署的,在线部署不会生效,必须重启服务。
添加变量参见新增变量 。
注意:配置完成后需要部署到scada节点,使得配置生效。
❖寄存器为I、Q区时对应变量的变量设置
⟡可配置AI8位无符号整形,设备地址为:“数据块名:字节偏移”,例如:datablock1:2,表示读取datablock1这个数据块中的第3个字节。
⟡可配置DI变量,设备地址为:“数据块名:字节偏移:位偏移”,例如:datablock1:2:3,表示读取datablock1这个数据块中的第3个字节的第4位。
❖寄存器为M区时对应变量的变量设置
⟡可配置AI8位无符号整形,AI16位无符号整形,AI16位有符号整形,设备地址为:“数据块名:字节偏移”,例如:datablock1:2,表示读取datablock1这个数据块中的第3个字节(若为16位整形,读取第3、4两个字节)。
⟡可配置DI变量,设备地址为:“数据块名:字节偏移:位偏移”,例如:datablock1:2:3,表示读取datablock1这个数据块中的第3个字节的第4位。
❖寄存器为DB区时对应变量的变量设置
⟡可配置模拟量(AI/AO)所有类型(除双精度浮点型)变量,设备地址为:“数据块名:字节偏移”,例如:datablock1:2,表示读取datablock1这个数据块中的第3个字节(若为16位数据类型,读取第3、4两个字节,若为32位数据类型,读取3、4、5、6四个字节)。
⟡可配置数字量(DI/DO)变量,设备地址为:“数据块名:字节偏移:位偏移”,例如:datablock1:2:3,表示读取datablock1这个数据块中的第3个字节的第4位。
⟡可配置TXT变量,设备地址为:“数据块名:偏移字节#字节长度”,例如:datablock1:2#50,表示读取datablock1这个数据块中第3个字节开始读取50个字节的长度。
❖寄存器为T、C区时对应变量的变量设置
⟡ 暂时不支持T、C类型。
siemenss7drv驱动支持plc400 run<->stop状态切换:
❖主备两个设备的情况:
⟡若两个都是run,连接主设备,有数据更新;
⟡若两个都是stop,数据质量bad;
⟡若只有一个是run,则连接run的设备,更新数据。
❖单个设备的情况:
⟡设备状态是run,有数据更新;
⟡设备状态是stop,数据质量bad。
为了能够远程访问PLC,需要在PLC侧进行以下配置修改。
1.在PLC的CPU属性中,“保护-访问级别”修改如下:
2.在PLC的CPU属性中,“保护-连接机制”修改如下:
3.需要被icv读写的所有DB块的属性都需要将“优化的块访问”的勾去掉。(去掉这个选项,才可以使用绝对地址访问块。)
SiemensS7驱动对S7-200 SMART的支持,于iCV5.6.2 patch7版本正式增加。
❖设备配置
进行设备配置时“PLC设备类型”,请选择“PLC200 SMART”。iCV 5.6.2 patch7以前的版本,请尝试选择“PLC300”。
❖数据块配置
本驱动单数据块对S7-200 SMART读写支持最大长度为220个字节,即需要读取长度大于220个字节时,请创建多个数据块用于读取。
S7-200 SMART VW寄存器类型请在数据块寄存器类型配置中选择“DB”。iCV 5.6.2 patch7版本新增驱动Snap7Driver,该驱动对数据块最大长度支持65535字节。
❖变量地址格式
本驱动为非免赔块驱动,因而都需要配置数据块。变量地址格式即为数据块寄存器地址的访问格式,写法同其他PLC。