步进电机的电流控制方法和装置
技术领域
本发明涉及电气工程技术领域,尤其涉及一种步进电机的电流控制方法和装置。
背景技术
步进电机是一种作为控制用的特种电机,是将数字量转化为角位移的电气传动器件,它的运转与控制脉冲同步,步距误差不长期积累,可以组成结构较为简单而又具有一定精度的开环控制系统,也可在要求更高精度时组成闭环控制系统。步进电机的运行通常不能采用普通的交直流电源供电而需要专用的驱动设备,所以步进电机的性能很大程度上取决于其驱动系统性能的优劣。
步进电机在整步运行的时候,由于输入的驱动电流存在突变,力矩不平衡,电机会存在震动或抖动,尤其在低频阶段,震动更加明显。
为了让步进电机恒力矩运行,目前采用的有效的手段之一为使用微步细分方法,让步进电机相电流呈正弦波变化。
如图1所示,是现有技术采用高精度数模转换芯片输出的电机电流的正弦波模拟图。
在传统的方法中,通常采用高精度数模转换芯片生成用于控制步进电机运行的电机相电流曲线(时间-电流正弦曲线)。其主要的方法特点是:先计算出正弦曲线按等时间间距采样的幅值,即,图1中相邻两个采样点的横坐标间距(时间间距)均相同,再根据各个采样电流幅值在等时间间距控制数模转换芯片输出相应值来控制正弦波电流,以此控制电机的运行。这种先对电机相电流曲线进行采样获得时间间距相等正弦波,然后再用数模转换芯片输出控制电流的方法,其输出的电流曲线一般为阶梯状,如图1所示。
这种传统的步进电机电流细分方法主要存在以下缺陷:
由于其正弦波是等时间间距采样的,因此存在细分曲线电流幅值大小不均的现象,即部分区域的两个邻近点采样电流幅值相差较大,部分区域的两个邻近点采样幅值相差微弱。
如果相电流细分曲线幅值过大,由于数模转换芯片输出信号是阶梯性变化的,则在某些区域中具有明显的大落差的台阶状电流(如图1中的台阶1和台阶2所示)。由于电流的剧变,造成电机力矩的突变,电机力矩剧变时电机抖动将会加剧;且可能导致低速时电机过流,致使电机或者驱动芯片过热;
如果细分曲线幅值太小,可能会导致步进电机高速运行时转矩不足,从而导致抖动或失步,因而要求方案对数模转换电路的分辨率要求非常高,必须通过采用高分辨率的数模转换芯片识别出采样幅值相差微弱的台阶(如图1中的台阶3所示),因而提高步进电机的控制难度和增加成本。
因此,传统的步进电机的电流控制方法的存在多变不均的台阶而增加了电机抖动,系统控制有效性低,步进电机并非真正的恒力矩运行,严重地影响了步进电机使用寿命及系统稳定性。
发明内容
本发明所要解决的技术问题是,提供一种步进电机的电流控制技术方案,有效降低对数模转换电路的分辨率的依赖性,输出更加平滑的步进电机控制电流,实现步进电机的真正的恒力矩运行。
为解决以上技术问题,一方面,本发明实施例提供一种步进电机的电流控制方法,包括:
对用于控制步进电机运行的电机相电流曲线的电流幅值进行等电流间距细分,分别获得与各个细分电流值相对应的电流采样时间;
根据所述电流采样时间,控制数模转换电路输出与各个所述电流采样时间相对应的电流值,以控制步进电机实现等电流间距步进运行。
优选地,所述电机相电流曲线为以电流和采样时间为变量的正弦曲线;所述数模转换电路包括数模转换芯片。
进一步地,所述对用于控制步进电机运行的电机相电流曲线的电流幅值进行等电流间距细分,分别获得与各个细分电流值相对应的电流采样时间,包括:
根据数模转换电路的分辨率F,确定所述电机相电流曲线的等电流间距细分数N为:N=2F;其中,N≥1,F>0;
根据等电流间距细分数N和电机相电流曲线的峰值电流Imax,确定当前第n个细分数的电流值In,并在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn。
在一种可实现的方式中,所述根据等电流间距细分数N和电机相电流曲线的峰值电流Imax,确定当前第n个细分数的电流值In,并在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn,包括:
当电机相电流曲线的相位P在区间时,则在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn为:
当电机相电流曲线的相位P在区间时,则在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn为:
当电机相电流曲线的相位P在区间时,则在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn为:
当电机相电流曲线的相位P在区间时,则在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn为:
其中,参数λ为电机相电流正弦曲线的控制周期;参数N为电机相电流正弦曲线的等电流间距细分数;参数n为当前执行的第n个细分数;参数tn为当前的第n个细分数所对应的电流采样时间。
进一步地,根据所述电流采样时间,控制数模转换电路输出与各个所述电流采样时间相对应的电流值,以控制步进电机实现等电流间距步进运行,包括:
当电机相电流曲线的相位P在区间时,则控制数模转换电路输出与电流采样时间tn相对应的电流值In为:
当电机相电流曲线的相位P在区间时,则控制数模转换电路输出与电流采样时间tn相对应的电流值In为:
当电机相电流曲线的相位P在区间时,则控制数模转换电路输出与电流采样时间tn相对应的电流值In为:
当电机相电流曲线的相位P在区间时,则控制数模转换电路输出与电流采样时间tn相对应的电流值In为:
其中,参数Imax为电机相电流曲线的峰值电流;参数N为电机相电流正弦曲线的等电流间距细分数;参数n为当前的第n个细分数。
另一方面,本发明实施例还提供了一种步进电机的电流控制装置,包括:
电流控制器,用于对用于控制步进电机运行的电机相电流曲线的电流幅值进行等电流间距细分,分别获得与各个细分电流值相对应的电流采样时间;
数模转换电路,用于根据所述电流控制器所获得的电流采样时间,输出与各个所述电流采样时间相对应的电流值,以控制步进电机实现等电流间距步进运行。
进一步地,在所述的步进电机的电流控制装置中,所述电机相电流曲线为以电流和采样时间为变量的正弦曲线;所述数模转换电路包括数模转换芯片。
在一种可实现的方式中,所述电流控制器包括:
电流间距细分模块,用于根据数模转换电路的分辨率F,确定所述电机相电流曲线的等电流间距细分数N为:N=2F;其中,N≥1,F>0;
时间采样模块,用于根据等电流间距细分数N和电机相电流曲线的峰值电流Imax,确定当前第n个细分数的电流值In,并在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn。
进一步地,所述时间采样模块,具体用于:
当电机相电流曲线的相位P在区间时,则在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn为:
当电机相电流曲线的相位P在区间时,则在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn为:
当电机相电流曲线的相位P在区间时,则在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn为:
当电机相电流曲线的相位P在区间时,则在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn为:
其中,参数λ为电机相电流正弦曲线的控制周期;参数N为电机相电流正弦曲线的等电流间距细分数;参数n为当前执行的第n个细分数;参数tn为当前的第n个细分数所对应的电流采样时间。
再进一步地,所述数模转换电路,具体用于:
当电机相电流曲线的相位P在区间时,则输出与电流采样时间tn相对应的电流值In为:
当电机相电流曲线的相位P在区间时,则输出与电流采样时间tn相对应的电流值In为:
当电机相电流曲线的相位P在区间时,则输出与电流采样时间tn相对应的电流值In为:
当电机相电流曲线的相位P在区间时,则输出与电流采样时间tn相对应的电流值In为:
其中,参数Imax为电机相电流曲线的峰值电流;参数N为电机相电流正弦曲线的等电流间距细分数;参数n为当前的第n个细分数。
本发明实施例提供的步进电机的电流控制方法及系统,有别于传统的等时间间隔采样方式,采用全新的等电流间隔的电流采样方式,对用于控制步进电机运行的电机相电流曲线的电流幅值进行等电流间距细分,获得与各个细分电流值相对应的多个电流采样时间点,从而控制数模转换电路输出与各个所述电流采样时间相对应的电流值,以控制步进电机实现等电流间距步进运行。本发明实施例提供的技术方案可以利用数模转换电路或芯片进行等步距细分,降低步进电机控制对数模转换芯片分辨率的依赖,同时避免了传统技术中的电机相电流曲线电流幅值突变(部分区域电流幅值落差过大,而某些区域电流幅值落差不明显)的情况发生,由于本发明的输出电流的平滑性,因此步进电机在运行过程中不会发生力矩突变而造成的抖动,提高了步进电机使用寿命及系统稳定性。并且,本发明采用具有相同分辨率的数模转换电路可以获得比现有技术更高的细分数,各个采样电流落差相同而克服了电机抖动,因而采用与现有技术分辨率相同的数模转换电路时仍然可以获得比现有技术控制效果更佳的输出电流,用户可以通过选择适当的细分数和电流采样间隔,即可降低对数模转换芯片分辨率的依赖,从而控制电机运行更加平滑顺畅,达到真正的恒力矩运行。
附图说明
图1是现有技术采用高精度数模转换芯片输出的电机电流的正弦波模拟图。
图2是本发明提供的步进电机的电流控制方法的一个实施例的步骤流程图。
图3是本发明提供的电机相电流曲线的电流细分结果示意图。
图4是本发明提供的获取各个细分电流值相对应的电流采样时间的一种可实现方式的步骤流程图。
图5是本发明提供的步进电机的电流控制装置的一个实施例的结构示意图。
图6是本发明提供的电流控制器的一种可实现方式的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
参见图2,是本发明提供的步进电机的电流控制方法的一个实施例的步骤流程图。
具体地,本实施例提供的步进电机的电流控制方法,主要包括:
步骤S1:对用于控制步进电机运行的电机相电流曲线的电流幅值进行等电流间距细分,分别获得与各个细分电流值相对应的电流采样时间。
步骤S2:根据所述电流采样时间,控制数模转换电路输出与各个所述电流采样时间相对应的电流值,以控制步进电机实现等电流间距步进运行。
其中,所述电机相电流曲线优选为以电流和采样时间为变量的正弦曲线;所述数模转换电路包括数模转换芯片。
本实施例提供的步进电机的电流控制方法的主要特点是采用相等步距(电流间隔)来分割步进电机细分正弦曲线中的电流,通过相等间距电流对应的不同时间间距来实现对步进电机的驱动控制。由于驱动电流平滑变化,力矩更加恒定,增强了步进电机运行中的稳定性。
参见图3,是本发明提供的电机相电流曲线的电流细分结果部分区域示意图。
当步进电机细分正弦曲线的周期为λ时,对电机相电流曲线的峰值电流Imax进行N(N≥1)等分,每个电流细分点之间的电流间距均为ΔI,即步进电机的力矩恒定,根据当前执行的第n个细分数,可以通过查找或计算出当前的第n个细分数所对应的电流采样时间tn,从而进一步控制数模转换电路输出相应的采样电流值In来驱动步进电机的运行,因而通过该电流对步进电机进行驱动时不存在突变,避免了步进电机在运行过程中的抖动。
参见图4,是本发明提供的获取各个细分电流值相对应的电流采样时间的一种可实现方式的步骤流程图。
具体实施时,所述步骤S1包括:
步骤S11:根据数模转换电路的分辨率F(数模转换电路的分辨率F可以根据实际情况进行设定或选取),确定所述电机相电流曲线的等电流间距细分数N为:N=2F;其中,N≥1,F>0;
步骤S12:根据等电流间距细分数N和电机相电流曲线的峰值电流Imax,确定当前第n个细分数的电流值In,并在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn。
在对步进电机进行控制时,根据实际情况设定合适的电流采样时间和电流间隔即可。
在一种可实现的方式中,步骤S12包括:
当电机相电流曲线的相位P在区间时,则在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn为:
当电机相电流曲线的相位P在区间时,则在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn为:
当电机相电流曲线的相位P在区间时,则在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn为:
当电机相电流曲线的相位P在区间时,则在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn为:
其中,参数λ为电机相电流正弦曲线的控制周期;参数N为电机相电流正弦曲线的等电流间距细分数;参数n为当前执行的第n个细分数;参数tn为当前的第n个细分数所对应的电流采样时间。
而在所述步骤S2中,即根据电流采样时间,控制数模转换电路输出与各个所述电流采样时间相对应的电流值,以控制步进电机实现等电流间距步进运行,相应地,包括:
当电机相电流曲线的相位P在区间时,则控制数模转换电路输出与电流采样时间tn相对应的电流值In为:
当电机相电流曲线的相位P在区间时,则控制数模转换电路输出与电流采样时间tn相对应的电流值In为:
当电机相电流曲线的相位P在区间时,则控制数模转换电路输出与电流采样时间tn相对应的电流值In为:
当电机相电流曲线的相位P在区间时,则控制数模转换电路输出与电流采样时间tn相对应的电流值In为:
其中,参数Imax为电机相电流曲线的峰值电流;参数N为电机相电流正弦曲线的等电流间距细分数;参数n为当前的第n个细分数。
具体实施时,数模转换电路的步距与输出电流通常为线性关系。当等步距对数模转换芯片取值,输出的控制电流/驱动电流也会线性改变。在本实施例中可以按照数模转换芯片的分辨率等步距取值,输出的控制电流/驱动电流即呈现等电流步进状态,实现步进电机的恒力矩运行。
为了进一步具体说明本发明实施例与现有技术的效果差异,现举例说明如下:
假设对步进电机力矩正弦曲线进行16细分。为便于计算,电机相电流正弦曲线的周期取4ms(毫秒),电流取1A(安),假设数模转换芯片最大数值就为1A。在电机相电流正弦曲线的相位角在范围内时:
当采用如1所示的传统的等时间细分方法,则可以获得如下表1的效果:
表1相电流正弦曲线等时间细分数据表
n |
tn(ms) |
In(A) |
6位数模转换电路 |
7位数模转换电路 |
8位数模转换电路 |
1 |
0.0625 |
0.09801714 |
5 |
12 |
24 |
2 |
0.125 |
0.195090322 |
11 |
24 |
49 |
3 |
0.1875 |
0.290284677 |
18 |
36 |
73 |
4 |
0.25 |
0.382683432 |
23 |
48 |
97 |
5 |
0.3125 |
0.471396737 |
29 |
59 |
120 |
6 |
0.375 |
0.555570233 |
35 |
70 |
141 |
7 |
0.4375 |
0.634393284 |
40 |
80 |
161 |
8 |
0.5 |
0.707106781 |
44 |
90 |
180 |
9 |
0.5625 |
0.773010453 |
48 |
98 |
197 |
10 |
0.625 |
0.831469612 |
52 |
105 |
212 |
11 |
0.6875 |
0.881921264 |
55 |
112 |
225 |
12 |
0.75 |
0.923879533 |
58 |
117 |
236 |
13 |
0.8125 |
0.956940336 |
60 |
121 |
244 |
14 |
0.875 |
0.98078528 |
62 |
125 |
250 |
15 |
0.9375 |
0.995184727 |
63 |
126 |
254 |
16 |
1 |
1 |
63 |
127 |
255 |
从表1所示的最后两列的数模转换电路的分辨率位数可以看出,在传统的步进电机控制电流细分方法中,6位分辨率的数模转换芯片根本无法分辨第15细分点和第16细分点,因而需要采用更高分辨率的数模转换芯片。而从使用7位和8位数模转换芯片的数据对比发现,分辨率精度为7位的数模转换电路虽能识别从第14细分点至第16细分点的电流变化,但精度较差。因此采用传统的等时间间隔对电机相电流正弦曲线进行16细分时,需采用8位或分辨率更高的数模转换芯片才能保证电机相电流正弦曲线细分的基本精度。并且,从第1细分点到第2细分点的电流值变化为0.1A左右,该变化相对于其他细分间隔非常陡峭,从而导致步进电机产生抖动。
而当采用本发明实施例提供的等电流间距的细分方案,则只需要4位的数模转换(24=16)就可以实现该细分,并且避免步进电机在运行过程中产生抖动。在相电流正弦曲线的相位角在范围时,可以通过本发明实施例提供的方法计算获得电流采样时间和相应的电流值如下表2所示:
表2相电流正弦曲线等电流间距细分数据表
n |
tn(ms) |
In(A) |
1 |
0.039814686 |
0.0625 |
2 |
0.079786175 |
0.125 |
3 |
0.120076921 |
0.1875 |
4 |
0.160861247 |
0.25 |
5 |
0.202332854 |
0.3125 |
6 |
0.244714587 |
0.375 |
7 |
0.288271997 |
0.4375 |
8 |
0.333333333 |
0.5 |
9 |
0.380320737 |
0.5625 |
10 |
0.429802083 |
0.625 |
11 |
0.48258374 |
0.6875 |
12 |
0.539893088 |
0.75 |
13 |
0.603787914 |
0.8125 |
14 |
0.678277507 |
0.875 |
15 |
0.773731835 |
0.9375 |
16 |
1 |
1 |
从本方法可看出,只要保证微秒级的时间控制精度,仅4位数模转换芯片就可以实现相电流正弦曲线的16细分,采用通用的微处理器即可保证微秒级精度。
并且按本方法进行细分,电流变化为平滑变化,每次均只改变0.0625A(电流间隔),因而通过该电流驱动步进电机运行时没有突然的抖动,由于电机力矩变化为一个恒定量,不会引起电机剧烈振动,从而减少电机运行噪音。
由此可见,本发明实施例可以高效利用数模转换芯片的分辨率,降低传统步进电机控制中对数模转换芯片分辨率的依赖,节省大量成本;另外因采用数模转换芯片等歩距细分,电流平滑变化,力矩更加恒定,增强了步进电机运行中的稳定性。
与上述的步进电机的电流控制方法相对应,本发明实施例还提供了一种步进电机的电流控制装置。
参见图5,是本发明提供的步进电机的电流控制装置的一个实施例的结构示意图。
具体地,本实施例提供的步进电机的电流控制装置包括:
电流控制器100,用于对用于控制步进电机运行的电机相电流曲线的电流幅值进行等电流间距细分,分别获得与各个细分电流值相对应的电流采样时间;
数模转换电路200,用于根据所述电流控制器所获得的电流采样时间,输出与各个所述电流采样时间相对应的电流值,以控制步进电机实现等电流间距步进运行。
优选地,所述电机相电流曲线为以电流和采样时间为变量的正弦曲线;所述数模转换电路200包括数模转换芯片。
参见图6,是本发明提供的电流控制器的一种可实现方式的结构示意图。
进一步地,所述电流控制器100包括:
电流间距细分模块101,用于根据数模转换电路的分辨率F,确定所述电机相电流曲线的等电流间距细分数N为:N=2F;其中,N≥1,F>0;
时间采样模块102,用于根据等电流间距细分数N和电机相电流曲线的峰值电流Imax,确定当前第n个细分数的电流值In,并在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn。
在本实施例中,所述时间采样模块102,具体用于:
当电机相电流曲线的相位P在区间时,则在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn为上述方程(1)计算得出;
当电机相电流曲线的相位P在区间时,则在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn为上述方程(2)计算得出;
当电机相电流曲线的相位P在区间时,则在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn为上述方程(3)计算得出;
当电机相电流曲线的相位P在区间时,则在所述电机相电流曲线上确定与当前第n个细分数的电流值In对应的电流采样时间tn为上述方程(4)计算得出;
其中,参数λ为电机相电流正弦曲线的控制周期;参数N为电机相电流正弦曲线的等电流间距细分数;参数n为当前执行的第n个细分数;参数tn为当前的第n个细分数所对应的电流采样时间。
进一步地,所述数模转换电路200,具体用于:
当电机相电流曲线的相位P在区间时,则输出与电流采样时间tn相对应的电流值In为上述方程(5)计算得出;
当电机相电流曲线的相位P在区间时,则输出与电流采样时间tn相对应的电流值In为上述方程(6)计算得出;
当电机相电流曲线的相位P在区间时,则输出与电流采样时间tn相对应的电流值In为上述方程(7)计算得出;
当电机相电流曲线的相位P在区间时,则输出与电流采样时间tn相对应的电流值In为上述方程(8)计算得出;
其中,参数Imax为电机相电流曲线的峰值电流;参数N为电机相电流正弦曲线的等电流间距细分数;参数n为当前的第n个细分数。
具体地,本实施例提供的步进电机的电流控制装置与上述实施例提供的步进电机的电流控制方法的基本工作原理相同,在此不再赘述。
本发明实施例提供的步进电机的电流控制方法及系统,有别于传统的等时间间隔采样方式,采用全新的等电流间隔的电流采样方式,对用于控制步进电机运行的电机相电流曲线的电流幅值进行等电流间距细分,获得与各个细分电流值相对应的多个电流采样时间点,从而控制数模转换电路输出与各个所述电流采样时间相对应的电流值,以控制步进电机实现等电流间距步进运行。
本发明实施例提供的技术方案可以利用数模转换电路或芯片进行等步距细分,降低步进电机控制对数模转换芯片分辨率的依赖,同时避免了传统技术中的电机相电流曲线电流幅值突变的情况发生,由于本发明的输出电流的平滑性,因此步进电机在运行过程中不会发生力矩突变而造成的抖动,提高了步进电机使用寿命及系统稳定性。
并且,本发明采用具有相同分辨率的数模转换电路可以获得比现有技术更高的细分数,各个采样电流落差相同而克服了电机抖动,因而采用与现有技术分辨率相同的数模转换电路时仍然可以获得比现有技术控制效果更佳的输出电流,用户可以通过选择适当的细分数和电流采样间隔,即可降低对数模转换芯片分辨率的依赖,从而控制电机运行更加平滑顺畅,达到真正的恒力矩运行。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。