本发明涉及系统运行状态监控,特别是涉及一种电池管理系统故障发生的系统运行状态监控方法和电池管理系统故障发生的系统运行状态监控系统。
背景技术:
1、目前,电池管理系统都会有一种记录系统运行故障的方法。当故障发生时,电池管理系统会把故障发生时系统的一些状态量记录下来,并存储到对应的存储介质里面,然后在后续时刻由其他设备(比如电脑开发的app)通过固定的通信协议来读取,并展示在相应界面上。
2、现有技术中都是在故障发生时,电池管理系统才记录系统运行信息,这样就会存在一个问题,就是故障发生之前连续一段时间的系统状态、以及故障发生之后连续一段时间的系统状态是记录不到的,只能记录到故障发生到故障发生后某一个时刻的系统状态。这个单一时刻的状态,不能反映故障发生时刻系统真实的状态,故障发生时真实的状态应该由故障发生前后一段连续时间内系统的状态共同决定。为了解决这一技术问题,本发明设计了一种电池管理系统故障发生的系统运行状态监控方法及系统。
技术实现思路
1、本发明针对现有技术存在的问题和不足,提供一种电池管理系统故障发生的系统运行状态监控方法及系统。
2、本发明是通过下述技术方案来解决上述技术问题的:
3、本发明提供一种电池管理系统故障发生的系统运行状态监控方法,其特点在于,其包括以下步骤:
4、s1、构建链表d数据结构,链表d数据结构中包括m个数据备份区域,每一个数据备份区域作为一个数据缓存位置,每一个数据备份区域均由故障前备份区域1、故障后备份区域2和故障时备份区域构成,m为正整数;
5、s2、构建系统状态缓存数据结构,系统状态缓存数据结构被m个数据备份区域共用,系统状态缓存数据结构中包括n个数据区域,每个数据区域均用于缓存一份系统运行状态数据,n为正整数;
6、s3、针对系统状态缓存数据结构,每隔设定间隔时间定时顺次更新系统状态缓存数据结构的数据区域中的系统运行状态数据,针对当前更新的数据区域利用更新的系统运行状态数据覆盖原有的系统运行状态数据;
7、不断监控是否有故障发生,每当监控到有故障发生,记录此故障的故障id和故障发生时间戳,并缓存至空白的数据缓存位置的故障时备份区域内,将故障发生时刻点对应的系统状态缓存数据结构中的所有系统运行状态数据缓存至此空白的数据缓存位置的故障前备份区域1;
8、循环遍历链表d数据结构中m个数据缓存位置,判断当前数据缓存位置是否缓存有故障发生时间戳以及是否满足距离故障发生时间戳预设延迟固定时间,若均为是则将预设延迟固定时间达到的时刻点对应的系统状态缓存数据结构中的所有系统运行状态数据缓存至当前数据缓存位置的故障后备份区域2,并将当前数据缓存位置中缓存于故障前备份区域1、故障时备份区域和故障后备份区域2中的数据一并移存至存储介质中,当前数据缓存位置变为空白的数据缓存位置,判断下一个数据缓存位置,否则直接判断下一个数据缓存位置。
9、本发明还提供一种电池管理系统故障发生的系统运行状态监控系统,其特点在于,其包括第一数据结构构建模块、第二数据结构构建模块、数据更新模块、第一故障监控模块和第二故障监控模块;
10、所述第一数据结构构建模块用于构建链表d数据结构,链表d数据结构中包括m个数据备份区域,每一个数据备份区域作为一个数据缓存位置,每一个数据备份区域均由故障前备份区域1、故障后备份区域2和故障时备份区域构成,m为正整数;
11、所述第二数据结构构建模块用于构建系统状态缓存数据结构,系统状态缓存数据结构被m个数据备份区域共用,系统状态缓存数据结构中包括n个数据区域,每个数据区域均用于缓存一份系统运行状态数据,n为正整数;
12、所述数据更新模块用于针对系统状态缓存数据结构,每隔设定间隔时间定时顺次更新系统状态缓存数据结构的数据区域中的系统运行状态数据,针对当前更新的数据区域利用更新的系统运行状态数据覆盖原有的系统运行状态数据;
13、所述第一故障监控模块用于不断监控是否有故障发生,每当监控到有故障发生,记录此故障的故障id和故障发生时间戳,并缓存至空白的数据缓存位置的故障时备份区域内,将故障发生时刻点对应的系统状态缓存数据结构中的所有系统运行状态数据缓存至此空白的数据缓存位置的故障前备份区域1;
14、所述第二故障监控模块用于循环遍历链表d数据结构中m个数据缓存位置,判断当前数据缓存位置是否缓存有故障发生时间戳以及是否满足距离故障发生时间戳预设延迟固定时间,若均为是则将预设延迟固定时间达到的时刻点对应的系统状态缓存数据结构中的所有系统运行状态数据缓存至当前数据缓存位置的故障后备份区域2,并将当前数据缓存位置中缓存于故障前备份区域1、故障时备份区域和故障后备份区域2中的数据一并移存至存储介质中,当前数据缓存位置变为空白的数据缓存位置,判断下一个数据缓存位置,否则直接判断下一个数据缓存位置。
15、本发明的积极进步效果在于:
16、本发明用于实现故障发生时,系统就能将故障发生前一段时间和故障发生后一段时间的系统运行状态数据都存储起来,后续通过app读取故障数据时,就能访问到故障发生前后的整段连续的系统状态数据。简单来说,就是故障数据发生时就将故障发生前一段时间的状态和故障发生时的时间等缓存下来,然后在系统继续运行一段固定时间后,再将这段时间内的系统状态和之前缓存的系统状态数据,一起存入存储介质当中。整个故障存储逻辑连续进行,就可以将所有故障发生时刻前后一段时间内的状态信息存储起来,便于用户查看。
1.一种电池管理系统故障发生的系统运行状态监控方法,其特征在于,其包括以下步骤:
2.如权利要求1所述的电池管理系统故障发生的系统运行状态监控方法,其特征在于,步骤s3包括:
3.如权利要求1所述的电池管理系统故障发生的系统运行状态监控方法,其特征在于,步骤s3包括:
4.如权利要求1所述的电池管理系统故障发生的系统运行状态监控方法,其特征在于,步骤s3包括:
5.一种电池管理系统故障发生的系统运行状态监控系统,其特征在于,其包括第一数据结构构建模块、第二数据结构构建模块、数据更新模块、第一故障监控模块和第二故障监控模块;
6.如权利要求5所述的电池管理系统故障发生的系统运行状态监控系统,其特征在于,所述数据更新模块包括第一初始化单元、更新单元、第一赋值判断单元和第一直接赋值单元;
7.如权利要求5所述的电池管理系统故障发生的系统运行状态监控系统,其特征在于,所述第一故障监控模块用于不断监控是否有故障发生,每当监控到一个故障发生,记录此故障的故障id和故障发生时间戳,将其顺次缓存至空白的数据缓存位置的故障时备份区域内,将故障发生时刻点对应的系统状态缓存数据结构中的所有系统运行状态数据按照从旧到新的顺序取出,缓存至此空白的数据缓存位置的故障前备份区域1,并在故障缓存至第m个数据缓存位置时,下一顺次为从第一个数据缓存位置开始起算的第一个空白的数据缓存位置。
8.如权利要求5所述的电池管理系统故障发生的系统运行状态监控系统,其特征在于,所述第二故障监控模块包括第二初始化单元、第一故障判断单元、第二故障判断单元、故障备份模块、第二赋值判断单元和第二直接赋值单元;
