版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
SMARTPLC基本指令及实训
本章要点梯形图、语句表、顺序功能流程图、功能块图和结构文本等常用设计语言的简介基本位逻辑指令的介绍、应用及实训定时器指令、计数器指令的介绍、应用及实训比较指令的介绍及应用程序控制类指令的介绍、应用及实训3.1
可编程控制器程序设计语言
1.梯形图(LadderDiagram,LAD)程序设计语言1)触点。触点代表输入条件如外部开关,按钮及内部条件等。2)线圈。线圈表示输出结果,即CPU对存储器的赋值操作。3)方框:方框代表一些较复杂的功能。如定时器,计数器或数学运算指令等。当“能流”通过方框时,执行方框所代表的功能。2.语句表(StatementList,STL)程序设计语言语句表设计语言是由助记符和操作数构成的。采用助记符来表示操作功能,操作数是指定的存储器的地址。3.顺序功能流程图(SequentialFunctionChart,SFC)程序设计4.功能块图(FunctionBlockDiagram,FBD)程序设计语言5.结构文本结构文本是为IEC61131-3标准创建的一种高级编程语言。它能实现复杂的控制及数学运算,编写的程序非常简洁和紧凑,常用于其他编程语言较难实现的一些控制功能的实施。对编程人员要求较高,需要计算机高级程序设计语言的知识和编程技巧。3.2基本位逻辑指令与应用
3.2.1基本位逻辑指令介绍1.初始装载及线圈驱动指令LD/LDN,=1)指令功能LD(load):常开触点逻辑运算的开始。对应梯形图则为在左侧母线或线路分支点处初始装载一个常开触点。LDN(loadnot):常闭触点逻辑运算的开始(即对操作数的状态取反),对应梯形图则为在左侧母线或线路分支点处初始装载一个常闭触点。=(OUT):输出指令,表示对存储器赋值的指令,对应梯形图则为线圈驱动。对同一元件只能使用一次。2)指令格式①触点代表CPU对存储器的读操作。常开触点和存储器的位状态一致,常闭触点和存储器的位状态相反。用户程序中同一触点可使用无数次。②线圈代表CPU对存储器的写操作。用户程序中,同一操作数的线圈只能使用一次。2.触点串联指令A(And)、AN(Andnot)
2.触点串联指令A(And)、AN(Andnot)1)指令功能。A(And):与操作,在梯形图中表示串联连接单个常开触点。AN(Andnot):与非操作,在梯形图中表示串联连接单个常闭触点。2)指令格式3.触点并联指令:O(Or)/ON(Ornot)1)指令功能。O:或操作,在梯形图中表示并联连接一个常开触点。ON:或非操作,在梯形图中表示并联连接一个常闭触点。2)指令格式4.与装载指令(又称为电路块的串联指令)ALD
STEP7-Micro/WINSMART有一个32位的逻辑堆栈,最上面一层为栈顶,用来存储逻辑运算的结果。ALD令是对堆栈第一层和第二层中的值进行逻辑与运算。结果装载到栈顶。执行ALD后,栈深度减一。1)指令功能。块“与”操作,用于串联连接多个并联电路组成的电路块。2)指令格式3)ALD指令使用说明。并联电路块与前面电路串联连接时,使用ALD指令。分支的起点用LD/LDN指令,并联电路结束后使用ALD指令与前面电路串联。可以顺次使用ALD指令串联多个并联电路块,支路数量没有限制,如图3-14所示。ALD指令无操作数。5.或装载指令(又称电路块的并联指令)OLD
OLD指令是对堆栈第一层和第二层中的值进行逻辑或运算。结果装载到栈顶。执行OLD后,栈深度减一。1)指令功能。块“或”操作,用于并联连接多个串联电路组成的电路块。2)指令格式3)OLD指令使用说明。并联连接几个串联支路时,其支路的起点以LD、LDN开始,并联结束后用OLD。可以顺次使用OLD指令并联多个串联电路块,支路数量没有限制。OLD指令无操作数。6.LPS、LRD、LPP的指令
S7-200SMART系列采用模拟栈的结构,用于保存逻辑运算结果及断点的地址,称为逻辑堆栈。堆栈操作指令用于处理线路的分支点。3)指令使用说明。逻辑堆栈指令可以嵌套使用,最多为32层。为保证程序地址指针不发生错误,入栈指令LPS和出栈指令LPP必须成对使用,最后一次读栈操作应使用出栈指令LPP。堆栈指令没有操作数。
【例3-2】逻辑堆栈的嵌套使用如图所示。将图所示梯形图转换成语句表。7.置位/复位指S/R
1)指令功能。置位指令S:使能输入有效后从指定位bit开始的N个位置“1”并保持。复位指令R:使能输入有效后从指定位bit开始的N个位清“0”并保持。S/R指令格式及用法3)指令使用说明。对同一元件(同一寄存器的位)可以多次使用S/R指令(与=指令不同)。由于是扫描工作方式,当置位、复位指令同时有效时,写在后面的指令具有优先权。操作数N的取值范围为:0~255。数据类型为:字节。操作数bit的数据类型为:布尔。置位复位指令通常成对使用,也可以单独使用或与方框配合使用。4)=、S、R指令比较8.跳变指令EU/ED
1)指令功能。EU指令(又称正跳变触点指令):在EU指令前的逻辑运算结果有一个上升沿时(由OFF→ON)产生一个宽度为一个扫描周期的脉冲,驱动后面的输出线圈。ED指令(又称负跳变触点指令):在ED指令前有一个下降沿时产生一个宽度为一个扫描周期的脉冲,驱动其后线圈。EU/ED指令的使用程序及运行结果分析如下:指令使用说明。EU、ED指令只在输入信号变化时有效,其输出信号的脉冲宽度为一个机器扫描
周期。对开机时就为接通状态的输入条件,EU指令不执行。EU、ED指令无操作数。9.取反指令NOT
3.2.2基本位逻辑指令应用举例1.起动、保持、停止电路小结:
1)每一个传感器或开关输入对应一个PLC确定的输入点,每一个负载对应PLC一个确定的输出点。2)为了使梯形图和继电器接触器控制的电路图中的触点的类型相同,外部按钮一般用常开按钮。3)在工业现场,停止按钮、急停按钮、过载保护用的热继电器的辅助触点往往用常闭触点,这时应注意,常闭触点在没有任何操作时,给对应的输入映像寄存器写入“1”。例如起保停的控制中,若停止按钮改为常闭按钮,则对应的外部接线图,梯形图程序和对应存储器“位”状态的时序图如图3-29所示。停止按钮改为常闭按钮起保停的控制
2.抢答器程序设计
1)控制任务。有3个抢答席和1个主持人席,每个抢答席上各有1个抢答按钮和一盏抢答指示灯。参赛者在允许抢答时,第一个按下抢答按钮的抢答席上的指示灯将会亮,且释放抢答按钮后,指示灯仍然亮;此后另外两个抢答席上即使在按各自的抢答按钮,其指示灯也不会亮。这样主持人就可以轻易的知道谁是第一个按下抢答器的。该题抢答结束后,主持人按下主持席上的复位按钮(常闭按钮),则指示灯熄灭,又可以进行下一题的抢答比赛。工艺要求:本控制系统有4个按钮,其中3个常开S1、S2、S3,一个常闭S0。另外,作为控制对象有3盏灯H1、H2、H3。输入/输出地址分配表输入输出输入地址输入元件作用输出地址输出元件作用I0.0S0(常闭)主持席上的复位按钮Q0.1KM1抢答席1上的指示灯I0.1S1抢答席1上的抢答按钮Q0.2H2抢答席2上的指示灯I0.2S2抢答席2上的抢答按钮Q0.3H3抢答席3上的指示灯I0.3S3抢答席3上的抢答按钮抢答器程序设计抢答器指示灯的“自锁”功能,3个抢答席之间的“互锁”功能。3.2.3电动机正、反转控制及安装接线
1.实训目的1)应用PLC技术实现对三相异步电动机的正反转控制。2)熟悉基本位逻辑指令的使用,训练编程的思想和方法。3)掌握在PLC控制中互锁的实现及采取的措施。4)掌握三相交流异步电动机PLC控制电路的安装及接线。2.控制要求1)实现三相异步电动机的正转、反转、停止控制。2)具有防止相间短路的措施。3)具有过载保护环节。3.实训内容及指导
1)电路功能分析。通过对设备的工作过程分析,可以知道小车只有两个不同的运行状态,分别是上行和下行,而带动卷扬机的三相异步电动机就有两个转向,实际上是控制一个三相异步电动机的正、反转。整个电路的总控制环节可以空气断路器(空气开关),电动机采用三相异步电动机,电动机实现正、反转的换相环节采用交流接触器。用一个热继电器实现过载保护。用两组熔断器实现主电路和控制电路的短路保护。控制按钮需要三个,分别用于正、反转的起动及停止控制。总的控制采用一台西门子S7-200SMARTPLC。2)主电路设计与绘制。3)控制电路设计与绘制输入输出输入地址输入元件作用输出地址输出元件作用I0.0FR过载保护Q0.0KM1电动机正转运行I0.1SB1停止按钮Q0.1KM2电动机反转运行I0.2SB2正转按钮I0.3SB3反转按钮正、反转控制PLC外部接线图4)元件布置图空开QSS7-200SMARTCPUSR40熔断器FU1熔断器FU2交流接触器KM1交流接触器KM2热继电器FR按钮SB1按钮SB2按钮SB3接线端子熔断器FU3三相异步电动机正、反转接线图
5)准备元件序号名称规格单位数量备注1电工操作台380V三相电源、计时座1漏电保护2电动机三相异步个1
3PLC西门子S7-200SMART台14塑壳断路器NB1-63只15交流接触器NC1-2510/380V只2线圈电压220V6辅助触头F4-22只37热继电器NR4-63只18熔断器RT18-32组29按钮NP9-22个310绝缘导线BV2.5mm2米若干黄绿红11绝缘导线BVR0.75mm2米若干红色12绝缘导线BVR2.5mm2米若干黄绿双色线13导轨35mm×500mm根114端子排NCT3个若干
15细木工板800mm×580mm×15mm块1
16自攻螺丝
个若干
6)安装电路基本操作步骤:清点工具和仪表→元件检查→安装固定元件→布线一自检。接线时注意:①外部联锁电路的设立。为了防止控制正、反转的两个接触器同时动作造成三相电源短路,应在PLC外部设置硬件联锁电路。电动机在正、反转切换时,因主电路电流过大,或因接触器质量不好,某一接触器的主触点被断电时产生的电弧熔焊而被黏结,其线圈断电后主触点仍然是接通的,这时如果另一接触器线圈通电,仍将造成三相电源短路事故。为了防止这种情况的出现,应在可编程控制器的外部设置由KM1和KM2的常闭触点组成的硬件互锁电路。假设KM1的主触点被电弧熔焊,这时其辅助常闭触点处于断开状态,因此KM2线圈不可能得电。②外部负载的额定电压。PLC的继电器输出模块和双向晶闸管输出模块一般只能驱动额定电压AC220V的负载,交流接触器的线圈电压应选用220V的。7)程序设计。
三相异步电动机正、反停控制的梯形图及语句表8)系统调试。通电调试验证系统能是否符合控制要求,调试过程分为两大步:程序输入PLC和功能调试。必须在指导教师的监护下进行通电调试。3.2.4电动机顺序起动、逆序停止控制安装接线
1.实训目的1)应用PLC技术实现对多台三相异步电动机的顺序起动、逆序停止控制。2)掌握大型打孔机控制电路的工程设计与安装。2.控制要求1)实现两台三相异步电动机的顺序起动、逆序停止。2)具有防止相间短路的措施。3)具有过载保护环节。3.实训内容及指导
顺序起动、逆序停止控制主电路根据功能分析,主电路需要两个交流接触器来分别控制清理电动机M1和主轴电动机M2的转动和停止,用热电器FR2完成主轴电动机M2过载保护。主电路熔断器FU1和FU2完成电动机的短路保护输入/输出地址分配表输入输出输入继电器输入元件作用输出继电器输出元件作用I0.0SB1M1起动按钮Q0.0KM1M1清理电动机I0.1SB2M2起动按钮Q0.1KM2M2主轴电动机I0.2SB3M2停止按钮I0.3SB4M1停止按钮I0.4FR1M1过载保护I0.5FR2M2过载保护顺序起动、逆序停止控制PLC外部接线图顺序起动、逆序停止控制元件布置图
电动机顺序起动、逆序停止控制接线图
电动机顺序起动、逆序停止控制的元件清单
序号名称规格单位数量备注1电工操作台380V三相电源、计时座1漏电保护2电动机三相异步个2
3PLC西门子S7-200SMART台14塑壳断路器NB1-63只15交流接触器NC1-2510/380V只26辅助触头F4-22只37热继电器NR4-63只28熔断器RT18-32组39按钮NP9-22个310绝缘导线BV2.5mm2m若干黄绿红11绝缘导线BVR0.75mm2m若干红色12绝缘导线BVR2.5mm2m若干黄绿双色线13导轨35mm×500mm根114端子排NCT3个若干
15细木工板800mm×580mm×15mm块1
16自攻螺丝
个若干
6)安装电路。
基本操作步骤为:清点工具和仪表→元件检查→安装固定元件→布线一自检。7)程序设计3.3定时器指令
3.3.1定时器指令介绍S7-200SMART系列PLC的定时器是对内部时钟累计时间增量计时的。每个定时器均有一个16位的当前值寄存器用以存放当前值(16位符号整数);一个16位的预置值寄存器用以存放时间的设定值;还有一位状态位,反应其触点的状态。1.工作方式
TON—接通延时定时器TONR—保持型接通延时定时器TOF—断开延时型定时器N是使能输入端,方框上方(????)输入定时器的编号(T××),范围为T0-T255;PT是预置值输入端,最大预置值为32767;PT的数据类型:INT;2.时基
按时基脉冲分,则有1ms、10ms、100ms三种定时器。不同的时基标准,定时精度、定时范围和定时器刷新的方式不同。(1)定时精度和定时范围
定时器的工作原理是:使能输入有效后,当前值PT对PLC内部的时基脉冲增1计数,当计数值大于或等于定时器的预置值后,状态位置1。
最小计时单位为时基脉冲的宽度,又为定时精度;定时时间=预置值×时基。当前值寄存器为16bit,最大计数值为32767定时器的类型工作方式时基(ms)最大定时范围(s)定时器号TONR132.767T0,T6410327.67T1-T4,T65-T681003276.7T5-T31,T69-T95TON/TOF132.767T32,T9610327.67T33-T36,T97-T1001003276.7T37-T63,T101-T255(2)1ms、10ms、100ms定时器的刷新方式不同
1ms定时器每隔1ms刷新一次与扫描周期和程序处理无关即采用中断刷新方式。10ms定时器则由系统在每个扫描周期开始自动刷新。100ms定时器则在该定时器指令执行时刷新。3.定时器指令工作原理
(1)接通延时定时器(TON)指令工作原理(2)保持型接通延时定时器(TONR)指令工作原理(3)断开延时型定时器(TOF)指令工作原理小结:
1)以上介绍的3种定时器具有不同的功能。接通延时定时器(TON)用于单一间隔的定时;保持型接通延时定时器(TONR)用于累计时间间隔的定时;断开延时定时器(TOF)用于故障事件发生后的时间延时。2)TOF和TON共享同一组定时器,不能重复使用。即不能把一个定时器同时用作TOF和TON。例如,不能既有TONT32,又有TOFT32。3)要确保最小时间间隔,请将预设值PT增大1。例如:使用100ms定时器时,为确保最小时间间隔至少为2100
ms,则将PT设置为22。4.间隔时间指令开始间隔时间指令读取内置1ms计数器的当前值,并将该值存储在OUT中。双字毫秒值的最大计时间隔为2的32次方(ms)或49.7天。计算间隔时间指令计算当前时间与IN中提供的时间的时间差,然后将差值存储在OUT中。双字毫秒值的最大计时间隔为2的32次方(ms)或49.7天。根据BITIM指令的执行时间,CITIM指令会自动处理在最大间隔内发生的1ms定时器翻转。间隔时间指令应用3.3.2定时器指令应用举例
1.一个机器扫描周期的时钟脉冲发生器2.延时断开电路
4.闪烁电路
4.闪烁电路
【例3-4】用接在I0.0输入端的光电开关检测传送带上通过的产品,有产品通过时I0.0为ON,如果在10s内没有产品通过,由Q0.0发出报警信号,用I0.1输入端外接的开关解除报警信号。3.3.3正次品分拣机编程实训
1.实训目的1)加深对定时器的理解,掌握各类定时器的使用方法。2)理解企业车间产品的分拣原理。2.实验器材
3.控制要求
1)用起动和停止按钮控制电动机M运行和停止。在电动机运行时,被检测的产品(包括正次品)在皮带上运行。2)产品(包括正、次品)在皮带上运行时,S1(检测器)检测到的次品,经过5s传送,到达次品剔除位置时,起动电磁铁Y驱动剔除装置,剔除次品(电磁铁通电1s),检测器S2检测到的次品,经过3s传送,起动Y,剔除次品;正品继续向前输送。4.PLCI/O端口分配及参考程序输入输出SB1I0.0M起动按钮MQ0.0传送带驱动电动机SB2I0.1M停止按钮(常闭)YQ0.1次品剔除S1I0.2检测站1S2I0.3检测站23.3.4用定时器指令编写循环类程序及实训1.循环灯的控制1)控制要求。按下起动按钮时,L1亮1s后灭→L2亮1s后灭→L3亮1s后灭→L1亮1s后灭,循环。按下停止按钮,三只灯都熄灭。输入输出SB1I0.0起动按钮L1Q0.0灯1SB2I0.1停止按钮(常开)L2Q0.1灯2L3Q0.2灯3循环灯的控制参考程序
2.传送带的控制编程实训控制要求:落料漏斗Y0起动后,传送带M1立即起动,经5s后起动传送带M2;传送带M2起动5s后应起动传送带M3;传送带M3起动5s后起动传送带M4;落料漏斗Y0停止后过5s停止M1,M1停止后,过5s停止M2,M2停止后过5s再停止M3,M3停止后过5s在停止M4。输入输出I0.0SB1起动按钮Q0.0落料漏斗Y0Q0.3传送带M3I0.1SB2停止按钮(常开)Q0.1传送带M1Q0.4传送带M4Q0.2传送带M25)参考程序
分析:控制过程分为起动和停止两个过程,在程序中用M0.0控制起动过程,M0.1控制停止过程。起动过程中有3个延时,用3个定时器完成,停止过程有4个延时,用4个定时器完成。最后分析各级传送带的起动和停止条件,集中写输出。3.3.5电动机星-三角降压起动PLC控制系统设计及安装接线
星-三角降压起动控制主电路主电路需要三个交流接触器分别控制星形接线、三角形接线。KM1和KM3接通时,电动机为星形接线;KM1和KM2接通时,电动机为三角形接线。KM2和KM3不能同时接通,要有联锁保护。输入/输出地址分配表输入输出输入地址输入元件作用输出地址输出元件作用I0.0FR过载保护Q0.0KM1电动机运行I0.1SB1停止按钮Q0.1KM2电动机三角运行I0.2SB2起动按钮Q0.2KM3电动机星形运行PLC外部接线图元件布置图空开QFPLCS7-200SMART熔断器FU1熔断器FU2交流接触器KM1交流接触器KM2热继电器FR按钮SB1按钮SB2接线端子熔断器FU3交流接触器KM3三相异步电动机星-三角降压起动控制接线图三相异步电动机星-三角降压起动控制元件清单序号名称规格单位数量备注1电工操作台380V三相电源、计时座1漏电保护2电动机三相异步个1
3可编程控制器西门子S7-200SMART台14塑壳断路器NB1-63只15交流接触器NC1-2510/380V只36辅助触头F4-22只37热继电器NR4-63只18熔断器RT18-32组39按钮NP9-22个210绝缘导线BV2.5mm2米若干黄绿红11绝缘导线BVR0.75mm2米若干红色12绝缘导线BVR2.5mm2米若干黄绿双色线13导轨35×500mm根114端子排NCT3个若干
15细木工板800×580×15mm块1
16自攻螺丝
个若干
6)安装电路。
基本操作步骤为:清点工具和仪表→元件检查→安装固定元件→布线一自检。三相异步电动机正反停控制的梯形图及语句表3.4计数器指令
3.4.1计数器指令介绍1)梯形图指令符号中,CU为加计数脉冲输入端;CD为减计数脉冲输入端;R为加计数复位端;LD为减计数复位端;PV为预置值2)Cxxx为计数器的编号,范围为:C0~C2553)预置值PV最大范围:32767;数据类型:INT4)CTU/CTUD/CD指令使用要点:STL形式中CU,CD,R,LD的顺序不能错;CU,CD,R,LD信号可为复杂逻辑关系2.计数器工作原理分析
加/减计数器应用示例程序及运行时序减计数器应用示例程序及运行时序3.4.2计数器指令应用举例
1.计数器的扩展2.定时器的扩展
3.自动声光报警操作程序
自动声光报警操作程序用于当电动单梁起重机加载到1.1倍额定负荷并反复运行1h后,发出声光信号并停止运行。程序如图3-64所示。当系统处于自动工作方式时,I0.0触点为闭合状态,定时器T50每60s发出一个脉冲信号作为计数器C1的计数输入信号,当计数值达60,即1h后,C1常开触点闭合,Q0.0、Q0.7线圈同时得电,指示灯灯发光且电铃作响;此时C1另一常开触点接通定时器T51线圈,10s后T51常闭触点断开Q0.7线圈,电铃音响消失,指示灯持续发光直至再一次重新开始运行。自动声光报警操作程序4.用一个按钮实现起、停的控制
用一个按钮控制一个灯,当按一下按钮,灯ON;再按一下按钮,灯OFF。如此重复。用一个按钮实现起、停的控制参考程序如图3.5比较指令及应用
3.5.1比较指令介绍比较指令可以对两个数据类型相同的操作数IN1和IN2进行比较。可以比较字节、整数、双整数和实数。在梯形图中用带参数和运算符的触点表示比较指令,比较条件成立时,触点就闭合,否则断开。比较触点可以装入,也可以串、并联。比较指令为上、下限控制提供了极大的方便。比较运算符:==等于、〈小于、〉大于、〈=小于等于、〉=大于等于、〈〉不等于。操作数N1,N2的数据类型:B;I/W;DW;R3.5.2用比较指令和定时器指令编写带延时的循环类程序
利用比较指令将定时器的当前值和预定时间进行比较,将周期时间作为定时器的预置值很容易实现带延时的循环类控制。需要注意的是定时器的当前值是16位的符号整数,所以比较指令需选用整数比较指令。【例3-7】用定时器和数据比较指令实现周期5s,占空比40%的脉冲发生器。【例3-8】循环灯的控制。循环灯控制要求:按下起动按钮时,L1亮1s后灭→L2亮1s后灭→L3亮1s后灭→L1亮1s后灭,如此循环。按下停止按钮,3只灯都熄灭。
输入输出I0.0起动按钮Q0.0L1I0.1停止按钮(常闭)Q0.1L2Q0.2L32)分析:3只灯的循环周期为3s,用一个定时器延时3S,用比较指令对该定时器的当前值比较以决定灯接通的时间。1)I/O分配3)循环灯的控制参考程序3.5.3交通灯的控制编程实训
1)控制要求:起动后,南北红灯亮并维持30s。在南北红灯亮的同时,东西绿灯也亮,到25s时,东西绿灯闪亮(闪烁周期为1s),3s后熄灭,在东西绿灯熄灭后,东西黄灯亮2s后灭,东西红灯亮30s。与此同时,南北红灯灭,南北绿灯亮。南北绿灯亮了25s后闪亮,3s后熄灭,黄灯亮2s后熄灭,南北红灯亮,东西绿灯亮,如此循环。2)I/O分配输入输出I0.0起动按钮Q0.0东西绿灯Q0.3南北绿灯I0.1停止按钮(常闭按钮)Q0.1东西黄灯Q0.4南北黄灯Q0.2东西红灯Q0.5南北红灯3)分析:从时序图中可以看出,交通灯执行一个周期的时间是60s。用一个定时器累计60s的延时,直接用比较指令决定每个灯接通的时间。绿灯接通分为平光和闪烁两个时间段,需要将平光时间段的比较指令和闪烁时间段的比较指令并联以驱动绿灯输出。绿灯闪烁可以对应一个周期为1s、占空比为50%的闪烁电路,也可以直接使用SM0.5串入绿灯闪烁时间段的输出中。4)交通灯的控制的梯形图参考程序3.6程序控制类指令
3.6.1跳转与标号指令1)指令格式。JMP:跳转指令,使能输入有效时,把程序的执行跳转到同一程序指定的标号(n)处执行。LBL:指定跳转的目标标号。操作数n:0~255。必须强调的是:跳转指令及标号必须同在主程序内或在同一子程序内,同一中断服务程序内,不可由主程序跳转到中断服务程序或子程序,也不可由中断服务程序或子程序跳转到主程序。2)跳转指令示例3)应用举例JMP、LBL指令在工业现场控制中,常用于工作方式的选择。如有3台电动机M1~M3,具有两种起停工作方式:①手动操作方式:分别用每个电动机各自的起、停按钮控制M1~M3的起停状态。②自动操作方式:按下起动按钮,M1~M3每隔5s依次起动;按下停止按钮,M1~M3同时停止。PLC控制的外部接线图,程序结构图梯形图3.6.2子程序调用及子程序返回指令
通常将具有特定功能、并且多次使用的程序段作为子程序。主程序中用指令决定具体子程序的执行状况。当主程序调用子程序并执行时,子程序执行全部指令直至结束。然后,系统将返回至调用子程序的主程序。子程序用于为程序分段和分块,使其成为较小的、更易于管理的块。在程序中调试和维护时,通过使用较小的程序块,对这些区域和整个程序简单地进行调试和排除故障。只在需要时才调用程序块,可以更有效地使用PLC,因为所有的程序块可能无需执行每次扫描。在程序中使用子程序,必须执行下列三项任务:建立子程序;在子程序局部变量表中定义参数(如果需要);从主程序或另一个子程序调用子程序。1.建立子程序
可采用下列一种方法建立子程序:1)从“编辑”菜单,选择“对象”/“子程序”2)从“项目树”,用鼠标右键单击“程序块”图标,并从弹出菜单选择“插入”→“子程序”3)从“程序编辑器”窗口,用鼠标右键单击,并从弹出菜单选择“插入”→“子程序”。程序编辑器从先前的POU(程序的组织单元)显示更改为新的子程序。程序编辑器顶部部会出现一个新选项卡,代表新的子程序。此时,可以对新的子程序编程。用右键单击项目树中的子程序图标,在弹出的菜单中选择/重新命名,可修改子程序的名称。如果为子程序指定一个符号名,例如USR_NAME,该符号名会出现在项目树的“调用子程序”文件夹中。2.在子程序局部变量表中定义参数
可以使用子程序的局部变量表为子程序定义参数。局部变量可用作传递至子程序的参数,并可用于增加子程序的移植性或重新使用子程序。注意:程序中每个POU都有一个独立的局部变量表,必须在选择该子程序标签后出现的局部变量表中为该子程序定义局部变量。编辑局部变量表时,必须确保已选择适当的标签。每个子程序最多可以定义16个输入/输出参数。3.子程序调用及子程序返回指令的指令格式
子程序有子程序调用和子程序返回两大类指令,子程序返回又分为条件返回和无条件返回。CALLSBR_n:子程序调用指令。操作数:n:0~127。CRET:子程序条件返回指令,条件成立时结束该子程序RET:子程序无条件返回指令,子程序必须以本指令作结束。由编程软件自动生成。需要说明的是:1)子程序可以多次被调用,也可以嵌套(在主程序中最多8层)还可以自己调自己。2)子程序调用指令用在主程序和其他调用子程序的程序中,子程序的无条件返指令在子程序的最后,梯形图指令系统能够自动生成子程序的无条件返回指令,用户无须输入。4.带参数的子程序调用指令
(1)带参数的子程序的概念及用途子程序可能有要传递的参数(变量和数据),这时可以在子程序调用指令中包含相应参数,它可以在子程序与调用程序之间传送。如果子程序仅用要传递的参数和局部变量,则为带参数的子程序(可移动子程序)。为了移动子程序,应避免使用任何全局变量/符号(I、Q、M、SM、AI、AQ、V、T、C、S、AC内存中的绝对地址),这样可以导出子程序并将其导入另一个项目。子程序中的参数必须有符号名(最多为23个字符)、变量类型和数据类型。子程序最多可传递16个参数。传递的参数在子程序局部变量表中定义。带参数的子程序及其变量表示例
(2)变量的类型
带参数的子程序变量表中的变量是局部变量,有IN、OUT、IN/OUT和TEMP等4种类型。IN(输入)型:将指定位置的参数传入子程序。IN_OUT(输入-输出)型:将指定参数位置的数值被传入子程序,并将子程序的执行结果的数值返回至相同的位置。OUT(输出)型:将子程序的结果数值返回至指定的参数位置。在子程序中可以使用IN,IN/OUT,OUT类型的变量和调用子程序POU之间传递参数。TEMP型:是局部存储变量,只能用于子程序内部暂时存储中间运算结果,不能用来传递参数。(3)数据类型
局部变量表中的数据类型包括:能流、布尔(位)、字节、字、双字、整数、双整数和实数型。能流:能流仅用于位(布尔)输入。能流输入必须用在局部变量表中其他类型输入之前。只有输入参数允许使用。布尔:该数据类型用于位输入和输出。字节、字、双字:这些数据类型分别用于1、2或4个字节不带符号的输入或输出参数。整数、双整数:这些数据类型分别用于2或4个字节带符号的输入或输出参数。实数:该数据类型用于单精度(4个字节)IEEE浮点数值。带参数子程序调用指令(4)建立带参数子程序的局部变量表
局部变量表在子程序程序显示区,点击子程序SBR_n选项卡,可以露出局部变量表,在局部变量表输入变量名称、变量类型、数据类型等参数以后,双击项目树中子程序(或选择单击方框快捷按钮F9,在弹出的菜单中选择子程序项),在梯形图显示区显示出带参数的子程序调用方框。局部变量表变量类型的修改方法:用光标选中变量类型区,单击鼠标右键得到一个下拉菜单,单击选中的类型,在变量类型区光标所在处可以得到选中的类型。子程序传递的参数放在子程序的局部变量存储器(L)中,局部变量表最左列是系统指定的每个被传递参数的局部变量存储器地址。(5)带参数子程序调用指令格式
对于梯形图程序,在子程序局部变量表中为该子程序定义参数后,将生成客户化的调用指令方框指令方框中自动包含子程序的输入参数和输出参数。
在梯形图程序的中插入带参数子程序调用指令的方法:第一步,打开程序,光标移至调用子程序处。第二步,在项目树中,打开“子程序”文件夹然后双击该子程序名。第三步,为调用指令参数指定有效的操作数。有效操作数为:存储器的地址、常量、全局变量以及调用指令所在的程序中的局部变量(并非被调用子程序中的局部变量)。【例3-9】编制一个带参数的子程序,完成任意两个整数的加法。
1)建立
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 方管隔断施工方案(3篇)
- 景观汉阙设计施工方案(3篇)
- 桥上布线施工方案说明(3篇)
- 水厂拆除安全施工方案(3篇)
- 泡沫砼施工方案路基(3篇)
- 物业发事件应急预案(3篇)
- 电梯地坑基础施工方案(3篇)
- 砼院坪施工方案(3篇)
- 管道交叉施工方案编制(3篇)
- 衣服美甲店活动方案策划(3篇)
- 《桥梁敷设高压电缆工程技术规范》
- 物联网技术及应用基础(第2版) -电子教案
- 精益管理知识竞赛参考试题库100题(含答案)
- 【MOOC】宇宙简史-南京大学 中国大学慕课MOOC答案
- 人工智能时代财务会计向管理会计转型的路径研究
- 高二下学期数学人教A版(2019)选择性必修第三册7.5正态分布 教学设计
- 浙江宁波市交通建设工程试验检测中心有限公司招聘笔试题库2024
- GB/T 232-2024金属材料弯曲试验方法
- 驻校教官值班制度
- 《牛顿第一定律-惯性》名师课件
- 第二章 大规模杀伤破坏性武器及防护
评论
0/150
提交评论