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

Integrates local planner with random walk. Still need to tune parameters, but it runs. #118

Merged
merged 95 commits into from
Nov 1, 2024

Conversation

andrewjong
Copy link
Member

image

tharp789 and others added 30 commits September 17, 2024 10:48
* Updated dockerfile to copy simulation directly into docker image, updating docker compose to refer to images on server, updated documentation to reflect that you don't have to build the docker image and can just pull it

* Updating docker compose to refer to images on server, updated documentation to reflect that you don't have to build the docker image and can just pull it

* added environment info

* Proper docker compose now

* Add .gitignore for omni_pass.env file

* Update with Basti's instructions

* Update dockerfiles and docs

* Delete deprecated simulation/ folder

* use net=host

* oops net=host doesn't work with dynamic robots

* Fix ros2 with isaac sim. make isaac launch not by default with the main command

* Change isaac to use installed ros2 humble instead of built-in one

* Sadly: isaac sim REQUIRES network=host to launch from docker. Sadly, this means our robots need to also network=host and we must hardcode our docker compose

* Add ROS_LOCALHOST_ONLY=1; confirmed works through docker when network=host

* fix docker warnings

* Change path to use ros_ws under /root/AirStack/ros_ws

* Add stereo-image-proc, image-view

* Add isaacsim ros2 package, add entrypoint

* Change docker compose so that it just launches the containers with bash

* got ascent sitl working in isaacsim

* Updated, now works with with --scale and separate containers per robot

- Isaac can run headless in a container
- robots can run in separate containers, each with their own hostname and ROS_DOMAIN_ID
- all containers live on the private docker network, isolated from host
- Can connect to Isaac GUI via Omniverse Streaming client
- ROS communicates properly between all the containers
- connects successfully to nucleus

* reverted omni_pass

* Change the file to TEMPLATE so that the actual one isn't commited

* updated so guis work in docker

* Enable ssh into docker containers

* Add docs on network

* running mavros in isaacsim container, robot launch files moved to robot_bringup

* Update docs

* Delete deprecated central/folder, organize

---------

Co-authored-by: Sebastian Scherer <[email protected]>
Co-authored-by: John Keller <[email protected]>
* Update docs move robot with video

* Update docs
* welcome page, boilerplate
@andrewjong andrewjong merged commit 468237d into main Nov 1, 2024
1 check passed
@andrewjong andrewjong deleted the aj/integrate-droan-local branch November 1, 2024 22:10
andrewjong added a commit that referenced this pull request Nov 3, 2024
…#118)

* changing global planning docs and cleaning up random walk planner

* adding testing docs

* changing global planning docs and cleaning up random walk planner

* adding testing docs

* refactoring code for new interface

* adding conversions for new message types

* fixing build issues for new interfaces

* chaning logic to take the max voxzel size instead of assuming uniform

* cleaning up distance calculations

* making build changes for curr_location

* more build fixes

* more and more build fixes

* more and more build fixes

* asdf

* a;alala

* asdfallsdlfkn

* fixed build

