用于可移动物体环境中的位置访问管理的技术的制作方法

文档序号:16806707发布日期:2019-02-10 13:06阅读:125来源:国知局
用于可移动物体环境中的位置访问管理的技术的制作方法

本专利文件的公开的一部分包含受到版权保护的材料。版权所有人不反对任何人对专利文档或专利公开(如其出现在专利和商标局中的专利文件或记录中)进行复制再现,但是在其它情况下版权所有人保留所有版权。

所公开的实施例总体涉及在可移动物体环境中管理位置访问的技术,并且更具体地但不排他地涉及用于位置访问管理的软件开发工具包。



背景技术:

飞行器(比如,无人机(uav))可以用于执行针对各种应用的监视、侦察和勘探任务。然而,uav会飞入不期望其出现的区域或进入受控空域。尽管传统的方法可以用于限制uav可操作的区域,但这些系统依赖于预先定义的受限区域,而这些区域可能不能反映给定区域的当前状态。此外,这些系统通常缺乏灵活性和互操作性。



技术实现要素:

本文中描述了用于移动物体环境中的位置管理的技术。位置管理器可以基于与可移动物体相关联的位置数据向访问管理器请求访问数据。位置管理器可以接收访问数据,确定一个或多个区域对于可移动物体的可访问性。然后,可以经由与可移动物体的连接向可移动物体发送访问数据。

本文还描述了用于可移动物体环境中的位置访问管理的系统和方法。位置管理器可以接收与无人机(uav)相对应的位置数据。然后,可以基于位置数据从访问管理器获得地理围栏数据。可以经由与uav的连接向uav发送地理围栏数据。可以获得与uav相关联的访问状态,所述访问状态指示uav的当前位置的访问级别;可以向在客户端装置上执行的应用发送访问状态,并且可以使应用基于访问状态显示消息。

附图说明

图1示出了根据本发明各个实施例的可移动物体环境中的应用的示例。

图2示出了根据本发明实施例的可移动物体环境中的用于位置访问管理的示例系统。

图3示出了根据本发明各个实施例的可移动物体环境中的位置管理器和访问管理器的示例。

图4示出了根据本发明各个实施例的预期请求访问可移动物体环境中的位置的示例。

图5示出了根据本发明各个实施例的表示可移动对象环境中的访问受管理的位置的示例数据结构。

图6示出了根据本发明各个实施例的访问级别模型的示例。

图7示出了根据本发明各个实施例的位置类型和对应的访问级别的示例。

图8示出了根据本发明各个实施例的在软件开发环境中支持可移动物体接口的示例。

图9示出了根据本发明各个实施例的无人飞行器接口的示例。

图10示出了根据本发明各个实施例的软件开发工具包(sdk)中的用于无人飞行器的部件的示例。

图11示出了根据本发明各个实施例的使用可移动物体环境中的位置管理器通过应用请求访问数据的处理的序列图。

图12示出了根据本发明各个实施例的可移动物体环境中的用户验证处理的序列图。

图13示出了根据本发明各个实施例的对可移动物体环境中的位置进行解锁的处理的序列图。

图14示出了根据本发明各个实施例的预期对可移动物体环境中的位置进行解锁的处理的序列图。

图15示出了根据本发明各个实施例的可移动物体环境中的位置访问管理的流程图。

具体实施方式

在附图的各图中以示例而非限制的方式示出了本发明,在附图中相似的附图标记指示相似的元素。应当注意到:在本公开中对“一”或“一个”或“一些”实施例的引用不一定指的是相同实施例,并且这样的引用意味着至少一个实施例。

本发明的以下描述描述了针对可移动物体的位置访问管理。为了简化说明,通常无人机(uav)用作为可移动物体的示例。对于本领域技术人员来说显而易见的是,可以无限制地使用其它类型的可移动物体。

根据本发明的各个实施例,提供了一种位置访问管理系统,包括地理围栏和地理围栏解锁系统。地理围栏数据(本文中也称为访问数据)可以用于防止可移动物体进入受限区域。此外,在一些实施例中,受限区域附近的区域可以被配置用于触发警告。例如,如果可移动物体进入距受限区五英里(或任何其它预定距离)内的区,则可以显示接近警告。如果用户继续靠近受限区,则可以要求用户验证他或她的身份。例如,在距受限区1.5英里内的区可以要求这样的验证才能进入。

在各个实施例中,位置管理器使得这些地理围栏服务能够与多个应用集成。位置管理器可以基于与可移动物体相关联的位置数据向访问管理器请求访问数据。位置管理器可以接收访问数据,确定一个或多个区域对于可移动物体的可访问性。然后,可以经由与可移动物体的连接向可移动物体发送访问数据。

图1示出了根据本发明各个实施例的可移动物体环境100中的应用的示例。如图1所示,可移动物体环境100中的应用102经由物理链路106与可移动物体104通信。可移动物体104可以是无人飞行器、无人载运工具、手持式装置和/或机器人。

根据本发明的各个实施例,可移动物体104可以包括各种功能模块108。例如,无人飞行器可以包括相机模块、电池模块、云台模块、通信模块和飞行控制器模块等。

如图1所示,应用102可以部署在客户端装置110上。例如,客户端装置110可以是便携式个人计算装置、智能电话、遥控器和/或个人计算机。

此外,客户端装置110可以包括通信装置(未示出),通信装置负责处理客户端装置110上的应用102与可移动物体104上的各种模块108之间的通信。例如,无人飞行器可以包括上行链路和下行链路。上行链路可以用于发送控制信号,下行链路可以用于发送媒体或视频流。

