Skip to content
Closed
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
Empty file.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
scan_filter_chain:
- name: range
type: LaserScanRangeFilter
params:
use_message_range_limits: false
upper_threshold: 10.0
upper_replacement_value: 10.0
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
#where to look for costmap parameters
costmap_parameter_source: "/local_costmap_node/costmap"

#frequency at which the get_footprint service should be called
footprint_update_frequency: 0.1

#Parameters specifying slow down behaviour
pot_ctrl_vmax: 0.6 #default: 0.6
pot_ctrl_vtheta_max: 0.8 #default: 0.8
pot_ctrl_kv: 2.5 #damping default: 1.0
pot_ctrl_kp: 3.0 #stiffness default: 2.0
pot_ctrl_virt_mass: 0.5 #default: 0.8
max_acceleration: [0.3, 0.3, 0.4]

#Parameters specifying collision velocity filter
influence_radius: 2.0 #[m] distance from robot_center
obstacle_damping_dist: 0.3 # used as slow-down dist
stop_threshold: 0.05 #[m]
use_circumscribed_threshold: 0.2 #[rad/s] scan for obstacles in circumscribed radius of robot even when tube filter is enabled during fast rotations
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# node from which initial footprint is read
footprint_source: /local_costmap_node/costmap

#
robot_base_frame: /base_link
# wait until tf from robot_base_frame to farthest_frame is available
farthest_frame: /base_link
# frames to check for footprint adjustment
#frames_to_check: /arm_forearm_link /arm_wrist_1_link /arm_wrist_2_link /arm_wrist_3_link /arm_ee_link
epsilon: 0.01

Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
rate: 100 #Hz
source_list: [/base/joint_states]
2 changes: 2 additions & 0 deletions cob_hardware_config/robots/raw-mini/config/joy.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
dev: /dev/input/js0
deadzone: 0.12
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# global information
global_frame: /base_link
robot_base_frame: /base_footprint
update_frequency: 5.0
publish_frequency: 5.0

# local map settings
static_map: false
rolling_window: true
width: 5.0
height: 5.0
resolution: 0.07

# footprint and range
footprint: [[0.165,0.115],[-0.165,0.115],[-0.165,-0.115],[0.165,-0.115]] #[m]
footprint_padding: 0.02 #[m]

#layers
plugins:

# The obstacle layer tracks the obstacles as read by the sensor data. The ObstacleCostmapPlugin marks and
# raytraces obstacles in two dimensions, while the VoxelCostmapPlugin does so in three dimensions.
- {name: obstacle_layer, type: "costmap_2d::VoxelLayer"}

obstacle_layer:

# Definition of the sensors/observation sources
observation_sources: laser_scan

# Parameters of the source: laser_scan_front
laser_scan_front:
sensor_frame: laser_link # The frame of the origin of the sensor, default: ""
topic: /scan # The topic on which sensor data comes in for this source, default: source_name
data_type: LaserScan # The data type associated with the topic, default: "PointCloud"
marking: true # Whether or not this observation is used to mark obstacles, default: true
clearing: true # Whether or not this observation is used to clear out freespace, default: false


# The default maximum distance from the robot at which an obstacle will be inserted into the cost map in meters
obstacle_range: 5.0

# The default range in meters at which to raytrace out obstacles from the map using sensor data
raytrace_range: 5.0

# What map type to use. "voxel" or "costmap" are the supported types, with the difference between them being a 3D-view of the world vs. a 2D-view of the world
map_type: costmap

# The maximum height in meters of a sensor reading considered valid.
max_obstacle_height: 2.0
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#Scan_unifier_config-parameters

input_scans: ["/scan"]
33 changes: 33 additions & 0 deletions cob_hardware_config/robots/raw-mini/config/teleop.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
#raw-mini
##########
# common params
run_factor: 2.0
apply_ramp: false
joy_num_buttons: 12
joy_num_axes: 6
joy_num_modes: 1

# axes
axis_vx: 4
axis_vy: 3
axis_vz: 5
axis_roll: 4
axis_pitch: 3
axis_yaw: 0

# buttons
deadman_button: 5
safety_button: 6
init_button: 9

#mode1: Base
run_button: 7

components: {
base: {
twist_topic_name: '/base/twist_mux/command_teleop_joy',
twist_safety_topic_name: '/base/twist_mux/command_teleop_joy',
twist_max_velocity: [0.5, 0.5, 0.5],
twist_max_acc: [0.5, 0.5, 0.7]
}
}
26 changes: 26 additions & 0 deletions cob_hardware_config/robots/raw-mini/config/twist_mux_locks.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Locks to stop the twist inputs.
# For each lock:
# - topic : input topic that provides the lock; it must be of type std_msgs::Bool?!!!
# - timeout : == 0.0 -> not used
# > 0.0 -> the lock is supposed to published at a certain frequency in order
# to detect that the publisher is alive; the timeout in seconds allows
# to detect that, and if the publisher dies we will enable the lock
# - priority: priority in the range [0, 255], so all the topics with priority lower than it
# will be stopped/disabled

locks:
-
name : pause_navigation
topic : twist_mux/locks/pause_navigation
timeout : 0.0
priority: 21
-
name : pause_teleop
topic : twist_mux/locks/pause_teleop
timeout : 0.0
priority: 101
-
name : pause_all
topic : twist_mux/locks/pause_all
timeout : 0.0
priority: 255
43 changes: 43 additions & 0 deletions cob_hardware_config/robots/raw-mini/config/twist_mux_topics.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# Input topics handled/muxed.
# For each topic:
# - name : name identifier to select the topic
# - topic : input topic of geometry_msgs::Twist type
# - timeout : timeout in seconds to start discarding old messages, and use 0.0 speed instead
# - priority: priority in the range [0, 255]; the higher the more priority over other topics

topics:
-
name : collision_velocity_filter
topic : twist_mux/command_safe
timeout : 0.25
priority: 10
-
name : navigation
topic : twist_mux/command_navigation
timeout : 0.25
priority: 20
-
name : syncmm # cob_twist_controller
topic : twist_mux/command_syncmm
timeout : 0.5
priority: 60
-
name : script_server
topic : twist_mux/command_script_server
timeout : 0.5
priority: 70
-
name : teleop_keyboard
topic : twist_mux/command_teleop_keyboard
timeout : 0.5
priority: 80
-
name : teleop_android
topic : twist_mux/command_teleop_android
timeout : 0.5
priority: 90
-
name : teleop_joystick
topic : twist_mux/command_teleop_joy
timeout : 0.25
priority: 100
23 changes: 23 additions & 0 deletions cob_hardware_config/robots/raw-mini/config/velocity_smoother.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Example configuration:
# - velocity limits are around a 10% above the physical limits
# - acceleration limits are just low enough to avoid jerking

# Mandatory parameters
speed_lim_vx: 1.0
speed_lim_vy: 1.0
speed_lim_w: 1.0

accel_lim_vx: 0.5
accel_lim_vy: 0.5
accel_lim_w: 0.5

# Optional parameters
frequency: 100.0
decel_factor: 1.5 #used if zero velocity is received or goal velocity is far away from current velocity
decel_factor_safe: 3.5 #used if no velocity commands received (eg. no deadman on joystick)

# Robot velocity feedback type:
# 0 - none
# 1 - odometry
# 2 - end robot commands
robot_feedback: 1
Loading