@@ -0,0 +1,10 @@ | |||
moveit_setup_assistant_config: | |||
urdf: | |||
package: hexapod_robot | |||
relative_path: config/urdf/hexapod_robot.urdf.xacro | |||
srdf: | |||
relative_path: config/hexapod_robot.srdf | |||
package_settings: | |||
author_name: Marcus Grieger | |||
author_email: marcus@grieger.xyz | |||
generated_timestamp: 1707046355 |
@@ -11,6 +11,8 @@ find_package(hardware_interface REQUIRED) | |||
find_package(pluginlib REQUIRED) | |||
find_package(rclcpp REQUIRED) | |||
find_package(rclcpp_lifecycle REQUIRED) | |||
find_package(geometry_msgs REQUIRED) | |||
find_package(rosidl_default_generators REQUIRED) | |||
# Build hexapod_robot_interfaces | |||
@@ -21,6 +23,7 @@ set(srv_files | |||
rosidl_generate_interfaces(${PROJECT_NAME} | |||
${srv_files} | |||
DEPENDENCIES geometry_msgs | |||
) | |||
# Build hexapod_robot_ik_server | |||
@@ -70,17 +73,17 @@ pluginlib_export_plugin_description_file(hardware_interface hexapod_robot.xml) | |||
install( | |||
DIRECTORY description | |||
DESTINATION share/hexapod_robot | |||
DIRECTORY config launch | |||
DESTINATION share/${PROJECT_NAME} | |||
) | |||
install( | |||
DIRECTORY bringup/launch bringup/config | |||
DESTINATION share/hexapod_robot | |||
FILES .setup_assistant DESTINATION share/${PROJECT_NAME} | |||
) | |||
install(TARGETS hexapod_robot_ik_server | |||
DESTINATION lib/hexapod_robot | |||
DESTINATION lib/${PROJECT_NAME} | |||
) | |||
install(TARGETS hexapod_robot_hwi | |||
@@ -1,58 +0,0 @@ | |||
controller_manager: | |||
ros__parameters: | |||
update_rate: 50 | |||
joint_state_broadcaster: | |||
type: joint_state_broadcaster/JointStateBroadcaster | |||
joint_trajectory_controller: | |||
type: joint_trajectory_controller/JointTrajectoryController | |||
forward_position_controller: | |||
type: forward_command_controller/ForwardCommandController | |||
forward_position_controller: | |||
ros__parameters: | |||
joints: | |||
- t3_joint | |||
interface_name: position | |||
joint_trajectory_controller: | |||
ros__parameters: | |||
joints: | |||
- c1_joint | |||
- f1_joint | |||
- t1_joint | |||
- c2_joint | |||
- f2_joint | |||
- t2_joint | |||
- c3_joint | |||
- f3_joint | |||
- t3_joint | |||
- c4_joint | |||
- f4_joint | |||
- t4_joint | |||
- c5_joint | |||
- f5_joint | |||
- t5_joint | |||
- c6_joint | |||
- f6_joint | |||
- t6_joint | |||
command_interfaces: | |||
- position | |||
state_interfaces: | |||
- position | |||
action_monitor_rate: 20.0 | |||
allow_partial_joints_goal: false | |||
@@ -1,327 +0,0 @@ | |||
Panels: | |||
- Class: rviz_common/Displays | |||
Help Height: 70 | |||
Name: Displays | |||
Property Tree Widget: | |||
Expanded: | |||
- /TF1 | |||
Splitter Ratio: 0.5 | |||
Tree Height: 438 | |||
- Class: rviz_common/Views | |||
Expanded: | |||
- /Current View1 | |||
Name: Views | |||
Splitter Ratio: 0.5 | |||
Visualization Manager: | |||
Class: "" | |||
Displays: | |||
- Alpha: 0.5 | |||
Cell Size: 1 | |||
Class: rviz_default_plugins/Grid | |||
Color: 160; 160; 164 | |||
Enabled: true | |||
Line Style: | |||
Line Width: 0.029999999329447746 | |||
Value: Lines | |||
Name: Grid | |||
Normal Cell Count: 0 | |||
Offset: | |||
X: 0 | |||
Y: 0 | |||
Z: 0 | |||
Plane: XY | |||
Plane Cell Count: 10 | |||
Reference Frame: <Fixed Frame> | |||
Value: true | |||
- Alpha: 0.800000011920929 | |||
Class: rviz_default_plugins/RobotModel | |||
Collision Enabled: false | |||
Description File: "" | |||
Description Source: Topic | |||
Description Topic: | |||
Depth: 5 | |||
Durability Policy: Volatile | |||
History Policy: Keep Last | |||
Reliability Policy: Reliable | |||
Value: /robot_description | |||
Enabled: true | |||
Links: | |||
All Links Enabled: true | |||
Expand Joint Details: false | |||
Expand Link Details: false | |||
Expand Tree: false | |||
Link Tree Style: Links in Alphabetic Order | |||
base_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c1_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c2_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c3_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c4_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c5_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c6_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e1_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e2_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e3_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e4_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e5_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e6_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f1_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f2_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f3_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f4_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f5_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f6_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t1_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t2_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t3_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t4_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t5_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t6_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
Mass Properties: | |||
Inertia: false | |||
Mass: false | |||
Name: RobotModel | |||
TF Prefix: "" | |||
Update Interval: 0 | |||
Value: true | |||
Visual Enabled: true | |||
- Class: rviz_default_plugins/TF | |||
Enabled: true | |||
Frame Timeout: 15 | |||
Frames: | |||
All Enabled: true | |||
base_link: | |||
Value: true | |||
c1_link: | |||
Value: true | |||
c2_link: | |||
Value: true | |||
c3_link: | |||
Value: true | |||
c4_link: | |||
Value: true | |||
c5_link: | |||
Value: true | |||
c6_link: | |||
Value: true | |||
e1_link: | |||
Value: true | |||
e2_link: | |||
Value: true | |||
e3_link: | |||
Value: true | |||
e4_link: | |||
Value: true | |||
e5_link: | |||
Value: true | |||
e6_link: | |||
Value: true | |||
f1_link: | |||
Value: true | |||
f2_link: | |||
Value: true | |||
f3_link: | |||
Value: true | |||
f4_link: | |||
Value: true | |||
f5_link: | |||
Value: true | |||
f6_link: | |||
Value: true | |||
t1_link: | |||
Value: true | |||
t2_link: | |||
Value: true | |||
t3_link: | |||
Value: true | |||
t4_link: | |||
Value: true | |||
t5_link: | |||
Value: true | |||
t6_link: | |||
Value: true | |||
Marker Scale: 0.30000001192092896 | |||
Name: TF | |||
Show Arrows: true | |||
Show Axes: true | |||
Show Names: false | |||
Tree: | |||
base_link: | |||
c1_link: | |||
f1_link: | |||
t1_link: | |||
e1_link: | |||
{} | |||
c2_link: | |||
f2_link: | |||
t2_link: | |||
e2_link: | |||
{} | |||
c3_link: | |||
f3_link: | |||
t3_link: | |||
e3_link: | |||
{} | |||
c4_link: | |||
f4_link: | |||
t4_link: | |||
e4_link: | |||
{} | |||
c5_link: | |||
f5_link: | |||
t5_link: | |||
e5_link: | |||
{} | |||
c6_link: | |||
f6_link: | |||
t6_link: | |||
e6_link: | |||
{} | |||
Update Interval: 0 | |||
Value: true | |||
Enabled: true | |||
Global Options: | |||
Background Color: 48; 48; 48 | |||
Fixed Frame: base_link | |||
Frame Rate: 30 | |||
Name: root | |||
Tools: | |||
- Class: rviz_default_plugins/MoveCamera | |||
Transformation: | |||
Current: | |||
Class: rviz_default_plugins/TF | |||
Value: true | |||
Views: | |||
Current: | |||
Class: rviz_default_plugins/Orbit | |||
Distance: 0.8691349625587463 | |||
Enable Stereo Rendering: | |||
Stereo Eye Separation: 0.05999999865889549 | |||
Stereo Focal Distance: 1 | |||
Swap Stereo Eyes: false | |||
Value: false | |||
Focal Point: | |||
X: 0 | |||
Y: 0 | |||
Z: 0 | |||
Focal Shape Fixed Size: true | |||
Focal Shape Size: 0.05000000074505806 | |||
Invert Z Axis: false | |||
Name: Current View | |||
Near Clip Distance: 0.009999999776482582 | |||
Pitch: 0.559999942779541 | |||
Target Frame: <Fixed Frame> | |||
Value: Orbit (rviz) | |||
Yaw: 4.6249775886535645 | |||
Saved: ~ | |||
Window Geometry: | |||
Displays: | |||
collapsed: false | |||
Height: 666 | |||
Hide Left Dock: false | |||
Hide Right Dock: false | |||
QMainWindow State: 000000ff00000000fd0000000100000000000001560000023cfc0200000002fb000000100044006900730070006c006100790073010000003f0000023c000000cc00fffffffb0000000a0056006900650077007300000001d2000000a9000000a900ffffff000001ff0000023c00000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000 | |||
Views: | |||
collapsed: false | |||
Width: 859 | |||
X: 0 | |||
Y: 32 |
@@ -0,0 +1,669 @@ | |||
Panels: | |||
- Class: rviz_common/Displays | |||
Help Height: 70 | |||
Name: Displays | |||
Property Tree Widget: | |||
Expanded: | |||
- /MotionPlanning1 | |||
Splitter Ratio: 0.5 | |||
Tree Height: 378 | |||
- Class: rviz_common/Help | |||
Name: Help | |||
- Class: rviz_common/Views | |||
Expanded: | |||
- /Current View1 | |||
Name: Views | |||
Splitter Ratio: 0.5 | |||
Visualization Manager: | |||
Class: "" | |||
Displays: | |||
- Alpha: 0.5 | |||
Cell Size: 1 | |||
Class: rviz_default_plugins/Grid | |||
Color: 160; 160; 164 | |||
Enabled: true | |||
Line Style: | |||
Line Width: 0.029999999329447746 | |||
Value: Lines | |||
Name: Grid | |||
Normal Cell Count: 0 | |||
Offset: | |||
X: 0 | |||
Y: 0 | |||
Z: 0 | |||
Plane: XY | |||
Plane Cell Count: 10 | |||
Reference Frame: <Fixed Frame> | |||
Value: true | |||
- Acceleration_Scaling_Factor: 0.1 | |||
Class: moveit_rviz_plugin/MotionPlanning | |||
Enabled: true | |||
Move Group Namespace: "" | |||
MoveIt_Allow_Approximate_IK: false | |||
MoveIt_Allow_External_Program: false | |||
MoveIt_Allow_Replanning: false | |||
MoveIt_Allow_Sensor_Positioning: false | |||
MoveIt_Planning_Attempts: 10 | |||
MoveIt_Planning_Time: 5 | |||
MoveIt_Use_Cartesian_Path: false | |||
MoveIt_Use_Constraint_Aware_IK: false | |||
MoveIt_Workspace: | |||
Center: | |||
X: 0 | |||
Y: 0 | |||
Z: 0 | |||
Size: | |||
X: 2 | |||
Y: 2 | |||
Z: 2 | |||
Name: MotionPlanning | |||
Planned Path: | |||
Color Enabled: false | |||
Interrupt Display: false | |||
Links: | |||
All Links Enabled: true | |||
Expand Joint Details: false | |||
Expand Link Details: false | |||
Expand Tree: false | |||
Link Tree Style: Links in Alphabetic Order | |||
base_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c1_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c2_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c3_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c4_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c5_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c6_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e1_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e2_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e3_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e4_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e5_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e6_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f1_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f2_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f3_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f4_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f5_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f6_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t1_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t2_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t3_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t4_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t5_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t6_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
Loop Animation: true | |||
Robot Alpha: 0.5 | |||
Robot Color: 150; 50; 150 | |||
Show Robot Collision: false | |||
Show Robot Visual: true | |||
Show Trail: false | |||
State Display Time: 0.05 s | |||
Trail Step Size: 1 | |||
Trajectory Topic: display_planned_path | |||
Use Sim Time: false | |||
Planning Metrics: | |||
Payload: 1 | |||
Show Joint Torques: false | |||
Show Manipulability: false | |||
Show Manipulability Index: false | |||
Show Weight Limit: false | |||
TextHeight: 0.07999999821186066 | |||
Planning Request: | |||
Colliding Link Color: 255; 0; 0 | |||
Goal State Alpha: 1 | |||
Goal State Color: 250; 128; 0 | |||
Interactive Marker Size: 0.05000000074505806 | |||
Joint Violation Color: 255; 0; 255 | |||
Planning Group: e1_group | |||
Query Goal State: true | |||
Query Start State: false | |||
Show Workspace: false | |||
Start State Alpha: 1 | |||
Start State Color: 0; 255; 0 | |||
Planning Scene Topic: monitored_planning_scene | |||
Robot Description: robot_description | |||
Scene Geometry: | |||
Scene Alpha: 1 | |||
Scene Color: 50; 230; 50 | |||
Scene Display Time: 0.009999999776482582 | |||
Show Scene Geometry: true | |||
Voxel Coloring: Z-Axis | |||
Voxel Rendering: Occupied Voxels | |||
Scene Robot: | |||
Attached Body Color: 150; 50; 150 | |||
Links: | |||
All Links Enabled: true | |||
Expand Joint Details: false | |||
Expand Link Details: false | |||
Expand Tree: false | |||
Link Tree Style: Links in Alphabetic Order | |||
base_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c1_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c2_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c3_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c4_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c5_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c6_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e1_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e2_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e3_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e4_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e5_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e6_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f1_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f2_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f3_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f4_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f5_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f6_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t1_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t2_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t3_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t4_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t5_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t6_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
Robot Alpha: 0.5 | |||
Show Robot Collision: false | |||
Show Robot Visual: true | |||
Value: true | |||
Velocity_Scaling_Factor: 0.1 | |||
- Class: moveit_rviz_plugin/Trajectory | |||
Color Enabled: false | |||
Enabled: true | |||
Interrupt Display: false | |||
Links: | |||
All Links Enabled: true | |||
Expand Joint Details: false | |||
Expand Link Details: false | |||
Expand Tree: false | |||
Link Tree Style: Links in Alphabetic Order | |||
base_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c1_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c2_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c3_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c4_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c5_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
c6_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e1_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e2_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e3_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e4_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e5_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
e6_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f1_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f2_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f3_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f4_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f5_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
f6_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t1_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t2_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t3_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t4_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t5_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
t6_link: | |||
Alpha: 1 | |||
Show Axes: false | |||
Show Trail: false | |||
Value: true | |||
Loop Animation: false | |||
Name: Trajectory | |||
Robot Alpha: 0.5 | |||
Robot Color: 150; 50; 150 | |||
Robot Description: robot_description | |||
Show Robot Collision: false | |||
Show Robot Visual: true | |||
Show Trail: false | |||
State Display Time: 3x | |||
Trail Step Size: 1 | |||
Trajectory Topic: /display_planned_path | |||
Use Sim Time: false | |||
Value: true | |||
- Class: rviz_default_plugins/TF | |||
Enabled: true | |||
Frame Timeout: 15 | |||
Frames: | |||
All Enabled: true | |||
base_link: | |||
Value: true | |||
c1_link: | |||
Value: true | |||
c2_link: | |||
Value: true | |||
c3_link: | |||
Value: true | |||
c4_link: | |||
Value: true | |||
c5_link: | |||
Value: true | |||
c6_link: | |||
Value: true | |||
e1_link: | |||
Value: true | |||
e2_link: | |||
Value: true | |||
e3_link: | |||
Value: true | |||
e4_link: | |||
Value: true | |||
e5_link: | |||
Value: true | |||
e6_link: | |||
Value: true | |||
f1_link: | |||
Value: true | |||
f2_link: | |||
Value: true | |||
f3_link: | |||
Value: true | |||
f4_link: | |||
Value: true | |||
f5_link: | |||
Value: true | |||
f6_link: | |||
Value: true | |||
t1_link: | |||
Value: true | |||
t2_link: | |||
Value: true | |||
t3_link: | |||
Value: true | |||
t4_link: | |||
Value: true | |||
t5_link: | |||
Value: true | |||
t6_link: | |||
Value: true | |||
Marker Scale: 0.10000000149011612 | |||
Name: TF | |||
Show Arrows: true | |||
Show Axes: true | |||
Show Names: false | |||
Tree: | |||
base_link: | |||
c1_link: | |||
f1_link: | |||
t1_link: | |||
e1_link: | |||
{} | |||
c2_link: | |||
f2_link: | |||
t2_link: | |||
e2_link: | |||
{} | |||
c3_link: | |||
f3_link: | |||
t3_link: | |||
e3_link: | |||
{} | |||
c4_link: | |||
f4_link: | |||
t4_link: | |||
e4_link: | |||
{} | |||
c5_link: | |||
f5_link: | |||
t5_link: | |||
e5_link: | |||
{} | |||
c6_link: | |||
f6_link: | |||
t6_link: | |||
e6_link: | |||
{} | |||
Update Interval: 0 | |||
Value: true | |||
Enabled: true | |||
Global Options: | |||
Background Color: 48; 48; 48 | |||
Fixed Frame: base_link | |||
Frame Rate: 30 | |||
Name: root | |||
Tools: | |||
- Class: rviz_default_plugins/Interact | |||
Hide Inactive Objects: true | |||
- Class: rviz_default_plugins/MoveCamera | |||
- Class: rviz_default_plugins/Select | |||
Transformation: | |||
Current: | |||
Class: rviz_default_plugins/TF | |||
Value: true | |||
Views: | |||
Current: | |||
Class: rviz_default_plugins/Orbit | |||
Distance: 0.6329568028450012 | |||
Enable Stereo Rendering: | |||
Stereo Eye Separation: 0.05999999865889549 | |||
Stereo Focal Distance: 1 | |||
Swap Stereo Eyes: false | |||
Value: false | |||
Focal Point: | |||
X: -0.07758110761642456 | |||
Y: 0.08254023641347885 | |||
Z: 0.09184139221906662 | |||
Focal Shape Fixed Size: true | |||
Focal Shape Size: 0.05000000074505806 | |||
Invert Z Axis: false | |||
Name: Current View | |||
Near Clip Distance: 0.009999999776482582 | |||
Pitch: 0.5400001406669617 | |||
Target Frame: base_link | |||
Value: Orbit (rviz_default_plugins) | |||
Yaw: 2.3151493072509766 | |||
Saved: ~ | |||
Window Geometry: | |||
" - Trajectory Slider": | |||
collapsed: false | |||
Displays: | |||
collapsed: false | |||
Height: 1287 | |||
Help: | |||
collapsed: false | |||
Hide Left Dock: false | |||
Hide Right Dock: false | |||
MotionPlanning: | |||
collapsed: false | |||
MotionPlanning - Trajectory Slider: | |||
collapsed: false | |||
QMainWindow State: 000000ff00000000fd0000000100000000000002b4000004a9fc0200000006fb00000044004d006f00740069006f006e0050006c0061006e006e0069006e00670020002d0020005400720061006a006500630074006f0072007900200053006c00690064006500720000000000ffffffff0000004400fffffffb000000100044006900730070006c006100790073010000003f00000200000000cc00fffffffb0000001c004d006f00740069006f006e0050006c0061006e006e0069006e00670100000245000001a10000019600fffffffb0000000800480065006c0070000000029a0000006e0000006f00fffffffb0000000a0056006900650077007301000003ec000000fc000000a900fffffffb000000280020002d0020005400720061006a006500630074006f0072007900200053006c00690064006500720000000000ffffffff0000004400ffffff0000063e000004a900000004000000040000000800000008fc0000000100000002000000010000000a0054006f006f006c00730100000000ffffffff0000000000000000 | |||
Views: | |||
collapsed: false | |||
Width: 2296 | |||
X: 0 | |||
Y: 32 |
@@ -0,0 +1,21 @@ | |||
<?xml version="1.0" encoding="UTF-8"?> | |||
<robot name="hexapod_robot"> | |||
<group name="e1_group"> | |||
<chain base_link="base_link" tip_link="e1_link"/> | |||
</group> | |||
<group name="e2_group"> | |||
<chain base_link="base_link" tip_link="e2_link"/> | |||
</group> | |||
<group name="e3_group"> | |||
<chain base_link="base_link" tip_link="e3_link"/> | |||
</group> | |||
<group name="e4_group"> | |||
<chain base_link="base_link" tip_link="e4_link"/> | |||
</group> | |||
<group name="e5_group"> | |||
<chain base_link="base_link" tip_link="e5_link"/> | |||
</group> | |||
<group name="e6_group"> | |||
<chain base_link="base_link" tip_link="e6_link"/> | |||
</group> | |||
</robot> |
@@ -0,0 +1,7 @@ | |||
# joint_limits.yaml allows the dynamics properties specified in the URDF to be overwritten or augmented as needed | |||
# For beginners, we downscale velocity and acceleration limits. | |||
# You can always specify higher scaling factors (<= 1.0) in your motion requests. # Increase the values below to 1.0 to always move at maximum speed. | |||
default_velocity_scaling_factor: 0.1 | |||
default_acceleration_scaling_factor: 0.1 | |||
@@ -0,0 +1,77 @@ | |||
e1_group: | |||
kinematics_solver: pick_ik/PickIkPlugin | |||
kinematics_solver_timeout: 0.05 | |||
kinematics_solver_attempts: 3 | |||
mode: global | |||
position_scale: 1.0 | |||
rotation_scale: 0.0 | |||
position_threshold: 0.001 | |||
orientation_threshold: 0.01 | |||
cost_threshold: 0.001 | |||
minimal_displacement_weight: 0.0 | |||
gd_step_size: 0.0001 | |||
e2_group: | |||
kinematics_solver: pick_ik/PickIkPlugin | |||
kinematics_solver_timeout: 0.05 | |||
kinematics_solver_attempts: 3 | |||
mode: global | |||
position_scale: 1.0 | |||
rotation_scale: 0.0 | |||
position_threshold: 0.001 | |||
orientation_threshold: 0.01 | |||
cost_threshold: 0.001 | |||
minimal_displacement_weight: 0.0 | |||
gd_step_size: 0.0001 | |||
e3_group: | |||
kinematics_solver: pick_ik/PickIkPlugin | |||
kinematics_solver_timeout: 0.05 | |||
kinematics_solver_attempts: 3 | |||
mode: global | |||
position_scale: 1.0 | |||
rotation_scale: 0.0 | |||
position_threshold: 0.001 | |||
orientation_threshold: 0.01 | |||
cost_threshold: 0.001 | |||
minimal_displacement_weight: 0.0 | |||
gd_step_size: 0.0001 | |||
e4_group: | |||
kinematics_solver: pick_ik/PickIkPlugin | |||
kinematics_solver_timeout: 0.05 | |||
kinematics_solver_attempts: 3 | |||
mode: global | |||
position_scale: 1.0 | |||
rotation_scale: 0.0 | |||
position_threshold: 0.001 | |||
orientation_threshold: 0.01 | |||
cost_threshold: 0.001 | |||
minimal_displacement_weight: 0.0 | |||
gd_step_size: 0.0001 | |||
e5_group: | |||
kinematics_solver: pick_ik/PickIkPlugin | |||
kinematics_solver_timeout: 0.05 | |||
kinematics_solver_attempts: 3 | |||
mode: global | |||
position_scale: 1.0 | |||
rotation_scale: 0.0 | |||
position_threshold: 0.001 | |||
orientation_threshold: 0.01 | |||
cost_threshold: 0.001 | |||
minimal_displacement_weight: 0.0 | |||
gd_step_size: 0.0001 | |||
e6_group: | |||
kinematics_solver: pick_ik/PickIkPlugin | |||
kinematics_solver_timeout: 0.05 | |||
kinematics_solver_attempts: 3 | |||
mode: global | |||
position_scale: 1.0 | |||
rotation_scale: 0.0 | |||
position_threshold: 0.001 | |||
orientation_threshold: 0.01 | |||
cost_threshold: 0.001 | |||
minimal_displacement_weight: 0.0 | |||
gd_step_size: 0.0001 |
@@ -0,0 +1,81 @@ | |||
# MoveIt uses this configuration for controller management | |||
moveit_controller_manager: moveit_simple_controller_manager/MoveItSimpleControllerManager | |||
moveit_simple_controller_manager: | |||
controller_names: | |||
- e1_group_controller | |||
- e2_group_controller | |||
- e3_group_controller | |||
- e4_group_controller | |||
- e5_group_controller | |||
- e6_group_controller | |||
e1_group_controller: | |||
type: FollowJointTrajectory | |||
action_ns: follow_joint_trajectory | |||
default: true | |||
joints: | |||
- c1_joint | |||
- f1_joint | |||
- t1_joint | |||
action_ns: follow_joint_trajectory | |||
default: true | |||
e2_group_controller: | |||
type: FollowJointTrajectory | |||
action_ns: follow_joint_trajectory | |||
default: true | |||
joints: | |||
- c2_joint | |||
- f2_joint | |||
- t2_joint | |||
action_ns: follow_joint_trajectory | |||
default: true | |||
e3_group_controller: | |||
type: FollowJointTrajectory | |||
action_ns: follow_joint_trajectory | |||
default: true | |||
joints: | |||
- c3_joint | |||
- f3_joint | |||
- t3_joint | |||
action_ns: follow_joint_trajectory | |||
default: true | |||
e4_group_controller: | |||
type: FollowJointTrajectory | |||
action_ns: follow_joint_trajectory | |||
default: true | |||
joints: | |||
- c4_joint | |||
- f4_joint | |||
- t4_joint | |||
action_ns: follow_joint_trajectory | |||
default: true | |||
e5_group_controller: | |||
type: FollowJointTrajectory | |||
action_ns: follow_joint_trajectory | |||
default: true | |||
joints: | |||
- c5_joint | |||
- f5_joint | |||
- t5_joint | |||
action_ns: follow_joint_trajectory | |||
default: true | |||
e6_group_controller: | |||
type: FollowJointTrajectory | |||
action_ns: follow_joint_trajectory | |||
default: true | |||
joints: | |||
- c6_joint | |||
- f6_joint | |||
- t6_joint | |||
action_ns: follow_joint_trajectory | |||
default: true | |||
@@ -0,0 +1,6 @@ | |||
# Limits for the Pilz planner | |||
cartesian_limits: | |||
max_trans_vel: 1.0 | |||
max_trans_acc: 2.25 | |||
max_trans_dec: -5.0 | |||
max_rot_vel: 1.57 |
@@ -0,0 +1,103 @@ | |||
controller_manager: | |||
ros__parameters: | |||
update_rate: 50 | |||
joint_state_broadcaster: | |||
type: joint_state_broadcaster/JointStateBroadcaster | |||
e1_group_controller: | |||
type: joint_trajectory_controller/JointTrajectoryController | |||
e2_group_controller: | |||
type: joint_trajectory_controller/JointTrajectoryController | |||
e3_group_controller: | |||
type: joint_trajectory_controller/JointTrajectoryController | |||
e4_group_controller: | |||
type: joint_trajectory_controller/JointTrajectoryController | |||
e5_group_controller: | |||
type: joint_trajectory_controller/JointTrajectoryController | |||
e6_group_controller: | |||
type: joint_trajectory_controller/JointTrajectoryController | |||
e1_group_controller: | |||
ros__parameters: | |||
joints: | |||
- c1_joint | |||
- f1_joint | |||
- t1_joint | |||
command_interfaces: | |||
- position | |||
state_interfaces: | |||
- position | |||
e2_group_controller: | |||
ros__parameters: | |||
joints: | |||
- c2_joint | |||
- f2_joint | |||
- t2_joint | |||
command_interfaces: | |||
- position | |||
state_interfaces: | |||
- position | |||
e3_group_controller: | |||
ros__parameters: | |||
joints: | |||
- c3_joint | |||
- f3_joint | |||
- t3_joint | |||
command_interfaces: | |||
- position | |||
state_interfaces: | |||
- position | |||
e4_group_controller: | |||
ros__parameters: | |||
joints: | |||
- c4_joint | |||
- f4_joint | |||
- t4_joint | |||
command_interfaces: | |||
- position | |||
state_interfaces: | |||
- position | |||
e5_group_controller: | |||
ros__parameters: | |||
joints: | |||
- c5_joint | |||
- f5_joint | |||
- t5_joint | |||
command_interfaces: | |||
- position | |||
state_interfaces: | |||
- position | |||
e6_group_controller: | |||
ros__parameters: | |||
joints: | |||
- c6_joint | |||
- f6_joint | |||
- t6_joint | |||
command_interfaces: | |||
- position | |||
state_interfaces: | |||
- position |
@@ -1,7 +1,7 @@ | |||
<?xml version="1.0"?> | |||
<robot xmlns:xacro="http://www.ros.org/wiki/xacro" name="hexapod_robot"> | |||
<xacro:include filename="$(find hexapod_robot)/description/urdf/hexapod_robot_materials.xacro"/> | |||
<xacro:include filename="$(find hexapod_robot)/description/urdf/hexapod_robot_macros.xacro"/> | |||
<xacro:include filename="$(find hexapod_robot)/config/urdf/hexapod_robot_materials.xacro"/> | |||
<xacro:include filename="$(find hexapod_robot)/config/urdf/hexapod_robot_macros.xacro"/> | |||
<link name="base_link"> | |||
<xacro:create_frame_plate z_offset="-0.034"/> | |||
@@ -23,6 +23,6 @@ | |||
<xacro:create_leg number="5" side="r" xy_offset=" 0.060 0.000"/> | |||
<xacro:create_leg number="6" side="r" xy_offset=" 0.040 0.080"/> | |||
<xacro:include filename="$(find hexapod_robot)/description/urdf/hexapod_robot_ros2_control.xacro"/> | |||
<xacro:include filename="$(find hexapod_robot)/config/urdf/hexapod_robot_ros2_control.xacro"/> | |||
</robot> |
@@ -60,7 +60,7 @@ | |||
<child link="${name}_link"/> | |||
<origin xyz="${xy_offset} 0"/> | |||
<axis xyz="0 0 1"/> | |||
<limit effort="30" velocity="100" lower="-1" upper="1"/> | |||
<limit effort="30" velocity="100" lower="-1.57" upper="1.57"/> | |||
</joint> | |||
</xacro:macro> | |||
@@ -91,7 +91,7 @@ | |||
<xacro:if value="${side == 'l'}"><origin xyz="-0.020 0.03 -0.0075"/></xacro:if> | |||
<xacro:if value="${side == 'r'}"><origin xyz=" 0.020 0.03 -0.0075"/></xacro:if> | |||
<axis xyz="0 -1 0"/> | |||
<limit effort="30" velocity="100" lower="-1" upper="1"/> | |||
<limit effort="30" velocity="100" lower="-1.57" upper="1.57"/> | |||
</joint> | |||
</xacro:macro> | |||
@@ -149,7 +149,7 @@ | |||
<xacro:if value="${side == 'l'}"><origin xyz="-0.080 -0.03 0"/></xacro:if> | |||
<xacro:if value="${side == 'r'}"><origin xyz=" 0.080 -0.03 0"/></xacro:if> | |||
<axis xyz="0 1 0"/> | |||
<limit effort="30" velocity="100" lower="-1" upper="1"/> | |||
<limit effort="30" velocity="100" lower="-1.57" upper="1.57"/> | |||
</joint> | |||
</xacro:macro> | |||
@@ -5,23 +5,23 @@ | |||
<joint name="c${number}_joint"> | |||
<command_interface name="position"> | |||
<param name="min">-1</param> | |||
<param name="max">1</param> | |||
<param name="min">-1.57</param> | |||
<param name="max">1.57</param> | |||
</command_interface> | |||
<state_interface name="position"/> | |||
</joint> | |||
<joint name="f${number}_joint"> | |||
<command_interface name="position"> | |||
<param name="min">-1</param> | |||
<param name="max">1</param> | |||
<param name="min">-1.57</param> | |||
<param name="max">1.57</param> | |||
</command_interface> | |||
<state_interface name="position"/> | |||
</joint> | |||
<joint name="t${number}_joint"> | |||
<command_interface name="position"> | |||
<param name="min">-1</param> | |||
<param name="max">1</param> | |||
<param name="min">-1.57</param> | |||
<param name="max">1.57</param> | |||
</command_interface> | |||
<state_interface name="position"/> | |||
</joint> |
@@ -6,8 +6,8 @@ | |||
void ik(const std::shared_ptr<hexapod_robot::srv::HexapodRobotInverseKinematics::Request> request, | |||
std::shared_ptr<hexapod_robot::srv::HexapodRobotInverseKinematics::Response> response) { | |||
response -> bar = request -> foo; | |||
response -> angles.push_back(42); | |||
} | |||
int main(int argc, char **argv) { | |||
@@ -7,6 +7,9 @@ from launch.event_handlers import OnProcessExit | |||
from launch_ros.actions import Node | |||
from launch_ros.substitutions import FindPackageShare | |||
from moveit_configs_utils import MoveItConfigsBuilder | |||
def generate_launch_description(): | |||
robot_description_content = Command([ | |||
@@ -15,7 +18,7 @@ def generate_launch_description(): | |||
PathJoinSubstitution( | |||
[ | |||
FindPackageShare("hexapod_robot"), | |||
"description", | |||
"config", | |||
"urdf", | |||
"hexapod_robot.urdf.xacro" | |||
] | |||
@@ -24,7 +27,7 @@ def generate_launch_description(): | |||
) | |||
robot_description = {"robot_description": robot_description_content} | |||
robot_controllers = PathJoinSubstitution([FindPackageShare("hexapod_robot"), "config", "controllers.yaml"]) | |||
ros2_controllers = PathJoinSubstitution([FindPackageShare("hexapod_robot"), "config", "ros2_controllers.yaml"]) | |||
robot_state_publisher_node = Node( | |||
package = "robot_state_publisher", | |||
@@ -33,10 +36,10 @@ def generate_launch_description(): | |||
output = "both" | |||
) | |||
control_node = Node( | |||
ros2_control_node = Node( | |||
package = "controller_manager", | |||
executable = "ros2_control_node", | |||
parameters = [robot_description, robot_controllers], | |||
parameters = [robot_description, ros2_controllers], | |||
output="both" | |||
) | |||
@@ -63,7 +66,7 @@ def generate_launch_description(): | |||
joint_trajectory_controller_spawner = Node( | |||
package = "controller_manager", | |||
executable = "spawner", | |||
arguments = ["joint_trajectory_controller", "--controller-manager", "/controller_manager"] | |||
arguments = ["e1_group_controller", "--controller-manager", "/controller_manager"] | |||
) | |||
@@ -90,7 +93,7 @@ def generate_launch_description(): | |||
nodes = [ | |||
control_node, | |||
ros2_control_node, | |||
robot_state_publisher_node, | |||
joint_state_broadcaster_spawner, | |||
#delay_rviz_after_joint_state_broadcaster_spawner, |
@@ -3,40 +3,44 @@ from launch.actions import RegisterEventHandler | |||
from launch.substitutions import Command, FindExecutable, LaunchConfiguration, PathJoinSubstitution | |||
from launch.event_handlers import OnProcessExit | |||
from launch_ros.actions import Node | |||
from launch_ros.substitutions import FindPackageShare | |||
from moveit_configs_utils import MoveItConfigsBuilder | |||
def generate_launch_description(): | |||
robot_description_content = Command([ | |||
PathJoinSubstitution([FindExecutable(name="xacro")]), | |||
" ", | |||
PathJoinSubstitution( | |||
[ | |||
FindPackageShare("hexapod_robot"), | |||
"description", | |||
"urdf", | |||
"hexapod_robot.urdf.xacro" | |||
] | |||
) | |||
] | |||
moveit_config = ( | |||
MoveItConfigsBuilder("hexapod_robot", package_name = "hexapod_robot") | |||
.planning_scene_monitor( | |||
publish_robot_description=True, publish_robot_description_semantic=True | |||
) | |||
.planning_pipelines(pipelines = ["ompl"]) | |||
.to_moveit_configs() | |||
) | |||
robot_description = {"robot_description": robot_description_content} | |||
robot_controllers = PathJoinSubstitution([FindPackageShare("hexapod_robot"), "config", "controllers.yaml"]) | |||
move_group_node = Node( | |||
package = "moveit_ros_move_group", | |||
executable = "move_group", | |||
output = "screen", | |||
parameters = [moveit_config.to_dict()] | |||
) | |||
ros2_controllers = PathJoinSubstitution([FindPackageShare("hexapod_robot"), "config", "ros2_controllers.yaml"]) | |||
robot_state_publisher_node = Node( | |||
package = "robot_state_publisher", | |||
executable = "robot_state_publisher", | |||
parameters = [robot_description], | |||
parameters = [moveit_config.robot_description], | |||
output = "both" | |||
) | |||
control_node = Node( | |||
ros2_control_node = Node( | |||
package = "controller_manager", | |||
executable = "ros2_control_node", | |||
parameters = [robot_description, robot_controllers], | |||
parameters = [moveit_config.robot_description, ros2_controllers], | |||
output="both" | |||
) | |||
@@ -46,6 +50,7 @@ def generate_launch_description(): | |||
arguments = ['-d', PathJoinSubstitution([FindPackageShare("hexapod_robot"), "config", "hexapod_robot.rviz"])], | |||
name = "rviz2", | |||
output = "screen", | |||
parameters = [moveit_config.planning_pipelines, moveit_config.robot_description_kinematics] | |||
) | |||
joint_state_broadcaster_spawner = Node ( | |||
@@ -53,17 +58,11 @@ def generate_launch_description(): | |||
executable = "spawner", | |||
arguments = ["joint_state_broadcaster", "--controller-manager", "/controller_manager"] | |||
) | |||
# forward_position_controller_spawner = Node( | |||
# package = "controller_manager", | |||
# executable = "spawner", | |||
# arguments = ["forward_position_controller", "--controller-manager", "/controller_manager"] | |||
# ) | |||
joint_trajectory_controller_spawner = Node( | |||
package = "controller_manager", | |||
executable = "spawner", | |||
arguments = ["joint_trajectory_controller", "--controller-manager", "/controller_manager"] | |||
arguments = ["e1_group_controller", "e2_group_controller", "e3_group_controller", "e4_group_controller", "e5_group_controller", "e6_group_controller", "--controller-manager", "/controller_manager"] | |||
) | |||
@@ -73,13 +72,7 @@ def generate_launch_description(): | |||
on_exit = [rviz_node] | |||
) | |||
) | |||
# delay_forward_position_controller_spawner_after_joint_state_broadcaster_spawner = RegisterEventHandler( | |||
# event_handler = OnProcessExit( | |||
# target_action = joint_state_broadcaster_spawner, | |||
# on_exit = [forward_position_controller_spawner] | |||
# ) | |||
# ) | |||
delay_joint_trajectory_controller_spawner_after_joint_state_broadcaster_spawner = RegisterEventHandler( | |||
event_handler = OnProcessExit( | |||
@@ -90,8 +83,9 @@ def generate_launch_description(): | |||
nodes = [ | |||
control_node, | |||
robot_state_publisher_node, | |||
move_group_node, | |||
ros2_control_node, | |||
joint_state_broadcaster_spawner, | |||
delay_rviz_after_joint_state_broadcaster_spawner, | |||
# delay_forward_position_controller_spawner_after_joint_state_broadcaster_spawner, |
@@ -9,7 +9,11 @@ | |||
<buildtool_depend>ament_cmake</buildtool_depend> | |||
<buildtool_depend>rosidl_default_generators</buildtool_depend> | |||
<build_depend>geometry_msgs</build_depend> | |||
<exec_depend>rosidl_default_runtime</exec_depend> | |||
<exec_depend>geometry_msgs</exec_depend> | |||
<member_of_group>rosidl_interface_packages</member_of_group> | |||
@@ -1,3 +1,4 @@ | |||
int64 foo | |||
geometry_msgs/Pose body | |||
geometry_msgs/Vector3[] leg_tips | |||
--- | |||
int64 bar | |||
float64[] angles |