113 lines
2.7 KiB
Markdown
113 lines
2.7 KiB
Markdown
# 远程控制-键盘插件
|
||
|
||
使用远程连接到 M1 上后,我们想要控制 M1 运动,发现键盘控制车不动。
|
||
|
||
在 OS 系统中程序默认识别的是插在车载电脑上的键盘外设,远程主机的键盘命令程序无法接收,键盘控制指令则无法执行。
|
||
|
||
为了解决远程连接控制的问题,我们为用户提供了键盘包,可获取远程主机键盘的按键指令,将控制命令发送到车载主机上。
|
||
|
||
|
||
### 功能描述:
|
||
|
||
该功能包为Autolabor 机器人远程连接时,提供用户端主机键盘控制功能。
|
||
|
||
|
||
|
||
### 要求:
|
||
|
||
该插件与键盘鼠标不能同时使用,使用时需拔掉插在电脑上的键盘设备
|
||
|
||
|
||
### 一、配置
|
||
|
||
以**SLAM建图**为例,演示该插件的配置方法。
|
||
|
||
#### 1. 远程连接
|
||
|
||
使用远程桌面工具,连接到车载电脑上。
|
||
|
||
#### 2. 点击【开始建图】
|
||
|
||
![](imgs/slam.png)
|
||
|
||
程序启动,RVIZ打开。此时,在远程端我们用键盘控制,车无法运动。
|
||
|
||
![](imgs/create_map.png)
|
||
|
||
#### 3. 加载插件
|
||
|
||
RViz 的左上角依次点击 Panels -> Add New Panel -> rviz_keyboard_twist -> KeyboardTwist
|
||
|
||
<img style="float: left;" src="imgs/intro2.png" />
|
||
<img style="float: right;" src="imgs/intro3.png" />
|
||
<div style="clear: both;"></div>
|
||
|
||
***
|
||
|
||
**加载完毕:**
|
||
|
||
![](imgs/intro4.png)
|
||
|
||
***
|
||
|
||
**做完以上操作后 Ctrl + S 保存 RViz 配置,如忘记保存,则下次进来要重复操作。**
|
||
|
||
### 二、使用
|
||
|
||
|
||
#### 1. 激活键盘控制
|
||
|
||
鼠标勾选激活键盘控制
|
||
|
||
![](imgs/intro5.png)
|
||
|
||
|
||
#### 2. 键盘控制
|
||
|
||
使用键盘上下左右控制,此时车能够被远程控制。
|
||
|
||
#### 3. 取消键盘控制
|
||
|
||
键盘控制完成后,必须取消,否则键盘按键失灵无法使用。
|
||
|
||
|
||
### 四、重要说明
|
||
|
||
1. 需要远程使用的应用都需要在 RViz 中单独添加该插件,单个RViz中添加的插件不会应用到全局程序。
|
||
2. 使用该插件远程控制前,要求在本机确认机器人的键盘控制是正常的。
|
||
3. 键盘控制使用完毕后,必须要取消键盘控制。
|
||
|
||
|
||
### 附录:安装方法
|
||
|
||
|
||
#### 1. 下载程序包
|
||
|
||
进入 /home/autolabor/catkin_ws/src 目录,执行
|
||
|
||
```
|
||
git clone https://github.com/autolaborcenter/rviz_keyboard_plugin.git
|
||
```
|
||
|
||
或访问 https://github.com/autolaborcenter/rviz_keyboard_plugin.git 下载源代码,放入 /home/autolabor/catkin_ws/src 目录中
|
||
|
||
给新加入的文件添加操作权限,在/home/autolabor/catkin_ws 目录下,右键打开终端,执行
|
||
|
||
`sudo chmod -R 777 /home/autolabor/catkin_ws/src/`
|
||
|
||
输入密码 `autolabor`,回车
|
||
|
||
#### 2. 编译
|
||
|
||
还是在 /home/autolabor/catkin_ws 目录下,终端执行
|
||
|
||
`sudo rm -rf build/ devel/ logs/ .catkin_tools/`
|
||
|
||
输入密码 `autolabor`,回车,然后执行
|
||
|
||
`catkin build -j2`
|
||
|
||
|
||
|
||
|