机器人的通讯方法及系统与流程

文档序号:11930794阅读:1104来源:国知局
机器人的通讯方法及系统与流程

本发明属于信息技术领域,尤其涉及一种机器人的通讯方法及系统。



背景技术:

移动互联网技术的快速发展和普及给机器人领域带来了行的发展机遇,以Android系统为代表的基于嵌入式系统的各种机器人呈爆发式增长。一方面,受嵌入式系统计算、存储能力的限制,这些机器人大部分带有自己的后台服务器;另一方面,机器人实现功能与应用场景的不同决定了机器人间的后台服务器框架、业务逻辑等差别很大,难以形成统一的服务器规范,从而给不同厂家生产的不同类别机器人之间的通讯带来了极大的障碍。



技术实现要素:

鉴于此,本发明实施例提供了一种机器人的通讯方法及系统,以解决不同厂家、不同类别的机器人之间通讯困难的问题。

第一方面,提供了一种机器人的通讯方法,所述通讯方法包括:

在进行通讯时,第一机器人将待传输的数据信息发送至其对应的第一服务器;

所述第一服务器接收所述待传输的数据信息,将所述待传输的数据信息转换为符合平台协议要求的第一数据信息,并将所述第一数据信息发送至互联平台;

所述互联平台接收所述第一数据信息,对所述第一数据信息进行逻辑处理,然后将处理后的所述第一数据信息发送至第二机器人对应的第二服务器;

所述第二服务器接收所述第一数据信息,将所述第一数据信息转换为符合第二机器人协议要求的第二数据信息,并将所述第二数据信息转发至所述第二机器人,以完成机器人之间的通讯。

进一步地,所述通讯方法还包括:

所述第二机器人根据所述第二数据信息获取第三数据信息,并将所述第三数据信息返回至所述第二服务器;

所述第二服务器接收所述第三数据信息,将所述第三数据信息转换为符合平台协议要求的第四数据信息,并将所述第四数据信息转发至所述互联平台;

所述互联平台接收所述第四数据信息,将所述第四数据信息转发至所述第一服务器;

所述第一服务器接收所述第四数据信息,将所述第四数据信息转为符合第一机器人协议要求的第五数据信息,并将所述第五数据信息推送至所述第一机器人。

进一步地,在进行通讯前,所述通讯方法还包括:

所述第一机器人扫描所述第一服务器生成的二维码信息,以向所述第一服务器发起认证请求;

所述第一服务器在接收到所述认证请求后,获取所述第一机器人的MAC地址,以及向所述互联平台请求设备号,然后使用私钥加密所述第一机器人的MAC地址和设备号,得到签名信息,并将所述签名信息发送至所述互联平台;

所述互联平台在接收到所述签名信息后,使用公钥解密所述签名信息,得到所述第一机器人的MAC地址和设备号,并建立所述MAC地址和设备号之间的关联关系。

进一步地,所述通讯方法还包括:

所述第一机器人扫描所述第二机器人的二维码信息,获取所述第二机器人的设备号,并将所述第一机器人和第二机器人的设备号发送至所述第一服务器;

所述第一服务器将所述第一机器人和第二机器人的设备号上传至互联平台;

所述互联平台根据所述第一机器人和第二机器人的设备号建立所述第一机器人与所述第二机器人之间的关联关系。

第二方面,提供了一种机器人的通讯系统,所述通讯系统包括第一机器人及其对应的第一服务器、第二机器人及其对应的第二服务器以及互联平台;

所述第一机器人用于,在进行通讯时,将待传输的数据信息发送至其对应的第一服务器;

所述第一服务器用于,接收所述待传输的数据信息,将所述待传输的数据信息转换为符合平台协议要求的第一数据信息,并将所述第一数据信息发送至互联平台;

所述互联平台用于,接收所述第一数据信息,对所述第一数据信息进行逻辑处理,然后将处理后的所述第一数据信息发送至第二机器人对应的第二服务器;

