前端开发入门到精通的在线学习网站

网站首页 > 资源文章 正文

西门子S7-1200/1500PLC的程序组成之FC的应用技巧

qiguaw 2025-01-12 17:55:19 资源文章 17 ℃ 0 评论

西门子S7-1200/1500PLC的程序组成之FC的应用


西门子1200/1500PLC的程序组成包括:输入输出变量、M变量、OB块、FB块、FC块、DB块。

其中FC块是没有专用存储区的代码块,我们以单按钮启动、停止控制负载为例,说明FC块的用法。

以下开头两步,重复复习一下,加深印象。

一、组态一个PLC设备

1、新建一个项目,在项目中添加一个PLC设备。

2、配置PLC CPU模块的属性参数。

  • PROFINET接口的子网。
  • PROFINET接口的IP地址。
  • 系统和时钟存储器开启。

下图这个型号的PLC CPU是1516-3 PN/DP,有两个PROFINET接口,注意IP地址的不同。

3、添加一个DI/DQ模块,不用分配它的I、Q地址,默认。

二、组态一个HMI设备

1、在项目树中,找到

,添加新设备,选择HMI型号,确定。

2、在“设备和网络”项目的“网络视图”中,用鼠标连接PLC与HMI的网口。如在启动向导时选择了PLC,则可省去这一步。

3、配置HMI的PROFINET以太网地址,与PLC为同一网段,不同网址。

以上2、3可以在添加HMI启动向导时自动完成。

三、编写PLC程序

1、新建一个PLC变量表,如系统比较复杂,可以把M区变量、I区变量、Q区变量分别建立变量表。

如为复杂控制系统,变量表最好与系统默认变量表分开。

2、新建一个FC程序块,可手动进行编号,随后定义一些块接口参数。

这里可以看到,FC的块接口中,名称分类已经没有”Static“(静态变量)这一项,而增加了”Return“(函数返回值)这一项。

FB中的静态变量,在FC中将要分解到InOut(输入输出用绝对地址存储器保存)和Temp(中间值不保存)中。

VOID 参数类型不会保存任何值。如果输出不需要任何返回值,则使用此参数类型。例如,如果不需要显示错误信息,则可以在输出 STATUS 中指定 VOID 参数类型。

FC就默认定义返回值不需要,不保存。

这里的按钮与变量表里的按钮不是同一个。

3、编写FC程序。

这里仿真的话,输入地址要用内部存储地址M代替。

由于FC块的返回值不保存,这样编写程序不能断电保持。

如果要实现断电保持功能,必须新建立一个全局DB数据块,在全局DB中定义变量的保持性,然后用全局变量代替FC块的接口参数。

由于PLC中的M区、I区、Q区的存储有限,用全局数据块代替是比较常用的方式。

#电工交流圈##PLC##423头条知识节#

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表