基于Nodemcu的手机控制小车

基于Nodemcu的手机控制小车

  • 一、项目说明
  • 二、项目材料
  • 三、代码与电路设计
  • 四、轮子和车体
  • 五、电路连接
  • 六、使用方法

一、项目说明

嗨,机器人项目制造者们!在这个项目中,我制作了这辆简单但快速的遥控车,它可以通过智能手机控制,并且与普通的无线电控制设备相比有更多的优势。这辆车使用的是目前市面上最实惠的带Wi-Fi功能的微控制器,有些人称之为Nodemcu或ESP8266。通过安装在任何智能手机上的应用程序来控制,由于它使用Wi-Fi进行通信,你可以期待控制时不会有延迟。你可以制作4WD(四轮驱动)以获得更大的扭矩,但我建议只使用2轮驱动,因为动力已经足够,而且这种设置还可以为你节省大量的电力。

首先,让我解释一下为什么你应该制作这辆机器人车。这辆车可以被视为大多数机器人车项目的基础。比如说,你想制作一个灭火机器人,或者一个监控机器人,我们现在正在制作的这辆机器人车就是所有这些项目的基础。我承认对于更大规模的项目,控制器会有所不同,但对于所有人来说,基础都是一样的。在这辆车中,前轮移动得很平滑,因为它是由后轮驱动的,后轮配备了足够的扭矩来驱动这种大小的汽车。这个项目也是一个例子,表明即使资源有限,你也可以建造先进的车辆(原型)。

为了让更多的人能够制作,我将使用基本的材料来制作这辆车,那么,让我们收集所需的材料来制作它吧。

二、项目材料

为了制作你的物联网汽车,收集以下材料:

  • Nodemcu开发板
  • BO电机(60rpm)带轮子
  • 迷你面包板
  • L298N电机驱动器
  • 跳线电缆
  • 2个带有支架和开关的18650电池
  • 直流电机
  • 轮子
  • 双面胶带
  • 热胶
  • 纸板
  • Arduino IDE
  • 编程电缆
  • 纸板(此项重复,可能是误添加)

三、代码与电路设计

在这里插入图片描述
在这里插入图片描述
不要因为看到电路图而感到困扰,几年前我也曾努力理解电路连接,但我通过阅读和理解它们解决了这个问题。我将分解电路并解释,以便你们能够容易理解。

L298N电机驱动器到NodeMCU的连接:

电机驱动器的IN1、IN2、IN3、IN4连接到NodeMCU的D1、D2、D3和D4引脚。这些引脚控制每个电机的方向。
电机驱动器上的ENB和ENA引脚控制电机的速度。这些连接到NodeMCU上的PWM功能引脚以控制速度(默认已连接)。

电机的连接:

左电机连接到L298N电机驱动器的OUT1和OUT2端子。
右电机连接到电机驱动器的OUT3和OUT4端子。

电源连接:

18650电池连接到电机驱动器的电源输入(标有12V和GND)以提供电机所需的电力,而L298N电机驱动器的5V输出用于通过NodeMCU板上的Vin引脚为NodeMCU供电。NodeMCU、电机驱动器和电池的GND引脚都连接在一起以创建一个共同的地线,为此,我使用了一个小型面包板。你也可以不使用面包板,将所有的电线直接连接在一起,无论如何,这是你的选择。完成连接后,将NodeMCU连接到电脑并打开Arduino IDE。复制并粘贴以下代码,从菜单中选择正确的端口和主板类型,然后点击上传按钮。

四、轮子和车体

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
对于使用何种类型的轮子没有特定规则,在我的例子中,我将使用这些带有橡胶握把的瘦身轮子。这种类型的轮子会让车子看起来很棒,而且重量轻,几乎可以在所有基本表面上良好运行。如果你打算在崎岖或极端条件下使用它们,那么请选择另一种类型的轮子。
正如我之前提到的,我将在这个项目中使用后轮驱动,前轮简单地连接到一个玩具直流电机上。

将前轮连接到这些电机的目的是确保平稳移动,而这另一方面是可以通过轴承实现的,所以感谢那些直流电机,它们节省了我的资源。在纸板的边缘涂上热胶,然后将直流电机放在上面,按住一段时间,让它完全干燥。

五、电路连接

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在你按照电路解释操作后,几分钟内你就可以建立组件之间的连接了。

首先,使用跳线电缆将NodeMCU板直接连接到面包板上。建议使用双面胶带将面包板和电机驱动器固定在纸板底座上。最后连接直流电机到驱动器,因为在某些情况下,电机的旋转方向可能会不同,所以请注意这一点。有很多方法可以修改这个底座的外观,我只是简单地用了一块红色贴纸粘在前面,你也可以在这里使用LED灯带,选择权在你。当这些都准备好后,添加电池组,我使用了锂离子电池,它提供了很好的电力备份。

六、使用方法

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
你也看到那个了吗?这辆车正试图从工作台飞起来!使用这个车很有趣,你只需要通过开关启动电池,然后打开智能手机上的Wi-Fi。开发板将自动连接到网络,你只需要打开应用程序,允许几秒钟进行连接,在这里获取免费应用程序。你会看到一个消息说连接成功,之后你将完全控制这辆车。你可以在9个以上的方向上运行这辆车,探索所有的按钮,还有一个速度控制按钮和刹车按钮,对这辆车来说工作得很好。
我为这辆车使用了2WD,也就是双轮驱动,以节省电力,这样用户就可以更长时间地享受乐趣。
这个项目就介绍到这里了,试试看制作这个项目。

希望你喜欢这个项目,并在构建过程中找到乐趣!如果你有任何问题或需要帮助,欢迎在评论区交流。

作者:Svan.


注意:本博文为不得在未经本人同意进行转载或者二次创作,违者必究!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/55963.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

yum仓库安装rabbitmq

yum仓库安装rabbitmq 1、配置yum仓库 vim /etc/yum.repos.d/rabbitmq.repo # In /etc/yum.repos.d/rabbitmq.repo## ## Zero dependency Erlang ##[rabbitmq_erlang] namerabbitmq_erlang baseurlhttps://packagecloud.io/rabbitmq/erlang/el/7/$basearch repo_gpgcheck1 gpg…

智能生成ppt软件哪个好?如何高效生成ppt?

想要快速制作出专业且吸引人的PPT演示文稿吗?ai智能生成ppt工具可以帮你实现这一目标。 无需复杂的设计技巧,也不必花费大量时间,只需几个简单的步骤,就能创造出令人印象深刻的演示文稿。下面是一份免费版教程,让你轻…

PyCharm+ssh跳板机+服务器

PyCharmssh跳板机服务器 文章目录 PyCharmssh跳板机服务器准备工作登录服务器查看CUDA查看conda创建虚拟环境 前言配置ssh免密登录设置ssh隧道配置pycharm测试第一种第二种 服务器空闲查询传输数据 准备工作 登录服务器 直接ssh连接就行,在终端(命令行)直接输入下面命令: 跳…

K8s-services+pod详解1

一、Service 我们能够利用Deployment创建一组Pod来提供具有高可用性的服务。 虽然每个Pod都会分配一个单独的Pod IP,然而却存在如下两问题: Pod IP 会随着Pod的重建产生变化Pod IP 仅仅是集群内可见的虚拟IP,外部无法访问 这样对于访问这…

基于Python Django的在线考试管理系统

🍊作者:计算机毕设匠心工作室 🍊简介:毕业后就一直专业从事计算机软件程序开发,至今也有8年工作经验。擅长Java、Python、微信小程序、安卓、大数据、PHP、.NET|C#、Golang等。 擅长:按照需求定制化开发项目…

线程基础学习

线程的实现 通过实现Runnable接口的方式,实现其中的run方法。继承Thread类,然后重写其中的run方法。通过线程池创建线程,默认采用DefaultThreadFactory。有返回值的callable,实现callable接口,实行call方法。 本质上…

【Linux-基础IO】软硬链接+动静态库

一、软硬链接 见一见 软连接 硬连接 通过观察我们发现以下几点: 1.ll - i后,软连接形成的文件有指向,并且软连接的Inode编号与对应文件的Inode编号不一样 2.ll - i后,硬连接形成的文件与对应的文件Inode编号一样 3.软连接…

大佬,简单解释下“嵌入式软件开发”和“嵌入式硬件开发”的区别

在开始前刚好我有一些资料,是我根据网友给的问题精心整理了一份「嵌入式的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!!首先,嵌入式硬…

初识数据结构--时间复杂度 和 空间复杂度