所述第二服务器用于,接收所述第一数据信息,将所述第一数据信息转换为符合第二机器人协议要求的第二数据信息,并将所述第二数据信息转发至所述第二机器人,以完成机器人之间的通讯。

进一步地,所述第二机器人用于,根据所述第二数据信息获取第三数据信息,并将所述第三数据信息返回至所述第二服务器;

所述第二服务器用于,接收所述第三数据信息,将所述第三数据信息转换为符合平台协议要求的第四数据信息,并将所述第四数据信息转发至所述互联平台;

所述互联平台用于,接收所述第四数据信息,将所述第四数据信息转发至所述第一服务器;

所述第一服务器用于,接收所述第四数据信息,将所述第四数据信息转为符合第一机器人协议要求的第五数据信息,并将所述第五数据信息推送至所述第一机器人。

进一步地,所述第一机器人还用于,扫描所述第一服务器生成的二维码信息,以向所述第一服务器发起认证请求;

所述第一服务器还用于,在接收到所述认证请求后,获取所述第一机器人的MAC地址,以及向所述互联平台请求设备号,然后使用私钥加密所述第一机器人的MAC地址和设备号,得到签名信息,并将所述签名信息发送至所述互联平台;

所述互联平台还用于,在接收到所述签名信息后,使用公钥解密所述签名信息,得到所述第一机器人的MAC地址和设备号,并建立所述MAC地址和设备号之间的关联关系。

进一步地,所述第一机器人还用于,扫描所述第二机器人的二维码信息,获取所述第二机器人的设备号,并将所述第一机器人和第二机器人的设备号发送至所述第一服务器;

所述第一服务器还用于,将所述第一机器人和第二机器人的设备号上传至互联平台;

所述互联平台还用于,根据所述第一机器人和第二机器人的设备号建立所述第一机器人与所述第二机器人之间的关联关系。

与现有技术相比,本发明实施例引入了互联平台,在进行通讯时,由第一机器人将待传输的数据信息发送至其对应的第一服务器;所述第一服务器接收所述待传输的数据信息,将所述待传输的数据信息转换为符合平台协议要求的第一数据信息,并将所述第一数据信息发送至互联平台;所述互联平台接收所述第一数据信息,对所述第一数据信息进行逻辑处理,然后将处理后的所述第一数据信息发送至第二机器人对应的第二服务器;所述第二服务器接收所述第一数据信息,将所述第一数据信息转换为符合第二机器人协议要求的第二数据信息,并将所述第二数据信息转发至所述第二机器人,以实现机器人之间的互联,且本发明实施例是通过互联平台连接机器人对应的服务器,由互联平台来对数据信息进行处理和转发,服务器进行数据格式的转换以匹配不同机器人的固有协议,从而使得不同厂家、不同类别的机器人之间也能够通讯,机器人间的互联不再需要变更机器人,有效地缩减了不同厂家、不同类别机器人间的连接成本,实现了机器人间的快速互联。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。

图1是本发明实施例提供的机器人的通讯系统的组成结构图;

图2是本发明实施例提供的机器人通过服务器与互联平台之间的认证过程的实现流程图;

图3是本发明实施例提供的机器人之间通过服务器建立彼此之间的关联关系的实现流程图;

图4是本发明实施例提供的机器人的通讯方法的第一实现流程图;

