新颖实用的时间继电器

此款时间继电器是用单片机控制,计时精确、工作稳定、结构新颖,用十个LED进行计时显示,清晰悦目、准确直观。能做到短至1秒,长至416天的精确延时。
本装置电原理图如附下图所示,主控芯片采用AT89S52,图中S1是延时范围设定开关,当S1置于“秒”位置时,延时范围为1~9999秒。置于“分”位置时,延时范围为1~9999分钟。置于“时”位置时,延时范围为1~9999小时。1#~4#拨盘是BCD码拨盘,用来设定需要延时的时间,其中4#拔盘设定个位,3#设定十位,2#设定百位,1#设定千位。当装置上电时,单片机P2.0为高电平,该电平通过ULN2003驱动后,在ULN2003的16脚输出低电平使LEDO点亮,其他LED均为熄灭状态,计时开始OLED1~LEDIO显示计时进程,当计时到设定时间的十分之一时,P2.0变为低电平,LEDO灭,P2.1变为高电平,LED1亮,当计时到设定时间的十分之二时,LED1灭,LED2亮,依次类推,当计时结束后,LED1O亮,同时继电器K1动作,其触点接通或断开相应的执行元件,去完成或结束自动化控制的相应动作,LEDII是K1的动作指示。安装时,LEDO~LED1O应安装成水平一条宜线,使用者只要观察当前所点亮LED的位置,即可迅速判断出已经计时到了设定时间的十分之几,非常直观方便。
本装置软件采用动态查询的方法,不断查询拨码盘设定的时间值和S1的设定位置,使得在使用过程中可以随时改变设定值或设定值的时间单位。例如,原来需要10分钟完成的动作,由于情况的变化,需要快速提前结束时,可以通过BCD拨码盘缩短设定时间,也可以拨动S1使设定的10分钟变为10秒,从而快速结束延时。编程的主导思想是计时到设定时间的十分之一时,就改变一下LED输出状态,然后重新计时,但由于秒、分、时之间并不是十进制关系,如果每次都通过设定值进行计算得到它的“十分之一”,将使程序变得冗长且精度难以保证。经过研究,采用了“最小单位计数法”,当设定值的单位为“秒”(S1置于“秒”位置)时,以“100毫秒”作为最小单位进行计数,当计数到拨码盘设定的数值时,正好是设定时间的十分之一,然后重新开始计数,计满十次正好是设定的时间。当设定值的单位为“分”(S1置于“分”位置)时,以“6秒”为最小单位进行计数,当计数到设定的数值时,正好是设定时间的十分之一。当设定值的单位为“时”时,则以“6分钟”为最小单位进行计数。经过这样处理,程序变得简洁、紧凑,可靠性大大提高。个程序主要由主程序、中断程序、延时程序等组成,其中中断程序又包括计时程序、延时范围判断程序、“最小单位”计数程序等,主程序的流程图如下图所示。片内主要RAM分配如下:30H~37H存放计时值,40H~43H存放“最小单位”的计数值,48H~4BH存放设定值。
本装置采用单片机控制,编程灵活,修改方便,如果需要提高延时精度,可适当修改程序,使延时的精度变为0.1秒或0.01秒,如果感觉输出触点不够多,可增加输出继电器的个数,由于ULN2003的灌电流可达500mA,所以可直接用小型继电器并接在K1的两端即可。
评论