【机器人手抓取物体】使用单驱动器三指机器手抓多边形物体(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
💥1 概述
摘要:
本文介绍了一种用于抓取多边形物体的高效笼罩至抓握算法,采用了简约的三指机器手。文章阐述了如何利用单一执行器的三角形三指结构来笼罩然后抓取多边形物体,这种结构的形状由多边形物体所需的任意固定抓握姿势决定。尽管机器手的配置空间是四维的,但该算法使用了手部的二维接触空间,该空间代表了抓取物体边界上所有的二指和三指接触。
本文描述了如何将计算允许物体逃逸手部的关键笼罩形态的问题简化为在手部接触空间构建的笼罩图上进行搜索的问题。从一个期望的固定抓握出发,沿着图搜索关键的笼罩形态,这有助于确定围绕固定抓握的笼罩区域。在这些区域内的任何三指放置都保证了物体的稳固抓握。
该技术通过一个详细的计算示例和一个视频剪辑进行了演示,视频展示了使用单一执行器三指机器手进行的笼罩实验。
。详细文章见第4部分。

笼罩提供了一种在手指位置相对于抓取物体存在巨大不确定性的情况下,使用多指机器人手抓取物体的稳健方法。为了安全地抓取物体,首先将手指放置在围绕所需的固定抓握的笼罩区域内。这可以防止物体从手中逃脱。然后在保持笼罩形态的同时关闭手,直到达到所需的固定抓握。本文重点介绍了使用三指机器人手笼罩多边形物体。我们对三指手的关注是由于实际手部机构设计的动机。
正如 Dollar 等人所讨论的[1],[2],机器人学家寻求具有最少手指数量和最少执行器数量的通用简约手设计。三指手形成了一种有吸引力的简约设计,因为三点或圆盘手指可以固定每个不具有对称平行边的多边形物体[3]。此外,通过将三指手限制为特定系列的形态,如相似三角形,一个执行器可以同时关闭三个手指,从而实现极其简单的手设计(图1所示)。
📚2 运行结果
2.1 测试1




后面的去掉Matlab图框。







2.2 测试2







部分代码:
function [ Triangles ] = findNeighborTriangles( point,DT,forbidden_list )
% FINDNEIGHBORTRIANGLES returns all the triangles that contain 'point'
% in the Delaunay triangulation.
% size(point)=[1,2], DT is a Delaunay triangulation object.
% If 'point' is out of range, Triangles = nan.
% If 'point' is inside the object, Triangles = [].
%%
triangle=DT.pointLocation(point);
if ~isnan(triangle)
[~,vertex,edge] = inTriangle( point.',DT.Points(DT(triangle,:).',:));
Triangles=[];
if ~isempty(vertex)
Triangles=cell2mat(DT.vertexAttachments(DT(triangle,vertex)));
elseif ~isempty(edge)
edge_list=[1 2;2 3;3 1];
Triangles=cell2mat(DT.edgeAttachments(DT(triangle,edge_list(edge,:))));
end
unique_list= myUnique([Triangles,triangle]);
check = false(1,max(forbidden_list));
check(unique_list) = true;
check(forbidden_list) = false;
Triangles = unique_list(check(unique_list));
else
Triangles=nan;
end
🎉3 参考文献
文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。

🌈4 Matlab代码、文章
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)