




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、南阳理工学院电子与电气工程系电子与电气工程系 电气教研室电气教研室电气控制与PLC应用技术电气控制与PLC应用技术可编程序控制器原理(第(第5-95-9章)章)第第5 5章章 S7-300S7-300指令系统指令系统 本本章章内内容容5.1 STEP-7 编程基础5.2 指令及其结构5.3 位逻辑指令5.4 定时器与计数器指令5.5 数据处理功能指令5.6 数据运算指令5.7 控制指令 思考与练习题教学目的教学目的掌握位逻辑指令的应用掌握定时器和计数器指令的应用 教学重点教学重点掌握位逻辑指令的应用掌握定时器和计数器指令的应用 教学难点教学难点定时器和计数器指令第第5 5章章 S7-300S7
2、-300指令系统指令系统 5.1 STEP 7 编程基础 指令组成:操作码指令组成:操作码 + + 操作数操作数u 操作码定义要执行的功能;操作码定义要执行的功能;u 操作数为执行该操作所需要的信息操作数为执行该操作所需要的信息, ,由标识符和参由标识符和参 数组成数组成; ;u 有些语句指令不带操作数,它们操作的对象是唯有些语句指令不带操作数,它们操作的对象是唯一的一的; ; 5.2 5.2 指令及其结构指令及其结构5.2.1 5.2.1 指令的组成指令的组成 1. 1. 语句指令语句指令语句指令:语句指令: 操作码操作码 操作数操作数A A I0.1I0.1 / /对输入继电器对输入继电器
3、 I0.1I0.1 进行与操作进行与操作 L L MW10MW10 / /将字将字MW10MW10装入累加器装入累加器1 1 定义要执行的功能定义要执行的功能执行该操作所需要的信息执行该操作所需要的信息 NOT / NOT /对逻辑操作结果(对逻辑操作结果(RLORLO)取反)取反5.2.1 5.2.1 指令的组成指令的组成 1. 1. 语句指令语句指令例如: Q 4.0 ( )该指令中:( )可认为是操作码,表示一个二进制赋值操作。Q 4.0是操作数,表示赋值的对象。 5.2.1 5.2.1 指令的组成指令的组成2.2.梯形逻辑指令梯形逻辑指令u 梯形逻辑指令用图形元素表示PLC要完成操作u
4、 其操作码是用图素表示的,该图素形象表明CPU做什么u 其操作数的表示方法与语句指令相同操作数: 标识符标识符 标识参数标识参数A I 0.1 L M W 10表示操作数在该存储区域表示操作数在该存储区域内的具体位置内的具体位置 主标识符:表示操作数所在的存储区主标识符:表示操作数所在的存储区 主要有:I(输入映像区),Q(输出映像区),M(位存储区),PI(外部输入),PQ(外部输出),T(定时器),C(计数器),DB(数据块),L(本地数据)等 辅助标识符进一步说明操作数的位数长度辅助标识符进一步说明操作数的位数长度包括有:X(位),B(字节),W(字2字节),D(双字4字节) 表示操作数
5、存放区域及操作数表示操作数存放区域及操作数位数(位、字节、字等)位数(位、字节、字等) 5.2.2 5.2.2 操作数操作数1.1.操作数的组成操作数的组成5.2.2 5.2.2 操作数操作数2. 2. 操作数的表示操作数的表示两种表示方法:u 物理地址(绝对地址)表示法要明确指出操作数的所在存储区,该操作数的位数具体位置。例如:Q 4.0。符号名先定义后使用,不能重名。定义符号时,需指明操作数所在的存储区、位数、具体位置及数据类型。u 符号地址表示法l 位逻辑指令处理两个数字,“1”和“0”。这两个数字“1”和“0”称为二进制数字或二进制位。在接点与线圈领域,“1”表示动作或通电,“0”表示
6、未动作或未通电。l 位逻辑指令扫描信号状态1和0,并根据布尔逻辑对它们进行组合。这些组合产生结果1或0,称为“逻辑运算结果(RLO)”。5.3 5.3 位逻辑指令位逻辑指令u 位逻辑运算指令u 位操作指令u 位测试指令l 位逻辑指令主要包括:位逻辑运算指令是位逻辑运算指令是l “与”(AND)l “或”(OR)l “异或”(XOR)指令l 组合5.3.1 5.3.1 位逻辑运算指令位逻辑运算指令1. “与”和“与非”(A,AN)指令 用语句表指令完全表示为:A I0.0 A Q 4.1AN M10.1 Q4.0 ( )I0.0 Q4.1 M10.1 Q4.0 5.3.1 5.3.1 位逻辑运算
7、指令位逻辑运算指令 2. “或”和“或非”(O,ON)指令 O I1.1 ON M2.0 O Q4.0 Q4.1 5.3.1 5.3.1 位逻辑运算指令位逻辑运算指令 I1.1 I1.1 M2.0 M2.0 Q4.0 Q4.0 ( )Q4.1Q4.1用语句表指令完全表示为: 3. “异或”和“异或非”(X,XN)指令 X I0.0 X I0.1 Q4.05.3.1 5.3.1 位逻辑运算指令位逻辑运算指令用语句表指令完全表示为:5.3.1 5.3.1 位逻辑运算指令位逻辑运算指令I0.0( )I0.2M10.0M0.3M10.1Q4.0( a )I0.0( )I0.2M10.0M0.3M10.
8、1Q4.0( b)4. 串并联组合表示法 当逻辑串是复杂组合时,CPU的扫描顺序是先“与”后“或”。A( O I0.0 O I0.2 ) A( O M10.0 O M0.3 ) A M10.1 Q4.0 先并后串梯形图语句表5.3.1 5.3.1 位逻辑运算指令位逻辑运算指令I0.0( )I0.2M10.0M0.3M10.1Q4.0( a )I0.0( )I0.2M10.0M0.3M10.1Q4.0( b )A( A I0.0 A M10.0 O A I0.2 A M0.3 ) A M10.1 Q4.0先串后并梯形图语句表【例】【例】运动机械自动往复运动的PLC控制。 1.按下启动按钮SB1后
9、,电动机驱动工作台运动2.如果工作台运动到极限位置时,由行程开关SQ1或SQ2检测并发 出停止前进指令,同时自动发出返回指令。3.只要不按停止按钮SB2,工作台将继续这种自动往复运动。4.工作台驱动电动机通过热继电器做过载保护。 控制要求: 5.3.1 5.3.1 位逻辑运算指令举例位逻辑运算指令举例4.校验解题过程:解题过程: 逻辑串输出指令又称为赋值操作指令 该操作把状态字中RLO的值赋给指定的操作数(位地址) 一个RLO可被用来驱动几个输出元件 在LAD中,输出线圈是上下依次排列的 在STL中,这些输出具有相同的优先级5.3.2 5.3.2 位操作指令位操作指令1. 输出指令A I0.0
10、A I0.1ON I0.2 Q4.0A I0.3 Q4.1多重输出梯形图 Q4.0( )I0.1I0.2I0.0Q4.1( )I0.3用语句表指令完全表示为:5.3.2 5.3.2 位操作指令位操作指令 置位复位指令根据RLO的值,来决定被寻址位的信 号状态是否需要改变2 . 置位复位指令5.3.2 5.3.2 位操作指令位操作指令 若RLO的值为1,被寻址位的信号状态被置1或清0 若RLO是0,则被寻址位的信号保持原状态不变(b)置位指令操作网络1AAONRI0.0I0.1I0.2Q4.0(R)Q4.0I0.0I0.1I0.2网络1AAONSI0.0I0.1I0.2Q4.0(S)Q4.0I0
11、.0I0.1I0.2(a) 复位指令操作 5.3.2 5.3.2 位操作指令位操作指令 RS触发器梯形图方块指令中标有一个置位输入(S)端,一个 复位输入(R)端,输出端标为Q。3. RS触发器5.3.2 5.3.2 位操作指令位操作指令 触发器可以用在逻辑串最右端,结束一个逻辑串,也可用在 逻辑串中,影响右边的逻辑操作结果。 RS触发器分为置位优先和复位优先型两种置位优先型RS触发器的R端在S端之上,当两个输入端都为1时,下面的置位输入最终有效,既置位输入优先,如图 A I0.0 R M0.0A I0.1S M0.0A M0.0 = Q4.0 置位优先型RS触发器 5.3.2 5.3.2 位
12、操作指令位操作指令根据I0.1和I0.2的时序图画出Q0.0的时序图。【例】【例】时序图抢答器有三个输入,分别为I0.0、I0.1和I0.2,输出分别为Q4.0、Q4.1和Q4.2,复位输入是I0.4。要求:三人中任意抢答,谁先按按钮,谁的指示灯优先亮,且只能亮一盏灯,进行下一问题时主持人按复位按钮,抢答重新开始。 5.3.2 5.3.2 位操作指令举例位操作指令举例【例】【例】抢答器的设计4.校验解题过程:解题过程:4. 对RLO的直接操作指令 这一类指令直接对RLO进行操作,改变状态字中RLO位的状态。5.3.2 5.3.2 位操作指令位操作指令当信号状态变化时就产生跳变沿 从0变到1时,
13、产生一个上升沿(或正跳沿)5.3.3 5.3.3 位测试指令位测试指令 从1变到0时,产生一个下降沿(或负跳沿) 两类跳变沿检测指令,一是对RLO的跳变沿检测的指令,另 一种是对触点跳变沿直接检测的梯形图方块指令RLO正跳沿检测1 2 3 4 5 6 7 8 9OBI扫描周期Q4.0M1.0I1.0信号状态图Q4.0M1.0I1.0语句表AFPI1.0( P )M1.0( )Q4.0梯形图5.3.3 5.3.3 位测试指令位测试指令【例】【例】设计一个闪烁电路,按动按钮设计一个闪烁电路,按动按钮I0.0I0.0,使灯泡使灯泡 亮,再按动按钮,灯泡灭;重复。亮,再按动按钮,灯泡灭;重复。 5.3
14、.3 5.3.3 位测试指令举例位测试指令举例负跳沿(下降沿)检测指令5.3.3 5.3.3 位测试指令位测试指令触点负跳沿检测NEGI0.3QM_BITM0.0I0.2I0.1I0.0I0.4( )Q4.0如果下列条件同时成立,则输出Q4.0为1:输入I0.0、I0.1和I0.2的信号状态为1。输入I0.3有负跳沿。输入I0.4的信号状态为1。5.3.3 5.3.3 位测试指令位测试指令地址上升沿检测指令示例5.3.3 5.3.3 位测试指令位测试指令【例】【例】若故障信号若故障信号I0.0I0.0为为1 1,使,使Q4.0Q4.0控制的指示灯以控制的指示灯以1Hz1Hz的的 频率闪烁。操作
15、人员按复位按钮频率闪烁。操作人员按复位按钮I0.1I0.1后,如果故障已经消失,后,如果故障已经消失, 则指示灯熄灭,若没有消失,指示灯转为常亮,直至故障消失。则指示灯熄灭,若没有消失,指示灯转为常亮,直至故障消失。5.3.3 5.3.3 位测试指令举例位测试指令举例1. 传送带控制 在传送带的起终点各有两个按钮开关:用于START的S1和S3;S2和S4用于STOP。可以从任一端启动或停止传送带。另外,当传送带上的物件到达末端时,传感器S5使传送带停机。5.3.4 5.3.4 位逻辑指令编程举例位逻辑指令编程举例MOTOR_ONS1S2StartStopS3S4StartStopS5用于传送
16、带系统符号编程的元素用于传送带系统符号编程的元素 I/O分配表分配表控制传送带程序控制传送带程序“S1”( S )“MOTOR_ON”网络1:按任何一个启动开关,接通电机“S3”网络1:OOSS1S3MOTOR_ON“S2”( R )“MOTOR_ON”网络2:按任何一个停止或打开传送带 末端的常闭接点,停止电机“S4”网络2:OOONS2S4RMOTOR_ONS5“S5”2. 风机监控程序 某设备有三台风机,当设备处于运行状态时,如果风机至少有两台以上转动,则指示灯常亮;如果仅有一台风机转动,则指示灯以0.5 Hz的频率闪烁;如果没有任何风机动,则指示灯以2 Hz的频率闪烁。当设备不运行时,
17、指示灯不亮。5.3.4 5.3.4 位逻辑指令编程举例位逻辑指令编程举例图图4.17 风机监控程序风机监控程序I0.0( )I0.0I0.1Q4.0Q4.1I0.2I0.1I0.2I0.0I0.1I0.2( # )M10.1 M9.3( # )M10.0M10.0 M10.1M9.7 注:输入位注:输入位I0.0I0.0,I0.1I0.1,I0.2I0.2分别为风机分别为风机1 1,2 2,3 3的反馈输入端。的反馈输入端。M9.3 M9.3 为为2 Hz2 Hz频率频率CPUCPU中的时钟信号;中的时钟信号;M9.7M9.7为为0.5 Hz0.5 Hz频率信号。频率信号。风机监控程序 AN
18、M10.0 AN M10.1 A M9.7 ) A Q4.0 Q4.1风机状态检测的语句表程序,从中可看出中间输出指令的用法:风机状态检测的语句表程序,从中可看出中间输出指令的用法:A(A(A I0.0A I0.1OA I0.0A I0.2OA I0.1A I0.2) M10.0 A M10.0 O( AN I0.0 ANI0.1 ANI0.2 M10.1 A M10.1 A M9.3 ) O 风机监控程序5.4 5.4 定时器与计数器指令定时器与计数器指令5.4.1 定时器指令u 脉冲定时器(SP)u 扩展定时器(SE)u 接通延时定时器(SD)u 带保持的接通延时定时器(SS)u 断电延时
19、定时器(SF)。 S7-300/400提供的定时器有:n 定时器的组成 定时器是一种由位和字组成的复合单元,定时器的触点由位表示,其定时时间值存储在字存储器中。 在CPU的存储器中留出了定时器区域,用于存储定时器的定时时间值。每个定时器为2 B,称为定时器字。 在S7-300中,最多允许使用256个定时器。 定时时间等于时基与定时值的乘积。 采用减计时,定时时间到后会引起定时器触点的动作。5.4.1 5.4.1 定时器指令定时器指令定时器的第0位到第11位存放二进制格式的定时值,第12、13位存放二进制格式的时基。n 定时器字的表示方法图图4.18 累加器累加器1低字的内容低字的内容(定时值定
20、时值127,时基,时基l s)1112135.4.1 5.4.1 定时器指令定时器指令4.180150100001001001118707210,01s - 0,1s -1s -10s -00011011时间值: 0 . . . 999不用n 定时器时基5.4.1 5.4.1 定时器指令定时器指令n 设置定时时间的方法 其中,a:小时,bb:分钟,cc:秒,ddd:毫秒,时基是自动选择的,原则是能满足定时范围要求的最小时基。 其中,w为时基,取值为0,1,2或3,分别表示时基为10 ms,l00 ms,1 s或10 s;xyz为定时值,取值范围为1999。l 使用S5中的时间表示法装入定时数值
21、 L S5T#aH_bbM_ccS_dddMSl 直接装入定时数值 L W#16#wxyz5.4.1 5.4.1 定时器指令定时器指令n -(SP)指令是产生指定时间宽度脉冲的定时器。 LAD参数数据类型存储区说明TIMERT地址表示要起动的计时器号时间值S5TIMEI,Q,M,D,L定时时间值(S5TIME格式)1 1、脉冲定时器、脉冲定时器 -(SPSP)1 1、脉冲定时器、脉冲定时器 -(SPSP)1 1、脉冲定时器、脉冲定时器 -(SPSP)n 上图程序对应的时序图如图所示上图程序对应的时序图如图所示 1 1、脉冲定时器、脉冲定时器 -(SPSP)l T1接点控制Q0.0线圈,因此T1
22、接点的状态与Q0.0的状态一致l 脉冲定时器每次起动的条件是逻辑位有正跳沿发生,定时器 启动计时,T1接点开始输出高电平“1”。l -(SP)指令计时的过程中,逻辑位的状态若变为“0”,则定时 器停止计时,且输出为“0”。l 脉冲定时器输出的高电平的宽度小于或等于所定义的时间值。 LADLAD参数参数数据类数据类型型说明说明存储区存储区TIMER要启动的计时器号如T0TSBOOL启动输入端I,Q,M,D,LTVS5TIME定时时间(S5TIME格式)RBOOL复位输入端QBOOL定时器的状态BIWORD当前时间(整数格式)BCDWORD当前时间(BCD码格式)1 1、脉冲定时器、脉冲定时器 -
23、(SPSP)n 脉冲定时器的方框指令脉冲定时器的方框指令1 1、脉冲定时器、脉冲定时器 -(SPSP) 可从MW10和MW12中以不同的格式读出定时器计时T1剩余的时间1 1、脉冲定时器、脉冲定时器 -(SPSP)上图所示的程序对应的时序图【例】【例】用脉冲定时器设计一个周期振荡电路,振用脉冲定时器设计一个周期振荡电路,振 荡周期为荡周期为5s5s,占空比为,占空比为2:32:3。 1 1、脉冲定时器、脉冲定时器 -(SPSP)n -(SE)指令与-(SP)指令相似,但-(SE)指令具有保持功能。LAD参数数据类型存储区说明TIMERT地址表示要起动的计时器号时间值S5TIMEI,Q,M,D,
24、L定时时间值(S5TIME格式)2 2、扩展脉冲定时器、扩展脉冲定时器 -(SESE)2 2、扩展脉冲定时器、扩展脉冲定时器 -(SESE)2 2、扩展脉冲定时器、扩展脉冲定时器 -(SESE)n 上图所示的程序对应的时序图l一旦逻辑位(即I0.0的状态)有正跳沿发生,定时器T0启动,同时输出高电平“1”。2 2、扩展脉冲定时器、扩展脉冲定时器 -(SESE)l定时时间到后,输出将自动变成低电平“0”。l如果定时时间尚未到达,逻辑位的状态就由“1”变为“0”,这时定时器仍然继续运行,直到计时完成。这一点是-(SE)指令与-(SP)指令的不同之处。 LAD参数数据类型说明存储区TIMER要启动的
25、计时器号如T0TSBOOL启动输入端I,Q,M,D,LTVS5TIME定时时间(S5TIME格式)RBOOL复位输入端QBOOL定时器的状态BIWORD当前时间(整数格式)BCDWORD当前时间(BCD码格式)2 2、扩展脉冲定时器、扩展脉冲定时器 -(SESE)扩展脉冲定时器的方框指令定时器应用举例:n 使用-(SP)或-(SE)指令构成脉冲发生器:使用脉冲定时器如图所示的程序可产生周期性变化的脉冲信号。n 上图中的程序对应的时序图如图所示 定时器应用举例:n 程序又可写成如图所示的程序 定时器应用举例:【例】【例】设计频率监视器,其特点是频率低于下限,则设计频率监视器,其特点是频率低于下限
26、,则 指示灯指示灯Q4.0Q4.0亮,亮,“确认确认”按钮按钮I0.1I0.1使指示灯复位。监使指示灯复位。监控控 频率为频率为0.5Hz0.5Hz,由,由M10.0M10.0提供提供。定时器应用举例:3 3、开通延时定时器、开通延时定时器-(SDSD)n 开通延时定时器指令-(SD),相当于继电器控制系统 中的通电延时时间继电器。 LAD参数数据类型存储区说明TIMERT地址表示要起动的计时器号时间值S5TIMEI,Q,M,D,L定时时间值(S5TIME格式)n 如图所示的程序: 3 3、开通延时定时器、开通延时定时器-(SDSD)n 上图所示的程序对应的时序图如图所示 3 3、开通延时定时
27、器、开通延时定时器-(SDSD)n -(SDSD)对应的方框如表所示)对应的方框如表所示 LAD参数数据类型说明存储区TIMER要启动的计时器号如T0TSBOOL启动输入端I,Q,M,D,LTVS5TIME定时时间(S5TIME格式)RBOOL复位输入端QBOOL定时器的状态BIWORD当前时间(整数格式)BCDWORD当前时间(BCD码格式)3 3、开通延时定时器、开通延时定时器-(SDSD)n 定时器扩展定时器应用举例:在S7-300中,单个定时器的最大计时范围是999(2H_46M_30S),如果超过这个范围,可以采用两个或多个定时器级连的方法来扩展计时范围。设计一个要求延时时间为5个小
28、时的控制任务。n 使用-(SD)指令产生周期性变化的脉冲信号:定时器应用举例:n 上图所示的程序对应的时序图如图所示 定时器应用举例:【例】【例】用接通延时定时器设计一个周期振荡电路,用接通延时定时器设计一个周期振荡电路, 振荡周期为振荡周期为18s18s,占空比为,占空比为1 1:2 2。定时器应用举例:定时器应用举例:n使用 -(SD)指令还可以用二分频电路产生一个方波。程序如图所示 n时序图如图所示 定时器应用举例:4 4、保持型开通延时定时器、保持型开通延时定时器-(SSSS) n保持型开通延时-(SS)与开通延时定时器-(SD)类似,但-(SS)指令有保持功能。 LAD参数数据类型存
29、储区说明TIMERT地址表示要起动的计时器号时间值S5TIMEI,Q,M,D,L定时时间值(S5TIME格式)4 4、保持型开通延时定时器、保持型开通延时定时器-(SSSS) n 上图中的程序对应的时序图如图所示 4 4、保持型开通延时定时器、保持型开通延时定时器-(SSSS) n 保持型开通延时定时器的方框指令LAD参数数据类型说明存储区TIMER要启动的计时器号如T0TSBOOL启动输入端I,Q,M,D,LTVS5TIME定时时间(S5TIME格式)RBOOL复位输入端QBOOL定时器的状态BIWORD当前时间(整数格式)BCDWORD当前时间(BCD码格式)4 4、保持型开通延时定时器、
30、保持型开通延时定时器-(SSSS) 5 5、关断延时定时器、关断延时定时器-(SFSF)n 关断延时定时器-(SF)相当于继电器控制系统中的断电延时时间继电器。也是定时器指令中唯一的一个由下降沿启动的定时器指令。 LAD参数数据类型存储区说明TIMERT地址表示要起动的计时器号时间值S5TIMEI,Q,M,D,L定时时间值(S5TIME格式)n 如图所示的程序 5 5、关断延时定时器、关断延时定时器-(SFSF)n 上图中的程序对应的时序图如图所示5 5、关断延时定时器、关断延时定时器-(SFSF)n 关断延时计时器的方框指令如下表所示 LAD参数数据类型说明存储区TIMER要启动的计时器号如
31、T0TSBOOL启动输入端I,Q,M,D,LTVS5TIME定时时间(S5TIME格式)RBOOL复位输入端QBOOL定时器的状态BIWORD当前时间(整数格式)BCDWORD当前时间(BCD码格式)5 5、关断延时定时器、关断延时定时器-(SFSF)5 5种定时器的选择原则种定时器的选择原则5.4.2 5.4.2 计数器指令计数器指令 计数器置初值指令(计数器置初值指令(SCSC) 加法计数器线圈(加法计数器线圈(CUCU) 减法计数器线圈(减法计数器线圈(CDCD)n S7 S7中的计数器用于中的计数器用于: :对对RLORLO正跳沿计数。正跳沿计数。n 计数器是由表示当前计数值的字及状态
32、的位组成。计数器是由表示当前计数值的字及状态的位组成。n S7S7中有三种计数器中有三种计数器: : 1011120304150607180901001112131415BCD码7BCD码2BCD码1无关:当计数器置数时这四位被忽略计数器组成计数器组成 在在CPUCPU中保留一块存储区作为计数器计数值存储区,每个计中保留一块存储区作为计数器计数值存储区,每个计数器占用两个字节,计数器字中的第数器占用两个字节,计数器字中的第0 01111位表示计数值位表示计数值( (二进制格式二进制格式) ),计数范围是,计数范围是0 0999999。5.4.2 5.4.2 计数器指令计数器指令 1 1计数器置
33、初值指令(计数器置初值指令(SCSC)n 当逻辑位RLO有正跳沿时,计数器置初值线圈将预置值装入指定计数器中。若RLO位的状态没有正跳沿发生,则计数器的值保持不变。LAD参数数据类型存储区说明计数器号COUNTERC地址表示预置初值的计数器号预置值WORDI,Q,M,D,L预置值(必须是BCD码格式,即为C#,例如C#23)2 2加法计数器线圈加法计数器线圈 LAD参数数据类型存储区说明计数器号COUNTERC地址表示要执行加法计数的计数器号l 当逻辑位RLO有正跳沿时,加法计数器线圈使指定计数 器的值加1,l 如果RLO位的状态没有正跳沿发生,或者计数器数值已经 达到最大值999,则计数器的
34、值保持不变。 3 3减法计数器线圈减法计数器线圈 l 当逻辑位RLO有正跳沿时,减法计数器线圈使指定计数器 的值减1l 如果RLO位的状态没有正跳沿发生,或者计数器数值已经 达到最小值0,则计数器的值保持不变。 LAD参数数据类型存储区说明计数器号COUNTERC地址表示要执行减法计数的计数器号计数器指令的使用举例计数器指令的使用举例 n 如图所示如图所示n 当I0.0的状态由“0”变为“1”时,(SC)指令将数值23装入计数器C0中,当I0.1的状态由“0”变为“1”时,计数器C0的值将减1,当I0.2的状态由“0”变为“1”时,计数器C0的值将加1。计数器的位状态与计数器值的关系如表所示
35、计数器的计数值计数器的位状态不等于0“1”(高电平)等于0“0”(低电平)计数器指令的使用举例计数器指令的使用举例 n 如图所示,若I0.3的状态为“1”,则计数器C0所计的数值立刻变为零,由于(R)指令是高电平执行,因此若I0.3的状态保持“1”,则计数器C0始终处于清零状态而无法正常使用。用户在使用指令时,应注意指令的执行方式。 计数器指令的使用举例计数器指令的使用举例 4 4可逆计数器可逆计数器S_CUDS_CUDLAD参数数据类型说明存储区COUNTER计数器标识号CCUBOOL加计数输入I,Q,M,D,LCDBOOL减计数输入SBOOL计数器预置输入PVWORD计数器预置值(C#格式
36、)RBOOL复位输入QBOOL计数器状态CVWORD计数器当前值(整数格式)CV_BCDWORD计数器当前值(BCD格式)n 前面例子中两图所示的程序可以由下图所示的程序代替 4 4可逆计数器可逆计数器S_CUDS_CUD 可逆计数器方框指令可以完成计数器的加(CU)、减(CD)计数和置初值(S、PV)以及计数器值清零(R)等功能.4 4可逆计数器可逆计数器S_CUDS_CUD可以看到, 还可以将计数器当前值以不同的格式输出,整数格式(CV)和BCD格式(CV_BCD). 计数器的状态可以Q端输出,也可以由计数器的触点输出.p计数器指令的加、减计数输入端以及预置值输入端均为上升沿执行,指令才会
37、执行。4 4可逆计数器可逆计数器S_CUDS_CUD使用计数器时应该注意下面几点问题 p计数器预置的初始值及PV端的数据格式为BCD码二十进制格式,否则执行程序时,CPU将会出错。p计数器触点的状态由计数器的值决定,如果计数值等于零,则计数器触点的状态为低电平“0”,如果计数值不等于零(无论等于几),则计数器触点的状态为高电平“1”。1. 1. 脉冲发生器脉冲发生器用定时器构成一个脉冲发生器,使其产生如图所示的脉冲时序,用定时器构成一个脉冲发生器,使其产生如图所示的脉冲时序,脉冲信号的周期为脉冲信号的周期为3 s3 s,脉冲宽度为,脉冲宽度为1 s1 s2s1sQ4.0I0.0应用举例应用举例
38、网络12I0.0T1(SD)T2S5T#2S网络13T2(SD)T1S5T#1S( )Q4.02脉冲发生器程序脉冲发生器程序 2. 2. 频率监测器频率监测器 频率监测器用于监测脉冲信号的频率,若其低于下限,则频率监测器用于监测脉冲信号的频率,若其低于下限,则指示灯亮,指示灯亮,“确认确认”按键能使指示灯复位。为此,使用了一个按键能使指示灯复位。为此,使用了一个扩展脉冲定时器,即每当频率信号有一个上升沿就启动一次定扩展脉冲定时器,即每当频率信号有一个上升沿就启动一次定时器。如果超过了定时时间没有启动定时器,则表明两个脉冲时器。如果超过了定时时间没有启动定时器,则表明两个脉冲之间的时间间隔太长,
39、即频率太低了。之间的时间间隔太长,即频率太低了。应用举例应用举例tt*定时器再触发确认频率低I0.1频率低指示Q4.0定时器响应T1脉冲信号M10.0t定时时间频率监测器时序频率监测器时序 频率监测梯形图程序频率监测梯形图程序M10.0(SE)T1S5T#2SI0.0( S )Q4.0T1( R )Q4.0I0.0I0.1 I0.0用于关闭监测器用于关闭监测器 I0.1用于确认频率低用于确认频率低 Q4.0用以控制指示灯用以控制指示灯 T1的定时时间为的定时时间为2 s 即设置脉冲信即设置脉冲信M10.0 的频率监测下限为的频率监测下限为0.5 Hz。应用举例:交通信号灯的控制交通信号灯模型如
40、图所示 红 1 黄 1 绿 1黄 1红 1绿 1绿 2黄 2红 2红 2黄 2绿 2北南西东控制要求如下:l自动开关合上之后,东西绿灯亮8秒灭,黄灯亮3秒之后灭,红灯亮10秒后闪2秒然后绿灯亮.循环l对应东西绿黄灯亮时,南北红灯亮9秒后闪2秒,接着绿灯亮9秒后闪秒灭,黄灯亮3秒,红灯又亮.循环l当断开自动开关时,交通信号灯立刻停止工作交通信号灯的控制要求n根据控制要求画出交通信号灯的时序图如图所示 交通信号灯的控制系统分析 n1PLC硬件配置:控制系统中的硬件配置如下 序号名称型号说明数量1CPUCPU31312电源模块PS30713开关量输入模块SM32114开关量输出模块SM32215前连
41、接器20针2交通信号灯的控制n2分析控制要求进行输入输出点分配,并根据分配画出外部接线图。序号输入信号名称地址1自动开关QS(常开)I0.0序号输出信号名称地址1东西绿灯HL1Q4.02东西黄灯HL2Q4.13东西红灯HL3Q4.24南北绿灯HL4Q4.35南北黄灯HL5Q4.46南北红灯HL6Q4.5交通信号灯的控制n输入输出模块接线如图所示 交通信号灯的控制n3程序设计 设计提示:可先采用SE指令,产生周期为23秒,占空 比为11:12的矩形波。再将其分割成所需要的矩形波。交通信号灯的控制5.5 5.5 数据处理功能指令数据处理功能指令l 装入(L)和传送(T)指令可以在存储区之间或存储区
42、与过程输 入、输出之间交换数据。5.5.1 装入和传送指令l CPU执行这些指令不受逻辑操作结果RLO的影响。l L指令将源操作数装入累加器1中,而累加器原有的数据移入 累加器2中,累加器2中原有的内容被覆盖。l T指令将累加器1中的内容写入目的存储区中,累加器的内容 保持不变。L 5 L MW 10 L IBDID 8 T MW 20 T MWAR1,P#10.0 对累加器1的装入和传送指令/将立即数5装入累加器1中/将MW10中的值装入累加器1中/将由数据双字DID8指出的输入字节装入累加器1中/将累加器1中的内容传送给存储字MW20 /将累加器1中的内容传送给由地址寄存器1加偏/移量确定
43、的存储字中5.5.1 装入和传送指令 L STW / L STW /将状态字中将状态字中0 08 8位装入累加器位装入累加器1 1中,累加器中,累加器 9 93l3l位被清位被清0 0 T STW / T STW /将累加器将累加器1 1中的内容传送到状态字中中的内容传送到状态字中 5.5.1 装入和传送指令2. 2. 读取或传送状态字读取或传送状态字L T1 /将定时器T1中二进制格式的时间值直接装入累加器1的低字中 LC T1 /将定时器T1的时间值和时基以BCD码装入累加器1的低字中L C1 /将计数器C1中二进制格式的计数值直接装入累加器1的低字中LC C1 /将计数器C l中的计数值
44、以BCD码格式装入累加器1的低字中 3. 3. 装入时间值或计数值装入时间值或计数值5.5.1 装入和传送指令5.5.1 装入和传送指令4. 4. 地址寄存器装入和传送地址寄存器装入和传送对于地址寄存器,可以不经过累加器1而直接将操作数装入或送,或将两个地址寄存器的内容直接交换。LAD参数数据类型说明存储区ENBOOL允许输入I,Q,M,D,LENOBOOL允许输出IN长度为8位、16位、32位的所有数据类型源数据OUT长度为8位、16位、32位的所有数据类型目的地地址5.5.1 装入和传送指令5. 5. 梯形图方块传送指令梯形图方块传送指令MOVEENINENOOUTDBW12( )Q4.0
45、MW10I0.0 A A I0.0I0.0 JNB JNB _0001 _0001 L L MW10MW10 T T DBW12DBW12SET SET /使使RLORLO为为1 1SAVE SAVE /使使BRBR为为1 1 CLR CLR_0001_0001: A BRA BR Q4.0Q4.05.5.1 装入和传送指令n 如图所示程序 5.5.1 装入和传送指令 在在S7-300S7-300中,单个计数器的最大计数值是中,单个计数器的最大计数值是999999,如果要求,如果要求大于大于999999的计数,就要进行扩展。结合应用传送指令和比的计数,就要进行扩展。结合应用传送指令和比较指令,
46、将两个计数器级连,最大计数值可达较指令,将两个计数器级连,最大计数值可达9999992 2,n n个个计数器级连,最大计数值可达计数器级连,最大计数值可达999 999 n n。 【例】【例】计数器扩展计数器扩展应用举例应用举例两个计数器级连扩展的程序 n用计数器和定时器进行级连,可以使计时范围几乎可以无限地进行扩展。n假定T1的延时时间为2H,C0的计数值为999,则C1动作一次的时间为99921998 小时(约83天)。如果再考虑计数器C1与C0进行级连,设C1的计数值为900,则C1动作一次需要83900=74700天,约204年。【例】【例】定时器扩展应用举例应用举例2个计数器和1个定
47、时器进行级连n 能够实现的转换操作有: * BCD码和整数及长整数间的转换 (BTI, ITB, ITD, BTD, DTB, DTR ) * 实数和长整数间的转换(RND, TRUNC, RND+, RND- ) * 数的取反、取负等(INVI, INVD, NEGI, NEGD, NEGR )5.5.2 5.5.2 转换指令转换指令n 转换指令首先将源数据按照规定的格式读入累加器,然后 在累加器中对数据进行类型转换,最后再将转换的结果传 送到目的地址。1. BCD1. BCD和整数间的转换和整数间的转换表表4.16 BCD和整数间的转换和整数间的转换指令说 明BTI将累加器1低字中的3位B
48、CD码转换为16位整数BTD将累加器1低字中的7位BCD码转换为32位整数ITB将累加器1低字中的16位整数码转换为3位BCD码ITD将累加器1低字中的16位整数码转换为32位整数DTB将累加器1中的32位整数码转换为7位BCD码DTR将累加器1中的32位整数码转换为32位整数2. 2. 实数和长整数间的转换实数和长整数间的转换指令说 明RND将实数化整为最接近的整数,四舍五入,如果小数部分等于5,则选择偶数结果,例如:1002.5化整为1002,1003.5化整为1004RND+将实数化整为大于或等于该实数的最小整数RND-将实数化整为小于或等于该实数的最大整数TRUNC取实数的整数部分(截
49、去小数)3. 3. 数的取反、取负数的取反、取负指令说 明INVI对累加器1低字中的16位整数求反码INVD对累加器1中的32位整数求反码NEGI对累加器1低字中的16位整数求补码NEGD对累加器1中的32位整数求补码NEGR对累加器1中的32位实数的符号位求补码【例】【例】如果输入I0.1为1,则将MD0的内容以7位BCD码的格式(如果格式非法,则显示系统错误)装入累加器1,并将其转换为长整数,存放到MD10,如果转换不执行,则输出Q4.0为1。 应用举例应用举例1. 比较指令比较指令表表4.19 比比 较较 指指 令令5.5.3 5.5.3 比较指令比较指令l 传送带1将包裹运送至临时仓库
50、区。l 传送带1靠近仓库区一端安装的光电传感器确定已有多少包裹运送至仓库区。l 传送带2将临时库区中的包裹运送至装货场,在这里货物由卡车运送至顾客。l 传送带2靠近库区一端安装的光电传感器确定已有多少包裹从库区运送至装货场。l 含5个指示灯的显示盘表示临时仓库区的占用程度。应用实例应用实例两台传送带的系统,在两台传送带之间有一个仓库区:图图4.33 装有计数器和比较器的仓库区装有计数器和比较器的仓库区可装100件包裹的临时仓库I0.0I0.1包裹运进包裹运出传送带1光电传感器1光电传感器2传送带2仓库区装满(Q15.4)仓库区装入90%(Q15.3)仓库区装入50%(Q15.2)仓库区不空(Q
51、12.1)仓库区空(Q12.0)显示面板应用实例应用实例4.校验解题过程:解题过程:【例】【例】用比较和计数指令编写开关灯程序,要求灯控用比较和计数指令编写开关灯程序,要求灯控 按钮按钮I0.0I0.0按下一次,灯按下一次,灯Q4.0Q4.0亮,按下两次,灯亮,按下两次,灯Q4.0Q4.0,Q4.1 Q4.1 全亮,按下三次灯全灭,如此循环。全亮,按下三次灯全灭,如此循环。应用实例应用实例【例】【例】有一部电动小车供有一部电动小车供5 5个加工点使用,对小车的控制个加工点使用,对小车的控制 要求为:要求为:1 1)启动按钮)启动按钮I0.7I0.7按下时,车停在某个加工点(工位:按下时,车停在
52、某个加工点(工位:1-51-5) 若没有用车呼叫时,工位允许呼叫指示灯亮,表示各工位若没有用车呼叫时,工位允许呼叫指示灯亮,表示各工位 可以呼车。可以呼车。2 2)某工位呼车时,工位允许呼叫的指示灯灭,表示此后再呼)某工位呼车时,工位允许呼叫的指示灯灭,表示此后再呼 车均无效。车均无效。3 3)停车位呼车则小车不动,当呼车位号大于停车位号时,小)停车位呼车则小车不动,当呼车位号大于停车位号时,小 车自动向低位行驶;当呼车位号小于停车位号时,小车自车自动向低位行驶;当呼车位号小于停车位号时,小车自 动向高位行驶。当小车到达呼车位时自动停车。动向高位行驶。当小车到达呼车位时自动停车。4 4)小车到
53、达呼车位时应停留)小车到达呼车位时应停留5s5s供该工位使用,不应立即被其供该工位使用,不应立即被其 他工位呼走他工位呼走试设计此系统。试设计此系统。应用实例应用实例4.校验解题过程:解题过程:l 移位指令将输入移位指令将输入ININ中的内容向左或向右逐位移动中的内容向左或向右逐位移动l 移动次数由输入值移动次数由输入值N N提供的数值确定提供的数值确定l 移位后空出的位填以移位后空出的位填以0 0或符号位或符号位(0(0代表正,代表正,1 1代表负代表负) )l 被移动的最后一位保存在状态字中的被移动的最后一位保存在状态字中的CClCCl里里l CC0CC0和和OVOV被复位为被复位为0 0
54、l 可使用条件跳转指令对可使用条件跳转指令对CClCCl进行判断。进行判断。l 循环移位指令的空位填以从循环移位指令的空位填以从ININ中移出的位。中移出的位。5.5.4 5.5.4 移位和循环移位指令移位和循环移位指令1无符号数移位指令表表4.20 无符号数移位指令无符号数移位指令输入输入ININ左移左移5 5位位 0 0 0 0 10 0 0 01 1 1 10 1 0 10 1 0 1158700 0 0 0参数INN1 0 1 01 1 1 06位OUT这5位丢失空出的位填入01 0 1 01无符号数移位指令2. 有符号数移位指令 输入输入ININ带符号右移带符号右移4 4位位1 0
55、1 015870参数INN4位OUT空出位填入与符号位相同的信号状态这四位丢失1 1 1 10 0 0 01 0 1 01 1 1 11 0 1 01 1 1 11 0 1 00 0 0 0符号位2. 有符号数移位指令 3. 循环移位指令输入输入ININ循环左移循环左移3 3位位1 1 10 1 0 10 1 0 1310参数INN3位OUT移出3位的信号状态插入空出位中最后移出位的状态存在CC1中0 0 0 01 1 1 11 0 1 01 0 1 00 0 0 01 1 1 10 0 0 01 1 1 11 0 0 00 0 0 00 1 1 11 0 0 00 1 1 11 1 1 11
56、5163. 循环移位指令【例】【例】 走马灯的实现。走马灯的实现。 要求:运用循环移位指令实现要求:运用循环移位指令实现8 8个彩灯的循环左移和右移。个彩灯的循环左移和右移。 其中其中I0.0I0.0为起停开关,为起停开关,MD20MD20为设定的初始值,为设定的初始值,MW12MW12为移位为移位 位数,输出为位数,输出为Q0.0Q0.7Q0.0Q0.7。 3. 循环移位指令举例解题过程:解题过程:5.5.5 累加器操作和地址寄存器指令表表4.23 累加器操作指令累加器操作指令1. 累加器操作指令CAW、CAD指令执行时累加器指令执行时累加器1的变化的变化3116150原累加器1指令执行后C
57、AW3116150CAD5.5.5 累加器操作和地址寄存器指令 下面的例子说明了在有条件触发的程序中INC指令是如何工作的。本例以存储字节MB10作为循环次数计数暂存器,用INC指令修正循环次数,循环体中的程序连续执行5次。 LOOP:L MB10 /循环体开始,装载存储字节至累加器循环体开始,装载存储字节至累加器1 INC 1 /循环计数器加循环计数器加1 T MB10 /保存循环次数保存循环次数 L B#16#5 I /比较JC ERR /如果数据块长度大于50,则跳转至ERR标号处A I0.0BEU /无条件结束当前块ERR:CALL FC10 /对于块长度大于50的情况,调用FC10做
58、相应的处理5.5.5 累加器操作和地址寄存器指令4. 显示和空操作指令表表4.26 显示和空操作指令显示和空操作指令5.5.5 累加器操作和地址寄存器指令5.6 5.6 数据运算指令数据运算指令l 可以对整数、长整数和实数进行加、减、乘、除算术运算可以对整数、长整数和实数进行加、减、乘、除算术运算. .l 算术运算指令在累加器算术运算指令在累加器1 1和和2 2中进行,累加器中进行,累加器2 2中的值作为被减中的值作为被减 数或被除数数或被除数. .l 算术运算的结果保存在累加器算术运算的结果保存在累加器1 1中,累加器中,累加器1 1中原有的值被运中原有的值被运算结果覆盖算结果覆盖. .l
59、算术运算指令对状态字的算术运算指令对状态字的CClCCl和和CC0CC0,OVOV,OSOS位将产生影响位将产生影响. .可可以用位操作指令或条件跳转指令对状态字中的标志位进行判断以用位操作指令或条件跳转指令对状态字中的标志位进行判断操作操作. .5.6.1 5.6.1 算术运算指令算术运算指令1. 1. 基本算数运算指令(长整数运算)基本算数运算指令(长整数运算) 1. 1. 基本算数运算指令(实数运算)基本算数运算指令(实数运算) 【例】【例】求输入双字求输入双字ID10ID10的内容与常数的内容与常数3232相除的余数,结相除的余数,结 果保存到果保存到MD20MD20中。中。 1. 1
60、. 基本算数运算指令(实数运算)基本算数运算指令(实数运算) 5.6.2 5.6.2 字逻辑运算指令字逻辑运算指令l 对于对于LADLAD和和FBDFBD形式的字逻辑运算指令,由参数形式的字逻辑运算指令,由参数IN1IN1和和IN2IN2 提供参与运算的两个数据,运算结果保存在由提供参与运算的两个数据,运算结果保存在由OUTOUT指定指定 的存储区中。的存储区中。 l 字逻辑运算指令可对两个字逻辑运算指令可对两个1616位(位(WORDWORD)或)或3232位(位(DWORDDWORD) 的 二 进 制 数 据 , 逐 位 进 行 逻 辑 与 、 逻 辑 或 、 逻的 二 进 制 数 据 ,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年城市建筑业劳务合同
- 完善工程设计企业的财务管理机制
- 2025年中国水晶餐具行业市场前景预测及投资价值评估分析报告
- 2025房屋租赁代理合同书样本
- 保险公司合规管理与内控优化
- 促进跨部门协作机制的有效运行
- 推进小区绿色环保改造
- 电商平台产品合规监管与奖惩机制研究
- 山竹植物测试题及答案解析
- 创新药高端制剂生产线项目可行性研究报告(范文)
- 医疗机构安全检查表
- 眼科白内障课件
- 小学必背古诗词60首
- 高中英语-The Return of the Champions教学设计学情分析教材分析课后反思
- 教育研究的程序与方法课件
- 2023年江苏苏州市中考道法试卷试题及答案详解(精校打印版)
- 北师大版一年级数学下册《采松果》评课稿
- 装配式电缆沟施工方案
- 医院无菌技术操作规范
- 旅行社质量管理课件
- 全国辐射环境质量监测方案简介
评论
0/150
提交评论