一种交互式机器人的控制系统及其控制方法与流程

文档序号:16142133发布日期:2018-12-01 02:12阅读:237来源:国知局
一种交互式机器人的控制系统及其控制方法与流程

本发明属于机器人技术领域,具体涉及一种交互式机器人的控制系统及其控制方法。

背景技术

安全高效的人类交互机器人将会对组装生产线、家务劳动服务、健康保险服务以及物流产业产生巨大改变。据有关数据表明显示,每年因为危险工作造成伤残的事故不计其数,仅仅美国市场,因为机器人造成的意外的死亡就能达到20多起,所以大多数时候,在机器人活动的区域需要圈起来作为保护区域,现有的机器上都只是单纯的移动,没有所谓的智慧移动,但是交互式机器人则会携带合适的传感器,使其具备相应的安全性,保护机构和周围环境的安全。

另外一个方面就是学习再现过程,摒弃了传统的机器人只能单一重复的工作特性。交互型机器人可以根据任务的不同来切换不同的工作模式,例如排列任务,搬运任务等。交互型机器人在消费者电子品的组装生产方面将有很大市场,目前该行业的主要依赖为人力组装。

当然,稳定性和精度问题是很多机械臂不得不关注的问题之一,大多数高精度机器人应用都是由示教完成,就是常见的控制器手动控制,而不是直接导入cad或者g代码的离线编程。

现有的示教系统都是在手持器上进行示教,鲜有通过在末端加示教工具,让机器自主学习再现,手持器的控制虽然精准,但是难以实现复杂的路径控制。

因此,针对上述技术问题,有必要提供一种交互式机器人的控制系统及其控制方法。



技术实现要素:

为了解决上述技术问题,本发明提供了一种交互式机器人的控制系统及其控制方法。

为了达到上述目的,本发明的技术方案如下:

本发明提供一种交互式机器人的控制系统,包括:

pc机,用于给控制器发送固定格式的指令;

控制器,控制器将pc机发送过来的指令数据进行解析,并传递给末端执行器;

末端执行器,末端执行器携带执行工具,用于执行控制器的动作;

示教器,用于将需要的工作进行人工操作,并由控制器记忆和重现。

本发明相较于现有技术,机器人控制系统具备精度高、相应速度快、交互功能丰富、示教方式简便的特点。

作为优选的方案,还设有扩展底座,扩展底座与机器人通过光耦隔离电路隔离,扩展底座上设有控制芯片,扩展底座上设有用于实现sd卡读写的sd卡接口、用于控制电机的motor接口、以及实现通信的uart接口中的至少一种。

作为优选的方案,示教器为游戏摇杆,游戏摇杆上设有三个电位器,游戏摇杆将电位的变化通过隔离模块传到控制芯片,控制芯片将电位变化解析并记录在sd卡中,用于重现。

作为优选的方案,一种交互式机器人的控制方法,包括以下步骤:

s1.获取目标点:通过pc机读取sd卡内容或者接受用户的指令,将要到达的目标点的坐标值保存在程序的对应变量中;

s2.获取目标线段类型:根据当前坐标到达指定目标点设定运动方式,获得目标线段类型;

s3.计算插补点:根据已知的目标点和目标线段类型,计算插补点;

s4.重复步骤s3直至完成整个目标线段;

s5.控制器将pc机发送过来的指令数据进行解析,并传递给末端执行器;

s6.末端执行器执行控制器的动作。

作为优选的方案,计算插补点包括以下步骤:

s31.通过已知的目标点和当前点的方程,根据目标线段的斜率来确定插补的进给,然后执行;

s32.完成了一个点的插补后,进行下一次插补。

采用上述的优选方案,插补点的计算方法有效减少比较次数,提高插补效率和精度。

确定插补的进给为以当前点位置为起点单位面积内对比目标线段所处位置来确定插补的进给;其中,当前点m点的坐标为(xi,yi),以m点作单位长度为1的正方形mabc,取长度为单位的线段ck、aj,目标线段的起点o点的坐标为(0,0),目标线段的终点a点的坐标为(xe,ye),偏差函数p是比较目标线段的斜率与oj斜率差值,偏差函数q是比较目标线段的斜率与ok斜率差值,具体包括以下步骤:

s311.当目标线段的终点位于第一象限时,偏差函数p和q分别为:

若qi>0,则向+x方向进给一步,偏差值为:

若pi<0,则向+y方向进给一步,偏差值为:

若pi>0且qi<0,则向+x和+y方向各进给一步,偏差值为:

s312.当目标线段的终点位于第二象限时,偏差函数p和q分别为:

若qi>0,则向-x方向进给一步,偏差值为:

若pi<0,则向+y方向进给一步,偏差值为:

若pi>0且qi<0,则向-x和+y方向各进给一步,偏差值为:

