Initial reworked behavior trees#376
Open
jmblixt3 wants to merge 45 commits into
Open
Conversation
jmblixt3
force-pushed
the
behavior-tree-jonathan
branch
4 times, most recently
from
April 13, 2025 17:24
bd5dacd to
e7ca30e
Compare
BergerKing333
marked this pull request as ready for review
April 14, 2025 16:10
BergerKing333
force-pushed
the
behavior-tree-jonathan
branch
from
April 14, 2025 16:14
7819f04 to
785bbca
Compare
Isopod00
requested changes
Apr 14, 2025
BergerKing333
force-pushed
the
behavior-tree-jonathan
branch
from
April 18, 2025 00:40
af54369 to
c6fb15b
Compare
jmblixt3
force-pushed
the
behavior-tree-jonathan
branch
3 times, most recently
from
April 27, 2025 21:43
31a1b74 to
81b33d2
Compare
Isopod00
requested changes
May 1, 2025
Isopod00
left a comment
Member
There was a problem hiding this comment.
Left minor comments but otherwise looks good to me.
jmblixt3
force-pushed
the
behavior-tree-jonathan
branch
from
May 1, 2025 21:42
81b33d2 to
5701668
Compare
Isopod00
force-pushed
the
behavior-tree-jonathan
branch
3 times, most recently
from
May 4, 2025 16:32
a72879d to
0b5f630
Compare
Isopod00
force-pushed
the
behavior-tree-jonathan
branch
from
May 4, 2025 21:09
0b5f630 to
3a6cadc
Compare
commit fc3bc12 Author: Anthony Brogni <[email protected]> Date: Tue May 6 14:06:05 2025 -0500 (Merge this!) Drivetrain Safety Feature (#402) * drivetrain safety feature * it works! --------- Co-authored-by: umnrobotics <[email protected]> commit 2310108 Author: Isopod00 <[email protected]> Date: Mon May 5 22:55:25 2025 -0500 Update the default values of ROS params commit c39292e Author: Anthony Brogni <[email protected]> Date: Mon May 5 21:03:06 2025 -0500 Nav2 Autonomy Testing Outside (#398) * nav2 config file improvements * testing changes * Renamed all "zed2i/zed_node/" to "zed2i/zed_node_zed2i/" * last fix * Squashed commit of the following: commit 7dcebf1 Merge: 3ce4a23 a8b3910 Author: Anthony Brogni <[email protected]> Date: Sun May 4 16:22:16 2025 -0500 Merge remote-tracking branch 'origin/zed-topics-renaming-fix' into calibrate-field-coordinates-testing commit 3ce4a23 Merge: 0364d6b 083fbe5 Author: Isopod00 <[email protected]> Date: Sun May 4 15:42:54 2025 -0500 Merge branch 'main' into calibrate-field-coordinates-testing commit 0364d6b Merge: e4221d1 4869895 Author: Anthony Brogni <[email protected]> Date: Sun May 4 11:32:24 2025 -0500 Merge branch 'main' into calibrate-field-coordinates-testing commit e4221d1 Merge: 598e23d a8c3822 Author: Anthony Brogni <[email protected]> Date: Sun May 4 10:53:23 2025 -0500 Merge branch 'main' into calibrate-field-coordinates-testing commit 598e23d Author: Isopod00 <[email protected]> Date: Sat May 3 14:52:22 2025 -0500 added an async_sleep commit 0526ca9 Author: Isopod00 <[email protected]> Date: Sat May 3 10:41:20 2025 -0500 small calibrate field coordinates accuracy improvements * mount the apriltags lower in simulation * remove unused import * Added RotationShimController and switched from mppi controller to simpler dwb controller * small changes * auto formatting * Added a use_nav2 arg and nav2_launch file for testing * testing changes * reverted some changes we dont want to merge yet * last revert --------- Co-authored-by: umnrobotics <[email protected]> commit 2673e23 Author: Anthony Brogni <[email protected]> Date: Sun May 4 22:53:31 2025 -0500 ZED Topics Renaming Fix (Fixes Apriltags) (#400) * Renamed all "zed2i/zed_node/" to "zed2i/zed_node_zed2i/" * last fix
commit d56eb3f Author: Anthony Brogni <[email protected]> Date: Thu May 8 22:29:46 2025 -0500 Auto Dig Nav Offload + Cameras (#408) * auto dig improvement * improvements * working caemra compression * initial try, will need to be tested * small changes * added to everything launch * added to launch file and whatnot * Added a client for the new action server to the main control node * it works * removed duplicate * nav2 and zed config changes * Tuned backward_distance * disable some everything launch features * testing changes * decrease global costmap size * auto format * auto format --------- Co-authored-by: Alex Berg <[email protected]> Co-authored-by: umnrobotics <[email protected]> Co-authored-by: alex berg <[email protected]> commit 224c79c Author: Anthony Brogni <[email protected]> Date: Tue May 6 23:03:56 2025 -0500 gazebo driving fix
- Implemented `providedPorts()` in `auto_dig.hpp` and `auto_offload.hpp` to correctly expose input keys to the Behavior Tree Blackboard. - Updated `onResultReceived()` in all custom Action Nodes to evaluate the `WrappedResult` code. Nodes now return `FAILURE` if the ROS 2 action is aborted or canceled, rather than blindly returning `SUCCESS`. - Updated `setGoal()` to properly fetch inputs using the registered ports and populate the ROS Action Goal. - parameter names NEED TO BE ALIGNED in (e.g., `digger_chain_power`)] `.action` files.
* gazebo driving fix * Auto Dig Nav Offload + Cameras (#408) * auto dig improvement * improvements * working caemra compression * initial try, will need to be tested * small changes * added to everything launch * added to launch file and whatnot * Added a client for the new action server to the main control node * it works * removed duplicate * nav2 and zed config changes * Tuned backward_distance * disable some everything launch features * testing changes * decrease global costmap size * auto format * auto format --------- Co-authored-by: Alex Berg <[email protected]> Co-authored-by: umnrobotics <[email protected]> Co-authored-by: alex berg <[email protected]> * Agitator Code + Better Auto Digging (#407) * removed limit switch code because we don't have them * wrote code for the agitator * Added missing import * works * auto format * remove cli_motor_toggle from auto_offload_server * added back "msg/Potentiometers.msg" * auto dig + offload works ! --------- Co-authored-by: umnrobotics <[email protected]> * Deleted TODO comment * small auto dig nav offload changes * Smarter digging (#411) * uh maybe? * works inside * changes from yesterday * small camera_launch changes * auto format --------- Co-authored-by: Peter M <[email protected]> Co-authored-by: umnrobotics <[email protected]> * Fix tasks.json for vscode to work with README.md instructions (#419) Co-authored-by: Team Laptop 1 <[email protected]> * AlexBlox is OP (#406) * initial * Outside Testing + Auto Changes (#393) * digger safety feature * more changes * more changes * make digger power positive * lower speed * testing changes * removed the option to reverse the digger * tiny changes * remove log statement * remove unecessary return * Added the digger current safety check * made current_threshold and time_limit into ROS parameters * improvements using an optional type * outside testing * works now! * auto dig works! * only works while moving down * we dont need this anymore * switch to the faster up speed for the zero_lift service * auto offload works! * auto dig works * auto format * Remove lift_digging_end_position * delete todo comment * commented out logging statement --------- Co-authored-by: umnrobotics <[email protected]> * (Test This!) Digging buckets current spike detection (#395) * digger safety feature * more changes * more changes * make digger power positive * lower speed * testing changes * removed the option to reverse the digger * tiny changes * remove log statement * remove unecessary return * Added the digger current safety check * made current_threshold and time_limit into ROS parameters * improvements using an optional type * outside testing * works now! * auto dig works! * only works while moving down * we dont need this anymore * switch to the faster up speed for the zero_lift service * auto offload works! * auto dig works * auto format * Remove lift_digging_end_position * delete todo comment * commented out logging statement * digging buckets current spike detection * testing changes --------- Co-authored-by: umnrobotics <[email protected]> * fast lift movement in both directions (#399) * fast lift movement in both directions * auto format * fix spelling mistake "zed2ii" to "zed2i" * ZED Topics Renaming Fix (Fixes Apriltags) (#400) * Renamed all "zed2i/zed_node/" to "zed2i/zed_node_zed2i/" * last fix * Nav2 Autonomy Testing Outside (#398) * nav2 config file improvements * testing changes * Renamed all "zed2i/zed_node/" to "zed2i/zed_node_zed2i/" * last fix * Squashed commit of the following: commit 7dcebf1 Merge: 3ce4a23 a8b3910 Author: Anthony Brogni <[email protected]> Date: Sun May 4 16:22:16 2025 -0500 Merge remote-tracking branch 'origin/zed-topics-renaming-fix' into calibrate-field-coordinates-testing commit 3ce4a23 Merge: 0364d6b 083fbe5 Author: Isopod00 <[email protected]> Date: Sun May 4 15:42:54 2025 -0500 Merge branch 'main' into calibrate-field-coordinates-testing commit 0364d6b Merge: e4221d1 4869895 Author: Anthony Brogni <[email protected]> Date: Sun May 4 11:32:24 2025 -0500 Merge branch 'main' into calibrate-field-coordinates-testing commit e4221d1 Merge: 598e23d a8c3822 Author: Anthony Brogni <[email protected]> Date: Sun May 4 10:53:23 2025 -0500 Merge branch 'main' into calibrate-field-coordinates-testing commit 598e23d Author: Isopod00 <[email protected]> Date: Sat May 3 14:52:22 2025 -0500 added an async_sleep commit 0526ca9 Author: Isopod00 <[email protected]> Date: Sat May 3 10:41:20 2025 -0500 small calibrate field coordinates accuracy improvements * mount the apriltags lower in simulation * remove unused import * Added RotationShimController and switched from mppi controller to simpler dwb controller * small changes * auto formatting * Added a use_nav2 arg and nav2_launch file for testing * testing changes * reverted some changes we dont want to merge yet * last revert --------- Co-authored-by: umnrobotics <[email protected]> * tuning, rviz fix * tweaking * weird merge change fix * im writing code at 2 am * changes * test * changes * fix submod ref * final attempt * Mess of last few days * pushed less-logging for can_bridge * peter changes that work * cameras work * Don't fail the whole action if backup fails * laptop changes * cleanup changes * nav2 config changes * small change * camera change * zed point cloud * pointcloud reading changes * initial commit * i love claude * cleanup part 1 * fixing formatting part 2 * linters are stupid * more linter changes * im gonna delete the linter if this fails --------- Co-authored-by: Anthony Brogni <[email protected]> Co-authored-by: umnrobotics <[email protected]> Co-authored-by: UMN Robotics <[email protected]> * Add Stream Deck capability (#422) * Added stream deck node * Add working stream deck node * Callback deosnt like that * Add topic for stream deck buttons and wait until its connected * Add stream deck subscription to main control node * Add stream deck node to laptop launch * dockerfile updates * double name and always close * working * dockerfile change * linter go away * lint?? --------- Co-authored-by: umnrobotics <[email protected]> Co-authored-by: alex berg <[email protected]> * delete digger functionality in motor control node (#424) * delete unnecessary old functionality * more updates to motor_control * final updates --------- Co-authored-by: Victor Tipkemper <[email protected]> Co-authored-by: hdjwis <[email protected]> * Main control cleanup (#425) * Added stream deck node * Add working stream deck node * Callback deosnt like that * Add topic for stream deck buttons and wait until its connected * Add stream deck subscription to main control node * Add stream deck node to laptop launch * dockerfile updates * double name and always close * working * dockerfile change * linter go away * lint?? * stream deck pictures and stuf * streamdeck in main control node * linter * i dont know what the linter wants from me * the linter gonna die --------- Co-authored-by: root <[email protected]> Co-authored-by: umnrobotics <[email protected]> Co-authored-by: hdjwis <[email protected]> * potential fix for devcontainer * Updated dumper (auger) (#428) * "Updated dumper conditions for new design based limit switches" * Created Sub/Pub for Limit Switches and check if both actuators were retracted for dumping" * Added Conditionals to Extend Dumper and changed constant values * updated struct.unpack * updated limit switch msg type * Change limit switch types from int to bool * Reset pulled_state in drop_dumper * linter fixes * linter fixes * updated auto offload * Changed to position control in pull and drop dumper function. Removed top kill switch and replaced it with degree conditional in while loop instead * commented auger checks from dumper node, for now * Changed names in autoOffLoad to match dumper_node server nodes * Final updates for dumper * renamed dumper services to dump and store * inlcuded Bool std_msg --------- Co-authored-by: Team Laptop 1 <[email protected]> Co-authored-by: zheng271 <[email protected]> Co-authored-by: alex berg <[email protected]> * Auger node (#435) * created auger_node file * Implement basic functionality of auger_node, rough structure. * Minimal changes * introduce set methods, stop method * naming clarifications and adjust to new todo description. * minor changes * basically just added potentiometer subscriber * Basic services made for auger node, no failsafes for controlling motors * move actuator at a constant velocity * Arduino auger (#426) * Theoretical Auger Sub/Pub stuff * updated potentiometers for auger --------- Co-authored-by: Zheng271 <[email protected]> * Added some basic motor configurable motor id constants * Added configurable class variables for auger along with fixing some motor set calls * Added in limits to the push actuator's position and speed. Got rid of the digger node and tried to replace all instances on launch with the auger node instead. * Work in progress code * Fixed some simple mistakes that caused code to crash * added todos * Made methods fail if their MotorCommandSet and MotorCommandGet requests failed. Added in better checking for tilt actuator set method and made it block until finished. Also made set_motor_push_position block until setpoint is reached. * Added extend digger callback and retract digger callback. Also made set_motor_push_position take in both a speed and desired position * renaming some variables for auto dig * gave the auger services more sensible names * finished auto dig server * Fixed dumb auger set srv mistake * fixed sensor.ino changes * Fixed some logic in set_actuator_tilt_extension and set_motor_push_position * updated read_serial * ran `autopep8 --in-place --aggressive -r --in-place --aggressive src/auger/ src/rovr_control/` * Fixed formatting * fixed auto_dig linter problem * reformatted with ruff * fixed the doc strings * updated auto_dig to include drive backs * Fixed some mistakes. Added check that confirms screw is spinning before running push motor. Added a stop all service. * updated main control node to use auger * added auger stop to main_control_node and multiple screw speeds to auto_dig * formatted * linter fixes * updated controls to fix retract/extend issue * fixed linter * final updates * Dig nav offload (#438) * updated to use navigation backup wiht nav2. * updated action to have x and y as inputs * fixed linter * linter fixes --------- Co-authored-by: alex berg <[email protected]> --------- Co-authored-by: akshatarinav <[email protected]> Co-authored-by: Victor Tipkemper <[email protected]> Co-authored-by: Sagar <[email protected]> Co-authored-by: hdjwis <[email protected]> Co-authored-by: Zheng271 <[email protected]> Co-authored-by: Michael Foley <[email protected]> Co-authored-by: hdjwis <[email protected]> Co-authored-by: umnrobotics <[email protected]> * Remove unused imports in main_control_node.py Removed unused imports to clean up the code. * Add dig_location_server node to launch file --------- Co-authored-by: Anthony Brogni <[email protected]> Co-authored-by: Alex Berg <[email protected]> Co-authored-by: umnrobotics <[email protected]> Co-authored-by: alex berg <[email protected]> Co-authored-by: Peter M <[email protected]> Co-authored-by: CubeToPlay <[email protected]> Co-authored-by: UMN Robotics <[email protected]> Co-authored-by: Wispy <[email protected]> Co-authored-by: Victor Tipkemper <[email protected]> Co-authored-by: Victor Tipkemper <[email protected]> Co-authored-by: root <[email protected]> Co-authored-by: zheng271 <[email protected]> Co-authored-by: akshatarinav <[email protected]> Co-authored-by: Sagar <[email protected]> Co-authored-by: Michael Foley <[email protected]>
…file which is supplied by dig location server i assume
…and y coords from behavior tree first. If invalid (set as 0,0 for now) it will go with normal logic like usual
…ded input target x and y coords for go to dig location
… in behavior tree called return to coordinate
…havior-tree-jonathan
…les + integrated it into button press instead of auto dig nav offload. Also updated behavior tree executor and launch files
…iles, including CmakeLists, package.xml, action headers, behavior tree executor itself, and the launch file. Also changed the result handling of all the action nodes in behavior tree.
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
No description provided.