本发明涉及机器人调试领域。
背景技术:
目前机器人的调试问题一直是机器人开发、生产以及后期维护和bug修正的一个不能缺少的核心环节,但是现在还缺少真正的有效的手段,直接影响整体进度,效率低下。
技术实现要素:
本发明主要解决的技术问题在于,提供一种机器人远程调试方法,可以提高生产效率,做到调试的普及化、远程化和图形化,同时可以实现远程控制设备做到远程实时调试。
本发明解决其技术问题所采用的技术方案是:一种机器人远程调试方法,包括如下步骤:
包括如下步骤:
步骤一:机器人和终端无线配对;
步骤二:终端发出调试命令;
步骤三:机器人接收到调试命令后按照调试要求进行调试;
步骤四:调试的同时机器人端的传感器采集信息发送给终端,终端对调试结果进行图形化展示。
通过在机器人内部安装一套调试系统,配合终端安装的图形化系统,在终端通过机器人的合法安全验证后,终端和机器人一直保持网络连接,这样终端就可以发出各种调试命令(例如查看摄像头是否工作正常?摄像头哪些指标出现问题?麦克风是否能打开录音),获取机器人的工作状态(例如1.正常工作。2.不影响整体运行的部分异常,例如电量低,提示报警 3.出现严重问题的部件异常,例如摄像头坏了),显示机器人曾经做过的工作,通过图形方式把结果显示到终端设备上。机器人工作后会将其曾经做过的工作记录在机器人端的系统主板的CPU的寄存器里;这里的图形显示是指图标,类似于报表的形式,而非摄制的录像或实时画面。对于终端图形显示,可在终端图形显示前在机器人或终端断开连接,当然,断开连接与图形显示无关联,不断开连接也可图形显示。
作为本发明一种机器人远程调试方法的进一步改进,在步骤一中,采用网络或蓝牙的方式进行无线配对。采用网络方式进行无线配对(类似手机蓝牙配对)主要目的为建立联系。无线配对的方式基于要实现较远距离的配对因此优选方案为采用网络的方式配对。
作为本发明一种机器人远程调试方法的进一步改进,机器人包括设置在机器人体内的系统主板和动作控制板,所述系统主板和动作控制板电连接;机器人端的传感器包括音频传感器、摄像头和舵机;麦克风设置在机器人头部的嘴巴处,所述摄像头设置在机器人头部的眼睛处,所述舵机设置在机器人躯体的各肢体关节处;所述终端上安装安卓系统,在安卓系统上还安装有网络连接发起请求软件和终端操作软件;所述终端为手机、PC或平板电脑,安卓系统上安装有图形显示系统,所述图形显示系统为在安卓系统上安装的view视图系统。在机器人出厂前,每个机器人上要安装内部调试软件和远程网络连接软件,机器人会把自己的网络信息告诉在公网的云端系统,这是符合现在浏览器的标准的http网络连接,通过云端开放的web services标准服务接口来实现。还需在机器人端调用机器人操作系统中的网络中的socket服务,建立监听端口,一直等待外部数据的udp请求数据。这些数据是按照之前已经约定好的协议(内部协议),例如50 1D 00 02 00 00 E1 03 00 00 09 04 00 00 00 00 00 00 00 00 00 00 DB 00 00 00 05 00 33 00 00 00 4D;这开始是包头,接着是长度,然后是命令字加上实际数据,最后是从头开始按照内部定下的规则求出的的校验,最后是包尾,共同组成一个协议数据。终端上的系统还可为IOS、Windows类等系统;图形显示系统为在安卓系统上开发的view视图系统; view视图系统只能在安卓上开发;PC或IOS上需另行开发图形显示系统。在终端的触摸屏(当终端为智能手机或平板时)上写(或外接键盘的方式输入或通过语音方式输入)相应的指令(如“唱歌”或“跳舞”或“打开串口”等),机器人就发声,然后机器人那边采集声音信息后传回来。对于类别一样的调试命令,要排队;不同类别的调试命令可以同时执行。
作为本发明一种机器人远程调试方法的进一步改进,系统主板为安卓主板,安卓主板上安装安卓系统,在安卓系统上安装有调试系统,在调试系统上安装有内部调试软件和远程网络连接软件;在安卓系统上安装有安全检查软件;所述安卓系统还包括媒体服务系统,媒体服务系统中设有播放模块和录音模块。在安卓系统上运行和开发有调试系统,调试系统是借助安卓系统的,在安卓系统之上的,媒体服务系统是安卓系统的下层,调试系统管着媒体服务系统;机器人端的远程网络连接软件和终端的网络连接发起请求软件都类似于拨号软件。
作为本发明一种机器人远程调试方法的进一步改进,在步骤一中,采用网络的方式进行无线配对;通过远程网络连接软件发送一个获取机器人ID的申请至机器人的系统主板上,然后远程网络连接软件打开机器人的wifi设备,连接到网络,然后系统主板通过网络将ID信息发送至云端,网络上的云端系统获得机器人的网络信息。
作为本发明一种机器人远程调试方法的进一步改进,在步骤一中,所述wifi设备包括集成在安卓主板上的wifi主控芯片。
作为本发明一种机器人远程调试方法的进一步改进,在步骤一中,终端通过网络连接发起请求软件发出一个获取信息的指令给云端,借助云端的web services,获取已经注册在云端的机器人的网络信息以此寻找需要连接的机器人后发出连接请求。
作为本发明一种机器人远程调试方法的进一步改进,在步骤一和所述步骤二中还包括调试审核的步骤:机器人内部的媒体服务系统的录音模块接受到语音方式的同意连接的指令的音频信息后转化为电信号发给内部调试软件,再通过内部调试软件发出指令给安全检查软件,安全检查软件打开内部调试软开关,软件系统根据软开关流程走向调试,即接受连接请求,通过安装在机器人上的远程网络连接软件打开调试网络服务端口与终端建立连接。首先,通过电话或QQ等通讯软件的方式发出连接请求通知机器人的主人,寻找到目标机器人后打电话或通过QQ发送消息给机器人的主人,发出连接的请求。机器人的主人在机器人端接受来自终端的请求后说“允许调试”,机器人内部的媒体服务系统的录音模块接受到该语音信息后,麦克风录音,机器人识别语音,再去通过着内部调试模块发出指令给安全检查模块,打开内部调试软开关,这是软件系统根据软开关流程就走向调试。
作为本发明一种机器人远程调试方法的进一步改进,在步骤二中,按照和机器人已经约定好的数据协议,在终端操作软件上填写需要调试的命令,终端操作软件自动为调试的命令的语句加上包头、长度、实际数据、校验、包尾;然后通过已经获取的机器人网络信息,通过socket网络函数调用,沿着udp连接,把包含调试命令的数据经过云端转化后发送给机器人。内部协议具体是50 1D 00 02 00 00 E1 03 00 00 09 04 00 00 00 00 00 00 00 00 00 00 DB 00 00 00 05 00 33 00 00 00 4D;这开始是包头,接着是长度,然后是命令字加上实际数据,最后是从头开始按照内部定下的规则求出的的校验,最后是包尾,共同组成一个协议数据。给普通调试命令加包头等是通过终端操作软件。
作为本发明一种机器人远程调试方法的进一步改进,在步骤四中,调试要求包括打开串口、关闭串口、获取波特率参数、检查机器人的发声情况、检查机器人的动作、查看摄像头是否工作正常、摄像头的色度、白平衡是否出现问题、麦克风是否能打开录音、电量低;通过机器人端设置的摄像头或音频传感器或舵机截取即时的视频数据信息或音频数据信息或机器人动作数据信息,将数据信息解析成byte数组,通过安卓主板将数据发送给终端,然后通过终端上安装的终端操作软件并配合GPU向图形显示系统发出图形化展示调试结果的命令,图形显示系统将数据转化成信号;机器人上安装的内部调试软件接收到经云端转过后的图形化展示调试结果的命令后进行实际调试操作;所述音频传感器为麦克风;在所述步骤七中,调试结果的展现是通过终端的图形显示系统图形化展示到终端上,图形显示系统为在安卓系统上开发的view视图系统,内部实际调用需要GPU配合的openGL图形渲染,然后根据调试完的不同结果,显示不同的视图内容。调试命令不限于以上举例的这些,可扩展(相应地增加传感器、模块、软件配合),例加雷达什么的。在步骤三中获取调试命令后,就可以调用系统里的寄存器(机器人端的系统主板上的CPU里的寄存器)进行参数设置,设置好后,就可以打开设备然后就可以获取里面的信息流。信息流都是最原始的数据,这些数据是可以理解的。这里面的数据流格式是之前就约定好的。发出调试命令后,就可以获取信息流,这些数据是符合约定格式的,如果有问题,这些数据就会表现出一些异常情况,可以知道造成的原因,如果获取不到信息流,也会有异常代码,这些代码会明确的说明出现问题的地方,会有一个类似异常字典的对照表。一看就知道了。
本发明实现在另外的一种终端上图形化显示调试内容,这样任何人都可以参加调试,与此同时借助网络做到了可以远程处理,进一步又打破了地域限制,可以直接帮助客户快速查找问题,提高了生产效率,无需技术支持人员上门调试。实现了调试的图形化,也进一步实现了调试的普及化。
附图说明
图1为本发明一种机器人远程调试方法的流程图。
具体实施方式
为了对本发明的技术特征、目的以及效果有更加清楚地了解,现对照附图详细说明本发明的具体实施方式。
如图1所示,一种机器人远程调试方法,包括如下步骤:
步骤一:机器人和终端无线配对;
步骤二:终端发出调试命令;
步骤三:机器人接收到调试命令后按照调试要求进行调试;
步骤四:调试的同时机器人端的传感器采集信息发送给终端,终端对调试结果进行图形化展示。
由于机器人主要系统软件运行在安卓上,因此需要开发一个能在在机器人安装各种调试内容和网络连接响应服务的系统,该系统首先要经过主人允许的前提下先开一个网络服务,通知云端其已经可以接受调试准备,就是图1的流程1(对应上述的步骤一),等待连接请求,然后开启能结合实际调试命令,例如打开串口成功与否,关闭串口,获取波特率参数等等。其次需要开发终端安装系统,这个系统首先需要借助云端来寻找机器人,这是图1的流程2(对应上述的步骤二),如果是需要调试的机器人,发出请求(对应上述的步骤三)。机器人如果接受请求,对应图1的流程3(对应上述的步骤四)。两者建立联系后,就可以发出调试要求。调试终端发出调试要求,这是图1的流程4(对应上述的步骤五)。机器人按照要求进行调试展现。对应图1的流程5(对应上述的步骤六)。调试完成后调试终端发出结束要求,两者放弃连接,回归初始(对应上述的步骤七)。
在步骤一中,采用网络或蓝牙的方式进行无线配对。
机器人包括设置在机器人体内的系统主板和动作控制板,所述系统主板和动作控制板电连接;所述机器人还包括音频传感器、摄像头和舵机;,音频传感器设置在机器人头部的嘴巴处,所述摄像头设置在机器人头部的眼睛处,所述舵机设置在机器人躯体的各肢体关节处;所述终端上安装安卓系统,在安卓系统上还安装有网络连接发起请求软件和终端操作软件;所述终端为手机、PC或平板电脑,安卓系统上安装有图形显示系统,所述图形显示系统为在安卓系统上安装的view视图系统。
系统主板为安卓主板,安卓主板上安装安卓系统,在安卓系统上安装有调试系统,在调试系统上安装有内部调试软件和远程网络连接软件;在安卓系统上安装有安全检查软件;所述安卓系统还包括媒体服务系统,媒体服务系统中设有播放模块和录音模块。
在步骤一中,采用网络的方式进行无线配对;通过远程网络连接软件发送一个获取机器人ID的申请至机器人的系统主板上,然后远程网络连接软件打开机器人的wifi设备,连接到网络,然后系统主板通过网络将ID信息发送至云端,网络上的云端系统获得机器人的网络信息。
在步骤一中,所述wifi设备包括集成在安卓主板上的wifi主控芯片。
在步骤一中,终端通过网络连接发起请求软件发出一个获取信息的指令给云端,借助云端的web services,获取已经注册在云端的机器人的网络信息以此寻找需要连接的机器人后发出连接请求。
在步骤一和所述步骤二中还包括调试审核的步骤:机器人内部的媒体服务系统的录音模块接受到语音方式的同意连接的指令的音频信息后转化为电信号发给内部调试软件,再通过内部调试软件发出指令给安全检查软件,安全检查软件打开内部调试软开关,软件系统根据软开关流程走向调试,即接受连接请求,通过安装在机器人上的远程网络连接软件打开调试网络服务端口与终端建立连接。
在步骤二中,按照和机器人已经约定好的数据协议,在终端操作软件上填写需要调试的命令,终端操作软件自动为调试的命令的语句加上包头、长度、实际数据、校验、包尾;然后通过已经获取的机器人网络信息,通过socket网络函数调用,沿着udp连接,把包含调试命令的数据经过云端转化后发送给机器人。
在步骤四中,调试要求包括打开串口、关闭串口、获取波特率参数、检查机器人的发声情况、检查机器人的动作、查看摄像头是否工作正常、摄像头的色度、白平衡是否出现问题、麦克风是否能打开录音、电量低;通过机器人端设置的摄像头或音频传感器或舵机截取即时的视频数据信息或音频数据信息或机器人动作数据信息,将数据信息解析成byte数组,通过安卓主板将数据发送给终端,然后通过终端上安装的终端操作软件并配合GPU向图形显示系统发出图形化展示调试结果的命令,图形显示系统将数据转化成信号;机器人上安装的内部调试软件接收到经云端转过后的图形化展示调试结果的命令后进行实际调试操作;所述音频传感器为麦克风;在所述步骤七中,调试结果的展现是通过终端的图形显示系统图形化展示到终端上,图形显示系统为在安卓系统上开发的view视图系统,内部实际调用需要GPU配合的openGL图形渲染,然后根据调试完的不同结果,显示不同的视图内容。
以上内容是结合具体的优选技术方案对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。