根据本发明的各个实施例,物理链路106可以是基于各种无线技术(例如,wifi、蓝牙、3g/4g和其它射频技术)的网络(的一部分)。此外,物理链路106可以基于其它计算机网络技术(例如,互联网技术)。

在各个实施例中,可移动物体环境100中的可移动物体104可以包括载体和搭载物。尽管可移动物体104总体被描述为飞行器,但是该描述并不旨在限制,并且可以使用任何合适类型的可移动物体。本领域技术人员将理解,本文在飞行器系统的上下文中描述的任何实施例可以应用于任何合适的可移动物体(例如,uav)。在一些情况下,搭载物可以设置在可移动物体104上,而不需要载体。

根据本发明的各个实施例,可移动物体104可以包括一个或多个移动机构112(例如,推进机构)、感测系统114和通信系统116。移动机构112可以包括旋翼、螺旋桨、桨叶、发动机、电机、轮子、轮轴、磁体、喷嘴、动物或人类中的一个或多个。例如,可移动物体可以具有一个或多个推进机构。移动机构都可以是相同类型的。备选地,移动机构可以是不同类型的移动机构。可以使用任何合适的装置(比如,支撑元件(例如,驱动轴))将移动机构112安装在可移动物体104上。移动机构112可以安装在可移动物体104的任何合适的部分上,比如顶部、底部、前部、后部、侧面或其合适的组合。

在一些实施例中,移动机构112可使可移动物体104能够垂直地从表面起飞或垂直地着陆在表面上,而不需要可移动物体104的任何水平移动(例如,无需沿着跑道行进)。可选地,移动机构112可以可操作地允许可移动物体112以指定位置和/或取向悬停在空中。移动机构104中的一个或多个可以独立于其它移动机构受到例如应用102的控制。备选地,移动机构112可以被配置为同时受到控制。例如,可移动物体104可以具有多个水平取向的旋翼,所述旋翼可以向可移动物体提供升力和/或推力。可以致动多个水平取向的旋翼以向可移动物体104提供垂直起飞、垂直着陆和悬停能力。在一些实施例中,水平取向旋翼中的一个或多个可以沿顺时针方向旋转,而水平旋翼中的一个或多个可以沿逆时针方向旋转。例如,顺时针旋翼的数量可以等于逆时针旋翼的数量。为了控制由每个旋翼产生的升力和/或推力,从而调整可移动物体104(例如,相对于多达三个平移自由度和多达三个旋转自由度)的空间布局、速度和/或加速度,可以独立地改变每个水平朝向的旋翼的转速。

感测系统114可以包括可以感测可移动物体104(例如,相对于各个平移自由度和各个旋转自由度)的空间布局、速度和/或加速度的一个或多个传感器。一个或多个传感器可以包括任何传感器,包括gps传感器、运动传感器、惯性传感器、邻近传感器或图像传感器。由感测系统112提供的感测数据可以用于(例如,使用合适的处理单元和/或控制模块,如下所述)控制可移动物体104的空间布局、速度和/或取向。备选地,感测系统112可以用于提供与可移动物体周围的环境有关的数据,例如天气条件、接近潜在障碍物、地理特征的位置、人造结构的位置等。

通信系统116使得能够经由物理链路106与在客户端装置110上执行的应用102通信,物理链路106可以包括如上所述的各种有线和/或无线技术。通信系统116可以包括适合于无线通信的任意数量的发射器、接收器和/或收发器。所述通信可以是单向通信,使得只能沿单向发送数据。例如,单向通信可以仅涉及可移动物体104向应用102发送数据,反之亦然。可以从通信系统110的一个或多个发射器向客户端装置的一个或多个接收器发送数据,反之亦然。备选地,所述通信可以是双向通信,使得可以在可移动物体104和客户端装置102之间沿两个方向发送数据。双向通信可以涉及从通信系统116的一个或多个发射器向客户端装置110的一个或多个接收器发送数据,并且反之亦然。

在一些实施例中,应用102可以向可移动物体104、载体118和搭载物120中的一个或多个提供控制数据,并且从可移动物体104、载体118和搭载物120中的一个或多个接收信息(例如,可移动物体、载体或搭载物的位置和/或运动信息;由搭载物感测的数据(例如,由搭载物相机捕获的图像数据);以及根据由搭载物相机捕获的图像数据而生成的数据)。在一些情况下,来自应用的控制数据可以包括用于可移动物体、载体和/或搭载物的相对位置、移动、致动或控制的指令。例如,控制数据(例如,经由移动机构112的控制)可以导致可移动物体的位置和/或取向的修改,或(例如,经由载体118的控制)导致搭载物相对于可移动物体的移动。来自应用的控制数据可以导致对搭载物的控制,比如对相机或其它图像捕获装置的操作的控制(例如,拍摄静态或动态图片、放大或缩小、接通或关断、切换成像模式、改变图像分辨率、改变焦点、改变景深、改变曝光时间、改变视角或视野)。尽管可以描述包括相机或其它图像捕获装置作为搭载物的实施例,但是任何搭载物都可以与本发明的实施例一起使用。在一些实施例中,应用102可以被配置为控制特定的搭载物。

在一些情况下,来自可移动物体、载体和/或搭载物的通信可以包括来自(例如,感测系统114或搭载物120的)一个或多个传感器的信息和/或基于感测信息而生成的数据。通信可以包括来自一个或多个不同类型的传感器(例如,gps传感器、运动传感器、惯性传感器、邻近传感器或图像传感器)的感测信息。这样的信息可以涉及可移动物体、载体和/或搭载物的定位(例如位置、取向)、移动或加速度。来自搭载物的这种信息可以包括由搭载物捕获的数据或搭载物的感测状态。

图2示出了根据本发明实施例的用于可移动物体环境中的位置访问管理的示例系统200。如图2所示,位置管理器202可以包括接口204,接口204使得位置管理器能够与各种实体(包括可移动物体206、一个或多个应用208、访问管理器210和认证服务212)接口连接。尽管被描绘为不同的实体,但这是为了描述的简单性,并且对于本领域的普通技术人员来说显而易见的是,由各种实体表示的功能可以组合成更少的实体或者划分成更多的实体。

在一些实施例中,可移动物体206可以包括控制器214,控制器214可以控制可移动物体的移动和航行,包括基于从位置管理器202接收的访问数据来限制可移动物体206的移动。控制器214可以(例如,使用gps或其它位置模块)获得可移动物体的位置数据,并且将位置数据与访问数据进行比较。访问数据可以包括在可移动物体的阈值距离内(例如,在可移动物体的范围内)的各种区域的表示。可移动物体可以基于比较来确定访问状态,并且导致访问状态被显示。

在各个实施例中,当应用208开始时,该应用可以请求更新的访问数据。这使地理围栏数据保持最新。在一些实施例中,地理围栏区域可以实时和/或以定期间隔更新。访问管理器210可以将访问数据分发到各个位置处的多个无人机。在一些实施例中,访问管理器210可以由于各种应用请求访问数据而被动地分发访问数据。附加地或备选地,访问管理器210可以向应用和可移动物体推送访问数据。在各个实施例中,认证服务212可以用于认证和/或验证用户的身份、应用和/或可移动物体。

图3示出了根据本发明各个实施例的可移动物体环境中的位置管理器和访问管理器的示例300。可移动物体302可以包括无人飞行器、无人载运工具、手持式装置和/或机器人。可移动物体302可以包括诸如飞行控制器之类的控制器304,控制器304可以控制可移动物体的航行,并且基于通过位置管理器从访问管理器接收到的地理围栏数据(例如,访问数据)来限制可移动物体的移动。

可移动物体302可以从客户端装置306接收指令。客户端装置306可以包括台式或膝上型计算机、平板计算机、智能手机或其它移动装置、可穿戴计算机、虚拟现实系统或其它客户端装置。客户端装置306可以包括位置管理器308。尽管图3中所示的实施例示出了部署到客户端装置306的位置管理器308,但是在一些实施例中,位置管理器308可以部署到一个或多个服务器,并且管理多个客户端装置的位置访问服务。在一些实施例中,位置管理器308可以是用于支持可移动物体环境300中的软件应用开发的软件开发工具包(sdk)或移动sdk的一部分。位置管理器308可以包括若干接口,以与可移动物体环境中的其它系统通信。例如,可移动物体接口310可以促进与可移动物体302的通信,访问管理器接口312可以促进与访问管理器324的通信,认证接口314可以促进与认证服务的通信,并且应用接口316可以使得各种应用318、320、322能够利用由位置管理器308和访问管理器324提供的位置访问管理服务。位置管理器308可以被配置为与在客户端装置306上执行的各种应用通信。尽管示出了三个应用,但是本发明的实施例可以支持更多或更少的应用。在一些实施例中,应用318、320、322可以各自由相同或不同的应用开发者开发,并且可以各自由其开发者配置为使用位置管理器308与可移动物体302和访问管理器324通信。

访问管理器324可以包括用户账户模块326、解锁模块328和访问数据模块330。当接收到用于解锁区域的请求时,用户账户模块326可以确定请求是否来自验证过的用户。如果不是,则可以验证用户,如本文中进一步讨论的。如果用户是验证过的,则解锁模块328可以解锁该区域。在一些实施例中,请求可以包括区域标识符。解锁模块可以更新与区域标识符相对应的区域的数据结构表示,以指示该区域被解锁。例如,访问数据模块330可以从访问区域数据存储器332获取区域标识符的对应数据结构。解锁模块328可以更新数据结构,并且通过位置管理器向应用和/或可移动物体返回更新后的数据结构。在一些实施例中,访问数据模块330可以用于定义自定义访问级别334(比如,访问特定区域需要什么凭证)或者修改现有级别。在一些实施例中,访问数据模块330可以使用地图数据336来识别与从可移动物体302接收的位置数据靠近的区域。

图4示出了根据本发明各个实施例的预期请求访问可移动物体环境中的位置的示例400。如上所述,如果可移动物体遇到受限区域,则可执行解锁处理以获得对受限区域的访问权限。但是,如果没有网络连接(例如,互联网连接、移动网络连接或其它网络连接),则可移动物体或应用会无法连接到访问管理器以发起解锁处理。因此,可以在用户具有网络连接的情况下预先进行解锁请求。

如图4所示,客户端装置402可以通过网络406连接到访问管理器404。访问管理器404可以包括可以例如使用客户端装置402上的web浏览器来访问的web接口408。在一些实施例中,客户端装置402可以与位置管理器相关联(例如,位置管理器可以安装在客户端装置402上),并且客户端装置可以通过位置管理器来访问访问管理器。附加地或备选地,客户端装置402可以通过web接口408连接到访问管理器404,并且使访问管理器通过与客户端装置相关联(例如,在客户端装置或者其它计算装置上执行的)的位置管理器与可移动物体通信。可以通过web接口408向访问管理器404发送解锁请求。解锁请求可以包括描述用户的计划路线和登录信息和/或凭证数据412的航行数据410。用户账户模块414可以确定用户的账户是否被验证。如果账户未被验证,则可以向认证服务416发送凭证数据412以进行验证。在一些实施例中,客户端装置可以直接连接到认证服务416,以发送凭证数据412,使得凭证数据能够绕过访问管理器。在一些实施例中,凭证数据412可以包括支付卡号码、银行账号、电话号码或其它标识号码。由于凭证数据可能包括敏感数据,因此在一些实施例中,认证服务416可以(例如,通过针对凭证数据计算散列值或其它密码值)创建与凭证数据相对应的令牌。认证服务416可以将令牌存储在令牌数据418中。在一些实施例中,令牌数据418可以将令牌映射到凭证数据和/或用户账户信息。

当用户账户被验证时,解锁模块420可以识别航行数据410中的一个或多个可解锁区域,并且解锁一个或多个可解锁区域。为了解锁区域,可以更新表示可解锁区域的对应数据结构以指示该区域被解锁。在一些实施例中,可以将一个或多个航行约束422应用于解锁区域。访问管理器可以向位置管理器426发送包括解锁区域的更新数据结构和航行约束在内的解锁数据424。可以向可移动物体428发送解锁数据424,以使得可移动物体稍后能够访问解锁区域。

在一些实施例中,航行约束可以定义可以预期解锁区域的条件。例如,区域可以在有限的时间内解锁。附加地或备选地,当可移动物体根据航行数据靠近区域时可以解锁该区域。例如,航行数据可以包括定义计划路线的多个航点。如果可移动物体沿着由航点标识的路线靠近解锁区域,则可以对可解锁区域进行解锁。如果可移动物体沿着不同路线靠近解锁区域,则可能不能对该区域进行解锁。

图5示出了根据本发明各个实施例的表示可移动对象环境中的访问受管理的位置的示例数据结构500。如图5所示,可以使用数据结构来表示地理围栏区域。尽管在图5中示出了特定的数据结构示例,但是根据本发明的各个实施例,也可以使用备选数据结构。例如,备选数据结构可以包括更多或更少的字段、不同的字段、不同的格式等。

数据结构500可以包括区域标识符502,并且可以包括诸如纬度坐标504和经度坐标506、国家代码508之类的位置数据或其它位置数据。在一些实施例中,数据结构500可以为地理围栏区域定义时间限制。例如,可以为地理围栏区域定义开始时间510和结束时间512。在一些实施例中,开始时间510和结束时间512可以表示特定日期的固定时间。备选地,开始时间510和结束时间512可以定义地理围栏活动或不活动的每日间隔。

在一些实施例中,数据结构500可以包括定义已定义的地理围栏区域的类型514以及在视觉上如何描述区域516的数据。附加地或备选地,数据结构500可以包括访问级别518。进一步关于图6和图7来描述这些特征。在各个实施例中,数据结构500可以包括指示最新更新的数据520。在一些实施例中,最新更新的数据520可以包括指向数据结构500的先前版本的指针。数据结构还可以包括地理围栏区域的附加位置和/或标识信息,包括城市522和/或名称524。在一些实施例中,数据结构可以包括定义地理围栏区域的点526。在一些实施例中,点526可以包括与定义地理围栏区域的轮廓的纬度坐标和经度坐标有关的多个点。在一些实施例中,点526可以与定义地理围栏区域的中心的纬度坐标和经度坐标一起定义圆形地理围栏区域的半径。定义地理围栏区域的各种附加或备选数据也可以包括在数据结构500中。

图6示出了根据本发明各个实施例的访问级别模型600的示例。如上所述,可以为地理围栏系统定义各种区。这些区通常可以包括:访问通常不受限制的开放区、访问通常不被允许的禁止区、以及访问受限制并且在用户具有适当的凭证的情况下可以允许访问的可解锁区。但是,如图6所示,可以为地理围栏区域定义各种级别,然后可以使用上面讨论的数据结构500来指派这些级别。

如图6所示,根据应用、预期使用区域、政府法规等,可以定义各种访问级别。例如,这些访问级别可以包括级别0602。级别0被标记为通常允许访问的开放区。在一些实施例中,根据例如使用、本地条例、与其它区的接近度等,可以向可移动物体的用户发送与使用相关的本地法规或其它消息。这些区可以被描绘为具有绿色轮廓或绿色叠层(overlay),指示该区域通常是可访问的。在一些实施例中,级别1604区可以包括授权区。如果提供适当的凭证,可以解锁这些区。这些区域可以被描绘为具有黄色轮廓或黄色叠层,指示可以提供访问。在一些实施例中,当用户靠近和/或进入授权区时,可以显示警告消息。级别2606可以定义禁止访问的受限区。在一些实施例中,如果访问被准许,则所描绘的这些区的颜色可以改变(例如,从黄色轮廓切换到绿色轮廓)。这些区不会被可移动物体访问,并且可以以红色轮廓或叠层来描绘以指示此种情况。

如所讨论的,访问级别模型600可以是可扩展的,从而包括各种其它级别。这些级别可以由用户、应用开发者、装置管理员或其它实体来定义。例如,级别3608区可以包括增强型警告区。在这些区中,访问通常会被允许,但在这些区中进行操作之前用户必须要同意访问条件(例如,高度、速度或其它操作限制)。这些区也可以以绿色轮廓或叠层来描绘,指示该区域通常是可访问的。

图7示出了根据本发明各个实施例的位置类型和对应的访问级别的示例。如图7所示,给定的地理围栏区域可以与“类型”702相关联,“类型”702与位于该区域内的项相对应。例如,该类型可以包括机场、监狱、学校、发电厂以及如图7中所示的各种其它位置。每种类型可以包括对应的代码704和级别706。这些可以用于例如使用数据结构500来定义地理围栏区域。在一些实施例中,可以包括与级别706相关联的区708的描述以及该类型的形状710。在一些实施例中,类型可以由用户、应用开发者、装置管理员或其它实体来定义。此外,还可以定义未示出的自定义类型。在一些实施例中,可以使用权限层次来基于例如谁创建了该类型来确定谁可以修改现有类型。例如,由一个用户定义的类型可以被另一用户修改,而由管理员定义的类型可以不被用户修改。

图8示出了根据本发明各个实施例的在软件开发环境中支持可移动物体接口的示例。如图8所示,可移动物体接口803可以用于在软件开发环境800(比如,软件开发工具包(sdk)环境)中提供对可移动物体801的访问。如上所述,位置管理器可以被提供为sdk或移动sdk的一部分,以使得应用能够使用由访问管理器提供的位置访问服务并且与可移动物体通信。

此外,可移动物体801可以包括各种功能模块a至c811至813,并且可移动物体接口803可以包括不同的接口连接部件a至c831至833。可移动物体接口803中的每个所述接口连接部件a至c831至833可以表示可移动物体801中的模块a至c811至813。

根据本发明的各个实施例,可移动物体接口803可以提供一个或多个回调函数,以支持应用和可移动物体801之间的分布式计算模型。

应用可以使用回调函数来确认可移动物体801是否已经接收到命令。此外,应用还可以使用回调函数来接收执行结果。因此,应用和可移动物体801即使在空间和逻辑上分离也可以交互。

如图8所示,接口连接部件a至c831至833可以与收听者a至c841至843相关联。收听者a至c841至843可以通知接口连接部件a至c831至833使用对应的回调函数来从相关模块接收信息。

此外,为可移动物体接口803准备数据820的数据管理器802可以解耦和封装可移动物体801的相关功能。此外,数据管理器803可以用于管理应用和可移动物体801之间的数据交换。因此,应用开发者不需要参与复杂的数据交换处理。

例如,djisdk可以提供一系列回调函数来传递即时消息,并且从无人飞行器接收执行结果。djisdk可以配置dji回调函数的生命周期,以确保信息交换是稳定的和完整的。例如,djisdk可以在无人飞行器与(例如,使用android系统或ios系统的)智能手机上的应用之间建立连接。随着智能手机系统的生命周期,dji回调函数(例如,从无人飞行器接收信息的函数)可以利用智能手机系统中的模式,相应地将状态说明更新到智能手机系统的生命周期中的不同阶段。

图9示出了根据本发明各个实施例的无人飞行器接口的示例。如图9所示,无人飞行器接口903可以表示无人飞行器901。因此,在无人飞行器环境900中的应用(例如,app904至906)可以访问和控制无人飞行器901。

例如,无人飞行器901可以包括各种模块,比如相机911、电池912、云台913、飞行控制器914和增程器915。

相应地,可移动物体接口903可以包括相机部件921、电池部件922、云台部件923、飞行控制器部件924和增程器部件925。

此外,可移动物体接口903可以包括与飞行控制器部件924相关联的地面站部件926。地面站部件进行操作,以执行可能要求高级别特权的一个或多个飞行控制操作。

图10示出了根据本发明各个实施例的软件开发工具包(sdk)中的用于无人飞行器的部件的示例。如图10所示,sdk1000中的无人机类1001是无人飞行器(或无人机)的其它部件1002至1007的集合。可以访问其它部件1002至1007的无人机类1001可以与其它部件1002至1007交换信息,并且控制其它部件1002至1007。

根据本发明的各个实施例,应用可以是仅对于无人机类1001的一个实例是可访问的。备选地,无人机类1001的多个实例可以呈现在应用中。

在djisdk中,应用可以连接到无人机类1001的实例,以便将控制命令上传到无人飞行器。例如,djisdk中的用于建立与无人飞行器的连接的适当渠道是mainactivity类中的oncreate()方法。此外,djisdk可以以mainactivity类中的ondestory()方法来断开与无人飞行器的连接。在连接到无人飞行器之后,开发者可以访问其它类(例如,相机类1002和/或云台类1004)。然后,无人机类1001可以用于调用特定的函数(例如,提供可以供飞行控制器用来控制无人飞行器的行为和/或限制无人飞行器的移动的访问数据)。

根据本发明的各个实施例,应用可以使用电池类1003来控制无人飞行器的电源。此外,应用可以使用电池类1003来计划和测试各种飞行任务的时刻表。

由于电池是无人飞行器中最受限制的元件之一,因此应用会认真考虑电池的状态,不仅是为了无人飞行器的安全,还是为了确保无人飞行器能够完成指定的任务。例如,电池类1003可以被配置为使得如果电池电量低,则无人飞行器可以终止任务并立刻返航。

使用djisdk,应用可以通过调用dji无人机电池类中的get()函数获得电池的当前状态和信息。此外,应用可以使用set()函数来控制反馈的频率。

根据本发明的各个实施例,应用可以使用相机类1002来定义可移动物体(比如,无人飞行器)中的相机上的各种操作。例如,在djisdk中,dji相机类包括用于接收sd卡中的媒体数据、获取和设置照片参数、拍照和录制视频的函数。

应用也可以使用相机类1002来修改照片和记录的设置。例如,开发者可以使用setcameraphotosize()方法来调整所拍摄的照片的大小。此外,应用可以使用媒体类来保持照片和记录。

根据本发明的各个实施例,应用可以使用云台类1004来控制无人飞行器的视角。例如,dji云台类可以用于配置实际视角(例如,设置从无人飞行器看的第一人称视角)。此外,dji云台类可以用于自动增稳云台,以便聚焦于一个方向。此外,应用可以使用dji云台类来改变视角,以便检测不同的物体。

根据本发明的各个实施例,应用可以使用飞行控制器类1005来提供与无人飞行器有关的各种飞行控制信息和状态。如所讨论的,飞行控制器类可以包括用于接收和/或请求将要用于控制无人飞行器在无人飞行器环境中的各个区域间移动的访问数据的函数。

