RoArm-M2-S WIFI配置

WIFI模式

无线网络设备通常支持以下三种工作模式:

1.AP模式(Access Point模式):

将无线路由器或无线接入点配置为主要的网络入口点。在这种模式下,设备充当网络的中心,允许其他设备接到它,以便它们可以访问互联网或本地网络资源。AP模式通常用于创建无线局域网络(WLAN)。

2.STA模式(Station模式):

STA模式是将无线设备配置为客户端,以连接到现有的无线网络(通常是一个AP模式的设备)。在STA模式下,WIFI模块可以接收来自其他设备或路由器的无线信号,并通过该无线网络访问Internet或其他网络资源。

3.AP+STA模式(也称为Repeater模式):

AP+STA是一种组合模式,允许设备同时充当Access Point和Station。在这种模式下,设备可以连接到一个现有的无线网络(STA模式),并且还可以创建一个新的无线网络模式(AP模式),允许其他设备连接到它并通过访问互联网或其他网络资源。这种模式通常用于扩展无线网络的覆盖范围,将信号中继到更远的地方。


WIFI配置

本产品出厂时默认WIFI处于AP模式下,如果要设置为其它模式,可以通过在Web端界面中的JSON指令输入框中输入相对应的JSON指令来实现,也可以通过串口/USB通信输入JSON指令来实现。下面将介绍WIFI配置相关的JSON指令具体含义。


设置开机后WIFI的默认模式

首先可以用CMD_WIFI_ON_BOOT指令来设置机械臂开机后WIFI的默认工作模式:

{"T":401,"cmd":3}
  • T:该指令的类型。指令类型在RoArm-M2-S开源程序的头文件json_cmd.h中定义,401表示这条指令为CMD_WIFI_ON_BOOT,可以设置机
    械臂WIFI在开机时的默认工作模式,且掉电后会保存。
  • cmd:默认工作模式的代号。
    • 0:WIFI处于关闭状态。
    • 1:AP模式。
    • 2:STA模式。
    • 3:AP+STA模式。


设置WIFI模式

下面将介绍设置WIFI各个模式的JSON指令的含义:


CMD_SET_AP - 设置AP模式,建立WIFI热点

{"T":402,"ssid":"RoArm-M2","password":"12345678"}
  • 402:这条指令为CMD_SET_AP,表示将WIFI模式设置为AP模式。
  • ssid:AP模式的热点名称。
  • password:AP模式的热点密码。

使用该指令,机械臂将会建立一个WIFI热点,允许其它设备(例手机、电脑)连接到这个热点。由于出厂时默认的是AP模式,所以一开始不需要再使用这个指令来设置AP模式。


CMD_SET_STA - 设置STA模式,连接到现有的无线网络

{"T":403,"ssid":"yourWiFiName","password":"yourWiFiPassword"}
  • 403:这条指令为CMD_SET_STA,表示将WIFI模式设置为STA模式。
  • ssid:现有WIFI的热点名称,需要修改为你想要连接的WIFI热点名。
  • password:现有WIFI热点的密码,需要修改为WIFI热点对应的密码。

使用该指令,机械臂将会连接到现有的无线网络。无线网络会给机械臂分配一个ip地址,并显示在OLED上的第二行,这个ip地址可以用HTTP请求来进行JSON指令通信。

注意:如果机械臂是第一次设置STA模式,机械臂则会自动切换至AP+STA模式;如果经过15s后没有连接到现有的WIFI,机械臂则会自动切换至AP模式。


CMD_WIFI_APSTA - 设置AP+STA模式,建立WIFI热点的同时连接到现有的WIFI

{"T":404,"ap_ssid":"RoArm-M2","ap_pawword":"12345678","sta_ssid":"yourWiFiName""sta_password":"yourWiFiPassword"}
  • 404:这条指令为CMD_WIFI_APSTA,表示将WIFI模式设置为AP+STA模式。
  • ap_ssid:AP模式的热点名称。
  • ap_password:AP模式的热点密码。
  • sta_ssid:STA模式现有WIFI的热点名称,需要修改为你想要连接的WIFI热点名。
  • sta_password:STA模式现有WIFI热点的密码,需要修改为STA模式WIFI热点对应的密码。

使用该指令,机械臂将会连接到现有的WIFI,同时建立一个名为RoArm-M2的热点。此模式下,OLED屏幕上会第一行会显示AP的WIFI名称,第二行会显示无线网络分配的ip地址。


以上是设置WIFI各个模式JSON指令的使用含义。


查看WIFI设置信息

使用CMD_WIFI_INFO可以查看WIFI设置信息,输入:

{"T":405}
  • 405:这条指令为CMD_WIFI_INFO,表示获取机械臂WIFI设置信息。


返回值如下所示:

{"ip":"192.168.10.90","rssi":-50,"wifi_mode_on_boot":3,"sta_ssid":"yourWiFiName","sta_password":"yourWiFiPassword","ap_ssid":"RoArm-M2","ap_password":"12345678"}
  • ip:机械臂处于STA模式或AP+STA模式时的ip地址;若机械臂仅处于AP模式下,则显示为‘0.0.0.0’。
  • rssi:STA模式的WIFI信号强度;若机械臂仅处于STA模式下,则显示为0。
  • wifi_mode_on_boot:开机后WIFI的默认工作模式,代号具体含义在“CMD_WIFI_ON_BOOT”中有介绍。
  • sta_ssid:设置为STA模式连接到的WIFI热点名称。
  • sta_password:设置为STA模式连接到的WIFI热点密码。
  • ap_ssid:AP模式的热点名称。
  • ap_password:AP模式的热点密码。


生成WIFI配置文件

接下来介绍生成WIFI配置文件的指令:

WIFI配置文件是储存在Flash中的wifiConfig.json,当第一次需要保存的内容生成后会建立该文件,该文件的内容如下:

{"wifi_mode_on_boot":3,"sta_ssid":"JSBZY-2.4G","sta_password":"waveshare0755","ap_ssid":"RoArm-M2","ap_password":"12345678"}


1. CMD_WIFI_CONFIG_CREATE_BY_STATUS - 将当前的WIFI模式状态保存并生成wifiConfig.json文件

{"T":406}
  • 406:这条指令为CMD_WIFI_CONFIG_CREATE_BY_STATUS,表示以当前的WIFI模式状态生成wifiConfig.json文件。
  • 例如当前的WIFI模式是AP模式,调用该指令后,下次开机自动设置为AP模式。


输入后会反馈如下信息:

{"info":"/wifiConfig.json created.","wifi_mode_on_boot":1,"sta_ssid":"JSBZY-2.4G","sta_password":"waveshare0755","ap_ssid":"RoArm-M2","ap_password":"12345678"}


2. CMD_WIFI_CONFIG_CREATE_BY_INPUT - 将输入的信息保存并生成wifiConfig.json文件

{"T":407,"mode":3,"ap_ssid":"RoArm-M2","ap_password":"12345678","sta_ssid":"JSBZY-2.4G","sta_password":"waveshare0755"}
  • 407:这条指令为CMD_WIFI_CONFIG_CREATE_BY_INPUT,表示会将输入的信息保存并生成wifiConfig.json文件。
  • mode:默认工作模式的代号。
    • 0:WIFI处于关闭状态。
    • 1:AP模式。
    • 2:STA模式。
    • 3:AP+STA模式。


关闭WIFI

最后,可以使用CMD_WIFI_STOP来关闭WIFI功能。

{"T":408}
  • 408:这条指令为CMD_WIFI_STOP,表示关闭WIFI。