当前位置:首页>家电维修>洗衣机>

西门子滚筒洗衣机图标时间闪烁(西门子洗衣机显示闪烁)

西门子滚筒洗衣机图标时间闪烁(西门子洗衣机显示闪烁)

更新时间:2022-03-08 05:59:54

大家好,这节课我们来学习时钟指令。时钟指令在我们的自动化控制中经常被用到。比如交通信号灯、路灯等。下面我们来看一下,路灯程序的设计要求:

我们会用到“时钟”指令,时钟指令有分为READ和SET两种。其中读指令的说明如下:

读取实时时钟指令从硬件时钟读取当前时间和日期,并将其载入以地址T起始的8个字节的时间缓冲区。

设置实时时钟指令将当前时间和日期写入用T指定的8个字节的时间缓冲区开始的硬件时钟。

我们先来打开程序,找到“时钟指令”:

8个字节时间缓冲区格式(T)

T字节 说明 字节数据

0 年(0-99) 当前年份(BCD值)

1 月(1-12) 当前月份(BCD值)

2 日期(1-31) 当前日期(BCD值)

3 小时(0-23) 当前小时(BCD值)

4 分钟(0-59) 当前分钟(BCD值)

5 秒(0-59) 当前秒(BCD值)

6 00 保留-始终设置为00

7 星期几(1-7) 当前是星期几,1=星期日(BCD值)

关于为什么1=星期日,我们可以看一下自己的电脑的日期和时间,会发现“星期日”是日期统计中的第一列,这也是与系统日期、时间的配列规律相一致的。

我们选择变量存储区的字节数据类型,从0开始。则读取“小时”数据,则是从VB3中读取。

完成指令设置后,我们来给PLC设置时钟:

在确保电脑联网的情况下,我们要运用电脑上的时间,给PLC赋予实时的时间:

然后在点击“状态监控”的情况下,我们来看一下VB0-VB7的数据值:

这里我们可以看到,当前值除了有一个秒的位置,在实时变化以外,而其他的数据值,都与实际值不符。原因,就是这里显示的数据,都是基于BCD码的。这里我们需要重温一下BCD,二进制以及16进制的关系:

这里可能有同学还是不太理解,为什么明明是21年,为什么变成了 33? 我们先来做一个操作,把“有符号”改成“二进制”,变化后的符号看起来好像亲切了不少,比如VB0的“0010_0001”,分成两位,分别不就是2_1么?合起来,就是21(年)了?

对的,这里选择的“有符号”就是用BCD码形式表示,而BCD码如何转换成二进制,这个可以翻看此前我们的“BCD码介绍”。

未完待续

,