s313.当目标线段的终点位于第三象限时,偏差函数p和q分别为:

若qi>0,则向-x方向进给一步,偏差值为:

若pi<0,则向-y方向进给一步,偏差值为:

若pi>0且qi<0,则向-x和-y方向各进给一步,偏差值为:

s314.当目标线段的终点位于第四象限时,偏差函数p和q分别为:

若qi>0,则向-y方向进给一步,偏差值为:

若pi<0,则向+x方向进给一步,偏差值为:

若pi>0且qi<0,则向+x和-y方向各进给一步,偏差值为:

附图说明

图1为本发明的整体结构框图。

图2为本发明中sd卡接口电路图。

图3为本发明中光耦隔离电路图。

图4为本发明中电源转换接口电路图。

具体实施方式

下面结合附图详细说明本发明的优选实施方式。

为了达到本发明的目的,如图1所示,在本发明的其中一种实施方式中提供一种交互式机器人的控制系统,包括:

pc机,用于给控制器发送固定格式的指令;

控制器,控制器将pc机发送过来的指令数据进行解析,并传递给末端执行器;

末端执行器,末端执行器携带执行工具,用于执行控制器的动作;

示教器,用于将需要的工作进行人工操作,并由控制器记忆和重现。

本实施方式相较于现有技术,机器人控制系统具备精度高、相应速度快、交互功能丰富、示教方式简便的特点。

另外,还设有扩展底座,扩展底座与机器人通过光耦隔离电路隔离,扩展底座上设有控制芯片,扩展底座上设有用于实现sd卡读写的sd卡接口、用于控制电机的motor接口、以及实现通信的uart接口中的至少一种。

示教器为游戏摇杆,游戏摇杆上设有三个电位器,游戏摇杆将电位的变化通过隔离模块传到控制芯片,控制芯片将电位变化解析并记录在sd卡中,用于重现。

pc机用户软件可以分为g代码生成软件和控制软件这两个部分:它是系统的上位机控制端,用户可以通过将图形图案利用灰度值生成机器可以识别的g代码文件供控制器使用;通过控制软件下发指令,利用传输工具实现对机器人的工作模式控制等功能。

控制器是本系统的核心部件,选用cortexm4内核的k64-mcu作为控制核心,搭载mqx-lite实时操作系统,实现串口通信,sd卡读写,示教等功能,同时读取sd卡中的g代码文件,实现对机器人的控制。

最终的功能取决于机器人末端的电机绑定的末端执行器,需要雕刻,则执行器为刻刀或者激光,如果需要绘图则需要气动喷头或者绘图笔。但是具体的执行模式的选择依然由pc机决定并选择。

控制系统的整体流程如下:将待重现的图形图案通过专用的软件生成机器可以识别的g代码,存储在底座板的sd卡中,当整个系统上电重启后,末端执行器的位置从极限位置运动到工作台面,接着读取设定的目标位置,通过插补算法,分配各个电机的执行情况,待到达目标点后重新规划下一次运动。作业结束后,回归到极限位置。

sd卡或移动设备的无线传输功能使得机器人支持脱机方式的工作,大大提高系统的实用性能。

控制芯片为cortexm4内核的k64-mcu芯片(mk64fx512),它是恩智浦(nxp)公司在2014年最新推出的一款基于cortexm4内核的32位微控制器,具有512mb片上flash和256kbram;主频最高可配置到200mhz;24路单端和4路差分的ad模块(16位高精度);8个pwm通道;1个sdhc(sd卡)控制器;5个uart模块;1个usb2.0otg接口;高达100个i/o引脚。此外,芯片支持电压范围为1.71v~3.6v,工作温度为-40℃~105℃。

另外,扩展底板包含了核心板对外提供基本接口及其他功能,包括用于实现sd卡读写的sd卡接口、用于实现数据交换的串行接口、用于实现保护机构的门型光电开关接口、用于实现外设供电的电源接口,用于控制电机的控制接口等。

sd卡接口:接口电路图见图2,sd卡接口与sd卡通过sd总线模式进行数据传输,sd总线包含主机向存储卡发送的时钟信号、双向的命令/响应信号、4个双向的数据信号、及电源和地信号。sd总线包括一个主机和多个从机,并采用同步的星形拓扑结构,且sd总线上设有若干上拉电阻。

sd卡作为一种存储容量大,读写速度快,价格低廉并且方便携带的物理存储设备,被广泛应用于各种控制系统。通过设置这些寄存器可以使得k64作为主机与sd卡从机进行通信。sdhc是符合sd2.0规格的新一代存储卡,特点是高容量(大于2g,小于32g),其对应的文件系统也从fat16提升到了fat32。sd卡定义了两种通信协议:sd总线模式和spi总线模式。由于spi模式是单线传输,sd模式可以选择4线传输,相比之下,sd总线模式的传输速率更高,所以本发明选择4位数据线的sd模式,sd总线框图如图3。

