舵机堵转检测方法、装置及舵机与流程

文档序号:17899280发布日期:2019-06-13 16:13阅读:3006来源:国知局
舵机堵转检测方法、装置及舵机与流程

本发明属于机器人技术领域,尤其涉及一种舵机堵转检测方法、装置、舵机及计算机可读存储介质。



背景技术:

舵机是一种控制设备,特点是体积小巧、控制精度高,现今经常被应用于机器人中,根据指令牵动机器人的部件做出对应动作。在舵机转动的过程中,可能会存在堵转现象,其原因可能是在设计转动程序时,未考虑到机器人机械结构,或者舵机的内部齿轮损坏,致使舵机运行受阻。在舵机出现堵转现象后,舵机的驱动电机内部热量会迅速升高,如没有保护手段,则电机会因长时间过热而损坏。

在现有的舵机堵转检测方法中,主要是通过检测舵机电流来实现保护。具体的,在舵机出现堵转后,电机的功率因数会变得极低,从而堵转电流会达到额定电流的几倍至十几倍。所以,通过检测舵机电流,并与设定好的电流阈值进行比较,就能够得出舵机是否已发生堵转,在后续做出应对机制。但是这种方法需要额外增加电流检测电路,非但增加了硬件成本,也使舵机结构变得复杂。



技术实现要素:

有鉴于此,本发明实施例提供了一种舵机堵转检测方法、装置及舵机,以解决现有的舵机堵转检测方法花费成本高、影响检测效率的问题。

本发明实施例的第一方面提供了一种舵机堵转检测方法,包括:

执行对目标位置指令的响应,所述目标位置指令用于使舵机输出轴转动到目标位置;

获取舵机的位置偏差值,所述位置偏差值为所述舵机输出轴的停止位置与所述目标位置的差值;

若所述位置偏差值大于预设的堵转位置阈值,则获取舵机当前的输出控制电压;

若所述输出控制电压大于预设的堵转电压阈值,则关闭舵机输出。

本发明实施例的第二方面提供了一种舵机堵转检测装置,包括:

响应单元,用于执行对目标位置指令的响应,所述目标位置指令用于使舵机输出轴转动到目标位置;

第一获取单元,用于获取舵机的位置偏差值,所述位置偏差值为所述舵机输出轴的停止位置与所述目标位置的差值;

第二获取单元,用于若所述位置偏差值大于预设的堵转位置阈值,则获取舵机当前的输出控制电压;

关闭单元,用于若所述输出控制电压大于预设的堵转电压阈值,则关闭舵机输出。

本发明实施例的第三方面提供了一种舵机,包括主控芯片,所述主控芯片执行如上所述舵机堵转检测方法的步骤。

本发明实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述舵机堵转检测方法的步骤。

本发明实施例与现有技术相比存在的有益效果是:本发明实施例在舵机完成对目标位置指令的动作响应后,获取舵机输出轴的停止位置与目标位置的位置偏差值,如果位置偏差值大于预设的堵转位置阈值,则获取此时舵机内部电机的输出控制电压,如果输出控制电压大于预设的堵转电压阈值,则关闭舵机输出,有效地降低了因舵机堵转造成的损坏问题,防止舵机内部持续发热,同时减少了舵机堵转检测的成本,提高舵机检测的灵活性。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例一提供的舵机堵转检测方法的实现流程图;

图2是本发明实施例二提供的舵机堵转检测方法的实现流程图;

图3是本发明实施例三提供的舵机堵转检测装置的结构框图。

具体实施方式

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。

本发明实施例中舵机主控芯片执行对来自外部的目标位置指令的响应,所述目标位置指令用于使舵机输出轴转动到目标位置;接着通过舵机内置的位置传感器获取舵机输出轴的停止位置,并与所述目标位置进行相减以得到位置偏差值,;若所述位置偏差值大于预设的堵转位置阈值,则获取舵机当前的输出控制电压;若所述输出控制电压大于预设的堵转电压阈值,则关闭舵机输出。为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。

图1示出了本发明实施例一提供的舵机堵转检测方法的实现流程,详述如下:

在s101中,执行对目标位置指令的响应,所述目标位置指令用于使舵机输出轴转动到目标位置。

舵机作为位置伺服的驱动器,在应用在机器人上时,主要担任位置执行的工作,多个舵机共同配合转动,使机器人呈现如行走、跳舞等姿态。通常来说,舵机包括电机、减速器及输出轴,要使舵机转动,即要使舵机输出轴转动,除了对其电路进行供电外,还要施加目标位置指令,使舵机输出轴转动指定角度,并到达使用者所需的位置。具体的,目标位置指令由控制器传输至舵机,一般包括脉冲宽度调制信号,脉冲宽度调制信号在由接收通道进入舵机解调电路并经过解调后,会形成电压差,并送入电机驱动电路,驱动电机正反转,以使得舵机输出轴同步转动,直至电机的电压差为零,电机停止转动,完成对目标位置指令的整个响应过程。

在s102中,获取舵机的位置偏差值,所述位置偏差值为所述舵机输出轴的停止位置与所述目标位置的差值。

在执行完毕对目标位置指令的响应后,获取舵机输出轴的停止位置与目标位置的差值,作为位置偏差值。上述的停止位置,是指舵机的响应过程结束后,舵机输出轴所处的停止状态所在位置,可能的情况是,舵机输出轴在完成指令响应后仍在转动,处于运动状态。上述的目标位置是操作者在编写目标位置指令代码时,预定的舵机输出轴在执行完目标位置指令后能够到达的位置。在获取舵机输出轴的停止位置时,获取舵机的位置传感器的反馈值,从而得到舵机输出轴的停止位置参数,其中,停止位置参数可以是位置传感器实时获取到的距离数值或者角度数值,或是两者结合起来的具体位置数值,接着将停止位置参数与对应单位的目标位置的参数进行相减,将其绝对值作为位置偏差值。除此之外,其余的获取舵机位置偏差值的方法和步骤,如在舵机上增加位置检测电路,在舵机上增加图像检测单元等方法也应包含在本发明实施例中。

在s103中,若所述位置偏差值大于预设的堵转位置阈值,则获取舵机当前的输出控制电压。

在获取到位置偏差值后,根据预设的堵转位置阈值进行判断,如果位置偏差值大于预设的堵转位置阈值,则进行后续的舵机堵转检测,即获取舵机当前的输出控制电压,其中,输出控制电压是指舵机内部电机的电压,输出控制电压的大小由舵机主控芯片调节,电压越高,则舵机输出力矩越大。具体的,可通过舵机自带的电压检测单元对输出控制电压进行获取。另一方面,如果位置偏差值小于预设的堵转位置阈值,则证明舵机并未发生堵转,不再执行后续的舵机堵转检测步骤,转而等待下一个目标位置指令。

在进行堵转位置阈值的设置时,需要考虑到舵机在实际的指令响应过程中,会因为物理机械结构和信号抖动等原因,从而导致舵机输出轴产生一定的自然位置误差,这种自然位置误差无可避免,在舵机动作的可接受范围内,但在位置偏差值获取时,会将自然位置误差添加在内。所以,堵转位置阈值在设置时要大于舵机的运行精度,防止因自然位置误差导致的舵机堵转误判,节省检测资源。

在s104中,若所述输出控制电压大于预设的堵转电压阈值,则关闭舵机输出。

在位置偏差值大于预设的堵转位置阈值的基础上,为进一步提升舵机堵转检测的准确性,对舵机的输出控制电压进行获取,并与预设的堵转电压阈值进行对比。如果输出控制电压大于预设的堵转电压阈值,则舵机出现了堵转现象,此时堵转保护有效,关闭舵机输出;如果获取到的输出控制电压小于预设的堵转电压阈值,证明舵机不会因为过热而出现损坏问题,从而不实施舵机保护,转而等待下一个目标位置指令,但是在正常情况下,这种现象不会发生,除非堵转位置阈值或者堵转电压阈值设置不合理。在本发明实施例中,堵转位置阈值、堵转电压阈值均存储于舵机主控芯片的flash存储器中,上述预设的参数与舵机主控芯片程序一起烧录至舵机主控芯片中,后续不会更改。

