CN109062223A - 控制自动化设备运动路径的方法、装置、设备和储存介质 - Google Patents
控制自动化设备运动路径的方法、装置、设备和储存介质 Download PDFInfo
- Publication number
- CN109062223A CN109062223A CN201811036573.4A CN201811036573A CN109062223A CN 109062223 A CN109062223 A CN 109062223A CN 201811036573 A CN201811036573 A CN 201811036573A CN 109062223 A CN109062223 A CN 109062223A
- Authority
- CN
- China
- Prior art keywords
- match point
- chained list
- spline curve
- automation equipment
- current location
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
Abstract
本发明实施例公开了一种控制自动化设备运动路径的方法、装置、设备和储存介质。该方法包括:获取样条曲线,并将所述样条曲线从所述样条曲线链表的预设节点开始依次插入到所述样条曲线链表中;确定所述样条曲线链表中的样条曲线的拟合点;将所述拟合点从所述拟合点链表的预设节点开始依次存储到所述拟合点链表中;每隔预设时间获取自动化设备当前位置;根据所述拟合点链表中的拟合点以及所述自动化设备的当前位置,控制所述自动化设备的运动。本发明实施例的技术方案不需要消耗更多的内存资源,以实现在嵌入式芯片中控制自动化设备的运动。
Description
技术领域
本发明实施例涉及自动化设备控制技术领域,尤其涉及一种控制自动化设备运动路径的方法、装置、设备和储存介质。
背景技术
控制智能叉车、机器人等自动化设备的运动路径时,需要解算样条曲线的拟合点。现有技术中样条曲线计算拟合点的方法,通常根据样条曲线的控制点和节点向量表,通过递归公式计算系数,再通过系数与控制点根据样条曲线的定义得到样条曲线的拟合点。递归计算的过程中会出现大量的重复计算,存储样条曲线的拟合点也会随之消耗更多的内存资源。而这些自动化设备使用的嵌入式芯片中内存往往很小,当收到样条曲线后无法立刻计算并储存所有的拟合点信息。
发明内容
本发明实施例提供一种控制自动化设备运动路径的方法、装置、设备和储存介质,不需要消耗更多的内存资源,以实现在嵌入式芯片中控制自动化设备的运动。
第一方面,本发明实施例提供了一种控制自动化设备运动路径的方法,包括:
获取样条曲线,并将所述样条曲线从所述样条曲线链表的预设节点开始依次插入到所述样条曲线链表中;
确定所述样条曲线链表中的样条曲线的拟合点;
将所述拟合点从所述拟合点链表的预设节点开始依次存储到所述拟合点链表中;
每隔预设时间获取自动化设备当前位置;
根据所述拟合点链表中的拟合点以及所述自动化设备的当前位置,控制所述自动化设备的运动。
第二方面,本发明实施例还提供了一种控制自动化设备运动路径的装置,包括:
样条曲线处理模块,用于获取样条曲线,并将所述样条曲线从所述样条曲线链表的预设节点开始依次插入到所述样条曲线链表中;
拟合点计算模块,用于确定所述样条曲线链表中的样条曲线的拟合点;
拟合点链表形成模块,用于将所述拟合点从所述拟合点链表的预设节点开始依次存储到所述拟合点链表中;
当前位置获取模块,用于每隔预设时间获取自动化设备当前位置;
运动控制模块,用于根据所述拟合点链表中的拟合点以及所述自动化设备的当前位置,控制所述自动化设备的运动。
第三方面,本发明实施例还提供了一种自动化设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
外部激光传感器,用于获取自动化设备当前位置;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本实施例中任一控制自动化设备运动路径的方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本实施例中任一所述的控制自动化设备运动路径的方法。
本发明实施例的技术方案通过限制拟合点链表的容量,减少内存的占用,解决了智能叉车、机器人等自动化设备使用的嵌入式芯片的内存较小,当收到样条曲线后无法立刻计算并储存所有的拟合点信息的问题,实现自动化设备循迹过程中的运动控制中,在内存资源有限的嵌入式芯片中计算样条曲线拟合点,减少内存资源的占用。
附图说明
图1是本发明实施例一中的一种控制自动化设备运动路径的方法的流程图;
图2是本发明实施例一中的样条曲线链表的示意图;
图3是本发明实施例一中的拟合点链表的示意图;
图4是本发明实施例二中的一种控制自动化设备运动路径的方法的流程图;
图5是本发明实施例三中的一种控制自动化设备运动路径的方法的流程图;
图6是本发明实施例四中的一种控制自动化设备运动路径的装置的示意图;
图7是本发明实施例五中的一种自动化设备的示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种控制自动化设备运动路径的方法的流程图,本实施例可适用于控制自动化设备运动路径的情况,该方法可以由控制自动化设备运动路径的装置来执行,该装置可以由硬件和/或软件来实现,该装置可集成于自动化设备(例如机器人或智能叉车)中,如图1所示,具体包括如下步骤:
步骤101、获取样条曲线,并将样条曲线从样条曲线链表的预设节点开始依次插入到样条曲线链表中。
其中,步骤101为初始化样条曲线链表的过程。样条曲线可以为B样条曲线,因B样条曲线较为平滑,适用于作为自动化设备循迹过程中较为复杂的路线。可选地,样条曲线链表为单向链表。样条曲线链表的结构示意图如图2所示。当最开始通过自动化设备的控制器获取到样条曲线时,样条曲线链表从预设节点开始依次插入样条曲线。可选地,预设节点可以为第1个节点,插入过程从第1个节点开始插入,后续的样条曲线依次插入到后面的节点(例如第2个节点、第3个节点、第4个节点……)中。
样条曲线链表的容量为N(不包含头节点、尾节点),其中N为正整数,其下一个节点指向下一条样条曲线,其存储的数据为样条曲线。其中,样条曲线链表的容量不做限制,并且样条曲线链表不需存满,可以根据控制需求设定。实际情况下,可能样条曲线数目很少(可为一条或几条、几十条),并且样条曲线的存储并不占用过多内存,因此样条曲线链表并不占用过多的内存。本领域技术人员应当理解,所述的下一条样条曲线还可能是随着时间推移下一时刻被计算的样条曲线,与前一时刻的样条曲线实际上是同一条样条曲线。
步骤102、确定样条曲线链表中的样条曲线的拟合点。
其中,当样条曲线链表存在一条或多条样条曲线时,可从样条曲线链表的第一个节点开始取出一条样条曲线,根据样条曲线的节点向量表和样条曲线的控制点通过递归公式得到系数,再通过系数与控制点根据样条曲线的定义公式,得到样条曲线的拟合点。节点向量表为存储样条曲线节点向量的数据结构,可以为数组、列表等。当一条样条曲线全部计算完并用于自动化设备的运动控制之后,若样条曲线链表中仍存在样条曲线,依次从样条曲线链表中取出未使用过的样条曲线,对样条曲线不断地进行解算。
可选地,确定样条曲线链表中的样条曲线的拟合点,包括:
根据样条曲线的节点向量表和样条曲线的控制点,基于deBoor算法,计算样条曲线链表中的样条曲线的拟合点。具体过程如下:给定n+1(n为正整数)个控制点P0,P1,...,Pn,和一个由m+1个(m为正整数)个节点构成的节点向量U={u0,u1,...,um},p次B-样条曲线由这些控制点和节点向量U定义:
其中系数N由如下递归公式定义:
步骤103、将拟合点从拟合点链表的预设节点开始依次存储到拟合点链表中。
其中,步骤103为初始化拟合点链表的过程。拟合点链表的结构示意图如图3所示。可选地,拟合点链表为单向链表。拟合点链表的容量为n(不包含头节点、尾节点),其中n为正整数,其下一个节点指向下一个拟合点,其存储的数据为拟合点。可选地,预设节点可以为第1个节点,插入过程从第1个节点开始插入,后续的拟合点依次插入到后面的节点(例如第2个节点、第3个节点、第4个节点……)中。当获取到的样条曲线较短时,拟合点链表不需要存满。当获取到的样条曲线较长时,可以存满,也可以不存满,可根据控制需求进行设定,需要满足自动化设备运动的需求。例如拟合点链表容量500个,在初始化拟合点链表时,可以存100个节点、200个节点、300个节点、500个节点等等,最多根据拟合点链表的容量存储n个。
步骤104、每隔预设时间获取自动化设备当前位置。
其中,可选地,预设时间可为几毫秒,例如,10毫秒。
步骤105、根据拟合点链表中的拟合点以及自动化设备的当前位置,控制自动化设备的运动。
其中,通过计算拟合点链表中的拟合点以及目标自动化设备的当前位置的偏差控制自动化设备的运动。例如,当自动化的设备的当前位置相对于拟合点位置偏左时,控制自动化设备的方向向右。
本发明实施例的技术方案通过限制拟合点链表的容量,减少内存的占用,解决了智能叉车、机器人等自动化设备使用的嵌入式芯片的内存较小,当收到样条曲线后无法立刻计算并储存所有的拟合点信息的问题,实现自动化设备循迹过程中的运动控制中,在内存资源有限的嵌入式芯片中计算样条曲线拟合点,减少内存资源的占用。
实施例二
图4为本发明实施例二提供的一种控制自动化设备运动路径的方法的流程图,本实施例在上述实施例的基础上,在将拟合点从拟合点链表的预设节点开始依次存储到拟合点链表中,还包括:根据芯片的内存大小确定拟合点链表的容量。每隔预设时间获取自动化设备当前位置,包括:通过外部激光传感器确定自动化设备当前位置。如图4所示,具体包括如下步骤:
步骤201、获取样条曲线,并将样条曲线从样条曲线链表的预设节点开始依次插入到样条曲线链表中。
步骤202、确定样条曲线链表中的样条曲线的拟合点。
步骤203、根据芯片的内存大小确定拟合点链表的容量。
可选地,由于程序其他部分还需要内存占用,所以拟合点链表所占的内存占用大约为芯片内存的一半。可根据芯片内存的大约一半对拟合点链表的容量进行设定。例如,当采用32KB内存的芯片时,拟合点链表的容量可从100至500中选择。当采用32KB内存的芯片时,其中拟合点链表的一个节点占用的内存约为32个字节,500个节点约为16KB内存。当采用更大一些(例如64KB)内存的芯片时,同样可根据芯片内存的大约一半对拟合点链表的容量进行设定。
步骤204、将拟合点从拟合点链表的预设节点开始依次存储到拟合点链表中。
步骤205、每隔预设时间获取自动化设备当前位置。
可选地,每隔预设时间获取自动化设备当前位置,包括:通过外部激光传感器确定自动化设备当前位置。
其中,外部激光传感器可向反光物体发射光束,根据采集反射而回的激光信号,以此确定自动化设备的当前坐标和角度。确定自动化设备当前位置的方法可以采用三角定位方法。
步骤206、根据拟合点链表中的拟合点以及自动化设备的当前位置,控制自动化设备的运动。
本实施例的技术方案根据芯片的内存大小确定拟合点链表的容量,将拟合点从拟合点链表的预设节点开始依次存储到拟合点链表中,采用这一方式能够控制芯片被占用内存大小,从而能够在资源有限的嵌入式设备中根据样条曲线的拟合点以及自动化设备的当前位置,控制自动化设备的运动。
实施例三
图5为本发明实施例三提供的一种控制自动化设备运动路径的方法的流程图,本实施例在上述实施例的基础上,在根据拟合点链表中的拟合点以及自动化设备的当前位置,控制自动化设备的运动之时,通过删除已经用过的样条曲线并插入获得的新样条曲线更新样条曲线链表、删除已经用过的拟合点和/或删除不符合预设投影点条件的拟合点并插入新的拟合点更新拟合点链表,这一过程动态更新样条曲线链表和拟合点链表。如图5所示,具体包括如下步骤:
步骤301、获取样条曲线,并将样条曲线从样条曲线链表的预设节点开始依次插入到样条曲线链表中。
步骤302、确定样条曲线链表中的样条曲线的拟合点。
步骤303、根据芯片的内存大小确定拟合点链表的容量。
步骤304、将拟合点从拟合点链表的预设节点开始依次存储到拟合点链表中。
步骤305、每隔预设时间获取自动化设备当前位置。
步骤306、根据拟合点链表中的拟合点以及自动化设备的当前位置,控制自动化设备的运动。
步骤307、删除样条曲线链表中自动化设备经过的样条曲线。
步骤308、当获取到新的样条曲线时,从样条曲线链表的预设节点插入到样条曲线链表中。
可选地,删除样条曲线链表中自动化设备经过的样条曲线可从第一个节点删除,余下的样条曲线依次补入到相应节点。从删除样条曲线链表中删除自动化设备经过的样条曲线之后将其余自动化设备未经过的样条曲线相应向前移动之后的末端节点作为预设节点,从该预设节点进行插入。
其中,步骤308中新的样条曲线为获取到的自动化设备未经过的样条曲线。
步骤309、删除自动化设备已经通过的拟合点和/或删除不符合预设投影点条件的拟合点。
其中,通过计算拟合点与自动化设备当前位置的距离,判断拟合点是否是不符合预设投影点条件的拟合点,若拟合点与自动化设备当前位置的距离不在预设距离内,则判断拟合点不符合预设投影点条件。可选地,预设距离可为几十毫米,例如,33毫米。
可选地,可以每次删除一个拟合点,也可以每次删除多个拟合点。
步骤310、当确定出样条曲线的新的拟合点时,从拟合点链表的预设节点插入到拟合点链表中。
可选地,删除自动化设备已经通过的拟合点和/或删除不符合预设投影点条件的拟合点之后,可以计算新的拟合点(即自动化设备未经过的拟合点),相应的补入余下未使用过的拟合点,并将新的拟合点插入到拟合点链表的末端节点,将此时的末端节点作为预设节点由此插入计算的拟合点,从而保持拟合点链表节点数目在一定数量内不变,同时这一过程删除及插入节点的数目需要满足自动化设备正常运动的需求据此进行调节,以保证自动化设备不脱离轨道。例如当拟合点链表容量为500个时,可以保持拟合点链表为100个节点、200个节点等等。这一过程删除时可从拟合点链表的第一个节点删除一个或多个节点,后续节点依次补入所删除的节点,相应的在拟合点链表的末端节点插入相应删除数目的节点,而且这一过程可以将要使用的拟合点移动到拟合点链表的第1个节点。例如假设拟合点链表容量为200个,并且设定拟合点链表保持存储100个节点,当删除5个拟合点时,后面的节点(从第6个节点开始)依次向前移动5个节点,再计算5个新的拟合点,这时第96个节点的位置相当于末端节点,从第96个节点开始依次插入这5个新的拟合点到拟合点链表中,原来的第6个节点此时移动到了第1个节点的位置,可以用这一节点作为当前节点用于运动控制,相当于每次都取拟合点链表的第1个节点用于运动控制。再例如假设拟合点链表容量为200个,并且初始状态拟合点链表存满了200个节点,当删除5个拟合点时,后面的节点(从第6个节点开始)依次向前移动5个节点,再计算5个新的拟合点,这时第196个节点的位置相当于末端节点,从第196个节点开始依次插入这5个新的拟合点到拟合点链表中,原来的第6个节点此时移动到了第1个节点的位置,可以用这一节点作为当前节点用于运动控制,相当于每次都取拟合点链表的第1个节点用于运动控制。当计算到一条样条曲线的最后位置或者样条曲线较短时,由于可能没有足够的拟合点,可不必维持拟合点链表在一定数量内不变,直接依次取出拟合点用于控制自动化设备的运动。
其中,步骤306与步骤307、或步骤309的任一步骤可同时执行,步骤307和步骤309可同时执行,步骤308与步骤310可同时执行;在当前时刻所述样条曲线链表和所述拟合点链表的存储情况为未全部存满时,所述步骤306可以与步骤307、308、309、310四个步骤中的任意一个步骤、任意两个步骤、任意三个步骤同时执行。
在上述技术方案的基础上,确定样条曲线链表中的样条曲线的拟合点,包括:
采用第一条线程计算样条曲线的拟合点;
相应的,根据拟合点链表中的拟合点以及自动化设备的当前位置,控制自动化设备的运动,包括:
采用第二条线程从拟合点链表中的预设节点取出拟合点,并根据符合预设投影点条件的拟合点控制自动化设备的运动。可选地,由于步骤309至步骤310的过程可以将要使用的拟合点移动到拟合点链表的第1个节点,所以预设节点可以为拟合点链表的第1个节点,通过判断拟合点链表的第1个节点是否满足预设投影点条件,若满足,则根据该拟合点以及自动化设备的当前位置进行运动控制。
在上述技术方案的基础上,根据符合预设投影点条件的拟合点以及自动化设备的当前位置,控制自动化设备的运动,包括:
计算拟合点与自动化设备当前位置的距离;
若拟合点与自动化设备当前位置的距离在预设距离内,则判断拟合点为符合预设投影点条件;
根据符合预设投影点条件的拟合点以及自动化设备的当前位置,控制自动化设备的运动。
可选地,预设距离可为几十毫米,例如,33毫米。
本实施例的技术方案,通过删除已经用过的样条曲线并插入获得的新样条曲线更新样条曲线链表,删除已经用过的拟合点和/或删除不符合预设投影点条件的拟合点并插入新的拟合点更新拟合点链表,这一过程动态更新样条曲线链表和拟合点链表,减少了内存的占用,能够边计算样条曲线的拟合点边控制自动化设备的运动,不需要更大的芯片运算能力,以实现在内存资源有限的嵌入式芯片中计算样条曲线拟合点,实现样条曲线的拟合点的实时计算和运动控制。
实施例四
图6为本发明实施例所提供的控制自动化设备运动路径的装置的结构示意图,可执行本发明任意实施例所提供的控制自动化设备运动路径的方法。该装置的具体结构如下:样条曲线处理模块41、拟合点计算模块42、拟合点链表形成模块43、当前位置获取模块44和运动控制模块45。
样条曲线处理模块41,用于获取样条曲线,并将样条曲线从样条曲线链表的预设节点开始依次插入到样条曲线链表中;
拟合点计算模块42,用于确定样条曲线链表中的样条曲线的拟合点;
拟合点链表形成模块43,用于将拟合点从拟合点链表的预设节点开始依次存储到拟合点链表中;
当前位置获取模块44,用于每隔预设时间获取自动化设备当前位置;
运动控制模块45,用于根据拟合点链表中的拟合点以及自动化设备的当前位置,控制自动化设备的运动。
在上述实施例的基础上,拟合点计算模块42具体用于,根据样条曲线的节点向量表和样条曲线的控制点,基于deBoor算法,计算样条曲线链表中的样条曲线的拟合点。
可选地,控制自动化设备运动路径的装置还包括:拟合点链表设置模块和链表更新模块。
拟合点链表设置模块,用于在将拟合点从拟合点链表的预设节点开始依次存储到拟合点链表中,根据芯片的内存大小确定拟合点链表的容量。
链表更新模块,用于在根据拟合点链表中的拟合点以及自动化设备的当前位置,控制自动化设备的运动之时,删除样条曲线链表中自动化设备经过的样条曲线;当获取到新的样条曲线时,从样条曲线链表的预设节点插入到样条曲线链表中;删除自动化设备已经通过的拟合点和/或删除不符合预设投影点条件的拟合点;当确定出样条曲线的新的拟合点时,从拟合点链表的预设节点插入到拟合点链表中。
可选地,拟合点计算模块42具体用于,采用第一条线程计算样条曲线的拟合点;
相应的,运动控制模块45具体用于,采用第二条线程从拟合点链表中的预设节点取出拟合点;根据符合预设投影点条件的拟合点以及自动化设备的当前位置,控制自动化设备的运动。
可选地,运动控制模块45具体用于,根据符合预设投影点条件的拟合点以及自动化设备的当前位置,控制自动化设备的运动,计算拟合点与自动化设备当前位置的距离;若拟合点与自动化设备当前位置的距离在预设距离内,则判断拟合点为符合预设投影点条件;根据符合预设投影点条件的拟合点以及自动化设备的当前位置,控制自动化设备的运动。
可选地,当前位置获取模块44,具体用于,通过外部激光传感器确定自动化设备当前位置。
本发明实施例的技术方案通过限制拟合点链表的容量,减少内存的占用,解决了智能叉车、机器人等自动化设备使用的嵌入式芯片的内存较小,当收到样条曲线后无法立刻计算并储存所有的拟合点信息的问题,实现自动化设备循迹过程中的运动控制中,在内存资源有限的嵌入式芯片中计算样条曲线拟合点,减少内存资源的占用。
本发明实施例所提供的控制自动化设备运动路径的装置可执行本发明任意实施例所提供的控制自动化设备运动路径的方法,具备控制自动化设备运动路径的方法相应的功能模块和有益效果。
实施例五
图7为本发明实施例三提供的一种自动化设备的结构示意图,如图7所示,该自动化设备包括处理器51、存储器52和外部激光传感器53;自动化设备中处理器51的数量可以是一个或多个,图7中以一个处理器51为例;自动化设备中的处理器51、存储器52和外部激光传感器53可以通过总线或其他方式连接,图7中以通过总线连接为例。
存储器52作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的控制自动化设备运动路径方法对应的程序指令/模块(例如,控制自动化设备运动路径装置中的样条曲线处理模块41、拟合点计算模块42、拟合点链表形成模块43、当前位置获取模块44和运动控制模块45)。处理器51通过运行存储在存储器52中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的控制自动化设备运动路径方法。
存储器52可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器52可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器52可进一步包括相对于处理器51远程设置的存储器,这些远程存储器可以通过网络连接至自动化设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
外部激光传感器53,用于获取自动化设备当前位置。可选地,所述自动化设备是叉车,更可选地,所述叉车为无人叉车,更可选地,所述无人叉车为激光导航叉车。
实施例六
本发明实施例六还提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种控制自动化设备运动路径的方法,该方法包括:
获取样条曲线,并将样条曲线从样条曲线链表的预设节点开始依次插入到样条曲线链表中;
确定样条曲线链表中的样条曲线的拟合点;
将拟合点从拟合点链表的预设节点开始依次存储到拟合点链表中;
每隔预设时间获取自动化设备当前位置;
根据拟合点链表中的拟合点以及自动化设备的当前位置,控制自动化设备的运动。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上的方法操作,还可以执行本发明任意实施例所提供的控制自动化设备运动路径的方法的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种控制自动化设备运动路径的方法,其特征在于,包括:
获取样条曲线,并将所述样条曲线从所述样条曲线链表的预设节点开始依次插入到所述样条曲线链表中;
确定所述样条曲线链表中的样条曲线的拟合点;
将所述拟合点从所述拟合点链表的预设节点开始依次存储到所述拟合点链表中;
每隔预设时间获取自动化设备当前位置;
根据所述拟合点链表中的拟合点以及所述自动化设备的当前位置,控制所述自动化设备的运动。
2.根据权利要求1所述的控制自动化设备运动路径的方法,其特征在于,所述确定所述样条曲线链表中的样条曲线的拟合点,包括:
根据所述样条曲线的节点向量表和所述样条曲线的控制点,基于deBoor算法,计算所述样条曲线链表中的样条曲线的拟合点。
3.根据权利要求1所述的控制自动化设备运动路径的方法,其特征在于,在所述将所述拟合点从所述拟合点链表的预设节点开始依次存储到所述拟合点链表中之前,还包括:
根据芯片的内存大小确定所述拟合点链表的容量。
4.根据权利要求1所述的控制自动化设备运动路径的方法,其特征在于,在所述根据所述拟合点链表中的拟合点以及所述自动化设备的当前位置,控制所述自动化设备的运动之时,还包括:
删除所述样条曲线链表中所述自动化设备经过的样条曲线;
当获取到新的样条曲线时,从所述样条曲线链表的预设节点插入到所述样条曲线链表中;
删除所述自动化设备已经通过的拟合点和/或删除不符合预设投影点条件的拟合点;
当确定出所述样条曲线的新的拟合点时,从所述拟合点链表的预设节点插入到所述拟合点链表中。
5.根据权利要求1所述的控制自动化设备运动路径的方法,其特征在于,所述确定所述样条曲线链表中的样条曲线的拟合点,包括:
采用第一条线程计算所述样条曲线的拟合点;
相应的,所述根据所述拟合点链表中的拟合点以及所述自动化设备的当前位置,控制所述自动化设备的运动,包括:
采用第二条线程从所述拟合点链表中的预设节点取出所述拟合点;
根据符合预设投影点条件的拟合点以及所述自动化设备的当前位置,控制所述自动化设备的运动。
6.根据权利要求5所述的控制自动化设备运动路径的方法,其特征在于,所述根据符合预设投影点条件的拟合点以及所述自动化设备的当前位置,控制所述自动化设备的运动,包括:
计算所述拟合点与所述自动化设备当前位置的距离;
若所述拟合点与所述自动化设备当前位置的距离在预设距离内,则判断所述拟合点为符合预设投影点条件;
根据符合所述预设投影点条件的拟合点以及所述自动化设备的当前位置,控制所述自动化设备的运动。
7.根据权利要求1所述的控制自动化设备运动路径的方法,其特征在于,所述每隔预设时间获取自动化设备当前位置,包括:
通过外部激光传感器确定所述自动化设备当前位置。
8.一种控制自动化设备运动路径的装置,其特征在于,包括:
样条曲线处理模块,用于获取样条曲线,并将所述样条曲线从所述样条曲线链表的预设节点开始依次插入到所述样条曲线链表中;
拟合点计算模块,用于确定所述样条曲线链表中的样条曲线的拟合点;
拟合点链表形成模块,用于将所述拟合点从所述拟合点链表的预设节点开始依次存储到所述拟合点链表中;
当前位置获取模块,用于每隔预设时间获取自动化设备当前位置;
运动控制模块,用于根据所述拟合点链表中的拟合点以及所述自动化设备的当前位置,控制所述自动化设备的运动。
9.一种自动化设备,其特征在于,所述自动化设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
外部激光传感器,用于获取自动化设备当前位置;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的控制自动化设备运动路径的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的控制自动化设备运动路径的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811036573.4A CN109062223A (zh) | 2018-09-06 | 2018-09-06 | 控制自动化设备运动路径的方法、装置、设备和储存介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811036573.4A CN109062223A (zh) | 2018-09-06 | 2018-09-06 | 控制自动化设备运动路径的方法、装置、设备和储存介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109062223A true CN109062223A (zh) | 2018-12-21 |
Family
ID=64760800
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811036573.4A Pending CN109062223A (zh) | 2018-09-06 | 2018-09-06 | 控制自动化设备运动路径的方法、装置、设备和储存介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109062223A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11420649B2 (en) * | 2020-03-24 | 2022-08-23 | Here Global B.V. | Method, apparatus, and computer program product for generating turn paths through an intersection |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101224576A (zh) * | 2008-01-25 | 2008-07-23 | 北京邮电大学 | 磁控溅射喷涂机器人示教轨迹优化控制方法 |
CN101225504A (zh) * | 2008-01-25 | 2008-07-23 | 北京邮电大学 | 磁控溅射曲面喷涂三维轨迹智能控制方法 |
CN101776882A (zh) * | 2010-01-19 | 2010-07-14 | 东莞市大族粤铭激光科技有限公司 | 激光切割加工程序的生成方法 |
CN101781833A (zh) * | 2010-02-10 | 2010-07-21 | 佛山市源田床具机械有限公司 | 一种数控绗缝加工程序的生成方法 |
CN102062587A (zh) * | 2010-12-13 | 2011-05-18 | 上海大学 | 基于激光传感器的多移动机器人位姿测定方法 |
US20160155265A1 (en) * | 2014-11-28 | 2016-06-02 | Hon Hai Precision Industry Co., Ltd. | Electronic device and point cloud sampling method |
CN106651987A (zh) * | 2016-10-10 | 2017-05-10 | 腾讯科技(深圳)有限公司 | 路径规划方法及装置 |
CN107247805A (zh) * | 2014-12-02 | 2017-10-13 | 厦门飞游信息科技有限公司 | 一种基于a*算法的路径搜索方法、设备及计算终端 |
-
2018
- 2018-09-06 CN CN201811036573.4A patent/CN109062223A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101224576A (zh) * | 2008-01-25 | 2008-07-23 | 北京邮电大学 | 磁控溅射喷涂机器人示教轨迹优化控制方法 |
CN101225504A (zh) * | 2008-01-25 | 2008-07-23 | 北京邮电大学 | 磁控溅射曲面喷涂三维轨迹智能控制方法 |
CN101776882A (zh) * | 2010-01-19 | 2010-07-14 | 东莞市大族粤铭激光科技有限公司 | 激光切割加工程序的生成方法 |
CN101781833A (zh) * | 2010-02-10 | 2010-07-21 | 佛山市源田床具机械有限公司 | 一种数控绗缝加工程序的生成方法 |
CN102062587A (zh) * | 2010-12-13 | 2011-05-18 | 上海大学 | 基于激光传感器的多移动机器人位姿测定方法 |
US20160155265A1 (en) * | 2014-11-28 | 2016-06-02 | Hon Hai Precision Industry Co., Ltd. | Electronic device and point cloud sampling method |
CN107247805A (zh) * | 2014-12-02 | 2017-10-13 | 厦门飞游信息科技有限公司 | 一种基于a*算法的路径搜索方法、设备及计算终端 |
CN106651987A (zh) * | 2016-10-10 | 2017-05-10 | 腾讯科技(深圳)有限公司 | 路径规划方法及装置 |
Non-Patent Citations (2)
Title |
---|
贾杰: "基于三角Bezier曲面的造型系统研究", 《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》 * |
郭景峰 等: "基于DXF文件的曲线拟合方法的设计与实现", 《机床与液压》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11420649B2 (en) * | 2020-03-24 | 2022-08-23 | Here Global B.V. | Method, apparatus, and computer program product for generating turn paths through an intersection |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109115226B (zh) | 基于跳点搜索的多机器人冲突避免的路径规划方法 | |
CN109976350B (zh) | 多机器人调度方法、装置、服务器及计算机可读存储介质 | |
CN109947120B (zh) | 仓储系统中的路径规划方法 | |
US20200016754A1 (en) | Executing centralized and decentralized controlled plans collaboratively by autonomous robots | |
US20150266182A1 (en) | Method And An Apparatus For Automatically Generating A Collision Free Return Program For Returning A Robot From A Stop Position To A Predefined Restart Position | |
CN109816696A (zh) | 一种机器人定位与建图方法、计算机装置及计算机可读存储介质 | |
CN107913039B (zh) | 用于清洁机器人的区块选择方法、装置及机器人 | |
EP3568334A1 (en) | System, method and non-transitory computer readable storage medium for parking vehicle | |
CN109990782A (zh) | 一种避开障碍物的方法及设备 | |
CN112090078A (zh) | 游戏角色移动控制方法、装置、设备和介质 | |
CN113867347A (zh) | 机器人路径规划方法、装置、管理系统及计算机存储介质 | |
CN109062223A (zh) | 控制自动化设备运动路径的方法、装置、设备和储存介质 | |
CN113378750A (zh) | 一种充电桩对接方法、装置、计算机设备和存储介质 | |
CN103631261B (zh) | 信息处理方法和装置 | |
CN109822549A (zh) | 一种机器人编程方法、装置及控制器 | |
CN114612774A (zh) | 目标检测及其模型构建方法、电子设备和存储介质 | |
CN113568400A (zh) | 一种机器人控制方法、装置、电子设备及存储介质 | |
US20140347355A1 (en) | Ray tracing core and method for processing ray tracing | |
CN116625378B (zh) | 一种跨区域路径规划方法及系统、存储介质 | |
Bobkov et al. | Vision-based navigation method for a local maneuvering of the autonomous underwater vehicle | |
CN113021329B (zh) | 一种机器人运动控制方法、装置、可读存储介质及机器人 | |
CN115779424B (zh) | 一种导航网格寻路方法、装置、设备及介质 | |
Stefańczyk et al. | Handling of asynchronous data flow in robot perception subsystems | |
CN114103938A (zh) | 控制车辆纵向运动的方法、装置及存储介质 | |
CN110118559B (zh) | 一种基于变概率策略的导览机器人动态避障方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20220603 |