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

Manage the safe mode. #3

Open
MaximilienNaveau opened this issue Nov 1, 2019 · 0 comments
Open

Manage the safe mode. #3

MaximilienNaveau opened this issue Nov 1, 2019 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@MaximilienNaveau
Copy link
Collaborator

Problem

The current state is that when starting the robot, zero torques are sent.
This is okay for now.
However, for other robots (think Apollo) running a PD controller / start from the SafeMode controller might be more appropriate.

Plus the transition into safe_mode is not permanent, with potential numerous switches from one control to another which is dangerous. This can happen for now when the Controller is taking too long to compute we might have controller switches.

Potential solution

Once we have the communication between the graph process and motor process, one way to do this could be to have an

  • "InitMode", which is executed by the robot first,
  • the dynamic graph process / user send a "run" message to the motor process and the robot starts to process the sent torque signals
  • if something goes wrong, the robot transitions permanently into a SafeMode.

If the motor process is not receiving a new message for |max_missed_control| from the dynamic graph process, it will enter SafeMode.

Make the entrance into safe mode permanent with a user function to go back to init_mode.
This way if we find a way to properly re-initialize the dynamic graph or control process cleanly we do have to shutdown the robot.

@MaximilienNaveau MaximilienNaveau self-assigned this Nov 1, 2019
@MaximilienNaveau MaximilienNaveau added the enhancement New feature or request label Nov 1, 2019
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

No branches or pull requests

1 participant