图5是本发明实施例提供的机器人的通讯方法的第二实现流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例引入了互联平台,在进行通讯时,由第一机器人将待传输的数据信息发送至其对应的第一服务器;所述第一服务器接收所述待传输的数据信息,将所述待传输的数据信息转换为符合平台协议要求的第一数据信息,并将所述第一数据信息发送至互联平台;所述互联平台接收所述第一数据信息,对所述第一数据信息进行逻辑处理,然后将处理后的所述第一数据信息发送至第二机器人对应的第二服务器;所述第二服务器接收所述第一数据信息,将所述第一数据信息转换为符合第二机器人协议要求的第二数据信息,并将所述第二数据信息转发至所述第二机器人,以实现机器人之间的互联,且本发明实施例是通过互联平台连接机器人对应的服务器,由互联平台来对数据信息进行处理和转发,服务器进行数据格式的转换以匹配不同机器人的固有协议,从而使得不同厂家、不同类别的机器人之间也能够通讯,机器人间的互联不再需要变更机器人,有效地缩减了不同厂家、不同类别机器人间的连接成本,实现了机器人间的快速互联。本发明实施例还提供了相应的系统,以下分别进行详细的说明。

图1示出了本发明实施例提供的机器人的通讯系统的组成结构。

在本发明实施例中,所述机器人的通讯系统由若干个机器人1及其对应的服务器2、互联平台3组成。所述机器人1与其对应的服务器2之间通过无线Wi-Fi连接,所述服务器2通过有线或者无线的方式与所述互联平台3连接。为了便于描述,这里将相互通讯的两个机器人及其服务器记为第一机器人及其第一服务器、第二机器人及其第二服务器,当然机器人的通讯过程不局限于一对一,与此类似可以实现多对多的互联,如图1所示。本发明实施例不对所述机器人的生产厂家、类别进行限定,所述机器人包括不同厂家生产的不同类别的机器人。

所述互联平台3中的数据库、存储、计算单元采用分布式架构,以适应连接用户的平台动态扩展;互联平台3为机器人1提供了账号认证、文件存储、数据推送等服务,并且为服务器2提供了软件开发包(Software Development Kit)以供其开发用。

在进行数据通讯之前,待通讯的机器人需要完成与互联平台之间的认证,以及两两待通讯的机器人之间需要建立彼此之间的关联关系。

以下以第一机器人为例来说明认证过程,参阅图2,示出了本发明实施例提供的机器人通过服务器与互联平台之间的认证过程,包括:

在步骤S201中,所述第一机器人扫描所述第一服务器生成的二维码信息,以向所述第一服务器发起认证请求。

在步骤S202中,所述第一服务器在接收到所述认证请求后,获取所述第一机器人的MAC地址,以及向所述互联平台请求设备号,然后使用私钥加密所述第一机器人的MAC地址和设备号,得到签名信息,并将所述签名信息发送至所述互联平台。

在步骤S203中,所述互联平台在接收到所述签名信息后,使用公钥解密所述签名信息,得到所述第一机器人的MAC地址和设备号,并建立所述MAC地址和设备号之间的关联关系。

在这里,第一服务器以MAC地址作为机器人的唯一标识,从互联平台请求设备号,生成一个包含该设备号的二维码;所述第一机器人扫描所述二维码,通知所述第一服务器建立MAC地址与设备号之间的对应关系。然后所述第一服务器与互联平台之间通过公私钥非对称加密的方式进行认证,其中,第一服务器存储私钥,互联平台存储公钥。在进行认证时,第一服务器使用所述私钥生成包含MAC地址与设备号的签名信息,然后将所述签名信息发送至互联平台,互联平台则通过公钥验证该签名信息的合法性,解析所述签名信息得到所述第一机器人的MAC地址和设备号,从而完成对所述第一机器人的认证。

需要说明的是,上述仅仅是以第一机器人为例来说明了机器人与互联平台认证的过程,其他(不同厂商、不同类别的)机器人与互联平台的认证过程与上同。

进一步地,以下以第一机器人、第二机器人为例来说明关联过程,所述第一机器人和第二机器人均与所述互联平台进行过认证。参阅图3,示出了本发明实施例提供的机器人之间通过服务器建立彼此之间的关联关系的过程,包括:

在步骤S301中,所述第一机器人扫描所述第二机器人的二维码信息,获取所述第二机器人的设备号,并将所述第一机器人和第二机器人的设备号发送至所述第一服务器。

