Patent ID: 12259432

DETAILED DESCRIPTION OF THE INVENTION

Details of examples of the embodiments of the present disclosure are given with the accompanying drawings below. In the reference drawings, the same parts are denoted by the same numerals or symbols, and repeated description related to the same parts is in principle omitted. Further, to keep the description of the application simple, the names of corresponding information, signals, physical quantities, elements or parts corresponding to the numerals or symbols are sometimes omitted by denoting numerals or symbols of reference information, signals, physical quantities, elements or parts.

First Embodiment

The first embodiment of the disclosure is described below.FIG.1shows a block diagram of an overall configuration of a motor control system according to the first embodiment of the present disclosure. The motor control system according to the first embodiment includes: a motor control integrated circuit (IC)10, functioning as a motor control device or including a motor control device; a debugger20; and a personal computer (PC)30as an example of a computing device. The term IC refers to an integrated circuit.FIG.2shows a diagram of an overall configuration of a motor driving system including the motor control system of the first embodiment and a motor40.

The motor control IC10is an electronic component formed by packaging a semiconductor chip formed with a semiconductor integrated circuit into a housing (package) including a sealing resin and sealed therein. A plurality of external terminals is provided in an exposed manner on the housing of the motor control IC10. As shown inFIG.2, the motor control IC10is mounted on a substrate SUB, and the external terminals are electrically connected to corresponding wiring patterns (not shown) on the substrate SUB. The motor control IC10inputs and outputs signals from and to circuits and devices outside the motor control IC10through the external terminals. Moreover, the number of the external terminals of the motor control IC10and the appearance of the motor control IC10shown inFIG.2are only exemplary. In addition, a plurality of electronic components and circuits other than the motor control IC10may be further mounted on the substrate SUB, and these components and circuits are omitted fromFIG.2.

FIG.3shows a block diagram of a brief configuration of the motor control IC10. The semiconductor integrated circuit in the motor control IC10forms a central processing unit (CPU)11, a memory12and a debug control unit14. To describe the functions, the CPU11, the memory12and the debug control unit14are shown; however, these parts may be combined into a large scale integration (LSI) circuit in the motor control IC10.

The CPU11is connected to the memory12by a bus13, and is capable of accessing the memory12through the bus13. Accessing the memory12refers to performing data write to the memory12(that is, writing data to the memory12) or data read from the memory12(that is, reading data stored in the memory12). The memory12has one or more one read-only memories (ROM), one or more random access memories (RAM) and one or more peripheral devices serving as one or more peripheral circuits. Moreover, it may be considered that a register (not shown) provided on the CPU11is also included in the memory12. However, the CPU11can access the register without going through the bus13.

The CPU11controls driving of the motor40by executing a motor control program stored in the motor control IC10. The motor control program is stored in the ROM in the memory12or a program ROM (not shown) arranged in the motor control IC10.

The debug control unit14is a module that does not take part in original driving control of the motor40, and includes such as a small-size microcomputer. The debug control unit14collaborates with the debugger20and the PC30to assist the debug operation described below.

As shown inFIG.2, a connector51is mounted on the substrate SUB, and the connector51is connected to the motor40by a wire52. The motor control IC10operates by way of a current supplied to the motor40through the connector51and the wire52, and drives the motor40by supplying the current (to cause the motor40to generate torque so as to rotate the motor40). A connector53is further mounted on the substrate SUB. Connectors55and56are mounted on the debugger20, and a connector58is mounted on the PC30. The connectors53and55are connected by a wire54, and the connectors56and58are connected by a wire57.

The debugger20and the substrate SUB may be connected by the wire54, or may not be connected by the wire54(in other words, the debugger20and the motor control IC10may be connected by the wire54in between, or may not be connected by the wire54). When the debugger20and the substrate SUB are connected by the wire54in between, the debugger20is connected to the motor control IC10on the substrate SUB, and the debugger20and the motor control IC10can perform bidirectional communication of any signals through the connector53, the wire54and the connector55. When the debugger20and the substrate SUB are not connected by the wire54in between, the debugger20and the motor control IC10on the substrate SUB are not connected and cannot perform bidirectional communication. Signal exchange between the debugger20and the motor control IC10is performed by the debug control unit14.

The debugger20and the PC30may be connected by the wire57, or may not connected by the wire57. When the debugger20and the PC30are connected by the wire57in between, the debugger20and the PC30can perform bidirectional communication of any signals through the connector56, the wire57and the connector58; the debugger20and the PC30cannot perform the bidirectional communication when not connected by the wire57.