可选地,在s104之前,还可以设置所述堵转电压阈值,其中所述堵转电压阈值小于舵机的供电电压。由于在实际情况中,输出控制电压的最大值等于舵机的供电电压,此时会出现过热的现象。为了防止因堵转而过热,设置堵转电压阈值小于舵机的供电电压,在后续进行检测保护。

可选地,设置所述堵转电压阈值为所述供电电压的60%至70%。

通过图1所示实施例可知,在本发明实施例一中,通过执行对目标位置指令的响应,所述目标位置指令用于使舵机输出轴转动到目标位置,执行完毕后,获取舵机的位置偏差值,所述偏差值为所述舵机输出轴的停止位置与所述目标位置的差值,若所述位置偏差值大于预设的堵转位置阈值,则获取舵机当前的输出控制电压,若所述输出控制电压大于预设的堵转电压阈值,则关闭舵机输出,使得仅添加部分代码即可实现舵机的堵转检测,降低了堵转检测的开发成本,提高了检测灵活性。

图2所示,是本发明实施例二提供的舵机的控制响应方法的流程图,在发明实施例一的基础上,为了提升适用性,增加了舵机对不同指令时长的目标位置指令进行响应后,执行堵转检测的步骤。如图2所示,该舵机堵转检测方法可以包括以下步骤:

在s201中,获取控制器发出的所述目标位置指令,所述目标位置指令包括指令时长;获取舵机当前的运行时间;如果所述运行时间在所述指令时长内,则继续执行对所述目标位置指令的响应;如果所述运行时间不在所述指令时长内,则结束对所述目标位置指令的响应。

舵机输出轴要转动至如使用者预期的位置,前提必须获取到规划其动作路径和时间的指令,在本发明实施例中,舵机通过获取控制器发出的目标位置指令,从而通过指令中的脉冲宽度调制信号的变化,使得舵机输出轴进行转动。更多的,在目标位置指令中包括指令时长,指令时长是指舵机执行完毕对目标位置指令的响应所需的时间。

在舵机开始执行对目标位置指令的响应时,将舵机的运行时间重置为零,开始进行计时。在响应过程中,获取舵机当前的运行时间,如果运行时间在目标位置指令的指令时长内,则使舵机继续执行对目标位置指令的响应;如果运行时间不在所述指令时长内,则结束对目标位置指令的响应,这里所指的结束响应,只是指舵机不再根据此条目标位置指令进行响应动作,可能的是,此时舵机输出轴由于某些特殊原因,仍在转动,只是不在目标位置指令预估的范围。

在s202中,启动舵机的定时器,直至定时值达到预设的堵转判定延时。

在舵机执行对目标位置指令的响应时,考虑到实际的项目情况,可能会出现这样的情况,即舵机输出轴只需做小幅度的转动,以达到矫正姿态,舒缓机械结构的目的,即舵机输出轴转动的角度较小、时间较短。这意味着操作者输入的目标位置指令也较短,在目标位置指令的指令时长结束时,舵机输出轴可能会因为惯性,或者还存在电压差的缘故,仍在继续转动,从而影响堵转检测的效果。

所以,在本发明实施例中,在目标位置指令执行后,增加了一段堵转判定延时,以保证舵机在不堵转的情况下有足够时间能够执行完动作,防止在舵机输出轴还在转动时,就开始进行堵转检测。具体可通过舵机自带定时器,在舵机结束对目标位置指令的响应后,启动所述定时器,直到定时值达到预设的堵转判定延时。堵转判定延时的设置时间不能过短,以致使进行后续检测操作时,舵机输出轴还在继续转动;也不能过长,以至舵机已发生堵转时,电机电流激增,造成过热损坏。可选地,设置所述堵转判定延时为1.5秒。堵转判定延时存储于舵机主控芯片的flash存储器中,上述堵转判定延时与舵机主控芯片程序一起烧录至舵机主控芯片中,后续不会更改。