在步骤S302中,所述第一服务器将所述第一机器人和第二机器人的设备号上传至互联平台。

在步骤S303中,所述互联平台根据所述第一机器人和第二机器人的设备号建立所述第一机器人与所述第二机器人之间的关联关系。

在步骤S304中,所述互联平台向所述第一服务器返回所述关联关系。

在步骤S305中,所述互联平台向所述第二服务器返回绑定消息。

在步骤S306中,所述第二服务器将所述绑定消息发送至所述第二机器人。

在这里,当进行关联时,第一机器人在完成自身的扫码绑定前提下,通过扫描待连接的第二机器人的二维码信息,得到该第二机器人的设备号,然后采用私钥对所述第一机器人和第二机器人的设备号进行加密,得到签名信息,并将所述签名信息发送至所述互联平台。当互联平台接收到所述签名信息后,通过解析from字段得到该签名信息来源(即第一机器人)的设备号以及与之关联的机器人(即第二机器人)的设备号,建立所述第一机器人与所述第二机器人之间的关联关系。

在完成认证与关联之后,机器人可以使用其对应的服务器与所述互联平台实现相互间的通讯。图4示出了本发明实施例提供的机器人的通讯方法的第一实现流程。参阅图4,所述机器人的通讯方法包括:

在步骤S401中,在进行通讯时,第一机器人将待传输的数据信息发送至其对应的第一服务器。

在步骤S402中,所述第一服务器接收所述待传输的数据信息,将所述待传输的数据信息转换为符合平台协议要求的第一数据信息。

在步骤S403中,所述第一服务器将所述第一数据信息发送至互联平台。

在步骤S404中,所述互联平台接收所述第一数据信息,对所述第一数据信息进行逻辑处理。

在步骤S405中,所述互联平台将处理后的所述第一数据信息发送至第二机器人对应的第二服务器。

在步骤S406中,所述第二服务器接收所述第一数据信息,将所述第一数据信息转换为符合第二机器人协议要求的第二数据信息。

在步骤S407中,所述第二服务器将所述第二数据信息转发至所述第二机器人,以完成机器人之间的通讯。

可选地,所述待传输的数据信息包括但不限于多媒体数据(比如图片、语音、视频等)、文本数据等。

示例性地,以下以多媒体数据进行说明。首先,所述第一机器人将待传输的多媒体文件上传至对应的第一服务器;所述第一服务器接收所述第一机器人上传的多媒体文件,将所述多媒体文件转换为符合平台协议要求的多媒体文件,通过调用SDK将所述多媒体文件发送至互联平台;所述互联平台在接收到所述多媒体文件后,则根据所述多媒体文件生成媒体标识并将所述媒体标识发送至第二机器人对应的第二服务器;其中,所述媒体标识mediaid为所述多媒体文件的唯一标识,用于区分不同的多媒体文件。所述第二服务器在接收到所述媒体标识后,则根据所述媒体标识从所述互联平台下载所述多媒体文件,然后将所述多媒体文件转换为符合所述第二机器人协议要求的多媒体文件,并将转换后的多媒体文件发送至所述第二机器人;从而完成了机器人之间的多媒体文件传输。

本发明实施例通过所述互联平台连接不同机器人对应的服务器,对数据信息进行逻辑处理及转发,从而实现了不同厂家、不同类别的机器人之间的单向数据传输。

进一步地,在图4实施例的基础上提出本发明实施例提供的机器人的通讯方法的第二实现流程。参阅图5,所述机器人的通讯方法还包括:

在步骤S408中,所述第二机器人根据所述第二数据信息获取第三数据信息。

在步骤S409中,所述第二机器人将所述第三数据信息返回至所述第二服务器。

在步骤S410中,所述第二服务器接收所述第三数据信息,将所述第三数据信息转换为符合平台协议要求的第四数据信息。

在步骤S411中,所述第二服务器将所述第四数据信息转发至所述互联平台。

