发明内容
本申请实施例的目的在于提供一种充电控制方法及装置,用以改善现有技术中无人机充电不便的问题。
第一方面,本申请实施例提供了一种充电控制方法,应用于智能设备,所述方法包括:在确定所述智能设备需要充电时,确定目标充电基站所在的目标充电位置;根据所述目标充电位置前往所述目标充电基站进行充电。
在上述实现过程中,在智能设备需要充电时,可以主动寻找目标充电基站,然后主动前往目标充电基站所在的目标充电位置进行充电,从而实现主动充电的目的,避免了用户手动控制智能设备到达指定充电地点进行充电导致充电不便的问题。
可选地,在充电基站为多个的情况下,所述确定目标充电基站所在的目标充电位置,包括:确定所述智能设备的当前位置;根据所述当前位置确定目标充电基站所在的目标充电位置。
在上述实现过程中,基于智能设备的当前位置来确定目标充电基站的位置,从而可结合考虑智能设备的当前位置选择一个合适的充电基站。
可选地,所述智能设备中预先存储有巡检路径和多条充电路径,每个充电基站位于对应的一条充电路径上,所述巡检路径中包括多个巡检航点,每条充电路径包括多个充电航点,所述根据所述当前位置确定所述目标充电基站所在的目标充电位置,包括:
从每条充电路径中查找距离所述当前位置最近的目标充电航点,其中,所述目标充电航点为所述巡检路径与其中一条充电路径的重合航点;
确定所述目标充电航点所在的目标充电路径中的所述目标充电基站所在的目标充电位置。
在上述实现过程中,通过确定距离当前位置距离最近的目标充电航点所在的充电路径中的充电基站作为目标充电基站,从而可节约无人机前往目标充电基站的时间。
可选地,每个充电航点与每个巡检航点标记有序列号,多个充电航点与多个巡检航点按照序列号的大小顺序排列,所述从每条充电路径中查找距离所述当前位置最近的目标充电航点,包括:
若所述当前位置所在的航点为巡检航点,则确定所述当前位置所在的巡检航点的序列号;
根据所述序列号正序遍历所有航点的序列号,确定充电路径中距离所述序列号最近的序列号对应的第一重合航点;以及根据所述序列号倒序遍历所有航点的序列号,确定充电路径中距离所述序列号最近的序列号对应的第二重合航点;
计算获得所述当前位置与所述第一重合航点所在的位置之间的第一距离以及所述当前位置与所述第二重合航点所在的位置之间的第二距离;
比较所述第一距离与所述第二距离,确定较小距离对应的重合航点作为所述目标充电航点。
在上述实现过程中,通过正序以及倒序遍历序列号获得重合航点,则可准确获得距离当前位置最近的重合航点。
可选地,所述确定所述目标充电航点所在的目标充电路径中的所述目标充电基站所在的目标充电位置,包括:
正序遍历所述目标充电航点所在的目标充电路径中的所有充电航点的序列号,确定所述目标充电基站所在的充电航点的序列号;
根据所述序列号确定所述目标充电基站所在的目标充电位置。
可选地,所述智能设备中预先存储有多条充电路径,所述根据所述当前位置确定所述目标充电基站所在的目标充电位置,包括:
确定每条充电路径上的每个充电基站所在的充电位置;
根据所述当前位置以及所述每个充电基站所在的充电位置确定多个充电基站中的目标充电基站所在的目标充电位置。
可选地,每个充电基站位于对应的一条充电路径上,所述根据所述当前位置以及所述每个充电基站所在的充电位置确定多个充电基站中的目标充电基站所在的目标充电位置,包括:
确定所述当前位置与每条充电路径上的充电基站所在的充电位置之间的距离,获得多个距离;
从所述多个距离中选择与所述当前位置距离最近的充电基站所在的充电位置作为所述目标充电基站所在的目标充电位置。
在上述实现过程中,选择与当前位置距离最近的充电基站作为目标充电基站,使得无人机前往目标充电基站的时间较短,节约电量,避免无人机在前往充电基站的过程电量用尽而无法飞行的问题。
可选地,所述智能设备还预存储有巡检路径,所述巡检路径中包括多个巡检航点,每条充电路径包括多个充电航点,每个充电航点与每个巡检航点标记有序列号,多个充电航点与多个巡检航点按照序列号的大小顺序排列,所述确定所述当前位置与每条充电路径上的充电基站所在的充电位置之间的距离,获得多个距离,包括:
若所述当前位置所在的航点为巡检航点,则确定所述当前位置所在的巡检航点的第一序列号;
确定所述每条充电路径上的充电基站所在的充电航点的第二序列号;
根据所述第一序列号遍历所有航点的序列号,确定所述智能设备达到所述第二序列号需经过的所有航点的序列号;
根据所述需经过的所有航点的序列号确定所述智能设备前往每个充电基站的前往路径;
根据所述前往路径中各个航点所在的位置确定所述智能设备从所述当前位置与每个充电基站所在的位置之间的距离,获得多个距离。
在上述实现过程中,通过遍历序列号来确定智能设备前往充电基站所经过的航点,由此可准确计算出智能设备按照航点的前往路径的距离。
可选地,所述当前位置所在的航点为巡检航点,所述在确定所述智能设备需要充电时,确定目标充电基站所在的目标充电位置之前,还包括:
在检测到所述智能设备的剩余电量小于预设值时,则确定所述智能设备需要充电。
可选地,所述智能设备为无人机。
第二方面,本申请实施例提供了一种充电控制装置,运行于智能设备,所述装置包括:
充电位置确定模块,用于在确定所述智能设备需要充电时,确定目标充电基站所在的目标充电位置;
充电控制模块,用于根据所述目标充电位置前往所述目标充电基站进行充电。
可选地,在充电基站为多个的情况下,所述充电位置确定模块,用于确定所述智能设备的当前位置;根据所述当前位置确定目标充电基站所在的目标充电位置。
可选地,所述智能设备中预先存储有巡检路径和多条充电路径,每个充电基站位于对应的一条充电路径上,所述巡检路径中包括多个巡检航点,每条充电路径包括多个充电航点,所述充电位置确定模块,用于从每条充电路径中查找距离所述当前位置最近的目标充电航点,其中,所述目标充电航点为所述巡检路径与其中一条充电路径的重合航点;确定所述目标充电航点所在的目标充电路径中的所述目标充电基站所在的目标充电位置。
可选地,每个充电航点与每个巡检航点标记有序列号,多个充电航点与多个巡检航点按照序列号的大小顺序排列,所述充电位置确定模块,还用于:
若所述当前位置所在的航点为巡检航点,则确定所述当前位置所在的巡检航点的序列号;
根据所述序列号正序遍历所有航点的序列号,确定充电路径中距离所述序列号最近的序列号对应的第一重合航点;以及根据所述序列号倒序遍历所有航点的序列号,确定充电路径中距离所述序列号最近的序列号对应的第二重合航点;
计算获得所述当前位置与所述第一重合航点所在的位置之间的第一距离以及所述当前位置与所述第二重合航点所在的位置之间的第二距离;
比较所述第一距离与所述第二距离,确定较小距离对应的重合航点作为所述目标充电航点。
可选地,所述充电位置确定模块,还用于正序遍历所述目标充电航点所在的目标充电路径中的所有充电航点的序列号,确定所述目标充电基站所在的充电航点的序列号;根据所述序列号确定所述目标充电基站所在的目标充电位置。
可选地,所述智能设备中预先存储有多条充电路径,所述充电位置确定模块,还用于确定每条充电路径上的每个充电基站所在的充电位置;根据所述当前位置以及所述每个充电基站所在的充电位置确定多个充电基站中的目标充电基站所在的目标充电位置。
可选地,每个充电基站位于对应的一条充电路径上,所述充电位置确定模块,还用于确定所述当前位置与每条充电路径上的充电基站所在的充电位置之间的距离,获得多个距离;从所述多个距离中选择与所述当前位置距离最近的充电基站所在的充电位置作为所述目标充电基站所在的目标充电位置。
可选地,所述智能设备还预存储有巡检路径,所述巡检路径中包括多个巡检航点,每条充电路径包括多个充电航点,每个充电航点与每个巡检航点标记有序列号,多个充电航点与多个巡检航点按照序列号的大小顺序排列,所述充电位置确定模块,还用于:
若所述当前位置所在的航点为巡检航点,则确定所述当前位置所在的巡检航点的第一序列号;
确定所述每条充电路径上的充电基站所在的充电航点的第二序列号;
根据所述第一序列号遍历所有航点的序列号,确定所述智能设备达到所述第二序列号需经过的所有航点的序列号;
根据所述需经过的所有航点的序列号确定所述智能设备前往每个充电基站的前往路径;
根据所述前往路径中各个航点所在的位置确定所述智能设备从所述当前位置与每个充电基站所在的位置之间的距离,获得多个距离。
可选地,所述当前位置所在的航点为巡检航点,所述装置还包括:
电量检测模块,用于在检测到所述智能设备的剩余电量小于预设值时,则确定所述智能设备需要充电。
可选地,所述智能设备为无人机。
第三方面,本申请实施例提供一种智能设备,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如上述第一方面提供的所述方法中的步骤。
第四方面,本申请实施例提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如上述第一方面提供的所述方法中的步骤。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供一种充电控制方法,在智能设备需要充电时,可以主动寻找目标充电基站,然后主动前往目标充电基站所在的目标充电位置进行充电,从而实现主动充电的目的,避免了用户手动控制智能设备到达指定充电地点进行充电导致充电不便的问题。
本申请实施例的充电控制方法应用于智能设备,应理解,本申请中智能设备可以是任何一种具有计算处理能力的设备、器械或者机器,例如,本申请中的智能设备包括但不限于:无人机、无人车。本申请中智能设备可以包括具有自我检测以及自我诊断的设备。本申请中的智能设备可以设置有通信模块,通过通信模块可以与用户终端或者另一智能设备通信,通信的方式可以是wifi、红外、蓝牙或4g或5G等无线通信形式,本申请实施例并不限于此。为了描述的方便,本文中仅以智能设备为无人机为例进行说明,在智能设备为其他形式的具体例子可以参见无人机例子的描述,为避免重复,不在赘述。
请参照图1,图1为本申请实施例提供的一种充电控制方法的流程图,该方法包括如下步骤:
步骤S110:在确定所述智能设备需要充电时,确定目标充电基站所在的目标充电位置。
以智能设备为无人机为例,可以理解地,在判断无人机是否需要充电时,可以通过无人机的剩余电量来判断,即可以在检测到无人机的剩余电量小于预设值时,确定无人机需要充电。其中,预设值可以根据实际需求进行设置,当然,预设值不能设置得过高或过低,在设置得过低时可能导致无人机无法飞往充电基站,设置得过高则没有充电的必要。所以,可以根据实际情况合理设置预设值的数值。
无人机在确定需要充电时,可以主动搜索充电基站,无人机中可预先存储有一个或多个充电基站所在的位置信息,而为了尽快实现对无人机的充电,则可将离无人机的当前位置最近的充电基站作为目标充电基站,使得无人机可飞往目标充电基站进行充电。
步骤S120:根据所述目标充电位置前往所述目标充电基站进行充电。
在确定目标充电基站后,无人机可自动前往目标充电基站所在的目标充电位置进行充电。无人机在从当前位置前往目标充电位置的过程中,无人机可自动规划最短的飞行路径,从而可按照最短的飞行路径飞往目标充电基站所在的目标充电位置。
在上述实现过程中,在智能设备需要充电时,可以主动寻找目标充电基站,然后主动前往目标充电基站所在的目标充电位置进行充电,从而实现主动充电的目的,避免了用户手动控制智能设备到达指定充电地点进行充电导致充电不便的问题。
作为一种示例,为了便于无人机进行充电,一般会设置多个充电基站,在充电基站为多个的情况下,为了选择合适的充电基站,则可以先确定智能设备的当前位置,然后根据当前位置确定目标充电基站所在的目标充电位置。
例如,可以将距离当前位置最近的充电基站作为目标充电基站,使得无人机可花较少的时间前往目标充电基站所在的目标充电位置。
但是,若有的无人机没有自动避障功能,则无人机在根据自己规划的路径前往目标充电基站时一般是以直线飞行,这种情况下可能会遇上障碍物,从而导致无人机与障碍物发生碰撞。所以,无人机一般在执行飞行任务中,一般按照人为设定的航点来飞行,如无人机的航点先由用户终端控制无人机在期望的路径上飞行,并由上位机软件在无人机飞行过程中记录航点,飞行完毕后编辑并发送航点到无人机上保存,所以,无人机可按照记录的航点来进行飞行。
可以理解地,这些记录的航点可以组成无人机的飞行路径,无人机的飞行路径包括巡检路径和充电路径,即充电路径为充电基站所在的路径,巡检路径为无人机正常执行飞行任务的飞行路径。在充电基站有多个时,无人机上可以预先存储有巡检路径和多条充电路径,每个充电基站位于对应的一条充电路径上,巡检路径中包括多个巡检航点,每条充电路径包括多个充电航点。
在根据无人机的当前位置确定目标充电基站所在的目标充电位置的过程中,可以先从每条充电路径中查找距离当前位置最近的目标充电航点,其中,目标充电航点为巡检路径与其中一条充电路径的重合航点,然后确定目标充电航点所在的目标充电路径中的目标充电基站所在的目标充电位置。
可以理解地,充电基站的位置可以是人为设置的,其可以设置于巡检路径上的某个航点位置,也可以设置为巡检路径外的航点位置。若充电基站设置在巡检路径上时,充电航点也即为巡检航点,充电路径可以理解为是巡检路径中的一小段路径,如每两个巡检航点之间的路径成为充电路径,这种情况下,目标充电航点也为巡检航点,且也为目标充电基站所在的航点,无人机在前往目标充电航点时,可按照巡检航点的位置进行飞行即可。
这种情况下,无人机可获得当前位置与充电基站所在的航点之间的距离,其当前位置与充电基站之间的距离为当前位置到充电基站所在的航点之间的各个航点之间的距离,然后可选择距离最短的充电基站作为目标充电基站,则无人机可按照各个巡检航点的飞行路径飞往目标充电基站。
另外,在充电基站设置为巡检路径外的位置时,充电路径与巡检路径不重合,如图2所示,其中横向的可表示为巡检路径110,如巡检路径110为1->2->3->7->8->9->10->14->15,竖向的可表示为充电路径120,如3->4->5->6和10->11->12->13两条。巡检路径110上的巡检航点可标记有巡检航点标识,充电路径120上的充电航点可标记有充电航点标识,每条充电路径120与巡检路径110有一个重合航点,该重合航点可标记有重合航点标识,该重合航点如图2中的“3”和“10”。
在确定与无人机的当前位置距离最近的目标充电航点时,可从这两个重合航点选择与当前位置距离最近的重合航点作为目标充电航点。
其中,每个巡检航点和充电航点均标识有对应的位置信息,所以可以计算无人机的当前位置与每个重合航点所在的位置之间的距离,然后选择距离最短的重合航点作为目标充电航点,例如,若重合航点“3”距离无人机的当前位置最近,则重合航点“3”即作为目标充电航点,该重合航点“3”所在的充电路径为3->4->5->6,则该路径即为目标充电路径,其中,目标充电基站所在的航点为“6”,该航点“6”可标记有充电基站的标识,所以,航点“6”所在的位置即为目标充电位置,无人机可前往航点“6”所在的位置进行充电。
在上述实现过程中。通过确定距离当前位置距离最近的目标充电航点所在的充电路径中的充电基站作为目标充电基站,从而可节约无人机前往目标充电基站的时间。
为了确定无人机按照设置的航点进行飞行,则无人机在存储各个航点时,还可以按照序列号来标记每个航点,然后无人机通过遍历序列号来查找下一个航点,其序列号标记如图2所示,即每个充电航点和每个巡检航点标记有序列号,多个充电航点与多个巡检航点按照序列号的大小顺序排列,如按照“1,2,3,4,5,6,7,8,9,10,11,12,13,14,15”这样的从大到小的顺序存储每个航点的序列号。并且,无人机中还存储有每个序列号与其对应的航点的标识,以及对应的航点所在的位置三者之间的对应关系,如此可通过其中一个信息而获得另外两个信息。
无人机在正常巡检过程中,可以通过遍历序列号来寻找下一个巡检航点,如无人机此时在航点“3”,则无人机遍历“3”后剩余的其他航点,然后发现航点“7”为下一个巡检航点,则无人机飞往航点“7”所在的位置继续进行巡检。
其中,无人机在需要进行充电时,先查找目标充电航点,无人机在查找目标充电航点的过程中,若无人机的当前位置所在的航点为巡检航点,则确定当前位置所在的巡检航点的序列号,由于无人机当前位置所在的前后位置可能均设有充电基站,所以无人机可以根据序列号正序遍历所有航点的序列号,确定充电路径中距离该序列号最近的第一重合航点,以及根据序列号倒序遍历所有航点的序列号,确定充电路径中距离该序列号最近的序列号对应的第二重合航点。
若无人机当前所处的航点前后均有充电路径的情况下,则在正序遍历和倒序遍历的过程中各获得一个重合航点,例如,无人机的当前位置所在的航点的序列号为航点“8”,由于无人机中是按照航点的序列号的顺序存储的,所以,无人机可从序列号8开始正序遍历后面的所有航点,即遍历序列号为9-15的航点,从中找出各个充电路径中的充电航点,如充电航点的序列号为10,11,12,13,若序列号8后面还有其他充电路径,则也还需要获得其他充电路径的所有充电航点的序列号,然后从中确定出距离序列号8最近的序列号对应的第一重合航点。
无人机存储有每个序列号所标识的航点以及每个航点所在的位置,并且,对于巡检航点来说,后一个巡检航点的序列号需大于前一个巡检航点的序列号,所以,可确定第一充电路径中距离序列号8最近的序列号为10,则序列号为10对应的航点即为第一重合航点。
对于倒序遍历也如此,即从序列号8开始倒序遍历前面所有的航点的序列号,从而可获得充电路径中的所有充电航点的序列号,如3,4,5,6,然后从中确定出距离序列号8最近的序列号为3,则序列号为3对应的航点即为第二重合航点。
如此,可通过正序遍历和倒序遍历,获得两个重合航点,然后再计算当前位置与第一重合航点所在的位置之间的第一距离,以及计算当前位置与第二重合航点所在的位置之间的第二距离,然后比较第一距离与第二距离,确定较小距离对应的重合航点作为目标充电航点。
其中,距离计算过程中,可以计算当前位置与重合航点之间的直线距离,当然,由于本申请实施例中无人机均按照航点来飞行,所以,在计算当前位置与重合航点之间的距离时,还需要获取当前位置与重合航点之间间隔的其他巡检航点,如当前位置为序列号8所在的航点,其与第一重合航点“10”之间还间隔有巡检航点“9”,则当前位置与第一重合航点之间的距离为当前位置与巡检航点“9”之间的距离以及巡检航点“9”与第一重合航点“10”之间的距离之和。对于当前位置与第二重合航点之间的距离计算方式也如此,如先计算当前位置与巡检航点“7”之间的距离,然后计算巡检航点“7”与第二重合航点“3”之间的距离,然后将两个距离相加之和作为当前位置与第二重合航点之间的距离,若序列号为8对应的航点与第一重合航点“10”之间的距离大于序列号为8对应的航点与第二重合航点“3”之间的距离,则可将第二重合航点作为目标充电航点。
另外,需要说明的是,上述实施例仅说明了当前位置前后均有充电路径的情况,在当前位置只有后面有至少一条充电路径的情况下,则在倒序遍历航点的过程中,没有查找到重合航点,此时,只有正序遍历获得符合条件的第一重合航点,则可直接将第一重合航点作为目标充电航点即可。例如,当前位置为序列号为2所在的航点,此时,正序遍历所有航点,获得的重合航点包括3和10,此时,序列号3距离序列号2最近,则序列号3对应的航点即为第一重合航点,此时可直接将序列号为3对应的第一重合航点作为目标充电航点。
同理,在当前位置只有前面有至少一条充电路径的情况下,则在正序遍历航点的过程中,没有查找到重合航点,此时,只有倒序遍历获得符合条件的第二重合航点,则可直接将第二重合航点作为目标充电航点即可。例如,当前位置为序列号为14所在的航点,此时,倒序遍历所有航点,获得的重合航点包括3和10,此时,序列号10距离序列号14最近,则序列号10对应的航点即为第二重合航点,此时可直接将序列号为10对应的第二重合航点作为目标充电航点。
需要说明的是,在正序遍历或者倒序遍历的过程中获得至少两个重合航点是,则确定距离当前位置对应的序列号最近的序列号对应的重合航点的方式是比较两个序列号之间的数值相差,如当前位置对应的序列号为14,两个重合航点对应的序列号为3和10,则其与两个重合航点之间的数值之差分别为11和4,则将数值之差最小的重合航点作为所选择的与当前位置对应的序列号最近的序列号对应的重合航点。
在上述实现过程中,通过正序以及倒序遍历序列号获得重合航点,则可准确获得距离当前位置最近的重合航点。
在上述确定了目标充电航点后,由于无人机在飞行过程中是按照航点的序列号来飞行的,所以为了寻找充电基站所在的航点,无人机可正序遍历目标充电航点所在的目标充电路径中的所有充电航点的序列号,确定目标充电基站所在的充电航点的序列号,然后根据序列号确定目标充电基站所在的目标充电位置。
例如,目标充电航点为10,则其所在的目标充电路径为10->11->12->13,则可从10开始正序遍历这些所有的航点的序列号,确定序列号为13所在的航点为目标充电基站对应的航点,然后可根据序列号-航点标识-位置信息之间的对应关系,来确定目标充电基站所在的目标充电位置,如此,无人机可按照充电路径前往目标充电位置。
另外,由于充电基站与无人机的当前位置之间的距离可能不一致,作为一种示例,在根据当前位置确定目标充电基站所在的目标充电位置的方式还可以采用如下过程:先确定每条充电路径上的每个充电基站所在的充电位置,根据当前位置以及每个充电基站所在的充电位置确定多个充电基站中目标充电基站所在的目标充电位置。
可以理解,无人机中预先存储有多条充电路径,即对于每条充电路径中的充电航点可额外还标识有充电路径的标识,如充电航点3,4,5,6组成一条充电路径,则这些航点可标识有充电路径为1的标识,充电航点10,11,12,13组成另外一条充电路径,则这些航点可标识有充电路径为2的标识。
如此,可从每条充电路径中获取每个充电基站的充电位置,然后可将充电位置距离当前位置最近的充电基站作为目标充电基站。
也就是说,可以确定当前位置与每条充电路径上的充电基站所在的充电位置之间的距离,获得多个距离,然后从多个距离选择与当前位置距离最近的充电基站所在的位置作为目标充电基站所在的目标充电位置。
其中,计算距离的方式可以直接计算当前位置与各个充电基站之间的直线距离,但是,由于本申请实施例中的无人机是按照航点来飞行的,所以当前位置与各个充电基站之间的距离为无人机按照航点飞行到充电基站之间的距离。
即按照上述实施例中,每个巡检航点和充电航点均标记有序列号,这些序列号按照大小顺序排列,如从小到大的顺序排列。若当前位置所在的航点为巡检航点,则确定当前位置所在的巡检航点的第一序列号,在确定每条充电路径上的充电基站所在的充电航点的第二序列号,然后根据第一序列号遍历所有航点的序列号,确定智能设备到底第二序列号需经过的所有航点的序列号,根据需经过的所有航点的序列号确定智能设备前往每个充电基站的前往路径,根据前往路径中各个航点所在的位置确定智能设备从当前位置与每个充电基站所在的位置之间的距离,获得多个距离。
例如,无人机的当前位置所在的航点对应的第一序列号为7,各个充电路径上的充电基站所在的航点对应的第二序列号为6和13,则根据第一序列号7来遍历到达第二序列号6所经过的航点的序列号,由于无人机到达充电基站需先经过重合航点,所以,无人机可先找到序列号为6所在的充电路径中的重合航点,然后即可确定无人机到达序列号6所需经过的航点的序列号为7->3->4->5->6,这些航点可作为无人机前往序列号6所在的航点的前往路径,即无人机需先到达航点3,再到达航点4,再到达航点5,再到达航点6,则根据前往路径则可计算出无人机到达充电基站6的距离,其距离为无人机的当前位置与航点3之间的距离+航点3与航点4之间的距离+航点4与航点5之间的距离+航点5与航点6之间的距离。
对于无人机获得从当前位置到达另一个充电基站所在的航点13的前往路径也类似,即先遍历第二序列号13所在的充电路径中的所有航点,找到重合航点10,然后确定前往路径为7->8->9->10->11->12->13,则根据前往路径则可计算出无人机到达充电基站13的距离,其距离为无人机的当前位置与航点8之间的距离+航点8与航点9之间的距离+航点9与航点10之间的距离+航点10与航点11之间的距离+航点11与航点12之间的距离+航点12与航点13之间的距离。
如此,以上述方式,可获得当前位置与每个充电基站之间的距离,从而获得多个距离,然后可选择距离最短的充电基站作为目标充电基站,若目标充电基站为6,则无人机可按照去往充电基站6的前往路径飞往充电基站6。
无人机在到达目标充电基站所在的航点时,自动执行降落动作,然后与充电基站对接进行充电。
无人机在到达目标充电基站进行充电完毕后,可以按照充电基站所在的序列号倒序遍历所有充电航点的序列号,然后无人机按照充电航点的路径返回目标充电航点所在的位置,再正序遍历和倒序遍历确定之间的巡检航点对应的序列号,然后确定到达该序列号对应的巡检航点的路径,从而可到达之前的巡检航点继续进行正常巡检。
例如,无人机之前所在的巡检航点为8,无人机在充电航点6完成充电后,倒序遍历充电航点,确定3为重合航点,则无人机前往重合航点3后,再正序遍历和倒序遍历所有的巡检航点,确定巡检航点8所在的位置,则无人机按照正常巡检路径到达巡检航点8后继续进行巡检即可。
在上述实现过程中,选择与当前位置距离最近的充电基站作为目标充电基站,使得无人机前往目标充电基站的时间较短,节约电量,避免无人机在前往充电基站的过程电量用尽而无法飞行的问题。
另外,在上述实施例中,无人机在飞行过程中是按照航点来飞行的,为了确保无人机飞行过程中的平滑过渡,则无人机在到达一个航点后,可以先读取后两个航点,如无人机在正常巡检过程中,在到达巡检航点3时,正序遍历下两个巡检航点,在遍历过程中跳过充电航点,则可获得下两个巡检航点为7和8,无人机可获取航点7对应的位置,然后无人机即可飞往航点7对应的位置。
在上述实施例中,为了确保准确获得目标充电航点,即重合航点,则还可以设置重合航点相邻的两个巡检航点,如重合航点3最近的两个巡检航点为2和7,这两个巡检航点额外标记有重合航点的相邻巡检航点的标识,则无人机在前往充电基站的过程中,在无人机到达标识与重合航点相邻的目标巡检航点时,则查找与目标巡检航点距离最近的重合航点,该重合航点即为目标充电航点,然后前往该目标充电航点所在的充电路径中的充电基站进行充电。例如,若无人机想要到达航点6所在的充电基站,且若无人机需将经过巡检航点7,则在无人机到达巡检航点7后,通过遍历获得与巡检航点7最近的重合航点为3,而不是重合航点10,则重合航点3即为目标充电航点,则无人机下一个要到达的巡检航点为重合航点3,然后无人机在到达重合航点3后,遍历充电航点,然后确定下两个需到达的充电航点,由此可前往充电基站进行充电。
在上述实施例中,若无人机还设置有拍照任务,即无人机到达指定的巡检航点后执行拍照任务,则巡检航点中设置有拍照航点,所以,巡检航点还标记有拍照航点的标识。无人机到达拍照航点时,可以执行拍照任务。但是无人机在充电过程中,则不进行拍照动作,即无人机在检测到需要进行充电时,可以自动关闭拍照功能,以此在充电过程中不执行拍照任务,在充电完成且到达之前的巡检航点后可再次开启拍照功能,继续进行正常的拍照任务即可。
请参照图3,图3为本申请实施例提供的一种充电控制装置200的结构框图,该装置200运行于智能设备,其可以是智能设备上的模块、程序段或代码。应理解,该装置200与上述图1方法实施例对应,能够执行图1方法实施例涉及的各个步骤,该装置200具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。
可选地,所述装置200包括:
充电位置确定模块210,用于在确定所述智能设备需要充电时,确定目标充电基站所在的目标充电位置;
充电控制模块220,用于根据所述目标充电位置前往所述目标充电基站进行充电。
可选地,在充电基站为多个的情况下,所述充电位置确定模块210,用于确定所述智能设备的当前位置;根据所述当前位置确定目标充电基站所在的目标充电位置。
可选地,所述智能设备中预先存储有巡检路径和多条充电路径,每个充电基站位于对应的一条充电路径上,所述巡检路径中包括多个巡检航点,每条充电路径包括多个充电航点,所述充电位置确定模块210,用于从每条充电路径中查找距离所述当前位置最近的目标充电航点,其中,所述目标充电航点为所述巡检路径与其中一条充电路径的重合航点;确定所述目标充电航点所在的目标充电路径中的所述目标充电基站所在的目标充电位置。
可选地,每个充电航点与每个巡检航点标记有序列号,多个充电航点与多个巡检航点按照序列号的大小顺序排列,所述充电位置确定模块210,还用于:
若所述当前位置所在的航点为巡检航点,则确定所述当前位置所在的巡检航点的序列号;
根据所述序列号正序遍历所有航点的序列号,确定充电路径中距离所述序列号最近的序列号对应的第一重合航点;以及根据所述序列号倒序遍历所有航点的序列号,确定充电路径中距离所述序列号最近的序列号对应的第二重合航点;
计算获得所述当前位置与所述第一重合航点所在的位置之间的第一距离以及所述当前位置与所述第二重合航点所在的位置之间的第二距离;
比较所述第一距离与所述第二距离,确定较小距离对应的重合航点作为所述目标充电航点。
可选地,所述充电位置确定模块210,还用于正序遍历所述目标充电航点所在的目标充电路径中的所有充电航点的序列号,确定所述目标充电基站所在的充电航点的序列号;根据所述序列号确定所述目标充电基站所在的目标充电位置。
可选地,所述智能设备中预先存储有多条充电路径,所述充电位置确定模块210,还用于确定每条充电路径上的每个充电基站所在的充电位置;根据所述当前位置以及所述每个充电基站所在的充电位置确定多个充电基站中的目标充电基站所在的目标充电位置。
可选地,每个充电基站位于对应的一条充电路径上,所述充电位置确定模块210,还用于确定所述当前位置与每条充电路径上的充电基站所在的充电位置之间的距离,获得多个距离;从所述多个距离中选择与所述当前位置距离最近的充电基站所在的充电位置作为所述目标充电基站所在的目标充电位置。
可选地,所述智能设备还预存储有巡检路径,所述巡检路径中包括多个巡检航点,每条充电路径包括多个充电航点,每个充电航点与每个巡检航点标记有序列号,多个充电航点与多个巡检航点按照序列号的大小顺序排列,所述充电位置确定模块210,还用于:
若所述当前位置所在的航点为巡检航点,则确定所述当前位置所在的巡检航点的第一序列号;
确定所述每条充电路径上的充电基站所在的充电航点的第二序列号;
根据所述第一序列号遍历所有航点的序列号,确定所述智能设备达到所述第二序列号需经过的所有航点的序列号;
根据所述需经过的所有航点的序列号确定所述智能设备前往每个充电基站的前往路径;
根据所述前往路径中各个航点所在的位置确定所述智能设备从所述当前位置与每个充电基站所在的位置之间的距离,获得多个距离。
可选地,所述当前位置所在的航点为巡检航点,所述装置200还包括:
电量检测模块,用于在检测到所述智能设备的剩余电量小于预设值时,则确定所述智能设备需要充电。
可选地,所述智能设备为无人机。
请参照图4,图4为本申请实施例提供的一种智能设备的结构示意图,所述智能设备可以包括:至少一个处理器310,例如CPU,至少一个通信接口320,至少一个存储器330和至少一个通信总线340。其中,通信总线140用于实现这些组件直接的连接通信。其中,本申请实施例中设备的通信接口320用于与其他节点设备进行信令或数据的通信。存储器330可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器330可选的还可以是至少一个位于远离前述处理器的存储装置。存储器330中存储有计算机可读取指令,当所述计算机可读取指令由所述处理器310执行时,智能设备执行上述图1所示方法过程。在智能设备为无人机时,该智能设备还包括有除上述器件外的其他器件,如通信模块、摄像头等,其可以根据实际需求不同而设置不同的器件。存储器330中可存储有充电路径、充电基站所在的充电位置等信息,处理器310可用于执行在确定所述智能设备需要充电时,确定目标充电基站所在的目标充电位置;根据所述目标充电位置前往所述目标充电基站进行充电。
本申请实施例提供一种可读存储介质,所述计算机程序被处理器执行时,执行如图1所示方法实施例中智能设备所执行的方法过程。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如,包括:在确定所述智能设备需要充电时,确定目标充电基站所在的目标充电位置;根据所述目标充电位置前往所述目标充电基站进行充电。
综上所述,本申请实施例提供一种充电控制方法及装置,该方案中,在智能设备需要充电时,可以主动寻找目标充电基站,然后主动前往目标充电基站所在的目标充电位置进行充电,从而实现主动充电的目的,避免了用户手动控制智能设备到达指定充电地点进行充电导致充电不便的问题。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。