使用dji主控制器类,应用可以例如使用即时消息来监控飞行状态。例如,dji主控制器类中的回调函数可以每一千毫秒(1000ms)发回即时消息。

此外,dji主控制器类允许应用的用户研究从无人飞行器收到的即时消息。例如,飞行员可以分析每次飞行的数据,以进一步提高他们的飞行技能。

根据本发明的各个实施例,应用可以使用地面站类1007来执行用于控制无人飞行器的一系列操作。

例如,djisdk可能要求应用拥有用于使用地面站类的sdk-level-2密钥。dji地面站类可以提供一键飞行、一键返航(one-key-go-home)、通过应用(例如,操纵杆模式)手动控制无人机、建立巡航和/或航点、以及各种其它任务调度功能。

根据本发明的各个实施例,应用可以使用通信部件(比如,增程器类1006)来建立应用和无人飞行器之间的网络连接。

图11示出了根据本发明各个实施例的使用可移动物体环境中的位置管理器通过应用请求访问数据的处理的序列图1100。如图11所示,当应用1102开始1106时,应用1102可以访问位置管理器1104。如所讨论的,应用1102可以包括在客户端装置上执行、可以与可移动物体一起使用的各种应用。应用1102可以被配置为在启动时访问位置管理器1104以确保应用的地理围栏数据是最新的。

位置管理器1104可以向访问管理器1110发送位置数据1008。如所讨论的,位置数据可以包括从应用1102、可移动物体、客户端装置、遥控器或与位置管理器1104通信的任何其它装置获得的gps或其它位置数据。访问管理器1110可以基于在1108处接收到的位置数据来确定是否提供访问数据1112。在一些实施例中,访问管理器1110可以识别以位置数据指示的、可移动物体的位置的阈值距离内的区域。阈值距离可以是固定值,可以基于可移动物体的当前范围,和/或可以基于可移动物体的可用存储空间。例如,如果可移动物体的范围内的区域全部是相同的区(例如,开放),则访问管理器1110可以向位置管理器1104发送指示访问数据是最新的消息,并且该处理可以终止。

在各个实施例中,如果访问管理器1110确定提供访问数据,则访问管理器1110可以向位置管理器发送消息1112,指示将要发送的访问数据是更新后的访问数据。例如,该消息可以指示当前访问数据不是最新的或者需要更新。在一些实施例中,位置管理器1104可以发送用于访问数据更新的请求1114。访问管理器1110可以向位置管理器1104发送访问数据。如所讨论的,访问数据可以包括表示可移动物体的范围内的各种区域的一个或多个数据结构。位置管理器1104可以向可移动物体1120发送1118的访问数据的至少一部分。在一些实施例中,位置管理器1104可以仅向可移动物体发送与级别1区域和级别2区域相对应的访问数据。位置管理器1104还可以向应用1102发送1122访问数据的至少一部分。去往应用1102的访问数据的一部分可以包括指示应用应当如何在视觉上表示区域的数据。例如,可以向应用发送区域的位置、形状、颜色等,以在连接到客户端装置的显示器上呈现。

使用访问数据,可移动物体1120可以基于可移动物体的位置来确定访问状态。例如,如果可移动物体处于开放区域,则访问状态可以指示可移动物体已准备好操作。如果可移动物体处于受限区域或禁止区域,则访问状态可以指示在没有(例如,针对受限区域的)附加信息的情况下可移动物体不能操作或(例如,针对禁止区域)移动物体不能被操作。可移动物体可以将其位置和访问状态返回到位置管理器1104。在一些实施例中,可移动物体1120可以将其位置返回到位置管理器1104,并且位置管理器可以确定可移动物体的访问状态。位置管理器可以向应用1102发送访问状态以进行显示。在一些实施例中,应用1102可以显示指示或基于访问状态的消息。例如,应用1102可以显示向用户请求与访问状态相关的附加信息的消息,这将在下文中关于图12进一步讨论。

图12示出了根据本发明各个实施例的在可移动物体环境中用户验证的处理的序列图1200。如所讨论的,一些访问受限的区域可以是可解锁的,使得用户能够通过提供凭证来获得访问权限。如图12所示,应用1202可以向位置管理器1206发送请求1204以解锁受限区域。位置管理器1204可以使应用1202显示登录界面1208。如所讨论的,登录界面可以从用户接收登录信息,并且向访问管理器1212发送1210登录信息(例如,用户名和密码)。访问管理器可以使用登录信息来检索用户帐户信息。访问管理器可以将登录状态1214返回给位置管理器。如果登录信息不正确,则位置管理器可以使应用1202显示登录失败消息并请求更正的登录信息。

如所讨论的,用户可以通过提供各种凭证(例如,支付卡号、银行账号、电话号码或其它凭证)来验证其账户。如果用户已经提供了适当的凭证数据,则可以将表示凭证数据的令牌存储在用户的账户中,并指示该用户的账户已被验证。如果在1214处登录成功,则位置管理器可以向访问管理器发送消息1216,以确定用户的账户是否被验证。如果用户的账户被验证,则解锁处理可以如图13所示的那样进行。

如果用户的账户未被验证,则位置管理器可以使应用1202显示验证界面1218。用户可以使用验证界面来提供凭证数据,并且凭证数据可以被发送1220到访问管理器1212。在一些实施例中,凭证数据可以直接发送到认证服务,而不通过应用1206或访问管理器1212。如所讨论的,在一些实施例中,可以例如使用散列或其它密码函数将凭证数据转换成令牌,并且可以将令牌返回给位置管理器1204,指示帐户被验证。在一些实施例中,不同的凭证数据可以导致不同的验证级别和/或提供对不同区域的访问。例如,电话号码可以提供对一级受限区域的访问,而支付卡号可以提供对不同级别受限区域的访问。在一些实施例中,禁止访问的位置可以提供使用户能够访问该位置的凭证。例如,军事基地可以提供军事凭证,使军事人员能够进入该位置。

