Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
crisp_controllers
17 changes: 17 additions & 0 deletions crisp_controllers_robot_demos/config/fr3/controllers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@
joint_state_broadcaster:
type: joint_state_broadcaster/JointStateBroadcaster

twist_broadcaster:
type: crisp_controllers/TwistBroadcaster

pose_broadcaster:
type: crisp_controllers/PoseBroadcaster

Expand Down Expand Up @@ -49,6 +52,20 @@
ros__parameters:
use_local_topics: False

twist_broadcaster:
ros__parameters:
joints:
- fr3_joint1
- fr3_joint2
- fr3_joint3
- fr3_joint4
- fr3_joint5
- fr3_joint6
- fr3_joint7

end_effector_frame: fr3_hand_tcp
base_frame: base

pose_broadcaster:
ros__parameters:
joints:
Expand Down
17 changes: 17 additions & 0 deletions crisp_controllers_robot_demos/config/fr3/left_controllers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ left:
joint_state_broadcaster:
type: joint_state_broadcaster/JointStateBroadcaster

twist_broadcaster:
type: crisp_controllers/TwistBroadcaster

pose_broadcaster:
type: crisp_controllers/PoseBroadcaster

Expand Down Expand Up @@ -55,6 +58,20 @@ left:
ros__parameters:
use_local_topics: False

twist_broadcaster:
ros__parameters:
joints:
- left_fr3_joint1
- left_fr3_joint2
- left_fr3_joint3
- left_fr3_joint4
- left_fr3_joint5
- left_fr3_joint6
- left_fr3_joint7

end_effector_frame: left_fr3_hand_tcp
base_frame: left_base

pose_broadcaster:
ros__parameters:
joints:
Expand Down
17 changes: 17 additions & 0 deletions crisp_controllers_robot_demos/config/fr3/right_controllers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ right:
joint_state_broadcaster:
type: joint_state_broadcaster/JointStateBroadcaster

twist_broadcaster:
type: crisp_controllers/TwistBroadcaster

pose_broadcaster:
type: crisp_controllers/PoseBroadcaster

Expand Down Expand Up @@ -55,6 +58,20 @@ right:
ros__parameters:
use_local_topics: False

twist_broadcaster:
ros__parameters:
joints:
- right_fr3_joint1
- right_fr3_joint2
- right_fr3_joint3
- right_fr3_joint4
- right_fr3_joint5
- right_fr3_joint6
- right_fr3_joint7

end_effector_frame: right_fr3_hand_tcp
base_frame: right_base

pose_broadcaster:
ros__parameters:
joints:
Expand Down
17 changes: 17 additions & 0 deletions crisp_controllers_robot_demos/config/iiwa/controllers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@
joint_state_broadcaster:
type: joint_state_broadcaster/JointStateBroadcaster

twist_broadcaster:
type: crisp_controllers/TwistBroadcaster

pose_broadcaster:
type: crisp_controllers/PoseBroadcaster

Expand Down Expand Up @@ -43,6 +46,20 @@
ros__parameters:
use_local_topics: False

twist_broadcaster:
ros__parameters:
joints:
- joint_a1
- joint_a2
- joint_a3
- joint_a4
- joint_a5
- joint_a6
- joint_a7

end_effector_frame: tool0
base_frame: iiwa_base

pose_broadcaster:
ros__parameters:
joints:
Expand Down
17 changes: 17 additions & 0 deletions crisp_controllers_robot_demos/config/kinova_gen3/controllers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@
joint_state_broadcaster:
type: joint_state_broadcaster/JointStateBroadcaster

twist_broadcaster:
type: crisp_controllers/TwistBroadcaster

gravity_compensation:
type: crisp_controllers/CartesianController

Expand Down Expand Up @@ -50,6 +53,20 @@
ros__parameters:
use_local_topics: False

twist_broadcaster:
ros__parameters:
joints:
- joint_1
- joint_2
- joint_3
- joint_4
- joint_5
- joint_6
- joint_7

end_effector_frame: end_effector_link
base_frame: base_link

