# multi_input_control **Repository Path**: robot_workspace/multi_input_control ## Basic Information - **Project Name**: multi_input_control - **Description**: Ros Robot 多种控制方式,包含键盘、UI、PS手柄控制等 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-20 - **Last Updated**: 2025-12-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # multi_input_control ## 项目简介 `multi_input_control` 是一个基于 ROS 的多输入控制包,允许用户通过键盘控制机器人运动。它支持多种控制方式,包括速度控制和方向控制,并提供了图形界面和命令行界面两种操作方式。 ## 主要功能 - 键盘控制机器人运动(线速度和角速度)。 - 支持平滑控制,使机器人运动更加稳定。 - 提供图形用户界面(GUI)用于更直观的操作。 - 支持发布 Ackermann 和 Twist 类型的控制指令。 ## 主要组件 - `keyboard_control.py`: 核心控制逻辑,包括速度计算和平滑控制。 - `keyboard_control_node.py`: ROS 节点,用于获取键盘输入并控制机器人。 - `keyboard_ctrl_tk.py`: 图形界面模块,提供基于 Tkinter 的用户界面。 - `keyboard_ctrl_tk_node.py`: GUI 控制节点,处理用户输入并发布控制指令。 - launch 文件:用于启动键盘控制节点和 GUI 节点。 ## 安装说明 1. 确保已安装 ROS 环境(如 ROS Noetic 或 Melodic)。 2. 将本项目克隆到你的 ROS 工作空间的 `src` 目录下: ```bash cd ~/catkin_ws/src git clone https://gitee.com/ros1_robot/multi_input_control.git ``` 3. 返回工作空间根目录并编译: ```bash cd .. catkin_make install ``` 4. 激活环境: ```bash source install/setup.bash ``` ## 使用方法 ### 启动键盘控制节点 运行以下命令启动键盘控制节点: ```bash roslaunch multi_input_control keyboard_control.launch ``` ### 启动图形界面控制 运行以下命令启动图形界面获取键盘信号控制: ```bash roslaunch multi_input_control keyboard_ctrl_tk.launch ``` 运行以下命令启动纯图形化控制: ```shell roslaunch multi_input_control robot_motion_control.launch ``` ### 启动PS3手柄控制 运行以下命令启动PS3手柄控制节点: ```shell roslaunch multi_input_control joystick_control.launch ``` ### 使用默认的 Twist 控制 运行以下命令使用 ROS 自带的键盘控制: ```bash roslaunch multi_input_control teleop_twist_keyboard.launch ``` ## 贡献指南 欢迎贡献代码或提出改进建议!请遵循以下步骤: 1. Fork 本项目。 2. 创建新分支。 3. 提交您的更改。 4. 发起 Pull Request。