Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
1c2c2f6
update
yding25 Dec 17, 2024
45d52f9
update
yding25 Dec 17, 2024
68d24f9
update
yding25 Dec 17, 2024
aab01c3
Fix nested git repository or add submodule
yding25 Dec 18, 2024
a334f3d
Merge pull request #1 from YdingTeam/0.2-dev
yding25 Dec 18, 2024
9e74005
update
yding25 Dec 18, 2024
d47e4e1
Merge pull request #2 from YdingTeam/0.2-dev
yding25 Dec 18, 2024
74e64f8
update
yding25 Dec 18, 2024
e2278d2
Merge pull request #3 from YdingTeam/0.2-dev
yding25 Dec 18, 2024
8702b1e
feat: refactor Xarm7 api
Loki-Lu Jul 18, 2025
84f9ece
Update Bestman_Real_Xarm7.py
Tastooger Aug 19, 2025
4ff84f5
Update Bestman_Real_Xarm7.py
Tastooger Aug 19, 2025
d9c1b4a
Update Bestman_Real_Xarm7.py
Tastooger Aug 19, 2025
7cf855e
Update Bestman_Real_Xarm6.py
Tastooger Aug 19, 2025
11bb064
Update move_arm_to_home.py
Tastooger Aug 19, 2025
bf19966
Update move_arm_to_joint_values.py
Tastooger Aug 19, 2025
fa26b37
Update move_eef_to_pose.py
Tastooger Aug 19, 2025
dc20afb
Update test.py
Tastooger Aug 19, 2025
ac7730b
Update Bestman_Real_Xarm6.py
Tastooger Aug 19, 2025
e2a88ac
Update move_arm_to_joint_values.py
Tastooger Aug 19, 2025
a177b73
Update move_eef_to_pose.py
Tastooger Aug 19, 2025
dd21505
Update test.py
Tastooger Aug 19, 2025
e9a4318
Update Bestman_Real_Xarm6.py
Tastooger Aug 19, 2025
1ba1dea
Update move_arm_to_home.py
Tastooger Aug 19, 2025
d558966
Update move_arm_to_joint_values.py
Tastooger Aug 19, 2025
a392858
Update move_eef_to_pose.py
Tastooger Aug 19, 2025
8e220b1
Update test.py
Tastooger Aug 19, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Python 调试程序: 当前文件",
"type": "debugpy",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal"
}
]
}
359 changes: 359 additions & 0 deletions Asset/xarm7_robot.urdf
Original file line number Diff line number Diff line change
@@ -0,0 +1,359 @@
<?xml version="1.0" ?>
<!-- =================================================================================== -->
<!-- | This document was autogenerated by xacro from xarm_device.urdf.xacro | -->
<!-- | EDITING THIS FILE BY HAND IS NOT RECOMMENDED | -->
<!-- =================================================================================== -->
<robot name="xarm7" xmlns:xacro="http://ros.org/wiki/xacro">
<!-- Insert at the beginning of xarm_device_macro.xacro -->
<material name="Black">
<color rgba="0.0 0.0 0.0 1.0"/>
</material>
<material name="Red">
<color rgba="0.8 0.0 0.0 1.0"/>
</material>
<material name="White">
<color rgba="1.0 1.0 1.0 1.0"/>
</material>
<material name="Silver">
<color rgba="0.753 0.753 0.753 1.0"/>
</material>
<link name="world"/>
<joint name="world_joint" type="fixed">
<parent link="world"/>
<child link="link_base"/>
<origin rpy="0 0 0" xyz="0 0 0"/>
</joint>
<link name="link_base">
<inertial>
<origin rpy="0 0 0" xyz="-0.021131 -0.0016302 0.056488"/>
<mass value="0.88556"/>
<inertia ixx="0.0030595" ixy="0.00012259" ixz="-0.00062705" iyy="0.0037783" iyz="0.00027023" izz="0.0020125"/>
</inertial>
<visual>
<geometry>
<mesh filename="package://xarm_description/meshes/xarm7/visual/link_base.stl"/>
</geometry>
<origin rpy="0 0 0" xyz="0 0 0"/>
<material name="White"/>
</visual>
<collision>
<geometry>
<mesh filename="package://xarm_description/meshes/xarm7/collision/link_base.obj"/>
</geometry>
<origin rpy="0 0 0" xyz="0 0 0"/>
</collision>
</link>
<link name="link1">
<inertial>
<origin rpy="0 0 0" xyz="-0.0002 0.02905 -0.01233"/>
<mass value="2.382"/>
<inertia ixx="0.0056905" ixy="-1.579e-05" ixz="5.125e-06" iyy="0.0049566" iyz="-0.000873378" izz="0.003316654"/>
</inertial>
<visual>
<geometry>
<mesh filename="package://xarm_description/meshes/xarm7/visual/link1.stl"/>
</geometry>
<origin rpy="0 0 0" xyz="0 0 0"/>
<material name="White"/>
</visual>
<collision>
<geometry>
<mesh filename="package://xarm_description/meshes/xarm7/collision/link1.obj"/>
</geometry>
<origin rpy="0 0 0" xyz="0 0 0"/>
</collision>
</link>
<joint name="joint1" type="revolute">
<origin rpy="0 0 0" xyz="0 0 0.267"/>
<parent link="link_base"/>
<child link="link1"/>
<axis xyz="0 0 1"/>
<limit effort="50" lower="-6.28318530718" upper="6.28318530718" velocity="3.14"/>
<dynamics damping="10" friction="1"/>
</joint>
<link name="link2">
<inertial>
<origin rpy="0 0 0" xyz="0.00022 -0.12856 0.01735"/>
<mass value="1.869"/>
<inertia ixx="0.0095989" ixy="1.541e-06" ixz="5.56e-06" iyy="0.00382472" iyz="-0.00317156" izz="0.007565669"/>
</inertial>
<visual>
<geometry>
<mesh filename="package://xarm_description/meshes/xarm7/visual/link2.stl"/>
</geometry>
<origin rpy="0 0 0" xyz="0 0 0"/>
<material name="White"/>
</visual>
<collision>
<geometry>
<mesh filename="package://xarm_description/meshes/xarm7/collision/link2.obj"/>
</geometry>
<origin rpy="0 0 0" xyz="0 0 0"/>
</collision>
</link>
<joint name="joint2" type="revolute">
<origin rpy="-1.5708 0 0" xyz="0 0 0"/>
<parent link="link1"/>
<child link="link2"/>
<axis xyz="0 0 1"/>
<limit effort="50" lower="-2.059" upper="2.0944" velocity="3.14"/>
<dynamics damping="10" friction="1"/>
</joint>
<link name="link3">
<inertial>
<origin rpy="0 0 0" xyz="0.0466 -0.02463 -0.00768"/>
<mass value="1.6383"/>
<inertia ixx="0.00310955" ixy="0.00030837" ixz="-0.00058453" iyy="0.00264483" iyz="0.000338893" izz="0.0026624"/>
</inertial>
<visual>
<geometry>
<mesh filename="package://xarm_description/meshes/xarm7/visual/link3.stl"/>
</geometry>
<origin rpy="0 0 0" xyz="0 0 0"/>
<material name="White"/>
</visual>
<collision>
<geometry>
<mesh filename="package://xarm_description/meshes/xarm7/collision/link3.obj"/>
</geometry>
<origin rpy="0 0 0" xyz="0 0 0"/>
</collision>
</link>
<joint name="joint3" type="revolute">
<origin rpy="1.5708 0 0" xyz="0 -0.293 0"/>
<parent link="link2"/>
<child link="link3"/>
<axis xyz="0 0 1"/>
<limit effort="30" lower="-6.28318530718" upper="6.28318530718" velocity="3.14"/>
<dynamics damping="5" friction="1"/>
</joint>
<link name="link4">
<inertial>
<origin rpy="0 0 0" xyz="0.07047 -0.11575 0.012"/>
<mass value="1.7269"/>
<inertia ixx="0.005889" ixy="0.00137112" ixz="0.00088143" iyy="0.00359703" iyz="-0.001762155" izz="0.00543244"/>
</inertial>
<visual>
<geometry>
<mesh filename="package://xarm_description/meshes/xarm7/visual/link4.stl"/>
</geometry>
<origin rpy="0 0 0" xyz="0 0 0"/>
<material name="White"/>
</visual>
<collision>
<geometry>
<mesh filename="package://xarm_description/meshes/xarm7/collision/link4.obj"/>
</geometry>
<origin rpy="0 0 0" xyz="0 0 0"/>
</collision>
</link>
<joint name="joint4" type="revolute">
<origin rpy="1.5708 0 0" xyz="0.0525 0 0"/>
<parent link="link3"/>
<child link="link4"/>
<axis xyz="0 0 1"/>
<limit effort="30" lower="-0.19198" upper="3.927" velocity="3.14"/>
<dynamics damping="5" friction="1"/>
</joint>
<link name="link5">
<inertial>
<origin rpy="0 0 0" xyz="-0.00032 0.01604 -0.026"/>
<mass value="1.3203"/>
<inertia ixx="0.00534665" ixy="1.5117e-05" ixz="-3.69e-07" iyy="0.0049779" iyz="-0.00022132" izz="0.0013624"/>
</inertial>
<visual>
<geometry>
<mesh filename="package://xarm_description/meshes/xarm7/visual/link5.stl"/>
</geometry>
<origin rpy="0 0 0" xyz="0 0 0"/>
<material name="White"/>
</visual>
<collision>
<geometry>
<mesh filename="package://xarm_description/meshes/xarm7/collision/link5.obj"/>
</geometry>
<origin rpy="0 0 0" xyz="0 0 0"/>
</collision>
</link>
<joint name="joint5" type="revolute">
<origin rpy="1.5708 0 0" xyz="0.0775 -0.3425 0"/>
<parent link="link4"/>
<child link="link5"/>
<axis xyz="0 0 1"/>
<limit effort="30" lower="-6.28318530718" upper="6.28318530718" velocity="3.14"/>
<dynamics damping="5" friction="1"/>
</joint>
<link name="link6">
<inertial>
<origin rpy="0 0 0" xyz="0.06469 0.03278 0.02141"/>
<mass value="1.325"/>
<inertia ixx="0.0014745" ixy="-0.000488" ixz="0.0002953" iyy="0.0019037" iyz="0.00014749" izz="0.0023652"/>
</inertial>
<visual>
<geometry>
<mesh filename="package://xarm_description/meshes/xarm7/visual/link6.stl"/>
</geometry>
<origin rpy="0 0 0" xyz="0 0 0"/>
<material name="White"/>
</visual>
<collision>
<geometry>
<mesh filename="package://xarm_description/meshes/xarm7/collision/link6.obj"/>
</geometry>
<origin rpy="0 0 0" xyz="0 0 0"/>
</collision>
</link>
<joint name="joint6" type="revolute">
<origin rpy="1.5708 0 0" xyz="0 0 0"/>
<parent link="link5"/>
<child link="link6"/>
<axis xyz="0 0 1"/>
<limit effort="20" lower="-1.69297" upper="3.14159265359" velocity="3.14"/>
<dynamics damping="2" friction="1"/>
</joint>
<link name="link7">
<inertial>
<origin rpy="0 0 0" xyz="0 -0.00677 -0.01098"/>
<mass value="0.17"/>
<inertia ixx="9.3e-05" ixy="-0.0" ixz="-0.0" iyy="5.87e-05" iyz="-3.6e-06" izz="0.000132"/>
</inertial>
<visual>
<geometry>
<mesh filename="package://xarm_description/meshes/xarm7/visual/link7.stl"/>
</geometry>
<origin rpy="0 0 0" xyz="0 0 0"/>
<material name="Silver"/>
</visual>
<collision>
<geometry>
<mesh filename="package://xarm_description/meshes/xarm7/collision/link7.obj"/>
</geometry>
<origin rpy="0 0 0" xyz="0 0 0"/>
</collision>
</link>
<joint name="joint7" type="revolute">
<origin rpy="-1.5708 0 0" xyz="0.076 0.097 0"/>
<parent link="link6"/>
<child link="link7"/>
<axis xyz="0 0 1"/>
<limit effort="20" lower="-6.28318530718" upper="6.28318530718" velocity="3.14"/>
<dynamics damping="2" friction="1"/>
</joint>
<link name="link_eef"/>
<joint name="joint_eef" type="fixed">
<origin rpy="0 0 0" xyz="0 0 0"/>
<parent link="link7"/>
<child link="link_eef"/>
</joint>
<!-- <link name="${prefix}link_eef" />
<joint name="${prefix}joint_eef" type="fixed">
<origin xyz="0 0 0" rpy="0 0 0" />
<parent link="${prefix}link7" />
<child link="${prefix}link_eef" />
</joint> -->
<transmission name="tran1">
<type>transmission_interface/SimpleTransmission</type>
<joint name="joint1">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
</joint>
<actuator name="motor1">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
<mechanicalReduction>100</mechanicalReduction>
</actuator>
</transmission>
<transmission name="tran2">
<type>transmission_interface/SimpleTransmission</type>
<joint name="joint2">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
</joint>
<actuator name="motor2">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
<mechanicalReduction>100</mechanicalReduction>
</actuator>
</transmission>
<transmission name="tran3">
<type>transmission_interface/SimpleTransmission</type>
<joint name="joint3">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
</joint>
<actuator name="motor3">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
<mechanicalReduction>100</mechanicalReduction>
</actuator>
</transmission>
<transmission name="tran4">
<type>transmission_interface/SimpleTransmission</type>
<joint name="joint4">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
</joint>
<actuator name="motor4">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
<mechanicalReduction>100</mechanicalReduction>
</actuator>
</transmission>
<transmission name="tran5">
<type>transmission_interface/SimpleTransmission</type>
<joint name="joint5">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
</joint>
<actuator name="motor5">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
<mechanicalReduction>100</mechanicalReduction>
</actuator>
</transmission>
<transmission name="tran6">
<type>transmission_interface/SimpleTransmission</type>
<joint name="joint6">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
</joint>
<actuator name="motor6">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
<mechanicalReduction>100</mechanicalReduction>
</actuator>
</transmission>
<transmission name="tran7">
<type>transmission_interface/SimpleTransmission</type>
<joint name="joint7">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
</joint>
<actuator name="motor7">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
<mechanicalReduction>100</mechanicalReduction>
</actuator>
</transmission>
<gazebo reference="link_base">
<selfCollide>true</selfCollide>
</gazebo>
<gazebo reference="link1">
<selfCollide>true</selfCollide>
</gazebo>
<gazebo reference="link2">
<selfCollide>true</selfCollide>
</gazebo>
<gazebo reference="link3">
<selfCollide>true</selfCollide>
</gazebo>
<gazebo reference="link4">
<selfCollide>true</selfCollide>
</gazebo>
<gazebo reference="link5">
<selfCollide>true</selfCollide>
</gazebo>
<gazebo reference="link6">
<selfCollide>true</selfCollide>
</gazebo>
<gazebo reference="link7">
<selfCollide>true</selfCollide>
</gazebo>

<gazebo>
<plugin filename="libgazebo_ros_control.so" name="gazebo_ros_control">
<robotNamespace>/xarm</robotNamespace>
<!-- <controlPeriod>0.0001</controlPeriod> -->
<robotSimType>gazebo_ros_control/DefaultRobotHWSim</robotSimType>
<legacyModeNS>true</legacyModeNS>
<!-- <preserveWorldVelocity>true</preserveWorldVelocity> -->
</plugin>
</gazebo>
<!-- Insert at the end of xarm_device_macro.xacro -->
</robot>
Loading