Unless otherwise specified below, the debugger20and the substrate SUB are connected by the wire54, and the debugger20and the PC30are connected by the wire57. Moreover, in this embodiment, a signal or any information represented (control amount, status amount and physical quantity) or information indicated by the signal is sometimes referred to as data.

Debug software31(referring toFIG.1) is executed on the PC30. A user of the motor driving system (to be referred to as the user) is allowed to perform, by operating the PC30currently executing the debug software31, a debug operation on the program executed by the CPU11. In the debug operation, the memory12can be accessed through the debugger20and the PC30. That is, the debugger20and the PC30can be externally connected to the motor control IC10, and function as an external debug device capable of accessing the memory12.

That is, for example, the user can input an operation OPREADto the PC30an instruction for reading data in the debug operation, as shown inFIG.4(a). Once the operation OPREADis received, the PC30sends a request signal REQREADcorresponding to the operation OPREADto the debugger20. Once the request signal REQREADis received, the debugger20sends a read command COMREADcorresponding to the request signal REQREADto the motor control IC10. With the operation OPREAD, a program variable or a read target address in the memory12is specified, and the request signal REQREADand the read command COMREADinclude information of the read target address. The read command COMREADis received by the debug control unit14. Once the read command COMREADis received, the debug control unit14accesses the read target address in the memory12, reads data in the read target address, uses the read data as data DREADand sends the same to the debugger20. The data DREADis sent to the PC30from the debugger20, and the PC30acquires the data DREAD. Moreover, in another method of specifying the program variable or the read target address in the memory12by the operation OPREAD, information generated when firmware written in the C language is converted (translated) to a machine language may also be used.

In addition, for example, the user can input an operation OPWRITEto the PC30an instruction for writing data in the debug operation, as shown inFIG.4(b). Once the operation OPWRITEis received, the PC30sends a request signal REQWRITEcorresponding to the operation OPWRITEto the debugger20. Once the request signal REQWRITEis received, the debugger20sends a write command COMWRITEcorresponding to the request signal REQWRITEto the motor control IC10. With the operation OPWRITE, a program variable or a write target address and write data (equivalent to data supposed to be written to the write target address) in the memory12is specified, and the request signal REQWRITEand the write command COMWRITEinclude information of the write target address and information of the write data. The write command COMWRITEis received by the debug control unit14. Once the write command COMWRITEis received, the debug control unit14accesses the write target address in the memory12, and writes the write data to the write target address. Moreover, in another method of specifying the program variable or the write target address in the memory12by the operation OPWRITE, information generated when firmware written in the C language is converted (translated) to a machine language may also be used.

Access to the memory12is as described above; however, in addition to implementing access to the memory12, various processes may also be performed in the debug operation. For example, in the debug operation, the user may also interrupt by operating the PC30a program currently executed by the CPU11, or refer to or modify the state of a state machine in the CPU11.

FIG.5shows a functional block diagram of a motor driving system according to the first embodiment. The motor control IC10includes a motor control unit110for driving and controlling the motor40. A driver50is provided between the motor control IC10and the motor40. However, as a variation, the driver50may also be built in the motor control IC10.

The motor control unit110includes a speed detection unit111, a speed command supply unit112, a subtractor (arithmetic calculator)113, a current detection unit114, a speed control unit115, a subtractor116and a current control unit117as function modules. The function modules may be implemented by the motor control program executed by the CPU11.

The motor40includes a stator of an armature winding, and a rotor rotated and driven by supplying a current to the armature winding. In this embodiment, supplying a current to the motor40specifically refers to supplying a current to the armature winding of the motor40, and rotation of the motor40specifically refers to rotation of the rotor. A rotation angle of the rotor from a predetermined reference state of the rotor is referred to as a rotor position θ. A position detector (not shown) for detecting the rotor position θ is mounted on the motor40. The position detector includes, for example, a rotation encoder or decomposer. The speed detection unit111detects a rotating speed ω of the motor40based on a detection result of the position detector (that is, by performing differentiation on the rotor position θ detected). The rotating speed ω represents the rotating speed of the rotor in terms of electric angle.

The speed command supply unit112provides a signal of a speed command ω* indicating a target value of the rotating speed ω to the subtractor113. The speed command ω* is determined according to a signal provided by an upper circuit (not shown) arranged outside the motor control IC10to the motor control IC10. However, in an application where the speed command ω* is fixed, the speed command ω* may also be set in the motor control IC10, regardless of what the signal from the upper circuit is.

