Skip to content
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

Split Localizer into GraphVIO and GraphLocalizer #724

Merged
merged 783 commits into from
Jun 8, 2024
Merged
Show file tree
Hide file tree
Changes from 180 commits
Commits
Show all changes
783 commits
Select commit Hold shift + click to select a range
0f888a7
added resetting world t dock
rsoussan Feb 15, 2024
dcdc9b1
updated node name in gt localizer
rsoussan Feb 15, 2024
172a31a
updated launch names
rsoussan Feb 17, 2024
3ceccd8
updated offline launch tests
rsoussan Feb 17, 2024
df344df
adding missing loc params
rsoussan Feb 17, 2024
69663f4
fixed latest timestamp/pose calls
rsoussan Feb 17, 2024
60c5af2
fixed graph loc msg topic
rsoussan Feb 17, 2024
88c7681
updated offline replay launch files
rsoussan Feb 17, 2024
2d76c8c
updated add sparse map poses tool
rsoussan Feb 20, 2024
6372cbe
added missing vio sub
rsoussan Feb 21, 2024
cc3b1f1
fixed frame id
rsoussan Feb 21, 2024
37411a0
fixed start index bug
rsoussan Feb 21, 2024
1759d3c
updated imu bias extrapolator code
rsoussan Feb 22, 2024
9d88247
updated run imu bias extrapolator
rsoussan Feb 22, 2024
cb62b82
updated ff names
rsoussan Feb 22, 2024
6ba3b4d
added plotting imu bias poses
rsoussan Feb 27, 2024
88bfcde
added rmse calculation
rsoussan Feb 27, 2024
28e6d26
added more vio rmse plots
rsoussan Feb 27, 2024
f5babc2
added more rmse to loc and vio plotters
rsoussan Feb 27, 2024
0e32a6a
updated results csv filename
rsoussan Feb 27, 2024
4e10181
fixed csv formatting
rsoussan Feb 27, 2024
9bdd1bc
added param sweep tools
rsoussan Feb 28, 2024
86cc25e
fixed some param sweep plotting
rsoussan Feb 28, 2024
b7a3a2c
fixed more param results plotting
rsoussan Feb 28, 2024
55fd89d
fixed param sweeper
rsoussan Feb 28, 2024
4710938
fixed results plotting
rsoussan Feb 28, 2024
e9feb01
updated use image features param
rsoussan Feb 28, 2024
b1cb712
added bag and param sweep tool
rsoussan Feb 28, 2024
c52c32f
added graph vio manager
rsoussan Feb 28, 2024
8120fae
added results plotting to bag and param sweep
rsoussan Feb 28, 2024
af8c350
removed cout in offline replay
rsoussan Feb 28, 2024
3cd3d99
removed imu bias tester pkg
rsoussan Feb 28, 2024
6c50cf7
tuned granite table configs
rsoussan Mar 1, 2024
848daf1
tuned loc config
rsoussan Mar 5, 2024
221929a
updated to python3, updated some vio configs
rsoussan Mar 6, 2024
f5e457c
Merge branch 'split_localizer' of https://github.com/rsoussan/astrobe…
rsoussan Mar 6, 2024
d3216bd
tuned loc duration
rsoussan Mar 6, 2024
4034588
tuned num projection factors
rsoussan Mar 6, 2024
6d92b0b
added proper relative covariance calcualtion
rsoussan Mar 7, 2024
8be4e59
updated max number states
rsoussan Mar 7, 2024
1088c59
fixed correlation covariances
rsoussan Mar 7, 2024
ef1f2f4
added missing pose covariance msg
rsoussan Mar 7, 2024
448c0d8
prevent body tf from being published multiple times
rsoussan Mar 7, 2024
11c4ea0
added back fan speed mode support
rsoussan Mar 7, 2024
786b854
merge with dev
rsoussan Mar 11, 2024
e9192b7
updated check bag for gaps
rsoussan Mar 11, 2024
98139c8
reverted relative vio covariance to use distance based model
rsoussan Mar 13, 2024
1a2cc83
tuned rel cov, changed translation to be axis dependent
rsoussan Mar 13, 2024
3826d0d
updated todo
rsoussan Mar 13, 2024
61b84e8
fixed basex error
rsoussan Mar 13, 2024
65fa6ca
updated some configs
rsoussan Mar 13, 2024
04d04b0
fixed imu bias intiailizer reset bug
rsoussan Mar 13, 2024
3e2798e
lowered msg freq
rsoussan Mar 13, 2024
3117965
added ar tag pose adder
rsoussan Mar 15, 2024
27a9d7e
updated cal package
rsoussan Mar 18, 2024
44f8d93
removed ar tag pose adder
rsoussan Mar 18, 2024
e685721
undid adding extrapolated VIO to world_T_dock estimate
rsoussan Mar 18, 2024
f998e76
updated sliding window algorithm
rsoussan Mar 20, 2024
d0a84e0
added feature track image saving
rsoussan Mar 21, 2024
cf4763e
fixed docking error
rsoussan Apr 10, 2024
6f3b59c
install newer ar_track_alvar instead of alvar
marinagmoreira Apr 12, 2024
451a003
updated granite accel params, added features to feature track drawing
rsoussan Apr 17, 2024
3bed9ae
updated formatting
rsoussan Apr 17, 2024
8e58205
fixed param sweep groundturth bag file
rsoussan Apr 18, 2024
8fc5f69
Merge branch 'opencv4' of https://github.com/ana-GT/astrobee into ope…
marinagmoreira Apr 19, 2024
e29403b
compiling in ubuntu 20.04 with full opencv
marinagmoreira Apr 25, 2024
f06a989
reverting sim changes
marinagmoreira Apr 25, 2024
bf77177
fixing ar-track-alvar install
marinagmoreira Apr 25, 2024
907c752
add new alvar libs to gitignore
marinagmoreira Apr 26, 2024
70ae1c2
patch fixes cmake error
marinagmoreira Apr 26, 2024
0a193c1
reverting sim changes not related to this PR
marinagmoreira Apr 26, 2024
f1d6c4a
minimal opencv install of only xfeatures2d
marinagmoreira Apr 30, 2024
fb1fcfc
Merge branch 'develop' of https://github.com/nasa/astrobee into openc…
marinagmoreira Apr 30, 2024
b09f08f
config updates
rsoussan Apr 30, 2024
da292d7
fixing astrobee dependencies
marinagmoreira May 3, 2024
9d4abc6
Add debian build configuration for ar-track-alvar-msgs
May 3, 2024
29dfff7
Remove postinst and postrm files from alvar-msgs
May 3, 2024
1e10130
Add debian build configuration files for ar-track-alvar
May 3, 2024
1f0ae0e
Remove postinst and postrm from alvar
May 3, 2024
0377c59
Remove use of bloom-generate
May 3, 2024
2193ab6
Remove .dirs files since dh_install is enough
May 3, 2024
edb452b
Update opencv install files
May 3, 2024
0f3fb8a
Remove old alvar script
May 3, 2024
14476b3
Update opencv not-installed to include files from any architecture
May 3, 2024
4f61a0d
Update openmvg debian control files
May 3, 2024
8730eef
Upgrade dbow2 to OpenCV 4
May 3, 2024
8cca8b3
Increase version to reflect opencv4 upgrade
May 3, 2024
8f80e75
Merge branch 'develop' of https://github.com/nasa/astrobee into openc…
marinagmoreira May 4, 2024
7d94363
added imu extrapolation to loc ar estimate
rsoussan May 6, 2024
1afba84
added fan speed mode setting to graph vio
rsoussan May 6, 2024
49549ab
fixed setting fan speed mode in loc analysis
rsoussan May 6, 2024
75008c7
updated params, handling no cov in pose node adder model
rsoussan May 6, 2024
4b24de4
params update
rsoussan May 6, 2024
5f0c1ae
updated todo
rsoussan May 7, 2024
f7e4726
added graph loc vio nodelet
rsoussan May 7, 2024
487d79d
added passing graph vio msg to graph localizer wrapper in nodelet
rsoussan May 7, 2024
a4a883e
updated run call in graph loc vio nodelet
rsoussan May 8, 2024
c4385bd
added sparse map landmarks to graph vio for imu initialization
rsoussan May 9, 2024
87a693d
added vl msgs for initialization
rsoussan May 9, 2024
9f7859c
added missing config
rsoussan May 9, 2024
8641945
updated graph loc params
rsoussan May 9, 2024
07df3ff
updated todo
rsoussan May 9, 2024
33f0425
added check for measurements num factors in graph loc wrapper
rsoussan May 9, 2024
3ec6c28
added vl measurement count check to graph vio
rsoussan May 9, 2024
e6910eb
updated todo
rsoussan May 10, 2024
395c61b
updated graph vio params
rsoussan May 13, 2024
0ccb97d
added standstill plotting
rsoussan May 13, 2024
f7e411c
added plotting corrected accelerations
rsoussan May 13, 2024
f3c25d0
added plotting raw accels
rsoussan May 13, 2024
009f284
changed to ros graph localizer nodelet from localizervionodelet
rsoussan May 14, 2024
539b16c
removed nodelet relics in ros_graph_vio
rsoussan May 14, 2024
275cb53
fixed graph loc params
rsoussan May 14, 2024
1817593
merge with dev
rsoussan May 14, 2024
58ff81f
updated subs
rsoussan May 14, 2024
42566db
reverted subs
rsoussan May 14, 2024
e7b0c60
prevent double publishing world_T_body tf
rsoussan May 14, 2024
8348f0a
clang format
rsoussan May 14, 2024
cdc92af
Merge branch 'develop' of https://github.com/nasa/astrobee into openc…
marinagmoreira May 16, 2024
cfe0e22
added depth odom support
rsoussan May 17, 2024
320f915
updated graph vio config
rsoussan May 17, 2024
ecc3301
Add our custom CMake modules
May 17, 2024
73f6abd
Merge remote-tracking branch 'marina/opencv4_upgrade' into opencv4_up…
May 17, 2024
fac2322
added depth odom support to loc analysis
rsoussan May 17, 2024
9b90bc9
Merge remote-tracking branch 'marina/opencv4_upgrade' into split_loca…
rsoussan May 17, 2024
bfe9887
added graph vio fix
rsoussan May 17, 2024
c9be424
fix gen hugin script for ubuntu 20
marinagmoreira May 18, 2024
6d7c6f7
Merge branch 'opencv4_upgrade' of https://github.com/marinagmoreira/a…
marinagmoreira May 18, 2024
09a893a
added depth odom results plotter
rsoussan May 18, 2024
4e383bb
fixed do plotting
rsoussan May 18, 2024
0b1a20c
fixed do plotting
rsoussan May 18, 2024
79cea08
switched ar docking to ar frame
rsoussan May 19, 2024
24f66c4
added depth odometry relative point to point factor adder
rsoussan May 20, 2024
cd740c7
formatting
rsoussan May 20, 2024
a0c4d7e
added depth odom install
rsoussan May 20, 2024
6977bb4
remove ros-pcl dependency
marinagmoreira May 21, 2024
7331dd8
Update remove_pcl patch
May 22, 2024
45fef16
new branch
rsoussan May 22, 2024
4e7e276
removed prints
rsoussan May 22, 2024
a5ebe32
fixed print out
rsoussan May 22, 2024
5386746
Merge branch 'opencv4_upgrade' into split_localizer_unified_graph_loc…
rsoussan May 22, 2024
b5acf44
fixed print out
rsoussan May 22, 2024
928a724
reverted no return in do factor adder
rsoussan May 22, 2024
124d0e6
fixed only correspondences config
rsoussan May 22, 2024
72614e2
fix hugin api read pto
marinagmoreira May 23, 2024
b6d67e8
removed odom interpolator
rsoussan May 23, 2024
d091b25
fixes from review
marinagmoreira May 23, 2024
36576e9
adding packages to install list
marinagmoreira May 23, 2024
c211b0e
change install script to be clear we're not installing the entire opencv
marinagmoreira May 23, 2024
0c58185
fixed end time bug in node adder
rsoussan May 24, 2024
7d25420
reducing the not-install list
marinagmoreira May 24, 2024
f7ca38f
changing cmake name to make it clearer; didn't want to add an extra l…
marinagmoreira May 24, 2024
d9bcf9d
fixed trafo frame change
rsoussan May 24, 2024
b19c958
added more stats for plotting
rsoussan May 24, 2024
3283bad
added more stats plotting to localizer
rsoussan May 24, 2024
6c36bdf
fixed plotting
rsoussan May 24, 2024
cc47fb2
removed junk from depth odom
rsoussan May 24, 2024
e999820
added more do stats plotting
rsoussan May 24, 2024
873c577
added do plotting to vio
rsoussan May 24, 2024
bca2b02
updated do factor to always change for large norm
rsoussan May 24, 2024
a729a71
clang format
rsoussan May 24, 2024
49634cc
added options to subscribe or run do in graph loc nodelet
rsoussan May 24, 2024
46ec843
added logic to publish depth odom
rsoussan May 24, 2024
8650e90
fixed missing estimating bias in graph vio msg
rsoussan May 24, 2024
dfe50c0
added ctl vel tuning gain, made dynamic
rsoussan May 25, 2024
a9fc0eb
added option to replay do in replay launch, added do buffer params
rsoussan May 25, 2024
30e9451
fixed wrong state check in imu extrapolation
rsoussan May 25, 2024
0042b39
cleaned up do print outs
rsoussan May 25, 2024
6fa9c7e
changed some debug messageS
rsoussan May 25, 2024
b358805
cleaned up initialization calls
rsoussan May 25, 2024
a9c6ffb
cleaned up more prints
rsoussan May 25, 2024
55b7021
added catching extrapolate latest failure in ros pose extrapolator wr…
rsoussan May 25, 2024
76e270f
fixed typo
rsoussan May 25, 2024
7b7c572
cleaned up loc reset calls
rsoussan May 25, 2024
c2f572f
unified no new states msgs
rsoussan May 25, 2024
1aa9f00
updated ros extrap warnings
rsoussan May 26, 2024
168c2fa
fixed sometimes refining estimate in depth odom bug
rsoussan May 26, 2024
c99c0bf
changed log debugs to log debug every n
rsoussan May 26, 2024
9d9cd9d
added missing ar tag subscription
rsoussan May 26, 2024
dc4814f
added missing ar subscription
rsoussan May 26, 2024
99bb653
reverted docking behavior to use world frame
rsoussan May 26, 2024
f41abdb
made extraplated dock pose with imu optional
rsoussan May 26, 2024
52aa0ff
updated ar warnings, added check for imu buffer size
rsoussan May 26, 2024
c94a9fd
updated warnings to debug
rsoussan May 26, 2024
3760d4e
added check for extrapolated imu state in ar callback
rsoussan May 26, 2024
938932a
added optinal feature outlier filtering to depth odom
rsoussan May 27, 2024
330df8b
added inverse depth weighting
rsoussan May 28, 2024
34e30c2
updated do noise scale
rsoussan May 28, 2024
d36a59e
lowered max vio stateS
rsoussan May 28, 2024
372948c
lessend max num do factors
rsoussan May 28, 2024
c18cbbd
fixes from running docker
marinagmoreira May 28, 2024
8598af1
added max buffer size limit
rsoussan May 29, 2024
de443b3
added check for large gap since last loc msg
rsoussan May 29, 2024
f594491
Merge remote-tracking branch 'marina/opencv4_upgrade' into split_loca…
rsoussan May 29, 2024
fc5e697
cleaned up some code
rsoussan May 29, 2024
ac1b12d
more cleanup
rsoussan May 29, 2024
a0d38e0
merge with dev
rsoussan May 29, 2024
63f096a
reverted platform commit
rsoussan May 29, 2024
64b897b
fixed opencv4 cmake files
rsoussan May 29, 2024
ee16c26
added stddev calc for biases
rsoussan May 30, 2024
1cbc35e
updated starting params for graph vio
rsoussan May 30, 2024
3469230
removed sparse map measurments from graph vio
rsoussan May 30, 2024
cd72adc
merge with dev
rsoussan May 31, 2024
5cc1d4a
reverted submodules
rsoussan May 31, 2024
c74766b
more reverts
rsoussan May 31, 2024
f49103d
last revert
rsoussan May 31, 2024
c68c721
merge with split loc
rsoussan May 31, 2024
28e74a2
fixed merge issues
rsoussan May 31, 2024
5aedba4
Merge pull request #15 from rsoussan/split_localizer_unified_graph_lo…
rsoussan May 31, 2024
efb0ae0
fixed velocity noise bug
rsoussan Jun 1, 2024
ff12bb9
cleaned up covariance interpolation
rsoussan Jun 2, 2024
f0ad457
removed marignals cov cc file
rsoussan Jun 2, 2024
aaf8d08
updated plot_ conversions to fix integrated velocity bug
rsoussan Jun 3, 2024
eaaf614
added fix for interpolated velocities
rsoussan Jun 3, 2024
664e65f
made max diff a param
rsoussan Jun 3, 2024
acdfaf5
fixed plotting ar tag poses
rsoussan Jun 3, 2024
1172f07
fixed depth odom overflow, added params to manage num depth images ad…
rsoussan Jun 5, 2024
defd90a
formated depth odom
rsoussan Jun 5, 2024
2740c0f
added missing vio queue in ros pose extrap
rsoussan Jun 6, 2024
8c7d8f3
avoid added do at standstill
rsoussan Jun 6, 2024
9152ca8
cleaned up standstill detection
rsoussan Jun 6, 2024
f61931c
clang format
rsoussan Jun 6, 2024
1786558
cleaned up todos
rsoussan Jun 7, 2024
348d0a5
clang format
rsoussan Jun 7, 2024
a073567
cleaned up more comments
rsoussan Jun 7, 2024
b4017fd
removed todo.txt file
rsoussan Jun 7, 2024
c62fcaf
cleaned up tutorial examples
rsoussan Jun 7, 2024
42d72a6
cleaned up factor adders package and readmes
rsoussan Jun 7, 2024
8055ccb
cleaned up config todos
rsoussan Jun 7, 2024
5625a82
added astroloc src files
rsoussan Jun 7, 2024
d42878a
formatted python files
rsoussan Jun 7, 2024
d1780b7
updated make groundtruth and run_graph_bag_and_plot results commands
rsoussan Jun 7, 2024
cda1553
fixed graph factors test builds
rsoussan Jun 7, 2024
c2571ef
more formatting/test compile fixes
rsoussan Jun 7, 2024
4c99285
fixed factor adder tests
rsoussan Jun 7, 2024
74f387c
cleaned up test builds, cleaned up plot scripts
rsoussan Jun 7, 2024
ff9ea94
updated bag sweeper
rsoussan Jun 7, 2024
b2fe493
fixed loc factor adder test
rsoussan Jun 7, 2024
5d4ff97
fixed more tests
rsoussan Jun 7, 2024
5e91f37
fixed tutorial examples test build
rsoussan Jun 7, 2024
1ab6467
fixed more tests
rsoussan Jun 7, 2024
89c09eb
added initial measurement to pose node adder in sliding window test
rsoussan Jun 8, 2024
c21d9f2
fixed simple odom test
rsoussan Jun 8, 2024
50b4bf8
fixed smart factor test
rsoussan Jun 8, 2024
f09d959
added graph state msg back for backwards compatability
rsoussan Jun 8, 2024
bed9984
updated default depth odom test params
rsoussan Jun 8, 2024
c6504ff
fixed node adder test, cleaned up bag sweeper script
rsoussan Jun 8, 2024
864bc36
removed deleted bag sweep results plotter
rsoussan Jun 8, 2024
ac1dd6c
fixed ros graph vio test
rsoussan Jun 8, 2024
831ca3d
tmp disable ros_graph_vio param reader test
rsoussan Jun 8, 2024
d9bd145
fixed test package names
rsoussan Jun 8, 2024
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
  •  
  •  
  •  
