ESP32 制作智能小车 (二)

关键字:ESP32、智能、车、陀螺仪、 蓝牙、ESPNOW

今天介绍遥控器部分

遥控器采用了两种方式,安卓手机端的蓝牙遥控、ESPNOW网络遥控。主要是介始ESPNOW网络遥控,硬件设备清单如下:

  1. ESP32S3一个
  2. 陀螺仪一个
  3. 蜂鸣器一下
  4. 按键三个(带LED灯)
  5. 电源开关一个
  6. 电池一个
  7. 充放电模块一个

如图:

下一节开始介绍代码部分。

代码部分的主要函数及功能如下:

  • 开发工具:VS_CODE  +  platformio (蚂蚁)
  1. 整个目录就是所有的源码
  2. 程序源码全在  src 这个目录中,main.cpp 为主程序,其它的为头文件或库
  • 整体思路:
  1. 设置ESP32各引脚功能,如 电机的,陀螺仪的,超声波的,声音模块的等
  2. 基础函数:电机驱动函数:正转,反转,快转,慢转,包括电机转动方向设定函数(正转,反转)
  3. 车子驱动函数:控制四个电机怎么转动,转多快,转多远,停车,刹车,转弯角度设定
  4. 车子运动过程中的判断函数:前进或后退 是否有障碍物,是否走到了指定的距离,是否转弯转到了指定的角度
  5. 车子运动修正函数:修正角度,暂未实现
  6. 相关辅助函数:陀螺仪判断角度,超声波判断距离,磁力计(暂未使用),声音提示函数
  7. 车子自动退让函数:车子空闲时,如有障碍物接近达到一定程序,车子自动退让
  8. 蓝牙控制
  9. ESPNOW 网络控制
  10. 遥控器部分:安卓手机蓝牙调试器遥控、ESPNOW手势遥控
  • 具体实现代码看源码,代码内有详细说明
  • 后续计划:
  1. 网络暂时用WIFI,与手机热点相连,原计划加 4G 模块,但是需要手机卡或流量卡才行;GPS定位功能暂时不加,以后看服务端是怎么控制的再说
  2. 脚本解析: 在 loop() 中循环查找并执行脚本库里的未执行脚本命令,脚本库命令状态为:待执行,正在执行,执行完毕
  3. 如果有新的脚本命令过来,则暂停当前脚本执行,用新的脚本命令替换旧的,并继续执行新的脚本命令
  4. 脚本命令全部执行完毕后,车子处于待命空闲状态
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值