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

revamp v2 #1

Merged
merged 17 commits into from
Dec 1, 2022
Merged

revamp v2 #1

merged 17 commits into from
Dec 1, 2022

Conversation

youliangtan
Copy link
Member

@youliangtan youliangtan commented Apr 7, 2022

What's New in v0.2.0

  • Use the new perform_action for custom cleaning task. During cleaning, the robot will act as a "readonly" robot, and update a short segment of the trajectory according to its current heading.
  • rmf map to robot map transformation: Previously user is required to provide 2 sets of corresponding points. Now, with RmfMapTransform utils, users have the option to provide rmf_transform: [150.13, -24.846, 3.13, 0.05090] #[tx, ty, r, s] in the yaml config file.
  • Location update and status update: The updated fleet adapter provides more accurate location update to rmf, and more resilient towards locations that are not on the nav graph. Also, it will also constantly update the robot status to rmf-web, inform users about the current robot status (e.g. uninitialized, offline, error, charging ....)
  • Mock testing of fleet adapter: Use --test_api_config_file arg to test the ecobot fleet adapter in mock mode. This is helpful to test different scenarios on rviz before running on the actual robot.
  • Major cleanups on fleet adapter implementation
  • Create simple demo example to run ecobot_fleet_adapter in office.world

Test fleet adapter with office world

Run this example in office world:

ros2 launch rmf_demos office.launch.xml run_fleet_adapters:=0

Then run the ecobot fleet adapter

ros2 run fleet_adapter_ecobot fleet_adapter_ecobot \
    -c src/fleet_adapter_ecobot/configs/robot_config.yaml \
    -n install/rmf_demos_maps/share/rmf_demos_maps/maps/office/nav_graphs/0.yaml \
    -s "ws://localhost:8000/_internal" \
    -tf src/fleet_adapter_ecobot/configs/test_api_config.yaml

For more info, please refer to the readme.

Signed-off-by: youliang <[email protected]>
@Yadunund Yadunund added this to the v0.2.0 milestone Apr 7, 2022
@Yadunund Yadunund self-requested a review June 29, 2022 07:03
@Yadunund
Copy link
Member

Is there a reason for removing sim_server.py?

Copy link
Member

@Yadunund Yadunund left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@youliangtan The changes here are okay and I trust they have been working well on hardware?

Wondering why ecobot_sim_server.py was removed? How will users control robots in simulation without this?

fleet_adapter_ecobot/EcobotClientAPI.py Show resolved Hide resolved
@youliangtan
Copy link
Member Author

The ecobot_sim_server.py was removed since the current way I am testing the ecobot fleet adapter is through solely rviz (without simulation and with wall realtime). The TestAPIClient.py is activated when user add the -tf arg when running the script. This will mock the ecobot moving around the environment. You can try out by follow the instructionss above.

However Iam still pondering whether to re-add and update the ecobot_sim_server.py, since there will be added benefits when testing the fleetadapter in full simulation.

@Yadunund
Copy link
Member

Yadunund commented Aug 3, 2022

My recommendation is to definitely keep and it in fact update rmf_demos/office to add a cleaning robot that can be commanded by this adpater.

So along with the change in this PR open-rmf/rmf_demos#140, update the building.yaml to add a cleaning robot which can either be controlled by rmf_demos_fleet_adapter or with a combination of fleet_adapter_ecobot + ecobot_sim_server.py

@Yadunund
Copy link
Member

Yadunund commented Aug 3, 2022

Or maybe add a new package to this repo that will contain a copy of office map, launch files etc to control a robot in simulation using this adapter

@JohnTGZ JohnTGZ mentioned this pull request Sep 19, 2022
2 tasks
Copy link
Member

@Yadunund Yadunund left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Long overdue merge.

Many thanks @youliangtan for this huge enhancement!

@Yadunund Yadunund merged commit 02df43e into main Dec 1, 2022
@Yadunund Yadunund deleted the perform-action-refactoring branch December 1, 2022 14:11
@youliangtan
Copy link
Member Author

Thanks for merging in, and also the fixes from @JohnTGZ 🙏

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