13 changes: 3 additions & 10 deletions .github/workflows/msgs_jar.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,19 +11,12 @@ jobs:
steps:
- uses: actions/checkout@v3

- name: Build image astrobee/astrobee:msgs-ubuntu16.04
- name: Build image astrobee/astrobee:msgs-ubuntu20.04
run: docker build . -f ./scripts/docker/astrobee_msgs.Dockerfile
--build-arg UBUNTU_VERSION=16.04
--build-arg ROS_VERSION=kinetic
--build-arg PYTHON=''
-t astrobee/astrobee:msgs-ubuntu16.04
-t astrobee/astrobee:msgs-ubuntu20.04

- name: Build image astrobee/astrobee:latest-msgs-jar-ubuntu16.04
- name: Build image astrobee/astrobee:latest-msgs-jar-ubuntu20.04
run: docker build . -f ./scripts/docker/build_msgs_jar.Dockerfile
--build-arg UBUNTU_VERSION=16.04
--build-arg ROS_VERSION=kinetic
--build-arg PYTHON=''
--build-arg REPO=astrobee
-t ghcr.io/${{ github.repository_owner }}/astrobee:latest-msgs-jar

- name: Copy jar files
Expand Down
2 changes: 1 addition & 1 deletion .isort.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,4 @@
# added to a new folder, you can auto-update it by running
# scripts/git/configure_isort_paths.sh.

src_paths = doc/scripts,hardware/eps_driver/tools,hardware/pico_driver/scripts,hardware/pmc_actuator/tools,localization/localization_common,localization/localization_common/scripts/localization_common,localization/marker_tracking/tools/marker_tracking_node,localization/sparse_mapping/scripts,localization/sparse_mapping/tools,scripts/build,scripts/calibrate,scripts/debug,scripts/git,scripts/postprocessing/coverage_analysis,tools/bag_processing/scripts,tools/bag_processing/scripts/utilities,tools/bag_processing/test,tools/calibration/scripts,tools/gds_helper/src,tools/gnc_visualizer/dds,tools/gnc_visualizer/scripts,tools/gnc_visualizer/scripts/communications,tools/localization_analysis/scripts,tools/performance_tester/scripts
src_paths = doc/scripts,hardware/eps_driver/tools,hardware/pico_driver/scripts,hardware/pmc_actuator/tools,localization/camera/test,localization/localization_common,localization/localization_common/scripts/localization_common,localization/marker_tracking/tools/marker_tracking_node,localization/sparse_mapping/scripts,localization/sparse_mapping/tools,scripts/build,scripts/calibrate,scripts/debug,scripts/git,scripts/postprocessing/coverage_analysis,tools/bag_processing,tools/bag_processing/scripts,tools/bag_processing/scripts/utilities,tools/bag_processing/src/bag_processing,tools/bag_processing/src/bag_processing/bak,tools/bag_processing/test,tools/calibration/scripts,tools/gds_helper/src,tools/gnc_visualizer/dds,tools/gnc_visualizer/scripts,tools/gnc_visualizer/scripts/communications,tools/localization_analysis/scripts,tools/performance_tester/scripts
6 changes: 3 additions & 3 deletions INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