The subtractor113obtains a speed difference Δω between the signal of the rotating speed ω obtained by the speed detection unit111and the signal of the speed command ω* provided by the speed command supply unit112based on these two signals. However, to obtain the speed error Δω, a disturbance signal ωNis sometimes inputted from the debugger20to the subtractor113(that is, sometimes the disturbance signal ωNis superimposed on the speed command ω*), and the speed error Δω obtained is then represented as “Δω=ω*−ω+ωN”. InFIG.5, the disturbance signal ωNis inputted to the subtractor113. When the disturbance signal ωNis not inputted to the subtractor113, “ωN=0”, and thus “Δω=ω*−ω”.

The current detection unit114detects the current supplied from the driver50to the armature winding of the motor40, i.e., a motor current i (that is, detecting the value of the motor current i). For example, the current detection unit114may use a current sensor provided between the driver50and the motor40to detect the motor current i. A signal of the motor current i detected is sent to the subtractor116.

The speed control unit115generates, according to the speed difference Δω, a current command i* representing a target value of the motor current i, and outputs the signal of the current command i* to the subtractor116. At this point, the speed control unit115generates the current command i* by way of converging the speed error Δω to zero using proportional integration control.

The subtractor116obtains a speed difference Δi between the signal of the motor current i detected by the current detection unit114and the signal of the current command i* provided from the speed control unit115based on these two signals. The current error Δi is represented by “Δi=i*−i”.

The current control unit117controls the driver50according to the current error Δi, and accordingly supplies a current to the motor40. At this point, the current control unit117controls the driver50by way of converging the current error Δi to zero using proportional integration control. More specifically, the current control unit117generates, according to the current error Δi, the driving control signal for the driver50by way for converging the current error Δi to zero, and provides the driving control signal to the driver50. The driver50supplies a current corresponding to the driving control signal to the armature winding of the motor40. The driver50includes, for example, an inverter circuit, which generates a pulse width modulated square wave voltage from a predetermined direct-current (DC) voltage and provides the square wave voltage to the armature winding so as to supply the motor current i to the motor40.

Inclusive of the number of phases of the motor40, the type of the motor40may be any as desired. However, for example, the motor40is typically a three-phase permanent magnet synchronous motor, which includes a rotor provided with a permanent magnet, and a stator provided with armature windings having a U phase, a V phase and a W phase. In this case, in a rotating coordinate system that rotates at the same speed as the rotating speed of magnetic flux produced by the permanent magnet of the rotor, the direction of the magnetic flux produced by the permanent magnet is the d axis, and the axis orthogonal to the d axis is the q axis. Thus, an angle (phase) of the d-axis observed from a predetermined fixed axis (e.g., the fixed axis of the U-phase armature winding) is equivalent to the rotation angle (i.e., the rotor position θ) of the motor40, and the rotating speed ω of the motor40is equivalent to the rotating speed of the d-axis (an angular velocity in terms of electric angle).

Moreover, when the motor40is a three-phase permanent magnet synchronous motor, the driver50includes a three-phase inverter circuit that supplies a current to the armature winding of each phase, and the motor current i, the current command i* and the current error Δi are respectively vectors. To perform vector control on the motor40, for example, based on the detection value of the current flowing in the armature winding of each phase by the current sensor, and the rotor position θ detected by the position detector, the d-axis component (id) and the q-axis component (iq) of the current supplied from the driver50to the motor40are obtained, and the d-axis component and q-axis component obtained are used as the signal of the motor current i and sent to the subtractor116. Then, the speed control unit115includes target values (id* and iq*) of the d-axis component (id) and the q-axis component (iq) of the current supplied from the driver50to the motor40in the signal of the current command I*, and the current control unit117controls the driver50by way of coinciding the d-axis component (id) and the q-axis component (iq) of the current supplied from the driver50to the motor40with their respective target values (id* and iq*).

In the motor driving system, the external debug device including the debugger20and the PC30is connected to the motor control IC10, accordingly performing a frequency characteristics measurement process. In the frequency characteristics measurement process, frequency characteristics of a control loop formed by the motor control unit110are measured. The frequency characteristics measurement process is implemented by a disturbance signal superimposer22and a frequency characteristics deriver32. The disturbance signal superimposer22is provided on the debugger20, and the frequency characteristics deriver32is provided on the PC30. The debug software31(referring toFIG.1) is executed by the PC30to implement the function of the frequency characteristics deriver32. Moreover, the PC30is provided with a display33formed by such as a liquid crystal display panel.

After the user inputs a predetermined frequency characteristics instruction operation to the PC30, a request signal71is sent from the PC30(for example, from the frequency characteristics deriver32) to the debugger20. After the debugger20receives the request signal71, the disturbance signal superimposer22generates the disturbance signal ωN, and outputs the disturbance signal ωNto the motor control IC10. The disturbance signal ωNinputted to the motor control IC10is introduced to the control loop of the motor control unit110through the debug control unit14(referring toFIG.3), and specifically, becomes an input signal of the adder113.

