欢迎光临散文网 会员登陆 & 注册

esp8266无线小车

2023-03-29 00:09 作者:向上生长长长长  | 我要投稿



项目简介

本项目是基于esp8266实现的无线小车控制,核心的原理是通过jsesp8266进行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.htmlscript中的ip和端口换成自己的即可:


192.168.0.100就是你的esp8266ip,串口监视器会打印,端口代码默认写的是80,可以根据自己的需要调整。

有技术基础和条件的小伙伴可以把项目部署起来跑,没条件的小伙伴打开index.html也能操作,如果不知道如何使用nginx,大家可以试下这个轻量级的文件服务器webd,服务器本身只有94kb,还支持多生态,局域网传文件也很方便:

https://gwgw.ga/fidx.html#/webd/

页面也很简洁:

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

用户名前面的是权限,权限的描述配置文件里面有注释,感兴趣的小伙伴自己研究。需要说明的是,服务器默认端口是9212,所以我们的访问地址是电脑的ip9212端口,之后输入我们的用户名和密码进行登录。

win环境为例,下载之后解压,配置完之后,直接双击webd.exe双击运行即可,之后将我们的控制代码的文件夹phone-control拖到web目录下,之后通过浏览器访问就可以看到我们的页面,点击index.html进行访问即可:

至此,这个项目就算结束了,其实在完成这个简单的示例之后,我是有考虑更高效的webRTC通信的,奈何js层面需要nodejs加持,我觉得太复杂,最终放弃了,后面打算试下无线模块和esp32,性能应该会比esp8266好一点。

好了,今天的内容就到这里吧,感谢大家的支持,比心,有疑问可以评论区沟通哟


esp8266无线小车的评论 (共 条)

分享到微博请遵守国家法律