一种喷涂机器人天花板喷涂作业行进路径点的检测方法与流程
未命名
08-02
阅读:118
评论:0

1.本发明涉及喷涂机器人技术领域,尤其涉及一种喷涂机器人天花板喷涂作业行进路径点的检测方法。
背景技术:
2.在喷涂机器人的应用中,喷涂机器人的作业路径规划决定着喷涂作业能否以智能化自动控制进行,而由于建筑物室内环境错综复杂,因此在对天花板的边角区域喷涂时,对于该区域所对应的行进路径点容易出现两种以下状况:
3.一是喷涂机器人根据户型图所生成的行进路径点容易出现穿墙而过的现象,即所计算得出的行进路径点位于室外,导致喷涂机器人无法行进至指定位置进行作业;
4.二是所生成的行进路径点容易出现离墙过近的现象,导致喷涂机器人的机械臂无法伸展而开。
5.这两种现象都会导致所生成的行进路径点出现错误,导致喷涂机器人行进至该作业路径点时,存在无法行进至指定位置以及离墙过近的问题,而目前对于喷涂机器人行进路径点的规划缺少相应的检测机制,无法对生成的行进路径点的准确性进行检测,从而造成喷涂机器人在执行喷涂作业时出现误区,并且无法连续性的对室内天花板进行喷涂。
技术实现要素:
6.针对现有技术的不足,本发明提供了一种喷涂机器人天花板喷涂作业行进路径点的检测方法,解决了现有技术无法针对行进路径点是否在室内以及离墙过近进行检测的技术问题。
7.为解决上述技术问题,本发明提供了如下技术方案:一种喷涂机器人天花板喷涂作业行进路径点的检测方法,包括以下步骤:
8.s1、获取待喷涂室内天花板的平面户型图;
9.s2、将平面户型图分割为等同大小的若干个小矩形工作面;
10.s3、对若干个小矩形工作面的有效性进行判断得到有效工作面;
11.s4、计算与有效工作面相对应的行进路径点的坐标;
12.s5、判断行进路径点是否在室内;
13.若是,则进入步骤s6;
14.若否,则重新计算与有效工作面相对应的新的行进路径点,随后返回步骤s5;
15.s6、判断行进路径点是否离墙过近;
16.若是,则重新计算与有效工作面相对应的新的行进路径点,随后返回步骤s5;
17.若否,则结束。
18.进一步地,在步骤s2中,将平面户型图分割为等同大小的若干个小矩形工作面,具体过程包括以下步骤:
19.s21、选择一个矩形a
wbwcwdw
覆盖整个平面户型图,令aw点的坐标为(x
min
,y
min
),bw点
的坐标为(x
max
,y
min
),cw点的坐标为(x
max
,y
max
),dw点的坐标为(x
min
,y
max
),以长为ls、宽为ws将矩形a
wbwcwdw
分割为若干个小矩形工作面;
20.s22、判断每一个小矩形工作面是否为完整工作面;
21.若是,则结束;
22.若否,则进入步骤s23;
23.s23、将不完整工作面补全为完整工作面。
24.进一步地,在步骤s22中,判断每一个小矩形工作面是否为完整工作面,具体过程包括以下步骤:
25.s221、获取小矩形工作面p与墙体所构成拐点的类别,类别分为阳角拐点和阴角拐点;
26.s222、设小矩形工作面p顶点中最小横坐标为x
s min
,最大横坐标为x
s max
,最小纵坐标为y
s min
,最大纵坐标为y
s max
;
27.s223、判断小矩形工作面p是否不具备完整性;
28.若小矩形工作面p中存在一拐点g(xg,yg),使得x
s min
<xg<x
s max
且y
s min
<yg<y
s max
,则小矩形工作面p不具备完整性;
29.s224、判断小矩形工作面p为不完整且规则工作面或不完整且不规则工作面。
30.进一步地,在步骤s224中,判断小矩形工作面p为不完整且规则工作面或不完整且不规则工作面,具体过程包括以下步骤:
31.s2241、令拐点g的下一拐点的坐标为g1(x
g1
,y
g1
),拐点g的上一拐点的坐标为g0(x
g0
,y
g0
);
32.s2242、分别计算拐点g0和g之间的向量以及g和g1之间的向量
33.s2243、根据向量以及向量判断小矩形工作面p是否为不完整且规则工作面;
34.若拐点g为阴角的拐点,且小矩形工作面p内只含有拐点g,则,小矩形工作面p为不完整且规则工作面;
35.若拐点g为阳角的拐点,无论拐点g的下一拐点是否在小矩形工作面p内,则,小矩形工作面p都为需要进行分割的不完整且不规则工作面;
36.若存在两相邻拐点g’(x
g’,y
g’)和g”(x
g”,y
g”),使得线段g’g”与小矩形工作面p的边有两个交点,即当y
s min
<y
g’<y
s max
且y
s min
<y
g”<y
s max
时,x
g’≤x
s min
或x
g’≥x
s max
且x
g”≥x
s max
或x
g”≤x
s max
;
37.或当x
s min
<x
g’<x
s max
且x
s min
<x
g”<x
s max
时,y
g’≤y
s min
或y
g’≥y
s max
且y
g”≥y
s max
或y
g”≤y
s max
,则,小矩形工作面p不具备完整性,为不完整且规则工作面。
38.进一步地,在步骤s3中,对若干个小矩形工作面的有效性进行判断得到有效工作面,具体过程包括以下步骤:
39.s31、令面户型图中边界线段l的起点为l
st
(x
st
,y
st
)、终点为l
ed
(x
ed
,y
ed
),小矩形工作面左下角顶点a1的坐标为(x
a1
,y
a1
),右下角顶点b1的坐标为(x
b1
,y
b1
),右上角顶点c1的坐标为(x
c1
,y
c1
),左上角d1的顶点坐标为(x
d1
,y
d1
);
40.s32、设线段a1c1所在直线方程为y1=k1x1+b1,线段b1d1所在直线方程为y2=k2x2+
b2;
41.s33、当k1≠k2时,联立直线方程k1和k2得到交点即为质心点m;
42.s34、从质心点m水平向右引出一射线p,并按照y
st
≤ym<y
ed
或y
ed
≤ym<y
st
筛选出满足条件的边界线段l,则边界线段l满足y
st
≠y
ed
;
43.s35、设边界线段l所在的直线方程为x=k
l
y+b
l
;
44.s36、将ym代入直线方程x=k
l
y+b
l
,判断质心点m是否位于边界线段l的左侧;
45.若xm<k
l
*ym+b
l
,则质心点m位于边界线段l的左侧;
46.若否,则质心点m位于边界线段l的右侧;
47.s37、依次往复计算出交点的总个数;
48.若交点的总个数为奇数,则质心点m所对应小矩形工作面为有效工作面;
49.若交点的总个数为偶数,则质心点m所对应小矩形工作面为无效工作面。
50.进一步地,在步骤s4中,计算与有效工作面相对应的行进路径点的坐标,具体过程包括以下步骤:
51.s41、令完整工作面abcd左下角顶点a的坐标为(xa,ya),右下角顶点b的坐标为(xb,yb),右上角顶点c的坐标为(xc,yc),左上角d的顶点坐标为(xd,yd),行进路径点p的坐标为(x
p
,y
p
);
52.s42、在线段ab取一点e,令|ae|=d
right
,d
right
为喷涂机器人天花板喷涂作业时x方向的最大偏差,|pe|=d
side
,d
side
为喷涂机器人天花板喷涂作业时距离工作面长边ab的距离;
53.s43、根据顶点a和顶点b之间的单位向量计算点e的坐标;
54.s44、根据点e的坐标计算得到行进路径点p的坐标:
55.s45、计算喷涂机器人在行进路径点p作业的姿态θ
p
。
56.进一步地,在步骤s5中,判断行进路径点是否在室内,具体过程包括以下步骤:
57.s51、令完整工作面a1b1c1d1左下角顶点a1的坐标为右下角顶点b1的坐标为右上角顶点c1的坐标为左上角顶点d1的坐标为行进路径点p1的坐标为新的行进路径点p
’1的坐标为边界线段l的起点为l
st
(x
st
,y
st
)、终点为l
ed
(x
ed
,y
ed
);
58.s52、按照或筛选出满足条件的边界线段l,可知边界线段l满足y
st
≠y
ed
;
59.s53、设边界线段l所在的直线方程为x=k
l
y+b
l
,k
l
=(y
ed-y
st
)/(x
ed-x
st
),b
l
=y
st-k
l
*x
st
;
60.若则边界线段l与从行进路径点p1引出的射线有交点;
61.s54、依次往复计算,得到满足条件的边界线段l
总
的总个数;
62.若边界线段l
总
的总个数为偶数,则行进路径点p1在室外;
63.若边界线段l
总
的总个数为奇数,则行进路径点p1在室内;
64.s55、对在室外的行进路径点p1重新计算得到新的行进路径点p
’1。
65.进一步地,在步骤s6中,判断行进路径点是否离墙过近,具体过程包括以下步骤:
66.s61、令完整工作面a2b2c2d2左下角顶点a2的坐标为右下角顶点b2的坐标为右上角顶点c2的坐标为左上角顶点d2的坐标为行进路径点p2的坐标为行进路径点p
’2的坐标为点s的坐标为(xs,ys),点t的坐标为(x
t
,y
t
);
67.s62、设线段st所在直线方程为:a
st
x+b
st
x+c
st
=0,计算行进路径点p2到线段st所在直线垂线的垂足h的坐标(xh,yh);
68.s63、分别计算行进路径点p2到线段st所在直线的距离d
pst
、行进路径点p2到线段st端点s的距离d
ps
、行进路径点p2到线段st端点t的距离d
pt
、垂足h到线段st端点s的距离d
hs
、垂足h到线段st端点t的距离d
ht
以及线段st端点s到线段st端点t的距离d
st
;
69.s64、从距离d
ps
、距离d
pt
和距离d
pst
中选取对比值与墙阈值s
wall
对比判断行进路径点p2是否离墙过近;
70.若d
ht
+d
hs
>d
st
,则选取d
ps
和d
pt
中小的值作为对比值,若d
ht
+d
hs
=d
st
,则选取d
pst
作为对比值;
71.若对比值小于离墙阈值s
wall
,则行进路径点p2离墙过近;
72.若对比值小于离墙阈值s
wall
,则相反;
73.s65、对在室外的行进路径点p2重新计算得到新的行进路径点p
’2。
74.借由上述技术方案,本发明提供了一种喷涂机器人天花板喷涂作业行进路径点的检测方法,至少具备以下有益效果:
75.1、本发明解决了现有技术无法针对行进路径点是否在室内以及离墙过近进行检测的技术问题,能够对喷涂机器人在对室内天花板喷涂作业所生成的行进路径点的准确性进行检测,避免喷涂机器人无法行进至指定位置以及离墙过近的现象,从而提高了喷涂机器人在对室内天花板执行喷涂作业的质量以及效率。
76.2、本发明能够对分割为小矩形工作面的有效性进行判断,避免出现小矩形工作面完全在平面户型图之外的情况,同时为后续的行进路径点是否在室内以及离墙过近状况检测提供保障,从而保证被分割的小矩形工作面在计算与其相对应的行进路径点的准确性。
附图说明
77.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
78.图1为本发明行进路径点检测方法的流程图;
79.图2为本发明喷涂机器人生成全局路径点的示例图;
80.图3为本发明横切分割方式的示意图;
81.图4为本发明竖切分割方式的示意图;
82.图5为本发明小矩形工作面完整性判断的示意图;
83.图6为本发明不完整工作面分割为子工作面的示意图;
84.图7为本发明不完整工作面横切分割方式的示意图;
85.图8为本发明不完整工作面竖切分割方式的示意图;
86.图9为本发明规则子工作面补全的示意图;
87.图10为本发明小矩形工作面有效性判断的示意图;
88.图11为本发明行进路径点计算的示意图;
89.图12为本发明室外行进路径点和离墙过近行进路径点判定及重计算的示意图。
具体实施方式
90.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。借此对本技术如何应用技术手段来解决技术问题并达成技术功效的实现过程能充分理解并据以实施。
91.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
92.请参照图1-图12,示出了本实施例的一种具体实施方式,本实施例采用将平面户型图进行分割为若干个等同大小的小矩形工作面,并计算出与每一个单独的小矩形工作面相对应的行进路径点进行计算得出其坐标,随后对行进路径点是否在室内以及是否离墙过近两种状况进行判断,同时对不符合上述两种状况的行进路径点再次重新计算得到新的行进路径点,从而保证喷涂机器人在执行喷涂作业过程中的顺利行进以及作业,以此保证所计算得到的行进路径点符合喷涂机器人作业时的连续行进要求,避免出现喷涂机器人无法正常执行喷涂作业以及重复喷涂的现象,进而提高了喷涂机器人在对室内天花板执行喷涂作业的质量以及效率。
93.请参照图1,本实施例提出了一种喷涂机器人天花板喷涂作业行进路径点的检测方法,包括以下步骤:
94.s1、获取待喷涂室内天花板的平面户型图,室内天花板的平面户型图在本实施例中为电子版的cad形式,该户型图能够在施工前直接从建筑图纸中获取并得到,同时与建筑图纸相匹配,便于得到待施工室内天花板的户型数据。
95.需要说明的是,喷涂机器人在执行喷涂作业之前,需要工作人员将待喷涂的室内天花板的平面户型图传输至喷涂机器人,喷涂机器人根据作业面自动生成行进路径点,因此全局路径点包含在一个待喷涂的室内天花板的平面户型图中的所有行进路径点,如图2所示,实线部分所构成的范围为待喷涂的室内天花板,而图中的每一个点则为规划后的喷涂机器人的行进路径点。
96.s2、将平面户型图分割为等同大小的若干个小矩形工作面,如图3、图4所示;
97.具体的在步骤s2中,将平面户型图分割为等同大小的若干个小矩形工作面,具体过程包括以下步骤:
98.s21、选择一个矩形a
wbwcwdw
覆盖整个平面户型图,令aw点的坐标为(x
min
,y
min
),bw点的坐标为(x
max
,y
min
),cw点的坐标为(x
max
,y
max
),dw点的坐标为(x
min
,y
max
),以长为ls、宽为ws将矩形a
wbwcwdw
分割为若干个小矩形工作面;
99.在该步骤中,需要从平面户型图中提取室内天花板的所有拐点,并比较所有拐点的横坐标x和纵坐标y,选取所有拐点中的最小横坐标x
min
、最小纵坐标y
min
、最大横坐标x
max
以及最大纵坐标y
max
,在该步骤中,拐点为平面户型图中的拐角处所对应的点,如图5中所示的拐点t,由于建筑物的户型各不相同,其墙体与墙体之间存在拐角,与拐角相对应的点在本实施例中为拐点t,其坐标(x
t
,y
t
)为已知参数,能够从cad平面户型图中直接获取。
100.如图3和图4所示,在对与平面户型图相对应的矩形a
wbwcwdw
进行分割时分别有两种分割方式,即竖切分割方式以及横切分割方式。
101.具体的,在图3中采用竖切分割方式,小矩形工作面位于地图内部的有效面积分别为s1~s
36
,令si为每个小矩形工作面的有效面积,有效面积之和sv为:
[0102][0103]
矩形a
wbwcwdw
的面积sw为:
[0104]
sw=|a
wbw
|*|c
wdw
|
[0105]
则,竖切分割方式中的有效面积占比λv为:
[0106][0107]
在图4中采用横切分割方式,小矩形工作面位于地图内部的有效面积分别为s1~s
35
,令sj为每个小矩形工作面的有效面积,有效面积之和s
l
为:
[0108][0109]
矩形a
wbwcwdw
的面积sw为:
[0110]
sw=|a
wbw
|*|c
wdw
|
[0111]
则,横切分割方式中的有效面积占比λ
l
为:
[0112][0113]
若λv<λ
l
,则认为小矩形工作面横切分割方式较竖切分割方式更高效,继而选择小矩形工作面横切分割方式,反之则选择小矩形工作面竖切分割方式。
[0114]
在本实施例中,以图4所示出的室内天花板的平面户型图为例进行阐述,采用横切分割方式将平面户型图分割为s1~s
35
个小矩形工作面。
[0115]
s22、判断每一个小矩形工作面是否为完整工作面;
[0116]
若是,则结束;
[0117]
若否,则进入步骤s23;
[0118]
如图5所示,对平面户型图分割成若干个小矩形工作面,会遇到工作面被墙体分割的情况,被墙体分割的小矩形工作面称为不完整工作面,s1~s
14
均为不完整工作面,t0、t及t1均是拐点,如图5可知t0为阴角的拐点,t和t1为阳角的拐点,令分割的小矩形工作面顶点中最小横坐标为x
s min
,最大横坐标为x
s max
,最小纵坐标为y
s min
,最大纵坐标为y
s max
,对小矩形工作面是否为完整工作面的判断如下:
[0119]
s221、获取小矩形工作面p与墙体所构成拐点的类别,类别分为阳角拐点和阴角拐点,示例性的如图3所示,t0为阴角的拐点,t和t1为阳角的拐点,因此,位于墙体边缘处的小矩形工作面存在该种状况,而在平面户型图中,室内天花板的墙体边界信息可以直接从中得到,墙体边界与边界之间在平面图中以拐角的形式展示,其对应的便是拐点,而且拐点的类别是阳角拐点还是阴角拐点能够从平面户型图中直接得到,因此在此不再详细赘述。
[0120]
s222、设小矩形工作面p顶点中最小横坐标为x
s min
,最大横坐标为x
s max
,最小纵坐标为y
s min
,最大纵坐标为y
s max
;
[0121]
s223、判断小矩形工作面p是否不具备完整性;
[0122]
若小矩形工作面p中存在一拐点g(xg,yg),使得x
s min
<xg<x
s max
且y
s min
<yg<y
s max
,则小矩形工作面p不具备完整性;
[0123]
具体的,若存在拐点g(xg,yg),使得x
s min
<xg<x
s max
且y
s min
<yg<y
s max
,则可判定此小矩形工作面不具备完整性,如图5中的小矩形工作面s3、s5、s8、s
10
和s
11
所示。
[0124]
s224、判断小矩形工作面p为不完整且规则工作面或不完整且不规则工作面。
[0125]
具体的在步骤s224中,判断小矩形工作面p为不完整且规则工作面或不完整且不规则工作面,具体过程包括以下步骤:
[0126]
s2241、令拐点g的下一拐点的坐标为g1(x
g1
,y
g1
),拐点g的上一拐点的坐标为g0(x
g0
,y
g0
);
[0127]
s2242、分别计算拐点g0和g之间的向量以及g和g1之间的向量
[0128]
向量以及向量的计算公式为:
[0129][0130][0131]
s2243、根据向量以及向量判断小矩形工作面p是否为不完整且规则工作面;
[0132]
若拐点g为阴角的拐点,且小矩形工作面p内只含有拐点g,则,小矩形工作面p为不完整且规则工作面,如图5中的小矩形工作面s3;
[0133]
若拐点g为阳角的拐点,无论拐点g的下一拐点是否在小矩形工作面p内,则,小矩形工作面p都为需要进行分割的不完整且不规则工作面,如图5中的小矩形工作面s4、s5;
[0134]
若存在两相邻拐点g’(x
g’,y
g’)和g”(x
g”,y
g”),使得线段g’g”与小矩形工作面p的边有两个交点,即当y
s min
<y
g’<y
s max
且y
s min
<y
g”<y
s max
时,x
g’≤x
s min
或x
g’≥x
s max
且x
g”≥x
s max
或x
g”≤x
s max
;
[0135]
或当x
s min
<x
g’<x
smax
且x
s min
<x
g”<x
s max
时,y
g’≤y
s min
或y
g’≥y
s max
且y
g”≥y
s max
或y
g”≤y
s max
,则,小矩形工作面p不具备完整性,为不完整且规则工作面,如图5中的小矩形工作面s1、s7、s
12
、s
13
和s
14
所示。
[0136]
s23、将不完整工作面补全为完整工作面;
[0137]
在该步骤中,小矩形工作面如果是不完整且规则工作面时,可直接进行工作面的补全构成完整工作面后再计算行进路径点,但若是不完整且不规则工作面时,需要将其先分割为规则的子工作面,再进行补全后计算行进路径点。
[0138]
如图6所示,小矩形工作面s4、s5、s
10
、s
11
、s
14
、s
15
和s
16
均为不完整且不规则工作面,随后将其依次分割为规则的子工作面s
4.1
、s
4.2
、s
5.1
、s
5.2
、s
10.1
、s
10.2
、s
11.1
、s
11.2
、s
14.1
、s
14.2
、s
15.1
、s
15.2
、s
16.1
、s
16.2
和s
16.3
,喷涂时先喷涂面积较大的子工作面再喷涂较小的子工作面,具体分割为子工作面的计算如下:
[0139]
本实施例中需要说明的是,分割方式分为横切分割以及竖切分割,对于图7a中不完整且不规则工作面横切划分为s1、s2和s3,令sa为分割后得到的子工作面s1、s2和s3中的最大面积,对于图7b中不完整且不规则工作面横切划分为s4和s5,令sb分割后得到的子工作面s4和s5中的最大面积,对于图8c中不完整且不规则工作面横切划分为s6、s7和s8,令sc为分割后得到的子工作面s6、s7和s8中的最大面积,对于图8d中不完整且不规则工作面横切划分为s9和s
10
,令sd为分割后得到的子工作面s9和s
10
中的最大面积。
[0140]
在横切分割和竖切分割中,如图7a和图8c,若sa>sc,则认为横切分割较竖切分割更有效,选取横切分割方式,反之则选择竖切分割方式;
[0141]
如图7b和图8d,若sb>sd,则认为横切分割较竖切分割更有效,选择横切分割方式,反之则选择竖切分割方式。
[0142]
令小矩形工作面顶点a的坐标为(xa,ya),顶点b的坐标为(xb,yb),顶点c的坐标为(xc,yc),顶点d的坐标为(xd,yd),已知小矩形工作面为不完整且不规则工作面,若拐点g(xg,yg)为阳角的拐点,令拐点g的上一拐点为g0(x
g0
,y
g0
),拐点g的下一拐点为g1(x
g1
,y
g1
),i表示不完整且不规则工作面的编号,即第i个不完整且不规则工作面,则:
[0143]
若拐点g1(x
g1
,y
g1
)不满足xa<x
g1
<xb且ya<y
g1
<yd,并且y
g0
<yg,xg<x
g1
,则分割后的子工作面s
i.2
的顶点坐标为a
i.2
(xa,ya)、b
i.2
(xg,ya)、c
i.2
(xg,yg)、d
i.2
(xa,yg),子工作面s
i.1
的顶点坐标为a
i.1
(xa,yg)、b
i.1
(xb,yg)、c
i.1
(xc,yc)、d
i.1
(xd,yd),如图5中的工作面s
15
所示,此时分割后的子工作面s
15.2
的顶点坐标为a
15.2
(xa,ya)、b
15.2
(xg,ya)、c
15.2
(xg,yg)、d
15.2
(xa,yg),子工作面s
15.1
的顶点坐标为a
15.1
(xa,yg)、b
15.1
(xb,yg)、c
15.1
(xc,yc)、d
15.1
(xd,yd);
[0144]
若拐点g1(x
g1
,y
g1
)不满足xa<x
g1
<xb且ya<y
g1
<yd,并且x
g0
<xg,yg>y
g1
,则分割后的子工作面s
i.1
的顶点坐标为a
i.1
(xa,yg)、b
i.1
(xb,yg)、c
i.1
(xc,yc)、d
i.1
(xd,yd),子工作面s
i.2
的顶点坐标为a
i.2
(xg,ya)、b
i.2
(xb,yb)、c
i.2
(xb,yg)、d
i.2
(xg,yg),如图5中的工作面s
14
所示,此时分割后的子工作面s
14.1
的顶点坐标为a
14.1
(xa,yg)、b
14.1
(xb,yg)、c
14.1
(xc,yc)、d
14.1
(xd,yd),子工作面s
14.2
的顶点坐标为a
14.2
(xg,ya)、b
14.2
(xb,yb)、c
14.2
(xb,yg)、d
14.2
(xg,yg);
[0145]
若拐点g1(x
g1
,y
g1
)不满足xa<x
g1
<xb且ya<y
g1
<yd,并且y
g0
>xg,xg>x
g1
,则分割后的子工作面s
i.1
的顶点坐标为a
i.1
(xa,ya)、b
i.1
(xb,yb)、c
i.1
(xb,yg)、d
i.1
(xa,yg),子工作面s
i.2
的顶点坐标为a
i.2
(xg,yg)、b
i.2
(xb,yg)、c
i.2
(xc,yc)、d
i.2
(xg,yd),如图5中的工作面s5所示,此时分割后的子工作面s
5.1
的顶点坐标为a
5.1
(xa,ya)、b
5.1
(xb,yb)、c
5.1
(xb,yg)、d
5.1
(xa,yg),子工作面s
5.2
的顶点坐标为a
5.2
(xg,yg)、b
5.2
(xb,yg)、c
5.2
(xc,yc)、d
5.2
(xg,yd);
[0146]
若拐点g1(x
g1
,y
g1
)不满足xa<x
g1
<xb且ya<y
g1
<yd,并且x
g0
>xg,yg<y
g1
,则分割后的子工作面s
i.1
的顶点坐标为a
i.1
(xa,ya)、b
i.1
(xb,yb)、c
i.1
(xb,yg)、d
i.1
(xa,yg),子工作面s
i.2
的顶点坐标为a
i.2
(xa,yg)、b
i.2
(xg,yg)、c
i.2
(xg,yc)、d
i.2
(xd,yd),如图5中的工作面s4所示,此时分割后的子工作面s
4.1
的顶点坐标为a
4.1
(xa,ya)、b
4.1
(xb,yb)、c
4.1
(xb,yg)、d
4.1
(xa,yg),子工作面s
4.2
的顶点坐标为a
4.2
(xg,yg)、b
4.2
(xb,yg)、c
4.2
(xc,yc)、d
4.2
(xg,yd);
[0147]
若拐点g1(x
g1
,y
g1
)满足xa<x
g1
<xb且ya<y
g1
<yd,并且y
g0
<yg,xg<x
g1
,则分割后
的子工作面s
i.1
的顶点坐标为a
i.1
(xa,yg)、b
i.1
(xb,yg)、c
i.1
(xc,yc)、d
i.1
(xd,yd),子工作面s
i.2
的顶点坐标为a
i.2
(xa,ya)、b
i.2
(xg,yb)、c
i.2
(xg,yg)、d
i.2
(xa,yg),子工作面s
i.3
的顶点坐标为a
i.3
(x
g1
,ya)、b
i.3
(xb,yb)、c
i.3
(xb,y
g1
)、d
i.3
(x
g1
,y
g1
),如图5中的工作面s
16
所示,此时分割后的子工作面s
16.1
的顶点坐标为a
16.1
(xa,yg)、b
16.1
(xb,yg)、c
16.1
(xc,yc)、d
16.1
(xd,yd),子工作面s
16.2
的顶点坐标为a
16.2
(xa,ya)、b
16.2
(xg,yb)、c
16.2
(xg,yg)、d
16.2
(xa,yg),子工作面s
16.3
的顶点坐标为a
16.3
(x
g1
,ya)、b
16.3
(xb,yb)、c
16.3
(xb,y
g1
)、d
16.3
(x
g1
,y
g1
);
[0148]
若拐点g(xg,yg)为阳角的拐点,拐点g1(x
g1
,y
g1
)为阳角的拐点,令拐点g1的下一拐点为g2(x
g2
,y
g2
),则:
[0149]
若拐点g2(x
g2
,y
g2
)不满足xa<x
g2
<xb且ya<y
g2
<yd,拐点g1(x
g1
,y
g1
)满足xa<x
g1
<xb且ya<y
g1
<yd,并且y
g0
<yg,xg>x
g1
,y
g1
<y
g2
,则分割后的子工作面s
i.1
的顶点坐标为a
i.1
(x
g1
,ya)、b
i.1
(x
g1
,yb)、c
i.1
(xd,yd)、d
i.1
(xa,ya),子工作面s
i.2
的顶点坐标为a
i.2
(x
g1
,ya)、b
i.2
(xg,yb)、c
i.2
(xg,yg)、d
i.2
(x
g1
,y
g1
),如图5中的工作面s
11
所示,此时分割后的子工作面s
11.1
的顶点坐标为a
11.1
(x
g1
,ya)、b
11.1
(x
g1
,yb)、c
11.1
(xd,yd)、d
11.1
(xa,ya),子工作面s
11.2
的顶点坐标为a
11.2
(x
g1
,ya)、b
11.2
(xg,yb)、c
11.2
(xg,yg)、d
11.2
(x
g1
,y
g1
);
[0150]
若拐点g(xg,yg)为阳角的拐点,拐点g1(x
g1
,y
g1
)为阴角的拐点,令拐点g1的下一拐点为g2(x
g2
,y
g2
),则;
[0151]
若拐点g2(x
g2
,y
g2
)不满足xa<x
g2
<xb且ya<y
g2
<yd,拐点g1(x
g1
,y
g1
)满足xa<x
g1
<xb且ya<y
g1
<yd,并且y
g0
<yg,xg<x
g1
,y
g1
<y
g2
,则分割后的子工作面s
i.1
的顶点坐标为a
i.1
(xg,ya)、b
i.1
(xg,yd)、c
i.1
(xd,yd)、d
i.1
(xa,ya),子工作面s
i.2
的顶点坐标为a
i.2
(xg,yg)、b
i.2
(x
g1
,y
g1
)、c
i.2
(x
g1
,yc)、d
i.2
(xg,yd),如图5中的工作面s
10
所示,此时分割后的子工作面s
10.1
的顶点坐标为a
10.1
(xg,ya)、b
10.1
(xg,yd)、c
10.1
(xd,yd)、d
10.1
(xa,ya),子工作面s
10.2
的顶点坐标为a
10.2
(xg,yg)、b
10.2
(x
g1
,y
g1
)、c
10.2
(x
g1
,yc)、d
10.2
(xg,yd)。
[0152]
将分割后得到的规则的子工作面进行补全为完整工作面,具体计算过程如下:
[0153]
由于喷涂机器人进行天花板喷涂作业都是按照固定的矩形工作面进行,需要对不完整且规则的子工作面补全为完整工作面再进行喷涂作业,不完整工作面是实际当中遇墙体障碍物被分割导致的,已知小矩形工作面的长为ls,宽为ws,则在对不完整工作面补全时需要考虑三种障碍物干涉的情况,如图9所示,对于规则的子工作面的短边存在墙体障碍物干涉,即当|ab|<ls,且|bc|=ws,按照图9a所示方式进行补全;对于规则的子工作面的长边存在墙体障碍物干涉,即当|bc|<ws且|ab|=ls,按照图9b所示方式进行补全;对于规则子工作面长边和短边同时存在墙体障碍物干涉,当ws<|ab|<ls且|bc|<ws,按照图9d所示共有4种工作面补全方式;当0<|bc|<ws且|bc|<ws,按照图9e所示共有8种工作面补全方式,本实施例选取图9c所示的工作面补全方式,计算过程如下:
[0154]
令不完整且规则的子工作面左下角顶点a的坐标为(xa,ya),右下角顶点b的坐标为(xb,yb),右上角顶点c的坐标为(xc,yc),左上角d的顶点坐标为(xd,yd),令补全为完整工作面的左下角顶点a’的坐标为(x’a
,y’a
),右下角顶点b’坐标为(x’b
,y’b
),右上角顶点c’坐标为(x’c
,y’c
),左上角d’顶点坐标为(x’d
,y’d
)。
[0155]
对于图9a所示的补全方式,当|ab|<ls,且|bc|=ws时,顶点b与顶点a之间的向量为:
[0156][0157]
向量的模长为:
[0158][0159]
向量的单位向量为:
[0160][0161]
则顶点a’的横坐标顶点a’的点纵坐标的点纵坐标
[0162]
顶点c与顶点d之间的向量为:
[0163][0164]
向量的模长为:
[0165][0166]
向量的单位向量为:
[0167][0168]
则顶点d’横坐标顶点d’的纵坐标的纵坐标
[0169]
对于图9b所示的补全方式,当|bc|<ws且|ab|=ls时,顶点a与顶点d之间的向量为:
[0170][0171]
向量的模长为:
[0172][0173]
向量的单位向量为:
[0174][0175]
则顶点d’的横坐标顶点d’的点纵坐标的点纵坐标
[0176]
顶点b与顶点c之间的向量为:
[0177][0178]
向量的模长为:
[0179][0180]
向量的单位向量为:
[0181][0182]
则顶点c’横坐标顶点c’的点纵坐标的点纵坐标
[0183]
对于图9c所示的补全方式,顶点a与顶点d之间的向量为:
[0184][0185]
向量的模长为:
[0186][0187]
向量的单位向量为:
[0188][0189]
则顶点d’的横坐标顶点d’的点纵坐标的点纵坐标
[0190]
顶点a与顶点b之间的向量为:
[0191][0192]
向量的模长为:
[0193][0194]
向量的单位向量为:
[0195][0196]
则,顶点b’横坐标顶点b’的点纵坐标的点纵坐标
[0197]
则,顶点c’横坐标x
c’=x
b’,顶点c’的点纵坐标y
c’=y
d’。
[0198]
示例性的,如图9c所示的规则的子工作面abcd,根据小矩形工作面的长为ls,宽为ws,则补全为完整工作面为a’b’c’d’,此时将顶点a和顶点a’重合,该重合的点为原点,在计算得出顶点c’和顶点d’的坐标后,此时即可得到完整工作面为a’b’c’d’各顶点的实际坐标,由此将子工作面补全为完整工作面。
[0199]
s3、对若干个小矩形工作面的有效性进行判断得到有效工作面;
[0200]
如图10所示,在平面户型图被分割之后形成的若干个小矩形工作面后,会遇到小
矩形工作面完全在平面户型图之外的情况,位于有效工作区域之外的小矩形工作面称为无效工作面,如小矩形工作面s
15
所示。
[0201]
由于判断小矩形工作面是否有效是根据该工作面是否完全落于有效工作区域内,可以根据小矩形工作面的质心是否位于封闭平面户型图内部来判定工作面的有效性。
[0202]
判定一个点是否在封闭图形内,从此点出发一条射线,观察这条射线与封闭图形边界线交点个数,若交点个数为奇数个,则说明此点在封闭图形内部,若交点个数为偶数个,则说明此点在封闭图形外部;如图10所示,平面户型图由线段l1~l
16
首尾相接形成,对于小矩形工作面s
15
,从其质心点m
15
水平向右发出一条射线,该射线与平面户型图边界线l4和l6分别相交于点与点交点个数为偶数,则说明质心点m
15
位于封闭图形外部,即判定小矩形工作面s
15
无效;
[0203]
对于小矩形工作面s
20
,从其质心点m
20
水平向右发出一条射线,该射线与平面户型图边界线l8相交于点交点个数为奇数,则说明质心点m
20
位于封闭图形内部,即判定工作面s
20
为有效工作面,因此,对小矩形工作面有效性判断具体计算如下
[0204]
在步骤s3中,对若干个小矩形工作面的有效性进行判断得到有效工作面,具体过程包括以下步骤:
[0205]
s31、令面户型图中边界线段l的起点为l
st
(x
st
,y
st
)、终点为l
ed
(x
ed
,y
ed
),小矩形工作面左下角顶点a1的坐标为(x
a1
,y
a1
),右下角顶点b1的坐标为(x
b1
,y
b1
),右上角顶点c1的坐标为(x
c1
,y
c1
),左上角d1的顶点坐标为(x
d1
,y
d1
);
[0206]
s32、设线段a1c1所在直线方程为y1=k1x1+b1,线段b1d1所在直线方程为y2=k2x2+b2;
[0207]
具体的,
[0208][0209]
s33、当k1≠k2时,联立直线方程k1和k2得到交点即为质心点m;
[0210]
质心点m的坐标(xm,ym)为:
[0211][0212]
s34、从质心点m水平向右引出一射线p,并按照y
st
≤ym<y
ed
或y
ed
≤ym<y
st
筛选出满足条件的边界线段l,则边界线段l满足y
st
≠y
ed
;
[0213]
s35、设边界线段l所在的直线方程为x=k
l
y+b
l
;
[0214]
具体的,k
l
=(y
ed-y
st
)/(x
ed-x
st
),b
l
=y
st-k
l
*x
st
;
[0215]
s36、将ym代入直线方程x=k
l
y+b
l
,判断质心点m是否位于边界线段l的左侧;
[0216]
若xm<k
l
*ym+b
l
,则质心点m位于边界线段l的左侧;
[0217]
若否,则质心点m位于边界线段l的右侧;
[0218]
满足边界线段l满足y
st
≠y
ed
以及质心点m位于边界线段l的左侧这两个条件,则可说明该边界线段l与从质心点m水平向上引出的射线p有交点,依次往复计算出交点的总个数,最后根据总个数的奇偶性判定该质心点m是否位于平面户型图内,即可判定质心点m所对应小矩形工作面的有效性。
[0219]
s37、依次往复计算出交点的总个数,并根据交点的总个数的奇偶性判定该质心点m是否位于平面户型图内,即可判定质心点m所对应小矩形工作面的有效性;
[0220]
若交点的总个数为奇数,则质心点m所对应小矩形工作面为有效工作面;
[0221]
若交点的总个数为偶数,则质心点m所对应小矩形工作面为无效工作面。
[0222]
本实施例能够对分割为小矩形工作面的有效性进行判断,避免出现小矩形工作面完全在平面户型图之外的情况,同时为后续的行进路径点是否在室内以及离墙过近状况检测提供保障,从而保证被分割的小矩形工作面在计算与其相对应的行进路径点的准确性。
[0223]
s4、计算与有效工作面相对应的行进路径点的坐标;
[0224]
如图11所示,令完整工作面abcd左下角顶点a的坐标为(xa,ya),右下角顶点b的坐标为(xb,yb),右上角顶点c的坐标为(xc,yc),左上角d的顶点坐标为(xd,yd),行进路径点p的坐标为(x
p
,y
p
),|ae|=d
right
,d
right
为喷涂机器人天花板喷涂作业时x方向的最大偏差,|pe|=d
side
,d
side
为喷涂机器人天花板喷涂作业时距离工作面长边ab的距离,|ab|=ls,ls为完整工作面的长,|ad|=ws,ws为完整工作面的宽,则:
[0225][0226]
线段ap与ae的夹角θ为:
[0227][0228]
若在矩形区域abfg中没有障碍物干扰则可计算行进路径点p如下:
[0229]
s41、令完整工作面abcd左下角顶点a的坐标为(xa,ya),右下角顶点b的坐标为(xb,yb),右上角顶点c的坐标为(xc,yc),左上角d的顶点坐标为(xd,yd),行进路径点p的坐标为(x
p
,y
p
);
[0230]
s42、在线段ab取一点e,令|ae|=d
right
,d
right
为喷涂机器人天花板喷涂作业时x方向的最大偏差,|pe|=d
side
,d
side
为喷涂机器人天花板喷涂作业时距离工作面长边ab的距离;
[0231]
s43、根据顶点a和顶点b之间的单位向量计算点e的坐标;
[0232]
在步骤s43中,根据顶点a和顶点b之间的单位向量计算点e的坐标,具体过程包括以下步骤:
[0233]
s431、计算顶点a和顶点b之间的向量
[0234][0235]
s432、计算向量的模长并根据模长计算向量的单位向量
[0236][0237][0238]
s433、通过单位向量计算点e的坐标(xe,ye);
[0239]
点e的横坐标xe为:
[0240][0241]
点e的横坐标ye为:
[0242][0243]
因此,点e的坐标为
[0244]
s44、根据点e的坐标计算得到行进路径点p的坐标;
[0245]
在已知点e坐标的前提下,与上述步骤s53原理相同可得到向量ap的单位向量
[0246][0247]
上式中,λ1=cos(theta),λ
’1=sin(theta),λ2=sin(theta),λ
’2=cos(theta),其中theta表示ae与ap之间的夹角。
[0248]
则,行进路径点p的坐标(x
p
,y
p
)的的横坐标x
p
以及纵坐标y
p
为:
[0249][0250][0251]
因此,行进路径点p的坐标为
[0252]
s45、计算喷涂机器人在行进路径点p作业的姿态θ
p
。
[0253]
如图11所示,平面户型图存在原点为o的原始坐标系,需要计算喷涂机器人在行进路径点p作业的姿态θ
p
,由于喷涂机器人坐标系的x轴正方向与图中的方向一致,则:
[0254]
若xa=xb且ya>yb,则θ
p
=π/2;
[0255]
若xa=xb且ya<yb,则θ
p
=-π/2;
[0256]
若xa≠xb,则θ
p
=atan2(y
a-yb,x
a-xb)。
[0257]
s5、判断行进路径点是否在室内;
[0258]
若是,则进入步骤s6;
[0259]
若否,则重新计算与有效工作面相对应的新的行进路径点,随后返回步骤s5;
[0260]
如图12所示,将平面户型图分割为若干个小矩形工作面会遇到对完整工作面a1b1c1d1计算的行进路径点p1出现在室外的情况,行进路径点p1的坐标计算过程可通过步骤s4得到,当行进路径点p1出现在室外无法进行喷涂作业时为无效路径点,首先需要对完整工作面计算出来的行进路径点进行是否为室外行进路径点的判定,再对不满足条件的行进路径点所对应的完整工作面重新计算新的行进路径点,如行进路径点p
’1所示,具体计算过程如下:
[0261]
s51、令完整工作面a1b1c1d1左下角顶点a1的坐标为右下角顶点b1的坐标为右上角顶点c1的坐标为左上角顶点d1的坐标为行进路径点p1的坐标为新的行进路径点p
’1的坐标为边界线段l的起点为l
st
(x
st
,y
st
)、终点为l
ed
(x
ed
,y
ed
);
[0262]
s52、按照或筛选出满足条件的边界线段l,可知边界线段l满足y
st
≠y
ed
;
[0263]
s53、设边界线段l所在的直线方程为x=k
l
y+b
l
,k
l
=(y
ed-y
st
)/(x
ed-x
st
),b
l
=y
st-k
l
*x
st
;
[0264]
若则边界线段l与从行进路径点p1引出的射线有交点;
[0265]
s54、依次往复计算,得到满足条件的边界线段l
总
的总个数;
[0266]
若边界线段l
总
的总个数为偶数,则行进路径点p1在室外;
[0267]
若边界线段l
总
的总个数为奇数,则行进路径点p1在室内;
[0268]
s55、对在室外的行进路径点p1重新计算得到新的行进路径点p
’1。
[0269]
在判断得出行进路径点p1在室外后,需要重新计算一个行进路径点,对于新的行进路径点p
’1的计算采用与步骤s4相同的计算方式,具体计算过程如下:
[0270]
如图12所示,若行进路径点p1在室外则需要对完整工作面a1b1c1d1重新计算行进路径点p
’1,在长边c1d1上取一点e
’1,令|c1e
’1|=d
right
,d
right
为喷涂机器人天花板喷涂作业时x方向的最大偏差,|p
’1e
’1|=d
side
,d
side
为喷涂机器人天花板喷涂作业时距离工作面长边c1d1的距离,|a1b1|=ls,ls为完整工作面的长,|a1d1|=ws,ws为完整工作面的宽,则:
[0271][0272]
线段c1p
’1与c1e
’1的夹角θ
’1为:
[0273][0274]
点c1与点d1之间的向量为:
[0275][0276]
向量的模长为:
[0277][0278]
向量的单位向量为:
[0279][0280]
则e
’1点的横坐标为:
[0281][0282]e’1点的纵坐标为:
[0283]
[0284]
在已知e
’1点坐标的前提下,的单位向量采用与上述相同的计算方法及可得到,即:
[0285]
的单位向量为:
[0286][0287]
上式中,λ1=cos(theta),λ
’1=sin(theta),λ2=sin(theta),λ
’2=cos(theta),其中theta表示c1e
’1和c1p
’1之间的夹角。
[0288]
则,行进路径点p
’1的横坐标为:
[0289][0290]
行进路径点p
’1的纵坐标为:
[0291][0292]
经过上述步骤的计算完成了对新的行进路径点p
’1的坐标值计算,如图12所示,平面户型图存在原点为0的原始坐标系,需要计算喷涂机器人在行进路径点p
’1作业的姿态由于喷涂机器人坐标系的x轴正方向与图中方向一致,若且则
[0293]
若且则
[0294]
若则
[0295]
本实施例所提供的行进路径点是否在室内的判断方法,能够快速对行进路径点是否处于室外做出准的的判断检测,并对处于室外的行进路径点进行重新计算得到位于室内的行进路径点,以此避免出现由于行进路径点位于室外而导致喷涂机器人无法行进至指定位置的现象,从而保证喷涂机器人的正常作业。
[0296]
s6、判断行进路径点是否离墙过近;
[0297]
若是,则重新计算与有效工作面相对应的新的行进路径点,随后返回步骤s5;
[0298]
若否,则结束;
[0299]
如图12所示,将平面户型图分割为若干个小矩形工作面会遇到对完整工作面a2b2c2d2计算的行进路径点p2出现离墙过近的情况,行进路径点p2的坐标计算过程可通过步骤s4得到,当行进路径点p2离墙过近无法进行喷涂作业时为无效路径点,首先需要对完整工作面计算出来的行进路径点p2进行是否离墙过近的判定,再对不满足条件的行进路径点所对应的完整工作面重新计算新的行进路径点,如行进路径点p
’2所示,具体计算过程如下:
[0300]
在步骤s6中,判断行进路径点是否离墙过近,具体过程包括以下步骤:
[0301]
s61、令完整工作面a2b2c2d2左下角顶点a2的坐标为右下角顶点b2的坐标为右上角顶点c2的坐标为左上角顶点d2的坐标为行进路径点p2的坐标为行进路径点p
’2的坐标为点s的坐标为(xs,ys),点t的坐标为(x
t
,y
t
);
[0302]
s62、设线段st所在直线方程为:a
st
x+b
st
x+c
st
=0,计算行进路径点p2到线段st所在直线垂线的垂足h的坐标(xh,yh);
[0303]
垂足h的坐标(xh,yh)为:
[0304][0305][0306]
s63、分别计算行进路径点p2到线段st所在直线的距离d
pst
、行进路径点p2到线段st端点s的距离d
ps
、行进路径点p2到线段st端点t的距离d
pt
、垂足h到线段st端点s的距离d
hs
、垂足h到线段st端点t的距离d
ht
以及线段st端点s到线段st端点t的距离d
st
;
[0307]
具体的:
[0308]
行进路径点p2到线段st所在直线的距离d
pst
为:
[0309][0310]
行进路径点p2到线段st端点s的距离d
ps
为:
[0311][0312]
行进路径点p2到线段st端点t的距离d
pt
为:
[0313][0314]
垂足h到线段st端点s的距离d
hs
为:
[0315][0316]
垂足h到线段st端点t的距离d
ht
为:
[0317][0318]
线段st端点s到线段st端点t的距离d
st
为:
[0319][0320]
s64、从距离d
ps
、距离d
pt
和距离d
pst
中选取对比值与墙阈值s
wall
对比判断行进路径点p2是否离墙过近;
[0321]
若d
ht
+d
hs
>d
st
,则选取d
ps
和d
pt
中小的值作为对比值,若d
ht
+d
hs
=d
st
,则选取d
pst
作为对比值;
[0322]
若对比值小于离墙阈值s
wall
,则行进路径点p2离墙过近;
[0323]
若对比值小于离墙阈值s
wall
,则相反;
[0324]
s65、对在室外的行进路径点p2重新计算得到新的行进路径点p
’2。
[0325]
在判断得出进路径点p2离墙过近后,需要重新计算一个行进路径点,对于新的行进路径点p
’2的计算采用与步骤s4相同的计算方式,具体计算过程如下:
[0326]
如图12所示,若行进路径点p2离墙过近则需要对完整工作面a2b2c2d2重新计算行进路径点p
’2,在长边c2d2上取一点e
’2,令|c2e
’2|=d
right
,d
right
为喷涂机器人天花板喷涂作业时x方向的最大偏差,|p
’2e
’2|=d
side
,d
side
为喷涂机器人天花板喷涂作业时距离工作面长边c2d2的距离,|a2b2|=ls,ls为完整工作面的长,|a2d2|=ws,ws为完整工作面的宽,则:
[0327][0328]
线段c2p
’2与c2e
’2的夹角θ
’2为:
[0329][0330]
点c2与点d1之间的向量为:
[0331][0332]
向量的模长为:
[0333][0334]
向量的单位向量为:
[0335][0336]
则e
’2点的横坐标为:
[0337][0338]e’2点的纵坐标为:
[0339][0340]
在已知e
’2点坐标的前提下,的单位向量采用与上述相同的计算方法及可得到,即:
[0341]
的单位向量为:
[0342]
[0343]
上式中,λ1=cos(theta),λ
’1=sin(theta),λ2=sin(theta),λ
’2=cos(theta),其中theta表示c2e
’2和c2p
’2之间的夹角。
[0344]
则,行进路径点p
’2的横坐标为:
[0345][0346]
行进路径点p
’2的纵坐标为:
[0347][0348]
经过上述步骤的计算完成了对新的行进路径点p
’2的坐标值计算,如图12所示,平面户型图存在原点为0的原始坐标系,需要计算喷涂机器人在行进路径点p
’2作业的姿态由于喷涂机器人坐标系的x轴正方向与图中方向一致,若且则
[0349]
若且则
[0350]
若则
[0351]
本实施例所提供的行进路径点是否离墙过近的判断方法,能够快速对行进路径点是否离墙过近做出准的的判断检测,并对离墙过近的行进路径点进行重新计算,以此避免出现由于行进路径点离墙过近而导致喷涂机器人无法正常伸展执行喷涂作业,从而保证喷涂机器人喷涂作业的正常进行。
[0352]
本发明解决了现有技术无法针对行进路径点是否在室内以及离墙过近进行检测的技术问题,能够对喷涂机器人在对室内天花板喷涂作业所生成的行进路径点的准确性进行检测,避免喷涂机器人无法行进至指定位置以及离墙过近的现象,从而提高了喷涂机器人在对室内天花板执行喷涂作业的质量以及效率。
[0353]
以上实施方式对本发明进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
技术特征:
1.一种喷涂机器人天花板喷涂作业行进路径点的检测方法,其特征在于,包括以下步骤:s1、获取待喷涂室内天花板的平面户型图;s2、将平面户型图分割为等同大小的若干个小矩形工作面;s3、对若干个小矩形工作面的有效性进行判断得到有效工作面;s4、计算与有效工作面相对应的行进路径点的坐标;s5、判断行进路径点是否在室内;若是,则进入步骤s6;若否,则重新计算与有效工作面相对应的新的行进路径点,随后返回步骤s5;s6、判断行进路径点是否离墙过近;若是,则重新计算与有效工作面相对应的新的行进路径点,随后返回步骤s5;若否,则结束。2.根据权利要求1所述的检测方法,其特征在于:在步骤s2中,将平面户型图分割为等同大小的若干个小矩形工作面,具体过程包括以下步骤:s21、选择一个矩形a
w
b
w
c
w
d
w
覆盖整个平面户型图,令a
w
点的坐标为(x
min
,y
min
),b
w
点的坐标为(x
max
,y
min
),c
w
点的坐标为(x
max
,y
max
),d
w
点的坐标为(x
min
,y
max
),以长为l
s
、宽为w
s
将矩形a
w
b
w
c
w
d
w
分割为若干个小矩形工作面;s22、判断每一个小矩形工作面是否为完整工作面;若是,则结束;若否,则进入步骤s23;s23、将不完整工作面补全为完整工作面。3.根据权利要求2所述的检测方法,其特征在于:在步骤s22中,判断每一个小矩形工作面是否为完整工作面,具体过程包括以下步骤:s221、获取小矩形工作面p与墙体所构成拐点的类别,类别分为阳角拐点和阴角拐点;s222、设小矩形工作面p顶点中最小横坐标为x
s min
,最大横坐标为x
s max
,最小纵坐标为y
s min
,最大纵坐标为y
s max
;s223、判断小矩形工作面p是否不具备完整性;若小矩形工作面p中存在一拐点g(x
g
,y
g
),使得x
s min
<x
g
<x
s max
且y
s min
<y
g
<y
s max
,则小矩形工作面p不具备完整性;s224、判断小矩形工作面p为不完整且规则工作面或不完整且不规则工作面。4.根据权利要求3所述的检测方法,其特征在于:在步骤s224中,判断小矩形工作面p为不完整且规则工作面或不完整且不规则工作面,具体过程包括以下步骤:s2241、令拐点g的下一拐点的坐标为g1(x
g1
,y
g1
),拐点g的上一拐点的坐标为g0(x
g0
,y
g0
);s2242、分别计算拐点g0和g之间的向量以及g和g1之间的向量s2243、根据向量以及向量判断小矩形工作面p是否为不完整且规则工作面;若拐点g为阴角的拐点,且小矩形工作面p内只含有拐点g,则,小矩形工作面p为不完整且规则工作面;
若拐点g为阳角的拐点,无论拐点g的下一拐点是否在小矩形工作面p内,则,小矩形工作面p都为需要进行分割的不完整且不规则工作面;若存在两相邻拐点g’(x
g’,y
g’)和g”(x
g”,y
g”),使得线段g’g”与小矩形工作面p的边有两个交点,即当y
s min
<y
g’<y
s max
且y
s min
<y
g”<y
s max
时,x
g’≤x
s min
或x
g’≥x
s max
且x
g”≥x
s max
或x
g”≤x
s max;
或当x
s min
<x
g’<x
s max
且x
s min
<x
g”<x
s max
时,y
g’≤y
s min
或y
g’≥y
s max
且y
g”≥y
s max
或y
g”≤y
s max
,则,小矩形工作面p不具备完整性,为不完整且规则工作面。5.根据权利要求1所述的检测方法,其特征在于:在步骤s3中,对若干个小矩形工作面的有效性进行判断得到有效工作面,具体过程包括以下步骤:s31、令面户型图中边界线段l的起点为l
st
(x
st
,y
st
)、终点为l
ed
(x
ed
,y
ed
),小矩形工作面左下角顶点a1的坐标为(x
a1
,y
a1
),右下角顶点b1的坐标为(x
b1
,y
b1
),右上角顶点c1的坐标为(x
c1
,y
c1
),左上角d1的顶点坐标为(x
d1
,y
d1
);s32、设线段a1c1所在直线方程为y1=k1x1+b1,线段b1d1所在直线方程为y2=k2x2+b2;s33、当k1≠k2时,联立直线方程k1和k2得到交点即为质心点m;s34、从质心点m水平向右引出一射线p,并按照y
st
≤y
m
<y
ed
或y
ed
≤y
m
<y
st
筛选出满足条件的边界线段l,则边界线段l满足y
st
≠y
ed
;s35、设边界线段l所在的直线方程为x=k
l
y+b
l
;s36、将y
m
代入直线方程x=k
l
y+b
l
,判断质心点m是否位于边界线段l的左侧;若x
m
<k
l
*y
m
+b
l
,则质心点m位于边界线段l的左侧;若否,则质心点m位于边界线段l的右侧;s37、依次往复计算出交点的总个数;若交点的总个数为奇数,则质心点m所对应小矩形工作面为有效工作面;若交点的总个数为偶数,则质心点m所对应小矩形工作面为无效工作面。6.根据权利要求1所述的检测方法,其特征在于:在步骤s4中,计算与有效工作面相对应的行进路径点的坐标,具体过程包括以下步骤:s41、令完整工作面abcd左下角顶点a的坐标为(x
a
,y
a
),右下角顶点b的坐标为(x
b
,y
b
),右上角顶点c的坐标为(x
c
,y
c
),左上角d的顶点坐标为(x
d
,y
d
),行进路径点p的坐标为(x
p
,y
p
);s42、在线段ab取一点e,令|ae|=d
right
,d
right
为喷涂机器人天花板喷涂作业时x方向的最大偏差,|pe|=d
side
,d
side
为喷涂机器人天花板喷涂作业时距离工作面长边ab的距离;s43、根据顶点a和顶点b之间的单位向量计算点e的坐标;s44、根据点e的坐标计算得到行进路径点p的坐标:s45、计算喷涂机器人在行进路径点p作业的姿态θ
p
。7.根据权利要求1所述的检测方法,其特征在于:在步骤s5中,判断行进路径点是否在室内,具体过程包括以下步骤:s51、令完整工作面a1b1c1d1左下角顶点a1的坐标为右下角顶点b1的坐标为右上角顶点c1的坐标为左上角顶点d1的坐标为行
进路径点p1的坐标为新的行进路径点p
’1的坐标为边界线段l的起点为l
st
(x
st
,y
st
)、终点为l
ed
(x
ed
,y
ed
);s52、按照或筛选出满足条件的边界线段l,可知边界线段l满足y
st
≠y
ed
;s53、设边界线段l所在的直线方程为x=k
l
y+b
l
,k
l
=(y
ed-y
st
)/(x
ed-x
st
),b
l
=y
st-k
l
*x
st
;若则边界线段l与从行进路径点p1引出的射线有交点;s54、依次往复计算,得到满足条件的边界线段l
总
的总个数;若边界线段l
总
的总个数为偶数,则行进路径点p1在室外;若边界线段l
总
的总个数为奇数,则行进路径点p1在室内;s55、对在室外的行进路径点p1重新计算得到新的行进路径点p
’1。8.根据权利要求1所述的检测方法,其特征在于:在步骤s6中,判断行进路径点是否离墙过近,具体过程包括以下步骤:s61、令完整工作面a2b2c2d2左下角顶点a2的坐标为右下角顶点b2的坐标为右上角顶点c2的坐标为左上角顶点d2的坐标为行进路径点p2的坐标为行进路径点p
’2的坐标为点s的坐标为(x
s
,y
s
),点t的坐标为(x
t
,y
t
);s62、设线段st所在直线方程为:a
st
x+b
st
x+c
st
=0,计算行进路径点p2到线段st所在直线垂线的垂足h的坐标(x
h
,y
h
);s63、分别计算行进路径点p2到线段st所在直线的距离d
pst
、行进路径点p2到线段st端点s的距离d
ps
、行进路径点p2到线段st端点t的距离d
pt
、垂足h到线段st端点s的距离d
hs
、垂足h到线段st端点t的距离d
ht
以及线段st端点s到线段st端点t的距离d
st
;s64、从距离d
ps
、距离d
pt
和距离d
pst
中选取对比值与墙阈值s
wall
对比判断行进路径点p2是否离墙过近;若d
ht
+d
hs
>d
st
,则选取d
ps
和d
pt
中小的值作为对比值,若d
ht
+d
hs
=d
st
,则选取d
pst
作为对比值;若对比值小于离墙阈值s
wall
,则行进路径点p2离墙过近;若对比值小于离墙阈值s
wall
,则相反;s65、对在室外的行进路径点p2重新计算得到新的行进路径点p
’2。
技术总结
本发明涉及喷涂机器人技术领域,解决了现有技术无法针对行进路径点是否在室内以及离墙过近进行检测的技术问题,尤其涉及一种喷涂机器人天花板喷涂作业行进路径点的检测方法,包括以下步骤:S1、获取待喷涂室内天花板的平面户型图;S2、将平面户型图分割为等同大小的若干个小矩形工作面;S3、对若干个小矩形工作面的有效性进行判断得到有效工作面。本发明能够对喷涂机器人在对室内天花板喷涂作业所生成的行进路径点的准确性进行检测,避免喷涂机器人无法行进至指定位置以及离墙过近的现象,从而提高了喷涂机器人在对室内天花板执行喷涂作业的质量以及效率。涂作业的质量以及效率。涂作业的质量以及效率。
技术研发人员:叶继超 张文全 江坤 笪新 刘存
受保护的技术使用者:安徽同湃特机器人科技有限公司
技术研发日:2023.05.06
技术公布日:2023/8/1
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/