根据sdv2.0协议,sd总线包含以下信号:(1)clk:主机向存储卡发送的时钟信号;(2)cmd:双向的命令/响应信号;(3)dat0~dat3:4个双向的数据信号;(4)vdd、vss1、vss2:电源和地信号。

sd总线有一个主机多个从机并采用同步的星形拓扑结构。所有存储卡共用时钟、电源和地信号,命令(cmd)和数据(dat0~dat3)信号是存储卡的专用信号,为所有卡提供连续的点对点连接,典型电路连接如图4。很多芯片内部采用的是漏极开路的设计方式,因此在输出高电平时,需要外界上拉电阻,否则无法输出高电平。选择上拉电阻时候,可以选取一些阻值较大的电阻,可以减少待机功耗。其中,data3线必须上拉,这样在上电后即进入sd总线模式。

串行接口:串行接口与pc机通过rs232相连接,控制器的uart模块发出的是ttl电平,pc机无法识别,通过rs232模块将信号转换成pc可以识别的信号,进行通信。

光电开关接口:广电开关接口包括光耦隔离电路,光耦隔离芯片为6n137,6n137最高速率可以达到10mbps,能够充分的满足高速的数据交换且不会收到反向干扰。在隔离芯片的输入输出端都接有滤波电容和分压电阻,以便于光耦能正常有效工作。

6n137光耦合器是一款用于单通道的高速光耦合器,其内部有一个850nm波长a1gaasled和一个集成检测器组成,其检测器由一个光敏二极管、高增益线性运放及一个肖特基钳位的集电极开路的三极管组成。具有温度、电流和电压补偿功能,高的输入输出隔离,lsttl/ttl兼容,高速(典型为10mbd),5ma的极小输入电流。

电源接口:接口电路图见图4,核心控制板、门型光电、电机分别需要不同的工作电压,所以,需要使用lm2596-adj芯片,将供电电源进行转换成需要的5v,12v。再结合dc_dc芯片s8050将电气隔离,实现两路独立的供电电路,互不干扰。

为了进一步地优化本发明的实施效果,在本发明的另一种实施方式中,在前述内容的基础上,一种交互式机器人的控制方法,包括以下步骤:

s1.获取目标点:通过pc机读取sd卡内容或者接受用户的指令,将要到达的目标点的坐标值保存在程序的对应变量中;

s2.获取目标线段类型:根据当前坐标到达指定目标点设定运动方式,获得目标线段类型;

s3.计算插补点:根据已知的目标点和目标线段类型,计算插补点;

s4.重复步骤s3直至完成整个目标线段;

s5.控制器将pc机发送过来的指令数据进行解析,并传递给末端执行器;

s6.末端执行器执行控制器的动作。

其中,计算插补点包括以下步骤:

s31.通过已知的目标点和当前点的方程,根据目标线段的斜率来确定插补的进给,然后执行;

s32.完成了一个点的插补后,进行下一次插补。

采用上述的优选方案,插补点的计算方法有效减少比较次数,提高插补效率和精度。

确定插补的进给为以当前点位置为起点单位面积内对比目标线段所处位置来确定插补的进给;其中,当前点m点的坐标为(xi,yi),以m点作单位长度为1的正方形mabc,取长度为单位的线段ck、aj,目标线段的起点o点的坐标为(0,0),目标线段的终点a点的坐标为(xe,ye),偏差函数p是比较目标线段的斜率与oj斜率差值,偏差函数q是比较目标线段的斜率与ok斜率差值,具体包括以下步骤:

s311.当目标线段的终点位于第一象限时,偏差函数p和q分别为:

若qi>0,则向+x方向进给一步,偏差值为:

若pi<0,则向+y方向进给一步,偏差值为:

若pi>0且qi<0,则向+x和+y方向各进给一步,偏差值为:

s312.当目标线段的终点位于第二象限时,偏差函数p和q分别为:

若qi>0,则向-x方向进给一步,偏差值为:

若pi<0,则向+y方向进给一步,偏差值为:

若pi>0且qi<0,则向-x和+y方向各进给一步,偏差值为:

s313.当目标线段的终点位于第三象限时,偏差函数p和q分别为:

若qi>0,则向-x方向进给一步,偏差值为:

若pi<0,则向-y方向进给一步,偏差值为:

若pi>0且qi<0,则向-x和-y方向各进给一步,偏差值为:

s314.当目标线段的终点位于第四象限时,偏差函数p和q分别为:

若qi>0,则向-y方向进给一步,偏差值为:

若pi<0,则向+x方向进给一步,偏差值为:

若pi>0且qi<0,则向+x和-y方向各进给一步,偏差值为:

以上所述的仅是本发明的优选实施方式,应当指出,对于本领域的普通技术人员来说,在不脱离本发明创造构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。

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