ESP32CAM物联网教学03

ESP32CAM物联网教学03

物联网小车

小智突发奇想:要是我在点灯物联APP中多增加几个按钮,控制小车的行驶方向,不就可以做成遥控小车了吗?

  • 点灯物联控制小车的行驶方向

我们可以重新编辑点灯物联APP中的设备控件界面,如图所示,在界面中增加五个按钮,分别控制着小车的前进、左转、停止、右转、后退,这样是不是能变成遥控小车呢?

(五个方向按钮的键名分别命名为:btn-ff、btn-ll、btn-ss、btn-rr、btn-bb,这些键名在后面的米思齐编程中需要逐一用到; 按钮的类型为按键按钮)

  • 拼装物联网遥控小车

遥控小车可以选购现成的小车底座。

当然也可以选用乐高积木,然后自己根据想象进行自由的拼装。下面这些是拼装小车所必须的零部件,可以一一从网上购买(购买这些大约需要100元左右,比起购买现成的小车底座要贵了不少,但是这种自由拼装的方式,可操作性强一些,而且特别适合小孩自己玩)

经过一番折腾,你就能创造出专属于自己的一辆小车了,这两小车也是全网唯一的一辆,拼装完成后,成就感爆棚。特别是到了我们课程的最后,我们会不断地给这两小车增加一些功能,相信这是你拥有的最靓的、最智能的一辆小车了。

  • 小车的电路连接

首先,我们通过查阅淘宝上面的商品介绍信息,可以了解到L298n电机驱动板的引脚配置信息,可以看出这块点击驱动板可以同时驱动A、B两个电机,由四个逻辑端口进行驱动。ESP32Cam左侧的端口本来是用于TF存储卡的,因为我们没有用到TF存储卡,所以这几个端口是可以用来作为输入或输出端口使用的。

我们利用杜邦线对小车的各个设备进行连接,接线图如下,2节1860电池差不多可以提供8---9V的电源电压,直接接入L298n,给驱动板和电机供电;这块驱动板自带5V调压芯片,可以输出5V的电源给ESP32Cam使用;ESP32Cam的12、13、15、14这四个端口,分别连接点击驱动板的逻辑控制端口。

  • 编写ESP32Cam的小车控制程序

ESP32Cam的控制程序还是用米思齐的积木块编写。

我们在前面的点灯程序基础上,复制了五个按键积木组合,每一个按键积木的组件名称和对应的键名各不相同:组件名称分别用Button1------Button5一一区分。所对应的键名,和前面的手机APP中命名的一致,btn-ff表示小车前进forward;btn-bb表示小车后退back;btn-ss表示小车停止stop;btn-ll表示小车左转left;btn-rr表示小车右转right。

左右两个电机分别由两组逻辑端口控制,左边的电机由ESP32Cam的12、13号端口控制,右边的电机由ESP32Cam的15、14号端口控制。

L298n采用的是H桥放大的工作原理,当12号端口为高,13号端口为低时,对应的左边电机的两个输出端口,一个为高电平,一个为低电平,两个端口的不同电势差,在电机内部形成了正向电流,电机正向转动,小车就前进了。相反,当12号端口为低,13号端口为高时,两个端口的不同电势差正好相反,在电机内部形成了反向电流,电机反向转动,小车就后退了。当12号和13号端口同时为低时(或同时为高),对应的两个端口则同时为低电平(或同时为高电平),两个端口之间没有电势差,电流也无法流过电机内部,电机停止转动,小车就停止了。

根据电机驱动原理,我们简化了按键组件的驱动程序,当用户在手机APP中按动不同方向按键使,让ESP32Cam控制着左右电机的转动方向,让小车动起来。当左右两个电机同时正向转动是,小车就前进;同时反向转动时,小车就倒退;左边正转右边反转时,就是右转;左边反转右边正转时,就是左转了。

温馨提醒:

因为这个电机的转速还是挺高的,所以我们选用点触驱动的方法,即当用户按动一次前进按钮时,我们让电机转动了1秒就停下来,如果需要继续前进,则需要继续按一次按动前进按钮。

因为电机的速度挺高的,如果不是采用这种点触控制,而是采用连续控制的话(比如按动前进按钮,小车就一直前进,在接收到用户的下一个操作命令之前,一直处于前进的状态),这样小车会处于失控的状态的,遥控的效果不好。当然,如果电机的速度慢,则可以使用连续控制了。

相关推荐
步、步、为营2 小时前
.net开源物联网项目IoTSharp
物联网·开源·.net
搞笑的秀儿2 小时前
信息新技术
大数据·人工智能·物联网·云计算·区块链
梁山1号10 小时前
【ESP32】3.串口的发送与接受
单片机·物联网
TESmart碲视1 天前
HKS201-M24 大师版 8K60Hz USB 3.0 适用于 2 台 PC 1台显示器 无缝切换 KVM 切换器
单片机·嵌入式硬件·物联网·游戏·计算机外设·电脑·智能硬件
TDengine (老段)1 天前
TDengine STMT2 API 使用指南
java·大数据·物联网·时序数据库·iot·tdengine·涛思数据
aiprtem1 天前
基于Flutter的智能设备web前端设计
物联网·flutter·web
zskj_zhyl1 天前
智慧养老丨从依赖式养老到自主式养老:如何重构晚年生活新范式
大数据·人工智能·物联网
DeamoTech2 天前
ESCADA
物联网·测试工具
星源~2 天前
tree 命令集成到 Git Bash:可视化目录结构的指南
git·单片机·物联网·嵌入式·项目开发
大美B端工场-B端系统美颜师2 天前
多模态数据融合预警:从IoT传感器到卫星监测的可视化方案升级
物联网·交互·数据预警