ros-ukraine / leobot

LeoBot telepresence robot
MIT License
21 stars 4 forks source link

F#56 add joy teleop #64

Closed SystemDiagnosticss closed 6 years ago

SystemDiagnosticss commented 6 years ago

Add joystick teleoperation

Closes #56

MaxZhaloba commented 6 years ago

Some more info related to this issue:

  1. Reasoning from OSRF about the necessity to press the so-called deadman button in combination with X/Y controls to drive the robot: https://discourse.ros.org/t/teleop-twist-joy-inconvenient-button-settings/1035/2 Wikipedia: https://en.wikipedia.org/w/index.php?title=Dead_man%27s_switch&oldid=829477687
  2. Tutorial on configuration of teleop_twist_joy http://learn.turtlebot.com/2015/02/01/9/

@AndriyPt, this task is ready on the the whole. I'm assuming we (and others) eventually will be using a joystick with analogue X/Y controls (thumbpad) so I'm leaving the deadman button functionality.

Just as a cool feature to implement later, I've come across a picture of joystick with Z-rotation axis: https://en.wikipedia.org/wiki/Joystick#Hat_switch This can be configured to rotate the robot head. Similarly, we can use the second thumbpad on josticks like PS DualShock.

Do you think it will be useful to add a section to readme and describe how to run the teleop.launch and enable the joystick?

Also, the current readme specifies how to run gmapping using keyboard. Should we enable the joystick for this use case and pass the joystick arguments (parameters)?

MaxZhaloba commented 6 years ago

FWIW, a Turtlebot joystick tutorial with a list of related resources: (see item 5 Need More Help).

AndriyPt commented 6 years ago

@MaxZhaloba it would be nice to have information on how to enable joystick in teleop.launch Also it will be useful to use joystick for gmapping. Please add this to README file.

MaxZhaloba commented 6 years ago

I've opened a separate issue for gmapping mode (#94).