当前位置:首页 >> 信息与通信 >>

step7编程知识


第一章 符号表

在 STEP7 中,用户可以直接使用的变量包括 PLC 的输入/输出地址、M 存储区地址、数据 DB 块名、功能块名和系统已经在组织块和逻辑块中定义的变量等。如果能在 STEP7 中将变量 用具有实际意义的符号名字代替,那么用户程序的可读性就会更好。 1.全局符号和局部符号 STEP7 中可以定义两类符合:全局符号和局部符号,与其它编程语言的

定义一样,全局符 号是在整个用户程序范围内有效;局部符号是仅仅在定义的块内部有效。

选项 有效范围

全局符号
在整个用户程序中有效,可以被所 有的块中含义是一样的

局部符号
只在定义的块中有效,相同的符号 可在不同的块中用于不同的目的。 字母 数字 下划线(_)

允许使用的字符

字母、数字以及特殊字符,如使用 特殊字符,则符号须写在引号内

使用对象

可以为以下各项定义: I/O 信号 I,IB,IW,ID,Q,QB,QW,Q I/Q 输入与输出 PI,PQ 存储位 M,MB,MW,MD 定时器 T/计数器 C 逻辑块 FB,FC,SFB,SFC 数据块 DB 用户定义数据类型 UDT 变量表 VAT

可以为以下各项定义 块参数(输入,输出及输入 / 输出 参数) 块的静态数据 块的临时数据

定义范围

符号表

块的变量声明表

1

2.符号的定义 符号名的长度不能多于 24 个字符,而且定义时不区分大小写字符。数据块中的地址 ( DBD , DBW , DBB , DBX )不能在符号表中定义,而应在数据声明表中定义。组织块 (OB) 、某些系统功能块( SFB)以及系统功能(SFC)已被系统根据块的功能预先赋予了符 号名。在符号表中可以定义全局符号,需要注意的是,并不需要下载符号表。编辑符号后并保 持符号表,这时符号表就生效了。 3.符号表的导入导出功能 在符号表编辑器中,可以通过导入导出功能。用户可以导出当前的符号表到一个文本文 件,这样就可以用文本编辑器对符号进行编辑,还可以将文本编辑器中的符号表导入到用户程 序中。导出符号表时,用户可以选择文件格式为“*.DIF” ,则可以在 Excel 中打开、编辑并存 储 DIF 文件;也可以选择文件格式为“*.SDF”在 Access 中打开、编辑并存储 SDF 文件。

2

第二章 组织块 OB
组织块( Organization Block ) , STEP7 提供了大量的组织块用于执行用户程序, OB 是 CPU 操作系统与用户程序间的接口。OB 被嵌在用户程序中,根据某个事件的发生,执行相应 的中断,自动调用相应的 OB。 1.OB1 工作原理: CPU 启动完毕后,操作系统就调用 OB1,并且循环执行 OB1 的程序,读取当前输入模块的信 号状态,刷新输入映像区并接收全局数据。每一次 OB1 程序执行完后,操作系统发送全局数 据,传送输出映像区数据到输出模块。循环处理的主程序 OB1 的优先级最低,除 OB90(背景 组织块)外,其他所有的 OB 块均可以中断 OB1 的执行。 2.OB10~OB17: 时间日期中断组织块,这 8 个 OB 的默认优先级相同,都没有指定默认时间。但是,只有 S7400 系统的高级 CPU 才可以使用全部 8 个 OB,S7-300 系列只能使用 OB10。 3.OB20~0B23: 延时中断组织块,S7-300 系列只能使用 OB20。 4.OB30~OB38: 循环中断组织块,它们经过一段固定的时间间隔中断用户的程序。循环中断组织块每一次运行 的时间一定要短于中断的间隔。如果一个循环中断组织块没有执行完,循环中断时间到,又要 求循环中断组织块运行,则时间故障组织块 OB80 启动。反复的循环中断导致了故障程序的运 行。 5.OB40~OB47 硬件中断组织块,用于快速响应信号模块 SM、通信处理模块 CP 和功能模块 FM 的信号变 化。 6.OB80: 时间错误处理组织块,OB 执行出现故障,操作系统调用 OB80。这样的故障包括:循环时间 超出、执行 OB 时应答故障、向前移动时间以至于跃过了 OB 的启动时间。例如,当循环中断 组织块仍在执行前一次调用时,该组织块的启动事件发生,操作系统调用 OB80。如果 OB80 未编程,则 CPU 变为 STOP 方式。

3

