Commit Graph
30 Commits
Author SHA1 Message Date
Даниил Грабарь 1caa919ea4 Добавлены 3д модели для второго эксперемнта и два мира для эксперемента 2026-11-06 16:37:06 +10:00
Даниил Грабарь 30d64303fc Merge controller into dev: bounded trajectories and shared seven-axis limits
Preserve dev TCP gizmo motion-priority handling while integrating Ruckig smoothing, continuous JTC spline validation and shared robot limits. Resolve launch and dependency conflicts without removing either feature set. Verified merged build of 8 packages and tests of 4 packages.
2026-09-21 05:21:28 +03:00
Даниил Грабарь 0a091ad521 feat(control): unify joint limits and bound trajectory dynamics
Use shared limits for all seven axes across MoveIt, URDF and FRI.
Apply Ruckig smoothing and continuous JTC spline checks, stretching
trajectory timing to respect velocity, acceleration and jerk limits.
Require fresh stationary feedback for direct trajectories and protect
preparation from concurrent submissions and stop requests.

Add regression tests, dependencies and bilingual FRI documentation.
Include the updated LIN speed-sweep scenario and current 60 ms filter
configuration. Acceleration and jerk limits remain project settings;
physical high-speed twitching is still under investigation.
2026-09-21 05:16:09 +03:00
Даниил Грабарь b1b8cedef1 append spawn objects 2026-09-18 12:37:28 +10:00
Даниил Грабарь 9dc1073f42 Update camera settings 2026-09-18 12:05:35 +10:00
Даниил Грабарь 3a5bc28bba feat: add release-to-move TCP gizmo control in Webots
Add a native Webots marker for setting the active tool's TCP position and
orientation. Dragging edits the preview; releasing the mouse submits one
complete, checked joint trajectory with configured TCP speed limits.
Unreachable targets reset the marker to the current TCP.

Preserve coordinate, joint, and control-file commands through motion
reservations and a controller action proxy. Give the gizmo lowest priority
and finish its committed trajectory before dispatching queued regular
commands, including waits longer than the former two-second service timeout.

Place the patron TCP at its working end, 55.2 mm along local Z, and use the
flange TCP when no tool is attached. Add digital_twin.tcp_gizmo configuration,
ROS interfaces, launch integration, and regression coverage.

Document operation, configuration, tool attachment, speed limits, and
troubleshooting in both Russian and English.

