The present invention relates to diagnosis of an inertial sensor for angular velocity, acceleration, or the like.
In order to secure safety at the time of traveling of an automobile, sensors which detect angular velocity or acceleration are required. When these sensors are provided and operated in an environment in which a temperature change range is wide and the influence of vibration or electromagnetic noise is significant, like an engine room, a measure is required to secure high reliability of sensor output.
Accordingly, a sensor which is used in such an environment is provided with a self-diagnosis function inside thereof, and transmits diagnostic information to an external device along with a sensor output. The external device determines whether or not the received sensor output is normal based on the received diagnostic information, and determines whether or not to use the sensor output.
PTLs 1 and 2 describe a sensor which detects inertial force, such as angular velocity or acceleration, and transmits a detection result and a diagnostic result for the operation state of the sensor to an external device. In the technique described in PTL 1, a failure detection output is output in a time-division manner by an output circuit at the same time as the sensor output. In the technique described in PTL 2, processing, such as sensor control, sensor output correction, and failure diagnosis, is executed by program processing using a digital signal processor.
PTL 1: Japanese Patent No. 4311496
PTL 2: JP-A-2000-2542
In PTL 1 described above, a circuit configuration is made in which a drive circuit of a sensor, a detection circuit, and a processing circuit are separated, and failure detection is performed for each circuit. For this reason, an individual failure detection circuit is required for each circuit. In PTL 2, a digital signal processor which is digital signal processing means, executes processing, such as sensor driving, detection, and diagnosis. For this reason, diagnosis of a register unit and a calculation unit is required.
An object of the invention is to provide an inertial force detection device with improved reliability.
An inertial force detection device according to the invention includes digital signal processing means, means for detecting a failure in a register unit and a calculation unit of the digital signal processing means, and means for outputting the failure detection result to the outside.
According to the invention, it is possible to provide an inertial force detection device with improved reliability.
The vibrator 102 has a predetermined mass and vibrates in a vibration axis direction at a predetermined vibration frequency. The fixed electrode 103 makes electrostatic force act in order to adjust the vibration amplitude and vibration frequency of the vibrator 102 in the vibration direction. The electrodes 104 and 105 detect the vibration amplitude and vibration frequency of the vibrator 102 by change in electrostatic capacity. The fixed electrodes 106 and 107 detect displacement, which occurs in the vibrator 102 in a direction perpendicular to the vibration axis by Coriolis force occurring when angular velocity is applied, by change in electrostatic capacity.
A capacity detector 110 detects displacement in the vibration direction acting on the angular velocity sensor 101 by detecting the difference between electrostatic capacity between the angular velocity sensor 101 and the fixed electrode 104 and electrostatic capacity between the angular velocity sensor 101 and the fixed electrode 105. The output of the capacity detector 110 is converted to a digital signal by an AD converter 145, and the digital signal is input to a digital signal processor (hereinafter, referred to as DSP-A) 150.
A capacity detector 112 detects displacement by Coriolis force acting on the vibrator 102 by detecting the difference between electrostatic capacity between the vibrator 102 and the fixed electrode 106 and electrostatic capacity between the vibrator 102 and the fixed electrode 107. A detection result is converted to a digital signal by an AD converter 146, and the digital signal is input to the DSP-A 150.
An X acceleration sensor 121 has a vibrator 128, and electrodes 130 and 131. The vibrator 128 is displaced when acceleration is applied in a right-left direction (hereinafter, referred to as X-axis direction). The electrode 130 detects the amount of displacement in the X-axis direction by change in electrostatic capacity. The electrode 131 applies a voltage to forcibly displace the vibrator 128 in the X-axis direction. The capacity detector 135 detects change in electrostatic capacity by displacement and outputs the change as a voltage. An AD converter 148 converts the voltage detected by the capacity detector 135 to a digital signal and inputs the digital signal to the DSP-A 150.
A Y acceleration sensor 122 has a vibrator 129, and electrodes 132 and 133. The vibrator 129 is displaced when acceleration is applied in a front-back direction (hereinafter, referred to as Y-axis direction). The electrode 132 detects the amount of displacement in the Y-axis direction by change in electrostatic capacity. The electrode 133 applies a voltage to forcibly displace the vibrator 129 in the Y-axis direction. The capacity detector 136 detects change in electrostatic capacity by displacement and outputs the change as a voltage. An AD converter 149 converts the voltage detected by the capacity detector 136 to a digital signal and inputs the digital signal to a DSP-B 160.
A temperature sensor 137 detects an ambient temperature, converts the ambient temperature to a voltage, and outputs the voltage. An AD converter 138 converts the output voltage of the temperature sensor 137 to a digital signal and inputs the digital signal to the DSP-A 150 and the DSP-B 160.
A program ROM 151 is a read only memory which stores a processing program to be executed by the DSP-A 150. An example of the program to be stored will be described referring to
The DSP-A 150 is a digital signal processor which executes driving of the angular velocity sensor 101, detection of angular velocity, and detection of acceleration in the X direction. The DSP-A 150 includes a program counter 155 which outputs an address signal for reading memory data to the program ROM 151 storing a program for executing sensor control, a command execution unit 152 which interprets and executes input memory data, a register 153 which stores data input from the outside and calculation data, and a calculation unit 154 which executes digital calculation according to an instruction from the command execution unit 152.
A program ROM 161 is a read only memory which stores a processing program to be executed by the DSP-B 160. An example of the program to be stored will be described referring to
The DSP-B 160 is a digital signal processor which executes detection of acceleration in the Y direction and sensor diagnosis. The DSP-B 160 includes a program counter 165 which outputs an address signal for reading memory data to the program ROM 156 storing a program for executing sensor control, a command execution unit 162 which interprets and executes input memory data, a register 163 which stores data input from the outside and calculation data, and a calculation unit 164 which executes digital calculation according to an instruction from the command execution unit 162.
A RAM 155 is a random access memory which stores temporary data for transferring data after calculation from the DSP-A 150 to the DSP-B 160.
A DSP failure detection unit 156 performs output of diagnostic data for diagnosing the DSP-A 150 and the DSP-B 160, confirmation of an expected value of diagnostic output, and failure detection for the two DSPs described above and outputs a failure flag to a communication 171. A specific example will be described referring to
A diagnostic voltage control 139 is a circuit which forcibly displaces the vibrator 128 in the X-axis direction and the vibrator 129 in the Y-axis direction and forcibly applies a voltage to the electrodes 131 and 133 in order to diagnose whether or not the acceleration sensor is normally operating.
The communication unit 171 is a circuit which transmits the outputs of the angular velocity sensor 101 and the acceleration sensors 121 and 122 and the diagnostic result to the external device. A specific example will be described referring to
Period counting is a period counter which manages the number of executions of a series of processing in the program ROM 151. This is processing for incrementing 1 each time the processing of Steps 201 to 205 ends once.
Angular velocity driving is processing for causing the angular velocity sensor 101 to vibrate in the vibration axis direction. The frequency and amplitude of a displacement signal of the vibrator 102 obtained through the capacity detector 110 and the AD converter 145 are adjusted such that the vibration of the vibrator 102 in the drive direction is put in a resonant state, thereby generating an AC drive signal. The drive signal is output from the DSP-A 150 to the fixed electrode 103 through the DA conversion unit 147 to cause the angular velocity sensor 101 to constantly vibrate at a resonant frequency.
Angular velocity detection performs synchronous detection in the resonant frequency for the displacement signal of the vibrator 102 obtained through the capacity detector 112 and the AD converter 146 to detect an amplitude value. The obtained amplitude value is stored in the register 153 as detection data of angular velocity. Thereafter, temperature correction calculation and high-frequency noise component removal by a low-pass filter are executed for the detection value of the angular velocity sensor stored in the register 153 according to the detection value of the temperature sensor 137.
X acceleration detection stores a displacement signal of the vibrator 128 obtained through the capacity detector 135 and the AD converter 148 of
DSP-A register diagnosis is processing for executing diagnosis for the register unit 153 in the DSP-A 150 of
DSP-A calculation diagnosis is means for executing diagnosis for the calculation unit 154 in the DSP-A 150 of
The DSP-A 150 of
Next, the program ROM 158 will be described below.
Period counting is a period counter which manages the number of executions of a series of processing in the program ROM 161. This is processing for incrementing 1 each time the processing of Steps 211 to 214 ends once.
Y acceleration detection stores a displacement signal of the vibrator 129 obtained through the capacity detector 136 and the AD converter 149 of
Self-diagnosis executes the following processing.
(1) It is determined whether or not the drive frequency and drive amplitude of the vibrator 101 in the vibration axis direction are normal based on the output of angular velocity driving in Step S201.
(2) It is determined whether or not angular velocity output is normal based on the output of the angular velocity detection S202.
(3) It is determined whether or not the X direction acceleration sensor is normally operating based on the output of the X acceleration correction S203.
(4) It is determined whether or not the Y direction acceleration sensor is normally operating based on the output of the Y acceleration correction S212.
DSP register diagnosis executes a diagnosis for the register unit 160 in the DSP-B 160 of
DSP calculation diagnosis executes a diagnosis for the calculation unit 161 in the DSP-B 160 of
The DSP-B 160 executes the four steps described above in order. After Step S214 is executed, the process returns to Step S201 and a series of steps are repeatedly executed again in order. For example, Step S211 to Step S215 are repeatedly executed at 5 kHz (1 period: 0.2 milliseconds).
Address setting sets the address of one register to be diagnosed in the register unit 153 of
Actual data saving is a function of temporarily saving data stored in a register to be diagnosed in the RAM 155 of
Diagnostic data writing is processing for writing diagnostic test data output from the DSP failure detection 156 of
Data reading reads data from a register, in which diagnostic data is written.
Actual data recovery reads original data stored in the RAM 155 of
Period count value detection is processing for taking a period count value (of Step S200) of the program ROM 151 of
Processing for obtaining a remainder by dividing the period count value by 6 is processing for selects and executes one from among the six kinds of following processing in order in each period.
When the remainder after the division of the period count value by 6 is “0”, the process progresses to Step S404. When the remainder is other than “0”, the process progresses to Step S405.
Diagnosis of a multiplier which is one function of the calculation units 154 and 164 in the DSP-A and the DSP-B of
When the remainder after the division of the period count value by 6 is “1”, the process progresses to Step S406. When the remainder is other than “1”, the process progresses to Step S407.
Diagnosis of an adder which is one function of the calculation units 154 and 161 in the DSP-A and the DSP-B of
When the remainder after the division of the period count value by 6 is “2”, the process progresses to Step S408. When the remainder is other than “2”, the process progresses to Step S409.
Diagnosis of a subtracter which is one function of the calculation units 154 and 161 in the DSP-A and the DSP-B of
When the remainder after the division of the period count value by 6 is “3”, the process progresses to Step S410. When the remainder is other than “3”, the process progresses to Step S411.
Diagnosis of a comparator which is one function of the calculation units 154 and 161 in the DSP-A and the DSP-B of
When the remainder after the division of the period count value by 6 is “4”, the process progresses to Step S412. When the remainder is other than “4”, the process progresses to Step S413.
Diagnosis of a logical product unit which is one function of the calculation units 154 and 161 in the DSP-A and the DSP-B of
When the remainder after the division of the period count value by 6 is “5”, the process progresses to Step S414. When the remainder is other than “5”, the processing ends.
Diagnosis of a logical sum unit which is one function of the calculation units 154 and 161 in the DSP-A and the DSP-B of
As a specific operation, the comparator 506 compares the period count value of Step S200 of
(bit b14) the angular velocity detection function of the angular velocity sensor 101 (Step S212)
(bit b13) the acceleration detection function of the X direction acceleration sensor 128 (Step S212)
(bit b12) the acceleration detection function of the Y direction acceleration sensor 128 (Step S212)
(bit b11) the register unit diagnostic result of the DSP-A (Step S204)
(bit b10) the calculation unit diagnostic result of the DSP-A (Step S205)
(bit b9) the register diagnostic result of the DSP-B (Step S213)
(bit b8) the calculation unit diagnostic result of the DSP-B (Step S214)
The least eight bits output the value of the period counter, and represents that the sensor normally performs the periodic operation.
(bits b7 to b0) the period count value (output of period counter 503)
According to this example, it is possible to obtain the failure detection results of the DSP-A and the DSP-B at the time of the operation of the inertial sensor, and to improve reliability of sensor output. The same inertial force detection processing is performed by the two digital signal processing means (DSP-A and DSP-B), whereby it is possible to obtain the detection signal of the normal inertial force sensor even if one of the two digital signal processing means fails.
Next, a second embodiment will be described.
A difference from the first embodiment is that the DSP-A and the DSP-B execute the same processing. When the register unit and the calculation unit of the DSP-A are normal, an inertial force detection signal of the DSP-A is sent to the outside. When at least one of the register unit and the calculation unit of the DSP-A is abnormal, an inertial force detection signal of the DSP-B is sent to the outside. Such a processing configuration is made, whereby a normal sensor output can be transmitted even when one DSP fails. An example will be described referring to
101: angular velocity sensor, 102: vibrator, 103: fixed electrode, 104, 105: electrode, 106, 107: fixed electrode, 110: capacity detector, 112: capacity detector, 121: X direction acceleration sensor, 122: Y direction acceleration sensor, 128, 129: vibrator, 130 to 133: electrode, 135, 136: capacity detector, 137: temperature sensor, 138: AD converter, 139: diagnostic voltage control unit, 140: X-axis direction acceleration characteristic correction unit, 141: Y-axis direction acceleration characteristic correction unit, 145 to 149: AD converter, 147: DA conversion unit, 150: digital signal processor, 151: program ROM, 152: command execution unit, 153: register unit, 154: calculation unit, 155: RAM, 156: DSP failure detection unit, 160: digital signal processor, 161: program ROM, 162: command execution unit, 163: register unit, 164: calculation unit, 171: communication unit, 501: diagnostic data ROM, 502: expected output value ROM, 503: period counter, 504 to 509: comparator, 510, 511: failure flag generation unit, 601 to 604: register, 605: counter, 606: selector, 607: parallel/serial converter, 801, 802: selector, 803, 804: program ROM, 805: communication unit
Number | Date | Country | Kind |
---|---|---|---|
2013-018020 | Feb 2013 | JP | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2013/083413 | 12/13/2013 | WO | 00 |