浔之漫智控技术(上海)有限公司
西门子PLC模块 , CPU模块 , DP通讯电缆 , 6GK交换机
西门子6GK7243-1GX00-0XE0

想利用西门子S7-200plc的高速计数器,采集伺服驱动器的反馈编码器值,利用高速计数器采集到的值,在程序中比较好控制伺服电机实际运行的位置.

答:西门子的200无法直接采集差分信号,因此你需要买个转化板进行转换(即使是224xp也只是支持集电极开路的0到5v,并不是差分)
其次每个cpu的循环周期都得10ms左右,如果你在程序中比较实际位置,在进行输出的话很有很大的延迟,除非速度很慢,否则在实际中无法进行具体应用。

所谓差分传输:在这两根线上都传输信号,这两个信号的振幅相等,相位相反。
S7-200系列PLC能接收正交信号或增减信号,不能直接接收差分信号。

与在标准系统中一样,在S7 分布式安全系统中具有PROFIBUS 接口的安全CPU 之间可以进行安全相关的通信。通信通过两个安全应用程序块进行,即F_SENDDP 块用于发送数据,而F_RCVDP 块用于接收数据。这些块由用户在F-CPU 相应的安全程序中调用,可用于固定数量的BOOL 和INT 类型的数据进行安全传送。
2          安全相关的DP主站与智能从站通信


在本例程中,将CPU 319F-3PN/DP作为DP 主站,CPU 315F-2PNDP 作为智能 DP 从站设备。通过两个CPU的集成DP口进行安全相关的通信。
2.1   示例所使用的软硬件环境
·         STEP7 V5.5 SP2
·         STEP7 Distributed Safety V5.4 SP5
·         CPU319F-3PN/DP V3.2 订货号6ES7 318-3FL01-0AB0
·         CPU315F-2PN/DP V2.6订货号6ES7 315-2FH13-0AB0
测试目的:对于DP 主站和智能DP从站设备的F-CPU之间的安全相关的通讯,使用F应用程序块FB223“F_SENDDP”进行发送,用FB224“F_RCVDP”进行接收。使用它们以安全方式一次传送16个BOOL型数据和2个INT型数据。要注意的是必须在安全程序开始时调用F_RCVDP,F_SENDDP必须在安全程序结束时调用 CPU319F传输类型CPU315F
16 Bool
2 INT16 Bool
2 INT

2.2    硬件配置
1)        点击“新建项目”输入项目名称,设置项目文件存储路径;点击”确定“,完成项目创建,如图2-1
 
图 2-1 创建项目
2)        插入 S7-300 站,将名字修改为:CPU315F-2PNDP-I-Device。如图2-2
 
图 2-2 插入站
3)        双击硬件组态配置界面,从右侧侧产品列表中找到CPU315F-2PNDP,拖入到项目中。如图2-3
 
图 2-3 硬件组态
4)        设置IP地址及工来以太网网络(通过以太网编程下载),如图2-4
 
图 2-4 分配IP地址及网络
5)        分配 DP 地址及网络,如图2-5
 
图 2-5 设置DP
6)        工作模式:DP从站   注意:此时无F 组态页面,如图2-6
 
图 2-6 设置DP从站
7)        在设置CPU保护等级和激活安全程序选项,之后打开 F 参数页面,根据提示安全程序密码,本例中密码为:1111。如图2-7
 
图 2-7 激活安全程序
8)        设置安全程序密码,如图2-8
 
图 2-8 设置安全程序密码
9)        CPU319F-3PN/DP 的配置过程类似前6步骤,区别在在DP 的工作模式要设置为DP主站,如图2-9
 
图 2-9 主站配置
10)     添加 DP 智能从站,如图2-10
 
图 2-10 添加DP从站
11)     双击DP从站后,进入DP从站属性页面,选择“连接”页面,点击“连接”,然后点击确定。如图2-11
 
图2-11 连接DP从站
12)     再次双击打开 DP从站,出现“ F 组态”页面。点击“NEW”添加组态数据,如图2-12
 
图 2-12 设置F组态数据
13)       设置MS组态数据:Mode:选择通讯类型,F-MS-S:从站发送主站接收。Address:分别设置主站与从站接口地址,编写时需要使用*后点击  OK或Apply以同样方法添加 F-MS-R:从站接收主站发送,如图2-13
 
图 2-13 设置参数
14)     添加成功后数据图示,点击“确定”,如图2-14
             F-MS-R:从站接收主站发送
             F-MS-S:从站发送主站接收
 
图2-14 添加数据后结果
15)     点击“保存和编译”。编译时需要输入安全程序密码。此例密码为:1111,如图2-15
 
图 2-15 保存和编译
16)      在将编译没有错误的程序,下载到plc,如图2-16
 
图 2-16 下载
2.3   通讯编程及测试
1)        在插入“ F-FC”或F-FB。右键选择插入新对象—》功能或功能块或数据块,如图2-17
 
图 2-17 插入 F-FC
2)        在F-FC 功能设置页面。创建语言选择:F-LAD,点击“确定”,如图2-18
 
图 2-18 选择编程语言 F-LAD
3)        调用 FB224 数据接收功能块。照图填写。注意:F程序,必须先接收,再发送,即网络1为接收功能块,如图2-19
 
图 2-19 接收块程序
FB 224说明
  输入参数
ACK_REI:1=发生通信错误后,对发送数据的重新集成确认
SUBBO_00 -SUBBO_15用于接收BOOL数据的安全值
SUBI_00 — SUBI_01用于接收INT数据的安全值
DP_DP_ID唯一的F_SENDDP和F_RCVDP之间的关联值,确认发送和接收的对应关系
TIMEOUT安全相关的通讯的监视时间
LADDR接收地址区的起始地址,示例中是256
输出参数
ERROR:1=通信出错
SUBS_ON1=使用替代值
ACK_REQ:1=需要对发送数据的重新集成进行确认
SENDMODE1= 具有F_SENDDP的F-CPU处于取消激活的安全模式中
RD_BO_00-RD_BO_15接收的BOOL数据
RD_I_00 — RD_I_01接收的INT数据
RETVAL14/ RETVAL15SFC14/15的错误代码
DIAG诊断信息

4)        调用 FB223 数据发送功能块。照图填写。注意:F程序,必须先接收,再发送,即网络1为接收功能块,如图2-20
 
图2-20 发送块程序
FB223 功能说明 输入参数
SD_BO_00 —SD_BO_15用于接收BOOL数据的安全值
SD_I_00 — SD_I_01用于接收INT数据的安全值
DP_DP_ID唯一的F_SENDDP


发布时间:2023-10-26
展开全文
优质商家推荐 拨打电话