别人克隆后没有 install,source 会直接失败。把展开后的 install 放进仓库,符号链接和指向本机 build 的 egg-link 收成真实文件,Python 入口改走当前环境的解释器,这样不用先 colcon build 也能启动。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
arm_dev
2026-10-15 11:04:43 +08:00
parent 3c86441fb0
commit 926a7f9796
1492 changed files with 1302154 additions and 2 deletions
@@ -0,0 +1 @@
urdf;xacro;rviz2;joint_state_publisher;joint_state_publisher_gui;robot_state_publisher
@@ -0,0 +1 @@
/home/cc/anaconda3/envs/ros_flexiv
@@ -0,0 +1 @@
joint_state_publisher:joint_state_publisher_gui:robot_state_publisher:rviz2:urdf:xacro
@@ -0,0 +1,14 @@
# generated from ament/cmake/core/templates/nameConfig-version.cmake.in
set(PACKAGE_VERSION "1.9.0")
set(PACKAGE_VERSION_EXACT False)
set(PACKAGE_VERSION_COMPATIBLE False)
if("${PACKAGE_FIND_VERSION}" VERSION_EQUAL "${PACKAGE_VERSION}")
set(PACKAGE_VERSION_EXACT True)
set(PACKAGE_VERSION_COMPATIBLE True)
endif()
if("${PACKAGE_FIND_VERSION}" VERSION_LESS "${PACKAGE_VERSION}")
set(PACKAGE_VERSION_COMPATIBLE True)
endif()
@@ -0,0 +1,42 @@
# generated from ament/cmake/core/templates/nameConfig.cmake.in
# prevent multiple inclusion
if(_flexiv_description_CONFIG_INCLUDED)
# ensure to keep the found flag the same
if(NOT DEFINED flexiv_description_FOUND)
# explicitly set it to FALSE, otherwise CMake will set it to TRUE
set(flexiv_description_FOUND FALSE)
elseif(NOT flexiv_description_FOUND)
# use separate condition to avoid uninitialized variable warning
set(flexiv_description_FOUND FALSE)
endif()
return()
endif()
set(_flexiv_description_CONFIG_INCLUDED TRUE)
# output package information
if(NOT flexiv_description_FIND_QUIETLY)
message(STATUS "Found flexiv_description: 1.9.0 (${flexiv_description_DIR})")
endif()
# warn when using a deprecated package
if(NOT "" STREQUAL "")
set(_msg "Package 'flexiv_description' is deprecated")
# append custom deprecation text if available
if(NOT "" STREQUAL "TRUE")
set(_msg "${_msg} ()")
endif()
# optionally quiet the deprecation message
if(NOT ${flexiv_description_DEPRECATED_QUIET})
message(DEPRECATION "${_msg}")
endif()
endif()
# flag package as ament-based to distinguish it after being find_package()-ed
set(flexiv_description_FOUND_AMENT_PACKAGE TRUE)
# include all config extra files
set(_extras "")
foreach(_extra ${_extras})
include("${flexiv_description_DIR}/${_extra}")
endforeach()
@@ -0,0 +1,49 @@
inertia_parameters:
wrist_sensor_base_link:
mass: 1E-4
origin:
x: 0
y: 0
z: 0
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 1E-7
ixy: 0
ixz: 0
iyy: 1E-7
iyz: 0
izz: 1E-7
wrist_sensor_proximal_link:
mass: 0.149
origin:
x: 0
y: 0
z: 0.01955
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 8.6E-5
ixy: 0
ixz: 0
iyy: 8.6E-5
iyz: 0
izz: 1E-7
wrist_sensor_distal_link:
mass: 0.249
origin:
x: 0
y: 0
z: 0.0085
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 1.05E-4
ixy: 0
ixz: 0
iyy: 1.05E-4
iyz: -0
izz: 1.81E-4
@@ -0,0 +1,22 @@
kinematics:
wrist_sensor_remove_rizon_flange_body:
x: 0
y: 0
z: -0.016
roll: 0
pitch: 0
yaw: 0
wrist_sensor_proximal_link_to_sensing_frame:
x: 0
y: 0
z: 0.0235
roll: 0
pitch: 0
yaw: 0
wrist_sensor_sensing_frame_to_flange:
x: 0.0
y: 0.0
z: 0.0285
roll: 0
pitch: 0
yaw: 0
@@ -0,0 +1,47 @@
visual_parameters:
wrist_sensor_proximal_link:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/FT03/visual/proximal.obj
collision:
origin:
x: 0
y: 0
z: 0
roll: -1.5708
pitch: 0
yaw: 0
mesh:
package: flexiv_description
path: meshes/FT03/collision/proximal.stl
wrist_sensor_distal_link:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/FT03/visual/distal.obj
ring:
origin:
x: 0
y: 0
z: 0
roll: 0
pitch: 0
yaw: 0
mesh:
package: flexiv_description
path: meshes/FT03/visual/ring.obj
scale: 0.039 0.039 0.002
collision:
origin:
x: 0
y: 0
z: 0
roll: -1.5708
pitch: 0
yaw: 0
mesh:
package: flexiv_description
path: meshes/FT03/collision/distal.stl
@@ -0,0 +1,57 @@
kinematics:
joint1:
x: 0.0
y: 0.0
z: 0.21
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint2:
x: 0.0
y: 0.0675
z: 0.24
roll: 0.0
pitch: 0.0
yaw: 0.0
joint3:
x: 0.0
y: 0.0625
z: 0.2275
roll: 0.0
pitch: 0.0
yaw: 0.0
joint4:
x: 0.0
y: -0.0625
z: 0.2225
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint5:
x: 0.0
y: 0.0575
z: 0.205
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint6:
x: 0.0
y: 0.03
z: 0.19
roll: 0.0
pitch: 0.0
yaw: 0.0
joint7:
x: -0.015
y: 0.073
z: 0.11
roll: 0.0
pitch: -1.5707963267948966
yaw: 0.0
link7_to_flange:
x: 0.0
y: 0.0
z: 0.081
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
@@ -0,0 +1,129 @@
inertia_parameters:
base_link:
mass: 8.3
origin:
x: -0.0001
y: -0.0004
z: 0.1673
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.1402
ixy: 0.0
ixz: -0.0005
iyy: 0.1402
iyz: -0.0005
izz: 0.0419
link1:
mass: 14.197
origin:
x: 0.0001
y: 0.0403
z: 0.1304
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.2373
ixy: -0.0005
ixz: -0.0004
iyy: 0.1699
iyz: 0.0629
izz: 0.1166
link2:
mass: 7.287
origin:
x: -0.0001
y: 0.0655
z: 0.0637
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0752
ixy: -0.0001
ixz: 0.0001
iyy: 0.0641
iyz: -0.0011
izz: 0.0412
link3:
mass: 4.595
origin:
x: -0.0002
y: 0.0186
z: 0.1576
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0572
ixy: -0.0001
ixz: -0.0001
iyy: 0.0536
iyz: 0.0053
izz: 0.0126
link4:
mass: 3.074
origin:
x: 0.0002
y: 0.0323
z: 0.0931
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0319
ixy: 0.0
ixz: 0.0
iyy: 0.027
iyz: 0.007
izz: 0.0101
link5:
mass: 2.369
origin:
x: 0.0003
y: 0.0029
z: 0.134
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0143
ixy: 0.0
ixz: 0.0
iyy: 0.0136
iyz: 0.0008
izz: 0.0037
link6:
mass: 2.257
origin:
x: 0.0193
y: 0.0595
z: 0.0724
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0085
ixy: 0.0004
ixz: 0.0012
iyy: 0.0089
iyz: 0.0018
izz: 0.0041
link7:
mass: 0.761
origin:
x: 0.0003
y: 0.0001
z: 0.0248
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.001
ixy: 0.0
ixz: 0.0
iyy: 0.001
iyz: 0.0
izz: 0.0009
@@ -0,0 +1,50 @@
joint_limits:
joint1:
lower: -2.8798
upper: 2.8798
effort: 261
velocity: 1.7453
soft_lower: -2.7925
soft_upper: 2.7925
joint2:
lower: -2.7576
upper: 2.7576
effort: 261
velocity: 1.7453
soft_lower: -2.6704
soft_upper: 2.6704
joint3:
lower: -2.8798
upper: 2.8798
effort: 123
velocity: 2.0944
soft_lower: -2.7925
soft_upper: 2.7925
joint4:
lower: -2.7925
upper: 2.7925
effort: 123
velocity: 2.0944
soft_lower: -2.7053
soft_upper: 2.7053
joint5:
lower: -3.0543
upper: 3.0543
effort: 57
velocity: 3.8397
soft_lower: -2.9671
soft_upper: 2.9671
joint6:
lower: -1.4835
upper: 4.6251
effort: 57
velocity: 3.8397
soft_lower: -1.3963
soft_upper: 4.5379
joint7:
lower: -3.0543
upper: 3.0543
effort: 57
velocity: 3.8397
soft_lower: -2.9671
soft_upper: 2.9671
@@ -0,0 +1,175 @@
visual_parameters:
base_link:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon10/visual/link0.obj
collision:
mesh:
package: flexiv_description
path: meshes/Rizon10/collision/link0.stl
workspace:
origin:
x: 0
y: 0
z: 0.450
roll: 0
pitch: 0
yaw: 0
sphere:
radius: 0.955
link1:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon10/visual/link1.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon10/visual/ring.obj
scale: 0.079 0.079 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon10/collision/link1.stl
link2:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon10/visual/link2.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon10/visual/ring.obj
scale: 0.079 0.079 0.002
origin:
x: 0
y: -0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon10/collision/link2.stl
link3:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon10/visual/link3.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon10/visual/ring.obj
scale: 0.062 0.062 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon10/collision/link3.stl
link4:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon10/visual/link4.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon10/visual/ring.obj
scale: 0.062 0.062 0.002
origin:
x: 0
y: -0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon10/collision/link4.stl
link5:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon10/visual/link5.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon10/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon10/collision/link5.stl
link6:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon10/visual/link6.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon10/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: -0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon10/collision/link6.stl
link7:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon10/visual/link7.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon10/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon10/collision/link7.stl
@@ -0,0 +1,57 @@
kinematics:
joint1:
x: 0.0
y: 0.0
z: 0.21
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint2:
x: 0.0
y: 0.0675
z: 0.24
roll: 0.0
pitch: 0.0
yaw: 0.0
joint3:
x: 0.0
y: 0.0625
z: 0.2275
roll: 0.0
pitch: 0.0
yaw: 0.0
joint4:
x: 0.0
y: -0.0625
z: 0.2225
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint5:
x: 0.0
y: 0.0575
z: 0.205
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint6:
x: 0.0
y: 0.03
z: 0.19
roll: 0.0
pitch: 0.0
yaw: 0.0
joint7:
x: -0.015
y: 0.073
z: 0.11
roll: 0.0
pitch: -1.5707963267948966
yaw: 0.0
link7_to_flange:
x: 0.0
y: 0.0
z: 0.124
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
@@ -0,0 +1,129 @@
inertia_parameters:
base_link:
mass: 8.093
origin:
x: 0.0002
y: -0.0007
z: 0.1216
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.063
ixy: 0.0
ixz: -0.0002
iyy: 0.0634
iyz: 0.0008
izz: 0.0331
link1:
mass: 9.464
origin:
x: 0.0007
y: 0.0181
z: 0.1644
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.1167
ixy: 0.0
ixz: -0.001
iyy: 0.1075
iyz: 0.0126
izz: 0.0392
link2:
mass: 6.635
origin:
x: -0.0009
y: 0.0577
z: 0.0935
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0802
ixy: 0.0002
ixz: 0.0005
iyy: 0.0827
iyz: 0.0031
izz: 0.015
link3:
mass: 4.489
origin:
x: -0.0002
y: -0.022
z: 0.1677
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0371
ixy: 0.0
ixz: -0.0001
iyy: 0.0325
iyz: -0.0058
izz: 0.0135
link4:
mass: 3.221
origin:
x: 0.0001
y: 0.0547
z: 0.0924
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.029
ixy: 0.0
ixz: 0.0
iyy: 0.0298
iyz: 0.0007
izz: 0.0049
link5:
mass: 2.39
origin:
x: 0.0002
y: 0.0048
z: 0.1352
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0146
ixy: 0.0
ixz: 0.0
iyy: 0.0136
iyz: 0.0011
izz: 0.004
link6:
mass: 2.269
origin:
x: 0.0172
y: 0.0599
z: 0.0734
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0085
ixy: 0.0003
ixz: 0.001
iyy: 0.009
iyz: 0.0018
izz: 0.0042
link7:
mass: 1.459
origin:
x: 0.0
y: 0.0
z: 0.0535
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0032
ixy: 0.0
ixz: 0.0
iyy: 0.0032
iyz: 0.0
izz: 0.0019
@@ -0,0 +1,50 @@
joint_limits:
joint1:
lower: -2.8798
upper: 2.8798
effort: 261
velocity: 1.7453
soft_lower: -2.7925
soft_upper: 2.7925
joint2:
lower: -2.7576
upper: 2.7576
effort: 261
velocity: 1.7453
soft_lower: -2.6704
soft_upper: 2.6704
joint3:
lower: -2.8798
upper: 2.8798
effort: 123
velocity: 2.0944
soft_lower: -2.7925
soft_upper: 2.7925
joint4:
lower: -2.7925
upper: 2.7925
effort: 123
velocity: 2.0944
soft_lower: -2.7053
soft_upper: 2.7053
joint5:
lower: -3.0543
upper: 3.0543
effort: 57
velocity: 3.8397
soft_lower: -2.9671
soft_upper: 2.9671
joint6:
lower: -1.4835
upper: 4.6251
effort: 57
velocity: 3.8397
soft_lower: -1.3963
soft_upper: 4.5379
joint7:
lower: -3.0543
upper: 3.0543
effort: 57
velocity: 3.8397
soft_lower: -2.9671
soft_upper: 2.9671
@@ -0,0 +1,175 @@
visual_parameters:
base_link:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon10s/visual/link0.obj
collision:
mesh:
package: flexiv_description
path: meshes/Rizon10s/collision/link0.stl
workspace:
origin:
x: 0
y: 0
z: 0.450
roll: 0
pitch: 0
yaw: 0
sphere:
radius: 0.955
link1:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon10s/visual/link1.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon10s/visual/ring.obj
scale: 0.079 0.079 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon10s/collision/link1.stl
link2:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon10s/visual/link2.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon10s/visual/ring.obj
scale: 0.079 0.079 0.002
origin:
x: 0
y: -0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon10s/collision/link2.stl
link3:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon10s/visual/link3.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon10s/visual/ring.obj
scale: 0.062 0.062 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon10s/collision/link3.stl
link4:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon10s/visual/link4.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon10s/visual/ring.obj
scale: 0.062 0.062 0.002
origin:
x: 0
y: -0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon10s/collision/link4.stl
link5:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon10s/visual/link5.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon10s/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon10s/collision/link5.stl
link6:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon10s/visual/link6.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon10s/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: -0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon10s/collision/link6.stl
link7:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon10s/visual/link7.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon10s/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon10s/collision/link7.stl
@@ -0,0 +1,57 @@
kinematics:
joint1:
x: 0.0
y: 0.0
z: 0.155
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint2:
x: 0.0
y: 0.03
z: 0.21
roll: 0.0
pitch: 0.0
yaw: 0.0
joint3:
x: 0.0
y: 0.035
z: 0.205
roll: 0.0
pitch: 0.0
yaw: 0.0
joint4:
x: -0.02
y: -0.03
z: 0.19
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint5:
x: -0.02
y: 0.025
z: 0.195
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint6:
x: 0.0
y: 0.03
z: 0.19
roll: 0.0
pitch: 0.0
yaw: 0.0
joint7:
x: -0.015
y: 0.073
z: 0.11
roll: 0.0
pitch: -1.5707963267948966
yaw: 0.0
link7_to_flange:
x: 0.0
y: 0.0
z: 0.081
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
@@ -0,0 +1,129 @@
inertia_parameters:
base_link:
mass: 3.863
origin:
x: 0.0
y: -0.0008
z: 0.0883
roll: 0.0
pitch: 0.0
yaw: 0.0
inertia:
ixx: 0.0188
ixy: 0.0
ixz: 0.0
iyy: 0.019
iyz: 0.0002
izz: 0.0103
link1:
mass: 3.85
origin:
x: 0.0002
y: 0.004
z: 0.1451
roll: 0.0
pitch: 0.0
yaw: 0.0
inertia:
ixx: 0.0308
ixy: 0.0
ixz: -0.0001
iyy: 0.0307
iyz: 0.0012
izz: 0.0077
link2:
mass: 2.904
origin:
x: 0.0
y: 0.0356
z: 0.0946
roll: 0.0
pitch: 0.0
yaw: 0.0
inertia:
ixx: 0.0255
ixy: 0.0
ixz: 0.0001
iyy: 0.0263
iyz: -0.0001
izz: 0.0039
link3:
mass: 2.381
origin:
x: -0.0123
y: -0.0021
z: 0.1368
roll: 0.0
pitch: 0.0
yaw: 0.0
inertia:
ixx: 0.0144
ixy: 0.0001
ixz: -0.0015
iyy: 0.0139
iyz: -0.0006
izz: 0.0039
link4:
mass: 2.381
origin:
x: -0.0129
y: 0.0309
z: 0.1047
roll: 0.0
pitch: 0.0
yaw: 0.0
inertia:
ixx: 0.0184
ixy: 0.0001
ixz: -0.0016
iyy: 0.0188
iyz: -0.0012
izz: 0.0029
link5:
mass: 2.336
origin:
x: 0.0003
y: 0.0024
z: 0.1365
roll: 0.0
pitch: 0.0
yaw: 0.0
inertia:
ixx: 0.0144
ixy: 0.0
ixz: 0.0
iyy: 0.0136
iyz: 0.0006
izz: 0.0036
link6:
mass: 2.251
origin:
x: 0.0193
y: 0.0595
z: 0.0726
roll: 0.0
pitch: 0.0
yaw: 0.0
inertia:
ixx: 0.0085
ixy: 0.0004
ixz: 0.0012
iyy: 0.0089
iyz: 0.0018
izz: 0.0041
link7:
mass: 0.774
origin:
x: 0.0003
y: 0.0008
z: 0.025
roll: 0.0
pitch: 0.0
yaw: 0.0
inertia:
ixx: 0.001
ixy: 0.0
ixz: 0.0
iyy: 0.001
iyz: 0.0
izz: 0.0009
@@ -0,0 +1,50 @@
joint_limits:
joint1:
lower: -2.8798
upper: 2.8798
effort: 123
velocity: 2.0944
soft_lower: -2.7925
soft_upper: 2.7925
joint2:
lower: -2.3562
upper: 2.3562
effort: 123
velocity: 2.0944
soft_lower: -2.2689
soft_upper: 2.2689
joint3:
lower: -3.0543
upper: 3.0543
effort: 64
velocity: 2.4435
soft_lower: -2.9671
soft_upper: 2.9671
joint4:
lower: -1.9548
upper: 2.7751
effort: 64
velocity: 2.4435
soft_lower: -1.8675
soft_upper: 2.6878
joint5:
lower: -3.0543
upper: 3.0543
effort: 39
velocity: 4.8869
soft_lower: -2.9671
soft_upper: 2.9671
joint6:
lower: -1.4835
upper: 4.6251
effort: 39
velocity: 4.8869
soft_lower: -1.3963
soft_upper: 4.5379
joint7:
lower: -3.0543
upper: 3.0543
effort: 39
velocity: 4.8869
soft_lower: -2.9671
soft_upper: 2.9671
@@ -0,0 +1,175 @@
visual_parameters:
base_link:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4/visual/link0.obj
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4/collision/link0.stl
workspace:
origin:
x: 0
y: 0
z: 0.365
roll: 0
pitch: 0
yaw: 0
sphere:
radius: 0.890
link1:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4/visual/link1.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4/visual/ring.obj
scale: 0.062 0.062 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4/collision/link1.stl
link2:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4/visual/link2.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4/visual/ring.obj
scale: 0.062 0.062 0.002
origin:
x: 0
y: -0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4/collision/link2.stl
link3:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4/visual/link3.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4/collision/link3.stl
link4:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4/visual/link4.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: -0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4/collision/link4.stl
link5:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4/visual/link5.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4/collision/link5.stl
link6:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4/visual/link6.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: -0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4/collision/link6.stl
link7:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4/visual/link7.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4/collision/link7.stl
@@ -0,0 +1,57 @@
kinematics:
joint1:
x: 0.0
y: 0.0
z: 0.155
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint2:
x: 0.0
y: 0.03
z: 0.21
roll: 0.0
pitch: 0.0
yaw: 0.0
joint3:
x: 0.0
y: 0.035
z: 0.205
roll: 0.0
pitch: 0.0
yaw: 0.0
joint4:
x: -0.02
y: -0.03
z: 0.19
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint5:
x: -0.02
y: 0.025
z: 0.195
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint6:
x: 0.0
y: 0.03
z: 0.19
roll: 0.0
pitch: 0.0
yaw: 0.0
joint7:
x: -0.015
y: 0.073
z: 0.11
roll: 0.0
pitch: -1.5707963267948966
yaw: 0.0
link7_to_flange:
x: 0.0
y: 0.0
z: 0.081
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
@@ -0,0 +1,129 @@
inertia_parameters:
base_link:
mass: 3.792
origin:
x: 0.0
y: -0.0007
z: 0.0864
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.018
ixy: 0.0
ixz: 0.0
iyy: 0.0182
iyz: 0.0001
izz: 0.01
link1:
mass: 3.745
origin:
x: -0.0001
y: 0.0025
z: 0.1462
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.029
ixy: 0.0
ixz: 0.0
iyy: 0.0288
iyz: 0.001
izz: 0.0074
link2:
mass: 2.952
origin:
x: -0.0001
y: 0.0366
z: 0.0966
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0253
ixy: 0.0
ixz: 0.0
iyy: 0.0263
iyz: -0.0003
izz: 0.0038
link3:
mass: 2.47
origin:
x: -0.0119
y: -0.0008
z: 0.1379
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0144
ixy: 0.0001
ixz: -0.0015
iyy: 0.0141
iyz: -0.0006
izz: 0.0039
link4:
mass: 2.47
origin:
x: -0.0134
y: 0.0315
z: 0.1048
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0186
ixy: 0.0001
ixz: -0.0017
iyy: 0.019
iyz: -0.0014
izz: 0.0031
link5:
mass: 2.426
origin:
x: -0.0002
y: 0.0013
z: 0.1376
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0144
ixy: 0.0
ixz: 0.0
iyy: 0.0138
iyz: 0.0006
izz: 0.0036
link6:
mass: 2.332
origin:
x: 0.0207
y: 0.0606
z: 0.0729
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0087
ixy: 0.0004
ixz: 0.0012
iyy: 0.009
iyz: 0.0018
izz: 0.004
link7:
mass: 0.825
origin:
x: 0.0006
y: 0.001
z: 0.0282
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.001
ixy: 0.0
ixz: 0.0
iyy: 0.001
iyz: 0.0
izz: 0.0009
@@ -0,0 +1,50 @@
joint_limits:
joint1:
lower: -2.8798
upper: 2.8798
effort: 123
velocity: 2.0944
soft_lower: -2.7925
soft_upper: 2.7925
joint2:
lower: -2.3562
upper: 2.3562
effort: 123
velocity: 2.0944
soft_lower: -2.2689
soft_upper: 2.2689
joint3:
lower: -3.0543
upper: 3.0543
effort: 64
velocity: 2.4435
soft_lower: -2.9671
soft_upper: 2.9671
joint4:
lower: -1.9548
upper: 2.7751
effort: 64
velocity: 2.4435
soft_lower: -1.8675
soft_upper: 2.6878
joint5:
lower: -3.0543
upper: 3.0543
effort: 39
velocity: 4.8869
soft_lower: -2.9671
soft_upper: 2.9671
joint6:
lower: -1.4835
upper: 4.6251
effort: 39
velocity: 4.8869
soft_lower: -1.3963
soft_upper: 4.5379
joint7:
lower: -3.0543
upper: 3.0543
effort: 39
velocity: 4.8869
soft_lower: -2.9671
soft_upper: 2.9671
@@ -0,0 +1,175 @@
visual_parameters:
base_link:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4M/visual/link0.obj
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4M/collision/link0.stl
workspace:
origin:
x: 0
y: 0
z: 0.365
roll: 0
pitch: 0
yaw: 0
sphere:
radius: 0.890
link1:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4M/visual/link1.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4M/visual/ring.obj
scale: 0.062 0.062 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4M/collision/link1.stl
link2:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4M/visual/link2.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4M/visual/ring.obj
scale: 0.062 0.062 0.002
origin:
x: 0
y: -0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4M/collision/link2.stl
link3:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4M/visual/link3.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4M/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4M/collision/link3.stl
link4:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4M/visual/link4.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4M/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: -0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4M/collision/link4.stl
link5:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4M/visual/link5.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4M/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4M/collision/link5.stl
link6:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4M/visual/link6.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4M/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: -0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4M/collision/link6.stl
link7:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4M/visual/link7.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4M/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4M/collision/link7.stl
@@ -0,0 +1,57 @@
kinematics:
joint1:
x: 0.0
y: 0.0
z: 0.155
roll: 3.141592653589793
pitch: 0.0
yaw: 3.141592653589793
joint2:
x: 0.0
y: 0.03
z: -0.21
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint3:
x: 0.0
y: -0.035
z: -0.205
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint4:
x: -0.02
y: -0.03
z: -0.19
roll: 0.0
pitch: 0.0
yaw: 0.0
joint5:
x: 0.02
y: -0.025
z: -0.195
roll: 0.0
pitch: 0.0
yaw: 0.0
joint6:
x: 0.0
y: 0.03
z: -0.19
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint7:
x: 0.015
y: -0.073
z: -0.11
roll: 0.0
pitch: -1.5707963267948966
yaw: 0.0
link7_to_flange:
x: 0.0
y: 0.0
z: -0.081
roll: 3.141592653589793
pitch: 0.0
yaw: 0.0
@@ -0,0 +1,129 @@
inertia_parameters:
base_link:
mass: 3.653
origin:
x: -0.0002
y: 0.0006
z: 0.0874
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0194
ixy: 0.0
ixz: 0.0
iyy: 0.0196
iyz: -0.0001
izz: 0.0088
link1:
mass: 3.673
origin:
x: -0.0001
y: 0.006
z: -0.1489
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0276
ixy: 0.0
ixz: 0.0
iyy: 0.0272
iyz: -0.0017
izz: 0.0077
link2:
mass: 2.734
origin:
x: 0.0002
y: -0.0362
z: -0.0979
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0234
ixy: 0.0
ixz: 0.0
iyy: 0.0243
iyz: -0.0003
izz: 0.0036
link3:
mass: 2.397
origin:
x: -0.0117
y: -0.0028
z: -0.1334
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0141
ixy: 0.0001
ixz: 0.0014
iyy: 0.0137
iyz: 0.0007
izz: 0.0038
link4:
mass: 2.397
origin:
x: 0.0126
y: -0.0312
z: -0.1013
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0184
ixy: 0.0001
ixz: -0.0016
iyy: 0.0188
iyz: -0.0012
izz: 0.003
link5:
mass: 2.363
origin:
x: 0.0002
y: 0.0032
z: -0.1328
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.014
ixy: 0.0
ixz: 0.0
iyy: 0.0134
iyz: -0.0007
izz: 0.0036
link6:
mass: 2.178
origin:
x: -0.0171
y: -0.0587
z: -0.0692
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0085
ixy: 0.0004
ixz: 0.0011
iyy: 0.0088
iyz: 0.0019
izz: 0.0039
link7:
mass: 0.794
origin:
x: 0.0001
y: -0.0003
z: 0.0252
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0009
ixy: 0.0
ixz: 0.0
iyy: 0.001
iyz: 0.0
izz: 0.0009
@@ -0,0 +1,50 @@
joint_limits:
joint1:
lower: -2.8798
upper: 2.8798
effort: 123
velocity: 2.0944
soft_lower: -2.7925
soft_upper: 2.7925
joint2:
lower: -2.3562
upper: 2.3562
effort: 123
velocity: 2.0944
soft_lower: -2.2689
soft_upper: 2.2689
joint3:
lower: -3.0543
upper: 3.0543
effort: 64
velocity: 2.4435
soft_lower: -2.9671
soft_upper: 2.9671
joint4:
lower: -1.9548
upper: 2.7751
effort: 64
velocity: 2.4435
soft_lower: -1.8675
soft_upper: 2.6878
joint5:
lower: -3.0543
upper: 3.0543
effort: 39
velocity: 4.8869
soft_lower: -2.9671
soft_upper: 2.9671
joint6:
lower: -1.4835
upper: 4.6251
effort: 39
velocity: 4.8869
soft_lower: -1.3963
soft_upper: 4.5379
joint7:
lower: -3.0543
upper: 3.0543
effort: 39
velocity: 4.8869
soft_lower: -2.9671
soft_upper: 2.9671
@@ -0,0 +1,287 @@
visual_parameters:
base_link:
visual:
shell:
origin:
x: 0
y: 0
z: 0
roll: 0
pitch: 0
yaw: 3.141592653589793
mesh:
package: flexiv_description
path: meshes/Rizon4R/visual/link0.obj
collision:
origin:
x: 0
y: 0
z: 0
roll: 0
pitch: 0
yaw: 3.141592653589793
mesh:
package: flexiv_description
path: meshes/Rizon4R/collision/link0.stl
workspace:
origin:
x: 0
y: 0
z: 0.365
roll: 0
pitch: 0
yaw: 0
sphere:
radius: 0.890
link1:
visual:
shell:
origin:
x: 0
y: 0
z: 0
roll: 0
pitch: 3.141592653589793
yaw: 0
mesh:
package: flexiv_description
path: meshes/Rizon4R/visual/link1.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4R/visual/ring.obj
scale: 0.062 0.062 0.002
origin:
x: 0
y: 0
z: 0.0025
roll: 0
pitch: 0
yaw: 0
collision:
origin:
x: 0
y: 0
z: 0
roll: 0
pitch: 3.141592653589793
yaw: 0
mesh:
package: flexiv_description
path: meshes/Rizon4R/collision/link1.stl
link2:
visual:
shell:
origin:
x: 0
y: 0
z: 0
roll: 3.141592653589793
pitch: 0
yaw: 0
mesh:
package: flexiv_description
path: meshes/Rizon4R/visual/link2.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4R/visual/ring.obj
scale: 0.062 0.062 0.002
origin:
x: 0
y: 0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
origin:
x: 0
y: 0
z: 0
roll: 3.141592653589793
pitch: 0
yaw: 0
mesh:
package: flexiv_description
path: meshes/Rizon4R/collision/link2.stl
link3:
visual:
shell:
origin:
x: 0
y: 0
z: 0
roll: 0
pitch: 3.141592653589793
yaw: 0
mesh:
package: flexiv_description
path: meshes/Rizon4R/visual/link3r.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4R/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0
z: 0.0025
roll: 0
pitch: 0
yaw: 0
collision:
origin:
x: 0
y: 0
z: 0
roll: 0
pitch: 3.141592653589793
yaw: 0
mesh:
package: flexiv_description
path: meshes/Rizon4R/collision/link3r.stl
link4:
visual:
shell:
origin:
x: 0
y: 0
z: 0
roll: 3.141592653589793
pitch: 0
yaw: 0
mesh:
package: flexiv_description
path: meshes/Rizon4R/visual/link4r.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4R/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
origin:
x: 0
y: 0
z: 0
roll: 3.141592653589793
pitch: 0
yaw: 0
mesh:
package: flexiv_description
path: meshes/Rizon4R/collision/link4r.stl
link5:
visual:
shell:
origin:
x: 0
y: 0
z: 0
roll: 0
pitch: 3.141592653589793
yaw: 0
mesh:
package: flexiv_description
path: meshes/Rizon4R/visual/link5.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4R/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0
z: 0.0025
roll: 0
pitch: 0
yaw: 0
collision:
origin:
x: 0
y: 0
z: 0
roll: 0
pitch: 3.141592653589793
yaw: 0
mesh:
package: flexiv_description
path: meshes/Rizon4R/collision/link5.stl
link6:
visual:
shell:
origin:
x: 0
y: 0
z: 0
roll: 0
pitch: 3.141592653589793
yaw: 0
mesh:
package: flexiv_description
path: meshes/Rizon4R/visual/link6r.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4R/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
origin:
x: 0
y: 0
z: 0
roll: 0
pitch: 3.141592653589793
yaw: 0
mesh:
package: flexiv_description
path: meshes/Rizon4R/collision/link6r.stl
link7:
visual:
shell:
origin:
x: 0
y: 0
z: 0
roll: 3.141592653589793
pitch: 0
yaw: 0
mesh:
package: flexiv_description
path: meshes/Rizon4R/visual/link7.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4R/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0
z: 0.0025
roll: 0
pitch: 0
yaw: 0
collision:
origin:
x: 0
y: 0
z: 0
roll: 3.141592653589793
pitch: 0
yaw: 0
mesh:
package: flexiv_description
path: meshes/Rizon4R/collision/link7.stl
@@ -0,0 +1,57 @@
kinematics:
joint1:
x: 0.0
y: 0.0
z: 0.155
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint2:
x: 0.0
y: 0.03
z: 0.21
roll: 0.0
pitch: 0.0
yaw: 0.0
joint3:
x: 0.0
y: 0.035
z: 0.205
roll: 0.0
pitch: 0.0
yaw: 0.0
joint4:
x: -0.02
y: -0.03
z: 0.19
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint5:
x: -0.02
y: 0.025
z: 0.195
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
joint6:
x: 0.0
y: 0.03
z: 0.19
roll: 0.0
pitch: 0.0
yaw: 0.0
joint7:
x: -0.015
y: 0.073
z: 0.11
roll: 0.0
pitch: -1.5707963267948966
yaw: 0.0
link7_to_flange:
x: 0.0
y: 0.0
z: 0.124
roll: 0.0
pitch: 0.0
yaw: 3.141592653589793
@@ -0,0 +1,129 @@
inertia_parameters:
base_link:
mass: 3.788
origin:
x: 0.0002
y: -0.0007
z: 0.0871
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0182
ixy: 0.0
ixz: 0.0
iyy: 0.0184
iyz: 0.0001
izz: 0.01
link1:
mass: 3.596
origin:
x: 0.0001
y: 0.0035
z: 0.15
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0274
ixy: 0.0
ixz: 0.0
iyy: 0.0273
iyz: 0.0011
izz: 0.0071
link2:
mass: 2.69
origin:
x: -0.0003
y: 0.0361
z: 0.0998
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.023
ixy: 0.0
ixz: 0.0
iyy: 0.0239
iyz: -0.0001
izz: 0.0036
link3:
mass: 2.354
origin:
x: -0.0123
y: -0.0012
z: 0.1366
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0143
ixy: 0.0001
ixz: -0.0015
iyy: 0.0137
iyz: -0.0005
izz: 0.004
link4:
mass: 2.354
origin:
x: -0.0129
y: 0.0313
z: 0.1034
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.018
ixy: 0.0001
ixz: -0.0016
iyy: 0.0184
iyz: -0.0012
izz: 0.003
link5:
mass: 2.31
origin:
x: 0.0003
y: 0.0014
z: 0.1363
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0142
ixy: 0.0
ixz: 0.0
iyy: 0.0135
iyz: 0.0005
izz: 0.0037
link6:
mass: 2.223
origin:
x: 0.0202
y: 0.0596
z: 0.0724
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0085
ixy: 0.0004
ixz: 0.0012
iyy: 0.009
iyz: 0.0018
izz: 0.0042
link7:
mass: 1.403
origin:
x: 0.0
y: 0.0001
z: 0.0544
roll: 0
pitch: 0
yaw: 0
inertia:
ixx: 0.0032
ixy: 0.0
ixz: 0.0
iyy: 0.0032
iyz: 0.0
izz: 0.0018
@@ -0,0 +1,50 @@
joint_limits:
joint1:
lower: -2.8798
upper: 2.8798
effort: 123
velocity: 2.0944
soft_lower: -2.7925
soft_upper: 2.7925
joint2:
lower: -2.3562
upper: 2.3562
effort: 123
velocity: 2.0944
soft_lower: -2.2689
soft_upper: 2.2689
joint3:
lower: -3.0543
upper: 3.0543
effort: 64
velocity: 2.4435
soft_lower: -2.9671
soft_upper: 2.9671
joint4:
lower: -1.9548
upper: 2.7751
effort: 64
velocity: 2.4435
soft_lower: -1.8675
soft_upper: 2.6878
joint5:
lower: -3.0543
upper: 3.0543
effort: 39
velocity: 4.8869
soft_lower: -2.9671
soft_upper: 2.9671
joint6:
lower: -1.4835
upper: 4.6251
effort: 39
velocity: 4.8869
soft_lower: -1.3963
soft_upper: 4.5379
joint7:
lower: -3.0543
upper: 3.0543
effort: 39
velocity: 4.8869
soft_lower: -2.9671
soft_upper: 2.9671
@@ -0,0 +1,175 @@
visual_parameters:
base_link:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4s/visual/link0.obj
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4s/collision/link0.stl
workspace:
origin:
x: 0
y: 0
z: 0.365
roll: 0
pitch: 0
yaw: 0
sphere:
radius: 0.890
link1:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4s/visual/link1.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4s/visual/ring.obj
scale: 0.062 0.062 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4s/collision/link1.stl
link2:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4s/visual/link2.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4s/visual/ring.obj
scale: 0.062 0.062 0.002
origin:
x: 0
y: -0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4s/collision/link2.stl
link3:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4s/visual/link3.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4s/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4s/collision/link3.stl
link4:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4s/visual/link4.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4s/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: -0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4s/collision/link4.stl
link5:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4s/visual/link5.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4s/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4s/collision/link5.stl
link6:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4s/visual/link6.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4s/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: -0.0025
z: 0
roll: 1.5707963
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4s/collision/link6.stl
link7:
visual:
shell:
mesh:
package: flexiv_description
path: meshes/Rizon4s/visual/link7.obj
ring:
mesh:
package: flexiv_description
path: meshes/Rizon4s/visual/ring.obj
scale: 0.051 0.051 0.002
origin:
x: 0
y: 0
z: -0.0025
roll: 0
pitch: 0
yaw: 0
collision:
mesh:
package: flexiv_description
path: meshes/Rizon4s/collision/link7.stl
@@ -0,0 +1,15 @@
positions:
left:
x: 0.0
y: 1.0
z: 0.0
rx: 0.0
ry: 0.0
rz: 0.0
right:
x: 0.0
y: 0.0
z: 0.0
rx: 0.0
ry: 0.0
rz: 0.0
@@ -0,0 +1,8 @@
initial_positions:
joint1: 0.0
joint2: -0.69813
joint3: 0.0
joint4: 1.570796
joint5: 0.0
joint6: 0.69813
joint7: 0.0
@@ -0,0 +1,8 @@
initial_positions:
joint1: 0.0
joint2: -0.69813
joint3: 0.0
joint4: 1.570796
joint5: 0.0
joint6: 0.69813
joint7: 0.0
@@ -0,0 +1,8 @@
initial_positions:
joint1: 0.0
joint2: -0.69813
joint3: 0.0
joint4: 1.570796
joint5: 0.0
joint6: 0.69813
joint7: 0.0
@@ -0,0 +1,4 @@
orientation:
rx: 0.0
ry: 0.0
rz: 0.0
@@ -0,0 +1 @@
prepend-non-duplicate;AMENT_PREFIX_PATH;
@@ -0,0 +1,4 @@
# copied from
# ament_cmake_core/cmake/environment_hooks/environment/ament_prefix_path.sh
ament_prepend_unique_value AMENT_PREFIX_PATH "$AMENT_CURRENT_PREFIX"
@@ -0,0 +1 @@
prepend-non-duplicate-if-exists;PATH;bin
@@ -0,0 +1,5 @@
# copied from ament_cmake_core/cmake/environment_hooks/environment/path.sh
if [ -d "$AMENT_CURRENT_PREFIX/bin" ]; then
ament_prepend_unique_value PATH "$AMENT_CURRENT_PREFIX/bin"
fi
@@ -0,0 +1 @@
prepend-non-duplicate;CMAKE_PREFIX_PATH;
@@ -0,0 +1,3 @@
# generated from colcon_powershell/shell/template/hook_prepend_value.ps1.em
colcon_prepend_unique_value CMAKE_PREFIX_PATH "$env:COLCON_CURRENT_PREFIX"
@@ -0,0 +1,3 @@
# generated from colcon_core/shell/template/hook_prepend_value.sh.em
_colcon_prepend_unique_value CMAKE_PREFIX_PATH "$COLCON_CURRENT_PREFIX"
@@ -0,0 +1,156 @@
from launch import LaunchDescription
from launch.actions import DeclareLaunchArgument
from launch.conditions import IfCondition, UnlessCondition
from launch_ros.parameter_descriptions import ParameterValue
from launch.substitutions import (
Command,
FindExecutable,
LaunchConfiguration,
PathJoinSubstitution,
PythonExpression,
)
from launch_ros.actions import Node
from launch_ros.substitutions import FindPackageShare
def generate_launch_description():
pkg_share = FindPackageShare("flexiv_description")
# Arguments
external_axis_type = LaunchConfiguration("external_axis_type")
external_axis_prefix = LaunchConfiguration("external_axis_prefix")
robot_sn = LaunchConfiguration("robot_sn")
rizon_type = LaunchConfiguration("rizon_type")
load_gripper = LaunchConfiguration("load_gripper")
gripper_name = LaunchConfiguration("gripper_name")
load_mounted_ft_sensor = LaunchConfiguration("load_mounted_ft_sensor")
default_rviz_config_path = PathJoinSubstitution(
[pkg_share, "rviz", "view_rizon.rviz"]
)
robot_description_content = ParameterValue(
Command(
[
PathJoinSubstitution([FindExecutable(name="xacro")]),
" ",
PathJoinSubstitution(
[FindPackageShare("flexiv_description"), "urdf", "aico1.urdf.xacro"]
),
" ",
"external_axis_type:=",
PythonExpression(
["'", external_axis_type, "'.lower().replace('-', '_')"]
),
" ",
"external_axis_prefix:=",
external_axis_prefix,
" ",
"robot_sn:=",
robot_sn,
" ",
"rizon_type:=",
rizon_type,
" ",
"load_gripper:=",
load_gripper,
" ",
"gripper_name:=",
gripper_name,
" ",
"load_mounted_ft_sensor:=",
load_mounted_ft_sensor,
]
),
value_type=str,
)
# Robot state publisher
robot_state_publisher_node = Node(
package="robot_state_publisher",
executable="robot_state_publisher",
name="robot_state_publisher",
output="screen",
parameters=[{"robot_description": robot_description_content}],
)
joint_state_publisher_node = Node(
package="joint_state_publisher",
executable="joint_state_publisher",
name="joint_state_publisher",
condition=UnlessCondition(LaunchConfiguration("gui")),
)
joint_state_publisher_gui_node = Node(
package="joint_state_publisher_gui",
executable="joint_state_publisher_gui",
name="joint_state_publisher_gui",
condition=IfCondition(LaunchConfiguration("gui")),
)
# RViz
rviz_node = Node(
package="rviz2",
executable="rviz2",
name="rviz2",
output="screen",
arguments=["-d", LaunchConfiguration("rvizconfig")],
)
return LaunchDescription(
[
DeclareLaunchArgument(
name="external_axis_type",
default_value="AICO1-4-V1",
description="Type of the AICO1 platform.",
choices=["AICO1-4-V1", "AICO1-4-V2"],
),
DeclareLaunchArgument(
name="external_axis_prefix",
default_value="",
description="Prefix for the external axis links and joints",
),
DeclareLaunchArgument(
name="robot_sn",
description="Serial number of the robot to connect to. Remove any space, for example: Rizon4s-123456",
),
DeclareLaunchArgument(
name="rizon_type",
default_value="Rizon4",
description="Type of the Flexiv Rizon robot.",
choices=[
"Rizon4",
"Rizon4s",
],
),
DeclareLaunchArgument(
name="load_gripper",
default_value="False",
description="Flag to load the Flexiv Grav gripper",
),
DeclareLaunchArgument(
name="gripper_name",
default_value="Flexiv-GN01",
description="Full name of the gripper to be controlled",
),
DeclareLaunchArgument(
name="load_mounted_ft_sensor",
default_value="False",
description="Flag to load the mounted force torque sensor. Only available for Rizon4, Rizon4R and Rizon10",
),
DeclareLaunchArgument(
name="gui",
default_value="False",
description="Flag to enable joint_state_publisher_gui",
),
DeclareLaunchArgument(
name="rvizconfig",
default_value=default_rviz_config_path,
description="Absolute path to rviz config file",
),
robot_state_publisher_node,
joint_state_publisher_node,
joint_state_publisher_gui_node,
rviz_node,
]
)
@@ -0,0 +1,192 @@
from launch import LaunchDescription
from launch.actions import DeclareLaunchArgument
from launch.conditions import IfCondition, UnlessCondition
from launch_ros.parameter_descriptions import ParameterValue
from launch.substitutions import (
Command,
FindExecutable,
LaunchConfiguration,
PathJoinSubstitution,
PythonExpression,
)
from launch_ros.actions import Node
from launch_ros.substitutions import FindPackageShare
def generate_launch_description():
pkg_share = FindPackageShare("flexiv_description")
# Arguments
external_axis_type = LaunchConfiguration("external_axis_type")
external_axis_prefix = LaunchConfiguration("external_axis_prefix")
rizon_type = LaunchConfiguration("rizon_type")
robot_sn_left = LaunchConfiguration("robot_sn_left")
load_gripper_left = LaunchConfiguration("load_gripper_left")
gripper_name_left = LaunchConfiguration("gripper_name_left")
load_mounted_ft_sensor_left = LaunchConfiguration("load_mounted_ft_sensor_left")
robot_sn_right = LaunchConfiguration("robot_sn_right")
load_gripper_right = LaunchConfiguration("load_gripper_right")
gripper_name_right = LaunchConfiguration("gripper_name_right")
load_mounted_ft_sensor_right = LaunchConfiguration("load_mounted_ft_sensor_right")
default_rviz_config_path = PathJoinSubstitution(
[pkg_share, "rviz", "view_rizon_dual.rviz"]
)
robot_description_content = ParameterValue(
Command(
[
PathJoinSubstitution([FindExecutable(name="xacro")]),
" ",
PathJoinSubstitution(
[FindPackageShare("flexiv_description"), "urdf", "aico2.urdf.xacro"]
),
" ",
"external_axis_type:=",
PythonExpression(
["'", external_axis_type, "'.lower().replace('-', '_')"]
),
" ",
"external_axis_prefix:=",
external_axis_prefix,
" ",
"rizon_type:=",
rizon_type,
" ",
"robot_sn_left:=",
robot_sn_left,
" ",
"load_gripper_left:=",
load_gripper_left,
" ",
"gripper_name_left:=",
gripper_name_left,
" ",
"load_mounted_ft_sensor_left:=",
load_mounted_ft_sensor_left,
" ",
"robot_sn_right:=",
robot_sn_right,
" ",
"load_gripper_right:=",
load_gripper_right,
" ",
"gripper_name_right:=",
gripper_name_right,
" ",
"load_mounted_ft_sensor_right:=",
load_mounted_ft_sensor_right,
]
),
value_type=str,
)
# Robot state publisher
robot_state_publisher_node = Node(
package="robot_state_publisher",
executable="robot_state_publisher",
name="robot_state_publisher",
output="screen",
parameters=[{"robot_description": robot_description_content}],
)
joint_state_publisher_node = Node(
package="joint_state_publisher",
executable="joint_state_publisher",
name="joint_state_publisher",
condition=UnlessCondition(LaunchConfiguration("gui")),
)
joint_state_publisher_gui_node = Node(
package="joint_state_publisher_gui",
executable="joint_state_publisher_gui",
name="joint_state_publisher_gui",
condition=IfCondition(LaunchConfiguration("gui")),
)
# RViz
rviz_node = Node(
package="rviz2",
executable="rviz2",
name="rviz2",
output="screen",
arguments=["-d", LaunchConfiguration("rvizconfig")],
)
return LaunchDescription(
[
DeclareLaunchArgument(
name="external_axis_type",
default_value="AICO2-4-V1",
description="Type of the AICO2 platform.",
choices=["AICO2-4-V1", "AICO2-4-V2", "AICO2-10-V1"],
),
DeclareLaunchArgument(
name="external_axis_prefix",
default_value="",
description="Prefix for the external axis links and joints",
),
DeclareLaunchArgument(
name="rizon_type",
default_value="Rizon4",
description="Type of the Rizon robot of the AICO2 platform (Rizon4 or Rizon10)",
choices=["Rizon4", "Rizon10"],
),
# Left Robot
DeclareLaunchArgument(
name="robot_sn_left",
description="Serial number of the left robot.",
),
DeclareLaunchArgument(
name="load_gripper_left",
default_value="False",
description="Flag to load the gripper for left robot",
),
DeclareLaunchArgument(
name="gripper_name_left",
default_value="Flexiv-GN01",
description="Full name of the gripper for left robot",
),
DeclareLaunchArgument(
name="load_mounted_ft_sensor_left",
default_value="False",
description="Flag to load the mounted force torque sensor for left robot",
),
# Right Robot
DeclareLaunchArgument(
name="robot_sn_right",
description="Serial number of the right robot.",
),
DeclareLaunchArgument(
name="load_gripper_right",
default_value="False",
description="Flag to load the gripper for right robot",
),
DeclareLaunchArgument(
name="gripper_name_right",
default_value="Flexiv-GN01",
description="Full name of the gripper for right robot",
),
DeclareLaunchArgument(
name="load_mounted_ft_sensor_right",
default_value="False",
description="Flag to load the mounted force torque sensor for right robot",
),
DeclareLaunchArgument(
name="gui",
default_value="False",
description="Flag to enable joint_state_publisher_gui",
),
DeclareLaunchArgument(
name="rvizconfig",
default_value=default_rviz_config_path,
description="Absolute path to rviz config file",
),
robot_state_publisher_node,
joint_state_publisher_node,
joint_state_publisher_gui_node,
rviz_node,
]
)
@@ -0,0 +1,134 @@
from launch import LaunchDescription
from launch.actions import DeclareLaunchArgument
from launch.conditions import IfCondition, UnlessCondition
from launch_ros.parameter_descriptions import ParameterValue
from launch.substitutions import (
Command,
FindExecutable,
LaunchConfiguration,
PathJoinSubstitution,
)
from launch_ros.actions import Node
from launch_ros.substitutions import FindPackageShare
def generate_launch_description():
pkg_share = FindPackageShare("flexiv_description")
robot_sn = LaunchConfiguration("robot_sn")
rizon_type = LaunchConfiguration("rizon_type")
load_gripper = LaunchConfiguration("load_gripper")
gripper_name = LaunchConfiguration("gripper_name")
load_mounted_ft_sensor = LaunchConfiguration("load_mounted_ft_sensor")
default_rviz_config_path = PathJoinSubstitution(
[pkg_share, "rviz", "view_rizon.rviz"]
)
robot_description_content = ParameterValue(
Command(
[
PathJoinSubstitution([FindExecutable(name="xacro")]),
" ",
PathJoinSubstitution(
[FindPackageShare("flexiv_description"), "urdf", "rizon.urdf.xacro"]
),
" ",
"robot_sn:=",
robot_sn,
" ",
"rizon_type:=",
rizon_type,
" ",
"load_gripper:=",
load_gripper,
" ",
"gripper_name:=",
gripper_name,
" ",
"load_mounted_ft_sensor:=",
load_mounted_ft_sensor,
]
),
value_type=str,
)
# Robot state publisher
robot_state_publisher_node = Node(
package="robot_state_publisher",
executable="robot_state_publisher",
name="robot_state_publisher",
output="screen",
parameters=[{"robot_description": robot_description_content}],
)
joint_state_publisher_node = Node(
package="joint_state_publisher",
executable="joint_state_publisher",
name="joint_state_publisher",
condition=UnlessCondition(LaunchConfiguration("gui")),
)
joint_state_publisher_gui_node = Node(
package="joint_state_publisher_gui",
executable="joint_state_publisher_gui",
name="joint_state_publisher_gui",
condition=IfCondition(LaunchConfiguration("gui")),
)
# RViz
rviz_node = Node(
package="rviz2",
executable="rviz2",
name="rviz2",
output="screen",
arguments=["-d", LaunchConfiguration("rvizconfig")],
)
return LaunchDescription(
[
DeclareLaunchArgument(
name="robot_sn",
description="Serial number of the robot to connect to. Remove any space, for example: Rizon4s-123456",
),
DeclareLaunchArgument(
name="rizon_type",
default_value="Rizon4",
description="Type of the Flexiv Rizon robot.",
choices=[
"Rizon4",
"Rizon4M",
"Rizon4R",
"Rizon4s",
"Rizon10",
"Rizon10s",
],
),
DeclareLaunchArgument(
name="load_gripper",
default_value="False",
description="Flag to load the Flexiv Grav gripper",
),
DeclareLaunchArgument(
name="gripper_name",
default_value="Flexiv-GN01",
description="Full name of the gripper to be controlled",
),
DeclareLaunchArgument(
name="load_mounted_ft_sensor",
default_value="False",
description="Flag to load the mounted force torque sensor. Only available for Rizon4, Rizon4R and Rizon10",
),
DeclareLaunchArgument(
name="gui",
default_value="False",
description="Flag to enable joint_state_publisher_gui",
),
DeclareLaunchArgument(
name="rvizconfig",
default_value=default_rviz_config_path,
description="Absolute path to rviz config file",
),
robot_state_publisher_node,
joint_state_publisher_node,
joint_state_publisher_gui_node,
rviz_node,
]
)
@@ -0,0 +1,194 @@
from launch import LaunchDescription
from launch.actions import DeclareLaunchArgument
from launch.conditions import IfCondition, UnlessCondition
from launch_ros.parameter_descriptions import ParameterValue
from launch.substitutions import (
Command,
FindExecutable,
LaunchConfiguration,
PathJoinSubstitution,
)
from launch_ros.actions import Node
from launch_ros.substitutions import FindPackageShare
def generate_launch_description():
pkg_share = FindPackageShare("flexiv_description")
robot_sn_left = LaunchConfiguration("robot_sn_left")
rizon_type_left = LaunchConfiguration("rizon_type_left")
load_gripper_left = LaunchConfiguration("load_gripper_left")
gripper_name_left = LaunchConfiguration("gripper_name_left")
load_mounted_ft_sensor_left = LaunchConfiguration("load_mounted_ft_sensor_left")
robot_sn_right = LaunchConfiguration("robot_sn_right")
rizon_type_right = LaunchConfiguration("rizon_type_right")
load_gripper_right = LaunchConfiguration("load_gripper_right")
gripper_name_right = LaunchConfiguration("gripper_name_right")
load_mounted_ft_sensor_right = LaunchConfiguration("load_mounted_ft_sensor_right")
default_rviz_config_path = PathJoinSubstitution(
[pkg_share, "rviz", "view_rizon_dual.rviz"]
)
robot_description_content = ParameterValue(
Command(
[
PathJoinSubstitution([FindExecutable(name="xacro")]),
" ",
PathJoinSubstitution(
[
FindPackageShare("flexiv_description"),
"urdf",
"rizon_dual.urdf.xacro",
]
),
" ",
"robot_sn_left:=",
robot_sn_left,
" ",
"robot_sn_right:=",
robot_sn_right,
" ",
"rizon_type_left:=",
rizon_type_left,
" ",
"rizon_type_right:=",
rizon_type_right,
" ",
"load_gripper_left:=",
load_gripper_left,
" ",
"load_gripper_right:=",
load_gripper_right,
" ",
"gripper_name_left:=",
gripper_name_left,
" ",
"gripper_name_right:=",
gripper_name_right,
" ",
"load_mounted_ft_sensor_left:=",
load_mounted_ft_sensor_left,
" ",
"load_mounted_ft_sensor_right:=",
load_mounted_ft_sensor_right,
]
),
value_type=str,
)
# Robot state publisher
robot_state_publisher_node = Node(
package="robot_state_publisher",
executable="robot_state_publisher",
name="robot_state_publisher",
output="screen",
parameters=[{"robot_description": robot_description_content}],
)
joint_state_publisher_node = Node(
package="joint_state_publisher",
executable="joint_state_publisher",
name="joint_state_publisher",
condition=UnlessCondition(LaunchConfiguration("gui")),
)
joint_state_publisher_gui_node = Node(
package="joint_state_publisher_gui",
executable="joint_state_publisher_gui",
name="joint_state_publisher_gui",
condition=IfCondition(LaunchConfiguration("gui")),
)
# RViz
rviz_node = Node(
package="rviz2",
executable="rviz2",
name="rviz2",
output="screen",
arguments=["-d", LaunchConfiguration("rvizconfig")],
)
return LaunchDescription(
[
DeclareLaunchArgument(
name="robot_sn_left",
description="Serial number of the left robot.",
),
DeclareLaunchArgument(
name="robot_sn_right",
description="Serial number of the right robot.",
),
DeclareLaunchArgument(
name="rizon_type_left",
default_value="Rizon4",
description="Type of the left Flexiv Rizon robot.",
choices=[
"Rizon4",
"Rizon4M",
"Rizon4R",
"Rizon4s",
"Rizon10",
"Rizon10s",
],
),
DeclareLaunchArgument(
name="rizon_type_right",
default_value="Rizon4",
description="Type of the right Flexiv Rizon robot.",
choices=[
"Rizon4",
"Rizon4M",
"Rizon4R",
"Rizon4s",
"Rizon10",
"Rizon10s",
],
),
DeclareLaunchArgument(
name="load_gripper_left",
default_value="False",
description="Flag to load the Flexiv Grav gripper for left robot",
),
DeclareLaunchArgument(
name="load_gripper_right",
default_value="False",
description="Flag to load the Flexiv Grav gripper for right robot",
),
DeclareLaunchArgument(
name="gripper_name_left",
default_value="Flexiv-GN01",
description="Full name of the gripper to be controlled for left robot",
),
DeclareLaunchArgument(
name="gripper_name_right",
default_value="Flexiv-GN01",
description="Full name of the gripper to be controlled for right robot",
),
DeclareLaunchArgument(
name="load_mounted_ft_sensor_left",
default_value="False",
description="Flag to load the mounted force torque sensor for left robot. Only available for Rizon4, Rizon4R and Rizon10",
),
DeclareLaunchArgument(
name="load_mounted_ft_sensor_right",
default_value="False",
description="Flag to load the mounted force torque sensor for right robot. Only available for Rizon4, Rizon4R and Rizon10",
),
DeclareLaunchArgument(
name="gui",
default_value="False",
description="Flag to enable joint_state_publisher_gui",
),
DeclareLaunchArgument(
name="rvizconfig",
default_value=default_rviz_config_path,
description="Absolute path to rviz config file",
),
robot_state_publisher_node,
joint_state_publisher_node,
joint_state_publisher_gui_node,
rviz_node,
]
)
@@ -0,0 +1,46 @@
# generated from ament_package/template/package_level/local_setup.bash.in
# source local_setup.sh from same directory as this file
_this_path=$(builtin cd "`dirname "${BASH_SOURCE[0]}"`" && pwd)
# provide AMENT_CURRENT_PREFIX to shell script
AMENT_CURRENT_PREFIX=$(builtin cd "`dirname "${BASH_SOURCE[0]}"`/../.." && pwd)
# store AMENT_CURRENT_PREFIX to restore it before each environment hook
_package_local_setup_AMENT_CURRENT_PREFIX=$AMENT_CURRENT_PREFIX
# trace output
if [ -n "$AMENT_TRACE_SETUP_FILES" ]; then
echo "# . \"$_this_path/local_setup.sh\""
fi
. "$_this_path/local_setup.sh"
unset _this_path
# unset AMENT_ENVIRONMENT_HOOKS
# if not appending to them for return
if [ -z "$AMENT_RETURN_ENVIRONMENT_HOOKS" ]; then
unset AMENT_ENVIRONMENT_HOOKS
fi
# restore AMENT_CURRENT_PREFIX before evaluating the environment hooks
AMENT_CURRENT_PREFIX=$_package_local_setup_AMENT_CURRENT_PREFIX
# list all environment hooks of this package
# source all shell-specific environment hooks of this package
# if not returning them
if [ -z "$AMENT_RETURN_ENVIRONMENT_HOOKS" ]; then
_package_local_setup_IFS=$IFS
IFS=":"
for _hook in $AMENT_ENVIRONMENT_HOOKS; do
# restore AMENT_CURRENT_PREFIX for each environment hook
AMENT_CURRENT_PREFIX=$_package_local_setup_AMENT_CURRENT_PREFIX
# restore IFS before sourcing other files
IFS=$_package_local_setup_IFS
. "$_hook"
done
unset _hook
IFS=$_package_local_setup_IFS
unset _package_local_setup_IFS
unset AMENT_ENVIRONMENT_HOOKS
fi
unset _package_local_setup_AMENT_CURRENT_PREFIX
unset AMENT_CURRENT_PREFIX
@@ -0,0 +1,2 @@
source;share/flexiv_description/environment/ament_prefix_path.sh
source;share/flexiv_description/environment/path.sh
@@ -0,0 +1,184 @@
# generated from ament_package/template/package_level/local_setup.sh.in
# since this file is sourced use either the provided AMENT_CURRENT_PREFIX
# or fall back to the destination set at configure time
: ${AMENT_CURRENT_PREFIX:="/home/cc/ros2/install/flexiv_description"}
if [ ! -d "$AMENT_CURRENT_PREFIX" ]; then
if [ -z "$COLCON_CURRENT_PREFIX" ]; then
echo "The compile time prefix path '$AMENT_CURRENT_PREFIX' doesn't " \
"exist. Consider sourcing a different extension than '.sh'." 1>&2
else
AMENT_CURRENT_PREFIX="$COLCON_CURRENT_PREFIX"
fi
fi
# function to append values to environment variables
# using colons as separators and avoiding leading separators
ament_append_value() {
# arguments
_listname="$1"
_value="$2"
#echo "listname $_listname"
#eval echo "list value \$$_listname"
#echo "value $_value"
# avoid leading separator
eval _values=\"\$$_listname\"
if [ -z "$_values" ]; then
eval export $_listname=\"$_value\"
#eval echo "set list \$$_listname"
else
# field separator must not be a colon
_ament_append_value_IFS=$IFS
unset IFS
eval export $_listname=\"\$$_listname:$_value\"
#eval echo "append list \$$_listname"
IFS=$_ament_append_value_IFS
unset _ament_append_value_IFS
fi
unset _values
unset _value
unset _listname
}
# function to append non-duplicate values to environment variables
# using colons as separators and avoiding leading separators
ament_append_unique_value() {
# arguments
_listname=$1
_value=$2
#echo "listname $_listname"
#eval echo "list value \$$_listname"
#echo "value $_value"
# check if the list contains the value
eval _values=\$$_listname
_duplicate=
_ament_append_unique_value_IFS=$IFS
IFS=":"
if [ "$AMENT_SHELL" = "zsh" ]; then
ament_zsh_to_array _values
fi
for _item in $_values; do
# ignore empty strings
if [ -z "$_item" ]; then
continue
fi
if [ $_item = $_value ]; then
_duplicate=1
fi
done
unset _item
# append only non-duplicates
if [ -z "$_duplicate" ]; then
# avoid leading separator
if [ -z "$_values" ]; then
eval $_listname=\"$_value\"
#eval echo "set list \$$_listname"
else
# field separator must not be a colon
unset IFS
eval $_listname=\"\$$_listname:$_value\"
#eval echo "append list \$$_listname"
fi
fi
IFS=$_ament_append_unique_value_IFS
unset _ament_append_unique_value_IFS
unset _duplicate
unset _values
unset _value
unset _listname
}
# function to prepend non-duplicate values to environment variables
# using colons as separators and avoiding trailing separators
ament_prepend_unique_value() {
# arguments
_listname="$1"
_value="$2"
#echo "listname $_listname"
#eval echo "list value \$$_listname"
#echo "value $_value"
# check if the list contains the value
eval _values=\"\$$_listname\"
_duplicate=
_ament_prepend_unique_value_IFS=$IFS
IFS=":"
if [ "$AMENT_SHELL" = "zsh" ]; then
ament_zsh_to_array _values
fi
for _item in $_values; do
# ignore empty strings
if [ -z "$_item" ]; then
continue
fi
if [ "$_item" = "$_value" ]; then
_duplicate=1
fi
done
unset _item
# prepend only non-duplicates
if [ -z "$_duplicate" ]; then
# avoid trailing separator
if [ -z "$_values" ]; then
eval export $_listname=\"$_value\"
#eval echo "set list \$$_listname"
else
# field separator must not be a colon
unset IFS
eval export $_listname=\"$_value:\$$_listname\"
#eval echo "prepend list \$$_listname"
fi
fi
IFS=$_ament_prepend_unique_value_IFS
unset _ament_prepend_unique_value_IFS
unset _duplicate
unset _values
unset _value
unset _listname
}
# unset AMENT_ENVIRONMENT_HOOKS
# if not appending to them for return
if [ -z "$AMENT_RETURN_ENVIRONMENT_HOOKS" ]; then
unset AMENT_ENVIRONMENT_HOOKS
fi
# list all environment hooks of this package
ament_append_value AMENT_ENVIRONMENT_HOOKS "$AMENT_CURRENT_PREFIX/share/flexiv_description/environment/ament_prefix_path.sh"
ament_append_value AMENT_ENVIRONMENT_HOOKS "$AMENT_CURRENT_PREFIX/share/flexiv_description/environment/path.sh"
# source all shell-specific environment hooks of this package
# if not returning them
if [ -z "$AMENT_RETURN_ENVIRONMENT_HOOKS" ]; then
_package_local_setup_IFS=$IFS
IFS=":"
if [ "$AMENT_SHELL" = "zsh" ]; then
ament_zsh_to_array AMENT_ENVIRONMENT_HOOKS
fi
for _hook in $AMENT_ENVIRONMENT_HOOKS; do
if [ -f "$_hook" ]; then
# restore IFS before sourcing other files
IFS=$_package_local_setup_IFS
# trace output
if [ -n "$AMENT_TRACE_SETUP_FILES" ]; then
echo "# . \"$_hook\""
fi
. "$_hook"
fi
done
unset _hook
IFS=$_package_local_setup_IFS
unset _package_local_setup_IFS
unset AMENT_ENVIRONMENT_HOOKS
fi
# reset AMENT_CURRENT_PREFIX after each package
# allowing to source multiple package-level setup files
unset AMENT_CURRENT_PREFIX
@@ -0,0 +1,59 @@
# generated from ament_package/template/package_level/local_setup.zsh.in
AMENT_SHELL=zsh
# source local_setup.sh from same directory as this file
_this_path=$(builtin cd -q "`dirname "${(%):-%N}"`" > /dev/null && pwd)
# provide AMENT_CURRENT_PREFIX to shell script
AMENT_CURRENT_PREFIX=$(builtin cd -q "`dirname "${(%):-%N}"`/../.." > /dev/null && pwd)
# store AMENT_CURRENT_PREFIX to restore it before each environment hook
_package_local_setup_AMENT_CURRENT_PREFIX=$AMENT_CURRENT_PREFIX
# function to convert array-like strings into arrays
# to wordaround SH_WORD_SPLIT not being set
ament_zsh_to_array() {
local _listname=$1
local _dollar="$"
local _split="{="
local _to_array="(\"$_dollar$_split$_listname}\")"
eval $_listname=$_to_array
}
# trace output
if [ -n "$AMENT_TRACE_SETUP_FILES" ]; then
echo "# . \"$_this_path/local_setup.sh\""
fi
# the package-level local_setup file unsets AMENT_CURRENT_PREFIX
. "$_this_path/local_setup.sh"
unset _this_path
# unset AMENT_ENVIRONMENT_HOOKS
# if not appending to them for return
if [ -z "$AMENT_RETURN_ENVIRONMENT_HOOKS" ]; then
unset AMENT_ENVIRONMENT_HOOKS
fi
# restore AMENT_CURRENT_PREFIX before evaluating the environment hooks
AMENT_CURRENT_PREFIX=$_package_local_setup_AMENT_CURRENT_PREFIX
# list all environment hooks of this package
# source all shell-specific environment hooks of this package
# if not returning them
if [ -z "$AMENT_RETURN_ENVIRONMENT_HOOKS" ]; then
_package_local_setup_IFS=$IFS
IFS=":"
for _hook in $AMENT_ENVIRONMENT_HOOKS; do
# restore AMENT_CURRENT_PREFIX for each environment hook
AMENT_CURRENT_PREFIX=$_package_local_setup_AMENT_CURRENT_PREFIX
# restore IFS before sourcing other files
IFS=$_package_local_setup_IFS
. "$_hook"
done
unset _hook
IFS=$_package_local_setup_IFS
unset _package_local_setup_IFS
unset AMENT_ENVIRONMENT_HOOKS
fi
unset _package_local_setup_AMENT_CURRENT_PREFIX
unset AMENT_CURRENT_PREFIX
@@ -0,0 +1,10 @@
newmtl aico_white
Ns 92.156872
Ka 0.250000 0.250000 0.250000
Kd 0.969921 0.969921 0.969921
Ks 0.072304 0.072304 0.072304
Ke 0.0 0.0 0.0
Ni 1.000000
d 1.000000
illum 2
@@ -0,0 +1,10 @@
newmtl aico_white
Ns 92.156872
Ka 0.250000 0.250000 0.250000
Kd 0.969921 0.969921 0.969921
Ks 0.072304 0.072304 0.072304
Ke 0.0 0.0 0.0
Ni 1.000000
d 1.000000
illum 2
@@ -0,0 +1,10 @@
newmtl aico_white
Ns 92.156872
Ka 0.250000 0.250000 0.250000
Kd 0.969921 0.969921 0.969921
Ks 0.072304 0.072304 0.072304
Ke 0.0 0.0 0.0
Ni 1.000000
d 1.000000
illum 2
@@ -0,0 +1,2 @@
# Blender 4.2.16 LTS MTL File: 'None'
# www.blender.org
@@ -0,0 +1,2 @@
# Blender 4.2.15 LTS MTL File: 'None'
# www.blender.org
@@ -0,0 +1,2 @@
# Blender 4.2.15 LTS MTL File: 'None'
# www.blender.org
@@ -0,0 +1,2 @@
# Blender 4.2.15 LTS MTL File: 'None'
# www.blender.org
@@ -0,0 +1,2 @@
# Blender 4.2.15 LTS MTL File: 'None'
# www.blender.org
@@ -0,0 +1,2 @@
# Blender 4.4.1 MTL File: 'None'
# www.blender.org
@@ -0,0 +1,2 @@
# Blender 4.4.1 MTL File: 'None'
# www.blender.org
@@ -0,0 +1,2 @@
# Blender 4.4.1 MTL File: 'None'
# www.blender.org
@@ -0,0 +1,10 @@
newmtl aico_white
Ns 92.156872
Ka 0.250000 0.250000 0.250000
Kd 0.969921 0.969921 0.969921
Ks 0.072304 0.072304 0.072304
Ke 0.0 0.0 0.0
Ni 1.000000
d 1.000000
illum 2
@@ -0,0 +1,10 @@
newmtl aico_white
Ns 92.156872
Ka 0.250000 0.250000 0.250000
Kd 0.969921 0.969921 0.969921
Ks 0.072304 0.072304 0.072304
Ke 0.0 0.0 0.0
Ni 1.000000
d 1.000000
illum 2
@@ -0,0 +1,10 @@
newmtl aico_white
Ns 92.156872
Ka 0.250000 0.250000 0.250000
Kd 0.969921 0.969921 0.969921
Ks 0.072304 0.072304 0.072304
Ke 0.0 0.0 0.0
Ni 1.000000
d 1.000000
illum 2
@@ -0,0 +1,2 @@
# Blender 4.4.1 MTL File: 'None'
# www.blender.org

Some files were not shown because too many files have changed in this diff Show More