Crates.io | openrr-apps |
lib.rs | openrr-apps |
version | 0.1.0 |
source | src |
created_at | 2021-02-10 02:39:42.97381 |
updated_at | 2023-03-31 12:04:11.12199 |
description | applications using openrr |
homepage | |
repository | https://github.com/openrr/openrr |
max_upload_size | |
id | 353012 |
size | 350,631 |
cargo install urdf-viz
cargo install openrr-apps
If you are Windows user, ROS is not supported. So remove it.
cargo install openrr-apps --no-default-features --features gui,assimp
Install Universal Robot software.
Install ros-melodic-pr2-gazebo / ros-melodic-topic-tools.
If you are using bash
,
openrr_apps_robot_command shell_completion bash > ~/.openrr_command
source ~/.openrr_command
urdf-viz ./openrr-planner/sample.urdf &
openrr_apps_robot_command \
--config-path=./openrr-apps/config/sample_robot_client_config_for_urdf_viz.toml \
load_commands ./openrr-apps/command/sample_cmd_urdf_viz.txt
If you set export OPENRR_APPS_ROBOT_CONFIG_PATH=some_path_to_config.toml
, you can skip
--config-path
. If you give --config-path
explicitly, the env var is ignored.
export OPENRR_APPS_ROBOT_CONFIG_PATH=$(pwd)/openrr-apps/config/sample_robot_client_config_for_urdf_viz.toml
openrr_apps_robot_command load_commands ./openrr-apps/command/sample_cmd_urdf_viz.txt
Do not forget to unset OPENRR_APPS_ROBOT_CONFIG_PATH before try other settings
urdf-viz $(rospack find ur_description)/urdf/ur10_robot.urdf.xacro
Change urdf path in the setting file for your environment.
openrr_apps_robot_command \
--config-path=./openrr-apps/config/ur10_robot_client_config_for_urdf_viz.toml \
load_commands ./openrr-apps/command/ur10_cmd_urdf_viz.txt
roslaunch ur_gazebo ur10.launch
Change urdf path in the setting file for your environment.
openrr_apps_robot_command \
--config-path=./openrr-apps/config/ur10_robot_client_config_for_ros.toml \
load_commands ./openrr-apps/command/ur10_cmd_ros.txt
urdf-viz $(rospack find pr2_description)/robots/pr2.urdf.xacro
Change urdf path in the setting file for your environment.
openrr_apps_robot_command \
--config-path=./openrr-apps/config/pr2_robot_client_config_for_urdf_viz.toml \
load_commands ./openrr-apps/command/pr2_cmd_urdf_viz.txt
cd openrr-apps/launch/
roslaunch ./pr2.launch wait_time_secs:=10
Change urdf path in the setting file for your environment.
openrr_apps_robot_command \
--config-path=./openrr-apps/config/pr2_robot_client_config_for_ros.toml \
load_commands ./openrr-apps/command/pr2_cmd_ros.txt
urdf-viz ./openrr-planner/sample.urdf &
Change below joystick settings in the setting file for your device. Default value is for 'Sony DualShock 4'.
gil_gamepad_config.device_id = 0
gil_gamepad_config.map.button_map = ...
gil_gamepad_config.map.axis_map = ...
gil_gamepad_config.map.axis_value_map = ...
openrr_apps_robot_teleop --config-path=./openrr-apps/config/sample_teleop_config_urdf_viz.toml
If you use gamepad, refer to README of openrr-teleop.
urdf-viz $(rospack find ur_description)/urdf/ur10_robot.urdf.xacro
Change urdf path and joystick settings (see here) in the setting file for your environment.
openrr_apps_robot_teleop --config-path=./openrr-apps/config/ur10_teleop_config_urdf_viz.toml
roslaunch ur_gazebo ur10.launch
Change urdf path and joystick settings (see here) in the setting file for your environment.
openrr_apps_robot_teleop --config-path=./openrr-apps/config/ur10_teleop_config_ros.toml
urdf-viz $(rospack find pr2_description)/robots/pr2.urdf.xacro
Change urdf path and joystick settings (see here) in the setting file for your environment.
openrr_apps_robot_teleop --config-path=./openrr-apps/config/pr2_teleop_config_urdf_viz.toml
cd openrr-apps/launch/
roslaunch ./pr2.launch wait_time_secs:=10
Change urdf path and joystick settings (see here) in the setting file for your environment.
openrr_apps_robot_teleop --config-path=./openrr-apps/config/pr2_teleop_config_ros.toml
cargo build --release --feature ros2
openrr_apps_robot_teleop \
--config-path ./openrr-apps/config/irobot_create_teleop_config_ros2.toml
PrintSpeaker: base
PrintSpeaker: command dock command
PrintSpeaker: command undock command
When the dock command
is executed, iRobot Create
docks to the station; when the undock command
is executed, the robot undocks. These are based ROS2 action and follow official description.
urdf-viz ./openrr-planner/sample.urdf &
openrr_apps_joint_position_sender \
--config-path ./openrr-apps/config/sample_robot_client_config_for_urdf_viz.toml
See openrr-gui crate for troubleshooting on GUI.
urdf-viz ./openrr-planner/sample.urdf &
openrr_apps_velocity_sender \
--config-path ./openrr-apps/config/sample_robot_client_config_for_urdf_viz.toml
cargo build --release --feature ros2
openrr_apps_velocity_sender \
--config-path ./openrr-apps/config/irobot_create_robot_client_config_ros2.toml
If you set export OPENRR_APPS_ROBOT_CONFIG_PATH=some_path_to_config.toml
, you can skip
--config-path
. If you give --config-path
explicitly, the env var is ignored.
export OPENRR_APPS_ROBOT_CONFIG_PATH=$(pwd)/openrr-apps/config/sample_robot_client_config_for_urdf_viz.toml
openrr_apps_joint_position_sender
Do not forget to unset OPENRR_APPS_ROBOT_CONFIG_PATH before try other settings
By using --config
flag, you can overwrite the configuration at startup.
For example, to replace the urdf path:
openrr_apps_robot_command \
--config-path=./openrr-apps/config/sample_robot_client_config_for_urdf_viz.toml \
--config='openrr_clients_config.urdf_path="path/to/urdf"' \
load_commands ./openrr-apps/command/sample_cmd_urdf_viz.txt
In openrr_apps_robot_teleop
, there are two flags: --robot-config
to overwrite robot config and --teleop-config
to overwrite teleop config.
For example, to run openrr_apps_robot_teleop
with arci-gamepad-keyboard
:
openrr_apps_robot_teleop \
--config-path=./openrr-apps/config/sample_teleop_config_urdf_viz.toml \
--teleop-config='gamepad="Keyboard"'
To disable joint_position_limiter:
openrr_apps_robot_teleop \
--config-path=./openrr-apps/config/sample_teleop_config_urdf_viz.toml \
--robot-config='urdf_viz_clients_configs[0].wrap_with_joint_position_limiter=false'
To overwrite multiple configs, separate the scripts with a semicolon or a newline. For example:
# semicolon-separated
openrr_apps_robot_teleop \
--config-path=./openrr-apps/config/sample_teleop_config_urdf_viz.toml \
--robot-config='urdf_viz_clients_configs[0].wrap_with_joint_position_limiter=false;openrr_clients_config.urdf_path="path/to/urdf"'
# newline-separated
{
echo 'urdf_viz_clients_configs[0].wrap_with_joint_position_limiter=false'
echo 'openrr_clients_config.urdf_path="path/to/urdf"'
} > overwrite.txt
openrr_apps_robot_teleop \
--config-path=./openrr-apps/config/sample_teleop_config_urdf_viz.toml \
--robot-config="$(cat ./overwrite.txt)"
The schema
directory contains the JSON schemas for the config files used by openrr, and when combined with an extension of the editor that supports completion using the JSON schema, completion can be enabled.
In VS Code, you can enable completion and validation by installing the Even Better TOML extension and using the evenBetterToml.schema.associations
configuration object in settings.json
.
For example:
{
"evenBetterToml.schema.associations": {
".*robot_client_config.*\\.toml": "https://raw.githubusercontent.com/openrr/openrr/main/openrr-apps/schema/robot_config.json",
".*teleop_config.*\\.toml": "https://raw.githubusercontent.com/openrr/openrr/main/openrr-apps/schema/robot_teleop_config.json",
},
}
Licensed under the Apache License, Version 2.0.