Sensorless motor control for power tools
Through the sensorless motor control method, the motor back electromotive force signal and high-frequency injection signal are used to detect the rotor position, which solves the problem of increased cost and complexity of sensors and realizes efficient and reliable operation of power tools.
Patent Information
- Application Number
- CN202080029361.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2019-04-15
- Filing Date
- 2020-04-15
- Publication Date
- 2025-10-10
- Estimated Expiration
- 2040-04-15
AI Technical Summary
In power tools, sensors increase cost and complexity, reduce efficiency, and have poor reliability when using brushless DC motors at high temperatures.
A sensorless motor control method is adopted to determine the rotor position by detecting the back electromotive force signal of the motor, combining it with a high-frequency injection signal to detect the rotor position, and using a motor controller to automatically switch between different motor control technologies to adapt to the needs of different load points.
It reduces the cost and complexity of the motor system, improves efficiency and reliability, simplifies motor design, and achieves stable operation at high temperatures.
Smart Images

Figure CN113785485B_ABST
Abstract
Description
[0001] Related applications
[0002] This application claims priority to U.S. Provisional Patent Application No. 62 / 833,834, filed April 15, 2019, which is incorporated herein by reference in its entirety. Technical Field
[0003] Embodiments described herein relate to sensorless motor control in power tools. Background Art
[0004] Brushless DC (BLDC) motors are used in power tools to improve efficiency and power output. These motors are powered by an inverter bridge with power switching elements. The power tool's controller controls the power switching elements (e.g., using a pulse-width modulated (PWM) drive signal) to operate the motor. The duty cycle of the PWM signal can be varied to change the motor's rotational speed. Summary of the Invention
[0005] Unlike brushed motors, the position of the rotor can be determined to control the operation of the BLDC motor. For example, a system with a BLDC motor can use sensors (e.g., Hall sensors) or encoders (e.g., rotary encoders) to detect the position of the magnets in the rotor and thereby control the timing of the drive signals to the power switching elements.
[0006] Including a rotor position sensor in a BLDC motor can increase the cost and size of the power tool, as well as reduce the efficiency of the drive motor. Therefore, for at least these reasons, there is a need for at least one or more of the following: a sensorless motor, a method for detecting the rotor position of a sensorless motor, and techniques for operating a sensorless motor.
[0007] The method described herein provides automatic control of switching of a sensorless motor for driving a power tool. The method includes determining, using a motor controller based on user input, a first load point, and determining, using the motor controller, a first motor control technique corresponding to the first load point. The method also includes driving the motor based on the first motor control technique. The method also includes determining, using the motor controller, a change from the first load point to a second load point, and determining, using the motor controller, a second motor control technique corresponding to the second load point. The method includes driving the motor based on the second motor control technique.
[0008] The power tool described herein provides a sensorless motor, an inverter bridge configured to provide operating power to the motor, and a motor controller coupled to the inverter bridge. The motor controller is configured to determine a first load point based on user input, and to determine a first motor control technique corresponding to the first load point. The motor controller is further configured to drive the motor based on the first motor control technique using the inverter bridge. The motor controller is further configured to determine a change from the first load point to a second load point, and to determine a second motor control technique corresponding to the second load point. The motor controller is configured to drive the motor based on the second motor control technique using the inverter bridge.
[0009] A method described herein provides automated control of switching of a sensorless motor for driving a power tool. The method includes detecting power tool operating parameters using a motor controller, and determining a load point of the power tool based on the power tool operating parameters using the motor controller. The method also includes determining a motor control technique corresponding to the load point using the motor controller, and driving the motor using the motor controller based on the motor control technique.
[0010] The power tool described herein includes a sensorless motor, an inverter bridge configured to provide operating power to the motor, and a motor controller coupled to the inverter bridge. The motor controller is configured to detect power tool operating parameters and determine a load point of the power tool based on the power tool operating parameters. The motor controller is further configured to determine a motor control technique corresponding to the load point and drive the motor using the inverter bridge based on the motor control technique.
[0011] A method described herein provides high-frequency injection rotor position detection for sensorless motors in power tools. The method includes coupling a high-frequency injection signal to the motor using a coupling circuit and detecting the motor's response to the high-frequency injection signal using a decoupling circuit. The method also includes determining the rotor position based on the motor's response using a motor controller while maintaining a low switching frequency on the inverter bridge; and driving the motor based on the detected rotor position using the motor controller.
[0012] The power tool described herein includes a sensorless motor, a coupling circuit, an inverter bridge configured to provide operating power to the motor, and a motor controller coupled to the inverter bridge and the coupling circuit. The coupling circuit is configured to couple a high-frequency injection signal to the motor. The motor controller is configured to: detect a motor response to the high-frequency injection signal; and determine a rotor position based on the motor response while maintaining a low switching frequency on the inverter bridge. The motor controller is further configured to drive the motor using the inverter bridge based on the detected rotor position.
[0013] Before any embodiment is explained in detail, it should be understood that the application of the embodiments is not limited to the construction details and component arrangements set forth in the following description or shown in the accompanying drawings. The embodiments can be practiced or implemented in various ways. In addition, it should be understood that the words and terms used herein are for descriptive purposes and should not be considered restrictive. The use of "including," "comprising," or "having" and variations thereof is intended to cover the items listed thereafter and their equivalents as well as additional items. Unless otherwise specified or limited, the terms "mounted," "connected," "supported," and "coupled" and variations thereof are used broadly and cover direct and indirect mounting, connection, support, and coupling.
[0014] In addition, it should be understood that embodiments may include hardware, software, and electronic components or modules, which, for purposes of discussion, may be shown and described as if most components were implemented solely in hardware. However, one of ordinary skill in the art will recognize, based on a reading of this detailed description, that in at least one embodiment, the electronic-based aspects may be implemented using software (e.g., stored on a non-transitory computer-readable medium) that may be executed by one or more processing units (e.g., a microprocessor and / or an application-specific integrated circuit ("ASIC")). Therefore, it should be noted that embodiments may be implemented using a variety of hardware and software-based devices and a variety of different structural components. For example, a "server," "computing device," "controller," "processor," etc. described in the specification may include one or more processing units, one or more computer-readable media modules, one or more input / output interfaces, and different connectors (e.g., a system bus) to connect multiple components.
[0015] Relative terms used in conjunction with quantities or conditions (e.g., "about," "approximately," "substantially," etc.) will be understood by those of ordinary skill in the art to include the value described and have the meaning dictated by the context (e.g., the term includes at least the degree of error associated with measurement precision, the tolerance associated with a particular value [e.g., manufacturing, assembly, use, etc.], etc.). Such terms should also be considered to disclose a range defined by the absolute values of the two endpoints. For example, the expression "about 2 to about 4" also discloses a range of "2 to 4." Relative terms can refer to plus or minus a certain percentage (e.g., 1%, 5%, 10% or more) on a particular value.
[0016] It should be understood that although some of the drawings show hardware and software located in specific devices, these diagrams are for illustrative purposes only. Functions described herein as being performed by one component can be performed in a distributed manner by multiple components. Similarly, functions performed by multiple components can be merged and performed by a single component. In some embodiments, the components shown can be combined or divided into separate software, firmware and / or hardware. For example, logic and processing can be distributed between multiple electronic processors rather than being located within and performed by a single electronic processor. Regardless of how they are combined or divided, hardware and software components can be located on the same computing device or can be distributed between different computing devices connected by one or more networks or other suitable communication links. Similarly, components described as performing specific functions can also perform additional functions not described herein. For example, a device or structure that is "configured" in a certain way is configured at least in this way, but may also be configured in a manner not explicitly listed.
[0017] Other aspects of the invention will become apparent by consideration of the detailed description and accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] Figure 1 is a side view of a power tool according to some embodiments.
[0019] Figure 2A According to some embodiments Figure 1 Perspective view of a motor of a power tool.
[0020] Figure 2B According to some embodiments Figure 1 A cross-sectional view of a motor of an electric power tool.
[0021] Figure 3 According to some embodiments Figure 1 A simplified block diagram of a power tool's motor drive.
[0022] Figure 4 is to implement sinusoidal commutation according to some embodiments Figure 3 Simplified block diagram of a motor driver.
[0023] Figure 5 Field oriented control is implemented according to some embodiments Figure 3 Simplified block diagram of a motor driver.
[0024] Figure 6 According to some embodiments, Figures 2A to 2B Flowchart of a method for automatic control switching of a motor.
[0025] Figure 7 According to some embodiments, Figures 2A to 2BFlowchart of a method for automatic control switching of a motor.
[0026] Figure 8 According to some embodiments, high frequency injection of rotor position detection is implemented Figure 3 Simplified block diagram of a motor driver.
[0027] Figure 9 According to some embodiments, high frequency injection of rotor position detection is implemented Figure 3 Simplified block diagram of a motor driver.
[0028] Figure 10 According to some embodiments, high frequency injection of rotor position detection is implemented Figure 3 Simplified block diagram of a motor driver.
[0029] Figure 11 According to some embodiments, the injection coil Figure 1 Perspective view of a motor of a power tool.
[0030] Figure 12 According to some embodiments, Figures 2A to 2B Flowchart of a method for high-frequency injection rotor position detection of a motor. DETAILED DESCRIPTION
[0031] Figure 1 An exemplary embodiment of a power tool 100 including a brushless DC (BLDC) motor is shown. The power tool 100 is, for example, a brushless hammer drill having a housing 104 with a handle portion 108 and a motor housing portion 112. The power tool 100 also includes an output drive 116 (shown as a chuck), a torque setting dial 120, a forward / reverse selector 124, a trigger 128, a battery interface 132, and a light 136. Although Figure 1 A hammer drill is shown, but in some embodiments, the motors and motor drives described herein are incorporated into other types of power tools, including drills, impact drivers, impact wrenches, angle grinders, circular saws, reciprocating saws, string trimmers, leaf blowers, vacuums, and the like.
[0032] The power tool 100 includes a brushless DC motor 150 ( Figures 2A to 2B In a brushless motor power tool such as the power tool 100, the switching element is selectively enabled and disabled by a control signal from a controller to selectively apply power from a power source (e.g., a battery pack) to drive the brushless motor 150. Figures 2A to 2B, the electric motor 150 includes a stator 154 and a rotor 158 at least partially positioned within the stator 154. The stator 154 includes a plurality of individual laminations stacked together to form a stator core 162 (e.g., a stator stack). The stator 154 includes inwardly extending stator teeth 166 and slots 170 defined between each pair of adjacent stator teeth 166. In the example shown, the stator 154 includes six stator teeth 166 defining six stator slots 170. The stator 154 also includes stator windings 174 positioned at least partially within the slots 170. In the example shown, the stator windings 174 include six coils 174A-174F connected in a three-phase, parallel delta configuration. In alternative embodiments, the coils 174A-174F may be connected in other configurations (e.g., series, delta, etc.).
[0033] The rotor 158 includes a plurality of individual rotor laminations that are stacked together to form a rotor core 186. A rotor shaft 190 is positioned through a central hole 194 in the rotor core 186. The rotor 158 includes a plurality of slots 198, permanent magnets 202 ( Figure 2B Only one of them is shown) is received therein.
[0034] Figure 3 An exemplary embodiment of a motor driver 220 for controlling the operation of the motor 150 is shown. The motor driver 220 includes a motor controller 224, an inverter bridge 228, and the motor 150. In some embodiments, the motor controller 224 is implemented as a microprocessor with independent memory. In other embodiments, the motor controller 224 is implemented as a microcontroller (with memory on the same chip). In other embodiments, the motor controller 224 may be partially or fully implemented as, for example, a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a hardware-implemented state machine, etc., and may not require memory or may modify the memory accordingly. The motor controller 224 controls the operation of the motor 150 via the inverter bridge 228. The motor controller 224 is communicatively coupled to a user input 232 and a current detector 236. The user input 232 may include the trigger switch 128, the torque setting dial 120, the forward / reverse selector 124, a mode selector, etc. The trigger switch 128 may include, for example, a potentiometer, a distance sensor, etc., to determine the distance the trigger is pulled and provide an indication of the distance the trigger is pulled to the motor controller 224. Current sensors 236 are coupled to motor coils 174 or inverter bridge 228 to detect the current flowing through each coil 174. Motor controller 224 performs variable speed control of motor 150 through inverter bridge 228 based on one or more inputs received from user input 232 and motor feedback received from current sensors 236.
[0035] The inverter bridge 228 controls the power supply to the three-phase (e.g., U, V, and W) motor 150 of the power tool 100. The inverter bridge 228 includes a high-side field effect transistor (FET) 240 and a low-side FET 244 for each phase of the motor 150. The high-side FET 240 and the low-side FET 244 are controlled by respective gate drivers implemented, for example, in the motor controller 224.
[0036] The drain of the high-side FET 240 is connected to the positive DC bus 248 (e.g., power supply) and the source of the high-side FET 240 is connected to the motor 150 (e.g., phase coil 174 of the motor 150) to provide power supply to the motor 150 (i.e., the respective phase coil 174) when the high-side FET 240 is closed. In other words, the high-side FET 240 is connected between the positive DC bus 248 and the motor phase coil 174.
[0037] The drain of the low-side FET 244 is connected to the motor 150 (e.g., phase coil 174 of the motor 150) and the source of the low-side FET 244 is connected to the negative DC bus 252 (e.g., ground). In other words, the low-side FET 244 is connected between the motor phase coil 174 and the negative DC bus 252. When closed, the low-side FET 244 provides a current path between the motor phase coil 174 and the negative DC bus 252.
[0038] In the illustrated example, for the motor driver 220, the motor 150 appears as coils 174 connected in a delta configuration. While the following explanation is exemplified for the DELTA configuration, the explanation applies equally to other configurations (e.g., Y configuration) and control for these other configurations can be obtained using simple mathematical transformations. The three motor terminals are generally referred to as U, V, and W terminals. The inverter bridge 228 allows the motor driver 220 to connect each terminal to the positive DC bus 248, the negative DC bus 252, or leave the terminal open as described above. The motor controller 224 uses pulse width modulation signals provided to the FETs 240, 244 to selectively enable the FETs 240, 244 to activate the coils 174. The selective activation of the phase coils 174 generates a force on the permanent magnets 202 of the rotor 158 to rotate the rotor 158. The rotor shaft 190 rotates with the rotor 158 to operate the output drive 116 of the power tool 100.
[0039] Conventional motors include Hall sensors (or other rotary encoders) that provide rotor magnet position information to motor controller 224. Motor controller 224 selectively activates each phase U, V, and W based on the rotor magnet position information. Hall sensors and other external position sensors require additional components and wiring, which increases the cost, size, and design complexity of motor driver 220. The presence of sensors also increases the cost of motor 150 and reduces reliability when operating at high temperatures.
[0040] During operation of the motor 150, current flowing through the motor phase coils 174 generates a force on the rotor magnets 202 to rotate the rotor 158. Conversely, as the rotor magnets 202 pass by the phase coils 174, the rotor magnets 202 generate a current or back electromotive force (BEMF) in the phase coils 174. This BEMF can be detected in a sensorless motor to determine the rotor position and drive the motor 150 accordingly. A sensorless motor refers to a type of motor that does not include Hall effect sensors or other external sensors (e.g., external angular position sensors) to detect the position of the rotor 158. Instead, the sensorless motor uses the BEMF generated in the inactive phase coils 174 to determine the rotor position. The sensorless motor driver 220 reduces cost and requires fewer interconnections between the motor 150 and other components, thereby simplifying the motor design.
[0041] Typical motor control involves activating two phases of motor 150 and deactivating one phase of the motor. The deactivated phase is used to detect the BEMF generated by rotor 158. For each sequential activation of phase coils 175, the BEMF generated in the deactivated coil is used to detect, for example, a zero crossing of the BEMF signal. The rotor position can be detected based on the zero crossing detected in the BEMF signal. Motor controller 224 uses the rotor position as described above to control the rotation of motor 150.
[0042] The motor driver 220 can implement several drive techniques, such as six-step control (also known as block commutation), sinusoidal control, and field-oriented control (FOC). Six-step control involves sequentially activating each phase (or block) to generate torque in the rotor 158. When the rotor magnets 202 are "0" degrees away from the activated phase coil 174, the motor 150 generates no torque in the rotor 158. When the rotor magnets 202 are "90" degrees away from the activated phase coil 174, the motor 150 generates maximum torque in the rotor 158. Six-step control involves the motor controller 224 detecting the position of the rotor 158 to selectively activate the phases that are "90" degrees apart to generate maximum torque in the rotor 158. As described above, the motor controller 224 detects the rotor position based on the BEMF signal detected in the deactivated phase coil 174. As the rotor 158 rotates, in response to the motor controller 224 determining the rotor position, the motor controller 224 activates the next phase coil 174 that is "90" degrees away from the rotor magnets 202 to continue to generate the optimal amount of torque in the rotor 158 as the rotor 158 rotates.
[0043] Figure 4 A motor drive 220 is shown for sinusoidal commutation of the motor 150. Unlike six-step control (which provides current signals to the coils 174 in rectangular blocks of high, low, or zero to drive the motor 150), sinusoidal commutation attempts to provide smooth sinusoidal current signals to the coils 174. Figure 4 The motor driver 220 is similar to Figure 3, but with the logic components of the motor controller 224 for sinusoidal commutation broken down and illustrated. The motor driver 220 includes a rotor position detector 268, a sinusoidal reference block 272, and a PWM generator 276. For example, the motor controller 224 may implement one or more of the rotor position detector 268, the sinusoidal reference block 272, and the PWM generator 276 by executing instructions stored in a memory of the motor controller 224. The rotor position detector 268 receives a current detection signal from the current detector 236 and provides the rotor position signal to the sinusoidal reference block 272. The sinusoidal reference block 272 receives the user input 232 and the rotor position signal and outputs a sinusoidal control signal to the PWM generator 276. The sinusoidal reference block 272 includes, for example, a lookup table that maps between the user input 232 (e.g., desired torque, desired speed, etc.), the rotor position, and the sinusoidal control signal. The sinusoidal control signal may provide an indication of desired signal characteristics (e.g., amplitude, frequency, etc.) of the signal to be provided to the motor coils 174 to output the desired torque. The PWM generator 276 generates a PWM signal and provides the PWM signal to the FETs 240, 244. In the example shown, the PWM generator 276 is shown as providing a first PWM signal to the high-side FET 240 and a second PWM signal to the low-side FET 244. In some embodiments, additional PWM signals may be provided to other FETs 240, 244 to control the current provided to the motor coil 174.
[0044] Figure 5 A motor driver 220 is shown for field oriented control of motor 150. Unlike six-step control where coil blocks are commutated sequentially, field oriented control involves using PWM control of FETs 240, 244 to provide a smooth or trapezoidal waveform to motor coils 174, for example. Figure 5 The motor driver 220 is similar to Figure 3, but the logic components of the motor controller 224 for field-oriented control are broken down and illustrated. The motor driver 220 includes a rotor position detector 268, a Clarke and Park transform block 288, an error comparator 292, a current regulator 296, an inverse Park transform block 300, and a space vector PWM generator 304. For example, the motor controller 224 may implement one or more of the rotor position detector 268, the Clarke and Park transform block 288, the error comparator 292, the current regulator 296, the inverse Park transform block 300, and the space vector PWM generator 304 by executing instructions stored in a memory of the motor controller 224. The rotor position detector 268 receives a current detection signal from the current detector 236 and provides the rotor position signal to the Clarke and Park transform block 288 and the inverse Park transform block 300. Clarke and Park transform block 288 receives motor phase current signals from at least two of motor phases U, V, and W and converts the motor phase current signals into in-phase stator current (id) and quadrature-phase stator current (iq) signals using a Clarke transform followed by a Park transform. The in-phase and quadrature current signals are provided to error comparator 292. Error comparator 292 also receives a desired in-phase current (idref) signal and a desired quadrature current (iqref) signal based on the desired torque from user input 232. Error comparator 292 determines the difference between the detected current signal and the desired current signal and provides the difference between the detected and desired current signals to current regulator 296. Current regulator 296 outputs voltage control signals (Vq and Vd) in the quadrature and in-phase domains to inverse Park transform block 300 based on the error signal from error comparator 292. Inverse Park transform block 300 converts the voltage control signals into phase voltage control signals using a Park transform. The phase voltage control signals are provided to space vector PWM generator 304. In some embodiments, an inverse Clarke transform PWM generator can be used instead of the space vector PWM generator 304. The space vector PWM generator 304 uses space vector modulation to generate PWM signals provided to the inverter bridge 228. In the example shown, the space vector PWM generator 304 is shown as generating three PWM signals, which are provided to one high-side FET 240 and two low-side FETs 244 of the inverter bridge 228, respectively. In some embodiments, different numbers of PWM signals and different selections of FETs 240, 244 can be used to implement field-oriented control.
[0045] Figures 3 to 5Only exemplary embodiments of six-step control, sinusoidal commutation, and field-oriented control of motor 150 are shown. The control methods described above can be adjusted based on the specifications and design of the device and motor. In addition, motor controller 224 can also use other motor control techniques not described above to drive motor 150.
[0046] As described above, motor controller 224 is capable of implementing any of the aforementioned motor control techniques. Each motor control technique has its advantages and disadvantages. Specifically, motor control techniques can produce optimal drive under different load and speed conditions. For example, six-step control can be used for high speed and low torque, but can be relatively inefficient at low speeds. Six-step control can produce torque fluctuations at low speeds, resulting in inefficient operation. However, six-step control can achieve peak torque from the motor over a longer period of time than sinusoidal or field-oriented control techniques. Therefore, motor efficiency can be improved by using the appropriate motor control technique at the appropriate load point. For example, motor controller 224 can store a lookup table that associates multiple load points with one of several motor control techniques. Motor controller 224 can then detect a load point, access the lookup table to determine the motor control technique associated with that load point (selected from a plurality of motor control techniques), and then apply that motor control technique to drive the motor. Thus, motor controller 224 uses different control techniques to drive the motor at different load points.
[0047] Figure 6is a flowchart of an example method 350 for automatically controlling switching of a motor 150 according to some embodiments. In the illustrated example, the method 350 includes determining a first load point based on user inputs 232 using the motor controller 224 (at block 354). The motor controller 224 receives user inputs 232, e.g., a speed input from the trigger switch 128, a torque limit from the torque setting dial 120, a direction signal from the forward / reverse selector 124, an operating mode from the mode selector, etc. The motor controller 224 determines a load point based on these user inputs 232. For example, the load point is one of a high speed low torque application, a high speed high torque application, a low speed low torque application, a low speed high torque application, etc. In some embodiments, the load point can be a speed setting, e.g., high speed, medium speed, low speed, etc. (e.g., indicated by the amount of pull of the trigger (when compared to a relevant threshold) or from a speed selector dial), or a torque setting, e.g., high torque, medium torque, low torque, etc. (e.g., indicated by the amount of pull of the trigger (when compared to a relevant threshold) or from a torque dial 120). The load point can also be determined based on an application or mode selected using the mode selector of the power tool 100. In some embodiments, the motor controller 224 can store a lookup table in memory of the motor controller 224 or the power tool 100 that includes a mapping between a plurality of user inputs 232 and a related load point (e.g., a low, medium, or high load point).
[0048] The method 350 also includes determining a first motor control technique corresponding to the first load point using the motor controller 224 (at block 358). As described above, the motor controller 224 can store a lookup table in memory of the motor controller 224 or the power tool 100. The lookup table includes a mapping between a plurality of load points and motor control techniques. The motor controller 224 selects a first motor control technique (e.g., six-step control, sinusoidal commutation, field oriented control, etc.) corresponding to the first load point.
[0049] The method 350 also includes driving the motor 150 based on the first motor control technique (at block 362). The motor driver 220 implements the selected motor control technique, as further described above. For example, the motor controller 224 drives the motor 150 using six-step control, sinusoidal commutation, field oriented control, etc.
[0050] Method 350 also includes determining, using the motor controller 224, a change from a first load point to a second load point (at block 366). The motor controller 224 continues to analyze user input (e.g., periodically during tool operation) to determine a desired or operating load point for the power tool 100. The motor controller 224 determines a change in the load point from the first load point to the second load point based on the change in user input 232 (e.g., using techniques similar to those described above with respect to block 358). Method 350 also includes determining, using the motor controller 224, a second motor control technique corresponding to the second load point (at block 370). As described above, the motor controller 224 may store a lookup table in a memory of the motor controller 224 or the power tool 100. The lookup table includes a mapping between a plurality of load points and motor control techniques. The motor controller 224 selects a second motor control technique (e.g., six-step control, sinusoidal commutation, field-oriented control, etc.) corresponding to the second load point.
[0051] Method 350 also includes driving motor 150 based on a second motor control technique (at block 374). Motor driver 220 implements the selected motor control technique, as further described above. For example, motor controller 224 drives motor 150 using six-step control, sinusoidal commutation, field-oriented control, etc.
[0052] Figure 7 1 is a flow chart of an example method 400 for automatically controlling switching of a drive motor 150 according to some embodiments. In the example shown, the method 400 includes detecting power tool operating parameters using the motor controller 224 (at block 404). The motor controller 224 communicates with various sensors of the power tool 100 to determine operating parameters of the power tool 100 or the motor 150. The motor controller 224 can use the sensors to determine motor current, motor voltage, torque output, etc. of the power tool 100.
[0053] The method 400 also includes determining, using the motor controller 224, a load point for the power tool 100 based on the power tool operating parameters (at block 408). For example, the load point is one of a high-speed, low-torque application, a high-speed, high-torque application, a low-speed, low-torque application, a low-speed, high-torque application, and the like. In some embodiments, the load point can be a speed setting (e.g., high, medium, low speed, etc.) or a torque setting (e.g., high torque, medium torque, low torque, etc.). The motor controller 224 determines the load point based on sensor outputs monitored by the motor controller 224.
[0054] The method 400 also includes determining a motor control technique corresponding to the load point using the motor controller 224 (at block 412). As described above, the motor controller 224 can store a lookup table in the memory of the motor controller 224 or the power tool 100. The lookup table includes a mapping between a plurality of load points and motor control techniques. The motor controller 224 selects a motor control technique (e.g., six-step control, sinusoidal commutation, field oriented control, etc.) corresponding to the load point. The method 350 includes driving the motor 150 based on the motor control technique (at block 416). The motor driver 220 implements the selected motor control technique, as described further above. Similar to that discussed above with respect to the method 350, the method 400 can also include determining a change in the load point and automatically switching the motor control technique to a motor control technique corresponding to the new load point.
[0055] One example implementation of the methods 350 and 400 can include using the power tool 100 to seat and drive a fastener. Seating a fastener can include precise control and low speed at the beginning of a fastening operation. The motor controller 224 detects the low speed and determines that the low speed corresponds to a first load point of the power tool 100. Generally, sinusoidal commutation or field oriented control is more suitable for low speed applications because sinusoidal commutation and field oriented control provide better precision and low torque ripple output compared to six-step control. Accordingly, the motor controller 224 determines that, for example, field oriented control corresponds to the detected load point. The motor controller 224 drives the motor 150 based on the field oriented control. Once the fastener is seated, the power tool 100 can operate at high speed to drive the fastener into the workpiece. The motor controller 224 detects a change from low speed to high speed. Generally, six-step control is more suitable for high speed operation because six-step control provides longer operating time before overheating and can achieve higher peak performance than sinusoidal or field oriented control. Accordingly, the motor controller 224 determines that six-step control corresponds to high speed operation based on, for example, a pre-stored lookup table. In response, the motor controller 224 drives the motor 150 based on the six-step control until the fastening operation is complete.
[0056] As described above, the motor 150 is a sensorless motor and does not include a Hall effect sensor or an external angular position sensor (i.e., external to the motor components). One alternative to using an external position sensor to detect rotor position and control the motor is high frequency injection rotor position sensing. Generally, high frequency injection rotor position sensing includes space vector modulation to modulate an injection of high order harmonic frequencies through the inverter bridge. High frequency signals are injected onto the PWM signals provided to the FETs 240, 244. The response of the motor 150 to these frequencies is used to determine rotor position at start-up and during operation. However, high frequency injection through the inverter modulation requires higher switching speeds, which increases the losses of the inverter bridge 228 and reduces the performance of the motor 150.
[0057] Figure 8 A motor driver 220 is shown for high frequency injection rotor position detection according to some embodiments. In some embodiments, high frequency refers to a frequency that is higher than the nominal switching frequency of the inverter bridge 228. In some examples, the nominal switching frequency of the inverter bridge 228 is a frequency between approximately 8 kHz and 20 kHz. Figure 8 The motor driver 220 is similar to Figures 3 to 5 , but with the logic components of motor controller 224 for high-frequency injection broken down and illustrated. Motor driver 220 includes coupling circuit 450, decoupling circuit 454, response measurement block 458, and rotor position estimator block 462. For example, motor controller 224 may implement one or more of response measurement block 458 and rotor position estimator block 462. Coupling circuit 450 receives a high-frequency injection signal from, for example, signal generator 466, which may include an oscillator to generate the high-frequency injection signal. Coupling circuit 450 couples the injection signal to DC buses 248, 252. In the example shown, coupling circuit 450 couples the injection signal to positive DC bus 248. In other examples, coupling circuit 450 may couple the injection signal to negative DC bus 252 or to both positive and negative DC buses 248, 252. In some embodiments, coupling circuit 450 includes a capacitor that capacitively couples signal generator 466 to DC buses 248, 252. In some embodiments, coupling circuit 450 includes a transformer (eg, a wound coil) that couples signal generator 466 to DC buses 248 , 252 . DC buses 248 , 252 provide injection signals along with DC operating voltage signals to inverter bridge 228 for operation of motor 150 .
[0058] A decoupling circuit 454 is connected to the motor phase coils 174. The decoupling circuit 454 is selectively connected to the inactive phase coils 174 (also referred to as the non-driven phase) to extract the motor response to the high-frequency injection. The decoupling circuit 454 decouples the response signal from other signals detected on the inactive phase coils 174. The decoupling circuit 454 provides the response signal to the response measurement block 458. The decoupling circuit 454 can have a similar structure to the coupling circuit. For example, the decoupling circuit 454 can capacitively couple the inactive phase coils 174 to the response measurement block 458, or can include a transformer to couple the inactive phase coils 174 to the response measurement block 458. For example, the response signal is a current signal that is the response of the motor 150 to the high-frequency injection signal. The decoupling circuit 454 provides the response current signal as the response signal to the response measurement block 458. In the illustrated example, to simplify the illustration, only a single decoupling circuit 454 is shown and the decoupling circuit 454 is connected to a single motor terminal. However, the decoupling circuit 454 may be connected to all motor terminals U, V, and W to detect the response of each motor terminal during the inactive phase of the motor terminal. Alternatively, a separate decoupling circuit 454 (one for each motor terminal) may be provided to provide a response signal from each motor terminal to the response measurement block 458.
[0059] The response measurement block 458 receives the response signal from the decoupling circuit 454 and measures the motor's response to the high-frequency injection signal. For example, the response measurement block 458 detects the impedance (e.g., reluctance, inductance, etc.) of each motor coil 174 in response to the high-frequency injection. The response measurement block 458 provides the measured response as a measurement signal to the rotor position estimator block 462. The characteristics of the measurement signal can then be used to determine information about the motor and rotor position. For example, in some embodiments, the difference in amplitude or phase (delay) between the injection signal and the measurement signal indicates the rotor position.
[0060] The rotor position estimator block 462 receives the measurement signal from the response measurement block 458 and determines the rotor position, rotor speed, or both based on the measurement signal. The motor controller 224 may store a lookup table that includes mappings between different impedance measurements and rotor positions. The rotor position estimator block 462 determines the rotor position by referencing the lookup table to determine the rotor position corresponding to the impedance measurement. The rotor position estimator block 462 may use the change in rotor position to further determine the rotational speed of the motor 150.
[0061] In some embodiments, the decoupling circuit 454, the response measurement block 458, and / or the rotor position estimator block 462 are provided in the rotor position detector 268 (see Figure 4 and Figure 5The motor 150 is then driven by the motor driver 220 based on the rotor position and / or rotor speed provided by the rotor position detector 268 according to any of the motor control techniques described above, without requiring a separate rotor position sensor (e.g., a Hall sensor or an external position sensor).
[0062] Figure 9 A motor driver 220 is shown for high frequency injection rotor position detection according to some embodiments. Figure 9 The motor driver 220 is similar to Figure 8 The motor driver 220. However, in Figure 9 In the example shown, the high-frequency injection signal is coupled directly to the motor terminals U, V, and W, rather than to the DC bus 248, 252. The coupling circuit 450 couples the high-frequency injection signal at the junction of the high-side FET 240 and the low-side FET 244. In some embodiments, the coupling circuit 450 couples the high-frequency injection signal directly to the terminals U, V, and W of the motor 150.
[0063] exist Figure 9 In the example shown, a single coupling circuit 450 is shown and is connected to a single motor terminal. However, the coupling circuit 450 can be connected to all motor terminals U, V, and W to provide a high-frequency injection signal to each motor terminal. Alternatively, a separate coupling circuit 450 (one for each motor terminal) can be provided to provide an injection signal from the signal generator 466 to each motor terminal. For example, the motor controller 224 can control the coupling circuit 450 to inject a high-frequency signal into the motor terminals U, V, and W when the corresponding high-side FET 240 of the motor terminal is closed and the corresponding low-side FET 244 of the motor terminal is open.
[0064] In some embodiments, the motor controller 224 uses space vector modulation to inject a third harmonic frequency signal into the DC bus 248, 252 or the motor terminals U, V, and W. In this example, the third harmonic frequency refers to a frequency approximately three times the frequency of the output signal of the inverter bridge 228 (for example, when the output signal of the inverter bridge 228 is 200 Hz, the injected signal is approximately 600 Hz). The rotor position detector 268 determines the response of the motor to the third harmonic injection to estimate the rotor position and speed. The third harmonic injection produces a sinusoidal BEMF response in the non-activated phase terminals. Therefore, the third harmonic injection provides a more accurate rotor position and rotor speed estimate.
[0065] Figure 10 A motor driver 220 is shown for high frequency injection rotor position detection according to some embodiments. Figure 9 The motor driver 220 is similar to Figure 8 and Figure 9The motor driver 220. However, in Figure 9 In the example shown, a high frequency signal is injected into the injection coil 470. The injection coil 470 receives the high frequency injection signal and is not used to power the motor 150. Specifically, the coupling circuit 450 provides the high frequency injection signal from the signal generator 466 to the injection coil 470. In these embodiments, the response of the non-activated coil 174 is similarly detected, as described above with respect to Figure 8 and Figure 9 As described above, the rotor position and / or speed is detected based on the motor's response to high-frequency injection into the injection coil 470. As described above, space vector modulation including third harmonic injection in the injection coil 470 can be used to detect the motor 150 response to increase the accuracy of the rotor position estimate. In some embodiments, the injection coil 470 can be positioned around the existing phase coil 174. Figure 11 One example placement of the injection coil 470 is shown. In the example shown, the injection coil 470 is wrapped around the existing phase coils 174 of the motor 150. The injection coil 470 can be placed in other locations, such as at the top or bottom of the stator 154.
[0066] Figure 12 is a flow chart of an example method 500 for high-frequency injection rotor position detection. In the example shown, the method 500 includes coupling a high-frequency injection signal to the motor 150 using the coupling circuit 450 (at block 504). As described above, the coupling circuit 450 couples the high-frequency injection signal to the DC bus 248, 252, the motor terminals U, V, and W, and one of the injection coils 470. The high-frequency injection signal typically has a higher frequency than the switching frequency of the inverter bridge 228. Coupling the high-frequency injection signal to the DC bus or the motor coils 174, 470 helps maintain a lower switching frequency of the inverter bridge 228 and improves performance.
[0067] Method 500 also includes detecting a motor response to the high frequency injection signal using motor controller 224 (at block 508). The motor response is detected on the deactivated phase winding 174 of motor 150. Decoupling circuit 454 detects the motor response and provides a response signal to response measurement block 458. Response measurement block 458 measures the motor response based on the response signal, as described in further detail above, and provides the measurement signal to rotor position estimator block 462.
[0068] The method 500 also includes determining the rotor position based on the motor response using the motor controller 224 while maintaining a low switching frequency on the inverter bridge 228 (at block 512). The rotor position estimator block 462 receives the motor response and estimates the rotor position based on the motor response. Specifically, the rotor position estimator block 462 receives the measurement signal and estimates the rotor position based on the measurement signal, as further described above. As described above, since the high-frequency injection signal is provided on the DC bus 248, 252 or the motor terminals, the normal switching frequency of the FETs 240, 244 of the inverter bridge 228 used to operate the motor 150 is not affected.
[0069] Method 500 includes driving motor 150 based on the detected rotor position (at block 516). The rotor position and / or speed detected by rotor position detector 268 is used to drive motor 150. For example, in six-step control, the rotor position is used to activate the next coil 174 or block of motor 150. In sinusoidal commutation, the rotor position is provided to sinusoidal reference block 272 to determine the PWM control signal for inverter bridge 228. In field-oriented control, the rotor position is provided to the Park transform block and the inverse Park transform block of Clark and Park transform block 288 to determine the PWM control signal for inverter bridge 228. Method 500 may then loop back to block 504.
[0070] Thus, the embodiments described herein provide a sensorless motor and sensorless motor control for a power tool. Various features and advantages are set forth in the following claims.
Claims
1. A method for automatically controlling and switching a sensorless motor for driving a power tool, the method comprising: determining, using the motor controller, a first load point based on the user input; determining, using the motor controller, a first motor control technique corresponding to the first load point; driving the sensorless motor based on the first motor control technology; determining, using the motor controller, a change from the first load point to a second load point; wherein the first load point is one selected from the group consisting of: a high speed low torque application, a high speed high torque application, a low speed low torque application, and a low speed high torque application; determining, using the motor controller, a second motor control technique corresponding to the second load point; as well as The sensorless motor is driven based on the second motor control technique.
2. The method according to claim 1, wherein The first motor control technique is one selected from the group consisting of: block commutation, sinusoidal control, and field oriented control.
3. The method according to claim 1, wherein The second motor control technique is one selected from the group consisting of: block commutation, sinusoidal control, and field oriented control.
4. The method according to claim 1, wherein The user input is selected from the group consisting of: a speed input from a trigger switch, a torque limit from a torque setting dial, a direction signal from a forward / reverse selector, and an operating mode from a mode selector.
5. The method according to claim 1, wherein A change from the first load point to the second load point is detected based on a change in the user input.
6. The method according to claim 1, wherein The second load point is one selected from the group consisting of: a high speed low torque application, a high speed high torque application, a low speed low torque application, and a low speed high torque application.
7. The method according to claim 1, further comprising: coupling a high frequency injection signal to the sensorless motor using a coupling circuit; detecting a motor response to the high frequency injection signal using a decoupling circuit; Using the motor controller coupled to the decoupling circuit, determining the rotor position based on the motor response while Maintaining a low switching frequency on the inverter bridge, and The sensorless motor is driven based on the detected rotor position using the motor controller and the inverter bridge.
8. An electric tool comprising: Sensorless motor; an inverter bridge configured to provide operating power to the sensorless motor; as well as A motor controller is coupled to the inverter bridge, the motor controller being configured to determining a first load point based on user input, wherein the first load point is one selected from the group consisting of: a high speed low torque application, a high speed high torque application, a low speed low torque application, and a low speed high torque application; determining a first motor control technique corresponding to the first load point, Using the inverter bridge to drive the sensorless motor based on the first motor control technology, determining a change from the first load point to a second load point; determining a second motor control technique corresponding to the second load point, and The sensorless motor is driven using the inverter bridge based on the second motor control technique.
9. The electric tool according to claim 8, wherein: The first motor control technique is one selected from the group consisting of: block commutation, sinusoidal control, and field oriented control.
10. The electric power tool according to claim 8, wherein The second motor control technique is one selected from the group consisting of: block commutation, sinusoidal control, and field oriented control.
11. The electric power tool according to claim 8, wherein The user input is selected from one or more of the group consisting of: a speed input from a trigger switch, a torque limit from a torque setting dial, a direction signal from a forward / reverse selector, and an operating mode from a mode selector.
12. The electric power tool according to claim 8, wherein A change from the first load point to the second load point is detected based on a change in the user input.
13. The electric power tool according to claim 8, wherein The second load point is one selected from the group consisting of: a high speed low torque application, a high speed high torque application, a low speed low torque application, and a low speed high torque application.
14. The power tool according to claim 8, further comprising coupling circuit; and Decoupling circuit; The motor controller is further configured to coupling a high frequency injection signal to the sensorless motor using the coupling circuit, detecting a motor response to the high frequency injection signal using the decoupling circuit, determining the rotor position based on the motor response while maintaining a low switching frequency on the inverter bridge, and The sensorless motor is driven based on the detected rotor position using the inverter bridge.
15. A method for automatically controlling and switching a sensorless motor for driving a power tool, the method comprising: Use motor controller to detect power tool operating parameters; determining a load point of the power tool based on the power tool operating parameters using the motor controller; wherein the load point is selected from one of the group consisting of: a high speed low torque application, a high speed high torque application, a low speed low torque application, and a low speed high torque application; determining, using the motor controller, a motor control technique corresponding to the load point; as well as The sensorless motor is driven using the motor controller based on the motor control technique.
16. The method according to claim 15, wherein The motor control technique is one selected from the group consisting of: block commutation, sinusoidal control, and field oriented control.
17. The method according to claim 15, wherein: The power tool operating parameters are detected using one or more sensors.
18. The method according to claim 17, wherein The one or more sensors are configured to detect one or more selected from the group consisting of: motor current, motor voltage, and torque output.
19. The method according to claim 15, further comprising: coupling a high frequency injection signal to the sensorless motor using a coupling circuit, detecting a motor response to the high frequency injection signal using a decoupling circuit, determining rotor position based on motor response while maintaining a low switching frequency on the inverter bridge using the motor controller coupled to the decoupling circuit, and The sensorless motor is driven based on the detected rotor position using the motor controller and the inverter bridge.
20. An electric tool comprising: Sensorless motor; an inverter bridge configured to provide operating power to the sensorless motor; as well as A motor controller is coupled to the inverter bridge, the motor controller being configured to Detection of power tool operating parameters, determining a load point of the power tool based on the power tool operating parameters, wherein the load point is selected from one of the group consisting of: a high speed low torque application, a high speed high torque application, a low speed low torque application, and a low speed high torque application; determining a motor control technique corresponding to the load point, and The sensorless motor is driven using the inverter bridge based on the motor control technology.
21. The electric power tool according to claim 20, wherein The motor control technique is one selected from the group consisting of: block commutation, sinusoidal control, and field oriented control.
22. The power tool of claim 20, further comprising one or more sensors, wherein the power tool operating parameters are detected using the one or more sensors.
23. The electric power tool according to claim 22, wherein: The one or more sensors are configured to detect one or more selected from the group consisting of: motor current, motor voltage, and torque output.
24. The power tool according to claim 20, further comprising coupling circuit; and Decoupling circuit; The motor controller is further configured to coupling a high frequency injection signal to the sensorless motor using the coupling circuit, detecting a motor response to the high frequency injection signal using the decoupling circuit, determining the rotor position based on the motor response while maintaining a low switching frequency on the inverter bridge, and The sensorless motor is driven based on the detected rotor position using the inverter bridge.
25. A method for detecting rotor position of a sensorless motor of an electric tool by high-frequency injection, the method comprising: coupling a high frequency injection signal to the sensorless motor using a coupling circuit; detecting a motor response to the high frequency injection signal using a decoupling circuit; determining a rotor position based on the motor response while maintaining a low switching frequency on the inverter bridge using a motor controller coupled to the decoupling circuit; and driving the sensorless motor based on the detected rotor position using the motor controller and the inverter bridge; The coupling circuit couples the high frequency injection signal to a DC bus that provides DC power from a power source of the power tool to the inverter bridge.
26. The method of claim 25, further comprising generating the high frequency injection signal using a signal generator coupled to the coupling circuit.
27. The method according to claim 25, wherein The high frequency injection signal is coupled to the motor terminals.
28. The method according to claim 25, wherein The high frequency injection signal is a third harmonic frequency signal, which is approximately three times the frequency of the output signal of the inverter bridge.
29. The method according to claim 25, wherein The high frequency injection signal is injected into the injection coil of the sensorless motor.
30. The method according to claim 29, wherein The injection coil is wound around the existing phase coil of the sensorless motor.
31. The method of claim 25, wherein: The decoupling circuit is electrically connected to the motor phase coils of the sensorless motor.
32. The method of claim 25, wherein: The motor response is detected on the deactivated phase coils of the sensorless motor.
33. An electric tool comprising: Sensorless motor; an inverter bridge configured to provide operating power to the sensorless motor; a DC bus that provides DC power from a power source of the power tool to the inverter bridge; coupling circuit; Decoupling circuit; as well as A motor controller is coupled to the inverter bridge, the coupling circuit, and the decoupling circuit. Configured as coupling a high frequency injection signal to the sensorless motor using the coupling circuit, wherein the coupling circuit couples the high frequency injection signal to the DC bus; detecting a motor response to the high frequency injection signal using the decoupling circuit, determining the rotor position based on the motor response while maintaining a low switching frequency on the inverter bridge, and The sensorless motor is driven based on the detected rotor position.
34. The power tool of claim 33, further comprising a signal generator coupled to the coupling circuit and configured to generate the high frequency injection signal.
35. The power tool according to claim 33, wherein The coupling circuit also includes a capacitor configured to capacitively couple the high frequency injection signal to the DC bus.
36. The power tool according to claim 33, wherein The coupling circuit also includes a transformer configured to couple the high frequency injection signal to the DC bus.
37. The power tool according to claim 33, wherein: The coupling circuit couples the high frequency injection signal to motor terminals.
38. The power tool according to claim 33, wherein The high-frequency injection signal is a third harmonic frequency signal, which is approximately three times the frequency of the output signal of the inverter bridge.
39. The power tool of claim 33, further comprising: The sensorless motor includes an injection coil, wherein the coupling circuit couples the high frequency injection signal to the injection coil.
40. The power tool according to claim 39, wherein The injection coil is wound around the existing phase coil of the sensorless motor.
41. The power tool according to claim 33, wherein The decoupling circuit is electrically connected to the motor phase coils of the sensorless motor.
42. The power tool according to claim 33, wherein The motor response is detected on the deactivated phase coils of the sensorless motor.
43. An electric tool comprising: Sensorless motor; an inverter bridge configured to provide operating power to the sensorless motor; as well as A motor controller is coupled to the inverter bridge, the motor controller being configured to determining a first load point based on user input; determining a first motor control technique corresponding to the first load point; Using the inverter bridge to drive the sensorless motor based on the first motor control technology; determining a change from the first load point to a second load point; determining a second motor control technique corresponding to the second load point, wherein the second load point is one selected from the group consisting of: a high speed low torque application, a high speed high torque application, a low speed low torque application, and a low speed high torque application; as well as The sensorless motor is driven using the inverter bridge based on the second motor control technique.
44. An electric tool comprising: Sensorless motor; an inverter bridge configured to provide operating power to the sensorless motor; coupling circuit; Decoupling circuit; as well as A motor controller is coupled to the inverter bridge, the motor controller being configured to determining a first load point based on user input; determining a first motor control technique corresponding to the first load point; Using the inverter bridge to drive the sensorless motor based on the first motor control technology; determining a change from the first load point to a second load point; determining a second motor control technique corresponding to the second load point; Using the inverter bridge to drive the sensorless motor based on the second motor control technology; coupling a high frequency injection signal to the sensorless motor using the coupling circuit; detecting a motor response to the high frequency injection signal using the decoupling circuit; determining the rotor position based on the motor response while maintaining a low switching frequency on the inverter bridge, and The sensorless motor is driven based on the detected rotor position using the inverter bridge.
45. A method for automatically controlling and switching a sensorless motor for driving a power tool, the method comprising: Use the motor controller to detect the power tool operating parameters, determining, using the motor controller, a load point of the power tool based on the power tool operating parameters, using the motor controller, determining a motor control technique corresponding to the load point; Using the motor controller to drive the sensorless motor based on the motor control technology, coupling a high frequency injection signal to the sensorless motor using a coupling circuit, detecting a motor response to the high frequency injection signal using a decoupling circuit, determining a rotor position based on the motor response while maintaining a low switching frequency on an inverter bridge using the motor controller coupled to the decoupling circuit; and The sensorless motor is driven based on the detected rotor position using the motor controller and the inverter bridge.
46. An electric tool comprising: Sensorless motor; an inverter bridge configured to provide operating power to the sensorless motor; coupling circuit; Decoupling circuit; as well as A motor controller is coupled to the inverter bridge, the motor controller being configured to Detection of power tool operating parameters, determining a load point of the power tool based on the power tool operating parameters, determining a motor control technique corresponding to the load point, Using the inverter bridge to drive the sensorless motor based on the motor control technology, coupling a high frequency injection signal to the sensorless motor using the coupling circuit, detecting a motor response to the high frequency injection signal using the decoupling circuit; determining a rotor position based on the motor response while maintaining a low switching frequency on the inverter bridge; as well as The sensorless motor is driven based on the detected rotor position using the inverter bridge.
Citation Information
Patent Citations
Rotary electric machine control system
JP2010246282A
Control scheme to increase power output of a power tool using conduction band and advance angle
US20170366117A1
Electrical angle-detecting apparatus and driving system of synchronous motor using the same
US5608300A
Motor-driving circuit
US6091216A