The disturbance signal ωNincludes a noise including signal components of each frequency within a predetermined measurement target frequency band. The noise including signal components of each frequency within the predetermined measurement target frequency band is generated by scanning the frequency of the disturbance signal ωNwithin a measurement target frequency band. In the control loop of the motor control unit110, signals of state amounts or control amounts representing the speed command ω*, the rotating speed ω, the speed error Δω, the current command i*, the motor current i and the current error Δi are digital signals. Thus, the disturbance signal ωNis generated in the form of the digital disturbance signal having an angular speed dimension. The type of the noise serving as the disturbance signal ωNmay be any as desired. The noise serving as the disturbance signal ωNmay be white noise, or may be color noise (e.g., pink noise or gray noise). The method for generating the digital disturbance signal (noise) may be implemented by any commonly known method. The request signal71specifies characteristics (a measurement target frequency band and signal amplitude) of the disturbance signal ωN, and the disturbance signal ωNis generated as specified.

The subtractor113obtains the speed error Δω represented by “Δω=ω*−ω+ωN” as above. In practice, for example, in the subtractor113, after a first calculation value (ω*−ω) is obtained, the speed error Δω represented by a second calculation value (ω*−ω+ωN) can be obtained. In the frequency characteristics measurement process, the debug control unit14(referring toFIG.3) reads the first calculation value (ω*−ω) and the second calculation value (ω*−ω+ωN) from the subtractor113, and sends a result signal72including the first calculation value (ω*−ω) and the second calculation value (ω*−ω+ωN) to the debugger20. In practice, for example, the first and second calculation values are stored in a specific storage region in the memory12(may be the register of the CPU11), and the debug control unit14acquires the first and second calculation values by reading the data stored in the specific storage region. Moreover, while the disturbance signal ωNis inputted to the subtractor113, the value of the speed command ω* is fixed at a certain value.

The result signal72is transmitted from the debugger20to the PC30, and the frequency characteristics deriver32derives the frequency characteristics of the control loop of the motor control unit110based on the result signal72. The derived frequency characteristics herein are frequency characteristics with respect to the speed control loop of the motor40(to be simply referred to as frequency characteristics in this embodiment hereafter). The speed control loop is a control loop (feedback control system) that uses the speed command ω* as an input and the rotating speed ω as an output, and includes and is formed by various constituting components represented by numerals111,113,114,115,116,117,50and40. The speed control loop achieves speed control of coinciding or approximating the rotating speed ω with the speed command ω*. However, while the disturbance signal ωNis inputted to the subtractor113, the disturbance signal ωNis superimposed on the speed command ω*, and thus the speed control loop becomes a control loop that uses the superimposed speed command (ω*+ωN) as an input and the rotating speed ω as an output, and performs speed control of coinciding or approximating the rotating speed ω with the superimposed speed command (ω*+ωN).

In the PC30, the frequency characteristics deriver32generates a Bode plot as a diagram representing the derived frequency characteristics, and as shown inFIG.6, the generated Bode plot is displayed on the display33. The Bode plot includes a gain diagram representing frequency dependency of the gain of the control loop, and a phase diagram representing frequency dependency of the phase of the control loop. The control loop of attention of this embodiment is a speed control loop that performs speed control, and for illustration purposes, the gain and phase of the speed control loop are respectively represented by symbols G_ω and P_ω. The gain G_ω and the phase P_ω are a gain and a phase of a transfer function that uses the speed command ω* as an input and the rotating speed ω as an output. That is, the gain G_ω represents a ratio of the amplitude of the rotating speed ω to the amplitude of the speed command ω*, and the phase P_ω represents a phase difference between a signal of the speed command ω* and a signal of the rotating speed ω using the speed command ω* as a reference.

As described above, in order to render a Bode plot, costly measurement equipment such as an FRA is frequently used. However, an FRA is not easily used as being much more costly. Moreover, an FRA mostly uses analog signals for measurement, and to measure frequency characteristics under digital control, processes that are not needed for general operations such as generating analog signals exclusive to the measurement are required. On the other hand, for a motor control device that performs digital control, situations in which a frequency characteristics measurement function is built in advance are also studied. However, since a frequency characteristics measurement function is not needed by original motor control, resources (such as memory capacity) of the motor control device may be constricted, leading to an increased product cost of the motor control device. Considering the situations above, in this embodiment, the disturbance signal superimposer22and the frequency characteristics deriver32in charge of the frequency characteristic measurement process are provided in an external debug device (the debugger20and the PC30) of the motor control IC10. Thus, no costly measurement equipment such an FRA is needed. In addition, a cost increase in the motor control IC10is also suppressed because the frequency characteristics measurement function is centralized on the side of the external debug device (20and30). The motor control IC10is only required to perform common control for driving the motor40.

In the description below, a state in which the external debug device (20and30) and the motor control IC10are connected is referred to as a connected state of the external debug device, and a state in which the external debug device (20and30) and the motor control IC10are not connected is referred to a disconnected state of the external debug device. In the connected state of the external debug device, the motor control IC10and the debugger20are connected by the wire54and the debugger20and the PC30are connected by the wire57, and as described above, transfer of the disturbance signal ωN, the request signal71and the result signal72can be performed. In the disconnected state of the external debug device, the motor control IC10and the debugger20are not connected by the wire54and the debugger20and the PC30are not connected by the wire57, and at least the disturbance signal ωNis not inputted to the motor control IC10.

In the motor control system of this embodiment, frequency characteristics can be measured at any moment while the motor40is driven, by connecting the external debug device (20and30) with the motor control IC10. Accordingly, the disconnected state of the external debug device is considered as a starting point. In the disconnected state of the external debug device, driving of the motor40is controlled in a state in which “ωN=0” using the motor control unit110, that is, the motor control IC10(the motor control unit110) alone drives the motor40without involving the external debug device (20and30). In a state in which the motor40is currently driven and controlled, the disconnected state of the external debug device transitions to the connected state of the external debug device. In the connected state of the external debug device after the transition, the frequency characteristics superimposing process accompanied with superimposition of the disturbance signal ωNcan be performed, accordingly measuring and deriving the frequency characteristics without interrupting the driving control of the motor40. For the motor control unit110inFIG.5, the connected state and the disconnected state of the external debug device differ merely in that the speed commands are respectively ω* and (ω*+ωN).

As such, the state in which the motor control IC10(motor control unit110) alone controls driving of the motor40without superimposing the disturbance signal ωNis used as a starting point, and the disturbance signal ωNcan be superimposed at any moment after that. If the disturbance signal ωNis superimposed, while driving control of the motor40is continually performed using the motor control IC10(motor control unit110), the frequency characteristics are derived by the frequency characteristics deriver32.

The approach above is in particular beneficial for applications in which frequency characteristics need to be measured without interrupting driving of a motor (for example, an application in which the motor40is used in a conventional operation of fans of a base station). For example, it is deemed that frequency characteristics change along with degradation of the motor40. Thus, given that a manager acting as the user periodically checks the frequency characteristics, the level of degradation of the motor40can be estimated, and practices such as replacing the motor40can be performed according to requirements. Moreover, selectively setting an operation mode to a normal mode or a measurement mode upon activation of a motor control device is also studied, and a virtual configuration such as frequency characteristic measurement can be performed only in the measurement mode, with however this virtual configuration being unsuitable for the application described above. In the configuration of this embodiment, at an expected moment during the operations of the motor control IC10and the motor40, the frequency characteristics measurement process can be performed by simply connecting the external debug device (20and30) and the motor control IC10.

Further, because the external debug device (20and30) originally provides a debug function, another signal (to be referred to as a monitor target signal) in the motor control IC10can be monitor at any moment of attention. The moment of attention herein may be any moment within a predetermined period in which the frequency characteristics derivation process is performed by superimposing the disturbance signal ωN. A period in which the disturbance signal ωNis superimposed (that is, a period in which a non-zero disturbance signal ωNis superimposed on the speed command ω*) belongs to the predetermined period. The monitor target signal can be any, given that it is a signal identified and processed in the motor control IC10. However, the monitor target signal is different from a signal referenced by the frequency characteristics deriver32for deriving the frequency characteristics (that is, the signal representing the first calculation value (ω*−ω) and the signal representing the second calculation value (ω*−ω+ωN)). For example, the monitor target signal may be the signal representing the motor current i, or may be the signal representing the rotor position θ. Alternatively, a temperature signal representing the temperature of a predetermined measurement target position in the motor driving system may also be the monitor target signal. The measurement target position may be the temperature in the motor control IC10, or may be the temperature outside the motor control IC10(for example, the temperature at a specific position in the motor40).

By setting that any other signal can be monitor while the frequency characteristics derivation process is performed by superimposing the disturbance signal ωN, the control loop can be evaluated at detail or a debug operation needed can be improved. In a method independent from the method of this embodiment, another tool may be needed if another signal is to be referenced.

As shown inFIG.7, a transfer function estimator34and a gain adjustor35may be further provided in the PC30. The debug software31(referring toFIG.1) is executed by the PC30to implement the function of the transfer function estimator34and the gain adjustor35. Whether the transfer function estimator34operates or not may be set by the user as desired. The same applies to the gain adjustor35.

The transfer function estimator34estimates a transfer function of the control loop in the motor control unit110based on the frequency characteristics derived by the frequency characteristics deriver32. In the configuration inFIG.5, the derived transfer function is a transfer function of the speed control loop that uses the speed command ω* as an input and the rotating speed ω as an output, and represents the frequency characteristics derived by the frequency characteristics deriver32by a mathematical equation. The transfer function estimator34displays the derived transfer function on the display33.

Some analysis models using mathematic equations can be applied for the motor40, and a transfer function can be estimated according to the analysis models. For example, if it is deemed that the motor40is degraded, a change then occurs in the frequency characteristics, and a change may also occur in the transfer function. The user can consider replacing the motor40or consider adjusting control parameters of the motor40according to the level of degradation with reference to the estimated transfer function.

The gain adjustor35adjusts the gain G_ω (that is, increasing or decreasing) of the control loop (herein speed control loop) according to the estimated transfer function. At this point, the gain adjustor35determines a recommended gain according to the estimated transfer function and a predetermined adjustment rule aimed for achieving stable control of the motor40, and sets the recommended gain as the adjusted gain G_ω. Accordingly, stable control of the motor40is improved.

The method for adjusting the gain for any control loop is commonly known, and the gain adjustor35may use any commonly known gain adjusting method (for example, the gain adjusting method disclosed by Japan Patent Publication No. 2016-92935) to adjust the gain G_ω. For example, when the speed control unit115is formed as obtaining the current command i* based on the value of the speed error Δω multiplied by an adjustment coefficient, the gain G_ω may be increased or decreased by increasing or decreasing the adjustment coefficient in the speed control unit115.

A process of modifying the gain G_ω from a gain G_ω1 to a gain G_ω2 by the gain adjustor35may be performed as below. That is, the gain adjustor35sends a gain adjustment request signal including information of the gain G_ω2 to the debugger20, and the debugger20sends the information of the G_ω2 to the motor control IC10in response to the received gain adjustment request signal. The information of the gain G_ω2 is transmitted to the motor control unit110through the debug control unit14, and the gain G_ω is accordingly modified from the gain G_ω1 to the gain G_ω2.

For the sake of convenience, the frequency characteristics derived by the frequency characteristics measurement process before adjusting the gain G_ω are referred to as first frequency characteristics, and the Bode plot based on the first frequency characteristics is referred to as a first Bode plot. After the gain G_ω is adjusted (in other words, after modifying the gain G_ω), the frequency characteristics measurement process is again performed by the external debug device (20and30). For the sake of convenience, the frequency characteristics derived by the frequency characteristics measurement process after adjusting the gain G_ω are referred to as second frequency characteristics, and the Bode plot based on the second frequency characteristics is referred to as a second Bode plot. Once the second Bode plot is obtained after adjusting the gain G_ω, the gain adjustor35changes the Bode plot displayed on the display33from the first Bode plot to the second Bode plot, or the first and second Bode plots are displayed side by side on the display33. Accordingly, the user can visually confirm the adjustment effects of the gain G_ω.

Second Embodiment

The second embodiment of the disclosure is described below. The second embodiment and third embodiment below are embodiments based on the first embodiment. With respect to items specifically described in the second and third embodiments, the details of the first embodiment are applicable to the second and third embodiments, given that no contradictions are incurred. In the description associated with the second embodiment, the details associated with the second embodiment overrule in case of contradictions between the first and second embodiments (the same applies to the third embodiment below). Without incurring contradictions, any multiple implementations in the first to third embodiments may be combined.

In the motor driving system of the present disclosure, the control loop as a frequency characteristics measurement target is not limited to a speed control loop. As an example,FIG.8depicts a configuration of a current control loop set as a frequency characteristics measurement target.FIG.8shows a functional block diagram of a motor control system according to the second embodiment. The configuration and operation of the motor control unit110provided on the motor control IC10, and the configurations and operations of the driver50and the motor40are as those given in the first embodiment. However, in this configuration ofFIG.8, the frequency characteristics of the current control loop are measured by superimposing a disturbance signal iNon the current command i* but not on the speed command ω*. Details on items common between the first and second embodiments are omitted herein, and differences between the two are described.

