Commit graph

41 commits

Author SHA1 Message Date
ef4b015491 Add assembly configuration integration and refactor launches
- **Added support for assembly configuration in `rbs_bringup` and `rbs_robot` launches**:
  - Introduced new launch arguments: `use_rbs_utils` and `assembly_config_name`.
  - Integrated `rbs_utils`'s `utils.launch.py` for handling assembly configurations.
- **Simplified `skills.launch.py`**:
  - Removed redundant `assembly_config` node setup.
- **Enhanced `rbs_utils`**:
  - Added installation of `launch` files in `CMakeLists.txt`.
  - Created a new `utils.launch.py` for dynamically loading assembly configurations.
  - Refactored `assembly_config_service.py` to utilize `get_asm_config` for streamlined configuration file resolution.
- Improved `rbs_bringup` setup to include additional parameters and nodes for assembly configuration.

These changes centralize assembly configuration handling and enhance modularity across launch setups.
2024-12-06 12:14:29 +03:00
de0d5d4440 refactor launch configuration for robot and environment setup
- Simplified and consolidated launch arguments by removing unused configurations.
- Enhanced `test_env.launch.py` to support dynamic loading of xacro and SRDF arguments via YAML files.
- Added new launch parameters for control space, strategy, and interactive mode to improve flexibility.
- Updated robot description and MoveIt integration to use dynamic configurations.
- Improved clarity and modularity in scene and robot setup processes.
2024-11-30 19:30:13 +03:00
d0788041e9 refactor launch files for enhanced MoveIt integration and cleanup
- **RBS Bringup Launch File:**
  - Enabled MoveIt by default (`use_moveit: true`).
  - Removed unused arguments (`gripper_name`, `hardware`) for cleaner configuration.
  - Updated `robot_description_kinematics` to use the new kinematics file path handling.

- **RBS Robot Launch File:**
  - Streamlined robot description setup, removing unnecessary parameters like `gripper_name`, `hardware`, and pose arguments (`x`, `y`, `z`, `roll`, etc.).
  - Updated robot description and semantic description to use launch configurations.
  - Refactored kinematics file handling for clarity.

- **Skills Launch File:**
  - Updated kinematics YAML loading to use `load_yaml_abs` for absolute path resolution.
  - Standardized `robot_description`, `robot_description_semantic`, and `kinematics` parameters.

- **General Improvements:**
  - Consolidated redundant logic across launch files.
  - Improved maintainability by removing hardcoded and unused configurations.
2024-11-22 02:16:20 +03:00
17401c29a7 add interactive argument to control robot with interactive marker 2024-11-19 00:05:50 +03:00
85eec1b7d7 added doc on how to use framework with your robot or how to add new robot 2024-11-18 13:36:56 +03:00
ea4ae0ed69 feat(rbs): refactor controller paths and launch configuration
- Rename default controllers file `rbs_arm0_controllers.yaml` to `controllers.yaml` across all launch files
- Enhance `runtime.launch.py` by adding imports (`URDF_parser`, `ControllerManager`, `yaml`) and new arguments (`scene_config_file`, `ee_link_name`, `base_link_name`)
  - Implement xacro argument loading via YAML
  - Configure `robot_builder` to save controllers to `controllers.yaml` based on URDF parsing
- Add `control.launch.py` in `rbs_bringup` for dynamic controller spawning based on strategies/configurations
- Add `rbs_bringup.launch.py` as a unified entry point for single robot setup, initializing core settings like gripper, robot type, and controllers
- Remove `launch_env.launch.py`
- Remove `multi_robot.launch.py`
- Enhance `rbs_robot.launch.py` with `ee_link_name` and `base_link_name` arguments for end-effector and base link customization
- Add `ee_link_name` and `base_link_name` to `skills.launch.py` for flexible robot setup in skills
- Update `mtp_jtc_cart.cpp` with `base_link` and `robot_ee_link` parameters for KDL chain retrieval
- Remove `single_robot.launch.py` for simplified single robot deployment
2024-11-12 22:23:12 +03:00
a7b7225dd1 refactor(rbs_skill_servers): update action configuration, dependencies, and skills
- Removed `assembly_config_service.py` node from launch configuration.
- Added default `goal.duration` setting to `MoveToPose` and `MoveToPoseArray`.
- Replaced `timeout_seconds` with `duration` in action definitions for `MoveitSendJointStates` and `MoveitSendPose`.
- Removed dependencies on TinyXML2 and Gazebo/SDFormat, adding `controller_manager_msgs` and `control_msgs` to CMake configuration.
- Added new action servers `cartesian_move_to_pose` and `move_to_joint_states`, registering them in CMakeLists file.
- Introduced `SkillBase`, a template class for managing action-based skills, providing essential ROS 2 action server support and functionalities for handling goals, cancels, accepted actions, and controller management.
- Implemented methods to load, configure, and switch required controllers with conflict detection for active controllers, along with parameter checking and asynchronous handling for required parameters.
- Enhanced error handling for missing controllers, parameters, and resource conflicts.
- Updated `skills.launch.py` to utilize `ComposableNodeContainer` for skill nodes, incorporating `MoveToJointStateActionServer` and `CartesianMoveToPose` as composable nodes.
- Changed the executable name in `cartesian_move_to_pose_action_server` node configuration.
- Added `cartesian_move_to_pose.cpp`, implementing the `CartesianMoveToPose` action server, including trajectory interpolation, pose adjustment, and controller management.
- Updated `package.xml` to include `rclcpp_components` dependency.
- Refactored `MoveToJointStateActionServer` to extend `SkillBase`, leveraging `FollowJointTrajectory` for joint trajectory execution, while removing redundant code and dependencies.
- Implemented trajectory generation based on initial and target joint positions with parameterized interpolation for smoother execution, enhancing joint state handling to dynamically align current and target joint values.
2024-11-06 23:57:47 +03:00
dba3b8682a refactor: (env_manager, rbs_runtime) and add YAML config loading
- Updated `camera.py` to use consistent float literals for default spawn positions.
- Removed unused import statements and organized imports in `robot.py` and `scene.py`.
- Removed debugging import from `scene.py` to clean up codebase.
- Added a new YAML configuration file (`default-scene-config.yaml`) for scene settings.
- Implemented a scene configuration loader function in `rbs_runtime/__init__.py` to read and parse YAML config files.
- Modified `runtime.py` to utilize the newly added scene config loader and removed in-code default scene setup.
- Updated `setup.py` to include `config` directory in package data.
- Changed `rbs_robot.launch.py` to use position control strategy by default.
- Refactored `skills.launch.py` with cleaner parameter definitions and reactivated commented-out nodes.
2024-10-14 14:23:49 +03:00
519004f6d2 fix: resolve issue when rbs_bringup loaded without robot_description parameter 2024-10-10 13:20:02 +03:00
a8480b290a fix: delete old env_manager launch in rbs_bringup and rbs_simulation 2024-10-10 13:20:02 +03:00
e4e3e4e3af add external robot_description parameter for rbs_robot.launch.py
feat(robot): add support for handling scalar joint positions

