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秒就停下来,如果需要继续前进,则需要继续按一次按动前进按钮。

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

相关推荐
jl48638211 小时前
变比测试仪显示屏的“标杆“配置!如何兼顾30000小时寿命与六角矢量图精准显示?
人工智能·经验分享·嵌入式硬件·物联网·人机交互
会周易的程序员4 小时前
openplc runtimev4 Docker 部署
运维·c++·物联网·docker·容器·软件工程·iot
acrelwwj1 天前
智慧照明新引擎,ASL600 4GWJ开启城市照明精细化管理新时代
大数据·经验分享·物联网
石去皿1 天前
【嵌入式就业7】计算机网络核心协议与嵌入式应用:从理论到IoT实战
物联网·计算机网络
lpfasd1231 天前
物联网后端岗位java面试题
java·物联网·php
科技块儿1 天前
物联网设备分布分析需要精准地理信息?支持IPv4IPv6双栈批量解析的IP离线库
物联网·网络协议·tcp/ip
coderzxy2 天前
mbpoll 交叉编译
物联网
中议视控2 天前
可编程网络中央控制系统主机通过红外发射棒控制空调电视等红外设备
网络·物联网·5g
星马梦缘2 天前
EDA彩灯电路绘制
单片机·嵌入式硬件·物联网·pcb·eda·嘉立创
G***技2 天前
杰和IB3-272:以低功耗高性能打造新一代工业智能交互核心
单片机·嵌入式硬件·物联网