图1中,输入设备选用的是按钮SB0的常闭触点,输入继电器X0的线圈状态取决于SB0的状态。该按钮未按下时,输入继电器X0线圈状态为"1"通电状态,程序中所有X0触点均动作,即常开触点接通,常闭触点断开;若按下该按钮,则输入继电器X0线圈状态为"0"断电状态,程序中所有X0触点均恢复常态。如果输入继电器连接的输入设备是按钮SB0的常开触点,则情况恰好相反:在该按钮未按下时,输入继电器X0线圈状态为"0"断电状态,程序中所有X0触点均不动作;若按下该按钮,输入继电器X0线圈状态为"1"通电状态,程序中所有X0触点均动作。
2. 停车按钮使用常闭型
由于PLC在运行程序判别触点通断状态时,只取决于其内存中输入继电器线圈的状态,并不直接识别外部设备,因此编程时,外部设备的选用与程序中的触点类型密切相关。这是一个在对照电气控制原理图进行PLC编程时易出现的问题。典型的例子是基本控制--"起保停控制"中的停车控制。
图2 "起保停控制"电气原理图
图2为"起保停控制"电气原理图,在该系统中,按钮SB0用于停车控制,因此使用其常闭触点串联于控制线路。SBl为起动按钮,使用其常开触点。若使用相同的设备(即停车SB0用常闭触点,起动SBl用常开触点),利用PLC进行该控制,则需编程梯形图程序(图3):
图3 "起保停控制"梯形图程序(停车按钮使用常闭触点)
I/O分配:SB0--X0,SBl--Xl,输出Y0
该梯形图中停车信号X0使用的是常开触点串联在控制线路中,这是因为外部停车设备选取按钮常闭触点所致,不操作该按钮,则输出Y0正常接通,若按下该按钮,输出Y0断电。
3. 停车按钮使用常开型
若希望编制出符合我们平时阅读习惯的梯形图程序(图4),则在选用外部停车设备时需使用按钮SB0的常开触点与X0相连。
起保停控制"梯形图程序(停车按钮使用常开触点)
I/O分配:SB0--X0,SBl--Xl,输出Y0
图3、4梯形图完成相同的控制功能,程序中停车信号X0使用的触点类型却不相同,其原因就是连接在输入继电器X0上的外部停车按钮触点类型选用不同。图4所示梯形图程序加符合我们的阅读习惯,也易分析其逻辑控制功能,因此在PLC构成控制系统中,外部开关、按钮无论用于起动还是停车,一般都选用常开型,这是一个在使用PLC时需要格外注意的问题。
二、PLC的"串行"运行方式与控制程序的编制
PLC与继电接触器控制的重要区别之一就是工作方式不同。继电接触器控制系统是按"并行"方式工作的,也就是说是按同时执行的方式工作的,只要形成电流通路,就可能有几个电器同时动作。而PLC是以"串行"方式工作的,PLC在循环执行程序时,是按照语句的书写顺序自上而下进行逻辑运算,而前面逻辑运算的结果会影响后面语句的逻辑运算结果。因此梯形图编程时,各语句的位置也会对控制功能产生关键影响。例如:
图5 程序1
程序1调试结果:X0接通3次,Y3接通,X0再接通1次,Y3断开。
图6 程序2
程序2程序调试结果.X0接通3次,Y3接通瞬间即断开。
上面两个程序中,输出Y3、计数器CTl02及内部通用继电器R0前面的逻辑条件均相同,仅仅是计数器CTl02所在语句位置发生了变化,而两段程序的运行结果就截然不同。这是因为CTl02对输出Y3的影响方式发生了变化。执行段程序时,将首先判断输出Y3的状态,再判断CTl02的状态,CTl02的状态变化只能在下一个扫描周期对Y3产生影响;而执行二段程序时,将首先判断CTl02的状态,再判断输出Y3的状态,CTl02的状态变化将在该扫描周期直接影响Y3的状态。
由于PLC采用"串行"工作方式,所以即使是同一元件,在梯形图中所处的位置不同,其工作状态也会有所不同,因此在利用梯形图进行控制程序编制时,应对控制任务进行充分分析,合理安排各编程元件的位置,才能够为准确地实现控制。
三、PLC的编程元件
PLC的各种功能主要是通过运行控制程序来实现。编制程序时,需要合理使用PLC提供的编程元件(即软元件)。FPO型PLC中常用的编程元件有两种:位元件(bit)和字元件(word)。位元件实际上是PLC内存区域所提供的一个二进制位单元,又被称为软继电器,主要用作基本顺序指令的编程元件,如输入继电器Xn、输出继电器Yn、内部通用继电器Rn、定时(计数)器等,其参与控制的方式主要是通过对应触点的通断状态改变影响逻辑运算即输出。
字元件则为PLC内存区域内的一个字单元(16bit),主要用作功能指令和指令的编程元件,通常用以存放数据,如数据寄存器DTn,定时(计数)器的设定值SVn、经过值EVn等。字元件没有触点,通常以整体内容参与控制。
值得注意的是内存中的输入(X)区、输出(Y)区和内部通用(R)区,该区中的每个bit均可用作位元件,而且每16bit可构成一个字元件,如WRIO即是由16个位元件R100~R10F构成的字元件,该字元件中的内容一旦发生变化,这16个位的状态也随之发生改变。如:
图7 编程元件示例程序
图7所示程序中,WR0即为字元件,是左移位指令SR的编程元件,而Y0为输出软继电器的线圈,X0、X1、X2、X3则为输人软继电器的触点,其中4步的R4触点为位元件R4的常开触点,而位元件R4又是字元件WR0中的一位,因此其状态受限于WR0的移位结果。
四、顺序控制多步同输出的编程方法
顺序控制是生产现场常见的一类控制任务,步进指令是PLC指令库中于顺序控制的。步进指令编程时,根据工艺流程将程序划分为一个个立的程序段,执行时,CPU严格按梯形图编程顺序,只有执行完**段程序后才能激活下一段程序,并在下一段程序执行之前,将前面程序段复位。并且在语法上要求各程序段所使用的输出不允许重复。这在解决顺序控制任务中有多步同输出的情况时,就带来了一定的困难。借助于内部通用继电器可方便解决这一难题。如某一顺序控制任务如以下流程图(图8)所示。
图8 某机械手动作流程图
从机械手动作流程图可以看出,这个控制任务每个循环的工作可以划分为八步,其中1步与5步动作相同,均为上升;3步和7步动作相同,均为下降。在利用步进指令进行编程时,这两个工步所对应的程序段的输出不能直接设置为Y3、Y4,同一个输出使用两次则会出现语法错误。这时应考虑使用用于存储中间状态的内部通用继电器Rn来解决这个问题。如图7所示梯形图程序,其中R1、R5分别被定义为1步与5步的输出,R3、R7分别被定义为3步与7步的输出,在步进结束后再将R1、R5的状态输出到上升Y3,将R3、R7的状态输出到下降Y4,通过这样的方法可方便解决顺序控制任务中若干工步输出相同的问题。
图9 机械手控制梯形图
五、结束语
初学者对于PLC的基本应用易于掌握,但要做到灵活使用仍需对一些技术难点和使用技巧深刻理解。在编程之前,要对控制任务进行认真分析,合理选择外部设备和编程元件,并以此为基础进行编程;在编程过程中,如能灵话巧妙地使用编程元件,合理地进行程序编排,可使程序逻辑清楚,可读性增强。
由于PLC采用"串行"工作方式,所以即使是同一元件,在梯形图中所处的位置不同,其工作状态也会有所不同,因此在利用梯形图进行控制程序编制时,应对控制任务进行充分分析,合理安排各编程元件的位置,才能够为准确地实现控制。
三、PLC的编程元件
PLC的各种功能主要是通过运行控制程序来实现。编制程序时,需要合理使用PLC提供的编程元件(即软元件)。FPO型PLC中常用的编程元件有两种:位元件(bit)和字元件(word)。位元件实际上是PLC内存区域所提供的一个二进制位单元,又被称为软继电器,主要用作基本顺序指令的编程元件,如输入继电器Xn、输出继电器Yn、内部通用继电器Rn、定时(计数)器等,其参与控制的方式主要是通过对应触点的通断状态改变影响逻辑运算即输出。
字元件则为PLC内存区域内的一个字单元(16bit),主要用作功能指令和指令的编程元件,通常用以存放数据,如数据寄存器DTn,定时(计数)器的设定值SVn、经过值EVn等。字元件没有触点,通常以整体内容参与控制。
值得注意的是内存中的输入(X)区、输出(Y)区和内部通用(R)区,该区中的每个bit均可用作位元件,而且每16bit可构成一个字元件,如WRIO即是由16个位元件R100~R10F构成的字元件,该字元件中的内容一旦发生变化,这16个位的状态也随之发生改变。如:
图7 编程元件示例程序
图7所示程序中,WR0即为字元件,是左移位指令SR的编程元件,而Y0为输出软继电器的线圈,X0、X1、X2、X3则为输人软继电器的触点,其中4步的R4触点为位元件R4的常开触点,而位元件R4又是字元件WR0中的一位,因此其状态受限于WR0的移位结果。
四、顺序控制多步同输出的编程方法
顺序控制是生产现场常见的一类控制任务,步进指令是PLC指令库中于顺序控制的。步进指令编程时,根据工艺流程将程序划分为一个个立的程序段,执行时,CPU严格按梯形图编程顺序,只有执行完**段程序后才能激活下一段程序,并在下一段程序执行之前,将前面程序段复位。并且在语法上要求各程序段所使用的输出不允许重复。这在解决顺序控制任务中有多步同输出的情况时,就带来了一定的困难。借助于内部通用继电器可方便解决这一难题。如某一顺序控制任务如以下流程图(图8)所示。
图8 某机械手动作流程图
从机械手动作流程图可以看出,这个控制任务每个循环的工作可以划分为八步,其中1步与5步动作相同,均为上升;3步和7步动作相同,均为下降。在利用步进指令进行编程时,这两个工步所对应的程序段的输出不能直接设置为Y3、Y4,同一个输出使用两次则会出现语法错误。这时应考虑使用用于存储中间状态的内部通用继电器Rn来解决这个问题。如图7所示梯形图程序,其中R1、R5分别被定义为1步与5步的输出,R3、R7分别被定义为3步与7步的输出,在步进结束后再将R1、R5的状态输出到上升Y3,将R3、R7的状态输出到下降Y4,通过这样的方法可方便解决顺序控制任务中若干工步输出相同的问题。
图9 机械手控制梯形图
五、结束语
初学者对于PLC的基本应用易于掌握,但要做到灵活使用仍需对一些技术难点和使用技巧深刻理解。在编程之前,要对控制任务进行认真分析,合理选择外部设备和编程元件,并以此为基础进行编程;在编程过程中,如能灵话巧妙地使用编程元件,合理地进行程序编排,可使程序逻辑清楚,可读性增强。
PLC控制系统设计的基本内容
1.确定系统运行方式与控制方式。PLC可构成各种各样的控制系统,如单机控制系统、集中控制系统等。在进行应用系统设计时,要确定系统的构成形式。
2.选择用户输入设备(按钮、操作开关、限位开关、传感器等)、输出设备(继电器、接触器、信号灯等执行元件)以及由输出设备驱动的控制对象(电动机、电磁阀等)。这些设备属于一般的电气元件,其选择的方法属于其他课程的内容。
3.PLC的选。PLC是控制系统的核心部件,正确选择PLC对于保证整个控制系统的技术经济指标起着重要的作用。选择PLC应包括机型选择、容量选择、I/O模块选择、电源模块选择等。
4.分配I/0点,绘制I/0连接图,必要时还须设计控制台(柜)。
5.设计控制程序。控制程序是整个系统工作的软件,是保证系统正常、安全、可靠的关键。因此控制系统的程序应经过反复调试、修改,直到满足要求为止。
6.编制控制系统的技术文件,包括说明书、电气原理图及电气元件明细表、I/0连接图、I/O地址分配表、控制软件。
PLC控制系统的设计步骤
1.根据生产的工艺过程分析控制要求。如需要完成的动作(动作顺序、动作条件、的保护和连锁等)、操作方式(手动、自动、连续、单周期、单步等)。
2.根据控制要求确定系统控制案。
3.根据系统构成方案和工艺要求确定系统运行方式。
4.根据控制要求确定所需的用户输入、输出设备,据此确定PLC的I/0点数。
5.选择PLC。分配PLC的I/O点,设计I/O连接图
6.进行PLC的程序设计,同时可进行控制台(柜)的设计和现场施工。
7.联机调试。如不满足要求,再返回修改程序或检查接线,直到满足要求为止。
8.编制技术文件。交付使用。
PLC控制系统硬件设计方法
应用系统总体方案设计
1.PLC控制系统类
F 由PLC构成的单机控制系统。
F 由PLC构成的集中控制系统。
F 由PLC构成的分布式控制系统。
F 用PLC构成远程I/0控制系统。
2.系统的运行方式
F 手动运行方式。
F 半自动运行方式。
F 自动运行方式。
二 系统硬件设计根据
1.工艺要求
2.设备状况
3.控制功能
4.I/0点数和种类
5.系统的性
三 可编程序控制器的机型选择
1. CPU的功能
2. I/0点数
3. 响应速度
4. 指令系统
5. 机型选择的其他考虑
四 输入/输出模板的选择
1.数字量输入模块的选择
2.数字量输出模块的选择
3.模拟量模块的选择
4.智能I/0模块的应用选择
五 系统硬件设计文件
1.系统硬件配置图
2.模块统计表
3.I/0硬件接口图及I/0地址表
六 系统供电设计
1.供电系统的保护措施
2.电源模块的选择
4. I/0模块供电电源设计
5. 系统接地设计
6. 可编程序控制器供电系统设计
7. 电缆设计和敷设
西门子S7-1200系列订货数据
6ES7211-1BE31-0XB0 CPU 1211C AC/DC/Rly,6输入/4输出,集成2AI
6ES7211-1AE31-0XB0 CPU 1211C DC/DC/DC,6输入/4输出,集成2AI
6ES7211-1HE31-0XB0 CPU 1211C DC/DC/Rly,6输入/4输出,集成2AI
6ES7212-1BE31-0XB0 CPU 1212C AC/DC/Rly,8输入/6输出,集成2AI
6ES7212-1AE31-0XB0 CPU 1212C DC/DC/DC,8输入/6输出,集成2AI
6ES7212-1HE31-0XB0 CPU 1212C DC/DC/Rly,8输入/6输出,集成2AI
6ES7214-1BG31-0XB0 CPU 1214C AC/DC/Rly,14输入/10输出,集成2AI
6ES7214-1AG31-0XB0 CPU 1214C DC/DC/DC,14输入/10输出,集成2AI
6ES7214-1HG31-0XB0 CPU 1214C DC/DC/Rly,14输入/10输出,集成2AI
6ES7215-1BG31-0XB0 CPU 1215C AC/DC/Rly,14输入/10输出,集成2AI/2AO
6ES7215-1AG31-0XB0 CPU 1215C DC/DC/DC,14输入/10输出,集成2AI/2AO
6ES7215-1HG31-0XB0 CPU 1215C DC/DC/Rly,14输入/10输出,集成2AI/2AO
6ES7211-1BE40-0XB0 CPU 1211C AC/DC/Rly,6输入/4输出,集成2AI
6ES7211-1AE40-0XB0 CPU 1211C DC/DC/DC,6输入/4输出,集成2AI
6ES7211-1HE40-0XB0 CPU 1211C DC/DC/Rly,6输入/4输出,集成2AI
6ES7212-1BE40-0XB0 CPU 1212C DC/DC/DC,8输入/6输出,集成2AI
6ES7212-1HE40-0XB0 CPU 1212C DC/DC/Rly,8输入/6输出,集成2AI
6ES7214-1BG40-0XB0 CPU 1214C AC/DC/Rly,14输入/10输出,集成2AI
6ES7214-1AG40-0XB0 CPU 1214C DC/DC/DC,14输入/10输出,集成2AI
6ES7214-1HG40-0XB0 CPU 1214C DC/DC/Rly,14输入/10输出,集成2AI
6ES7215-1BG40-0XB0 CPU 1215C AC/DC/Rly,14输入/10输出,集成2AI/2AO
6ES7215-1AG40-0XB0 CPU 1215C DC/DC/DC,14输入/10输出,集成2AI/2AO
6ES7215-1HG40-0XB0 CPU 1215C DC/DC/Rly,14输入/10输出,集成2AI/2AO
6ES7217-1AG40-0XB0 CPU 1217C DC/DC/DC,14输入/10输出,集成2AI/2AO