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
41 changes: 41 additions & 0 deletions src/azas_bringup/azas_bringup/joint_state_relay_legacy.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
#!/usr/bin/env python3

import rclpy
from rclpy.node import Node
from sensor_msgs.msg import JointState


class JointStateRelay(Node):
def __init__(self):
super().__init__("joint_state_relay")
self.declare_parameter("input_topic", "/dsr01/joint_states")
self.declare_parameter("output_topic", "/joint_states")

input_topic = self.get_parameter("input_topic").value
output_topic = self.get_parameter("output_topic").value

self.publisher = self.create_publisher(JointState, output_topic, 10)
self.subscription = self.create_subscription(
JointState,
input_topic,
self.callback,
10,
)
self.get_logger().info(f"Relaying {input_topic} -> {output_topic}")

def callback(self, msg):
self.publisher.publish(msg)


def main(args=None):
rclpy.init(args=args)
node = JointStateRelay()
try:
rclpy.spin(node)
finally:
node.destroy_node()
rclpy.shutdown()


if __name__ == "__main__":
main()
54 changes: 54 additions & 0 deletions src/azas_bringup/config/moveit_py.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
/**:
ros__parameters:
planning_scene_monitor_options:
name: "planning_scene_monitor"
robot_description: "robot_description"
joint_state_topic: "/joint_states"
attached_collision_object_topic: "/moveit_cpp/planning_scene_monitor"
publish_planning_scene_topic: "/moveit_cpp/publish_planning_scene"
monitored_planning_scene_topic: "/moveit_cpp/monitored_planning_scene"
wait_for_initial_state_timeout: 10.0

planning_pipelines:
pipeline_names: ["ompl", "pilz_industrial_motion_planner", "chomp", "ompl_rrt_star"]

plan_request_params:
planning_attempts: 1
planning_pipeline: ompl
max_velocity_scaling_factor: 0.1
max_acceleration_scaling_factor: 0.1

ompl_rrtc:
plan_request_params:
planning_attempts: 1
planning_pipeline: ompl
planner_id: "RRTConnectkConfigDefault"
max_velocity_scaling_factor: 1.0
max_acceleration_scaling_factor: 1.0
planning_time: 1.0

ompl_rrt_star:
plan_request_params:
planning_attempts: 1
planning_pipeline: ompl_rrt_star
planner_id: "RRTstarkConfigDefault"
max_velocity_scaling_factor: 1.0
max_acceleration_scaling_factor: 1.0
planning_time: 1.5

pilz_lin:
plan_request_params:
planning_attempts: 1
planning_pipeline: pilz_industrial_motion_planner
planner_id: "PTP"
max_velocity_scaling_factor: 0.1
max_acceleration_scaling_factor: 0.1
planning_time: 0.8

chomp:
plan_request_params:
planning_attempts: 1
planning_pipeline: chomp
max_velocity_scaling_factor: 1.0
max_acceleration_scaling_factor: 1.0
planning_time: 1.5
39 changes: 39 additions & 0 deletions src/azas_bringup/launch/bar_sort_node_legacy.launch.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
from launch import LaunchDescription
from launch_ros.actions import Node
from launch.substitutions import PathJoinSubstitution
from launch_ros.substitutions import FindPackageShare
from moveit_configs_utils import MoveItConfigsBuilder

def generate_launch_description():
moveit_config = (
MoveItConfigsBuilder(
robot_name="m0609",
package_name="dsr_moveit_config_m0609",
)
.robot_description()
.robot_description_semantic(file_path="config/dsr.srdf")
.robot_description_kinematics()
.joint_limits()
.trajectory_execution()
.planning_scene_monitor()
.sensors_3d()
.to_moveit_configs()
)

moveit_py_params = PathJoinSubstitution(
[FindPackageShare("azas_bringup"), "config", "moveit_py.yaml"]
)

return LaunchDescription(
[
Node(
package="azas_perception",
executable="bar_sort_legacy_node",
output="screen",
parameters=[
moveit_config.to_dict(),
moveit_py_params,
],
)
]
)
42 changes: 42 additions & 0 deletions src/azas_bringup/launch/click_pick_node_legacy.launch.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
from launch import LaunchDescription
from launch_ros.actions import Node
from launch.substitutions import PathJoinSubstitution
from launch_ros.substitutions import FindPackageShare
from moveit_configs_utils import MoveItConfigsBuilder

def generate_launch_description():
# Doosan M0609 MoveIt 기본 설정 (URDF, SRDF, kinematics, controllers 등)
moveit_config = (
MoveItConfigsBuilder(
robot_name="m0609",
package_name="dsr_moveit_config_m0609",
)
.robot_description() # m0609.urdf.xacro
.robot_description_semantic(file_path="config/dsr.srdf") # dsr.srdf
.robot_description_kinematics() # kinematics.yaml
.joint_limits() # joint_limits.yaml
.trajectory_execution() # moveit_controllers.yaml
.planning_scene_monitor() # sensors_3d.yaml 등과 연동
.sensors_3d()
.to_moveit_configs()
)

# 🔹 MoveItPy 전용 YAML 추가
moveit_py_params = PathJoinSubstitution(
[FindPackageShare("azas_bringup"), "config", "moveit_py.yaml"]
)

return LaunchDescription(
[
Node(
package="azas_perception",
executable="click_pick_legacy_node",
output="screen",
# MoveIt config + MoveItPy용 설정을 같이 넘김
parameters=[
moveit_config.to_dict(),
moveit_py_params,
],
)
]
)
43 changes: 43 additions & 0 deletions src/azas_bringup/launch/collision_obstacle_legacy.launch.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
from launch import LaunchDescription
from launch_ros.actions import Node
from launch.substitutions import PathJoinSubstitution
from launch_ros.substitutions import FindPackageShare
from moveit_configs_utils import MoveItConfigsBuilder

def generate_launch_description():
# Doosan M0609 MoveIt 기본 설정 (URDF, SRDF, kinematics, controllers 등)
moveit_config = (
MoveItConfigsBuilder(
robot_name="m0609",
package_name="dsr_moveit_config_m0609",
)
.robot_description() # m0609.urdf.xacro
.robot_description_semantic() # dsr.srdf
.robot_description_kinematics() # kinematics.yaml
.joint_limits() # joint_limits.yaml
.trajectory_execution() # moveit_controllers.yaml
.planning_scene_monitor() # sensors_3d.yaml 등과 연동
.sensors_3d()
.to_moveit_configs()
)

# 🔹 MoveItPy 전용 YAML 추가
moveit_py_params = PathJoinSubstitution(
[FindPackageShare("azas_bringup"), "config", "moveit_py.yaml"]
)

return LaunchDescription(
[
Node(
package="azas_motion",
executable="collision_obstacle_legacy",
output="screen",
# MoveIt config + MoveItPy용 설정을 같이 넘김
parameters=[
moveit_config.to_dict(),
moveit_py_params,
],
)
]
)

42 changes: 42 additions & 0 deletions src/azas_bringup/launch/gear_assembly_legacy.launch.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
from launch import LaunchDescription
from launch_ros.actions import Node
from launch.substitutions import PathJoinSubstitution
from launch_ros.substitutions import FindPackageShare
from moveit_configs_utils import MoveItConfigsBuilder

def generate_launch_description():
# Doosan M0609 MoveIt 기본 설정 (URDF, SRDF, kinematics, controllers 등)
moveit_config = (
MoveItConfigsBuilder(
robot_name="m0609",
package_name="dsr_moveit_config_m0609",
)
.robot_description() # m0609.urdf.xacro
.robot_description_semantic() # dsr.srdf
.robot_description_kinematics() # kinematics.yaml
.joint_limits() # joint_limits.yaml
.trajectory_execution() # moveit_controllers.yaml
.planning_scene_monitor() # sensors_3d.yaml 등과 연동
.sensors_3d()
.to_moveit_configs()
)

# 🔹 MoveItPy 전용 YAML 추가
moveit_py_params = PathJoinSubstitution(
[FindPackageShare("azas_bringup"), "config", "moveit_py.yaml"]
)

return LaunchDescription(
[
Node(
package="azas_motion",
executable="gear_assembly_legacy",
output="screen",
# MoveIt config + MoveItPy용 설정을 같이 넘김
parameters=[
moveit_config.to_dict(),
moveit_py_params,
],
)
]
)
43 changes: 43 additions & 0 deletions src/azas_bringup/launch/mp_basic_legacy.launch.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
from launch import LaunchDescription
from launch_ros.actions import Node
from launch.substitutions import PathJoinSubstitution
from launch_ros.substitutions import FindPackageShare
from moveit_configs_utils import MoveItConfigsBuilder

def generate_launch_description():
# Doosan M0609 MoveIt 기본 설정 (URDF, SRDF, kinematics, controllers 등)
moveit_config = (
MoveItConfigsBuilder(
robot_name="m0609",
package_name="dsr_moveit_config_m0609",
)
.robot_description() # m0609.urdf.xacro
.robot_description_semantic(file_path="config/dsr.srdf") # dsr.srdf
.robot_description_kinematics() # kinematics.yaml
.joint_limits() # joint_limits.yaml
.trajectory_execution() # moveit_controllers.yaml
.planning_scene_monitor() # sensors_3d.yaml 등과 연동
.sensors_3d()
.to_moveit_configs()
)

# 🔹 MoveItPy 전용 YAML 추가
moveit_py_params = PathJoinSubstitution(
[FindPackageShare("azas_bringup"), "config", "moveit_py.yaml"]
)

return LaunchDescription(
[
Node(
package="azas_motion",
executable="mp_basic_legacy",
output="screen",
# MoveIt config + MoveItPy용 설정을 같이 넘김
parameters=[
moveit_config.to_dict(),
moveit_py_params,
],
)
]
)

43 changes: 43 additions & 0 deletions src/azas_bringup/launch/mp_waypoint_legacy.launch.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
from launch import LaunchDescription
from launch_ros.actions import Node
from launch.substitutions import PathJoinSubstitution
from launch_ros.substitutions import FindPackageShare
from moveit_configs_utils import MoveItConfigsBuilder

def generate_launch_description():
# Doosan M0609 MoveIt 기본 설정 (URDF, SRDF, kinematics, controllers 등)
moveit_config = (
MoveItConfigsBuilder(
robot_name="m0609",
package_name="dsr_moveit_config_m0609",
)
.robot_description() # m0609.urdf.xacro
.robot_description_semantic() # dsr.srdf
.robot_description_kinematics() # kinematics.yaml
.joint_limits() # joint_limits.yaml
.trajectory_execution() # moveit_controllers.yaml
.planning_scene_monitor() # sensors_3d.yaml 등과 연동
.sensors_3d()
.to_moveit_configs()
)

# 🔹 MoveItPy 전용 YAML 추가
moveit_py_params = PathJoinSubstitution(
[FindPackageShare("azas_bringup"), "config", "moveit_py.yaml"]
)

return LaunchDescription(
[
Node(
package="azas_motion",
executable="mp_waypoint_legacy",
output="screen",
# MoveIt config + MoveItPy용 설정을 같이 넘김
parameters=[
moveit_config.to_dict(),
moveit_py_params,
],
)
]
)

43 changes: 43 additions & 0 deletions src/azas_bringup/launch/mp_waypoint_pilz_legacy.launch.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
from launch import LaunchDescription
from launch_ros.actions import Node
from launch.substitutions import PathJoinSubstitution
from launch_ros.substitutions import FindPackageShare
from moveit_configs_utils import MoveItConfigsBuilder

def generate_launch_description():
# Doosan M0609 MoveIt 기본 설정 (URDF, SRDF, kinematics, controllers 등)
moveit_config = (
MoveItConfigsBuilder(
robot_name="m0609",
package_name="dsr_moveit_config_m0609",
)
.robot_description() # m0609.urdf.xacro
.robot_description_semantic() # dsr.srdf
.robot_description_kinematics() # kinematics.yaml
.joint_limits() # joint_limits.yaml
.trajectory_execution() # moveit_controllers.yaml
.planning_scene_monitor() # sensors_3d.yaml 등과 연동
.sensors_3d()
.to_moveit_configs()
)

# 🔹 MoveItPy 전용 YAML 추가
moveit_py_params = PathJoinSubstitution(
[FindPackageShare("azas_bringup"), "config", "moveit_py.yaml"]
)

return LaunchDescription(
[
Node(
package="azas_motion",
executable="mp_waypoint_pilz_legacy",
output="screen",
# MoveIt config + MoveItPy용 설정을 같이 넘김
parameters=[
moveit_config.to_dict(),
moveit_py_params,
],
)
]
)

Loading
Loading