Sign In to Follow Application
View All Documents & Correspondence

Information Processing Device And Information Processing Method

Abstract: In an information processing device (1000), an internal variable holding unit (1002) holds internal variables of a number smaller than N sequentially calculated in time series on the basis of sensor data acquired by a sensor data acquisition unit (1001). An internal variable calculation unit (1003) calculates an internal variable corresponding to a (j+1)th point in time (j is an integer of 1 to N-1) on the basis of sensor data at the (j+1)th point in time and an internal variable corresponding to the j-th point in time. A feature amount calculation unit (1004) calculates a feature amount obtained by extracting statistical features contained in the sensor data of a first to N-th point in time on the basis of the internal variable at the N-th point in time. A condition diagnosis unit (1006) makes a diagnosis of a condition of a mechanical device (1008) on the basis of the feature amount.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
25 April 2023
Publication Number
24/2023
Publication Type
INA
Invention Field
ELECTRONICS
Status
Email
Parent Application
Patent Number
Legal Status
Grant Date
2025-02-17
Renewal Date

Applicants

MITSUBISHI ELECTRIC CORPORATION
7-3, Marunouchi 2-chome, Chiyoda-ku, Tokyo 1008310

Inventors

1. TAKANO, Naoto
c/o Mitsubishi Electric Corporation, 7-3, Marunouchi 2-chome, Chiyoda-ku, Tokyo 1008310
2. HORISAWA, Yoichi
c/o Mitsubishi Electric Corporation, 7-3, Marunouchi 2-chome, Chiyoda-ku, Tokyo 1008310

Specification

FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENTS RULES, 2003
COMPLETE SPECIFICATION
[See section 10, Rule 13]
INFORMATION PROCESSING APPARATUS AND INFORMATION
PROCESSING METHOD;
MITSUBISHI ELECTRIC CORPORATION, A CORPORATION
ORGANISED AND EXISTING UNDER THE LAWS OF JAPAN,
WHOSE ADDRESS IS 7-3, MARUNOUCHI 2-CHOME, CHIYODAKU, TOKYO 1008310, JAPAN
THE FOLLOWING SPECIFICATION PARTICULARLY DESCRIBES
THE INVENTION AND THE MANNER IN WHICH IT IS TO BE
PERFORMED
2
DESCRIPTION
Field
[0001] The present disclosure relates to an information
5 processing apparatus and an information processing method
for performing information processing for diagnosing the
state of a mechanical apparatus.
Background
10 [0002] Mechanical apparatuses incorporating mechanical
components such as ball screws and speed reducers can
suffer various types of anomalies, e.g. friction increase,
vibration generation, and housing breakage, as the
mechanical components deteriorate over time. For this
15 reason, information processing apparatuses that find and
grasp this type of anomaly at an early stage are perceived
as important for efficient factory operation.
[0003] An example of an information processing apparatus
that diagnoses the state of a mechanical apparatus is
20 described in Patent Literature 1 below. Patent Literature
1 describes a method of holding sensor data acquired in
time series for a preset period and calculating a feature
such as mean or variance from the held sensor data. In
addition, Patent Literature 1 discloses that an anomaly of
25 the mechanical apparatus is detected by holding the
calculated feature for a preset period, calculating an
index such as skewness based on the held feature, and
comparing the calculated value with a past value.
30 Citation List
Patent Literature
[0004] Patent Literature 1: Japanese Patent Application
Laid-open No. 2020-35372
3
Summary
Technical Problem
[0005] However, the information processing apparatus
5 described in Patent Literature 1 is problematic in that it
is necessary to hold sensor data obtained from a sensor
signal for a set period, for which an enormous storage
capacity is required. For example, if the sampling
frequency for obtaining sensor data is 2 kHz, 2000 values
10 are obtained per second. Here, given that the data type
for handling sensor data with a computer is the 4-byte int
type, for example, a memory of 480 kilobytes (= 4 bytes × 2
kHz × 60 seconds) is required to obtain sensor data for 60
seconds. Because random access memories (RAMs) of many
15 microcontrollers for industrial use have a capacity of
about several kilos to several megabytes, information can
only be processed by limited specific types of apparatuses,
which is problematic.
[0006] Alternatively, sensor data can be held in a
20 storage of a server apparatus, not in a microcontroller, so
as to be separately processed offline. In practice,
however, a factory can only be equipped with a few storages
of this type from the viewpoint of the space for installing
the server apparatus, the management cost for managing the
25 server apparatus, and the like. This results in the
problem that a huge amount of data accumulated every day
cannot be processed by only a few storages. For example,
suppose that a factory has 10 mechanical apparatuses each
including 10 sensors, and these mechanical apparatuses
30 operate for 24 hours. In this case, data of 2 terabytes or
more (≈ 10 sensors × 10 mechanical apparatuses × 4 bytes ×
2[kHz] × 3600 seconds × 24 hours × 30 days = 2.0736
terabytes) is added every month, which is a heavy burden on
4
the computer of the server apparatus.
[0007] The present disclosure has been made in view of
the above, and an object thereof is to provide an
information processing apparatus capable of performing
5 information processing for diagnosing the state of a
mechanical apparatus without using a computer having a high
calculation capability and a computer having a large
storage capacity.
10 Solution to Problem
[0008] In order to solve the above-described problems
and achieve the object, an information processing apparatus
according to the present disclosure includes a sensor data
acquisition unit, an internal variable holding unit, an
15 internal variable calculation unit, a feature calculation
unit, and a state diagnosis unit. The sensor data
acquisition unit acquires measurement values of a physical
quantity of a mechanical apparatus measured by a sensor,
and holds, as sensor data, measurement values from a first
20 time point to an N-th time point (N is an integer of two or
more) among the measurement values. The internal variable
holding unit holds a smaller number of values of an
internal variable than the N, the internal variable being
sequentially calculated in time series based on the sensor
25 data. The internal variable calculation unit calculates
the internal variable corresponding to a (j+1)-th time
point (j is an integer of one to N−1) based on the sensor
data at the (j+1)-th time point and the internal variable
corresponding to a j-th time point. The feature
30 calculation unit calculates a feature by extracting a
statistical characteristic included in the sensor data from
the first time point to the N-th time point based on the
internal variable at the N-th time point. The state
5
diagnosis unit makes a diagnosis of the state of the
mechanical apparatus based on the feature.
Advantageous Effects of Invention
5 [0009] The information processing apparatus according to
the present disclosure can achieve the effect of performing
information processing for diagnosing the state of a
mechanical apparatus without using a computer having a high
calculation capability and a computer having a large
10 storage capacity.
Brief Description of Drawings
[0010] FIG. 1 is a diagram illustrating an exemplary
configuration of an information processing system including
15 an information processing apparatus according to a first
embodiment.
FIG. 2 is a diagram illustrating an exemplary hardware
configuration of a mechanical apparatus and its peripheral
apparatuses according to the first embodiment.
20 FIG. 3 is a diagram illustrating an exemplary
configuration in which processing circuitry provided in the
driver illustrated in FIG. 2 is configured by a processor
and a memory.
FIG. 4 is a diagram illustrating an exemplary
25 configuration in which processing circuitry provided in the
driver illustrated in FIG. 2 is configured by dedicated
hardware.
FIG. 5 is a diagram illustrating time-series waveforms
of motor speed and motor torque in the first embodiment.
30 FIG. 6 is a diagram illustrating time-series waveforms
of the motor torque and various types of features in the
first embodiment.
FIG. 7 is a diagram illustrating an example of changes
6
in feature over time in the first embodiment.
FIG. 8 is a flowchart for explaining an information
processing method according to the first embodiment.
FIG. 9 is a diagram illustrating an exemplary
5 configuration of an information processing system including
an information processing apparatus according to a second
embodiment.
FIG. 10 is a diagram illustrating time-series
waveforms of the motor torque and various types of features
10 in the second embodiment.
FIG. 11 is a diagram illustrating an exemplary
configuration of an information processing system including
an information processing apparatus according to a third
embodiment.
15 FIG. 12 is a diagram illustrating time-series
waveforms of the motor torque and various types of features
in the third embodiment.
FIG. 13 is a diagram illustrating an exemplary
configuration of an information processing system including
20 an information processing apparatus according to a fourth
embodiment.
FIG. 14 is a diagram illustrating time-series
waveforms of the motor torque and various types of features
in the fourth embodiment.
25 FIG. 15 is an enlarged diagram of the time-series
waveforms of the initialization trigger and the convergence
degree illustrated in FIG. 14 over the period from time Tr2
to time Tr3.
FIG. 16 is a diagram illustrating an exemplary
30 configuration of an information processing system including
an information processing apparatus according to a fifth
embodiment.
FIG. 17 is a diagram illustrating an exemplary
7
configuration of a state diagnosis unit according to the
fifth embodiment.
FIG. 18 is a diagram illustrating the relationship
between the feature and the set value of the motor speed in
5 the fifth embodiment.
FIG. 19 is a diagram illustrating the result of
principal component analysis in the fifth embodiment.
FIG. 20 is a diagram illustrating the anomaly degree
of principal component analysis in the fifth embodiment.
10 FIG. 21 is a diagram illustrating an example of
changes in anomaly degree over time in the fifth embodiment.
FIG. 22 is a diagram illustrating an exemplary
configuration of an information processing system including
an information processing apparatus according to a sixth
15 embodiment.
FIG. 23 is a diagram illustrating an exemplary
configuration of a state diagnosis unit according to the
sixth embodiment.
FIG. 24 is a diagram illustrating an exemplary
20 structure of a state estimation unit according to the sixth
embodiment.
Description of Embodiments
[0011] Hereinafter, an information processing apparatus
25 and an information processing method according to
embodiments of the present disclosure will be described in
detail based on the drawings.
[0012] First Embodiment.
FIG. 1 is a diagram illustrating an exemplary
30 configuration of an information processing system 100
including an information processing apparatus 1000
according to the first embodiment. As illustrated in FIG.
1, the information processing system 100 includes the
8
information processing apparatus 1000, a mechanical
apparatus 1008, a sensor 1010, a motor 1009, and an
apparatus control unit 1099. The motor 1009 drives the
mechanical apparatus 1008 by applying a drive force to the
5 mechanical apparatus 1008. When the mechanical apparatus
1008 is driven by the motor 1009, the sensor 1010 measures
a physical quantity of the mechanical apparatus 1008. The
physical quantity the mechanical apparatus 1008 measures is
exemplified by position, speed, acceleration, operation
10 command, current, voltage, torque, force, pressure, sound,
or light amount. Note that the present embodiment uses
motor speed and motor torque as examples of physical
quantities. The motor speed is the rotation speed of the
motor 1009, and the motor torque is the torque generated by
15 the motor 1009.
[0013] The sensor 1010 outputs a sensor signal including
a measurement value of a physical quantity to the
information processing apparatus 1000 and the apparatus
control unit 1099. The apparatus control unit 1099
20 determines a control signal for controlling the motor 1009
based on the sensor signal. The motor 1009 is controlled
by the control signal output from the apparatus control
unit 1099.
[0014] The information processing apparatus 1000
25 includes a sensor data acquisition unit 1001, an internal
variable holding unit 1002, an internal variable
calculation unit 1003, a feature calculation unit 1004, an
initialization processing unit 1005, and a state diagnosis
unit 1006.
30 [0015] The sensor data acquisition unit 1001 acquires a
measurement value of a physical quantity of the mechanical
apparatus 1008 measured by the sensor 1010. As described
above, the measurement value of the physical quantity is
9
included in the sensor signal transmitted by the sensor
1010. In addition, the sensor data acquisition unit 1001
holds, as sensor data, measurement values from the first
time point to the N-th time point among the acquired
5 measurement values. Here, reference character “N” is an
integer of two or more. The internal variable holding unit
1002 temporarily holds a smaller number of values of an
internal variable than N. Internal variables are variables
sequentially calculated in time series based on sensor data.
10 Internal variables are used for calculating a feature.
Details of internal variables and features will be
described later.
[0016] The internal variable calculation unit 1003
receives the sensor data transmitted from the sensor data
15 acquisition unit 1001 and the internal variable transmitted
from the internal variable holding unit 1002. The internal
variable calculation unit 1003 updates the internal
variable based on the sensor data and the internal variable.
More generally, the internal variable calculation unit 1003
20 sequentially updates the internal variable by calculating
the internal variable corresponding to the (j+1)-th time
point based on the sensor data at the (j+1)-th time point
and the internal variable corresponding to the j-th time
point. Here, reference character “j” is an integer of one
25 to N−1. In other words, the internal variable calculation
unit 1003 calculates the internal variable at a certain
time point based on the sensor data at the certain time
point and the internal variable at one time point before
the certain time point. The calculated internal variable
30 is transmitted to the internal variable holding unit 1002.
[0017] The feature calculation unit 1004 receives the
sensor data transmitted from the sensor data acquisition
unit 1001 and the internal variable transmitted from the
10
internal variable holding unit 1002. The feature
calculation unit 1004 calculates a feature based on the
sensor data and the internal variable. More generally, the
feature calculation unit 1004 calculates a feature by
5 extracting a statistical characteristic included in the
sensor data from the first time point to the N-th time
point based on the internal variable. The calculated
feature is transmitted to the state diagnosis unit 1006.
[0018] The initialization processing unit 1005 executes
10 initialization processing. The initialization processing
is processing of setting the internal variable held by the
internal variable holding unit 1002 to an initial value.
More generally, the initialization processing unit 1005
performs processing of determining and setting the internal
15 variable at the first time point to a value between a
preset maximum and a preset minimum.
[0019] The state diagnosis unit 1006 performs diagnosis
processing of diagnosing the state of the mechanical
apparatus 1008 based on the feature, and outputs the
20 diagnosis result as the result of the diagnosis processing.
[0020] FIG. 2 is a diagram illustrating an exemplary
hardware configuration of the mechanical apparatus 1008 and
its peripheral apparatuses according to the first
embodiment. FIG. 2 depicts the mechanical apparatus 1008
25 in which a servomotor 1230 is used as a drive source as an
exemplary configuration of the mechanical apparatus 1008.
The drive torque generated by the servomotor 1230 is output
from a servomotor shaft 1231 and input to a ball screw
shaft 1224 via a coupling 1220. A ball screw 1210 converts
30 a rotational operation into a linear operation by means of
a screw mechanism to operate a movable portion 1212. Note
that the movable portion 1212 is connected to a different
mechanical component (not illustrated), and the movable
11
mechanical component is used according to the purpose of
the mechanical apparatus 1008.
[0021] The movable portion 1212 is restricted from
moving in a desired direction by a guide 1213. The guide
5 1213 assists the movable portion 1212 so that the
mechanical apparatus 1008 can operate with high accuracy.
As illustrated in the drawing, the servomotor 1230 is
usually equipped with an encoder 1233 that measures the
rotation angle and a current sensor 1232 that measures the
10 current so that the servomotor shaft 1231 can be driven
following a predetermined position, speed, or torque. A
driver 1240 performs feedback control based on information
obtained from the current sensor 1232, and supplies the
power required for driving to the servomotor 1230. The
15 calculation required for the feedback control is performed
by the apparatus control unit 1099 in FIG. 1. Note that
the present embodiment describes the motor torque as an
example of sensor data for use in state diagnosis. However,
sensor data is not limited to this example. Sensor data
20 may be anything that contains information on the state of
the mechanical apparatus 1008, e.g. the above-mentioned
physical quantities such as position, speed, acceleration,
current, voltage, torque, force, pressure, sound, and light
amount. Instead of these physical quantities, sensor data
25 may be image information or the like.
[0022] In FIG. 2, the current sensor 1232 and the
encoder 1233 are illustrated as non-limiting examples of
the sensor 1010. Other examples can include a laser
displacement meter, a gyro sensor, a vibration meter, an
30 acceleration sensor, a voltmeter, a torque sensor, a
pressure sensor, a microphone, an optical sensor, a camera,
and the like. The mounting position of the sensor 1010
does not necessarily have to be close to the servomotor
12
1230, and may be any position suitable for diagnosing the
state of the mechanical apparatus 1008. For example, an
acceleration sensor may be installed on the outer surface
of the guide 1213 or the like so as to measure the
5 acceleration as sensor data.
[0023] A programmable logic controller (PLC) 1260
transmits an operation command for the servomotor 1230 to
the driver 1240. In some cases, a personal computer (PC)
1270 may be prepared as necessary. In this case, the PC
10 1270 is used to send a command to the PLC 1260. As the PC
1270, a PC for industrial use (factory automation PC or
industrial PC) may be used.
[0024] In some cases, as illustrated in the drawing, a
PLC display 1250 for monitoring the state of the PLC 1260
15 and a PC display 1280 for monitoring the state of the PC
1270 may be prepared. Usually, one mechanical apparatus
1008 is equipped with a plurality of drive sources (not
illustrated) including the servomotor 1230. Accordingly, a
plurality of drivers 1240 may be prepared as necessary. In
20 some cases, the mechanical apparatus 1008 may be operated
integrally by a single PLC 1260 or cooperatively by a
plurality of PLCs 1260. In any case, the information
processing apparatus 1000 described in the present
embodiment can be similarly implemented.
25 [0025] FIG. 3 is a diagram illustrating an exemplary
configuration in which processing circuitry provided in the
driver 1240 illustrated in FIG. 2 is configured by a
processor 1291 and a memory 1292. In a case where the
processing circuitry is configured by the processor 1291
30 and the memory 1292, each function of the processing
circuitry of the driver 1240 is implemented by software,
firmware, or a combination of software and firmware.
Software or firmware is described as a program and stored
13
in the memory 1292. In the processing circuitry, the
processor 1291 reads and executes the programs stored in
the memory 1292, thereby implementing each function. That
is, the processing circuitry includes the memory 1292 for
5 storing the programs that result in the processing of the
driver 1240. It can also be said that these programs cause
a computer to execute the procedures and methods for the
driver 1240.
[0026] The processor 1291 may be an arithmetic means
10 called a central processing unit (CPU), a processing device,
an arithmetic device, a microprocessor, a microcomputer, or
a digital signal processor (DSP). The memory 1292 may be a
non-volatile or volatile semiconductor memory such as a RAM,
a read only memory (ROM), a flash memory, an erasable
15 programmable ROM (EPROM), or an electrically EPROM (EEPROM,
registered trademark). Alternatively, the memory 1292 may
be a storage means such as a magnetic disk, a flexible disk,
an optical disk, a compact disk, a mini disk, or a digital
versatile disc (DVD).
20 [0027] FIG. 4 is a diagram illustrating an exemplary
configuration in which processing circuitry provided in the
driver 1240 illustrated in FIG. 2 is configured by
dedicated hardware. In a case where the processing
circuitry is configured by dedicated hardware, the
25 processing circuitry 1293 illustrated in FIG. 4 may be, for
example, a single circuit, a composite circuit, a
programmed processor, a parallel programmed processor, an
application specific integrated circuit (ASIC), a field
programmable gate array (FPGA), or a combination thereof.
30 The functions of the driver 1240 may be implemented by
different pieces of processing circuitry 1293, or a
plurality of functions may be collectively implemented by
one piece of processing circuitry 1293. Note that the
14
driver 1240 and the PLC 1260 may be connected via a network.
In addition, the PC 1270 may exist on a cloud server.
[0028] An example of the hardware configuration is as
described above, but the driver 1240, the PLC 1260, and the
5 PC 1270 are not essential, and a device for implementing
the information processing apparatus according to the
present disclosure may be separately prepared, and the
information processing apparatus may be implemented inside
the device. For example, a single device including a
10 battery, a microcomputer, a sensor, a display, and a
communication function may be used, and the state of the
mechanical apparatus 1008 may be estimated based on the
sensor data that is the sound of the mechanical apparatus
1008 acquired with the microphone.
15 [0029] In addition, the displays are not essential, and
instead of displaying results on the PLC display 1250 or
the PC display 1280, results may be displayed using an
existing LED or the like provided in the driver 1240 or the
PLC 1260. In addition, without showing results on a
20 display, the drive of the servomotor 1230 may be stopped in
response to a diagnosis of anomaly.
[0030] Although the present embodiment describes the
case in which the motor speed is obtained from the encoder
1233 provided in the servomotor 1230, this is a non25 limiting example. For example, in the configuration of FIG.
1, the motor speed may be obtained using a control signal
from the apparatus control unit 1099 that issues a drive
command to the motor 1009.
[0031] The present embodiment describes the servomotor
30 1230 as a rotary servomotor, but the servomotor 1230 may be
implemented using another motor or a drive source such as a
linear servomotor, an induction machine motor, a stepping
motor, a brush motor, or an ultrasonic motor. The ball
15
screw 1210 and the coupling 1220 are non-limiting examples
of components. The information processing apparatus
according to the present disclosure can also be applied to
mechanical apparatuses including a wide variety of
5 components such as speed reducers, guides, belts, screws,
pumps, bearings, and housings.
[0032] Next, the operation of the information processing
apparatus 1000 according to the first embodiment will be
described in detail with reference to drawings and formulas.
10 First, sensor data obtained from the current sensor 1232
when the mechanical apparatus 1008 is driven using the
servomotor 1230 will be described with reference to FIG. 5.
FIG. 5 is a diagram illustrating time-series waveforms of
motor speed and motor torque in the first embodiment.
15 [0033] The signal directly obtained from the current
sensor 1232 is a measurement signal of three-phase currents
flowing through the motor 1009. The motor torque can be
calculated by properly converting the three-phase currents.
Note that the three-phase current value detected by the
20 current sensor 1232 may be used as sensor data for
diagnosis. The signal obtained from the encoder 1233 is
position information indicating the rotation angle of the
motor 1009. Therefore, through processing such as
numerical differentiation on the position information, the
25 rotation speed of the motor 1009 is obtained as the motor
speed. Thus, instead of the signal obtained from the
current sensor 1232, the signal obtained from the encoder
1233 may be used as sensor data for diagnosis.
[0034] The horizontal axis in FIGS. 5(a) and 5(b)
30 represents time. FIG. 5(a) illustrates the time-series
waveform of the motor speed, and FIG. 5(b) illustrates the
time-series waveform of the motor torque. These waveforms
are the waveforms of the motor 1009 in a stationary state
16
as well as in the subsequent single drive operation called
positioning. The sampling period which is the acquisition
cycle of the waveform in FIG. 5(b) is 0.5 milliseconds, and
the acquisition time is 6 seconds. Therefore, the number
5 of data points N, i.e. the number of points of sensor data,
is 12000 points (= 6000 milliseconds ÷ 0.5 milliseconds).
Note that the sampling period, the acquisition time, and
the number of data points N shown here are only examples,
and are not limited to these numerical values. In this
10 example, positioning is performed once, but positioning may
be performed multiple times. The operation in the case of
positioning the motor 1009 described herein is only an
example, and is not limited to this example. The present
embodiment can also be applied to control other than
15 positioning, for example, speed control or torque control.
[0035] The motor speed in FIG. 5(a) will be described.
First, between time Tr0 and time Tr1, the motor 1009 is
stationary, and the motor speed is zero [r/min]. This
period is denoted by “Ts1”. Subsequently, the motor 1009
20 accelerates from time Tr1 to time Tr2, and the motor speed
increases to 500 [r/min]. This period is denoted by “Ta”.
Subsequently, the motor speed remains constant at 500
[r/min] from time Tr2 to time Tr3. This period is denoted
by “Te”. Subsequently, the motor 1009 decelerates from
25 time Tr3 to time Tr4, and the motor speed decreases to zero
[r/min]. This period is denoted by “Td”. Subsequently,
between time Tr4 and time Tr5, the motor 1009 is stationary,
and the motor speed remains zero [r/min]. This period is
denoted by “Ts2”. The above operation is depicted as a
30 trapezoidal waveform as illustrated in FIG. 5(a). Note
that such a trapezoidal waveform is a non-limiting example.
The waveform of the motor speed may have any shape as long
as the state of the mechanical apparatus 1008 can be
17
obtained from the sensor data associated with the drive of
the motor 1009.
[0036] Next, the motor torque in FIG. 5(b) will be
described. In period Ts1, the motor 1009 is stationary,
5 and the motor torque required for the operation of the
motor 1009 is approximately zero [Nm]. In the subsequent
period Ta, torque for accelerating the mechanical apparatus
1008 is required, and a motor torque larger than that in
period Ts1 is generated. Note that if the mechanical
10 apparatus 1008 has viscous friction due to the influence of
viscous friction or the like, the required torque may
gradually increase according to the speed as illustrated in
FIG. 5. In the subsequent period Te, the speed of the
mechanical apparatus 1008 does not change, and a
15 substantially constant motor torque is generated. In the
subsequent period Td, torque for decelerating the
mechanical apparatus 1008 is required, and the motor torque
is generated in the negative direction as viewed from the
motor torque in period Te. In the last period Ts2, the
20 motor 1009 is stationary, and the motor torque required for
the operation of the motor 1009 is approximately zero [Nm].
[0037] The motor torque described above is a torque
required for the almost ideal operation of the mechanical
apparatus 1008. In practice, however, varying degrees of
25 noise are generated in the motor torque as illustrated in
FIG. 5(b) due to the influence of electrical vibration,
mechanical vibration, friction, or the like. It is known
that as components of the mechanical apparatus 1008 such as
the ball screw shaft 1224, the guide 1213, and the coupling
30 1220 deteriorate, the magnitude of the friction or
vibration changes, and the influence of the friction or
vibration appears in sensor data including the motor torque.
Therefore, sensor data is analyzed with a statistical
18
method, and some indices called features are calculated to
detect anomaly of the apparatus.
[0038] The sensor data acquisition unit 1001 acquires
sensor signals sequentially generated in time series from
5 the sensor 1010, and generates digitized sensor data. The
generated sensor data is passed to the internal variable
calculation unit 1003 and/or the feature calculation unit
1004. When generating sensor data, the sensor data
acquisition unit 1001 may execute filter processing as
10 necessary for removing noise irrelevant to the state of the
mechanical apparatus 1008.
[0039] Next, the function and operation of the internal
variable holding unit 1002, the internal variable
calculation unit 1003, the feature calculation unit 1004,
15 and the initialization processing unit 1005 will be
described in detail using several types of features as
examples.
[0040] First, notation of time and sensor data in
mathematical formulas will be described. The time point at
20 which the acquisition of sensor data for use in feature
calculation is started is referred to as the “first time
point”. A total of N pieces of sensor data are obtained
from the first time point to the N-th time point. Here,
reference character “N” is an integer of two or more. The
25 time point at which a j-th piece of sensor data is acquired
is referred to as the “j-th time point”. Here, reference
character “j” is an integer of one to N−1. The sensor data
obtained at the j-th time point is referred to as “xj”.
For the sake of simplicity, the following description
30 assumes that sensor data is acquired at predetermined time
intervals. Needless to say, sensor data may be acquired
irregularly.
[0041] The internal variable holding unit 1002 holds the
19
internal variable at one time point before. The number of
types of internal variables is not limited to one, and
multiple types of internal variables may be held according
to the feature. The smaller the number of types of
5 internal variables to be held is than the number of timeseries pieces of sensor data from which the feature is
calculated, the higher the memory reduction effect is. The
internal variable holding unit 1002 may hold the feature
itself as a type of internal variable.
10 [0042] The initialization processing unit 1005 executes
initialization processing of setting the held internal
variable to an initial value. The initial value is a value
set in the initialization processing. For example, the
initialization processing unit 1005 performs the
15 initialization processing at the first time point, when the
power of the information processing apparatus 1000 is
turned on. The first time point is a time point at which
the sensor data acquisition unit 1001 acquires sensor data
first. The initial value may be simply set to zero as
20 described later, but need not necessarily be zero. For
example, an upper limit and a lower limit may be defined
near a proper initial value, and the initial value may be
appropriately set between the upper limit and the lower
limit. Note that some of the features to be described
25 later may not be calculated stably if the initial values of
the internal variables and the features are set to
extremely small values. In this case, the calculation is
stabilized by setting the initial values to a non-zero
value. In addition, some features have a non-zero steady30 state value with respect to sensor data. In the case of
using such a feature, the convergence of calculation can be
accelerated by setting the initial value to an assumed
value of the feature. For example, kurtosis, which is one
20
of the features described in the present embodiment, is
known to have a value of about three with respect to sensor
data having a property close to a normal distribution.
Therefore, setting the initial value of the kurtosis to
5 three allows for calculation with quick convergence for
many types of sensors. Hereinafter, using specific
examples of features: mean, variance, standard deviation,
root mean square, skewness, kurtosis, maximum, minimum,
peak value, peak-peak value, and peak factor; a sequential
10 calculation method for each feature will be described
together with a procedure for deriving the feature. Note
that the sequential calculation of each feature may be
hereinafter simply referred to as “sequential calculation”.
[0043] First, a calculation procedure regarding the
15 sequential calculation of the mean m as the simplest
example of a feature will be described. The mean mj for
the sensor data x1 to xj from the first time point to the
j-th time point is defined by the following known Formula
(1). This Formula (1) is also called the arithmetic mean
20 or arithmetic average.
[0044] Formula 1:
[0045] As described above, the sensor data at the i-th
time point is xj. Therefore, the mean m3 at the third time
25 point can be expressed as Formula (2) below.
[0046] Formula 2:
[0047] Here, the time-series sensor data from the first
time point to the third time point is not stored in the
30 memory 1292, and information at the third time point is
held as some internal variables. Now, consider a method of
21
computing the mean at the fourth time point based on the
internal variables at the third time point and the sensor
data at the fourth time point. First, the mean m4 at the
fourth time point can be expressed as Formula (3) below
5 according to Formula (1) as a definition formula.
[0048] Formula 3:
[0049] In the case of calculating the mean m4 using
Formula (3), the time-series sensor data from the first to
10 fourth time points are used, and a memory for holding the
sensor data equivalent to the number of past samples is
required. However, if the mean m3 at the third time point
and the variable L3=3 representing the number of points of
sensor data to the third time point are held as internal
15 variables, the mean m4 at the fourth time point can be
expressed by Formula (4) below.
[0050] Formula 4:
[0051] Substituting Formula (2) and L3=3 into Formula
20 (4) gives the result matching the result of Formula (3) in
which the mean m4 is computed with the definition formula.
[0052] In a generalized form, the mean mj+1 at the (j+1)-
th time point can be expressed as Formula (5) below.
[0053] Formula 5:
22
[0054] That is, the mean mj+1 at the (j+1)-th time point
is sequentially computed with Formula (6) below.
[0055] Formula 6:
5
[0056] Here, the variable Lj+1 at the (j+1)-th time point
is sequentially computed with Formula (7) below.
[0057] Formula 7:
10 [0058] Holding the variable at the j-th time point in
Formula (7) is equivalent to holding information at time j
during sequential calculation. The sensor data xj+1 is
newly acquired at the (j+1)-th time point. As a result,
the internal variables which should be held at the j-th
15 time point to compute the mean mj+1 at the (j+1)-th time
point are the mean mj and the variable Lj.
[0059] In the calculation of the internal variables at
the second time point, the initial values L1 and m1 of the
variable L and the mean m are preferably set to zero for
20 ease, or are preferably determined according to the value
of sensor data at the initialization processing in order to
avoid fluctuations immediately after the initialization
processing. For example, in the case of using the mean as
a feature, setting the initial value L1 of the variable L
23
to zero and the initial value m1 of the mean m to x1 gives
the result matching Formula (1) as the definition formula.
[0060] Next, a calculation procedure regarding the
sequential calculation of the variance v as an example of a
5 feature will be described. The variance vj for the sensor
data x1 to xj from the first time point to the j-th time
point is defined by the following known Formula (8).
[0061] Formula 8:
10 [0062] Note that the unbiased variance with a
denominator of j−1 may be used instead of Formula (8), in
which case the derivation can be performed with a similar
procedure.
[0063] Here, regarding sensor data as a random variable,
15 the variance v thereof is known to be expressed by Formula
(9) below.
[0064] Formula 9:
[0065] In Formula (9), symbol “E[]” represents the
20 expected value of the random variable in square brackets.
Therefore, the variance vj at the j-th time point indicated
in Formula (8) can be expressed by Formula (10) below using
Formula (9).
[0066] Formula 10:
25
[0067] Therefore, the variance vj+1 for the sensor data
x1 to xj+1 from the first time point to the (j+1)-th time
point can be expressed by Formula (11) below.
[0068] Formula 11:
24
[0069] Transforming Formula (11), the variance vj+1 can
be expressed by Formula (12) below.
5 [0070] Formula 12:
[0071] Then, Formula (13) below is derived from Formula
(10) and Formula (12).
[0072] Formula 13:
10
[0073] Therefore, from Formula (13), the variance vj+1 at
the (j+1)-th time point is sequentially computed with
Formula (14) below.
[0074] Formula 14:
15
[0075] As mentioned above, the variable Lj+1 at the
(j+1)-th time point is sequentially computed with Formula
(7) described above. In addition, the mean mj+1 at the
(j+1)-th time point is sequentially computed with Formula
20 (6) described above. Then, the sensor data xj+1 at the
(j+1)-th time point is newly acquired at the (j+1)-th time
point. As a result, the internal variables which should be
held at the j-th time point to compute the variance vj+1 at
the (j+1)-th time point are the variable Lj, the variance
25 vj, and the mean mj. Note that the standard deviation sj
may be held instead of the variance vj.
25
[0076] In the calculation of the internal variables at
the second time point, the initial values L1 and v1 of the
variable L and the variance v are preferably set to zero
for ease, or are preferably determined according to, for
5 example, the value of sensor data at the initialization
processing in order to avoid fluctuations immediately after
the initialization processing. However, if the initial
value v1 of the variance v is set to a value close to zero,
the sequential calculation of a different feature to be
10 described later in which the variance v appears in the
denominator cannot be stable. In some cases, therefore, it
is preferable to use a value somewhat larger than zero as
the initial value.
[0077] Next, a calculation procedure regarding the
15 sequential calculation of the standard deviation s as an
example of a feature will be described. The standard
deviation sj for the sensor data x1 to xj from the first
time point to the j-th time point is defined by the
following known Formula (15).
20 [0078] Formula 15:
[0079] That is, the standard deviation sj is instantly
computed from the variance vj sequentially computed with
the above procedure. Therefore, the internal variables
25 which should be held to sequentially calculate the standard
deviation sj are the same as those for the variance vj.
[0080] Next, a calculation procedure regarding the
sequential calculation of the root mean square r as an
example of a feature will be described. The root mean
30 square rj for the sensor data x1 to xj from the first time
point to the j-th time point is defined by the following
known Formula (16). This is also called RMS (root mean
26
square) or effective value.
[0081] Formula 16:
[0082] Therefore, the root mean square rj+1 for the
5 sensor data from the first time point to the (j+1)-th time
point can be expressed as Formula (17) below.
[0083] Formula 17:
[0084] From Formula (16) and Formula (17), the square
rj+1
2 10 of the root mean square can be expressed as Formula
(18) below.
[0085] Formula 18:
[0086] From Formula (18), the square rj+1
2 of the root
15 mean square at the (j+1)-th time point is sequentially
computed with Formula (19) below.
[0087] Formula 19:
[0088] As mentioned above, the variable Lj+1 at the
20 (j+1)-th time point is sequentially computed with Formula
(7) described above. In addition, the sensor data xj+1 at
27
the (j+1)-th time point is newly acquired at the (j+1)-th
time point. As a result, the internal variables which
should be held at the j-th time point to compute the square
rj
2 of the root mean square at the (j+1)-th time point are
the square rj
2 5 of the root mean square and the variable Lj.
[0089] In the calculation of the internal variables at
the second time point, the initial values L1 and r1
2 of the
variable L and the square rj
2 of the root mean square are
preferably set to zero for ease, or are preferably
10 determined according to, for example, the value of sensor
data at the initialization processing in order to avoid
fluctuations immediately after the initialization
processing.
[0090] Next, a calculation procedure regarding the
15 sequential calculation of the skewness w as an example of a
feature will be described. Regarding the sensor data x as
a random variable and using the mean m and the standard
deviation s of the random variable x, the skewness w is
defined by the following known Formula (20).
20 [0091] Formula 20:
[0092] As described above, symbol “E[]” represents the
expected value of the random variable in square brackets.
Formula (20) is developed and rearranged into Formula (21)
25 below.
[0093] Formula 21:
28
[0094] The transformation in Formula (21) uses the
property that the expected value E[x] of the sensor data x
is equal to the mean m.
[0095] Next, consider the skewness wj for the sensor
5 data x1 to xj from the first time point to the j-th time
point. In Formula (21), using a variable Aj to represent
the expected value E[x3] of the first numerator term on the
right side and a variable Bj to represent the expected
value of the second numerator term on the right side, the
10 skewness wj can be expressed as Formula (22) below.
[0096] Formula 22:
[0097] In Formula (22), the standard deviation sj in the
denominator on the right side can be sequentially
15 calculated with Formula (15) described above.
[0098] Next, consider the sequential calculation
regarding the variables Aj and Bj at the j-th time point in
Formula (22). First, the variable Aj at the j-th time
point can be expressed by Formula (23) below.
20 [0099] Formula 23:
[0100] Similarly, the variable Aj+1 at the (j+1)-th time
point can be expressed by Formula (24) below.
[0101] Formula 24:
25
[0102] From Formula (23) and Formula (24), the variable
Aj+1 can be expressed as Formula (25) below.
[0103] Formula 25:
29
[0104] Therefore, from Formula (25), the variable Aj+1 at
the (j+1)-th time point is sequentially computed with
Formula (26) below.
5 [0105] Formula 26:
[0106] As mentioned above, the variable Lj+1 at the
(j+1)-th time point is sequentially computed with Formula
(7) described above. In addition, the sensor data xj+1 at
10 the (j+1)-th time point is newly acquired at the (j+1)-th
time point. Here, the internal variables which should be
held at the j-th time point to compute the variable Aj+1 at
the (j+1)-th time point are the variable Aj and the
variable Lj.
15 [0107] The variable Bj at the j-th time point can be
expressed by Formula (27) below.
[0108] Formula 27:
[0109] Formula (27) indicates that the variable Bj
matches the square rj
2 20 of the root mean square described
above, which is sequentially computed with Formula (19)
described above. Therefore, the skewness wj for the sensor
30
data x1 to xj from the first time point to the j-th time
point is computed with Formula (28) below.
[0110] Formula 28:
5 [0111] Similarly, the skewness wj+1 for the sensor data
xj+1 from the first time point to the (j+1)-th time point is
computed with Formula (29) below.
[0112] Formula 29:
10 [0113] As mentioned above, the variable Aj+1 at the
(j+1)-th time point is sequentially computed with Formula
(26) described above. In addition, the mean mj+1 at the
(j+1)-th time point is sequentially computed with Formula
(6) described above. Then, the square rj
2 of the root mean
15 square at the (j+1)-th time point is sequentially computed
with Formula (19) described above. In addition, the
standard deviation sj+1 at the (j+1)-th time point is
sequentially computed with Formula (15) described above.
Then, the sensor data xj+1 at the (j+1)-th time point is
20 newly acquired at the (j+1)-th time point. As a result,
the internal variables which should be held at the j-th
time point to compute the skewness wj+1 for the sensor data
xj+1 from the first time point to the (j+1)-th time point
are the variables Aj and Lj, the mean mj, the square rj
2 of
25 the root mean square, and the standard deviation sj. The
variance vj may be held instead of the standard deviation
sj. In addition, the root mean square rj may be held
instead of the square rj
2 of the root mean square.
[0114] Note that a formula that produces a similar
30 calculation result is also obtained by holding the skewness
31
wj instead of the variable Aj for sequential calculation,
which is not described here because the formula is
complicated. In the calculation of the internal variables
at the second time point, the initial values of the
variables Aj and Lj, the mean mj, the square rj
2 5 of the root
mean square, and the standard deviation sj are preferably
set to zero for ease, or are preferably determined
according to, for example, the value of sensor data at the
initialization processing in order to avoid fluctuations
10 immediately after the initialization processing.
[0115] Next, a calculation procedure regarding the
sequential calculation of the kurtosis k as an example of a
feature will be described. Regarding the sensor data x as
a random variable and using the standard deviation sj of
15 the random variable x, the kurtosis k is defined by the
following known Formula (30).
[0116] Formula 30:
[0117] As described above, symbol “E[]” represents the
20 expected value of the random variable in square brackets.
Note that in the calculation method described herein, the
kurtosis for the random variable having a normal
distribution is three. There is a definition different
from this definition: applying a bias of “−3” to the right
25 side of Formula (30) so as to make the kurtosis for a
normal distribution zero. In this case, it is possible to
derive a formula corresponding to the formula below with a
similar procedure.
[0118] Formula (30) is developed and rearranged into
30 Formula (31) below.
[0119] Formula 31:
32
[0120] The transformation in Formula (31) uses the
property that the expected value E[x] of the sensor data x
is equal to the mean m.
5 [0121] Next, consider the kurtosis kj for the sensor
data x1 to xj from the first time point to the j-th time
point. In Formula (31), the expected value E[x4] of the
first numerator term on the right side is represented by a
variable Cj. In addition, the expected value of the second
10 term and the expected value of the third term of the
numerator on the right side can be expressed by the
variables Aj and Bj, respectively. Therefore, the kurtosis
kj can be expressed by Formula (32) below.
[0122] Formula 32:
15
[0123] In Formula (32), the standard deviation sj and
the variables Aj and Bj can be sequentially calculated
respectively with Formulas (15), (26), and (27) described
above.
20 [0124] Next, consider the sequential calculation
regarding the variable Cj at the j-th time point in Formula
(32). First, the variable Cj at the j-th time point can be
expressed by Formula (33) below.
[0125] Formula 33:
25
[0126] Similarly, the variable Cj+1 at the (j+1)-th time
33
point can be expressed by Formula (34) below.
[0127] Formula 34:
[0128] From Formula (33) and Formula (34), the variable
5 Cj+1 can be expressed as Formula (35) below.
[0129] Formula 35:
[0130] From Formula (35), the variable Cj+1 at the (j+1)-
th time point is sequentially computed with Formula (36)
10 below.
[0131] Formula 36:
[0132] Here, as indicated by Formula (27), the variable
Bj matches the square rj
2 of the root mean square described
15 above. Therefore, the kurtosis kj for the sensor data x1 to
xj from the first time point to the j-th time point is
computed with Formula (37) below.
[0133] Formula 37:
20 [0134] Similarly, the kurtosis kj+1 for the sensor data
x1 to xj+1 from the first time point to the (j+1)-th time
point is computed with Formula (38) below.
34
[0135] Formula 38:
[0136] As mentioned above, the variable Cj+1 at the
(j+1)-th time point is sequentially computed with Formula
5 (36) described above. In addition, the variable Aj+1 at the
(j+1)-th time point is sequentially computed with Formula
(26) described above. Then, the mean mj+1 at the (j+1)-th
time point is sequentially computed with Formula (6)
described above. In addition, the square rj
2 of the root
10 mean square at the (j+1)-th time point is sequentially
computed with Formula (19) described above. In addition,
the standard deviation sj+1 at the (j+1)-th time point is
sequentially computed with Formula (15) described above.
Then, the sensor data xj+1 at the (j+1)-th time point is
15 newly acquired at the (j+1)-th time point. As a result,
the internal variables which should be held at the j-th
time point to compute the kurtosis kj+1 for the sensor data
xj+1 from the first time point to the (j+1)-th time point
are the variables Aj, Lj, and Cj, the mean mj, the square rj
2
20 of the root mean square, and the standard deviation sj.
The variance vj may be held instead of the standard
deviation sj. In addition, the root mean square rj may be
held instead of the square rj
2 of the root mean square.
[0137] Note that in the calculation of the internal
25 variables at the second time point, the initial values of
the variables Aj, Lj, and Cj, the mean mj, the square rj
2 of
the root mean square, and the standard deviation sj are
preferably set to zero for ease, or are preferably
determined according to, for example, the value of sensor
30 data at the initialization processing in order to avoid
fluctuations immediately after the initialization
35
processing. The kurtosis is known to have a value of about
three given that the sensor data has a property close to a
normal distribution. Therefore, the initial value k1 of
the kurtosis k may be three.
5 [0138] Next, a calculation procedure regarding the
sequential calculation of the maximum as an example of a
feature will be described. The maximum aj for the sensor
data x1 to xj from the first time point to the j-th time
point is defined by the following known Formula (39).
10 [0139] Formula 39:
[0140] The sequential calculation method for the maximum
a is known to be easily implemented with the following
method. The maximum aj at the j-th time point is held, and
15 the larger one of the sensor data xj at the (j+1)-th time
point and the maximum aj at the j-th time point is held as
the maximum aj+1 at the (j+1)-th time point. That is, the
maximum aj+1 at the (j+1)-th time point can be sequentially
calculated with Formula (40) below.
20 [0141] Formula 40:
[0142] Note that for the initial value of the maximum,
that is, the maximum a1, the sensor data x1 at the same
time is preferably substituted.
25 [0143] Next, a calculation procedure regarding the
sequential calculation of the minimum as an example of a
feature will be described. The minimum nj for the sensor
data x1 to xj from the first time point to the j-th time
point is defined by the following known Formula (41).
30 [0144] Formula 41:
[0145] The sequential calculation method for the minimum
36
n is known to be easily implemented with the following
method. The minimum nj at the j-th time point is held, and
the smaller one of the sensor data xj at the (j+1)-th time
point and the minimum nj at the j-th time point is held as
5 the minimum nj+1 at the (j+1)-th time point. That is, the
minimum nj+1 at the (j+1)-th time point can be sequentially
calculated with Formula (42) below.
[0146] Formula 42:
10 [0147] Note that for the initial value of the minimum,
that is, the minimum n1, the sensor data x1 at the same
time is preferably substituted.
[0148] Next, a calculation procedure regarding the
sequential calculation of the peak value as an example of a
15 feature will be described. Although there are several
definitions of the term “peak value”, this specification
defines the peak value pj from the first time point to the
j-th time point by Formula (43) below.
[0149] Formula 43:
20
[0150] In the definition of Formula (43), the peak value
is the largest absolute value among the sensor data x1 to
xj. The sequential calculation method for the peak value
can be implemented with the following method. The peak
25 value pj at the j-th time point is held, and the larger one
of the sensor data xj at the (j+1)-th time point and the
peak value pj at the j-th time point is held as the peak
value pj+1 at the (j+1)-th time point. That is, the peak
value pj+1 at the (j+1)-th time point can be sequentially
30 calculated with Formula (44) below.
[0151] Formula 44:
37
[0152] For the initial value of the peak value, that is,
the peak value p1, the absolute value |x1| of the sensor
data at the same time is preferably substituted.
Alternatively, if the maximum aj and the minimum nj at the
5 j-th time point are obtained using Formula (40) and Formula
(42) described above, the peak value can also be computed
with Formula (45) below.
[0153] Formula 45:
10 [0154] Similarly, if the maximum aj+1 and the minimum nj+1
at the (j+1)-th time point are obtained, the peak value can
be computed with Formula (46) below.
[0155] Formula 46:
15 [0156] As a result, the internal variable which should
be held at the j-th time point to compute the peak value
pj+1 at the (j+1)-th time point is the peak value pj. Note
that instead of the peak value pj, the maximum aj and the
minimum nj may be held.
20 [0157] Next, a calculation procedure regarding the
sequential calculation of the peak-peak value as an example
of a feature will be described. The peak-peak value is the
difference between the maximum and the minimum. The peakpeak value may also be called peak-to-peak.
25 [0158] The peak-peak value ppj for the sensor data x1 to
xj from the first time point to the j-th time point is
defined by the following known Formula (47).
[0159] Formula 47:
30 [0160] That is, the peak-peak value ppj is instantly
computed by sequentially calculating the maximum aj and the
minimum nj using Formula (40) and Formula (42) described
38
above.
[0161] Similarly, if the maximum aj+1 and the minimum nj+1
at the (j+1)-th time point are obtained, the peak-peak
value ppj+1 can be computed with the following known Formula
5 (48).
[0162] Formula 48:
[0163] As a result, the internal variables which should
be held at the j-th time point to compute the peak-peak
10 value ppj+1 at the (j+1)-th time point are the maximum aj
and the minimum nj.
[0164] Next, a calculation procedure regarding the
sequential calculation of the peak factor as an example of
a feature will be described. The peak factor prj for the
15 sensor data x1 to xj from the first time point to the j-th
time point is defined by Formula (49) below.
[0165] Formula 49:
[0166] As indicated in Formula (49), the peak factor prj
20 is a value obtained by dividing the peak value pj by the
root mean square rj. The peak factor prj may also be called
peak-to-RMS or crest factor. Note that if it is clear that
sensor data takes a value biased in the positive direction,
the maximum aj may be used instead of the peak value pj.
25 [0167] Similarly, the peak factor prj+1 for the sensor
data x1 to xj from the first time point to the (j+1)-th
time point is computed with Formula (50) below.
[0168] Formula 50:
30 [0169] That is, the peak factor prj+1 is instantly
computed by sequentially calculating the peak value pj+1
39
using Formula (44) or Formula (45) described above, and
sequentially calculating sequentially calculating the root
mean square rj+1 using Formula (19).
[0170] As a result, the internal variables which should
5 be held at the j-th time point to compute the peak factor
prj+1 at the (j+1)-th time point are the peak value pj and
the square rj
2 of the root mean square. Note that instead
of the peak value pj, the maximum aj and the minimum nj may
be held. In addition, the root mean square rj may be held
instead of the square rj
2 10 of the root mean square.
[0171] As described above, the internal variable
calculation unit 1003 sequentially calculates the internal
variables for calculating each feature. The internal
variable calculation unit 1003 performs this sequential
15 calculation from j=1 to j=N−1. Consequently, the feature
calculation unit 1004 can determine the features
corresponding to the sensor data x1 to xj at the first to
N-th time points. Note that the update formulas and the
internal variables held by the internal variable holding
20 unit 1002 vary depending on the type of feature. What is
common to all the types of features is that the internal
variable holding unit 1002 holds internal variables, the
internal variable calculation unit 1003 sequentially
calculates internal variables, and the feature calculation
25 unit 1004 calculates a feature based on the internal
variables.
[0172] Next, results of sequentially calculating
features of the motor torque, which is one type of sensor
data, using the above-described method will be described
30 with reference to FIG. 6. FIG. 6 is a diagram illustrating
time-series waveforms of the motor torque and various types
of features in the first embodiment. Note that hereinafter,
the notation of symbols assigned to features and the like
40
is appropriately omitted in order to avoid the complexity
of description.
[0173] FIG. 6(a) illustrates the waveform of the motor
torque similar to that illustrated in FIG. 5(b). The
5 horizontal axis in FIGS. 6(a) and 6(b) represents time.
FIG. 6(a) also illustrates the time-series waveforms of the
mean, the standard deviation, the root mean square (RMS),
the maximum, and the minimum having the same unit [Nm] as
the motor torque, among the dimensional features. The
10 peak-peak value, which is the difference between the
maximum and the minimum, is not illustrated for simplicity.
The peak value, which indicates the one with a larger
absolute value of the maximum and the minimum, is not
illustrated for simplicity. The variance, which is the
15 square of the standard deviation, is not illustrated
because of the difference in unit.
[0174] FIG. 6(b) illustrates the time-series waveforms
of the skewness, the kurtosis, and the peak factor, which
are dimensionless features, i.e. features having no unit.
20 Next, the behavior of each feature illustrated in FIGS.
6(a) and 6(b) will be described.
[0175] The mean is approximately zero in period Ts1,
gradually increases in period Ta, slightly decreases in
period Te, gradually decreases in period Td, and slightly
25 decreases in period Ts2.
[0176] The standard deviation is a substantially
constant small value in period Ts1, gradually increases in
period Ta, slightly decreases in period Te, gradually
increases in period Td, and slightly decreases in period
30 Ts2.
[0177] The root mean square is a substantially constant
small value in period Ts1, gradually increases in period Ta,
slightly decreases in period Te, is substantially constant
41
in period Td, and slightly decreases in period Ts2.
[0178] The maximum is a substantially constant small
positive value in period Ts1, increases every time the
motor torque exceeds the past maximum in period Ta, and is
5 constant in periods Te, Td, and Ts2.
[0179] The minimum is a substantially constant small
negative value in period Ts1, is constant in periods Ta and
Te, decreases every time the motor torque exceeds the past
minimum in period Td, and is constant in period Ts2.
10 [0180] The skewness is approximately zero in period Ts1,
sharply increases to a large positive value at time Tr1 at
which period Ta starts, then gradually decreases to a small
value in period Ta, slightly increases in period Te,
slightly decreases in period Td, and slightly increases in
15 period Ts2.
[0181] The kurtosis increases from about two to about
three in period Ts1, sharply increases to a large positive
value at time Tr1 at which period Ta starts, then gradually
decreases to a small value in period Ta, slightly increases
20 in period Te, slightly increases and then decreases in
period Td, and slightly increases in period Ts2.
[0182] The peak factor increases from about two to about
three in period Ts1, sharply increases to a large positive
value at time Tr1 at which period Ta starts, then gradually
25 decreases to a small value in period Ta, slightly increases
in period Te, is almost constant in period Td, and slightly
increases in period Ts2.
[0183] The features at each time point illustrated in
FIGS. 6(a) and 6(b) are the result of the sequential
30 calculation of the features with respect to the motor
torque at time points earlier than each time point.
Therefore, taking the mean as an example, the value
computed through batch calculation by holding the motor
42
torque of the entire period (Ts1+Ta+Te+Td+Ts2) in FIG. 6(a)
matches the sequentially-computed value at time Tr5, which
is the final time in FIG. 6(a).
[0184] Note that in FIG. 6, in order to make the
5 transition of the features more likely to change, the
feature calculation unit 1004 also calculates each feature
in every acquisition cycle of sensor data. Here, in the
case of calculating a feature for the sensor data over a
certain period, the internal variable calculation unit 1003
10 needs to sequentially calculate the internal variables in
every acquisition cycle of sensor data. In contrast, in
the case of using a feature that does not include itself as
an internal variable, such as the skewness expressed by
Formula (29) or the kurtosis expressed by Formula (38), for
15 example, the feature calculation unit 1004 may calculate
the feature as necessary. An example of such a case is
that the computation of a feature is required at only one
point with respect to the sensor data over the period from
time Tr0 to time Tr5, and meanwhile the transition of the
20 feature is unnecessary. In such a case, the feature
calculation unit 1004 may be configured to calculate the
feature only once at time Tr5, when the number of data
points N of sensor data reaches 12000. This configuration
enables a reduction in the calculation load of the
25 information processing apparatus 1000.
[0185] Next, a procedure in which the state diagnosis
unit 1006 diagnoses the state of the mechanical apparatus
1008 using features will be described with reference to FIG.
7. FIG. 7 is a diagram illustrating an example of changes
30 in feature over time in the first embodiment. FIG. 7
illustrates a result of periodically plotting a feature
calculated with the above-described method. The term
“periodically” means, for example, every month. The
43
horizontal axis in FIG. 7 is time and represents the
operating time of the mechanical apparatus 1008.
[0186] The state diagnosis unit 1006 provides a
threshold Fth1 for the feature, and diagnoses the
5 mechanical apparatus 1008 as having an anomaly when the
feature exceeds the threshold Fth1. The feature may be any
of the features described above. In addition, a plurality
of features may be calculated, and an individual threshold
may be set for each feature.
10 [0187] In FIG. 7, time Tta0 is the operation start time.
The feature keeps smaller than the threshold Fth1 while
fluctuating to some extent from time Tta0 to before time
Tta1. When the feature is less than the threshold Fth1,
the state diagnosis unit 1006 diagnoses the mechanical
15 apparatus 1008 as normal, and outputs the diagnosis result.
[0188] In the example of FIG. 7, the average value of
the feature gradually increases with the lapse of time, and
the feature exceeds the threshold Fth1 at time Tta1. In
this case, the state diagnosis unit 1006 diagnoses the
20 mechanical apparatus 1008 as having an anomaly at time Tta1,
and outputs the diagnosis result.
[0189] There are various ways of determining the
threshold Fth1. For example, the threshold Fth1 may be
determined based on the feature associated with a past
25 anomaly in another mechanical apparatus. In addition, the
threshold Fth1 may be determined with reference to the
feature obtained immediately after the start of operation
of the mechanical apparatus 1008. In addition, the
threshold Fth1 may be dynamically set. For example, a
30 plurality of mechanical apparatuses 1008 may be operated,
and meanwhile the features thereof may be individually
calculated, so that the threshold Fth1 can be periodically
changed by considering the variation in feature between the
44
apparatuses. In addition, the threshold Fth1 may be
determined based on the feature computed by a simulation or
the like in which the properties of the mechanical
apparatus 1008 are considered. In the present embodiment,
5 the threshold Fth1 represents the upper limit of a normal
state. However, if a feature that is more likely to
indicate anomaly as the value decreases is used, the lower
limit of a normal state may be set as the threshold Fth1.
Furthermore, two thresholds consisting of the upper limit
10 and the lower limit may be used in combination. In
addition, the number of diagnosis results need not
necessarily be one, and the diagnosis may be made on a
plurality of features, and a diagnosis result may be output
for each feature.
15 [0190] In the present embodiment, the mechanical
apparatus 1008 is diagnosed as an anomaly once the feature
exceeds the threshold Fth1, but this method is only an
example. In order to reduce wrong diagnosis, or erroneous
determination, due to the influence of noise or the like, a
20 statistical method such as an examination (statistical
test) based on the distribution of anomaly degrees in a
certain period may be adopted.
[0191] The flowchart illustrated in FIG. 8 is derived
from the processing described above. FIG. 8 is a flowchart
25 for explaining an information processing method according
to the first embodiment.
[0192] First, the sensor data acquisition unit 1001
acquires, as sensor data from the sensor 1010 that measures
a physical quantity of the mechanical apparatus 1008, the
30 measurement value of the physical quantity at each time
point from the first time point to the N-th time point (N
is an integer of two or more) (step S101). The internal
variable holding unit 1002 holds a smaller number of values
45
of an internal variable than N, the internal variable being
sequentially calculated in time series based on the sensor
data (step S102). The internal variable calculation unit
1003 calculates the internal variable corresponding to the
5 (j+1)-th time point (j is an integer of one to N−1) based
on the sensor data at the (j+1)-th time point and the
internal variable corresponding to the j-th time point
(step S103). The feature calculation unit 1004 calculates
a feature by extracting a statistical characteristic
10 included in the sensor data from the first time point to
the N-th time point based on the internal variable at the
N-th time point (step S104). The state diagnosis unit 1006
makes a diagnosis of the state of the mechanical apparatus
based on the feature (step S105).
15 [0193] Note that the flowchart illustrated in FIG. 8 may
include another step of executing initialization processing
of setting the internal variable at the first time point to
a value between a preset maximum and a preset minimum.
[0194] As described above, according to the information
20 processing apparatus in the first embodiment, the sensor
data acquisition unit acquires measurement values of a
physical quantity of a mechanical apparatus measured by a
sensor, and holds, as sensor data, measurement values from
a first time point to an N-th time point (N is an integer
25 of two or more) among the measurement values. The internal
variable holding unit holds a smaller number of values of
an internal variable than the N, the internal variable
being sequentially calculated in time series based on the
sensor data. The internal variable calculation unit
30 calculates the internal variable corresponding to a (j+1)-
th time point (j is an integer of one to N−1) based on the
sensor data at the (j+1)-th time point and the internal
variable corresponding to a j-th time point. The feature
46
calculation unit calculates a feature by extracting a
statistical characteristic included in the sensor data from
the first time point to the N-th time point based on the
internal variable at the N-th time point. The information
5 processing apparatus thus configured does not need to hold
the sensor data from the first time point to the N-th time
point by holding a smaller number of values of an internal
variable than N. This brings about an unprecedented
remarkable effect that feature calculation processing can
10 be performed without using a computer having a high
calculation capability and a computer having a large
storage capacity.
[0195] In addition, the information processing apparatus
according to the first embodiment includes a state
15 diagnosis unit that makes a diagnosis of the state of the
mechanical apparatus based on the feature. This makes it
possible to perform information processing for diagnosing
the state of the mechanical apparatus without using a
computer having a high calculation capability and a
20 computer having a large storage capacity.
[0196] Note that the information processing apparatus
according to the first embodiment may include an
initialization processing unit that executes initialization
processing of setting the internal variable at the first
25 time point to a value between a preset maximum and a preset
minimum. This initialization processing unit enables a
reduction in the probability of erroneous determination and
an increase in the accuracy of diagnosis processing.
[0197] According to the information processing method in
30 the first embodiment, in the first step, from a sensor that
measures a physical quantity of a mechanical apparatus, a
measurement value of the physical quantity at each time
point from a first time point to an N-th time point (N is
47
an integer of two or more) is acquired as sensor data. In
the second step, a smaller number of values of an internal
variable than N are held, the internal variable being
sequentially calculated in time series based on the sensor
5 data. In the third step, the internal variable
corresponding to a (j+1)-th time point (j is an integer of
one to N−1) is calculated based on the sensor data at the
(j+1)-th time point and the internal variable corresponding
to a j-th time point. In the fourth step, a feature is
10 calculated by extracting a statistical characteristic
included in the sensor data from the first time point to
the N-th time point based on the internal variable at the
N-th time point. In the fifth step, a diagnosis of the
state of the mechanical apparatus is made based on the
15 feature. This information processing method including the
processes of the first to fifth steps eliminates the need
to hold the sensor data from the first time point to the Nth time point by holding a smaller number of values of an
internal variable than N. This brings about an
20 unprecedented remarkable effect that information processing
for diagnosing the state of the mechanical apparatus can be
performed without using a computer having a high
calculation capability and a computer having a large
storage capacity.
25 [0198] Note that the information processing method
according to the first embodiment may include a step of
executing initialization processing of setting the internal
variable at the first time point to a value between a
preset maximum and a preset minimum, in addition to the
30 first to fifth steps. This initialization processing step
enables a reduction in the probability of erroneous
determination and an increase in the accuracy of diagnosis
processing.
48
[0199] Second Embodiment.
FIG. 9 is a diagram illustrating an exemplary
configuration of an information processing system 100A
including an information processing apparatus 2000
5 according to the second embodiment. The information
processing system 100A illustrated in FIG. 9 has the
configuration of the information processing system 100
illustrated in FIG. 1, except that the information
processing apparatus 1000 is replaced with the information
10 processing apparatus 2000, and the apparatus control unit
1099 is replaced with an apparatus control unit 2099. In
the information processing apparatus 2000, the sensor data
acquisition unit 1001 is replaced with a sensor data
acquisition unit 2001, the internal variable calculation
15 unit 1003 is replaced with an internal variable calculation
unit 2003, and the feature calculation unit 1004 is
replaced with a feature calculation unit 2004. Other parts
of the configuration are identical or equivalent to those
of the information processing system 100 illustrated in FIG.
20 1. Note that identical or equivalent components are
denoted by the same reference signs, and redundant
descriptions are omitted.
[0200] In addition to the processing of the sensor data
acquisition unit 1001, the sensor data acquisition unit
25 2001 generates a calculation permission flag for
determining whether to update an internal variable based on
an operation signal. More generally, the sensor data
acquisition unit 2001 determines two or more time points
between the first time point and the j-th time point (j is
30 an integer of one to N−1 (where N is an integer of two or
more)) based on at least one of an acquisition cycle that
is an interval of time for acquiring the sensor data, an
operation signal representing a status of operation of the
49
mechanical apparatus 1008, and a data value in the sensor
data, and generates a calculation permission flag for
updating an internal variable based on the two or more time
points determined.
5 [0201] In addition to the processing of the internal
variable calculation unit 1003, the internal variable
calculation unit 2003 updates the internal variable if the
calculation permission flag includes an indication that the
internal variable is to be updated. On the other hand, if
10 the calculation permission flag does not include an
indication that the internal variable is to be updated, the
internal variable calculation unit 2003 performs processing
of carrying over the value of the internal variable at the
previous time. More generally, for each u-th time point (u
15 is an integer of one to j (where j is an integer of one to
N−1, and N is an integer of two or more)) indicated by the
calculation permission flag, the internal variable
calculation unit 2003 sets the internal variable at a
(u+1)-th time point to the value of the internal variable
20 at the u-th time point.
[0202] In addition to the processing of the feature
calculation unit 1004, the feature calculation unit 2004
updates the feature if the calculation permission flag
includes an indication that the feature is to be updated.
25 If the calculation permission flag does not include an
indication that the feature is to be updated, the feature
calculation unit 2004 performs processing of carrying over
the feature at the previous time.
[0203] In addition to the processing of the apparatus
30 control unit 1099, the apparatus control unit 2099 located
outside the information processing apparatus 2000 outputs
an operation signal representing the status of operation of
the mechanical apparatus 1008. In some cases where the
50
mechanical apparatus 1008 is a mechanical apparatus driven
by a motor, for example, sensor data with less noise can be
obtained by using features at a constant speed, so that the
state of the mechanical apparatus 1008 can be estimated
5 with high accuracy. Therefore, the configuration in which
the values of internal variables and features are updated
only when the motor 1009 has a constant speed makes it
possible to calculate the features more useful for the
state diagnosis of the mechanical apparatus 1008.
10 [0204] Next, results of sequentially calculating
features of the motor torque, which is one type of sensor
data, using the above-described method will be described
with reference to FIG. 10. FIG. 10 is a diagram
illustrating time-series waveforms of the motor torque and
15 various types of features in the second embodiment.
[0205] FIG. 10(a) illustrates the time-series waveform
of the motor speed identical to the one illustrated in FIG.
5(a). FIG. 10(b) illustrates the time-series waveform of
the calculation permission flag determined by the sensor
20 data acquisition unit 2001.
[0206] An example of how to show the result of the
calculation permission flag is to set the flag value to “1”
when the internal variables are to be updated, and set the
flag value to “0” when the internal variables are not to be
25 updated. The sensor data acquisition unit 2001 sets the
flag value of the calculation permission flag to “1” in
period Te from time Tr2 to time Tr3 so that the internal
variables are updated when the speed is not “0” and is
constant. In addition, in every period except period Te,
30 namely periods Ts1, Ta, Td, and Ts2, the sensor data
acquisition unit 2001 sets the flag value of the
calculation permission flag to “0”. Note that FIG. 9 shows
an example in which the constant speed is 500 [r/min].
51
[0207] One of the reasons why the internal variables are
not updated at a speed of zero is that the mechanical
apparatus 1008 does not operate when the motor 1009 is
stationary, and information corresponding to the state of
5 the mechanical apparatus 1008 does not appear in the sensor
data. However, depending on the configuration of the
mechanical apparatus 1008, information corresponding to the
state of the mechanical apparatus 1008 may appear in the
sensor data even when the motor 1009 is stationary. In
10 such a case, the internal variables may be configured to be
updated even in the stationary state. Note that there is
no restriction on the operation in the case that the flag
value of the calculation permission flag is “0” as long as
the internal variables and the features do not change. For
15 example, the calculation may be performed such that the
current value is overwritten with the previous value, or
the calculation itself may be skipped.
[0208] Next, as a method of determining the calculation
permission flag, an example in which the calculation
20 permission flag is determined from an operation signal
representing the status of operation of the mechanical
apparatus 1008 will be described. In this example, two of
the speed and the acceleration of the motor are used as
operation signals. When the absolute value of the
25 acceleration of the motor is small and the absolute value
of the speed is large, the flag value of the calculation
permission flag is set to “1”. The reference acceleration
and the reference speed are preferably determined in
advance with reference to the specifications of the
30 mechanical apparatus 1008 or the motor 1009. The operation
signals are obtained from the apparatus control unit 2099.
[0209] If the operation of the motor 1009 is determined
in advance, the motor speed need not necessarily be
52
referred to. For example, the flag value of the
calculation permission flag may be set to “1” at a
predetermined time after the motor 1009 starts to operate,
and the flag value of the calculation permission flag may
5 be set to “0” after the lapse of another predetermined time.
In the case of performing these processes, it is possible
to refer to the sampling period, i.e. the time interval for
acquiring sensor data.
[0210] FIG. 10(c) illustrates the time-series waveform
10 of the motor torque similar to that illustrated in FIG.
5(b). FIG. 10(c) also illustrates the time-series
waveforms of the same features as those illustrated in FIG.
6(a). FIG. 10(d) illustrates the time-series waveforms of
the same features as those illustrated in FIG. 6(b).
15 [0211] The values of any of the features in FIGS. 10(c)
and 10(d) do not change in periods Ts1, Ta, Td, and Ts2
excluding period Te. This is because, as indicated by the
calculation permission flag in FIG. 10(c), the internal
variable calculation unit 2003 and the feature calculation
20 unit 2004 are configured such that the internal variables
and the features are not updated in any period except
period Te. On the other hand, in period Te, all the
features are updated as needed, and converge to a
substantially constant value by time Tr3, which is the end
25 point of period Te. This configuration allows for
estimation of the state of the mechanical apparatus 1008
with higher accuracy, in addition to the effect of the
first embodiment.
[0212] As described above, according to the information
30 processing apparatus in the second embodiment, the sensor
data acquisition unit determines two or more time points
between the first time point and the j-th time point based
on at least one of an acquisition cycle that is an interval
53
of time for acquiring the sensor data, an operation signal
representing a status of operation of the mechanical
apparatus, and a data value in the sensor data, and
generates a calculation permission flag based on the two or
5 more time points determined. For each u-th time point (u
is an integer of one to j) indicated by the calculation
permission flag, the internal variable calculation unit
sets the internal variable at a (u+1)-th time point to the
value of the internal variable at the u-th time point. The
10 information processing apparatus thus configured can obtain
sensor data with less noise according to the operation
status of the mechanical apparatus. This brings about not
only the effect of the first embodiment but also an
additional effect that the state of the mechanical
15 apparatus can be estimated with higher accuracy.
[0213] Third Embodiment.
FIG. 11 is a diagram illustrating an exemplary
configuration of an information processing system 100B
including an information processing apparatus 3000
20 according to the third embodiment. The information
processing system 100B illustrated in FIG. 11 has the
configuration of the information processing system 100A
illustrated in FIG. 9, except that the information
processing apparatus 2000 is replaced with the information
25 processing apparatus 3000. In the information processing
apparatus 3000, the sensor data acquisition unit 2001 is
replaced with a sensor data acquisition unit 3001, and the
initialization processing unit 1005 is replaced with an
initialization processing unit 3005. Other parts of the
30 configuration are identical or equivalent to those of the
information processing system 100A illustrated in FIG. 9.
Note that identical or equivalent components are denoted by
the same reference signs, and redundant descriptions are
54
omitted.
[0214] In addition to the processing of the sensor data
acquisition unit 1001 illustrated in FIG. 1, the sensor
data acquisition unit 3001 generates an initialization
5 trigger for determining a time point at which an internal
variable is initialized. More generally and more
specifically, the sensor data acquisition unit 3001
determines one or more time points between the first time
point and the N-th time point based on at least one of an
10 acquisition cycle that is an interval of time for acquiring
the sensor data, an operation signal representing a status
of operation of the mechanical apparatus 1008, and the
sensor data, and generates an initialization trigger for
initializing an internal variable based on the one or more
15 time points determined.
[0215] In addition to the processing of the
initialization processing unit 1005, the initialization
processing unit 3005 performs initialization processing on
the internal variable based on the time point indicated by
20 the initialization trigger.
[0216] In a case where the mechanical apparatus 1008 is,
for example, a mechanical apparatus driven by the motor
1009, the tendency of a feature may vary between different
operating situations such as accelerating, rotating at a
25 constant speed, decelerating, and stationary. In such a
case, the state of the mechanical apparatus 1008 may be
estimated with higher accuracy by calculating the feature
separately for each operating situation. Therefore, by
initializing the internal variables at a time point when
30 the operating situation changes, such as a time point when
the speed change of the motor 1009 is changed, it is
possible to calculate the feature more useful for state
estimation of the mechanical apparatus 1008.
55
[0217] Next, results of sequentially calculating
features of the motor torque, which is one type of sensor
data, using the above-described method will be described
with reference to FIG. 12. FIG. 12 is a diagram
5 illustrating time-series waveforms of the motor torque and
various types of features in the third embodiment.
[0218] FIG. 12(a) illustrates the time-series waveform
of the motor speed identical to the one illustrated in FIG.
5(a). FIG. 12(b) illustrates the time-series waveform of
10 the initialization trigger determined by the sensor data
acquisition unit 3001.
[0219] An example of how to show the result of the
initialization trigger is to set the signal level to “1”
when the internal variables are to be initialized, and set
15 the signal level to “0” when the internal variables are not
to be initialized. The sensor data acquisition unit 3001
sets the signal level of the initialization trigger to “1”
at times Tr1, Tr2, Tr3, and Tr4 so as to initialize the
internal variables at a time point when the motor speed
20 changes, that is, acceleration occurs, and sets the signal
level to “0” at other times.
[0220] Next, as a method of determining the
initialization trigger, an example in which the
initialization trigger is determined from an operation
25 signal representing the status of operation of the
mechanical apparatus 1008 will be described. In this
example, the jerk of the motor, that is, the time
derivative of acceleration, is used as an operation signal.
When the absolute value of the jerk of the motor is large,
30 the signal level of the initialization trigger is set to
“1”. The reference level of jerk is preferably determined
in advance with reference to the specifications of the
mechanical apparatus 1008 or the motor 1009. The operation
56
signal is obtained from the apparatus control unit 2099.
[0221] If the operation of the motor 1009 is determined
in advance, the motor speed need not necessarily be
referred to. For example, the signal level of the
5 initialization trigger may be instantaneously set to “1” at
a predetermined time after the motor 1009 starts to operate.
Alternatively, the signal level of the initialization
trigger may be instantaneously set to “1” every time a
specific period of time elapses. In the case of performing
10 these processes, it is possible to refer to the sampling
period, i.e. the time interval for acquiring sensor data.
[0222] In addition, in order to calculate the feature
for each series of sensor data from the start to the stop
of operation of the motor 1009, the initialization trigger
15 may be determined such that the initialization processing
is performed at the time point when the motor 1009 starts
to operate. With this configuration, the operation in
which the moving distance of the motor is long and the
operation in which the moving distance of the motor is
20 short can be uniformly handled as one positioning operation.
[0223] FIG. 12(c) illustrates the time-series waveform
of the motor torque similar to that illustrated in FIG.
5(b). FIG. 12(c) also illustrates the time-series
waveforms of the same features as those illustrated in FIG.
25 6(a). FIG. 12(d) illustrates the time-series waveforms of
the same features as those illustrated in FIG. 6(b).
[0224] All the features in FIGS. 10(c) and 10(d) start
to change immediately after times Tr0, Tr1, Tr2, Tr3, and
Tr4, and converge to a substantially constant value by the
30 end of each of periods Ts1, Ta, Te, Td, and Ts2. This
configuration allows for estimation of the state of the
mechanical apparatus 1008 with higher accuracy, in addition
to the effect of the first embodiment. In addition to the
57
effect of the second embodiment, this configuration can
also be applied to cases where the motor 1009 operates
under a condition without a constant speed, and thus can
cover a wider range of applications.
5 [0225] As described above, according to the information
processing apparatus in the third embodiment, the sensor
data acquisition unit determines one or more time points
between the first time point and the j-th time point based
on at least one of an acquisition cycle that is an interval
10 of time for acquiring the sensor data, an operation signal
representing a status of operation of the mechanical
apparatus, and a data value in the sensor data, and
generates an initialization trigger for initializing an
internal variable based on the one or more time points
15 determined. The initialization processing unit executes
processing of initializing the internal variable based on
the initialization trigger. The information processing
apparatus thus configured can calculate the feature
separately for each operating situation. This brings about
20 not only the effect of the first embodiment but also an
additional effect that the state of the mechanical
apparatus can be estimated with higher accuracy. In
addition, the information processing apparatus thus
configured can also be applied to cases where the motor
25 operates under a condition without a constant speed, which
brings about not only the effect of the second embodiment
but also an additional effect that a wider range of
applications can be covered regarding the operating
conditions.
30 [0226] Fourth Embodiment.
FIG. 13 is a diagram illustrating an exemplary
configuration of an information processing system 100C
including an information processing apparatus 4000
58
according to the fourth embodiment. The information
processing system 100C illustrated in FIG. 13 has the
configuration of the information processing system 100B
illustrated in FIG. 11, except that the information
5 processing apparatus 3000 is replaced with the information
processing apparatus 4000. In the information processing
apparatus 4000, the internal variable calculation unit 1003
is replaced with an internal variable calculation unit 4003,
the feature calculation unit 1004 is replaced with a
10 feature calculation unit 4004, and the state diagnosis unit
1006 is replaced with a state diagnosis unit 4006. In
addition, a convergence degree calculation unit 4007 is
newly provided. Other parts of the configuration are
identical or equivalent to those of the information
15 processing system 100B illustrated in FIG. 11. Note that
identical or equivalent components are denoted by the same
reference signs, and redundant descriptions are omitted.
[0227] In addition to the processing of the internal
variable calculation unit 1003, the internal variable
20 calculation unit 4003 calculates an internal variable based
on a forgetting coefficient. Similarly, in addition to the
processing of the feature calculation unit 1004, the
feature calculation unit 4004 calculates a feature based on
the forgetting coefficient. The forgetting coefficient is
25 a coefficient for weighting that makes the sensor data at a
later time have a larger influence on the feature than the
sensor data at an earlier time, and has a value larger than
zero and smaller than one.
[0228] The convergence degree calculation unit 4007
30 calculates, based on the internal variable, a convergence
degree as an index quantitatively indicating the degree of
convergence of calculation of the feature. The state
diagnosis unit 4006 diagnoses the state of the mechanical
59
apparatus 1008 based on the feature at a time point when
the convergence degree calculated by the convergence degree
calculation unit 4007 satisfies a certain condition.
[0229] Next, processing in the internal variable
5 calculation unit 4003 and the feature calculation unit 4004
will be described in detail. Hereinafter, using specific
examples of features: exponential moving mean, exponential
moving variance, exponential moving standard deviation,
exponential moving root mean square, exponential moving
10 skewness, and exponential moving kurtosis; a sequential
calculation method for each feature will be described
together with a procedure for deriving the feature.
[0230] First, a calculation procedure regarding the
sequential calculation of the exponential moving average as
15 an example of a feature will be described. Unlike the
above-described mean, a known weighted mean reflects a
weight given for each time. As an example of the weighted
mean, there is a method of averaging the weighted sensor
data having a weight through multiplication of a forgetting
20 coefficient λ. As described above, the forgetting
coefficient λ is a coefficient for weighting that gives the
sensor data at a later time a larger influence than the
sensor data at an earlier time. Hereinafter, this
processing is referred to as exponential moving average,
25 and the value thereof is referred to as the exponential
moving mean. The exponential moving mean may also be
referred to as the exponential smoothed moving mean. In
addition, “1−λ” obtained by subtracting the forgetting
coefficient λ from “1” is also referred to as the smoothing
30 coefficient.
[0231] First, the exponential moving mean m'j for the
sensor data x1 to xj from the first time point to the j-th
time point is defined by Formula (51) below.
60
[0232] Formula 51:
[0233] For example, given λ=0.9, the exponential moving
mean m'3 at the third time point can be expressed by
5 Formula (52) below.
[0234] Formula 52:
[0235] In the exponential moving average using the
forgetting coefficient λ, newer data has a larger
10 coefficient than older data as described above (0.81<0.9<1).
This can be interpreted as that newer data, that is, data
at a later time, is more weighted in calculating the
average. The closer the forgetting coefficient λ is to
zero, the more likely it is to forget old data, and
15 conversely, the closer the forgetting coefficient λ is to
one, the less likely it is to forget old data.
[0236] Next, consider a sequential calculation method
for the exponential moving mean. The exponential moving
mean m'j+1 for the sensor data x1 to xj+1 from the first time
20 point to the (j+1)-th time point can be transformed as in
Formula (53) below.
[0237] Formula 53:
61
[0238] That is, the exponential moving mean m'j+1 at the
(j+1)-th time point is sequentially computed with Formula
(54) below.
5 [0239] Formula 54:
[0240] Here, the sensor data xj+1 is newly acquired at
the (j+1)-th time point. The variable L'j at the (j+1)-th
time point can be expressed by Formula (55) below.
10 [0241] Formula 55:
[0242] Furthermore, consider a method of sequential
calculation of the variable L'j. The variable L'j+1 at the
(j+1)-th time point can be expressed by Formula (56) below.
15 [0243] Formula 56:
62
[0244] That is, the variable L'j+1 at the (j+1)-th time
point can be sequentially calculated with Formula (57)
below.
5 [0245] Formula 57:
[0246] As a result, the internal variables which should
be held for calculating the exponential moving mean m'j+1 at
the (j+1)-th time point are the exponential moving mean m'j
10 and the variable L'j at the j-th time point.
[0247] In the calculation of the internal variables at
the second time point, the initial values L'1 and m'1 of
the variable L'j and the exponential moving mean m'j are
preferably set to zero for ease, or are preferably
15 determined according to, for example, the value of sensor
data at the initialization processing in order to avoid
fluctuations immediately after the initialization
processing.
[0248] Next, a method of determining the forgetting
20 coefficient λ set in advance will be described. The
forgetting coefficient λ is desirably set to a value larger
than zero and smaller than one. The closer the forgetting
coefficient λ is to one, the less likely it is to forget
past information, and the closer the forgetting coefficient
25 λ is to zero, the more likely it is to forget past
63
information. With the forgetting coefficient λ of one, the
information of the sensor data is not forgotten, and the
mathematical formula for sequential calculation matches
that in the first embodiment. In contrast, with the
5 forgetting coefficient of zero, the information of all the
sensor data is forgotten every time one point in time
elapses, and thus, the feature is not computed for the
sensor data at two or more points earlier. In many cases,
the forgetting coefficient is preferably set to a value
10 close to 1 and less than 1, for example, a value of about
0.9 to 0.999. In the case of calculating the exponential
moving average or the like using the forgetting coefficient
λ, most of the weights reflecting the sensor data in the
feature are concentrated in the latest short period called
15 a time constant. Here, the time constant τ can be
calculated with Formula (58) below.
[0249] Formula 58:
[0250] In Formula (58), “dt” represents the sampling
20 period. In addition, in order to calculate the feature by
assigning a large number of weights to the sensor data in
the latest specific time slot, the forgetting coefficient λ
may be determined using the formula “λ=1−dt/τ”. This
formula is a modification of Formula (58).
25 [0251] For example, in order to calculate the feature by
assigning a large number of weights to the sensor data in
the latest 20 milliseconds, the time constant is set to 20
ms. In this case, given that the sampling period is 0.5 ms,
the forgetting coefficient is λ=0.975. Alternatively,
30 instead of the time constant τ, the forgetting coefficient
λ may be set using the estimated frequency (unit: rad/s),
i.e. the reciprocal of the time constant τ.
64
[0252] Next, a calculation procedure regarding the
sequential calculation of the exponential moving variance
as an example of a feature will be described. The variance
based on the above-described weighted sensor data having a
5 weight for each time through multiplication of the
forgetting coefficient λ is referred to as the “exponential
moving variance”.
[0253] First, regarding sensor data as a random variable,
the variance thereof is known to be expressed by Formula
10 (9) described above. Therefore, the exponential moving
variance v'j at the j-th time point can be expressed by
Formula (59) below.
[0254] Formula 59:
15 [0255] Therefore, the exponential moving variance v'j+1
for the sensor data x1 to xj+1 from the first time point to
the (j+1)-th time point can be expressed by Formula (60)
below.
[0256] Formula 60:
20
[0257] Transforming Formula (60), the exponential moving
variance v'j+1 can be expressed by Formula (61) below.
[0258] Formula 61:
65
[0259] Formula (62) below is derived from Formula (59)
and Formula (61).
[0260] Formula 62:
5
[0261] Therefore, from Formula (62), the exponential
moving variance v'j+1 at the (j+1)-th time point is
sequentially computed with Formula (63) below.
[0262] Formula 63:
10
[0263] As mentioned above, the variable L'j+1 at the
(j+1)-th time point is sequentially computed with Formula
(57) described above. In addition, the exponential moving
mean m'j+1 at the (j+1)-th time point is sequentially
15 computed with Formula (54) described above. Then, the
sensor data xj+1 at the (j+1)-th time point is newly
acquired at the (j+1)-th time point. As a result, the
internal variables which should be held at the j-th time
point to compute the exponential moving variance v'j+1 at
20 the (j+1)-th time point are the variable L'j, the
exponential moving variance v'j, and the exponential moving
mean m'j. Note that instead of the exponential moving
variance v'j, the exponential moving standard deviation s'j
66
to be described later may be held.
[0264] In the calculation of the internal variables at
the second time point, the initial values L'1, v'1, and m'1
of the variable L', the exponential moving variance v', and
5 the exponential moving average m' are preferably set to
zero for ease, or are preferably determined according to,
for example, the value of sensor data at the initialization
processing in order to avoid fluctuations immediately after
the initialization processing.
10 [0265] Next, a calculation procedure regarding the
sequential calculation of the exponential moving standard
deviation s'j as an example of a feature will be described.
The standard deviation based on the above-described
weighted sensor data having a weight for each time through
15 multiplication of the forgetting coefficient λ is referred
to as the “exponential moving standard deviation”.
[0266] First, the exponential moving standard deviation
s'j for the sensor data x1 to xj from the first time point
to the j-th time point is defined by Formula (64) below
20 from the exponential moving variance v'j.
[0267] Formula 64:
[0268] That is, the exponential moving standard
deviation s'j is instantly computed from the exponential
25 moving variance v'j sequentially computed with the above
procedure. Therefore, the internal variables which should
be kept to sequentially calculate the exponential moving
standard deviation s'j are the same as those for the
exponential moving variance v'j.
30 [0269] Next, a calculation procedure regarding the
sequential calculation of the exponential moving root mean
square as an example of a feature will be described. The
67
root mean square based on the above-described weighted
sensor data having a weight for each time through
multiplication of the forgetting coefficient λ is referred
to as the “exponential moving root mean square”.
5 [0270] First, the exponential moving root mean square
r'j for the sensor data x1 to xj from the first time point
to the j-th time point is defined by Formula (65) below.
[0271] Formula 65:
10 [0272] Therefore, the exponential moving root mean
square r'j+1 for the sensor data x1 to xj+1 from the first
time point to the (j+1)-th time point can be expressed as
Formula (66) below.
[0273] Formula 66:
15
[0274] From Formula (65) and Formula (66), the square
r'j+1
2 of the exponential moving root mean square can be
expressed as Formula (67) below.
[0275] Formula 67:
68
[0276] From Formula (67), the square r'j+1
2 of the
exponential moving root mean square at the (j+1)-th time
point is sequentially computed with Formula (68) below.
5 [0277] Formula 68:
[0278] As mentioned above, the variable L'j+1 at the
(j+1)-th time point is sequentially computed with Formula
(57) described above. In addition, the sensor data xj+1 is
10 newly acquired at the (j+1)-th time point. As a result,
the internal variables which should be held at the j-th
time point to compute the square r'j+1
2 of the exponential
moving root mean square at the (j+1)-th time point are the
square r'j
2 of the exponential moving root mean square and
15 the variable L'j.
[0279] In the calculation of the internal variables at
the second time point, the initial values L'1 and r'1 of
the variable L'j and the square r'j
2 of the exponential
moving root mean square are preferably set to zero for ease,
69
or are preferably determined according to, for example, the
value of sensor data at the initialization processing in
order to avoid fluctuations immediately after the
initialization processing.
5 [0280] Next, a calculation procedure regarding the
sequential calculation of the exponential moving skewness
as an example of a feature will be described. The skewness
based on the above-described weighted sensor data having a
weight for each time through multiplication of the
10 forgetting coefficient λ is referred to as the “exponential
moving skewness”.
[0281] Referring to Formula (22) obtained from Formula
(20) described above, the exponential moving skewness w'j
for the sensor data x1 to xj from the first time point to
15 the j-th time point can be expressed by Formula (69) below.
[0282] Formula 69:
[0283] In addition, the exponential moving mean m'j in
Formula (69) can be sequentially calculated with Formula
20 (54) described above, and the exponential moving standard
deviation s'j in Formula (69) can be sequentially
calculated with Formulas (63) and (64) described above.
[0284] Next, consider the sequential calculation
regarding the variables A'j and B'j at the j-th time point
25 in Formula (69). First, the variables A'j and B'j at the jth time point can be expressed by Formulas (70) and (71)
below.
[0285] Formula 70:
30 Formula 71:
70
[0286] The variable A'j+1 at the (j+1)-th time point can
be expressed by Formula (72) below.
[0287] Formula 72:
5
[0288] From Formula (72), the variable A'j+1 can be
expressed as Formula (73) below.
[0289] Formula 73:
10 [0290] From Formula (73), the variable A'j+1 at the
(j+1)-th time point is sequentially computed with Formula
(74) below.
[0291] Formula 74:
15 [0292] Here, the internal variables which should be held
at the j-th time point to compute the variable at the
(j+1)-th time point are the variables L'j and A'j. In
71
addition, the variable L'j+1 at the (j+1)-th time point is
sequentially computed with Formula (57) described above.
The variable B'j at the j-th time point can be expressed by
Formula (75) below.
5 [0293] Formula 75:
[0294] Here, Formula (75) indicates that the variable
B'j matches the square r'j
2 of the exponential moving root
mean square described above, which is sequentially computed
10 with Formula (68) described above. Therefore, the
exponential moving skewness w'j for the sensor data x1 to xj
from the first time point to the j-th time point is
computed with Formula (76) below.
[0295] Formula 76:
15
[0296] Similarly, the exponential moving skewness w'j+1
for the sensor data x1 to xj+1 from the first time point to
the (j+1)-th time point is computed with Formula (77) below.
[0297] Formula 77:
20
[0298] As mentioned above, the variable A'j+1 at the
(j+1)-th time point is sequentially computed with Formula
(74) described above. In addition, the exponential moving
mean m'j+1 at the (j+1)-th time point is sequentially
25 computed with Formula (54) described above. Then, the
square r'j
2 of the exponential moving root mean square at
the (j+1)-th time point is sequentially computed with
72
Formula (68) described above. In addition, the exponential
moving standard deviation s'j+1 at the (j+1)-th time point
is sequentially computed with formula (64) described above.
Then, the sensor data xj+1 at the (j+1)-th time point is
5 newly acquired at the (j+1)-th time point. As a result,
the internal variables which should be held at the j-th
time point to compute the exponential moving skewness w'j+1
for the sensor data xj+1 from the first time point to the
(j+1)-th time point are the variables A'j and L'j, the
exponential moving mean m'j, the square r'j
2 10 of the
exponential moving root mean square, and the exponential
moving standard deviation s'j. The exponential moving
variance v'j may be held instead of the exponential moving
standard deviation s'j. In addition, the exponential
15 moving root mean square r'j may be held instead of the
square r'j
2 of the exponential moving root mean square.
[0299] Note that a formula that produces a similar
calculation result is also obtained by holding the
exponential moving skewness w'j instead of the variable A'j
20 for sequential calculation, which is not described here
because the formula is complicated. In the calculation of
the internal variables at the second time point, the
initial values of the variables A'j and L'j, the
exponential moving mean m'j, the square r'j
2 of the
25 exponential moving root mean square, and the exponential
moving standard deviation s'j are preferably set to zero
for ease, or are preferably determined according to, for
example, the value of sensor data at the initialization
processing in order to avoid fluctuations immediately after
30 the initialization processing.
[0300] Next, a calculation procedure regarding the
sequential calculation of the exponential moving kurtosis
as an example of a feature will be described. The kurtosis
73
based on the above-described weighted sensor data having a
weight for each time through multiplication of the
forgetting coefficient λ is referred to as the “exponential
moving kurtosis”.
5 [0301] Referring to Formula (32) obtained from Formula
(30) described above, the exponential moving kurtosis k'j
for the sensor data x1 to xj from the first time point to
the j-th time point can be expressed by Formula (78) below.
[0302] Formula 78:
10
[0303] Here, the variable C'j at the j-th time point can
be expressed by Formula (79) below.
[0304] Formula 79:
15 [0305] In addition, the variables A'j and B'j, the
exponential moving mean m'j, and the exponential moving
standard deviation s'j in Formula (78) can be sequentially
calculated with Formulas (54), (63), (64), (68), (74), and
(75) described above.
20 [0306] Next, consider the sequential calculation
regarding the variable C'j at the j-th time point in
Formula (79). First, the variable C'j+1 at the (j+1)-th
time point can be expressed by Formula (80) below.
[0307] Formula 80:
25
[0308] From Formula (79) and Formula (80), the variable
C'j+1 can be expressed as Formula (81) below.
[0309] Formula 81:
74
[0310] From Formula (81), the variable C'j+1 at the
(j+1)-th time point is sequentially computed with Formula
(82) below.
5 [0311] Formula 82:
[0312] Here, as in Formula (75), the variable B'j
matches the square r'j
2 of the exponential moving root mean
square described above, and the square r'j
2 of the
10 exponential moving root mean square is sequentially
computed with Formula (68) described above. Therefore, the
exponential moving kurtosis k'j for the sensor data x1 to xj
from the first time point to the j-th time point is
computed with Formula (83) below.
15 [0313] Formula 83:
[0314] Similarly, the exponential moving kurtosis k'j+1
for the sensor data x1 to xj+1 from the first time point to
75
the (j+1)-th time point is computed with Formula (84) below.
[0315] Formula 84:
[0316] As mentioned above, the variable C'j+1 at the
5 (j+1)-th time point is sequentially computed with Formula
(82) described above. In addition, the variable A'j+1 at
the (j+1)-th time point is sequentially computed with
Formula (74) described above. Then, the exponential moving
mean m'j+1 at the (j+1)-th time point is sequentially
10 computed with Formula (54) described above. In addition,
the square r'j+1
2 of the exponential moving root mean square
at the (j+1)-th time point is sequentially computed with
Formula (68) described above. In addition, the exponential
moving standard deviation s'j+1 at the (j+1)-th time point
15 is sequentially computed with Formulas (63) and (64)
described above. Then, the sensor data xj+1 at the (j+1)-th
time point is newly acquired at the (j+1)-th time point.
As a result, the square r'j
2 of the exponential moving root
mean square from the first time point is sequentially
20 computed with Formula (68) described above. The internal
variables which should be held at the j-th time point to
compute the exponential moving kurtosis k'j+1 for the sensor
data xj+1 to the (j+1)-th time point are the variables A'j
and L'j, the exponential moving mean m'j, the square r'j
2 of
25 the exponential moving root mean square, and the
exponential moving standard deviation s'j. The exponential
moving variance v'j may be held instead of the exponential
moving standard deviation s'j. In addition, the
exponential moving root mean square r'j may be held instead
of the square r'j
2 30 of the exponential moving root mean
square.
76
[0317] Note that a formula that produces a similar
calculation result is also obtained by holding the
exponential moving skewness w'j instead of the variable A'j
for sequential calculation, which is not described here
5 because the formula is complicated. In the calculation of
the internal variables at the second time point, the
initial values of the variables A'j and L'j, the
exponential moving mean m'j, the square r'j
2 of the
exponential moving root mean square, and the exponential
10 moving standard deviation s'j are preferably set to zero
for ease, or are preferably determined according to, for
example, the value of sensor data at the initialization
processing in order to avoid fluctuations immediately after
the initialization processing.
15 [0318] The exponential moving kurtosis k'j is known to
have a value of about three given that the sensor data has
a property close to a normal distribution. Therefore, the
initial value k'1 of the exponential moving kurtosis k'j
may be three.
20 [0319] Regarding the calculation of the maximum, the
minimum, the peak-peak value, the peak value, and the peak
factor (hereinafter simply referred to as the “maximum or
the like”) with weights in the latest period of time, it is
not possible to update the current maximum or the like from
25 the previous maximum or the like unlike in the first
embodiment. An exemplary alternative procedure is to hold
several candidate values having a high possibility of
becoming the maximum or the like as internal variables, and
delete the held candidate values after a prescribed time
30 elapses. This enables the calculation of the maximum or
the like corresponding to the sensor data in the latest
period of time.
[0320] Next, a calculation procedure related to the
77
operation of the convergence degree calculation unit 4007
will be described. In the sequential calculation of
features using the forgetting coefficient λ, it is possible
to calculate from internal variables the convergence degree
5 quantitatively representing the degree of convergence of
the sequential calculation. For example, the variable L'j,
one of the internal variables, is sequentially calculated
with Formula (57), and thus asymptotically approaches a
value of 1/(1−λ) regardless of the input sensor data.
10 Therefore, given that the initial value L'1 of the variable
L'j is zero or more and less than 1/(1−λ), the convergence
degree di can be defined by Formula (85) below so that the
convergence takes a value of zero to one.
[0321] Formula 85:
15
[0322] In the present embodiment, the convergence degree
is calculated using Formula (85), but the convergence
degree is not limited to the above, and may be defined as
any value that increases with the convergence of
20 calculation. Here, a value that monotonically increases
with the convergence of calculation and asymptotically
approaches a specific value is suitable for use as a
reference. For example, the convergence degree is defined
as {(1−λ)L'j}
M, i.e. the M-th (M is a positive real number)
25 power of the entire right side of Formula (85). This
convergence degree takes a value of zero to one and
monotonically increases with the convergence of calculation,
and thus is a preferable definition formula.
[0323] Next, results of sequentially calculating
30 features of the motor torque, which is one type of sensor
data, using the above-described method will be described
with reference to FIG. 14. FIG. 14 is a diagram
78
illustrating time-series waveforms of the motor torque and
various types of features in the fourth embodiment.
[0324] FIG. 14(a) illustrates the time-series waveform
of the motor speed identical to the one illustrated in FIG.
5 5(a). FIG. 14(b) illustrates the time-series waveform of
the initialization trigger identical to the one illustrated
in FIG. 12(b).
[0325] FIG. 14(c) illustrates the time-series waveform
of the convergence degree calculated by the convergence
10 degree calculation unit 4007 using Formula (85). The
convergence degree is zero at time Tr0 at which the
sequential calculation starts, and at times Tr1, Tr2, Tr3,
and Tr4 at which the initialization trigger indicates “1”.
This is because the initialization processing is executed
15 and the variable L'j at the j-th time point, which is one
of the internal variables, becomes zero. Here, the j-th
time point refers to a time point at which the
initialization trigger indicates “1”. The convergence
degree increases each time the initialization processing is
20 performed, and asymptotically approaches one.
[0326] FIG. 14(d) illustrates the time-series waveform
of the motor torque similar to that illustrated in FIG.
5(b). FIG. 14(d) illustrates the time-series waveforms of
the exponential moving mean, the exponential moving
25 standard deviation, and the exponential moving root mean
square (RMS) having the same unit [Nm] as the motor torque.
Note that the term “exponential moving” is omitted to avoid
the complexity of the drawing.
[0327] FIG. 14(e) illustrates the time-series waveforms
30 of the exponential moving skewness and the exponential
moving kurtosis, which are dimensionless features, i.e.
features having no unit. Here, the forgetting coefficient
λ is 0.975. As in FIG. 14(d), the term “exponential
79
moving” is omitted. Next, the behavior of each feature
sequentially calculated in FIGS. 14(d) and 14(e) will be
described.
[0328] The exponential moving mean follows the motor
5 torque with only a slight delay over the entire period from
time Tr0 to time Tr5. This indicates the property of the
present embodiment in which the mean is calculated by
giving large weights to the motor torque in the latest
short period of time.
10 [0329] The exponential moving standard deviation is a
substantially constant small value in period Ts1. In
periods Ta, Te, Td, and Ts2, the exponential moving
standard deviation increases immediately after the
initialization trigger becomes one, then decreases until
15 the next initialization trigger becomes one, and converges
to a substantially constant value.
[0330] The exponential moving root mean square (RMS) is
a substantially constant small value in period Ts1. In
period Ta, the RMS gradually increases as the motor torque
20 increases. In period Te, the RMS converges to a
substantially constant value. In period Td, the RMS
gradually increases as the absolute value of the motor 1009
increases. In period Ts2, the RMS converges to a
substantially constant small value.
25 [0331] The exponential moving skewness is approximately
zero in period Ts1. This is because the motor torque in
period Ts1 has a symmetrical probability distribution. At
time Tr1 at which period Ta starts, the skewness
temporarily becomes a positive value and then becomes a
30 negative value. This is because the increase of the motor
torque from zero causes a temporary coexistence of old
near-zero data and new post-increase data, disturbing the
probability distribution of the motor torque.
80
[0332] In addition, the exponential moving skewness
temporarily becomes a positive value immediately after time
Tr2 in period Te, and then converges to approximately zero.
The exponential moving skewness temporarily becomes a
5 positive value immediately after time Tr3 in period Td, and
then converges to a substantially constant value. The
exponential moving skewness temporarily becomes a negative
value immediately after time Tr4 in period Ts2, and then
converges to approximately zero.
10 [0333] Further, the exponential moving kurtosis is
approximately three in period Ts1. The value of three is a
characteristic that the exponential moving kurtosis has
with respect to a normal distribution, indicating that the
motor torque has a property close to the normal
15 distribution in period Ts1. The exponential moving
kurtosis becomes a negative value immediately after time
Tr1 at which period Ta starts, and then becomes a positive
value. Thereafter, the exponential moving kurtosis
converges to a substantially constant value by time Tr2.
20 This is because the increase of the motor torque from zero
causes a temporary coexistence of old near-zero data and
new post-increase data, disturbing the probability
distribution of the motor torque.
[0334] In addition, the exponential moving kurtosis
25 becomes a negative value immediately after time Tr2 at
which period Te starts, and then becomes a positive value.
Thereafter, the exponential moving kurtosis converges to a
substantially constant value by time Tr3.
[0335] In addition, the exponential moving kurtosis
30 becomes a negative value immediately after time Tr3 at
which period Td starts, and then becomes a positive value.
Thereafter, the exponential moving kurtosis converges to a
substantially constant value by time Tr4.
81
[0336] In addition, the exponential moving kurtosis
becomes a negative value immediately after time Tr4 at
which period Ts2 starts, and then becomes a positive value.
Thereafter, the exponential moving kurtosis gradually
5 converges to a constant value by time Tr5.
[0337] Next, the behavior of the convergence degree
calculated by the convergence degree calculation unit 4007
and the operation of the state diagnosis unit 4006 will be
described with reference to FIG. 15. FIG. 15 is an
10 enlarged diagram of the time-series waveforms of the
initialization trigger and the convergence degree
illustrated in FIG. 14 over the period from time Tr2 to
time Tr3.
[0338] In FIG. 15, the initialization trigger indicates
15 “1” at time Tr2, and the initialization processing is
executed. Once the initialization processing is executed,
the variable L'j at the j-th time point, which is one of
the internal variables, becomes zero, and the convergence
degree becomes zero. Here, the j-th time point refers to a
20 time point at which the initialization trigger indicates
“1”. The convergence degree increases after the
initialization, and asymptotically approaches one.
[0339] The state diagnosis unit 4006 diagnoses the state
of the mechanical apparatus 1008 based on the feature at a
25 time point when the convergence degree calculated by the
convergence degree calculation unit 4007 using Formula (85)
satisfies a certain condition. For example, a threshold
Cth is set for the convergence degree. The state diagnosis
unit 4006 diagnoses the state of the mechanical apparatus
30 1008 using the feature at the time point when the
convergence degree exceeds the threshold Cth. Here, the
threshold Cth is preferably set to a value close to one,
which the convergence degree asymptotically approaches. An
82
example of the threshold Cth is 0.99.
[0340] Here, the time at which the convergence degree
exceeds the threshold Cth is denoted by “Tx”. In addition,
the period from time Tr2 at which the convergence degree
5 does not exceed the threshold Cth to time Tx is denoted by
“Tn”. In addition, the period from time Tx at which the
convergence degree exceeds the threshold Cth to Tr3 is
denoted by “Tc”.
[0341] Preferably, the state diagnosis unit 4006 uses
10 the feature calculated in period Tc for diagnosis of the
mechanical apparatus 1008, not using the feature calculated
in period Tn for diagnosis of the mechanical apparatus 1008.
With this configuration, it is possible to use the feature
derived from the sufficiently converged calculation result
15 after the internal variable initialization. This brings
about not only the effect of the third embodiment but also
higher accuracy estimation of the state of the mechanical
apparatus.
[0342] As described above, the information processing
20 apparatus according to the fourth embodiment further
includes the convergence degree calculation unit in
addition to the configuration of the third embodiment. The
convergence degree calculation unit calculates, based on
the internal variable, a convergence degree as an index
25 quantitatively indicating the degree of convergence of
calculation of the feature. With this configuration, it is
possible to use the feature derived from the sufficiently
converged calculation result after the internal variable
initialization. This brings about not only the effect of
30 the third embodiment but also an additional effect that the
state of the mechanical apparatus can be estimated with
higher accuracy.
[0343] Fifth Embodiment.
83
FIG. 16 is a diagram illustrating an exemplary
configuration of an information processing system 100D
including an information processing apparatus 5000
according to the fifth embodiment. The information
5 processing system 100D illustrated in FIG. 16 has the
configuration of the information processing system 100
illustrated in FIG. 1, except that the state diagnosis unit
1006 is replaced with a state diagnosis unit 5006. Other
parts of the configuration are identical or equivalent to
10 those of the information processing system 100 illustrated
in FIG. 1. Identical or equivalent components are denoted
by the same reference signs, and redundant descriptions are
omitted. Note that the present embodiment describes an
example in which the state diagnosis unit 5006 is applied
15 to the information processing apparatus 1000 illustrated in
FIG. 1, but the state diagnosis unit 5006 may be applied to
any of the information processing apparatuses 2000, 3000,
and 4000 illustrated respectively in FIGS. 9, 11, and 13.
[0344] FIG. 17 is a diagram illustrating an exemplary
20 configuration of the state diagnosis unit 5006 according to
the fifth embodiment. The state diagnosis unit 5006
includes a state quantity acquisition unit 5401, a learning
unit 5402, an anomaly degree calculation unit 5403, and a
decision-making unit 5404. The state quantity acquisition
25 unit 5401 acquires state quantities including a feature.
The learning unit 5402 learns the relationship between the
state of the mechanical apparatus 1008 and the feature
based on the state quantities in the normal state of the
mechanical apparatus 1008. The anomaly degree calculation
30 unit 5403 calculates, based on the learning result learned
by the learning unit 5402, an anomaly degree as an index
quantitatively indicating the degree of anomaly of the
mechanical apparatus 1008. The decision-making unit 5404
84
determines a diagnosis result acquired by diagnosing the
state of the mechanical apparatus 1008 based on the anomaly
degree calculated by the anomaly degree calculation unit
5403.
5 [0345] Next, the operation of the state quantity
acquisition unit 5401, the learning unit 5402, the anomaly
degree calculation unit 5403, and the decision-making unit
5404 will be described.
[0346] The state quantity acquisition unit 5401 acquires,
10 as state quantities, information including a set value
given to the mechanical apparatus 1008 together with a
feature. As an example of a feature, the skewness
sequentially calculated with the above-described method can
be used. As the information of the mechanical apparatus
15 1008 for use as one of the state quantities, the set value
of the motor speed can be used. In the example illustrated
in FIG. 5(a), the apparatus control unit 1099 is set such
that the motor speed has a maximum of 500 [r/min]. The
present embodiment assumes that the set value of the motor
20 speed is 500 [r/min]. Note that the case described in the
present embodiment, in which two types of information,
namely the skewness and the set value of the motor speed,
are input to the state quantity acquisition unit 5401, is a
non-limiting example. Three or more types of information
25 may be input to the state quantity acquisition unit 5401.
[0347] FIG. 18 is a diagram illustrating the
relationship between the feature and the set value of the
motor speed in the fifth embodiment. In FIG. 18, multiple
sets of data are plotted, where one set consists of the
30 skewness, which is an example of a feature, and the set
value of the motor speed. The horizontal axis represents
the set value of the motor speed, and the vertical axis
represents the skewness. A plurality of features may be
85
used, and the state quantities may be displayed in a threedimensional concept. In addition, a state quantity other
than the motor speed may be used. Black circles are normal
data indicating that the mechanical apparatus 1008 is in a
5 normal state. White circles are anomaly data indicating
that the mechanical apparatus 1008 has some kind of anomaly.
As illustrated in FIG. 18, it is desirable to obtain a
large number of state quantities as normal data in the
normal state of the mechanical apparatus 1008. FIG. 18
10 shows that the feature of the normal data tends to increase
as the set value of the motor speed increases. On the
other hand, the anomaly data has a relatively large feature
although the set value of the motor speed is relatively
small.
15 [0348] As an exemplary configuration of the learning
unit 5402 and the anomaly degree calculation unit 5403, an
anomaly degree calculation method using principal component
analysis is known. The principal component analysis is a
method in which state quantities, which are multi20 dimensional data, are transformed into different axes in
order from the direction in which the variance is large.
The learning unit 5402 using the principal component
analysis calculates the eigenvalues and eigenvectors of the
variance-covariance matrix of the normal data obtained in
25 advance, and linearly maps the original state quantities to
the space of the principal components. Let x represent a
vector of the original state quantities, and y represent a
post-mapping vector. Then, the mapping of the vector x can
be expressed by Formula (86) below.
30 [0349] Formula 86:
[0350] The learning unit 5402 determines a
representation matrix A, i.e. a matrix representing this
86
linear mapping, based on the normal data. The learning
unit 5402 obtains a plurality of eigenvalues and
eigenvectors related to the variance-covariance matrix
computed from a plurality of normal data prepared. For the
5 plurality of eigenvalues obtained, the plurality of
corresponding eigenvectors are arranged in descending order
of eigenvalue. The matrix with the plurality of
eigenvectors created through arrangement is the
representation matrix A. In the case of the example in the
10 present embodiment, eigenvectors of two rows and one column
are created using the two state quantities. Then, two
eigenvectors of two rows and one column are arranged, and a
representation matrix of two rows and two columns is
created. Note that unlike in this example, the dimension
15 of the post-mapping vectors may be made smaller than the
dimension of the vectors of the original state quantities
by arranging a smaller number of eigenvectors than the
number of obtained eigenvalues to create a representation
matrix.
20 [0351] FIG. 19 is a diagram illustrating the result of
principal component analysis in the fifth embodiment. FIG.
19 illustrates a duplicate of the data in FIG. 18, and also
illustrates the axis of the first principal component
having the largest eigenvalue and the axis of the second
25 principal component having the second largest eigenvalue.
The eigenvalues are obtained as the result of principal
component analysis. For easy understanding of the result
of principal component analysis, FIG. 19 further
illustrates elliptical confidence intervals according to
30 the eigenvalue corresponding to the variance of each
principal component around the position where the axis of
the first principal component and the axis of the second
principal component intersect. A confidence interval is a
87
range within which the distribution of data is expected to
lie with a certain probability. Examples of confidence
intervals include a 90% confidence interval within which
90% of the normal data is expected to lie, a 99% confidence
5 interval within which 99% of the normal data is expected to
lie, etc. Confidence intervals can be calculated with a
general statistical method.
[0352] In FIG. 19, the normal data is within the 99%
confidence interval, whereas the anomaly data is located
10 outside the 99% confidence interval. This anomaly data is
considered to occur only with a probability of about 1% as
long as the mechanical apparatus 1008 is normal. Therefore,
the possibility that the mechanical apparatus 1008 has an
anomaly is identified. On the other hand, if a simple
15 threshold is provided for the feature without using
principal component analysis, the anomaly data may lie
within the distribution of the normal data and become
difficult to diagnose.
[0353] The anomaly degree calculation unit 5403
20 according to the fifth embodiment calculates an anomaly
degree as an index quantitatively indicating the degree of
anomaly of the mechanical apparatus 1008. As an example of
the anomaly degree, an index called T2 statistic is used.
The T2 statistic is an index in which the distance from the
25 coordinate center of the axis of each principal component
in the post-mapping data obtained through principal
component analysis is standardized by the variance for each
axis. The distance from the coordinate center of the axis
of each principal component is also called the “Mahalanobis
30 distance”.
[0354] FIG. 20 is a diagram illustrating the anomaly
degree of principal component analysis in the fifth
embodiment. FIG. 20 illustrates a diagram in which the
88
normal data, the anomaly data, the 90% confidence interval,
and the 99% confidence interval illustrated in FIG. 19 are
standardized using the eigenvalues described above. In FIG.
20, the distance between the point at which the axis of the
5 first principal component intersects the axis of the second
principal component and the anomaly data is shown as the
anomaly degree. The 90% confidence interval and the 99%
confidence interval, which are elliptical in FIG. 19, are
circular in FIG. 20. As in FIG. 20, the illustration based
10 on the concept of the Mahalanobis distance enables the
determination of the anomaly degree in which the variation
in normal data is considered.
[0355] The fifth embodiment describes the method for the
anomaly degree calculation unit 5403 to calculate the
15 anomaly degree, using T2 statistic after mapping, into the
principal components computed through principal component
analysis, which is a non-limiting example. Instead of T2
statistic, an index called Q statistic may be used. In
addition, there are various methods called unsupervised
20 learning with which normal data is learned and the
distribution thereof is captured so that the anomaly degree
can be calculated for new data, similar to principal
component analysis. For example, methods such as one-class
support vector machine, Mahalanobis Taguchi method, and
25 self-organizing maps may be used. If necessary, the
anomaly degree may be calculated after preprocessing such
as normalization is performed on the input state quantities.
[0356] The decision-making unit 5404 according to the
fifth embodiment determines a result of diagnosing the
30 state of the mechanical apparatus 1008 using the anomaly
degree calculated with the above-described method. A
procedure in which the decision-making unit 5404 diagnoses
the state of the mechanical apparatus 1008 using features
89
will be described with reference to FIG. 21. FIG. 21 is a
diagram illustrating an example of changes in anomaly
degree over time in the fifth embodiment. FIG. 21
illustrates a result of periodically plotting the anomaly
5 degree calculated with the above-described method. The
term “periodically” means, for example, every month. The
horizontal axis in FIG. 21 is time and represents the
operating time of the mechanical apparatus 1008.
[0357] The decision-making unit 5404 provides a
10 threshold Fthb for the anomaly degree, and diagnoses the
mechanical apparatus 1008 as having an anomaly when the
anomaly degree exceeds the threshold Fthb.
[0358] In FIG. 21, time Ttb0 is the operation start time.
The anomaly degree keeps smaller than the threshold Fthb
15 while fluctuating to some extent from time Ttb0 to before
time Ttb1. When the anomaly degree is less than the
threshold, the decision-making unit 5404 diagnoses the
mechanical apparatus 1008 as normal, and outputs the
diagnosis result.
20 [0359] In the example of FIG. 21, the average value of
the anomaly degree gradually increases with the lapse of
time, and the anomaly degree exceeds the threshold Fthb at
time Ttb1. In this case, the state diagnosis unit 5006
diagnoses the mechanical apparatus 1008 as having an
25 anomaly at time Ttb1, and outputs the diagnosis result.
[0360] There are various ways of determining the
threshold Fthb. An example is to set the anomaly degree
corresponding to the 99% confidence interval of the normal
data as the threshold Fthb. Alternatively, the anomaly
30 degree associated with a past anomaly in another mechanical
apparatus may be set as the threshold Fthb. In addition,
the anomaly degree may be determined with reference to the
anomaly degree obtained immediately after the start of
90
operation of the mechanical apparatus 1008. In addition,
the threshold Fthb may be dynamically set. For example, a
plurality of mechanical apparatuses may be operated, and
meanwhile the anomaly degrees thereof may be individually
5 calculated, so that the threshold Fthb can be periodically
determined by considering the variation in anomaly degree
between the apparatuses. The information processing
apparatus thus configured is advantageous in detecting an
anomaly in the event of a failure in one of the plurality
10 of mechanical apparatuses, because the anomaly degree of
the failed apparatus becomes larger than the anomaly
degrees of the other devices.
[0361] In the present embodiment, the mechanical
apparatus 1008 is diagnosed as an anomaly once the anomaly
15 degree exceeds the threshold Fthb, but this method is only
an example. In order to reduce wrong diagnosis, or
erroneous determination, due to the influence of noise or
the like, a statistical method such as an examination based
on the distribution of anomaly degrees in a certain period
20 may be adopted.
[0362] As described above, the information processing
apparatus according to the fifth embodiment diagnoses the
state of the mechanical apparatus based on the anomaly
degree as an index quantitatively indicating the degree of
25 anomaly of the mechanical apparatus. This brings about not
only the effects of the other embodiments but also an
additional effect that the state of the mechanical
apparatus can be estimated with higher accuracy.
[0363] Sixth Embodiment.
30 FIG. 22 is a diagram illustrating an exemplary
configuration of an information processing system 100E
including an information processing apparatus 6000
according to the sixth embodiment. The information
91
processing system 100E illustrated in FIG. 22 has the
configuration of the information processing system 100
illustrated in FIG. 1, except that the state diagnosis unit
1006 is replaced with a state diagnosis unit 6006. Other
5 parts of the configuration are identical or equivalent to
those of the information processing system 100 illustrated
in FIG. 1. Identical or equivalent components are denoted
by the same reference signs, and redundant descriptions are
omitted. Note that the present embodiment describes an
10 example in which the state diagnosis unit 6006 is applied
to the information processing apparatus 1000 illustrated in
FIG. 1, but the state diagnosis unit 6006 may be applied to
any of the information processing apparatuses 2000, 3000,
and 4000 illustrated respectively in FIGS. 9, 11, and 13.
15 [0364] FIG. 23 is a diagram illustrating an exemplary
configuration of the state diagnosis unit 6006 according to
the sixth embodiment. The state diagnosis unit 6006
includes a state quantity acquisition unit 6401, a learning
unit 6402, a state estimation unit 6403, and a decision20 making unit 6404. The state quantity acquisition unit 6401
acquires state quantities including a feature. The
learning unit 6402 learns the relationship between the
state of the mechanical apparatus 1008 and the state
quantity based on learning data that associates the
25 relationship between the state of the mechanical apparatus
1008 and the state quantities acquired by the state
quantity acquisition unit 6401. The state estimation unit
6403 estimates the state of the mechanical apparatus 1008
based on the state quantities input to the learning unit
30 6402 and a learning result from the learning unit 6402.
The decision-making unit 6404 determines a diagnosis result
by diagnosing the state of the mechanical apparatus 1008
based on the result estimated by the state estimation unit
92
6403.
[0365] The state quantity acquisition unit 6401 acquires,
as state quantities, information including a set value
given to the mechanical apparatus 1008 together with a
5 feature. As examples of features, the skewness and the
kurtosis sequentially calculated with the above-described
method can be used. As the information of the mechanical
apparatus 1008 for use as one of the state quantities, the
set value of the motor speed described above can be used.
10 Note that the case described in the present embodiment, in
which three types of information, namely the skewness, the
kurtosis, and the set value of the motor speed, are input
to the state quantity acquisition unit 6401, is a nonlimiting example. Four or more types of information may be
15 input to the state quantity acquisition unit 6401.
[0366] The learning unit 6402 and the state estimation
unit 6403 may learn the relationship between the state
quantities and the state of the mechanical apparatus 1008
through what is called supervised learning according to a
20 neural network model, for example. Here, a model that
provides a large amount of learning data, i.e. a set of
inputs (state quantities) and associated results (labels),
to a learning unit to learn features in those data and
estimate results from inputs is called supervised learning.
25 A neural network includes an input layer composed of a
plurality of neurons, an intermediate layer (hidden layer)
composed of a plurality of neurons, and an output layer
composed of a plurality of neurons. The number of
intermediate layers may be one, or may be two or more.
30 [0367] FIG. 24 is a diagram illustrating an exemplary
structure of the state estimation unit 6403 according to
the sixth embodiment. The inputs are state quantities.
For ease of explanation, the neural network in FIG. 24 has
93
three inputs and three layers. When a plurality of inputs
are input to the input layer composed of X1 to X3, the
input values are multiplied by weights W1, i.e. W11 to W16,
and the resultant values are input to the intermediate
5 layer composed of Y1 and Y2. Further, the input values to
the intermediate layer are multiplied by weights W2, i.e.
W21 to W26, and the resultant values are output from the
output layer composed of Z1 to Z3. This output result
varies depending on the values of the weights W1 and the
10 values of the weights W2.
[0368] In an example of learning with the neural network
according to the sixth embodiment, the weights W1 and the
weights W2 are adjusted such that the probability of each
state output from the output layers Z1 to Z3 as the result
15 of the input of state quantities 1 to 3 to the input layers
X1 to X3 matches the label of the learning data. Note that
the information processing apparatus 6000 may be configured
by being equipped with the learned state estimation unit
6403 that has executed the learning processing according to
20 the sixth embodiment. The learned state estimation unit
6403 may include learned data, a learned program, or a
combination thereof. By using the learned state estimation
unit 6403, the results of learning with other information
processing apparatuses are available. Therefore, it is
25 possible to provide the information processing apparatus
6000 capable of implementing diagnosis without newly
performing learning.
[0369] FIG. 24 illustrates an example in which the
skewness is input to the input layer X1, the kurtosis is
30 input to the input layer X2, and the set value of the motor
speed is input to the input layer X3. The skewness is an
example of state quantity 1 input to the input layer X1,
the kurtosis is an example of state quantity 2 input to the
94
input layer X2, and the set value of the motor speed is an
example of state quantity 3 input to the input layer X3.
From the output layer Z1, the probability that the ball
screw shaft 1224 of the mechanical apparatus 1008 has
5 failed is output as the probability of state 1. From the
output layer Z2, the probability that the coupling 1220 of
the mechanical apparatus 1008 has failed is output as the
probability of state 2. From the output layer Z3, the
probability that the mechanical apparatus 1008 is in a
10 normal state is output as the probability of state 3. In
the calculation of outputs, for example, the softmax
function may be used so that the sum of all outputs is one,
that is, 100%. The use of this function ensures an easy
understanding of the estimation results.
15 [0370] The neural network illustrated in FIG. 24 learns
the relationship between the state of the mechanical
apparatus 1008 and state quantities 1 to 3 through
supervised learning according to the data set created based
on the learning data input to the learning unit 6402. The
20 learning is preferably performed such that any of the
outputs of states 1 to 3 is one (probability of 100%) and
the other outputs are zero (probability of 0%), assuming
that information indicating the true state of the
mechanical apparatus 1008 called labels is correctly
25 obtained.
[0371] The configuration of the learning unit 6402 and
the state estimation unit 6403 is not limited to the neural
network. For example, many methods for learning the
relationship between state quantities and labels and
30 estimating a state from state quantities are known, such as
k-nearest neighbor algorithm, binary tree search, support
vector machine, linear regression, and logistic regression.
Therefore, the learning unit 6402 and the state estimation
95
unit 6403 may be configured by applying these methods.
[0372] The decision-making unit 6404 determines a
diagnosis result by diagnosing the state of the mechanical
apparatus 1008 based on the result estimated by the state
5 estimation unit 6403. For example, if the probability that
the mechanical apparatus 1008 is normal is highest, it is
preferable to output a diagnosis result indicating normal
as the diagnosis result of the mechanical apparatus 1008.
If the probability that the ball screw shaft 1224 has
10 failed or the probability that the coupling 1220 has failed
is highest, it is preferable to output a diagnosis result
indicating the failed portion. If the sum of the
probability that the ball screw shaft 1224 has failed and
the probability that the coupling 1220 has failed is larger
15 than the probability of normal, it is preferable to output
a result indicating that some component has failed.
[0373] As described above, the information processing
apparatus according to the sixth embodiment learns the
relationship between the state of the mechanical apparatus
20 and the state quantities based on learning data that
associates the relationship between the state of the
mechanical apparatus and the state quantities, and
estimates the state of the mechanical apparatus based on
the learning result and the state quantities used in the
25 learning. This brings about not only the effect of the
first embodiment but also an additional effect that the
state of the mechanical apparatus can be estimated with
higher accuracy.
[0374] The configurations described in the above30 mentioned embodiments indicate examples. The embodiments
can be combined with another well-known technique and with
each other, and some of the configurations can be omitted
or changed in a range not departing from the gist.
96
Reference Signs List
[0375] 100, 100A, 100B, 100C, 100D, 100E information
processing system; 1000, 2000, 3000, 4000, 5000, 6000
5 information processing apparatus; 1001, 2001, 3001 sensor
data acquisition unit; 1002 internal variable holding
unit; 1003, 2003, 4003 internal variable calculation unit;
1004, 2004, 4004 feature calculation unit; 1005, 3005
initialization processing unit; 1006, 4006, 5006, 6006
10 state diagnosis unit; 1008 mechanical apparatus; 1009
motor; 1010 sensor; 1099, 2099 apparatus control unit;
1210 ball screw; 1212 movable portion; 1213 guide; 1220
coupling; 1224 ball screw shaft; 1230 servomotor; 1231
servomotor shaft; 1232 current sensor; 1233 encoder; 1240
15 driver; 1250, 1280 display; 1260 PLC; 1270 PC; 1291
processor; 1292 memory; 1293 processing circuitry; 4007
convergence degree calculation unit; 5401, 6401 state
quantity acquisition unit; 5402, 6402 learning unit; 5403
anomaly degree calculation unit; 6403 state estimation
20 unit; 5404, 6404 decision-making unit.
97
We Claim:
[Claim 1] An information processing apparatus comprising:
a sensor data acquisition unit to acquire measurement
5 values of a physical quantity of a mechanical apparatus
measured by a sensor, and hold, as sensor data, measurement
values from a first time point to an N-th time point (N is
an integer of two or more) among the measurement values;
an internal variable holding unit to hold a smaller
10 number of values of an internal variable than the N, the
internal variable being sequentially calculated in time
series based on the sensor data;
an internal variable calculation unit to calculate the
internal variable corresponding to a (j+1)-th time point (j
15 is an integer of one to N−1) based on the sensor data at
the (j+1)-th time point and the internal variable
corresponding to a j-th time point;
a feature calculation unit to calculate a feature by
extracting a statistical characteristic included in the
20 sensor data from the first time point to the N-th time
point based on the internal variable at the N-th time
point; and
a state diagnosis unit to make a diagnosis of a state
of the mechanical apparatus based on the feature.
25
[Claim 2] The information processing apparatus according to
claim 1, wherein
the feature is at least one of variance, standard
deviation, root mean square, skewness, and kurtosis of the
30 sensor data.
[Claim 3] The information processing apparatus according to
claim 1 or 2, wherein
98
the mechanical apparatus is driven by a motor, and
the sensor data acquisition unit acquires, as the
sensor data, at least one of measurement values of position,
speed, acceleration, operation command, current, voltage,
5 torque, force, pressure, sound, and light amount measured
by the sensor as the motor is driven.
[Claim 4] The information processing apparatus according to
any one of claims 1 to 3, comprising
10 an initialization processing unit to execute
initialization processing of setting the internal variable
at the first time point to a value between a preset maximum
and a preset minimum.
15 [Claim 5] The information processing apparatus according to
claim 4, wherein
the sensor data acquisition unit determines two or
more time points between the first time point and the j-th
time point based on at least one of an acquisition cycle
20 that is an interval of time for acquiring the sensor data,
an operation signal representing a status of operation of
the mechanical apparatus, and a data value in the sensor
data, and generates a calculation permission flag for
updating an internal variable based on the two or more time
25 points determined, and
for each u-th time point (u is an integer of one to
the j) indicated by the calculation permission flag, the
internal variable calculation unit sets the internal
variable at a (u+1)-th time point to a value of the
30 internal variable at the u-th time point.
[Claim 6] The information processing apparatus according to
claim 4, wherein
99
the sensor data acquisition unit determines one or
more time points between the first time point and the N-th
time point based on at least one of an acquisition cycle
that is an interval of time for acquiring the sensor data,
5 an operation signal representing a status of operation of
the mechanical apparatus, and the sensor data, and
generates an initialization trigger for initializing an
internal variable based on the one or more time points
determined, and
10 the initialization processing unit executes processing
of initializing the internal variable based on the
initialization trigger.
[Claim 7] The information processing apparatus according to
15 any one of claims 1 to 6, wherein
the internal variable calculation unit calculates the
internal variable based on a forgetting coefficient larger
than zero and smaller than one, the forgetting coefficient
being used for weighting that makes the sensor data at a
20 later time have a larger influence on the feature than the
sensor data at an earlier time.
[Claim 8] The information processing apparatus according to
claim 7, comprising
25 a convergence degree calculation unit to calculate,
based on the internal variable, a convergence degree as an
index quantitatively indicating a degree of convergence of
calculation of the feature.
30 [Claim 9] The information processing apparatus according to
any one of claims 1 to 8, wherein
the state diagnosis unit includes:
a state quantity acquisition unit to acquire state
100
quantities including the feature;
a learning unit to learn a relationship between the
state of the mechanical apparatus and the feature based on
state quantities in a normal state of the mechanical
5 apparatus;
an anomaly degree calculation unit to calculate, based
on a result learned by the learning unit, an anomaly degree
as an index quantitatively indicating a degree of anomaly
of the mechanical apparatus; and
10 a decision-making unit to determine a diagnosis result
by diagnosing the state of the mechanical apparatus based
on the anomaly degree.
[Claim 10] The information processing apparatus
15 according to any one of claims 1 to 9, wherein
the state diagnosis unit includes:
a state quantity acquisition unit to acquire state
quantities including the feature;
a learning unit to learn a relationship between the
20 state of the mechanical apparatus and the state quantities
based on learning data that associates the relationship
between the state of the mechanical apparatus and the state
quantities;
a state estimation unit to estimate the state of the
25 mechanical apparatus based on state quantities input to the
learning unit and a learning result from the learning unit;
and
a decision-making unit to determine a result of the
diagnosis based on a result estimated by the state
30 estimation unit.
[Claim 11] An information processing method comprising:
a first step of acquiring, as sensor data from a
101
sensor that measures a physical quantity of a mechanical
apparatus, a measurement value of the physical quantity at
each time point from a first time point to an N-th time
point (N is an integer of two or more);
5 a second step of holding a smaller number of values of
an internal variable than the N, the internal variable
being sequentially calculated in time series based on the
sensor data;
a third step of calculating the internal variable
10 corresponding to a (j+1)-th time point (j is an integer of
one to N−1) based on the sensor data at the (j+1)-th time
point and the internal variable corresponding to a j-th
time point;
a fourth step of calculating a feature by extracting a
15 statistical characteristic included in the sensor data from
the first time point to the N-th time point based on the
internal variable at the N-th time point; and
a fifth step of making a diagnosis of a state of the
mechanical apparatus based on the feature.
20
[Claim 12] The information processing method according
to claim 11, further comprising
a step of executing initialization processing of
setting the internal variable at the first time point to a
25 value between a preset maximum and a preset minimum.

Documents

Orders

Section Controller Decision Date
43(1), 15 Praveen Patidar 2025-02-17
43(1), 15 Praveen Patidar 2025-02-17

Application Documents

# Name Date
1 202327029905-TRANSLATIOIN OF PRIOIRTY DOCUMENTS ETC. [25-04-2023(online)].pdf 2023-04-25
2 202327029905-STATEMENT OF UNDERTAKING (FORM 3) [25-04-2023(online)].pdf 2023-04-25
3 202327029905-REQUEST FOR EXAMINATION (FORM-18) [25-04-2023(online)].pdf 2023-04-25
4 202327029905-PROOF OF RIGHT [25-04-2023(online)].pdf 2023-04-25
5 202327029905-POWER OF AUTHORITY [25-04-2023(online)].pdf 2023-04-25
6 202327029905-FORM 18 [25-04-2023(online)].pdf 2023-04-25
7 202327029905-FORM 1 [25-04-2023(online)].pdf 2023-04-25
8 202327029905-FIGURE OF ABSTRACT [25-04-2023(online)].pdf 2023-04-25
9 202327029905-DRAWINGS [25-04-2023(online)].pdf 2023-04-25
10 202327029905-DECLARATION OF INVENTORSHIP (FORM 5) [25-04-2023(online)].pdf 2023-04-25
11 202327029905-COMPLETE SPECIFICATION [25-04-2023(online)].pdf 2023-04-25
12 202327029905.pdf 2023-05-03
13 202327029905-MARKED COPIES OF AMENDEMENTS [05-05-2023(online)].pdf 2023-05-05
14 202327029905-FORM 13 [05-05-2023(online)].pdf 2023-05-05
15 202327029905-AMMENDED DOCUMENTS [05-05-2023(online)].pdf 2023-05-05
16 Abstract1.jpg 2023-06-03
17 202327029905-FORM 3 [09-10-2023(online)].pdf 2023-10-09
18 202327029905-FORM 3 [02-11-2023(online)].pdf 2023-11-02
19 202327029905-FER.pdf 2024-05-10
20 202327029905-Information under section 8(2) [04-07-2024(online)].pdf 2024-07-04
21 202327029905-FORM 3 [04-07-2024(online)].pdf 2024-07-04
22 202327029905-FER_SER_REPLY [09-07-2024(online)].pdf 2024-07-09
23 202327029905-DRAWING [09-07-2024(online)].pdf 2024-07-09
24 202327029905-COMPLETE SPECIFICATION [09-07-2024(online)].pdf 2024-07-09
25 202327029905-CLAIMS [09-07-2024(online)].pdf 2024-07-09
26 202327029905-ABSTRACT [09-07-2024(online)].pdf 2024-07-09
27 202327029905-Response to office action [13-08-2024(online)].pdf 2024-08-13
28 202327029905-US(14)-HearingNotice-(HearingDate-10-09-2024).pdf 2024-08-20
29 202327029905-REQUEST FOR ADJOURNMENT OF HEARING UNDER RULE 129A [02-09-2024(online)].pdf 2024-09-02
30 202327029905-US(14)-ExtendedHearingNotice-(HearingDate-09-10-2024)-1400.pdf 2024-09-10
31 202327029905-FORM-26 [08-10-2024(online)].pdf 2024-10-08
32 202327029905-Correspondence to notify the Controller [08-10-2024(online)].pdf 2024-10-08
33 202327029905-Written submissions and relevant documents [23-10-2024(online)].pdf 2024-10-23
34 202327029905-PatentCertificate17-02-2025.pdf 2025-02-17
35 202327029905-IntimationOfGrant17-02-2025.pdf 2025-02-17

Search Strategy

1 Document1E_08-05-2024.pdf

ERegister / Renewals

3rd: 16 May 2025

From 18/12/2022 - To 18/12/2023

4th: 16 May 2025

From 18/12/2023 - To 18/12/2024

5th: 16 May 2025

From 18/12/2024 - To 18/12/2025

6th: 04 Nov 2025

From 18/12/2025 - To 18/12/2026