1、项目四项目四 S7-1200指令系统指令系统项目四项目四 S7-1200指令系统指令系统 4.1 位逻辑指令位逻辑指令教学目标:教学目标:位逻辑的基本逻辑指令、置位置位/复位指令复位指令。知识重点:知识重点:位逻辑的置位置位/复位指令复位指令。知识难点:知识难点:位逻辑的置位置位/复位指令复位指令能力目标:能力目标:会使用S7-1200位逻辑指令完成具体任务的梯形图编写。项目四项目四 S7-1200指令系统指令系统4.1 位逻辑指令位逻辑指令位逻辑指令是PLC编程中使用最基本最频繁的指令。按不同的功能用途具有不同的形式,S7-1200中的位逻辑指令可以分为以下几类:基本位逻辑指令、置位/复位指
2、令、上升沿/下降沿指令。4.1.1 基本位逻辑指令基本位逻辑指令项目四项目四 S7-1200指令系统指令系统1、常开触点与常闭触点、常开触点与常闭触点常开触点 指定的位“bit”为 1时,常开触点闭合,为 0时常开触点断开。常闭触点 指定的位“bit”为0时,常闭触点闭合,为1时常闭触点断开。两个触点串联将进行“与”运算,两个触点并联将进行“或”操作。“bit”为Bool型变量。2、线圈、线圈指令执行时,CPU根据能流流入线圈的情况将指定的存储器位写入新值,如果有能流流过线圈,则将 中的“bit”位置1,若没有能流流过线圈,则将 中的“bit”位置0。取反输出线圈,如果有能力流过线圈,则将 中
3、的“bit”位置0,若没有能流流过线圈,则将 中的“bit”位置1。“bit”为Bool型变量。项目四项目四 S7-1200指令系统指令系统1、常开触点与常闭触点、常开触点与常闭触点常开触点 指定的位“bit”为 1时,常开触点闭合,为 0时常开触点断开。常闭触点 指定的位“bit”为0时,常闭触点闭合,为1时常闭触点断开。两个触点串联将进行“与”运算,两个触点并联将进行“或”操作。“bit”为Bool型变量。2、线圈、线圈指令执行时,CPU根据能流流入线圈的情况将指定的存储器位写入新值,如果有能流流过线圈,则将 中的“bit”位置1,若没有能流流过线圈,则将 中的“bit”位置0。取反输出线
4、圈,如果有能力流过线圈,则将 中的“bit”位置0,若没有能流流过线圈,则将 中的“bit”位置1。“bit”为Bool型变量。项目四项目四 S7-1200指令系统指令系统4.2、置位置位/复位指令复位指令如图所示:如图所示:置位、复位输出指令置位域与复位域输出指令项目四项目四 S7-1200指令系统指令系统任务任务5 故障信息显示电路故障信息显示电路。1、目的与要求、目的与要求通过故障信息显示电路的设计,让读者了解S7-1200位逻辑指令的基本应用以及梯形图的设计方法。设计故障信息显示电路,从故障信号I0.0的上升沿开始,使Q0.4控制的指示灯以1Hz的频率闪烁。操作人员按复位按钮I0.1后
5、,如果故障已经消失,则指示灯熄灭,如果没有消失,则指示灯转为常亮,直至故障消失。2、操作步骤、操作步骤1)I/O分配分配2)建立变量表)建立变量表3)参考程序)参考程序其中M0.5为CPU时钟存储器MB0的第五位,其时钟频率为1Hz。项目四项目四 S7-1200指令系统指令系统任务任务5 故障信息显示电路故障信息显示电路。1、目的与要求、目的与要求通过故障信息显示电路的设计,让读者了解S7-1200位逻辑指令的基本应用以及梯形图的设计方法。设计故障信息显示电路,从故障信号I0.0的上升沿开始,使Q0.4控制的指示灯以1Hz的频率闪烁。操作人员按复位按钮I0.1后,如果故障已经消失,则指示灯熄灭
6、,如果没有消失,则指示灯转为常亮,直至故障消失。2、操作步骤、操作步骤1)I/O分配分配2)建立变量表)建立变量表3)参考程序)参考程序其中M0.5为CPU时钟存储器MB0的第五位,其时钟频率为1Hz。项目四项目四 S7-1200指令系统指令系统。项目四项目四 S7-1200指令系统指令系统4.1.3 上升沿上升沿/下降沿指令下降沿指令P触点指令,当检测到它前面的逻辑状态由0变为1的正跳变时,即检测到“”时,该触点接通一个扫描周期。其中“bit”为Bool型变量,要检测其跳变沿的输入位。M_bit为Bool型变量,保存输入的前一个状态的存储器位。例如图4.8所示。当I0.0=1,I0.1由0到
7、1的上升沿时,Q0.0接通一个扫描周期。项目四项目四 S7-1200指令系统指令系统N触点指令,当检测到它前面的逻辑状态由1变为0的负跳变时,即检测到“”时,该触点接通一个扫描周期。P线圈指令,当检测到它前面的逻辑状态由0变为1的正跳变时,即检测到“”时,“bit”处的位数据值在一个扫描周期内设置为1。“bit”为Bool型变量,指示检测其跳变沿的输出位。M_bit为Bool型变量,保存输入的前一个状态的存储器位。项目四项目四 S7-1200指令系统指令系统任务小结:任务小结:通过本任务的学习,让读者学会S7-1200位逻辑指令的应用以及梯形图的设计方法。举一反三:抢答器设计。抢答器有I0.0
8、、I0.1和I0.2三个输入,对应输出分别为Q0.0、Q0.1和Q0.2,复位输入是I0.4。要求:三人任意抢答,谁先按动瞬时按钮,谁的指示灯先亮,且只能亮一盏灯。进行下一问题时主持人按复位按钮,抢答器重新开始。项目四项目四 S7-1200指令系统指令系统4.2 定时器指令定时器指令定时器的基本功能定时器的基本功能教学目标:教学目标:会使用会使用S7-1200四种定时器创建编程的时间延时。四种定时器创建编程的时间延时。教学重点:教学重点:1、了解、了解S7-1200四种定时器四种定时器TP、TON、TOF、TONR的名称、参数。的名称、参数。2、掌握四种定时器的工作特点,针对不同的任务会用不同
9、的定时器创建编程完成、掌握四种定时器的工作特点,针对不同的任务会用不同的定时器创建编程完成时间延时。时间延时。教学难点:区分教学难点:区分4种定时器的应用场合。种定时器的应用场合。技能目标:技能目标:硬件:会接电气线路图。硬件:会接电气线路图。软件:能编写出带有时间控制任务的梯形图。软件:能编写出带有时间控制任务的梯形图。4.2 定时器指令定时器指令定时器的基本功能定时器的基本功能使用定时器指令可创建编程的时间延迟,使用定时器指令可创建编程的时间延迟,S7-1200 PLC有有4种定种定时器:时器:TP:脉冲定时器可生成具有预设宽度时间的脉冲。脉冲定时器可生成具有预设宽度时间的脉冲。TON:接
10、通延迟定时器输出:接通延迟定时器输出Q在预设的延时过后设置为在预设的延时过后设置为 ON。TOF:关断延迟定时器输出:关断延迟定时器输出 Q 在预设的延时过后重置为在预设的延时过后重置为 OFF。TONR:保持型接通延迟定时器输出在预设的延时过后设置:保持型接通延迟定时器输出在预设的延时过后设置为为ON。在使用。在使用 R 输入重置经过的时间之前,会跨越多个定时时输入重置经过的时间之前,会跨越多个定时时段一直累加经过的时间。段一直累加经过的时间。RT:通过清除存储在指定定时器背景数据块中的时间数据:通过清除存储在指定定时器背景数据块中的时间数据来重置定时器。来重置定时器。每个定时器都使用一个存
11、储在数据块中的结构来保存定时器数每个定时器都使用一个存储在数据块中的结构来保存定时器数据。据。在编辑器中放置定时器指令时可分配该数据块。在编辑器中放置定时器指令时可分配该数据块。4.2 定时器指令定时器指令定时器的基本功能定时器的基本功能 2/24.2 定时器指令定时器指令定时器的输入输出参数定时器的输入输出参数 1/4TP、TON 和和 TOF 定时器具有相同的输入和定时器具有相同的输入和输出参数。输出参数。TONR 定时器具有附加的复位输入参数定时器具有附加的复位输入参数 R。可创建自己的可创建自己的“定时器名称定时器名称”来命名定时器来命名定时器数据块,还可以描述该定时器在过程中的用数据
12、块,还可以描述该定时器在过程中的用途。途。RT 指令可重置指定定时器的定时器数据。指令可重置指定定时器的定时器数据。4.2 定时器指令定时器指令定时器的输入输出参数定时器的输入输出参数 2/4参数参数数据类型数据类型说明说明INBool启用定时器输入启用定时器输入RBool将将 TONR 经过的时间重置为零经过的时间重置为零PT(Preset Time)Bool预设的时间值输入预设的时间值输入QBool定时器输出定时器输出ET(Elapsed Time)Time经过的时间值输出经过的时间值输出定时器数据块定时器数据块DB指定要使用指定要使用 RT 指令复位的定时器指令复位的定时器参数参数 IN
13、从从0变为变为1将启动将启动TP、TON 和和 TONR,从,从1变变0 将启动将启动 TOF。ET 为定时开始后经过的时间,或称为已耗时间值为定时开始后经过的时间,或称为已耗时间值(可以不为可以不为ET指指定地址定地址),它们的数值类型为,它们的数值类型为32位的位的Time,单位为,单位为ms,最大定时,最大定时时间为时间为T#24D_20H_31M_23S_647MS。4.2 定时器指令定时器指令定时器的输入输出参数定时器的输入输出参数 3/4IEC定时器和定时器和IEC计数器属于功能块,调用时需要指定配套的背计数器属于功能块,调用时需要指定配套的背景数据块,定时器和计数器指令的数据保存
14、在背景数据块中。景数据块,定时器和计数器指令的数据保存在背景数据块中。在梯形图中输入定时器指令时,打开右边的指令窗口将在梯形图中输入定时器指令时,打开右边的指令窗口将“定时器定时器操作操作”文件夹中的定时器指令拖放到梯形图中适当的位置,在出文件夹中的定时器指令拖放到梯形图中适当的位置,在出现的现的“调用选项调用选项”对话框中修改将要生成的背景数据块的名称,对话框中修改将要生成的背景数据块的名称,或采用默认的名称。点击或采用默认的名称。点击“确定确定”按钮,自动生成数据块。按钮,自动生成数据块。4.2 定时器指令定时器指令定时器的输入输出参数定时器的输入输出参数 4/4定时器定时器 PT 和和
15、IN 参数值变化参数值变化 TPl定时器运行期间,更改定时器运行期间,更改 PT 没有任何影响。没有任何影响。l定时器运行期间,更改定时器运行期间,更改 IN 没有任何影响。没有任何影响。TONl定时器运行期间,更改定时器运行期间,更改 PT 没有任何影响。没有任何影响。l定时器运行期间,将定时器运行期间,将 IN 更改为更改为 FALSE 会复位并停止定时器。会复位并停止定时器。TOFl定时器运行期间,更改定时器运行期间,更改 PT 没有任何影响。没有任何影响。l定时器运行期间,将定时器运行期间,将 IN 更改为更改为 TRUE 会复位并停止定时器。会复位并停止定时器。TONRl定时器运行期
16、间更改定时器运行期间更改PT没有任何影响,但对定时器中断后继续运没有任何影响,但对定时器中断后继续运行会有影响。行会有影响。l定时器运行期间将定时器运行期间将IN更改为更改为 FALSE 会停止定时器但不会复位定时会停止定时器但不会复位定时器。器。l将将 IN 改回改回 TRUE 将使定时器从累积的时间值开始定时。将使定时器从累积的时间值开始定时。定时器指令练习定时器指令练习1、I0.6按下,按下,Q0.0亮亮10S后熄灭。(后熄灭。(TP)2、I0.6按下,延时按下,延时10S后后Q0.0接通。(接通。(TON)3、I0.6按下,按下,Q0.0亮,亮,释放释放I0.6延时延时10S后后,Q0
17、.0熄灭。熄灭。(TOF)。)。练习练习1、用、用PLC1200控制电机启停。控制电机启停。任务要求:按下启动按钮,延时任务要求:按下启动按钮,延时5S后电动机起动,按后电动机起动,按下停止按钮,延时下停止按钮,延时10秒后电动机停止运行。秒后电动机停止运行。2、三相异步电动机正反转控制。按下正转按钮,正转、三相异步电动机正反转控制。按下正转按钮,正转10S后停止;按下反转按钮,后停止;按下反转按钮,15秒后停止。电机在工作秒后停止。电机在工作过程中按下停止按钮电动机停止运行。过程中按下停止按钮电动机停止运行。练习练习广场喷泉控制系统广场喷泉控制系统目的与要求目的与要求:通过广场喷泉控制系统电
18、路设计,让读者了解S7-1200指令系统中定时器指令和比较器指令的使用以及梯形图设计方法。一个喷泉池里有A、B、C三种喷头。喷泉的喷水规律是:按下启动按钮,A喷头喷5S B、C喷头同时喷8SB喷头喷4SA,C喷头同时喷5SA、B、C喷头同时喷8S停1S,然后从头循环开始喷水,直到按下停止按钮。4.2 定时器指令定时器指令举例举例 3/6用3种定时器设计卫生间冲水控制电路。4.2 定时器指令定时器指令举例举例 4/64.2 定时器指令定时器指令举例举例 5/6两条运输带顺序相连,为避免运送的物料在两条运输带顺序相连,为避免运送的物料在1号运输带上堆积,号运输带上堆积,按下起动按钮按下起动按钮I0
19、.3,1号带开始运行,号带开始运行,8s后后2号带自动起动。停机号带自动起动。停机的顺序与起动的顺序相反,按了停止按钮的顺序与起动的顺序相反,按了停止按钮I0.2后,先停后,先停2号带,号带,8s后停后停1号带。号带。Q1.1和和Q0.6控制两台电动机控制两台电动机M1和和M2。4.2 定时器指令定时器指令举例举例 6/64.3 基本指令基本指令计数器计数器教学目标:教学目标:会使用会使用S7-1200计数器编写出带有计数功能的梯形图程序。计数器编写出带有计数功能的梯形图程序。教学重点:教学重点:理解并正确使用理解并正确使用3种计数器指令,不同的应用场合会选用计数器。种计数器指令,不同的应用场
20、合会选用计数器。教学难点:教学难点:使用比较指令和计数器指令编写出带有计数控制任务的梯形图使用比较指令和计数器指令编写出带有计数控制任务的梯形图程序。程序。技能目标:技能目标:硬件:会接电气线路图。硬件:会接电气线路图。软件:能使用计数器编写出带有计数功能控制任务的梯形图。软件:能使用计数器编写出带有计数功能控制任务的梯形图。计数器指令计数器指令计数器的数据类型计数器的数据类型S7-1200有有3种计数器:加计数器种计数器:加计数器(CTU)、减计数器、减计数器(CTD)和加减计和加减计数器数器(CTUD)。它们属于软件计数器,其最大计数速率受到它所。它们属于软件计数器,其最大计数速率受到它所
21、在的在的OB的执行速率的限制。的执行速率的限制。如果需要速率更高的计数器,可以使用如果需要速率更高的计数器,可以使用CPU内置的高速计数器。内置的高速计数器。调用计数器指令时,需要生成保存计数器数据的背景数据块。调用计数器指令时,需要生成保存计数器数据的背景数据块。CU和和CD分别是加计数输入和减计数输入,在分别是加计数输入和减计数输入,在CU或或CD由由0变为变为1时,实际计数值时,实际计数值CV加加1或减或减1。复位输入复位输入R为为1时,计数器被复位,时,计数器被复位,CV被清被清0,计数器的输入,计数器的输入Q变变为为0。4.3 计数器指令计数器指令计数器的输入输出计数器的输入输出 参
22、数参数参数参数数据类型数据类型说明说明CU、CD BOOL加计数或减计数,按加或减加计数或减计数,按加或减一计数一计数 R(CTU、CTUD)BOOL将计数值重置为零将计数值重置为零 LOAD(CTD、CTUD)BOOL预设值的装载控制预设值的装载控制 PV SInt、Int、DInt、USInt、UInt、UDInt 预设计数值预设计数值 Q、QU BOOLCV=PV 时为真时为真 QD BOOLCV=0 时为真时为真 CV SInt、Int、DInt、USInt、UInt、UDInt 当前计数值当前计数值 4.3 计数器指令计数器指令加计数器加计数器CTU:参数参数 CU 的值从的值从 0
23、 变为变为 1 时,时,CTU 使计数值加使计数值加 1。如果。如果参数参数 CV(当前计数值当前计数值)的值大于或等于参数的值大于或等于参数 PV(预设计数值预设计数值)的值,的值,则计数器输出参数则计数器输出参数 Q=1。如果复位参数。如果复位参数 R 的值从的值从 0 变为变为 1,则,则当前计数值复位为当前计数值复位为 0。PV=34.3 计数器指令计数器指令减计数器减计数器CTD:参数参数 CD 的值从的值从 0 变为变为 1 时,时,CTD 使计数值减使计数值减 1。如果参。如果参数数 CV(当前计数值当前计数值)的值等于或小于的值等于或小于 0,则计数器输出参数,则计数器输出参数
24、 Q=1。如果参数如果参数 LOAD 的值从的值从 0 变为变为 1,则参数,则参数PV(预设值预设值)的值将作为的值将作为新的新的 CV(当前计数值当前计数值)装载到计数器。装载到计数器。PV=34.3 计数器指令计数器指令加减计数器加减计数器 1/2CTUD:加计数加计数(CU,Count Up)或减计数或减计数(CD,Count Down)输入的值从输入的值从 0 跳变为跳变为 1时,时,CTUD 会使计数值加会使计数值加 1 或减或减 1。如果参数如果参数 CV(当前计数值)的值大于或等于参数(当前计数值)的值大于或等于参数PV(预设值)(预设值)的值,则计数器输出参数的值,则计数器输
25、出参数 QU=1。如果参数。如果参数 CV 的值小于或等的值小于或等于零,则计数器输出参数于零,则计数器输出参数 QD=1。如果参数如果参数 LOAD 的值从的值从 0 变为变为 1,则参数,则参数 PV(预设值)的值将(预设值)的值将作为新的作为新的 CV(当前计数值)装载到计数器。(当前计数值)装载到计数器。如果复位参数如果复位参数 R 的值从的值从 0 变为变为 1,则当前计数值复位为,则当前计数值复位为 0。4.3 计数器指令计数器指令加减计数器加减计数器 2/2PV=4任务:任务:用比较和计数指令编写开关灯程序,要求用比较和计数指令编写开关灯程序,要求灯控按钮灯控按钮I0.0按下一次
26、,灯按下一次,灯Q0.1亮,按下亮,按下两次,灯两次,灯Q0.1,Q0.2全亮,按下三次灯全全亮,按下三次灯全灭,如此循环。灭,如此循环。分析:在程序中所用计数器为加法计数器,分析:在程序中所用计数器为加法计数器,当加到当加到3时,必须复位计数器,这是关键。时,必须复位计数器,这是关键。总结:总结:S7-1200有有3种计数器:加计数器种计数器:加计数器(CTU)、减计数、减计数器器(CTD)和加减计数器和加减计数器(CTUD)。CU和和CD分别是加计数输入和减计数输入,在分别是加计数输入和减计数输入,在CU或或CD由由0变为变为1时,实际计数值时,实际计数值CV加加1或减或减1。复位输入复位
27、输入R为为1时,计数器被复位,时,计数器被复位,CV被清被清0,计,计数器的输入数器的输入Q变为变为0。总结:总结:CTUD:加计数加计数(CU,Count Up)或减计数或减计数(CD,Count Down)输入的值从输入的值从 0 跳变为跳变为 1时,时,CTUD 会使计数值加会使计数值加 1 或减或减 1。如果参数如果参数 CV(当前计数值)的值大于或等于参数(当前计数值)的值大于或等于参数PV(预设值)的值,则计数器输出参数(预设值)的值,则计数器输出参数 QU=1。如果参数。如果参数 CV 的值小于或等于零,则计数器输出参数的值小于或等于零,则计数器输出参数 QD=1。如果参数如果参
28、数 LOAD 的值从的值从 0 变为变为 1,则参数,则参数 PV(预设值)(预设值)的值将作为新的的值将作为新的 CV(当前计数值)装载到计数器。(当前计数值)装载到计数器。如果复位参数如果复位参数 R 的值从的值从 0 变为变为 1,则当前计数值复位为,则当前计数值复位为 0。展厅人数控制系统展厅人数控制系统 控制要求:现有一展厅,最多可容纳控制要求:现有一展厅,最多可容纳50人同时参观。展厅进口与出口各装一传人同时参观。展厅进口与出口各装一传感器,每有一人进出,传感器给出一个脉感器,每有一人进出,传感器给出一个脉冲信号。试编程实现,当展厅内不足冲信号。试编程实现,当展厅内不足50人人时,
29、绿灯亮,表示可以进入;当展厅满时,绿灯亮,表示可以进入;当展厅满50人时,红灯亮,表示不准进入。人时,红灯亮,表示不准进入。展厅人数控制系统展厅人数控制系统I/O分配表分配表程序如下:程序如下:举一反三:通过传送带电机KM1带动传送带传送物品,通过产品检测器PH检测产品通过的数量,传送带每传送24个产品机械手KM2动作1次,进行包装,机械手动作后,延时2秒,机械手的电磁铁切断。通过传送带起动按钮、传送带停机按钮控制传送带的运动。产品通过检测器产品通过检测器程序如下:程序如下:总结:总结:CTUD:加计数加计数(CU,Count Up)或减计数或减计数(CD,Count Down)输入的值从输入
30、的值从 0 跳变为跳变为 1时,时,CTUD 会使计数值加会使计数值加 1 或减或减 1。如果参数如果参数 CV(当前计数值)的值大于或等于参数(当前计数值)的值大于或等于参数PV(预设值)的值,则计数器输出参数(预设值)的值,则计数器输出参数 QU=1。如果参数。如果参数 CV 的值小于或等于零,则计数器输出参数的值小于或等于零,则计数器输出参数 QD=1。如果参数如果参数 LOAD 的值从的值从 0 变为变为 1,则参数,则参数 PV(预设值)(预设值)的值将作为新的的值将作为新的 CV(当前计数值)装载到计数器。(当前计数值)装载到计数器。如果复位参数如果复位参数 R 的值从的值从 0
31、变为变为 1,则当前计数值复位为,则当前计数值复位为 0。4.4 基本指令基本指令数学运算指令数学运算指令教学目标:教学目标:会使用会使用S7-1200数学运算指令编写出完成某一控制任务的梯形图数学运算指令编写出完成某一控制任务的梯形图程序。程序。教学重点:教学重点:理解并正确使用数学运算指令,根据不同的应用场合会选用数理解并正确使用数学运算指令,根据不同的应用场合会选用数据类型。据类型。教学难点:教学难点:使用数学运算指令(使用数学运算指令(ADD)编写出时间控制任务的梯形图程序。)编写出时间控制任务的梯形图程序。技能目标:技能目标:硬件:会接电气线路图。硬件:会接电气线路图。软件:能使用(
32、软件:能使用(ADD)编写出时间控制任务的梯形图程序。)编写出时间控制任务的梯形图程序。2023-5-1148ADD,SUB,MUL和和DIV分别是加、减、乘、除指令。分别是加、减、乘、除指令。操作数的数据类型可选操作数的数据类型可选SInt,Int,Dint,USInt,UInt,UDInt和和Real。操作数的数据类型应该相同。操作数的数据类型应该相同。压力变送器的量程为压力变送器的量程为0 10MPa,输出信号为,输出信号为0 10V,被,被CPU集成集成的模拟量输入通道的模拟量输入通道0(地址为地址为IW64)转换为转换为0 27648的数字。假设转的数字。假设转换后的数字为换后的数字
33、为N,求以,求以kPa为单位的压力值。为单位的压力值。对应的转换公式为:对应的转换公式为:P=(10000 N)/27648=0.361690 N在运算时要先乘后除,否则会损失原始数据的精度。在运算时要先乘后除,否则会损失原始数据的精度。基本指令基本指令数学运算指令数学运算指令四则运算指令四则运算指令2023-5-1149方法方法1:双整数运算。乘法运算的结果可能会大于一个字能表示:双整数运算。乘法运算的结果可能会大于一个字能表示的最大值,因此使用双整数的乘法和除法。的最大值,因此使用双整数的乘法和除法。方法方法2:浮点数运算。:浮点数运算。4.4 基本指令基本指令数学运算指令数学运算指令四则
34、运算指令四则运算指令2023-5-1150MOD指令:除法指令只能得到商,余数被丢掉,指令:除法指令只能得到商,余数被丢掉,MOD指令可以指令可以用来求除法的余数。用来求除法的余数。NEG指令:将输入指令:将输入IN的值取反,保存在的值取反,保存在OUT中。中。INC和和DEC指令:参数指令:参数IN/OUT的值分别加的值分别加1和减和减1。绝对值指令绝对值指令ABS:求输入:求输入IN中有符号整数或实数的绝对值。中有符号整数或实数的绝对值。基本指令基本指令数学运算指令数学运算指令其他整数数学运算指令其他整数数学运算指令2023-5-1151梯形图梯形图描述描述梯形图梯形图描述描述SQR平方平
35、方TAN正切函数正切函数SQRT平方根平方根ASIN反正弦函数反正弦函数LN自然对数自然对数ACOS反余弦函数反余弦函数EXP自然指数自然指数ATAN反正切函数反正切函数SIN正弦函数正弦函数FRAC求浮点数的小数部分求浮点数的小数部分COS余弦函数余弦函数EXPT求浮点数的普通对数求浮点数的普通对数三角函数和反三角函数指令中的角度均为以弧度为单位的浮点数。三角函数和反三角函数指令中的角度均为以弧度为单位的浮点数。基本指令基本指令数学运算指令数学运算指令浮点数函数运算指令浮点数函数运算指令 1/3设备维护提醒按下启动按钮,电机开始工作,开始计时。按下停止按钮,电机停止计时,统计设备的运行时间,
36、天、时、分、秒。电机累计工作10天,发出报警提示(报警需闪烁),但电机正常工作,正常计时。发出报警提示,工作人员需按下停止按钮。对电机进行维护保养。维护保养以后,按下复位按钮,报警灯熄灭。计时从零开始。I/O分配:输入输入功能功能输出输出功能功能I0.0启动按钮Q0.0电机运行I0.1停止按钮Q0.1维护指示灯I0.2硬件故障Q0.2报警指示灯I0.7复位按钮4.5 基本指令基本指令比较指令比较指令教学目标:教学目标:会使用会使用S71200比较指令编写程序比较出相同数据类型的大小。比较指令编写程序比较出相同数据类型的大小。教学重点:教学重点:理解并正确使用理解并正确使用10种比较指令,不同的
37、应用场合会选择比较指种比较指令,不同的应用场合会选择比较指令的数据类型。令的数据类型。教学难点:教学难点:使用比较指令编写出带有时间控制任务的梯形图。使用比较指令编写出带有时间控制任务的梯形图。技能目标:技能目标:硬件:会接电气线路图。硬件:会接电气线路图。软件:能使用比较指令编写出带有时间控制任务的梯形图。软件:能使用比较指令编写出带有时间控制任务的梯形图。2023-5-1160基本指令基本指令比较指令比较指令 1/2比较指令用来比较数据类型相同的两个数比较指令用来比较数据类型相同的两个数IN1与与IN2的大小。操作的大小。操作数可以是数可以是I/Q/M/L/D存储区中的变量或常量。存储区中
38、的变量或常量。满足比较关系式给出的条件时,等效触点接通。满足比较关系式给出的条件时,等效触点接通。2023-5-1161基本指令基本指令比较指令比较指令 2/22023-5-1162 基本指令基本指令数据传送数据传送例一:当整数MW10=128时,且在MW20和MW22所存储数据范围之间时,输出Q0.0接通。控制任务广场喷泉控制任务要求:一个喷泉池里有A、B、C三种喷头。喷泉的喷水规律是:按下启动按钮,A喷头喷5S B、C喷头同时喷8SB喷头喷4SA,C喷头同时喷5SA、B、C喷头同时喷8S停1S,然后从头循环开始喷水,直到按下停止按钮。任务分析:1、画时序图2、I/O分配3、建立变量表4、程
39、序编写输入输入功能功能输出输出功能功能I0.0启动按钮Q0.1喷泉AI0.1停止按钮Q0.2喷泉BQ0.3 喷泉C程序如下:(4)调试程序总结:当某一个任务需要定时时,首先分析任务画出时序图是关键。根据时序图就可简单的编写出程序。举一反三:1、编写并完成数码管显示09的程序,间隔时间1S。2023-5-1169测量远处物体的高度时,已知被测物体到测量点的距离测量远处物体的高度时,已知被测物体到测量点的距离L和以度和以度为单位的夹角为单位的夹角,求被测物体的高度,求被测物体的高度H,H=L*tan(),角度的单位,角度的单位为度。假设以度为单位的实数角度值为度。假设以度为单位的实数角度值 在在M
40、D116,乘以,乘以/180=0.0174533,得角度的弧度值,运算的中间结果保存在数据,得角度的弧度值,运算的中间结果保存在数据类型为类型为Real的临时局部变量的临时局部变量temp1中。中。L的值保存在的值保存在MD128中,最中,最终结果终结果H保存在保存在MD132中。中。基本指令基本指令数学运算指令数学运算指令浮点数函数运算指令浮点数函数运算指令 2/32023-5-117022bac基本指令基本指令数学运算指令数学运算指令浮点数函数运算指令浮点数函数运算指令 3/32023-5-1171基本指令基本指令数据传送指令数据传送指令 1/22023-5-1172基本指令基本指令数据传
41、送指令数据传送指令 2/22023-5-1173基本指令基本指令数学运算指令数学运算指令转换指令转换指令2023-5-1174浮点数转换为双整数浮点数转换为双整数指令指令取整前取整前取整后取整后说明说明ROUND100.6-100.6101-101四舍五入四舍五入CEIL100.2-100.6101-100将浮点数转换为大于或等于它的最小双整数将浮点数转换为大于或等于它的最小双整数FLOOR100.6-100.2100-101将浮点数转换为小于或等于它的最大双整数将浮点数转换为小于或等于它的最大双整数TRUNC100.7-100.7100-100将浮点数转换为截位取整的双整数将浮点数转换为截位
42、取整的双整数由于浮点数的数值范围远远大于由于浮点数的数值范围远远大于32位整数,有点浮点数不能成功位整数,有点浮点数不能成功转换为转换为32位整数,此时位整数,此时ENO为为0状态。状态。基本指令基本指令取整指令取整指令2023-5-1175SCALE_X指令的浮点数输入值被线性转换为下限和上限定义数指令的浮点数输入值被线性转换为下限和上限定义数值范围之内的整数:值范围之内的整数:OUT=VALUE*(MAX-MIN)+MIN基本指令基本指令标定指令标定指令2023-5-1176NORM_X指令的整数输入数值指令的整数输入数值VALUE(在下限和上限之间)被(在下限和上限之间)被线性转换为线性
43、转换为0.0 1.0之间的浮点数之间的浮点数整数,如果整数,如果VALUE超出了下限或超出了下限或上限,可以生成小于上限,可以生成小于0.0或者大于或者大于1.0的浮点数。的浮点数。OUT=(VALUE-MIN)/(MAX-MIN)基本指令基本指令标准化指令标准化指令2023-5-1177基本指令基本指令程序控制指令程序控制指令2023-5-1178基本指令基本指令字逻辑运算指令字逻辑运算指令2023-5-1179基本指令基本指令循环和移位指令循环和移位指令 1/22023-5-1180通过循环指令实现彩灯控制:通过循环指令实现彩灯控制:I0.0为控制开关,为控制开关,M1.5为周期为为周期为
44、1s的时钟存储器位,实现的功的时钟存储器位,实现的功能为当按下能为当按下I0.0,QD4中为中为1的输出位每秒钟向左移动的输出位每秒钟向左移动1位。第位。第1段程序的功能是赋初值,即将段程序的功能是赋初值,即将QD4中的中的Q7.0置位,第置位,第2段程序的段程序的功能是每秒钟功能是每秒钟QD4循环左移一位。循环左移一位。基本指令基本指令循环和移位指令循环和移位指令 2/22023-5-1181S7-1200的扩展指令包括日期和时间指令,字符串和字符指令,的扩展指令包括日期和时间指令,字符串和字符指令,程序控制指令,通信指令,中断指令,程序控制指令,通信指令,中断指令,PID控制指令,运动控控
45、制指令,运动控制指令,脉冲指令等。制指令,脉冲指令等。扩展指令扩展指令日期时间指令日期时间指令CPU的实时时钟的实时时钟(Time-of-day Clock)在在CPU断电时由超级电容提断电时由超级电容提供的能量保证时钟的运行。供的能量保证时钟的运行。CPU上电至少上电至少24h后,超级电容充的后,超级电容充的能量可供时钟运行能量可供时钟运行10天。打开在线与诊断视图,可以设置实时天。打开在线与诊断视图,可以设置实时时钟的时间值,也可以用时钟指令来读、写实时时钟。时钟的时间值,也可以用时钟指令来读、写实时时钟。2023-5-1182数据类型数据类型Time的长度为的长度为4B,取值范围为,取值
46、范围为:T#-24d_20h_31m_23s_648ms T#24d_20h_31m_23s_648ms-2147483648ms 2147483647ms 数据结构数据结构DTL(日期时间)如表:(日期时间)如表:数据数据字节数字节数取值范围取值范围数据数据字节数字节数取值范围取值范围年年21970 2554h10 23月月11 12min10 59日日11 31s10 59星期星期11 7(周日周日 周六周六)ns40 999999999扩展指令扩展指令日期时间指令日期时间指令日期时间的数据类型日期时间的数据类型2023-5-1183T_CONV(时间转换时间转换)用于将数据类型用于将数据
47、类型Time转换为转换为DInt,或者作反,或者作反向的转换。向的转换。IN和和OUT参数均可以去数据类型参数均可以去数据类型Time转换为转换为Dint。T_ADD(时间相加时间相加)和和T_SUB(时间相减时间相减)的输入参数的输入参数IN1和输出参数和输出参数OUT的数据类型可选的数据类型可选DTL或或Time,他们的数据类型应该相同。,他们的数据类型应该相同。IN2的数据类型为的数据类型为Time。T_DIFF(时间差时间差)的输入的输入IN1的的DTL值减去值减去IN2的的DTL值,参数值,参数OUT提供数据类型为提供数据类型为Time的差值,即的差值,即DTL-DTL=Time。扩
48、展指令扩展指令日期时间指令日期时间指令时间转换、相加、相减、时间差时间转换、相加、相减、时间差2023-5-1184WR_SYS_T(写系统时间写系统时间):将输入:将输入IN的的DTL值写入值写入PLC的实时时的实时时钟。输出钟。输出RET_VAL是返回的指令执行的状态信息。是返回的指令执行的状态信息。RD_SYS_T(读系统时间读系统时间):将读取的:将读取的PLC当前系统时间保存在输当前系统时间保存在输出出OUT中,数据类型为中,数据类型为DTL。输出。输出RET_VAL是返回的指令执行是返回的指令执行的状态信息。的状态信息。RD_LOC_T(读本地时间读本地时间)的输出的输出OUT提供
49、数据类型为提供数据类型为DTL的的PLC中的当前本地时间。为了保证读取到正确的时间,在组团中的当前本地时间。为了保证读取到正确的时间,在组团CPU的的属性时,应设置实时时间的时区为北京,不设夏时制。在读取实属性时,应设置实时时间的时区为北京,不设夏时制。在读取实时时间时,应调用时时间时,应调用RD_LOC_T指令。指令。扩展指令扩展指令日期时间指令日期时间指令时钟指令时钟指令1/22023-5-1185用实时时钟指令控制路灯的定时接通和断开,用实时时钟指令控制路灯的定时接通和断开,20:00开灯,开灯,6:00关关灯。灯。用用RD_LOC_T读取实时时间,保存在数据类型为读取实时时间,保存在数据类型为DTL的局部变量的局部变量DT5中,其中的中,其中的HOUR是小时值,其变量名为是小时值,其变量名为DT5.HOUR。用。用Q0.0来控制路灯。来控制路灯。扩展指令扩展指令日期时间指令日期时间指令时钟指令时钟指令2/22023-5-1186扩展指令扩展指令字符串转换指令字符串转换指令2023-5-1187扩展指令扩展指令字符串操作指令字符串操作指令2023-5-1188扩展指令扩展指令程序控制指令程序控制指令