S7 200PLC编程及应用廖常初第2版习题参考答案报告 下载本文

8.用实时时钟指令设计控制路灯的程序,20:00时开灯,06:00时关灯。

LD SM0.0

VB0 TODR // 读实时钟,小时值在VB3

// 20点~0点(日期、时间值用 BCD码表示) LDB>= VB3, 16#20 VB3, 16#06 6 点点~ OB< // 0Q0.0 // 点亮路灯 =

9.用实时时钟指令设计控制路灯的程序,在5月1日~10月31日的20:00开灯,06:00关灯;在11月1日~下一年4月30号的19:00开灯,7:00关灯。

SM0.0 LD

TODR VB0 // 读实时钟,小时值在VB3,月日在VW1

LDW>= VW1, 16#1031 OW< VW1, 16#0501 = M0.0 //冬季ON

6点开灯// 20点~ LDB>= VB3, 16#20 OB< VB3, 16#06 AN M0.0 //夏季 VB3, 16#19

// 19点~ 7点开灯LDB>= VB3, 16#07 OB< 冬季M0.0 // A OLD Q0.1 =

10.半径(<10000的整数)在VW10中,取圆周率为3.1416。编写程序,用浮点数运算指令计

算圆周长,运算结果四舍五入转换为整数后,存放在VW20中。

LD SM0.0

VW10, AC1 // 整数转换为双整数 ITD // DTR 双整数转换为实数AC1, AC1 // *R 3.1416, AC1 乘以3.1416

// 乘积四舍五入转换为双整数 ROUND AC1, AC1

VW20

16位送MOVW // 低AC1, VW20

第11题 编写语句表程序,实现运算VW2–VW4 = VW6。 LD I0.2 MOVW VW2, VW6 -I VW4, VW6

12.AIW2中A/D转换得到的数值0~32000正比于温度值0~1200?C。在I0.0的上升沿,将AIW2的值转换为对应的温度值存放在VW10中,设计出梯形图程序。 公式: T = 1200*N/32000 LD I0.3 MOVW AIW2, AC0 AENO

MUL 1200, AC0 AENO

/D 27648, AC0 AENO

MOVW AC0, VW10

13.以0.1度为单位的整数格式的角度值在VW0中,在I0.0的上升沿,求出该角度的正?6为单位的双整数,存放在VD2中,设计出程序。弦值,运算结果转换为以 10LD I0.0 EU LPS

ITD VW0, AC0 AENO

DTR AC0, AC0 AENO

/R 10.0, AC0 LRD

*R 0.01745329, AC0 AENO

SIN AC0, AC0 LPP

*R 1000000.0, AC0 AENO

ROUND AC0, VD2

16.编写程序,用字节逻辑运算指令,将VB0的高4位置为2#1001,低4位不变。 LD V0.4 MOVB VB0, LB0 AENO

ANDB 16#0F, LB0 AENO

MOVB LB0, VB0 ORB 16#90, VB0

17.编写程序,前后两个扫描周期VW4的值不变将M0.2复位,反之将M0.2置位。 LD I0.4 MOVW VW4, AC0 AENO

XORW VW6, AC0 AENO LPS

AW= AC0, 0 R M0.2, 1 LRD AC0, 0 AW<> S M0.2, 1 LPP

MOVW VW4, VW6

18.设计循环程序,求VD20开始连续存放的5个浮点数的平均值。

19.在I0.0的上升沿,用循环程序求VW100~VW108的累加和。为了防止溢出,将被累加的整数转换为双整数后再累加。用VD10保存累加和。

中。VW30中最大的数,存放在VW28~VW10.编写程序,求出20.

21.用子程序调用编写图5-3中两条运输带的控制程序,分别设置自动程序和手动程序,用I0.4作自动/手动切换开关。手动时用I0.0和I0.1对应的按钮分别点动控制两条运输带。

手动程序 自动程序 主程序

22.设计程序,用子程序求圆的面积,输入参数为直径(小于32767的整数),输出量为圆的面积(双整数)。在I0.0的上升沿调用该子程序,直径为10000mm,运算结果存放在VD10

中。.

子程序 主程序

23.用定时中断,每1s将VW8的值加1,在I0.0的上升沿禁止该定时中断,在I0.2的上升沿重新启用该定时中断。设计出主程序和中断子程序。

主程序 定时中断程序

24.第一次扫描时将VB0清零,用定时中断0,每100ms将VB0加1,VB0等于100时关闭定时中断,并将Q0.0立即置1。设计出主程序和中断子程序。

定时中断程序 主程序

章习题答案第5

SM0.

M0.I0.20.0QT37I0.0I0.0T37Q0.0.0.M0.Q

0.07T3QI0.00.0QINTON 0.20.0QM0.2Q 0.1QI0.1T37 PT100ms40I0.1QI0.17T30.17T30.1Q

0.2QM0.3NTOIN0.1Q I0.3ms0PT0710

题3的答案 题4的答案 题5的答案

初始化脉SM0.M0.0..起动I0.3I0.0I0.4SQ0.0T37M0.1夹紧

SM0.1s2T37 M0.0Q0.1M0.2工件右行 SM0.1 .起动I0.1I0.1I0.0右限位M0.0M0.1Q0.0Q0.2M0.3Q0.3冲头下行快进.I0.0I0.3下限位I0.2 中限位I0.2 0.0QM0.1Q0.0M0.20.4M0.4Q工进冲头上行I0.1上

限位I0.3I0.3右限位 Q0.1M0.2暂停5s7M0.5Q0.2M0.3T3工件左行 .I0.2左限位T37I0.4 Q0.0M0.30.10.0T3Q0.28QM0.4RM0.6Q快退松开 s2 I0.0T38已松开左限位I0.1

题6的答案 题7的答案 题9的答案

题8的答案:初始步应为双线框;最上面的转换旁边没有转换条件;步M0.2和M0.0之间无转换;转换I0.0与最上面的转换之间没有步,最上面的水平有向连线应放在最上面的转换之下。输入I0.5不能作为动作;一般用输入、定时器和计数器的触点和它们的逻辑组合作转换条件,不用输出位(Q)作转换条件;步M0.3的后面没有转换和步,系统运行到步M0.3 。时会“死机”

SM0.SM0.M0.M0.0.I0.I0.I0.0.M0.M0.0.TI0.T TM0.0.T0.M0.

TT s0.M0.0.0.M0.TI0.T9