Grasp with Sandia hands - modulabs/gazebo-tutorial GitHub Wiki
Overview
μ΄λ² μ₯μμλ λ¨μν ROS ν ν½ νΌλΈλ¦¬μ λ₯Ό μ¬μ©νμ¬ Atlas robotμ λ¬λ¦° Sandia μμ΄ μ‘λ λμμ νλλ‘ ν κ²μ΄λ€. In this tutorial, we'll send desired grasp pose to Sandia hands mounted on an Atlas robot in simulation through the use of a simple ROS topic publisher.
Running the Simulation
DRC robot simulationμ μμ νμ¬λΌ.
roslaunch drcsim_gazebo atlas_sandia_hands.launch
λ€μ νμ΄ν νμ¬ Sandia μμ μ μ΄νλ λ Έλλ₯Ό νμΈνμ¬λΌ.
$ rosservice list | grep sandia_hand
μΆλ ₯μ μ₯λ λμμ μν΄ Sainda μ μλΉμ€λ₯Ό ν¬ν¨νλ€.
/sandia_hands/l_hand/simple_grasp
/sandia_hands/r_hand/simple_grasp
μ 곡λλ μλΉμ€μ μ νμ λν λ λ§μ μ 보λ₯Ό μ»κΈ° μν΄μ λ€μμ νμ΄ν νμ¬λΌ.
rosservice info /sandia_hands/l_hand/simple_grasp
λ€μμ μΆλ ₯λ¬Όμ΄ λμ¨λ€.
Node: /sandia_hands/l_hand/simple_grasp_left
URI: rosrpc://lcp1:37083
Type: sandia_hand_msgs/SimpleGraspSrv
Args: grasp
μλΉμ€ νμ μ sandia_hand_msgs/SimpleGraspSrvμ΄λ€. μ΄κ²μ SimpleGrasp messageλ₯Ό ν¬ν¨νλ€. κ·Έκ²μ΄ 무μ μΈμ§ νμΈ νμ.
rosmsg show SimpleGrasp
μΆλ ₯λ¬Όμ λ€μκ³Ό κ°λ€.
[sandia_hand_msgs/SimpleGrasp]:
string name
float64 closed_amount
nameμ μ₯λ μ νμ λ°λΌ "cylindrical", "prismatic", "spherical" κ°μ κ°μ§λ€. μ₯λ μμ κ°μ 0κ³Ό 1μ¬μ΄λ€. 0μ μμ νΈ μνμ΄λ©° 1μ μ₯ μνμ΄λ€. λ€μ μ μ΄κΈ°μ λν μ½λλ μ¬κΈ°μμ simple_grasp.py in the sandia_hand_teleop package νμΈ κ°λ₯νλ€.
λ€λ₯Έ ν°λ―Έλμμ μΌμͺ½ μμ μ λ° μ λλ₯Ό μ₯λ μλΉμ€ μ½μ μ€ννλ€.
rosservice call /sandia_hands/l_hand/simple_grasp ' { grasp: { name: "spherical", closed_amount: 0.8 } }'
