Pulse width modulation device, pulse width modulation method, and pulse width modulation program
The pulse width modulation device addresses PWM noise issues by varying pulse periods or positions and adding random values, enhancing EMC compliance and reducing EMI filter size for more compact and cost-effective devices.
Patent Information
- Application Number
- JP2025153108
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-09-16
- Publication Date
- 2025-12-05
AI Technical Summary
Existing pulse width modulation (PWM) techniques generate noise at specific frequencies, which can interfere with electromagnetic compatibility (EMC) and require large EMI filters, hindering the miniaturization and cost-effectiveness of devices.
A pulse width modulation device that varies the pulse period or position, or adds a random value to the duty ratio command, dispersing PWM noise to avoid concentration at specific frequencies, thereby reducing electromagnetic interference.
Effectively reduces PWM noise, improving EMC compliance and allowing for smaller EMI filters, contributing to device miniaturization and cost reduction.
Smart Images

Figure 2025178319000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to pulse width modulation techniques. [Background technology]
[0002] Pulse width modulation (PWM), which changes the duty ratio of a pulse in a pulse period, is widely used to drive inverters that convert DC power to AC power. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2017-147925 Summary of the Invention [Problem to be solved by the invention]
[0004] Patent Document 1 discloses a technique for adding a random value to a command value for the duty ratio of each pulse in order to reduce noise of a specific frequency that occurs when a PWM signal is generated (hereinafter also referred to as PWM noise). As a result of the inventor's own comprehensive investigation, he has invented several techniques suitable for reducing PWM noise.
[0005] The present invention has been made in view of the above circumstances, and its object is to provide a pulse width modulation device suitable for reducing PWM noise. [Means for solving the problem]
[0006] A pulse width modulation device according to a first aspect of the present invention is a pulse width modulation device that changes the duty ratio of pulses in a pulse period, and includes a pulse period command unit that generates a command for the pulse period, a duty ratio command unit that generates a command for the duty ratio, and a pulse width modulation unit that generates pulses with a duty ratio commanded by the duty ratio command unit in the pulse period commanded by the pulse period command unit. The length of the pulse period generated as a command by the pulse period command unit is variable. According to this aspect, PWM noise can be effectively reduced by changing the length of the pulse period.
[0007] A pulse width modulation device according to a second aspect of the present invention is a pulse width modulation device that changes the duty ratio of a pulse in a pulse period, and includes a pulse position command unit that generates a command for the position of a pulse in the pulse period, a duty ratio command unit that generates a command for the duty ratio, and a pulse width modulation unit that generates a pulse at a position commanded by the pulse position command unit and with a duty ratio commanded by the duty ratio command unit. The position of the pulse generated as a command by the pulse position command unit is variable. According to this aspect, PWM noise can be effectively reduced by changing the position of the pulse in the pulse period.
[0008] A pulse width modulation device according to a third aspect of the present invention is a pulse width modulation device that changes the duty ratio of a pulse in a pulse period, and includes: a carrier wave generation unit that generates a carrier wave that oscillates between a minimum value and a maximum value during the pulse period; a command value acquisition unit that acquires an arbitrary command value between the minimum value and the maximum value; a duty ratio generation unit that generates a duty ratio command based on an intersection of the carrier wave and the command value; a pulse width modulation unit that generates pulses with a duty ratio according to the command from the duty ratio generation unit during the pulse period; and a random value addition unit that adds a random value weighted based on the command value to the command value when generating the duty ratio command. According to this aspect, PWM noise can be effectively reduced by adding a random value weighted based on the command value for the duty ratio to the command value.
[0009] Any combination of the above components, and any transformation of the present invention into a method, device, system, recording medium, computer program, etc., are also valid aspects of the present invention. [Effects of the Invention]
[0010] According to the present invention, PWM noise can be effectively reduced. [Brief explanation of the drawings]
[0011] [Figure 1] FIG. 1 is a diagram schematically illustrating a first example of a motor drive control system installed in an aircraft. [Figure 2] FIG. 10 is a diagram schematically illustrating a second example of a motor drive control system installed in an aircraft. [Figure 3] FIG. 2 is a functional block diagram of the motor drive control system. [Figure 4] FIG. 2 is a diagram schematically illustrating a pulse period and a duty ratio. [Figure 5] FIG. 1 is a diagram illustrating a first configuration example of a pulse width modulation device. [Figure 6] FIG. 10 is a diagram illustrating an example of calculation of a pulse position for each pulse period. [Figure 7] FIG. 10 is a diagram illustrating an example of selection of a pulse period in a selector. [Figure 8] FIG. 1 illustrates a PWM noise reduction technique. [Figure 9] FIG. 10 is a diagram illustrating a second configuration example of a pulse width modulation device. [Figure 10] FIG. 10 is a diagram illustrating an example of calculation of a pulse position for each pulse position. [Figure 11] FIG. 10 is a diagram illustrating a third configuration example of a pulse width modulation device. [Figure 12] FIG. 10 is a diagram illustrating a general method for generating a duty ratio. [Figure 13] FIG. 10 is a diagram schematically illustrating an example of randomization of command values according to a first weighting calculation example. [Figure 14] FIG. 10 is a diagram schematically illustrating an example of randomization of command values according to a second weighting calculation example. DETAILED DESCRIPTION OF THE INVENTION
[0012] A pulse width modulation device (hereinafter also referred to as a PWM device) of the present invention is a device that changes the duty ratio of pulses in a pulse period. While the application of the PWM device is not particularly limited, this embodiment describes an example of a PWM device used to drive an inverter that generates AC to drive a motor installed in an aircraft. Aircraft have strict standards for EMC (Electromagnetic Compatibility), and the technology of this embodiment, which can effectively reduce PWM noise, is useful. In particular, by using the technology of this embodiment, which disperses PWM noise so that it does not concentrate at a specific frequency, EMI (Electromagnetic Interference), which constitutes EMC, can be reduced, thereby satisfying environmental standards for ensuring safe aircraft flight. Furthermore, the technology of this embodiment allows for the miniaturization of EMI-reducing filters, thereby contributing to weight and cost reduction of the device.
[0013] FIG. 1 schematically shows a motor drive control device 2 that drives a motor 14 mounted on an aircraft, and a motor drive control system 1 that includes the same, along with a rotor blade 100 of the aircraft to which they are applied. Note that the motor drive control device 2 is not limited to being applied to the motor 14 that drives the rotor blade 100, and may also be applied to other motors mounted on the aircraft (for example, the motor 14 that drives the backup hydraulic pump 12 shown in FIG. 2). Furthermore, the motor that is the target of drive by the motor drive control device 2 may be mounted on any system, not limited to an aircraft. Note that a detailed configuration example of an aircraft will be explained in FIG. 2, so only a brief explanation will be given in FIG. 1.
[0014] The flight control system of FIG. 1 includes a flight controller 3, a subtractor 25, a speed command calculation unit 26, a subtractor 27, a pulse width modulator 24, an inverter 23, a motor 14, a reducer 28, and a moving surface 100. The flight controller 3 generates a command (position command) for the position of the moving surface 100 (aileron, elevator, rudder, etc.) of the aircraft. Here, the position of the moving surface 100 refers to the position or angle (rudder angle) of the control surface, such as the aileron, elevator, or rudder. The subtractor 25 calculates the deviation between the position command (rudder angle command) from the flight controller 3 and the measured position of the moving surface 100 (measured position or measured rudder angle). Here, the measured position of the moving surface 100 is obtained by a sensor 281, such as a rotary encoder or an LVDT (Linear Variable Differential Transformer), which serves as a control surface position measurement unit that measures the rotational position of a gear constituting the reducer 28, which reduces the rotation of the motor 14 to drive the moving surface 100. The control surface position measuring unit may be a sensor 141 such as a resolver that directly measures the rotational position of the motor 14 .
[0015] Speed command calculation unit 26 calculates a command (speed command) for the rotational speed of motor 14 based on the deviation between the position command calculated by subtractor 25 and the measured position. Subtractor 27 calculates the deviation between the speed command from speed command calculation unit 26 and the measured rotational speed of motor 14 (hereinafter referred to as measured speed). Note that, in this diagram, subtractor 25, speed command calculation unit 26, and subtractor 27 are shown as components external to flight controller 3, but some or all of the functions of these components may be implemented in flight controller 3.
[0016] The pulse width modulator 24 calculates a current command for the motor 14 based on the deviation between the speed command calculated by the subtractor 27 and the measured speed, and generates a pulse width modulation signal (PWM signal) based on the current command. The inverter 23, driven by the PWM signal, generates a multiphase AC current according to the current command to rotate the motor 14.
[0017] FIG. 2 schematically shows a motor drive control device 2 that drives a motor mounted on an aircraft, a motor drive control system 1 that includes the motor drive control device 2, and the hydraulic circuits of the equipment to which they are applied.
[0018] 2 is an electric hydraulic pump that supplies pressure oil to actuators 13a that drive moving surfaces 100 of an aircraft (not shown). Moving surfaces 100 are control surfaces, and constitute, for example, ailerons (auxiliary wings) provided on the main wings, elevators provided on the horizontal stabilizer, and rudder provided on the vertical stabilizer. Moving surfaces 100 may also be constituted by spoilers such as flight spoilers and ground spoilers, or flaps.
[0019] The moving surface 100 is provided on a fixed wing. For example, when the moving surface 100 constitutes an elevator, it is provided on a horizontal stabilizer as a fixed wing. The moving surface 100 is driven by a plurality of (for example, two) actuators (13a, 13b). Inside the fixed wing on which the moving surface 100 is provided, there are installed a plurality of actuators (13a, 13b) that drive the moving surface 100, and a backup hydraulic pump 12 that supplies pressure oil to one of the actuators, 13a.
[0020] Each actuator (13a, 13b) has a cylinder 15 and a rod 16 provided with a piston 16a. The interior of the cylinder 15 is divided by the piston 16a into two oil chambers that do not communicate with each other. Each oil chamber of the actuator 13a can communicate with the first aircraft central hydraulic power source 101 and a reservoir circuit 103 via a control valve 17a. On the other hand, each oil chamber of the actuator 13b can communicate with the second aircraft central hydraulic power source 102 and a reservoir circuit 104 via a control valve 17b.
[0021] The first aircraft-side hydraulic power source 101 and the second aircraft-side hydraulic power source 102 are hydraulic pumps that supply pressure oil and are installed on the aircraft side (inside the aircraft), not shown, and constitute hydraulic power sources of mutually independent hydraulic systems. The actuators (13a, 13b) of the rotor surface 100 and other actuators (not shown) are driven by the pressure oil supplied from the first and second aircraft-side hydraulic power sources (101, 102).
[0022] The reservoir circuit 103 has a tank (not shown) into which oil (hydraulic oil) discharged from one oil chamber of the actuator 13a flows via the control valve 17a, and is connected to the first aircraft central hydraulic power source 101. Furthermore, the reservoir circuit 104, which belongs to a hydraulic system different from the reservoir circuit 103, has a tank (not shown) into which oil (hydraulic oil) discharged from one oil chamber of the actuator 13b flows via the control valve 17b, and is connected to the second aircraft central hydraulic power source 102, which belongs to a hydraulic system different from the first aircraft central hydraulic power source 101. The oil returned to the reservoir circuit 103 is pressurized by the first aircraft central hydraulic power source 101 and supplied again to the actuator 13a. The oil returned to the reservoir circuit 104 is pressurized by the second aircraft central hydraulic power source 102 and supplied again to the actuator 13b.
[0023] The control valve 17a constitutes a valve mechanism that switches the connection state of each oil chamber of the actuator 13a with a supply passage 101a that communicates with the first aircraft central hydraulic power source 101 and a discharge passage 103a that communicates with the reservoir circuit 103. The control valve 17b constitutes a valve mechanism that switches the connection state of each oil chamber of the actuator 13b with a supply passage 102a that communicates with the second aircraft central hydraulic power source 102 and a discharge passage 104a that communicates with the reservoir circuit 104. The control valve 17a is configured, for example, as an electromagnetic switching valve, and is driven based on a command from an actuator controller 11a that controls the operation of the actuator 13a. The control valve 17b is configured, for example, as an electromagnetic switching valve, and is driven based on a command from an actuator controller 11b that controls the operation of the actuator 13b.
[0024] The actuator controller 11a controls the actuator 13a based on commands from the flight controller 3, which is a host computer that controls the operation of the rotor blade 100. The actuator controller 11b controls the actuator 13b based on commands from the flight controller 3, which is a host computer that controls the operation of the rotor blade 100.
[0025] Based on a command from the actuator controller 11a, the control valve 17a switches between the oil chamber of the actuator 13a connected to the supply passage 101a and the oil chamber of the actuator 13a connected to the discharge passage 103a. Pressurized oil is supplied to one oil chamber of the actuator 13a connected to the supply passage 101a, and oil is discharged from the other oil chamber of the actuator 13a connected to the discharge passage 103a. As oil flows in and out of the oil chambers of the actuator 13a, the rod 16 equipped with the piston 16a is displaced relative to the cylinder 15, driving the rotor blade 100. The control valve 17b operates in a similar manner.
[0026] The backup hydraulic pump 12 is disposed inside a fixed wing (not shown) on which the rotor blade 100 is provided, and supplies pressure oil to an actuator 13a that hydraulically drives the rotor blade 100. The suction side of the backup hydraulic pump 12 communicates with a discharge passage 103a, and the discharge side communicates with a supply passage 101a via a check valve 19. The backup hydraulic pump 12 is a hydraulic pump that can supply pressure oil to the actuator 13a when a loss or reduction in the pressure oil supply function occurs due to a failure, oil leakage, etc. of the hydraulic pump of the first aircraft central hydraulic source 101.
[0027] A check valve 20 is provided upstream (on the first aircraft central hydraulic power source 101 side) of a point in the supply passage 101a where the discharge side of the backup hydraulic pump 12 is connected, allowing the flow of pressure oil from the first aircraft central hydraulic power source 101 to the actuator 13a and restricting the flow of oil in the opposite direction. A relief valve 21 is provided downstream (on the reservoir circuit 103 side) of a point in the discharge passage 103a where the suction side of the backup hydraulic pump 12 is connected, discharging pressure oil to the reservoir circuit 103 when the pressure of the oil discharged from the actuator 13a increases. A pilot pressure chamber in which a spring is disposed is provided in the relief valve 21 so as to communicate with the supply passage 101a. When the pressure of the pressure oil supplied from the supply passage 101a drops below a predetermined pressure value, the pressure of the pressure oil (pilot pressure) supplied from the supply passage 101a to the pilot pressure chamber as pilot pressure oil also drops below the predetermined pressure value, and the discharge passage 103a is blocked by the relief valve 21. When the function of the first aircraft central hydraulic source 101 is lost or reduced, the check valves (19, 20) and the relief valve 21 prevent the oil discharged from the actuator 13a from returning to the reservoir circuit 103, and the pressure of the oil is increased by the backup hydraulic pump 12, and the pressure oil is supplied again to the actuator 13a.
[0028] The motor 14 is an electric motor that drives the connected backup hydraulic pump 12. The motor 14 may be a synchronous motor or an asynchronous motor, but a synchronous motor improves efficiency because it does not cause slippage, which is a delay in the rotation of the rotor relative to the rotating magnetic field of the stator. The motor 14 is provided with a rotation angle sensor 14a that detects the rotation speed (number of rotations). The rotation angle sensor 14a is configured, for example, by a rotary encoder, resolver, tachometer generator, etc.
[0029] Next, we will explain the motor drive control system 1 and motor drive control device 2, which are responsible for controlling the drive and operating state of the motor 14. Figure 3 is a functional block diagram of the motor drive control system 1 and the motor drive control device 2. The motor drive control system 1 includes a flight controller 3 and the motor drive control device 2.
[0030] The flight controller 3 is a computer that controls the operation of the rotor blade 100, and is a controller that transmits various control signals to the motor drive control device 2. The motor drive control device 2 controls the drive and operating state of the motor 14 based on the control signals from the flight controller 3. The flight controller 3 includes a CPU (Central Processing Unit), memory, interface, etc., which are not shown.
[0031] A pressure detection signal indicating the discharge pressure of the first aircraft central hydraulic power source 101 or the pressure of the pressure oil passing through the supply passage 101a detected by a pressure sensor (not shown) is input to the flight controller 3. Based on this pressure detection signal, the flight controller 3 detects a loss or deterioration of the function of the first aircraft central hydraulic power source 101.
[0032] When the flight controller 3 detects a loss or degradation of the function of the first aircraft local hydraulic power source 101, the motor drive control device 2 starts the motor 14 in response to that command. As a result, the backup hydraulic pump 12 starts, and the supply of pressurized oil to the actuator 13a begins. After the backup hydraulic pump 12 starts, the rotational speed and output torque of the motor 14 are optimally controlled by automatic control by the flight controller 3 and the motor drive control device 2 in accordance with the flight state of the aircraft and the operating state of the actuator 13a.
[0033] The flight controller 3 may activate the motor 14 not only when a sudden problem occurs, such as a loss or deterioration of the function of the first onboard hydraulic power source 101, but also when there is a risk of a sudden change in the aircraft's flight conditions due to fluctuations in weather or air currents, or when the aircraft is taking off or landing. When the aircraft's flight conditions are unstable, the backup hydraulic pump 12 can increase the pressure oil supply to the actuator 13a, allowing for ample response to sudden changes in flight conditions. While a loss or deterioration of the function of the first onboard hydraulic power source 101 is particularly likely to occur when the aircraft's flight conditions are unstable, the motor 14 and the backup hydraulic pump 12 are already activated, minimizing any adverse effects on the aircraft's flight. A typical example of activating the motor 14 during landing is when the moving surface 100 is a ground spoiler.
[0034] 3, motor drive control device 2 includes DC power supply 22, inverter 23, pulse width modulator 24, and speed command calculation unit 26. DC power supply 22 is configured, for example, by a rectifier or converter that converts AC power supplied from an AC power supply installed on the aircraft fuselage into DC power.
[0035] The inverter 23 includes switching elements such as insulated gate bipolar transistors (IGBTs), and converts DC power from the DC power supply 22 into AC power based on a pulse width modulation signal (hereinafter also referred to as a PWM signal) from a pulse width modulator 24 to drive the motor 14. A multi-phase (e.g., three-phase) AC current I U , I V , I W is measured by a plurality of (for example, three) current sensors 30 and is used for feedback control in the pulse width modulator 24.
[0036] The pulse width modulation device 24, which performs pulse width modulation control (PWM control) of the inverter 23, includes a current command unit 41, a subtractor 42, an analog-to-digital conversion unit 431, a three-phase to two-phase conversion unit 432, a duty ratio command unit 44, a pulse command unit 45, and a pulse width modulation unit 46.
[0037] The current command unit 41 converts the command for the rotation speed of the motor 14 from the speed command calculation unit 26 into a command for the current of the motor 14. Specifically, the current command unit 41 converts the current I d , I q The current command unit 41 generates a command for AC to be generated by the inverter 23 as a digital value. Note that the two axes defining the two-phase current are not limited to the dq axes, but may be the α-β axes or the γ-δ axes. The current command unit 41 generates a command for AC to be generated by the inverter 23 as a digital value.
[0038] The subtractor 42 subtracts the current command from the current command unit 41 from the current measured by the current sensor 30 (hereinafter also referred to as the measured current) to determine the deviation between the two digital values. U , I V , I W is converted into a digital value by an analog-to-digital converter 431 (hereinafter also referred to as AD converter 431), which converts an analog value into a digital value. A three-phase to two-phase converter 432, which is a digital circuit provided in the subsequent stage, converts the three-phase measurement current I U , I V , I W The measured current I d , I q In this way, the three-phase current I measured as an analog value U , I V , I W is the measured current I of two phases as a digital value. d , I q and provided to the subtractor 42.
[0039] The duty ratio command unit 44 generates a command for the duty ratio of the pulse in the pulse period based on the deviation between the current command calculated by the subtractor 42 and the measured current. FIG. 4 schematically shows the pulse period and duty ratio. The pulse period is the period (time) during which a pulse specified by the duty ratio is generated. The example in FIG. 4 shows two different pulse periods T1 and T2. The length of the pulse period can be set as appropriate; for example, T1 is 20 μs and T2 is 30 μs. The duty ratio is the proportion of the pulse in each pulse period. In the example in FIG. 4, the four pulse periods in T1 show pulses with duty ratios of 25%, 50%, 75%, and 100%, respectively, and the two pulse periods in T2 show pulses with duty ratios of 50% and 100%, respectively. As is clear from the figure, even if the duty ratios are the same, the duration of the pulses differs if the pulse periods are different. For example, the duration of a pulse with a duty ratio of 50% in pulse period T1 (20 μs) is 10 μs, whereas the duration of a pulse with a duty ratio of 50% in pulse period T2 (30 μs) is 15 μs.
[0040] The duty ratio command unit 44 includes a PID control unit 441 and a two-phase to three-phase conversion unit 442 as a duty ratio calculation unit that calculates the duty ratio of pulses to be applied to the inverter 23 for each of the U, V, and W phases based on the deviation between the current command calculated by the subtractor 42 and the measured current. The PID control unit 441 includes at least one of a proportional control element (P), an integral control element (I), and a derivative control element (D) to which the deviation between the two phases of the d and q axes calculated by the subtractor 42 is input, and calculates the duty ratio of pulses in two orthogonal phases of the d and q axes. The two-phase to three-phase conversion unit 442 converts the two-phase duty ratio calculated by the PID control unit 441 into duty ratios for the three phases of U, V, and W.
[0041] The pulse command unit 45 is a pulse period command unit that generates a command for the pulse period and / or a pulse position command unit that generates a command for the position of the pulse in the pulse period. The pulse width modulation unit 46 generates pulses with a duty ratio commanded by the duty ratio command unit 44 in each pulse period based on the command from the pulse command unit 45.
[0042] Below, we will explain an example where the pulse command unit 45 functions as a pulse period command unit and an example where the pulse command unit 45 functions as a pulse position command unit, but the pulse command unit 45 may have both the functions of a pulse period command unit and a pulse position command unit. As will be described later, the main purpose of both functions is to disperse PWM noise so that it does not concentrate at a specific frequency.
[0043] 5 shows a first configuration example of pulse width modulator 24 in which pulse command unit 45 functions as a pulse period command unit. Pulse period command unit 45, which generates a pulse period command, includes pulse period storage unit 451, selector 452, and count value comparison unit 453 as components for varying the length of the pulse period. Pulse width modulation unit 46 includes pulse position calculation unit 461, counter 462, and pulse generation unit 463 as components for performing pulse width modulation based on the command from pulse period command unit 45.
[0044] Pulse period storage unit 451 stores a plurality of different pulse periods Cm1 to Cm3 (three in the illustrated example). The length of each pulse period can be set as appropriate; for example, Cm1 corresponds to 20 μs, Cm2 corresponds to 25 μs, and Cm3 corresponds to 15 μs. As will be described later, Cm1 to Cm3 provide the maximum count value of counter 462, and the corresponding pulse period elapses while counter 462 counts up from the minimum value of 0 to the maximum values of Cm1 to Cm3. Specifically, 20 μs elapses while counter 462 counts up from 0 to Cm1, 25 μs elapses while counter 462 counts up from 0 to Cm2, and 15 μs elapses while counter 462 counts up from 0 to Cm3.
[0045] Selector 452, which serves as a pulse period selection unit, selects one pulse period from three pulse periods Cm1 to Cm3 of different lengths stored in pulse period storage unit 451. The timing at which selector 452 makes its selection is specified by count value comparison unit 453. Count value comparison unit 453 acquires the count value of counter 462, compares it with the pulse period currently selected by selector 452, and determines whether the count value of counter 462 has reached the currently selected pulse period. For example, if selector 452 currently selects Cm1, when counter 462 reaches its maximum count value Cm1, count value comparison unit 453 issues a command to select a new pulse period to selector 452. Upon receiving the selection command, selector 452 switches from the currently selected pulse period Cm1 to a new pulse period (one of Cm1 to Cm3). Specific examples will be described later, but the order in which pulse periods are selected or switched may be regular or irregular. If the order of pulse period selection or switching is made regular, the circuit scale can be reduced, and if the order of pulse period selection or switching is made irregular, the locations where PWM noise occurs can be further dispersed.
[0046] The pulse position calculation unit 461 calculates the count value of the counter 462 corresponding to the rising and falling edges of the pulse based on the pulse period as the maximum count value of the counter 462 selected by the selector 452 and the duty ratio commanded by the duty ratio command unit 44. Fig. 6 shows an example of calculation of the pulse position for each pulse period Cm1 to Cm3. The horizontal axis of the figure represents time, and the vertical axis represents the count value (counter value) of the counter 462. In the example shown, the duty ratio command from the duty ratio command unit 44 is set to 50% for all pulse periods Cm1 to Cm3.
[0047] When pulse period Cm1 is selected by selector 452, counter 462 counts up from 0 to Cm1 over 20 μs, while pulse position calculation unit 461 calculates count value P1 corresponding to the rising edge of a pulse with a duty ratio of 50%, i.e., a duration of 10 μs, and count value N1 corresponding to the falling edge. For simplicity, the position (center of gravity) of the pulse in pulse period Cm1 is set to the center of pulse period Cm1. In this case, count value M1 corresponding to the center of the pulse is Cm1 / 2. Furthermore, count value width D1 corresponding to the pulse duty ratio (50%) is also Cm1 / 2 (= Cm1 × 50%). Based on these, count value P1 corresponding to the rising edge of the pulse is calculated as M1 - D1 / 2 (= Cm1 × 1 / 4), and count value N1 corresponding to the falling edge of the pulse is calculated as M1 + D1 / 2 (= Cm1 × 3 / 4). The pulse rising count value P2 (Cm2 x 1 / 4) and falling count value N2 (Cm2 x 3 / 4) when pulse period Cm2 is selected by selector 452, and the pulse rising count value P3 (Cm3 x 1 / 4) and falling count value N3 (Cm3 x 3 / 4) when pulse period Cm3 is selected by selector 452 can be calculated in the same way.
[0048] Counter 462 is a counter that counts the pulse period Cm1 to Cm3 selected by selector 452 as a maximum value. When the count value of counter 462 reaches the maximum count value Cm1 to Cm3, it is reset to 0 in response to a reset command from count value comparison unit 453. That is, count value comparison unit 453 compares the count value of counter 462 with the pulse period currently selected by selector 452, and when it detects that counter 462 has reached the pulse period as the maximum count value, it issues a count value reset command to counter 462.
[0049] The timing at which the count value comparison unit 453 issues a reset command to the counter 462 and the timing at which it issues a command to select a new pulse period to the selector 452 are substantially the same. Furthermore, the count value comparison unit 453 issues a data acquisition command to the AD conversion unit 431 at substantially the same timing. As a result, even if the pulse period fluctuates between Cm1 and Cm3, the AD conversion unit 431 can output data (three-phase AC current I U, I V , I W In this way, by giving a command from the count value comparison unit 453 indicating the timing of switching the pulse period to each unit (selector 452, counter 462, AD conversion unit 431, etc.) of the pulse width modulation device 24, it is possible to achieve stable synchronized operation of each unit.
[0050] The pulse generating unit 463 generates pulses of the duty ratio commanded by the duty ratio command unit 44 at positions calculated by the pulse position calculating unit 461 in the pulse periods Cm1 to Cm3 selected by the selector 452. Specifically, as shown in Fig. 6, when the counter 462 counts up from 0 to the pulse periods Cm1 to Cm3, which are the maximum count values, the pulse generating unit 463 makes the pulse rise (switches from OFF to ON) when the count value reaches the rising count values P1 to P3, and makes the pulse fall (switches from ON to OFF) when the count value reaches the falling count values N1 to N3.
[0051] Next, an example of selection of pulse periods Cm1 to Cm3 by the selector 452 is shown in FIG. 7. For simplicity, the duty ratio of all pulses in this figure is set to 50%. FIG. 7(A) shows an example in which the selector 452 periodically selects Cm1, Cm2, and Cm3 in that order. In simple terms, omitting "Cm", the pulse periods are selected in the order 1 → 2 → 3 → 1 → 2 → 3 → 1 → 2... Here, if the repeat unit "1 → 2 → 3" is written as (1, 2, 3), then in the selection example of FIG. 7(A), the selection of (1, 2, 3) is periodically repeated.
[0052] 7B shows an example in which the selector 452 periodically selects six permutations of three pulse periods Cm1 to Cm3 as a set. Using the above notation, pulse periods are selected to cover all six permutations of Cm1 to Cm3 in order, such as (1,2,3) → (1,3,2) → (2,1,3) → (2,3,1) → (3,1,2) → (3,2,1).
[0053] In the example of FIGS. 7A and 7B, each of the pulse periods Cm1 to Cm3 is selected once within one frame of 60 μs, which is the sum of the three pulse periods Cm1 to Cm3. In this case, because the interval between frames is constant at 60 μs, the AD conversion unit 431 can synchronize with the pulse width modulation unit 46 in 60 μs frame units without receiving a data acquisition command indicating the timing of switching the pulse periods from the count value comparison unit 453. In this way, the pulse width modulation device 24 can operate stably in frame units. That is, if the three pulse periods Cm1 to Cm3 are considered as one large period, the period is fixed, thereby achieving stable operation of the pulse width modulation device 24. In the example of FIG. 7B, because the switching positions of the pulse periods Cm1 to Cm3 within each frame differ from frame to frame, some error occurs in the data acquisition timing of the AD conversion unit 431. However, this does not adversely affect pulse generation in the pulse width modulation unit 46 and is therefore acceptable. In this way, in the example of Figures 7(A) and (B) in which the pulse periods Cm1 to Cm3 are selected in a regular order, the data acquisition command issued by the count value comparison unit 453 for synchronization of the AD conversion unit 431 may be omitted.
[0054] When the pulse width modulator 24 operates in such frame units, the counter 462 may be configured to be reset for each frame (every Cm1+Cm2+Cm3=60 μs) instead of for each pulse period Cm1-Cm3. The pulse position calculator 461 calculates the rising positions P1-P3 and falling positions N1-N3 of three pulses while the counter 462 counts up from 0 to the maximum count value Cm1+Cm2+Cm3 (schematically shown by dotted lines in FIG. 6).
[0055] Furthermore, when the pulse width modulator 24 operates in frame units, the frame length need not be fixed (60 μs) but may be variable. For example, in addition to 60 μs, frame lengths of 50 μs and 70 μs may be provided as variations. In this case, if the ratio of the three pulse periods Cm1 to Cm3 in each frame is kept constant, the increase in the amount of calculations due to the variable frame length can be suppressed. For example, when the frame length is 50 μs, the pulse period Cm1, which was originally 20 μs, becomes approximately 16.7 μs (20 × 50 / 60), the pulse period Cm2, which was originally 25 μs, becomes approximately 20.8 μs (25 × 50 / 60), and the pulse period Cm3, which was originally 15 μs, becomes 12.5 μs (15 × 50 / 60).
[0056] 7C shows an example in which the selector 452 selects three pulse periods Cm1 to Cm3 in an irregular order. Unlike the examples of FIGS. 7A and 7B, there are no frames at regular intervals, so it is preferable to give a data acquisition command from the count value comparison unit 453 to synchronize the AD conversion unit 431.
[0057] While the above describes an example in which pulse periods Cm1 to Cm3 to be selected are stored in advance in the pulse period storage unit 451, the pulse period command unit 45 may vary the length of the pulse period by other means. For example, the pulse period command unit 45 may autonomously generate pulse periods of different lengths in real time based on various pulse period generation information for generating pulse periods. Examples of pulse period generation information include a reference period, a step size, and a total number of periods, which may be stored in a removable memory such as an EEPROM, or in an internal memory of the pulse width modulator 24. For example, the reference period is 20 μs, the step size is 1 μs, and the total number of periods is 8. In this case, a total of eight pulse periods are generated with step sizes of 1 μs in both the positive and negative directions, centered around the reference period of 20 μs. For example, eight different pulse periods of different lengths, 17 μs (reference period −3 μs), 18 μs (reference period −2 μs), 19 μs (reference period −1 μs), 20 μs (reference period), 21 μs (reference period +1 μs), 22 μs (reference period +2 μs), 23 μs (reference period +3 μs), and 24 μs (reference period +4 μs), are generated by the pulse period command unit 45.
[0058] The order in which these eight pulse periods are selected is arbitrary, but for example, random numbers may be used for selection. Specifically, numbers from 0 to 7 are assigned to the above eight pulse periods in advance, and a pulse period with the corresponding number is selected from the eight pulse periods according to the remainder (0 to 7) obtained when a random number generated by a random number generator is divided by the total number of periods, 8. Alternatively, an arbitrary sequence of numbers from 0 to 7 may be prepared in advance, or an arbitrary sequence of numbers from 0 to 7 may be generated autonomously by the pulse period command unit 45 in real time, and a pulse period with a number from 0 to 7 may be selected according to that sequence.
[0059] According to the pulse width modulation device 24 configured as described above, the pulse period command unit 45 can vary the length of the pulse period, thereby effectively reducing PWM noise. In other words, if the length of the pulse period is constant, PWM noise may be concentrated at a specific frequency. However, by varying the length of the pulse period, it is possible to disperse the locations where PWM noise occurs, thereby improving resistance to PWM noise. Furthermore, by selecting a pulse period previously stored in the pulse period storage unit 451, the circuit size can be reduced.
[0060] In addition to or instead of the pulse period command unit 45 that varies the length of the pulse period Cm, a PWM noise reduction technique shown in FIG. 8 may be used. In this example, one pulse period Cm is divided into eight equal-length intervals 0 to 7. If the duty ratio command for the pulse to be generated in this pulse period Cm is 50%, the pulse is turned ON in four intervals corresponding to 50% of the eight intervals. In this case, by distributing the four intervals in which the pulse is turned ON using random numbers or the like, it is possible to prevent PWM noise from concentrating at a specific frequency. In this way, by dividing the pulse period into multiple intervals and distributing the intervals in which the pulse is turned ON to satisfy the duty ratio command from the duty ratio command unit 44 using random numbers or the like, it is possible to increase resistance to PWM noise.
[0061] 9 shows a second configuration example of pulse width modulator 24 in which pulse command unit 45 functions as a pulse position command unit. Components common to the configuration example of FIG. 5 are denoted by the same reference numerals, and description thereof will be omitted. Pulse position command unit 45, which generates a command for the position of a pulse in a constant pulse period Cm stored in pulse period storage unit 451, includes pulse position storage unit 454, selector 452, and count value comparison unit 453 as components for varying the pulse position. Pulse width modulation unit 46, which performs pulse width modulation based on the command from pulse position command unit 45, includes pulse position calculation unit 461, counter 462, and pulse generation unit 463.
[0062] A plurality of different pulse positions M1 to M3 (three in the illustrated example) are stored in advance in pulse position storage unit 454. Each pulse position can be set as any number between the minimum value of 0 and the maximum value of Cm (pulse period). In this embodiment, Cm is 20 μs, M1 is 10 μs, M2 is 10.1 μs, and M3 is 9.9 μs. As explained in FIG. 6, Cm and M1 to M3 strictly represent the count values of counter 462.
[0063] Selector 452, which serves as a pulse position selection unit, selects one pulse position from three different pulse positions M1 to M3 stored in pulse position storage unit 454. The timing at which selector 452 makes the selection is specified by count value comparison unit 453. Count value comparison unit 453 acquires the count value of counter 462, compares it with pulse period Cm stored in pulse period storage unit 451, and determines whether the count value of counter 462 has reached pulse period Cm. When counter 462 reaches the maximum count value Cm, count value comparison unit 453 issues a command to select a new pulse position to selector 452. Upon receiving the selection command, selector 452 switches from the currently selected pulse position (any one of M1 to M3) to the new pulse position (any one of M1 to M3). As with the example of pulse period selection in FIG. 7, the order in which pulse positions are selected or switched may be regular or irregular. If the order of pulse position selection or switching is made regular, the circuit scale can be reduced, and if the order of pulse position selection or switching is made irregular, the locations where PWM noise occurs can be further dispersed.
[0064] The pulse position calculation unit 461 calculates the count value of the counter 462 corresponding to the rising and falling edges of the pulses based on the pulse positions M1 to M3 selected by the selector 452, the pulse period Cm stored in the pulse period storage unit 451, and the duty ratio commanded by the duty ratio command unit 44. FIG. 10 shows an example of calculation of the pulse position for each of the pulse positions M1 to M3. The horizontal axis of the figure represents time, and the vertical axis represents the count value (counter value) of the counter 462. In the example shown, the duty ratio command from the duty ratio command unit 44 is set to 50% for all of the pulse positions M1 to M3. The pulse period Cm is a constant value of 20 μs for all of the pulse positions M1 to M3.
[0065] When selector 452 selects pulse position M1 (10 μs), pulse position calculation unit 461 calculates count value P1 corresponding to the rising edge and count value N1 corresponding to the falling edge of a pulse with a duty ratio of 50% centered (center of gravity) at pulse position M1. At this time, the width D of the count value corresponding to the pulse duty ratio (50%) is Cm / 2 (= Cm × 50%). Therefore, count value P1 corresponding to the rising edge of the pulse is calculated as M1 − D / 2, and count value N1 corresponding to the falling edge of the pulse is calculated as M1 + D / 2. When selector 452 selects pulse position M2 (10.1 μs), count value P2 (M2 − D / 2) and count value N2 (M2 + D / 2) of the rising edge of the pulse are calculated similarly, and when selector 452 selects pulse position M3, count value P3 (M3 − D / 2) and count value N3 (M3 + D / 2) of the falling edge of the pulse are calculated similarly. In Figure 10, the dimensions of the horizontal axis (time axis) have been exaggerated to emphasize the differences between the two cases, but the pulse at pulse position M2 appears 0.1 μs later (to the right) in the pulse period Cm than the pulse at pulse position M1 (shown by the dotted line), and the pulse at pulse position M3 appears 0.1 μs earlier (to the left) in the pulse period Cm than the pulse at pulse position M1 (shown by the dotted line).In this way, even if the pulse width (duty ratio) is the same, varying the pulse position (center of gravity) can prevent PWM noise from concentrating at a specific frequency.
[0066] Counter 462 is a counter that counts with pulse period Cm stored in pulse period storage unit 451 as its maximum value. When the count value of counter 462 reaches Cm, which is the maximum count value, it is reset to 0 in response to a reset command from count value comparison unit 453. That is, count value comparison unit 453 compares the count value of counter 462 with pulse period Cm, and when it detects that counter 462 has reached pulse period Cm as the maximum count value, it issues a count value reset command to counter 462. Note that the timing at which count value comparison unit 453 issues a reset command to counter 462 is substantially the same as the timing at which it issues a command to select a new pulse position to selector 452.
[0067] The pulse generating unit 463 generates pulses of the duty ratio commanded by the duty ratio command unit 44 at the positions calculated by the pulse position calculating unit 461, at the pulse positions M1 to M3 selected by the selector 452. Specifically, as shown in Fig. 10, when the counter 462 counts up from 0 to the pulse period Cm which is the maximum count value, the pulse generating unit 463 makes the pulse rise (switches from OFF to ON) when the count value reaches the rising count values P1 to P3, and makes the pulse fall (switches from ON to OFF) when the count value reaches the falling count values N1 to N3.
[0068] The selection of pulse positions M1 to M3 by selector 452 is performed in the same manner as the selection example of pulse periods Cm1 to Cm3 in Fig. 7. As in Fig. 7(A), selector 452 may periodically select M1, M2, and M3 in this order. As in Fig. 7(B), selector 452 may periodically select six permutations of M1 to M3, with three pulse positions M1 to M3 as a set. As in Fig. 7(C), selector 452 may select three pulse positions M1 to M3 in an irregular order.
[0069] While the above describes an example in which pulse positions M1 to M3 to be selected are stored in advance in pulse position storage unit 454, pulse position command unit 45 may vary the pulse position (center of gravity) by other means. For example, pulse position command unit 45 may autonomously generate different pulse positions in real time based on various pulse position generation information for generating pulse positions. Examples of pulse position generation information include a reference position, an increment width, and a total number of positions, which may be stored in a removable memory such as an EEPROM, or in an internal memory of pulse width modulator 24. For example, the reference position is 10 μs, the increment width is 0.1 μs, and the total number of positions is 8. In this case, a total of eight pulse positions are generated with increment widths of 0.1 μs in both the positive and negative directions, centered around the reference position of 10 μs. For example, eight different pulse positions are generated by the pulse position command unit 45: 9.7 μs (reference position -0.3 μs), 9.8 μs (reference position -0.2 μs), 9.9 μs (reference position -0.1 μs), 10 μs (reference position), 10.1 μs (reference position +0.1 μs), 10.2 μs (reference position +0.2 μs), 10.3 μs (reference position +0.3 μs), and 10.4 μs (reference position +0.4 μs).
[0070] These eight pulse positions may be selected in any order, but may be selected using random numbers, for example. Specifically, numbers 0 to 7 are assigned to the eight pulse positions in advance, and a pulse position with the corresponding number is selected from the eight pulse positions according to the remainder (0 to 7) obtained when a random number generated by a random number generator is divided by the total number of periods, 8. Alternatively, an arbitrary sequence of numbers 0 to 7 may be prepared in advance, or an arbitrary sequence of numbers 0 to 7 may be generated autonomously by pulse position command unit 45 in real time, and pulse positions with numbers 0 to 7 may be selected according to that sequence.
[0071] According to the pulse width modulation device 24 configured as described above, the pulse position command unit 45 can vary the pulse position (center of gravity), thereby effectively reducing PWM noise. In other words, if the pulse position is fixed, PWM noise may be concentrated at a specific frequency. However, by varying the pulse position, it is possible to disperse the locations where PWM noise occurs, thereby increasing resistance to PWM noise. Furthermore, by selecting a pulse position stored in advance in the pulse position storage unit 454, it is possible to reduce the circuit size.
[0072] It is also possible to use pulse position command unit 45, which changes the pulse position, in combination with the PWM noise reduction technique described in Fig. 8. With the technique in Fig. 8, it is necessary to turn on the pulse in a number of sections that satisfies the duty ratio command from duty ratio command unit 44, and at this time, it is also necessary to satisfy the pulse position (center of gravity) M1 to M3 command from pulse position command unit 45. By changing the command for the pulse center of gravity over time, the sections in which the pulse is on in the pulse period are effectively dispersed, thereby further increasing resistance to PWM noise.
[0073] 10, there is a possibility that the pulses may extend beyond the pulse period depending on the relationship between the pulse positions M1 to M3 selected by selector 452 and the duty ratio commanded by duty ratio command unit 44. For example, when the illustrated pulse period is 20 μs and the duty ratio is 50%, if the pulse positions M1 to M3 selected by selector 452 are shorter than 5 μs, the rising positions P1 to P3 of the pulses will be smaller than 0, which is the minimum count value of counter 462. Similarly, if the pulse positions M1 to M3 selected by selector 452 are longer than 15 μs, the falling positions N1 to N3 of the pulses will be larger than Cm, which is the maximum count value of counter 462.
[0074] In this state, the pulse generating unit 463 cannot properly generate pulses that satisfy the duty ratio command within the pulse period, so the pulse position calculating unit 461 corrects the rising positions P1 to P3 and falling positions N1 to N3 of the pulses so that the pulses with the duty ratio commanded by the duty ratio command unit 44 fall within the pulse period.
[0075] For example, if the pulse positions M1 to M3 selected by selector 452 are 2.5 μs, the pulse rising positions P1 to P3 will be −2.5 μs and the pulse falling positions N1 to N3 will be 7.5 μs. At this time, pulse position calculation unit 461 corrects the pulse rising positions P1 to P3 with an arbitrary positive offset value that maintains the pulse rising positions P1 to P3 greater than the minimum count value of 0 and the pulse falling positions N1 to N3 less than the maximum count value of Cm. For example, 2.5 μs, the amount of pulse that extends outside the pulse period, is added as an offset to the pulse rising positions P1 to P3 and falling positions N1 to N3. As a result, the corrected pulse rising positions P1 to P3 will be 0 and the falling positions N1 to N3 will be 10 μs, allowing pulses with a duty ratio of 50% (duration of 10 μs) to be generated appropriately within a pulse period of 0 to 20 μs.
[0076] Similarly, when pulse positions M1 to M3 selected by selector 452 are 17.5 μs, pulse rising positions P1 to P3 are 12.5 μs and pulse falling positions N1 to N3 are 22.5 μs. At this time, pulse position calculation unit 461 corrects pulse falling positions N1 to N3 with an arbitrary negative offset value so that pulse falling positions N1 to N3 are smaller than the maximum count value Cm (20 μs) and pulse rising positions P1 to P3 remain larger than the minimum count value 0. For example, an offset of 5 μs, which is larger than the amount of pulse protrusion outside the pulse period, is used to subtract from pulse rising positions P1 to P3 and falling positions N1 to N3. As a result, the corrected pulse rising positions P1 to P3 are 7.5 μs and the falling positions N1 to N3 are 17.5 μs, making it possible to appropriately generate pulses with a duty ratio of 50% (duration of 10 μs) within a pulse period of 0 to 20 μs.
[0077] The offset amount may be generated using a random number. In the above example, pulse position calculation unit 461 included in pulse width modulation unit 46 corrects the pulse positions, but a function for performing such correction may be provided in pulse position command unit 45. In this case, pulse position command unit 45 directly corrects pulse positions M1 to M3 to be provided to pulse width modulation unit 46 with reference to the duty ratio commanded by duty ratio command unit 44.
[0078] 11 shows a third exemplary configuration of the pulse width modulator 24. In this exemplary configuration, when the duty ratio command unit 44 generates a duty ratio command, a random component is added to the duty ratio using a random number. To achieve this, the duty ratio command unit 44 includes a command value acquisition unit 51, a command value limiting unit 52, a random number value addition unit 53, a random number value limiting unit 54, an adder 55, a carrier wave generation unit 56, and a duty ratio generation unit 57.
[0079] First, a general method for generating a duty ratio will be described with reference to FIG. 12. Of the components of the duty ratio command unit 44 in FIG. 11, only the command value acquisition unit 51, carrier wave generation unit 56, and duty ratio generation unit 57 are involved in this operation. FIG. 12 schematically shows the duty ratio generated by the duty ratio generation unit 57 in response to the command value acquired by the command value acquisition unit 51 (the deviation between the current command calculated by the subtractor 42 and the measured current). The command value acquired by the command value acquisition unit 51 is expressed as a percentage of the triangular wave serving as the carrier wave generated by the carrier wave generation unit 56. The triangular wave is a triangular wave that oscillates between a minimum value and a maximum value during a pulse period. Its minimum value corresponds to a command value of -100%, and its maximum value corresponds to a command value of +100%. (A) to (G) shown in the figure correspond to different command values between -100% and +100%. The shape of the carrier wave is not limited to a triangular shape, but may be, for example, a sine wave or a trapezoid.
[0080] The duty ratio generator 57 generates a duty ratio command based on the intersection of the command value and the triangular wave in each pulse period. As shown in the figure, when the command value is -100% (A), the duty ratio is 100%, when the command value is -50% (B), the duty ratio is 75%, when the command value is -25% (C), the duty ratio is 62.5%, when the command value is 0% (D), the duty ratio is 50%, when the command value is +25% (E), the duty ratio is 37.5%, when the command value is +50% (F), the duty ratio is 25%, and when the command value is +100% (G), the duty ratio is 0%.
[0081] Next, we will explain the components that add a random component to the duty ratio using a random number. The command value limiting unit 52 limits the minimum command value to a value greater than the minimum value (-100%) of the triangular wave and the maximum command value to a value less than the maximum value (+100%) of the triangular wave, so that the command value does not become smaller than the minimum value of -100% or larger than the maximum value of +100% when the random value adding unit 53 (described later) adds a random component to the command value. For example, in the example of FIG. 12, by limiting the minimum command value to -50% and the maximum command value to +50%, only command values (B) to (F) between -50% and +50% are allowed, and command values (A) less than -50% and (G) greater than +50% are prohibited. Because the command value is limited to -50% to +50%, a random component of up to ±50% can be added to the command value.
[0082] The command value limiting unit 52 may limit the command value as follows: In a first method, the command value is limited by multiplying a command value between -100% and +100% acquired by the command value acquiring unit 51 by a limiting coefficient. For example, if it is desired to limit the command value between -50% and +50%, the command value is multiplied by a limiting coefficient of 0.5. In a second method, the command value acquired by the command value acquiring unit 51 is multiplied by a limiting coefficient only when it is outside the limiting range. For example, if the command value acquired by the command value acquiring unit 51 is between -50% and +50% within the limiting range, the limiting coefficient is not multiplied, and if the command value acquired by the command value acquiring unit 51 is outside the limiting range, less than -50% or more than +50%, the limiting coefficient is multiplied by a limiting coefficient such as 0.5. In either the first or second method, the value of the limiting coefficient may be uniform (for example, 0.5) or may vary depending on the command value. In the third method, the command value limiting unit 52 dynamically or statically controls the calculation process in the command value obtaining unit 51 so that the command value obtaining unit 51 does not generate a command value outside the limit range in the first place.
[0083] The limit range of the command value by the command value limiting unit 52 is not limited to a fixed range such as -50% to +50%, but may be dynamically changed according to the random value generated by the random value adding unit 53. For example, if the random value generated by the random value adding unit 53 is converted to a command value and is +20%, the limit range of the command value may be set to -100% to +80%, and if the random value generated by the random value adding unit 53 is converted to a command value and is -35%, the limit range of the command value may be set to -65% to +100%. In either case, the command value after the random component is added falls within the appropriate range of -100% to +100%.
[0084] When the duty ratio command unit 44 generates a duty ratio command, the random value adder 53 adds a random value weighted based on the command value acquired by the command value acquisition unit 51 to the command value using an adder 55. Adding a random value to the command value adds a random component to the duty ratio generated by the duty ratio generation unit 57, which allows PWM noise to be dispersed and not concentrated at a specific frequency, thereby enabling stable motor operation. Note that the random value (or the random number that serves as the source of the random value) is preferably not completely random, but one that appears equally positive and negative so that the average value over a certain period of time is essentially zero. This ensures that, even if a random component is added to the duty ratio at each time, an appropriate duty ratio based on the current command from the current command unit 41 can be generated on average over a certain period of time. The random value adder 53 includes a random number generation unit 531 that generates random numbers and a weighting unit 532 that performs a weighting operation on the random number generated by the random number generation unit 531 based on the command value acquired by the command value acquisition unit 51.
[0085] In a first example of weighting calculation by weighting unit 532, the command value acquired by command value acquisition unit 51 is multiplied by the random number generated by random number generation unit 531 to calculate a random number value to be added to the command value. That is, random number value = random number × command value, and the command value after the random number value is added is expressed as command value + random number value = command value (1 + random number).
[0086] FIG. 13 schematically shows an example of randomization of a command value by the first weighting calculation example. The horizontal axis represents the number of rotations of the motor 14 driven by the pulse width modulator 24 and the inverter 23, and the vertical axis represents the command value in the duty ratio command unit 44. A sine wave, with one rotation of the motor 14 as one cycle, schematically represents the AC wave generated by the inverter 23 using pulses generated by the pulse width modulator 24. To generate this AC wave, the command value (sine wave command value) varies sinusoidally between −50% and +50% (note that the command value has a reversed sign compared to the example in FIG. 12). Each dot shown around the AC wave schematically represents the command value at each time to which a random value has been added.
[0087] In the first weighting calculation example, random numbers weighted by the command value at each time are used, so when the command value (absolute value) is large, around ±50%, a large random number is added, increasing the deviation of each dot from the AC wave, and when the command value (absolute value) is small, around 0%, a small random number is added, decreasing the deviation of each dot from the AC wave. If a large random number is added when the command value is small, the shape of the AC wave that is output may be significantly distorted, but in the first weighting calculation example, the random number can be made small when the command value is small, so the shape of the AC wave can be maintained appropriately and motor 14 can be driven stably.
[0088] In a second example of weighting calculation by weighting unit 532, the amplitude of the AC wave generated by inverter 23 by the pulses generated by pulse width modulation unit 46 is multiplied by the random number generated by random number generation unit 531 to calculate a random number value to be added to the command value. That is, random number value = random number × AC wave amplitude, and the command value after the random number value is added is expressed as command value + random number value = command value + random number × AC wave amplitude. Here, the amplitude of the AC wave generated by inverter 23 can be calculated based on the current command acquired by command value acquisition unit 51 from current command unit 41 via subtractor 42, so weighting unit 532 does not need to measure the amplitude of the AC wave generated by inverter 23.
[0089] FIG. 14 schematically illustrates an example of randomization of command values using the second weighting calculation example. The two sine waves shown are a first AC wave generated when the command value (sine wave command value) sinusoidally changes between -50% and +50%, and a second AC wave generated when the command value (sine wave command value) sinusoidally changes between -20% and +20%. Here, if the amplitude of the first AC wave is A1 and the amplitude of the second AC wave is A2, A1 > A2, as is clear from the figure. Here, the random number value added to the command value for the first AC wave is the random number × A1, and the random number value added to the command value for the second AC wave is the random number × A2. Therefore, the deviation of each dot around each AC wave from the corresponding AC wave is greater for the first AC wave with a larger amplitude than for the second AC wave with a smaller amplitude. If a large random number value is added when the amplitude of the AC wave is small, there is a risk that the shape of the output AC wave will be significantly distorted, but in the second weighting calculation example, the random number value can be made small when the amplitude of the AC wave is small, so the shape of the AC wave can be maintained appropriately and motor 14 can be driven stably. The amplitudes (A1, A2) of the AC wave can be calculated based on the measurement results of the AC wave output by inverter 23 in the previous pulse period, etc.
[0090] When random value adder 53 adds random values via adder 55, random value limiter 54 limits the random value so that the command value does not become smaller than the minimum value of -100% or larger than the maximum value of +100%. For example, if the random value generated by random value adder 53 is R and the command value input to adder 55 is I, and the absolute value of I + R exceeds 100%, random value limiter 54 corrects random value R so that it is within 100%. This ensures that the command value after the random value is added always falls within the appropriate range of -100% to +100%. Note that since random value limiter 54 and the aforementioned command value limiter 52 have the common purpose of ensuring that the command value to which a random value is added falls between the minimum value (-100%) and the maximum value (+100%), only one of them may be provided.
[0091] The present invention has been described above based on the embodiments. The embodiments are merely examples, and it will be understood by those skilled in the art that various modifications are possible in the combination of the respective components and treatment processes, and that such modifications are also within the scope of the present invention.
[0092] The functional configuration of each device described in the embodiments can be realized by hardware resources, software resources, or a combination of hardware and software resources. Examples of hardware resources include processors, ROMs, RAMs, and other LSIs. Examples of software resources include operating systems, applications, and other programs.
[0093] Among the embodiments disclosed in this specification, those in which multiple functions are provided in a distributed manner may have some or all of the multiple functions integrated together, and conversely, those in which multiple functions are provided in a distributed manner may have some or all of the multiple functions integrated together. Regardless of whether the functions are integrated or distributed, it is sufficient that the configuration can achieve the object of the invention. [Explanation of symbols]
[0094] 1 motor drive control system, 2 motor drive control device, 3 flight controller, 14 motor, 22 DC power supply, 23 inverter, 24 pulse width modulator, 41 current command unit, 42 subtractor, 44 duty ratio command unit, 45 pulse command unit (pulse period command unit / pulse position command unit), 46 pulse width modulator, 51 command value acquisition unit, 52 command value limit unit, 53 random number value addition unit, 54 random number value limit unit, 55 adder, 56 carrier wave generation unit, 57 duty ratio generation unit, 431 analog-to-digital conversion unit, 451 pulse period storage unit, 452 selector, 453 count value comparison unit, 454 pulse position storage unit, 461 pulse position calculation unit, 462 counter, 463 pulse generation unit, 531 random number generation unit, 532 weighting unit.
Claims
1. A pulse width modulation device that changes the duty ratio of a pulse in a pulse period, a pulse period command unit that generates a pulse period command; a duty ratio command unit that generates a duty ratio command; a pulse width modulation unit that generates pulses having a duty ratio commanded by the duty ratio command unit in a pulse period commanded by the pulse period command unit; Equipped with The length of the pulse period generated as a command by the pulse period command unit is variable. Pulse width modulation device.
2. 2. The pulse width modulation device according to claim 1, wherein the pulse period command section includes a pulse period selection section that selects one pulse period from a plurality of pulse periods of different lengths.
3. The pulse width modulation device according to claim 2 , wherein the pulse period selection section selects the plurality of pulse periods in a regular order.
4. The pulse width modulation device according to claim 2 , wherein the pulse period selection unit selects the plurality of pulse periods in an irregular order.
5. the pulse width modulation unit includes a counter that counts the pulse period commanded by the pulse period command unit as a maximum value, and a pulse position calculation unit that calculates count values of the rising and falling edges of a pulse based on the duty ratio commanded by the duty ratio command unit, When the counter counts up to the maximum value over the pulse period commanded by the pulse period command unit, a pulse rises when the count value reaches the rising count value, and a pulse falls when the count value reaches the falling count value.
5. A pulse width modulation device according to claim 1.
6. an analog-to-digital converter that converts an analog value of the AC generated by the inverter driven by the pulses generated by the pulse width modulator into a digital value; a current command unit that generates a command for AC to be generated by the inverter as a digital value; Further provided with the duty ratio command unit generates a duty ratio command based on a deviation between the digital values from the analog-to-digital converter and the digital value from the current command unit; The analog-to-digital converter generates a digital value in synchronization with the pulse period commanded by the pulse period command unit.
6. A pulse width modulation device according to claim 1.
7. A pulse width modulation device that changes the duty ratio of a pulse in a pulse period, a pulse position command unit that generates a command for the position of a pulse in a pulse period; a duty ratio command unit that generates a duty ratio command; a pulse width modulation unit that generates a pulse having a duty ratio commanded by the duty ratio command unit at a position commanded by the pulse position command unit; Equipped with The position of the pulse generated as a command by the pulse position command unit is variable. Pulse width modulation device.
8. 8. The pulse width modulation device according to claim 7, wherein the pulse position command section includes a pulse position selection section that selects one pulse position from a plurality of different pulse positions.
9. The pulse width modulation device according to claim 8 , wherein the pulse position selection section selects the plurality of pulse positions in a regular order.
10. The pulse width modulation device according to claim 8 , wherein the pulse position selection unit selects the plurality of pulse positions in an irregular order.
11. the pulse width modulation unit includes a counter that counts a pulse period as a maximum value, and a pulse position calculation unit that calculates count values of rising and falling edges of a pulse based on the pulse position commanded by the pulse position command unit and the duty ratio commanded by the duty ratio command unit, When the counter counts up to the maximum value over the pulse period, a pulse rises when the count value reaches the rising count value, and a pulse falls when the count value reaches the falling count value.
11. A pulse width modulation device according to any one of claims 7 to 10.
12. 12. The pulse width modulation device according to claim 7, wherein the pulse width modulation unit corrects the position commanded by the pulse position command unit so that a pulse of the duty ratio commanded by the duty ratio command unit falls within a pulse period.
13. A pulse width modulation device that changes the duty ratio of a pulse in a pulse period, a carrier wave generator that generates a carrier wave that oscillates between a minimum value and a maximum value during a pulse period; a command value acquisition unit that acquires an arbitrary command value between the minimum value and the maximum value; a duty ratio generating unit that generates a duty ratio command based on an intersection point between the carrier wave and the command value; a pulse width modulation unit that generates pulses having a duty ratio in accordance with a command from the duty ratio generation unit in a pulse period; a random value adder that adds a random value weighted based on the command value to the command value when generating the command for the duty ratio; A pulse width modulation device comprising:
14. The random number value addition unit a random number generator that generates random numbers; a weighting unit that multiplies the command value by the random number to calculate the random number; 14. The pulse width modulation device of claim 13, comprising:
15. the pulse width modulation device generates an AC wave using pulses generated by the pulse width modulation unit; The random number value addition unit a random number generator that generates random numbers; a weighting unit that multiplies the random number by the amplitude of the AC wave to calculate the random number; 14. The pulse width modulation device of claim 13, comprising:
16. 16. The pulse width modulation device according to claim 13, further comprising a random value limiting unit that limits the random value so that the command value to which the random value is added falls between the minimum value and the maximum value.
17. 17. The pulse width modulation device according to claim 13, further comprising a command value limiting unit that limits the minimum value of the command value to a value greater than the minimum value of the carrier wave and limits the maximum value of the command value to a value less than the maximum value of the carrier wave.
18. The pulses generated by the pulse width modulation unit are used to drive an inverter that generates AC, The AC generated by the inverter is used to drive the motors installed in the aircraft.
18. A pulse width modulation device according to any one of claims 1 to 17.
19. A pulse width modulation device according to claim 18; a control surface position measuring unit for measuring the position of a control surface of the aircraft driven by the motor; a flight controller that generates a command for the position of the control surface; Equipped with The pulse width modulator generates pulses based on the deviation between the position command from the flight controller and the measured position from the control surface position measuring unit. Flight control system.
20. A pulse width modulation method for varying the duty ratio of a pulse in a pulse period, comprising: a pulse period command step of generating a pulse period command; a duty ratio command step of generating a duty ratio command; a pulse width modulation step of generating pulses having a duty ratio commanded by the duty ratio command step in a pulse period commanded by the pulse period command step; Equipped with The pulse period command step includes a pulse period change step of changing the length of the pulse period generated as a command. Pulse width modulation method.
21. A pulse width modulation program that varies the duty ratio of a pulse in a pulse period, a pulse period command step of generating a pulse period command; a duty ratio command step of generating a duty ratio command; a pulse width modulation step of generating pulses having a duty ratio commanded by the duty ratio command step in a pulse period commanded by the pulse period command step; on the computer, The pulse period command step includes a pulse period change step of changing the length of the pulse period generated as a command. Pulse width modulation program.
22. A pulse width modulation method for varying the duty ratio of a pulse in a pulse period, comprising: a pulse position command step of generating a command for the position of a pulse in a pulse period; a duty ratio command step of generating a duty ratio command; a pulse width modulation step of generating a pulse having a duty ratio commanded by the duty ratio command step at a position commanded by the pulse position command step; Equipped with The pulse position command step includes a pulse position changing step of changing the position of a pulse generated as a command. Pulse width modulation method.
23. A pulse width modulation program that varies the duty ratio of a pulse in a pulse period, a pulse position command step of generating a command for the position of a pulse in a pulse period; a duty ratio command step of generating a duty ratio command; a pulse width modulation step of generating a pulse having a duty ratio commanded by the duty ratio command step at a position commanded by the pulse position command step; on the computer, The pulse position command step includes a pulse position changing step of changing the position of a pulse generated as a command. Pulse width modulation program.
24. A pulse width modulation method for varying the duty ratio of a pulse in a pulse period, comprising: a carrier wave generating step of generating a carrier wave that oscillates between a minimum value and a maximum value during a pulse period; a command value acquisition step of acquiring an arbitrary command value between the minimum value and the maximum value; a duty ratio generating step of generating a duty ratio command based on an intersection point between the carrier wave and the command value; a pulse width modulation step of generating pulses having a duty ratio according to the command of the duty ratio generation step in a pulse period; a random value addition step of adding a random value weighted based on the command value to the command value when generating the command for the duty ratio; A pulse width modulation method comprising:
25. A pulse width modulation program that varies the duty ratio of a pulse in a pulse period, a carrier wave generating step of generating a carrier wave that oscillates between a minimum value and a maximum value during a pulse period; a command value acquisition step of acquiring an arbitrary command value between the minimum value and the maximum value; a duty ratio generating step of generating a duty ratio command based on an intersection point between the carrier wave and the command value; a pulse width modulation step of generating pulses having a duty ratio according to the command of the duty ratio generation step in a pulse period; a random value addition step of adding a random value weighted based on the command value to the command value when generating the command for the duty ratio; A pulse width modulation program that causes a computer to execute
Citation Information
Patent Citations
Method and apparatus for generating PWM signal
JP2017147925A