Similar to the description above, the subtractor116obtains a current difference Δi between a signal of a motor current i detected by the current detection unit114and a signal of a current command i* provided from the speed control unit115based on these two signals. However, to obtain the current error Δi, a disturbance signal iNis sometimes inputted from the debugger20to the subtractor116(that is, sometimes the disturbance signal iNis superimposed on the current command ω*), and the current error Δi obtained is then represented as “Δi=i*−i+iN”. InFIG.8, the disturbance signal iNis inputted to the subtractor116. When the disturbance signal iNis not inputted to the subtractor116, “iN=0”, and thus “Δi=i*−i”.

Two feedback loops are formed in the motor control unit110. Between the two feedback loops, one is a speed control loop as a main loop, and the other is a current control loop as a secondary loop. The current control loop is a control loop (feedback control system) that uses the current command i* as an input and the motor current i as an output, and includes and is formed by various constituting components represented by numerals114,116,117and50. The current control loop achieves current control of coinciding or approximating the motor current i with the current command i*. However, while the disturbance signal iNis inputted to the subtractor116, the disturbance signal iNis superimposed on the current command i*, and thus the current control loop becomes a control loop that uses the superimposed current command (i*+iN) as an input and the motor current i as an output, and performs current control of coinciding or approximating the motor current i with the superimposed current command (i*+iN).

A frequency characteristics measurement process associated with the configuration inFIG.8is described below. After the user inputs a predetermined frequency characteristics instruction operation to the PC30, a request signal71ais sent from the PC30(for example, from the frequency characteristics deriver32) to the debugger20. After the debugger20receives the request signal71a, the disturbance signal superimposer22generates the disturbance signal iN, and outputs the disturbance signal iNto the motor control IC10. The disturbance signal iNinputted to the motor control IC10is introduced to the control loop of the motor control unit110through the debug control unit14(referring toFIG.3), and specifically, becomes an input signal of the adder116.

The disturbance signal iNincludes a noise including signal components of each frequency within a predetermined measurement target frequency band. The noise including signal components of each frequency within the predetermined measurement target frequency band is generated by scanning the frequency of the disturbance signal iNwithin a measurement target frequency band. Thus, the disturbance signal iNis generated in the form of the digital disturbance signal having an electrical current dimension. The type of the noise serving as the disturbance signal iNmay be any as desired. The noise serving as the disturbance signal iNmay be white noise, or may be color noise (e.g., pink noise or gray noise). The request signal71aspecifies characteristics (a measurement target frequency band and signal amplitude) of the disturbance signal iN, and the disturbance signal iNis generated as specified.

The subtractor116obtains the current error Δi represented by “Δi=i*−i+iN” as above. In practice, for example, in the subtractor116, after a first calculation value (i*−i) is obtained, the current error Δi represented by the second calculation value (i*−i+iN) can be obtained. In the frequency characteristics measurement process, the debug control unit14(referring toFIG.3) reads the first calculation value (i*−i) and the second calculation value (i*−i+iN) from the subtractor116, and sends a result signal72aincluding the first calculation value (i*−i) and the second calculation value (i*−i+iN) to the debugger20. In practice, for example, the first and second calculation values are stored in a specific storage region in the memory12(may be the register of the CPU11), and the debug control unit14acquires the first and second calculation values by reading the data stored in the specific storage region.

The result signal72ais transmitted from the debugger20to the PC30, and the frequency characteristics deriver32derives the frequency characteristics of the control loop of the motor control unit110based on the result signal72a. The derived frequency characteristics herein are frequency characteristics with respect to the current control loop of the motor40(to be simply referred to as frequency characteristics in this embodiment hereafter).

In the PC30, the frequency characteristics deriver32generates a Bode plot as a diagram representing the derived frequency characteristics, and as shown inFIG.6, the generated Bode plot is displayed on the display33. The Bode plot includes a gain diagram representing frequency dependency of the gain of the control loop, and a phase diagram representing frequency dependency of the phase of the control loop. The control loop of attention in this embodiment is the current control loop that performs current control. For the sake of convenience, the gain and phase of the current control loop are respectively represented by symbols G_i and P_i, and gain G_i and the phase P_i are a gain and a phase of a transfer function that uses the current command i* as an input and the motor current i as an output. That is, the gain G_i represents a ratio of the amplitude of the motor current i to the amplitude of the current command i*, and the phase P_i represents a phase difference between a signal of the current command i* and a signal of the motor current i using the current command i* as a reference.

In the second embodiment, similar to the first embodiment, frequency characteristics can be measured at any moment while the motor40is driven, by connecting the external debug device (20and30) with the motor control IC10. That is, the state in which the motor control IC10(motor control unit110) alone controls driving of the motor40without superimposing the disturbance signal iNis used as a starting point, and the disturbance signal iNcan be superimposed at any moment after that. If the disturbance signal iNis superimposed, while driving control of the motor40is continually performed using the motor control IC10(motor control unit110), the frequency characteristics (frequency characteristics of the current control loop) are derived by the frequency characteristics deriver32.