7.OB81: 电源故障处理组织块,电源故障包括后备电池失效或未安装电池,电源故障出现和消失时操作 系统都要调用该块。 8.OB82: 诊断中断组织块用于检查和评估诊断中断。如果模块具有诊断能力而且激活了诊断中断,当它 检测到故障时,输出一个诊断中断请求给 CPU,操作系统将调用 OB82。故障包括:有诊断功 能的模块的断线故障,模拟输入模块的电源故障,输入信号超过模拟量模块的测量范围。 9.OB86: 机架故障组织块,当扩展机架、DP 主站系统或分布式 I/O 中从站故障时(到来和离去事件) , CPU 操作系统将调用 OB86。 10.OB87: 通信错误组织块,在使用通信功能块或全局数据( GD)通信进行数据交换时,若出现以下几 种错误,系统将调用 OB87。一是接收全局数据时,检测到不正确的帧标识符。二是全局数据 通信的状态信息数据块不存在或太短。三是接收到非法的全局数据包编号。 11.OB100~OB102: 启动组织块, OB100 (暖启动) OB101 (热启动)和 OB102 (冷启动) 。对于大多数的 S7300CPU 来说,启动类型为暖启动,启动时过程映像和不保持的定时器、计数器以及标志存储 器被清除,然后程序从 OB1 的第一条指令开始执行。S7-400 还支持热启动组织块 0B101.在热 启动时,所有数据(过程映像、定时器、计数器以及标志存储器)被保持,程序从断点处恢复 执行。 12.OB121: 编程故障组织块,当有关程序处理的故障事件发生时,CPU 的操作系统调用 OB121,OB121 与被中断的块在同一优先级中执行。 13.OB122: I/O 访问故障组织块,当对模块的数据访问出现故障时 CPU 的操作系统调用 I/O 访问故障组织 块 OB122。例如,直接访问 I/O 错误(模块损坏或找不到) ,或访问一个 CPU 不能识别的 I/O 地址。

4

第三章 功能块 FB

功能块是用户编写的有固定存储区的块。 FB 为带“记忆”的逻辑块。它有一个数据结构 与 功 能 块 参 数 表 完 全 相 同 的 数 据 块 ( DB ) , 该 数 据 块 称 之 为 背 景 数 据 块 ( Instance Data Block) ,当功能块被执行时,数据块被调用。功能块结束,调用随之结束。存放在背景数据块 中的数据在 FB 块结束后,仍能继续使用,具有“记忆”功能。 本工程涉及到的功能块主要包括以下几个: 1. 连续 PID 调节功能块——FB41 焦炉的加热过程是个单各燃烧室间歇、全炉连续的过程。加热用介质――煤气的流量调节控制 直接影响着焦炉的温度加热。在绝大部分焦炉的控制系统中,主要包括:煤气流量调节、煤气 管道压力调节(实质也时通过调节压力来达到控制煤气流量) 、焦炉机 /焦侧分烟道吸力调节、 焦炉上升管压力调节等一些调节系统。 PID 工作原理 PID 模块的功能是将 PID 调节的输入物理量(设定值和测量值的偏差值)转换为 0~100 之间 的数,然后再进行 PID 调节,调节完后再将 0~100 之间的数转换为输出对象的实际量程范 围。将输入物理量进行这种标准化变化的目的是为了使所有的 PID 调节都在同一基准下,调节 的速度一致,以使整个系统的物理量工作比较协调。 FB41 管脚说明: 2.1 PID 调节公式: PID_OUTV(t)=Kc×ER(t)×[1+t/Ti+(Td/Tm_lag) ×e-t/Tm_lag] 2.2 调节选择开关: ? ? ? ? ? ? P_SEL:P_SEL=1 时,GAIN 增益起作用。 I_SEL:I_SEL=1 时,TI 积分起作用。 D_SEL:D_SEL=1 时,TD 微分起作用。 MAN_ON:MAN_ON=1 时,表示调节回路处于“手动”; MAN_ON=0 时,表示调节回路处于“自动”。 MAN 为手动输出值:MAN_ON=1 时,MAN 中的数值送给相应的模拟量输出通道。 MAN_ON=0 时,PID 算法计算值送给相应的模拟量输出通道。

2.3 手自动切换开关:

5

2.4 量程说明: ? ? ? ? LMNLIMT 为经过限位后的 PID 算法输出值。 LMN_HLM 为输出上限。 LMN_LLM 为输出下限。 LMN 计算: ? ? ? ? LMN=LMNLIMT×LMN_FAC+LMN_OFF LMN_FAC=1 LMN_OFF=0

CRP_OUT 计算: CRP_OUT=LMN×27648÷100%

2.5 其它说明: COM_RST:再启动位,需在 OB100~OB102 中的一个 OB 块中将一变量位置“1”后,将 该位传给“COM_RST”。 表1

参 数 描 述 COM_RST 再启动位 MAN_ON 手/自动切换 PV外部输入 PVPER_ON 选择开关 P_SEL 增益选择开关 I_SEL 积分选择开关 D_SEL 微分选择开关 CYCLE 采样时间 SP_INT PV_IN PV_PER MAN GAIN TI SP输入 PV内部输入 PV外部输入 手动时,输出值 增益 积分

数据类型 BOOL BOOL BOOL BOOL BOOL BOOL TIME REAL REAL WORD REAL REAL TIME REAL REAL REAL REAL REAL REAL REAL WORD

数值范围