* Do proper docker containers now with variable number of robots (#40)

* Updated dockerfile to copy simulation directly into docker image, updating docker compose to refer to images on server, updated documentation to reflect that you don't have to build the docker image and can just pull it

* Updating docker compose to refer to images on server, updated documentation to reflect that you don't have to build the docker image and can just pull it

* added environment info

* Proper docker compose now

* Add .gitignore for omni_pass.env file

* Update with Basti's instructions

* Update dockerfiles and docs

* Delete deprecated simulation/ folder

* use net=host

* oops net=host doesn't work with dynamic robots

* Fix ros2 with isaac sim. make isaac launch not by default with the main command

* Change isaac to use installed ros2 humble instead of built-in one

* Sadly: isaac sim REQUIRES network=host to launch from docker. Sadly, this means our robots need to also network=host and we must hardcode our docker compose

* Add ROS_LOCALHOST_ONLY=1; confirmed works through docker when network=host

* fix docker warnings

* Change path to use ros_ws under /root/AirStack/ros_ws

* Add stereo-image-proc, image-view

* Add isaacsim ros2 package, add entrypoint

* Change docker compose so that it just launches the containers with bash

* got ascent sitl working in isaacsim

* Updated, now works with with --scale and separate containers per robot

- Isaac can run headless in a container
- robots can run in separate containers, each with their own hostname and ROS_DOMAIN_ID
- all containers live on the private docker network, isolated from host
- Can connect to Isaac GUI via Omniverse Streaming client
- ROS communicates properly between all the containers
- connects successfully to nucleus

* reverted omni_pass

* Change the file to TEMPLATE so that the actual one isn't commited

* updated so guis work in docker

* Enable ssh into docker containers

* Add docs on network

* running mavros in isaacsim container, robot launch files moved to robot_bringup

* Update docs

* Delete deprecated central/folder, organize

---------

Co-authored-by: Sebastian Scherer <[email protected]>
Co-authored-by: John Keller <[email protected]>

* Aj/update docs (#45)

* Update docs move robot with video

* Update docs

* Add footer (#46)

* Add more docs

* welcome page, boilerplate (#47)

* welcome page, boilerplate

* changing global planning docs and cleaning up random walk planner

* adding service call

* finishing clean up of old map callback

* deleting irrelevant testing doc

* removing trivial_planner package for random walk and add xml launch file

* removing airstack_msgs dependency

* adding plan reception mode to behaviro tree

* buildable chanes

* working action based random walk

* working global plan toggle

* fixing read_parameter formatting

* adding ensemble planner

* first test of the new global planner format with random walk publishing multiple paths

* adding rad2deg and logging in random walk logic

* working random walk

* cleaning up junk

* Remove fluff from droan

* Connect disparity expansion to other core stack topics; works with gt depth image, doesn't work with stereo_image_proc

Also remove unused disparity conversion package (disparity_conv)

* Remove tf_prefix

* Clean up launch, start migrating to use nav_msgs/Path for global plan

* Remove deprecated traj mode client

* Progress

* Enable permalinks for headers

* Update to use relative path

* Add xml extensions

* Update comments

* Factor out parameters to config file; also clean up code

* Add expansion point cloud visualizer back

* Add missing marker publisher

* Fix bugs and topic connections

* Fix bugs and code cleanup

* Fix typos add clarity

* Add rviz for debug droan

* Update docs

* Rename core.rviz to robot.rviz

* Enable SITL extension automatically in docker image

* Remove node name override from launch files; instead let node names be in code

* Pass node names

* Refactor; nested nodes didn't work with subscribers, pass node ptr instead

* Publishes a local traj omg

* Set mavros use_sim_time at launch instead of with separate pane

* Manually set trajectory marker namespace to prevent accumulating explosion

* Add to global plan ICD sending feedback for ETA to waypoints

* Try make tmux extension auto refresh. didn't work

* Customize for debug

* Attempt fix and refactor trajectory collision checking

write a lot of helper functions
change input to be Trajectory, not airstack::msgs::TrajectoryXYZVYaw

* Clean up and make debugging clearer

* Update cpp standard to cpp17, add docstring to recommended extensions

* yay now the disparity graph collision markers are correct

* No more segfault

* Update

* Comment out main rviz for now

* Make lib shared

* idk what this does

* Remove dependency on missing global_planner_msgs

* Comment out 5 sec wait for mavros launch

* Reorder buttons

* Publish frustum from disparity expansion for debugging

* Successfully integrate droan with tyler's random walk planner

* Rename SEGMENT to ADD_SEGMENT

* Extract params to yaml

* Clean code

* Update rviz

---------

Co-authored-by: Tyler Harp <[email protected]>
Co-authored-by: Sebastian Scherer <[email protected]>
Co-authored-by: John Keller <[email protected]>
@andrewjong andrewjong changed the title Integrates local planner. Still need to tune parameters, but it runs. Integrates local planner with random walk. Still need to tune parameters, but it runs. Nov 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants