本帖最后由 昊男Henry 于 2022-8-21 21:20 编辑
一、开发目标
降低驴车实施门槛
二、解决方案鸟瞰A
针对1:28蚊车,采用摄像头鸟瞰,PC端采集数据。游戏手柄遥控小车,PC端采集油门和转向数据。
黑色:小车和赛道
蓝色:USB摄像头
灰色:PC电脑
紫色:XBOX兼容手柄
绿色:RC发射器
鸟瞰B
鸟瞰C-选中用ESP32定制枪控和接收机。枪控USB线与PC端连接,实现PC端读取和输出遥控数据。ESP32接收机输出PWM给小车电调。
四、项目进展TODO1- 制作ESP32接收机(PWM输出,蚊车替换独立电调)
- 定义遥控通信协议 @Light @骑驴(PWM1+PWM2+开关1+校验位=6字节;电脑端串口115200bps,需要帧头帧尾)
- 测试ESP NOW组网功能([backcolor=rgba(255,246,122,0.8)]延迟、发热、距离、Beacon包)@朱浩涛
Review-2022/7/26- 底层通信方式测试成功。类似ESP-Now,处于第二层 MAC。推荐用ESP-Now,12兆带宽,专门传数据 @light
- ESP32遥控器选用GT2-B的电位器,按键调节中位。C3配OLED0.96液晶屏,电位器,6个按键替代旋钮,引出天线(棒子天线或PCB天线)@野牛
- ESP32接收机与电调独立。接收机通过电调BEC供电。接收机MAC地址保存到遥控器的EEPROM上。
- 遥控通信协议:
- 第一位:方向(2字节,16位精度)
- 第二位:油门(2字节,16位精度)
- 第三位:开关伟(1个字节,8个独立状态:油门锁、模式开关等)
- 第四位:校验位(1个字节)
- 周六测试ESP Now、遥控器、蚊车电调(匹配电机和电池@昊男)
TODO2- @Rockets 带物料给野牛(C3 2个、0.96屏1个)
- @light 编写ESP32代码(通信协议、遥控器和接收机)
Review-2022/8/9- 老黄实现枪控改造,但ESP-Now用Arduino延迟大,乐鑫建议用[backcolor=rgba(255,246,122,0.8)]IDF和官方库开发
- Light用Arduino开发IDF,ESP-Now延迟较低10ms以内[backcolor=rgba(255,246,122,0.8)](待测试延迟,目标7~20ms)@light
- ESP-Now有接收端返回帧,会增加延迟(待测试延迟)
- 信号有明显丢包,需提高发送频率[backcolor=rgba(255,246,122,0.8)](PPM 50Hz ; 2.4G 100Hz,目标50~100Hz)@light
- PWM输出需要定时器,ESP32-C3有独立PWM通道[backcolor=rgba(255,246,122,0.8)](直接配置PWM端口,备选方案PCA9685)@light
- 外接蚊车电调2S 30A,5.7V供电,ESP32-C3模块从VIN端口输入,稳压到3.3V
- PWM信号口输出范围0~3.3V,可能需要电平转换[backcolor=rgba(255,246,122,0.8)](需要测试3.3V是否能2S输出)@野牛
- 小车端ESP32-C3增加BVD电压采集,数据回传增加延迟多少?[backcolor=rgba(255,246,122,0.8)](测试半双工通信的延迟影响)@light @野牛
- [backcolor=rgba(255,246,122,0.8)]定义通信协议和串口协议@light@骑驴
三、模块选型ESP32-C3
选购链接:https://www.dfrobot.com.cn/goods-3494.html
1:28蚊车
有刷电调
四、附录词汇表
ESP32遥控器:第一代ESP32控,(USB线接电脑)
ESP32接收机:第一代ESP32收(配电调BEC供电)
DonkeyCar Part:驴车组件(参考Arduino part)
参考资料
https://mc.dfrobot.com.cn/thread-311966-1-1.html
https://mc.dfrobot.com.cn/thread-306628-1-1.html
|
|
|
|
|
|