CN116551654A - 机械臂、机械臂的控制方法、装置、机器人及存储介质 - Google Patents
机械臂、机械臂的控制方法、装置、机器人及存储介质 Download PDFInfo
- Publication number
- CN116551654A CN116551654A CN202210107236.XA CN202210107236A CN116551654A CN 116551654 A CN116551654 A CN 116551654A CN 202210107236 A CN202210107236 A CN 202210107236A CN 116551654 A CN116551654 A CN 116551654A
- Authority
- CN
- China
- Prior art keywords
- lifting
- lifting component
- target object
- sliding
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 167
- 238000003860 storage Methods 0.000 title claims abstract description 20
- 230000008569 process Effects 0.000 claims abstract description 119
- 230000033001 locomotion Effects 0.000 claims abstract description 109
- 230000008859 change Effects 0.000 claims abstract description 47
- 230000009471 action Effects 0.000 claims abstract description 39
- 230000005484 gravity Effects 0.000 claims description 30
- 230000001133 acceleration Effects 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 7
- 238000010276 construction Methods 0.000 claims description 5
- 230000003068 static effect Effects 0.000 abstract description 13
- 238000005516 engineering process Methods 0.000 description 23
- 238000013473 artificial intelligence Methods 0.000 description 20
- 239000011159 matrix material Substances 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 239000013598 vector Substances 0.000 description 10
- 238000010801 machine learning Methods 0.000 description 8
- 230000002093 peripheral effect Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 4
- 239000012636 effector Substances 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000011160 research Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000003466 welding Methods 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000011248 coating agent Substances 0.000 description 1
- 238000000576 coating method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 239000011664 nicotinic acid Substances 0.000 description 1
- 235000001968 nicotinic acid Nutrition 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013526 transfer learning Methods 0.000 description 1
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/10—Programme-controlled manipulators characterised by positioning means for manipulator elements
- B25J9/12—Programme-controlled manipulators characterised by positioning means for manipulator elements electric
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Automation & Control Theory (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Manipulator (AREA)
Abstract
本申请公开了一种机械臂、机械臂的控制方法、装置、机器人及存储介质,涉及机器人控制领域。该机械臂包括:托举部件、机械臂主体、驱动电机以及控制器;所述控制器与所述驱动电机电性相连;所述托举部件连接在所述机械臂主体的末端;所述控制器,用于控制所述驱动电机,驱动所述托举部件进行姿态变化和移动,以使得所述托举部件上放置的目标物体在目标位置,以目标速度滑动脱离所述托举部件。上述机械臂通过托举部件的运动来动态的放置目标物体,不存在静态过程,可以使得物体放置的动作连贯执行,从而提高了放置物体的效率。
Description
技术领域
本申请实施例涉及机器人控制领域,特别涉及一种机械臂、机械臂的控制方法、装置、机器人及存储介质。
背景技术
随着机器人控制技术的不断发展,越来越多的机器人具有通过机械臂放置物体的功能。
在相关技术中,机器人通过末端执行器(比如机械手)抓住目标物体后,将目标物体放置到指定位置。其中,机器人放置目标物体的过程为准静态或者静态的放置过程。也就是机械臂通过末端执行器将目标物体带到指定位置,机械臂停止运动,末端执行器打开,放下物体。
然而,相关技术中的物体放置过程需要机械臂悬停后打开末端执行器,移动和放置物体的过程不连贯,导致机器人放置物体的效率较低。
发明内容
本申请实施例提供了一种机械臂、机械臂的控制方法、装置、机器人及存储介质,能够通过机械臂动态放置目标物体,提高放置物体的效率。所述技术方案如下:
一方面,提供了一种机械臂,所述机械臂包括:托举部件、机械臂主体、驱动电机以及控制器;
所述控制器与所述驱动电机电性相连;所述托举部件连接在所述机械臂主体的末端;
所述控制器,用于控制所述驱动电机,驱动所述托举部件进行姿态变化和移动,以使得所述托举部件上放置的目标物体随着所述托举部件的姿态变化和移动,在摩擦力和重力的作用下在所述托举部件的上表面滑动,并在目标位置以目标速度滑动脱离所述托举部件。
一方面,提供了一种机械臂的控制方法,所述机械臂包括托举部件、机械臂主体、以及驱动电机,所述托举部件连接在所述机械臂主体的末端;所述方法包括:
获取所述托举部件上的目标物体与所述托举部件之间的摩擦力系数;
基于所述摩擦力系数,构建滑动力学模型;所述滑动力学模型用于指示所述托举部件托举所述目标物体运动的过程中,运动***的广义坐标的变化情况与所述运动***受到的驱动力之间的关系;所述运动***包括所述托举部件以及所述目标物体;
基于所述滑动力学模型,获取目标控制信息;所述目标控制信息包括所述托举部件的运动轨迹,以及所述运动***在各个时刻受到的驱动力;
基于所述目标控制信息,通过所述驱动电机驱动所述托举部件进行姿态变化和移动,以使得所述托举部件上放置的目标物体随着所述托举部件的姿态变化和移动,在摩擦力和重力的作用下在所述托举部件的上表面滑动,并在目标位置以目标速度滑动脱离所述托举部件。
另一方面,提供了一种机械臂的控制装置,所述机械臂包括托举部件、机械臂主体、以及驱动电机,所述托举部件连接在所述机械臂主体的末端;所述装置包括:
系数获取模块,用于获取所述托举部件上的目标物体与所述托举部件之间的摩擦力系数;
模型构建模块,用于基于所述摩擦力系数,构建滑动力学模型;所述滑动力学模型用于指示所述托举部件托举所述目标物体运动的过程中,运动***的广义坐标的变化情况与所述运动***受到的驱动力之间的关系;所述运动***包括所述托举部件以及所述目标物体;
控制信息获取模块,用于基于所述滑动力学模型,获取目标控制信息;所述目标控制信息包括所述托举部件的运动轨迹,以及所述运动***在各个时刻受到的驱动力;
驱动控制模块,用于基于所述目标控制信息,通过所述驱动电机驱动所述托举部件进行姿态变化和移动,以使得所述托举部件上放置的目标物体随着所述托举部件的姿态变化和移动,在摩擦力和重力的作用下在所述托举部件的上表面滑动,并在目标位置以目标速度滑动脱离所述托举部件。
在一种可能的实现方式中,所述目标物体在所述托举部件上表面滑动时,所述目标物体在所述托举部件上表面的加速度由所述托举部件的上表面相对于水平面的偏移角度控制,且所述目标物体的在滑动过程中的阻力为滑动摩擦力。
在一种可能的实现方式中,所述控制信息获取模块,用于基于控制约束条件,以运动代价最小化为目标,获取所述目标控制信息;所述控制约束条件包括所述滑动力学模型;所述运动代价是通过所述驱动电机驱动所述托举部件进行姿态变化和移动,以使得所述目标物体随着所述托举部件姿态变化和移动,在摩擦力和重力的作用下在所述托举部件上表面滑动,并在目标位置以目标速度滑动脱离所述托举部件的代价。
在一种可能的实现方式中,所述目标物体在所述托举部件上滑动的过程包括沿着相对于所述托举部件的第一方向滑动脱离所述托举部件的第一过程;
所述控制约束条件包括:
所述滑动力学模型;
所述第一过程的开始时刻;
所述第一过程的结束时刻;
在所述第一过程的开始时刻,所述托举部件以及所述目标物体的速度;
在所述第一过程的结束时刻,所述目标物体和所述托举部件的速度;
以及,所述托举部件对所述目标物体的支持力大于0。
在一种可能的实现方式中,所述目标物体在所述托举部件上滑动的过程包括:
从相对于所述托举部件的初始位置开始,沿着相对于所述托举部件的第二方向滑动至相对于所述托举部件的第一位置的第二过程;以及,从相对于所述托举部件的第一位置开始,沿着相对于所述托举部件的第三方向滑动脱离所述托举部件的第三过程;
所述控制约束条件包括:
所述滑动力学模型;
所述第二过程的开始时刻;
所述第三过程的开始时刻;
所述第三过程的结束时刻;
在所述第二过程的开始时刻,所述托举部件以及所述目标物体的速度;
在所述第三过程的开始时刻,所述托举部件以及所述目标物体的速度;
在所述第三过程的结束时刻,所述目标物体和所述托举部件的速度;
以及,所述托举部件对所述目标物体的支持力大于0。
在一种可能的实现方式中,当所述目标物体相对于所述托举部件的初始位置满足调整条件时,所述目标物体在所述托举部件上滑动的过程包括:从相对于所述托举部件的初始位置开始,沿着相对于所述托举部件的第二方向滑动至相对于所述托举部件的第一位置的第二过程;以及,从相对于所述托举部件的第一位置开始,沿着相对于所述托举部件的第三方向滑动脱离所述托举部件的第三过程。
在一种可能的实现方式中,所述调整条件包括:所述目标物体相对于所述托举部件的初始位置位于所述托举部件的边缘。
在一种可能的实现方式中,所述控制信息获取模块,用于基于所述滑动力学模型,通过阻抗控制的方式获取目标控制信息;
其中,所述阻抗控制的过程中,所述目标物体受到的抓取力由所述托举部件对所述目标物体的支撑力和摩擦力确定。
在一种可能的实现方式中,所述系数获取模块,用于,
获取所述目标物体在所述托举部件上发生滑动时的画面;
基于所述目标物体在所述托举部件上发生滑动时的画面,获取所述目标物体的滑动信息;所述滑动信息包括所述目标物体在所述托举部件上发生滑动时,所述托举部件的倾斜角度,以及,所述目标物体在所述托举部件上滑动的加速度;
根据所述滑动信息获取所述摩擦力系数。
另一方面,提供了一种机器人,所述机器人包含上所述的机械臂;
所述机械臂中的控制器用于执行如上所述的机械臂的控制方法。
另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述本申请实施例中任一所述的机械臂的控制方法。
另一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中任一所述的机械臂的控制方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
对于包含托举部件、机械臂主体、驱动电机以及控制器的机械臂,通过控制器控制驱动电机,驱动托举部件进行姿态变化和移动,以使得托举部件上放置的目标物体随着托举部件姿态变化和移动,在摩擦力和重力的作用下在托举部件上表面滑动并滑动脱离托举部件。在上述控制过程中,通过托举部件的运动来动态的放置目标物体,不存在静态过程,可以使得物体放置的动作连贯执行,从而提高了放置物体的效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个示例性实施例提供的机械臂的结构示意图;
图2是本申请一个示例性实施例提供的机械臂的结构示意图;
图3是本申请一个示例性实施例提供的机械臂的控制方法的流程图;
图4是本申请一个示例性实施例提供的物体放置的动态示意图;
图5是本申请另一个示例性实施例提供的物体放置的动态示意图;
图6是本申请提供的滑动放置操作的实现流程;
图7是本申请一个示例性实施例提供的机械臂的控制方法的流程图;
图8是本申请一个示例性实施例提供的运动***的示意图;
图9是本申请一个示例性实施例提供的位置调整和放置的示意图;
图10是本申请一个示例性实施例提供的机械臂的控制装置的结构框图;
图11是本申请一个示例性实施例提供的机器人的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先,对本申请实施例中所涉及的术语给出说明:
1)机器人(Robot):是一种能够半自主或全自主工作的智能机器。可选的,这种机器具备一些与人或生物相似的智能能力,如感知能力、规划能力、动作能力和协同能力,是一种具有高度灵活性的自动化机器。
随着人们对机器人技术智能化本质认识的加深,机器人技术开始源源不断地向人类活动的各个领域渗透。结合这些领域的应用特点,人们发展了各式各样的具有感知、决策、行动和交互能力的特种机器人和各种智能机器人。机器人是自动执行工作的机器装置。它既可以接受人类指挥,又可以运行预先编排的程序,也可以根据以人工智能技术制定的原则纲领行动。机器人的任务通常是协助或取代人类的工作。机器人可以是高级整合控制论、机械电子、计算机、材料和仿生学的产物,在工业、医学、农业、服务业、建筑业等领域中均有重要用途。
从应用环境出发,可以将机器人也分为两大类,即工业机器人和特种机器人。工业机器人是指面向工业领域的多关节机械手或多自由度机器人。特种机器人则是除工业机器人之外的、用于非制造业并服务于人类的各种先进机器人,包括:仿生机器人、服务机器人、水下机器人、娱乐机器人、农业机器人等。在特种机器人中,有些分支发展很快,有独立成体系的趋势,如服务机器人、水下机器人、微操作机器人等。
工业机器人按臂部的运动形式分为四种。直角坐标型的臂部可沿三个直角坐标移动;圆柱坐标型的臂部可作升降、回转和伸缩动作;球坐标型的臂部能回转、俯仰和伸缩;关节型的臂部有多个转动关节。
工业机器人按执行机构运动的控制机能,又可分点位型和连续轨迹型。点位型控制执行机构由一点到另一点的准确定位,适用于机床上下料、点焊和一般搬运、装卸等作业;连续轨迹型可控制执行机构按给定轨迹运动,适用于连续焊接和涂装等作业。
工业机器人按程序输入方式区分有编程输入型和示教输入型两类。编程输入型是将计算机上已编好的作业程序文件,通过串口或者以太网等通信方式传送到机器人控制柜。示教输入型的示教方法有两种:一种是由操作者用手动控制器(示教操纵盒),将指令信号传给驱动***,使执行机构按要求的动作顺序和运动轨迹操演一遍;另一种是由操作者直接领动执行机构,按要求的动作顺序和运动轨迹操演一遍。在示教过程的同时,工作程序的信息即自动存入程序存储器中在机器人自动工作时,控制***从程序存储器中检出相应信息,将指令信号传给驱动机构,使执行机构再现示教的各种动作。示教输入程序的工业机器人称为示教再现型工业机器人。
2)人工智能(Artificial Intelligence,AI):是一种利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互***、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
计算机视觉技术(Computer Vision,CV)是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能***。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技术。
随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用,例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
在本申请实施例中,AI技术可以应用于机器人中,主要涉及机器人控制技术、机器学习技术以及计算机视觉技术等等。
在本申请的本实施例中,涉及的机器人具有机械臂,且该机械臂可以用于执行物体放置任务,即将目标物体放置到某一个目标位置。
示意性的,图1是本申请一个示例性实施例提供的机械臂的结构示意图,该机械臂可以安装在机器人中。如图1所示,该机械臂包括托举部件110、机械臂主体120、驱动电机130以及控制器140。
如图1所示,上述托举部件110可以实现为一个平面或者类平面的部件,用于承托其上的目标物体150。
上述机械臂主体120用于连接托举部件110,并且,其中的托举部件110与机械臂主体120的末端连接,作为机械臂主体120的延伸部分,用以执行物体放置的任务。
上述驱动电机130可以设置在机械臂中的各个关节处,用以控制各个关节旋转,以带动与关节连接的组件进行旋转或者移动。
上述控制器140与驱动电机130相连,用以控制驱动电机130运行。
在本申请实施例中,上述控制器140,可以用于控制驱动电机,驱动托举部件进行姿态变化和移动,以使得目标物体随着托举部件姿态变化和移动,在摩擦力和重力的作用下在托举部件上表面滑动,并在目标位置以目标速度滑动脱离托举部件。
综上所述,本申请实施例涉及的机械臂,对于包含托举部件、机械臂主体、驱动电机以及控制器的机械臂,通过控制器控制驱动电机,驱动托举部件进行姿态变化和移动,以使得目标物体随着托举部件姿态变化和移动,在摩擦力和重力的作用下在托举部件上表面滑动并脱离托举部件。在上述控制过程中,通过托举部件的运动来动态的放置目标物体,不存在静态过程,可以使得物体放置的动作连贯执行,从而提高了放置物体的效率。
图2是本申请一个示例性实施例提供的机械臂的结构示意图,该机械臂可以安装在机器人中。如图2所示,该机械臂包括托举部件110、机械臂主体120、驱动电机130以及控制器140。
如图1所示,上述托举部件110可以实现为一个平面或者类平面的部件,用于承托其上的目标物体150。
上述机械臂主体120用于连接托举部件110,并且,其中的托举部件110与机械臂主体120的末端连接,作为机械臂主体120的延伸部分,用以执行物体放置的任务。
上述驱动电机130可以设置在机械臂中的各个关节处,用以控制各个关节旋转,以带动与关节连接的组件进行旋转或者移动。
上述控制器140与驱动电机130相连,用以控制驱动电机130运行。
在本申请实施例中,上述控制器140,可以用于控制驱动电机,驱动托举部件进行姿态变化和移动,以使得目标物体随着托举部件姿态变化和移动,在摩擦力和重力的作用下在托举部件上表面滑动,并在目标位置,以目标速度滑动脱离托举部件。
在一种可能的实现方式中,控制器在通过驱动电机驱动托举部件移动时,可以通过驱动电机驱动机械臂主体,通过机械臂主体带动托举部件移动。
在一种可能的实现方式中,上述托举部件110与机械臂主体120之间可以通过第一关节160相连;
驱动电机130包含第一驱动电机130a;
第一驱动电机130a用于驱动第一关节160,以使得托举部件110转动。
在一种可能的实现方式中,上述驱动电机可以包含第二驱动电机130b;
第二驱动电机130b可以用于驱动托举部件110与机械臂主体120移动。
其中,上述第二驱动电机130b可以设置在机械臂主体中部,或者,设置在机械臂主体与机器人主体的结合部。
在一种可能的实现方式中,机械臂还包括:图像采集组件170;
图像采集组件170与控制器140电性相连;
图像采集组件170可以用于采集托举部件110处的图像。
其中,该图像采集组件170可以与机械臂主体分开设置,比如,图像采集组件170可以被连接在机器人主体上。
或者,上述图像采集组件170也可以设置在机械臂主体上。
综上所述,本申请实施例涉及的机械臂,对于包含托举部件、机械臂主体、驱动电机以及控制器的机械臂,通过控制器控制驱动电机,驱动托举部件进行姿态变化和移动,以使得目标物体随着托举部件姿态变化和移动,在摩擦力和重力的作用下在托举部件上表面滑动,并滑动脱离托举部件。在上述控制过程中,通过托举部件的运动来动态的放置目标物体,不存在静态过程,可以使得物体放置的动作连贯执行,从而提高了放置物体的效率。
图3是本申请一个示例性实施例提供的机械臂的控制方法,其中,机械臂包括托举部件、机械臂主体、以及驱动电机,托举部件连接在机械臂主体的末端;可选的,该机械臂可以是上述图1或图2所示的机械臂。比如,该方法可以由图1或图2所示的机械臂中的控制器执行。如图3所示,该机械臂的控制方法包括:
步骤301,获取托举部件上的目标物体与托举部件之间的摩擦力系数。
步骤302,基于摩擦力系数,构建滑动力学模型;滑动力学模型用于指示托举部件托举目标物体运动的过程中,运动***的广义坐标的变化情况与运动***受到的驱动力之间的关系;运动***包括托举部件以及目标物体。
步骤303,基于滑动力学模型,获取目标控制信息;目标控制信息包括托举部件的运动轨迹,以及运动***在各个时刻受到的驱动力。
步骤304,基于目标控制信息,通过驱动电机驱动托举部件进行姿态变化和移动,以使得目标物体随着托举部件姿态变化和移动,在摩擦力和重力的作用下在托举部件上表面滑动,并在目标位置以目标速度滑动脱离托举部件。
综上所述,本申请实施例所示的方案,通过托举部件上的目标物体与托举部件之间的摩擦力系数,构建用于指示托举部件托举目标物体运动的过程中,运动***的广义坐标的变化情况与运动***受到的驱动力之间的关系的滑动力学模型,然后基于滑动力学模型,获取托举部件的运动轨迹,以及运动***在各个时刻受到的驱动力,再通过目标控制信息控制驱动电机,使得目标物体随着托举部件姿态变化和移动,在摩擦力和重力的作用下在托举部件上表面滑动,并滑动脱离托举部件,从而完成物体放置。在上述过程中,通过托举部件的运动来动态的放置目标物体,不存在静态过程,可以使得物体放置的动作连贯执行,从而提高了放置物体的效率。
通过上述图3所示实施例提供的方案,机器人可以通过包含托举部件的机械臂,采用动态的方式带动目标物体在托举部件上滑动,使得目标物体在惯性的作用下,在合适的位置滑动脱离托举部件。
在一种可能的实现方式中,上述控制器,用于控制驱动电机驱动托举部件沿着第一方向移动至第一位置;控制器,还用于控制驱动电机驱动托举部件向第一方向的水平方向倾斜,以使得目标物体在摩擦力和重力的作用下在托举部件的上表面滑动,并在目标位置以目标速度滑动脱离托举部件;目标速度的水平方向与第一方向的水平方向相同。
其中,上述控制驱动电机驱动托举部件向第一方向的水平方向倾斜的过程,可以在控制驱动电机驱动托举部件沿着第一方向移动至第一位置的过程中开始执行;或者,上述控制驱动电机驱动托举部件向第一方向的水平方向倾斜的过程,可以在控制驱动电机驱动托举部件沿着第一方向移动至第一位置时开始执行;或者,上述控制驱动电机驱动托举部件向第一方向的水平方向倾斜的过程,可以在控制驱动电机驱动托举部件沿着第一方向移动至第一位置后开始执行。
比如,请参考图4,其示出了本申请一个示例性实施例提供的物体放置的动态示意图。以机械臂通过前送的方式放置目标物体为例,如图4所示,从初始位置a开始,机械臂中的驱动电机驱动机械臂前送,机械臂中的托举部件41依次经过中间位置b、中间位置c、中间位置d、中间位置e达到最终位置f。其中,在不同的位置,托举部件可以具有不同的速度和不同的偏转方向,使得放置在托举部件41上的目标物体42在根据托举部件移动的同时,相对于托举部件41滑动,并在中间位置e脱离托举部件41,滑动至桌面。
在另一种可能的实现方式中,上述控制器,用于控制驱动电机驱动托举部件沿着第二方向移动至第二位置;上述控制器,还用于控制驱动电机驱动托举部件向第二方向的水平方向的反方向倾斜,以使得目标物体在摩擦力和重力的作用下在托举部件的上表面滑动,并在目标位置以目标速度滑动脱离托举部件;其中,目标速度的水平方向与第二方向的水平方向相反。
其中,上述控制驱动电机驱动托举部件向第二方向的水平方向的反方向倾斜的过程,可以在控制驱动电机驱动托举部件沿着第二方向移动至第二位置的过程中开始执行;或者,上述控制驱动电机驱动托举部件向第二方向的水平方向的反方向倾斜的过程,可以在控制驱动电机驱动托举部件沿着第二方向移动至第二位置时开始执行;或者,上述控制驱动电机驱动托举部件向第二方向的水平方向的反方向倾斜的过程,可以在控制驱动电机驱动托举部件沿着第二方向移动至第二位置后开始执行。
请参考图5,其示出了本申请另一个示例性实施例提供的物体放置的动态示意图。以机械臂通过后缩的方式放置目标物体为例,如图5所示,从初始位置a开始,机械臂中的驱动电机驱动机械臂前送,机械臂中的托举部件51依次经过中间位置b、中间位置c、中间位置d、中间位置e达到最终位置f。其中,在不同的位置,托举部件可以具有不同的速度和不同的偏转方向,使得放置在托举部件51上的目标物体52在根据托举部件移动的同时,相对于托举部件51滑动,并在中间位置e脱离托举部件51,滑动至桌面。
本申请上述实施例所示的放置方式可以有以下几个优点:
1)机器人末端可以操作大负载物体,且物体上没有抓取点,因而机器人可以在没有手指抓取的情况下实现物体的放置操作;
2)放置快速,便捷,整个过程可以动态流畅的完成;
3)可以与其它动态操作动作配合完成,如机器人的动态转移,动态抓取等操作形式;
4)不依赖于复杂昂贵的机器人灵巧手,机器人末端只需要安装简单的手掌即可以实现复杂的灵巧操作。
请参考图6,其示出了本申请提供的滑动放置操作的实现流程。该实现流程的执行方式可以参考图7。
图7是本申请一个示例性实施例提供的机械臂的控制方法,其中,机械臂包括托举部件、机械臂主体、以及驱动电机,托举部件连接在机械臂主体的末端;可选的,该机械臂可以是上述图1或图2所示的机械臂。比如,该方法可以由图1或图2所示的机械臂中的控制器执行。如图7所示,该机械臂的控制方法包括:
步骤701,获取托举部件上的目标物体与托举部件之间的摩擦力系数。
在一种可能的实现方式中,获取托举部件上的目标物体与托举部件之间的摩擦力系数,包括:
获取目标物体在托举部件上发生滑动时的画面;
基于目标物体在托举部件上发生滑动时的画面,获取目标物体的滑动信息;滑动信息包括目标物体在托举部件上发生滑动时,托举部件的倾斜角度,以及,目标物体在托举部件上滑动的加速度;
根据滑动信息获取摩擦力系数。
在一种可能的实现方式中,上述托举部件的形状为平板。比如,上述托举部件可以是机械臂顶端的平板形状的机械手掌。
目标物体在机械臂的托举部件(比如机械手掌,下文简称为手掌)上滑动,可以将手掌和目标物体视为一体的运动***,该运动***的示意图可以如图8所示。
上图中,{I}为惯性坐标系,{B}为手掌上的连体坐标系。根据坐标系{I}可以确定手掌的位姿和运动,根据坐标系{B}可以确定物体的位姿和运动。
物体与机器人手掌之间的摩擦主要分为静摩擦和动摩擦,二类摩擦分别可以通过静摩擦系数μ0和动摩擦系数μ来确定。
静摩擦系数可以通过不断调整手掌倾斜角度q,并观察物体运动情况得到。如果q=q0时,物体开始运动,则静摩擦系数可以表示如下所示:
μ0=atan(q0)
当倾斜角度大于q0,且固定不变,此时物体会以某一特定的加速度下滑,则此时的静摩擦力可以表示如下:
上述公式中,物体的加速度可以通过视觉信息以及动捕***获得。该视觉信息以及动捕***可以通过AI模型实现,该AI模型可以通过机器学习的方式训练得到。
步骤702,基于摩擦力系数,构建滑动力学模型;滑动力学模型用于指示托举部件托举目标物体运动的过程中,运动***的广义坐标的变化情况与运动***受到的驱动力之间的关系。
其中,该运动***包括托举部件以及目标物体。
手掌上的控制点C在坐标系{I}中的坐标为C(x0,y0)。物体在手掌连体坐标系中的坐标为(x,y)。由此可以进一步得到物体在惯性坐标系下的坐标为:
式中,[xI,yI]为物体质心点在世界坐标系下的坐标值,R为旋转矩阵。
假设整个***的广义坐标为X,且X=[x0,y0,q,x,y]Τ。整个***的动力学模型如下所示:
上述公式中,
G(X)=[G1 G2 G3 G4 G5]Τ
F=[F1 F2 F3 F4 F5]Τ
H11=H22=m1+m2
H12=H21=0
H13=H31=m2(ycos(q)-xsin(q))
H14=H41=m2cos(q)
H15=H51=m2sin(q)
H23=H32=-m2(xcos(q)+ysin(q))
H24=H42=-m2sin(q)
H25=H52=m2cos(q)
H33=m2x2+m2y2+I1+I2
H34=H43=m2y
H53=-m2x
H44=H55=m2
H45=H54=-m2x
C11=C12=C21=C22=C31=C32=C41=C42=C51=C52
C44=0
C55=0
其中,H(X),和G(X)分别为滑动***的惯性矩阵,离心力矩阵以及重力矢量,F为驱动力矢量。F1和F2为机器人在X和Y方向上的驱动力,F3为机器人在旋转方向上的驱动力矩,F4为物体在手掌上的摩擦力,F5为物体与手掌之间的支持力。上述公式中的m1表示机器人的机械臂和手掌的等效质量,m2表示物体的质量,I1表示机器人的手掌的转动惯量,I2表示物体的转动惯量。
步骤703,基于滑动力学模型,获取目标控制信息;目标控制信息包括托举部件的运动轨迹,以及运动***在各个时刻受到的驱动力。
可选的,上述目标控制信息还可以包括机械臂的运动轨迹。
在一种可能的实现方式中,基于滑动力学模型,获取目标控制信息,包括:
基于控制约束条件,以运动代价最小化为目标,获取目标控制信息;控制约束条件包括滑动力学模型;运动代价是通过驱动电机驱动托举部件进行姿态变化和移动,以使得目标物体随着托举部件姿态变化和移动,在摩擦力和重力的作用下在托举部件上表面滑动,在目标位置以目标速度滑动脱离托举部件的代价。
其中,上述运动代价最小化可以包括运动轨迹的执行时间(即放置物体的整个过程所耗费的间)最小化、运动轨迹的距离最小化、以及运动轨迹的做功(即放置物体的整个过程中,控制电机的做功)最小化中的至少一种。
上述步骤702中,给出了滑动操作过程中的动力学模型,滑动操作的动力学模型可以用于机器人的操作的最优控制解算。机器人动态滑动操作是指在机器人运动过程中,通过调整机器人手掌的倾斜角度,改变物体的下滑加速度和速度,进而将物体以某一个特定速度滑出。
在一种可能的实现方式中,目标物体在托举部件上滑动的过程包括沿着相对于托举部件的第一方向滑动脱离托举部件的第一过程;
控制约束条件包括:
滑动力学模型;
第一过程的开始时刻;
第一过程的结束时刻;
在第一过程的开始时刻,托举部件以及目标物体的速度;
在第一过程的结束时刻,目标物体和托举部件的速度;
以及,托举部件对目标物体的支持力大于0。
根据机器人的滑动操作的要求,物体由初始位置,需要在机器人手掌运动的情况下,在某一个时刻以某一速度从边缘处滑出。以运动代价包括运动轨迹的执行时间为例,根据任务特征,可以列出如下所示的最优轨迹生成方程:
上述公式中,X0和XT分别给出了物体和机器人手掌初始时刻和最终脱手时刻的位置,和/>分别给出了物体和机器人手掌初始时刻和最终脱手时刻的速度,F5≥0约束主要是保证物体与手掌的接触始终存在。λ为机器人加速度优化项的权重系数。
其中,上述最优轨迹生成方程中,表示轨迹执行的时间需要最小化;/>表示滑动***的加速度。
根据上述公式,机器人的运动轨迹需要保证自身运动轨迹要求,还需要通过改变倾斜角度来实现物体在手掌上的滑动。
也就是说,在本申请实施例中,需要计算得到机器人的手掌的运动轨迹和/或倾斜角度(即各个时刻的手掌的位置和姿态),然后再根据手掌的位置和姿态,进行逆向运动学计算,得到机器人的关节轨迹。
上述的最优控制方程可以通过最优控制软件包进行解算,如PSOPT或者开放最优控制库(OpenOptimal ControlLibrary,OpenOCL)。
上述方程的最优控制阶段可以得到其最优轨迹X*和最优驱动力F*。
其中,上述最优驱动力指的是物体质心处所受到的合力,可以通过物体的惯性力,离心力以及重力项计算得到。
在一种可能的实现方式中,目标物体在托举部件上滑动的过程包括:
从相对于托举部件的初始位置开始,沿着相对于托举部件的第二方向滑动至相对于托举部件的第一位置的第二过程;以及,从相对于托举部件的第一位置开始,沿着相对于托举部件的第三方向滑动脱离托举部件的第三过程;
控制约束条件包括:
滑动力学模型;
第二过程的开始时刻;
第三过程的开始时刻;
第三过程的结束时刻;
在第二过程的开始时刻,托举部件以及目标物体的速度;
在第三过程的开始时刻,托举部件以及目标物体的速度;
在第三过程的结束时刻,目标物体和托举部件的速度;
以及,托举部件对目标物体的支持力大于0。
在一种可能的实现方式中,当目标物体相对于托举部件的初始位置满足调整条件时,目标物体在托举部件上滑动的过程包括:从相对于托举部件的初始位置开始,沿着相对于托举部件的第二方向滑动至相对于托举部件的第一位置的第二过程;以及,从相对于托举部件的第一位置开始,沿着相对于托举部件的第三方向滑动脱离托举部件的第三过程。
在一种可能的实现方式中,上述调整条件包括:目标物体相对于托举部件的初始位置位于托举部件的边缘。
在一些情况下,物块初始位置并不合适,如初始时刻物体就在边缘位置,此时上述方案无法提供给有效下滑距离使得物体以一定初速度划出接触面,因而有必要采用滑动的方式进行重新抓取,使得物体可以合适的位置。其中,位置调整和放置的示意图可以如图9所示。
上述图9所示的滑动操作包含了两个过程,一个过程是滑动操作实现位置调整,另一个过程是滑动操作实现物体的动态放置。
此时,以运动代价包括运动轨迹的执行时间为例,根据任务特征,可以列出如下所示的最优轨迹生成方程:
/>
上述优化模型中,T1为基于滑动的位置调整时间,T2-T1为基于滑动的动态放置的时间。表示轨迹执行的时间需要最小化。
同样的,针对多阶段的最优控制,上述方程的最优控制阶段可以得到其最优轨迹X*和最优驱动力F*。
步骤704,基于目标控制信息,获取驱动电机的驱动力矩。
在一种可能的实现方式中,控制器基于滑动力学模型,通过阻抗控制的方式获取目标控制信息;其中,在上述阻抗控制的过程中,目标物体受到的抓取力由托举部件对目标物体的支撑力和摩擦力确定。
机器人操作中的物体阻抗是指机器人抓取目标物体后,目标物体对外交互,二者之间的阻抗关系式。此处,物体并没有与其它外部环境进行交互,但是物体在此处需要与手掌之间存在一特定的接触,且物体的动力学方程有:
式中,Mb,Cb和Nb分别式物体在连体坐标系下的惯性矩阵,离心力项矩阵以及重力项矩阵。Fb为物体受到其它外部作用力,此处主要是指等效操作力。Vb,是指物体的运动速度以及加速度。Rs,b为物体的位置和姿态。
为了保证物体与手掌之间的有效接触以及滑动操作的顺利进行,物体的等效操作力与手掌抓取力需要满足如下关系:
min(||Fb*-Fb||2+||Fc||2)
s.t.Fb=GFc
上式中,Fc为手掌抓取力,G为抓取矩阵,Fb*为期望的等效操作力。其中,物体的等效操作力是指物体质心处受到的合力,而等效操作力最直接的影响因素是手掌和物体之间的接触力(即上述手掌抓取力)。其中,上述接触力通常是3维矢量,其包含力矢量,且不包含力矩矢量;物体的等效操作力的矢量通常是6维矢量,其既包含力矢量,也包含力矩矢量。
考虑到机械臂的动力学以及所受外力,则有:
上式中,Mr(θ),和Nr(θ)分别是机器人相关的惯性矩阵,离心力项矩阵以及重力矩阵。/>为力映射雅可比矩阵。τ为各个关节驱动力矢量。
因而机械臂的控制力矩为:
式中,u为机器人关节加速度相关控制修正项,kp和kd为控制系数,JV为物体笛卡尔速度和机器人关节运动之间的映射雅可比矩阵。
在操作物体时,需要控制机器人的笛卡尔位置和姿态,而在实际控制中,机器人的底层控制器需要控制机器人的各个关节,而各个关节的控制需要关节驱动力矩来实现。因此,在本申请实施例中,机器人的控制器需要按照上述公式计算出驱动电机的驱动力矩。
步骤705,基于驱动力矩,通过驱动电机驱动托举部件进行姿态变化和移动,以使得托举部件上放置的目标物体随着托举部件的姿态变化和移动,在摩擦力和重力的作用下在托举部件的上表面滑动,并在目标位置以目标速度滑动脱离托举部件。
基于上述内容可见,在本申请实施例中,目标物体在托举部件上表面滑动时,目标物体在托举部件上表面的加速度由托举部件的上表面相对于水平面的偏移角度控制,且目标物体的在滑动过程中的阻力为滑动摩擦力。
具体的,目标物体在托举部件上表面滑动过程中,随着托举部件倾斜角度增加,目标物体在托举部件上表面的加速度大于0,之后,目标物体开始加速滑动,随着托举部件倾斜角度的变化,目标物体在托举部件上表面的加速度可以继续大于0(滑动摩擦力小于目标物体重力在托举部件上表面的分量,此时目标物体继续加速滑动),或者,目标物体在托举部件上表面的加速度可以等于0(滑动摩擦力小于目标物体重力在托举部件上表面的分量,此时目标物体的滑动速度不变),或者,目标物体在托举部件上表面的加速度也可以小于0(滑动摩擦力大于目标物体重力在托举部件上表面的分量,此时目标物体开始减速)。
在一个示例性的方案中,在放置物体的过程中,机器人首先控制手掌大角度倾斜,使物体加速滑动,然后再减小手掌的倾斜角度,使物体减速后脱离手掌。
在另一个示例性的方案中,在放置物体的过程中,机器人首先控制手掌大角度倾斜,使物体加速滑动,然后再减小手掌的倾斜角度,使物体保持匀速滑动,之后脱离手掌。
在另一个示例性的方案中,在放置物体的过程中,机器人可以控制手掌大角度倾斜,使物体加速滑动,并使物体在加速过程中脱离手掌。
通过本申请实施例所示的方案,上述物体动态放置策略属于机器人动态操作,主要优势有以下几点:
1)动态放置可以有效提升任务完成效率,且可以与其它动态任务完成拼接动作;
2)可以有效完成大质量大尺寸物体的快速放置;
3)可以不需要额外的负载的末端执行器,只需要利用机器人手掌或者托盘即可完成复杂的任务。
综上所述,本申请实施例所示的方案,通过托举部件上的目标物体与托举部件之间的摩擦力系数,构建用于指示托举部件托举目标物体运动的过程中,运动***的广义坐标的变化情况与运动***受到的驱动力之间的关系的滑动力学模型,然后基于滑动力学模型,获取托举部件的运动轨迹,以及运动***在各个时刻受到的驱动力,再通过目标控制信息控制驱动电机,使得目标物体在目标位置,以目标速度滑动脱离托举部件,从而完成物体放置。在上述过程中,通过托举部件的运动来动态的放置目标物体,不存在静态过程,可以使得物体放置的动作连贯执行,从而提高了放置物体的效率。
图10是本申请一个示例性实施例提供的机械臂的控制装置的结构框图,该机械臂包括托举部件、机械臂主体、以及驱动电机,该托举部件连接在机械臂主体的末端;所述装置包括:
系数获取模块1001,用于获取所述托举部件上的目标物体与所述托举部件之间的摩擦力系数;
模型构建模块1002,用于基于所述摩擦力系数,构建滑动力学模型;所述滑动力学模型用于指示所述托举部件托举所述目标物体运动的过程中,运动***的广义坐标的变化情况与所述运动***受到的驱动力之间的关系;所述运动***包括所述托举部件以及所述目标物体;
控制信息获取模块1003,用于基于所述滑动力学模型,获取目标控制信息;所述目标控制信息包括所述托举部件的运动轨迹,以及所述运动***在各个时刻受到的驱动力;
驱动控制模块1004,用于基于所述目标控制信息,通过所述驱动电机驱动所述托举部件进行姿态变化和移动,以使得所述目标物体随着所述托举部件姿态变化和移动,在摩擦力和重力的作用下在所述托举部件上表面滑动,并在目标位置以目标速度滑动脱离所述托举部件。
在一种可能的实现方式中,所述目标物体在所述托举部件上表面滑动时,所述目标物体在所述托举部件上表面的加速度由所述托举部件的上表面相对于水平面的偏移角度控制,且所述目标物体的在滑动过程中的阻力为滑动摩擦力。
在一种可能的实现方式中,所述控制信息获取模块1003,用于基于控制约束条件,以运动代价最小化为目标,获取所述目标控制信息;所述控制约束条件包括所述滑动力学模型;所述运动代价是通过所述驱动电机驱动所述托举部件进行姿态变化和移动,以使得所述目标物体随着所述托举部件姿态变化和移动,在摩擦力和重力的作用下在所述托举部件上表面滑动,并在目标位置以目标速度滑动脱离所述托举部件的代价。
在一种可能的实现方式中,所述目标物体在所述托举部件上滑动的过程包括沿着相对于所述托举部件的第一方向滑动脱离所述托举部件的第一过程;
所述控制约束条件包括:
所述滑动力学模型;
所述第一过程的开始时刻;
所述第一过程的结束时刻;
在所述第一过程的开始时刻,所述托举部件以及所述目标物体的速度;
在所述第一过程的结束时刻,所述目标物体和所述托举部件的速度;
以及,所述托举部件对所述目标物体的支持力大于0。
在一种可能的实现方式中,所述目标物体在所述托举部件上滑动的过程包括:
从相对于所述托举部件的初始位置开始,沿着相对于所述托举部件的第二方向滑动至相对于所述托举部件的第一位置的第二过程;以及,从相对于所述托举部件的第一位置开始,沿着相对于所述托举部件的第三方向滑动脱离所述托举部件的第三过程;
所述控制约束条件包括:
所述滑动力学模型;
所述第二过程的开始时刻;
所述第三过程的开始时刻;
所述第三过程的结束时刻;
在所述第二过程的开始时刻,所述托举部件以及所述目标物体的速度;
在所述第三过程的开始时刻,所述托举部件以及所述目标物体的速度;
在所述第三过程的结束时刻,所述目标物体和所述托举部件的速度;
以及,所述托举部件对所述目标物体的支持力大于0。
在一种可能的实现方式中,当所述目标物体相对于所述托举部件的初始位置满足调整条件时,所述目标物体在所述托举部件上滑动的过程包括:从相对于所述托举部件的初始位置开始,沿着相对于所述托举部件的第二方向滑动至相对于所述托举部件的第一位置的第二过程;以及,从相对于所述托举部件的第一位置开始,沿着相对于所述托举部件的第三方向滑动脱离所述托举部件的第三过程。
在一种可能的实现方式中,所述调整条件包括:所述目标物体相对于所述托举部件的初始位置位于所述托举部件的边缘。
在一种可能的实现方式中,所述控制信息获取模块1003,用于基于所述滑动力学模型,通过阻抗控制的方式获取目标控制信息;
其中,所述阻抗控制的过程中,所述目标物体受到的抓取力由所述托举部件对所述目标物体的支撑力和摩擦力确定。
在一种可能的实现方式中,所述系数获取模块1001,用于,
获取所述目标物体在所述托举部件上发生滑动时的画面;
基于所述目标物体在所述托举部件上发生滑动时的画面,获取所述目标物体的滑动信息;所述滑动信息包括所述目标物体在所述托举部件上发生滑动时,所述托举部件的倾斜角度,以及,所述目标物体在所述托举部件上滑动的加速度;
根据所述滑动信息获取所述摩擦力系数。
综上所述,本申请实施例所示的方案,通过托举部件上的目标物体与托举部件之间的摩擦力系数,构建用于指示托举部件托举目标物体运动的过程中,运动***的广义坐标的变化情况与运动***受到的驱动力之间的关系的滑动力学模型,然后基于滑动力学模型,获取托举部件的运动轨迹,以及运动***在各个时刻受到的驱动力,再通过目标控制信息控制驱动电机,使得目标物体在目标位置,以目标速度滑动脱离托举部件,从而完成物体放置。在上述过程中,通过托举部件的运动来动态的放置目标物体,不存在静态过程,可以使得物体放置的动作连贯执行,从而提高了放置物体的效率。
需要说明的是:上述实施例提供的装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置,与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图11示出了本申请一个示例性实施例提供的机器人1100的结构框图。该机器人1100可以包括有:托举部件1101、机械臂主体1102、驱动电机1103、处理器1104和存储器1105。
处理器1104可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1104可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。一些实施例中,处理器1104还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1105可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1105还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1105中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1104所执行以实现本申请中方法实施例提供的机械臂的控制方法。
在一些实施例中,机器人1100还可选包括有:***设备接口和至少一个***设备。处理器1104、存储器1105和***设备接口之间可以通过总线或信号线相连。各个***设备可以通过总线、信号线或电路板与***设备接口相连。具体地,***设备可以包括:射频电路、显示屏、摄像头组件、音频电路、和电源中的至少一种。
***设备接口可被用于将I/O(Input/Output,输入/输出)相关的至少一个***设备连接到处理器1104和存储器1105。
摄像头组件可以用于采集图像或视频。
在一些实施例中,机器人1100还包括有一个或多个传感器。该一个或多个传感器包括但不限于:加速度传感器、陀螺仪传感器、压力传感器、光学传感器以及接近传感器等等。
本领域技术人员可以理解,图11中示出的结构并不构成对机器人1100的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本申请的实施例还提供了一种机器人,该机器人包含如上述图1或图2所示的机械臂;该机械臂中的控制器可以用于执行如上述图3或图7所示的机械臂的控制方法。
本申请的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有至少一条计算机指令,至少一条计算机指令由处理器加载并执行,以实现上述各方法实施例提供的机械臂的控制方法。
本申请的实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备(比如机器人)的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中任一所述的机械臂的控制方法。
可选地,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、固态硬盘(SSD,Solid State Drives)或光盘等。其中,随机存取记忆体可以包括电阻式随机存取记忆体(ReRAM,Resistance RandomAccess Memory)和动态随机存取存储器(DRAM,Dynamic Random Access Memory)。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (20)
1.一种机械臂,其特征在于,所述机械臂包括:托举部件、机械臂主体、驱动电机以及控制器;
所述控制器与所述驱动电机电性相连;所述托举部件连接在所述机械臂主体的末端;
所述控制器,用于控制所述驱动电机,驱动所述托举部件进行姿态变化和移动,以使得所述托举部件上放置的目标物体随着所述托举部件的姿态变化和移动,在摩擦力和重力的作用下在所述托举部件的上表面滑动,并在目标位置以目标速度滑动脱离所述托举部件。
2.根据权利要求1所述的机械臂,其特征在于,所述控制器,用于,
控制所述驱动电机驱动所述托举部件沿着第一方向移动至第一位置;
控制所述驱动电机驱动所述托举部件向所述第一方向的水平方向倾斜,以使得所述目标物体在摩擦力和重力的作用下在所述托举部件的上表面滑动,并在目标位置以目标速度滑动脱离所述托举部件;所述目标速度的水平方向与所述第一方向的水平方向相同。
3.根据权利要求1所述的机械臂,其特征在于,所述控制器,用于,
控制所述驱动电机驱动所述托举部件沿着第二方向移动至第二位置;
控制所述驱动电机驱动所述托举部件向所述第二方向的水平方向的反方向倾斜,以使得所述目标物体在摩擦力和重力的作用下在所述托举部件的上表面滑动,并在目标位置以目标速度滑动脱离所述托举部件;其中,所述目标速度的水平方向与所述第二方向的水平方向相反。
4.根据权利要求1所述的机械臂,其特征在于,所述托举部件与所述机械臂主体通过第一关节相连;
所述驱动电机包含第一驱动电机;
所述第一驱动电机用于驱动所述第一关节,以使得所述托举部件转动。
5.根据权利要求1所述的机械臂,其特征在于,所述驱动电机包含第二驱动电机;
所述第二驱动电机用于驱动所述托举部件移动。
6.根据权利要求1所述的机械臂,其特征在于,所述托举部件的形状为平板。
7.根据权利要求1至6任一所述的机械臂,其特征在于,所述机械臂还包括:图像采集组件;
所述图像采集组件与所述控制器电性相连;
所述图像采集组件用于采集所述托举部件处的图像。
8.一种机械臂的控制方法,其特征在于,所述机械臂包括托举部件、机械臂主体、以及驱动电机,所述托举部件连接在所述机械臂主体的末端;所述方法包括:
获取所述托举部件上的目标物体与所述托举部件之间的摩擦力系数;
基于所述摩擦力系数,构建滑动力学模型;所述滑动力学模型用于指示所述托举部件托举所述目标物体运动的过程中,运动***的广义坐标的变化情况与所述运动***受到的驱动力之间的关系;所述运动***包括所述托举部件以及所述目标物体;
基于所述滑动力学模型,获取目标控制信息;所述目标控制信息包括所述托举部件的运动轨迹,以及所述运动***在各个时刻受到的驱动力;
基于所述目标控制信息,通过所述驱动电机驱动所述托举部件进行姿态变化和移动,以使得所述目标物体随着所述托举部件姿态变化和移动,在摩擦力和重力的作用下在所述托举部件的上表面滑动,并在目标位置以目标速度滑动脱离所述托举部件。
9.根据权利要求8所述的方法,其特征在于,所述目标物体在所述托举部件上表面滑动时,所述目标物体在所述托举部件上表面的加速度由所述托举部件的上表面相对于水平面的偏移角度控制,且所述目标物体的在滑动过程中的阻力为滑动摩擦力。
10.根据权利要求8或9所述的方法,其特征在于,所述基于所述滑动力学模型,获取目标控制信息,包括:
基于控制约束条件,以运动代价最小化为目标,获取所述目标控制信息;所述控制约束条件包括所述滑动力学模型;所述运动代价是通过所述驱动电机驱动所述托举部件进行姿态变化和移动,以使得所述目标物体随着所述托举部件姿态变化和移动,在摩擦力和重力的作用下在所述托举部件上表面滑动,并在目标位置以目标速度滑动脱离所述托举部件的代价。
11.根据权利要求10所述的方法,其特征在于,所述目标物体在所述托举部件上滑动的过程包括沿着相对于所述托举部件的第一方向滑动脱离所述托举部件的第一过程;
所述控制约束条件包括:
所述滑动力学模型;
所述第一过程的开始时刻;
所述第一过程的结束时刻;
在所述第一过程的开始时刻,所述托举部件以及所述目标物体的速度;
在所述第一过程的结束时刻,所述目标物体和所述托举部件的速度;
以及,所述托举部件对所述目标物体的支持力大于0。
12.根据权利要求10所述的方法,其特征在于,所述目标物体在所述托举部件上滑动的过程包括:
从相对于所述托举部件的初始位置开始,沿着相对于所述托举部件的第二方向滑动至相对于所述托举部件的第一位置的第二过程;以及,从相对于所述托举部件的第一位置开始,沿着相对于所述托举部件的第三方向滑动脱离所述托举部件的第三过程;
所述控制约束条件包括:
所述滑动力学模型;
所述第二过程的开始时刻;
所述第三过程的开始时刻;
所述第三过程的结束时刻;
在所述第二过程的开始时刻,所述托举部件以及所述目标物体的速度;
在所述第三过程的开始时刻,所述托举部件以及所述目标物体的速度;
在所述第三过程的结束时刻,所述目标物体和所述托举部件的速度;
以及,所述托举部件对所述目标物体的支持力大于0。
13.根据权利要求12所述的方法,其特征在于,当所述目标物体相对于所述托举部件的初始位置满足调整条件时,
所述目标物体在所述托举部件上滑动的过程包括:从相对于所述托举部件的初始位置开始,沿着相对于所述托举部件的第二方向滑动至相对于所述托举部件的第一位置的第二过程;以及,从相对于所述托举部件的第一位置开始,沿着相对于所述托举部件的第三方向滑动脱离所述托举部件的第三过程。
14.根据权利要求13所述的方法,其特征在于,所述调整条件包括:所述目标物体相对于所述托举部件的初始位置位于所述托举部件的边缘。
15.根据权利要求8或9所述的方法,其特征在于,所述基于所述滑动力学模型,获取目标控制信息,包括:
基于所述滑动力学模型,通过阻抗控制的方式获取目标控制信息;
其中,所述阻抗控制的过程中,所述目标物体受到的抓取力由所述托举部件对所述目标物体的支撑力和摩擦力确定。
16.根据权利要求8或9所述的方法,其特征在于,所述获取所述托举部件上的目标物体与所述托举部件之间的摩擦力系数,包括:
获取所述目标物体在所述托举部件上发生滑动时的画面;
基于所述目标物体在所述托举部件上发生滑动时的画面,获取所述目标物体的滑动信息;所述滑动信息包括所述目标物体在所述托举部件上发生滑动时,所述托举部件的倾斜角度,以及,所述目标物体在所述托举部件上滑动的加速度;
根据所述滑动信息获取所述摩擦力系数。
17.一种机械臂的控制装置,其特征在于,所述机械臂包括托举部件、机械臂主体、以及驱动电机,所述托举部件连接在所述机械臂主体的末端;所述装置包括:
系数获取模块,用于获取所述托举部件上的目标物体与所述托举部件之间的摩擦力系数;
模型构建模块,用于基于所述摩擦力系数,构建滑动力学模型;所述滑动力学模型用于指示所述托举部件托举所述目标物体运动的过程中,运动***的广义坐标的变化情况与所述运动***受到的驱动力之间的关系;所述运动***包括所述托举部件以及所述目标物体;
控制信息获取模块,用于基于所述滑动力学模型,获取目标控制信息;所述目标控制信息包括所述托举部件的运动轨迹,以及所述运动***在各个时刻受到的驱动力;
驱动控制模块,用于基于所述目标控制信息,通过所述驱动电机驱动所述托举部件进行姿态变化和移动,以使得所述目标物体随着所述托举部件姿态变化和移动,在摩擦力和重力的作用下在所述托举部件上表面滑动,并在目标位置以目标速度滑动脱离所述托举部件。
18.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条计算机指令,所述至少一条计算机指令由处理器加载并执行以实现如权利要求8至16任一所述的机械臂的控制方法。
19.一种计算机程序产品,其特征在于,所述计算机程序产品中包含至少一条计算机指令,所述至少一条计算机指令由处理器加载并执行以实现如权利要求8至16任一所述的机械臂的控制方法。
20.一种机器人,其特征在于,所述机器人包含如权利要求1至7任一所述的机械臂;
所述机械臂中的控制器用于执行如权利要求8至16任一所述的机械臂的控制方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210107236.XA CN116551654A (zh) | 2022-01-28 | 2022-01-28 | 机械臂、机械臂的控制方法、装置、机器人及存储介质 |
PCT/CN2022/138281 WO2023142724A1 (zh) | 2022-01-28 | 2022-12-12 | 机械臂、机械臂的控制方法、装置、机器人及存储介质 |
US18/472,517 US20240009844A1 (en) | 2022-01-28 | 2023-09-22 | Robotic arm, method and apparatus for controlling robotic arm, robot, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210107236.XA CN116551654A (zh) | 2022-01-28 | 2022-01-28 | 机械臂、机械臂的控制方法、装置、机器人及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116551654A true CN116551654A (zh) | 2023-08-08 |
Family
ID=87470353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210107236.XA Pending CN116551654A (zh) | 2022-01-28 | 2022-01-28 | 机械臂、机械臂的控制方法、装置、机器人及存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20240009844A1 (zh) |
CN (1) | CN116551654A (zh) |
WO (1) | WO2023142724A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6042291B2 (ja) * | 2013-08-27 | 2016-12-14 | 株式会社デンソーアイティーラボラトリ | ロボット、ロボット制御方法、及びロボット制御プログラム |
CN205660724U (zh) * | 2016-05-05 | 2016-10-26 | 佛山市新鹏机器人技术有限公司 | 一种用于机器人末端的恒力装置 |
US20190061154A1 (en) * | 2017-08-23 | 2019-02-28 | Tolomatic, Inc. | High speed linear actuator part placement system |
CN111618852B (zh) * | 2019-05-09 | 2021-07-27 | 牧今科技 | 具有协调转移机构的机器人*** |
JP7436197B2 (ja) * | 2019-12-16 | 2024-02-21 | ファナック株式会社 | 物品搬送システム |
-
2022
- 2022-01-28 CN CN202210107236.XA patent/CN116551654A/zh active Pending
- 2022-12-12 WO PCT/CN2022/138281 patent/WO2023142724A1/zh unknown
-
2023
- 2023-09-22 US US18/472,517 patent/US20240009844A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2023142724A1 (zh) | 2023-08-03 |
US20240009844A1 (en) | 2024-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110000785B (zh) | 农业场景无标定机器人运动视觉协同伺服控制方法与设备 | |
Marwan et al. | Comprehensive review on reaching and grasping of objects in robotics | |
JP2022544007A (ja) | 移動操作システムの視覚的教示と繰り返し | |
CN109483534B (zh) | 一种物体抓取方法、装置和*** | |
Sayour et al. | Autonomous robotic manipulation: real‐time, deep‐learning approach for grasping of unknown objects | |
Chen et al. | Controlling a robot using leap motion | |
US20210023702A1 (en) | Systems and methods for determining a type of grasp for a robotic end-effector | |
US11945106B2 (en) | Shared dense network with robot task-specific heads | |
Felip et al. | Manipulation primitives: A paradigm for abstraction and execution of grasping and manipulation tasks | |
CN114516060A (zh) | 用于控制机器人装置的设备和方法 | |
Adjigble et al. | An assisted telemanipulation approach: combining autonomous grasp planning with haptic cues | |
US20230286161A1 (en) | Systems and Methods for Robotic Manipulation Using Extended Reality | |
Xue et al. | Gesture-and vision-based automatic grasping and flexible placement in teleoperation | |
Hayward et al. | Introduction to RCCL: A robot control &C& library | |
Hertkorn | Shared grasping: A combination of telepresence and grasp planning | |
Takamatsu et al. | Learning-from-observation system considering hardware-level reusability | |
US10035264B1 (en) | Real time robot implementation of state machine | |
Qin et al. | Task-oriented robot-to-human handovers in collaborative tool-use tasks | |
Mannheim et al. | A new way of grasping: PARAGRIP—the fusion of gripper and robot | |
CN116551654A (zh) | 机械臂、机械臂的控制方法、装置、机器人及存储介质 | |
CN115741667A (zh) | 机器人装置及其控制方法以及训练机器人控制模型的方法 | |
Theobald et al. | Autonomous rock acquisition | |
Rahal et al. | Haptic-guided grasping to minimise torque effort during robotic telemanipulation | |
Zubrycki et al. | Intuitive user interfaces for mobile manipulation tasks | |
Tsay et al. | Behavioristic image-based pose control of mobile manipulators using an uncalibrated eye-in-hand vision system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40091029 Country of ref document: HK |