Moreover, without incurring contradictions, the techniques described in the first embodiment may be applied to the implementation of the second embodiment. However, in the application, the disturbance signal ωNin the first embodiment is otherwise referred to as the disturbance signal iNin the second embodiment. That is, for example, in the configuration inFIG.8, the PC30may be provided with the transfer function estimator34and the gain adjustor35(referring toFIG.7). The transfer function estimator34estimates a transfer function of the control loop in the motor control unit110based on the frequency characteristics derived by the frequency characteristics deriver32. In the configuration inFIG.8, the derived transfer function is a transfer function of the current control loop that uses the current command i* as an input and the motor current i as an output, and represents the frequency characteristics derived by the frequency characteristics deriver32by a mathematical equation. The transfer function estimator34displays the derived transfer function on the display33. Moreover, the gain adjustor35adjusts (that is, increasing or decreasing) the gain of the control loop (the current control loop herein) according to the estimated transfer function.

The configuration capable of measuring the frequency characteristics of a current control loop is described with reference toFIG.8. However, apart from the above, a position control loop (not shown) that controls the rotor position θ according to a position command θ* may also be formed in the motor control unit110. In this case, frequency characteristics of the position control loop can be derived by superimposing a disturbance signal on the position command θ*.

Third Embodiment

The third embodiment of the disclosure is described below.

The motor control system of the present disclosure specifically described by way of examples in the first and second embodiments includes: a motor control device, including a semiconductor integrated circuit having a memory (12), and forming a control loop (for example, a speed control loop) for a motor (40) so as to control driving of the motor; and an external debug device (20and30), externally connected to the motor control device, capable of accessing the memory, the external debug device including a disturbance signal superimposer (22) and a frequency characteristics deriver (32). The interference signal superimposer (22) generates a disturbance signal (for example, ωN) for the control loop and superimposes the disturbance signal on a signal generated in the control loop. The frequency characteristics deriver (32) derives frequency characteristics of the control loop based on the signal generated in the control loop by superimposition. Herein, it may be considered that the motor control device corresponds to the motor control IC10or corresponds to the motor control unit110.

Moreover, in the first embodiment (referringFIG.5), introducing (injecting) the disturbance signal ωNto the control loop of the motor control unit110is in fact implemented by the operation of the memory12that stores data inputted and outputted by the subtractor113. Similarly, in the second embodiment (referringFIG.8), introducing (injecting) the disturbance signal iNto the control loop of the motor control unit110is in fact implemented by the operation of the memory12that stores data inputted and outputted by the subtractor116. According to the disturbance signal introducing method based on the operation of the memory, a disturbance signal may be freely introduced (injected) to any part in the control loop. The above is significantly better than the method below; that is, leading out a signal line of hardware, and directly injecting a disturbance signal to a target part through the signal line.

The method for deriving frequency characteristics of a control loop in the examples described in the first and second embodiments is applicable to any device and system having a control loop (feedback control system). For example, the derivation method is applicable to a power supply device (direct-current-to-direct-current (DC/DC) converter) generating another DC output voltage VOUTfrom a DC input voltage VIN, as shown inFIG.9. In the power supply device inFIG.9, a boot signal of a difference between a feedback voltage VFBand a predetermined reference voltage VREFproportional to the output voltage VOUTis used as an error voltage VERR, and feedback control of coinciding or approximating the error voltage VERRwith the zero (hence feedback control of coinciding or approximating the feedback voltage VFBwith the reference voltage VREF) is performed, accordingly stabilizing the output voltage VOUTat a target voltage corresponding to the reference voltage VREF.

When frequency characteristics of a control loop in the power supply device are measured, a disturbance signal VNserving as noise is superimposed on the reference voltage VREF. Feedback control of coinciding or approximating the feedback voltage VFBand the difference of the voltages (VREF+VN) with zero is performed in a period in which the disturbance signal VNis superimposed. Then, based on the voltages (VREF−VFB) and (VREF−VFB+VN) of that period, frequency characteristics of the control loop (feedback control system) that coincides or approximates the feedback voltage VFBwith the reference voltage VREFcan be derived.

Various modifications may be made to the embodiments of the disclosure with the scope of the technical concept of the claims. The embodiments above are only examples of possible implementations of the disclosure, and the meanings of the terms of the disclosure or the constituting components are not limited to the meanings of the terms used in the embodiments above. The specific numerical values used in the description are only examples, and these numerical values may be modified to various other numerical values.