电气控制与PLC应用第58章习题与思考题参考解答.docx
《电气控制与PLC应用第58章习题与思考题参考解答.docx》由会员分享,可在线阅读,更多相关《电气控制与PLC应用第58章习题与思考题参考解答.docx(23页珍藏版)》请在冰豆网上搜索。
![电气控制与PLC应用第58章习题与思考题参考解答.docx](https://file1.bdocx.com/fileroot1/2023-6/28/14bef802-cc4d-4756-ae14-df4cf48491c1/14bef802-cc4d-4756-ae14-df4cf48491c11.gif)
电气控制与PLC应用第58章习题与思考题参考解答
第5章S7-200PLC的指令系统
习题与思考题
1.S7-200指令参数所用的基本数据类型有哪些?
答:
S7-200PLC的指令参数所用的基本数据类型有1位布尔型(BOOL)、8位无符号字节型(BYTE)、8位有符号字节型(SIMATIC模式仅限用于SHRB指令)、16位无符号整数(WORD)、16位有符号整数(INT)、32位无符号双字整数(DWORD)、32位有符号双字整数(DINT)、32位实数型(REAL)。
实数型(REAL)是按照ANSI/IEEE754-1985标准(单精度)的表示格式规定。
2~255字节的字符串型(STRING)
2.立即I/O指令有何特点?
它应用于什么场合?
答:
立即指令允许对输入和输出点进行快速和直接存取。
当用立即指令读取输入点的状态时,相应的输入映像寄存器中的值并未发生更新;用立即指令访问输出点时,访问的同时,相应的输出映像寄存器的容也被刷新。
由于立即操作指令针对的是I/O端口的数字输入和数字输出信号,所以它们的位操作数地址只能是物理输入端口地址Ix.x和物理输出端口地址Qx.x。
3.逻辑堆栈指令有哪些?
各用于什么场合?
答:
复杂逻辑指令,西门子称为逻辑堆栈指令。
主要用来描述对触点进行的复杂连接,并可以实现对逻辑堆栈复杂的操作。
复杂逻辑指令包括:
ALD、OLD、LPS、LRD、LPP和LDS。
这些指令中除LDS外,其余指令都无操作数。
这些指令都是位逻辑指令。
栈装载与指令ALD用于将并联子网络串联起来。
栈装载或指令OLD用于将串联子网络并联起来。
逻辑推入栈指令LPS,在梯形图中的分支结构中,用于生成一条新的母线,左侧为主控逻辑块时,第一个完整的从逻辑行从此处开始。
逻辑读栈指令LRD,在梯形图中的分支结构中,当左侧为主控逻辑块时,该指令用于开始第二个和后边更多的从逻辑块。
逻辑栈弹出指令LPP,在梯形图中的分支结构中,用于恢复LPS指令生成的新母线。
装入堆栈指令LDS,复制堆栈中的第n级值,并将该值置于栈顶。
原栈中各级栈值依次下移一级,栈底值被推出栈而丢失。
4.定时器有几种类型?
各有何特点?
与定时器相关的变量有哪些?
梯形图中如何表示这些变量?
答:
S7-200系列PLC的主机有256个定时器T0~T255,分为三种类型,每种类型的时间分辨率(或称为时基/时间增量/时间单位)又分为三种,如下表所示。
(1)接通延时定时器指令TON,用于接通单一间隔定时。
(2)有记忆接通延时定时器指令TONR,用于累计若干个时间间隔。
只能用复位指令进行复位操作,使当前值清零。
(3)断开延时定时器指令TOF,用于断开后的单一间隔定时。
定时器类型
时间分辩率/ms
计时围/s
定时器号
接通延时定时器TON
断开延时定时器TOF
1
0~32.767
T32,T96
10
0~327.67
T33~T36,T97~T100
100
0~3276.7
T37~T63,T101~T255
有记忆接通延时定时器
TONR
1
0~32.767
T0,T64
10
0~327.67
T1~T4,T65~T68
100
0~3276.7
T5~T31,T69~T95
与定时器相关的变量有:
一个16位的当前值寄存器,用以存放计时累计的当前值(INT,最大计时值32767,单位ms或10ms或100ms,取决于时间分辨率);
一个16位的预设值寄存器,用以存放定时时间的预设值PT(INT);
一位状态位(BOOL),用以反映定时器的定时时间是否达到的状态,称为定时器位。
使能输入IN,用于控制定时器的工作状态。
5.计数器有几种类型?
各有何特点?
与计数器相关的变量有哪些?
梯形图中如何表示这些变量?
答:
类型:
S7-200系列PLC的计数器指令有两大类:
通用计数器指令和高速计数器指令。
通用计数器指令有3种:
增计数器指令CTU、减计数器指令CTD和增减计数器指令CTUD。
特点:
(1)增计数器指令CTU
每当增计数输入CU发生一次从OFF到ON的转换(正跳变-上升沿)时,该计数器的当前值就增加1。
如果当前值Cxxx≥预设值PV,则计数器位=ON;否则,计数器位=OFF。
当前值达到预设值后继续计数,计数当前值到最大值(32,767)时,计数器停止。
当复位输入R接通或执行复位指令时,计数器被复位,计数器位=OFF,当前值=0。
(2)增减计数器指令CTUD
利用LD装载预设值。
当装载输入LD接通时,计数器复位,计数器位=OFF,当前值=预设值PV。
每当减计数输入CD发生一次从OFF到ON的转换(正跳变-上升沿)时,该计数器的当前值就减1。
计数当前值到0时,计数器停止,计数器位=ON,当前值=0。
利用复位指令复位时,CTD计数器位变为OFF,当前值变为0(教材P131有误)。
(3)减计数器指令CTD
每当增计数输入CU发生一次从OFF到ON的转换时,该计数器的当前值就增1;每当减计数输入CD发生一次从OFF到ON的转换时,该计数器的当前值就减1。
如果当前值Cxxx≥预设值PV,则计数器位=ON;否则,计数器位=OFF。
当前值达到预设值后继续计数(增或减)。
当增计数达到最大值(32,767)时,在增计数输入端CU的下一个上升沿导致当前计数值绕回到最小值(-32,768)。
同样,计数达到最小值(-32,768)时,减计数输入端CD的下一个上升沿会导致当前计数值绕回到最大值(32,767)。
所以,CTUD是一个循环计数器,计数围从-32768~+32767。
当复位输入R接通或执行复位指令时,该计数器被复位。
复位时,计数器位=OFF,当前值=0。
与计数器有关的变量及在梯形图中的表示方法:
计数器地址:
C0~C255,常数
计数器当前值:
C0~C255,INT型
计数器的预设值(PV):
INT型
计数器位:
C0~C255,BOOL型
增/减计数信号输入:
能流,BOOL型
复位输入:
能流,BOOL型
装载信号输入:
能流,BOOL型
6.不同分辨率的定时器的当前值是如何刷新的?
答:
不同分辨率的定时器,它们当前值的刷新时机是不同的,具体情况如下:
1ms分辨率定时器启动后,定时器对1ms的时间间隔(时基信号)进行计时。
定时器位和当前值每隔1ms刷新一次,与扫描周期不同步。
换句话说,如果扫描周期大于1ms,则在一个扫描周期中定时器位和当前值可能要刷新多次。
10ms分辨率定时器启动后,定时器对10ms的时间间隔进行计时。
程序执行时,在每次扫描周期开始对10ms定时器刷新,其方法是以当前值加上累积的10毫秒间隔的数目(自上一次扫描开始算起),所以在一个扫描周期定时器当前值和定时器位保持不变。
100ms分辨率定时器启动后,定时器对100ms的时间间隔进行计时。
只有在执行到这些定时器指令时,这些定时器的当前值才被刷新(当前值加上积累的100毫秒间隔的数目(自前一次扫描开始算起))。
7.写出图5-50所示梯形图的语句表程序。
(原题程序不分网络,应该按右图所示修改)
答:
语句表程序如下
网络1//网络标题
LDI0.0
OI0.3
LDI0.1
OI0.4
ALD
ANI0.2
=Q0.1
网络2
LDQ0.1
TONT37,+30
网络3
LDT37
SQ0.2,4
网络4
LDI0.1
SQ0.3,1
8.写出图5-51所示梯形图的语句表程序。
答:
语句表程序如下
网络1//网络标题
LDI0.4
EU
SHRBI0.5,V3.0,+4
网络2
LDI0.1
LPS
AV3.0
SQ3.0,2
LRD
AV3.1
RQ3.1,1
LRD
AV3.2
SQ3.2,3
LPP
AV3.3
RQ3.3,1
9.用自复位式定时器设计一个周期为5s,脉冲为一个扫描周期的脉冲串信号。
答:
如果使用100ms时基的定时器,梯形图程序和语句表程序分别如答案图14a)、答案图14b)所示。
其中答案图14b)所示要比答案图14a)好一些。
如果使用10ms时基的定时器,梯形图程序和语句表程序如答案图14c)所示。
如果使用1ms时基的定时器,梯形图程序和语句表程序如答案图14d)所示。
10.设计一个计数围为50000的计数器。
答:
梯形图程序和语句表程序分别如答案图15所示。
11.用置位、复位(S、R)指令设计一台电动机的启、停控制程序。
答:
梯形图程序和语句表程序分别如答案图16所示。
12.用顺序控制继电器(SCR)指令设计一个居室通风系统控制程序,使3个居室的通风机自动轮流地打开和关闭。
轮换时间间隔为1h。
答:
用PLC输出端点Q0.0~Q0.2分别控制三个通风机,I0.1接启动按钮开关,I0.2接停止按钮开关,梯形图程序和语句表程序分别如答案图17所示。
13.用寄存器移位指令(SHRB)设计一个路灯照明系统的控制程序,3路灯按H1→H2→H3的顺序依次点亮。
各路灯之间点亮的间隔时间为10h。
答:
用PLC输出端点Q0.0~Q0.2分别控制路灯H1~H3。
控制程序见答案图18。
14.用循环移位指令设计一个彩灯控制程序,8路彩灯串按H1→H2→H3→…→H8的顺序依次点亮,且不断重复循环。
各路彩灯之间的间隔时间为0.1s。
答:
用PLC输出端点Q0.0~Q0.7分别控制彩灯H1~H8。
I0.0接启动按钮开关常开触点,I0.1接停止按钮开关常开触点,控制程序见答案图19。
15.用整数除法指令将VW100中的(240)除以8后存放到AC0中。
答:
编程见答案图20。
16.将AIW0中的有符号整数(3400)转换成(0.0~1.0)之间的实数,再将结果存人VD200。
答:
S7-200PLC的模拟量输入模块将模拟量转换成数字量后的典型量程围为:
单极性:
0~32000
双极性:
-32000~32000
设模拟量输入量为双极性输入,则转换公式为
式中,x为转换前的模拟量对应的数字量,y是转换后的实数值。
根据以上转换公式编制的程序如答案图21所示。
17.将PID运算输出的标准化实数0.75先进行比例换算,然后再转换成一个有符号整数(INT),结果存入AQW2。
答:
PID运算的输出结果为规格化的实数,围在0~1.0之间。
在将PID指令计算得到的PID回路的输出作为实际的模拟信号用于驱动实际负载之前,需要先将PID指令计算得到输出换算到实际需要的成比例的16位整数值,然后输出到模拟输出模块。
转换公式如下
式中,RSca1是与PID环路输出成比例的实数值;Mn是规格化的环路输出的实数值;Offset是偏移量,对单极输出是0.0,对双极输出是0.5;Span是实际输出的最大可能的数值减去最小可能的数值,对单极输出,典型值为32000,对双极输出,典型值为64000。
设输出为双极性(输出的整数围为-32000~+32000),程序如答案图22所示。
18.用定时中断设置一个每0.1s采集一次模拟量输入值的控制程序。
答:
编程见答案图23。
19.按模式6设计高速计数器HSC1初始化子程序,设控制字节SMB47=16#F8。
答:
要对高速计数器编程,必须完成下列基本任务:
定义计数器和模式;设置控制字节;设置当前值(起始值);设置预设值(目标数值);分配和启用中断例行程序;激活高速计数器。
编程见答案图24。
20.以输出点Q0.1为例,简述PTO多段操作初始化及其操作过程。
21.用TODR指令从实时时钟读取当前日期,并将“星期”的数字用段码指令(SEG)显示出来。
答:
执行读实时时钟指令TODR后,得到连续8个字节中的最高字节是“星期几”的BCD码,其中“1”表示星期日,“7”表示星期六,“0”被禁用,所以得到的参数需要修正。
编程见答案图26。
22.指出图5-52所示梯形图中的语法错误,并改正。
答:
图(a)的错误为计数器预设值PV=300000>32767,超出INT型数据的围。
应改成小于等于32767的数据。
图(b)中的错误在于操作数类型与指令不匹配。
字逻辑与指令中的VD30应改为字型操作数,例如改成VW30;双字逻辑异或指令中的操作数VW10和VW100应改成双字操作数,例如改成VD20和VD100。
第8章可编程控制器系统设计与应用
习题与思考题
1.简述可编程控制器系统设计的一般原则和步骤。
答:
可编程控制系统设计时应遵循以下原则:
(1)最大限度地满足被控对象的要求;
(2)在满足控制要求的前提下,力求使控制系统简单、经济、适用及维护方便;
(3)保证系统的安全可靠;
(4)考虑生产发展和工艺改进的要求,在选型时应留有适当的余量。
由于PLC的结构和工作方式与一般微机和继电器相比各有特点,所以其设计的步骤也不尽相同,具体设计步骤如下:
(1)详细了解被控对象的生产工艺过程,分析控制要求;
(2)根据控制要求确定所需的用户输入/输出设备;
(3)选择PLC类型;
(4)分配PLC的I/O点,设计I/O连接图;
(5)PLC软件设计,同时可进行控制台的设计和现场施工;
(6)系统调试,固化程序,交付使用。
2.可编程控制器的选型需要考虑哪些问题?
答:
(1)PLC容量的选择
①首先要对控制任务进行详细的分析,把所有的I/O点找出来,包括开关量I/O和模拟量I/O点。
②然后要对用户存储器容量进行估算。
总存储器字数=(开关量输入点数+开关量输出点数)×10+模拟量点数×150。
然后按计算存储器字数的25%考虑余量。
(2)PLC机型的选择
由于生产PLC的厂家众多,实现的功能虽基本相同,性能、价格和编程语言却有较大差别,一般从以下几个方面考虑。
①功能方面:
所有PLC一般都具有常规的功能,但对某些特殊要求,就要知道所选用的PLC是否有能力完成控制任务。
②价格方面:
不同厂家的PLC产品价格相差很大,有些功能类似、质量相当、I/O点数相当的PLC的价格能相差40%以上。
在使用PLC较多的情况下,性价比是一个重要的因素。
③售后服务:
应考虑相关的技术支持,统一型号方便维护,系统改造、升级等因素。
3.提高可编程控制器系统可靠性的措施有哪些?
4.设计一段程序,要求对五相步进电机5个绕组依次自动实现如下方式的循环通电控制:
①第1步,A-B-C-D-E;
②第2步,A-AB-BC-CD-DE-EA;
①第3步,AB-ABC-BC-BCD-CD-CDE-DE-DEA;
④第4步,EA-ABC-BCD-CDE-DEA;
⑤A、B、C、D、E分别接主机的输出点Q0.1、Q0.2、Q0.3、Q0.4、Q0.5,启动按钮接主机的输入点I0.0,停止按钮接主机的输入点I0.1。
5.已知彩灯共有8盏,设计一段彩灯控制程序,实现下述控制要求:
①程序开始时,灯1(Q0.0)亮;
①一次循环扫描旦定时时间到后,灯1(Q0.0)灭,灯2(Q0.1)亮;
③再次循环扫描且定时时间到后,灯2(Q0.1)灭,灯3(Q0.2)亮,……,直至灯8亮。
灯8灭后循环重新开始。
答:
控制彩灯的方式有很多种,一般用循环指令来实现比较常见。
本例中,I0.0为设定按钮,I0.1为启动按钮。
Q0.0-Q0.7控制8盏彩灯。
参考程序如答案图34所示。