缺 省 值 FALSE TRUE FALSE FALSE FALSE FALSE T#1S 0.0 0.0 W#16#0

≥1ms -100.0~100.0 实际量程 -100.0~100.0 实际量程 -100.0~100.0 实际量程 ≥CYCLE LMN_LLM~100.0 实际量程 -100.0~LMN_HLM 实际量程

0.0 2.0 T#20S 100.0 100.0 1.0 0.0 1.0 0.0 6 0.0 W#16#0

LMN_HLM 输出上限 LMN_LLM 输出下限 PV_FAC PV_OFF LMN_FAC LMN_OFF LMN LMN_PER 外部输出

第四章 功能 FC

功能是用户所编写的无固定存储区的块,它为不带“记忆”的逻辑块。所谓不带“记忆” 表示没有背景数据块。当完成操作后,数据不能保持。这些数据为临时数据,对于那些需要保 持的数据只能通过共享数据块(Share Data)来存储。 本工程涉及的功能 FC 包括以下一些主要的功能 FC: 1. 基本线形标定功能——FC91: 基本线形标定块,把 4~20mA 的信号转换为规定量程上下限的显示值。主要是处理压力(包 括吸力) 、氧含量信号、线性流量信号、液位显示信号以及阀位反馈信号等。 IN:符号地址或绝对地址 HI_LIM:量程上限 LO_LIM:量程下限 OUT:经过线性转换后的显示 FAULT:故障管脚

图3

2.温度线性标定功能——FC96:

7

由于焦炉检测信号中,温度信号占据了很大的一部分,而温度信号(热电偶信号和热电阻信 号)经过转换后除以 10 直接得到的数值就是温度显示信号。 IN:符号地址或绝对地址 OUT:显示地址 FAIL:故障管脚

图4

3.换向保持程序——FC41: 焦炉交换过程实际是一个停止加热的过程,在交换过程中,管网压力波动比较大,因此在 交换时刻需引入交换信号作为判断来保持 20~50 秒左右时间的流量控制系统输出值不变。

图5

8

图6

程序说明: ? ? ? ? 2P1 为交换信号 DB41.DBD72 为经过限位后的 PID 算法输出值? DB41.DBD16 为手动输出值 T1 为时间延时器

9

10


相关文章:
step7编程知识
step7编程知识_信息与通信_工程科技_专业资料。第一章 符号表 在 STEP7 中,用户可以直接使用的变量包括 PLC 的输入/输出地址、M 存储区地址、数据 DB 块名、...
step7编程语言与指令
? ? 3.1.2 STEP 7 中的编程语言 梯形图、语句表和功能块图是 3 种基本编程语言,可以相互转换。 1.顺序功能图(SFC) :STEP 7 中的 S7 Graph 2.梯形图(...
step7编程语言与指令
step7编程语言与指令_信息与通信_工程科技_专业资料。step7编程语言与指令 S7-300/400 的编程语言与指令系统 3.1 S7-300/400 的编程语言 3.1.1 PLC 编程语言...
西门子STEP7图解编程、调试步骤
西门子STEP7图解编程、调试步骤_工程科技_专业资料。1.打开 SIMATIC STEP7。 2.新建一个工程项目 3.项目定义名字后,点击 OK 4.硬件配置, (以 CPU 为 S7-400...
step7面向对象编程
step7面向对象编程_计算机软件及应用_IT/计算机_专业资料。PLC 的面向对象编程 ...它是需要不断完善和 修订的,这也是一个工程公司可以实实在在进行知识积累的...
Step7的编程界面下几个设置
Step7编程界面下几个设置 有时候打开别人的程序,发现梯形图没法显示了; 有时候打开别人的程序,发现写好的程序显示红色了; 这里介绍两个编辑器下面的设置,修改...
西门子STEP7编程中sfb4的用法
西门子STEP7编程中sfb4的用法_工学_高等教育_教育专区。sfb4的用法西门子 STEP7 编程—IEC 定时器的使用 2010 年 03 月 03 日 星期三 08:59 西门子 STEP7 提...
第3章 STEP7 编程环境
第3章 STEP7 编程环境_计算机软件及应用_IT/计算机_专业资料。第3章 STEP7 编程环境 STEP 7 是一种用于对 SIMATIC 可编程逻辑控制器进行组态和编程的标准软件...
实验一 STEP7编程软件的使用
实验一 STEP7编程软件的使用_计算机软件及应用_IT/计算机_专业资料。实验一 STEP...160份文档 四级养生 中医养生与保健 中医养生知识大全 女人养生之道...
STEP7常见编程错误解析
STEP7常见编程错误解析_电力/水利_工程科技_专业资料。STEP7常见编程错误解析 STEP7 编程常见错误分析简单错误 地址超范围 A M3000.0 = Q0.0 对指令不熟悉 A M...
更多相关标签:
step7编程实例 | step7编程手册 | 西门子编程软件step7 | step7 v5.5编程手册 | step7编程软件下载 | step7编程 | step7编程实例讲解 | step7编程教程 |