《snap7drv》该驱动支持与西门子的S7系列PLC之间的通讯,通讯方式通过以太网进行通讯。本驱动于iCV5.6.2 patch7版本正式上线。iCV5.6.2 patch7之前的版本,若需要使用snap7drv驱动,见安装配置说明。
支持的硬件型号有:
uSIMATIC S7-200;
uSIMATIC S7-300;
uSIMATIC S7-400(H);(冗余的主备CPU通讯由驱动程序根据PLC状态信息自动判断并切换连接。)
uSIMATIC S7-1200;
uSIMATIC S7-1500;
uS7-200 SMART;
uthe small LOGO 0BA7/0BA8 and SINAMICS 设备。
该驱动的特点:
u该驱动无需SIMATIC NET软件及CP卡;
u高性能数据读写:2W点tag点读写时间小于100ms;
u与SiemensS7驱动相比,数据块长度没有限制,最大支持65535字节的长度;
u无需配置PLC类型,只需要设置PLC IP地址、机架号、槽号即可连接;
u支持PLC主备冗余,及设备冗余状态信息读取。
主要包含以下配置步骤:
1.首先,需要配置好相应的SCADA节点。双击scada节点下的驱动配置,如下图:
2.进入驱动配置页面,在页面的左上方,可以看到“添加驱动”的按钮,点击添加驱动,弹出“可用驱动列表”的选择对话框;在可用驱动列表中,选择Snap7Driver驱动所对应的“snap7Drv”,然后点击确认。如下图:
3.选择签出snap7Drv,点击配置驱动,可以对驱动进行配置,如下图:
4.弹出Snap7Driver驱动配置主页面。
1.在“Snap7Drv驱动配置”页面的“设备列表”区域,选中一条空行并点击鼠标右键,弹出菜单中点击“创建设备”,如下图:
2.弹出“设备配置窗口”,填入相关配置项,如下图:
参数说明:
❖设备名称:自行定义,不能为空,不能以数字开头;
❖连接类型:选择Other。不可选其他类型,本驱动只支持这一种连接类型;
❖响应超时:连接设备和发送数据的响应超时时间,单位:毫秒;
❖连接参数:填写所连PLC的IP地址。支持冗余通讯连接,冗余PLC的IP以“/”为分隔符,如上图;注意:冗余配置必须将“连接参数、可选参数1、可选参数2、可选参数3”均配为冗余格式,才可生效。
❖描述:自定义的设备描述信息;
❖任务号:为所添加设备分配任务号(线程号)。建议:同一驱动下添加多个设备,请分别为每个设备分配不同任务号;
❖可选参数1:填写所连PLC的网卡所在的机架号,冗余设备机架号以“/”为分隔符;
❖可选参数2:填写所连PLC的网卡所在的槽号,冗余设备槽号以“/”为分隔符;
❖可选参数3:填写冗余设备心跳检测周期,默认为1000ms,单连接设备可不填。冗余设备心跳检测周期最快为1000ms,此项参数填写以100ms倍数增加;
3.点击确定按钮,完成设备配置。
Snap7Drv驱动不支持免配块模式。
1.在“Snap7Drv驱动配置”页面的“设备列表”中,选中将要添加数据块所属的设备,并在“数据块列表”区域,选中一条空行并点击鼠标右键,弹出菜单中点击“创建数据项”,将弹出“数据块配置”窗口,如下图:
参数说明:
❖名称:自行定义,不能为空,不能以数字开头;
❖轮询周期[MS]:数据块的刷新周期;
❖类型:PLC寄存器类型,PLC寄存器类型,对应Snap7驱动数据块类型对照表:
序号 |
PLC寄存器类型 |
Snap7驱动 数据块类型 |
1 |
I |
EB |
2 |
Q |
AB |
3 |
M |
MB |
4 |
DB |
DB |
5 |
|
|
6 |
|
|
❖相位:轮询周期中的相位偏移量,用于通讯性能调整。通常使用缺省值“0”即可;
❖地址:数据块的起始地址;
❖任务号:为所添加数据块分配任务号(线程号)。建议采用默认值;
❖元素个数:数据块的长度,最大支持到65535;
❖描述:自定义的描述信息;
❖元素大小[字节]:数据块中一个变量所占的字节长度,通常为“1”;
❖可选参数1:对应PLC中DB块的块号号码;
❖可选参数2:保留字段,可空;
❖可选参数3:保留字段,可空;
2.配置完毕后,点击“确定”按钮,完成数据块配置:
3.关闭配置界面,将Snap7Drv签入则完成配置操作。
添加变量参见新增变量 。
注意:配置完成后需要部署到scada节点,使得配置生效。
❖寄存器为I、Q区时对应变量的变量设置
⟡例如:I区对应Snap7驱动数据块块名为block1,类型为EB。I 0.0,对应Snap7数据块block1,地址为 block1:0:1。
⟡例如:Q区对应Snap7驱动数据块块名为block2,类型为AB。Q 1.0,对应Snap7数据块block2,地址为 block2:1:0。
❖寄存器为M区时对应变量的变量设置
⟡例如:M区对应Snap7驱动数据块块名为block3,类型为MB。M 1.0,对应Snap7数据块block3,地址为 block3:1:0。
❖寄存器为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区,后续版本会增加。
管理员可以使用调试小工具CVSYSMoniter查看驱动所连PLC的设备信息和冗余状态信息。
也可使用redis驱动读取西门子PLC状态信息,并将之存储成icv变量,以供组态画面或程序使用。具体配置方法详见redis驱动手册。
可支持读取以下PLC状态信息:
序号 |
参数名 |
参数含义 |
参数值 |
---|---|---|---|
单机PLC可读取参数: |
|||
1 |
devname |
设备名称 |
|
2 |
devinaddr |
设备IP地址 |
|
冗余PLC可读取参数: |
|||
1 |
devname |
设备名称 |
|
2 |
devinaddr_main |
主机IP地址 |
|
3 |
devinaddr_back |
备机IP地址 |
|
4 |
devicemainorback |
主备冗余状态 |
“0”:主机运行; “1”:备机运行; “2”:网络异常; |
为了能够远程访问PLC,需要在PLC侧进行以下配置修改。
1.在PLC的CPU属性中,“保护-访问级别”修改如下:
2.在PLC的CPU属性中,“保护-连接机制”修改如下:
3.需要被icv读写的所有DB块的属性都需要将“优化的块访问”的勾去掉。(去掉这个选项,才可以使用绝对地址访问块。)
iCV5.6.2 patch7之前的版本,若需要使用snap7drv驱动,需要手动添加驱动,过程如下:
1.复制驱动程序文件
将snap7drv驱动的文件夹【snap7drv】整个拷贝至\iCentroView\executable\drivers目录下。
2.系统配置
登录iCV配置客户端,点击“系统配置(C)->系统驱动配置(D)”,点击“添加驱动”,填写相关参数,如下图:
点击“确定”,即可。于是驱动配置页面中则新增了snap7drv驱动,如下图: