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