在工程项目实践中,通常我们编程的时候,客户都会要求设备进行定时启停,不需要工作人员每天进行开机关机,只需要程序自动控制即可,下面咱们就以永宏FBS-PLC为例进行实例讲解定时启动的程序编写。

永宏FBS-PLC有一个便捷指令如下,

本PLC指令是和(时:分:秒)时间相关的指令,其时间数据将自动合并连续3个缓存器(Word)来当时间值使用,其起头第一个为秒数(Second)缓存器,下一个为分数(Minute)缓存器,最后一个则为时数(Hour)缓存器。每个缓存器的16个位中只有B14~B0用以表示时间值,而其最高位B15则用以表示各该时间值的正、负。B15为0表示该时间为正,B15若为1则表示该时间值为负,B14~B0的时间值是以二进制表示,当时间值为负时,B14~B0则以2的补码表示。运算的秒数结果为(时:分:秒)三个缓存器的秒数加减结果。
了解完指令后下面我们就实际运用,假设某个项目的机房设备需要定时启动,首先我们应当计算的是PLC系统某一时间的时间,(系统的时间我们可以通过软件设定为北京时间)如下

R4128为系统默认秒存储的缓存器,假设现在是9:10':15'',那么R4128中存储的数字就是15,同理R4129中存储的数字为10,R4130存储的就是9,(当然程序内部是以24小时计算)我们将系统某一时刻秒数计算完后得到一个汇总的数据,储存在缓存器R1220中,紧接着在编写一步程序如下;

将R2281、R2282、R2283缓存器分别关联在人机界面HMI中,用此缓存器输入的时间当作我们想要定时开机的时间,例如我们定时时间为上午8:00:00,那么我们将定时时间在触摸屏中输入,分别把时、分、秒,输入至以上三个缓存器。
紧接着我们在写一段小程序如下:下面这段小程序是我们计算关机时间点的秒数总和,

同样我们在触摸屏输入关机的时间段,把相应的秒分时分别输入到R2298,R2299,R2300,中去,计算关机后的秒数后存入缓存器R130中。此时我们接着写另外一段

我们使用区域比较指令进行比较,比较的目的就是为了确定我们所设定的开机时间是否在开机时间和关机时间直间,如果我们所设定的时间在开机和关机的时间段中,那么M183线圈就会导通。

M183接通后我们程序中设定的开机时间点M721就会得电,同时系统开机,反之系统关机。
