Skip to content

Navigation Shared Autonomy Web Interface - #55

Merged
RKJenamani merged 1 commit into
visitfrom
Navigation-Shared-Autonomy-Web-Interface
Jun 14, 2026
Merged

Navigation Shared Autonomy Web Interface#55
RKJenamani merged 1 commit into
visitfrom
Navigation-Shared-Autonomy-Web-Interface

Conversation

@RKJenamani

Copy link
Copy Markdown
Contributor

No description provided.

Copilot AI review requested due to automatic review settings June 14, 2026 17:05
@RKJenamani
RKJenamani merged commit 306b109 into visit Jun 14, 2026
@RKJenamani
RKJenamani deleted the Navigation-Shared-Autonomy-Web-Interface branch June 14, 2026 17:05

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a shared-autonomy manual control web interface by separating teleoperation into two dedicated pages (arm vs. base) and wiring new routing and executive signals to support mid-navigation base takeover.

Changes:

  • Added a new /navigation_teleop joystick-style page that publishes /cmd_vel and signals takeover/done via shared-autonomy topics.
  • Replaced the single global “Take Over” button with two global manual-control buttons (“Robot Base Control” / “Robot Arm Control”), with base control gated by an executive “base_control enabled/disabled” signal during navigation.
  • Updated routing to rename /teleop/manipulation_teleop, plus UI/layout tweaks in the manipulation teleop and a rotation-spec sign change in teleop recovery.

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
webapp/vue-ros-demo/src/views/task_selection.vue Removes the menu’s manual-control button in favor of the new global controls.
webapp/vue-ros-demo/src/views/NavigationTeleop.vue Adds a new base teleop joystick page with ROS publishers/subscriber integration.
webapp/vue-ros-demo/src/views/ManipulationTeleop.vue Updates joint button iconography and adjusts layout sizing/spacing.
webapp/vue-ros-demo/src/router/routeMap.js Routes teleop.jump to /manipulation_teleop and adds navigation_teleop.jump.
webapp/vue-ros-demo/src/router/index.js Replaces /teleop route with /manipulation_teleop and adds /navigation_teleop.
webapp/vue-ros-demo/src/App.vue Implements global base/arm control buttons and listens for base-control enablement.
src/feeding_deployment/actions/teleop_recovery.py Flips tilt up/down sign mapping in ROTATION_SPEC.
src/feeding_deployment/actions/navigate.py Enables/disables base-control availability around navigation action execution.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

lin: 0,
ang: 0,
dragging: false,
connected: true,
Comment on lines +181 to +188
teardown () {
this.center()
if (this.cmdVelPub) this.sendVelocity() // final zero
if (this.sendTimer) { clearInterval(this.sendTimer); this.sendTimer = null }
window.removeEventListener('blur', this.center)
document.removeEventListener('visibilitychange', this.onVisibility)
if (this.listener) { this.listener.unsubscribe(); this.listener = null }
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants