esp8266无线小车

项目简介
本项目是基于esp8266
实现的无线小车控制,核心的原理是通过js
与esp8266
进行websocket
通信,前端页面模拟操作摇杆,生成操作数据,然后通过websocket
通信将控制数据发送至esp8266
,实现小车的无线控制
准备工作
硬件材料
用到的材料如下:
esp8266开发板
L9110电机驱动板
双马达小车
电脑 & 手机:有条件的话,
nginx
跑前端页面更好充电宝:主要是给开发板工单,如果有其他电源也可以,电流可以稍微高一点,不然驱动电机比较吃力,或者驱动板单独供电
接线
本项目的接线非常简单,你只需要连接好L9110
的四根控制线即可,当然L9110
的电源需要5v
,小了驱动不了电机,节点线图我这里就不展示了,对应关系如下:
序号esp8266L9110备注1GPIO02 (D4)IA连接电机的一端2GPIO00 (D3)IB连接电机的一端3GPIO13 (D7)IIA连接电机的一端4GPIO12 (D6)IIB连接电机的一端
电机的转向,可以根据实际测试结果调整接线
代码
esp8266
首先是esp8266
的代码,这里我偷了个懒,直接复制oled
屏幕的代码,而且后面考虑将屏幕集成到小车上,所以代码里面也没有删除:
记得修改wifi
信息
控制端
这里的代码我就不展开讲了,只说核心的代码,如果没有任何前端基础,只是想控制小车的小伙伴,只需要将index.html
中script
中的ip
和端口换成自己的即可:
192.168.0.100
就是你的esp8266
的ip
,串口监视器会打印,端口代码默认写的是80
,可以根据自己的需要调整。
有技术基础和条件的小伙伴可以把项目部署起来跑,没条件的小伙伴打开index.html
也能操作,如果不知道如何使用nginx
,大家可以试下这个轻量级的文件服务器webd
,服务器本身只有94kb
,还支持多生态,局域网传文件也很方便:
https://gwgw.ga/fidx.html#/webd/

页面也很简洁:

需要注意的是,这个工具需要简单配置用户名和密码:


用户名前面的是权限,权限的描述配置文件里面有注释,感兴趣的小伙伴自己研究。需要说明的是,服务器默认端口是9212
,所以我们的访问地址是电脑的ip
加9212
端口,之后输入我们的用户名和密码进行登录。
以win
环境为例,下载之后解压,配置完之后,直接双击webd.exe
双击运行即可,之后将我们的控制代码的文件夹phone-control
拖到web
目录下,之后通过浏览器访问就可以看到我们的页面,点击index.html
进行访问即可:


至此,这个项目就算结束了,其实在完成这个简单的示例之后,我是有考虑更高效的webRTC
通信的,奈何js
层面需要nodejs
加持,我觉得太复杂,最终放弃了,后面打算试下无线模块和esp32
,性能应该会比esp8266
好一点。
好了,今天的内容就到这里吧,感谢大家的支持,比心,有疑问可以评论区沟通哟