CN107807667B - 航点获取方法、装置及无人机 - Google Patents
航点获取方法、装置及无人机 Download PDFInfo
- Publication number
- CN107807667B CN107807667B CN201711230910.9A CN201711230910A CN107807667B CN 107807667 B CN107807667 B CN 107807667B CN 201711230910 A CN201711230910 A CN 201711230910A CN 107807667 B CN107807667 B CN 107807667B
- Authority
- CN
- China
- Prior art keywords
- waypoint
- route
- waypoints
- preset
- point
- 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.)
- Active
Links
Images
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/10—Simultaneous control of position or course in three dimensions
- G05D1/101—Simultaneous control of position or course in three dimensions specially adapted for aircraft
Abstract
本发明涉及飞行控制技术领域,具体而言,涉及一种航点获取方法、装置及无人机所述方法通过获取第一航线上的多个第一航点,依据多个第一航点进行曲线拟合,得到曲线航线,以曲线航线作为第二航线,根据第二航线确定多个第二航点。该方法能够得到平稳的航点。
Description
技术领域
本发明涉及飞行控制技术领域,具体而言,涉及一种航点获取方法、装置及无人机。
背景技术
航点是飞机飞行的一个目的地,控制飞机飞行到达一个或多个航点,完成一次飞行。确定航点对于飞机的飞控是基本的步骤,航点对于飞机的安全飞行有着重要影响。
目前,确定航点方法是在地面站上手动选出航点,飞机在飞行过程中,依据航点的顺序飞行。但是,这种方法确定的航点,飞机在沿着这些航点飞行的过程中机身不平稳,存在安全隐患。
发明内容
本发明的目的在于提供一种航点获取方法、装置及无人机,其旨在改善现有技术中存在的上述问题。
本发明提供一种技术方案:
本发明实施例提供的一种航点获取方法,所述方法包括:获取第一航线上的多个第一航点;依据所述多个第一航点进行曲线拟合,得到曲线航线,以所述曲线航线作为第二航线;根据所述第二航线确定多个第二航点。
本发明实施例还提供了一种航点获取装置,所述装置包括:获取第一航点模块,用于获取第一航线上的多个第一航点;生成第二航线模块,用于依据所述多个第一航点进行曲线拟合,得到曲线航线,以所述曲线航线作为第二航线;确定第二航点模块,用于根据所述第二航线确定多个第二航点。
本发明实施例还提供了一种无人机,所述无人机包括:处理器;存储器,所述存储器与所述处理器电连接;以及航点获取装置,所述航点获取装置存储于所述存储器中并包括一个或多个由所述处理器执行的软件功能模组,其包括:获取第一航点模块,用于获取第一航线上的多个第一航点;生成第二航线模块,用于依据所述多个第一航点进行曲线拟合,得到曲线航线,以所述曲线航线作为第二航线;确定第二航点模块,用于根据所述第二航线确定多个第二航点。
本发明实施例提出的一种航点获取方法、装置及无人机,所述方法通过获取折线的第一航线上的多个第一航点,依据多个第一航点进行曲线拟合,得到一条或多条曲线,根据所述一条或多条曲线得到曲线航线,以曲线航线作为第二航线,求取第二航线上的多个点作为第二航点,其中,第二航线上的多个点是第二航线上的特征点,例如第二航线上的拐点,或者是具有一定距离的点。该方法能够得到平稳的航点。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的一种无人机100的方框结构示意图。
图2示出了本发明实施例中提供的一种航点获取方法的流程图。
图3示出了步骤S200包括的子步骤的流程图。
图4示出了步骤S300包括的子步骤的流程图。
图5示出了步骤S324的流程图。
图6示出了本发明实施例中提供的一种航点获取装置200的方框结构示意图。
图7示出了生成第二航线模块220的方框结构示意图。
图8示出了本发明实施例提供的确定第二航点模块230的一种方框结构示意图。
图9示出了生成第二航点单元240的方框结构示意图。
图标:100-无人机;101-存储器;102-处理器;103-外设接口;105-显示屏;200-航点获取装置;210-获取第一航点模块;220-生成第二航线模块;221-生成航点集合单元;222-曲线拟合单元;223-生成曲线航线单元;230-确定第二航点模块;231-获取步长单元;232-获取航线点单元;233-求取切线单元;234-判断切线角度单元;235-确定第二航点单元;236-获取拐点单元;237-确定拐点切线单元;238-判断拐点单元;239-确定预设航点单元;240-生成第二航点单元;241-求取航点距离子单元;242-确定第二航点子单元。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
请参阅图1,图1为本发明实施例提供的一种无人机100的方框结构示意图。在本发明实施例中,无人机100包括航点获取装置200、存储器101、处理器102、外设接口103和显示屏105。
所述存储器101、处理器102、外设接口103和显示屏105各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述航点获取装置200包括至少一个可以软件或固件(firmware)的形式存储于所述存储器101中或固化在所述无人机100的操作系统(operating system,OS)中的软件功能模块。所述处理器102用于执行存储器101中存储的可执行模块,例如所述航点获取装置200包括的软件功能模块或计算机程序。
其中,存储器101可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器101用于存储程序,所述处理器102在接收到执行指令后,执行所述程序,本发明任一实施例揭示的流程定义的服务器所执行的方法可以应用于处理器102中,或者由处理器102实现。
处理器102可以是一种集成电路芯片,具有信号处理能力。上述的处理器102可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)、语音处理器以及视频处理器等;还可以是数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器102也可以是任何常规的处理器等。
所述外设接口103用于将各种输入/输出装置耦合至处理器102以及存储器101。在一些实施例中,外设接口103以及处理器102可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。
显示屏105用于实现用户与无人机100之间的交互,具体可以是,但不限于显示屏105将无人机100的航点、航线等进行显示。
航点获取装置200用于获取航点。航点获取装置200获取航点的方法可以是如下所述方法。
请参阅图2,图2示出了本发明实施例中提供的一种航点获取方法的流程图。以下对在本发明实施例中提供的一种航点获取方法进行详细阐述。一种航点获取方法包括:
步骤S100:获取第一航线上的多个第一航点。
在本发明实施例中,第一航线是预先确定的,可以是电子生成的或者是人工确定的。第一航点是第一航线上的航点,可以是人工确定的或者是电子生成的。
步骤S200:依据多个第一航点进行曲线拟合,得到曲线航线,以曲线航线作为第二航线。
在本发明实施例中,步骤S200包括步骤S210、步骤S220和步骤S230三个子步骤。具体的,请参阅图3,图3示出了步骤S200包括的子步骤的流程图。以下,对步骤S210、步骤S220和步骤S230进行详细阐述。
步骤S210:判断多个第一航点的数量是否大于预设值,如果多个第一航点的数量大于预设值,则将多个第一航点按照预设值分成多个航点集合,其中,每个航点集合包括多个航点。
步骤S220:将多个航点集合内的多个航点进行曲线拟合,得到多条拟合曲线。
在本发明实施例中,如果多个第一航点的数量不大于预设值,则采用一种曲线拟合方法对多个第一航点进行曲线拟合,得到步骤S200中所述的曲线航线,以该曲线航线作为第二航线。
如果多个第一航点的数量大于预设值,则将多个第一航点按照预设值分成多个航点集合,其中,每个航点集合包括多个航点,可以采用相同的曲线拟合方法对多个航点集合内的多个航点进行曲线拟合,也可以采用不同的曲线拟合方法对多个航点内的多个航点进行曲线拟合,每一个航点集合得到一条拟合曲线。
步骤S230:将多条拟合曲线连接,得到曲线航线,以曲线航线作为第二航线。
在本发明实施例中,将多条拟合曲线连接,得到曲线航线的步骤,可以是,将多条拟合曲线按照顺序采用曲线连接,也可以是采用直线段连接,还可以是通过将多条拟合曲线的端点采用曲线拟合方法拟合,从而实现将多条拟合去向连接,得到曲线航线,以曲线航线作为第二航线。
步骤S300:根据第二航线确定多个第二航点。
在本发明实施例中,步骤S300包括步骤S310~步骤S314五个子步骤以及步骤S320~步骤S324五个子步骤。请参阅图4,图4示出了步骤S300包括的子步骤的流程图。以下对步骤S310~步骤S314进行详细阐述。
步骤S310:获取取点步长。
在本发明实施例中,取点步长不大于第二航线的长度。
步骤S311:根据取点步长获取第二航线上的多个点。
步骤S312:求取每个点在第二航线上的切线,得到多条切线。
在本发明实施例中,取出的多个点均在第二曲线上,每一个点有一条以该点为切点的第二曲线的切线,如此,得到多条切线。多条切线的方向、角度和截距可以相同,也可以不同。
步骤S313:判断每条切线的角度是否在预设范围内,得到第一判断结果。
步骤S314:根据所述第一判断结果,如果所述切线的角度在预设范围内,则根据该切线对应的切点得到第二航点,如此,得到多个第二航点。
在本发明实施例中,如果第二曲线的切线的角度过大或过小,都有可能是无人机在该切线所在第二曲线上的切点时的飞行状态不平稳,通过将切线的角度设定在预设范围内,防止选取到导致无人机飞行不平稳的点作为航点,保证了无人机的平稳飞行。
在本发明实施例中,第二航线是连续的,则可通过根据第二航线上的拐点得到第二航点。具体的,如下所述的步骤S320~步骤S324。
步骤S320:获取第二航线的多个拐点。
拐点是指在数学上指改变曲线向上或向下方向的点,直观地说拐点是使切线穿越曲线的点。在本发明实施例中,拐点是指改变第二航线向上或向下方向的点。通过求取曲线上点的二阶导数得到以及一阶导数得到。
步骤S321:求取第二航线中多个拐点处的切线,得到多条拐点切线。
步骤S322:判断每条拐点切线的角度是否在预设范围内,得到第二判断结果。
步骤S323:根据第二判断结果,如果拐点切线的角度在预设范围内,则将该拐点作为预设航点,如此,得到多个预设航点。
步骤S324:根据多个预设航点确定第二航点。
请参阅图5,图5示出了步骤S324的流程图。在本发明实施例中,根据多个预设航点确定第二航点的步骤包括:
步骤S3241:求取相邻的两个所述预设航点之间的距离;
步骤S3242:判断距离是否大于或者等于设定值,如果距离大于或者等于设定值,则以预设航点作为第二航点;如果距离小于设定值,则判断该两个预设航点是否是航线起点或者航线终点,如果不是航线起点或者不是航线终点,则取其中一个预设航点作为第二航点。
在本发明实施例中,作为一种实施方式,可以通过执行步骤S100、步骤S200以及步骤S300中的步骤S310~步骤S314,具体的,步骤S314包括:根据第一判断结果,如果切线的角度在预设范围内,则将该切线对应的切点作为第二航点,如此,得到多个第二航点。
作为另一种实施方式,可以通过执行步骤S100、步骤S200以及步骤S300中的步骤S320~步骤S324,得到第二航点。
作为又一种实施方式,可以通过执行步骤S100、步骤S200以及步骤S310~步骤S324,得到第二航点。具体的,流程如下所述。
步骤S100:获取第一航线上的多个第一航点。
步骤S200:依据多个第一航点进行曲线拟合,得到曲线航线,以曲线航线作为第二航线。
步骤S300:根据第二航线确定多个第二航点。其中,步骤S300包括:
步骤S310:获取取点步长。
步骤S311:根据取点步长获取第二航线上的多个点。
步骤S312:求取每个点在第二航线上的切线,得到多条切线。
步骤S313:判断每条切线的角度是否在预设范围内,得到第一判断结果。
步骤S314:根据第一判断结果,如果所述切线的角度在预设范围内,则取出该切线对应的切点,得到多个切点。
步骤S320:获取第二航线的多个拐点。
步骤S321:求取第二航线中多个拐点处的切线,得到多条拐点切线。
步骤S322:判断每条拐点切线的角度是否在预设范围内,得到第二判断结果。
步骤S323:根据第二判断结果,如果拐点切线的角度在预设范围内,则将该拐点作为预设航点,如此,得到多个预设航点。
步骤S324:根据多个预设航点确定第二航点。具体的,步骤S324分解为:
步骤S3241:求取预设航点以及步骤S314所述的切点之间的距离。
步骤S3242:判断距离是否大于或者等于设定值,如果距离大于或者等于设定值,则以预设航点或\和切点作为第二航点;如果距离小于设定值,则判断该两个预设航点或\和切点是否是航线起点或者航线终点,如果不是航线起点或者不是航线终点,则取其中一个预设航点或\和切点作为第二航点。
作为又一种实施方式,可以通过执行步骤S100、步骤S200以及步骤S300,得到第二航点。具体的,步骤S300流程如下所述。
步骤S320:获取第二航线的多个拐点。
步骤S321:求取第二航线中多个拐点处的切线,得到多条拐点切线。
步骤S322:判断每条拐点切线的角度是否在预设范围内,得到第二判断结果。
步骤S323:根据第二判断结果,如果拐点切线的角度在预设范围内,则将该拐点作为预设航点,如此,得到多个预设航点。
步骤S310:获取取点步长。
步骤S311:根据取点步长获取第二航线上的多个点。
步骤S312:求取每个点在第二航线上的切线,得到多条切线。
步骤S313:判断每条切线的角度是否在预设范围内,得到第一判断结果。
步骤S314:根据第一判断结果,如果所述切线的角度在预设范围内,则取出该切线对应的切点,得到多个切点。
步骤S324:根据多个预设航点确定第二航点。具体的,步骤S324分解为:
步骤S3241:求取预设航点以及步骤S314所述的切点之间的距离。
步骤S3242:判断距离是否大于或者等于设定值,如果距离大于或者等于设定值,则以预设航点或\和切点作为第二航点;如果距离小于设定值,则判断该两个预设航点或\和切点是否是航线起点或者航线终点,如果不是航线起点或者不是航线终点,则取其中一个预设航点或\和切点作为第二航点。
在本发明实施例中,航点获取方法可以通过航点获取装置200实现。请参阅图6,图6示出了本发明实施例中提供的一种航点获取装置200的方框结构示意图。在本发明实施例中,航点获取装置200包括获取第一航点模块210、生成第二航线模块220和确定第二航点模块230。获取第一航点模块210与生成第二航线模块220连接,生成第二航线模块220与确定第二航点模块230连接。以下,对获取第一航点模块210、生成第二航线模块220和确定第二航点模块230进行阐述。
获取第一航点模块210,用于获取第一航线上的多个第一航点。在本发明实施例中,获取第一航点模块210可以用于执行步骤S100。步骤S100所述内容适用于获取第一航点模块210,在此不再赘述。
生成第二航线模块220,用于依据多个第一航点进行曲线拟合,得到曲线航线,以曲线航线作为第二航线。在本发明实施例中,生成第二航线模块220可以用于执行步骤S200,步骤S200所述内容适用于生成第二航线模块220,在此不再赘述。
请参阅图7,图7示出了生成第二航线模块220的方框结构示意图。作为一种实施方式,生成第二航线模块220包括生成航点集合单元221、曲线拟合单元222和生成曲线航线单元223。生成航点集合单元221与曲线拟合单元222连接,曲线拟合单元222与生成曲线航线单元223连接。
生成航点集合单元221,用于判断所述多个第一航点的数量是否大于预设值,如果多个第一航点的数量大于预设值,则将多个第一航点按照预设值分成多个航点集合,其中,每个航点集合包括多个航点。生成航点集合单元221可以用于执行步骤S210,步骤S210所述内容适用于生成航点集合单元221,在此不再赘述。
曲线拟合单元222,用于将多个航点集合内的多个航点进行曲线拟合,得到多条拟合曲线。曲线拟合单元222可以用于执行步骤S220,步骤S220所述内容适用于曲线拟合单元222,在此不再赘述。
生成曲线航线单元223,用于将多条拟合曲线连接,得到曲线航线。生成曲线航线单元223可以用于执行不走S230,步骤S230所述内容适用于生成曲线航线单元223,在此不再赘述。
确定第二航点模块230,用于根据第二航线确定多个第二航点。在本发明实施例中,确定第二航点模块230可以用于执行步骤300,步骤S300所述内容适用于确定第二航点模块230,在此不再赘述。
请参阅图8,图8示出了本发明实施例提供的确定第二航点模块230的一种方框结构示意图。在本发明实施例中确定第二航点模块230包括:获取步长单元231、获取航线点单元232、求取切线单元233、判断切线角度单元234、确定第二航点单元235、获取拐点单元236、确定拐点切线单元237、判断拐点单元238、确定预设航点单元239和生成第二航点单元240。获取步长单元231、获取航线点单元232、求取切线单元233、判断切线角度单元234、确定第二航点单元235、获取拐点单元236、确定拐点切线单元237、判断拐点单元238、确定预设航点单元239和生成第二航点单元240依此连接。以下对确定第二航点模块230包括的结构进行阐述。
获取步长单元231,用于获取取点步长。在本发明实施例中,获取步长单元231可以用于执行步骤S310。
获取航线点单元232,用于根据取点步长获取第二航线上的多个点。在本发明实施例中,获取航线点单元232可以用于执行步骤S311,步骤S311所述内容适用于获取航线点单元232,在此不再赘述。
求取切线单元233,用于求取每个点在第二航线上的切线,得到多条切线。在本发明实施例中,求取切线单元233可以用于执行步骤S312,步骤S312所述内容适用于求取切线单元233,在此不再赘述。
判断切线角度单元234,用于判断每条切线的角度是否在预设范围内,得到第一判断结果。在本发明实施例中,判断切线角度单元234可以用于执行步骤S313,步骤S313所述内容适用于判断切线角度单元234,在此不再赘述。
确定第二航点单元235,用于根据第一判断结果,如果切线的角度在预设范围内,则根据该切线对应的切点得到第二航点,如此,得到多个第二航点。在本发明实施例中,确定第二航点单元235可以用于执行步骤S314,步骤S314所述内容适用于确定第二航点单元235,在此不再赘述。
获取拐点单元236,获取第二航线的多个拐点。在本发明实施例中,获取拐点单元236可以用于执行步骤S320,上述步骤S320所述内容适用于获取拐点单元236,在此不再赘述。
确定拐点切线单元237,求取第二航线中多个拐点处的切线,得到多条拐点切线。在本发明实施例中,确定拐点切线单元237可以用于执行步骤S321,步骤S321所述内容适用于确定拐点切线单元237,在此不再赘述。
判断拐点单元238,用于判断每条拐点切线的角度是否在预设范围内,得到第二判断结果。在本发明实施例中,判断拐点单元238可以用于执行步骤S322,步骤S322所述内容适用于判断拐点单元238,在此不再赘述。
确定预设航点单元239,用于根据第二判断结果,如果拐点切线的角度在预设范围内,则将该拐点作为预设航点,如此,得到多个预设航点。在本发明实施例中,确定预设航点单元239可以用于执行步骤S323,上述步骤S323所述内容适用于确定预设航点单元239,在此不再赘述。
生成第二航点单元240,根据多个预设航点确定第二航点。在本发明实施例中,生成第二航点单元240可以用于执行步骤S324,上述步骤S324所述内容适用于生成第二航点单元240,在此不在赘述。
请参阅图9,图9示出了生成第二航点单元240的方框结构示意图。在本发明实施例中,生成第二航点单元240包括:求取航点距离子单元241和确定第二航点子单元242。求取航点距离子单元241与确定第二航点子单元242连接。以下对求取航点距离子单元241和确定第二航点子单元242进行阐述。
求取航点距离子单元241,用于求取相邻的两个预设航点之间的距离。在本发明实施例中,求取航点距离子单元241可以用于执行步骤S3241,上述步骤S3241所述内容适用于求取航点距离子单元241,在此不再赘述。作为一种实施例,求取航点距离子单元241还用于求取预设航点以及步骤S314所述的切点之间的距离。
确定第二航点子单元242,用于判断距离是否大于或者等于设定值;如果距离大于或者等于设定值,则以预设航点作为第二航点;如果距离小于设定值,则判断该两个预设航点是否是航线起点或者航线终点,如果不是航线起点或者不是航线终点,则取其中一个预设航点作为第二航点。在本发明实施例中,确定第二航点子单元242可以用于执行步骤S3242,步骤S3242所述内容适用于确定第二航点子单元242,在此不再赘述。
作为一种实施例,确定第二航点子单元242还用于判断距离是否大于或者等于设定值,如果距离大于或者等于设定值,则以预设航点或\和切点作为第二航点。如果距离小于设定值,则判断该两个预设航点或\和切点是否是航线起点或者航线终点,如果不是航线起点或者不是航线终点,则取其中一个预设航点或\和切点作为第二航点。
综上所述,本发明实施例提供的一种航点获取方法、装置及无人机,所述方法通过获取第一航线上的多个第一航点,依据多个第一航点进行曲线拟合,得到曲线航线,以曲线航线作为第二航线,根据第二航线确定多个第二航点。该方法能够得到平稳的航点,使得无人机沿着该航点能够平稳飞行。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (6)
1.一种航点获取方法,其特征在于,所述方法包括:
获取第一航线上的多个第一航点;
依据所述多个第一航点进行曲线拟合,得到曲线航线,以所述曲线航线作为第二航线;
根据所述第二航线确定多个第二航点;
所述根据所述第二航线确定多个第二航点的步骤,包括:
获取取点步长;
根据所述取点步长获取所述第二航线上的多个点;
求取每个所述点在所述第二航线上的切线,得到多条切线;
判断每条所述切线的角度是否在预设范围内,得到第一判断结果;
根据所述第一判断结果,如果所述切线的角度在预设范围内,则根据该切线对应的切点得到第二航点,如此,得到多个第二航点;或者
获取所述第二航线的多个拐点;
求取所述第二航线中所述多个拐点处的切线,得到多条拐点切线;
判断每条所述拐点切线的角度是否在预设范围内,得到第二判断结果;
根据所述第二判断结果,如果所述拐点切线的角度在预设范围内,则将该拐点作为预设航点,如此,得到多个预设航点;
根据所述多个预设航点确定第二航点。
2.根据权利要求1所述的航点获取方法,其特征在于,所述根据所述多个预设航点确定第二航点的步骤,包括:
求取相邻的两个所述预设航点之间的距离;
判断所述距离是否大于或者等于设定值;
如果所述距离大于或者等于设定值,则以所述预设航点作为第二航点;
如果所述距离小于设定值,则判断该两个所述预设航点是否是航线起点或者航线终点,如果不是航线起点或者不是航线终点,则取其中一个所述预设航点作为第二航点。
3.根据权利要求1所述的航点获取方法,其特征在于,依据所述多个第一航点进行曲线拟合,得到曲线航线的步骤,包括:
判断所述多个第一航点的数量是否大于预设值,如果所述多个第一航点的数量大于预设值,则将所述多个第一航点按照所述预设值分成多个航点集合,其中,每个航点集合包括多个航点;
将所述多个航点集合内的多个航点进行曲线拟合,得到多条拟合曲线;
将所述多条拟合曲线连接,得到曲线航线。
4.一种航点获取装置,其特征在于,所述装置包括:
获取第一航点模块,用于获取第一航线上的多个第一航点;
生成第二航线模块,用于依据所述多个第一航点进行曲线拟合,得到曲线航线,以所述曲线航线作为第二航线;
确定第二航点模块,所述确定第二航点模块包括:
获取步长单元,用于获取取点步长;
获取航线点单元,用于根据所述取点步长获取所述第二航线上的多个点;
求取切线单元,用于求取每个所述点在所述第二航线上的切线,得到多条切线;
判断切线角度单元,用于判断每条所述切线的角度是否在预设范围内,得到第一判断结果;
确定第二航点单元,用于根据所述第一判断结果,如果所述切线的角度在预设范围内,则根据该切线对应的切点得到第二航点,如此,得到多个第二航点;或者
获取拐点单元,获取所述第二航线的多个拐点;
确定拐点切线单元,求取所述第二航线中所述多个拐点处的切线,得到多条拐点切线;
判断拐点单元,用于判断每条所述拐点切线的角度是否在预设范围内,得到第二判断结果;
确定预设航点单元,用于根据所述第二判断结果,如果所述拐点切线的角度在预设范围内,则将该拐点作为预设航点,如此,得到多个预设航点;
生成第二航点单元,根据所述多个预设航点确定第二航点。
5.根据权利要求4所述的航点获取装置,其特征在于,所述生成第二航点单元包括:
求取航点距离子单元,用于求取相邻的两个所述预设航点之间的距离;
确定第二航点子单元,用于判断所述距离是否大于或者等于设定值;如果所述距离大于或者等于设定值,则以所述预设航点作为第二航点;如果所述距离小于设定值,则判断该两个所述预设航点是否是航线起点或者航线终点,如果不是航线起点或者不是航线终点,则取其中一个所述预设航点作为第二航点。
6.一种无人机,其特征在于,所述无人机包括:
处理器;
存储器,所述存储器与所述处理器电连接;以及
航点获取装置,所述航点获取装置存储于所述存储器中并包括一个或多个由所述处理器执行的软件功能模组,其包括:
获取第一航点模块,用于获取第一航线上的多个第一航点;
生成第二航线模块,用于依据所述多个第一航点进行曲线拟合,得到曲线航线,以所述曲线航线作为第二航线;
确定第二航点模块,所述确定第二航点模块包括:
获取步长单元,用于获取取点步长;
获取航线点单元,用于根据所述取点步长获取所述第二航线上的多个点;
求取切线单元,用于求取每个所述点在所述第二航线上的切线,得到多条切线;
判断切线角度单元,用于判断每条所述切线的角度是否在预设范围内,得到第一判断结果;
确定第二航点单元,用于根据所述第一判断结果,如果所述切线的角度在预设范围内,则根据该切线对应的切点得到第二航点,如此,得到多个第二航点;或者
获取拐点单元,获取所述第二航线的多个拐点;
确定拐点切线单元,求取所述第二航线中所述多个拐点处的切线,得到多条拐点切线;
判断拐点单元,用于判断每条所述拐点切线的角度是否在预设范围内,得到第二判断结果;
确定预设航点单元,用于根据所述第二判断结果,如果所述拐点切线的角度在预设范围内,则将该拐点作为预设航点,如此,得到多个预设航点;
生成第二航点单元,根据所述多个预设航点确定第二航点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711230910.9A CN107807667B (zh) | 2017-11-29 | 2017-11-29 | 航点获取方法、装置及无人机 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711230910.9A CN107807667B (zh) | 2017-11-29 | 2017-11-29 | 航点获取方法、装置及无人机 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107807667A CN107807667A (zh) | 2018-03-16 |
CN107807667B true CN107807667B (zh) | 2020-12-29 |
Family
ID=61582068
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711230910.9A Active CN107807667B (zh) | 2017-11-29 | 2017-11-29 | 航点获取方法、装置及无人机 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107807667B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108766035B (zh) * | 2018-06-12 | 2020-11-24 | 云南农业大学 | 一种点密度引导下的无人机地形匹配飞行控制系统 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7228227B2 (en) * | 2004-07-07 | 2007-06-05 | The Boeing Company | Bezier curve flightpath guidance using moving waypoints |
JP5413239B2 (ja) * | 2010-02-25 | 2014-02-12 | アイシン・エィ・ダブリュ株式会社 | 経路設定装置、方法およびプログラム |
CN103149937B (zh) * | 2013-02-26 | 2015-10-21 | 北京航空航天大学 | 一种基于曲率补偿的横侧向曲线航迹跟踪方法 |
CN103528585B (zh) * | 2013-09-26 | 2016-05-25 | 中北大学 | 一种不等距分割可通行区域的路径规划方法 |
CN103869820B (zh) * | 2014-03-18 | 2015-10-21 | 北京控制工程研究所 | 一种巡视器地面导航规划控制方法 |
CN104035446B (zh) * | 2014-05-30 | 2017-08-25 | 深圳市大疆创新科技有限公司 | 无人机的航向生成方法和系统 |
CN105929843B (zh) * | 2016-04-22 | 2018-11-13 | 天津城建大学 | 一种基于改进蚁群算法的机器人路径规划方法 |
CN106325294B (zh) * | 2016-08-22 | 2020-03-06 | 上海交通大学 | 基于贝塞尔曲线转接的无人机轨迹平滑方法 |
CN106651987B (zh) * | 2016-10-10 | 2018-12-07 | 腾讯科技(深圳)有限公司 | 路径规划方法及装置 |
CN107037829A (zh) * | 2017-05-09 | 2017-08-11 | 广东容祺智能科技有限公司 | 一种集群无人机航线规划方法 |
-
2017
- 2017-11-29 CN CN201711230910.9A patent/CN107807667B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN107807667A (zh) | 2018-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20190277645A1 (en) | Navigation route editing method and apparatus, and control device | |
CN105518415A (zh) | 一种飞行航线设置方法及装置 | |
US10957206B2 (en) | System and method for integration of smart trajectory generation and decision aid applications in legacy cockpits | |
CN108176050B (zh) | 寻路方法和装置 | |
WO2020232575A1 (zh) | 飞行任务生成方法、控制终端、无人飞行器及存储介质 | |
CN102591634A (zh) | 计算机辅助人机界面显示 | |
CN106802664B (zh) | 一种无人机无头模式的飞行控制方法及无人机 | |
CN110383194A (zh) | 无人机的飞行日志处理方法及装置 | |
CN109101614A (zh) | 好友推荐方法和装置 | |
CN112257542B (zh) | 障碍物感知方法、存储介质及电子设备 | |
CN107807667B (zh) | 航点获取方法、装置及无人机 | |
CN106477057A (zh) | 用于改善关于旋翼机系统的意料之外的偏航的态势感知的方法和系统 | |
CN112328880A (zh) | 地理区域聚类方法、装置、存储介质和电子设备 | |
CN115619871A (zh) | 一种车辆定位方法、装置、设备及存储介质 | |
CN109813338B (zh) | 飞控陀螺仪的校准方法、装置、电子设备及存储介质 | |
US20160114901A1 (en) | Methods and systems for managing situation awareness information and alerts in a cockpit display | |
US9020665B1 (en) | Winds aloft symbology presentation system, device, and method | |
CN116708412A (zh) | 一种数据上传方法、装置、电子设备和存储介质 | |
CN116610140A (zh) | 无人机控制方法、装置、计算机设备和存储介质 | |
CN114485568B (zh) | 测绘方法和装置、计算机设备、存储介质 | |
CN111176333B (zh) | 飞行控制方法、装置、自动驾驶仪及飞行器 | |
CN105592416B (zh) | 警戒区域确定方法和系统及移动终端 | |
CN115062240A (zh) | 一种停车场排序方法、装置、电子设备和存储介质 | |
CN110807954B (zh) | 异常航迹点的识别方法和设备 | |
CN109726864B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220228 Address after: 100000 unit 2301, 23 / F, block B, 101, floor 3-24, Xinyuan South Road, Chaoyang District, Beijing Patentee after: Beijing Kexin Information Technology Co.,Ltd. Address before: Room 256, 2nd floor office, Chuangzhi building, 482 anime Middle Road, eco city, Binhai New Area, Tianjin 300450 Patentee before: TIANJIN JUFEI INNOVATION TECHNOLOGY CO.,LTD. |
|
TR01 | Transfer of patent right |