2017年11月10日,武汉阿迪克电子股份有限公司申请了一项国家发明授权专利——费控智能电能表的实时控制方法。
内容说明本发明涉及电能计量仪表仪器技术领域,具体来讲是一种费控智能电能表的实时控制方法。
发明背景最早的电能表是感应式机械电能表,它是通过电场产生磁场,对转盘产生一个力矩而计量电能的,传统的机械表只是作为电能计量仪器使用,功能相对而言比较单一,而且其稳定性、精度、灵敏度方面都比较难控制。随着电子技术的发展,电子式电能表得到了越来越广泛的应用,由于从计量到数据处理都采用集成电路为核心的电子器件,从而取消了电能表上长期使用的机械部件,使得电能表的体积大大减小,可靠性、精度大大增强。而随着单片机、智能芯片在电能表中的运用,使得电能表有了更多更强的功能,具有多功能的费控智能电能表也得到了越来越广泛的应用。
费控智能电能表的显示由以前的仅通过计度器显示发展为可以通过数码管或液晶显示;为了方便抄表,费控智能电能表增加了各种通讯功能,如红外、RS458、电力线载波、微功率无线;为了解决收费难的问题,还通过IC卡片实现了预付费功能;为了平衡电网负荷提高电网的使用效率,还增加了分时计量功能等。这些功能的增加都需要费控智能电能表去实时的判断并执行相应的 *** 作。从实时处理的角度来说,为了实时完成这些功能,一般的方法是给每个功能配一个中断源。而现有的电能表为了增加可用的中断源要么采用高性能的单片机要么通过外围电路扩展中断源,但这两种方法有一个共同缺点就是增加了硬件成本。另外,当某个中断处理需要较长的处理时间时,会过多占用单片机运行资源,使得其它功能的实时性得不到保障。
发明内容针对现有技术中存在的缺陷,本发明的目的在于提供一种费控智能电能表的实时控制方法,能有效保证电能表中各功能的实时性,且硬件成本低。
图为本发明实施例中费控智能电能表的实时控制方法的流程图
为达到以上目的,本发明采取的技术方案是:提供一种费控智能电能表的实时控制方法,包括以下步骤:S1 .在费控智能电能表的单片机内部设置一个周期为T的定时中断,并创建需要实时处理的多个功能模块;S2 .对所创建的多个功能模块进行优先级排序;S3 .对每个功能模块进行分割,分割成多个子功能模块,并对所分割的子功能模块按照子功能模块的执行顺序进行排序;S4 .每当定时中断产生后,根据优先级排序依次查询各功能模块,当查询到某个功能模块有事件发生,则按顺序执行该功能模块的所有子功能模块。
在上述技术方案的基础上,步骤S1中,所述定时周期T设为2ms;所创建的功能模块为六个,分别为计量功能模块、显示功能模块、按键功能模块、数据处理功能模块、通讯处理功能模块及IC卡 *** 作功能模块。
在上述技术方案的基础上,步骤S2中,对所述六个功能模块进行优先级排序时,计量功能模块>数据处理功能模块>显示功能模块>IC卡 *** 作功能模块>通讯处理功能模块>按键功能模块。
步骤S3中,计量功能模块分割为上升沿判断子模块、计量延时子模块和下降沿判断子模块;显示功能模块分割为六个数码管显示子模块和一个显示延时子模块,其中,每个数码管显示子模块负责显示一位数码管;按键功能模块分割为按键电平判断子模块和按键延时子模块;数据处理功能模块分割为剩余量处理子模块、累计量处理子模块、剩余量处理E2读子模块、累计量处理E2读子模块、剩余量处理E2写子模块和累计量处理E2写子模块;通讯处理功能模块分割为通讯类型判断子模块和通讯处理子模块;IC卡 *** 作功能模块分割为IC卡检测子模块和IC卡处理子模块。
在上述技术方案的基础上,每次定时中断后,单片机的计数器将自动进行加1 *** 作,显示功能模块中的显示延时子模块在计数器未达到延时显示数值M时,M为整数,则对数码管进行延时点亮 *** 作,一旦计数器达到延时显示数值M,则显示延时子模块将不再进行延时处理,同时计数器清零。所述延时数值M=所需延时显示时间/定时中断的时间周期T。
所述按键功能模块中的按键延时子模块在按键电平被判断为高电平时,将对按键 *** 作进行延时处理,一旦在连续N次定时中断中按键电平均判断为高电平时,N为大于等于100的整数,则在N+1次定时中断中,按键延时子模块不再进行延时 *** 作。
所述定时中断次数N=所需延时按键时间/定时中断的时间周期T。步骤S4中,按顺序执行相应功能模块的子功能模块时,每完成一个子功能模块后将查询该功能模块是否还有其他子功能模块需要执行,若有,则继续执行;若无,则退出该功能模块,继续按优先级排序依次查询其他功能模块。
在上述技术方案的基础上,每个功能模块都设置有一个标志位,所述标志位用于标示各个功能模块是否有事件发生。
本发明的有益效果在于:1、本发明中,在费控智能电能表的单片机内部设置了一个周期为T的定时中断,该定时中断将单片机的运行时间划分成了很短的时间片,且每个时间片内(即每个周期为T的定时中断内)依次轮流处理各个有事件发生的功能模块,各功能模块运行仅占用很小的单片机资源,且各功能模块之间运行是相互独立、互不干涉的,这样各个功能模块之间的运行就形成了微观上轮流运行,宏观上并发运行的多任务效果,大大提高了电能表的单片机处理任务的实时性,从而实现费控智能电能表的实时控制。
2、本发明中,利用了单片机的硬件中断功能,仅在费控智能电能表的单片机内部设置一个周期为T的定时中断即可实现电能表各功能的实时控制,相较于传统的给每个功能配一个中断源的做法来说,不但降低了硬件成本,而且还提高了单片机运行效率。3、本发明中,对电能表的功能模块进行了优先级的排序,使得在每次定时中断内都能优先处理优先级别高的功能模块,从而保证了电能表性能的及时性、可靠性。4、本发明中,将各功能模块分割成了多个子功能模块,并且各子功能模块按顺序依次执行,这样一来子功能模块就会占用更少的CPU资源,那么系统的处理就会更快,实时效果就更佳,在定时中断内就能更好地达到所有功能模块在微观上轮流串接运行,宏观上并发同步运行的多任务效果。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)