电机的运动轨迹的规划方法、装置、设备以及存储介质与流程

文档序号:16006390发布日期:2018-11-20 20:06阅读:542来源:国知局

本申请实施例涉及机械自动化领域,尤其涉及一种电机的运动轨迹的规划方法、装置、设备以及存储介质。



背景技术:

伺服驱动器(servo drives)又称为“伺服控制器”、“伺服放大器”,是用来控制伺服电机的一种控制器,其作用类似于变频器作用于普通交流马达,属于伺服系统的一部分,主要应用于高精度的定位系统。伺服驱动器是现代运动控制的重要组成部分,被广泛应用于工业机器人及数控加工中心等自动化设备中。

轮廓位置模式是伺服驱动器中一种基本的工作模式,其中S型曲线的轮廓位置有对机械冲击少,机械结构定位振动小与加速度连续等特点,是伺服驱动器中必备的重要功能之一。当前市场中大多伺服驱动器产品中的轮廓位置模式采用7段式或者3段式的规划曲线实现运动轨迹的规划,用户使用时需要对目标位置Stag,最大速度Vmax,最大加速度Accmax,最大减速度DAccmax,最大加加速度Jerkmax,最大减加速度DJerkmax进行设定,采样时间ts。

如果参数设定特别是Stag设定不满足7段式或者3段式曲线规划时,驱动器会返回参数设置的错误,而拒绝执行运动指令,这样对编程人员的理论计算水平要求较高,调试的过程也繁琐。



技术实现要素:

本申请实施例提供一种电机的运动轨迹的规划方法、装置、设备以及存储介质,用于解决上述方案中参数设定特别是Stag设定不满足7段式或者3段式曲线规划时,驱动器会返回参数设置的错误,而拒绝执行运动指令,这样对编程人员的理论计算水平要求较高,调试的过程也繁琐的问题。

本申请第一方面提供一种电机的运动轨迹的规划方法,包括:

获取用于运动轨迹规划的运动参数;

根据所述运动参数判断是否能够采用三段式规划方式进行运动轨迹的规划;

若所述运动参数能够采用三段式规划方式,则根据所述运动参数,采用所述三段式规划方式进行运动轨迹规划,得到第一轨迹数组。

可选的,所述方法还包括:

若所述运动参数不能采用三段式规划方式,则根据所述运动参数,采用两段式规划方式进行运动轨迹规划,得到第二轨迹数组。

可选的,所述方法还包括:

获取用户选择的运动轨迹规划的约束方式:所述约束方式包括加速度约束或者加加速度约束。

可选的,若所述约束方式为加速度约束,则所述运动参数包括:目标位置、最大速度、最大加速度和最大减速度;

若所述约束方式为加加速度约束,则所述运动参数包括:目标位置、最大速度、最大加加速度和最大减加速度。

在一种具体实现方式中,若所述约束方式为加速度约束,则所述根据所述运动参数判断是否能够采用三段式规划方式进行运动轨迹的规划,包括:

根据目标位置Stag,最大速度Vmax,最大加速度Accmax以及最大减速度DAccmax,采用公式(1)计算得到t2;其中,

判断所述t2的值是否大于0;

若所述t2的值大于0,则所述运动参数能够采用三段式规划方式;

若所述t2的值小于或等于0,则所述运动参数不能采用三段式规划方式。

可选的,所述根据所述运动参数,采用所述三段式规划方式进行运动轨迹规划,得到第一轨迹数组,包括:

采用公式(2):以及公式(3):计算得到t1和t3;

计算t=t1+t2+t3,并根据采样时间ts将t进行等分并形成时间数组:tx[i]=[tx1,tx2,tx3,…,txn],i=1,2,3,…,n,且txi+1-txi=ts;

根据最大速度Vmax以及所述时间数组,采用公式(4):

计算每个txi对应的S(t)的值,得到所述第一轨迹数组。

可选的,所述根据所述运动参数,采用两段式规划方式进行运动轨迹规划,得到第二轨迹数组,包括:

采用公式(2):以及公式(3):计算得到t1和t3;

计算t=t1+t3,并根据采样时间ts将t进行等分并形成时间数组:tx[i]=[tx1,tx2,tx3,…,txn],i=1,2,3,…,n,且txi+1-txi=ts;

根据目标位置Stag、最大速度Vmax、最大加速度Accmax以及最大减速度DAccmax以及所述时间数组,采用公式(5):

计算每个txi对应的S(t)的值,得到所述第二轨迹数组;

其中,ω1_2与Vmax_x数值可通过公式(6):以及公式(7):计算得到,Acc1_2可通过公式(8):Acc1_2=min(Accmax,DAccmax)计算得到。

在另一种实现方式中,若所述约束方式为加加速度约束,则所述根据所述运动参数判断是否能够采用三段式规划方式进行运动轨迹的规划,包括:

根据目标位置Stag,最大速度Vmax,最大加加速度Jerkmax以及最大减加速度DJerkmax,采用公式(1)计算得到t2;其中,

判断所述t2的值是否大于0;

若所述t2的值大于0,则所述运动参数能够采用三段式规划方式;

若所述t2的值小于或等于0,则所述运动参数不能采用三段式规划方式。

可选的,所述根据所述运动参数,采用所述三段式规划方式进行运动轨迹规划,得到第一轨迹数组,包括:

采用公式(2):以及公式(3):计算得到t1和t3;

计算t=t1+t2+t3,并根据采样时间ts将t进行等分并形成时间数组:tx[i]=[tx1,tx2,tx3,…,txn],i=1,2,3,…,n,且txi+1-txi=ts;

根据最大速度Vmax以及所述时间数组,采用公式(4):

计算每个txi对应的S(t)的值,得到所述第一轨迹数组。

可选的,所述根据所述运动参数,采用两段式规划方式进行运动轨迹规划,得到第二轨迹数组,包括:

采用公式(2):以及公式(3):计算得到t1和t3;

计算t=t1+t3,并根据采样时间ts将t进行等分并形成时间数组:tx[i]=[tx1,tx2,tx3,…,txn],i=1,2,3,…,n,且txi+1-txi=ts;

根据目标位置Stag、最大速度Vmax、最大加加速度Jerkmax以及最大减加速度DJerkmax以及所述时间数组,采用公式(5):

计算每个txi对应的S(t)的值,得到所述第二轨迹数组;

其中,ω1_2与Vmax_x数值可通过公式(9):以及公式(10):计算得到,Jerk1_2通过公式(11):Jerk1_2=min(Jerkmax,Djerkmax)计算得到。

本申请第二方面提供一种电机的运动轨迹的规划装置,包括:

获取模块,用于获取用于运动轨迹规划的运动参数;

处理模块,用于根据所述运动参数判断是否能够采用三段式规划方式进行运动轨迹的规划;

若所述运动参数能够采用三段式规划方式,则所述处理模块还用于根据所述运动参数,采用所述三段式规划方式进行运动轨迹规划,得到第一轨迹数组。

可选的,所述处理模块还用于:

若所述运动参数不能采用三段式规划方式,则根据所述运动参数,采用两段式规划方式进行运动轨迹规划,得到第二轨迹数组。

可选的,所述获取模块还用于:

获取用户选择的运动轨迹规划的约束方式:所述约束方式包括加速度约束或者加加速度约束。

可选的,若所述约束方式为加速度约束,则所述运动参数包括:目标位置、最大速度、最大加速度和最大减速度;

若所述约束方式为加加速度约束,则所述运动参数包括:目标位置、最大速度、最大加加速度和最大减加速度。

在一种具体实现方式中,若所述约束方式为加速度约束,则所述处理模块具体用于:

根据目标位置Stag,最大速度Vmax,最大加速度Accmax以及最大减速度DAccmax,采用公式(1)计算得到t2;其中,

