US20210050809A1 - Motor stepper driver having a sine digital-to-analog converter - Google Patents
Motor stepper driver having a sine digital-to-analog converter Download PDFInfo
- Publication number
- US20210050809A1 US20210050809A1 US16/747,673 US202016747673A US2021050809A1 US 20210050809 A1 US20210050809 A1 US 20210050809A1 US 202016747673 A US202016747673 A US 202016747673A US 2021050809 A1 US2021050809 A1 US 2021050809A1
- Authority
- US
- United States
- Prior art keywords
- coupled
- switches
- resistors
- sine
- dac
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 229920005994 diacetyl cellulose Polymers 0.000 description 4
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000005669 field effect Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000003071 parasitic effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P8/00—Arrangements for controlling dynamo-electric motors rotating step by step
- H02P8/22—Control of step size; Intermediate stepping, e.g. microstepping
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02K—DYNAMO-ELECTRIC MACHINES
- H02K37/00—Motors with rotor rotating step by step and without interrupter or commutator driven by the rotor, e.g. stepping motors
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P8/00—Arrangements for controlling dynamo-electric motors rotating step by step
- H02P8/12—Control or stabilisation of current
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M1/00—Analogue/digital conversion; Digital/analogue conversion
- H03M1/12—Analogue/digital converters
- H03M1/64—Analogue/digital converters with intermediate conversion to phase of sinusoidal or similar periodical signals
Definitions
- At least one type of stepper rotor includes two cons that receive current from a stepper driver.
- the current to each coil should be sinusoidal with the current to one coil being 90 degrees out of phase with respect to the current to the other coil.
- the angular position of the stepper motor is a function of the ratio of the magnitude of the currents through the cons (e.g., the arctangent of the ratio of the magnitudes). Inaccuracies in the coil current magnitudes can cause inaccuracies in the rotational position of the motor.
- a stepper driver for a motor includes an H-bridge, a sense transistor coupled to the H-bridge, a voltage-to-current (VtoI) converter, and a sine digital-to-analog converter (DAC).
- the VtoI converter has a VtoI converter input and a VtoI converter output.
- the VtoI converter output is coupled to the sense transistor.
- the sine DAC has a sine DAC digital input, a reference input, and a sine DAC output.
- the sine DAC output is coupled to the VtoI converter input.
- the sine DAC includes an R-2R network, an offset control circuit coupled to the R-2R network, and a gain control circuit also coupled to the R-2R network.
- FIG. 1 illustrates an example of a stepper motor system.
- FIG. 2 shows an example of the stepper driver including a sine digital-to-analog converter (DAC).
- DAC digital-to-analog converter
- FIG. 3 shows an example of a sine DAC including an R-2R network, a gain control circuit, and an offset control circuit.
- FIG. 4 shows a DAC output versus digital code input linear relationship for an R-2R network and a desired sinusoidal relationship implemented for the sine DAC.
- FIG. 5 illustrates the piece-wise linear relationship implemented using the gain and offset control circuits.
- FIG. 6 further illustrates the piece-wise linear relationship implemented using the gain and offset control circuits.
- FIG. 7 shows an example of a voltage-to-current converter usable in the example stepper driver of FIG. 2 .
- FIG. 8 shows a further example implementation of the sine DAC.
- FIG. 9 shows yet a further example implementation of the sine DAC.
- FIG. 10 shows an example implementation of a stepper driver integrated circuit (IC) including multiple sine DACs.
- IC stepper driver integrated circuit
- One type of stepper driver includes multiple current source devices (e.g., transistors) that can be operationally switched in and out of the circuit to provide a variable trip current to thereby control the current to the coils.
- Each current source may be configured for the same current (e.g., 1 micro-amp).
- By switching on two current sources in parallel a two micro-amp trip current is generated.
- Three current sources in parallel produces a three micro-amp trip current, and so on.
- This type of stepper driver is useful for 1 ⁇ 4 micro-stepping in which four current levels, and thus four motor positions, are possible for each quarter cycle of the sinusoidal current.
- micro-stepping level of a stepper motor is useful in a variety of applications such as camera zoom.
- One approach to increasing the micro-stepping level of a stepper motor would be to increase the number of the current sources, with each current source providing less current than in the 1 ⁇ 4 micro-stepping case.
- current mismatch among the current source devices becomes a bigger problem.
- Larger area transistors could be used for the current sources to thereby address the mismatch problem, but larger transistors occupy more area on a die and have larger parasitic capacitances which, in turn, increases the settling time when changing from one current level to another.
- quiescent current of a current source-based current control for a stepper motor can be undesirably large. Power supply headroom also can be problematic particularly when lower power supply voltages are desired.
- the examples disclosed herein are directed to a stepper driver that includes a sine digital-to-analog converter (DAC).
- the sine DAC receives digital code inputs and produces an analog output voltage that has an approximately sinusoidal relationship to the digital code input.
- a voltage-to-current (VtoI) converter then converts the sine DAC output voltage to the trip current to control the current through the stepper motor's coils.
- the sine DAC includes an R-2R network, an offset control circuit, and a gain control circuit. Absent the gain and offset control circuits, the relationship between the R-2R network's output voltage and its digital code input is generally linear.
- the gain and offset control circuits operate to modify the R-2R networks' linear transfer function to one that is approximately sinusoidal.
- FIG. 1 shows an example of a stepper motor system 100 .
- the example stepper motor system 100 includes a controller 102 coupled to a stepper motor driver 120 , which in turn couples to a stepper motor M.
- the stepper motor M includes Coil 1 and Coil 2 , and the stepper driver 120 controls the current through the coils.
- the current through the coils is approximately sinusoidal and the current through Coil 2 is 90 degrees out of phase with respect to Coil 1 .
- the controller 102 includes a processor or other type of digital control circuit.
- the controller 102 couples to the stepper driver 120 by way of a STEP signal, a direction (DIR) signal, and a programming interface.
- the programming interface may comprise any suitable interface such as a serial peripheral interconnect (SPI).
- SPI serial peripheral interconnect
- Each rising edge of the STEP signal causes the stepper driver 120 to advance the motor's position one step, and the DIR signal specifies the direction of the motor change (forward or reverse).
- the stepper driver 120 includes a sine DAC 121 (described below).
- FIG. 2 illustrates an example of at least a portion of the stepper driver 120 .
- Coil 1 is shown in this schematic, but the coil itself is generally not a component of the semiconductor die containing the other components shown for the stepper driver 120 .
- the stepper driver 120 includes high side transistors HS 1 and HS 2 , low side transistors LS 1 and LS 2 , a comparator 210 , a digital logic and driver 211 , a voltage-to-current (VtoI) converter 214 , and the sine DAC 121 .
- Each of transistors HS 1 , HS 2 , LS 1 , and LS 2 may comprise metal oxide semiconductor field effect transistors (FETs).
- FETs metal oxide semiconductor field effect transistors
- Transistors HS 1 , HS 2 , LS 1 , and LS 2 in this example comprise n-type FETs (NMOS) but can be implemented as other types of transistors as desired.
- the stepper driver 120 also includes a sense transistor (SNS FET).
- Transistors HS 1 , HS 2 , LS 1 , and LS 2 are coupled together to form an H-bridge. As shown in the example of FIG. 2 , the drains of HS 1 and HS 2 are coupled together at a positive supply voltage node (VDD), and the sources of LS 1 and LS 2 are coupled together at a ground node. The source of HS 1 is connected to the drain of LS 1 at a node A.
- VDD positive supply voltage node
- VDD positive supply voltage node
- the source of HS 1 is connected to the drain of LS 1 at a node A.
- FIG. 9 shows an example of a stepper driver including both H-bridges and sense FETs.
- the digital logic and driver 211 include logic 212 coupled to a gate driver 213 .
- the gate driver 213 asserts gate signals Hson 1 , Hson 2 , Lson 1 , and Lson 2 for the gates of transistors HS 1 , HS 2 , LS 1 , and LS 2 , respectively.
- the comparator 210 includes a positive (+) input, a negative ( ⁇ ) input, and output.
- the comparator's output is coupled to the digital logic and driver 211 .
- the comparator's positive input is coupled to node B which also represents the drain-to-source voltage of transistor LS 2 .
- the gate of transistor LS 2 is connected to the gate of the SNS FET, and the drain of the SNS FET is coupled to the negative input of the comparator.
- the source of the SNS FET is connected to ground.
- the sine DAC 121 includes one input that receives microstepping indexer bits (s[n:0]) and another input that receives a reference voltage VREF.
- the microstepping indexer bits represent control signals for switches internal to the sine DAC 121 , as will be discussed below.
- the microstepping indexer bits are generated based on a DAC code, and FIG. 9 shows an example of a digital core that converts a DAC code to the microstepping indexer bits.
- the DAC code is a 3-bit binary value, and the corresponding indexer bits comprise 8 bits.
- the output of the sine DAC 121 is labeled Vsine and is coupled to an input of the VtoI converter 214 .
- the output of the VtoI converter 214 is coupled to the drain of the SNS FET and to the negative input of the comparator 210 .
- FIG. 3 shows an example implementation of the sine DAC 121 .
- This example includes an R-2R network 310 , a gain control circuit 320 , and an offset control circuit 330 .
- the gain and offset control circuits 320 and 330 are coupled to the R-2R network.
- the R-2R network 310 comprises repeating instances of a unit resistor R coupled to a 2R resistor.
- the unit resistors R may comprise a single resistor with a resistance of R or multiple resistors in series or in parallel with an effective resistance of R.
- the unit resistors are coupled in series between node Nout and ground as shown, and a 2R resistor is coupled to each node between adjacent unit resistors R.
- Each 2R resistor is coupled to a switch, which is operative to electrically couple the respective 2R resistor to either the reference voltage VREF or to ground.
- the microstepping indexer bits control the switches.
- the example of FIG. 3 includes eight switches and eight microstepping indexer bitss [ 7 :0].
- the voltage on node Nout represents the Vsine output of the sine DAC.
- the relationship between digital code and Vsine is linear as shown by 410 in FIG. 4 .
- the relationship between DAC code and Vsine is sinusoidal as illustrated by sinusoidal curve 420 .
- the gain control circuit 320 operates to modify the slope of the Vsine-DAC code relationship and the offset control circuit 330 operates to introduce an offset where needed in order to create a piece-wise linear, approximately sinusoidal relationship between Vsine and DAC as illustrated in FIG. 5 .
- FIG. 5 also illustrates piece-wise linear segments 509 , 510 , 51 , 512 , 513 , and 514 that result from the operation of the gain control circuit 320 .
- the gain (slope) of the Vsine-DAC code relationship can be varied across the DAC codes through use of the gain control circuit 320 . Initially (i.e., at a DAC code of 0), the slope of the Vsine-DAC code relationship ( 509 ) is larger than the slope inherent to the linear R-2R network.
- FIG. 6 shows an example of a relationship 600 between Vsine and DAC code comprising piece-wise linear 601 , 602 , 603 , 604 , 605 , and 606 .
- the relationship 600 approximates a sinusoid.
- the amount of the gain modification and offset for each piece-wise linear segment depends on the number of steps implemented by the stepper driver 120 and the desired accuracy. Thus, the amount of gain and offset control is application-specific.
- FIG. 7 shows an example of the VtoI converter 214 .
- the VtoI converter 214 in this example includes an amplifier 705 , a current mirror 707 , a transistor M 1 , and a trimmable resistor R 1 .
- the positive input of the amplifier 705 is coupled to the output of the sine DAC 121 .
- the output of the amplifier 705 is coupled to the gate of M 1 (which is an NMOS device in this example).
- the current mirror 707 comprises a pair of PMOS devices which mirror the current through SNS FET.
- the R 1 (and thus voltage across R 1 ) is coupled to the negative input of amplifier 705 .
- the VtoI converter 214 generates 11 which is mirrored into the SNSFET using the current mirror 707 .
- FIG. 8 shows another example of the sine DAC 121 with additional detail shown for the gain control circuit 320 and the offset control circuit 330 .
- the gain control circuit 320 includes multiple resistors. Each resistor is coupled to a different node within the serial chain of unit resistances R. This example is for a two-bit DAC code and thus the R-2R network 310 a in this example includes four switches coupled to the 2R resistances. As such, the R-2R network 310 a includes three inter-resistance R nodes N 1 , N 2 , and N 3 . Of the three nodes N 1 -N 3 , however, only nodes N 1 and N 2 are coupled to respective resistors 720 and 725 as shown.
- the resistances 720 and 725 are coupled between Vsine and the R-2R network 310 a. Node N 3 is not connected to the gain control circuit 320 in this example.
- Resistor 720 is shown as “X*R” which means that resistance 720 is a function X of the unit resistance. “X” is a function the DAC code. As such, the resistance of resistor 720 may vary from DAC code to DAC code and may even be turned “off” for certain DAC codes (e.g. decoupled from node N 1 ).
- resistor 725 is Y*R, where Y is a different function of the DAC code than X.
- the offset control circuit 320 also includes a configurable resistor 730 , and its resistance is f 1 *R, where f 1 is a function of the DAC code different from X and Y. Resistor 730 is connected between VREF and Vsine as shown.
- FIG. 9 shows an example of a sine DAC 821 .
- Sine DAC 821 in this example includes an R-2R network 810 , a gain control circuit 820 , and an offset control circuit 830 .
- Switches SW selectively connect each 2R resistor to either VREF or ground as shown and as described above, thereby implementing a linear R-2R DAC.
- Resistors R (along with one 2R resistor) are connected in series between Vsine and ground.
- the nodes between the resistors R are labeled NODE 21 -NODE 26 as shown.
- the DAC is a 3-bit binary value and thus there are eight 2R resistances and eight corresponding switches SW.
- the 3-bit DAC code is decoded into eight bits with each bit controlling a respective switch of the switches SW.
- the gain control circuit 820 includes resistors R 20 -R 29 and switches SW 1 -SW 8 .
- Resistors R 20 , R 21 , R 22 , R 23 , and R 24 are connected in series between NODE 25 and SW 1 .
- Resistors R 25 and R 25 are connected in parallel.
- Resistors R 20 , R 21 , R 22 , R 23 , R 24 , and the parallel combination of R 25 and R 26 are connected in series between NODE 25 and SW 2 .
- the node between resistors R 21 and R 22 is connected to switch SW 3 , and thus resistors R 20 and R 21 are connected in series between NODE 25 and switch SW 3 .
- Resistors R 20 , R 21 , R 22 , R 23 , and R 24 are connected in series between NODE 25 and SW 4 .
- Resistors R 27 , R 28 , and R 29 are connected in series between NODE 24 and SW 5 and are also connected in series between NODE 24 and switch SW 6 .
- the node between resistors R 27 and R 28 is connected to switch SW 7 and thus resistor R 27 is connected between NODE 24 and switch SW 7 .
- the node between resistors R 20 and R 21 is connected to switch SW 8 and thus resistor R 20 is connected between NODE 25 and switch SW 8 .
- the unit resistances (R) equal 100 Kohms and the 2R resistances equal 200 Kohms.
- the resistances comprising R 20 -R 29 may be implemented using unit resistors (e.g., 100 Kohms) combined in series and in parallel to form different resistances. That is, R 20 -R 29 may be the same or different resistances and are application-specific.
- SW 1 to SW 8 have different resistances coupled between the switch and the corresponding NODE.
- one or more of the resistors are reused for multiple switches. For example, if SW 3 requires 2R between SW 3 and NODE 25 , instead of connecting 2R from SW 8 to NODE 25 , a 2R that was used for SW 1 is reused as SW 1 is off when SW 3 is on.
- the reuse of resistors to save area also is implemented for the offset control circuit 830 .
- control signals for SW 1 -SW 16 are generated to thereby couple particular resistance values between Vsine and various internal nodes of the R-2R network 810 thereby providing a predetermined amount of gain as explained above.
- Offset control circuit 830 in the example FIG. 9 includes resistors R 30 -R 42 and switches SW 11 -SW 6 .
- Resistors R 30 , R 31 , R 32 , R 33 , R 34 , R 35 , R 36 , R 37 , and R 38 are connected in series between VREF and switch SW 11 .
- R 35 , R 36 , and R 37 are connected in series between VREF and switch SW 12 .
- Resistors R 30 -R 35 are connected in series between VREF and switch SW 13 .
- Resistors R 38 and R 40 are connected in series and in parallel with resistor R 31 .
- resistors R 41 and R 42 are connected in series and in parallel with resistor R 33 .
- Resistors R 30 -R 33 are connected in series (and with R 41 and R 42 connected in series and in parallel with R 33 ) between VREF and switch SW 14 .
- Resistors R 30 and R 31 are connected in series (with R 39 and R 40 connected in series and in parallel with R 31 ) between VREF and switch SW 15 .
- Resistor R 30 is connected in between VREEF and switch SW 16 .
- each of R 30 -R 42 comprises a resistance of 25 Kohms.
- the control signals that control switches SW 11 -SW 16 are the same signals that control switches SW 3 -SW 8 , respectively. As only one of SW 3 -SW 8 is on at any given time, resistors used for SW 3 are reused when SW 3 is off to save significant area compared to what would be the case if the same resistors were not used for different switches.
- FIG. 10 illustrates another example of a stepper driver integrated circuit (IC) 900 for controlling a stepper motor 980 .
- COIL 1 of the stepper motor 980 is controlled by one H-bridge, senses 925 and 926 , a sine DAC 915 , a VtoI converter 916 , and a comparator 927 .
- the H-bridge for COIL 1 comprises FETs 921 , 922 , 923 , and 924 where FETs 921 and 923 represent the high side FETs and FETs 922 and 924 represent the low side FETs.
- Digital core 910 generates and/or otherwise receives a DAC code for the stepper motor 980 and decodes the DAC code to generate the microstepping indexer bits.
- Sine DAC 915 is coupled to digital core 910 by way of signal line(s) 911 which provide the microstepping indexer bits to the sine DAC.
- a generally identical set of components is included with the stepper driver IC 900 to drive COIL 2 .
- COIL 2 of the stepper motor 980 is controlled by another H-bridge, senses 935 and 936 , a sine DAC 945 , a VtoI converter 946 , and a comparator 937 .
- the H-bridge for COIL 2 comprises FETs 931 , 932 , 933 , and 934 where FETs 931 and 933 represent the high side FETs and FETs 932 and 934 represent the low side FETs.
- Sine DAC 945 is coupled to digital core 910 by way of signal line(s) 941 which provide the microstepping indexer bits to the sine DAC 945 .
- Couple is used throughout the specification. The term may cover connections, communications, or signal paths that enable a functional relationship consistent with the description of the present disclosure. For example, if device A generates a signal to control device B to perform an action, in a first example device A is coupled to device B, or in a second example device A is coupled to device B through intervening component C if intervening component C does not substantially alter the functional relationship between device A and device B such that device B is controlled by device A via the control signal generated by device A.
Landscapes
- Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Theoretical Computer Science (AREA)
- Control Of Stepping Motors (AREA)
Abstract
Description
- This application claims priority to U.S. Provisional Application No. 62/886,981, filed Aug. 15, 2019, and U.S. Provisional Application No. 62/954,332, filed Dec. 27, 2019, which are hereby incorporated by reference.
- At least one type of stepper rotor includes two cons that receive current from a stepper driver. The current to each coil should be sinusoidal with the current to one coil being 90 degrees out of phase with respect to the current to the other coil. The angular position of the stepper motor is a function of the ratio of the magnitude of the currents through the cons (e.g., the arctangent of the ratio of the magnitudes). Inaccuracies in the coil current magnitudes can cause inaccuracies in the rotational position of the motor.
- In at least one example, a stepper driver for a motor includes an H-bridge, a sense transistor coupled to the H-bridge, a voltage-to-current (VtoI) converter, and a sine digital-to-analog converter (DAC). The VtoI converter has a VtoI converter input and a VtoI converter output. The VtoI converter output is coupled to the sense transistor. The sine DAC has a sine DAC digital input, a reference input, and a sine DAC output. The sine DAC output is coupled to the VtoI converter input. The sine DAC includes an R-2R network, an offset control circuit coupled to the R-2R network, and a gain control circuit also coupled to the R-2R network.
- For a detailed description of various examples, reference will now be made to the accompanying drawings in which:
-
FIG. 1 illustrates an example of a stepper motor system. -
FIG. 2 shows an example of the stepper driver including a sine digital-to-analog converter (DAC). -
FIG. 3 shows an example of a sine DAC including an R-2R network, a gain control circuit, and an offset control circuit. -
FIG. 4 shows a DAC output versus digital code input linear relationship for an R-2R network and a desired sinusoidal relationship implemented for the sine DAC. -
FIG. 5 illustrates the piece-wise linear relationship implemented using the gain and offset control circuits. -
FIG. 6 further illustrates the piece-wise linear relationship implemented using the gain and offset control circuits. -
FIG. 7 shows an example of a voltage-to-current converter usable in the example stepper driver ofFIG. 2 . -
FIG. 8 shows a further example implementation of the sine DAC. -
FIG. 9 shows yet a further example implementation of the sine DAC. -
FIG. 10 shows an example implementation of a stepper driver integrated circuit (IC) including multiple sine DACs. - One type of stepper driver includes multiple current source devices (e.g., transistors) that can be operationally switched in and out of the circuit to provide a variable trip current to thereby control the current to the coils. Each current source may be configured for the same current (e.g., 1 micro-amp). By switching on two current sources in parallel, a two micro-amp trip current is generated. Three current sources in parallel produces a three micro-amp trip current, and so on. This type of stepper driver is useful for ¼ micro-stepping in which four current levels, and thus four motor positions, are possible for each quarter cycle of the sinusoidal current.
- To increase the resolution of the positional control over the stepper motor, higher levels of micro-stepping should be implemented, such as 1/256, 1/1024, 1/4096, etc. Higher resolution stepper motors are useful in a variety of applications such as camera zoom. One approach to increasing the micro-stepping level of a stepper motor would be to increase the number of the current sources, with each current source providing less current than in the ¼ micro-stepping case. However, at smaller and smaller levels of current, current mismatch among the current source devices becomes a bigger problem. Larger area transistors could be used for the current sources to thereby address the mismatch problem, but larger transistors occupy more area on a die and have larger parasitic capacitances which, in turn, increases the settling time when changing from one current level to another. Further, quiescent current of a current source-based current control for a stepper motor can be undesirably large. Power supply headroom also can be problematic particularly when lower power supply voltages are desired.
- The examples disclosed herein are directed to a stepper driver that includes a sine digital-to-analog converter (DAC). The sine DAC receives digital code inputs and produces an analog output voltage that has an approximately sinusoidal relationship to the digital code input. A voltage-to-current (VtoI) converter then converts the sine DAC output voltage to the trip current to control the current through the stepper motor's coils. The sine DAC includes an R-2R network, an offset control circuit, and a gain control circuit. Absent the gain and offset control circuits, the relationship between the R-2R network's output voltage and its digital code input is generally linear. The gain and offset control circuits operate to modify the R-2R networks' linear transfer function to one that is approximately sinusoidal.
-
FIG. 1 shows an example of astepper motor system 100. The examplestepper motor system 100 includes acontroller 102 coupled to astepper motor driver 120, which in turn couples to a stepper motor M. The stepper motor M includesCoil 1 andCoil 2, and thestepper driver 120 controls the current through the coils. The current through the coils is approximately sinusoidal and the current throughCoil 2 is 90 degrees out of phase with respect toCoil 1. - In one example, the
controller 102 includes a processor or other type of digital control circuit. Thecontroller 102 couples to thestepper driver 120 by way of a STEP signal, a direction (DIR) signal, and a programming interface. The programming interface may comprise any suitable interface such as a serial peripheral interconnect (SPI). Each rising edge of the STEP signal causes thestepper driver 120 to advance the motor's position one step, and the DIR signal specifies the direction of the motor change (forward or reverse). Thestepper driver 120 includes a sine DAC 121 (described below). -
FIG. 2 illustrates an example of at least a portion of thestepper driver 120.Coil 1 is shown in this schematic, but the coil itself is generally not a component of the semiconductor die containing the other components shown for thestepper driver 120. In this example, thestepper driver 120 includes high side transistors HS1 and HS2, low side transistors LS1 and LS2, acomparator 210, a digital logic anddriver 211, a voltage-to-current (VtoI)converter 214, and thesine DAC 121. Each of transistors HS1, HS2, LS1, and LS2 may comprise metal oxide semiconductor field effect transistors (FETs). Transistors HS1, HS2, LS1, and LS2 in this example comprise n-type FETs (NMOS) but can be implemented as other types of transistors as desired. Thestepper driver 120 also includes a sense transistor (SNS FET). Transistors HS1, HS2, LS1, and LS2 are coupled together to form an H-bridge. As shown in the example ofFIG. 2 , the drains of HS1 and HS2 are coupled together at a positive supply voltage node (VDD), and the sources of LS1 and LS2 are coupled together at a ground node. The source of HS1 is connected to the drain of LS1 at a node A. Similarly, the source of HS2 is connected to the drain of LS2 at a node B. One coil (e.g., Coil 1) of the motor is coupled between nodes A and B. A separate H-bridge and sense FET is provided for the other coil (Coil 2).FIG. 9 shows an example of a stepper driver including both H-bridges and sense FETs. - The digital logic and
driver 211 includelogic 212 coupled to agate driver 213. Thegate driver 213 asserts gate signals Hson1, Hson2, Lson1, and Lson2 for the gates of transistors HS1, HS2, LS1, and LS2, respectively. Thecomparator 210 includes a positive (+) input, a negative (−) input, and output. The comparator's output is coupled to the digital logic anddriver 211. The comparator's positive input is coupled to node B which also represents the drain-to-source voltage of transistor LS2. The gate of transistor LS2 is connected to the gate of the SNS FET, and the drain of the SNS FET is coupled to the negative input of the comparator. The source of the SNS FET is connected to ground. - The
sine DAC 121 includes one input that receives microstepping indexer bits (s[n:0]) and another input that receives a reference voltage VREF. The microstepping indexer bits represent control signals for switches internal to thesine DAC 121, as will be discussed below. The microstepping indexer bits are generated based on a DAC code, andFIG. 9 shows an example of a digital core that converts a DAC code to the microstepping indexer bits. In one example, the DAC code is a 3-bit binary value, and the corresponding indexer bits comprise 8 bits. The output of thesine DAC 121 is labeled Vsine and is coupled to an input of theVtoI converter 214. The output of theVtoI converter 214 is coupled to the drain of the SNS FET and to the negative input of thecomparator 210. -
FIG. 3 shows an example implementation of thesine DAC 121. This example includes an R-2R network 310, again control circuit 320, and an offsetcontrol circuit 330. The gain and offset 320 and 330 are coupled to the R-2R network. The R-control circuits 2R network 310 comprises repeating instances of a unit resistor R coupled to a 2R resistor. The unit resistors R may comprise a single resistor with a resistance of R or multiple resistors in series or in parallel with an effective resistance of R. The unit resistors are coupled in series between node Nout and ground as shown, and a 2R resistor is coupled to each node between adjacent unit resistors R. Each 2R resistor is coupled to a switch, which is operative to electrically couple the respective 2R resistor to either the reference voltage VREF or to ground. The microstepping indexer bits control the switches. The example ofFIG. 3 includes eight switches and eight microstepping indexer bitss [7:0]. The voltage on node Nout represents the Vsine output of the sine DAC. - Absent the gain and offset
320 and 330, the relationship between digital code and Vsine is linear as shown by 410 incontrol circuits FIG. 4 . However, what is desired for proper operation of a stepper motor is for the relationship between DAC code and Vsine to be sinusoidal as illustrated bysinusoidal curve 420. Thegain control circuit 320 operates to modify the slope of the Vsine-DAC code relationship and the offsetcontrol circuit 330 operates to introduce an offset where needed in order to create a piece-wise linear, approximately sinusoidal relationship between Vsine and DAC as illustrated inFIG. 5 . - Referring to
FIG. 5 , thelinear relationship 410 and the desired sinusoidal relationship are repeated fromFIG. 4 .FIG. 5 also illustrates piece-wise 509, 510, 51, 512, 513, and 514 that result from the operation of thelinear segments gain control circuit 320. As shown, the gain (slope) of the Vsine-DAC code relationship can be varied across the DAC codes through use of thegain control circuit 320. Initially (i.e., at a DAC code of 0), the slope of the Vsine-DAC code relationship (509) is larger than the slope inherent to the linear R-2R network. When the DAC code increases to the next code (e.g., 1), an offset is created and the offsetcontrol circuit 330 counteracts the offset to “push” the piece-wiselinear segment 510 upward to track the general contour of the desiredsinusoidal curve 420. At each DAC code, thegain control circuit 320 modifies the slope inherent to the R-2R network by a desired amount and the offsetcontrol circuit 330 introduces an appropriate amount of offset so that the resulting piece-wise linear segments approximatesinusoidal curve 420.FIG. 6 shows an example of arelationship 600 between Vsine and DAC code comprising piece-wise linear 601, 602, 603, 604, 605, and 606. Therelationship 600 approximates a sinusoid. Among other factors, the amount of the gain modification and offset for each piece-wise linear segment depends on the number of steps implemented by thestepper driver 120 and the desired accuracy. Thus, the amount of gain and offset control is application-specific. -
FIG. 7 shows an example of theVtoI converter 214. TheVtoI converter 214 in this example includes anamplifier 705, acurrent mirror 707, a transistor M1, and a trimmable resistor R1. The positive input of theamplifier 705 is coupled to the output of thesine DAC 121. The output of theamplifier 705 is coupled to the gate of M1 (which is an NMOS device in this example). Thecurrent mirror 707 comprises a pair of PMOS devices which mirror the current through SNS FET. The R1 (and thus voltage across R1) is coupled to the negative input ofamplifier 705. TheVtoI converter 214 generates 11 which is mirrored into the SNSFET using thecurrent mirror 707. -
FIG. 8 shows another example of thesine DAC 121 with additional detail shown for thegain control circuit 320 and the offsetcontrol circuit 330. Thegain control circuit 320 includes multiple resistors. Each resistor is coupled to a different node within the serial chain of unit resistances R. This example is for a two-bit DAC code and thus the R-2R network 310 a in this example includes four switches coupled to the 2R resistances. As such, the R-2R network 310 a includes three inter-resistance R nodes N1, N2, and N3. Of the three nodes N1-N3, however, only nodes N1 and N2 are coupled to 720 and 725 as shown. Therespective resistors 720 and 725 are coupled between Vsine and the R-resistances 2R network 310 a. Node N3 is not connected to thegain control circuit 320 in this example.Resistor 720 is shown as “X*R” which means thatresistance 720 is a function X of the unit resistance. “X” is a function the DAC code. As such, the resistance ofresistor 720 may vary from DAC code to DAC code and may even be turned “off” for certain DAC codes (e.g. decoupled from node N1). Similarly,resistor 725 is Y*R, where Y is a different function of the DAC code than X. The offsetcontrol circuit 320 also includes a configurable resistor 730, and its resistance is f1*R, where f1 is a function of the DAC code different from X and Y. Resistor 730 is connected between VREF and Vsine as shown. -
FIG. 9 shows an example of asine DAC 821.Sine DAC 821 in this example includes an R-2R network 810, again control circuit 820, and an offsetcontrol circuit 830. Switches SW selectively connect each 2R resistor to either VREF or ground as shown and as described above, thereby implementing a linear R-2R DAC. Resistors R (along with one 2R resistor) are connected in series between Vsine and ground. The nodes between the resistors R are labeled NODE21-NODE26 as shown. In this example, the DAC is a 3-bit binary value and thus there are eight 2R resistances and eight corresponding switches SW. The 3-bit DAC code is decoded into eight bits with each bit controlling a respective switch of the switches SW. - The
gain control circuit 820 includes resistors R20-R29 and switches SW1-SW8. Resistors R20, R21, R22, R23, and R24 are connected in series between NODE25 and SW1. Resistors R25 and R25 are connected in parallel. Resistors R20, R21, R22, R23, R24, and the parallel combination of R25 and R26 are connected in series between NODE25 and SW2. The node between resistors R21 and R22 is connected to switch SW3, and thus resistors R20 and R21 are connected in series between NODE25 and switch SW3. Resistors R20, R21, R22, R23, and R24 are connected in series between NODE25 and SW4. Resistors R27, R28, and R29 are connected in series between NODE24 and SW5 and are also connected in series between NODE24 and switch SW6. The node between resistors R27 and R28 is connected to switch SW7 and thus resistor R27 is connected between NODE24 and switch SW7. The node between resistors R20 and R21 is connected to switch SW8 and thus resistor R20 is connected between NODE25 and switch SW8. In one example, the unit resistances (R) equal 100 Kohms and the 2R resistances equal 200 Kohms. The resistances comprising R20-R29 may be implemented using unit resistors (e.g., 100 Kohms) combined in series and in parallel to form different resistances. That is, R20-R29 may be the same or different resistances and are application-specific. In one example, SW1 to SW8 have different resistances coupled between the switch and the corresponding NODE. To save area, one or more of the resistors are reused for multiple switches. For example, if SW3 requires 2R between SW3 and NODE25, instead of connecting 2R from SW8 to NODE25, a 2R that was used for SW1 is reused as SW1 is off when SW3 is on. The reuse of resistors to save area also is implemented for the offsetcontrol circuit 830. - Based on the state of at least some of the bits of the DAC code, control signals for SW1-SW16 are generated to thereby couple particular resistance values between Vsine and various internal nodes of the R-
2R network 810 thereby providing a predetermined amount of gain as explained above. - Offset
control circuit 830 in the exampleFIG. 9 includes resistors R30-R42 and switches SW11-SW6. Resistors R30, R31, R32, R33, R34, R35, R36, R37, and R38 are connected in series between VREF and switch SW11. Resistors R30, R31, R32, R33, R34. R35, R36, and R37 are connected in series between VREF and switch SW12. Resistors R30-R35 are connected in series between VREF and switch SW13. Resistors R38 and R40 are connected in series and in parallel with resistor R31. Similarly, resistors R41 and R42 are connected in series and in parallel with resistor R33. Resistors R30-R33 are connected in series (and with R41 and R42 connected in series and in parallel with R33) between VREF and switch SW14. Resistors R30 and R31 are connected in series (with R39 and R40 connected in series and in parallel with R31) between VREF and switch SW15. Resistor R30 is connected in between VREEF and switch SW16. In one example, each of R30-R42 comprises a resistance of 25 Kohms. The control signals that control switches SW11-SW16 are the same signals that control switches SW3-SW8, respectively. As only one of SW3-SW8 is on at any given time, resistors used for SW3 are reused when SW3 is off to save significant area compared to what would be the case if the same resistors were not used for different switches. -
FIG. 10 illustrates another example of a stepper driver integrated circuit (IC) 900 for controlling astepper motor 980. COIL1 of thestepper motor 980 is controlled by one H-bridge, senses 925 and 926, asine DAC 915, aVtoI converter 916, and acomparator 927. The H-bridge for COIL1 comprises 921, 922, 923, and 924 whereFETs 921 and 923 represent the high side FETs andFETs 922 and 924 represent the low side FETs.FETs Digital core 910 generates and/or otherwise receives a DAC code for thestepper motor 980 and decodes the DAC code to generate the microstepping indexer bits.Sine DAC 915 is coupled todigital core 910 by way of signal line(s) 911 which provide the microstepping indexer bits to the sine DAC. - A generally identical set of components is included with the
stepper driver IC 900 to drive COIL2. COIL2 of thestepper motor 980 is controlled by another H-bridge, senses 935 and 936, asine DAC 945, aVtoI converter 946, and acomparator 937. The H-bridge for COIL2 comprises 931, 932, 933, and 934 whereFETs 931 and 933 represent the high side FETs andFETs 932 and 934 represent the low side FETs.FETs Sine DAC 945 is coupled todigital core 910 by way of signal line(s) 941 which provide the microstepping indexer bits to thesine DAC 945. - The term “couple” is used throughout the specification. The term may cover connections, communications, or signal paths that enable a functional relationship consistent with the description of the present disclosure. For example, if device A generates a signal to control device B to perform an action, in a first example device A is coupled to device B, or in a second example device A is coupled to device B through intervening component C if intervening component C does not substantially alter the functional relationship between device A and device B such that device B is controlled by device A via the control signal generated by device A.
- Modifications are possible in the described embodiments, and other embodiments are possible, within the scope of the claims.
Claims (20)
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US16/747,673 US10931216B1 (en) | 2019-08-15 | 2020-01-21 | Motor stepper driver having a sine digital-to-analog converter |
| CN202010811128.1A CN112398386A (en) | 2019-08-15 | 2020-08-13 | Motor step driver with sine D/A converter |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201962886981P | 2019-08-15 | 2019-08-15 | |
| US201962954332P | 2019-12-27 | 2019-12-27 | |
| US16/747,673 US10931216B1 (en) | 2019-08-15 | 2020-01-21 | Motor stepper driver having a sine digital-to-analog converter |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| US20210050809A1 true US20210050809A1 (en) | 2021-02-18 |
| US10931216B1 US10931216B1 (en) | 2021-02-23 |
Family
ID=74567027
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US16/747,673 Active US10931216B1 (en) | 2019-08-15 | 2020-01-21 | Motor stepper driver having a sine digital-to-analog converter |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US10931216B1 (en) |
| CN (1) | CN112398386A (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20240297585A1 (en) * | 2023-03-02 | 2024-09-05 | Texas Instruments Incorporated | Adaptive error amplifier clamp for a peak current mode converter |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6064174A (en) * | 1997-11-26 | 2000-05-16 | Stmicroelectronics, Inc. | Motor control circuit and method with digital level shifting |
| US20110188163A1 (en) * | 2010-02-03 | 2011-08-04 | Rohm Co., Ltd. | Abnormality detection circuit, load driving device, and electrical apparatus |
| US20130314958A1 (en) * | 2012-05-23 | 2013-11-28 | Sunedison Llc | Soft switching power converters |
| US20140028234A1 (en) * | 2012-07-25 | 2014-01-30 | Samsung Electro-Mechanics Co., Ltd. | Motor drive overcurrent detecting circuit, motor driving circuit without headroom voltage loss, and method for detecting overcurrent in motor driving circuit |
| US20150236592A1 (en) * | 2014-02-18 | 2015-08-20 | Seiko Epson Corporation | Circuit device and electronic apparatus |
| US20160043667A1 (en) * | 2013-04-26 | 2016-02-11 | Asahi Kasei Microdevices Corporation | Motor drive apparatus |
| US20160344327A1 (en) * | 2015-05-21 | 2016-11-24 | Analog Devices Global | Feedback control system and method |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004274817A (en) * | 2003-03-05 | 2004-09-30 | Yazaki Corp | Motor forward / reverse drive circuit |
| CN101997464B (en) * | 2009-08-21 | 2013-11-13 | 台达电子工业股份有限公司 | motor control unit |
-
2020
- 2020-01-21 US US16/747,673 patent/US10931216B1/en active Active
- 2020-08-13 CN CN202010811128.1A patent/CN112398386A/en active Pending
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6064174A (en) * | 1997-11-26 | 2000-05-16 | Stmicroelectronics, Inc. | Motor control circuit and method with digital level shifting |
| US20110188163A1 (en) * | 2010-02-03 | 2011-08-04 | Rohm Co., Ltd. | Abnormality detection circuit, load driving device, and electrical apparatus |
| US20130314958A1 (en) * | 2012-05-23 | 2013-11-28 | Sunedison Llc | Soft switching power converters |
| US20140028234A1 (en) * | 2012-07-25 | 2014-01-30 | Samsung Electro-Mechanics Co., Ltd. | Motor drive overcurrent detecting circuit, motor driving circuit without headroom voltage loss, and method for detecting overcurrent in motor driving circuit |
| US20160043667A1 (en) * | 2013-04-26 | 2016-02-11 | Asahi Kasei Microdevices Corporation | Motor drive apparatus |
| US20150236592A1 (en) * | 2014-02-18 | 2015-08-20 | Seiko Epson Corporation | Circuit device and electronic apparatus |
| US20160344327A1 (en) * | 2015-05-21 | 2016-11-24 | Analog Devices Global | Feedback control system and method |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20240297585A1 (en) * | 2023-03-02 | 2024-09-05 | Texas Instruments Incorporated | Adaptive error amplifier clamp for a peak current mode converter |
Also Published As
| Publication number | Publication date |
|---|---|
| CN112398386A (en) | 2021-02-23 |
| US10931216B1 (en) | 2021-02-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5798723A (en) | Accurate and precise current matching for low voltage CMOS digital to analog converters | |
| US8830103B2 (en) | D/A converter | |
| US11742811B2 (en) | Operational amplifier offset trim | |
| WO1997043833A1 (en) | Improved switch architecture for r/2r digital to analog converters | |
| US9323273B2 (en) | Current steering mode digital-to-analog converter circuit configured to generate variable output current | |
| EP1465347B1 (en) | Monotonic precise current DAC | |
| US10511321B2 (en) | Digital-to-analog converter and method for digital-to-analog conversion | |
| US20040233089A1 (en) | High resolution and low consumption digital-analog converter | |
| US10931216B1 (en) | Motor stepper driver having a sine digital-to-analog converter | |
| JP2002204132A (en) | High precision differential switched current source | |
| US6724333B1 (en) | Digital-to-analog converter | |
| US6831498B2 (en) | High speed integrated circuit current switch | |
| US6278322B1 (en) | Transconductance amplifier and automatic gain control device using it | |
| US11811420B2 (en) | Digital-to-analog converter with cascaded least significant bit (LSB) interpolator circuit | |
| JP2002076895A (en) | Current cell type digital/analog converter system | |
| WO2020172173A1 (en) | Compensation for binary weighted divider | |
| JP7353512B2 (en) | digital analog converter | |
| CN116232140A (en) | Motor driving device, motor system and electric apparatus | |
| US11418137B1 (en) | Motor driver current sensing | |
| JP7448634B2 (en) | current drive circuit | |
| JP2025173675A (en) | Comparison circuit, semiconductor device | |
| CN120567191A (en) | Switching regulator | |
| JP2023147488A (en) | Semiconductor device | |
| CN120752855A (en) | Voltage regulator for switch control | |
| JPS6217416B2 (en) |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| AS | Assignment |
Owner name: TEXAS INSTRUMENTS INCORPORATED, TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SHANKAR, KRISHNAMURTHY;KOTIKELAPUDI, VENKATA NARESH;REEL/FRAME:051565/0347 Effective date: 20200120 |
|
| FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
| STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
| MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |