一种多功能仪表的时钟对时方法

文档序号:6261559阅读:581来源:国知局
专利名称:一种多功能仪表的时钟对时方法
技术领域
本发明所要保护的技术方案涉及一种多功能仪表的时钟对时方法。
背景技术
随着现代工业的不断发展,对用电的需求也越来越大,而一天当中不同时段的电费费率也不同,因此对电度进行分时段计量十分有意义。多功能仪表具有电度计量功能,分 时电度计量功能要求计量仪表自身提供准确的实时时钟,为了方便客户使用,要求实时时 钟即使在仪表失电之后仍然可以继续运行,或在仪表重新上电之后有个简单的方法可以对 仪表重新对时。若使得仪表在失电之后实时时钟可以继续运行,则需要给系统的时钟电路 外加一个电池(此类电池的容量一般在十到几十个毫安时),且时钟电路的功耗要尽可能 低,一般要求工作电流在微安级。多功能仪表使用的是CPU内部的实时时钟,该实时时钟的 工作电流在几个毫安级,若使用电池供电,该实时时钟也只能工作几到几十个小时,而仪表 失电时间的长短未定,有可能是几个小时,甚至几天,几十天等,显然采用直接给多功能仪 表的实时时钟电路加个电池的方法是行不通的。若更换实时时钟电路则需要额外加专用的 时钟芯片,这就需要更改硬件电路,更改硬件电路将会增加额外的成本。传统的采用通讯对 时的方法是将仪表的通讯总线连接到上位机,即PC机,这里多功能仪表为服务器,PC机为 客户端,上位机采用一个专门的软件对多功能仪表进行对时,这样就额外需要增加一台PC 机,增加了用户的使用成本。为此我们寻求一个方法在多功能仪表重新上电之后由客户对 仪表进行重新对时,而如果每块仪表均手动重新对时则太繁琐,因此在现有的条件下如何 既简单又有效的对仪表重新上电后进行对时是需要解决的问题。

发明内容
本发明所要解决的技术问题是,针对现有技术的不足,提供一种多功能仪表的时 钟对时方法,采用通讯的方式进行对时,使用一条总线上的所有多功能仪表均可接收到对 时命令并执行对时操作。为解决上述技术问题,本发明的技术方案是,一种多功能仪表的时钟对时方法,包 括通过通讯总线相连接的多功能仪表,其特征在于,所述的对时方法包括下列步骤;a)当多功能仪表重新上电后,用户只需选择一条通讯总线上的任意一块仪表设置 当前的时间,此时该多功能仪表充当客户端的角色,其他多功能仪表作为服务器,当设置好 该多功能仪表的时间后,该多功能仪表立刻将该设置时间作为自身的实时时钟时间,同时 将该时间以通讯的方式传送给该总线上的所有其他多功能仪表;b)连接在总线上的所有多功能仪表均可接收到对时命令并执行对时操作。所述的设置当前的时间,通过多功能仪表界面设置时间时,当按下“确定”按键时, 程序先判断设置时间是否规范,若规范则设置时间标志位置位,并将自身的实时时钟时间 初始化为该设置时间,同时按照Moubus-RTU格式将该时间组织成对时命令帧,系统时间用 一个六位BCD码表示,每两位分别表示时、分、秒,将该六位BCD码分为两个字,分别成为系统时间高位,系统时间低位,其中系统时间高位=取整(系统时间/65536);系统时间低位 =取余(系统时间% 65536)。所述的对时操作,当接收到一个完整的命令帧后,先进行CRC校验,判断接收的数 据是否正确,然后判断接收的第一个字节是否为广播地址,因为对时功能采用广播地址0, 若不是广播地址则做其他相应处理。当判断为对时命令帧时,要解析该命令帧,并判断设置 时间是否符合规范,如小时是否超过24,分钟是否在0 59等,若符合规范则将自身的实时 时钟时间设置为该时间。采用通讯方式实现了多功能仪表的实时时钟对时功能,充分利用仪表本身的通讯 接口,无需更改硬件,这样既节省了生产成本,又打破了采用Modbus-RTU通讯中仪表只作 为服务器的传统思维,且采用广播通讯方式进行对时,保证了多功能仪表对时的实时性和
可靠性。