- Updated `RobotData` and `RbsArm` to allow joint positions to be passed
as either a list or a scalar value.
- Refactored logic to dynamically handle scalar values and repeat them
across all joints.
- Added new `initial_arm_joint_positions` and
`initial_gripper_joint_positions` properties in `RbsArm`.
- Improved joint position initialization in the `Scene` class to
retrieve robot description asynchronously if not provided.
- Enhanced the launch script to configure environment variables based on
available CPU cores.
- Minor code cleanups and bug fixes, including terrain naming and
corrected joint defaultsd.

git commit --amend
2024-09-30 13:41:36 +03:00
1a562b05ca rbs_gym multi camera and multi object setup 2024-09-13 22:22:47 +03:00
2de37b027b Migration to BT.cpp v4 & new BT executor 2024-07-04 12:11:07 +00:00
b58307dea1 Added rbs_gym package for RL & multi-robot launch setup 2024-07-04 11:38:08 +00:00
798160767a fix gazebo world filepath 2024-05-27 00:20:17 +03:00
3745cb4ac6 remove robot_builder code from launch file 2024-05-26 17:48:28 +03:00
44b927f9a9 roboclone scene and launch for single rl enviroment 2024-04-22 15:45:36 +03:00
e8ea09e020 update main 2024-04-22 15:06:46 +03:00
d5e7768d90 Multi-Robot Setup 2024-04-18 13:29:36 +00:00
dc628f1387 add launch arguments for gazebo
Added gazebo gui argument and arguments to start without controllers
2024-02-15 19:46:32 +03:00
6608560a27 chage runtime to rbs_arm and formatting the code 2024-02-08 13:31:01 +03:00
2755209c66 Merge branch 'main' into 77-cartesian-controllers 2024-01-13 01:49:08 +03:00
92b9e1189f update rbs.rviz to view workspace in the future 2023-12-30 23:42:36 +03:00
d32f44682d add new env_manager to project 2023-12-11 22:08:43 +03:00
fe94fc7bc2 Merge remote-tracking branch 'origin/83-env-manager-refactoring' into 90-real-robot-setup 2023-12-11 18:41:59 +03:00
9995f8b6f0 remove extra params 2023-12-11 18:29:24 +03:00
d72c06efea add skill launch, refactor pick-place pose loader 2023-11-30 13:47:33 +03:00
4decc40c88 refactoring run 2023-11-16 13:15:27 +03:00
077872e489 Resolve "Добавить параметры в конфиг pose estimation узла" 2023-11-13 13:08:28 +00:00
78d890b62e 🚧 add logic to env_manager lib 2023-09-16 20:45:37 +03:00
4371dbdcee update poses, add camera to urdf and add bridge 2023-08-29 20:56:45 +03:00
478cde4e32 add ft sensor broadcaster 2023-08-17 15:05:46 +03:00
ecb179d95d update scenaries 2023-08-17 14:57:18 +03:00
817dfeaa0f 🚧 add impedance controller node 2023-08-02 16:57:01 +03:00
b02e3db31f fix launch errors after merge 2023-07-31 12:05:05 +03:00
35cd8ba25e add cartesian controllers launch condition 2023-07-28 12:53:22 +03:00
903683bd00 remove extra libs from launch file 2023-07-27 12:06:36 +03:00
f76340d78a refactoring repo 2023-07-26 14:20:06 +03:00
6fa469be36 update README and update launch files 2023-07-24 16:06:39 +03:00
5314c1adf5 update, add conditions and fix mistakes 2023-07-24 15:39:32 +03:00
ef563a5dc0 split and sort launch file 2023-07-24 14:57:23 +03:00