速度控制的方法和装置转让专利

申请号 : CN202010270496.X

文献号 : CN111371378B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 谢归丁伟

申请人 : 迈克医疗电子有限公司

摘要 :

本申请公开了一种速度控制的方法和装置,属于电机控制技术领域,该方法包括,获取电机驱动系统当前时刻的运行时间和运行速度;根据运行时间,以及存储的第一预设速度模型,获得下一时刻的第一速度;以及根据运行时间,以及存储的第二预设速度模型,获得下一时刻的第二速度,第二预设速度模型是第一预设速度模型根据预设滞后时间变换获得的;根据下一时刻的第一速度、下一时刻的第二速度、预设滞后时间以及当前时刻的运行速度,确定下一时刻的运行速度;按照下一时刻的运行速度,控制电机驱动系统执行相应的速度调整操作。这样,降低了对速度进行平滑控制时耗费的系统资源。

权利要求 :

1.一种速度控制的方法,其特征在于,包括:获取电机驱动系统当前时刻的运行时间和运行速度,所述运行时间为电机驱动系统启动后运行的时长;

根据所述运行时间,以及存储的第一预设速度模型,获得下一时刻的第一速度,其中,所述第一预设速度模型用于确定随运行时间以及加速度变化的第一速度;以及根据所述运行时间,以及存储的第二预设速度模型,获得下一时刻的第二速度,所述第二预设速度模型是所述第一预设速度模型根据预设滞后时间变换获得的;

根据所述第一速度、所述第二速度、所述预设滞后时间以及所述运行速度,确定下一时刻的运行速度;其中,

根据所述第一速度和所述第二速度,确定速度差值;

根据所述速度差值与所述预设滞后时间之间的比值,获得速度变化量;

根据所述速度变化量和所述运行速度,确定下一时刻的运行速度;

按照所述下一时刻的运行速度,控制所述电机驱动系统执行相应的速度调整操作。

2.如权利要求1所述的方法,其特征在于,获取电机驱动系统当前时刻的运行时间和运行速度,包括:

按照预设周期,获取电机驱动系统当前时刻的运行时间和运行速度。

3.如权利要求1所述的方法,其特征在于,所述第一速度连接形成第一速度曲线,所述第一速度曲线为梯形曲线、三角形曲线或S形曲线。

4.如权利要求1‑3任一项所述的方法,其特征在于,按照所述下一时刻的运行速度,控制所述电机驱动系统执行相应的速度调整操作,包括:根据所述下一时刻的运行速度,向电机驱动系统发送脉冲,使得所述电机驱动系统根据接收的脉冲,调整运行速度。

5.一种速度控制的装置,其特征在于,包括:获取单元,用于获取电机驱动系统当前时刻的运行时间和运行速度,所述运行时间为电机驱动系统启动后运行的时长;

获得单元,用于根据所述运行时间,以及存储的第一预设速度模型,获得下一时刻的第一速度,其中,所述第一预设速度模型用于确定随运行时间以及加速度变化的第一速度;以及根据所述运行时间,以及存储的第二预设速度模型,获得下一时刻的第二速度,所述第二预设速度模型是所述第一预设速度模型根据预设滞后时间变换获得的;

确定单元,用于根据所述第一速度、所述第二速度、所述预设滞后时间以及所述运行速度,确定下一时刻的运行速度;其中,根据所述第一速度和所述第二速度,确定速度差值;

根据所述速度差值与所述预设滞后时间之间的比值,获得速度变化量;

根据所述速度变化量和所述运行速度,确定下一时刻的运行速度;调整单元,用于按照所述下一时刻的运行速度,控制所述电机驱动系统执行相应的速度调整操作。

6.如权利要求5所述的装置,其特征在于,所述获取单元用于:按照预设周期,获取电机驱动系统当前时刻的运行时间和运行速度。

7.如权利要求5所述的装置,其特征在于,所述第一速度连接形成第一速度曲线,所述第一速度曲线为梯形曲线、三角形曲线或S形曲线。

8.如权利要求5‑7任一项所述的装置,其特征在于,所述调整单元用于:根据所述下一时刻的运行速度,向电机驱动系统发送脉冲,使得所述电机驱动系统根据接收的脉冲,调整运行速度。

说明书 :

速度控制的方法和装置

技术领域

[0001] 本申请涉及控制技术领域,尤其涉及一种速度控制的方法和装置。

背景技术

[0002] 电机驱动系统包括电机驱动器和电机。电机驱动器根据控制设备发送的脉冲信号,控制电机转动的运行速度。控制设备通常按照梯形曲线速度模型,通过电机驱动器控制
电机的运行速度,即先控制电机加速运行,当电机的速度达到指定的最大速度后,匀速运行
一段时间,然后减速运行直至速度为零。
[0003] 由于加减速阶段,加速度是恒定的,因此,在加速和匀速过渡期间,以及匀速与减速过渡期间时,电机的运行速度的平滑度不高,负载抖动较大,若是盛装液体的负载则有可
能会有溅液现象出现。
[0004] 现有技术中,为提高电机的运行速度的平滑度,通常使用复杂的速度曲线模型调整运行速度,或者,通过包含各采样速度的数组调整运行速度。
[0005] 但是,速度曲线模型的复杂运算和数组均会占用大量的系统资源。
[0006] 由此,在对电机的运行速度进行平滑控制时,亟待需要一种可以降低耗费的系统资源的技术方案。

发明内容

[0007] 本申请实施例提供一种速度控制的方法和装置,用以在对电机的运行速度进行平滑控制时,降低耗费的系统资源。
[0008] 一方面,提供一种速度控制的方法,包括:
[0009] 获取电机驱动系统当前时刻的运行时间和运行速度,运行时间为电机驱动系统启动后运行的时长;
[0010] 根据运行时间,以及存储的第一预设速度模型,获得下一时刻的第一速度,其中,第一预设速度模型用于确定随运行时间以及加速度变化的第一速度;以及
[0011] 根据运行时间,以及存储的第二预设速度模型,获得下一时刻的第二速度,第二预设速度模型是第一预设速度模型根据预设滞后时间变换获得的;
[0012] 根据第一速度、第二速度、预设滞后时间以及运行速度,确定下一时刻的运行速度;
[0013] 按照下一时刻的运行速度,控制电机驱动系统执行相应的速度调整操作。
[0014] 在其中一个实施例中,获取电机驱动系统当前时刻的运行时间和运行速度,包括:
[0015] 按照预设周期,获取电机驱动系统当前时刻的运行时间和运行速度。
[0016] 在其中一个实施例中,第一速度连接形成第一速度曲线,第一速度曲线为梯形曲线、三角形曲线或S形曲线。
[0017] 在其中一个实施例中,根据第一速度、第二速度、预设滞后时间以及运行速度,确定下一时刻的运行速度,包括:
[0018] 根据第一速度和第二速度,确定速度差值;
[0019] 根据速度差值与预设滞后时间之间的比值,获得速度变化量;
[0020] 根据速度变化量和运行速度,确定下一时刻的运行速度。
[0021] 在其中一个实施例中,按照下一时刻的运行速度,控制电机驱动系统执行相应的速度调整操作,包括:
[0022] 根据下一时刻的运行速度,向电机驱动系统发送脉冲,使得电机驱动系统根据接收的脉冲,调整运行速度。
[0023] 一方面,提供一种速度控制的装置,包括:
[0024] 获取单元,用于获取电机驱动系统当前时刻的运行时间和运行速度,运行时间为电机驱动系统启动后运行的时长;
[0025] 获得单元,用于根据运行时间,以及存储的第一预设速度模型,获得下一时刻的第一速度,其中,第一预设速度模型用于确定随运行时间以及加速度变化的第一速度;以及根
据运行时间,以及存储的第二预设速度模型,获得下一时刻的第二速度,第二预设速度模型
是第一预设速度模型根据预设滞后时间变换获得的;
[0026] 确定单元,用于根据第一速度、第二速度、预设滞后时间以及运行速度,确定下一时刻的运行速度;
[0027] 调整单元,用于按照下一时刻的运行速度,控制电机驱动系统执行相应的速度调整操作。
[0028] 在其中一个实施例中,获取单元用于:
[0029] 按照预设周期,获取电机驱动系统当前时刻的运行时间和运行速度。
[0030] 在其中一个实施例中,第一速度连接形成第一速度曲线,第一速度曲线为梯形曲线、三角形曲线或S形曲线。
[0031] 在其中一个实施例中,确定单元用于:
[0032] 根据第一速度和第二速度,确定速度差值;
[0033] 根据速度差值与预设滞后时间之间的比值,获得速度变化量;
[0034] 根据速度变化量和运行速度,确定下一时刻的运行速度。
[0035] 在其中一个实施例中,调整单元用于:
[0036] 根据下一时刻的运行速度,向电机驱动系统发送脉冲,使得电机驱动系统根据接收的脉冲,调整运行速度。
[0037] 一方面,提供一种控制设备,包括:
[0038] 至少一个存储器,用于存储程序指令;
[0039] 至少一个处理器,用于调用存储器中存储的程序指令,按照获得的程序指令执行上述任一种速度控制的方法的步骤。
[0040] 一方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一种速度控制的方法的步骤。
[0041] 本申请实施例提供的一种速度控制的方法和装置中,获取电机驱动系统当前时刻的运行时间和运行速度,运行时间为电机驱动系统启动后运行的时长;根据运行时间,以及
存储的第一预设速度模型,获得下一时刻的第一速度,其中,第一预设速度模型用于确定随
运行时间以及加速度变化的第一速度;以及根据运行时间,以及存储的第二预设速度模型,
获得下一时刻的第二速度,第二预设速度模型是第一预设速度模型根据预设滞后时间变换
获得的;根据下一时刻的第一速度、下一时刻的第二速度、预设滞后时间以及当前时刻的运
行速度,控制电机驱动系统执行相应的速度调整操作。这样,通过存储的第一预设速度模
型,以及第二预设速度模型(即时间滞后的第一预设速度模型),确定以及调整运行速度,不
需要复杂的速度曲线公式,也不需要耗费大量的运算资源和存储资源,就可以获得平滑的
运行速度曲线,降低了对电机的运行速度进行平滑控制时耗费的系统资源。
[0042] 本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明
书、权利要求书、以及附图中所特别指出的结构来实现和获得。

附图说明

[0043] 此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0044] 图1为本申请实施例方式中一种速度控制的方法的实施流程图;
[0045] 图2a为本申请实施例方式中一种速度曲线示例图一;
[0046] 图2b为本申请实施例方式中一种运行速度曲线的加速度变化示例图一;
[0047] 图3为本申请实施例方式中一种速度曲线示例图二;
[0048] 图4为本申请实施例方式中一种速度曲线示例图三;
[0049] 图5a为本申请实施例方式中一种速度曲线示例图四;
[0050] 图5b为本申请实施例方式中一种运行速度曲线的加速度变化示例图二;
[0051] 图6为本申请实施例方式中一种速度控制的详细流程示例图;
[0052] 图7为本申请实施例方式中一种速度控制的装置的结构示意图;
[0053] 图8为本申请实施例方式中一种控制设备的结构示意图。

具体实施方式

[0054] 为了使本申请的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申
请,并不用于限定本申请。
[0055] 为了在对电机的运行速度进行平滑控制时,降低耗费的系统资源,本申请实施例提供了一种速度控制的方法和装置。
[0056] 参阅图1所示,为本申请提供的一种速度控制的方法的实施流程图。该方法的具体实施流程如下:
[0057] 步骤100:控制设备获取电机驱动系统当前时刻的运行时间和运行速度。
[0058] 具体的,控制设备按照预设周期,获取电机驱动系统当前的运行时间以及运行速度。
[0059] 实际应用中,预设周期可以根据实际应用场景进行设置,例如,预设周期可以为1ms。
[0060] 本申请实施例中,以一个预设周期为一个时间单位为例进行说明,这样,运行时间则可以表示为离散时刻1、2、3……。
[0061] 其中,运行时间为电机启动后运行的时长。电机驱动系统包括电机驱动器和电机。电机驱动器根据控制设备发送的脉冲信号,控制电机转动的运行速度。例如,电机为步进电
机。
[0062] 其中,电机驱动器是一种将电脉冲转化为角位移的执行机构。当电机驱动器接收到控制设备发送的一个脉冲信号时,它就驱动电机按设定的方向转动一个固定的角度(称
为"步距角"),它的旋转是以固定的角度一步一步运行的。电机驱动器可以通过控制脉冲个
数来控制电机的角位移量,从而达到准确定位的目的;同时电机驱动器可以通过控制脉冲
频率来控制电机转动的速度和加速度,从而达到调速和定位的目的。
[0063] 这样,就可以根据获取的电机当前的运行时间和运行速度,在后续的操作步骤中,确定电机下一时刻的运行速度。
[0064] 步骤101:控制设备根据运行时间,以及存储的第一预设速度模型,获得下一时刻的第一速度。
[0065] 具体的,第一预设速度模型用于描述不平滑变化的第一速度,确定随运行时间以及加速度变化的第一速度。
[0066] 其中,第一速度连接形成第一速度曲线,所述第一速度曲线为梯形曲线、三角形曲线或S形曲线。
[0067] 需要说明的是,梯形曲线和三角形曲线的加速度不是连续变化的。加速度不连续变化,使得速度变化不平滑,进而导致负载抖动较大。当S形曲线的加速度变化过快时(加加
速度很大),更趋近于梯形曲线,负载有可能也会有交大抖动。
[0068] 一种实施方式中,第一速度曲线为梯形曲线,则第一预设速度模型包括三个阶段,即加速阶段、匀速阶段以及减速阶段。
[0069] 也就是说,第一速度先逐渐增大,到达最大速度时,匀速运行,然后,减速运行,直至第一速度为零。
[0070] 一种实施方式中,第一速度曲线为三角形曲线,第一预设速度模型仅包括两个阶段,即加速阶段和减速阶段。
[0071] 也就是说,第一速度先逐渐增大,到达最大速度后,减速运行,直至第一速度为零。
[0072] 这样,就可以通过后续的步骤,在不平滑的第一速度曲线的基础上,获得平滑后的运行速度曲线。
[0073] 步骤102:控制设备根据运行时间,以及存储的第二预设速度模型,获得下一时刻的第二速度。
[0074] 具体的,各第二速度连接而成的曲线,为第二速度曲线。第二预设速度模型是第一预设速度模型根据预设滞后时间D变换获得的。
[0075] 也就是说,第二预设速度模型是第一预设速度模型延迟时间(即预设滞后时间D)后获得的。
[0076] 一种实施方式中,第一预设速度模型为VL1=f(t),并且VL1>=0,则第二预设速度模型为VL2=f(t‑D),并且VL2>=0。
[0077] 其中,f表示速度函数,VL1为第一速度,VL2为第二速度,t为时间,D为预设滞后时间。
[0078] 需要说明的是,第一速度和第二速度均不小于零。
[0079] 这样,就可以获得第一速度曲线和第二速度曲线。
[0080] 步骤103:控制设备根据第一速度、第二速度、预设滞后时间以及运行速度,确定下一时刻的运行速度。
[0081] 具体的,执行步骤103时,可以采用以下步骤:
[0082] S1031:控制设备根据第一速度和第二速度,确定速度差值。
[0083] 一种实施方式中,控制设备将第一速度和第二速度的差值,确定为速度差值。
[0084] S1032:控制设备根据速度差值与预设滞后时间之间的比值,获得速度变化量。
[0085] 一种实施方式中,控制设备将速度差值与预设滞后时间之间的比值,作为速度变化量。
[0086] S1033:控制设备根据速度变化量和当前的运行速度,确定下一时刻的运行速度。
[0087] 一种实施方式中,控制设备将速度变化量与运行速度的和,作为下一时刻的运行速度。
[0088] 一种实施方式中,确定下一时刻的运行速度时,可以采用以下公式:
[0089] Vs(t+1)=(VL1(t+1)‑VL2(t+1))/D+Vs(t);
[0090] 其中,Vs(t+1)为下一时刻的运行速度,即运行时间为t+1时的运行速度,Vs(t)为运行时间为t时的运行速度,VL1(t+1)为运行时间为t+1时的第一速度,VL2(t+1)为运行时间为t+1时
的第二速度,D为预设滞后时间,t表示运行时间。
[0091] 需要说明的是,D的物理意义为第一速度曲线的加速度/加加速度。因此,第一速度曲线的加速度不变时,预设滞后时间D越大,则第一速度曲线的加加速度越小,进而运行速
度曲线的持续过程就越长。
[0092] 需要说明的是,传统方式中,对电机的运行速度进行平滑控制时,控制设备通常采用以下方式确定电机的运行速度:
[0093] 创建一个数组,数组中各元素的初始值均为0,数组长度为预设滞后时间D,并循环执行以下步骤:
[0094] 步骤a:控制设备获取当前时刻的运行时间,并根据运行时间以及第一预设速度模型,获得下一时刻的第一速度。
[0095] 步骤b:控制设备将获得的第一速度添加到数组中,并统计数组中各元素的累加和。
[0096] 需要说明的是,控制设备将各次获取的第一速度按照数组顺序依次添加到数组中,当数组已经饱和时,将新的第一速度替换数组中最早加入的第一速度。
[0097] 也就是说,控制设备始终统计最新的多个(数量大小为预设滞后时间D)第一速度的累加和,即第一速度曲线与第二速度曲线中各速度差值的累加和。
[0098] 步骤c:控制设备将上述累加和与预设滞后时间D的比值,确定为下一时刻的运行速度。
[0099] 具体的,传统方式中的运行速度是根据以下公式确定的:Vs(t)=Sum(t)/D;
[0100] 其中,Sum(t)表示累加和,Sum(0)为初始值0,D为预设滞后时间,t为运行时间。
[0101] 但是,采用这种方式会占用大量硬件存储资源,当预设滞后时间D达到5000或者以上时,将会占用大量的随机存取存储器(Random Access Memory,RAM)资源,其受制于硬件
系统资源的大小。
[0102] 为此,本申请实施例中,对以下公式进行推导:
[0103] 由于Vs(t)=Sum(t)/D,Vs(t+1)=Sum(t+1)/D;
[0104] 因此,一个周期内的速度变化量为:
[0105] Vs(t+1)‑Vs(t)=(Sum(t+1)‑Sum(t))/D;
[0106] 又由于Sum(t)=Sum(t‑1)+VL1(t)‑VL2(t);
[0107] Sum(t+1)=Sum(t)+VL1(t+1)‑VL2(t+1);
[0108] 则,Vs(t+1)‑Vs(t)=(Sum(t+1)‑Sum(t))/D
[0109] =((Sum(t)+VL1(t+1)‑VL2(t+1))‑(Sum(t‑1)+VL1(t)‑VL2(t)))/D
[0110] =((Sum(t)‑(Sum(t‑1)+VL1(t)‑VL2(t))+VL1(t+1)‑VL2(t+1)))/D
[0111] =((Sum(t)‑Sum(t)+VL1(t+1)‑VL2(t+1)))/D
[0112] =(0+VL1(t+1)‑VL2(t+1))/D。
[0113] 即as(t+1)=(VL1(t+1)‑VL2(t+1))/D;
[0114] as(t)=(VL1(t)‑VL2(t))/D;
[0115] 其中,as为运行速度的加速度,Vs为运行速度,VL1为第一速度,VL2为第二速度,D为预设滞后时间,t表示运行时间。Sum(t)表示累加和,Sum(0)为初始值0。
[0116] 这样,就可以通过第一速度、第二速度、预设滞后时间以及当前的运行速度,获得下一时刻的运行速度。不需要复杂的运算过程,不需要耗费大量的运算资源和存储资源,就
可以获得平滑的运行速度曲线,降低了耗费的系统资源。
[0117] 步骤104:控制设备按照下一时刻的运行速度,控制电机驱动系统执行相应的速度调整操作。
[0118] 具体的,控制设备根据下一时刻的运行速度,向电机驱动系统发送脉冲,使得电机驱动系统根据接收的脉冲,调整运行速度。
[0119] 也就是说,控制设备根据下一时刻的运行速度,向电机驱动器发送脉冲,电机驱动器根据接收的脉冲,控制电机的运行速度。
[0120] 这样,控制设备就可以根据下一时刻的运行速度,对电机的运行速度进行控制。
[0121] 进一步地,控制设备确定达到下一预设周期,并且下一时刻的运行速度符合预设调整条件,则执行步骤100。
[0122] 实际应用中,预设调整条件可以根据实际应用场景进行设置,例如,预设调整条件为运行速度不为零,在此不再赘述。
[0123] 下面采用多个应用场景,对上述实施例中进行举例说明。
[0124] 参阅图2a所示,为一种速度曲线示例图一,包括第一速度曲线、第二速度曲线以及运行速度曲线。图2a中横坐标为运行时间,纵坐标为速度,单位为脉冲/s。第一速度曲线为
梯形曲线。预设滞后时间D为1000ms。
[0125] 当运行时间t位于0‑t1阶段时,VL2(t)一直为零,因此,as(t)=VL1(t)/D。
[0126] 在该阶段,第一速度VL1(t)随着时间的增长逐渐增大,则运行速度曲线的加速度随第一速度VL1(t)的增大也相应增大,运行速度曲线处于加加速阶段。
[0127] 需要说明的是,当运行时间t位于0‑t1阶段时,第一速度曲线的加速度a L1(t)=VL1(t)/t,是固定值,由于t
[0128] 由于t1=D,因此,当运行时间t到达t1时刻时,aL1(t1)=VL1(t1)/t1=VL1(t1)/D=as(t1),此时,运行速度曲线的加速度达到最大,与第一速度曲线的加速度相同。
[0129] 当运行时间t位于t1‑t2阶段时,VL2(t)不为零,所以as(t)=(VL1(t)‑VL2(t))/D。由于第一速度曲线和第二速度曲线的加速度是相同的,只是第二速度曲线与第一速度曲线相比,
延迟了时间D,因此,第一速度与第二速度之间的差值为固定值VL1(t)‑VL2(t)=aL1*D,所以
as(t)=(VL1(t)‑VL2(t))/D=a L1(t)=a L2(t)。
[0130] 可见,在运行时间t位于t1‑t2阶段内,第一速度曲线、第二速度曲线以及运行速度曲线三者的加速度是相同的,所以三者平行增长,运行速度曲线处于匀加速阶段。
[0131] 当运行时间t到达t2时,第一速度达到最大值,即到达加速和匀速的拐点,此时,运行速度曲线的加速度as(t2)仍为最大值aL1(t2)。
[0132] 当运行时间位于t2‑t3阶段时,第一速度不再增大,而第二速度仍然在增大,因此,VL1(t)‑VL2(t)会减小,进而as(t)=(VL1(t)‑VL2(t))/D会减小。此时运行速度处于减加速阶段。
[0133] 当运行时间t到达t3时,VL1(t3)=VL2(t3),as(t3)=0,此时运行速度的加速阶段完成。
[0134] 当运行时间t位于t3‑t4阶段时,第一速度曲线、第二速度曲线和运行速度曲线完全重合,即速度相同,所以as(t)=0,此时运行速度曲线处于匀速阶段。
[0135] 运行时间t位于t4‑结束的时间区间内的曲线与运行时间t位于0‑t3的时间区间内的曲线完全轴对称,基于运行时间t位于0‑t3的时间区间内的曲线相似的原理,第一速度曲
线先于第二速度曲线开始下降,因此,VL1(t)‑VL2(t)为负值,as(t)=(VL1(t)‑VL2(t))/D为负值,运
行速度曲线也开始减速。运行速度曲线在t4‑t5阶段为加减速阶段,在t5‑t6阶段为匀减速
阶段,t6‑结束为减减速阶段。
[0136] 参阅图2b所示,为一种运行速度曲线的加速度变化示例图一。可见,运行速度曲线的加速度是随时间连续变化的,且在匀增加或匀减少。图2b中横坐标为运行时间,单位为s,
2 2
纵坐标为加速度,单位为脉冲/s ,最大加速度aL1(t)=VL1(t)/D=1000/1=1000脉冲/s =
2
as(t)。最大加速度为1000脉冲/s。
[0137] 参阅图3所示,为一种速度曲线示例图二,包括第一速度曲线、第二速度曲线以及运行速度曲线,第一速度曲线为梯形曲线。第二速度曲线为预设滞后时间D为2000ms时根据
第一速度曲线获得的速度曲线。图3中横坐标为运行时间,纵坐标为速度,单位为脉冲/s。
[0138] 显然,通过图2a和图3可以看出,由于图2a中D=1000ms,而图3中D=2000ms,因此,图3中的运行速度曲线更加平缓,负载的运行平稳性将会更高,再者,D增大,延长了运行速
2
度曲线的加减速阶段的时长。在第一速度曲线的加速度均为1000脉冲/s的情况下,图2a中
的运行速度曲线在运行时间为4000ms时,即可达到最高速度3000,而图3中的运行速度曲线
在运行时间为5000ms时,才达到最高速度3000。
[0139] 显然,这相同于通过时间换机械性能,实际应用中,可以根据实际应用场景中的负载情况以及对电机的运行时间的需求,设置预设滞后时间。
[0140] 基于与图2a所示的原理,可知图3中各曲线变化原理,在此不再赘述。
[0141] 参阅图4所示,为一种速度曲线示例图三,包括第一速度曲线、第二速度曲线以及运行速度曲线,第一速度曲线为三角形曲线。第二速度曲线为预设滞后时间D为1000时根据
第一速度曲线获得的速度曲线。图4中横坐标为运行时间,纵坐标为速度,单位为脉冲/s。
[0142] 基于与图2a所示的原理,可知图4中各曲线变化原理,在此不再赘述。
[0143] 参阅图5a所示,为一种速度曲线示例图四,包括第一速度曲线、第二速度曲线以及运行速度曲线,第一速度曲线为S形曲线。第二速度曲线为预设滞后时间D为1000时根据第
一速度曲线获得的速度曲线。图5a中横坐标为运行时间,纵坐标为速度,单位为脉冲/s。
[0144] 基于与图2a所示的原理,可知图5a中各曲线变化原理,在此不再赘述。
[0145] 参阅图5b所示,为一种运行速度曲线的加速度变化示例图二。可见,运行速度曲线的加速度是随时间连续变化的。图5b中横坐标为运行时间,单位为s,纵坐标为加速度,单位
2
为脉冲/s。
[0146] 基于与图2b所示的原理,可知图5b中各曲线变化原理,在此不再赘述。
[0147] 需要说明的是,S形曲线的加速度变化过快时(加加速度很大),更趋近于梯形曲线,如图5a中的第一速度曲线,其加速度是梯形变化的,负载有可能也会有较大抖动。本申
请实施例中,对S形曲线进行处理,获得新的S形的运行速度曲线,其加速度也变成了S形曲
线(参阅图5b),即加速度和速度均为S形,比之前梯形加速度更加平滑,当然电机运行会更
平稳从而避免负载抖动较大的问题。
[0148] 本申请实施例中,当纵坐标速度(运行速度或第一速度)的单位为脉冲/s,横坐标中时间单位为s时,运行速度曲线与横坐标围城的面积即为电机的运行的行程,显然,运行
速度曲线与横坐标围城的面积与第一速度曲线与横坐标围城的面积是相同的,并且两者达
到的最大速度也是完全相同的。与传统技术相比,本申请实施例中,加速度可以连续变化,
保证了速度变化的平滑性,并且在速度平滑运行的同时保证了最大速度,最大加速度、运行
的行程以及位移精度不变。
[0149] 显然,相较于传统方式,本申请更加容易实现,占用的硬件资源也较少。进一步地,还可以兼容第一预设速度模型。
[0150] 一种实施方式中,当检测到预设滞后时间为0时,表示不需要输出S型曲线,则可以直接输出第一速度曲线,生成传统方式中的梯形曲线或三角形曲线,对原有的速度算法(第
一预设速度模型)不影响,且还适用于三角形曲线。在设置有低端微控制单元
(Microcontroller Unit,MCU)或者现场可编程门阵列(Field‑Programmable Gate Array,
FPGA)等器件的控制设备上均可以轻易应用,应用场景广阔。再者,可以根据实际应用场景
调整预设滞后时间,以应用于各种极端工况。
[0151] 参阅图6所示,为一种速度控制的详细流程示例图。
[0152] 步骤600:控制设备根据第一预设速度模型以及当前时刻的运行时间,确定下一时刻的第一速度。
[0153] 步骤601:控制设备判断是否达到预设滞后时间,若是,则执行步骤602,否则,执行步骤606。
[0154] 步骤602:控制设备根据第二预设速度模型以及当前时刻的运行时间,确定下一时刻的第二速度。
[0155] 步骤603:控制设备根据第一速度、第二速度、预设滞后时间以及当前的运行速度,确定并输出下一时刻的运行速度。
[0156] 进一步地,控制设备通过定时器输出下一时刻的运行速度对应脉冲序列。
[0157] 一种实施方式中,控制设备中的MCU或FPGA等通过定时器,向电机驱动系统输出下一时刻的运行速度对应脉冲序列。
[0158] 步骤604:控制设备判断下一时刻的运行速度是否符合预设调整条件,若是,则执行步骤600,否则,执行步骤605。
[0159] 例如,预设调整条件为脉冲数达到指定门限值。
[0160] 步骤605:控制设备控制电机驱动系统停止。
[0161] 步骤606:控制设备确定第二速度为零,执行步骤603。
[0162] 基于同一发明构思,本申请实施例中还提供了一种速度控制的装置,由于上述装置及设备解决问题的原理与一种速度控制的方法相似,因此,上述装置的实施可以参见方
法的实施,重复之处不再赘述。
[0163] 如图7所示,其为本申请实施例提供的一种速度控制的装置的结构示意图,包括:
[0164] 获取单元701,用于获取电机驱动系统当前时刻的运行时间和运行速度,运行时间为电机驱动系统启动后运行的时长;
[0165] 获得单元702,用于根据运行时间,以及存储的第一预设速度模型,获得下一时刻的第一速度,其中,第一预设速度模型用于确定随运行时间以及加速度变化的第一速度;以
及根据运行时间,以及存储的第二预设速度模型,获得下一时刻的第二速度,第二预设速度
模型是第一预设速度模型根据预设滞后时间变换获得的;
[0166] 确定单元703,用于根据第一速度、第二速度、预设滞后时间以及运行速度,确定下一时刻的运行速度;
[0167] 调整单元704,用于按照下一时刻的运行速度,控制电机驱动系统执行相应的速度调整操作。
[0168] 在其中一个实施例中,获取单元701用于:
[0169] 按照预设周期,获取电机驱动系统当前时刻的运行时间和运行速度。
[0170] 在其中一个实施例中,第一速度连接形成第一速度曲线,第一速度曲线为梯形曲线、三角形曲线或S形曲线。
[0171] 在其中一个实施例中,确定单元703用于:
[0172] 根据第一速度和第二速度,确定速度差值;
[0173] 根据速度差值与预设滞后时间之间的比值,获得速度变化量;
[0174] 根据速度变化量和运行速度,确定下一时刻的运行速度。
[0175] 在其中一个实施例中,调整单元704用于:
[0176] 根据下一时刻的运行速度,向电机驱动系统发送脉冲,使得电机驱动系统根据接收的脉冲,调整运行速度。
[0177] 本申请实施例提供的一种速度控制的方法和装置中,获取电机驱动系统当前时刻的运行时间和运行速度,运行时间为电机驱动系统启动后运行的时长;根据运行时间,以及
存储的第一预设速度模型,获得下一时刻的第一速度,其中,第一预设速度模型用于确定随
运行时间以及加速度变化的第一速度;以及根据运行时间,以及存储的第二预设速度模型,
获得下一时刻的第二速度,第二预设速度模型是第一预设速度模型根据预设滞后时间变换
获得的;根据下一时刻的第一速度、下一时刻的第二速度、预设滞后时间以及当前时刻的运
行速度;按照下一时刻的运行速度,控制电机驱动系统执行相应的速度调整操作。这样,通
过存储的第一预设速度模型,以及第二预设速度模型(即时间滞后的第一预设速度模型),
确定以及调整运行速度,不需要复杂的速度曲线公式,也不需要耗费大量的运算资源和存
储资源,就可以获得平滑的运行速度曲线,降低了对电机的运行速度进行平滑控制时耗费
的系统资源。
[0178] 为了描述的方便,以上各部分按照功能划分为各模块(或单元)分别描述。当然,在实施本申请时可以把各模块(或单元)的功能在同一个或多个软件或硬件中实现。
[0179] 基于上述实施例,参阅图8所示,本申请实施例中,一种控制设备的结构示意图。
[0180] 本申请实施例提供了一种控制设备,该控制设备可以包括处理器8010(Center Processing Unit,CPU)、存储器8020,还可以包括输入设备8030和输出设备8040等,输入设
备8030可以包括键盘、鼠标、触摸屏等,输出设备8040可以包括显示设备,如液晶显示器
(Liquid Crystal Display,LCD)、阴极射线管(Cathode Ray Tube,CRT)等。
[0181] 存储器8020可以包括只读存储器(ROM)和随机存取存储器(RAM),并向处理器8010提供存储器8020中存储的程序指令和数据。在本申请实施例中,存储器8020可以用于存储
本申请实施例中速度控制的程序。
[0182] 处理器8010通过调用存储器8020存储的程序指令,处理器8010用于执行图1所示的实施例提供的一种速度控制的方法。
[0183] 本申请实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任意方法实施例中的速度控制的方法。
[0184] 本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实
施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机
可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等)上实施的计算机程序产
品的形式。
[0185] 本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流
程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序
指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产
生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实
现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0186] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指
令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能。
[0187] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一
个方框或多个方框中指定的功能的步骤。
[0188] 尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优
选实施例以及落入本申请范围的所有变更和修改。
[0189] 显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围
之内,则本申请也意图包含这些改动和变型在内。