下面结合附图和具体实施方式
对本发明作进一步详细的说明;图1为本发明一种多功能仪表的时钟对时方法客户端程序流程图;图2为本发明服务器端程序流程图。
具体实施例方式图1和图2,分为客户端和服务器端流程,而实际上这两部分的程序在每个仪表中 均含有,在设置时间时,每块仪表即可以充当客户端,又可以充当服务器端,但在任意时刻 只充当其中的某一角色。在客户端侧,当通过多功能仪表界面设置时间时,当按下“确定”按 键时,软件先判断设置时间是否规范,若规范则设置时间标志位置位,并将自身的实时时钟 时间初始化为该设置时间,同时按照Moubus-RTU格式将该时间组织成对时命令帧,系统时 间用一个六位BCD码表示,每两位分别表示时、分、秒,将该六位BCD码分为两个字节,分别 成为系统时间高位,系统时间低位,其中系统时间高位=取整(系统时间/65536);系统时 间低位=取余(系统时间% 65536)。对时命令帧的格式为见下例表说明;例将时间设置为12点36分8秒,则系统时间为十进制数123608,系统时间 高位=取整(123608/65536) = 1 (0x0001),系统时间低位=取余(123608 % 65536)= 58072 (0xe2d8)。系统校时采用0x10指令。(以下采用16进制数表示)
00 10 00 44 00 02 04 00 01 E2 D8 EBAA
_6]校时间:I YT Y Y
m^ § E & i i将对时命令帧组织好了之后使能RS485数据发送,并将命令帧数据依次放入发送 缓冲寄存器UOTHR或U1THR,发送寄存器将会自动将这些数据发送到通讯总线。参见图1,图1为客户端程序流程图;步骤10为开始,在步骤11中判断设置时间 是否规范?如果是,进入步骤12判断设置时间操作标志位置位?如果是,进入步骤13执行初始化自身实时时钟为该设置时间。在步骤11和步骤12中,如果判断是否定的,则进入步 骤16结束。在步骤14中将置时间组织为Moubus对时命令帧格式,执行完步骤14后进入步骤15将对时命令帧发送到数据总线。步骤16为结束。参见图2,图2为服务器端程序流程图,步骤20为开始,在步骤21中判断CRC16 校验是否正确?如果是,进入步骤22判断地址是否为O 如果否,进入步骤28结束。在步 骤22判断中,如果是进入步骤24判断是否为对时命令帧?如果否,则进入步骤23其它处 理(地址不为0,则不是对时帧,判断是否为该设备的其他请求帧,是则根据功能码做相应 的数据响应,否则进入步骤28结束)。在步骤24判断中,如果是,则进入步骤25执行解析 对时命令帧,在执行完步骤24后进入步骤26判断对时时间是否规范?如果是,则进入步骤 27执行初始化自身时间为该对时时间。在步骤24和步骤26中,如果判断是否定的,则进入 步骤28结束。上面结合附图对本发明进行了示例性描述,显然本发明具体实现并不受上述方式 的限制,只要采用了本发明的方法构思和技术方案进行的各种改进,或未经改进直接应用 于其它场合的,均在本发明的保护范围之内。
权利要求
一种多功能仪表的时钟对时方法,包括通过通讯总线相连接的多功能仪表,其特征在于,所述的对时方法包括下列步骤;a)当多功能仪表重新上电后,用户只需选择一条通讯总线上的任意一块仪表设置当前的时间,此时该多功能仪表充当客户端的角色,其他多功能仪表作为服务器,当设置好该多功能仪表的时间后,该多功能仪表立刻将该设置时间作为自身的实时时钟时间,同时将该时间以通讯的方式传送给该总线上的所有其他多功能仪表;b)连接在总线上的所有多功能仪表均可接收到对时命令并执行对时操作。
2.根据权利用要求1所述的一种多功能仪表的时钟对时方法,其特征在于,所述的设 置当前的时间,通过多功能仪表界面设置时间时,当按下“确定”按键时,程序先判断设置时 间是否规范,若规范则设置时间标志位置位,并将自身的实时时钟时间初始化为该设置时 间,同时按照Moubus-RTU格式将该时间组织成对时命令帧,系统时间用一个六位BCD码表 示,每两位分别表示时、分、秒,将该六位BCD码分为两个字节,分别成为系统时间高位,系 统时间低位,其中系统时间高位=取整(系统时间/65536);系统时间低位=取余(系统时 间 % 65536)。
3.根据权利用要求1所述的一种多功能仪表的时钟对时方法,其特征在于,所述的对 时操作,当接收到一个完整的命令帧后,先进行CRC校验,判断接收的数据是否正确,然后 判断接收的第一个字节是否为广播地址,因为对时功能采用广播地址0,若不是广播地址 则做其他相应处理,当判断为对时命令帧时,要解析该命令帧,并判断设置时间是否符合规 范,如小时是否超过24,分钟是否在O 59等,若符合规范,则将自身的实时时钟时间设置 为该时间。
全文摘要
本发明公开了一种多功能仪表的时钟对时方法,包括通过通讯总线相连接的多功能仪表,其特征在于,所述的对时方法包括下列步骤;当多功能仪表重新上电后,选择一条通讯总线上的任意一块仪表设置当前的时间,该多功能仪表充当客户端的角色,其他多功能仪表作为服务器,当设置好该多功能仪表的时间后,该多功能仪表立刻将该设置时间作为自身的实时时钟时间,同时将该时间以通讯的方式传送给该总线上的所有其他多功能仪表;采用通讯方式实现了多功能仪表的实时时钟对时功能,充分利用仪表本身的通讯接口,无需更改硬件,这样既节省了生产成本,又打破了采用Modbus-RTU通讯中仪表只作为服务器的传统思维,且采用广播通讯方式进行对时,保证了多功能仪表对时的实时性和可靠性。
文档编号G04G5/00GK101807044SQ20091025143
公开日2010年8月18日 申请日期2009年12月18日 优先权日2009年12月18日
发明者万滢滢, 刘建, 刘超, 宛玉超, 张全有, 束龙胜, 杨振, 汪桂林, 顾迪 申请人:安徽鑫龙电器股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1