具有正弦数模转换器的马达步进驱动器的制作方法

文档序号:24049959发布日期:2021-02-23 21:15阅读:155来源:国知局
具有正弦数模转换器的马达步进驱动器的制作方法
具有正弦数模转换器的马达步进驱动器
[0001]
相关申请的交叉引用
[0002]
本申请要求2019年8月15日提交的美国临时申请no.62/886,981和2019年12月27日提交的美国临时申请no.62/954,332的优先权,这些申请通过引用并入本文。


背景技术:

[0003]
至少一种类型的步进马达包括从步进驱动器接收电流的两个线圈。到每个线圈的电流应为正弦的,其中到一个线圈的电流相对于到另一线圈的电流异相90度。步进马达的角位置是通过线圈的电流的大小之比的函数(例如,大小之比的反正切)。线圈电流大小的不准确可能导致马达旋转位置的不准确。


技术实现要素:

[0004]
在至少一个示例中,一种用于马达的步进驱动器包括:h桥;感测晶体管,其耦合到h桥;电压-电流(vtoi)转换器;以及正弦数模转换器(dac)。vtoi转换器具有vtoi转换器输入和vtoi转换器输出。vtoi转换器输出耦合到感测晶体管。正弦dac具有正弦dac数字输入、参考输入和正弦dac输出。正弦dac输出耦合到vtoi转换器输入。正弦dac包括:r-2r网络;偏移控制电路,其耦合到r-2r网络;以及增益控制电路,其也耦合到r-2r网络。
附图说明
[0005]
对于各种示例的详细描述,现在将参考附图,其中:
[0006]
图1示出了步进马达系统的示例。
[0007]
图2示出了包括正弦数模转换器(dac)的步进驱动器的示例。
[0008]
图3示出了包括r-2r网络、增益控制电路和偏移控制电路的正弦dac的示例。
[0009]
图4示出了r-2r网络的dac输出与数字代码输入的线性关系以及为正弦dac实现的期望的正弦关系。
[0010]
图5示出了使用增益控制电路和偏移控制电路实现的分段线性关系。
[0011]
图6进一步示出了使用增益控制电路和偏移控制电路实现的分段线性关系。
[0012]
图7示出了可在图2的示例步进驱动器中使用的电压-电流转换器的示例。
[0013]
图8示出了正弦dac的另一示例实施方式。
[0014]
图9示出了正弦dac的又一示例实施方式。
[0015]
图10示出了包括多个正弦dac的步进驱动器集成电路(ic)的示例实施方式。
具体实施方式
[0016]
一种类型的步进驱动器包括多个电流源设备(例如,晶体管),其可以可操作地切入和切出电路以提供可变的跳闸(trip)电流,从而控制流向线圈的电流。每个电流源可以被配置为具有相同的电流(例如,1微安)。通过接通并联的两个电流源,生成两微安的跳闸电流。并联的三个电流源生成三微安的跳闸电流,依此类推。这种类型的步进驱动器可用于
1/4微步进,其中针对正弦电流的每个四分之一周期可以有四个电流电平,从而有四个马达位置。
[0017]
为了增加对步进马达的位置控制的分辨率,应当实现更高级别的微步进,诸如1/256、1/1024、1/4096等。在各种应用(例如相机变焦)中,更高分辨率步进马达很有用。增加步进马达的微步进级别的一种方法是增加电流源的数量,其中每个电流源提供的电流少于1/4微步进情况下的电流。然而,在电流电平越来越小时,电流源设备之间的电流失配成为一个更大的问题。较大面积的晶体管可以用于电流源,从而解决失配问题,但是较大的晶体管在管芯上占据更多的面积,并且具有较大的寄生电容,其进而在从一种电流电平变为另一种电流电平时增加稳定时间。此外,用于步进马达的基于电流源的电流控制的静态电流可能不期望地大。特别是当期望较低的电源电压时,电源裕量(headroom)也可能成问题。
[0018]
本文公开的示例涉及包括正弦数模转换器(dac)的步进驱动器。正弦dac接收数字代码输入,并且产生与数字代码输入具有近似正弦关系的模拟输出电压。然后,电压-电流(vtoi)转换器将正弦dac输出电压转换为跳闸电流,以控制流经步进马达的线圈的电流。正弦dac包括r-2r网络、偏移控制电路和增益控制电路。没有增益控制电路和偏移控制电路,r-2r网络的输出电压与其数字代码输入之间的关系通常是线性的。增益控制电路和偏移控制电路操作以将r-2r网络的线性传递函数修改为近似正弦的函数。
[0019]
图1示出了步进马达系统100的示例。示例步进马达系统100包括耦合到步进马达驱动器120的控制器102,步进马达驱动器120进而耦合到步进马达m。步进马达m包括线圈1和线圈2,并且步进驱动器120控制流经线圈的电流。流经线圈的电流近似为正弦的,并且流经线圈2的电流相对于线圈1异相90度。
[0020]
在一个示例中,控制器102包括处理器或其他类型的数字控制电路。控制器102通过step信号、方向(dir)信号和编程接口耦合到步进驱动器120。编程接口可以包括任何合适的接口,诸如串行外围互连(spi)。step信号的每个上升沿使步进驱动器120将马达的位置前进一步,并且dir信号指定马达变化的方向(正向或反向)。步进驱动器120包括正弦dac 121(如下所述)。
[0021]
图2示出步进驱动器120的至少一部分的示例。在该示意图中示出了线圈1,但是线圈本身通常不是半导体管芯的组件,该半导体管芯包含用于步进驱动器120的示出的其他组件。在该示例中,步进驱动器120包括高侧晶体管hs1和hs2、低侧晶体管ls1和ls2、比较器210、数字逻辑和驱动器211、电压-电流(vtoi)转换器214和正弦dac 121。晶体管hs1、hs2、ls1和ls2中的每个可以包括金属氧化物半导体场效应晶体管(fet)。在该示例中,晶体管hs1、hs2、ls1和ls2包括n型fet(nmos),但是可以根据需要实现为其他类型的晶体管。步进驱动器120还包括感测晶体管(sns fet)。晶体管hs1、hs2、ls1和ls2耦合在一起以形成h桥。如在图2的示例中所示,hs1和hs2的漏极在正电源电压节点(vdd)处耦合在一起,并且ls1和ls2的源极在接地节点处耦合在一起。hs1的源极在节点a处连接到ls1的漏极。类似地,hs2的源极在节点b处连接到ls2的漏极。马达的一个线圈(例如,线圈1)耦合在节点a和b之间。为另一个线圈(线圈2)提供单独的h桥和感测fet。图9示出了既包括h桥又包括感测fet的步进驱动器的示例。
[0022]
数字逻辑和驱动器211包括耦合到栅极驱动器213的逻辑212。栅极驱动器213分别断言(assert)晶体管hs1、hs2、ls1和ls2的栅极的栅极信号hson1、hson2、lson1和lson2。比
较器210包括正(+)输入、负(-)输入和输出。比较器的输出耦合到数字逻辑和驱动器211。比较器的正输入耦合到节点b,该节点b也代表晶体管ls2的漏-源电压。晶体管ls2的栅极连接到sns fet的栅极,并且sns fet的漏极耦合到比较器的负输入。sns fet的源极连接到接地。
[0023]
正弦dac 121包括接收微步进索引器位(s[n:0])的一个输入和接收参考电压vref的另一个输入。微步进索引器位代表用于正弦dac 121内部的开关的控制信号,如将在下面讨论的。微步进索引器位是基于dac代码生成的,并且图9示出了将dac代码转换成微步进索引器位的数字核的示例。在一个示例中,dac代码是3位二进制值,并且对应的索引器位包括8位。正弦dac121的输出标记为vsine,并且耦合到vtoi转换器214的输入。vtoi转换器214的输出耦合到sns fet的漏极和比较器210的负输入。
[0024]
图3示出了正弦dac 121的示例实施方式。该示例包括r-2r网络310、增益控制电路320和偏移控制电路330。增益控制电路320和偏移控制电路330耦合到r-2r网络。r-2r网络310包括耦合到2r电阻器的单位电阻器r的重复实例。单位电阻器r可以包括具有r的电阻的单个电阻器或具有r的有效电阻的串联或并联的多个电阻器。如图所示,单位电阻器串联耦合在节点nout和接地之间,并且2r电阻器耦合到相邻单位电阻器r之间的每个节点。每个2r电阻器耦合到开关,该开关可操作以将相应的2r电阻器电耦合到参考电压vref或接地。微步进索引器位控制开关。图3的示例包括八个开关和八个微步进索引器位[7:0]。节点nout上的电压代表正弦dac的vsine输出。
[0025]
没有增益控制电路320和偏移控制电路330,数字代码和vsine之间的关系是线性的,如图4中的410所示。然而,对于步进马达的正确操作,期望的是使dac代码和vsine之间的关系是正弦的,如正弦曲线420所示。增益控制电路320操作以修改vsine-dac代码关系的斜率,并且偏移控制电路330操作以在需要的地方引入偏移,以便在vsine和dac之间建立分段线性的近似正弦关系,如图5所示。
[0026]
参照图5,从图4重复线性关系410和期望的正弦关系。图5还示出了由增益控制电路320的操作产生的分段线性段509、510、511、512、513和514。如图所示,vsine-dac代码关系的增益(斜率)可以通过使用增益控制电路320在dac代码之间改变。最初(即,在dac代码为0时),vsine-dac代码关系的斜率(509)大于线性r-2r网络固有的斜率。当dac代码增加到下一个代码(例如,1)时,产生偏移,并且偏移控制电路330抵消该偏移以向上“推”分段线性段510以跟踪期望正弦曲线420的总体轮廓。在每个dac代码处,增益控制电路320将r-2r网络固有的斜率修改期望量,并且偏移控制电路330引入适当的偏移量,以使所得的分段线性段近似正弦曲线420。图6示出了vsine与dac代码之间的包括分段线性601、602、603、604、605和606的关系600的示例。关系600近似正弦形。除其他因素外,每个分段线性段的增益修改和偏移的量取决于步进驱动器120实施的步数和期望的精度。因此,增益和偏移控制的量是特定于应用的。
[0027]
图7示出了vtoi转换器214的示例。在该示例中,vtoi转换器214包括放大器705、电流镜707、晶体管m1和可修整电阻器r1。放大器705的正输入耦合到正弦dac 121的输出。放大器705的输出耦合到m1(在该示例中是nmos设备)的栅极。电流镜707包括一对pmos设备,它们对流经sns fet的电流进行镜像。r1(以及因此r1两端的电压)耦合到放大器705的负输入。vtoi转换器214生成i1,使用电流镜707将其镜像到snsfet。
[0028]
图8示出了正弦dac 121的另一示例,其中示出了针对增益控制电路320和偏移控制电路330的附加细节。增益控制电路320包括多个电阻器。每个电阻器耦合到单位电阻r的串行链内的不同节点。该示例用于两位dac代码,并且因此,在该示例中,r-2r网络310a包括耦合到2r电阻的四个开关。这样,r-2r网络310a包括三个电阻r间节点n1、n2和n3。然而,如图所示,在三个节点n1-n3中,仅节点n1和n2耦合到相应的电阻器720和725。电阻720和725耦合在vsine和r-2r网络310a之间。在该示例中,节点n3未连接到增益控制电路320。电阻器720示出为“x*r”,这意味着电阻720是单位电阻的函数x。“x”是dac代码的函数。这样,电阻器720的电阻可能因dac代码而变化,并且对于某些dac代码甚至可能被“关闭”(例如,从节点n1解耦)。类似地,电阻器725是y*r,其中y是与x不同的dac代码的函数。偏移控制电路320还包括可配置电阻器730,并且其电阻是f1*r,其中f1是与x和y不同的dac代码的函数。如图所示,电阻器730连接在vref和vsine之间。
[0029]
图9示出了正弦dac 821的示例。在该示例中,正弦dac 821包括r-2r网络810、增益控制电路820和偏移控制电路830。如图所示并且如上所述,开关sw将每个2r电阻器选择性地连接到vref或接地,从而实现线性r-2r dac。电阻器r(连同一个2r电阻器)串联连接在vsine和接地之间。如图所示,电阻器r之间的节点标记为节点21-节点26。在该示例中,dac是3位二进制值,并且因此有八个2r电阻和八个对应的开关sw。3位dac代码被解码为八个位,其中每个位控制开关sw的相应开关。
[0030]
增益控制电路820包括电阻器r20-r29和开关sw1-sw8。电阻器r20、r21、r22、r23和r24串联连接在节点25和sw1之间。电阻器r25和r26并联连接。电阻器r20、r21、r22、r23、r24以及r25和r26的并联组合串联连接在节点25和sw2之间。电阻器r21和r22之间的节点连接到开关sw3,并且因此电阻器r20和r21串联连接在节点25和开关sw3之间。电阻器r20、r21、r22、r23和r24串联连接在节点25和sw4之间。电阻器r27、r28和r29串联连接在节点24和sw5之间,并且也串联连接在节点24和开关sw6之间。电阻器r27和r28之间的节点连接到开关sw7,并且因此电阻器r27连接在节点24和开关sw7之间。电阻器r20和r21之间的节点连接到开关sw8,并且因此电阻器r20连接在节点25和开关sw8之间。在一个示例中,单位电阻(r)等于100千欧姆,并且2r电阻等于200千欧姆。可以使用串联和并联组合的单位电阻器(例如100千欧姆)以形成不同电阻来实现包括r20-r29的电阻。即,r20-r29可以是相同或不同的电阻,并且是特定于应用的。在一个示例中,sw1至sw8具有耦合在开关和对应的节点之间的不同的电阻。为了节省面积,一个或多个电阻器重用于多个开关。例如,如果sw3在sw3和节点25之间需要2r,则不是将2r从sw8连接到节点25,而是将用于sw1的2r重用,因为当sw3导通时sw1断开。重用电阻器以节省面积也被实现为用于偏移控制电路830。
[0031]
基于dac代码的至少一些位的状态,生成用于sw1-sw16的控制信号,从而在vsine与r-2r网络810的各个内部节点之间耦合特定的电阻值,从而提供如上所述的预定增益量。
[0032]
示例图9中的偏移控制电路830包括电阻器r30-r42和开关sw11-sw16。电阻器r30、r31、r32、r33、r34、r35、r36、r37和r38串联连接在vref和开关sw11之间。电阻器r30、r31、r32、r33、r34、r35、r36和r37串联连接在vref和开关sw12之间。电阻器r30-r35串联连接在vref和开关sw13之间。电阻器r39和r40串联连接并与电阻器r31并联连接。类似地,电阻器r41和r42串联连接并与电阻器r33并联连接。电阻器r30-r33(以及电阻器r41和r42,电阻器r41和r42串联连接并与电阻器r33并联连接)串联连接在vref和开关sw14之间。电阻器r30
和r31(以及r39和r40,r39和r40串联连接并与r31并联连接)串联连接在vref和开关sw15之间。电阻器r30连接在vreef和开关sw16之间。在一个示例中,r30-r42中的每一个包括25千欧姆的电阻。控制开关sw11-sw16的控制信号分别与控制开关sw3-sw8的信号相同。由于在任何给定时间sw3-sw8中的仅一个导通,因此在sw3断开时重用用于sw3的电阻器,以与不将相同电阻器用于不同开关的情况相比,节省了大量面积。
[0033]
图10示出了用于控制步进马达980的步进驱动器集成电路(ic)900的另一示例。步进马达980的线圈1由一个h桥、感测925和926、正弦dac 915、vtoi转换器916和比较器927控制。线圈1的h桥包括fet 921、922、923和924,其中fet 921和923代表高侧fet,并且fet 922和924代表低侧fet。数字核910生成和/或以其他方式接收用于步进马达980的dac代码,并且解码该dac代码以生成微步进索引器位。正弦dac 915通过(一条或多条)信号线911耦合到数字核910,信号线911将微步进索引器位提供给正弦dac。
[0034]
步进驱动器ic 900包括一组大致相同的组件,以驱动线圈2。步进马达980的线圈2由另一个h桥、感测935和936、正弦dac 945、vtoi转换器946和比较器937控制。线圈2的h桥包括fet 931、932、933和934,其中fet 931和933代表高侧fet,并且fet 932和934代表低侧fet。正弦dac945通过(一条或多条)信号线941耦合到数字核910,信号线941将微步进索引器位提供给正弦dac 945。
[0035]
在整个说明书中使用术语“耦合”。该术语可以涵盖实现与本公开的描述一致的功能关系的连接、通信或信号路径。例如,如果设备a生成信号来控制设备b以执行动作,则在第一示例中,设备a耦合到设备b,或者在第二示例中,如果中间组件c基本上不改变设备a和设备b之间的功能关系使得设备b由设备a经由设备a生成的控制信号来控制,则设备a通过中间组件c耦合到设备b。
[0036]
在权利要求的范围内,所描述的实施例中的修改是可能的,并且其他实施例也是可能的。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1