在s203中,获取舵机的位置偏差值,所述位置偏差值为所述舵机输出轴的停止位置与所述目标位置的差值。

在s204中,若所述位置偏差值大于预设的堵转位置阈值,则获取舵机当前的输出控制电压。

在s205中,若所述输出控制电压大于预设的堵转电压阈值,则关闭舵机输出。

步骤s203、s204、s205分别与步骤s102、s103、s104相同,具体可参见步骤s102、s103、s104的相关描述,在此不再赘述。

通过图2所示实施例可知,在本发明实施例二中,通过获取控制器发出的所述目标位置指令,所述目标位置指令包括指令时长,并通过获取舵机当前的运行时间,判断运行时间是否在指令时长内,从而得出舵机对目标位置指令的响应是否结束,并在响应结束后启动舵机的定时器,直至定时值达到预设的堵转判定延时,再进行后续的堵转检测过程,从而提升了对不同目标位置指令的适用性,提高了堵转检测的准确性。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

对应于上文实施例所述的舵机堵转检测方法,图3示出了本发明实施例三提供的舵机堵转检测装置的结构框图,所述舵机堵转检测装置可以应用在机器人的舵机中,通过执行对目标位置指令的响应,所述目标位置指令用于使舵机输出轴转动到目标位置,获取舵机的位置偏差值,所述偏差值为所述舵机输出轴的停止位置与所述目标位置的差值,若所述位置偏差值大于预设的堵转位置阈值,则获取舵机当前的输出控制电压,若所述输出控制电压大于预设的堵转电压阈值,则关闭舵机输出,降低堵转检测的开发成本,提高检测灵活性。

参照图3,该舵机堵转检测装置包括:

响应单元31,用于执行对目标位置指令的响应,所述目标位置指令用于使舵机输出轴转动到目标位置;

第一获取单元32,用于获取舵机的位置偏差值,所述位置偏差值为所述舵机输出轴的停止位置与所述目标位置的差值;

第二获取单元33,用于若所述位置偏差值大于预设的堵转位置阈值,则获取舵机当前的输出控制电压;

关闭单元34,用于若所述输出控制电压大于预设的堵转电压阈值,则关闭舵机输出。

可选的,所述响应单元31包括:

指令获取单元,用于获取主控单元发出的所述目标位置指令,所述目标位置指令用于使舵机输出轴转动到目标位置,所述目标位置指令包括指令时长;

时间获取单元,用于获取舵机当前的运行时间;

执行单元,用于如果所述运行时间在所述指令时长内,则继续执行对所述目标位置指令的响应;

结束单元,用于如果所述运行时间不在所述指令时长内,则结束对所述目标位置指令的响应。

可选的,所述第一获取单元还包括:

启动单元,用于启动舵机的定时器,直至定时值达到预设的堵转判定延时;

设置单元,用于设置所述堵转电压阈值,其中所述堵转电压阈值小于舵机的供电电压。

对应于上文实施例所述的舵机堵转检测方法,本发明另一实施例公开一种采用实施例一或实施例二的舵机堵转检测方法的舵机。该舵机包括主控芯片,所述主控芯片执行实施例一或实施例二中的所述舵机堵转检测方法,在舵机的每条目标位置指令结束后,进行堵转检测。该应用所述舵机堵转检测方法的舵机,检测方式简单灵活,不用增加额外的电流检测电路,更容易满足舵机堵转检测的需求。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将所述装置的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

在本发明所提供的实施例中,应该理解到,所揭露的方法、装置和舵机,可以通过其它的方式实现。例如,以上所描述的装置和舵机实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。

以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1