数据结构前言 数据结构 数据结构是计算机存储、组织数据的方式(指不仅能存储数据,还能够管理数据-->增删改)。指相互之间存在一种或多种特定关系的数据元素的集合。没有单一的数据结构对所有用途都有用,所以我们要学习各种的数据结构,比…

visual studio使用ssh连接linux虚拟机运行程序

1.vs安装linux组件 2.安装后新建项目 新建后会有一个使用指南 设置网络为桥接网卡后打开虚拟机 使用vs提升的那句话安装工具 sudo apt-get install openssh-server g gdb gdbserver 重启ssh服务 sudo service ssh restart 接着进去打开ssh端口 sudo vi /etc/ssh/sshd_config …

pytest的基础入门

pytest判断用例的成功或者失败 pytest识别用例失败时会报AssertionError或者xxxError错误,当捕获异常时pytest无法识别到失败的用例 pytest的fixture夹具 pytest的参数化 #coding:utf-8 import pytestfrom PythonProject.pytest_test.funcs.guess_point import ge…

小程序知识付费的优势 知识付费服务 知识付费平台 知识付费方法

在信息爆炸的时代,知识如同繁星点点,璀璨而散落。如何在这片知识的海洋中精准捕捞,成为现代人追求自我提升的迫切需求。小程序知识付费,正是这样一座桥梁,它以独特的优势,让智慧触手可及,轻触未…

Miniconda更改虚拟环境创建路径

Miniconda更改虚拟环境创建路径 文章目录 Miniconda更改虚拟环境创建路径前言步骤一 修改配置文件步骤二 提升路径访问权限步骤三 测试配置修改是否生效 前言 在我使用 conda 命令创建新的虚拟环境时,发现创建好的虚拟环境存放路径是在 ../miniconda3/pkgs/ 路径下…

Nginx从入门到实战(八):版本平滑无感知,不停机升级

一、查看旧版本信息 可以通过nginx -V命令,来查看当前nginx的版本信息,和配置参数。 [rootnb001 sbin]# nginx -V -bash: nginx: command not found [rootnb001 sbin]# ./nginx -V nginx version: nginx/1.20.1 built by gcc 4.8.5 20150623 (Red Hat …

C/C++语言基础--C++神奇的多态

本专栏目的 更新C/C的基础语法,包括C的一些新特性 前言 通过前面几节课,我们学习了抽象、封装、继承相关的概念,接下来我们将讲解多态,多态他非常神奇,正式有了他,类才能出现多样性特征;C语言…

【C++差分数组】P1672何时运输的饲料

本文涉及知识点 C差分数组 C算法&#xff1a;前缀和、前缀乘积、前缀异或的原理、源码及测试用例 包括课程视频 P1672何时运输的饲料 原文比较啰嗦&#xff0c;我简述一下&#xff1a; 第x天运来F1(1<F1<1e6)千克的饲料&#xff0c;第D&#xff08;1<2e3)天还剩F2&…

DBA | 如何将 .mdf 与 .ldf 的数据库文件导入到SQL Server 数据库中?

[ 知识是人生的灯塔&#xff0c;只有不断学习&#xff0c;才能照亮前行的道路 ] 原文链接&#xff1a;DBA | 如何将 .mdf 与 .ldf 的数据库文件导入到SQL Server 数据库中? 如何将 (.mdf) 和 (.ldf) 的SQL Server 数据库文件导入到当前数据库中? Step 1.登录到 Sql Server 服…

【Nginx系列】Nginx启动失败

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

数学建模算法与应用 第12章 现代优化算法

目录 12.1 粒子群优化算法 Matlab代码示例&#xff1a;粒子群优化算法求解函数最小值 12.2 遗传算法 Matlab代码示例&#xff1a;遗传算法求解函数最小值 12.3 蚁群算法 Matlab代码示例&#xff1a;蚁群算法求解旅行商问题 12.4 Matlab 遗传算法工具 使用遗传算法工具箱…

PyCharm打开及配置现有工程(详细图解)

本文详细介绍了如何利用Pycharm打开一个现有的工程&#xff0c;其中包括编译器的配置。 PyCharm打开及配置现有工程 1、打开工程2、配置编译器 1、打开工程 双击PyCharm软件&#xff0c;点击左上角 文件 >> 打开(O)… 选中想要打开的项目之后点击“确定” 2、配置编译器…