pose_broadcaster:
ros__parameters:
joints:
Expand Down
Binary file not shown.
Binary file not shown.
6 changes: 6 additions & 0 deletions crisp_controllers_robot_demos/launch/franka.launch.py
Original file line number Diff line number Diff line change
Expand Up @@ -229,6 +229,12 @@ def generate_launch_description():
arguments=["joint_trajectory_controller"],
output="screen",
),
Node(
package="controller_manager",
executable="spawner",
arguments=["twist_broadcaster"],
output="screen",
),
Node(
package="controller_manager",
executable="spawner",
Expand Down
127 changes: 72 additions & 55 deletions crisp_controllers_robot_demos/launch/iiwa.launch.py
Original file line number Diff line number Diff line change
Expand Up @@ -180,70 +180,78 @@ def generate_launch_description():
namespace = LaunchConfiguration("namespace")

# Get URDF via xacro
robot_description_content = Command([
PathJoinSubstitution([FindExecutable(name="xacro")]),
" ",
PathJoinSubstitution([
FindPackageShare("crisp_controllers_robot_demos"),
"config",
"iiwa",
"iiwa.urdf.xacro",
]),
" ",
"prefix:=",
prefix,
" ",
"use_fake_hardware:=",
use_fake_hardware,
" ",
"robot_ip:=",
robot_ip,
" ",
"robot_port:=",
robot_port,
" ",
"initial_positions_file:=",
initial_positions_file,
" ",
"command_interface:=",
command_interface,
" ",
"base_frame_file:=",
base_frame_file,
" ",
"description_package:=",
description_package,
" ",
"runtime_config_package:=",
runtime_config_package,
" ",
"controllers_file:=",
controllers_file,
" ",
"namespace:=",
namespace,
])
robot_description_content = Command(
[
PathJoinSubstitution([FindExecutable(name="xacro")]),
" ",
PathJoinSubstitution(
[
FindPackageShare("crisp_controllers_robot_demos"),
"config",
"iiwa",
"iiwa.urdf.xacro",
]
),
" ",
"prefix:=",
prefix,
" ",
"use_fake_hardware:=",
use_fake_hardware,
" ",
"robot_ip:=",
robot_ip,
" ",
"robot_port:=",
robot_port,
" ",
"initial_positions_file:=",
initial_positions_file,
" ",
"command_interface:=",
command_interface,
" ",
"base_frame_file:=",
base_frame_file,
" ",
"description_package:=",
description_package,
" ",
"runtime_config_package:=",
runtime_config_package,
" ",
"controllers_file:=",
controllers_file,
" ",
"namespace:=",
namespace,
]
)

robot_description = {"robot_description": robot_description_content}

# Use our controllers
robot_controllers = PathJoinSubstitution([
FindPackageShare("crisp_controllers_robot_demos"),
"config",
"iiwa",
"controllers.yaml",
])
robot_controllers = PathJoinSubstitution(
[
FindPackageShare("crisp_controllers_robot_demos"),
"config",
"iiwa",
"controllers.yaml",
]
)
# robot_controllers = PathJoinSubstitution([
# FindPackageShare(runtime_config_package),
# "config",
# controllers_file,
# ])

rviz_config_file = PathJoinSubstitution([
FindPackageShare(description_package),
"rviz",
"iiwa.rviz",
])
rviz_config_file = PathJoinSubstitution(
[
FindPackageShare(description_package),
"rviz",
"iiwa.rviz",
]
)

control_node = Node(
package="controller_manager",
Expand Down Expand Up @@ -282,7 +290,6 @@ def generate_launch_description():
],
)


robot_controller_spawner = Node(
package="controller_manager",
executable="spawner",
Expand Down Expand Up @@ -314,6 +321,15 @@ def generate_launch_description():
],
)

twist_broadcaster_spawner = Node(
package="controller_manager",
executable="spawner",
arguments=[
"twist_broadcaster",
"--controller-manager",
"/controller_manager",
],
)

nodes = [
control_node,
Expand All @@ -323,6 +339,7 @@ def generate_launch_description():
joint_state_broadcaster_spawner,
cartesian_impedance_controller_spawner,
pose_broadcaster_spawner,
twist_broadcaster_spawner,
]

return LaunchDescription(declared_arguments + nodes)
6 changes: 6 additions & 0 deletions crisp_controllers_robot_demos/launch/kinova_gen3.launch.py
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,12 @@ def generate_launch_description():
arguments=["pose_broadcaster"],
output="screen",
),
Node(
package="controller_manager",
executable="spawner",
arguments=["twist_broadcaster"],
output="screen",
),
Node(
package="controller_manager",
executable="spawner",
Expand Down
4 changes: 2 additions & 2 deletions docker/Dockerfile.robots
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
ARG ROS_DISTRO=humble
ARG CRISP_CONTROLLERS_VERSION=1.0.0
ARG CRISP_CONTROLLERS_VERSION=1.1.0

FROM osrf/ros:${ROS_DISTRO}-desktop AS base

Expand Down Expand Up @@ -157,7 +157,7 @@ RUN source /opt/ros/$ROS_DISTRO/setup.bash \

FROM iiwa AS iiwa-overlay

ARG CRISP_CONTROLLERS_VERSION=1.0.0
ARG CRISP_CONTROLLERS_VERSION=1.1.0

COPY . src/crisp_controllers_demos

Expand Down