# 控制方式
M2可以使用手柄控制和上位机控制两种方式来控制，手柄控制权限高于上位机控制，下面将分别概述这两种控制方式。

## 手柄控制

### 概述

我们配送一个控制手柄用于控制M2移动。

![2.png](img/2.png)
  
### 使用说明

#### 手柄操作步骤

1. 长按手柄HOME键，灯光亮起，自动匹配。  
2. 匹配成功后，手柄会震动一下，跑马灯最左侧与最右侧灯常亮。 
3. 同时按下顶部L、LZ、R、RZ四键，手柄解锁。
4. 在遥控底盘运动、调整线速度、调整角速度的时候需要长按L、LZ、R、RZ四键中任意一键。



#### 手柄按键说明

我们对于M2的手柄控制设计有几种速度档位，如下表。

<table>
	<tr align="center">
		<th>档位</th>
		<td>0档</td>
		<td>1档</td>
		<td>2档</td>
		<td>3档</td>
		<td>4档</td>
		<td>5档</td>
	</tr>
	<tr align="center">
		<th>速度</th>
		<td>20%</td>
		<td>36%</td>
		<td>52%</td>
		<td>68%</td>
		<td>84%</td>
		<td>100%</td>
	</tr>
</table> 
⚠️注：M2最大速可达2.6m/s,请从最低速开始使用，根据熟练度和环境宽敞程度适量加速。
<table>
	<tr>
		<th>按键</th>
		<th>功能</th>
		<th width="50%">备注</th>
	</tr>
		<tr>
		<td>左侧摇杆键</td>
		<td>控制M2前进与后退</td>
		<td>控制摇杆推动的力度控制速度，轻推低速移动，推到底为当前档位最高速</td>			
	</tr>
	<tr>
		<td>右侧摇杆键</td>
		<td>控制M2左右转向</td>
		<td>控制摇杆推动的力度控制角度，轻推小角度转向，推到底为最大角转向，松开自动回正</td>			
	</tr>
	<tr>
		<td>中区“—”键</td>
		<td>速度减档</td>
		<td>每按一下，速度降低一档，最低不得高于最底档，如0档</td>			
	</tr>
	<tr>
		<td>中区“+”键</td>
		<td>速度加档</td>
		<td>每按一下，速度提高一档，最高不得高于最高档，如5档</td>			
	</tr>
		<tr>
		<td>左区4控制键</td>
		<td>前/后/左/右控制运动方向</td>
		<td></td>			
	</tr>
	</tr>
		<tr>
		<td>右区4控制键</td>
		<td>前/后/左/右控制运动方向</td>
		<td></td>			
	</tr>
	<tr>
		<td>HOME键</td>
		<td>开机/急停</td>
		<td>紧急情况下，可按HOME键，M2会紧急刹车</td>			
	</tr>
	<tr>
		<td>顶部4控制键</td>
		<td>解锁/防误触</td>
		<td>手柄连接成功后，需同时按下4键解锁，控制时需长按任意一键，行驶过程中松开，M2会缓刹</td>			
	</tr>	
</table>

		


* * *

## 上位机控制
### 概述
使用M2配送的串口数据线与上位机相连，按照预定义的**协议规则**，向下位机（底层硬件平台）发送指令，控制移动平台。

### 使用说明
使用接口线将下位机与上位机连接起来，向下位机发送指令。

### 指令发送方式
用户可按照自己的开发场景，选择不同的方式发送指令：  

*  使用**串口调试助手**直接向下位机发送指令
*  基于ROS开发可使用我们提供的**ROS驱动包**与下位机通信发送接收指令

 
