智能机器人
技术领域
本发明涉及智能设备技术领域,尤其涉及智能机器人。
背景技术
随着社会的发展,科技的进展,机器人已广泛应用于人们的生产和生活中,目前的机器人种类较多,例如扫地机器人、物流机器人等等,但是目前缺少针对儿童的机器人。
发明内容
本发明提供了一种智能机器人,包括:
虚拟现实模块,用于识别用户的指令,提取关键词,然后调用虚拟现实引擎,通过摄像头捕捉现实场景,加上3D场景,将虚拟现实模型和现实场景进行合成,从而做出虚拟现实的效果。
作为本发明的进一步改进,在所述虚拟现实模块中,能够识别用户的语音指令,当做出虚拟现实的效果时,能够将关键词进行汉语和/或英语的发音。
作为本发明的进一步改进,该智能机器人还包括:
信息推送模块,用于将数据发送至客户端。
作为本发明的进一步改进,在所述信息推送模块中包括进程way和worker,way进程负责异步网络IO,worker进程负责业务逻辑,信息推送模块启动时会同时启动way进程和worker进程,way进程启动时会同时向一个储存写入每个way进程的内部通讯地址,worker进程启动时会读取存储,并向每个way内部通讯地址建立起长连接,同时worker进程中会有个定时任务,定时监测存储中是否有新的way内部通讯地址加入,有的话同样建立长连接,way和worker之间的通讯就是靠内部的长连接通讯的,每个way进程会和后端所有worker进程有一个长连接。
作为本发明的进一步改进,所述信息推送模块包括广播推送模式和单独发送模式。
作为本发明的进一步改进,该智能机器人还包括:
定位驱动模块,用于通过麦克风寻找声音源并进行定位,根据定位的位置驱动智能机器人追寻目标进行智能行走。
作为本发明的进一步改进,在定位驱动模块中,共有8个麦克风,智能机器人的前后左右四个方向各设置2个麦克风。
作为本发明的进一步改进,该智能机器人还包括:手心体温测量模块,包括红外镜头、红外接收传感器、PCB电路板,所述红外镜头用于发射红外光,所述红外接收传感器用于接收红外光信号,PCB电路板用于将所述红外接收传感器接收到的红外光电信号进入放大,并经过A/D转换输出信号。
作为本发明的进一步改进,该智能机器人包括机器人头部、机器人腰部、机器人脚部,所述机器人头部位于所述机器人腰部上方,所述机器人脚部位于所述机器人腰部下方;所述机器人头部包括头部上盖、头部底盖、屏幕,所述头部上盖与所述头部底盖扣合在一起,所述屏幕安装在所述头部上盖上,所述机器人头部安装有摄像头,所述机器人头部能够进行活动。
作为本发明的进一步改进,所述屏幕包括脸部视窗面板、电容屏触控板、显示屏、脸部装饰圈,所述电容屏触控板安装在显示屏上,所述脸部装饰圈安装在头部上盖上,所述显示屏安装在所述脸部装饰圈上,所述脸部视窗面板安装在所述脸部装饰圈上。
作为本发明的进一步改进,所述机器人头部还包括头部PCB主板、摄像头镜片,所述摄像头与所述头部PCB主板相连,所述脸部视窗面板和所述脸部装饰圈分别设有孔,所述摄像头位置与所述脸部视窗面板的孔及所述脸部装饰圈的孔位置对应,所述摄像头镜片安装在所述脸部视窗面板的孔位置。
作为本发明的进一步改进,所述机器人头部还包括喇叭、温湿度感应器、手势感应器,所述头部PCB主板分别与所述喇叭、所述温湿度感应器、所述手势感应器相连。
作为本发明的进一步改进,所述机器人头部还包括点头电机支架、点头电机、传动凸轮,所述点头电机支架安装在所述头部底盖上,所述头点电机安装在所述点头电机支架上,所述点头电机与所述传动凸轮相连,所述传动凸轮与所述机器人腰部相连实现机器人头部的活动。
作为本发明的进一步改进,所述机器人腰部包括上腰部、腰带、下腰部、腰部支架,所述上腰部安装在所述腰带上,所述腰带安装在所述下腰部上,所述腰部支架安装在所述下腰部上,所述机器人腰部安装体温检测模块,所述机器人腰部内安装有麦克风,所述机器人腰部下方安装有万向轮。
作为本发明的进一步改进,所述体温检测模块包括体温测量固定支架、五金圈、体温测量PCB板、体温测量窗装饰圈、体温测量窗镜片,所述体温测量窗装饰圈和所述体温测量窗镜片安装在所述体温测量固定支架上,所述五金圈安装在所述体温测量固定支架上,所述体温测量PCB板安装在所述五金圈上。
作为本发明的进一步改进,所述机器人腰部还安装有两个翅膀。
作为本发明的进一步改进,所述机器人脚部包括脚部面盖、电池、脚底板,所述电池安装在所述脚部面盖内,所述脚部面盖安装在所述脚底板上,所述脚底板下方安装有脚部万向轮,所述机器人脚部还包括驱动所述脚部万向轮行走的驱动控制机构。
作为本发明的进一步改进,所述脚底板上安装有左右脚趾按键,所述机器人脚部内安装有电源开关PCB板和USB PCB板。
本发明的有益效果是:本发明的智能机器人针对儿童设计,不但能够进行教学,而且能够进行体温测量及信息推送,非常适合儿童使用,值的推广应用。
附图说明
图1是本发明的智能机器人立体结构示意图。
图2是本发明的智能机器人侧面结构示意图。
图3是本发明的智能机器人头部分解结构示意图。
图4是本发明的智能机器人腰部分解结构示意图。
图5是本发明的智能机器人脚部分解结构示意图。
图6是本发明的手心体温测量模块结构示意图。
图7是本发明的8个麦克风的工作原理图。
具体实施方式
本发明公开了一种智能机器人,包括:
虚拟现实模块,用于识别用户的指令,提取关键词,然后调用虚拟现实引擎,通过摄像头捕捉现实场景,加上3D场景,将虚拟现实模型和现实场景进行合成,从而做出虚拟现实的效果;
在所述虚拟现实模块中,能够识别用户的语音指令,当做出虚拟现实的效果时,能够将关键词进行汉语和/或英语的发音。
例如,首先是机器人通过语音识别技术,识别需要看的AR模型,例如对机器人讲“我要看马”,机器人识别到“马”以后,调用AR引擎,在LCD屏上,通过摄像头捕捉现实场景,加上3D场景,将“马”的动物模型和现实的摄像头场景进行合成,从而做出虚拟现实的效果,并且配合英语单词的合成,将“马”的英语单词(horse)发音出来,从而达到学习英语单词的目的,“马”是提取的关键词。
另外3D模型还设计很多动作,手指点击动物模型时,动物会按照预先设计的动作进行跑步、跳动等等,达到互动、有趣、学习的效果。
3D模型的制作主要包括:模型骨骼,外观,贴图,动画的设计,使用的是3D MAX软件进行制作的并导出文件格式为FBX文件格式。我们把制作的FBX模型导入Unity3d软件中,然后把各种资源以一定的逻辑呈现出来,从而达到虚拟现实的效果。
信息推送模块基于高性能的libevent事件网络库,单机可支持百万的并发连接,长连接吞吐量高达36W/S。PHP数据库等对象可以常驻内存,减少解析编译及网络开销。使用TCP协议.为各个智能设备提供稳定高效的信息推送服务。信息推送模块内分两种进程way和worker,way进程(负责异步网络IO)和worker进程(负责业务逻辑)。信息推送模块启动时会同时启动way进程和worker进程,way进程启动时会同时向一个储存(文件,memcache,mysql等等,可配置选择)写入每个way进程的内部通讯地址,worker进程启动时会读取存储,并向每个way内部通讯地址建立起长连接。同时worker进程中会有个定时任务,定时监测存储中是否有新的way内部通讯地址加入,有的话同样建立长连接(这样增加推送服务器就会自动探测到,新的way、worker进程就会加入集群)。way和worker之间的通讯就是靠内部的长连接通讯的,每个way进程会和后端所有worker进程有一个长连接,每个way进程都知道有多少worker进程,每个worker进程也知道有哪些way进程。
所述信息推送模块包括广播推送模式和单独发送模式。
广播推送模式用于给所有在线客户端发送数据,单独发送模式用于单独给某客户端发送数据。同时通过PDO拓展,给离线客户端生成离线信息。等待下次心跳包来临时候发送离线信息。
广播推送模式:
广播推送模式比较好实现,当某个客户端要广播数据时,worker进程中调用sendToAll($message)即可。这时worker进程会向所有way进程通过已经建立的长连接发送一条广播命令+数据,每个way进程都会收到这个命令+数据,向way进程自己所维护的所有客户端连接发送数据(异步)。
单独发送模式:
单独发送模式调用sendToClient($client_id,$message);也就是说单独发送需要得到对方的client_id。推送服务器发送向client_id发送数据时,需要通过client_id获得到client_id对应的way内部通信地址,而这个地址是在每个客户端连接way时就存储了的(文件或者memcache,可配置),通过这个存储得知way内部通讯地址后,向这个地址发送命令+数据,对应way进程收到命令+数据后找到对应的客户端socket发送数据即可。再根据公司特殊业务需求编写相应逻辑代码,就完成了推送服务的功能。
该智能机器人还包括:
定位驱动模块,用于通过麦克风寻找声音源并进行定位,根据定位的位置驱动智能机器人追寻目标进行智能行走。
在定位驱动模块中,共有8个麦克风,智能机器人的前后左右四个方向各设置2个麦克风,图7是8个麦克风的工作原理图。
定位驱动模块经过声音波纹分析,确定声音源在何处。从而达到自动寻找声音源的位置,从而达到机器人自动追寻目标的智能行走。
该智能机器人还包括:
如图6所示,手心体温测量模块,包括红外接收传感器104、PCB电路板105,所述红外接收传感器104用于接收红外光信号,PCB电路板105用于将所述红外接收传感器104接收到的红外光电信号进入放大,并经过A/D转换输出信号。
手心体温测量模块还包括:
镜头固定塑胶件101,用于固定镜头及镜筒;
红外镜头102,用于透射红外光;
镜筒103,黑色金属制件,用于屏蔽周围红外光,并使从使镜头射进来的红外光有效地照射到红外接收传感器104上。
在手心体温测量模块中,首先通过PCB电路板主要是的功能就是采集红外数据的电压变化,当开始测量数据时,首先PCB电路板中的红外传感器HMS-J11产生电压变化,然后经过一些滤波,bsp处理,再经过Ad8629ARZ运算放大100倍,最后经过ads1115转换读取。获取到温度后通过消息监控,消息的监控主要采用I/O多路转接技术,其中ril_event结构为消息本体。每个ril_event结构,与一个fd句柄绑定(可以式文件,socket,管道等),并且带一个func指针,这个func指针所指的函数是个回调函数,它指定了当所绑定的fd准备好进行读取时所要的操作。消息队列的开始点为RIL_startEventLoop函数。RIL_startEventLoop在libmotor.cpp中实现,它的主要目的是通过pthread_create(&s_tid_dispatch,&attr,eventLoop,NULL)建立一个dispatch线程,线程入口点在eventLoop.而在eventLoop中,会调phd_event.cpp中的ril_event_loop()函数,建立起消息队列机制。在ril_event.cpp中还持有一个watch_table数组,一个timer_list链表和一个pending_list链表。watch_table数组的目的很单纯,存放当前被eventLoop等待的ril_event(非timerevent),供eventLoop唤醒时使用。timer_list是存放timer event的链表,在eventLoop唤醒时要对这些timer event单独进行处理pending_list:待处理(对其回调函数进行调用)的所有ril_event的链表。如果在ril_event队列中任何一个fd已经准备好,则进行分析流程:processTimeouts(),processReadReadies(&rfds,n),firePending().其中在firePending()中执行这个event的func,也就接受到安卓传来的消息。这时我们就可以根据对应的消息做出相应的操作,如果是测试体温,则调用测体温的函数得到数据msg,然后我们要上报的fd为一个全局变量static ints_fdCommand=-1;根据这个全局变量进行上报;最后上报给安卓进行处理显示。
如图1至5所示,该智能机器人包括机器人头部、机器人腰部、机器人脚部,所述机器人头部位于所述机器人腰部上方,所述机器人脚部位于所述机器人腰部下方;所述机器人头部包括头部上盖1、头部底盖9、屏幕,所述头部上盖1与所述头部底盖9扣合在一起,所述屏幕安装在所述头部上盖1上,所述机器人头部安装有摄像头17,所述机器人头部能够进行活动。
所述屏幕包括脸部视窗面板12、电容屏触控板13、显示屏14、脸部装饰圈15,所述电容屏触控板13安装在显示屏14上,所述脸部装饰圈15安装在头部上盖1上,所述显示屏14安装在所述脸部装饰圈15上,所述脸部视窗面板12安装在所述脸部装饰圈15上。
所述机器人头部还包括头部PCB主板16、摄像头镜片11,所述摄像头17与所述头部PCB主板16相连,所述脸部视窗面板12和所述脸部装饰圈15分别设有孔,所述摄像头17位置与所述脸部视窗面板12的孔及所述脸部装饰圈15的孔位置对应,所述摄像头镜片11安装在所述脸部视窗面板12的孔位置。
所述机器人头部还包括喇叭8、温湿度感应器3、手势感应器18,所述头部PCB主板16分别与所述喇叭8、所述温湿度感应器3、所述手势感应器18相连。所述机器人头部还包括点头轴定位销钉10、点头限位开关7。
所述机器人头部还包括点头电机支架4、点头电机5、传动凸轮6,所述点头电机支架4安装在所述头部底盖9上,所述头点电机5安装在所述点头电机支架4上,所述点头电机5与所述传动凸轮6相连,所述传动凸轮6与所述机器人腰部相连实现机器人头部的活动。
所述机器人腰部包括上腰部24、腰带36、下腰部37、腰部支架34,所述上腰部24安装在所述腰带36上,所述腰带36安装在所述下腰部37上,所述腰部支架34安装在所述下腰部37上,所述机器人腰部安装体温检测模块,所述机器人腰部内安装有麦克风30,所述机器人腰部下方安装有万向轮31。
所述体温检测模块包括体温测量固定支架27、五金圈28、体温测量PCB板29、体温测量窗装饰圈26、体温测量窗镜片25,所述体温测量窗装饰圈26和所述体温测量窗镜片25安装在所述体温测量固定支架27上,所述五金圈28安装在所述体温测量固定支架27上,所述体温测量PCB板29安装在所述五金圈28上。
所述机器人腰部还安装有两个翅膀40。
该机器人腰部还包括点头活动轴承19、马达凸轮销钉轴承20、点头支架21、头部转动轴承22、肩部装饰圈23、转头底板32、头部转动限位开关33、腰部固定连杆35、,肩部装饰圈23安装在上腰部24上,转头底板32安装在腰部支架34上,头部转动限位开关33安装在转头底板32上,腰部支架34通过腰部固定连杆35安装在下腰部37上。
该机器人腰部还包括左右翅膀固定档板38、翅膀闪烁LED灯39,两个翅膀40安装在上腰部24上,左右翅膀固定档板38和翅膀闪烁LED灯39安装在翅膀40上。
该机器人腰部还包括第一转头边杆轴承41、转头边杆42、第二转头边杆轴承43、头部转动凸轮44、头部转动马达垫片45、头部转动马达46,第一转头边杆轴承41安装在转头边杆42上,转头边杆42安装有第二转头边杆轴承43,第二转头边杆轴承43安装在头部转动凸轮44上,头部转动凸轮44安装在头部转动马达垫片45上,头部转动马达46与头部转动马达垫片45相连。
所述机器人脚部包括脚部面盖54、电池53、脚底板62,所述电池53安装在所述脚部面盖54内,所述脚部面盖54安装在所述脚底板62上,所述脚底板62下方安装有脚部万向轮63,所述机器人脚部还包括驱动所述脚部万向轮63行走的驱动控制机构。
所述脚底板62上安装有左右脚趾按键47,所述机器人脚部内安装有电源开关PCB板56和USB PCB板60。
驱动控制机构包括驱动轮组64、驱动轮软胶65、马达感应控制圈66、马达PCB小板67、行走驱动马达68、驱动轮硬胶69、左右减速箱内档板70、减速箱齿轮71、左右减速箱外档板72,驱动轮软胶65安装在驱动轮组64的驱动轮上,驱动轮硬胶69安装在驱动轮软胶65上,马达感应控制圈66安装在马达PCB小板67上,马达PCB小板67安装在行走驱动马达68上,行走驱动马达68连接驱动轮组64,减速箱齿轮71两侧分别安装左右减速箱内档板70和左右减速箱外档板72。
机器人脚部包括左右脚背48、左右脚趾PCB板49,左右脚背48安装在脚底板62上,左右脚趾按键47安装在左右脚背48上,左右脚趾PCB板49安装在脚底板62上,左右脚趾PCB板49位置与左右脚趾按键47位置对应。
脚底板62上安装脚间装饰块50、脚部左控制档板51、脚部左右控制PCB板52。
脚底板62上安装脚侧左右装饰条55、电源开关PCB板56、充电及复位键小板57、红外感应PCB板58、脚部控制档板销钉59、USB PCB板60、脚部右控制档板61。
本发明的智能机器人针对儿童设计,不但能够进行教学,而且能够进行体温测量及信息推送,非常适合儿童使用,值的推广应用。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。