本发明涉及工业示教机器人控制领域,特别是涉及一种示教方法及装置。
背景技术:
工业生产中,对机器人加工轨迹取决于示教操作中示教点的示教操作信息和示教数据,一旦示教点的示教操作类型和示教数据确定,则加工轨迹就确定,而加工轨迹直接决定了加工产品的精度和质量,然而在示教过程中容易出现操作失误,如不能对失误操作进行补救,则生产出来的加工产品精度和质量都不高,这对于工业生产来说损失严重。
技术实现要素:
为解决上述技术问题,本发明一方面提供一示教方法。包括:
数据存储单元依次保存示教操作中的各个示教点的示教操作信息和示教数据;
执行单元接收到触发撤销或/和重做操作指令时,调用当前示教操作的示教点的示教操作信息信息和示教数据,并根据所述示教点的示教操作信息和示教数据执行相应的响应。
进一步地,所述数据存储单元依次保存示教操作中的各个示教点的示教操作信息和示教数据具体为:
数据存储单元依次将所述示教操作中各个示教点的示教操作信息存入撤销栈或/和重做栈中,同时依次将所述示教操作中各个示教点的示教数据存入数据缓存区中,并返回各个示教点的示教数据索引。
进一步地,所述示教操作信息至少包括示教点的位置信息和示教操作类型。
进一步地,所述同时依次将所述示教操作中各个示教点的示教数据存入数据缓存区中后还包括:
将所述示教操作中各个示教点的示教数据分别创建对应的示教数据索引,并将所述示教数据索引分别与对应的示教操作信息绑定,再依次存入撤销栈或/和重做栈中。
进一步地,所述并根据所述示教点的示教操作信息和示教数据执行相应的响应的具体为:
根据所述示教点的示教操作信息和示教数据,调用所述示教点的示教操作信息和示教数据对应的函数指针所指的函数执行撤销或/和重做。
进一步地,所述示教操作类型包括下列中的至少一个示教操作:
示教点定位;
示教点捕捉;
示教点点动控制;
示教点跳转;
示教点插入与修改。
本发明另一方面提供一种示教装置,包括:
数据存储单元,用于依次保存示教操作中的各个示教点的示教操作信息和示教数据;
执行单元,用于当接收到触发撤销或/和重做操作指令时,调用当前示教操作的示教点的示教操作信息和示教数据,并根据所述示教点的示教操作信息和示教数据执行相应的响应。
进一步地,所述数据存储单元至少包括撤销栈、重做栈以及数据缓存区。
进一步地,所述示教操作信息至少包括示教点的位置信息和示教操作类型。
进一步地,所述并根据所述示教点的示教操作信息和示教数据执行相应的响应的具体为:
根据所述示教点的示教操作信息和示教数据,所述执行单元调用所述示教点的示教操作信息和示教数据对应的函数指针所指的函数执行撤销或/和重做。
有益效果:
本发明提供的一种示教方法及装置:通过在执行示教操作的同时,依次保存该示教操作中的各个示教点的示教操作信息和示教数据,便于在用户触发撤销或/和重做操作时,根据示教点的示教操作信息和及其示教数据执行相应的响应,从而可撤销或/和重做当前示教操作。当操作出现失误操作时可立即进行撤销从而避免了失误,或者撤销后还是需要原来操作时执行重做即可。
附图说明
图1是本发明实施例1提供的一种示教方法流程图;
图2是本发明提供的一种示教装置结构示意图;
图3是本发明实施例2提供的一种示教方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
图1为本发明实施例1提供的一种示教方法流程图,包括:
步骤S1:数据存储单元依次保存示教操作中的各个示教点的示教操作信息和示教数据;
具体地,当进行示教操作时,数据存储单元依次将示教操作中的各个示教点的示教操作信息存入数据存储单元的撤销栈或/和重做栈中,对应地,依次将示教操作中的各个示教点的示教数据存入数据存储单元的数据缓存区中。其中,示教操作信息至少包括示教点的位置信息和示教操作类型,位置信息为示教点在示教编程文件中的示教点的链表顺序;示教操作类型又包括下列中的至少一个示教操作:
示教点定位;
示教点捕捉;
示教点点动控制;
示教点跳转;
示教点插入与修改。
步骤S2:执行单元接收到触发撤销或/和重做操作指令时,调用当前示教操作的示教点的示教操作信息和示教数据,并根据所述示教点的示教操作信息和示教数据执行相应的响应。
具体地,执行单元接收到触发撤销或/和重做操作指令时,从数据存储单元的撤销栈或/和重做栈中调用当前示教操作的示教点的示教操作信息,从数据存储单元的数据缓存区中调用当前示教操作的示教点的示教数据,并根据该示教点的示教操作信息和示教数据调用对应的函数指针所指的函数执行撤销或/和重做。
如图3所示,本发明实施例2提供的一种示教方法流程图,包括:
步骤S101:数据存储单元依次保存示教操作中的各个示教点的位置信息和示教数据;
具体地,当进行示教操作时,数据存储单元依次将示教操作中的各个示教点的位置信息存入数据存储单元的撤销栈或/和重做栈中,对应地,依次示教操作中的各个示教点的示教数据存入数据存储单元的数据缓存区中,并返回各个数据对应的示教数据索引。其中,示教操作信息至少包括示教点的位置信息和示教操作类型,位置信息为示教点在示教编程文件中的示教点的链表顺序;示教操作包括下列中的至少一个示教操作:
示教点定位;
示教点捕捉;
示教点点动控制;
示教点跳转;
示教点插入与修改。
步骤S102:将所述示教操作中各个示教点的示教数据分别创建对应的示教数据索引,并将所述示教数据索引分别与对应的示教操作信息绑定,再依次存入撤销栈或/和重做栈中。
步骤S103:执行单元接收到触发撤销或/和重做操作指令时,调用当前示教操作的示教点的示教操作信息和示教数据索引,并根据所述示教点的示教操作信息和示教数据索引执行相应的响应。
具体地,执行单元接收到触发撤销或/和重做操作指令时,从数据存储单元的撤销栈或/和重做栈中调用当前示教操作的示教点的示教操作信息和对应的示教点的示教数据索引,并根据该示教点的示教操作信息和示教数据索引调用对应的函数指针所指的函数执行撤销或/和重做。
由于索引所占的内存远比示教数据的内存少很多,因此创建位置信息索引或/和示教数据索引减少内存,节约资源,从而优化了数据结构。
如图2所示,对应于一种示教方法本发明提供了一种示教装置,包括:
数据存储单元101,用于依次保存示教操作中的各个示教点的示教操作信息和示教数据;
具体地,数据存储单元至少包括撤销栈、重做栈以及数据缓存区。
当进行示教操作时,数据存储单元101依次将示教操作中的各个示教点的示教操作信息存入撤销栈或/和重做栈中,对应地,依次将示教操作中的各个示教点的示教数据存入数据缓存区中。其中,示教操作信息至少包括示教点的位置信息和示教操作类型,位置信息为示教点在示教编程文件中的示教点的链表顺序;示教操作包括下列中的至少一个示教操作:
示教点定位;
示教点捕捉;
示教点点动控制;
示教点跳转;
示教点插入与修改。
执行单元102,用于当接收到触发撤销或/和重做操作指令时,调用当前操作示教点的位置信息和示教数据,并根据该示教点的位置信息和示教数据执行相应的响应。
具体地,当执行单元102接收到触发撤销或/和重做操作指令时,从数据存储单元101中的撤销栈或/和重做栈中调用当前示教操作的示教点的位置信息,从数据存储单元101中的数据缓存区中调用当前示教操作的示教点的示教数据,并根据该示教点的位置信息和示教数据调用对应的函数指针所指的函数执行撤销或/和重做。
其中,数据存储单元101还用于,
将所述示教操作中各个示教点的示教数据分别创建对应的示教数据索引,并将所述示教数据索引分别与对应的示教操作信息绑定,再依次存入撤销栈或/和重做栈中。
当接收到触发撤销或/和重做操作指令时,直接从数据存储单元101中调用当前示教操作的示教点的示教操作信息和示教数据索引,执行撤销或/和重做操作。
将示教数据索引写入撤销或/和重做操作中,对于同一操作同时执行撤销和重做时,均可调用该示教数据索引,从而至少节约一半的内存资源,且同一示教点的示教数据还可能在多步操作中使用,从而节约了嵌入式系统的内存资源。
以上是对本发明所提供的一种示教方法及装置。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。