浔之漫智控技术(上海)有限公司
主营产品: 西门子低压中国授权代理商,SIEMENS西门子授权代理商,PLC模块、CPU模块、DP通讯电缆、6GK交换机、低压电器授权总代理商、代理商中国授权一级总代理商
西门子S7-200CN模块6ES7223-1PM22-0XA8
发布时间:2024-07-06
观看西门子S7-200CN模块6ES7223-1PM22-0XA8视频:

西门子S7-200CN模块6ES7223-1PM22-0XA8

我公司是西门子签约代理商备有大量西门子产品浔之漫智控技术(上海)有限公司:西门子授权代理商

现货库存;大量全新库存,款到48小时发货,无须漫长货期

西门子PLC(S7-200、S7-200 SMART、S7-300、S7-400、S7-1200、S7-1500、ET200S、ET200M、ET200SP)、触摸屏、变频器、工控机、电线电缆、仪器仪表等,产品选型、询价、采购,敬请联系,浔之漫智控技术(上海)有限公司 

3 程序实现

  接下来我们就可以根据上述轮询思想,通过编写STEP7程序具体实现主站轮询从站的功能。由于主站、从站任务的不同,所以在程序上的实现上也有所不同,下面针对主站和从站的程序实现做个简要描述。具体的例程可以参考本文附带的样例程序。

  3.1 主站程序

  3.1.1 初始化

  为了实现对多个从站的轮询,程序构造了一个轮询计数器,通过修改轮询计数器的值,来修改主站发送数据帧中的站地址标识字符。

  本例中定义MW2作为轮询计数器,程序开始,先对轮询计数器进行操作,默认先轮询1#从站,将值1赋值给MW2。

西门子插头6GK1901-1BB10-2AB0

  图10 初始化轮询计数器程序段

  在程序执行过程中,会修改轮询计数器的值,通过判断轮询计数器的值对发送数据块的地址标识符字作相应的修改,以完成对响应从站的轮询。本例中具体的实现如下图,其中DB13作为发送数据块,DB13.DBW0为地址标识符字。

西门子插头6GK1901-1BB10-2AB0

  图11 生成地址标识符程序段

  3.1.2 启动发送

  初始化完成后,可以启动发送功能。本例次发送采用手动方式,通过触发手动启动标志位M30.1,并调用FB8 P_SND_RK发送数据到从站。完成次发送后,可以通过程序自动修改自动轮询标志位M30.0来实现自动发送数据到从站的功能,具体的FB8 P_SND_RK功能块使用参考CP341手册。

  启动发送功能块FB8后,通过FB8返回状态信息,判断是否发送完成,如果发送错误,则重新启动发送功能。

  ? 发送完成:启动接收作业,准备接收从站返回数据。同时启动一个超时定时器T11,如果超时定时时间到,还没有接收到数据,则放弃等待,开始轮询下一个站。

西门子插头6GK1901-1BB10-2AB0

  图12 发送功能块程序段

  3.1.3 接收从站返回数据

  发送完成后,启动接收作业,准备接收从站返回数据,并将接收到的数据先放到接收缓冲区中,本例DB14数据块为接收缓冲区。

西门子插头6GK1901-1BB10-2AB0

  图13 接收功能块程序段

  3.1.4 接收完成

  接收完成后,做如下几方面处理。如果接收错误或超时,则跳过此站的轮询。

  ? 根据接收到数据的地址标识符判断是来自哪个从站的数据,并将数据从接收缓冲区转移到指定的从站数据存储区中,同时清空接收缓冲区;

  ? 复位接收标志,同时修改轮询计数器的值,准备轮询下一个从站;

  ? 复位超时定时器;

  ? 启动一个延时定时器,延时时间到后开始轮询下一个从站。

西门子插头6GK1901-1BB10-2AB0

  图14 接收完成处理程序段

西门子插头6GK1901-1BB10-2AB0

  图15 准备轮询下一个站程序段

  3.2 从站程序

  相对于主站,从站的处理程序相对简单。下面以2#从站为例做个说明,1#从站除了调用FB不同外,都与2#从站相同。

  3.2.1 接收数据

  从站一直启动接收功能FB2 P_RCV,接收来自网络上的数据,如果接收到数据则根据地址标识符判断是否是本站的数据:

  ? 是本站数据,则将接收缓冲区(DB17)中的数据移到指定的地址区(DB18)中,并清空接收缓冲区。同时,触发发送标志,发送返回数据给主站;


展开全文
商铺首页 拨打电话 QQ联系 发送询价