space-concordia-robotics / robotics-prototype

Teleoperated Mars rover with autonomous capabilities intended for robotics competitions.
https://spaceconcordia.github.io/robotics.html
25 stars 18 forks source link

Move multiple arm motors at the same time #573

Closed AymanShe closed 2 years ago

AymanShe commented 2 years ago

Collect input and then publish a combined Arm command (set_motor_speeds p p p p p p) that allows for controlling different motors without effecting each other.

Current situation:

publishing a command for a certain motor implies that all other motors shall not move. This happens because button input is mapped to an Arm command with a default value of 0 (no movement) except the motor in question. This means if two buttons, for two different motors, are pressed, both motors will try to move but also stop the other motor from moving.

Success criteria

Being able to move multiple Arm motors at the same time using a controller by pressing buttons or moving joysticks.

UX

User should find it easy to control the Arm and switch between different layouts to perform basic Arm movement actions sussccefully.