MOTOR CONTROL DEVICE, MOTOR CONTROL METHOD, AND PROGRAM
The motor control device addresses the issue of increased noise due to synchronized carrier signals by using a phase control unit to set the phases of the carrier signals such that the sum of noise vectors is zero, thereby preventing overlapping switching timing and reducing noise.
Patent Information
- Application Number
- JP2021036847
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-03-09
- Publication Date
- 2025-04-30
- Estimated Expiration
- 2041-03-09
AI Technical Summary
In motor control devices, the synchronization of carrier signals between multiple motors leads to overlapping switching timing, resulting in increased noise due to the switching operations of the switching elements.
A motor control device that includes N inverters and a phase control unit, which determines the phases of the N carrier signals such that the sum of the N vectors representing the noise related to each motor is zero, thereby avoiding timing overlaps and reducing noise.
The solution effectively suppresses the increase in noise by ensuring that the switching timing of the switching elements does not overlap, leading to reduced noise levels and improved performance of the motor control device.
Smart Images

Figure 0007669730000001 
Figure 0007669730000002 
Figure 0007669730000003
Abstract
Description
[Technical field]
[0001] The present invention relates to a motor control device, a motor control method, and a program. [Background technology]
[0002] Conventionally, there has been a motor control device (also called a "driver") that sends a PWM signal to each of N inverters that control N motors (shafts) (N is a natural number greater than or equal to 2), and the N inverters control the operation of the N motors (shafts) (see, for example, Patent Documents 1 to 3). [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Patent No. 6528138 [Patent Document 2] Patent No. 6211336 [Patent Document 3] Patent No. 6781190 Summary of the Invention [Problem to be solved by the invention]
[0004] The inverter has multiple switching elements, each of which performs switching operation according to a PWM signal and supplies current of each of the UVW phases to the motor via a power cable. The PWM signal supplied to each inverter is generated using a carrier signal (triangular wave) and a command signal for the operation of the motor. In such a motor control device, when the carrier signals are synchronized with the same phase between the axes and the motor current is controlled to 0, the switching timing overlaps between the axes, causing a problem of increased noise accompanying the switching operation of the switching elements.
[0005] An object of the present disclosure is to provide a motor control device, a motor control method, and a program that are capable of suppressing an increase in noise. [Means for solving the problem]
[0006] The present disclosure provides a power supply system including: N inverters each controlling N motors connected via power cables based on a PWM signal; a phase control unit that determines phases of N carrier signals used to generate PWM signals to be supplied to the N inverters such that a sum of N vectors represented by noise amounts related to the N motors becomes zero; The motor control device includes a
[0007] According to the motor control device, the phase of the carrier signal is determined so that the sum of N vectors is zero, thereby preventing overlapping of switching timing due to phase differences and suppressing an increase in noise.
[0008] The motor control device of the present disclosure may further include a noise filter that includes an inductor and a capacitor and suppresses common mode noise generated between the power supply and ground. In such a configuration, magnetic saturation of the inductor in the noise filter can be suppressed.
[0009] In the motor control device of the present disclosure, the following configuration may be adopted. That is, the phase control unit determines the phases of the N carrier signals so that a pair of carrier signals having a phase difference of 180° is not generated. By adopting this configuration, the capacitor of the noise filter This can prevent leakage current from flowing and causing the noise filter to generate heat, and also reduces common mode noise without increasing radiated noise.
[0010] The motor control device of the present disclosure may employ the following configuration. That is, the phase control unit arranges the N vectors in order of the largest absolute value of magnitude, and when the absolute value of the magnitude of the maximum vector is smaller than half the sum of the absolute values of the magnitudes of the N vectors, creates a polygon consisting of N sides in which the maximum vector is placed at the base and the remaining vectors are placed as the remaining sides, and determines the relative angle between the base and each of the remaining sides as the phases of the N carrier signals. By employing such a configuration, it is possible to obtain N carrier signals with varying phases.
[0011] The motor control device of the present disclosure may employ the following configuration. That is, in arranging the sides other than the base, when it is possible to create a trapezoid in which the sum of the vectors constituting the already arranged sides is the lower base, the length of the hypotenuse is equal to that of any one of the remaining unarranged vectors, and the total length of the remaining sides excluding the lower base is equal to the size of the remaining unarranged vector, the phase control unit arranges one of the remaining vectors on one of the hypotenuses of the trapezoid so that it is continuous with the end point of the last arranged vector. By employing such a configuration, it is possible to obtain N carrier signals with varying phases.
[0012] The motor control device of the present disclosure may employ the following configuration. That is, the phase control unit selects, as one of the remaining unassigned vectors, a vector whose magnitude is smaller than half the sum of the absolute values of the magnitudes of the remaining vectors, in descending order of vector magnitude. By employing such a configuration, it is possible to perform uniform phase allocation of carrier signals.
[0013] The motor control device of the present disclosure may employ the following configuration. That is, the maximum angle between adjacent sides in the polygon having N sides is set to the angle formed by a regular N-gon. By employing such a configuration, it is possible to uniformly arrange the phases of the carrier signals.
[0014] The motor control device of the present disclosure may employ the following configuration. That is, when the N vectors include a first vector and a second vector whose relative angle is 180°, the phase control unit changes the relative angle from 180° by an angle obtained by dividing the absolute value of the magnitude of the first vector and the second vector by twice the value of the maximum vector. By employing such a configuration, it is possible to suppress heat generation due to noise current flowing through a capacitor of a noise filter.
[0015] The motor control device of the present disclosure may employ the following configuration. That is, when the absolute value of the magnitude of the maximum vector when the N vectors are arranged in order of the largest absolute value of the magnitude is greater than half the total value of the magnitudes of the N vectors, the phase control unit sets, for each of the vectors other than the maximum vector, an angle between the maximum vector and the vectors other than the maximum vector that is shifted from 180° by an angle obtained by dividing the sum of the absolute value of the magnitude of the maximum vector and the absolute value of the magnitude of the vectors other than the maximum vector by twice the absolute value of the magnitude of the maximum vector. By employing such a configuration, it is possible to weight the angles so that the angle of shift increases as the absolute value of the magnitude of the vector increases.
[0016] The motor control device according to the present disclosure may employ the following configuration: That is, the phase control unit, during creation of the polygon, adjusts the relative angle between two vectors, a vector to be placed next and a vector that has already been placed, to a value that is greater than or equal to the sum of the absolute values of the magnitudes of the two vectors. If the first value, which is twice the absolute value of the magnitude of the maximum vector, falls within a range of increase or decrease from 180°, the relative angle between the two vectors is set to an angle shifted in the positive direction from 180° by the first value. In this way, the relative angle between the two vectors can be prevented from becoming 180°.
[0017] The present disclosure includes a motor control method including obtaining, as N vectors represented by noise amounts for each of the N motors, the phases of N carrier signals used by a motor control device to generate PWM signals to be supplied to N inverters that control N motors connected via power cables based on the PWM signals, and determining the phases of the carrier signals so that the sum of the N vectors is zero.
[0018] The present disclosure includes a program that causes a computer to obtain the phases of N carrier signals used to generate PWM signals to be supplied to N inverters that control N motors connected via power cables based on the PWM signals, as N vectors represented by the amount of noise for each of the N motors, and to determine the phases of the carrier signals so that the sum of the N vectors is zero. Effect of the Invention
[0019] According to the present disclosure, an increase in noise can be suppressed. [Brief description of the drawings]
[0020] [Figure 1] FIG. 1 is a diagram showing a schematic configuration of a motor control system. [Diagram 2] 2A to 2C are explanatory diagrams of a reference example. [Diagram 3] 3A and 3B are explanatory diagrams of a distributed phase arrangement. [Figure 4] 4A to 4C are explanatory diagrams of avoidance of pairs with a phase difference of 180° using a reference example. [Diagram 5] FIG. 5 is an explanatory diagram showing an example of a phase arrangement method. [Figure 6] 6A and 6B are explanatory diagrams showing an example of a phase arrangement method. [Figure 7] 7A and 7B are explanatory diagrams showing an example of a phase arrangement method. [Figure 8] 8A and 8B are explanatory diagrams showing an example of a phase arrangement method. [Figure 9] FIG. 9 is a diagram illustrating an example of the configuration of the phase control section. [Figure 10] FIG. 10 is a flowchart illustrating an example of processing by the phase control unit. [Figure 11] FIG. 11 is a flowchart illustrating an example of processing by the phase control unit. [Figure 12] FIG. 12 is a flowchart illustrating an example of processing by the phase control unit. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0021] <Application Examples> The motor control device includes N inverters, each of which controls N motors connected via power cables based on a PWM signal, and a phase control unit that determines the phases of N carrier signals used to generate PWM signals to be supplied to the N inverters so that the sum of N vectors represented by the amount of noise for each of the N motors is zero.
[0022] In this specification, N and n represent natural numbers of 2 or more, and the number of axes can be selected as an appropriate number of 2 or more. By making the phases of the carrier signals different with this configuration, it is possible to prevent the switching timing of the switching elements of the inverter from overlapping between axes (motors) and to prevent large noise from being generated.
[0023] In addition, if the motor control device includes an inductor and a capacitor, and further includes a noise filter that suppresses common mode noise generated between the power supply and ground, the magnetic saturation of the inductor of the noise filter can be suppressed by suppressing the increase in noise.
[0024] In addition, the phase control unit of the motor control device determines the phases of the N carrier signals so that pairs of carrier signals with a phase difference of 180 degrees are not generated. This prevents noise current from flowing through the X capacitor of the noise filter and generating heat.
[0025] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A motor control device, a motor control method, and a program according to embodiments of the present application will be described below with reference to the drawings.
[0026] <Motor control system configuration> FIG. 1 is a configuration diagram of a motor control system including a motor control device in an embodiment. FIG. 1 shows, as an example, the configuration of a motor control device for multi-axis motor control including a motor control device that controls a plurality of motors. In FIG. 1, the multi-axis motor is N motors 1-1, 1-2, ..., 1-N with N axes (N is a natural number of 2 or more). When there is no need to distinguish between the motors 1-1 to 1-N, they will be referred to as "motor 1." The motor 1 is, for example, a three-phase brushless motor. The motor control system also includes a motor control device (also called a driver) 2.
[0027] The motor control system further includes a host device 20 that uses, for example, a personal computer (PC) to control the motor control device 2 by commands or the like. The host device 20 and the motor control device 2 are connected for communication via a control bus line or the like, and commands from the host device 20 are transmitted to the motor control device 2, and information from the motor control device 2 is transmitted to the host device 20.
[0028] The motor control device 2 includes motor control units (hereinafter, referred to as control units as appropriate) 4-1, 4-2, ..., 4-N corresponding to the motors 1-1 to 1-n, respectively, in order to control N motors 1. When there is no need to distinguish between the control units 4-1 to 4-N, they will be referred to as "control units 4." Note that, unlike FIG. 1, when N=2, two motors 1 and two control units 4 are provided.
[0029] 1 shows a configuration example in which a control unit 4-1 controls a motor 1-1, a control unit 4-2 controls a motor 1-2, and a control unit 4-N controls a motor 1-N. Each of the control units 4-1 to 4-n has an inverter 6, and the inverter 6 is connected to one of the corresponding motors 1-1 to 1-n via power cables 3-1, 3-2, ..., 3-N. When there is no need to distinguish between the power cables 3-1, 3-2, ..., 3-N, they will be referred to as "power cables 3." Each of the power cables 3 consists of a U-phase, a V-phase, and a W-phase power cable.
[0030] A power supply voltage Vdc is commonly supplied to each of the control units 4-1 to 4-N from a power supply 8. A noise filter 9 is inserted between the power supply 8 and the supply line of the power supply voltage Vdc. The noise filter 9 includes an inductor element and a capacitor (X capacitor), and is provided to suppress common mode noise due to leakage current caused by stray capacitances 30-1, 30-2, ..., 30-N of each axis (related to each motor 1).
[0031] Each of the control units 4-1 to 4-n includes a control unit 41, a command signal generating unit 42, a PWM signal generating unit 5, and an inverter 6 as a circuit that operates using a power supply voltage Vdc, and drives the motor 1 via the inverter 6. The PWM signal generating unit 5 includes a carrier signal generating unit 51 and a comparator 52.
[0032] In each of the control units 4, the control section 41 is communicatively connected to the higher-level device 20. The control section 41 receives command information from the higher-level device 20, which instructs the position, speed, torque, and the like. The control unit 41 also transmits information of the control unit 4 to the higher-level device 20. In addition to the above communication function, the control unit 41 controls each part in the control unit 4 such as the command signal generating part 42 and the PWM signal generating part 5, and performs operation control so that the motor 1 performs a predetermined movement such as a speed or a position.
[0033] The command signal generating unit 42 generates a command signal Sd based on an operation command from the control unit 41 that commands the position, speed, torque, etc., and supplies the command signal Sd to the PWM signal generating unit 5. This command signal Sd includes command signals for three phases, U phase, V phase, and W phase, and is a signal that has a sine wave waveform shifted by 120° from each other in each phase according to the rotation speed and torque amount required of the motor 1. Note that, since the rotation of the motor 1 stops during servo lock, the amplitude of the command signal Sd becomes 0.
[0034] The PWM signal generating unit 5 includes a carrier signal generating unit 51 and a comparing unit 52. Although not shown in Fig. 1, the comparing unit 52 has components corresponding to the three phases, namely, the U phase, the V phase, and the W phase. The comparing unit 52 is supplied with the carrier signal from the carrier signal generating unit 51 and the command signal Sd from the command signal generating unit 42.
[0035] The carrier signal generating unit 51 generates and outputs a carrier signal Sc, which is a triangular wave for generating a pulse-width modulated signal. When synchronizing multiple axes, it is common to synchronize the carrier signal Sc between the control units 4 in order to ensure synchronization accuracy. In this embodiment, the timing signal Tm from the phase control unit 10 is supplied to each PWM signal generating unit 5 of the control unit 4. In the control units 4-1 to 4-N, the carrier signal generating unit 51 generates the carrier signal Sc at a phase timing specified by the timing signal Tm. As a result, the phases of the carrier signals between the axes are evenly arranged (shifted) within 360°, and synchronization is achieved in this shifted state.
[0036] Such a carrier signal Sc is supplied to a comparison unit 18. The comparison unit 18 generates a PWM signal Pw by comparing the levels of the command signal Sd and the carrier signal Sc, and outputs the PWM signal Pw to the inverter 6. The PWM signal Pw is composed of a pulse train whose pulse width is modulated according to the level of the command signal Sd. Although omitted in FIG. 1, the PWM signal Pw includes not only a positive-phase signal, but also a negative-phase inverted signal with an on-delay.
[0037] The inverter 6 is a power supply that consists of multiple switches such as IGBTs (Insulated Gate Bipolar Transistors). The inverter 6 is made up of a switching element and other components. When the inverter 6 receives a PWM signal Pw from the PWM signal generating unit 5, it uses a switching element to switch the voltage supplied from the power supply 8 in accordance with the PWM signal Pw to generate a drive voltage Vd. The inverter 6 applies the drive voltage Vd to the motor 1 via a power cable 3 including motor wires of U-phase, V-phase, and W-phase. Note that an actual inverter 6 is made up of three pairs of inverters, and drives (controls) the motor 1 with the three phases of U-phase, V-phase, and W-phase.
[0038] As described above, each control unit 4 generates the drive voltage Vd for driving the motor 1 based on a command from the higher-level device 20, and applies the generated drive voltage Vd to the motor 1 to drive the motor 21.
[0039] As described above, in this embodiment, as an example, the motor control device 2 includes the phase control unit 10. The phase control unit 10 determines the phase of each (axis-by-axis) carrier signal (triangular wave) of the control unit 4, and supplies a timing signal Tm to the PWM signal generation unit 5 (carrier signal generation unit 51) of the control unit 4. The timing signal Tm includes a clock signal for digital processing and a signal for indicating the phase timing (phase angle) of the carrier signal.
[0040] The phase control section 10 is capable of communicating with a higher-level device 20, and transmits information necessary for determining the phase to the higher-level device. The phase control unit 10 can receive the phase information from the host device 20. The process of determining the phase of each axis performed by the phase control unit 10 may be performed by the control units 41 in the control units 4-1 to 4-n in cooperation with each other instead of the phase control unit 10, or may be performed by the host device 20 instead of the phase control unit 10.
[0041] <Reference example> Before describing the phase control unit 10 in detail, a reference example and its drawbacks will be described. Figures 2A to 2C are explanatory diagrams of a reference example. In Figure 2A, a motor control system according to the reference example includes a power supply 8, a noise filter 9, control units 4-1 and 4-2, power cables 3-1 and 3-2, and motors 1-1 and 1-2 from the components of the motor control system shown in Figure 1.
[0042] 2B shows a PWM signal Pw for each of the UVW phases generated by the control unit 4-1 corresponding to the motor 1-1 (axis 1), and a PWM signal Pw for each of the UVW phases generated by the control unit 4-2 corresponding to the motor 1-2 (axis 2). For each of the axes 1 and 2, a PWM signal Pw is generated in which the pulse is on while the level of the carrier signal Sc is higher than the level of the command signal Sd.
[0043] Normally, when PWM control is performed, the PWM signal generating section 5 of the control unit 4 compares the triangular carrier signal Sc with the command signal Sd, and switches the switching elements in the inverter 6. When the motors 1-1 and 1-2 are stopped, for example, and no current flows through the motors 1-1 and 1-2, the same voltage is applied to the U-phase, V-phase, and W-phase. For this reason, the switching timing of the switching elements is synchronized between the axis 1 and the axis 2. During this switching, a leakage current a flows from the power cable 3-1 through the stray capacitance of each of the power cables 3-1 and 3-2, and a leakage current b flows from the power cable 3-2. The leakage current flows around the power supply 8 through the ground and flows to each control unit 4 (indicated by a thick arrow in FIG. 2A1). In this way, common mode noise is generated between the power supply 8 and the ground. When the switching timing between the axes is synchronized in this way, the noises in the axes 1 and 2 are generated simultaneously and superimposed, and the noise wave height becomes large as shown in FIG. 2C.
[0044] Noise leaking from the ground to the power supply 8 can be suppressed by the noise filter 9. However, there is a problem in that the noise that has become large due to superposition as described above causes magnetic saturation of the inductor provided in the noise filter 9, thereby degrading the noise removal performance of the noise filter 9. The motor control device 2 according to the embodiment includes a phase control unit 10 to solve the above problem.
[0045] <Phase control section> A phase control unit 10 of the motor control device 2 synchronizes N axes (motors 1-1 to 1-N) that operate in synchronization by shifting the phase of the carrier signal Sc. The phase control unit 10 determines the phase of each axis so that the phase is shifted by the following method.
[0046] (A) Dispersion of phase The phase of each axis is evenly spaced within 360°. Here, "evenly spaced" means that the noise emitted from each axis is considered to be a vector consisting of the amount of noise and the phase of the carrier signal, and the sum of the vectors (center of gravity) is determined to be zero (0). The noise emitted from each axis can be considered to be proportional to the stray capacitance of each axis, or the length of the power cable of each axis.
[0047] 3A and 3B are explanatory diagrams of the distributed arrangement of phases. For example, as shown in FIG. 3A, In this synchronous control, if the noise coming from each axis is equal (the stray capacitance of each axis is equal), the phase of the carrier wave is shifted by 120° for each axis to synchronize them. Also, for example, as shown in FIG. 3B, in synchronous control of three axes, if the noise of axis 1 is greater than that of axes 2 and 3, the phase of the carrier signal is determined so that the vector sum of axes 1 to 3 becomes zero. Here, the length of the vector represents the magnitude of the stray capacitance (or the length of the power cable) associated with each axis (one example of the amount of noise associated with each motor), and the angle based on the vector of axis 1 represents the phase of the carrier signal for each axis.
[0048] (B) Avoidance of vector pairs with a phase difference of 180° For example, when the number of axes is two, if the vector sum is to be made zero by the above-mentioned method, the phase difference between the two vectors will be 180°. However, when determining the phase of the carrier signal, pairs with a phase difference of 180° as described above are avoided. Figures 4A to 4C are diagrams for explaining the reason for avoiding pairs with a phase difference of 180°, using a reference example.
[0049] When the phase difference is 180°, the OFF and ON timings of the PWM signals may coincide between axes, as shown in Fig. 4B. In the example shown in Fig. 4B, at time Ta, the PWM signal for axis 1 switches OFF and the PWM signal for axis 2 switches ON at the same time.
[0050] In the motor control device according to the reference example shown in Fig. 4A, since the phase difference is 180°, the ON and OFF timings match, so that the control unit 4-1 becomes the positive phase and the control unit 4-2 becomes the negative phase, and the leakage currents a and b that flowed in common mode pass through the X capacitor 9a in the noise filter and flow between the control units 4-1 and 4-2 (see the thick arrow in Fig. 4A). If such a state occurs steadily, there is a problem that the X capacitor 9a generates heat. For this reason, the phase control unit 10 avoids the formation of a pair with a phase of 180° when determining the phase.
[0051] <<Details on how phase is determined>> A method for determining the phase of the carrier signal will be described in detail below. In order to determine the phases of N carrier signals according to the number of axes N, the N carrier signals are divided into N vectors C1 to C n It is considered that vectors C1~C n has a magnitude equivalent to the amount of noise (proportional to the stray capacitance of each shaft or the length of the power cable) related to the N shafts (motors 1-1 to 1-N).
[0052] The phases are arranged so that the angles vary as much as possible and the vector sum is zero. For this reason, a polygon that is as close to a circle as possible is created, with the vector with the largest absolute value among the N vectors as the base.
[0053] Figures 5, 6A and B, 7A and B, and 8A and B are explanatory diagrams showing an example of a phase arrangement method. Here, an example will be described in which the number of carrier signals, i.e., vectors, is 6. It is assumed that the magnitude of the vectors is C1 ≥ C2 ≥ C3 ≥ C4 ≥ C5 ≥ C6. First, consider an equilateral triangle with a perimeter of C = C1 + C2 + C3 + C4 + C5 + C6.
[0054] As shown in FIG. 5, vector C1 is set at the base of an equilateral triangle. In this case, if vector C1 is C1>C / 2, a polygon cannot be created. In this case, to minimize the absolute value of the sum of the vectors, the remaining vectors C2 to C n is placed so that it is oriented at 180° to C1.
[0055] On the other hand, if vector C1 satisfies C / 3≦C1≦C / 2, a polygon (see triangle TR2) that is shorter than equilateral triangle TR1 can be created. Also, if vector C1 satisfies C1≦C / 3, a polygon (see triangle TR3) that is taller than equilateral triangle TR1 can be created.
[0056] The method for creating a polygon is as follows. As an example, we will explain the case where C1=10, C2=8, C3=7, C4=7, C5=3, C6=1, and C=36. First, the maximum vector C1 is placed at the base. At this time, the polygon with the highest height that can be created with the lengths of the remaining vectors C2 to C6 is an isosceles triangle with a base of 10 and a hypotenuse of (36-10) / 2=13.
[0057] If the next side were to be positioned at the same angle as the base angle of this isosceles triangle, the resulting polygon would have a height greater than the angle of the circle (360°). Therefore, C2 is positioned so that its hypotenuse is equal to vector C2 and its lengths excluding the base are equal to the magnitudes of the remaining vectors C3 to C6, forming the same angle as the base angle of a trapezoid (see FIG. 6A).
[0058] In the example shown in Figure 6A, the angle between C1 and C2 happens to be a right angle, resulting in a rectangle rather than a trapezoid. Depending on the length of the vectors, the upper base of the trapezoid may be larger than the lower base, and the base angle may be larger than a right angle, resulting in the height of the entire polygon being too low. For this reason, the maximum angle between the two vectors is set to the angle between the two sides of a regular n-gon when the number of vectors is n (n is a natural number greater than or equal to 2).
[0059] Next, an attempt is made to draw a trapezoid A1 whose base is vector C1+C2, whose hypotenuse is equal to vector C3, and whose total length excluding the lower base is equal to the magnitude of the remaining vectors C3 to C6. At this time, since the desired trapezoid A1 can be drawn, vector C3 is placed on the hypotenuse of the trapezoid that follows the side of vector C2 (see FIG. 6B).
[0060] Next, as in the previous step, the vector C1+C2+C3 is the base, the hypotenuse is equal to C4, and the total length of the sides excluding the lower base is the remaining vector C 4、 An attempt is made to draw a trapezoid equal in size to C5 and C6. However, since C4>(C4+C5+C6) / 2 holds, a trapezoid cannot be drawn. Therefore, by swapping C4 and C5, the hypotenuse is equal to vector C5, and the sum of the lengths of the sides excluding the lower base is the remaining vector C 4、 An attempt is made to draw a trapezoid A2 equal in size to C5 and C6. In this case, the desired trapezoid A2 can be drawn, so vector C5 is placed on the hypotenuse of trapezoid A2 that follows the side of vector C3 (see FIG. 7A). When the number of remaining vectors becomes two, the angles of the remaining vectors C4 and C6 are uniquely determined (see FIG. 7A).
[0061] Once the polygon is complete, the vectors C1 to C6 are moved so that their starting points are positioned at the origin of the orthogonal axes, as shown in Fig. 7B. The relative angles, i.e., phases, of the remaining vectors C2 to C6 with respect to vector C1 as the reference are determined by the movement. The phases of the carrier signals of the N axes are arranged (determined) in a state in which there is an angle difference between the vectors C1 to C6.
[0062] However, when there is a pair of vectors with a relative angle of 180° between the vectors, there is a problem that a large current flows through the X capacitor 9a for the reasons described above (see Fig. 4A). Therefore, the angle of the vectors with a relative angle of 180° is changed to reduce the absolute value of the noise current.
[0063] Here, since the influence on noise is small if the magnitude of the vector is small, weighting can be performed based on the magnitude of the vector. Therefore, in this embodiment, among the N vectors, when the relative angle between two vectors C x and C y is 180°, the angle formed by C x and C y is shifted by (C x +C y ) / 2C1=a x_y ° from 180°.
[0064] Also, when the vector C1 satisfies C1 > C / 2, a polygon cannot be formed. For each of the vectors C2 to C6 other than the vector C1, the relative angle with the vector C1 is set to 180° . However, since it is preferable to avoid having a relative angle of 180°, the following processing is performed so that the magnitude of the vector sum is minimized (see Fig. 8A). That is, the angles of the vectors C x (C2 to C6) other than the vector C1 are shifted by (C x +C1) / 2C1=a 1_X ° from 180°. First, the vector C2 is shifted by a 1_2 ° in the negative direction from 180° and arranged. For the vectors C3 and later, they are shifted in the direction in which the absolute value of the Y direction of the vector sum becomes smaller.
[0065] Also, when C1 < C / 2 holds and during the creation of a polygon, the relative angle between some vectors may fall within the range of 180 ± (C x +C y ) / 2C1. In this case, the vector C2 is shifted by (C x +C y ) / 2C1=a x_y in the positive direction from 180°.The vectors are then arranged at angles offset by 180°. Then, the angles of the remaining vectors are determined by a trapezoid with the sum of the vectors as the base. When there are only two remaining vectors, the relative angle between the two vectors is 180±(C x +C y ) / 2C1, it is better to make the angle (C x +C y ) / 2C1=a x_y °Shifting is given priority.
[0066] <<Example of phase control section configuration>> Fig. 9 is a diagram showing an example of the configuration of the phase control unit 10. In Fig. 9, the phase control unit 10 has a processor 11, a storage device 12, and an input / output device (I / O) that are interconnected via a bus 14. The storage device 12 includes a main storage device such as a RAM and a ROM, and an auxiliary storage device such as a hard disk drive (HDD) or a solid state drive (SSD), and is used to store data and programs for each axis. The storage device 12 stores a program for determining the phase of a carrier signal corresponding to each axis, and data related to the phase determination.
[0067] For example, data indicating the amount of noise for each axis (motor 1) is stored in advance in the storage device. The data indicating the amount of noise may be stray capacitance estimated based on the type of motor 1 for each axis and the length of the power cable 3, or the length of the power cable 3 corresponding to each axis. The data is obtained, for example, from the higher-level device 20 and stored in the storage device 12. However, the route and method for obtaining the data indicating the amount of noise may be other than those described above. For example, a configuration may be adopted in which the phase control unit 10 (processor 11) estimates or measures the stray capacitance and stores it in the storage device 12.
[0068] The processor 11 is a CPU (Central Processing Unit) or the like, and is stored in the storage device 12. The processor 11 performs processing related to the determination of the phase by executing the program stored in the processor 11. The input / output device 13 is used for exchanging information and data with the higher-level device 20, and for sending a timing signal Tm including information related to the determined phase to each of the control units 4. The processing performed by the processor 11 may be performed by an integrated circuit (hardware) such as an FPGA (Field Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit).
[0069] <<Processing in the phase control section>> 10, 11 and 12 are flowcharts showing an example of processing in the phase control unit 10. The processing in FIGS. 10 to 12 is performed by the processor 11. In step S001 in FIG. 10, the processor 11 calculates vectors C1 to C2 that indicate stray capacitances of the respective axes stored in the storage device 12. n Arrange in descending order.
[0070] In step S002, the processor 11 calculates two vectors C i and C j (See above C x and C y (corresponding to the angle a) is 180°. i-j (c x +c y Determine the angle a i-j may be a value stored in the storage device 12 in advance, may be obtained from the higher-level device 20, or may be calculated by some algorithm. It may be calculated using:
[0071] In step S003, the processor 11 determines whether or not a polygon can be created with the vector C1 as the base. If it is determined that a polygon can be created, the process proceeds to step S004, and if not, the process proceeds to step S027 (FIG. 12).
[0072] In step S004, the processor 11 calculates the vector C1 as the lower base, the vector C2 as the hypotenuse, and the length of the side excluding the lower base is the vector C2 to C n It is determined whether the base angle of the trapezoid, which is the sum of the above, is smaller than 360 / n. If it is determined that the base angle of the trapezoid is smaller than 360 / n, the process proceeds to step S005, and if not, the process proceeds to step S006.
[0073] In step S005, the processor 11 determines the angle of C2 with respect to the vector C1 to be 180° minus the base angle of the trapezoid. In step S006, the processor 11 determines the angle of C2 with respect to the vector C1 to be 180° minus (360 / n).
[0074] In step S007, vector C i The value of i that identifies the vector C is set to 3. i is the remaining vector C i Determine whether the vector C is smaller than the sum of Cn / 2. i "(the remaining vector C i ~C n If it is determined that Ci is smaller than (the sum of Ci+1) / 2'', the process proceeds to step S010; otherwise, the processor 11 exchanges Ci with Ci+1, and returns the process to step S008.
[0075] In step S010, the sum of vectors “C1+C2+…C i-1 " as the lower base, and the vector C i is the hypotenuse and the length of the side excluding the lower base is C i=j ~C n The base angle of the trapezoid that is the sum of the lower base “C1+C2+…C i-1 " and vector C i-1 It is determined whether the angle obtained by adding the angle between and is smaller than 360 / n. If it is determined that the angle is smaller than 360 / n, the process proceeds to step S011, and if not, the process proceeds to step S012.
[0076] When the process proceeds to step S011, the processor 11 i The angle is expressed as "180° - base angle of the trapezoid + (sum of vectors "C1 + C2 + ... C i-1 ")+(vector C1~C i-1 On the other hand, when the process proceeds to step S012, the processor 11 sets the vector C i The angle is expressed as "180°-(360 / n)+(vector C1~C i-1 The value shall be the sum of the angles of the two points.
[0077] In step S013, the processor 11 calculates the vector C k In step S014, the processor 11 sets the value of k that identifies the vector C i The angle of “C k Angle +180-a i_k " is greater than the value of "C k Angle +180+a i_k If it is determined that the value of k falls within the range, the process proceeds to step S015; otherwise, the process proceeds to step S017. In step S017, the value of k is incremented, and the process returns to step S014.
[0078] When the process proceeds to step S015, the processor 11 sets the angle of Ci to "C k Angle +180+a i_k " value. In step S016, the processor 11 determines whether the current value of k is equal to or greater than i-1. If it is determined that the value of k is equal to or greater than i-1, the process proceeds to step S018; otherwise, the value of k is incremented (S017), and the process returns to step S014.
[0079] In step S018, the processor 11 determines whether the current value of i is equal to or greater than n-2. If it is determined that the value of i is equal to or greater than n-2, the process proceeds to step S019; otherwise, the value of i is incremented and the process returns to step S008. .
[0080] In step S019, vector C n-1 , C n Vector C1~C n The vector C is then set to an angle such that the sum of the vectors C n-1 and C n For the vectors, the same processes as in steps S014 and S015 are performed (steps S021 to S026). In this way, angles for the remaining vectors are determined. If the determination in step S025 is YES, the process proceeds to step S035 (FIG. 12).
[0081] If the process proceeds to step S027, a process for the case where a polygon cannot be created is performed. In step S027, the processor 11 changes the angle of the vector C3 to "180+a 1_3 " to the angle calculated.
[0082] In step S028, the processor 11 changes the angle of the vector C2 to "180-a 1_2 In step S029, the processor 11 sets the vector C i Set the value of i to 4.
[0083] In step S030, the processor 11 determines whether the y components of the vectors C1 to Ci are equal to or greater than 0. If it is determined that the y components are equal to or greater than 0, the processor 11 i The angle is "180-a 1_i " (step S031), otherwise, the processor 11 sets the vector C i The angle is set to “180+a 1_i " (step S032).
[0084] In step S033, the processor 11 determines whether the current value of i is greater than or equal to n. If it is determined that the current value is greater than or equal to n, the process proceeds to step S035; otherwise, the value of i is incremented (step S034), and the process returns to step S030.
[0085] In step S035, the processor 11 calculates the vectors C1 to C n In step S036, the processor 11 slides and moves C2 to C4 based on the vector C1. n The processor 11 determines (locates) the phase of the carrier signal corresponding to each axis (motors 1-1 to 1-n) from the relative angle. Then, the processor 11 outputs a timing signal including information indicating the phase of the carrier signal to each of the control units 4 (step S036).
[0086] 10 to 12 assume that the number of axes N is 6, i.e., the number of carrier signals (vectors) N or n is 4 or more. However, when the number of axes (i) is 2 or 3, the processing according to the flowcharts can be modified by distributing the phases of the carrier signals between the axes in this manner so as not to process vectors related to non-existent axes.
[0087] <Effects of the embodiment> According to the motor control device 2 of the embodiment, by distributing the phases and shifting the phases of the carrier signals between the axes, it is possible to avoid noise superposition and reduce the peak value (amplitude). Furthermore, by distributing the phases evenly within 360°, when considering the average of one cycle of the carrier signal for the noise emitted from each axis, the sum of the vectors approaches 0, making it difficult for the noise filter 9 to become magnetically saturated. Note that the provision of the noise filter 9 is not necessarily essential.
[0088] Moreover, according to the motor control device 2 according to the embodiment, the angles of the two vectors are determined so as to prevent the relative angle between the two vectors from becoming 180°. As a result, in a configuration including the noise filter 9, a large current flows through the X capacitor 9a. It is possible to suppress heat generation from the X capacitor 9a etc. due to the above-mentioned configuration. It is also possible to reduce common mode noise without increasing radiation noise. The configuration of the embodiment of the present invention can be modified as appropriate without departing from the scope of the invention.
[0089] <Additional Notes> N inverters (6) each controlling N motors (1-1 to 1-N) connected via power cables (3-1 to 3-N) based on a PWM signal; a phase control unit (10) that determines phases of N carrier signals used to generate PWM signals to be supplied to the N inverters (6) such that a sum of N vectors represented by noise amounts related to each of the N motors (1-1 to 1-N) becomes zero; A motor control device (2). [Explanation of symbols]
[0090] 1-1~1-n...Motor 2. Motor control device (driver) 3-1~3-n...Power cable 4-1~4-n Motor control unit 5...PWM signal generation section 6. Inverter 8...Power supply 9. Noise filter 10 Phase control section 41 Control section 42...Command signal generation section 51 Carrier signal generator 52 Comparator
Claims
1. A motor control device, N inverters each controlling N motors connected via power cables based on a PWM signal; a phase control unit that determines phases of N carrier signals used to generate PWM signals to be supplied to the N inverters such that a sum of N vectors represented by noise amounts related to the N motors becomes zero; a noise filter including an inductor and a capacitor, and suppressing common mode noise occurring between a power supply and a ground of the motor control device; The phase control unit determines phases of the N carrier signals so that pairs of carrier signals having phases different from each other by 180° are not generated. Motor control device.
2. The phase control unit arranges the N vectors in order of the largest absolute value of magnitude, and when the absolute value of the magnitude of the maximum vector is smaller than half the sum of the absolute values of the magnitudes of the N vectors, creates a polygon consisting of N sides in which the maximum vector is arranged as a base and the remaining vectors are arranged as the remaining sides, and determines the relative angles between the base and each of the remaining sides as the phases of the N carrier signals. The motor control device according to claim 1 .
3. When it is possible to create a trapezoid in which the sum of vectors constituting sides already placed is used as a lower base, the length of the hypotenuse is equal to that of any one of the remaining unplaced vectors, and the sum of the lengths of the remaining sides excluding the lower base is equal to the absolute value of the magnitude of the remaining unplaced vector, the phase control unit places one of the remaining vectors on one of the hypotenuses of the trapezoid so as to be continuous with the end point of the last placed vector. The motor control device according to claim 2 .
4. The phase control unit selects, as one of the remaining unallocated vectors, a vector whose absolute value of the vector magnitude is smaller than half the sum of the absolute values of the magnitudes of the remaining vectors in descending order of the absolute value of the vector magnitude. The motor control device according to claim 3.
5. The maximum angle between adjacent sides in the polygon having N sides is set to the angle formed by a regular N-sided polygon. The motor control device according to claim 2 .
6. When there is a first vector and a second vector with a relative angle of 180° among the N vectors, the phase control unit changes the relative angle from 180° by an angle obtained by dividing the absolute value of the magnitude of the first vector and the second vector by twice the value of the maximum vector. The motor control device according to claim 2 .
7. When the N vectors are arranged in order of decreasing absolute value of magnitude, and the absolute value of the magnitude of a maximum vector is greater than half the sum of the absolute values of the magnitudes of the N vectors, the phase control unit sets, for each of the vectors other than the maximum vector, a relative angle between the maximum vector and the vector other than the maximum vector to an angle shifted from 180° by an angle obtained by dividing the sum of the absolute value of the magnitude of the maximum vector and the absolute value of the magnitude of the vector other than the maximum vector by twice the absolute value of the magnitude of the maximum vector. The motor control device according to claim 2 .
8. When a relative angle between two vectors, a vector to be placed next and a vector already placed, falls within a range obtained by increasing or decreasing a first value, which is a value obtained by dividing the sum of the absolute values of the magnitudes of the two vectors by twice the absolute value of the magnitude of the maximum vector, from 180°, during creation of the polygon, the phase control unit sets the relative angle between the two vectors to an angle shifted in a positive direction from 180° by the first value. The motor control device according to claim 2 .
9. A motor control device having a noise filter including an inductor and a capacitor, for suppressing common mode noise generated between a power supply and a ground of the motor control device, phases of N carrier signals used to generate PWM signals to be supplied to N inverters that control N motors connected via power cables based on the PWM signals are obtained as N vectors represented by noise amounts related to the N motors; determining a phase of the carrier signal such that a sum of the N vectors is zero; determining the phases of the carrier signals includes determining phases of the N carrier signals such that no pairs of carrier signals having a phase difference of 180° are generated. A motor control method comprising:
10. A motor control device having a noise filter including an inductor and a capacitor for suppressing common mode noise generated between a power supply and ground of the motor control device, phases of N carrier signals used to generate PWM signals to be supplied to N inverters that control N motors connected via power cables based on the PWM signals are obtained as N vectors represented by noise amounts related to the N motors; determining a phase of the carrier signal such that a sum of the N vectors is zero; A program for causing the program to execute, in determining the phases of the N carrier signals, determining the phases of the N carrier signals such that no pair of carrier signals having a phase difference of 180° is generated.
Citation Information
Patent Citations
Data transmission control system
JP1987011336A
Controller for rotating electric machine
JP2002084790A
Phase current estimation apparatus of electric motor, and magnetic pole position estimation apparatus of electric motor
JP2010119227A
Motor drive device
JP2020198677A
Motor control device, motor control method, and motor control system
JP6528138B2