CN113791923B - A method for fault detection and fault handling of an underwater vehicle - Google Patents
A method for fault detection and fault handling of an underwater vehicle Download PDFInfo
- Publication number
- CN113791923B CN113791923B CN202110924758.4A CN202110924758A CN113791923B CN 113791923 B CN113791923 B CN 113791923B CN 202110924758 A CN202110924758 A CN 202110924758A CN 113791923 B CN113791923 B CN 113791923B
- Authority
- CN
- China
- Prior art keywords
- fault
- data
- variable
- controlled node
- bit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000001514 detection method Methods 0.000 title claims abstract description 36
- 230000006854 communication Effects 0.000 claims abstract description 125
- 238000004891 communication Methods 0.000 claims abstract description 124
- 238000012545 processing Methods 0.000 claims abstract description 90
- 230000004044 response Effects 0.000 claims abstract description 48
- 230000008569 process Effects 0.000 claims abstract description 27
- 238000003672 processing method Methods 0.000 claims abstract description 15
- 238000006243 chemical reaction Methods 0.000 claims abstract 2
- 230000002159 abnormal effect Effects 0.000 claims description 45
- 238000013507 mapping Methods 0.000 claims description 13
- 230000005856 abnormality Effects 0.000 claims description 11
- 230000007704 transition Effects 0.000 claims 1
- 238000013461 design Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000007726 management method Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000013024 troubleshooting Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000005520 electrodynamics Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 238000011895 specific detection Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/079—Root cause analysis, i.e. error or fault diagnosis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0793—Remedial or corrective actions
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Maintenance And Management Of Digital Transmission (AREA)
- Small-Scale Networks (AREA)
Abstract
Description
技术领域technical field
本发明属于水下航行器控制系统故障检测与故障处理技术领域,具体地说,涉及一种水下航行器控制系统故障检测及故障处理方法。The invention belongs to the technical field of fault detection and fault processing of an underwater vehicle control system, and in particular relates to a fault detection and fault processing method for an underwater vehicle control system.
背景技术Background technique
随着数字化、模块化设计技术的日益成熟和广泛使用,水下航行器内部受控节点如推进电机驱动器、舵电机驱动器、电池管理系统(Battery Management System,BMS)组件、惯性导航传感器、压力计等之间不再采用紧耦合模式设计,而是通过数字总线进行数据交换,数字总线的建立和使用,使得水下航行器内设的各受控节点的功能设计更加独立,从而降低了设计和制造难度,降低了维护和升级成本。With the increasing maturity and widespread use of digital and modular design technologies, the internal control nodes of underwater vehicles such as propulsion motor drivers, rudder motor drivers, battery management system (Battery Management System, BMS) components, inertial navigation sensors, pressure gauges, etc. The design of the tightly coupled mode is no longer used among the underwater vehicles, but the data exchange is carried out through the digital bus. The establishment and use of the digital bus makes the function design of each controlled node in the underwater vehicle more independent, thereby reducing the design and Manufacturing difficulty reduces maintenance and upgrade costs.
运动控制是水下航行器核心功能之一,在控制系统数字通信过程中,设置在水下航器控制系统主CPU(Central Processing Unit,简称中央处理器)上的主控制节点对各受控节点的数据采集和指令控制工作通过数字总线(即数字通信)实现。为保证水下航行器的可靠运行,需要实时监控控制系统产生的故障,并在对应故障类型的故障发生时,进行相应的故障处理。Motion control is one of the core functions of underwater vehicles. During the digital communication process of the control system, the main control node set on the main CPU (Central Processing Unit, referred to as the central processing unit) of the underwater vehicle control system controls each controlled node. The data acquisition and command control work of the computer is realized through the digital bus (that is, digital communication). In order to ensure the reliable operation of the underwater vehicle, it is necessary to monitor the faults generated by the control system in real time, and perform corresponding fault handling when the fault of the corresponding fault type occurs.
但是,现有的故障处理方法单一且局限,并不具有普适性,且大大降低了工作效率,不能同时对多个受控节点进行故障检测和故障处理。However, the existing fault handling methods are single and limited, not universal, and greatly reduce work efficiency, and cannot perform fault detection and fault processing on multiple controlled nodes at the same time.
发明内容Contents of the invention
本发明提出了一种广泛适用且易扩展的故障检测及处理方法,该控制系统包括:主控制节点和多个受控节点;主控制节点和受控节点通过数字总线进行主从式通信;对控制系统的内部通信及各个受控节点同时进行故障检测和故障处理;The invention proposes a widely applicable and easily expandable fault detection and processing method. The control system includes: a master control node and a plurality of controlled nodes; the master control node and the controlled nodes perform master-slave communication through a digital bus; The internal communication of the control system and each controlled node perform fault detection and fault processing at the same time;
针对水下航行器内部设置的某一受控节点,通过数字总线,将主控制节点与该受控节点进行内部通信,采用该方法对该受控节点进行故障检测和故障处理;Aiming at a controlled node set inside the underwater vehicle, the main control node communicates with the controlled node through a digital bus, and adopts this method to perform fault detection and fault processing on the controlled node;
该方法包括:The method includes:
主控制节点通过数字总线发送周期T的广播指令至受控节点;The master control node sends a broadcast command of period T to the controlled node through the digital bus;
主控制节点根据该受控节点的应答情况及应答内容,判决并生成对应的故障记录,并将其作为记录级故障数据,进行存储,完成对该受控节点的故障检测;The main control node judges and generates corresponding fault records according to the response status and response content of the controlled node, and stores them as record-level fault data to complete the fault detection of the controlled node;
主控制节点根据外部下发的调试转实航的指令,将记录级故障数据实时映射至对应的处理级故障数据,主控制节点根据处理级故障数据的内容,采用故障主动处理方法,进行故障处理;The main control node maps the record-level fault data to the corresponding processing-level fault data in real time according to the external commissioning and actual flight instructions, and the main control node adopts the fault active processing method to handle the fault according to the content of the processing-level fault data ;
受控节点检测其与主控制节点的通信状态,判决通信故障,并由该受控节点进行故障被动处理。The controlled node detects its communication status with the main control node, judges the communication failure, and the controlled node handles the failure passively.
作为上述技术方案的改进之一,在实施该方法之前还包括:定义32位的CER变量、32位的UER变量、32位的DER变量、32位的CED变量、32位的UED变量和32位的DED变量;As one of the improvements of the above technical solution, before implementing the method, it also includes: defining 32-bit CER variable, 32-bit UER variable, 32-bit DER variable, 32-bit CED variable, 32-bit UED variable and 32-bit DED variable;
32位的CER变量,作为记录级通信故障的缓存;The 32-bit CER variable is used as a buffer for record-level communication failures;
32位的UER变量,作为记录级数据更新异常故障的缓存;The 32-bit UER variable is used as a cache for record-level data update exception faults;
32位的DER变量,作为记录级数据异常故障的缓存;The 32-bit DER variable is used as a cache for record-level data exception faults;
32位的CED变量,作为处理级通信故障的缓存,对应CER变量的处理级映射;The 32-bit CED variable is used as a buffer for processing-level communication faults, corresponding to the processing-level mapping of CER variables;
32位的UED变量,作为处理级数据更新异常故障的缓存,对应UER变量的处理级映射;The 32-bit UED variable is used as a cache for processing-level data update exception faults, corresponding to the processing-level mapping of UER variables;
32位的DED变量,作为处理级数据异常故障的缓存,对应DER变量的处理级映射;The 32-bit DED variable is used as a buffer for processing-level data exception faults, corresponding to the processing-level mapping of DER variables;
32位的CER变量中的数据位与32位的CED变量中的数据位一一映射;The data bits in the 32-bit CER variable are mapped one-to-one with the data bits in the 32-bit CED variable;
32位的UER变量中的数据位与32位的UED变量中的数据位一一映射;The data bits in the 32-bit UER variable are mapped one-to-one with the data bits in the 32-bit UED variable;
32位的DER变量中的数据位与32位的DED变量中的数据位一一映射;The data bits in the 32-bit DER variable are mapped one-to-one with the data bits in the 32-bit DED variable;
上述各个不同的变量在初始化时,均复位为0。The various variables mentioned above are all reset to 0 when they are initialized.
作为上述技术方案的改进之一,所述主控制节点根据该受控节点的应答情况及应答内容,判决并生成对应的故障记录,并将其作为记录级故障数据,进行存储,完成对该受控节点的故障检测;其具体过程为:As one of the improvements to the above technical solution, the master control node judges and generates a corresponding fault record according to the response and response content of the controlled node, and stores it as record-level fault data to complete the The fault detection of the control node; the specific process is:
主控制节点根据该受控节点的应答情况,判决并生成通信故障记录,并将其作为记录级通信故障数据,进行存储,确定故障类型为通信故障;The main control node judges and generates a communication fault record according to the response of the controlled node, and stores it as record-level communication fault data, and determines the fault type as a communication fault;
主控制节点根据该受控节点的应答内容,判决并生成功能故障记录,并将其作为记录级功能故障数据,进行存储,确定故障类型为功能故障。According to the response content of the controlled node, the master control node judges and generates a functional fault record, stores it as record-level functional fault data, and determines the fault type as a functional fault.
作为上述技术方案的改进之一,所述主控制节点根据该受控节点的应答情况,判决并生成通信故障记录,并将其作为记录级通信故障数据,进行存储,确定故障类型为通信故障;其具体过程为:As one of the improvements to the above technical solution, the master control node judges and generates a communication fault record according to the response of the controlled node, stores it as record-level communication fault data, and determines the fault type as a communication fault; The specific process is:
主控制节点发送周期为T的广播指令至该受控节点,该受控节点进行应答;The master control node sends a broadcast command with a period of T to the controlled node, and the controlled node responds;
如果在周期T内检测到该受控节点的应答,则主控制节点控制与该受控节点对应的通信异常计数器的值清0;If the response of the controlled node is detected within the period T, the master control node controls the value of the communication abnormality counter corresponding to the controlled node to be cleared to 0;
如果未在周期T内检测到该受控节点的应答,则主控制节点控制与该受控节点对应的通信异常计数器的值加1;If the response of the controlled node is not detected within the period T, the master control node controls the value of the communication abnormality counter corresponding to the controlled node to be increased by 1;
进而统计该通信异常计数器的数值,记为统计值,比较该统计值和预先设定的阈值;Then count the value of the abnormal communication counter, record it as a statistical value, and compare the statistical value with a preset threshold;
如果该统计值大于或等于预先设定的阈值,则将32位的CER变量中该受控节点所对应的数据位的位值设置为1,以此生成通信故障记录,更新记录级通信故障数据,进行存储,确定故障类型为通信故障;If the statistical value is greater than or equal to the preset threshold, set the bit value of the data bit corresponding to the controlled node in the 32-bit CER variable to 1 to generate a communication fault record and update the record-level communication fault data , store it, and determine that the fault type is a communication fault;
如果该统计值小于预先设定的阈值,则不做任何处理。If the statistical value is less than the preset threshold, no processing will be done.
作为上述技术方案的改进之一,所述主控制节点根据该受控节点的应答内容,判决并生成功能故障记录,并将其作为记录级功能故障数据,进行存储,确定故障类型为功能故障;其具体过程为:As one of the improvements of the above technical solution, the master control node judges and generates a functional fault record according to the response content of the controlled node, stores it as record-level functional fault data, and determines the fault type as a functional fault; The specific process is:
主控制节点发送周期为T的广播指令至该受控节点,该受控节点进行应答;The master control node sends a broadcast command with a period of T to the controlled node, and the controlled node responds;
如果在周期T内检测到该受控节点的应答,则记录当前周期该受控节点应答内容,作为应答的功能数据,记为当前周期的功能数据,并判断当前周期的功能数据与上一周期的功能数据是否相同;If the response of the controlled node is detected in the period T, record the content of the response of the controlled node in the current period, as the functional data of the response, record it as the functional data of the current period, and judge the difference between the functional data of the current period and the previous period Whether the functional data of is the same;
若当前周期的功能数据与上一周期的功能数据不相同,则主控制节点控制与该受控节点对应的数据刷新异常计数器的数值清0;If the function data of the current cycle is different from the function data of the previous cycle, the master control node controls the value of the data refresh exception counter corresponding to the controlled node to be cleared to 0;
若当前周期的功能数据与上一周期的功能数据相同,则主控制节点控制与该受控节点对应的数据刷新异常计数器的数值加1;If the function data of the current cycle is the same as the function data of the previous cycle, the master control node controls the value of the data refresh exception counter corresponding to the controlled node to add 1;
进而统计该数据刷新异常计数器的数值,记为刷新统计值,比较该刷新统计值和预先设定的刷新阈值;Then count the value of the data refresh abnormal counter, record it as the refresh statistical value, and compare the refresh statistical value with the preset refresh threshold;
如果该刷新统计值小于预先设定的刷新阈值,则不作任何处理;If the refresh statistics value is less than the preset refresh threshold, no processing will be done;
如果该刷新统计值大于或等于预先设定的刷新阈值,则将32位的UER变量中该受控节点所对应的数据位的位值设置为1,以此生成数据刷新异常故障记录,更新记录级数据刷新故障数据,进行存储,确定故障类型为功能故障中的数据刷新异常;If the refresh statistic value is greater than or equal to the preset refresh threshold, the bit value of the data bit corresponding to the controlled node in the 32-bit UER variable is set to 1, so as to generate a data refresh abnormal fault record and update the record Level data refreshes the fault data, stores it, and determines that the fault type is abnormal data refresh in functional faults;
同时判断当前周期的功能数据是否超出了预先设定边界范围;At the same time, it is judged whether the functional data of the current period exceeds the preset boundary range;
如果当前周期的功能数据超出了预先设定边界范围,则将32位的DER变量中该受控节点所对应的数据位的位值设置为1,以此生成数据异常故障记录,更新记录级数据异常故障数据,进行存储,确定故障类型为功能故障中的数据异常;If the functional data of the current cycle exceeds the preset boundary range, set the bit value of the data bit corresponding to the controlled node in the 32-bit DER variable to 1 to generate a data abnormal fault record and update the record-level data Abnormal fault data is stored, and the fault type is determined to be abnormal data in functional faults;
如果当前周期的功能数据未超出了预先设定边界范围,则不作任何处理。If the functional data of the current cycle does not exceed the preset boundary range, no processing will be done.
作为上述技术方案的改进之一,所述主控制节点根据外部下发的调试转实航的指令,将记录级故障数据实时映射至对应的处理级故障数据,主控制节点根据处理级故障数据的内容,采用故障主动处理方法,进行故障处理;其具体过程为:As one of the improvements of the above-mentioned technical solution, the main control node maps the record-level fault data to the corresponding processing-level fault data in real time according to the instruction issued by the outside for commissioning to actual flight, and the main control node maps the fault data at the processing level according to the content, use the active fault handling method to handle the fault; the specific process is as follows:
当外部下发调试转实航的指令时,之后的每个周期进行如下操作:When the command to transfer from commissioning to actual flight is issued externally, the following operations are performed in each subsequent cycle:
将记录级通信故障数据拷贝更新至处理级通信故障数据,具体地,将CER变量的数据位拷贝更新至CED变量的数据位;Copy and update the record-level communication fault data to the processing-level communication fault data, specifically, copy and update the data bit of the CER variable to the data bit of the CED variable;
将记录级数据刷新故障数据拷贝更新至处理级数据刷新故障数据,具体地,将UER变量的数据位拷贝更新至UED变量的数据位;Update the record-level data refresh fault data copy to the processing-level data refresh fault data, specifically, update the data bit copy of the UER variable to the data bit of the UED variable;
将记录级数据异常故障数据拷贝更新至处理级数据异常故障数据,具体地,将DER变量的数据位更新拷贝至DED变量的数据位;Copy and update record-level data abnormal fault data to processing-level data abnormal fault data, specifically, update and copy the data bits of the DER variable to the data bits of the DED variable;
如果CED变量的数据位、UED变量的数据位或DED变量的数据位的任意位置大于0,则采用故障主动处理的处理方法,进行故障处理;If any position of the data bit of the CED variable, the data bit of the UED variable or the data bit of the DED variable is greater than 0, the fault processing method is adopted to handle the fault actively;
如果CED变量的数据位、UED变量的数据位或DED变量的数据位的所有位置均等于0,则不作任何处理;If all positions of the data bits of the CED variable, the data bits of the UED variable, or the data bits of the DED variable are all equal to 0, then do nothing;
作为上述技术方案的改进之一,所述方法还包括:每个受控节点对其与主控制节点之间的通信状态进行检测,根据检测到的主控制节点周期发送广播指令的接收情况,判决并生成通信故障记录,在受控节点上进行存储,确定故障类型为通信故障;受控节点根据自身功能类型,采用故障被动处理的方法,进行故障处理。As one of the improvements to the above technical solution, the method further includes: each controlled node detects the communication status between itself and the main control node, and judges according to the detected reception of the broadcast instruction periodically sent by the main control node And generate communication fault records, store them on the controlled node, and determine the type of fault as communication fault; the controlled node adopts the method of fault passive processing according to its own function type to handle the fault.
作为上述技术方案的改进之一,所述每个受控节点对其与主控制节点之间的通信状态进行检测,根据检测到的主控制节点周期发送广播指令的接收情况,判决并生成通信故障记录,在受控节点上进行存储,确定故障类型为通信故障;受控节点根据自身功能类型,采用故障被动处理的方法,进行故障处理;其具体过程为:As one of the improvements of the above technical solution, each controlled node detects the communication status between itself and the main control node, and judges and generates a communication fault according to the detected reception of the broadcast instruction periodically sent by the main control node Record, store on the controlled node, and determine the type of fault as a communication fault; the controlled node adopts a passive fault handling method according to its own function type to handle the fault; the specific process is:
该受控节点内部设置与主控制节点广播指令具有相同周期T的定时器,以及被动通信异常计数器;The controlled node internally sets a timer with the same period T as the broadcast command of the master control node, and a passive communication exception counter;
如果该受控节点在定时器周期T内检测到主控制节点广播指令,则受控节点内部设置的被动通信异常计数器的值清0;If the controlled node detects the master control node broadcast command within the timer period T, the value of the passive communication exception counter set inside the controlled node is cleared to 0;
如果该受控节点在定时器周期T内未检测到主控制节点广播指令,则受控节点内部设置的被动通信异常计数器的值加1;If the controlled node does not detect the broadcast command of the master control node within the timer period T, the value of the passive communication exception counter set inside the controlled node is increased by 1;
进而统计该通信异常计数器的数值,记为统计值,比较该统计值和预先设定的阈值;Then count the value of the abnormal communication counter, record it as a statistical value, and compare the statistical value with a preset threshold;
如果该统计值大于或等于预先设定的阈值,则生成通信故障记录并在该受控节点上存储,确定故障类型为通信故障;受控节点根据自身功能类型,采用故障被动处理的方法,进行故障处理If the statistical value is greater than or equal to the preset threshold, a communication fault record is generated and stored on the controlled node, and the fault type is determined to be a communication fault; the controlled node adopts a passive fault handling method according to its own function type to carry out Troubleshooting
如果该统计值小于预先设定的阈值,则不做任何处理。If the statistical value is less than the preset threshold, no processing will be done.
本发明与现有技术相比的有益效果是:The beneficial effect of the present invention compared with prior art is:
本发明的方法能实时检测和处理水下航行器内部设置的各个受控节点的故障,具有普遍的适用性,并且可以随着航行器功能的扩充灵活的扩展,方便、简单易于实现,大大提高了工作效率;同时,由于本发明的方法还可以适用于任何具有数字总线进行主从式通信的电子设备,具有普适性。The method of the present invention can detect and process the faults of each controlled node inside the underwater vehicle in real time, has universal applicability, and can be flexibly expanded with the expansion of the function of the vehicle, is convenient, simple and easy to implement, and greatly improves Improve work efficiency; at the same time, because the method of the present invention can also be applicable to any electronic equipment that has digital bus to carry out master-slave communication, has universal applicability.
附图说明Description of drawings
图1是本发明的一种水下航行器故障检测及故障处理方法中涉及的故障类型和故障处理的结构示意图;Fig. 1 is a structural schematic diagram of fault types and fault processing involved in an underwater vehicle fault detection and fault processing method of the present invention;
图2是本发明适用的水下航行器控制系统的结构图;Fig. 2 is the structural diagram of the underwater vehicle control system applicable to the present invention;
图3是本发明的一种水下航行器故障检测及故障处理方法中的水下航行器的内部结构图;Fig. 3 is an internal structure diagram of the underwater vehicle in a method for detecting and handling the failure of the underwater vehicle according to the present invention;
图4是本发明的一种水下航行器故障检测及故障处理方法中的故障检测的检测流程图。Fig. 4 is a detection flow chart of the fault detection in the fault detection and fault processing method of the underwater vehicle according to the present invention.
具体实施方式Detailed ways
现结合附图和实例对本发明作进一步的描述。The present invention will be further described in conjunction with accompanying drawing and example now.
如图1和2所示,本发明还提供了一种水下航行器故障检测及故障处理方法,As shown in Figures 1 and 2, the present invention also provides a fault detection and fault handling method for an underwater vehicle,
该控制系统包括:主控制节点和多个受控节点;主控制节点和受控节点通过数字总线进行主从式通信;对控制系统的内部通信及各个受控节点同时进行故障检测和故障处理;The control system includes: a main control node and multiple controlled nodes; the main control node and the controlled nodes perform master-slave communication through a digital bus; the internal communication of the control system and each controlled node simultaneously perform fault detection and fault processing;
其中,主控制节点和受控节点对应水下航行器内部设置的各个受控节点;其中,具有主控制功能的受控节点为主控制节点,受主控制节点控制的受控节点为受控节点。Among them, the main control node and the controlled node correspond to each controlled node set inside the underwater vehicle; among them, the controlled node with the main control function is the main control node, and the controlled node controlled by the main control node is the controlled node .
针对水下航行器内部设置的某一受控节点,通过数字总线,将主控制节点与该受控节点进行内部通信,采用该方法对该受控节点进行故障检测和故障处理;Aiming at a controlled node set inside the underwater vehicle, the main control node communicates with the controlled node through a digital bus, and adopts this method to perform fault detection and fault processing on the controlled node;
该方法包括:The method includes:
步骤1)主控制节点通过数字总线发送周期T的广播指令至受控节点;Step 1) The master control node sends a broadcast command of period T to the controlled node through the digital bus;
步骤2)主控制节点根据该受控节点的应答情况及应答内容,判决并生成对应的故障记录,并将其作为记录级故障数据,进行存储,完成对该受控节点的故障检测;Step 2) The main control node judges and generates a corresponding fault record according to the response situation and response content of the controlled node, and stores it as record-level fault data to complete the fault detection of the controlled node;
具体地,主控制节点根据该受控节点的应答情况,判决并生成通信故障记录,并将其作为记录级通信故障数据,进行存储,确定故障类型为通信故障;Specifically, the master control node judges and generates a communication failure record according to the response of the controlled node, stores it as record-level communication failure data, and determines the failure type as a communication failure;
具体地,主控制节点发送周期为T的广播指令至该受控节点,该受控节点进行应答;Specifically, the master control node sends a broadcast instruction with a period of T to the controlled node, and the controlled node responds;
如果在周期T内检测到该受控节点的应答,则主控制节点控制与该受控节点对应的通信异常计数器的值清0;If the response of the controlled node is detected within the period T, the master control node controls the value of the communication abnormality counter corresponding to the controlled node to be cleared to 0;
如果未在周期T内检测到该受控节点的应答,则主控制节点控制与该受控节点对应的通信异常计数器的值加1;其中,通信异常计数器设置在主控制节点上;If the response of the controlled node is not detected within the period T, the master control node controls the value of the communication abnormality counter corresponding to the controlled node to increase by 1; wherein, the communication abnormality counter is set on the master control node;
进而统计该通信异常计数器的数值,记为统计值,比较该统计值和预先设定的阈值;Then count the value of the abnormal communication counter, record it as a statistical value, and compare the statistical value with a preset threshold;
如果该统计值大于或等于预先设定的阈值,则将32位的CER变量中该受控节点所对应的数据位的位值设置为1,以此生成通信故障记录,更新记录级通信故障数据,进行存储,确定故障类型为通信故障;其中,所存储的通信故障记录存储在主控制节点上;If the statistical value is greater than or equal to the preset threshold, set the bit value of the data bit corresponding to the controlled node in the 32-bit CER variable to 1 to generate a communication fault record and update the record-level communication fault data , store, and determine that the fault type is a communication fault; wherein, the stored communication fault record is stored on the master control node;
如果该统计值小于预先设定的阈值,则不做任何处理。If the statistical value is less than the preset threshold, no processing will be done.
在本实施例中,所述通信异常计数器为CntCommM;通信异常计数器初始化复位为0。In this embodiment, the communication anomaly counter is CntCommM; the communication anomaly counter is initialized and reset to 0.
主控制节点根据该受控节点的应答内容,判决并生成功能故障记录,并将其作为记录级功能故障数据,进行存储,确定故障类型为功能故障。According to the response content of the controlled node, the master control node judges and generates a functional fault record, stores it as record-level functional fault data, and determines the fault type as a functional fault.
具体地,主控制节点发送周期为T的广播指令至该受控节点,该受控节点进行应答;Specifically, the master control node sends a broadcast instruction with a period of T to the controlled node, and the controlled node responds;
如果在周期T内检测到该受控节点的应答,则记录当前周期该受控节点应答内容,作为应答的功能数据,记为当前周期的功能数据,并判断当前周期的功能数据与上一周期的功能数据是否相同;If the response of the controlled node is detected in the period T, record the content of the response of the controlled node in the current period, as the functional data of the response, record it as the functional data of the current period, and judge the difference between the functional data of the current period and the previous period Whether the functional data of is the same;
若当前周期的功能数据与上一周期的功能数据不相同,则主控制节点控制与该受控节点上对应的数据刷新异常计数器的数值清0;If the function data of the current cycle is different from the function data of the previous cycle, the master control node controls the value of the data refresh exception counter corresponding to the controlled node to be cleared to 0;
若当前周期的功能数据与上一周期的功能数据相同,则主控制节点控制与该受控节点上对应的数据刷新异常计数器的数值加1;其中,数据刷新异常计数器设置在主控制节点上;If the functional data of the current cycle is the same as the functional data of the previous cycle, the master control node controls and adds 1 to the value of the data refresh abnormal counter corresponding to the controlled node; wherein, the data refresh abnormal counter is set on the master control node;
进而统计该数据刷新异常计数器的数值,记为刷新统计值,比较该刷新统计值和预先设定的刷新阈值;Then count the value of the data refresh abnormal counter, record it as the refresh statistical value, and compare the refresh statistical value with the preset refresh threshold;
如果该刷新统计值小于预先设定的刷新阈值,则不作任何处理;If the refresh statistics value is less than the preset refresh threshold, no processing will be done;
如果该刷新统计值大于或等于预先设定的刷新阈值,则将32位的UER变量中该受控节点所对应的数据位的位值设置为1,以此生成数据刷新异常故障记录,更新记录级数据刷新故障数据,进行存储,确定故障类型为功能故障中的数据刷新异常;其中,所存储的数据刷新故障数据存储在主控制节点上;If the refresh statistic value is greater than or equal to the preset refresh threshold, the bit value of the data bit corresponding to the controlled node in the 32-bit UER variable is set to 1, so as to generate a data refresh abnormal fault record and update the record Level data refreshes fault data, stores, and determines that the fault type is abnormal data refresh in functional faults; wherein, the stored data refresh fault data is stored on the main control node;
同时判断当前周期的功能数据是否超出了预先设定边界范围;At the same time, it is judged whether the functional data of the current period exceeds the preset boundary range;
如果当前周期的功能数据超出了预先设定边界范围,则将32位的DER变量中该受控节点所对应的数据位的位值设置为1,以此生成数据异常故障记录,更新记录级数据异常故障数据,进行存储,确定故障类型为功能故障中的数据异常;其中,所存储的数据异常故障数据存储在主控制节点上;If the functional data of the current cycle exceeds the preset boundary range, set the bit value of the data bit corresponding to the controlled node in the 32-bit DER variable to 1 to generate a data abnormal fault record and update the record-level data The abnormal fault data is stored, and the fault type is determined to be data abnormal in functional fault; wherein, the stored data abnormal fault data is stored on the main control node;
如果当前周期的功能数据未超出了预先设定边界范围,则不作任何处理。If the functional data of the current cycle does not exceed the preset boundary range, no processing will be done.
其中,在本实施例中,所述数据刷新异常计数器为CntUpdateM,其初始化时复位为0;功能数据初始化时复位为0;Wherein, in this embodiment, the data refresh abnormal counter is CntUpdateM, which is reset to 0 when it is initialized; it is reset to 0 when the function data is initialized;
步骤3)主控制节点根据外部下发的调试转实航的指令,将记录级故障数据实时映射至对应的处理级故障数据,主控制节点根据处理级故障数据的内容,采用故障主动处理方法,进行故障处理;具体地,当外部下发调试转实航的指令时,之后的每个周期进行如下操作:Step 3) The main control node maps the record-level fault data to the corresponding processing-level fault data in real time according to the externally issued instruction for commissioning to actual flight, and the main control node adopts the fault active processing method according to the content of the processing-level fault data, Carry out fault handling; specifically, when the external commissioning command is sent to actual flight, the following operations are performed in each subsequent cycle:
将记录级通信故障数据拷贝更新至处理级通信故障数据,具体地,将CER变量的数据位拷贝更新至CED变量的数据位;Copy and update the record-level communication fault data to the processing-level communication fault data, specifically, copy and update the data bit of the CER variable to the data bit of the CED variable;
将记录级数据刷新故障数据拷贝更新至处理级数据刷新故障数据,具体地,将UER变量的数据位拷贝更新至UED变量的数据位;Update the record-level data refresh fault data copy to the processing-level data refresh fault data, specifically, update the data bit copy of the UER variable to the data bit of the UED variable;
将记录级数据异常故障数据拷贝更新至处理级数据异常故障数据,具体地,将DER变量的数据位更新拷贝至DED变量的数据位;Copy and update record-level data abnormal fault data to processing-level data abnormal fault data, specifically, update and copy the data bits of the DER variable to the data bits of the DED variable;
如果CED变量的数据位、UED变量的数据位或DED变量的数据位的任意位置大于0,则采用故障主动处理的处理方法,进行故障处理;If any position of the data bit of the CED variable, the data bit of the UED variable or the data bit of the DED variable is greater than 0, the fault processing method is adopted to handle the fault actively;
如果CED变量的数据位、UED变量的数据位或DED变量的数据位的所有位置均等于0,则不作任何处理;If all positions of the data bits of the CED variable, the data bits of the UED variable, or the data bits of the DED variable are all equal to 0, then do nothing;
步骤4)受控节点检测其与主控制节点的通信状态,判决通信故障,并由该受控节点进行故障被动处理。Step 4) The controlled node detects its communication status with the main control node, judges the communication failure, and the controlled node performs passive processing of the failure.
所述方法还包括:步骤5)每个受控节点对其与主控制节点之间的通信状态进行检测,根据检测到的主控制节点周期发送广播指令的接收情况,判决并生成通信故障记录,在受控节点上进行存储,确定故障类型为通信故障;受控节点根据自身功能类型,采用故障被动处理的方法,进行故障处理。The method also includes: step 5) each controlled node detects the communication state between it and the main control node, and judges and generates a communication failure record according to the detected reception of the broadcast instruction periodically sent by the main control node, Storage is carried out on the controlled node, and the fault type is determined to be a communication fault; the controlled node adopts a fault passive processing method to handle the fault according to its own function type.
其中,该步骤是考虑当主控制节点与受控节点之间通信断开,主控制节点无法获取受控节点的应答情况,此时则需要受控节点根据其内部设置的定时器和被动通信异常计数器,来判决通信故障,并由受控节点自身完成故障处理,这个过程不受主控制节点控制,故称之为故障被动处理。Among them, this step is to consider that when the communication between the master control node and the controlled node is disconnected, the master control node cannot obtain the response of the controlled node. , to judge the communication fault, and the controlled node completes the fault processing by itself. This process is not controlled by the master control node, so it is called fault passive processing.
具体地,该受控节点内部设置与主控制节点广播指令具有相同周期T的定时器,以及被动通信异常计数器;Specifically, the controlled node internally sets a timer with the same period T as the broadcast command of the master control node, and a passive communication exception counter;
如果该受控节点在定时器周期T内检测到主控制节点广播指令,则受控节点内部设置的被动通信异常计数器的值清0;If the controlled node detects the master control node broadcast command within the timer period T, the value of the passive communication exception counter set inside the controlled node is cleared to 0;
如果该受控节点在定时器周期T内未检测到主控制节点广播指令,则受控节点内部设置的被动通信异常计数器的值加1;If the controlled node does not detect the broadcast command of the master control node within the timer period T, the value of the passive communication exception counter set inside the controlled node is increased by 1;
进而统计该通信异常计数器的数值,记为统计值,比较该统计值和预先设定的阈值;Then count the value of the abnormal communication counter, record it as a statistical value, and compare the statistical value with a preset threshold;
如果该统计值大于或等于预先设定的阈值,则生成通信故障记录并在该受控节点上存储,确定故障类型为通信故障;受控节点根据自身功能类型,采用故障被动处理的方法,进行故障处理If the statistical value is greater than or equal to the preset threshold, a communication fault record is generated and stored on the controlled node, and the fault type is determined to be a communication fault; the controlled node adopts a passive fault handling method according to its own function type to carry out Troubleshooting
如果该统计值小于预先设定的阈值,则不做任何处理。If the statistical value is less than the preset threshold, no processing will be done.
其中,在实施该方法之前还包括:定义32位的CER变量、32位的UER变量、32位的DER变量、32位的CED变量、32位的UED变量和32位的DED变量;Wherein, before implementing the method, it also includes: defining 32-bit CER variables, 32-bit UER variables, 32-bit DER variables, 32-bit CED variables, 32-bit UED variables and 32-bit DED variables;
32位的CER变量(CommErrRecord的变量),作为记录级通信故障的缓存;The 32-bit CER variable (CommErrRecord variable) is used as a buffer for record-level communication failures;
32位的UER变量(UpdateErrRecord的变量),作为记录级数据更新异常故障的缓存;The 32-bit UER variable (the variable of UpdateErrRecord) is used as a cache for record-level data update exception faults;
32位的DER变量(DataErrRecord的变量),作为记录级数据异常故障的缓存;The 32-bit DER variable (DataErrRecord variable) is used as a cache for record-level data exception faults;
32位的CED变量(CommErrDeal变量),对应CER变量的处理级映射;32-bit CED variable (CommErrDeal variable), corresponding to the processing level mapping of CER variable;
32位的UED变量(UpdateErrDeal变量),对应UER变量的处理级映射;The 32-bit UED variable (UpdateErrDeal variable) corresponds to the processing-level mapping of the UER variable;
32位的DED变量(DataErrDeal变量),对应DER变量的处理级映射;32-bit DED variable (DataErrDeal variable), corresponding to the processing level mapping of DER variable;
32位的CER变量中的数据位与32位的CED变量中的数据位一一映射;The data bits in the 32-bit CER variable are mapped one-to-one with the data bits in the 32-bit CED variable;
32位的UER变量中的数据位与32位的UED变量中的数据位一一映射;The data bits in the 32-bit UER variable are mapped one-to-one with the data bits in the 32-bit UED variable;
32位的DER变量中的数据位与32位的DED变量中的数据位一一映射;The data bits in the 32-bit DER variable are mapped one-to-one with the data bits in the 32-bit DED variable;
上述各个不同的变量在初始化时,均复位为0。The various variables mentioned above are all reset to 0 when they are initialized.
其中,通信故障类型的判定不需要检测数据,只需要检测受控节点有没有应答;功能故障类型则需要判断具体的数值,如果没有数,就已经判决为通信故障了。Among them, the determination of the type of communication failure does not need to detect data, but only needs to detect whether the controlled node responds; the type of functional failure needs to determine the specific value. If there is no number, it has been judged as a communication failure.
对水下航行器内部设置的各个受控节点同时采用上述步骤1)-步骤4)的方法,可同时对各个受控节点进行故障检测,大大提高了工作效率;同时,由于本发明的方法可以适用于任何具有数字总线进行主从式通信的电子设备,具有普适性。Adopt above-mentioned step 1)-step 4) method simultaneously to each controlled node that underwater vehicle interior is provided with, can carry out fault detection to each controlled node simultaneously, have improved work efficiency greatly; Simultaneously, because the method of the present invention can It is applicable to any electronic equipment with digital bus for master-slave communication, and has universal applicability.
在本发明的方法中,可以根据需要添加不同功能的受控节点,对水下航行器内部的各个受控节点同时进行故障检测和故障处理,大大提高了工作效率。In the method of the present invention, controlled nodes with different functions can be added as required, and fault detection and fault processing can be performed on each controlled node inside the underwater vehicle at the same time, thereby greatly improving work efficiency.
实施例1.Example 1.
在本发明的系统中,如图1所示,利用本发明的方法能够检测出两类故障类型:通信故障和功能故障,在故障类型中,通信故障的生成基于周期通信,具体的检测方法为,通过发送周期T内的广播指令,水下航行器内的各受控节点收到该广播指令后应答对应的受控节点的功能数据,每周期记录并统计各受控节点的应答情况,如果连续N个周期未接收到相应受控节点的应答,则认为该受控节点产生了通信故障;同样,如果该受控节点连续N个周期未接收到主控制节点的广播指令,则认为该受控节点产生了通信故障。In the system of the present invention, as shown in Figure 1, two types of faults can be detected by the method of the present invention: communication faults and functional faults. In the fault types, the generation of communication faults is based on periodic communication. The specific detection method is , by sending the broadcast command in the cycle T, each controlled node in the underwater vehicle responds to the function data of the corresponding controlled node after receiving the broadcast command, records and counts the responses of each controlled node every cycle, if If no response from the corresponding controlled node is received for N consecutive cycles, it is considered that the controlled node has a communication failure; similarly, if the controlled node does not receive the broadcast command from the master control node for N consecutive cycles, it is considered that the controlled node The control node has a communication failure.
故障类型中,功能故障又包括数据更新异常和数据异常。数据更新异常通过监控各受控节点的功能数据而产生,具体来说,如果主控制节点连续M个周期的对应受控节点的功能数据无变化,则认为该受控节点发生数据更新异常,若被检测的受控节点输出数据具有快变特征,则M的值应设置较小,若被检测的受控节点输出数据具有慢变特征,则M的值应设置较大,若该受控节点输出变化极为缓慢,也可不进行数据刷新检测;其中,M值为预先设定的刷新阈值;数据异常通过监控各受控节点的功能数据是否超出预先设定的边界范围而产生,如果检测到任意1次该受控节点的功能数据超出预先设定的边界范围,则认为该受控节点发生数据异常。Among the fault types, functional faults include data update anomalies and data anomalies. The abnormal data update is generated by monitoring the functional data of each controlled node. Specifically, if the functional data of the corresponding controlled node of the master control node does not change for M consecutive cycles, it is considered that the controlled node has an abnormal data update. If If the output data of the detected controlled node has fast-changing characteristics, the value of M should be set smaller. If the output data of the detected controlled node has slow-changing characteristics, the value of M should be set larger. If the controlled node The output changes very slowly, and data refresh detection may not be performed; among them, M value is the preset refresh threshold; data abnormality is generated by monitoring whether the functional data of each controlled node exceeds the preset boundary range, if any Once the functional data of the controlled node exceeds the preset boundary range, it is considered that the controlled node has a data anomaly.
故障处理中,故障记录采用分级记录结构。第一级为记录级、第二级为处理级,这两级具有同样的数据结构类型。其中,记录级结构中每一数据位对应一种故障来源,数据位的位值为1表示检出该数据位对应的受控节点的故障,数据位的位值为0表示未检出对应故障,初始化时所有位初始化为0;满足特定条件后,如水下航行器由调试模式转为实航模式,将记录级的数据周期拷贝更新至处理级的数据结构中,此时,处理级数据为记录级数据的映射。In fault handling, fault records adopt a hierarchical record structure. The first level is the record level, and the second level is the processing level. These two levels have the same data structure type. Among them, each data bit in the record-level structure corresponds to a fault source, the bit value of the data bit is 1, indicating that the fault of the controlled node corresponding to the data bit is detected, and the bit value of the data bit is 0, indicating that the corresponding fault is not detected , all bits are initialized to 0 during initialization; after certain conditions are met, for example, the underwater vehicle changes from debugging mode to actual flight mode, and the data of the record level is periodically copied and updated to the data structure of the processing level. At this time, the data of the processing level is Mapping of record-level data.
故障处理中,实时监控处理级数据,当检测到处理级数据存在大于0的数据时,则进行故障主动处理。During fault handling, the processing-level data is monitored in real time, and when it is detected that there is data greater than 0 in the processing-level data, the fault is actively handled.
故障处理中,各受控节点在通信故障检测过程中检测到通信故障或在功能故障检测过程中检测到功能故障中的数据刷新异常或数据异常时,即执行预定义的受控节点的故障处理动作,该受控节点的这种预定义的故障处理机制不受主控制节点控制,为故障被动处理。In fault handling, when each controlled node detects a communication fault during the communication fault detection process or detects data refresh abnormality or data abnormality in the functional fault detection process during the functional fault detection process, it executes the predefined fault processing of the controlled node Action, the predefined fault handling mechanism of the controlled node is not controlled by the master control node, and is a passive processing of faults.
实施例2.Example 2.
如图3所示,在本实施例所采用的水下航行器为基本型电动力水下航行器,主控制节点所对应的主控CPU通过数字总线与推进电机驱动器(以下简称推进器)、舵电机驱动器(以下简称舵机)、电池BMS组件(以下简称电池)、惯性导航传感器(以下简称惯导)、压力传感器(以下简称压力计)通信。其中,推进器、舵机、电池、惯导和压力计为水下航行器内部设置的各个部件,每个部件在本实施例中作为一个对应的受控节点;主控CPU与各个受控节点通过数字总线进行主从式通信;对控制系统的内部通信及各个受控节点同时进行故障检测和故障处理;As shown in Figure 3, the underwater vehicle adopted in this embodiment is a basic electrodynamic underwater vehicle, and the main control CPU corresponding to the main control node communicates with the propulsion motor driver (hereinafter referred to as the propeller), Steering motor driver (hereinafter referred to as steering gear), battery BMS component (hereinafter referred to as battery), inertial navigation sensor (hereinafter referred to as inertial navigation), pressure sensor (hereinafter referred to as pressure gauge) communication. Wherein, thruster, steering gear, battery, inertial navigation and pressure gauge are the various components that underwater vehicle interior is provided with, and each component is as a corresponding controlled node in this embodiment; Main control CPU and each controlled node Carry out master-slave communication through the digital bus; perform fault detection and fault processing on the internal communication of the control system and each controlled node at the same time;
在实施该方法之前,定义32位的名称为CommErrRecord的变量,作为记录级通信故障的缓存,其中bit0对应推进器,bit1对应舵机,bit2对应电池,bit3对应惯导,bit4对应压力计。Before implementing this method, define a 32-bit variable named CommErrRecord as a buffer for record-level communication failures, where bit0 corresponds to the thruster, bit1 corresponds to the steering gear, bit2 corresponds to the battery, bit3 corresponds to the inertial navigation, and bit4 corresponds to the pressure gauge.
定义32位的名称为UpdateErrRecord的变量,作为记录级数据更新异常故障的缓存,其中bit0对应推进器,bit1对应舵机,bit2对应电池,bit3对应惯导,bit4对应压力计。Define a 32-bit variable named UpdateErrRecord as a buffer for record-level data update abnormal faults, where bit0 corresponds to the thruster, bit1 corresponds to the steering gear, bit2 corresponds to the battery, bit3 corresponds to the inertial navigation, and bit4 corresponds to the pressure gauge.
定义32位的名称为DataErrRecord的变量,作为记录级数据异常故障的缓存,其中bit0对应推进器,bit1对应舵机,bit2对应电池,bit3对应惯导,bit4对应压力计。Define a 32-bit variable named DataErrRecord as a buffer for record-level data abnormal faults, where bit0 corresponds to the thruster, bit1 corresponds to the steering gear, bit2 corresponds to the battery, bit3 corresponds to the inertial navigation, and bit4 corresponds to the pressure gauge.
定义32位的CommErrDeal变量,对应CommErrRecord变量的处理级映射;定义32位的UpdateErrDeal变量,对应UpdateErrRecord变量的处理级映射;定义32位的DataErrDeal变量,对应DataErrRecord变量的处理级映射。Define the 32-bit CommErrDeal variable, which corresponds to the processing-level mapping of the CommErrRecord variable; define the 32-bit UpdateErrDeal variable, which corresponds to the processing-level mapping of the UpdateErrRecord variable; define the 32-bit DataErrDeal variable, which corresponds to the processing-level mapping of the DataErrRecord variable.
以上所有变量在系统初始化时均复位为0。All the above variables are reset to 0 when the system is initialized.
主控制节点以20毫秒为周期发送广播指令,各个对应的受控节点收到该广播指令后,即刻应答功能数据,主控制节点为每个受控节点各设置对应的一个通信异常计数器,在本周期结束时检测各受控节点的应答情况,若本周期未收到该受控节点的应答,则相应的受控节点通信异常计数器加1,如果此时通信异常计数器大于等于10(预定义中N=10,即为预先设定的阈值),则CommErrRecord中相应的数据位的位值置为1,若本周期接收到该受控节点的应答,则相应的通信异常计数器清0。例如,当前推进器对应的通信异常计数器为9,如果本周期仍未收到推进器的应答,则推进器通信异常计数器加1,此时为10,判断推进器通信异常计数器大于等于10成立,则CommErrRecord的bit0置1;若本周期收到推进器的应答,则推进器通信异常计数器清0。The master control node sends a broadcast command in a period of 20 milliseconds, and each corresponding controlled node responds to the function data immediately after receiving the broadcast command, and the master control node sets a corresponding communication exception counter for each controlled node. At the end of the period, the response status of each controlled node is detected. If the response of the controlled node is not received in this period, the corresponding abnormal communication counter of the controlled node is increased by 1. If the abnormal communication counter is greater than or equal to 10 (predefined N=10, which is the preset threshold), then the value of the corresponding data bit in the CommErrRecord is set to 1, and if the response from the controlled node is received in this cycle, the corresponding communication abnormality counter is cleared to 0. For example, the communication exception counter corresponding to the current propeller is 9. If no response from the propeller is received in this cycle, the propeller communication exception counter is incremented by 1, which is 10 at this time, and it is judged that the propeller communication abnormal counter is greater than or equal to 10. Then the bit0 of CommErrRecord is set to 1; if the thruster’s response is received in this cycle, the thruster’s communication exception counter is cleared to 0.
同上,主控制节点以20毫秒为周期发送广播指令,各个对应的受控节点收到该广播指令后,即刻应答功能数据,每个受控节点上设置对应的一个数据刷新异常计数器,在本周期结束时检测各受控节点的应答内容,作为应答的功能数据,如果本周期的功能数据与上周期该受控节点的功能数据相比没有变化,则相应的数据刷新异常计数器加1,如果此时数据刷新异常计数器大于等于15(预定义中M=15),则UpdateErrRecord中相应的数据位的位值置为1,若功能数据有变化,则相应的数据刷新异常计数器清0。例如,当前压力计对应的数据刷新异常计数器为14,如果本周期压力计数据等于上周期压力计数据,则压力计数据刷新异常计数器加1,此时为15,判断压力计数据刷新异常计数器大于等于15成立,则UpdateErrRecord的bit4置1;若本周期压力计数据不等于上周期压力计数据,则压力计数据刷新异常计数器清0。As above, the master control node sends a broadcast command in a period of 20 milliseconds, and each corresponding controlled node responds to the functional data immediately after receiving the broadcast command, and a corresponding data refresh exception counter is set on each controlled node. At the end, the response content of each controlled node is detected. As the functional data of the response, if the functional data of this cycle has not changed compared with the functional data of the controlled node in the previous cycle, the corresponding data refresh abnormal counter will be incremented by 1. If this When the data refresh abnormal counter is greater than or equal to 15 (M=15 in the pre-defined), then the position value of the corresponding data bit in the UpdateErrRecord is set to 1, if the function data changes, then the corresponding data refresh abnormal counter is cleared to 0. For example, the data refresh exception counter corresponding to the current pressure gauge is 14. If the pressure gauge data in this cycle is equal to the pressure gauge data in the previous cycle, the pressure gauge data refresh exception counter is incremented by 1, and it is 15 at this time. It is judged that the pressure gauge data refresh exception counter is greater than If it is equal to 15, bit4 of UpdateErrRecord is set to 1; if the pressure gauge data in this cycle is not equal to the pressure gauge data in the previous cycle, the pressure gauge data refresh exception counter is cleared to 0.
在任意1个周期结束时,检测到某受控节点的功能数据超出其工作条件下的理论值范围(即预先设定的边界范围),则认为传感器故障,将DataErrRecord中对应的位置1。例如,压力计动态范围0~1000米,但水下航行器设计最大工作深度为100米,若水下航行器正常工作过程中,压力计出现任意一次明显大于100米的传感器输出(如200米),即判断压力计故障,此时将DataErrRecord的bit4置1。At the end of any one cycle, if it is detected that the functional data of a controlled node exceeds the theoretical value range under its working conditions (that is, the preset boundary range), it is considered that the sensor is faulty, and the corresponding position in DataErrRecord is set to 1. For example, the dynamic range of the pressure gauge is 0 to 1000 meters, but the maximum working depth of the underwater vehicle is designed to be 100 meters. If the underwater vehicle is in normal operation, the pressure gauge has any sensor output that is obviously greater than 100 meters (such as 200 meters) , that is, it is judged that the pressure gauge is faulty, and at this time, bit4 of DataErrRecord is set to 1.
故障类型的检测方法如下图4所示,图中虚线表示省略故障检测之前或之后的流程,并且,图中只给出了某单个受控节点的故障检测流程,剩余的多个受控节点的检测可参照图4所示的检测流程顺序进行。The detection method of the fault type is shown in Figure 4 below. The dotted line in the figure indicates the process before or after the fault detection is omitted, and the figure only shows the fault detection process of a single controlled node, and the remaining multiple controlled nodes The detection can be performed sequentially with reference to the detection flow shown in FIG. 4 .
故障记录级数据是每周期实时更新的,反映即时检测结果;处理级数据用于触发故障处理流程,由于水下航行器在调试状态下可能会存在受控节点并不完备的情况,此时希望正常调试运行而非触发异常处理,因而,只在如“调试转实航”外部命令下达后,才需将记录级故障数据拷贝更新至处理级故障数据中,“调试转实航”命令实际意义上即成为故障处理使能命令。一旦“调试转实航”命令下达,记录级数据需每周期拷贝更新至处理级数据结构。The fault record level data is updated in real time every cycle, reflecting the real-time detection results; the processing level data is used to trigger the fault processing process. Since the underwater vehicle may have incomplete control nodes in the debugging state, it is hoped that Normal debugging operation instead of triggering exception handling. Therefore, only after an external command such as "debugging to actual flight" is issued, it is necessary to copy and update the record-level fault data to the processing-level fault data. The actual meaning of the "debugging to actual flight" command It becomes the fault processing enabling command. Once the "commissioning to actual flight" command is issued, the record-level data needs to be copied and updated to the processing-level data structure every cycle.
主控制节点检测到处理级故障数据存在非0值,则需进行故障处理。例如,对于正浮力的水下航行器,需要停车使产品上浮;对于负浮力的水下航行器,需要抛载或启动浮力装置使产品上浮,这个过程为主动控制,为故障主动处理机制。If the main control node detects that there is a non-zero value in the fault data at the processing level, it needs to handle the fault. For example, for an underwater vehicle with positive buoyancy, it needs to stop to float the product; for an underwater vehicle with negative buoyancy, it needs to dump the load or start the buoyancy device to float the product. This process is an active control and an active fault handling mechanism.
各个受控节点检测到故障并进行的处理为故障被动处理。各受控节点的故障分为两类,一类为通信故障,一类为分系统功能故障。各个受控节点检测到其与主控制节点之间的通信状态,判决通信故障,并由该受控节点采用故障被动处理的处理方法进行故障被动处理。其中,所采用的判决方法和判决过程和前述的判决过程相同,例如,推进电机驱动器检测到通信故障,此时已无法受主控制模块控制,动力分系统可根据需要自主停车;又例如,电池检测到欠压、过流、过温等超范围功能故障,需进行故障上报,通知主控制节点记录故障源并进行故障主动处理。Each controlled node detects a fault and handles it passively. The failure of each controlled node is divided into two categories, one is communication failure, and the other is subsystem function failure. Each controlled node detects the communication status between itself and the main control node, judges the communication fault, and the controlled node adopts the processing method of fault passive processing to handle the fault passively. Among them, the judgment method and judgment process adopted are the same as the above-mentioned judgment process. For example, if the propulsion motor driver detects a communication failure, it cannot be controlled by the main control module at this time, and the power subsystem can automatically stop according to needs; If under-voltage, over-current, over-temperature and other out-of-range functional faults are detected, the fault needs to be reported, and the main control node is notified to record the fault source and actively handle the fault.
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention rather than limit them. Although the present invention has been described in detail with reference to the embodiments, those skilled in the art should understand that modifications or equivalent replacements to the technical solutions of the present invention do not depart from the spirit and scope of the technical solutions of the present invention, and all of them should be included in the scope of the present invention. within the scope of the claims.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110924758.4A CN113791923B (en) | 2021-08-12 | 2021-08-12 | A method for fault detection and fault handling of an underwater vehicle |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110924758.4A CN113791923B (en) | 2021-08-12 | 2021-08-12 | A method for fault detection and fault handling of an underwater vehicle |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113791923A CN113791923A (en) | 2021-12-14 |
CN113791923B true CN113791923B (en) | 2023-08-08 |
Family
ID=78875929
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110924758.4A Active CN113791923B (en) | 2021-08-12 | 2021-08-12 | A method for fault detection and fault handling of an underwater vehicle |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113791923B (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101631057A (en) * | 2009-08-17 | 2010-01-20 | 北京航空航天大学 | Network control method of dual-redundancy CAN bus |
CN102799153A (en) * | 2012-07-13 | 2012-11-28 | 西南交通大学 | Wired and wireless hot-standby redundancy multi-master communication method and field network node module |
CN107707408A (en) * | 2017-10-20 | 2018-02-16 | 杭州杭淳广播电视设备有限公司 | A kind of digital broadcast transmitter long-distance monitoring method and system |
CN110849404A (en) * | 2019-11-18 | 2020-02-28 | 中国华能集团清洁能源技术研究院有限公司 | Continuous discrimination method for sensor data abnormity |
-
2021
- 2021-08-12 CN CN202110924758.4A patent/CN113791923B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101631057A (en) * | 2009-08-17 | 2010-01-20 | 北京航空航天大学 | Network control method of dual-redundancy CAN bus |
CN102799153A (en) * | 2012-07-13 | 2012-11-28 | 西南交通大学 | Wired and wireless hot-standby redundancy multi-master communication method and field network node module |
CN107707408A (en) * | 2017-10-20 | 2018-02-16 | 杭州杭淳广播电视设备有限公司 | A kind of digital broadcast transmitter long-distance monitoring method and system |
CN110849404A (en) * | 2019-11-18 | 2020-02-28 | 中国华能集团清洁能源技术研究院有限公司 | Continuous discrimination method for sensor data abnormity |
Also Published As
Publication number | Publication date |
---|---|
CN113791923A (en) | 2021-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101631057B (en) | Network control method of dual-redundancy CAN bus | |
CN104512422A (en) | Fault processing method and fault processing system of hybrid electric car | |
US9417982B2 (en) | Method and apparatus for isolating a fault in a controller area network | |
US20100052428A1 (en) | Multi-cell battery system, and management number numbering method | |
US9009523B2 (en) | Method and apparatus for isolating a fault in a controller area network | |
CN110394688A (en) | Machine Tool Condition Monitoring Method Based on Edge Computing | |
US20150312123A1 (en) | Method and apparatus for isolating a fault in a controller area network | |
CN209071553U (en) | Battery pack bulge detection device, battery management system, vehicle | |
CN112506690B (en) | Method and device for controlling processor | |
CN112231134B (en) | Fault processing method and device for neural network processor, equipment and storage medium | |
CN106557083A (en) | The DTC recording method of vehicle electrically controlling unit and vehicle electrically controlling unit | |
CN113791923B (en) | A method for fault detection and fault handling of an underwater vehicle | |
US20110153035A1 (en) | Sensor Failure Detection System And Method | |
CN108536122B (en) | Hybrid electric vehicle diagnostic system and method | |
CN112882901A (en) | Intelligent health state monitor of distributed processing system | |
WO2014039032A1 (en) | Method and apparatus for isolating a fault-active controller in a controller area network | |
WO2022222782A1 (en) | Vehicle remote diagnosis system and method | |
CN108875205A (en) | System availability efficient simulation method based on reachable matrix and discrete event driving | |
CN114153189B (en) | Automatic driving controller safety diagnosis and protection method, system and storage device | |
JP3370387B2 (en) | Abnormality countermeasure method in a multi-CPU vehicle control computer system | |
CN114371956A (en) | Fault processing method and system of host and charging pile | |
CN115826392A (en) | Decision method and device for redundancy control system of unmanned aerial vehicle | |
CN113973025A (en) | CAN bus-based satellite-borne computer communication reliability and fault tolerance design method | |
Sheng et al. | Design of lithium battery pack fault diagnosis system based on two levels state machine | |
CN116055294B (en) | A multi-node CAN bus communication fault self-recovery method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |