掌桥专利:专业的专利平台
掌桥专利
首页

割草机器人和割草机器人的控制方法

文献发布时间:2023-06-19 13:48:08


割草机器人和割草机器人的控制方法

技术领域

本发明涉及一种智能设备,具体涉及一种割草机器人和修正割草机器人的路程的修正方法。

背景技术

割草机器人在地面上行走是很可能因为地面的不平整或者地面的潮湿而出现打滑的现象,这时如果不及时的对割草机器人进行一个响应动作,那么割草机器人将会一直处于打滑的状态,这样会降低割草机器人的工作效率。同样的,当割草机器人在具有一定的坡度的斜坡上行走时,割草机器人容易出现侧滑或者滑坡的现象,这时如果不及时的对割草机器人进行一个响应动作,那么割草机器人将会长时间的处于侧滑或者滑坡的状态,这样也会降低割草机器人的工作效率。

发明内容

为解决现有技术的不足,本发明的目的在于提供一种故障判断更准确的割草机器人以及割草机器人的控制方法。

为了实现上述目标,本发明采用如下的技术方案:

一种割草机器人,包括:割草元件;机身,用于支撑割草元件;驱动组件,包括支撑机身以驱动机身在地面上行走的行走轮和与行走轮连接以驱动行走轮转动的马达;第一检测模块,检测在一个周期内割草机器人的机身的运动参数并计算出割草机器人在该周期内的第一路程;第二检测模块,检测在周期内驱动组件的运动参数并计算出割草机器人在该周期内的第二路程;故障判断模块,判断第二路程和第一路程的差值是否大于等于第一预设值;执行模块,驱动割草机器人执行一个响应程序;控制模块,分别与故障判断模块和执行模块连接;其中,在连续的n1个周期内的每个周期内第二路程与第一路程的差值均大于等于第一预设值时,控制模块控制执行模块执行响应程序。

在一个实施例中,当在连续的n2到n3个周期内第二路程与第一路程的差值大于等于第一预设值的周期的数量大于等于n2时,控制模块控制执行模块执行响应程序。

在一个实施例中,所示执行模块包括:报警模块,用于向用户发出报警信号。

在一个实施例中,执行模块包括:避障模块,用于控制割草机器人进行动作响应。

在一个实施例中,割草机器人还包括:设定模块,与故障判断模块连接;设定模块用于设定第一预设值的大小。

在一个实施例中,故障判断模块还判断第一路程和第二路程的差值是否大于等于第二预设值;其中,在连续的k1个周期内的每个周期内第一路程和第二路程的差值均大于等于第二预设值时,控制模块控制执行模块执行响应程序。

在一个实施例中,故障判断模块还判断第一路程和第二路程的差值是否大于等于第二预设值;其中,当在连续的k2到k3个周期内第一路程和第二路程的差值大于等于第二预设值的周期的数量是大于等于k2时,控制模块控制执行模块执行响应程序。

一种割草机器人,包括:割草元件;机身,用于支撑割草元件;驱动组件,包括支撑机身以驱动机身在地面上行走的行走轮和与行走轮连接以驱动行走轮转动的马达;第一检测模块,检测在一个周期内割草机器人的机身的运动参数并计算出割草机器人在该周期内的第一路程;第二检测模块,检测在周期内驱动组件的运动参数并计算出割草机器人在该周期内的第二路程;故障判断模块,判断第二路程和第一路程的差值是否大于等于一个预设值;执行模块,驱动割草机器人执行一个响应程序;控制模块,分别与故障判断模块和执行模块连接;其中,当在连续的n1到n2个周期内第二路程与第一路程的差值大于等于预设值的周期的数量大于等于n1时,控制模块控制执行模块执行响应程序。

一种割草机器人,包括:割草元件;机身,用于支撑割草元件;驱动组件,包括支撑机身以驱动机身在地面上行走的行走轮和与行走轮连接以驱动行走轮转动的马达;第一检测模块,检测在一个周期内割草机器人的机身的运动参数并计算出割草机器人在该周期内的第一路程;第二检测模块,检测在周期内驱动组件的运动参数并计算出割草机器人在该周期内的第二路程;故障判断模块,判断第一路程和第二路程的差值是否大于等于一个预设值;执行模块,驱动割草机器人执行一个响应程序;控制模块,分别与故障判断模块和执行模块连接;其中,在连续的k1个周期内的每个周期内第一路程与第二路程的差值均大于等于预设值时,控制模块控制执行模块执行响应程序。

一种割草机器人,包括:割草元件;机身,用于支撑割草元件;驱动组件,包括支撑机身以驱动机身在地面上行走的行走轮和与行走轮连接以驱动行走轮转动的马达;第一检测模块,检测在一个周期内割草机器人的机身的运动参数并计算出割草机器人在该周期内的第一路程;第二检测模块,检测在周期内驱动组件的运动参数并计算出割草机器人在该周期内的第二路程;

故障判断模块,判断第一路程和第二路程的差值是否大于等于一个预设值;

执行模块,驱动割草机器人执行一个响应程序;

控制模块,分别与故障判断模块和执行模块连接;

其中,当在连续的k1到k2个周期内第一路程与第二路程的差值大于等于预设值的周期的数量大于等于k1时,控制模块控制执行模块执行响应程序。

一种割草机器人的控制方法,割草机器人包括机身和驱动组件,驱动组件包括支撑机身以驱动机身在地面上行走的行走轮和与行走轮连接以驱动行走轮转动的马达,控制方法包括步骤:检测在一个周期内割草机器人的机身的运动参数并计算出割草机器人在该周期内的第一路程,并检测在周期内驱动组件的运动参数并计算出割草机器人在该周期内的第二路程;判断在连续的n1个周期内的每个周期内第二路程与第一路程的差值是否均大于等于一个预设值;在连续的n1个周期内的每个周期内第二路程与第一路程的差值均大于等于预设值时,控制割草机器人执行一个响应程序。

一种割草机器人的控制方法,割草机器人包括机身和驱动组件,驱动组件包括支撑机身以驱动机身在地面上行走的行走轮和与行走轮连接以驱动行走轮转动的马达,控制方法包括步骤:检测在一个周期内割草机器人的机身的运动参数并计算出割草机器人在该周期内的第一路程,并检测在周期内驱动组件的运动参数并计算出割草机器人在该周期内的第二路程;判断在连续的n1到n2个周期内第二路程与第一路程的差值大于等于一个预设值的周期的数量是否大于等于n1;在连续的n1到n2个周期内第二路程与第一路程的差值大于等于预设值的周期的数量大于等于n1时,控制割草机器人执行一个响应程序。

一种割草机器人的控制方法,割草机器人包括机身和驱动组件,驱动组件包括支撑机身以驱动机身在地面上行走的行走轮和与行走轮连接以驱动行走轮转动的马达,控制方法包括步骤:检测在一个周期内割草机器人的机身的运动参数并计算出割草机器人在该周期内的第一路程,并检测在周期内驱动组件的运动参数并计算出割草机器人在该周期内的第二路程;判断在连续的k1个周期内的每个周期内第一路程与第二路程的差值是否均大于等于一个预设值;在连续的k1个周期内的每个周期内第一路程与第二路程的差值均大于等于预设值时,控制割草机器人执行一个响应程序。

一种割草机器人的控制方法,割草机器人包括机身和驱动组件,驱动组件包括支撑机身以驱动机身在地面上行走的行走轮和与行走轮连接以驱动行走轮转动的马达,控制方法包括步骤:检测在一个周期内割草机器人的机身的运动参数并计算出割草机器人在该周期内的第一路程,并检测在周期内驱动组件的运动参数并计算出割草机器人在该周期内的第二路程;判断在连续的k1到k2个周期内第一路程与第二路程的差值大于等于一个预设值的周期的数量是否大于等于k1;在连续的k1到k2个周期内第一路程与第二路程的差值大于等于预设值的周期的数量大于等于k1时,控制割草机器人执行一个响应程序。

本发明的有益之处在于:通过,多个周期的检测与判断,使得该割草机器人的故障判断的准确度更高。

附图说明

图1是一个实施例中割草机器人的立体图;

图2是图1中的割草机器人在边界线区域内行驶时的平面图;

图3是图1中的割草机器人的模块结构图;

图4是图1中的割草机器人的路程的修正方法的流程图;

图5是图1中的割草机器人的路程的另一种修正方法的流程图;

图6是图1中的割草机器人的打滑现象的判断方法的流程图;

图7是图1中的割草机器人的打滑现象的另一种判断方法的流程图;

图8是图1中的割草机器人的侧滑现象或者滑坡现象的判断方法的流程图;

图9是图1中的割草机器人的侧滑现象或者滑坡现象的另一种判断方法的流程图。

具体实施方式

图1所示的割草机器人100作为一种户外行走动力工具,其通常被用于在户外修剪草坪、杂草等植被。割草机器人100能在户外自动行走,无需用户用手推着行走,割草机器人100能根据自身的或者用户端的控制系统自动的修剪草坪。

如图2所示,割草机器人100可以在户外设置的一个边界线区域200内行走以切割植被。边界线区域200的边界可以为线缆,线缆围绕而成边界线区域200。或者边界也可以是地图上虚拟边界,虚拟边界围绕而成虚拟的边界线区域200。在边界线区域200内或者边界上设置用于给割草机器人100充电的充电桩300,当割草机器人100电量不足时,割草机器人100自动的行走至充电桩200进行充电。

如图1所示,割草机器人100包括:割草元件11、机壳12、行走组件13、第一马达14和第二马达。割草元件11用于切割地面上的草。机壳12用于支撑割草元件11、行走组件13,第一马达14和第二马达。行走组件13包括第一行走轮131,第一行走轮131与第一马达14连接,第一马达14驱动第一行走轮131转动。行走组件13还包括第二行走轮,第二行走轮安装至机壳12的前侧,第二行走轮不与第一马达14连接。也即是说,第一马达14只驱动第一行走轮131转动,而第二行走轮起到辅助支撑和行走的目的。可以理解的,在其它实施例中,割草机器人100也可以包括多个分别驱动第一行走轮131和第二行走轮的第一马达14。第二马达用于驱动割草元件11转动以实现割草功能。在其它实施例中,割草机器人100也可以只包括一个马达,这个马达驱动行走组件13,也驱动割草元件11。其中,在本实施例中,将第一行走轮131、驱动第一行走轮131的第一马达14构成的整体认为是用于驱动割草机器人100在地面上行走的驱动组件15。

如图3所示,割草机器人100还包括第一检测模块161和第二检测模块162,第一检测模块161用于检测在一个周期T内割草机器人100的机身10a的运动参数并计算出割草机器人100在该周期T内的第一路程△S1,第二检测模块162用于检测在该周期T内驱动组件15的运动参数并计算出割草机器人100在该周期T内的第二路程△S2。割草机器人100的机身10a可以理解为割草机器人整机的一个运动参数。具体而言,在检测时,第一检测模块161可以通过检测机壳12的运动参数来得出割草机器人100的机身10a的运动参数,或者,第一检测模块161与可以通过检测与机壳12同步的前进或者后退的其它零件的运动参数来得出割草机器人100的机身10a的运动参数。具体而言,机身10a的运动参数具体可以是机身10a的加速度或者机身10a的姿态等,最终通过计算得出机身10a运动的第一路程△S1。可以理解的,在长度较短的周期T内,通过检测机身10a的运动参数计算出的第一路程△S1基本上与割草机器人100在该周期内运动的实际路程基本上是相同的。第二检测模块162可以通过检测第一马达14的运动参数来计算出割草机器人100的第二路程△S2,或者,第二检测模块162也可以通过检测第一行走轮131的运动参数计算出割草机器人100的第二路程△S2。

当割草机器人100正常地在地面上行驶时,在较短的一个周期T内,第一路程△S1和第二路程△S2基本上是相同的,这时割草机器人100的实际路程可以通过第一路程△S1计算得出,也可以通过第二路程△S2计算得出。而当割草机器人100在地面上行驶时出现打滑现象、侧滑现象或者滑坡现象时,割草机器人100在一个周期T内的第一路程△S1和第二路程△S2不同。其中,打滑现象指的是第一行走轮131在第一马达14的驱动下正常转动,但是割草机器人100却停止行走,或者割草机器人100行走的路程小于第一行走轮131驱动割草机器人100应当行走的路程,也即是,第一行走轮131出现空转的情况。具体而言,当割草机器人100在室外行走时,如果割草机器人100行走在不平坦的地面上,地面上的凸起障碍物可能会使得第一行走轮131空转,从而这时割草机器人100容易出现打滑现象。或者,当割草机器人100在潮湿的地面上行走时,地面与行走组件13之间的摩擦力较小,这时第一行走轮131也容易出现空转的现象,从容这时割草机器人100也会出现打滑现象。当割草机器人100在具有一定坡度的地面上时,特别是地面上也比较潮湿时,这时如果机身10a发生移动,但第一行走轮131不转动,可以判断割草机器人100可能出现了滑坡现象或者侧滑现象。

在本实施中,割草机器人100还包括故障判断模块17、修正模块181、控制模块182和执行模块19。故障判断模块17与第一检测模块161连接,故障判断模块17还与第二检测模块162连接,故障判断模块17能够判断第二路程△S2和第一路程△S1的差值是否大于等于第一预设值C1。修正模块181用于修正割草机器人100的实际路程。控制模块182与故障判断模块17连接,控制模块182还与执行模块19连接。当第二路程△S2和第一路程△S1的差值大于等于第一预设值C1时,控制模块182控制修正模块181件割草机器人100的实际路程修正为该周期T开始时的初始路程与第一路程△S1的和。具体而言,故障判断模块17包括第一故障判断模块171,第一故障判断模块171主要用于判断割草机器人100可能实现打滑现象的问题。

当割草机器人100出现打滑现象时,第一路程△S1更接近割草机器人100在该周期T内运动的实际路程,而第二路程△S2则会大于割草机器人100的实际路程,因此,这时将割草机器人100的实际路程修正为周期T开始时的初始路程与第一路程△S1的和,这样可以使得割草机器人100的路程的计算更为精确。同时,在本实施例中,第一路程△S1和第二路程△S2均是在一定周期T内进行检测的,这样,通过周期T的设定,割草机器人100能够循环的进行路程的修正,从而使得割草机器人100的实时的路程的计算更精确。另外,我们知道,即使是当割草机器人100在地面上正常行驶时,受到第一检测模块161的检测精度的限制,第一路程△S1也不可能完全的与割草机器人100的实际路程相同,同样的,受到第二检测模块162的检测精度的限制,第二路程△S2也不可能完全的与割草机器人100的实际路程相同。因此,将故障判断的条件设定为第二路程△S2和第一路程△S1的差值是否大于等于第一预设值C1,该第一预设值C1还大于0,这样能够避免对割草机器人100出现不够准确的修正割草机器人100的实际路程的情况。

故障判断模块17进一步的还包括第二故障判断模块172。第二故障判断模块172与第一检测模块161以及第二检测模块162连接,第二故障判断模块172用于判断第一路程△S1和第二路程△S2的差值是否大于等于第二预设值C2。在第一路程△S1和第二路程△S2的差值大于等于第二预设值C2时,控制模块182控制修正模块181将割草机器人100的实际路程修正为周期T开始时的初始路程与第一路程△S1的和。

具体而言,当割草机器人100出现侧滑现象或者滑坡现象时,第一路程△S1更接近割草机器人100在该周期T内运动的实际路程,而第二路程△S2则会小于割草机器人100的实际路程,因此,这时将割草机器人100的实际路程修正为周期T开始时的初始路程与第一路程△S1的和,这样可以使得割草机器人100的路程的计算更为精确。同时,在本实施例中,第一路程△S1和第二路程△S2均是在一定周期T内进行检测的,这样,通过周期T的设定,割草机器人100能够循环的进行路程的修正,从而使得割草机器人100的实时的路程的计算更精确。另外,我们知道,即使是当割草机器人100在地面上正常行驶时,受到第一检测模块161的检测精度的限制,第一路程△S1也不可能完全的与割草机器人100的实际路程相同,同样的,受到第二检测模块162的检测精度的限制,第二路程△S2也不可能完全的与割草机器人100的实际路程相同。因此,将故障判断的条件设定为第一路程△S1和第二路程△S2的差值是否大于等于第二预设值C2,该第二预设值C2还大于0,这样能够避免对割草机器人100出现不够准确的修正割草机器人100的实际路程的情况。

可以理解的,基于打滑现象而检测的第一路程△S1的周期T和基于侧滑现象而检测的第一路程△S1的周期T也可以不同,这样,可以进一步的根据割草机器人100的工况不同而更精度的检测割草机器人100的实际路程。例如,在一个实施例中,割草机器人100包括两个第一检测模块161和两个第二检测模块162,两个第一检测模块161能够分别在不同的周期T内检测割草机器人100机身10a的运动参数,两个第二检测模块162也可以分别在不同的周期T内检测驱动组件15的运动参数。

如图4所示,修正割草机器人100的路程的修正方法,包括如下步骤:

P1,检测在一个周期T内割草机器人100的机身10a的运动参数并计算出割草机器人100在该周期内的第一路程△S1,并检测在周期T内驱动组件15的运动参数并计算出割草机器人100在该周期内的第二路程△S2。具体而言,在一个周期T中,第一检测模块161从该周期T的开始时的t1时刻开始检测割草机器人100的机身10a的运动参数并计算出割草机器人100在该周期T内所产生的第一路程△S1,其中,在t1时刻时割草机器人100已经行驶的路程为初始路程St1,第二检测模块162从该周期T开始时的t1时刻开始检测驱动组件15的运动参数并计算出割草机器人100在该周期T内所产生的第二路程△S2。

P2,判断第二路程△S2和第一路程△S1的差值是否大于等于第一预设值C1。第一故障判断模块171接收到第一检测模块161和第二检测模块162检测到的数据,然后判断第二路程△S2与第一路程△S1的差值是否大于等于第一预设值C1即判断是否满足公式:

△S2-△S1≥C1;

当第二路程△S2与第一路程C的差值大于等于第一预设值C1时则继续进行到下一步。而当第二路程△S2与第一路程△S1的差值小于第一预设值C1时,则重新回到步骤P1继续进行检测。

P3,将割草机器人100的实际路程St2修正为周期T开始时的初始路程St1与第一路程的△S1和。当第一故障判断模块171判断出△S2与△S1的差值大于等于第一预设值C1时,将判断结果发送至控制模块182,控制模块182控制修正模块181修正割草机器人100的实路程。具体的,修正模块181将割草机器人100行驶至周期T结束时的t2时刻的实际路程St2修正为周期T开始时的初始路程St1和第一路程△S1的和,即按照下述公式进行修正t2时刻的实际路程St2:

St2= St1+△S1;

而当第二路程△S2与第一路程△S1的差值小于第一预设值C1时,则重新回到步骤P1继续进行检测。

如图5所示,在步骤P2和步骤P1之间还包括步骤P21。具体而言:当第二路程△S2与第一路程△S1的差值小于第一预设值C1时,还进一步地判断第一路程△S1和第二路程△S2的差值是否大于等于第二预设值C2,即判断是否满足公式:

△S1-△S2≥C2;

当第一路程△S1和第二路程△S2的差值大于等于第二预设值C2时,则进入到步骤P3,修正模块181将割草机器人100行驶至周期T结束时的t2时刻的实际路程St2修正为周期T开始时的初始路程St1和第一路程△S1的和。而如果第一路程△S1与第二路程△S2的差值小于第二预设值C2时,则重新回到步骤P1继续进行检测。需要说明的是,可以理解的,步骤P2和步骤P21之间不存在先后的顺序。在其它实施中,与可以先进行步骤P21,然后再进行步骤P2。

而当第二路程△S2与第一路程△S1的差值小于第一预设值C1,且第一路程△S1与第二路程△S2的差值小于第二预设值C2,这时,修正模块181将第一路程△S1和第二路程△S2进行融合得到一个融合路程△S,然后修正模块181将割草机器人100在t2时刻的实际路程St2修正为初始路程St1和融合路程△S的和。也即是:

△S=f(△S1, △S2);

这样,能够同时的兼顾第一检测模块161和第二检测模块162的检测精度,从而能够使得割草机器人100的路程的检测精度得到进一步的提高。

在本实施例中,第一检测模块161采用一种惯性测量单元,第二检测模块162采用里程计。这样,当割草机器人100长时间行驶时,惯性测量单元随着误差的累积将对使得检测结果可能不准确,当然在较短时间的周期T内,惯性测量单元的检测结果是比较精确的。因此,在其它一些实施例中,当第二路程△S2与第一路程△S1的差值小于第一预设值C1,且第一路程△S1与第二路程△S2的差值也小于第二预设值C2时,修正模块181将割草机器人100在t2时刻的实际路程St2修正为初始路程St1和第二路程△S2的和。

在本实施例中,第一检测模块161进行检测的周期T大于等于1毫秒且小于等于100毫秒。这样,可以提高割草机器人100的实际路程的检测的精度。进一步而言,周期T大于等于10毫秒且小于等于50毫秒,一方面,可以避免检测的过于频繁而导致的程序容易出错的问题,另一方面也可以降低检测周期的长度,使得实际路程的检测精度得到进一步的提高。

第一预设值C1的大小是可以被调节或者设定的,这样,可以根据割草机器人100的自身的实际条件以及运行的工况实时的调节第一预设值C1的大小,从而提高割草机器人100的实际路程的检测精度。具体而言,在本实施例中,割草机器人100还包括用于设定第一预设值C1的第一设定模块173。第一设定模块173与第一故障判断模块171连接,第一设定模块173能够实时的设定第一预设值C1的大小。在本实施例中,当连续的第一数量的周期T内第二路程△S2与第一路程△S1的差值大于等于第一预设值C1时,修正模块181根据第一检测模块161检测的第一路程△S1修正后的实际路程的误差将会不断的增大,这时第一设定模块173根据第一数量的变化而改变第一预设值C1的大小,从而可以降低检测的误差。进一步而言,第一设定模块173根据第一数量的增大而增大第一预设值C1的大小。

在一些实施例中,第一预设值C1的大小也可以根据割草机器人100的行驶速度的变化而变化。当割草机器人100的行驶速度较大时,检测到的第一路程△S1与第二路程△S2之间的误差将会增大。因此,当割草机器人100的行驶速度增大时,第一设定模块173可以增大第一预设值C1。具体而言,当割草机器人100的机身10a具有第一行驶速度时,第一预设值C1为第一数值,在割草机器人100的机身10a具有第二行驶速度时,第一预设值C1为第二数值。当第一行驶速度大于第二行驶速度时,第一数值大于第二数值。

在其它实施例中,第一预设值C1也可以随着第一路程△S1的变化而变化。具体而言。在割草机器人100在一个周期T内的第一路程△S1为第一数值时的第一预设值C1大于在割草机器人100在一个周期T内的第一路程△S1为第二数值时的第一预设值C1,其中,第一数值大于第二数值。

同样的,第二预设值C2的大小是可以被调节或者设定的,这样,可以根据割草机器人100的自身的实际条件以及运行的工况实时的调节第二预设值C2的大小,从而提高割草机器人100的实际路程的检测精度。具体而言,在本实施例中,割草机器人100还包括用于设定第二预设值C2的第二设定模块174。第二设定模块174与第二故障判断模块172连接,第二设定模块174能够实时的设定第二预设值C2的大小。在本实施例中,当连续的第一数量的周期T内第一路程△S1与第二路程△S2的差值大于等于第二预设值C2时,修正模块181根据第一检测模块161检测的第一路程△S1修正后的实际路程的误差将会不断的增大,这时第二设定模块174根据第一数量的变化而改变第二预设值C2的大小,从而可以降低检测的误差。进一步而言,第二设定模块174根据第一数量的增大而增大第二预设值C2的大小。

