-
Notifications
You must be signed in to change notification settings - Fork 667
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
feat(default_ad_api): add localization api #1431
feat(default_ad_api): add localization api #1431
Conversation
9c6aee2
to
0b6d5b9
Compare
Codecov Report
@@ Coverage Diff @@
## main #1431 +/- ##
==========================================
+ Coverage 10.25% 10.71% +0.45%
==========================================
Files 1199 1108 -91
Lines 86374 78505 -7869
Branches 19891 18660 -1231
==========================================
- Hits 8860 8410 -450
+ Misses 68294 61169 -7125
+ Partials 9220 8926 -294
*This pull request uses carry forward flags. Click here to find out more.
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
f57a754
to
b1841cb
Compare
I'll split the PR. |
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
662a1f3
to
b6ede8b
Compare
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
This PR is ready. |
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
uint16 ERROR_UNSAFE = 1 | ||
uint16 ERROR_GNSS_SUPPORT = 2 | ||
uint16 ERROR_GNSS = 3 | ||
uint16 ERROR_ESTIMATION = 4 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you write brief descriptions of these error types?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Error | Description |
---|---|
ERROR_UNSAFE | Requested when unsafe, such as while driving. |
ERROR_GNSS_SUPPORT | GNSS is not supported. |
ERROR_GNSS | GNSS is supported but an error related to GNSS occurred. |
ERROR_ESTIMATION | An error occurred while pose estimation. |
struct InitializationState | ||
{ | ||
using Message = autoware_ad_api_msgs::msg::LocalizationInitializationState; | ||
static constexpr char name[] = "/localization/initialization_state"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@yukkysaito @mitsudome-r Do you have any opinions on the namings of Initialize
and InitializationState
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suppose these are okay.
launch/tier4_autoware_api_launch/launch/autoware_api.launch.xml
Outdated
Show resolved
Hide resolved
system/default_ad_api_helpers/src/automatic_pose_initializer.cpp
Outdated
Show resolved
Hide resolved
| Interface | Local Name | Global Name | Description | | ||
| ------------ | -------------- | --------------------------------- | ----------------------------------------- | | ||
| Subscription | initialpose | /initialpose | The pose for localization initialization. | | ||
| Client | fit_map_height | /localization/util/fit_map_height | To fix initial pose to map height | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you tell me where this service is implemented, please?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've found it in #1500.
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
…/autoware.universe into feature/ad-api/localization
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
system/default_ad_api_helpers/ad_api_adaptors/launch/rviz_adaptors.launch.xml
Show resolved
Hide resolved
system/default_ad_api_helpers/ad_api_adaptors/launch/rviz_adaptors.launch.xml
Show resolved
Hide resolved
system/default_ad_api_helpers/ad_api_adaptors/config/initial_pose.param.yaml
Show resolved
Hide resolved
adaptor.init_cli(cli_initialize_, group_cli_); | ||
adaptor.init_sub(sub_state_, [this](const State::Message::ConstSharedPtr msg) { state_ = *msg; }); | ||
|
||
const auto period = rclcpp::Rate(1.0).period(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As far as I tried on my PC, by setting the rate to higher value (e.g. rclcpp::Rate(2.0)
), the automatic_pose_initializer
started keep requesting for the pose initialization infinitely. It seems that the timer_
was kept called, and this blocked sub_state_
to update the state_.state
from UNINITIALIZED
to INITIALIZED
.
Would you check if this happens in your PC, too? And if so, do you have any idea how to fix this issue?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh sorry my comment was a bit late. I would open an issue for this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
* feat(default_ad_api): add localization api Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * docs: add readme Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat: add auto initial pose Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat(autoware_ad_api_msgs): define localization interface Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix(default_ad_api): fix interface definition Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat(default_ad_api): modify interface version api to use spec package Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat(default_ad_api): modify interface version api to use spec package Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: pre-commit Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: pre-commit Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: pre-commit Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: copyright Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat: split helper package Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: change topic name to local Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: style Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: style Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: style Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: remove needless keyword Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat: change api helper node namespace Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: fix launch file path Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
* feat(default_ad_api): add localization api Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * docs: add readme Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat: add auto initial pose Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat(autoware_ad_api_msgs): define localization interface Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix(default_ad_api): fix interface definition Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat(default_ad_api): modify interface version api to use spec package Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat(default_ad_api): modify interface version api to use spec package Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: pre-commit Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: pre-commit Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: pre-commit Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: copyright Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat: split helper package Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: change topic name to local Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: style Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: style Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: style Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: remove needless keyword Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat: change api helper node namespace Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: fix launch file path Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
* feat(default_ad_api): add localization api Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * docs: add readme Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat: add auto initial pose Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat(autoware_ad_api_msgs): define localization interface Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix(default_ad_api): fix interface definition Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat(default_ad_api): modify interface version api to use spec package Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat(default_ad_api): modify interface version api to use spec package Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: pre-commit Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: pre-commit Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: pre-commit Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: copyright Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat: split helper package Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: change topic name to local Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: style Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: style Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: style Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: remove needless keyword Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat: change api helper node namespace Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: fix launch file path Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
* feat(default_ad_api): add localization api Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * docs: add readme Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat: add auto initial pose Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat(autoware_ad_api_msgs): define localization interface Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix(default_ad_api): fix interface definition Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat(default_ad_api): modify interface version api to use spec package Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat(default_ad_api): modify interface version api to use spec package Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: pre-commit Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: pre-commit Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: pre-commit Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: copyright Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat: split helper package Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: change topic name to local Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: style Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: style Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: style Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: remove needless keyword Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat: change api helper node namespace Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: fix launch file path Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
* feat(default_ad_api): add localization api Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * docs: add readme Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat: add auto initial pose Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat(autoware_ad_api_msgs): define localization interface Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix(default_ad_api): fix interface definition Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat(default_ad_api): modify interface version api to use spec package Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat(default_ad_api): modify interface version api to use spec package Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: pre-commit Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: pre-commit Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: pre-commit Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: copyright Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat: split helper package Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: change topic name to local Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: style Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: style Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: style Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: remove needless keyword Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * feat: change api helper node namespace Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> * fix: fix launch file path Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp> Signed-off-by: Takagi, Isamu <isamu.takagi@tier4.jp>
Signed-off-by: Takagi, Isamu isamu.takagi@tier4.jp
Description
Introduce AD API for routing. This PR is the rviz helper, auto initial pose and AD API part of the diagram.
Here are the changes for each package:
autoware_ad_api_msgs: Add the localization API messages.
autoware_ad_api_specs: Add the localization API definitions.
component_interface_specs; Add the internal localization interface definitions.
default_ad_api: Add the localization API.
default_ad_api_helpers: Add the adaptor for RViz localization topics, and auto initialize node by GNSS.
Related links
autowarefoundation/autoware_launch#72
autowarefoundation/autoware_launch#70
tier4/tier4_autoware_msgs#44
#1500
autowarefoundation/autoware_launch#71Tests performed
For planning simulation.
For logging simulation.
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.
In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.
Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.
After all checkboxes are checked, anyone who has write access can merge the PR.