在步骤S412中,所述互联平台接收所述第四数据信息,将所述第四数据信息转发至所述第一服务器。

在步骤S413中,所述第一服务器接收所述第四数据信息,将所述第四数据信息转为符合所述第一机器人协议要求的第五数据信息。

在步骤S414中,所述第一服务器将所述第五数据信息推送至所述第一机器人。

在这里,所述待传输的数据信息可以为数据请求指令、查询指令、获取指令等控制信息。以下以待传输的数据信息为数据请求指令为例来进行说明,所述第三数据信息则为根据所述数据请求信息得到的反馈信息。首先第一机器人将数据请求信息发送至对应的第一服务器;所述第一服务器接收所述发第一机器人发送的数据请求信息,将所述数据请求信息转换为符合平台协议要求的第一数据信息,然后调用SDK将所述第一数据信息发送至互联平台;所述互联平台在接收到所述第一数据信息后,判断信息类型,然后将所述第一数据信息转发至第二服务器;所述第二服务器接收所述互联平台转发的第一数据信息,将其转换为符合第二机器人平台协议要求的第二数据信息,并将所述第二数据信息推送至所述第二机器人;所述第二机器人则根据所述第二数据信息查询状态信息,并将所得到的状态信息作为第三数据信息返回至对应的第二服务器;所述第二服务器接收到所述状态信息后,将所述状态信息转换为符合平台协议要求的第四数据信息,并将其转发至所述互联平台;所述互联平台在接收到所述第四数据信息后,将其转发至第一机器人对应的第一服务器;所述第一服务器接收所述第四数据信息,并将所述第四数据信息转换为符合第一机器人协议要求的第五数据信息,然后推送至所述第一机器人;从而完成了机器人之间的双向通讯,使得不同厂家、不同类别的机器人也能够进行双向的数据收发。

在本发明实施例中,所述平台协议要求或机器人协议要求的数据格式可以采用xml或者json格式。以json格式为例,所述数据格式可以为:

{"token":"XXXXXXXXXXXXXXXXXXXXXXXXXXXX","from":"robot","type":"voice","content":"ff80808157b7dd450158523d0436","time":1477648901}

其中,所述token表示动态密钥,所述from表示作为信息的来源,所述type表示信息类别,所述content表示信息内容,所述time表示信息发送时间。

不同类别的机器人的数据信息,主要体现在type和content的区别。机器人所通讯的数据信息主要包括语音、视频、文本、图片和控制五类,不同类型的数据信息对应的content内容如下:文本作为可视化字符,content直接对应文本内容;图片、语音、视频统一归为多媒体文件,content对应该多媒体文件的mediaid;机器人的控制指令,考虑到其可能描述为二进制或16进制格式数据,content对应采用base64或16进制字符编码。

综上所述,本发明实施例引入了互联平台,在进行通讯时,由第一机器人将待传输的数据信息发送至其对应的第一服务器;所述第一服务器接收所述待传输的数据信息,将所述待传输的数据信息转换为符合平台协议要求的第一数据信息,并将所述第一数据信息发送至互联平台;所述互联平台接收所述第一数据信息,对所述第一数据信息进行逻辑处理,然后将处理后的所述第一数据信息发送至第二机器人对应的第二服务器;所述第二服务器接收所述第一数据信息,将所述第一数据信息转换为符合第二机器人协议要求的第二数据信息,并将所述第二数据信息转发至所述第二机器人,以实现机器人之间的互联,且本发明实施例是通过互联平台连接机器人对应的服务器,由互联平台来对数据信息进行处理和转发,服务器进行数据格式的转换以匹配不同机器人的固有协议,从而使得不同厂家、不同类别的机器人之间也能够通讯,机器人间的互联不再需要变更机器人,有效地缩减了不同厂家、不同类别机器人间的连接成本,实现了机器人间的快速互联。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的方法及装置,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块、单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元、模块单独物理存在,也可以两个或两个以上单元、模块集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

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