Commit graph

6 commits

Author SHA1 Message Date
0a868b5163 add env_manager folder 2025-02-01 16:45:53 +03:00
223807255b refactor: move env_manager to new repo 2024-12-09 18:19:38 +03:00
b382148b74 Update default scene configuration with new objects and adjustments
- Replaced object names and updated configurations:
  - Renamed `hole` to `star` and adjusted its position.
  - Renamed `peg` to `box`, added mass and size attributes, and refined position and randomization settings.
  - Added a new `cylinder` object with mass, radius, length, and position attributes.
  - Introduced a static `board` object with specified position and randomization settings.
- Improved structure and flexibility for object definitions in the default scene.
2024-12-09 12:51:20 +03:00
fbddca1b8b refactor and extend runtime configuration handling
- **Scene configuration:**
  - Replaced `bishop` object with `hole` and added a new `peg` object.
  - Enhanced object properties with new attributes like `randomize`, `relative_to`, `static`, and `texture`.
  - Updated `robot` joint positions in the default scene configuration.

- **Launch file updates:**
  - Added handling for MoveIt SRDF file processing, including semantic descriptions.
  - Refactored unused parameters (`gripper_name`, `hardware`) and streamlined arguments.
  - Extended `robot_type` choices in the `generate_launch_description` method.

- **Runtime initialization:**
  - Introduced `object_factory` to handle dynamic object instantiation based on type (`box`, `cylinder`, `mesh`, or `model`).
  - Enhanced `scene_config_loader` to process and instantiate objects using the factory function.
2024-11-22 02:15:09 +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