在一些实施例中,第二预设值C2的大小也可以根据割草机器人100的行驶速度的变化而变化。当割草机器人100的行驶速度较大时,检测到的第一路程△S1与第二路程△S2之间的误差将会增大。因此,当割草机器人100的行驶速度增大时,设定模块可以增大第二预设值C2。具体而言,当割草机器人100的机身10a具有第一行驶速度时,第二预设值C2为第一数值,在割草机器人100的机身10a具有第二行驶速度时,第二预设值C2为第二数值。当第一行驶速度大于第二行驶速度时,第一数值大于第二数值。

在其它实施例中,第二预设值C2也可以随着第一路程△S1的变化而变化。具体而言。在割草机器人100在一个周期T内的第一路程△S1为第一数值时的第二预设值C2大于在割草机器人100在一个周期T内的第一路程△S1为第二数值时的第二预设值C2,其中,第一数值大于第二数值。

这样,在修正割草机器人100的路程的修正方法中还包括步骤:根据割草机器人100的一个运动参数的变化设定第一预设值C1的大小。如上述,该运动参数可以是割草机器人100机身10a的行驶速度或者在一个周期T内的第一路程△S1,或者,运动参数也可也是连续的发生第一路程△S1与第二路程△S2的差值大于等于第一预设值C1的连续周期T的数量。

割草机器人100还可以包括一个执行模块19,执行模块19用于执行一个响应程序。当在连续的n1个周期T内的每个周期T内第二路程△S2与第一路程△S1的差值均大于等于第一预设值C1时,控制模块182控制执行模块19执行响应程序。即在连续的n1个周期T内,每个周期T中均满足公式:

△S2-△S1≥C1。

具体而言,当在连续的n1个周期T内,第二路程△S2与第一路程△S1的差值均大于等于第一预设值C1,这时,第一故障判断模块171则判断割草机器人100出现了打滑现象。在本实施中,设定了满足第二路程△S2与第一路程△S1的差值均大于等于第一预设值C1的连续的周期T的数量,从而可以提高第一故障判断模块171判断的精度,降低误判率。我们知道,在割草机器人100实际行驶的过程中,通常是在草坪上进行行走,而草坪一般都不够平整,那么割草机器人100在较短的一个周期T内较容易满足第二路程△S2与第一路程△S1的差值大于等于第一预设值C1。如果这时即让割草机器人100执行响应程序,那么很可能会出现割草机器人100一直在执行响应程序,或者说割草机器人100刚启动即执行响应程序,很明显,这样将会大大的影响割草机器人100的运行,将降低了工作效率。而在本实施中,设定了满足第二路程△S2与第一路程△S1的差值均大于等于第一预设值C1的连续的周期T的数量,从而可以避免割草机器人100在未打滑时或者打滑时间可以忽略的情况下也执行响应程序的问题,进而提高了工作效率。另一方面,当第一故障判断模块171判断出割草机器人100出现打滑现象时,执行模块19则执行响应程序,可以避免割草机器人100一直处于打滑状态,从而影响割草的效率。

在本实施中,执行模块19可以包括报警模块191,当第一故障判断模块171判断出割草机器人100出现打滑现象时,报警模块191能够及时的向用户发出报警信号。该报警信号可以是声音信号,这样,当报警模块191发生声音信号时,如果用户不在割草机器人100附近,而是在室内做其它事情,用户则能够及时的听见割草机器人100发生故障的声音信号,从而用户能够及时的赶到以使得割草机器人100脱离困境,进而提高了割草机器人100的工作效率。或者,报警信号是光信号,这样,当在比较昏暗的环境或者比较嘈杂的环境下,用户能够及时地发现割草机器人100出现故障,从而及时地使得割草机器人100脱离困境。再或者,报警信号也可以是割草机器人100自身的一个显示屏上出现报警标志。再或者,报警模块191可以直接向用户端的手机或者电脑或者其它设备传送报警信号,这样用户能够更容易发现割草机器人100出现故障。

在本实施中,执行模块19还包括避障模块192,当第一故障判断模块171判断出割草机器人100发生打滑现象时,避障模块192则控制割草机器人100进行动作响应,从而使得割草机器人100自动地脱离困境。该动作响应可以是使得割草机器人100停机,该动作响应也可以是使得割草机器人100后退,动作响应还可以是使得割草机器人100转向,动作响应还可以是使得割草机器人100改变行驶速度等。最终,通过割草机器人100进行动作响应,从而使得割草机器人100不再打滑。可以理解的,避障模块192控制割草机器人100进行动作响应,或者报警模块191发出报警信号,均认为是执行模块19执行了响应程序。

