西门子PLC模块总代理 德国制造
西门子PLC模块总代理
用户程序的元素
程序组织单元 (POU) 由可执行代码和注释组成。 可执行代码由主程序和若干子例程或中
断例程组成。 代码已编译并下载到 CPU 中。 可以使用程序组织单元(主程序、子例程
和中断例程)来结构化用户程序。
● 用户程序主体包括控制应用的指令。 CPU 将按顺序执行这些指令,每个扫描周期执
行一次。
● 子例程是只有在调用时才执的程序的可选元素: 由主程序、中断例程或另一子例程执
行。 当您希望重复执行某种功能时,子例程是非常有用的 与其在主程序中每个需要使
用该功能的位置多次写入相同的程序代码,不如将这段逻辑写在子例程中,然后根据
需要在主程序中调用该子例程。 子例程具有以下优点:
– 使用子例程可以减小程序的大小。
– 由于已将代码移出主程序,因而使用子例程可以缩短扫描时间。 CPU 在每个扫描
周期都会评估主程序中的代码,不管代码是否执行,而 CPU 仅在调用子例程时评
估其代码,如果扫描时不调用子例程,CPU 不会评估其代码。
– 使用子例程创建的代码是可移植的。 您可以在一个子例程中完成一个独立的功能,
然后将该子例程复制到另其它程序中,无需进行重复工作。
说明
使用 V 存储器地址会限制子例程的可移植性,因为一个程序对于 V 存储器地址的分
配有可能与另一个程序对它的分配有冲突。 相比之下,在子例程中为全部地址分配
使用局部变量表(L 存储器)会使子例程具有极高的可移植性,因为当子例程使用
局部变量时,子例程与程序的其它部分之间就不会有地址冲突。
中断例程是程序的可选元素,发生特定中断事件时,中断例程会进行响应。 您可以设
计一个中断例程来处理预先定义好的中断事件。 当指定事件发生时,CPU 会执行该中
断例程。
中断例程不会被主程序调用。 只有当中断例程与一个中断事件相关联,并且在该中断
事件发生时,CPU 才会执行中断例程中的指令。
由于无法预测 CPU 何时会产生中断,所以应考虑尽量限制中断例程和程序中其它部分
所共用的变量个数。
使用中断例程的局部变量表可确保中断例程仅使用临时存储器,从而不会覆盖程序其
它位置使用的数据。
为了保证主程序与中断例程正确地共享数据,您可以使用许多编程技巧。 请参见中断
指令 (页 302)的说明。
● 其它块中包含 CPU 的信息。 下载程序时,您可以选择下载这些块:
– 系统块: 系统块允许您为 CPU 组态不同的硬件选项。
– 数据块: DB 存储程序使用的不同变量的初始值(V 存储器)。
下例中给出了一段包含子例程和中断例程的程序。 此示例程序使用定时中断,每 100 ms
读取一次模拟量输入值。
PLC设计顺序控制梯形图的一些基本问题
设计顺序控制梯形图的一些基本问题
S7-300/400的S7-Graph是一种顺序功能图编程语言。S7-Graph属于可选的编程语言,需要单独的许可证密钥,学习使用S7-Graph也需要花一定的时间。此外现在大多数PLC (包括S7-200和S7-1200)还没有顺序功能图语言。因此有必要学习根据顺序功能图来设计顺序控制梯形图的编程方法。本节介绍使用置位复位指令的通用的编程方法,5.4节介绍具有多种工作方式的控制系统的编程方法,5.5节介绍S7-Graph的使用方法。
本节介绍的编程方法很容易掌握,用它们可以迅速地、得心应手地设计出任意复杂的数字量控制系统的梯形图。它们的适用范围广,可以用于所有厂家生产的各种型号的PLC。
1.程序的基本结构
绝大多数自动控制系统除了自动工作方式外,还需要设置手动工作方式。下列两种情况需要启用手动工作方式
1)开始执行自动程序之前,要求系统处于规定的初始状态。如果开机时系统没有处于初始状态,则应进入手动工作方式,用手动操作使系统进入规定的初始状态后,再切换到自动工作方式。也可以设置使系统自动进入初始状态的工作方式(见5.4节)。在调试阶段也可以使用手动工作方式。
2)顺序自动控制对硬件的要求很高,如果有硬件故障,例如某个限位开关有故障,不可能正确地完成整个自动控制过程。在这种情况下,为了使设备不至于停机,可以进入手动工作方式,对设备进行手动控制。
有自动、手动工作方式的控制系统的程序结构如图5-17所示,公用程序用于处理自动方式和手动方式都需要执行的任务,以及处理两种工作方式的相互切换。
图中的I2.0是自动/手动切换开关,I2.0为1状态时调用手动程序,为0状态时调用自动程序。
2. 执行自动程序的初始状态
系统满足规定的初始状态后,应将顺序功能图的初始步对应的存储器位M置为1状态,使初始步变为活动步,为启动自动运行做好准备。同时还应将其余各步对应的存储器位复位为0状态,这是因为在没有并行序列或并行序列未处于活动状态时,同时只能有一个活动步。
在5.3节中,假设刚开始执行用户程序时,系统已处于要求的初始状态,为转换的实现做好
3.双线圈问题
自动程序和手动程序都需要控制PLC的输出Q,因此同一个输出位的线圈可能会出现两次
或多次,称为双线圈现象。像图5-17这样用相反的条件调用自动程序和手动程序时,允许同一个元件的线圈在这两个程序中分别出现一次。因为两个程序的调用条件相反,在一个扫描周期内只会调用其中的一个程序,而逻辑块中的指令只是在该逻辑块被调用时才执行,没有调用时则不执行。因此实际上每次扫描循环只处理同一个输出位的两个线圈中的一个。
6ES7155-5AA01-0AB0 | ET 200MP IM 155-5 PN ST 标准型接口模块 |
6ES7155-5AA00-0AC0 | ET 200MP IM 155-5 PN HF 高性能型接口模块 |
6ES7155-5BA00-0AB0 | ET 200MP IM 155-5 DP ST 标准型接口模块 |
6ES7155-5AA00-0AA0 | ET 200MP IM 155-5 PN BA 基本型接口模块(*多可支持连接12个IO模块,不支持 safety, PN IRT, 系统冗余, MRPD) |
6ES7505-0RB00-0AB0 | PS:60W ,额定输入电压 DC 24/48/60 V,扩展CPU带电保持存储区(适用于STEP7 Professional V14 SP1 和 CPU FW 2.1 及以上) |
6ES7507-0RA00-0AB0 | PS:60 W,额定输入电压 AC/DC 120/230 V |
6ES7505-0RA00-0AB0 | PS:60 W,额定输入电压 DC 24/48/60 V |
6ES7505-0KA00-0AB0 | PS:25 W,额定输入电压 DC 24 V |
6ES7532-5HF00-0AB0 | AQ 8:模拟量输出模块,高速 AQ 8x U/I HS, 35mm模块,不含前连接器 |
6ES7532-5HD00-0AB0 | AQ 4:模拟量输出模块,AQ 4x U/I ST, 35mm模块,不含前连接器 |
6ES7532-5ND00-0AB0 | AQ 4:模拟量输出模块,高性能,通道隔离,AQ 4x U/I HF, 35mm模块,不含前连接器 |
6ES7532-5NB00-0AB0 | AQ 2:模拟量输出模块,AQ 2x U/I ST, 25mm模块,含前连接器 |
6ES7531-7LH00-0AB0 | AI 16:模拟量输入模块,AI 16x U 35mm模块,不含前连接器 |
6ES7531-7MH00-0AB0 | AI 16:模拟量输入模块,AI 16x I 35mm模块,不含前连接器 |
6ES7531-7KF00-0AB0 | AI 8:模拟量输入模块,AI 8x U/I/RTD/TC ST, (支持4通道RTD), 35mm模块,不含前连接器 |
联系方式
- 地址:上海松江 上海市松江区石湖荡镇塔汇路755弄29号1幢一层A区213室
- 邮编:201600
- 联系电话:未提供
- 经理:吴悦
- 手机:19514718569
- QQ:2810544350
- Email:2810544350@qq.com