前言
目前随着网络的快速发展,网络带宽、可靠性、实时性等方面都得到了很大的提升,为各种远程实时操作提供了很好的支撑。各种远程可视化操作的产品也如雨后春笋一般快速的发展起来了,各个大厂也都有相关的平台系统、如天猫精灵、百度小度、小米小爱、华为小艺等,可以实现语音控制、家居联动及娱乐场景等。作为一名45岁的退休理工男,技术喜欢自己来研究,于是自己手搓了一个远程可视化遥控的小船,这里将主要过程记录下来,感兴趣的同学也可以一起交流。
一、制作小船材料清单:
材料清单(一)

材料清单(二)

材料清单(三)

二、成品展示



三、小船控制示意图

四、系统架构及原理
1、控制部分
实现细节
采用国内比较知名的ESP32S3物联网模块,支持WIFI接入互联网,芯片程序基于Espressif-IDE集成开发环境实现,使用C语言开发,主要包含以下几部分:
1、实现WIFI配网后,通过与远程服务器TCP/UDP连接实现指令及视频数据的下发及上传。
2、集成电机驱动模块,ESP32S3根据远程指令控制电机驱动模块,电机驱动模块根据指令控制防水马达(螺旋桨)的正转和反转。
3、连接舵机,ESP32S3根据远程指令控制舵机的转动角度,实现小船炮台的射击角度调整。
4、连接USB摄像头,ESP32S3通过采集摄像头的视频数据,上传到远端服务器,实现小船操作运行的全程可视。
主要代码工程截图

2、服务器部分
实现细节
服务器部分用到了华为云的云主机,在云主机上部署了服务程序,服务程序基于Springboot框架实现,使用Java语言,主要包含以下几部分:
1、开放端口,以允许合法的ESP32S3通过互联网进行连接,实现指令下发以及视频实时上传。
2、开放接口,以允许手机操作端向服务器端发送指令以及查看服务端采集到的ESP32S3实时上传的视频。
主要代码工程截图

3、手机操作终端
实现细节
采用鸿蒙应用DevEco Studio集成开发环境实现,主要基于XML布局+Java开发,实现针对小船的远程操作及视频观看。
主要代码工程截图

五、成果动态展示
视频截图如下:
