搭建网络产品、物联网硬件产品自动化开关机测试环境

 一:说明

在硬件获取系统测试中,开关机也是一项很重要的测试项目。该项测试可以评估产品的硬件异常开关机下的稳定性。

二:用到的工具

        硬件:

                 PC电脑、WIFI继电器、无线路由器(2.4G)

        软件:

                 网络助手、python脚本

二:测试拓扑

搭建网络产品、物联网硬件产品自动化开关机测试环境_第1张图片

三:操作说明

3.1:模块连接WIFI

  1)模块是直接从淘宝购买的ESP8266的继电器开发板,带了上位机和配网APP,可以通过手机进行配网。其他型号可根据实际情况进行无线连接。连接上后可以获取到IP地址。这是购买的模块提供的示意图:

搭建网络产品、物联网硬件产品自动化开关机测试环境_第2张图片

2)连接WIFI后获取到设备的IP地址,IP地址的获取可以在连接的时候获取,也可以在路由器的后台查看DHCP获取的IP地址。建议获取后在路由器进行一个MAC和IP的绑定。这样以后每次连接获取的IP都是固定的。

搭建网络产品、物联网硬件产品自动化开关机测试环境_第3张图片

搭建网络产品、物联网硬件产品自动化开关机测试环境_第4张图片

3)获取到IP之后就需要先进行控制尝试继电器是否能正常工作。厂家给的协议说明:局域网无线控制固件程序通讯协议采用的是UDP数据报通讯方式,WiFi模块上电之后处于UDP模式开始监听指定端口,当指定端口收到局域网发送过来的数据时通过判断数据是否符合来执行操作的。无线模块的监听端口为8111,控制端的接收端口为8112。控制端向局域网端口发送数据报广播“ss”命令,局域网内的WiFi模块设备收到广播命令后会向控制端返回WiFi模块的通讯连接信息,返回信息以“IP”开头,中间用“,”分隔,信息格式为IP+模块的ID+模块当前的ip地址。例如:IP,abc123456789,192.168.1.103,通过判断“,”分隔取出相应的信息,其中IP为用于判断的字符,abc123456789为模块的ID号,192.168.1.103为模块当前的IP地址,通过这个地址可以直接与模块通讯。在给模块发送控制命令的时候为了不误操作,控制命令发送格式为“控制命令+ID” ,比如要给模块发送“a1”这个命令,不是直接发送a1,而是发送a1+模块的ID,这样的格式“a1abc123456789”。除了广播命令“ss”不用加ID,其它指定控制相应的设备时候的命令都要+ID。

4)这里我们使用网线连接到路由器,保持测试电脑和路由器、ESP8266模块的IP都在同一个局域网内。网络助手使用UDP协议。

搭建网络产品、物联网硬件产品自动化开关机测试环境_第5张图片

5)如果不确定IP地址,可以在远程主机这里填写:255.255.255.255:8111,发送ss查询。

搭建网络产品、物联网硬件产品自动化开关机测试环境_第6张图片

 6)购买的这个模块可以通过发送控制协议+id的方式进行控制4路继电器的开关。

搭建网络产品、物联网硬件产品自动化开关机测试环境_第7张图片

 7)发送协议指令能正确返回并且继电器有开关的动作表示控制的环境已经搭建好了,在通过继电器接入被测设备的电源接入。

8)如果只是单纯的想间隔多长实际进行开关,可以直接在网络助手上设置。在批量发送里面添加开关的代码,配置延时多久发送,开启循环模式,点击开始发送后就开始执行。

搭建网络产品、物联网硬件产品自动化开关机测试环境_第8张图片

9)这里如果想精准的根据条件进行控制开关,则需要懂一些代码,关于socket方面的可以编写控制代码。这里简单的介绍下python脚本控制UDP发送和接收协议。

搭建网络产品、物联网硬件产品自动化开关机测试环境_第9张图片

搭建网络产品、物联网硬件产品自动化开关机测试环境_第10张图片 10)写完就可以进行控制了,会自己记录测试的次数。适用于各种网络产品、物联网产品的测试,完全在检测逻辑里面加入UDP的发送。目前可以通过串口、ping、MQTT等协议里面进行开关机控制。买的模块可能协议不同,测试方法理论都是通用,如果是物联网软件开发还可以进行模块的二次开发,取消掉中间路由器的部分。

你可能感兴趣的:(网络)