Validation: 42 Python tests and 8 C++ tests passed. Webots regressions covered
one action per release, translation and rotation with and without a tool,
unreachable targets, and ordinary commands waiting for gizmo completion.
2026-09-17 17:11:53 +03:00
Даниил Грабарь 1780532f51 feat: configure FRI position smoothing 2026-09-16 15:06:17 +10:00
Даниил Грабарь b1fc2c5ff5 fix: align iiwa controller with FRI lifecycle and use JTC without EMA 2026-09-15 14:10:10 +10:00
Даниил Грабарь ed02b59177 refactor: remove unused ai_agent package and related files; add colcon defaults 2026-06-20 07:47:52 +03:00
Даниил Грабарь 36fa33b032 Refactor tool management and update robot configuration
- Updated iiwa7.srdf to streamline group and end effector definitions, removing unnecessary joint specifications.
- Enhanced setting.yaml to include active tool configuration.
- Removed deprecated gripper URDF and Xacro files, consolidating tool definitions into tools.yaml.
- Introduced tool_manager.py for dynamic tool management, allowing for easy updates to active tools and collision settings.
- Created tool_active.xacro to reflect the currently active tool in the robot's URDF.
- Added comprehensive collision management for the new tool configurations.
2026-06-03 14:03:44 +10:00
Даниил Грабарь f365cd491f Update fields 2026-05-26 16:02:08 +03:00
Даниил Грабарь a4d318fceb Refactor motion sequence handling: remove old test script, update setup, and implement new runner with configuration support
- Deleted obsolete `test_motion_sequence.py` file.
- Updated `setup.py` to remove references to the old test script and motion configuration file.
- Added `motion_sequence_config.json` to define home position and waypoints for the robot.
- Introduced `motion_sequence_runner.py` to execute motion sequences based on the new configuration format, supporting both joint and pose movements.
2026-05-26 16:09:41 +10:00
Даниил Грабарь e4b8daf754 feat: update package versions to 2026.5.31 and add dependencies for iiwa_web 2026-05-25 12:46:27 +10:00
Даниил Грабарь b560fcf229 refactor: remove command_mode from configuration and related files 2026-05-25 12:30:59 +10:00
Даниил Грабарь cbd05effd2 feat: update package versions and descriptions for all modules; add web interface package 2026-05-24 10:18:04 +03:00
Даниил Грабарь 99215c0b20 Add iiwa_controller_v2: Implement hardware interface for KUKA iiwa7 via FRI
- Introduced iiwa_hardware_interface_plugin.xml to define the hardware interface.
- Created command_guard.hpp to enforce joint limits for position and torque commands.
- Developed fri_client.hpp and fri_client.cpp to manage FRI communication and state snapshots.
- Implemented system_interface.hpp and system_interface.cpp for lifecycle management and command handling.
- Added system_interface_type_values.hpp for extended state interface names.
- Defined package.xml for ROS2 integration with necessary dependencies.
2026-05-15 13:10:00 +10:00
Даниил Грабарь c3d1de7b01 Add joint_position_tau parameter for smoother joint control and update related configurations 2026-05-14 11:40:04 +10:00
Даниил Грабарь 1f37a07770 Add fri_cycle_ms parameter to configuration and update related components 2026-05-13 04:31:19 +03:00
Даниил Грабарь 225ae50f10 feat: Enhance iiwa_description and iiwa_sunrise functionality
- Added a new link "tcp" and a fixed joint "patron_tcp" in patron.xacro for better tool control.
- Updated ServerFriRos2.java to improve command mode handling and user configuration steps, including clearer logging and better control mode selection.
- Removed the deprecated iiwa_ros2.java file to streamline the codebase.
- Enhanced test_motion_sequence.py to allow dynamic topic recording based on user input, with improved logging for bag file management.
2026-05-07 17:47:47 +03:00
Даниил Грабарь 9f30b9ff5d feat: enhance motion sequence capabilities and add configuration support
- Updated README.md to include examples for data collection and motion sequence testing.
- Modified setting.yaml to change the TCP link for planning from "patron" to "link_ee".
- Refactored move_to_pose_server.py to improve planner configuration readability.
- Updated setup.py to include motion_config.json in package resources and added a new console script for testing motion sequences.
- Introduced motion_config.json to define home joints and poses for motion sequences.
- Added test_motion_sequence.py to implement a test runner for executing motion sequences and recording data to a bag file.
2026-05-06 14:03:41 +10:00
Даниил Грабарь e4d6bdc1af Add motion planning actions and services for iiwa robot
- Implemented action servers for MoveToPose and MoveToJoints.
- Added service for MoveToNamedPose and stop action.
- Updated README with usage examples for new actions.
- Enhanced planning configurations in YAML and Python files.
- Removed deprecated motion planning scripts.
2026-05-05 17:15:08 +03:00
Даниил Грабарь 7736c71760 Add camera spawning functionality and update configuration files 2026-04-14 11:19:53 +10:00
Даниил Грабарь cd450a3476 Add camera spawning functionality and update world configuration 2026-04-13 17:37:24 +03:00
Даниил Грабарь 2dfa8f1c94 Add foxglove_bridge configuration and settings support 2026-04-13 17:20:32 +10:00
Даниил Грабарь 845f4ca89c Refactor launch files and update package descriptions for KUKA iiwa7, transitioning from Gazebo to Webots simulation 2026-04-09 13:52:28 +10:00
Даниил Грабарь e182f5b7bd Refactor URDF and launch files for iiwa robot
- Updated gripper macros in gripper_macros.xacro to simplify parameters and add Gazebo support.
- Removed unused mesh property in gripper_meshes.xacro.
- Enhanced iiwa7 digital and FRI URDF files with simulation arguments and improved controller setup.
- Added new launch files for Gazebo simulation and universal launch configuration.
- Implemented YAML parameter wrapping for ROS2 in converter.py.
- Introduced a new gz_bridge.yaml configuration for Gazebo to ROS2 topic mapping.
- Cleaned up setting_loader.py and added necessary imports.
2026-04-08 13:21:18 +10:00
Даниил Грабарь 1dc17d5949 Enhance IIWA Robot Configuration and Launch Files
- Updated iiwa7 URDF Xacro to include command and state interfaces for position and effort with defined limits for all joints.
- Modified setting_loader.py to include new fields for command_mode and description in the RobotCfg dataclass and settings loading process.
- Created iiwa.launch.py to manage the launch of the IIWA robot, integrating MoveIt configurations and RViz support.
- Added iiwa_controllers.launch.py to set up the controller manager and spawner for the IIWA robot.
- Introduced iiwa_hardware_interface_plugin.xml to define the hardware interface for the KUKA IIWA 7 robot.
- Added iiwa7_fri.urdf.xacro to support FRI (Fast Robot Interface) with appropriate command and state interfaces for each joint.
2026-04-06 09:40:04 +03:00
Даниил Грабарь bce4dd6067 добавлен полноценный модуль планирования траекторных перемещений. Необходимо его оформить правильным образом 2025-12-26 23:03:41 +10:00
Даниил Грабарь fe89d626d3 добавлен модуль iiwa_planning, в котором будет размещен весь код по планированию траекторных перемещений, а также логическое планирование (PDDL, LLM и др.).
Тестовый файл `motion_planning_test.py` внутрь созданного модуля
2025-12-26 15:34:07 +10:00
Даниил Грабарь fa39991bcf Переработана вся структура запуска файлов. Теперь в iiwa_bringup хранятся только launch файлы.
Все конфигурационные файлы переехали в пакет `iiwa_config`. также там появился общий конфигурационный файл, который упращает запуск `digital_twin.launch.py`

Добавлен дополнительный пакет  `iiwa_utils`, в который переехал весь код с папки `iiwa_bringup/utils`, а также все тестовые ноды переехали с `iiwa_object_spawner` в этот пакет

Пакеты `iiwa_bringup` и `iiwa_description` переведены на `ament_cmake` для дальнейшего удобсва - пакеты не будут содержать код для реализации
2025-12-25 21:46:40 +10:00