Add URDF model for table and SDF world configuration

- Created a new URDF file for the table model, including links for the table frame, wood palette, robot palette, cabinet frame, and cabinet, along with their respective visual and collision properties.
- Defined joints to connect the various components of the table model.
- Added a new SDF file for the simulation world, setting up the environment with physics properties, a ground plane, and lighting.
This commit is contained in:
Даниил Грабарь
2026-04-08 16:38:59 +10:00
parent 45e134e116
commit f474d330ad
9 changed files with 4402 additions and 21 deletions
+1 -1
View File
@@ -93,7 +93,7 @@ def _runtime_setup(context, *args, **kwargs):
# TODO: добавить аргументы для transform и rotation и передать их из setting.yaml а также мир # TODO: добавить аргументы для transform и rotation и передать их из setting.yaml а также мир
launch_arguments={ launch_arguments={
"robot_name": settings.robot.name, "robot_name": settings.robot.name,
"world": "empty.sdf", "world": str(get_package_share_directory("iiwa_description") + "/worlds/iiwa_world.sdf"),
"gazebo_config": str(get_package_share_directory("iiwa_config") + "/config/gazebo/gz_bridge.yaml"), "gazebo_config": str(get_package_share_directory("iiwa_config") + "/config/gazebo/gz_bridge.yaml"),
"simulate": "true", "simulate": "true",
}.items(), }.items(),
@@ -1,3 +1,4 @@
from ament_index_python import get_package_share_directory
from launch import LaunchDescription from launch import LaunchDescription
from launch.actions import ( from launch.actions import (
IncludeLaunchDescription, IncludeLaunchDescription,
@@ -32,6 +33,25 @@ def _spawn_setup(context, *args, **kwargs):
}.items(), }.items(),
) )
# Table Spawner
spawn_table = Node(
package="ros_gz_sim",
executable="create",
name="spawn_table",
output="screen",
arguments=[
"-file", str(
get_package_share_directory("iiwa_description")
+ "/urdf/table/table.urdf"
),
"-name", "iiwa_table",
"-x", "0.0",
"-y", "0.0",
"-z", "0.0",
],
)
# Robot Spawner
# TODO: добавить аргументы для transform и rotation # TODO: добавить аргументы для transform и rotation
spawn_robot = Node( spawn_robot = Node(
package="ros_gz_sim", package="ros_gz_sim",
@@ -41,7 +61,9 @@ def _spawn_setup(context, *args, **kwargs):
arguments=[ arguments=[
"-topic", "/robot_description", "-topic", "/robot_description",
"-name", robot_name, "-name", robot_name,
"-z", "0.0" "-x", "-0.25",
"-y", "0.0",
"-z", "0.81"
], ],
) )
@@ -56,8 +78,13 @@ def _spawn_setup(context, *args, **kwargs):
}], }],
) )
return [gazebo, spawn_robot, gz_bridge] return [
gazebo,
spawn_table,
spawn_robot,
gz_bridge
]
def generate_launch_description(): def generate_launch_description():
return LaunchDescription([OpaqueFunction(function=_spawn_setup)]) return LaunchDescription([OpaqueFunction(function=_spawn_setup)])
+77 -17
View File
@@ -7,7 +7,7 @@ Panels:
- /Global Options1 - /Global Options1
- /Status1 - /Status1
Splitter Ratio: 0.5 Splitter Ratio: 0.5
Tree Height: 166 Tree Height: 164
- Class: rviz_common/Selection - Class: rviz_common/Selection
Name: Selection Name: Selection
- Class: rviz_common/Tool Properties - Class: rviz_common/Tool Properties
@@ -78,11 +78,31 @@ Visualization Manager:
Expand Link Details: false Expand Link Details: false
Expand Tree: false Expand Tree: false
Link Tree Style: Links in Alphabetic Order Link Tree Style: Links in Alphabetic Order
base_frame:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
base_link: base_link:
Alpha: 1 Alpha: 1
Show Axes: false Show Axes: false
Show Trail: false Show Trail: false
Value: true Value: true
finger1:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
finger2:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
finger3:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link1: link1:
Alpha: 1 Alpha: 1
Show Axes: false Show Axes: false
@@ -122,6 +142,16 @@ Visualization Manager:
Alpha: 1 Alpha: 1
Show Axes: false Show Axes: false
Show Trail: false Show Trail: false
plate:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
screw:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
world: world:
Alpha: 1 Alpha: 1
Show Axes: false Show Axes: false
@@ -135,7 +165,7 @@ Visualization Manager:
State Display Time: 3x State Display Time: 3x
Trail Step Size: 1 Trail Step Size: 1
Trajectory Topic: /display_planned_path Trajectory Topic: /display_planned_path
Use Sim Time: True Use Sim Time: true
Planning Metrics: Planning Metrics:
Payload: 1 Payload: 1
Show Joint Torques: false Show Joint Torques: false
@@ -147,7 +177,7 @@ Visualization Manager:
Colliding Link Color: 255; 0; 0 Colliding Link Color: 255; 0; 0
Goal State Alpha: 1 Goal State Alpha: 1
Goal State Color: 250; 128; 0 Goal State Color: 250; 128; 0
Interactive Marker Size: 0.3 Interactive Marker Size: 0.30000001192092896
Joint Violation Color: 255; 0; 255 Joint Violation Color: 255; 0; 255
Planning Group: iiwa_arm Planning Group: iiwa_arm
Query Goal State: true Query Goal State: true
@@ -172,11 +202,31 @@ Visualization Manager:
Expand Link Details: false Expand Link Details: false
Expand Tree: false Expand Tree: false
Link Tree Style: Links in Alphabetic Order Link Tree Style: Links in Alphabetic Order
base_frame:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
base_link: base_link:
Alpha: 1 Alpha: 1
Show Axes: false Show Axes: false
Show Trail: false Show Trail: false
Value: true Value: true
finger1:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
finger2:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
finger3:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
link1: link1:
Alpha: 1 Alpha: 1
Show Axes: false Show Axes: false
@@ -216,6 +266,16 @@ Visualization Manager:
Alpha: 1 Alpha: 1
Show Axes: false Show Axes: false
Show Trail: false Show Trail: false
plate:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
screw:
Alpha: 1
Show Axes: false
Show Trail: false
Value: true
world: world:
Alpha: 1 Alpha: 1
Show Axes: false Show Axes: false
@@ -278,30 +338,30 @@ Visualization Manager:
Swap Stereo Eyes: false Swap Stereo Eyes: false
Value: false Value: false
Focal Point: Focal Point:
X: 0 X: -0.2744624614715576
Y: 0 Y: 0.14776650071144104
Z: 0 Z: 0.4366345703601837
Focal Shape Fixed Size: true Focal Shape Fixed Size: true
Focal Shape Size: 0.05000000074505806 Focal Shape Size: 0.05000000074505806
Invert Z Axis: false Invert Z Axis: false
Name: Current View Name: Current View
Near Clip Distance: 0.009999999776482582 Near Clip Distance: 0.009999999776482582
Pitch: 0.570398211479187 Pitch: 0.5853981971740723
Target Frame: <Fixed Frame> Target Frame: <Fixed Frame>
Value: Orbit (rviz) Value: Orbit (rviz)
Yaw: 5.948578357696533 Yaw: 5.813575267791748
Saved: ~ Saved: ~
Window Geometry: Window Geometry:
"":
collapsed: false
" - Trajectory Slider":
collapsed: false
Displays: Displays:
collapsed: false collapsed: false
Height: 846 Height: 992
Hide Left Dock: false Hide Left Dock: false
Hide Right Dock: false Hide Right Dock: false
QMainWindow State: 000000ff00000000fd0000000400000000000001c1000002b2fc020000000afb0000001200530065006c0065006300740069006f006e00000001e10000009b0000005c00fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb000000100044006900730070006c006100790073010000003c00000130000000c800fffffffb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261fb000000280020002d0020005400720061006a006500630074006f0072007900200053006c00690064006500720000000000ffffffff0000004000fffffffbffffffff01000001720000017c0000017100ffffff000000010000010f000002b2fc0200000003fb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000000a00560069006500770073010000003c000002b2000000a200fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b200000000000000000000000200000490000000a9fc0100000001fb0000000a00560069006500770073030000004e00000080000002e10000019700000003000004b00000003efc0100000002fb0000000800540069006d00650100000000000004b00000023200fffffffb0000000800540069006d00650100000000000004500000000000000000000001d4000002b200000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000 MotionPlanning:
collapsed: false
MotionPlanning - Trajectory Slider:
collapsed: false
QMainWindow State: 000000ff00000000fd0000000400000000000001c100000344fc020000000bfb0000001200530065006c0065006300740069006f006e00000001e10000009b0000005c00fffffffb0000001e0054006f006f006c002000500072006f007000650072007400690065007302000001ed000001df00000185000000a3fb000000120056006900650077007300200054006f006f02000001df000002110000018500000122fb000000200054006f006f006c002000500072006f0070006500720074006900650073003203000002880000011d000002210000017afb000000100044006900730070006c006100790073010000003c0000012e000000c800fffffffb0000002000730065006c0065006300740069006f006e00200062007500660066006500720200000138000000aa0000023a00000294fb00000014005700690064006500530074006500720065006f02000000e6000000d2000003ee0000030bfb0000000c004b0069006e0065006300740200000186000001060000030c00000261fb000000280020002d0020005400720061006a006500630074006f0072007900200053006c00690064006500720000000000ffffffff0000000000000000fb00000044004d006f00740069006f006e0050006c0061006e006e0069006e00670020002d0020005400720061006a006500630074006f0072007900200053006c00690064006500720000000000ffffffff0000004000fffffffb0000001c004d006f00740069006f006e0050006c0061006e006e0069006e00670100000170000002100000017100ffffff000000010000010f00000344fc0200000003fb0000001e0054006f006f006c002000500072006f00700065007200740069006500730100000041000000780000000000000000fb0000000a00560069006500770073010000003c00000344000000a200fffffffb0000001200530065006c0065006300740069006f006e010000025a000000b200000000000000000000000200000490000000a9fc0100000001fb0000000a00560069006500770073030000004e00000080000002e10000019700000003000005000000003efc0100000002fb0000000800540069006d00650100000000000005000000023200fffffffb0000000800540069006d00650100000000000004500000000000000000000002240000034400000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000
Selection: Selection:
collapsed: false collapsed: false
Time: Time:
@@ -310,6 +370,6 @@ Window Geometry:
collapsed: false collapsed: false
Views: Views:
collapsed: false collapsed: false
Width: 1200 Width: 1280
X: 60 X: 1920
Y: 60 Y: 56
@@ -0,0 +1,194 @@
#OBJ
#T-FLEX CAD ObjGenerator generate date:20.11.2024 23:59:52
v 0.27 0.23 -0.019999
v 0.27 0.949999 -0.019999
v 0.31 0.99 -0.019999
v -0.31 0.99 -0.019999
v -0.27 0.949999 -0.019999
v -0.27 0.23 -0.019999
v 0.27 0.189999 -0.019999
v -0.31 0 -0.019999
v -0.27 0.189999 -0.019999
v 0.31 0 -0.019999
v 0.27 0 -0.019999
v -0.27 -0 -0.019999
v -0.27 0.23 0.019999
v -0.27 0.189999 0.019999
v 0.27 0.189999 0.019999
v -0.31 0.99 0.019999
v -0.31 0 0.019999
v -0.27 -0 0.019999
v 0.27 0.949999 0.019999
v 0.31 0.99 0.019999
v 0.27 0.23 0.019999
v 0.31 0 0.019999
v -0.27 0.949999 0.019999
v 0.27 0 0.019999
v 0.27 0.23 0.019999
v 0.27 0.23 -0.019999
v -0.27 0.23 -0.019999
v -0.27 0.23 0.019999
v -0.31 0.99 0.019999
v -0.31 0.99 -0.019999
v -0.31 0 -0.019999
v -0.31 0 0.019999
v -0.31 0.99 0.019999
v 0.31 0.99 0.019999
v 0.31 0.99 -0.019999
v -0.31 0.99 -0.019999
v 0.31 0 0.019999
v 0.31 0 -0.019999
v 0.31 0.99 -0.019999
v 0.31 0.99 0.019999
v 0.27 0 0.019999
v 0.27 0 -0.019999
v 0.31 0 -0.019999
v 0.31 0 0.019999
v 0.27 0 -0.019999
v 0.27 0 0.019999
v 0.27 0.189999 0.019999
v 0.27 0.189999 -0.019999
v -0.27 0.189999 0.019999
v -0.27 0.189999 -0.019999
v 0.27 0.189999 -0.019999
v 0.27 0.189999 0.019999
v -0.27 -0 0.019999
v -0.27 -0 -0.019999
v -0.27 0.189999 -0.019999
v -0.27 0.189999 0.019999
v -0.31 0 0.019999
v -0.31 0 -0.019999
v -0.27 -0 -0.019999
v -0.27 -0 0.019999
v 0.27 0.23 -0.019999
v 0.27 0.23 0.019999
v 0.27 0.949999 0.019999
v 0.27 0.949999 -0.019999
v 0.27 0.949999 -0.019999
v 0.27 0.949999 0.019999
v -0.27 0.949999 0.019999
v -0.27 0.949999 -0.019999
v -0.27 0.949999 -0.019999
v -0.27 0.949999 0.019999
v -0.27 0.23 0.019999
v -0.27 0.23 -0.019999
vn 0 0 -1
vn 0 0 -1
vn 0 0 -1
vn 0 0 -1
vn 0 0 -1
vn 0 0 -1
vn 0 0 -1
vn 0 0 -1
vn 0 0 -1
vn 0 0 -1
vn 0 0 -1
vn 0 0 -1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 1 0
vn 0 1 0
vn 0 1 0
vn 0 1 0
vn -1 0 0
vn -1 0 0
vn -1 0 0
vn -1 0 0
vn 0 1 0
vn 0 1 0
vn 0 1 0
vn 0 1 0
vn 1 -0 0
vn 1 -0 0
vn 1 -0 0
vn 1 -0 0
vn 0 -1 0
vn 0 -1 0
vn 0 -1 0
vn 0 -1 0
vn -1 -0 0
vn -1 -0 0
vn -1 -0 0
vn -1 -0 0
vn 0 -1 0
vn 0 -1 0
vn 0 -1 0
vn 0 -1 0
vn 1 0 0
vn 1 0 0
vn 1 0 0
vn 1 0 0
vn -0 -1 0
vn -0 -1 0
vn -0 -1 0
vn -0 -1 0
vn -1 -0 0
vn -1 -0 0
vn -1 -0 0
vn -1 -0 0
vn 0 -1 0
vn 0 -1 0
vn 0 -1 0
vn 0 -1 0
vn 1 0 0
vn 1 0 0
vn 1 0 0
vn 1 0 0
f 1//1 2//2 3//3
f 4//4 5//5 6//6
f 4//4 3//3 2//2
f 2//2 5//5 4//4
f 3//3 7//7 1//1
f 6//6 1//1 7//7
f 8//8 6//6 9//9
f 7//7 9//9 6//6
f 6//6 8//8 4//4
f 10//10 11//11 7//7
f 7//7 3//3 10//10
f 9//9 12//12 8//8
f 13//13 14//14 15//15
f 14//14 16//16 17//17
f 17//17 18//18 14//14
f 19//19 20//20 16//16
f 21//21 15//15 20//20
f 15//15 21//21 13//13
f 22//22 20//20 15//15
f 20//20 19//19 21//21
f 16//16 23//23 19//19
f 16//16 14//14 13//13
f 13//13 23//23 16//16
f 15//15 24//24 22//22
f 25//25 26//26 27//27
f 27//27 28//28 25//25
f 29//29 30//30 31//31
f 31//31 32//32 29//29
f 33//33 34//34 35//35
f 35//35 36//36 33//33
f 37//37 38//38 39//39
f 39//39 40//40 37//37
f 41//41 42//42 43//43
f 43//43 44//44 41//41
f 45//45 46//46 47//47
f 47//47 48//48 45//45
f 49//49 50//50 51//51
f 51//51 52//52 49//49
f 53//53 54//54 55//55
f 55//55 56//56 53//53
f 57//57 58//58 59//59
f 59//59 60//60 57//57
f 61//61 62//62 63//63
f 63//63 64//64 61//61
f 65//65 66//66 67//67
f 67//67 68//68 65//65
f 69//69 70//70 71//71
f 71//71 72//72 69//69
@@ -0,0 +1,222 @@
#OBJ
#T-FLEX CAD ObjGenerator generate date:20.11.2024 23:59:6
v 0.625 0.541 0.019999
v 0.625 0.764999 0.019999
v 0.675 0.721 0.019999
v 0.634999 0.764999 0.019999
v 0.675 0.725 0.019999
v 0.634999 0.541 0.019999
v 0.675 0.721 0.208
v 0.625 0.764999 0.208
v 0.625 0.541 0.208
v 0.675 0.725 0.208
v 0.634999 0.764999 0.208
v 0.634999 0.541 0.208
v 0.634999 0.764999 0.208
v 0.675 0.725 0.208
v 0.675 0.725 0.019999
v 0.634999 0.764999 0.019999
v 0.675 0.721 0.208
v 0.634999 0.541 0.208
v 0.634999 0.541 0.019999
v 0.675 0.721 0.019999
v 0.625 0.541 0.208
v 0.625 0.541 0.019999
v 0.634999 0.541 0.019999
v 0.634999 0.541 0.208
v 0.675 0.725 0.208
v 0.675 0.721 0.208
v 0.675 0.721 0.019999
v 0.675 0.725 0.019999
v 0.634999 0.764999 0.208
v 0.634999 0.764999 0.019999
v 0.625 0.764999 0.019999
v 0.625 0.764999 0.208
v 0.6125 0.787999 0.261999
v 0.0125 0.787999 0.261999
v 0.0125 0.012 0.261999
v 0.6125 0.012 0.261999
v 0.0125 0.787999 0.25
v 0.0125 0.787999 0.261999
v 0.6125 0.787999 0.261999
v 0.6125 0.787999 0.25
v 0.6125 0.787999 0.25
v 0.6125 0.787999 0.261999
v 0.6125 0.012 0.261999
v 0.6125 0.012 0.25
v 0.6125 0.012 0.25
v 0.6125 0.012 0.261999
v 0.0125 0.012 0.261999
v 0.0125 0.012 0.25
v 0.0125 0.012 0.25
v 0.0125 0.012 0.261999
v 0.0125 0.787999 0.261999
v 0.0125 0.787999 0.25
v 0.625 0 0
v 0 0 0
v 0 0.8 0
v 0.625 0.8 0
v 0 0 0.25
v 0.0125 0.012 0.25
v 0.0125 0.787999 0.25
v 0.625 0 0.25
v 0.6125 0.012 0.25
v 0.625 0.8 0.25
v 0.6125 0.787999 0.25
v 0 0.8 0.25
v 0.625 0.8 0.25
v 0.625 0.8 0
v 0 0.8 0
v 0 0.8 0.25
v 0 0 0.25
v 0 0 0
v 0.625 0 0
v 0.625 0 0.25
v 0 0 0
v 0 0 0.25
v 0 0.8 0.25
v 0 0.8 0
v 0.625 0.8 0
v 0.625 0.764999 0.019999
v 0.625 0.541 0.019999
v 0.625 0.541 0.208
v 0.625 0.764999 0.208
v 0.625 0.8 0.25
v 0.625 0 0
v 0.625 0 0.25
vn 0 0 -1
vn 0 0 -1
vn 0 0 -1
vn 0 0 -1
vn 0 0 -1
vn 0 0 -1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0.707106 0.707106 0
vn 0.707106 0.707106 0
vn 0.707106 0.707106 0
vn 0.707106 0.707106 0
vn 0.976187 -0.21693 0
vn 0.976187 -0.21693 0
vn 0.976187 -0.21693 0
vn 0.976187 -0.21693 0
vn 0 -1 0
vn 0 -1 0
vn 0 -1 0
vn 0 -1 0
vn 1 0 0
vn 1 0 0
vn 1 0 0
vn 1 0 0
vn 0 1 0
vn 0 1 0
vn 0 1 0
vn 0 1 0
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn -0 1 0
vn -0 1 0
vn -0 1 0
vn -0 1 0
vn 1 0 0
vn 1 0 0
vn 1 0 0
vn 1 0 0
vn 0 -1 0
vn 0 -1 0
vn 0 -1 0
vn 0 -1 0
vn -1 -0 0
vn -1 -0 0
vn -1 -0 0
vn -1 -0 0
vn 0 0 -1
vn 0 0 -1
vn 0 0 -1
vn 0 0 -1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 0 1
vn 0 1 0
vn 0 1 0
vn 0 1 0
vn 0 1 0
vn 0 -1 0
vn 0 -1 0
vn 0 -1 0
vn 0 -1 0
vn -1 0 0
vn -1 0 0
vn -1 0 0
vn -1 0 0
vn 1 0 0
vn 1 0 0
vn 1 0 0
vn 1 0 0
vn 1 0 0
vn 1 0 0
vn 1 0 0
vn 1 0 0
f 1//1 2//2 3//3
f 2//2 4//4 5//5
f 5//5 3//3 2//2
f 3//3 6//6 1//1
f 7//7 8//8 9//9
f 7//7 10//10 11//11
f 9//9 12//12 7//7
f 11//11 8//8 7//7
f 13//13 14//14 15//15
f 15//15 16//16 13//13
f 17//17 18//18 19//19
f 19//19 20//20 17//17
f 21//21 22//22 23//23
f 23//23 24//24 21//21
f 25//25 26//26 27//27
f 27//27 28//28 25//25
f 29//29 30//30 31//31
f 31//31 32//32 29//29
f 33//33 34//34 35//35
f 35//35 36//36 33//33
f 37//37 38//38 39//39
f 39//39 40//40 37//37
f 41//41 42//42 43//43
f 43//43 44//44 41//41
f 45//45 46//46 47//47
f 47//47 48//48 45//45
f 49//49 50//50 51//51
f 51//51 52//52 49//49
f 53//53 54//54 55//55
f 55//55 56//56 53//53
f 57//57 58//58 59//59
f 60//60 61//61 58//58
f 58//58 57//57 60//60
f 60//60 62//62 63//63
f 64//64 59//59 63//63
f 59//59 64//64 57//57
f 63//63 62//62 64//64
f 63//63 61//61 60//60
f 65//65 66//66 67//67
f 67//67 68//68 65//65
f 69//69 70//70 71//71
f 71//71 72//72 69//69
f 73//73 74//74 75//75
f 75//75 76//76 73//73
f 77//77 78//78 79//79
f 80//80 81//81 82//82
f 79//79 83//83 77//77
f 81//81 78//78 77//77
f 80//80 84//84 83//83
f 77//77 82//82 81//81
f 83//83 79//79 80//80
f 82//82 84//84 80//80
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+234
View File
@@ -0,0 +1,234 @@
<?xml version="1.0"?>
<robot name="robo_table">
<link name="world"/>
<link name="table_frame">
<inertial>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<mass value="30"/>
<inertia ixx="1.0" ixy="0.0" ixz="0.0"
iyy="1.0" iyz="0.0" izz="1.0"/>
</inertial>
<visual>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<geometry>
<mesh filename="package://iiwa_description/resource/meshes/table/TableFrame.obj"/>
</geometry>
<material name="table_metal">
<color rgba="0.57 0.57 0.57 1.0"/>
</material>
</visual>
<collision>
<origin xyz="0.0 0.0 0.395" rpy="0.0 0.0 0.0"/>
<geometry>
<box size="1.28 1.08 0.79"/>
</geometry>
</collision>
</link>
<gazebo reference="table_frame">
<visual>
<material>
<ambient>0.55 0.55 0.58 1</ambient>
<diffuse>0.65 0.65 0.68 1</diffuse>
<specular>0.3 0.3 0.3 1</specular>
<pbr><metal><roughness>0.6</roughness><metalness>0.4</metalness></metal></pbr>
</material>
</visual>
</gazebo>
<link name="wood_palete">
<inertial>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<mass value="10.0"/>
<inertia ixx="0.5" ixy="0.0" ixz="0.0"
iyy="0.5" iyz="0.0" izz="0.5"/>
</inertial>
<visual name="top_surface">
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<geometry><box size="1.28 1.08 0.02"/></geometry>
<material name="table_top">
<color rgba="0.92 0.92 0.92 1.0"/>
</material>
</visual>
<visual name="border_front">
<origin xyz="0.0 0.53 0.005" rpy="0.0 0.0 0.0"/>
<geometry><box size="1.28 0.02 0.014"/></geometry>
<material name="orange_border"><color rgba="1.0 0.38 0.0 1.0"/></material>
</visual>
<visual name="border_back">
<origin xyz="0.0 -0.53 0.005" rpy="0.0 0.0 0.0"/>
<geometry><box size="1.28 0.02 0.014"/></geometry>
<material name="orange_border"><color rgba="1.0 0.38 0.0 1.0"/></material>
</visual>
<visual name="border_left">
<origin xyz="0.63 0.0 0.005" rpy="0.0 0.0 0.0"/>
<geometry><box size="0.02 1.04 0.014"/></geometry>
<material name="orange_border"><color rgba="1.0 0.38 0.0 1.0"/></material>
</visual>
<visual name="border_right">
<origin xyz="-0.63 0.0 0.005" rpy="0.0 0.0 0.0"/>
<geometry><box size="0.02 1.04 0.014"/></geometry>
<material name="orange_border"><color rgba="1.0 0.38 0.0 1.0"/></material>
</visual>
<collision>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<geometry><box size="1.28 1.08 0.02"/></geometry>
</collision>
</link>
<gazebo reference="wood_palete">
<visual name="top_surface">
<material>
<ambient>0.92 0.92 0.92 1</ambient>
<diffuse>0.95 0.95 0.95 1</diffuse>
<specular>0.1 0.1 0.1 1</specular>
</material>
</visual>
<visual name="border_front">
<material><ambient>1.0 0.38 0.0 1</ambient><diffuse>1.0 0.38 0.0 1</diffuse><specular>0.3 0.15 0.0 1</specular></material>
</visual>
<visual name="border_back">
<material><ambient>1.0 0.38 0.0 1</ambient><diffuse>1.0 0.38 0.0 1</diffuse><specular>0.3 0.15 0.0 1</specular></material>
</visual>
<visual name="border_left">
<material><ambient>1.0 0.38 0.0 1</ambient><diffuse>1.0 0.38 0.0 1</diffuse><specular>0.3 0.15 0.0 1</specular></material>
</visual>
<visual name="border_right">
<material><ambient>1.0 0.38 0.0 1</ambient><diffuse>1.0 0.38 0.0 1</diffuse><specular>0.3 0.15 0.0 1</specular></material>
</visual>
<collision>
<surface>
<friction><ode><mu>0.3</mu><mu2>0.3</mu2></ode></friction>
</surface>
</collision>
</gazebo>
<link name="robot_palete">
<inertial>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<mass value="3"/>
<inertia ixx="0.1" ixy="0.0" ixz="0.0"
iyy="0.1" iyz="0.0" izz="0.1"/>
</inertial>
<visual>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<geometry>
<mesh filename="package://iiwa_description/resource/meshes/table/PlateUnderRobot.obj"/>
</geometry>
<material name="table_metal"><color rgba="0.57 0.57 0.57 1.0"/></material>
</visual>
<collision>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<geometry><box size="0.47 0.4 0.01"/></geometry>
</collision>
</link>
<gazebo reference="robot_palete">
<visual>
<material>
<ambient>0.55 0.55 0.58 1</ambient>
<diffuse>0.65 0.65 0.68 1</diffuse>
<specular>0.3 0.3 0.3 1</specular>
<pbr><metal><roughness>0.6</roughness><metalness>0.4</metalness></metal></pbr>
</material>
</visual>
</gazebo>
<link name="cabinet_frame">
<inertial>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<mass value="5.0"/>
<inertia ixx="0.2" ixy="0.0" ixz="0.0"
iyy="0.2" iyz="0.0" izz="0.2"/>
</inertial>
<visual>
<origin xyz="0.0 0.0 0.0" rpy="1.57 0.0 1.57"/>
<geometry>
<mesh filename="package://iiwa_description/resource/meshes/table/CabinetFrame.obj"/>
</geometry>
<material name="table_metal"><color rgba="0.57 0.57 0.57 1.0"/></material>
</visual>
</link>
<gazebo reference="cabinet_frame">
<visual>
<material>
<ambient>0.55 0.55 0.58 1</ambient>
<diffuse>0.65 0.65 0.68 1</diffuse>
<specular>0.3 0.3 0.3 1</specular>
<pbr><metal><roughness>0.6</roughness><metalness>0.4</metalness></metal></pbr>
</material>
</visual>
</gazebo>
<link name="cabinet">
<inertial>
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<mass value="15.0"/>
<inertia ixx="0.5" ixy="0.0" ixz="0.0"
iyy="0.5" iyz="0.0" izz="0.5"/>
</inertial>
<visual>
<origin xyz="0.0 0.31 0.0" rpy="1.57 0.0 -1.57"/>
<geometry>
<mesh filename="package://iiwa_description/resource/meshes/table/ElectricCabinet.obj"/>
</geometry>
<material name="cabinet_dark"><color rgba="0.2 0.2 0.22 1.0"/></material>
</visual>
<collision>
<origin xyz="-0.12 0 0.4" rpy="1.57 0.0 1.57"/>
<geometry><box size="0.65 0.83 0.32"/></geometry>
</collision>
</link>
<gazebo reference="cabinet">
<visual>
<material>
<ambient>0.18 0.18 0.20 1</ambient>
<diffuse>0.22 0.22 0.24 1</diffuse>
<specular>0.5 0.5 0.5 1</specular>
<pbr><metal><roughness>0.3</roughness><metalness>0.7</metalness></metal></pbr>
</material>
</visual>
</gazebo>
<!-- ═══ Джойнты ═══ -->
<joint name="world_frame" type="fixed">
<origin xyz="0.0 0.0 0.0" rpy="0.0 0.0 0.0"/>
<parent link="world"/>
<child link="table_frame"/>
</joint>
<joint name="frame_palete" type="fixed">
<origin xyz="0.0 0.0 0.79" rpy="0.0 0.0 0.0"/>
<parent link="table_frame"/>
<child link="wood_palete"/>
</joint>
<joint name="paletes" type="fixed">
<origin xyz="-0.263 0.0 0.02" rpy="0.0 0.0 0.0"/>
<parent link="wood_palete"/>
<child link="robot_palete"/>
</joint>
<joint name="frames" type="fixed">
<origin xyz="-0.66 0.0 0.09" rpy="0.0 0.0 0.0"/>
<parent link="table_frame"/>
<child link="cabinet_frame"/>
</joint>
<joint name="cabinets" type="fixed">
<origin xyz="-0.022 0 0.2" rpy="0.0 0.0 0.0"/>
<parent link="cabinet_frame"/>
<child link="cabinet"/>
</joint>
</robot>
+106
View File
@@ -0,0 +1,106 @@
<sdf version='1.10'>
<world name='empty'>
<physics name='1ms' type='ignored'>
<max_step_size>0.001</max_step_size>
<real_time_factor>1</real_time_factor>
<real_time_update_rate>1000</real_time_update_rate>
</physics>
<plugin name='gz::sim::systems::Physics' filename='gz-sim-physics-system'/>
<plugin name='gz::sim::systems::UserCommands' filename='gz-sim-user-commands-system'/>
<plugin name='gz::sim::systems::SceneBroadcaster' filename='gz-sim-scene-broadcaster-system'/>
<plugin name='gz::sim::systems::Contact' filename='gz-sim-contact-system'/>
<plugin filename="WorldControl" name="World control">
<gz-gui>
<title>Kuka iiwa world</title>
<property type="string" key="state">floating</property>
<anchors target="3D View">
<line own="left" target="left"/>
<line own="bottom" target="bottom"/>
</anchors>
</gz-gui>
<play_pause>true</play_pause>
<step>false</step>
<start_paused>false</start_paused>
</plugin>
<gravity>0 0 -9.8000000000000007</gravity>
<magnetic_field>5.5644999999999998e-06 2.2875799999999999e-05 -4.2388400000000002e-05</magnetic_field>
<atmosphere type='adiabatic'/>
<scene>
<ambient>0.400000006 0.400000006 0.400000006 1</ambient>
<background>0.699999988 0.699999988 0.699999988 1</background>
<shadows>true</shadows>
</scene>
<model name='ground_plane'>
<static>true</static>
<link name='link'>
<collision name='collision'>
<geometry>
<plane>
<normal>0 0 1</normal>
<size>100 100</size>
</plane>
</geometry>
<surface>
<friction>
<ode/>
</friction>
<bounce/>
<contact/>
</surface>
</collision>
<visual name='visual'>
<geometry>
<plane>
<normal>0 0 1</normal>
<size>100 100</size>
</plane>
</geometry>
<material>
<ambient>0.800000012 0.800000012 0.800000012 1</ambient>
<diffuse>0.800000012 0.800000012 0.800000012 1</diffuse>
<specular>0.800000012 0.800000012 0.800000012 1</specular>
</material>
</visual>
<pose>0 0 0 0 0 0</pose>
<inertial>
<pose>0 0 0 0 0 0</pose>
<mass>1</mass>
<inertia>
<ixx>1</ixx>
<ixy>0</ixy>
<ixz>0</ixz>
<iyy>1</iyy>
<iyz>0</iyz>
<izz>1</izz>
</inertia>
</inertial>
<enable_wind>false</enable_wind>
</link>
<pose>0 0 0 0 0 0</pose>
<self_collide>false</self_collide>
</model>
<light name='sun' type='directional'>
<pose>0 0 10 0 0 0</pose>
<cast_shadows>true</cast_shadows>
<intensity>1</intensity>
<direction>-0.5 0.10000000000000001 -0.90000000000000002</direction>
<diffuse>0.800000012 0.800000012 0.800000012 1</diffuse>
<specular>0.200000003 0.200000003 0.200000003 1</specular>
<attenuation>
<range>1000</range>
<linear>0.01</linear>
<constant>0.90000000000000002</constant>
<quadratic>0.001</quadratic>
</attenuation>
<spot>
<inner_angle>0</inner_angle>
<outer_angle>0</outer_angle>
<falloff>0</falloff>
</spot>
</light>
</world>
</sdf>