## System requirements

Ubuntu 20.04 is currently the only supported platform for most Astrobee development use cases.
Ubuntu 20.04 is currently the only supported platform.

Here are the currently available host OS options with development roadmap details (use 64-bit PC (AMD64) desktop image):
- [Ubuntu 20.04](http://releases.ubuntu.com/20.04): This is currently the only supported platform for most Astrobee development use cases. The Astrobee hardware on ISS has been running Ubuntu 20.04 since it was upgraded during the "Crew-Minimal S14" activity on December 19, 2023.
- [Ubuntu 16.04](http://releases.ubuntu.com/16.04): No longer supported for most use cases. The Astrobee robot hardware ran Ubuntu 16.04 from its launch in 2019 until it was upgraded to run Ubuntu 20.04. Ubuntu 16.04 support was discontinued for most use cases in February 2024. Ending Ubuntu 16.04 support removed important limitations. For example, going forward, Astrobee's software will no longer need to be backward-compatible with Python 2 and OpenCV 3. However, Ubuntu 16.04 is still required in a very limited role that most developers don't need to worry about. We use it to compile a JAR file binary artifact of Astrobee message definitions used by the [astrobee_android](https://github.com/nasa/astrobee_android) code hosted on Astrobee's High-Level Processor, which runs a legacy version of Android with `rosjava`, which was designed to communicate with the ROS Kinetic distribution. Compiling the JAR file requires the `ros-kinetic-rosjava` package that is only available for Ubuntu 16.04. (But most developers shouldn't need to generate this artifact.)
- [Ubuntu 20.04](http://releases.ubuntu.com/20.04): This is currently the only supported platform. The Astrobee hardware on ISS has been running Ubuntu 20.04 since it was upgraded during the "Crew-Minimal S14" activity on December 19, 2023.

Specifically not supported:
- ~~[Ubuntu 16.04](http://releases.ubuntu.com/16.04)~~: No longer supported. The Astrobee robot hardware ran Ubuntu 16.04 from its launch in 2019 until it was upgraded to run Ubuntu 20.04. Ubuntu 16.04 support was discontinued in February 2024. Ending Ubuntu 16.04 support removed important limitations. For example, going forward, Astrobee's software will no longer need to be backward-compatible with Python 2 and OpenCV 3.
- ~~[Ubuntu 18.04](http://releases.ubuntu.com/18.04)~~: Ubuntu 18.04 support as a software development platform was discontinued as of November 2023. (It was never supported on the robot hardware.)
- ~~[Ubuntu 22.04](http://releases.ubuntu.com/22.04)~~: There is currently no plan for Ubuntu 22.04 support on the Astrobee roadmap. However, note that Astrobee ROS2 support, when it eventually becomes available, is currently expected to use the ROS2 Humble Hawksbill distribution that normally runs on 22.04, but backported to run on 20.04 (the last Ubuntu version supported by ROS1). This will facilitate migrating from ROS1 to ROS2 without requiring a simultaneous Ubuntu distribution upgrade.

Expand Down
6 changes: 6 additions & 0 deletions RELEASE.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# Releases

# Release 0.17.3

* Comms bridge added rate feature
* Bug fixes
* User feedback improvements

# Release 0.17.2

* Adding Generic comms bridge
Expand Down
2 changes: 1 addition & 1 deletion astrobee.doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ PROJECT_NAME = "NASA Astrobee Robot Software"
# control system is used.


PROJECT_NUMBER = 0.17.2
PROJECT_NUMBER = 0.17.3

# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
Expand Down
2 changes: 1 addition & 1 deletion astrobee/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
cmake_minimum_required(VERSION 3.0)
project(astrobee)

set(ASTROBEE_VERSION 0.17.2)
set(ASTROBEE_VERSION 0.17.3)

## Compile as C++14, supported in ROS Kinetic and newer
add_compile_options(-std=c++14)
Expand Down
52 changes: 51 additions & 1 deletion astrobee/commands/freeFlyerPlanSchema.json
Original file line number Diff line number Diff line change
Expand Up @@ -802,6 +802,30 @@
]
},

{
"type": "CommandSpec",
"id": "Settings.setExposure",
"isRapidNative": false,
"notes": "Set the exposure value for either the nav or dock camera.",
"availableContexts": [
"teleop"
],
"parent": "Command",
"params": [
{
"type": "ParamSpec",
"id": "cameraName",
"parent": "Settings.CameraName"
},
{
"type": "ParamSpec",
"id": "exposure",
"valueType": "float",
"notes": "The value to set the exposurec to."
}
]
},

{
"type": "CommandSpec",
"id": "GuestScience.startGuestScience",
Expand Down Expand Up @@ -894,6 +918,25 @@
]
},

{
"type": "CommandSpec",
"id": "Settings.setMap",
"isRapidNative": false,
"notes": "Sets the map used for localization.",
"availableContexts": [
"teleop"
],
"parent": "Command",
"params": [
{
"type": "ParamSpec",
"id": "mapName",
"valueType" : "string",
"notes": "Full path to the map file to use. 'default' uses the default map loaded on startup."
}
]
},

{
"type": "CommandSpec",
"id": "Plan.setPlan",
Expand Down Expand Up @@ -1007,7 +1050,14 @@
"teleop"
],
"parent": "Command",
"params": []
"params": [
{
"type": "ParamSpec",
"id": "berthNumber",
"valueType": "long",
"notes": "Which berth Astrobee is using. 1=left, 2=right."
}
]
},

{
Expand Down
6 changes: 3 additions & 3 deletions astrobee/config/behaviors/dock.config
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ parameters = {
id = "enable_validation",
reconfigurable = false,
type = "boolean",
default = true,
default = false,
unit = "boolean",
description = "Should we validate segments before executing them?"
},{
Expand Down Expand Up @@ -134,7 +134,7 @@ parameters = {
id = "enable_faceforward",
reconfigurable = false,
type = "boolean",
default = true,
default = false,
unit = "boolean",
description = "Should planning be face-forward only?"
},{
Expand Down Expand Up @@ -174,4 +174,4 @@ parameters = {
unit = "m/s",
description = "Soft planning limit on net angular acceleration"
}
}
}
29 changes: 28 additions & 1 deletion astrobee/config/commands.config
Original file line number Diff line number Diff line change
Expand Up @@ -231,7 +231,12 @@ commandConfig = {
commands={
{
name="autoReturn",
parameters={}
parameters={
{
key="berthNumber",
type="RAPID_INT"
}
}
},
{
name="dock",
Expand Down Expand Up @@ -445,6 +450,19 @@ commandConfig = {
}
}
},
{
name="setExposure",
parameters={
{
key="cameraName",
type="RAPID_STRING"
},
{
key="exposure",
type="RAPID_FLOAT"
}
}
},
{
name="setFlashlightBrightness",
parameters={
Expand Down Expand Up @@ -488,6 +506,15 @@ commandConfig = {
}
}
},
{
name="setMap",
parameters={
{
key="mapName",
type="RAPID_STRING"
}
}
},
{
name="setOperatingLimits",
parameters={
Expand Down
23 changes: 14 additions & 9 deletions astrobee/config/communications/comms_bridge.config
Original file line number Diff line number Diff line change
Expand Up @@ -64,15 +64,20 @@ links = {
-- and relay_both (to be relayed in both directions). Providing all three fields gives the user
-- full directional control while minimizing repetition and copy/paste errors.

-- Each topic entry can contain an input topic and an output topic. The
-- in topic is the topic being published on the robot sending the data and
-- must be specified. The optional out topic is the name of the topic a
-- user wants the data published on in the receiving robot. If the
-- out topic is not specified, the comms bridge will set it to be the name
-- of the robot sending the data combined with the in topic name. For
-- instance, if the from robot was Bumble and the to robot was Honey and
-- one of the in topics in the relay forward list was "mgt/ack", then it
-- would be published on Honey on topic "bumble/mgt/ack".
-- Each topic entry can contain an input topic, output topic, and a rate.
-- In topic: Required. This is the topic being published on the robot
-- sending the data.
-- Out topic: Optional. This is the name of the topic a user wants the data
-- published on in the receiving robot. If the out topic is not specified,
-- the comms bridge will set it to be the name of the robot sending the data
-- combined with the in topic name. For instance, if the from robot was
-- Bumble and the to robot was Honey and one of the in topics in the relay
-- forward list was "mgt/ack", then it would be published on Honey on topic
-- "bumble/mgt/ack".
-- Rate: Optional. The rate in seconds at which a user wants the topic
-- published to the receiving robot. Please omit the rate, if the topic
-- should be published at the same rate it is published on the robot.

-- Please note that only one unique in topic can exist in the relay forward
-- and relay both lists and the relay backward and relay both lists. It is
-- fine to have the same in topic in the relay forward and relay backward
Expand Down
2 changes: 2 additions & 0 deletions astrobee/config/gnc.config
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@
require "common_lua"
require "geometry"

-- Velocity Feedforward Gain
tun_vel_gain = 0.5;
-- Accel Feedforward Gains
tun_accel_gain = vec3(1.0, 1.0, 1.0);
tun_alpha_gain = vec3(1.0, 1.0, 1.0);
Expand Down
18 changes: 17 additions & 1 deletion astrobee/config/localization/depth_odometry.config
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,13 @@ orientation_covariance_threshold = 100
-- icp or image_feature
depth_odometry_method = "image_feature"

-- Buffer size for images and point clouds
max_buffer_size = 5

-- Max number of depth images to create in a single iteration
-- Limits depth odometry runtime
max_depth_images = 2

-- ICP options

-- Search radius for each point in ICP
Expand Down Expand Up @@ -122,9 +129,18 @@ clahe_clip_limit = 40
-- Other
min_x_distance_to_border = 10
min_y_distance_to_border = 10
min_num_inliers = 5
min_num_correspondences = 5
-- Don't compute relative pose and just return 3D point correspondences
-- Only applicable for image_feature approach
only_correspondences = true
-- Refine estimate with PointToPlaneICP
refine_estimate = true
-- Filter outliers using essential matrix estimation
filter_outliers = false
-- ransac, lmeds, rho (rho is actual prosac)
filter_method = "rho"
inlier_threshold = 1.0
inlier_probability = 0.999

-- Point cloud with known correspondences aligner
pcwkca_max_num_iterations = 100
Expand Down
30 changes: 14 additions & 16 deletions astrobee/config/localization/graph_localizer.config
Original file line number Diff line number Diff line change
Expand Up @@ -27,46 +27,48 @@ gl_fa_loc_sm_add_projection_factors = true
gl_fa_loc_sm_add_prior_if_projection_factors_fail = true
gl_fa_loc_sm_prior_translation_stddev = 0.06
gl_fa_loc_sm_prior_quaternion_stddev = 0.06
gl_fa_loc_sm_scale_pose_noise_with_num_landmarks = true
gl_fa_loc_sm_scale_pose_noise_with_num_landmarks = false
--- test this again??
gl_fa_loc_sm_scale_projection_noise_with_num_landmarks = false
gl_fa_loc_sm_scale_projection_noise_with_landmark_distance = false
gl_fa_loc_sm_pose_noise_scale = 7
--- change to <=1 w/ new vio cov
gl_fa_loc_sm_pose_noise_scale = 0.001
-- Change to 9 if scale with inverse distance
gl_fa_loc_sm_projection_noise_scale = 60
--- use 1 - 1.5?
--- use 100 if using distance based covariance model!
gl_fa_loc_sm_projection_noise_scale = 1.5
--- use 10-15????
gl_fa_loc_sm_max_num_projection_factors = 25
gl_fa_loc_sm_min_num_matches_per_measurement = 5
gl_fa_loc_sm_max_valid_projection_error = 30
gl_fa_loc_sm_nav_cam_noise_stddev = 0.1
---- AR Tag (ar)
gl_fa_loc_ar_enabled = true
gl_fa_loc_ar_enabled = true
gl_fa_loc_ar_huber_k = world_huber_k
gl_fa_loc_ar_add_pose_priors = false
gl_fa_loc_ar_add_projection_factors = true
gl_fa_loc_ar_add_prior_if_projection_factors_fail = true
gl_fa_loc_ar_prior_translation_stddev = 0.06
gl_fa_loc_ar_prior_quaternion_stddev = 0.06
gl_fa_loc_ar_scale_pose_noise_with_num_landmarks = true
gl_fa_loc_ar_scale_pose_noise_with_num_landmarks = false
gl_fa_loc_ar_scale_projection_noise_with_num_landmarks = false
gl_fa_loc_ar_scale_projection_noise_with_landmark_distance = false
gl_fa_loc_ar_pose_noise_scale = 7
gl_fa_loc_ar_pose_noise_scale = 0.01
-- Change to 9 if scale with inverse distance
gl_fa_loc_ar_projection_noise_scale = 60
gl_fa_loc_ar_projection_noise_scale = 10
gl_fa_loc_ar_max_num_projection_factors = 25
gl_fa_loc_ar_min_num_matches_per_measurement = 5
gl_fa_loc_ar_max_valid_projection_error = 30
gl_fa_loc_ar_dock_cam_noise_stddev = 0.1

-- Node Adders (na)
--- Pose
gl_na_pose_starting_prior_translation_stddev = 0.02
gl_na_pose_starting_prior_quaternion_stddev = 0.01
gl_na_pose_huber_k = world_huber_k
gl_na_pose_add_priors = true
-- TODO: tune these!
gl_na_pose_ideal_duration = 6
gl_na_pose_ideal_duration = 4
gl_na_pose_min_num_states = 3
gl_na_pose_max_num_states = 10
-- TODO: start node??
gl_na_pose_max_num_states = 5
gl_na_pose_model_huber_k = world_huber_k
-- Optimizer (op)
--- Nonlinear
Expand All @@ -82,8 +84,4 @@ gl_go_sw_print_after_optimization = false
gl_go_sw_add_marginal_factors = false
gl_go_sw_slide_window_before_optimization = true
-- Other
-- TODO: tune this!
gl_max_vio_measurement_gap = 3
-- Ros graph localizer (rgl)
rgl_max_graph_vio_state_buffer_size = 10
rgl_max_vl_matched_projections_buffer_size = 10
Loading
Loading