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

Node to trigger reflexes on hazards #65

Closed
justinIRBT opened this issue Oct 1, 2021 · 0 comments · Fixed by #111
Closed

Node to trigger reflexes on hazards #65

justinIRBT opened this issue Oct 1, 2021 · 0 comments · Fixed by #111
Labels
enhancement New feature or request

Comments

@justinIRBT
Copy link
Collaborator

Is your feature request related to a problem? Please describe.
Create3 currently supports triggering reflexes when a hazard is detected. Enabling/disabling these reflexes are triggered through ROS 2 Parameters as follows:

  reflexes.REFLEX_BUMP
  reflexes.REFLEX_CLIFF
  reflexes.REFLEX_DOCK_AVOID
  reflexes.REFLEX_GYRO_CAL
  reflexes.REFLEX_PANIC
  reflexes.REFLEX_PROXIMITY_SLOWDOWN
  reflexes.REFLEX_STUCK
  reflexes.REFLEX_VIRTUAL_WALL
  reflexes.REFLEX_WHEEL_DROP
  reflexes_enabled

If reflexes_enabled is false, the robot won't react when a hazard is triggered. The robot defaults to reflexes_enabled true with all individual reflexes true except dock_avoid which defaults to false. The simulator should support these parameters and trigger simple actions to alleviate the hazard when the reflex is enabled. For example, if reflexes.REFLEX_BUMP is enabled and the hazard detects a bump hit, the robot should drive away from the bump hit until the hazard no longer detects bump.

Describe the solution you'd like
We won't implement the full complexity of the robot state machine, we will just keep it simple, mostly trying to back away from the hazard till it clears

  reflexes.REFLEX_BUMP - back away from bump till clear
  reflexes.REFLEX_CLIFF - back away from cliff till clear
  reflexes.REFLEX_DOCK_AVOID - back away from dock till clear
  reflexes.REFLEX_GYRO_CAL - ignore
  reflexes.REFLEX_PANIC - back away till clear
  reflexes.REFLEX_PROXIMITY_SLOWDOWN - slow down robot velocity till clear
  reflexes.REFLEX_STUCK - back away till clear
  reflexes.REFLEX_VIRTUAL_WALL - back away till clear
  reflexes.REFLEX_WHEEL_DROP - back away till clear
  reflexes_enabled

All reflexes should have a timeout, where if you have been driving for lets say 6 seconds and it hasn't cleared, then stop driving.

@justinIRBT justinIRBT added the enhancement New feature or request label Oct 1, 2021
@justinIRBT justinIRBT linked a pull request Oct 22, 2021 that will close this issue
5 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant