Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
f830449
Absolem: Added sensor configs 6, 7 and 8.
peci1 Mar 31, 2021
d590542
remove ros from the x500 plugin (#891)
nkoenig Apr 14, 2021
84edcfd
Model Submission for Emesent Hovermap (#892)
acschang Apr 14, 2021
20ccaf2
Model Submission for CTU-CRAS-NORLAB MARV (#886)
acschang Apr 14, 2021
acd21f9
Model submission for BOSDYN_SPOT and two sensor configs of CTU-CRAS-N…
peci1 Apr 16, 2021
6287011
added feedforward to bridge, controller msgs are now printed only onc…
petrlmat Apr 16, 2021
a7d8b76
Set the state properly when recording is complete (#894)
nkoenig Apr 16, 2021
9ccdba7
Absolem: Remove debug visuals [SDF 1.6] (#878)
peci1 Apr 16, 2021
3bfb396
Add missing robot platform types (#890)
nkoenig Apr 16, 2021
8fa3d39
Fix CMakeLists (#897)
peci1 Apr 16, 2021
94abceb
Model Submission for CTU-CRAS-NORLAB Lily hexapod robot, sensor confi…
xpetresx Apr 19, 2021
25b51b0
Spot: Disable nodelets because of spurious broken bonds. (#898)
peci1 Apr 19, 2021
cf24e0f
Model Submission for Coordinated Robotics' Crystal UAV Sensor Config …
knoedler Apr 21, 2021
c6f1dea
Model Submission for Coordinated Robotics Rocky Sensor Configs 1, 2 a…
knoedler Apr 21, 2021
bc3b81b
Model Submission Coordinated Robotics Mike (#845)
knoedler Apr 22, 2021
8fa6b79
Move battery plugin to the end of plugin list (#901)
mjcarroll Apr 22, 2021
369557f
fixed pose of rs_up, rs_down rgbd cameras (#903)
petrlmat Apr 22, 2021
d60ef23
Update robot classes and marsupial pairs (#900)
nkoenig Apr 22, 2021
4ddfff2
Update to use the lattest fog emitter code (#896)
nkoenig Apr 22, 2021
cd57ca8
fixed fx, fy focal length of front camera to be consistent with hfov …
petrlmat Apr 26, 2021
f4ce7ca
add set_rate service to X500 UAV (#906)
petrlmat Apr 26, 2021
8dd0aa3
dot_generator tweaks for tunnels (#884)
caguero Apr 27, 2021
4a38d45
Absolem: Changed lidar and thermocam parameters, fixed RViz model.
peci1 May 1, 2021
6556bb5
Merge branch 'master' into submitted_models/ctu_cras_norlab_absolem_i…
peci1 May 1, 2021
9011cda
Merge branch 'submitted_models/ctu_cras_norlab_absolem_improved' into…
peci1 May 1, 2021
5583780
Absolem: Added Basler cameras intrinsics.
peci1 May 1, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
51 changes: 37 additions & 14 deletions docker/subt_sim_entry/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,13 @@ FROM osrf/subt-virtual-testbed:models_latest
RUN sudo apt-get update -qq \
&& sudo apt-get install --no-install-recommends -y -qq \
build-essential \
bwm-ng \
atop \
cmake \
cppcheck \
gdb \
git \
gnutls-bin \
libbluetooth-dev \
libccd-dev \
libcwiid-dev \
Expand All @@ -30,8 +33,18 @@ RUN sudo apt-get update -qq \
net-tools \
iputils-ping \
libyaml-cpp-dev \
xvfb \
g++-8 \
&& sudo apt-get clean -qq

RUN sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 800 --slave /usr/bin/g++ g++ /usr/bin/g++-8 --slave /usr/bin/gcov gcov /usr/bin/gcov-8

RUN gcc --version

# Install AWS CLI. This is needed by cloudsim to capture ROS logs.
RUN pip3 install --upgrade awscli=="1.16.220"
VOLUME /root/.aws

# install ROS and required packages
RUN sudo /bin/sh -c 'echo "deb [trusted=yes] http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' \
&& sudo apt-get update -qq \
Expand All @@ -50,15 +63,7 @@ RUN sudo /bin/sh -c 'echo "deb [trusted=yes] http://packages.ros.org/ros/ubuntu
ros-melodic-rotors-control \
ros-melodic-theora-image-transport \
&& sudo rosdep init \
&& sudo apt-get clean -qq

# Make a couple folders for organizing docker volumes
RUN mkdir ~/workspaces ~/other

# When running a container start in the developer's home folder
WORKDIR /home/$USERNAME

RUN rosdep update
&& sudo apt-get clean

# sdformat8-sdf conflicts with sdformat-sdf installed from gazebo
# so we need to workaround this using a force overwrite
Expand All @@ -68,8 +73,8 @@ RUN sudo /bin/sh -c 'echo "deb [trusted=yes] http://packages.osrfoundation.org/g
&& sudo /bin/sh -c 'apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654'

# install ign-dome
RUN sudo apt-get update -qq \
&& sudo apt-get install -y -qq \
RUN sudo apt-get update \
&& sudo apt-get install -y \
ignition-dome \
&& sudo apt-get clean

Expand All @@ -79,16 +84,34 @@ RUN sudo apt-get update \
ros-melodic-ros-ign \
&& sudo apt-get clean -qq

# Clone all the subt models so that you don't download them every time
# docker is run
# Make a couple folders for organizing docker volumes
RUN mkdir ~/workspaces ~/other

# When running a container start in the developer's home folder
WORKDIR /home/$USERNAME

# Install subt sim
RUN mkdir -p subt_ws/src \
&& cd subt_ws/src \
&& git config --global http.postBuffer 1048576000 \
&& git clone https://github.com/osrf/subt

# Install dependencies
RUN . /opt/ros/melodic/setup.sh \
&& rosdep update \
&& sudo apt-get update \
&& rosdep install -y --from-paths . --ignore-src -r \
--skip-keys=ignition-transport9 \
--skip-keys=ignition-math6 \
--skip-keys=ignition-msgs6 \
--skip-keys=ignition-plugin1 \
--skip-keys=ignition-common3 \
--skip-keys=ignition-launch2 \
&& sudo apt-get clean -qq

WORKDIR /home/$USERNAME/subt_ws

RUN /bin/bash -c 'source /opt/ros/melodic/setup.bash && catkin_make -DCMAKE_BUILD_TYPE=Release install'

RUN /bin/sh -c 'echo ". /opt/ros/melodic/setup.bash" >> ~/.bashrc' \
&& /bin/sh -c 'echo ". ~/subt_ws/install/setup.sh" >> ~/.bashrc'

Expand Down
1 change: 1 addition & 0 deletions submitted_models/bosdyn_spot/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
model.sdf.urdf
91 changes: 91 additions & 0 deletions submitted_models/bosdyn_spot/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
cmake_minimum_required(VERSION 3.10.0)
project(bosdyn_spot)

set(CMAKE_CXX_STANDARD 17)

set(IGN_GAZEBO_VER 4)
find_package(ignition-gazebo${IGN_GAZEBO_VER} REQUIRED)

set(DEPS control_toolbox dynamic_reconfigure ros_ign_bridge nodelet roscpp)
set(MSG_DEPS std_msgs geometry_msgs)

find_package(catkin REQUIRED COMPONENTS ${DEPS} ${MSG_DEPS} message_generation)

add_message_files(FILES Contact.msg ContactsStamped.msg LogicalContact.msg)
generate_messages(DEPENDENCIES ${MSG_DEPS})

catkin_package(CATKIN_DEPENDS ${DEPS} ${MSG_DEPS} message_runtime)

add_library(multi-joint-command-system src/multi_joint_command.cpp)
target_link_libraries(multi-joint-command-system
PRIVATE ignition-gazebo${IGN_GAZEBO_VER}::core
)

add_library(foot_contact_bridge src/foot_contact_bridge.cpp)
target_include_directories(foot_contact_bridge PUBLIC ${catkin_INCLUDE_DIRS})
target_link_libraries(foot_contact_bridge
PUBLIC ignition-gazebo${IGN_GAZEBO_VER}::core ${catkin_LIBRARIES}
)
add_dependencies(foot_contact_bridge ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})

add_library(logical_contact_bridge src/logical_contact_bridge.cpp)
target_include_directories(logical_contact_bridge PUBLIC ${catkin_INCLUDE_DIRS})
target_link_libraries(logical_contact_bridge
PUBLIC ignition-gazebo${IGN_GAZEBO_VER}::core ${catkin_LIBRARIES}
)
add_dependencies(logical_contact_bridge ${${PROJECT_NAME}_EXPORTED_TARGETS} ${catkin_EXPORTED_TARGETS})

add_library(logical-contact-system src/logical_contact_system.cpp)
target_link_libraries(logical-contact-system
PRIVATE ignition-gazebo${IGN_GAZEBO_VER}::core
)

add_library(pid_control_bridge src/pid_control_bridge.cpp)
target_include_directories(pid_control_bridge PUBLIC ${catkin_INCLUDE_DIRS})
target_link_libraries(pid_control_bridge
PUBLIC ignition-gazebo${IGN_GAZEBO_VER}::core ${catkin_LIBRARIES}
)
add_dependencies(pid_control_bridge ${catkin_EXPORTED_TARGETS})

add_library(joint_trajectory_bridge src/joint_trajectory_bridge.cpp)
target_include_directories(joint_trajectory_bridge PUBLIC ${catkin_INCLUDE_DIRS})
target_link_libraries(joint_trajectory_bridge
PUBLIC ignition-gazebo${IGN_GAZEBO_VER}::core ${catkin_LIBRARIES}
)
add_dependencies(joint_trajectory_bridge ${catkin_EXPORTED_TARGETS})

add_library(configurable-joint-position-controller-system src/configurable_joint_position_controller.cpp)
target_link_libraries(configurable-joint-position-controller-system
PRIVATE ignition-gazebo${IGN_GAZEBO_VER}::core
)

add_library(mono-camera-system src/mono_camera_system.cpp)
target_link_libraries(mono-camera-system
PRIVATE ignition-gazebo${IGN_GAZEBO_VER}::core
)

install(TARGETS
configurable-joint-position-controller-system
joint_trajectory_bridge
multi-joint-command-system
pid_control_bridge
foot_contact_bridge
logical-contact-system
logical_contact_bridge
mono-camera-system
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)

install(PROGRAMS scripts/clean_sdf scripts/high_precision_constants.py scripts/print_robot_urdf scripts/yaml_to_xacro_args
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}/scripts)

install(DIRECTORY config launch meshes urdf worlds
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})

install(FILES model.sdf model.config nodelets.xml
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})

catkin_install_python(PROGRAMS nodes/pid_multituner
DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION})
5 changes: 5 additions & 0 deletions submitted_models/bosdyn_spot/Changelog.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Changelog

## 1.0.0

- First working version.
30 changes: 30 additions & 0 deletions submitted_models/bosdyn_spot/config/ekf/base_to_footprint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
frequency: 50

transform_timeout: 0.01
transform_time_offset: 0.045

two_d_mode: false
# diagnostics_agg: true

#x , y , z,
#roll , pitch , yaw,
#vx , vy , vz,
#vroll , vpitch, vyaw,
#ax , ay , az

pose0: base_to_footprint_pose
pose0_config: [true, true, true,
true, true, true,
false, false, false,
false, false, false,
false, false, false]

#imu0: imu/data
#imu0_config: [false, false, false,
# false, false, false,
# true, true, true,
# false, false, false,
# false, false, false]

odom_frame: base_footprint
world_frame: base_footprint
31 changes: 31 additions & 0 deletions submitted_models/bosdyn_spot/config/ekf/footprint_to_odom.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
frequency: 50

transform_timeout: 0.01
# transform_time_offset: 0.05

two_d_mode: true
# diagnostics_agg: true

#x , y , z,
#roll , pitch , yaw,
#vx , vy , vz,
#vroll , vpitch, vyaw,
#ax , ay , az

odom0: odom/raw
odom0_config: [false, false, false,
false, false, false,
true, true, false,
false, false, true,
false, false, false]

imu0: imu/data
imu0_config: [false, false, false,
false, false, true,
false, false, false,
false, false, true,
false, false, false]

odom_frame: odom
base_link_frame: base_footprint
world_frame: odom
12 changes: 12 additions & 0 deletions submitted_models/bosdyn_spot/config/gait/gait.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
knee_orientation : ">>"
pantograph_leg : false
odom_scaler: 1.0
max_linear_velocity_x : 1.5
max_linear_velocity_y : 0.25
max_angular_velocity_z : 0.5
# the following parameters affect stability of the gait
com_x_translation : -0.1
swing_height : 0.08
stance_depth : -0.01
stance_duration : 0.3 # affects max speed and stability
nominal_height : 0.48
23 changes: 23 additions & 0 deletions submitted_models/bosdyn_spot/config/joints/joints.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
left_front:
- front_left_hip_x
- front_left_hip_y
- front_left_knee
- front_left_foot

right_front:
- front_right_hip_x
- front_right_hip_y
- front_right_knee
- front_right_foot

left_hind:
- rear_left_hip_x
- rear_left_hip_y
- rear_left_knee
- rear_left_foot

right_hind:
- rear_right_hip_x
- rear_right_hip_y
- rear_right_knee
- rear_right_foot
24 changes: 24 additions & 0 deletions submitted_models/bosdyn_spot/config/links/links.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
base: body # this should not have the namespace, it is added in state_estimation
left_front:
- $(arg name)/front_left_hip
- $(arg name)/front_left_upper_leg
- $(arg name)/front_left_lower_leg
- $(arg name)/front_left_ee

right_front:
- $(arg name)/front_right_hip
- $(arg name)/front_right_upper_leg
- $(arg name)/front_right_lower_leg
- $(arg name)/front_right_ee

left_hind:
- $(arg name)/rear_left_hip
- $(arg name)/rear_left_upper_leg
- $(arg name)/rear_left_lower_leg
- $(arg name)/rear_left_ee

right_hind:
- $(arg name)/rear_right_hip
- $(arg name)/rear_right_upper_leg
- $(arg name)/rear_right_lower_leg
- $(arg name)/rear_right_ee
12 changes: 12 additions & 0 deletions submitted_models/bosdyn_spot/config/model/common.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
leg_kp: 1e+7
leg_kd: 100.0
leg_mu1: 0.8
leg_mu2: 0.8
# leg_fdir1: '0 0 1'

max_knee_effort: 80
max_knee_velocity: 15
max_hip_x_effort: 80
max_hip_x_velocity: 15
max_hip_y_effort: 80
max_hip_y_velocity: 15
1 change: 1 addition & 0 deletions submitted_models/bosdyn_spot/config/model/ign.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rendering_target: ign
1 change: 1 addition & 0 deletions submitted_models/bosdyn_spot/config/model/urdf.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
rendering_target: urdf
15 changes: 15 additions & 0 deletions submitted_models/bosdyn_spot/config/ros_control/ros_control.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
"":
joint_group_position_controller:
gains: # also good: 380, 0.2, 5.75
front_left_hip_x : {p: 250, i: 0.2, d: 5.0}
front_left_hip_y : {p: 250, i: 0.2, d: 5.0}
front_left_knee : {p: 250, i: 0.2, d: 5.0}
front_right_hip_x : {p: 250, i: 0.2, d: 5.0}
front_right_hip_y : {p: 250, i: 0.2, d: 5.0}
front_right_knee : {p: 250, i: 0.2, d: 5.0}
rear_left_hip_x : {p: 250, i: 0.2, d: 5.0}
rear_left_hip_y : {p: 250, i: 0.2, d: 5.0}
rear_left_knee : {p: 250, i: 0.2, d: 5.0}
rear_right_hip_x : {p: 250, i: 0.2, d: 5.0}
rear_right_hip_y : {p: 250, i: 0.2, d: 5.0}
rear_right_knee : {p: 250, i: 0.2, d: 5.0}
Loading