调整关节位置的方法、装置、存储介质及电子设备与流程

文档序号:31869857发布日期:2022-10-21 18:40阅读:51来源:国知局
调整关节位置的方法、装置、存储介质及电子设备与流程

1.本公开涉及机器人控制领域,具体地,涉及一种调整关节位置的方法、装置、存储介质及电子设备。


背景技术:

2.机器人(如人形机器人或者机械臂)由多个关节组成,机器人在上电后,可以由执行器控制单元ecu控制多个执行器进行运动从而改变关节位置。执行器可以为普通电机执行器,也可以为智能柔性执行器sca(smart compliant actuator)。在执行器运动的过程中,需要对执行器相对于一个零位置点(即零位)运动的位置进行记录,在机器人启动后运动到初始位姿,或者在执行过程中运动到特定位姿时,如果执行器的零位有误,则会导致机器人无法准确的运动到特定的姿势或者位姿,无法执行相应的功能,导致执行能力下降,因此,需要对机器人的执行器零位进行准确地校准和记录。
3.目前,对机器人的执行器零位进行校准和记录时,一般依赖有经验的工人进行操作,将机器人的关节调整到工人认为合适的位置,然后记录下当前的关节位置,以这个位置作为执行器的零位,但由于工人本身的操作具有随意性,并且机器人个体之间的差异,也会再次放大这种随意性,导致机器人之间的执行器零位差异巨大,进而影响到机器人总体动作执行能力。


技术实现要素:

4.本公开的目的是提供一种调整关节位置的方法、装置、存储介质及电子设备。
5.第一方面,提供一种调整关节位置的方法,所述方法包括:针对目标机器人上的每个预设关节,以预设期望位置为目标控制该预设关节对应的执行器运动至第一位置;获取所述目标机器人的图像信息;根据所述图像信息对所述目标机器人进行骨架分析,以确定每个所述预设关节的第二位置,不同的预设关节对应不同的第二位置;根据该预设关节对应的所述第二位置和该预设关节对应的预设期望位置调整该预设关节对应的执行器位置;将调整后的执行器位置作为该预设关节对应的执行器的目标零位。
6.可选地,所述根据该预设关节对应的所述第二位置和该预设关节对应的预设期望位置调整该预设关节对应的执行器位置包括:在调整后判断该预设关节的位置是否满足预设误差条件,若确定该预设关节的位置不满足所述预设误差条件,继续调整该预设关节对应的执行器位置,直至满足所述预设误差条件时结束调整。
7.可选地,所述根据该预设关节对应的所述第二位置和该预设关节对应的预设期望位置调整该预设关节对应的执行器位置包括:
8.根据所述第二位置和所述预设期望位置确定该预设关节的位置是否满足预设误差条件;在确定该预设关节的位置不满足所述预设误差条件的情况下,将该预设关节作为待调整关节;在所述目标机器人上存在至少一个所述待调整关节的情况下,重复执行位置调整步骤,直至所述目标机器人上预设关节的位置均满足所述预设误差条件;所述位置调
整步骤包括:
9.针对每个所述待调整关节,控制该待调整关节对应的执行器运动至第三位置后,获取所述目标机器人的图像信息;根据所述图像信息对所述目标机器人进行骨架分析,以确定每个所述待调整关节的第四位置;根据该待调整关节对应的所述第四位置和该待调整关节对应的预设期望位置确定该待调整关节的位置是否满足所述预设误差条件;在该待调整关节的位置不满足所述预设误差条件的情况下,将该待调整关节作为更新后的待调整关节。
10.可选地,所述以预设期望位置为目标控制该预设关节对应的执行器运动至第一位置包括:
11.可选地,所述目标机器人上设置有第一图像采集装置,所述获取所述目标机器人的图像信息包括:
12.通过所述第一图像采集装置采集预设镜子中所述目标机器人的映像,得到所述图像信息。
13.可选地,所述目标机器人具有数据接收单元,所述获取所述目标机器人的图像信息包括:
14.所述数据接收单元接收第二图像采集装置发送的通过所述第二图像采集装置采集的所述目标机器人的图像信息。
15.可选地,所述根据所述图像信息对所述目标机器人进行骨架分析,以确定每个所述预设关节的第二位置包括:
16.根据所述图像信息通过预先训练得到的骨架分析模型确定每个所述预设关节的所述第二位置。
17.可选地,在所述将调整后的执行器位置作为该预设关节对应的执行器的目标零位之前,所述方法还包括:
18.获取该预设关节对应的预设执行器活动范围,所述预设执行器活动范围为该预设关节对应的执行器可活动的最大位置区间;
19.确定所述调整后的执行器位置是否位于所述预设执行器活动范围内;
20.所述将调整后的执行器位置作为该预设关节对应的所述执行器的目标零位包括:
21.在确定所述调整后的执行器位置位于所述预设执行器活动范围内的情况下,将调整后的执行器位置作为该预设关节对应的执行器的目标零位。
22.第二方面,提供一种调整关节位置的装置,所述装置包括:
23.控制模块,用于针对目标机器人上的每个预设关节,以预设期望位置为目标控制该预设关节对应的执行器运动至第一位置;
24.第一获取模块,用于获取所述目标机器人的图像信息;
25.骨架分析模块,用于根据所述图像信息对所述目标机器人进行骨架分析,以确定每个所述预设关节的第二位置,不同的预设关节对应不同的第二位置;
26.调整模块,用于根据该预设关节对应的所述第二位置和该预设关节对应的预设期望位置调整该预设关节对应的执行器位置;
27.第一确定模块,用于将调整后的执行器位置作为该预设关节对应的执行器的目标零位。
28.可选地,所述调整模块,用于在调整后判断该预设关节的位置是否满足预设误差条件,若确定该预设关节的位置不满足所述预设误差条件,继续调整该预设关节对应的执行器位置,直至满足所述预设误差条件时结束调整。
29.可选地,所述调整模块,用于根据所述第二位置和所述预设期望位置确定该预设关节的位置是否满足预设误差条件;在确定该预设关节的位置不满足所述预设误差条件的情况下,将该预设关节作为待调整关节;在所述目标机器人上存在至少一个所述待调整关节的情况下,重复执行位置调整步骤,直至所述目标机器人上预设关节的位置均满足所述预设误差条件;所述位置调整步骤包括:针对每个所述待调整关节,控制该待调整关节对应的执行器运动至第三位置后,获取所述目标机器人的图像信息;根据所述图像信息对所述目标机器人进行骨架分析,以确定每个所述待调整关节的第四位置;根据该待调整关节对应的所述第四位置和该待调整关节对应的预设期望位置确定该待调整关节的位置是否满足所述预设误差条件;在该待调整关节的位置不满足所述预设误差条件的情况下,将该待调整关节作为更新后的待调整关节。
30.可选地,所述控制模块,用于在获取到第一控制指令的情况下,根据所述第一控制指令控制该预设关节对应的执行器运动至所述第一位置,所述第一控制指令用于指示该预设关节运动至所述预设期望位置。
31.可选地,所述目标机器人上设置有第一图像采集装置,所述第一获取模块,用于通过所述第一图像采集装置采集预设镜子中所述目标机器人的映像,得到所述图像信息。
32.可选地,所述目标机器人具有数据接收单元,所述第一获取模块,用于通过所述数据接收单元接收第二图像采集装置发送的由所述第二图像采集装置采集的所述目标机器人的图像信息。
33.可选地,所述骨架分析模块,用于根据所述图像信息通过预先训练得到的骨架分析模型确定每个所述预设关节的所述第二位置。
34.可选地,所述装置还包括:
35.第二获取模块,用于获取该预设关节对应的预设执行器活动范围,所述预设执行器活动范围为该预设关节对应的执行器可活动的最大位置区间;
36.第二确定模块,用于确定所述调整后的执行器位置是否位于所述预设执行器活动范围内;
37.所述第一确定模块,用于在确定所述调整后的执行器位置位于所述预设执行器活动范围内的情况下,将调整后的执行器位置作为该预设关节对应的执行器的目标零位。
38.第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开第一方面所述方法的步骤。
39.第四方面,提供一种电子设备,包括:存储器,其上存储有计算机程序;
40.处理器,用于执行所述存储器中的所述计算机程序,以实现本公开第一方面所述方法的步骤。
41.通过上述技术方案,针对目标机器人上的每个预设关节,以预设期望位置为目标控制该预设关节对应的执行器运动至第一位置;获取所述目标机器人的图像信息;根据所述图像信息对所述目标机器人进行骨架分析,以确定每个所述预设关节的第二位置,不同的预设关节对应不同的第二位置;根据该预设关节对应的所述第二位置和该预设关节对应
的预设期望位置调整该预设关节对应的执行器位置;将调整后的执行器位置作为该预设关节对应的执行器的目标零位,这样,可以基于机器人视觉实现对机器人的执行器零位自动的进行校准,减少了人工干预,避免了人工操作的随意性,提高零位的校准精度,进而实现了快速、高效地部署智能机器人系统的效果。
42.本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
43.附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
44.图1是根据一示例性实施例示出的一种通过云端智能大脑控制目标机器人调整关节位置的系统架构示意图;
45.图2是根据一示例性实施例示出的一种调整关节位置的方法的流程图;
46.图3是根据一示例性实施例示出的一种机器人关节位置调整的示意图;
47.图4是根据一示例性实施例示出的一种预设执行器活动范围示意图;
48.图5是根据一示例性实施例示出的一种调整关节位置的装置的框图;
49.图6是根据一示例性实施例示出的一种调整关节位置的装置的框图;
50.图7是根据一示例性实施例示出的一种电子设备的结构框图;
51.图8是根据一示例性实施例示出的一种电子设备的结构框图。
具体实施方式
52.以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
53.本公开主要应用于对机器人进行控制时,对机器人的执行器零位进行校准的场景中,相关技术中主要采用人工校准的方式,将机器人的关节调整到工人认为合适的位置,以这个位置对应的执行器位置作为执行器的零位,但由于工人本身的操作具有随意性,并且机器人个体之间的差异,也会再次放大这种随意性,导致机器人之间的执行器零位差异巨大,进而影响到机器人总体动作执行能力。
54.为解决上述技术问题,本公开提供一种调整关节位置的方法、装置、存储介质及电子设备,可以获取目标机器人的图像信息,然后根据该图像信息对目标机器人进行骨架分析,得到目标机器人每个预设关节的第二位置,之后可以基于预设关节的预设期望位置对预设关节对应的执行器位置进行调整,并将调整后的执行器位置作为执行器的目标零位,从而实现了基于机器人视觉自动校准执行器零位,减少了人工干预,避免了人工操作的随意性,提高零位的校准精度,进而实现了快速、高效地部署智能机器人系统的效果。
55.需要说明的是,该方法的执行主体可以为与目标机器人具有通信连接的云端智能大脑(即服务器),也可以为该目标机器人。
56.图1是根据一施例性实施例示出的一种通过云端智能大脑控制目标机器人调整关节位置的系统架构示意图,如图1所示,该系统包括云端智能大脑、rcu(robot control unit,机器人控制单元)以及机器人本体,其中,机器人本体和云端智能大脑之间可以通过rcu进行通信连接,例如,rcu向上与云端智能大脑可以通过wifi/4g/5g等无线方式连接,向
下与机器人系统(机器人本体中的ccu(center control unit,中央控制单元))通过ethernet/usb等有线方式相连接,rcu作为云端智能大脑与机器人连接的桥梁,完成云端智能大脑对机器人的赋能。
57.基于图1所示的系统架构,机器人的关节位置调整程序部署在云端智能大脑中,由云端智能大脑根据机器人本体中摄像头获取的机器人图像信息,或者根据作为执行器位置调整的参照物的图像采集设备(包括另外一台具有摄像头的机器人或者具有摄像头的图像采集设备)获取的机器人图像信息,分析出机器人的骨架信息,该骨架信息由该目标机器人上的多个预设关节的位置信息组成,用于对目标机器人的姿态动作进行判断,然后根据该骨架信息调整每个预设关节对应的执行器位置,并将调整后的执行器位置作为执行器的目标零位。
58.上述已经提及,本公开中的调整关节位置的方法也可以应用于该目标机器人本体内,此种情景下,可以将该关节位置调整程序预先部署至该目标机器人本体内,之后可以由该目标机器人自动进行关节位置的调整,具体的调整过程与基于云端智能大脑的关节位置调整过程相同。
59.下面结合附图对本公开的具体实施方式进行详细说明。
60.图2是根据一示例性实施例示出的一种调整关节位置的方法的流程图,该方法可以应用于云端服务器或者机器人,该云端服务器与待调整关节位置的机器人具有通信连接,如图2所示,该方法包括以下步骤:
61.在步骤s201中,针对目标机器人上的每个预设关节,以预设期望位置为目标控制该预设关节对应的执行器运动至第一位置。
62.其中,该目标机器人是指需要调整关节位置的机器人,例如,该目标机器人可以为人形机器人或者机械臂,另外,该目标机器人可以是具有实体的机器人,有轮子,胳膊等实体的身体器件,也可以是没有实体的机器人,其可以通过连接虚拟机器人设备的显示器展现虚拟机器人的形象,并根据外界环境的输入信息,经过云端智能大脑的处理和分析后,控制虚拟机器人执行运动,该预设关节例如可以包括设置在该目标机器人的头部、颈部、左肩、右肩、左手、右手、左脚、右脚等部位的关节。
63.本公开在调整目标机器人的关节位置的过程中,可以通过执行器控制单元ecu控制执行器的轴转动带动连接在执行器轴上的机器人关节运动,该目标机器人上的每个预设关节分别对应一个或者多个执行器,这样,针对每个预设关节,可以通过控制对应该预设关节的执行器转动实现对该预设关节的关节位置的调整,其中,该执行器可以为普通电机执行器,也可以为智能柔性执行器sca,另外,该第一位置是指执行器的位置,该预设期望位置以及后文提到的第二位置均指该预设关节的位置。
64.在一种可能的应用场景中,机器人上电后,可以获取到第一控制指令,这样,在以预设期望位置为目标控制该预设关节对应的执行器运动至第一位置的过程中,可以在获取到第一控制指令的情况下,根据所述第一控制指令控制该预设关节对应的执行器运动至所述第一位置,所述第一控制指令用于指示该预设关节运动至所述预设期望位置。
65.其中,该预设期望位置为在模拟环境中通过对机器人模拟器在预设的执行器零位时的图像信息进行分析得到的、该预设关节较理想的理论位置,在获取到该第一控制指令后,为了控制该预设关节运动至预设期望位置,可以控制与该预设关节对应的执行器运动
至与该预设期望位置对应的期望执行器位置,在该控制任务执行完成后,考虑到控制过程中控制误差的存在,执行器实际到达的位置与该期望执行器位置会有一定的差别,因此,可以获取该预设关节对应的执行器运动后的该第一位置,该第一位置即为该预设关节对应的执行器的实际位置。
66.在步骤s202中,获取所述目标机器人的图像信息。
67.在本步骤中,可以通过以下两种方式中的任一方式获取目标机器人的图像信息,提高机器人关节位置调整的灵活性:
68.方式一、通过第一图像采集装置采集预设镜子中所述目标机器人的映像,得到所述图像信息。
69.其中,该第一图像采集装置为该目标机器人本体上设置的图像采集装置,例如,可以是摄像头,该预设镜子可以放置在该目标机器人的正前方,以能够完全映射出该目标机器人的完整图像信息,并且该目标机器人上的该第一图像采集装置可以采集到镜子中该目标机器人的映像为镜子位置放置的依据。
70.若由云端智能大脑控制机器人进行关节位置的调整,在通过方式一获取到目标机器人的的图像信息后,该目标机器人可以将该图像信息通过图1所示的系统架构中的rcu上传至云端智能大脑。
71.方式二、所述目标机器人具有数据接收单元,通过该数据接收单元接收第二图像采集装置发送的由所述第二图像采集装置采集的所述目标机器人的图像信息。
72.其中,该第二图像采集装置可以包括另一台具有图像采集功能的机器人,也可以包括任一具有图像采集功能的装置,本公开对此不作限定。
73.若由云端智能大脑控制机器人进行关节位置的调整,在通过方式二获取到目标机器人的的图像信息后,可以由该第二图像采集装置将该图像信息发送至该云端智能大脑,若由该目标机器人控制自己进行关节位置的调整,可以由该第二图像采集装置将该图像信息发送至该目标机器人。
74.在步骤s203中,根据所述图像信息对所述目标机器人进行骨架分析,以确定每个所述预设关节的第二位置,不同的预设关节对应不同的第二位置。
75.在本步骤中,可以根据所述图像信息通过预先训练得到的骨架分析模型确定每个所述预设关节的所述第二位置。
76.其中,该骨架分析模型可以包括深度学习模型,例如,卷积神经网络(convolution neural network,cnn)模型或者全卷积网络(fully-convolutional network,,fcn)模型。
77.本步骤基于该骨架分析模型进行骨架分析确定每个所述预设关节的第二位置的具体实现方式,可以参考相关文献中的描述,在此不作限定。
78.在步骤s204中,根据该预设关节对应的所述第二位置和该预设关节对应的预设期望位置调整该预设关节对应的执行器位置。
79.在调整该预设关节对应的执行器位置后判断该预设关节的位置是否满足预设误差条件,若确定该预设关节的位置不满足所述预设误差条件,继续调整该预设关节对应的执行器位置,直至满足所述预设误差条件时结束调整。
80.其中,该预设误差条件可以表示为如下的形式:
81.(gi-ge)*(gi-ge)<e
82.其中,e为预先设定的最大误差,gi表示对目标机器人的图像信息进行第i次骨架分析后得到的各个预设关节的位置,并且gi=[gi1,gi2,......,gik],其中,k表示该目标机器人上预设关节的数量,gik表示对该目标机器人的图像信息进行第i次骨架分析后得到的第i个预设关节的位置,ge表示与该预设关节对应的预设期望位置。
[0083]
在本步骤中,可以根据所述第二位置和所述预设期望位置确定该预设关节的位置是否满足预设误差条件;在确定该预设关节的位置不满足所述预设误差条件的情况下,将该预设关节作为待调整关节;
[0084]
在所述目标机器人上存在至少一个所述待调整关节的情况下,重复执行位置调整步骤,直至所述目标机器人上的预设关节的位置均满足所述预设误差条件;所述位置调整步骤包括:
[0085]
针对每个所述待调整关节,控制该待调整关节对应的执行器运动至第三位置后,获取所述目标机器人的图像信息;根据所述图像信息对所述目标机器人进行骨架分析,以确定每个所述待调整关节的第四位置;根据该待调整关节对应的所述第四位置和该待调整关节对应的预设期望位置确定该待调整关节的位置是否满足所述预设误差条件,在该待调整关节的位置不满足所述预设误差条件的情况下,将该待调整关节作为更新后的待调整关节。
[0086]
下面以云端智能大脑作为执行主体为例对调整目标机器人的执行器零位的过程进行说明:
[0087]
首先,云端大脑下发机器人动作命令(即为第一控制指令),要求目标机器人的每个预设关节运行至各自对应的预设期望位置ge,在执行完该第一控制指令后,针对每个预设关节,获取到该预设关节对应的执行器运动至第一位置p1,p1=[p1,p2,......,pn],其中,n表示该目标机器人上设置的该执行器的数量,之后目标机器人通过该目标机器人本体上的摄像头采集预设镜子中该目标机器人的映像,获取该目标机器人在第一位置p1时的图像信息,然后将该图像信息上传至云端智能大脑,云端智能大脑根据该图像信息进行骨架分析,确定出p1位置对应的机器人骨架位置信息,该骨架位置信息包括该目标机器人上每个预设关节的第二位置g1,g1=[g1,g2,......,gk],其中,k表示该目标机器人上设置的预设关节的数量,然后将该第二位置g1与每个预设关节对应的预设期望位置ge(ge=[ge1,ge2,......,gek])进行比较,确认哪些预设关节对应的执行器需要移动位置进行运动调节,具体地,针对每个预设关节,确定该预设关节对应的第二位置是否满足该预设误差条件:(g1-ge)*(g1-ge)《e,在确定该预设关节不满足该预设误差条件时,确定该预设关节对应的执行器需要移动位置,即该预设关节为待调整关节,此时可以通过该云端智能大脑向该目标机器人下发第二控制指令,该第二控制指令用于控制该预设关节对应的执行器运动至新的位置,即第三位置p2,然后重新获取该目标机器人位于第三位置p2时的图像信息,并重新进行骨架分析得到每个所述待调整关节的第四位置g2,并重新判断第四位置g2是否满足预设误差条件:(g1-ge)*(g1-ge)《e,直至确定该目标机器人上的每个预设关节的骨架位置信息均满足(g1-ge)*(g1-ge)《e,此时gi对应的pi,其所对应的各个执行器的位置信息,即为目标机器人调整后的执行器的零位信息,上述示例仅是举例说明,本公开对此不作限定。
[0088]
例如,图3是根据一示例性实施例示出的一种机器人关节位置调整的示意图,如图
3所示,左侧为初始的执行器零位位置,右侧为调整后的执行器的目标零位位置。
[0089]
需要说明的是,该目标机器人上设置的该执行器与该预设关节不属于一一对应的关系,在一种可能的应用场景中,可以通过两个或者多个执行器控制一个预设关节的位置调整。
[0090]
另外,在确定出该目标机器人中各个执行器的目标零位后,可以将该目标零位保存在目标机器人本体内,同时也保存在云端智能大脑的数据库中。
[0091]
在步骤s205中,将调整后的执行器位置作为该预设关节对应的执行器的目标零位。
[0092]
在实际的应用场景中,机器人的执行器零位信息是基于执行器的关节活动范围定义的,即该目标零位要位于预设执行器活动范围内,若确定出的该目标零位位于该预设执行器活动范围之外,可以确定该目标零位是一个无效的数据,需要将该无效数据删除,因此,在执行本步骤之前,该方法还可以获取该预设关节对应的预设执行器活动范围,所述预设执行器活动范围为该预设关节对应的执行器可活动的最大位置区间;确定所述调整后的执行器位置是否位于所述预设执行器活动范围内;这样,在执行本步骤的过程中,在确定所述调整后的执行器位置位于所述预设执行器活动范围内的情况下,将调整后的执行器位置作为该预设关节对应的执行器的目标零位。
[0093]
另外,若确定所述调整后的执行器位置位于所述预设执行器活动范围之外,确定该调整后的执行器位置是一个无效数据,需要重新调整零位,或者发出提示信息,由人工进行执行器零位的校准。
[0094]
示例地,图4示出了预设执行器活动范围示意图,如图4所示,该预设执行器活动范围为上限位置和下限位置之间的范围,即图4中的l3,执行器零位在执行器关节活动范围的上限位置与下限位置之间,零位距离下限位置的距离为l1,距离上限位置的范围为l2,l1+l2=l3,并且通常情况下,l1≠l2,此处仅是举例说明,本公开对此不作限定。
[0095]
还需说明的是,在关节位置调整的过程中,若检测到目标机器人发生异常时,可以在机器人本体内的中央控制单元ccu中保存和记录异常事件的类型和日志信息,并上报给云端智能大脑,并且发出提示信息,提醒用户(一般指机器人的使用者)异常事件的发生。
[0096]
其中,该异常事件可以包括但不限于:云端智能大脑与目标机器人的通信中断、机器人的关节之间发生相互碰撞、在循环执行预设次数时,该目标机器人的关节位置还未满足预设误差条件中的一个或者多个异常事件。
[0097]
确定发生异常事件的具体实现方式可以参考相关文献中的描述,在此不作限定。
[0098]
在确定发生异常事件后,云端智能大脑可以根据ccu上报的异常信息,调整执行器运动的方向,或者控制执行器停止运动,以避免关节之间碰撞的发生。
[0099]
采用上述方法,可以基于机器人视觉实现对机器人的执行器零位自动的进行校准,减少了人工干预,避免了人工操作的随意性,提高零位的校准精度,进而实现了快速、高效地部署智能机器人系统的效果。
[0100]
图5是根据一示例性实施例示出的一种调整关节位置的装置的框图,如图5所示,该装置包括:
[0101]
控制模块501,用于针对目标机器人上的每个预设关节,以预设期望位置为目标控制该预设关节对应的执行器运动至第一位置;
[0102]
第一获取模块502,用于获取所述目标机器人的图像信息;
[0103]
骨架分析模块503,用于根据所述图像信息对所述目标机器人进行骨架分析,以确定每个所述预设关节的第二位置,不同的预设关节对应不同的第二位置;
[0104]
调整模块504,用于根据该预设关节对应的所述第二位置和该预设关节对应的预设期望位置调整该预设关节对应的执行器位置;
[0105]
第一确定模块505,用于将调整后的执行器位置作为该预设关节对应的执行器的目标零位。
[0106]
可选地,所述调整模块504,用于在调整后判断该预设关节的位置是否满足预设误差条件,若确定该预设关节的位置不满足所述预设误差条件,继续调整该预设关节对应的执行器位置,直至满足所述预设误差条件时结束调整。
[0107]
可选地,所述调整模块504,用于根据所述第二位置和所述预设期望位置确定该预设关节的位置是否满足预设误差条件;在确定该预设关节的位置不满足所述预设误差条件的情况下,将该预设关节作为待调整关节;在所述目标机器人上存在至少一个所述待调整关节的情况下,重复执行位置调整步骤,直至所述目标机器人上预设关节的位置均满足所述预设误差条件;所述位置调整步骤包括:针对每个所述待调整关节,控制该待调整关节对应的执行器运动至第三位置后,获取所述目标机器人的图像信息;根据所述图像信息对所述目标机器人进行骨架分析,以确定每个所述待调整关节的第四位置;根据该待调整关节对应的所述第四位置和该待调整关节对应的预设期望位置确定该待调整关节的位置是否满足所述预设误差条件;在该待调整关节的位置不满足所述预设误差条件的情况下,将该待调整关节作为更新后的待调整关节。
[0108]
可选地,所述目标机器人上设置有第一图像采集装置,所述第一获取模块502,用于通过所述第一图像采集装置采集预设镜子中所述目标机器人的映像,得到所述图像信息。
[0109]
可选地,所述目标机器人具有数据接收单元,所述第一获取模块502,用于通过所述数据接收单元接收第二图像采集装置发送的由所述第二图像采集装置采集的所述目标机器人的图像信息。
[0110]
可选地,所述骨架分析模块503,用于根据所述图像信息通过预先训练得到的骨架分析模型确定每个所述预设关节的所述第二位置。
[0111]
图6是根据图5所示实施例示出的一种调整关节位置的装置的框图,如图6所示,所述装置还包括:
[0112]
第二获取模块506,用于获取该预设关节对应的预设执行器活动范围,所述预设执行器活动范围为该预设关节对应的执行器可活动的最大位置区间;
[0113]
第二确定模块507,用于确定所述调整后的执行器位置是否位于所述预设执行器活动范围内;
[0114]
所述第一确定模块505,用于在确定所述调整后的执行器位置位于所述预设执行器活动范围内的情况下,将调整后的执行器位置作为该预设关节对应的执行器的目标零位。
[0115]
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0116]
采用上述装置,可以基于机器人视觉实现对机器人的执行器零位自动的进行校准,减少了人工干预,避免了人工操作的随意性,提高零位的校准精度,进而实现了快速、高效地部署智能机器人系统的效果。
[0117]
图7是根据一示例性实施例示出的一种电子设备700的框图。如图7所示,该电子设备700可以包括:处理器701,存储器702。该电子设备700还可以包括多媒体组件703,输入/输出(i/o)接口704,以及通信组件705中的一者或多者。
[0118]
其中,处理器701用于控制该电子设备700的整体操作,以完成上述的调整关节位置的方法中的全部或部分步骤。存储器702用于存储各种类型的数据以支持在该电子设备700的操作,这些数据例如可以包括用于在该电子设备700上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器702可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(static random access memory,简称sram),电可擦除可编程只读存储器(electrically erasable programmable read-only memory,简称eeprom),可擦除可编程只读存储器(erasable programmable read-only memory,简称eprom),可编程只读存储器(programmable read-only memory,简称prom),只读存储器(read-only memory,简称rom),磁存储器,快闪存储器,磁盘或光盘。多媒体组件703可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器702或通过通信组件705发送。音频组件还包括至少一个扬声器,用于输出音频信号。i/o接口704为处理器701和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件705用于该电子设备700与其他设备之间进行有线或无线通信。无线通信,例如wi-fi,蓝牙,近场通信(near field communication,简称nfc),2g、3g、4g、nb-iot、emtc、或其他5g等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件705可以包括:wi-fi模块,蓝牙模块,nfc模块等等。
[0119]
在一示例性实施例中,电子设备700可以被一个或多个应用专用集成电路(application specific integrated circuit,简称asic)、数字信号处理器(digital signal processor,简称dsp)、数字信号处理设备(digital signal processing device,简称dspd)、可编程逻辑器件(programmable logic device,简称pld)、现场可编程门阵列(field programmable gate array,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的调整关节位置的方法。
[0120]
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的调整关节位置的方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器702,上述程序指令可由电子设备700的处理器701执行以完成上述的调整关节位置的方法。
[0121]
图8是根据一示例性实施例示出的一种电子设备800的框图。例如,电子设备800可以被提供为一服务器。参照图8,电子设备800包括处理器822,其数量可以为一个或多个,以及存储器832,用于存储可由处理器822执行的计算机程序。存储器832中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器822可以被配置为
执行该计算机程序,以执行上述的调整关节位置的方法。
[0122]
另外,电子设备800还可以包括电源组件826和通信组件850,该电源组件826可以被配置为执行电子设备800的电源管理,该通信组件850可以被配置为实现电子设备800的通信,例如,有线或无线通信。此外,该电子设备800还可以包括输入/输出(i/o)接口858。电子设备800可以操作基于存储在存储器832的操作系统,例如windows server
tm
,mac os x
tm
,unix
tm
,linux
tm
等等。
[0123]
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的调整关节位置的方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器832,上述程序指令可由电子设备800的处理器822执行以完成上述的调整关节位置的方法。
[0124]
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的调整关节位置的方法的代码部分。
[0125]
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
[0126]
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
[0127]
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1