• SynGrasp手册笔记


    该软件,感觉是偏向于抓取构型以及抓取质量分析方面,目前了解好像不涉及动力学吧。

    ################################################

    手爪有关函数:

    SG3Fingered - a three fingered robotic hand

    三指barretthand的手爪模型

    用法:hand= SG3Fingered

    另外,还有模型如

    SGDLRHandII - model of the DLR hand II

    SGhuman24 - a 24 DoF model of the human hand

    SGmodularhand - the model of a three-fingered, 9 DoF modular hand

    SGparadigmatic - a 20 DoF model of the human hand

    SGunderActuated1 - model of an underactuated robotic hand

    用法同三指barretthand手一样,返回hand手爪结构。

    如果想自己搭建手爪模型,可以有

    SGmakehand - Create a hand

    Usage: hand = SGmakehand(F)
    Arguments:
     F = array of finger structures defined by SGmakeFinger
    Returns:
     hand = the hand structure

    #################################################

    物体有关:

    创建物体:

    SGmakeObject - create an object structure for a given hand
    This function defines a structure object, given the contact points on the hand, the object center (opt) and the contact normal directions.
    Usage: [newHand,object] = SGmakeObject(hand,center,normals) Arguments:

     hand: a structure defining the hand structure

     center(opt): object center coordinates
     normals: directions normal to the contact surface in the contact points
    Returns:
     newhand: an updated structure of the hand
     object: a structure containing object data

    ##################################################

    定义一个抓取的方法:
    To define a grasp, we have to choose the contact points, as described in the previous chapter. For instance, if we want to simulate a precision grasp with five contact points
    on the tips of each finger we can use the following function

    hand = SGaddFtipContact(hand,1,1:5);

    In the more general case, we can use the function SGaddContact()
    hand = SGaddContact(hand,type,cwhere,link,alpha)

    As we can observe, hand.cp is a matrix with seven rows and a number of columns equal to the contact points. The first three rows of the matrix contain contact point
    coordinates, the fourth one contains an index corresponding to the finger where the contact is, the fifth contains an index representing the link of each finger, where the
    contact is, the sixth row specifies the contact type (1 for a hard finger contact model, 2 for a soft finger contact model)

    有关函数:

    new_hand = SGaddcontact(hand,type,cwhere,link,alpha)
    Arguments:
    hand = hand structure
    type = type of contact
    0 - single point without friction
    1 - hard finger
    2 - soft finger
    cwhere = finger index
    link = link index
    alpha = distance from the link ref origin

    Given the contact points on the hand, it is possible to create a structure representing the grasped object through the function SGmakeObject().

    The structure for the grasped object contains the object center, contact points and contact normal versors.

    The function SGplotObject() can be used to plot a convex object defined by the given contact points. The user can choose the fillet radius and the number of elements for object representation

    The grasp planner function SGgraspPlanner() takes as input the hand model, the object to be grasped, the number of pre-grasp positions and the metric to be used for grasp evaluation.

    [hand_c,object,b_index] =
    SGgraspPlanner(hand,obj,N,qmtype)
    Arguments:
    hand = the hand structure
    obj = the object structure to be grasped
    N = the number of random pregrasp
    qmtype = the quality metric to be used
    Returns:
    hand_c = the best hand configuration
    object = the grasped object
    b_index= the best quality index obtained

    这一块具体见 SynGrasp 2.2  Page 16。

    确定一个抓取后,可以做什么?

    Once the grasp is defined, it is possible to compute all the matrices relevant to grasp analysis.

    The evaluation of the selection matrix H, that extracts from the contact point  twists the components constrained by the specified contact model, is performed by the function SGselectionMatrix().

    The SynGrasp function SGgraspMatrix() allows to evaluate, for a given grasp, the value of the grasp matrix G. The hand Jacobian matrix can be evaluated by means of the function SGjacobianMatrix().

    ##################################################

    抓取质量分析:

    可抵抗外力螺旋方法

    The minimization of SGVcost() function allows to evaluate the set of controllable internal
    forces that maximizes the distance from the friction cone boundaries in the contact
    points.

    可操作问题求解特征值方法

    The directions, in the workspace and synergy space,respectively, corresponding to the eigenvectors evaluated solving manipulability problem,are the following

    人手写字模型

    In SGwritingExample.m a mathematical model of the human hand kinematics able
    to describe complex manipulation tasks, such as writing on a tablet with a stylus, is
    described

    人手协同匹配到机器人手上

    Mapping human hand synergies onto robotic hands SynGrasp allows to define hand models with coupled joints activation according to a
    defined synergistic organization. While for the paradigmatic hand the synergy subspaces are defined according to the data collect by Santello et al. [12] and can be easily
    set using the commands SGsantelloSynergies() and SGdefineSynergies(),

    ##################################################

    介绍了一种欠驱动手的并联机构: Page40 on SynGrasp 2.2 toturial

    A six DoFs hand actuated with two four linkages mechanisms

    我的感觉是,这个地方用到了Barretthand,给出了不同指标下的抓取对比数据。

    where MEV stands for manipulability
    ellipsoid volume quality index, GII is the grasp isotropy index, MSVG represents
    the minimum singular value of the matrix G, DSTC is the distance from the singular
    configuration and UOT is the uniformity measure. In Fig. 2.3 the best obtained grasp
    using the SGdistSingularConfiguration quality measure is shown.

    #################################################

  • 相关阅读:
    大家一起写mvc(二)
    大家一起写mvc(一)
    jquery读取XML 生成页面文件
    jquery点击区域显示或隐藏DIV,点击非该DIV的地方隐藏该DIV
    struts2 iterator排序
    解决JS传参中文乱码
    关于解决 请求被中止:无法建立SSL / TLS安全通道
    查看sqlserver被锁的表以及如何解锁
    查询sqlserver数据库视图、存储过程等包含特定的字符串
    C#中查询字符串中是否包含指定字符/串,使用IndexOf还是Contains?
  • 原文地址:https://www.cnblogs.com/USTBlxq/p/11758629.html
Copyright © 2020-2023  润新知