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

[Re-write] Free fleet adapter using easy-full-control fleet adapter and zenoh bridges #145

Merged
merged 42 commits into from
Jan 9, 2025
Merged
Changes from 1 commit
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
5fb1270
Clean up
aaronchongth Aug 9, 2024
73b008a
Turtlebot3 world map
aaronchongth Aug 9, 2024
da8c3f3
Basic example of navigate_to_pose
aaronchongth Aug 9, 2024
2058661
test tf
aaronchongth Aug 9, 2024
292be14
Basic tests and README updated, started with fleet adapter template
aaronchongth Sep 2, 2024
c6e8330
Tweaking results and got cancellation
aaronchongth Sep 2, 2024
a29278c
Using tf_transformations, flesh out more implementation
aaronchongth Sep 11, 2024
b76ab27
Basic launch done
aaronchongth Sep 18, 2024
552e7e6
Basic working with patrol tasks
aaronchongth Sep 19, 2024
c2cf257
Update configs
aaronchongth Sep 19, 2024
5fc16db
Battery state, update readme
aaronchongth Sep 25, 2024
cf71e16
readme
aaronchongth Sep 28, 2024
de67ea8
Update README, reorganized and renamed configs, testing unique tb3 sim
aaronchongth Sep 30, 2024
65f1505
Setup tested
aaronchongth Sep 30, 2024
e7273c2
Updated README
aaronchongth Sep 30, 2024
b2a4c26
Style workflow on push and PR, lint
aaronchongth Oct 1, 2024
82e10a0
Linter syntax
aaronchongth Oct 1, 2024
57b17fc
Testing and CI (#146)
aaronchongth Oct 15, 2024
8cdc298
update script with latest zenoh api (#149)
tomkimsour Nov 7, 2024
3e4a141
Merge branch 'main' into easy-full-control
aaronchongth Nov 7, 2024
80df611
Update README and lint
aaronchongth Nov 7, 2024
c7de3ac
Fix enum comparison value, add replanning, update docs
aaronchongth Nov 10, 2024
75b4d22
Fix default args
aaronchongth Nov 10, 2024
d57714b
fix Crash node if easy_fleet creation fails (#159)
tomkimsour Nov 15, 2024
bdc9f87
Efc/integration testing (#157)
aaronchongth Nov 15, 2024
6cebc33
Lint
aaronchongth Nov 15, 2024
c1eeae2
Add ignore to codecov
aaronchongth Nov 15, 2024
4e0c932
Coverage (#160)
aaronchongth Nov 19, 2024
bb78302
Fix navigate_to_pose script default frame
aaronchongth Dec 3, 2024
9cf376a
Address comments, fix battery_state and navigate_to_pose result parsi…
aaronchongth Dec 3, 2024
a444034
Update readme
aaronchongth Dec 3, 2024
073675c
Clean up configs
aaronchongth Dec 4, 2024
3d34315
Move member variables directly used by fleet adapter into RobotAdapte…
aaronchongth Dec 4, 2024
2a17701
Move config files into config directory per standard package structure
aaronchongth Dec 5, 2024
02cf5d3
Removed abstracted RobotAdapter, to be added only after Nav1RobotAdap…
aaronchongth Dec 6, 2024
26ff2b8
Efc/ros1 (#161)
aaronchongth Dec 31, 2024
26a36e4
Badges
aaronchongth Dec 31, 2024
049a26a
Merge branch 'main' into easy-full-control
aaronchongth Dec 31, 2024
6fd6fbf
Efc cleanup (#163)
aaronchongth Jan 2, 2025
a5b9705
Change maintainer emails, fix versions, minor cleanup
aaronchongth Jan 2, 2025
cccb403
Addresses review comments (#164)
aaronchongth Jan 7, 2025
e3a5a1f
Replace polling transform and pose tests with a 2 second wait for ini…
aaronchongth Jan 7, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Basic tests and README updated, started with fleet adapter template
Signed-off-by: Aaron Chong <aaronchongth@gmail.com>
aaronchongth committed Sep 2, 2024
commit 292be14784b566d8a7c34062f1019cc93945cb5e
15 changes: 14 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -21,12 +21,25 @@ Start `zenoh-bridge-ros2dds`
./zenoh-bridge-ros2dds -c PATH_TO_WORKSPACE/src/free_fleet/free_fleet_examples/configs/example.json5
```

Listen to transforms,

```bash
source PATH_TO_WORKSPACE/install/setup.bash
ros2 run free_fleet_exmples test_tf.py \
--namespace robot_ns
```

Start a `navigate_to_pose` action over `zenoh`,

```bash
source PATH_TO_WORKSPACE/install/setup.bash
ros2 run free_fleet_examples test_navigate_to_pose.py \
--frame-id map \
--namespace robot_ns \
--x X_COORDINATES \
--y Y_COORDDIATES
```

# Example values
# x: 1.808
# y: 0.503
```
Empty file.
Original file line number Diff line number Diff line change
@@ -125,7 +125,7 @@ class GeometryMsgs_Transform(IdlStruct, typename="GeometryMsgs_Transform"):
@dataclass
class GeometryMsgs_TransformStamped(IdlStruct, typename="GeometryMsgs_TransformStamped"):
header: Header
frame_id: str
child_frame_id: str
transform: GeometryMsgs_Transform


18 changes: 18 additions & 0 deletions free_fleet/free_fleet/utils.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#!/usr/bin/env python3

# Copyright 2024 Open Source Robotics Foundation, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

def namespace_topic(topic:str , namespace: str) -> str:
return f"{namespace}/{topic}" if len(namespace) != 0 else topic
15 changes: 15 additions & 0 deletions free_fleet/package.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<?xml version="1.0"?>
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
<package format="3">
<name>free_fleet</name>
<version>0.1.0</version>
<description>A free fleet management library</description>
<maintainer email="aaron@openrobotics.org">Aaron Chong</maintainer>
<license>Apache License 2.0</license>

<test_depend>python3-pytest</test_depend>

<export>
<build_type>ament_python</build_type>
</export>
</package>
Empty file added free_fleet/resource/free_fleet
Empty file.
4 changes: 4 additions & 0 deletions free_fleet/setup.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[develop]
script_dir=$base/lib/free_fleet
[install]
install_scripts=$base/lib/free_fleet
27 changes: 27 additions & 0 deletions free_fleet/setup.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
from glob import glob
import os

from setuptools import find_packages
from setuptools import setup

package_name = 'free_fleet'

setup(
name=package_name,
version='2.4.0',
packages=find_packages(),
data_files=[
(
'share/ament_index/resource_index/packages',
['resource/' + package_name],
),
('share/' + package_name, ['package.xml']),
],
install_requires=['setuptools'],
zip_safe=True,
maintainer='Aaron Chong',
maintainer_email='aaronchong@intrinsic.ai',
description='A free fleet management library',
license='Apache License 2.0',
tests_require=['pytest'],
)
Empty file.
Loading