判断所述t2的值是否大于0;

若所述t2的值大于0,则所述运动参数能够采用三段式规划方式;

若所述t2的值小于或等于0,则所述运动参数不能采用三段式规划方式。

可选的,所述处理模块具体用于:

采用公式(2):以及公式(3):计算得到t1和t3;

计算t=t1+t2+t3,并根据采样时间ts将t进行等分并形成时间数组:tx[i]=[tx1,tx2,tx3,…,txn],i=1,2,3,…,n,且txi+1-txi=ts;

根据最大速度Vmax以及所述时间数组,采用公式(4):

计算每个txi对应的S(t)的值,得到所述第一轨迹数组。

可选的,所述处理模块具体用于:

采用公式(2):以及公式(3):计算得到t1和t3;

计算t=t1+t3,并根据采样时间ts将t进行等分并形成时间数组:tx[i]=[tx1,tx2,tx3,…,txn],i=1,2,3,…,n,且txi+1-txi=ts;

根据目标位置Stag、最大速度Vmax、最大加速度Accmax以及最大减速度DAccmax以及所述时间数组,采用公式(5):

计算每个txi对应的S(t)的值,得到所述第二轨迹数组;

其中,ω1_2与Vmax_x数值可通过公式(6):以及公式(7):计算得到,Acc1_2可通过公式(8):Acc1_2=min(Accmax,DAccmax)计算得到。

在另一种实现方式中,若所述约束方式为加加速度约束,则所述处理模块具体用于:

根据目标位置Stag,最大速度Vmax,最大加加速度Jerkmax以及最大减加速度DJerkmax,采用公式(1)计算得到t2;其中,

判断所述t2的值是否大于0;

若所述t2的值大于0,则所述运动参数能够采用三段式规划方式;

若所述t2的值小于或等于0,则所述运动参数不能采用三段式规划方式。

可选的,所述处理模块具体用于:

采用公式(2):以及公式(3):计算得到t1和t3;

计算t=t1+t2+t3,并根据采样时间ts将t进行等分并形成时间数组:tx[i]=[tx1,tx2,tx3,…,txn],i=1,2,3,…,n,且txi+1-txi=ts;

根据最大速度Vmax以及所述时间数组,采用公式(4):

计算每个txi对应的S(t)的值,得到所述第一轨迹数组。

可选的,所述处理模块具体用于:

采用公式(2):以及公式(3):计算得到t1和t3;

计算t=t1+t3,并根据采样时间ts将t进行等分并形成时间数组:tx[i]=[tx1,tx2,tx3,…,txn],i=1,2,3,…,n,且txi+1-txi=ts;

根据目标位置Stag、最大速度Vmax、最大加加速度Jerkmax以及最大减加速度DJerkmax以及所述时间数组,采用公式(5):

计算每个txi对应的S(t)的值,得到所述第二轨迹数组;

其中,ω1_2与Vmax_x数值可通过公式(9):以及公式(10):计算得到,Jerk1_2通过公式(11):Jerk1_2=min(Jerkmax,Djerkmax)计算得到。

本申请第三方面提供一种电子设备,包括:存储器和处理器;

所述存储器用于存储计算机指令;所述处理器用于运行所述存储器存储的所述计算机指令实现第一方面任一实现方式提供的电机的运动轨迹的规划方法。

本申请第四方面提供一种存储介质,包括:可读存储介质和计算机指令,所述计算机指令存储在所述可读存储介质中;所述计算机指令用于实现第一方面任一实现方式提供的电机的运动轨迹的规划方法。

本申请实施例提供的电机的运动轨迹的规划方法、装置、设备以及存储介质,通过获取用于运动轨迹规划的运动参数,根据运动参数判断是否能够采用三段式规划方式进行运动轨迹的规划,若是,则根据运动参数,采用三段式规划方式进行运动轨迹规划,得到第一轨迹数组,否则,则根据运动参数,采用两段式规划方式进行运动轨迹规划,得到第二轨迹数组。在对电机的运动轨迹规划过程中通过判断开发人员输入的参数,自动判断使用两段式或者三段式规划方式进行运动轨迹规划,降低对设计人员的要求,简化调试过程。

附图说明

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

图1为本发明实施例提供的位置时域波形图;

图2为本发明实施例提供的速度时域波形图;

图3为本申请实施例提供的电机的运动轨迹的规划方法的实施例一的流程图;

图4为本实施例提供的加速度约束、三段式规划结果示意图;

图5为本实施例提供的加速度约束、两段式规划结果示意图;

图6为本实施例提供的加加速度约束、三段式规划结果示意图;

图7为本实施例提供的加加速度约束、两段式规划结果示意图;

图8为本申请实施例提供的电机的运动轨迹的规划装置的实施例一的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。

针对背景技术中提及的,用户使用时需要对目标位置Stag,最大速度Vmax,最大加速度Accmax,最大减速度DAccmax,最大加加速度Jerkmax,最大减加速度进行设定DJerkmax,采样时间ts。如果参数设定特别是Stag设定不满足7段式或者3段式曲线规划时,驱动器会返回参数设置的错误,而拒绝执行运动指令,这样对编程人员的理论计算水平要求较高,调试的过程也繁琐的问题。本申请提供一种采用正余弦函数作为s曲线的形函数,采用3段式曲线形成s函数,在用户设定完目标位置Stag,最大速度Vmax与最大加速度Accmax等参数后,自动判断是否能进行三段式规划,如果不能实现,则采用2段式规划,该方案可以实现在用来做轨迹规划的电子设备中,可通过软件实现,方便编程人员,降低设计人员的理论水平要求,简化调试过程。

下面通过几个具体实现方式对本申请提供的电子的运动轨迹的规划方法进行详细说明。

图1为本发明实施例提供的位置时域波形图;图2为本发明实施例提供的速度时域波形图,分别示出了位置和速度的时域图。其中,

三段式速度形函数

三段式位置函数

图3为本申请实施例提供的电机的运动轨迹的规划方法的实施例一的流程图,如图3所示,该电机的运动轨迹的规划方法具体包括以下步骤:

S101:获取用于运动轨迹规划的运动参数。

在本步骤中,电子设备中安装可用来进行电机运动轨迹规划的软件,用户需要根据实际情况输入相关的运动参数以便进行后续的电机的控制。因此,在常见的实现方式中,该步骤中获取用于运动轨迹规划的运动参数的主要方式就是接收用户输入。

在该方案的一种具体的实现中,在接收输入的运动参数之前,用户还要根据实际情况选择进行运动轨迹规划的约束方式,该约束方式包括加速度约束或者加加速度约束,用户可自行选择,即对电子设备来说,仅需要获取用户的选择结果即可。

在该方案中,还应理解,当用户选择了采用加速度约束的方式进行电机的运动轨迹的规划,则至少需要输入的运动参数包括:目标位置、最大速度、最大加速度和最大减速度。当用户选择了采用加加速度约束的方式进行电机的运动轨迹的规划,则至少需要输入的运动参数包括:目标位置、最大速度、最大加加速度和最大减加速度。

S102:根据运动参数判断是否能够采用三段式规划方式进行运动轨迹的规划。

在本步骤中,电子设备获取到了用来进行电机的运动轨迹规划的参数之后,需要根据该参数自动判断能够进行三段式规划,如果采用的是加速度约束,则根据目标位置、最大速度、最大加速度和最大减速度计算出用于判断的参数,将该参数与预设的门限进行对比,确定后续规划过程中采用的规划方式是三段式规划还是两段式规划。同样的,如果采用的是加加速度约束,则根据目标位置、最大速度、最大加加速度和最大减加速度计算出用于判断的参数,将该参数与预设的门限进行对比,确定后续规划过程中采用的规划方式是三段式规划还是两段式规划。

S103:若运动参数能够采用三段式规划方式,则根据运动参数,采用三段式规划方式进行运动轨迹规划,得到第一轨迹数组。

S104:若运动参数不能采用三段式规划方式,则根据运动参数,采用两段式规划方式进行运动轨迹规划,得到第二轨迹数组。

在上述两个步骤中,如果电子设备自动判断的结果是用户输入的运动参数能够采用三段式规划,即满足三段式规划的约束条件,则直接按照该运动参数进行三段式规划得到控制该电机运动的运动轨迹对应的第一轨迹数组。

如果电子设备自动判断的结果是用户输入的运动参数不能够采用三段式规划,即满足两段式规划的约束条件,则直接按照该运动参数进行两段式规划得到控制该电机运动的运动轨迹对应的第二轨迹数组。

本实施例提供的电机的运动轨迹的规划方法,通过对用户输入的运动参数自动进行判断确定进行三段式规划还是两段式规划,不会犹豫设置人员输入的参数的问题,拒绝执行运动指令,降低对设计人员的要求,简化调试过程。

在上述实施例的基础上,下面通过具体的实现过程对该方案进行举例说明。

第一种实现方案:

安装在电子设备上,能够实现该功能的程序根据用户的操作启动,程序初始化,初始化变量,进行输入输出变量的内存分配之后,如果开发人员在选择约束方式时,选择了加速度约束方式,则用户输入的运动参数包括:目标位置Stag,最大速度Vmax,最大加速度Accmax,最大减速度DAccmax,采样时间ts,则该电机的运动轨迹的规划方法中的步骤S102的具体实现过程如下:

第一步,根据目标位置Stag,最大速度Vmax,最大加速度Accmax以及最大减速度DAccmax,采用公式(1)计算得到t2;其中,

第二步,判断所述t2的值是否大于0。

在该方案中,t2是三段式规划中的中间段(第二段)时间长度,单位一般为秒。

第三步,若所述t2的值大于0,则所述运动参数能够采用三段式规划方式。在该步骤中确定了t2的值大于0,则在后续的步骤S103中可以按照加速度约束,直接采用三段式的规划方案,对电机的运行轨迹进行规划,具体包括以下过程:

(一)、采用公式(2):计算得到t1,并采用公式(3):计算得到t3。

(二)、计算t=t1+t2+t3,并根据采样时间ts将t进行等分并形成时间数组:tx[i]=[tx1,tx2,tx3,…,txn],i=1,2,3,…,n,且txi+1-txi=ts;

(三)、根据最大速度Vmax以及所述时间数组,采用公式(4):

计算每个txi对应的S(t)的值,得到所述第一轨迹数组。

其中,除了用户输入的最大速度Vmax之外,公式(4)中需要的t1、t2以及ω1,ω2已经在前述的过程中计算得到,可以直接带入该公式计算,每个txi可以计算得到一个S(t)值,这样在计算完成后会得到每个时间点对应的S(t),即形成一个数组,在电机根据该第一轨迹数组进行运行的时候,形成三段式的运动轨迹。最后将该第一轨迹数组输出,完成对电机的运行轨迹规划。

假设在用户选择了加速度约束,输入的运动参数为:参数Stag=200m,最大速度Vmax=10m/s,最大加速度Accmax=3m/s2,最大减速度DAccmax=3m/s2,ts=0.001s。经过自动判断该些运动参数满足三段式规划方案的一种具体实现中,图4为本实施例提供的加速度约束、三段式规划结果示意图,如图4所示,(a)、(b)、(c)、(d)分别示出了运行上述方案的第一轨迹数据得到的位置在曲线、速度曲线、加速度曲线以及加加速度曲线。

第四步,若所述t2的值小于或等于0,则所述运动参数不能采用三段式规划方式。在该步骤中确定了t2的值不大于0,则在后续的步骤S103中可以按照加速度约束,直接采用二段式的规划方案,对电机的运行轨迹进行规划,具体包括以下过程:

(一)、采用公式(2):计算得到t1,并采用公式(3):计算得到t3。

(二)、计算t=t1+t3,并根据采样时间ts将t进行等分并形成时间数组:tx[i]=[tx1,tx2,tx3,…,txn],i=1,2,3,…,n,且txi+1-txi=ts。

(三)、根据目标位置Stag、最大速度Vmax、最大加速度Accmax以及最大减速度DAccmax以及所述时间数组,采用公式(5):

计算每个txi对应的S(t)的值,得到所述第二轨迹数组;

其中,除了用户输入的最大速度Vmax之外,ω1_2与Vmax_x数值可通过公式(6):以及公式(7):计算得到,Acc1_2可通过公式(8):Acc1_2=min(Accmax,DAccmax)计算得到。每个txi可以计算得到一个S(t)值,这样在计算完成后会得到每个时间点对应的S(t),即形成一个数组,在电机根据该第二轨迹数组进行运行的时候,形成两段式的运动轨迹。最后将该第二轨迹数组输出,完成对电机的运行轨迹规划。

假设在用户选择了加速度约束,输入的运动参数为:参数Stag=6m,最大速度Vmax=10m/s,最大加速度Accmax=3m/s2,最大减速度DAccmax=3m/s2,ts=0.001s。经过自动判断该些运动参数不满足三段式规划方案的一种具体实现中,图5为本实施例提供的加速度约束、两段式规划结果示意图,如图5所示,(a)、(b)、(c)、(d)分别示出了运行上述方案的第二轨迹数据得到的位置在曲线、速度曲线、加速度曲线以及加加速度曲线。

第二种实现方案:

安装在电子设备上,能够实现该功能的程序根据用户的操作启动,程序初始化,初始化变量,进行输入输出变量的内存分配之后,如果开发人员在选择约束方式时,选择了加加速度约束方式,则用户输入的运动参数包括:目标位置Stag,最大速度Vmax,最大加加速度Jerkmax,最大减速度DJerkmax,采样时间ts,则该电机的运动轨迹的规划方法中的步骤S102的具体实现过程如下:

第一步,根据目标位置Stag,最大速度Vmax,最大加加速度Jerkmax以及最大减加速度DJerkmax,采用公式(1)计算得到t2;其中,

第二步,判断所述t2的值是否大于0。

第三步,若所述t2的值大于0,则所述运动参数能够采用三段式规划方式。在该步骤中确定了t2的值大于0,则在后续的步骤S103中可以按照加加速度约束,直接采用三段式的规划方案,对电机的运行轨迹进行规划,具体包括以下过程:

(一)、采用公式(2):以及公式(3):计算得到t1和t3。

(三)、计算t=t1+t2+t3,并根据采样时间ts将t进行等分并形成时间数组:tx[i]=[tx1,tx2,tx3,…,txn],i=1,2,3,…,n,且txi+1-txi=ts。

(四)、根据最大速度Vmax以及所述时间数组,采用公式(4):

计算每个txi对应的S(t)的值,得到所述第一轨迹数组。

除了用户输入的最大速度Vmax之外,公式(4)中需要的t1、t2以及ω1,ω2已经在前述的过程中计算得到,可以直接带入该公式计算,每个txi可以计算得到一个S(t)值,这样在计算完成后会得到每个时间点对应的S(t),即形成一个数组,在电机根据该第一轨迹数组进行运行的时候,形成三段式的运动轨迹。最后将该第一轨迹数组输出,完成对电机的运行轨迹规划。

假设在用户选择了加加速度约束,输入的运动参数为:参数Stag=200m,最大速度Vmax=10m/s,最大加速度Jerkmax=3m/s2,最大减速度DJerkmax=3m/s2,ts=0.001s。经过自动判断该些运动参数满足三段式规划方案的一种具体实现中,图6为本实施例提供的加加速度约束、三段式规划结果示意图,如图6所示,(a)、(b)、(c)、(d)分别示出了运行上述方案的第一轨迹数据得到的位置在曲线、速度曲线、加速度曲线以及加加速度曲线。

第四步,若所述t2的值小于或等于0,则所述运动参数不能采用三段式规划方式。在该步骤中确定了t2的值不大于0,则在后续的步骤S103中可以按照加加速度约束,直接采用二段式的规划方案,对电机的运行轨迹进行规划,具体包括以下过程:

(一)、采用公式(2):以及公式(3):计算得到t1和t3。

(二)、计算t=t1+t3,并根据采样时间ts将t进行等分并形成时间数组:tx[i]=[tx1,tx2,tx3,…,txn],i=1,2,3,…,n,且txi+1-txi=ts。

(三)、根据目标位置Stag、最大速度Vmax、最大加加速度Jerkmax以及最大减加速度DJerkmax以及所述时间数组,采用公式(5):

计算每个txi对应的S(t)的值,得到所述第二轨迹数组。

其中,ω1_2与Vmax_x数值可通过公式(9):以及公式(10):计算得到,Jerk1_2通过公式(11):Jerk1_2=min(Jerkmax,Djerkmax)计算得到。每个txi可以计算得到一个S(t)值,这样在计算完成后会得到每个时间点对应的S(t),即形成一个数组,在电机根据该第二轨迹数组进行运行的时候,形成两段式的运动轨迹。最后将该第二轨迹数组输出,完成对电机的运行轨迹规划。

假设在用户选择了加加速度约束,输入的运动参数为:参数Stag=20m,最大速度Vmax=10m/s,最大加速度Jerkmax=3m/s2,最大减速度DJerkmax=3m/s2,ts=0.001s。经过自动判断该些运动参数不满足三段式规划方案的一种具体实现中,图7为本实施例提供的加加速度约束、两段式规划结果示意图,如图7所示,(a)、(b)、(c)、(d)分别示出了运行上述方案的第二轨迹数据得到的位置在曲线、速度曲线、加速度曲线以及加加速度曲线。

上述实现方式提供的方案中,在用户设定完目标位置Stag,最大速度Vmax与最大加速度Accmax等参数后,算法自动判别2/3段规划,即自动判断是否能进行三段式规划,如果不能实现,则采用2段式规划,可实现加速度与加加速度两种约束下进行位置s曲线规划,方便编程人员,降低设计人员的理论水平要求,简化调试过程。

图8为本申请实施例提供的电机的运动轨迹的规划装置的实施例一的结构示意图,如图8所示,该电机的运动轨迹的规划装置10,包括:

获取模块11,用于获取用于运动轨迹规划的运动参数;

处理模块12,用于根据所述运动参数判断是否能够采用三段式规划方式进行运动轨迹的规划;

若所述运动参数能够采用三段式规划方式,则所述处理模块12还用于根据所述运动参数,采用所述三段式规划方式进行运动轨迹规划,得到第一轨迹数组。

可选的,所述处理模块12还用于:

若所述运动参数不能采用三段式规划方式,则根据所述运动参数,采用两段式规划方式进行运动轨迹规划,得到第二轨迹数组。

可选的,所述获取模块11还用于:

获取用户选择的运动轨迹规划的约束方式:所述约束方式包括加速度约束或者加加速度约束。

可选的,若所述约束方式为加速度约束,则所述运动参数包括:目标位置、最大速度、最大加速度和最大减速度;

若所述约束方式为加加速度约束,则所述运动参数包括:目标位置、最大速度、最大加加速度和最大减加速度。

在一种具体实现方式中,若所述约束方式为加速度约束,则所述处理模块12具体用于:

根据目标位置Stag,最大速度Vmax,最大加速度Accmax以及最大减速度DAccmax,采用公式(1)计算得到t2;其中,

判断所述t2的值是否大于0;

若所述t2的值大于0,则所述运动参数能够采用三段式规划方式;

若所述t2的值小于或等于0,则所述运动参数不能采用三段式规划方式。

可选的,所述处理模块12具体用于:

采用公式(2):以及公式(3):计算得到t1和t3;

计算t=t1+t2+t3,并根据采样时间ts将t进行等分并形成时间数组:tx[i]=[tx1,tx2,tx3,…,txn],i=1,2,3,…,n,且txi+1-txi=ts;

根据最大速度Vmax以及所述时间数组,采用公式(4):

计算每个txi对应的S(t)的值,得到所述第一轨迹数组。

可选的,所述处理模块12具体用于:

采用公式(2):以及公式(3):计算得到t1和t3;

计算t=t1+t3,并根据采样时间ts将t进行等分并形成时间数组:tx[i]=[tx1,tx2,tx3,…,txn],i=1,2,3,…,n,且txi+1-txi=ts;

根据目标位置Stag、最大速度Vmax、最大加速度Accmax以及最大减速度DAccmax以及所述时间数组,采用公式(5):

计算每个txi对应的S(t)的值,得到所述第二轨迹数组;

其中,ω1_2与Vmax_x数值可通过公式(6):以及公式(7):计算得到,Acc1_2可通过公式(8):Acc1_2=min(Accmax,DAccmax)计算得到。

在另一种实现方式中,若所述约束方式为加加速度约束,则所述处理模块12具体用于:

根据目标位置Stag,最大速度Vmax,最大加加速度Jerkmax以及最大减加速度DJerkmax,采用公式(1)计算得到t2;其中,

判断所述t2的值是否大于0;

若所述t2的值大于0,则所述运动参数能够采用三段式规划方式;

若所述t2的值小于或等于0,则所述运动参数不能采用三段式规划方式。

可选的,所述处理模块12具体用于:

采用公式(2):以及公式(3):计算得到t1和t3;

计算t=t1+t2+t3,并根据采样时间ts将t进行等分并形成时间数组:tx[i]=[tx1,tx2,tx3,…,txn],i=1,2,3,…,n,且txi+1-txi=ts;

根据最大速度Vmax以及所述时间数组,采用公式(4):

计算每个txi对应的S(t)的值,得到所述第一轨迹数组。

可选的,所述处理模块12具体用于:

采用公式(2):以及公式(3):计算得到t1和t3;

计算t=t1+t3,并根据采样时间ts将t进行等分并形成时间数组:tx[i]=[tx1,tx2,tx3,…,txn],i=1,2,3,…,n,且txi+1-txi=ts;

根据目标位置Stag、最大速度Vmax、最大加加速度Jerkmax以及最大减加速度DJerkmax以及所述时间数组,采用公式(5):

计算每个txi对应的S(t)的值,得到所述第二轨迹数组;

其中,ω1_2与Vmax_x数值可通过公式(9):以及公式(10):计算得到,Jerk1_2通过公式(11):Jerk1_2=min(Jerkmax,Djerkmax)计算得到。

上述任一实施例提供的电机的运动轨迹的规划装置,用于实现前述任一方法实施例的技术方案,其实现原理和技术效果类似,在此不再赘述。

本申请还提供一种电子设备,包括:存储器和处理器;

所述存储器用于存储计算机指令;所述处理器用于运行所述存储器存储的所述计算机指令实现前述任一实施例提供的电机的运动轨迹的规划方法。

本申请还提供一种存储介质,包括:可读存储介质和计算机指令,所述计算机指令存储在所述可读存储介质中;所述计算机指令用于实现前述任一实施例提供的电机的运动轨迹的规划方法。

在上述电子设备的具体实现中,应理解,处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application Specific Integrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:只读存储器(英文:read-only memory,缩写:ROM)、RAM、快闪存储器、硬盘、固态硬盘、磁带(英文:magnetic tape)、软盘(英文:floppy disk)、光盘(英文:optical disc)及其任意组合。

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

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