我们知道当割草机器人100出现打滑现象的过程中,也有可能存在某个周期T内第二路程△S2与第一路程△S1的差值小于第一预设值C1。因此,第一故障判断模块171还能够判断在连续的n2到n3个周期T内第二路程△S2与第一路程△S1的差值大于等于第一预设值C1的周期T的数量是否大于等于n2。当在连续的n2到n3个周期T内第二路程△S2与第一路程△S1的差值大于等于第一预设值C1的周期T的数量大于等于n2时,控制模块182控制执行模块19执行响应程序。这样,能够避免故障判断的遗漏,从而提高了打滑现象判断的准确率。在本实施中,n1小于n2,且n2小于n3,这样使得故障判断的更为合理。具体而言,在连续的n2到n3个周期T内,其中满足公式:△S2-△S1≥C1的周期T的数量大于等于n2,即认为割草机器人100出现打滑现象。可以理解的,如果在连续的n2到n3个周期T内,其中满足第二路程△S2与第一路程△S1的差值大于等于第一预设值C1的周期T的数量与n3的比值大于等于一个预设值,也认为是间接的判断第二路程△S2与第一路程△S1的差值大于等于第一预设值C1的周期T的数量是否大于等于n2。

第二故障判断模块172还能判断第一路程△S1和所述第二路程△S2的差值是否大于等于第二预设值C2。当在连续的k1个所述周期T内的每个所述周期T内所述第一路程△S1和所述第二路程△S2的差值均大于等于所述第二预设值C2时,所述控制模块182控制所述执行模块19执行所述响应程序。即在连续的k1个周期T内,每个周期T中均满足公式:

△S1-△S2≥C2。

具体而言,当在连续的k1个周期T内,第一路程△S1与第二路程△S2的差值均大于等于第二预设值C2,这时,第二故障判断模块172则判断割草机器人100出现了侧滑现象或者滑坡现象。在本实施中,设定了满足第一路程△S1与第二路程△S2的差值均大于等于第二预设值C2的连续的周期T的数量,从而可以提高第二故障判断模块172判断的精度,降低误判率。我们知道,在割草机器人100实际行驶的过程中,通常是在草坪上进行行走,而草坪一般都不够平整,那么割草机器人100在较短的一个周期T内较容易满足第一路程△S1与第二路程△S2的差值均大于等于第二预设值C2。如果这时即让割草机器人100执行响应程序,那么很可能会出现割草机器人100一直在执行响应程序,或者说割草机器人100刚启动即执行响应程序,很明显,这样将会大大的影响割草机器人100的运行,将降低了工作效率。而在本实施中,设定了满足第一路程△S1与第二路程△S2的差值均大于等于第二预设值C2的连续的周期T的数量,从而可以避免割草机器人100在未侧滑时或者侧滑时间可以忽略的情况下也执行响应程序的问题,进而提高了工作效率。另一方面,当第二故障判断模块172判断出割草机器人100出现侧滑现象或者滑坡现象时,执行模块19则执行响应程序,可以避免割草机器人100一直处于侧滑状态或者滑坡状态,从而影响割草的效率。

同样的,当第二故障判断模块172判断出割草机器人100出现侧滑现象或者滑坡现象时,报警模块191可以发出报警信号,或者避障模块192控制割草机器人100进行动作响应。

当割草机器人100出现侧滑现象或者滑坡现象的过程中,也有可能存在某个周期T内第一路程△S1与第二路程△S2的差值小于第二预设值C2。因此,第二故障判断模块172还能够判断在连续的k2到k3个周期T内第一路程△S1与第二路程△S2的差值大于等于第二预设值C2的周期T的数量是否大于等于k2。当在连续的k2到k3个周期T内第一路程△S1与第二路程△S2的差值大于等于第二预设值C2的周期T的数量大于等于k2时,控制模块182控制执行模块19执行响应程序。这样,能够避免故障判断的遗漏,从而提高了侧滑现象或者滑坡现象判断的准确率。在本实施中,k1小于k2,且k2小于k3,这样使得故障判断的更为合理。具体而言,在连续的k2到k3个周期T内,其中满足第一路程△S1与第二路程△S2的差值大于等于第二预设值C2的周期T的数量大于等于k2,即认为割草机器人100出现侧滑现象或者滑坡现象。可以理解的,如果在连续的k2到k3个周期T内,其中满足第一路程△S1与第二路程△S2的差值大于等于第二预设值C2的周期T的数量与k3的比值大于等于一个预设值,也认为是间接的判断第一路程△S1与第二路程△S2的差值大于等于第二预设值C2的周期T的数量是否大于等于k2。