图13示出了根据本发明各个实施例的对可移动物体环境中的位置进行解锁的处理的序列图1300。如所讨论的,可以针对不同的区域定义多个限制级别。例如,在开放区中,用户可以根据需要操作可移动物体。在警告区中,例如由于更靠近受限区域,可以显示消息以提醒用户。同样,增强型警告区可以向用户显示提醒,并且请求确认在该区域中的适用于可移动物体的当地法规或限制。在不能解锁的受限区域中,可以显示指示用户处于禁止区域并且可移动物体不能被操作的消息。但是,有些受限区域可以通过适当的验证来解锁。当确定可移动物体处于或靠近这样的可解锁区域时,可以执行解锁处理。在一些实施例中,可以为受限区域定义阈值距离,其中如果确定可移动物体处于受限区域的阈值距离内,则开始解锁处理。

如图13所示,应用1302可以向位置管理器1306发送1304基于可移动物体的当前位置来解锁区域的请求。位置管理器可以确定1308该请求是否来自经验证的用户。尽管图13的实施例要求用户得以验证才能解锁区域,但是在一些实施例中,可以仅要求用户与服务提供商、位置所有者或其它实体有财务往来。当确定了用户的账户被验证时,位置管理器1306可以向访问管理器1312发送请求1310以解锁该区域。在一些实施例中,请求可以包括凭证数据或表示凭证数据的令牌、用户账户标识符、可移动物体标识符、位置数据或任何其它数据。在一些实施例中,访问管理器1312可以(例如,通过验证凭证数据和/或令牌)确定用户账户是否被授权解锁该区域。然后,访问管理器可以向位置管理器发送解锁结果1314。如果解锁请求被拒绝,位置管理器可以使应用显示消息,指示该区域不能被解锁并且可移动物体不能被操作。

如果解锁请求被批准,则可以向可移动物体1318发送解锁区域数据1316。在一些实施例中,解锁区域数据1316可以包括指示区域已被解锁的更新的数据结构。数据结构可以包括对解锁区域的任何约束。例如,该区域可以仅被解锁有限时间量。可移动物体1318可以确认解锁区域数据的接收1320,位置管理器13104可以向应用1302发送请求1322以显示指示解锁请求成功的消息。在一些实施例中,该消息还可以指示对解锁区域的任何约束(比如,有限的解锁时间)。

图14示出了根据本发明各个实施例的预期对可移动物体环境中的位置进行解锁的处理的序列图1400。上面关于图13所示的处理可以用于在可移动物体行进并靠近受限区域时执行解锁。但是,如果可移动物体位于无法与访问管理器建立连接的区域中,则由于缺少网络连接,可能无法访问在其它情况下会是可解锁的区域。因此,提供了预期的解锁处理。

如图14所示,当网络连接可用时,用户可以从客户端装置访问web接口1402。用户可以提供航行数据(例如,针对可移动物体的飞行计划或其它计划路线)。在一些实施例中,航行数据可以包括定义可移动物体通过给定区域的计划路径的多个航点。计划路径可以跨越一个或多个可解锁的受限区域。通过web接口1402,可以在用于解锁一个或多个受限区域的请求中向访问管理器1406发送1404航行数据。访问管理器可以根据请求执行解锁处理,比如以上关于图13所示的。

在仍处于具有网络连接的区域中时,应用1408可以开始1410并连接到位置管理器1412。然后,位置管理器可以发送请求1414以使访问数据与访问管理器1404同步。如果解锁请求成功,则访问管理器可以返回指示一个或多个受限区域被解锁的访问数据1416。在一些实施例中,替代指示一个或多个受限区域被解锁,一个或多个受限区域可以从访问数据中完全省略,或者指示为开放,从而导致对区域的无限制访问。

位置管理器可以向应用1408发送1420访问数据,应用1408可以向可移动物体1424发送1422访问数据。在一些实施例中,访问数据可以包括对解锁区域的各种约束。例如,该区域只能被解锁有限时间段(例如,航行数据中指定的时间)。附加地或备选地,区域可以仅在可移动物体沿着航行数据中的路线行进的情况下才被解锁。例如,如果在航行数据中提交了一条路线,但可移动物体从不同路线靠近受限区域,则该区域可能无法解锁。

图15示出了根据本发明各个实施例的可移动物体环境中的位置访问管理的流程图1500。在步骤1502处,可以基于与可移动物体相关联的位置数据向访问管理器请求访问数据。在步骤1504处,可以接收访问数据。访问数据可以确定一个或多个区域对于可移动物体的可访问性。例如,如上所述,访问数据可以包括与区域相对应的一个或多个数据结构,这些数据结构定义该区域的访问级别。如果可移动物体被导向具有指示区域是被禁止的访问数据的区域,则可移动物体上的控制器可以基于访问数据防止可移动物体进入该区域。在一些实施例中,可以使应用在连接到客户端装置的显示器上呈现访问数据,包括呈现一个或多个区域的图形表示。

在步骤1506处,可以经由与可移动物体的连接向可移动物体发送访问数据。在一些实施例中,可以确定与一个或多个区域中的每一个相关联的访问级别,并且可以基于相关联的访问级别来确定一个或多个区域的子集。可以向可移动物体上的航行控制器发送与一个或多个区域的子集相对应的访问数据的子集。例如,可以仅向可移动物体发送针对受限区域或禁止区域的访问数据。在一些实施例中,访问级别可以包括开放、受限或禁止中的一个或多个。

在一些实施例中,可以确定与区域相关联的访问级别是可解锁的。可以收到请求以解锁该区域。可以对请求进行验证,并且可以向访问管理器发送验证后的请求。在一些实施例中,为了验证请求,可以使登录界面显示在应用中。登录界面可以被配置为接收与应用的用户相关联的凭证信息,并且向认证服务发送凭证信息。在一些实施例中,凭证信息包括令牌标识符。可以从认证服务接收认证结果消息。可以从访问管理器接收准许访问所述区域的解锁响应,并且可以向可移动物体发送更新的访问数据。在一些实施例中,从访问管理器接收拒绝访问该区域的解锁响应,可以防止可移动物体行进通过该区域。类似地,在一些实施例中,可以确定与当前区域相关联的访问级别是不可解锁的,并且可以防止可移动物体行进通过该区域。

在一些实施例中,可以接收标识可移动物体要行进通过地区的计划路线的航行数据。可以确定与计划路线相关联的至少一个区域。可以确定与至少一个区域相关联的访问级别,并且在行进通过该区域之前,可以发送针对该至少一个区域的解锁请求。例如,这可以使互联网或其它网络连接不可用的区域提前解锁。可以接收准许访问至少一个区域的解锁响应。在一些实施例中,解锁响应包括至少一个约束,比如时间约束、用户配置约束或可移动物体标识符约束中的至少一个。

在一些实施例中,可以针对无人机(uav)管理位置访问。可以接收与uav的位置相对应的位置数据。可以基于位置数据从访问管理器获得地理围栏数据。可以经由与uav的连接向uav发送地理围栏数据。可以获得与uav相关联的访问状态。在一些实施例中,访问管理器、位置管理器和uav中的至少一个可以基于地理围栏数据和位置数据来确定访问状态。访问状态可以指示uav的当前位置的访问级别。可以向在客户端装置上执行的应用发送访问状态,并且可以使应用基于访问状态显示消息。例如,如果uav处于受限区域内,则可以使应用显示指示uav不能被操作的消息。如果uav处于可解锁区域中,则该消息可以包括用于开始解锁处理的可选选项。

可以使用或借助于硬件、软件、固件或它们的组合来执行本发明的许多特征。因此,可以使用处理系统(例如,包括一个或多个处理器)来实现本发明的特征。示例性处理器可以包括但不限于:一个或多个通用微处理器(例如,单核或多核处理器)、专用集成电路、专用指令集处理器、图形处理单元、物理处理单元、数字信号处理单元、协处理器、网络处理单元、音频处理单元、加密处理单元等。

本发明的特征可以使用或借助于计算机程序产品来实现,计算机程序产品是存储有指令的存储介质(媒介)或计算机可读介质(媒介),所述指令可以用于对处理系统进行编程以执行本文中呈现的任何特征。存储介质可以包括但不限于任何类型的盘,包括:软盘、光盘、dvd、cd-rom、微型驱动器和磁光盘、rom、ram、eprom、eeprom、dram、vram、闪存装置、磁卡或光卡、纳米系统(包括分子存储器ic)或者适于存储指令和/或数据的任何类型的介质或装置。

存储在任何一种机器可读介质(媒介)上的本发明的特征可以被并入到如下软件和/或固件中,所述软件和/或固件用于控制处理系统的硬件,并且用于使得处理系统能够利用本发明的结果与其它机构交互。这样的软件或固件可以包括但不限于应用代码、装置驱动器、操作系统和执行环境/容器。

本发明的特征还可以使用例如诸如专用集成电路(asic)和现场可编程门阵列(fpga)器件之类的硬件部件在硬件中实现。硬件状态机的实现以便执行本文所述的功能对于相关领域的技术人员将是显而易见的。

此外,可以使用包括一个或多个处理器、存储器和/或根据本公开的教导编程的计算机可读存储介质在内的一个或多个常规通用或专用数字计算机、计算装置、机器或微处理器,来方便地实现本公开。编程技术人员可以根据本公开的教导容易地准备适当的软件编码,这对软件领域的技术人员将是显然的。

尽管上面已经描述了本发明的各个实施例,但是应当理解,它们仅仅是作为示例而不是限制来呈现的。对于相关领域的技术人员显而易见的是,在不脱离本发明的精神和范围的情况下,可以在形式和细节上进行各种改变。

以上已经在示出指定功能的性能及该执行功能的关系的功能构建块的辅助下,描述了本发明。为便于描述,本文通常任意定义这些功能构建块的边界。只要所指定的功能及其关系被适当地执行,就可以定义备选边界。因此任何这样的备选边界都在本发明的范围和精神之内。

已经提供了本发明的上述说明,用于说明和描述的目的。这并不旨在穷举或将本发明限制于所公开的确切形式。本发明的宽度和范围不应当受到上述示例性实施例中任意一个的限制。对于本领域技术人员而言,许多修改和变化将是显而易见的。这些修改和变化包括所公开的特征的任何相关组合。选择和描述实施例以便最好地解释本发明的原理及其实际应用,从而使得本领域的其他技术人员能够理解本发明的各个实施例以及适合于预期特定用途的各种修改。旨在使得本发明的范围由以下权利要求及其等同物限定。

在上述各个实施例中,除非另外特别指出,否则诸如短语“a、b或c中的至少一个”之类的分离性语言旨在被理解为意指a、b或c或者其任何组合(例如,a、b和/或c)。因此,分离性语言不是旨在也不应该被理解为意指给定实施例要求a中的至少一个、b中的至少一个或者c中的至少一个各自存在。

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