-
Notifications
You must be signed in to change notification settings - Fork 104
Model submission for Husky sensor configuration 1 by Marble #384
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
86 commits
Select commit
Hold shift + click to select a range
7a63579
test commit
bfotheri 329de4c
Close branch submitted_models/marble_husky_sensor_config_1.
bfotheri 030c799
Added files for husky. Name will need to be changed
a192cfb
trying to commit husky stuff
5caea1e
creating hd2 branch
3d3e31e
Downward facing facing is there
bfotheri 5aafe9e
working on qav500
890e3fa
Got all sensor positioned and represented visually up to the pan tilt…
bfotheri db38616
Model sdf now has the gimbal pan, still unsure of how to control it t…
bfotheri fc7865f
Until the joints can be tested this is where the marble hsuky model w…
bfotheri 2a60738
Got the joint state controller and publisher added in. Pan/Tilt
4da704e
More works needs to be done on bridges to control gimbal, but comment…
bfotheri 6fa2260
adding hd2. stl of tracked vehicle is in
875f505
We can now command the gimbal pan/tilt using ros topics as long as yo…
6dee0db
Rudimentary visuals done
bfotheri 8b1987f
Merged Brett's changes with mine
173d7fa
Fixed the joint publisher. Topic shows up in ros as /<vehicle name>/…
e53d69e
hd2 model in. Working on sensors
5d518e0
Removing non-hd2 vehicles from this branch
25aac74
Update sdf file, add test_gimbal script, add specifications.md file, …
04215ba
Added the xacro file for rviz
13cbf0f
added a file
0252f36
Started over on sdf file by starting with husky file and just replaci…
79727f5
How about now?? remerging!
e5ef73b
Updated sensor description in package.xml
a2f9261
Got the pan/tilt and all vehicle topics working, I think. Need to go…
76ee296
Added urdf file (xacro) for rviz
7ed1b24
Updated the IMU model to match the specs from datasheet for Microstra…
849d602
Updated IMU model to Microstrain 3DM-GX5-25 as in HD2. Added link to…
e5ef8d8
Add pan and tilt echoing scripts
431e524
Updated and completed specifications.md file for husky
68f4f53
Put in four wheels and modified the differential drive system
bfotheri 522eff6
Updated package.xml, specifications.md, and added Build instructions …
42977bc
Merged Brett's extra wheel changes and fixed a typo.
7e2b587
Couple of edits to description files.
f5197bd
added tracks. modified sensor placement
b1d6527
merging with previous commits
4b4e1a2
Updated the xacro
44489a7
Update cost info in specs.
b15e791
Update cost info
d962d1e
Fixed 3d Lidar obstructions
bfotheri 7ce345e
Get rid of garbage file...
03f5e6b
Merged default branch (synced from upstream) into marble_husky branch
c0274a9
Merge default branch into marble_hd2.
d772ca3
Merged upstream
6679d24
Fixed position of lidar and plate sensor
bfotheri 02572a3
Merged the two heads
bfotheri ce3818e
Fixed urdf and xacro
c54ddd4
Updated xacro/urdf file
93a7e29
Fixing inertia gimbal problems
bfotheri 8db54ee
Fixing gimbal inertia
bfotheri 4309536
Fixing gimbal inertia, using rod inertia formulas
bfotheri ff81571
Fixing gimbal inertia, using rod inertia formulas, and correct tabbing
bfotheri ef8e1d9
Updated intertias using rod formulas
bfotheri 0d2418c
Branch for pull request #427
nkoenig e156f80
Branch for pull request #426
nkoenig e6952a6
Merged in derekvasquez/marble_submitted_models/submitted_models/marbl…
nkoenig a2c6bbe
Merged in derekvasquez/marble_submitted_models/submitted_models/marbl…
nkoenig 4a88755
Fix scientific notation in husky model.sdf file
realdealneil baae569
Removed scientific notation in model.sdf file IMU settings
realdealneil c605f82
reduce the resolution of the husky cameras. At 720p, everything is r…
realdealneil 8304f65
Merge pull request #1 from marblesubt/model_pr_426
realdealneil ed75f16
Merge pull request #2 from marblesubt/submitted_models/marble_hd2_sen…
realdealneil bea8c23
Updated ouster lidar sensor model
bfotheri d6bb580
Updated ouster lidar model
bfotheri 0d9bc0e
Merge branch 'model_pr_426' of https://github.com/realdealneil/subt i…
realdealneil 79e0a7c
Merge branch 'model_pr_427' of https://github.com/realdealneil/subt i…
realdealneil 455c5a4
Reduce resolution of cameras on hd2 to 640x480 to help simulation wor…
realdealneil 7eee760
Changed the forward and downward facing rgbd cameras to use a lower r…
realdealneil d6b9441
Reduce resolution of forward and downward rgbd cameras to help simula…
realdealneil f067923
Removing hd2 from husky branch. It shouldn't be here.
realdealneil caa9964
Fix the mount angle and sweep angle of the light, and fix the pose o…
realdealneil 6a11751
Merge pull request #399 from realdealneil/model_pr_426
nkoenig 1d2062f
Merge branch 'master' into model_pr_426
bfotheri bf85a41
updated with master
bfotheri fd9ad0c
changing from OS1 gen 2 to OS1 gen 1
bfotheri 37ef025
updated IMU to X1 model
bfotheri 656b10b
Merge pull request #456 from realdealneil/model_pr_426
acschang 65acd3c
Updated branch based on recommended PR changes (#464)
bfotheri 4e80116
Merge branch 'cave_feature_release3' into model_pr_426
252b726
Added to download script
5facc3e
Change pan/tilt joints to be controlled by force commands.
caguero c3a79f8
Tweak gimbal limits
caguero 9d80031
Merge branch 'cave_feature_release3' into model_pr_426
677a7fe
Merged and added missing download
d89eadf
Merge branch 'model_pr_426' of github.com:osrf/subt into model_pr_426
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
20 changes: 20 additions & 0 deletions
20
submitted_models/marble_husky_sensor_config_1/.vscode/c_cpp_properties.json
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
{ | ||
"configurations": [ | ||
{ | ||
"browse": { | ||
"databaseFilename": "", | ||
"limitSymbolsToIncludedHeaders": true | ||
}, | ||
"includePath": [ | ||
"/opt/ros/melodic/include/**", | ||
"/usr/include/**" | ||
], | ||
"name": "ROS", | ||
"intelliSenseMode": "gcc-x64", | ||
"compilerPath": "/usr/local/cuda/bin/gcc", | ||
"cStandard": "c11", | ||
"cppStandard": "c++17" | ||
} | ||
], | ||
"version": 4 | ||
} |
5 changes: 5 additions & 0 deletions
5
submitted_models/marble_husky_sensor_config_1/.vscode/settings.json
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
{ | ||
"python.autoComplete.extraPaths": [ | ||
"/opt/ros/melodic/lib/python2.7/dist-packages" | ||
] | ||
} |
21 changes: 21 additions & 0 deletions
21
submitted_models/marble_husky_sensor_config_1/BuildingCustomRosIgnBridgeForMarble.txt
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
# Building ros_ign_bridge to make pan/tilt gimbal work (on marble vehicles): | ||
|
||
First, follow instructions for building from source on this page: | ||
https://github.com/osrf/ros_ign/tree/melodic/ros_ign_bridge | ||
|
||
Except, use the following clone URL instead: | ||
git clone https://github.com/osrf/ros_ign.git -b melodic | ||
|
||
Once you've built, you will need to stack your workspace (subt workspace) | ||
on top of this workspace. To do this, do as follows: | ||
|
||
``` | ||
cd ~/subt_ws | ||
rm -rf build devel install | ||
source /opt/ros/melodic/setup.bash | ||
source ~/bridge_ws/install/setup.bash | ||
catkin_make install | ||
``` | ||
|
||
Once the binaries for this package are updated a simple "sudo apt-get install ros-melodic-ros-ign-bridge" will suffice for installation | ||
|
13 changes: 13 additions & 0 deletions
13
submitted_models/marble_husky_sensor_config_1/CMakeLists.txt
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
cmake_minimum_required(VERSION 2.8.3) | ||
project(marble_husky_sensor_config_1) | ||
|
||
find_package(catkin REQUIRED) | ||
|
||
catkin_package() | ||
|
||
install(DIRECTORY launch meshes materials urdf | ||
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}) | ||
|
||
install(FILES model.sdf model.config | ||
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}) | ||
|
6 changes: 6 additions & 0 deletions
6
submitted_models/marble_husky_sensor_config_1/launch/description.launch
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
<?xml version="1.0"?> | ||
<launch> | ||
<arg name="name" doc="Name of Vehicle"/> | ||
<param name="$(arg name)/robot_description" command="$(find xacro)/xacro '$(find marble_husky_sensor_config_1)/urdf/robot_from_sdf.xacro' name:=$(arg name)"/> | ||
</launch> | ||
|
169 changes: 169 additions & 0 deletions
169
submitted_models/marble_husky_sensor_config_1/launch/example.ign
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,169 @@ | ||
<?xml version="1.0"?> | ||
<!-- Usage: ign launch path/to/example.ign robotName:=<X1> | ||
|
||
Parameters: | ||
robotName: Name to be assigned to model | ||
--> | ||
|
||
<% | ||
require_relative 'spawner' | ||
|
||
# Modify these as needed | ||
$enableGroundTruth = true | ||
$headless = local_variables.include?(:headless) ? :headless : false | ||
|
||
%> | ||
|
||
<% | ||
unless local_variables.include?(:robotName) | ||
raise "missing parameters. robotName is a required parameter" | ||
end | ||
|
||
# This assumes that this launch file is in a directory below the model | ||
modelURI = File.expand_path("../", File.dirname(__FILE__)) | ||
$worldName = 'example' | ||
worldFile = File.join(File.expand_path("../worlds", File.dirname(__FILE__)), "#{$worldName}.sdf") | ||
|
||
%> | ||
|
||
<ignition version='1.0'> | ||
<env> | ||
<name>IGN_GAZEBO_SYSTEM_PLUGIN_PATH</name> | ||
<value>$LD_LIBRARY_PATH</value> | ||
</env> | ||
|
||
<!-- Start ROS first. This is a bit hacky for now. --> | ||
<!-- Make sure to source /opt/ros/melodic/setup.bash --> | ||
<executable name='ros'> | ||
<command>roslaunch subt_ros competition_init.launch world_name:=<%=$worldName%> vehicle_topics:=0 enable_ground_truth:=<%=($enableGroundTruth)?"1":"0"%> robot_names:=<%=robotName%></command> | ||
</executable> | ||
|
||
<plugin name="ignition::launch::GazeboServer" | ||
filename="libignition-launch-gazebo.so"> | ||
<world_file><%= worldFile %></world_file> | ||
<run>true</run> | ||
<levels>false</levels> | ||
<record> | ||
<enabled>false</enabled> | ||
</record> | ||
|
||
<plugin entity_name="<%= $worldName %>" | ||
entity_type="world" | ||
filename="libignition-gazebo-physics-system.so" | ||
name="ignition::gazebo::systems::Physics"> | ||
</plugin> | ||
|
||
<plugin entity_name="<%= $worldName %>" | ||
entity_type="world" | ||
filename="libignition-gazebo-sensors-system.so" | ||
name="ignition::gazebo::systems::Sensors"> | ||
<render_engine>ogre2</render_engine> | ||
</plugin> | ||
<plugin entity_name="<%= $worldName %>" | ||
entity_type="world" | ||
filename="libignition-gazebo-user-commands-system.so" | ||
name="ignition::gazebo::systems::UserCommands"> | ||
</plugin> | ||
<plugin entity_name="<%= $worldName %>" | ||
entity_type="world" | ||
filename="libignition-gazebo-scene-broadcaster-system.so" | ||
name="ignition::gazebo::systems::SceneBroadcaster"> | ||
</plugin> | ||
<plugin entity_name="<%= $worldName %>" | ||
entity_type="world" | ||
filename="libignition-gazebo-imu-system.so" | ||
name="ignition::gazebo::systems::Imu"> | ||
</plugin> | ||
|
||
<plugin entity_name="<%= $worldName %>" | ||
entity_type="world" | ||
filename="libignition-gazebo-magnetometer-system.so" | ||
name="ignition::gazebo::systems::Magnetometer"> | ||
</plugin> | ||
|
||
<plugin entity_name="<%= $worldName %>" | ||
entity_type="world" | ||
filename="libignition-gazebo-air-pressure-system.so" | ||
name="ignition::gazebo::systems::AirPressure"> | ||
</plugin> | ||
</plugin> | ||
|
||
<%if !$headless %> | ||
<executable_wrapper> | ||
<plugin name="ignition::launch::GazeboGui" | ||
filename="libignition-launch-gazebogui.so"> | ||
<world_name><%= $worldName %></world_name> | ||
<window_title>SubT Simulator</window_title> | ||
<window_icon><%= ENV['SUBT_IMAGES_PATH'] %>/SubT_logo.svg</window_icon> | ||
<plugin filename="GzScene3D" name="3D View"> | ||
<ignition-gui> | ||
<title>3D View</title> | ||
<property type="bool" key="showTitleBar">false</property> | ||
<property type="string" key="state">docked</property> | ||
</ignition-gui> | ||
|
||
<engine>ogre2</engine> | ||
<scene>scene</scene> | ||
<ambient_light>0.2 0.2 0.1</ambient_light> | ||
<background_color>0.8 0.8 0.8</background_color> | ||
<camera_pose>-6.3 -4.2 3.6 0 0.268 0.304</camera_pose> | ||
<service>/world/<%= $worldName %>/scene/info</service> | ||
<pose_topic>/world/<%= $worldName %>/pose/info</pose_topic> | ||
<scene_topic>/world/<%= $worldName %>/scene/info</scene_topic> | ||
<deletion_topic>/world/<%= $worldName %>/scene/deletion</deletion_topic> | ||
</plugin> | ||
<plugin filename="WorldControl" name="World control"> | ||
<ignition-gui> | ||
<title>World control</title> | ||
<property type="bool" key="showTitleBar">false</property> | ||
<property type="bool" key="resizable">false</property> | ||
<property type="double" key="height">72</property> | ||
<property type="double" key="width">121</property> | ||
<property type="double" key="z">1</property> | ||
|
||
<property type="string" key="state">floating</property> | ||
<anchors target="3D View"> | ||
<line own="left" target="left"/> | ||
<line own="bottom" target="bottom"/> | ||
</anchors> | ||
</ignition-gui> | ||
|
||
<play_pause>true</play_pause> | ||
<step>true</step> | ||
<start_paused>true</start_paused> | ||
<service>/world/<%= $worldName %>/control</service> | ||
<stats_topic>/world/<%= $worldName %>/stats</stats_topic> | ||
|
||
</plugin> | ||
|
||
<plugin filename="WorldStats" name="World stats"> | ||
<ignition-gui> | ||
<title>World stats</title> | ||
<property type="bool" key="showTitleBar">false</property> | ||
<property type="bool" key="resizable">false</property> | ||
<property type="double" key="height">110</property> | ||
<property type="double" key="width">290</property> | ||
<property type="double" key="z">1</property> | ||
|
||
<property type="string" key="state">floating</property> | ||
<anchors target="3D View"> | ||
<line own="right" target="right"/> | ||
<line own="bottom" target="bottom"/> | ||
</anchors> | ||
</ignition-gui> | ||
|
||
<sim_time>true</sim_time> | ||
<real_time>true</real_time> | ||
<real_time_factor>true</real_time_factor> | ||
<iterations>true</iterations> | ||
<topic>/world/<%= $worldName %>/stats</topic> | ||
</plugin> | ||
</plugin> | ||
</executable_wrapper> | ||
<%end%> | ||
|
||
<%= spawner(robotName, modelURI, $worldName, 0, 0, 0, 0, 0, 0) %> | ||
<%= rosExecutables(robotName, $worldName) %> | ||
|
||
</ignition> | ||
|
76 changes: 76 additions & 0 deletions
76
submitted_models/marble_husky_sensor_config_1/launch/spawner.rb
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,76 @@ | ||
def spawner(_name, _modelURI, _worldName, _x, _y, _z, _roll, _pitch, _yaw) | ||
<<-HEREDOC | ||
<spawn name='#{_name}'> | ||
<name>#{_name}</name> | ||
<allow_renaming>false</allow_renaming> | ||
<pose>#{_x} #{_y} #{_z + 0.2} #{_roll} #{_pitch} #{_yaw}</pose> | ||
<world>#{_worldName}</world> | ||
<is_performer>true</is_performer> | ||
<sdf version='1.6'> | ||
<include> | ||
<name>#{_name}</name> | ||
<uri>#{_modelURI}</uri> | ||
<!-- Diff drive --> | ||
<plugin filename="libignition-gazebo-diff-drive-system.so" | ||
name="ignition::gazebo::systems::DiffDrive"> | ||
<left_joint>front_left_wheel_joint</left_joint> | ||
<left_joint>rear_left_wheel_joint</left_joint> | ||
<right_joint>front_right_wheel_joint</right_joint> | ||
<right_joint>rear_right_wheel_joint</right_joint> | ||
<wheel_separation>#{0.45649 * 1.5}</wheel_separation> | ||
<wheel_radius>0.1651</wheel_radius> | ||
<topic>/model/#{_name}/cmd_vel_relay</topic> | ||
<min_velocity>-1</min_velocity> | ||
<max_velocity>1</max_velocity> | ||
<min_acceleration>-3</min_acceleration> | ||
<max_acceleration>3</max_acceleration> | ||
</plugin> | ||
<!-- Publish robot state information --> | ||
<plugin filename="libignition-gazebo-pose-publisher-system.so" | ||
name="ignition::gazebo::systems::PosePublisher"> | ||
<publish_link_pose>true</publish_link_pose> | ||
<publish_sensor_pose>true</publish_sensor_pose> | ||
<publish_collision_pose>false</publish_collision_pose> | ||
<publish_visual_pose>false</publish_visual_pose> | ||
<publish_nested_model_pose>#{$enableGroundTruth}</publish_nested_model_pose> | ||
<use_pose_vector_msg>true</use_pose_vector_msg> | ||
<static_publisher>true</static_publisher> | ||
<static_update_frequency>1</static_update_frequency> | ||
</plugin> | ||
<!-- Battery plugin --> | ||
<plugin filename="libignition-gazebo-linearbatteryplugin-system.so" | ||
name="ignition::gazebo::systems::LinearBatteryPlugin"> | ||
<battery_name>linear_battery</battery_name> | ||
<voltage>12.694</voltage> | ||
<open_circuit_voltage_constant_coef>12.694</open_circuit_voltage_constant_coef> | ||
<open_circuit_voltage_linear_coef>-3.1424</open_circuit_voltage_linear_coef> | ||
<initial_charge>78.4</initial_charge> | ||
<capacity>78.4</capacity> | ||
<resistance>0.061523</resistance> | ||
<smooth_current_tau>1.9499</smooth_current_tau> | ||
<power_load>6.6</power_load> | ||
<start_on_motion>true</start_on_motion> | ||
</plugin> | ||
<!-- Gas Sensor plugin -->" | ||
<plugin filename="libGasEmitterDetectorPlugin.so" | ||
name="subt::GasDetector"> | ||
<topic>/model/#{_name}/gas_detected</topic> | ||
<update_rate>10</update_rate> | ||
<type>gas</type> | ||
</plugin> | ||
</include> | ||
</sdf> | ||
</spawn> | ||
HEREDOC | ||
end | ||
|
||
def rosExecutables(_name, _worldName) | ||
<<-HEREDOC | ||
<executable name='robot_description'> | ||
<command>roslaunch --wait marble_husky_sensor_config_1 description.launch world_name:=#{_worldName} name:=#{_name}</command> | ||
</executable> | ||
<executable name='topics'> | ||
<command>roslaunch --wait marble_husky_sensor_config_1 vehicle_topics.launch world_name:=#{_worldName} name:=#{_name}</command> | ||
</executable> | ||
HEREDOC | ||
end |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please, consider adding this block to limit the maximum velocities and accelerations:
These parameters have been introduced here.
You should also add it to the same file underrobotica_x2_sensor_config_1
.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done. PR will be submitted shortly to reflect these changes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry, I was reusing the same comment from other team. Feel free to ignore my comment about
robotika
.