如6所示,控制割草机器人100的控制方法,具体的为判断割草机器人100是否出现打滑现象以及如何做出响应程序的方法,其包括如下步骤:

Q1,检测在一个周期T内割草机器人100机身10a的运动参数并计算出割草机器人100在该周期内的第一路程△S1,并检测在周期T内驱动组件15的运动参数并计算出割草机器人100在该周期内的第二路程△S2。

Q2,判断在连续的n1个周期T内的每个周期T内第二路程△S2与第一路程△S1的差值是否均大于等于第一预设值C1时。当在连续的n1个周期T内的每个周期T内第二路程△S2与第一路程△S1的差值均大于等于第一预设值C1时,则继续进行到下一步。而当不满足连续的n1个周期T内的每个周期T内第二路程△S2与第一路程△S1的差值均大于等于第一预设值C1时,则重新回到步骤Q1继续进行检测。

Q3,在连续的n1个所述周期内的每个所述周期内所述第二路程与所述第一路程的差值均大于等于所述第一预设值时,控制所述割草机器人100执行一个响应程序。

如图6所示,在步骤Q1和步骤Q2之间还可以包括步骤Q12。具体而言,在判断连续的n1个周期T内的每个周期T内第二路程△S2与第一路程△S1的差值是否均大于等于第一预设值C1之前,还可以先进行判断该周期T内第二路程△S2和第一路程△S1的差值是否大于等于第一预设值C1,这样,如果当在一个周期内T不满足第二路程△S2和第一路程△S1的差值小于第一预设值C1时,可以直接回到步骤Q1进行下一个周期T的检测,从而提高了程序运行的效率。

如图7所示,在步骤Q2和步骤Q3之间还可以包括步骤Q21。具体而言,当不满足在连续的n1个周期T内第二路程△S2与第一路程△S1的差值均大于等于第一预设值C1时,可以进一步的判断是否在连续的n2到n3个周期T内的第二路程△S2与第一路程△S1的差值均大于等于第一预设值C1的周期T的数量是否大于等于n2。如果是,则也进行下一步骤Q3;如果不是,则重新回到步骤Q1。可以理解的,其中步骤Q2和步骤Q21之前也不存在先后的顺序。在其它实施中,也可以先进行步骤Q21,然后再进行步骤Q2。

如8所示,另一中控制割草机器人100的控制方法,具体的为判断割草机器人100是否出现侧滑现象或者滑坡现象以及如何做出响应程序的方法,其包括如下步骤:

R1,检测在一个周期T内割草机器人100机身10a的运动参数并计算出割草机器人100在该周期T内的第一路程△S1,并检测在周期T内所述驱动组件15的运动参数并计算出割草机器人100在该周期T内的第二路程△S2。

R2,判断在连续的k1个周期T内的每个周期T内第一路程△S1与第二路程△S2的差值是否均大于等于第二预设值C2。当在连续的k1个周期T内的每个周期T内第一路程△S1与第二路程△S2的差值均大于等于第二预设值C2时,则继续进行到下一步。而当不满足连续的k1个周期T内的每个周期T内第一路程△S1与第二路程△S2的差值均大于等于第二预设值C2时,则重新回到步骤R1继续进行检测。

R3,在连续的k1个周期T内的每个周期T内第一路程△S1与第二路程△S2的差值均大于等于第二预设值C2时,控制所述割草机器人100执行一个响应程序。

如图8所示,在步骤R1和步骤R2之间还可以包括步骤R12。具体而言,在判断连续的k1个周期T内的每个周期T内第一路程△S1与第二路程△S2的差值是否均大于等于第二预设值C2之前,还可以先进行判断该周期T内第一路程△S1与第二路程△S2的差值是否大于等于第二预设值C2,这样,如果当在一个周期内T不满足第一路程△S1与第二路程△S2的差值小于第二预设值C2时,可以直接回到步骤R1进行下一个周期的检测,从而提高了程序运行的效率。

如图9所示,在步骤R2和步骤R3之间还可以包括步骤R21。具体而言,当不满足在连续的k1个周期T内第一路程△S1与第二路程△S2的差值均大于等于第二预设值C2时,可以进一步的判断是否在连续的k2到k3个周期T内的第一路程△S1与第二路程△S2的差值均大于等于第二预设值C2的周期T的数量是否大于等于k2。如果是,则也进行下一步骤R3;如果不是,则重新回到步骤R1。可以理解的,其中步骤R2和步骤R21之前也不存在先后的顺序。在其它实施中,也可以先进行步骤R21,然后再进行步骤R2。。

以上显示和描述了本发明的基本原理、主要特征和优点。本行业的技术人员应该了解,上述实施例不以任何形式限制本发明,凡采用等同替换或等效变换的方式所获得的技术方案,均落在本发明的保护范围内。

技术分类

06120113817188