本发明涉及机器人领域,具体为一种机器人竞赛数据收集的系统。
背景技术
机器人是自动执行工作的机器装置。它既可以接受人类指挥,又可以运行预先编排的程序,也可以根据以人工智能技术制定的原则纲领行动。它的任务是协助或取代人类工作的工作,例如生产业、建筑业,或是危险的工作。
机器人竞赛是各种关于机器人比赛的总称,大致包括机器人足球赛、灭火竞赛和综合竞赛,当前,机器人竞赛受到越来越广泛的关注,越来越多的爱好者参与到了这个领域。竞赛的方式也出现了多元化的变化。从线下到线上、从人工规则判定到自动规则判定的趋势越来明显。
线上比赛指的是机器人竞赛通过局域网或者互联网进行比赛,比赛的参与者甚至不需要在同一个地方进行比赛。自动化规则判定指的是比赛的过程由计算机来进行判定,计算机根据预设的比赛规则和收集到的比赛过程数据来判定谁最终胜出了比赛。
线上自动化的竞赛具备公平、高效的特点,能够让更多的人以更加低的成本参与到竞赛中来,但是在线上比赛、尤其是互联网环境中的比赛,如何保证收集的比赛过程数据是真实的就变得越来越重要,需要有效的技术手段来解决这个问题。
现有的用于机器人竞赛数据的收集系统通常是将机器人通过用户名和密码来确认用户身份,系统验证成功后会给用户分配一个标识用户会话的token,用户根据这个token来上报竞赛过程中产生的数据到云端服务器,完成数据的收集。
但是,现有的用于机器人竞赛数据的收集系统存在以下缺陷:
(1)由于机器人本身的硬件资源有限,使得现有的机器人竞赛数据收集系统不能有效地将用户身份与机器人硬件设备绑定在一起,容易造成用户身份被盗用,或用户可以使用多个身份同时登陆,影响正常的竞赛;
(2)现有的机器人竞赛数据收集系统不能有效地验证上报数据的真实性,既不利于公平的竞争,又会耽误数据处理的时间;
(3)现有的机器人竞赛数据收集系统在收集数据时,由于竞赛项目的种类很多,需要搭设不同的竞赛平台,会占用较大空间,且浪费资源。
技术实现要素:
为了克服现有技术方案的不足,本发明提供一种机器人竞赛数据收集的系统,该系统能够将用户身份与机器人硬件设备有效地绑定在一起,可以避免用户身份被盗用,也可以避免同一个用户使用多个身份同时登陆,同时,能够验证各个上报数据的真伪,避免影响竞赛的公平性,且能够节省处理数据的时间,此外,该系统还能够由一个竞赛平台进行不同的竞赛,可以减少占用空间,且节约资源,能有效的解决背景技术提出的问题。
本发明解决其技术问题所采用的技术方案是:
一种机器人竞赛数据收集的系统,包括云服务器和竞赛平台,所述云服务器通过互联网连接有若干个网关,且网关均通过局域网连接有若干个机器人;
所述云服务器包括云端存储模块、异常处理模块,以及与网关连接的数据接收模块,所述数据接收模块分别与云端存储模块、异常处理模块连接,所述机器人均连接有用户基本信息模块和机器人基本信息模块,所述网关还连接有sdk监测模块和证书确认模块,且证书确认模块与用户基本信息模块连接。
进一步地,所述机器人均连接有动作捕捉模块,且动作捕捉模块均通过数据采集模块与网关连接。
进一步地,所述sdk监测模块包括网关进程监测模块、网关通信监测模块和网关程序监测模块,且sdk监测模块通过监测汇报模块与异常处理模块连接。
进一步地,所述异常处理模块还连接有ip确认模块、id检索模块和数据检测模块,且ip确认模块、数据检测模块均与网关连接,所述id检索模块与云端存储模块连接。
进一步地,所述竞赛平台包括支撑台,且支撑台的顶部固定有矩形台,所述矩形台的四边均设置有两个插孔,所述插孔内均插设有插杆,且两个对应插杆的外端均连接有拉伸板,所述拉伸板的两端均设置有贯穿的通孔,且在通孔内插设有固定螺栓,所述支撑台的顶面侧边设置有与通孔对应的插槽。
进一步地,四个所述的拉伸板能够围成一个矩形槽,且矩形槽内设置有若干层平铺板,所述平铺板的上、下面均设置有竞赛台面,所述拉伸板的顶端均连接有护栏。
另外,本发明还提供了一种机器人竞赛数据收集的方法,包括如下步骤:
s100、竞赛用户在本地安装网关;
s200、竞赛用户在本地配置网关内容以及部署监测sdk;
s300、云服务器存储竞赛数据并判断数据真实性;
s400、云服务器根据监测sdk发送的异常信息启动作弊处理流程。
进一步地,在s200中,配置网关内容的具体步骤为:
s201、竞赛管理机构颁发用户参与比赛的数字证书;
s202、确认用户的基本信息;
s203、确认与用户绑定的机器人的基本信息。
进一步地,在s300中,云服务器判断数据真实性的具体步骤为:
s301、用户在比赛数字证书上的实时签字;
s302、竞赛数据来源ip的确认;
s303、判断竞赛数据本身是否异常;
s304、竞赛机器人id的使用情况。
进一步地,在s400中,还包括监测sdk判断网关使用是否异常的步骤,具体包括:
s401、监测网关运行进程;
s402、监测网关通信数据;
s403、监测网关程序运行;
s404、若以上三个监测数据有一个以上出现异常,则监测sdk向云服务器发送异常报告,若无监测数据异常,则网关正常运行。
与现有技术相比,本发明的有益效果是:
(1)本发明能够将用户身份与机器人硬件设备有效地绑定在一起,可以避免用户身份被盗用,也可以避免同一个用户使用多个身份同时登陆,有利于维持竞赛的公平性;
(2)本发明能够验证各个上报数据的真伪,避免出现作弊的行为,且能够节省处理数据的时间;
(3)本发明能够由一个竞赛平台进行不同的竞赛,可以减少装置的占用空间,且节约资源,适合机器人线上竞赛。
附图说明
图1为本发明的整体模块结构示意图;
图2为本发明的单个机器人连接结构示意图;
图3为本发明的整体流程示意图;
图4为本发明的竞赛平台俯视结构示意图;
图5为本发明的竞赛平台截面结构示意图。
图中标号:
1-云服务器;2-竞赛平台;3-网关;4-机器人;5-用户基本信息模块;6-机器人基本信息模块;7-sdk监测模块;8-证书确认模块;9-动作捕捉模块;10-数据采集模块;11-监测汇报模块;12-ip确认模块;13-id检索模块;14-数据检测模块;
101-云端存储模块;102-异常处理模块;103-数据接收模块;
201-支撑台;202-矩形台;203-插孔;204-插杆;205-拉伸板;206-通孔;207-固定螺栓;208-插槽;209-矩形槽;210-平铺板;211-竞赛台面;212-护栏;
701-网关进程监测模块;702-网关通信监测模块;703-网关程序监测模块。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1和图2所示,本发明提供了一种机器人竞赛数据收集的系统,包括云服务器1和竞赛平台2,云服务器1通过互联网连接有若干个网关3,且网关3均通过局域网连接有若干个机器人4,网关3分别部署在竞赛参与用户本地,负责用户身份认证,数据加密,数据传输等工作,网关3能够将机器人4执行的竞赛动作,以及机器人4和用户的基本信息传输给云服务器1,实现机器人的线上竞赛。
云服务器1包括云端存储模块101、异常处理模块102,以及与网关3连接的数据接收模块103,数据接收模块103分别与云端存储模块101、异常处理模块102连接,数据接收模块103用于接收各个网关3传输的竞赛数据,并通过云端存储模块101存储,异常处理模块102用于判断数据以及网关3运行是否异常,如异常,则云端存储模块101无法存储竞赛数据。
机器人4均连接有用户基本信息模块5和机器人基本信息模块6,用户基本信息模块5用于确认用户的基本信息,而机器人基本信息模块用于确认机器人4的基本信息,如设备号、cpu、内存、存储、类型、比赛编号等,使得每一个机器人4的id都与单独的用户,以及用户发送数据的ip对应,网关3还连接有sdk监测模块7和证书确认模块8,且证书确认模块8与用户基本信息模块5连接,证书确认模块8用于在用户上传竞赛数据时,实时的在竞赛管理机构颁发的数字证书上签字,有利于确保机器人竞赛数据与竞赛用户的唯一对应性。
机器人4均连接有动作捕捉模块9,且动作捕捉模块9均通过数据采集模块10与网关3连接,动作捕捉模块9用于捕捉机器人4的肢体动作,并通过数据采集模块10采集动作数据,以便将竞赛数据传递给网关3。
sdk监测模块7包括网关进程监测模块701、网关通信监测模块702和网关程序监测模块703,且sdk监测模块7通过监测汇报模块11与异常处理模块102连接,sdk监测模块7能够分别监测网关3的进程、通信情况,以及运行程序,以便监测网关3的运行是否异常,如有异常,则通过监测汇报模块11将异常信号报告给异常处理模块102,以便对上传数据进行处理,避免出现作弊行为。
异常处理模块102还连接有ip确认模块12、id检索模块13和数据检测模块14,且ip确认模块12、数据检测模块14均与网关3连接,ip确认模块12用于确认上传数据的ip地址,避免用户发送的数据来自与多个ip,数据检测模块14用于对上传数据本身进行检测,避免接收异常数据,id检索模块13与云端存储模块101连接,id检索模块13能够检索云端存储模块101内数据的id,避免同一个机器人4的竞赛数据多次上传,通过设置这些检测措施,能够有效地将用户身份与机器人硬件设备绑定在一起,可以避免用户身份被盗用,也可以避免同一个用户使用多个身份同时登陆,有利于维持竞赛的公平性。
如图4和图5所示,竞赛平台2包括支撑台201,且支撑台201的顶部固定有矩形台202,矩形台202的四边均设置有两个插孔203,插孔203内均插设有插杆204,且两个对应插杆204的外端均连接有拉伸板205,使得各个拉伸板205能够沿着插孔203的方向拉出或插入。
拉伸板205的两端均设置有贯穿的通孔206,且在通孔206内插设有固定螺栓207,支撑台201的顶面侧边设置有与通孔206对应的插槽208,在将各个拉伸板205移动到最内端时,能够通过固定螺栓207将各个拉伸板205固定,拉伸板205的顶端均连接有护栏212。
四个的拉伸板205能够围成一个矩形槽209,且矩形槽209内设置有若干层平铺板210,平铺板210的上、下面均设置有竞赛台面211,各个平铺板210上的竞赛台面211均不同,在进行竞赛时,可以通过外拉拉伸板205,将不同的竞赛台面211露出,使得在同一个竞赛平台2上能够进行不同种类的竞赛,如跑步比赛、足球比赛等,众所周知,在进行机器人线上竞赛时,竞赛平台2的搭建比较麻烦,因为机器人4竞赛项目很多,如果在不同的地点均搭建完整的竞赛平台2,很占用空间,且耗资较多,而实际使用的人数可能很少,通过设置能够替换竞赛台面211的竞赛平台2能够有效地解决这些问题,有利于机器人4线上竞赛的普及和发展。
另外,如图3所示,本发明还提供了一种机器人竞赛数据收集的方法,包括如下步骤:
s100、竞赛用户在本地安装网关,网关部署在竞赛参与者本地,通过互联网与云端服务器连接,负责用户身份认证,数据加密,数据传输等工作。
s200、竞赛用户在本地配置网关内容以及部署监测sdk,配置的内容包括竞赛管理机构颁发的数字证书以及在本地需要连接的机器人的基本信息等,监测sdk用于对网关的运行进行监测。
s300、云服务器存储竞赛数据并判断数据真实性,云服务器能够根据上传竞赛数据的真实性选择的存储竞赛数据。
s400、云服务器根据监测sdk发送的异常信息启动作弊处理流程,云服务器能够根据监测sdk发送的监测信息处理竞赛数据,避免作弊行为。
在s200中,配置网关内容的具体步骤为:
s201、竞赛管理机构颁发用户参与比赛的数字证书。
s202、确认用户的基本信息。
s203、确认与用户绑定的机器人的基本信息。
设置网关的主要目的是将参赛用户与竞赛机器人绑定起来,避免用户信息被窃取,也避免用户多次上传竞赛数据,有利于维持比赛的公平性。
在s300中,云服务器判断数据真实性的具体步骤为:
s301、用户在比赛数字证书上的实时签字。
s302、竞赛数据来源ip的确认。
s303、判断竞赛数据本身是否异常
s304、竞赛机器人id的使用情况。
通过签字证书、上传数据ip的确认、竞赛数据的检测和机器人id的使用情况,能够保证上传数据的真实性和唯一性,避免云服务器接收错误或虚假竞赛数据信息。
在s400中,还包括监测sdk判断网关使用是否异常的步骤,具体包括:
s401、监测网关运行进程。
s402、监测网关通信数据。
s403、监测网关程序运行。
s404、若以上三个监测数据有一个以上出现异常,则监测sdk向云服务器发送异常报告,若无监测数据异常,则网关正常运行。
通过监测sdk对网关运行的实时监测,能够避免网关运行异常,避免出现作弊行为,有利于机器人竞赛的公平。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。