0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

怎样用ESP8266和Arduino构建和开发WiFi控制的机器人

454398 来源:工程师吴畏 2019-07-29 10:52 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

概述

如果你关注ElectronicsHub一段时间,你会记得我们已经建造了各种机器人,如线跟随机器人,障碍避免机器人,蓝牙控制机器人手臂和射频控制机器人。

前两个机器人,即线跟随器机器人和障碍避免机器人没有对机器人的任何手动控制,即除了编程其主要功能外,不会有来自用户的额外输入。

但是对于其他两个机器人,即蓝牙控制机器人手臂和射频控制机器人,机器人等待用户提供适当的输入。这个输入可以是移动方向,也可以是拿着物体等。

在这个项目中,我建造了一个可以通过WiFi网络控制的简单机器人(机器人汽车),即通过WiFi提供用户对机器人运动方向的输入(借助于简单的HTML页面)。

WiFi控制机器人背后的概念

如果您使用过我们的“WiFi控制LEDESP8266Arduino“项目,然后您可以轻松了解WiFi控制机器人的概念。

ESP8266模块负责连接到WiFi网络并充当服务器。来到客户端,会创建一个简单的HTML页面,打开此网页的浏览器将充当客户端。

当您点击该网页时,相应的信息将会被传送到服务器(ESP8266)。 Arduino进一步接收此信息,它控制机器人的电机

WiFi控制机器人的电路图

使用ESP8266和Arduino的WiFi控制机器人的电路图如下图所示。

注意: ESP8266 WiFi模块加载了AT命令。上述电路的设计考虑到了这一点。

所需组件

ESP8266 [在此处购买]

L298N电机驱动器模块[在此处购买]

Arduino UNO [在此处购买]

机器人底盘[购买]

4 x 5V减速电机[在此处购买]

连接线[在此处购买]

电源(或电池)

电路设计

要记住的第一件重要事情是我将编程Arduino并负责通过串行通信配置ESP8266模块并控制L298N电机驱动器模块。

因此,Arduino的数字引脚2和3使用SoftwareSerial功能配置为RX和TX。这些引脚连接到ESP8266模块的TX和RX引脚。

然后,L298N电机驱动器模块的输入,即IN1,IN2,IN3和IN4连接到Arduino UNO的数字引脚8,9,10和11。

来到机器人底盘,它有4个齿轮电机。因此,我将正确的两个电机并联连接,并将它们连接到电机驱动器的OUT1和OUT2端子。同样,左侧两个电机连接到OUT3和OUT4。

代码

有两个WiFi Controlled Robot项目的代码。一个代码用于Arduino UNO,另一个代码是用于创建网页的HTML代码。

Arduino代码

以下是该项目的Arduino代码。在此代码中,在适当的位置输入WiFi网络的SSID和密码。

此外,代码中还有一个部分负责将静态IP地址分配给ESP8266模块。必须根据您的要求更改此IP地址(以及默认的网关和子网掩码)。

您要分配的静态IP地址不应该是非常重要的与您网络中的任何其他设备冲突,即其他设备不应拥有相同的IP地址。

因此,扫描网络中的所有IP地址并仔细分配IP地址。

HTML代码

为了创建控制网页,可以使用以下HTML代码和JavaScript文件。

下载扩展名为.html的上述代码,并下载 jquery.js 文件。将这两个文件放在一个文件夹中。

工作

一个名为WiFi的简单项目这里实现了使用ESP8266和Arduino的受控机器人。让我解释它的工作原理

在进行必要的连接和代码更改后上传Arduino代码。如果打开Arduino IDE的串行监视器,则可以看到发送到ESP8266模块的AT命令。

ESP模块连接到WiFi后,它将分配静态IP并创建服务器。创建服务器后,ESP模块正在等待与客户端连接。

现在,如果您打开之前下载的HTML页面,则可以进行简单的布局它由五个按钮组成,名称为FORWARD,REVERSE,RIGHT,LEFT和STOP。

通过查看这些按钮,你可能已经理解了每个按钮的功能。只需单击按钮即可执行该特定操作。就这么简单。

注意:

此WiFi控制机器人在HTML网页的帮助下进行控制(可以使用与ESP8266连接到同一WiFi网络的计算机上的任何网络浏览器进行访问)。

那里很多项目已经实现了类似的概念但是使用了像Blynk这样的应用程序。

我没有使用该应用程序的原因是我觉得你真的这么做不知道实际发生了什么,因为一切都是由库文件完成的。

所以,如果你想知道项目到底发生了什么,那么只有你应该知道试试这个。如果没有,您可以使用Blynk App简单地实现项目。

如果仔细检查这两个代码,您就可以了解浏览器和ESP之间的通信方式模块。

结论与应用

一个简单的WiFi受控机器人在该项目中实施,其中机器人汽车通过WiFi网络使用网页进行控制。

您可以使用集成摄像头和访问相机等高级功能来创建此项目。在浏览器上直播。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    213

    文章

    30580

    浏览量

    219583
  • Arduino
    +关注

    关注

    190

    文章

    6515

    浏览量

    195969
  • ESP8266
    +关注

    关注

    51

    文章

    966

    浏览量

    49009
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    晶科鑫 | 国产26MHz晶振匹配Espressif(乐鑫) ESP8285/ESP8266芯片案例

    【应用】国产26MHz频率晶振应用于物联网WIFI物联网模块(串口转WiFi模块),Espressif(乐鑫)ESP8285/ESP8266芯片匹配测试OKESP8285其实是
    的头像 发表于 11-21 15:37 4052次阅读
    晶科鑫 | 国产26MHz晶振匹配Espressif(乐鑫) <b class='flag-5'>ESP</b>8285/<b class='flag-5'>ESP8266</b>芯片案例

    高精度机器人控制的核心——基于 MYD-LT536 开发板的精密运动控制方案

    方案; 开发者可直接对接上层 ROS 框架,实现多轴机器人同步控制与智能路径规划。 三、典型应用:高精度装配机器人控制系统 在某高端电子装
    发表于 11-14 15:48

    ESP8266ESP32开发板常见的2种下载方式

    至240MHz CPU,而ESP8266是单核处理器,主频支持80MHz至160MHZ。 这些WiFi模块都带有GPIO,支持SPI,I2C,UART等各种协议。这两款芯片都有STA/AP/STA+AP的工作模式。E...
    的头像 发表于 11-10 20:30 335次阅读
    <b class='flag-5'>ESP8266</b>和<b class='flag-5'>ESP</b>32<b class='flag-5'>开发</b>板常见的2种下载方式

    在蜂鸟处理器上进行RT-Thread+ESP8266 wifi模块开发

    本队伍编号CICC3042,本文介绍在蜂鸟处理器上运行RT-Thread实时操作系统,并进行ESP8266wifi模块开发。 在蜂鸟配套的sdk中提供了RT-Thread的移植 https
    发表于 10-31 09:02

    ESP8266ESP32开发板常见的2种下载方式

    协议,完整的 TCP/IP 协议栈以及蓝牙协议栈。用户可以使用这两款模块为现有的设备添加WIFI联网功能或蓝牙(ESP32),轻松的构建独立的网络控制器和远程
    发表于 10-24 18:04

    小萝卜机器人的故事

    经过我的申请, 马老师发放了, 小萝卜机器人的, 开发权限, 原来的小萝卜公司, 因为经营不善倒闭, 作为科研产品, 几个技术对此惋惜, 自掏腰包, 要让小萝卜机器人, 再生, 每次听到小萝卜说
    发表于 10-23 05:24

    STM32+esp8266连接机智云,上传温湿度数据并控制继电器开关(平台配置、代码生成、代码移植)

    代码,并通过手机APP进行设备控制。元器件准备在开始之前,您需要准备以下硬件元器件:1.STM32开发板2.ESP8266Wi-Fi模块3.温湿度传感器(如DHT1
    的头像 发表于 07-15 18:54 748次阅读
    STM32+<b class='flag-5'>esp8266</b>连接机智云,上传温湿度数据并<b class='flag-5'>控制</b>继电器开关(平台配置、代码生成、代码移植)

    单片机实例项目:ESP8266串口WIFI

    单片机实例项目:ESP8266串口WIFI,推荐下载!
    发表于 06-03 21:01

    ESP8266烧录与机智云一键配网教程

    ESP8266模块因其低成本和高性能,广泛应用于智能家居和工业自动化等领域。机智云平台提供了一键配网功能,简化了设备的联网过程。本教程将详细介绍如何使用ESP8266进行烧录,并通过机智云实现一键配
    的头像 发表于 05-24 11:04 1553次阅读
    <b class='flag-5'>ESP8266</b>烧录与机智云一键配网教程

    盘点#机器人开发平台

    地瓜机器人RDK X5开发套件地瓜机器人RDK X5开发套件产品介绍 旭日5芯片10TOPs算力-电子发烧友网机器人
    发表于 05-13 15:02

    【「# ROS 2智能机器人开发实践」阅读体验】机器人入门的引路书

    ROS的全称:Robot Operating System 机器人操作系统 ROS的 目的 :ROS支持通用库,是通信总线,协调多个传感器 为了解决机器人里各厂商模块不通用的问题,让机器人快速
    发表于 04-30 01:05

    【「# ROS 2智能机器人开发实践」阅读体验】+内容初识

    地图构建→路径规划→动态避障)等等 2. 机器人功能开发 相较于ROS入门21讲,书中更是详细书写了关于机器人的功能开发,并且十分完善,教程
    发表于 04-27 11:24

    开源项目!教你如何制作一个开源教育机械臂

    )-非常适合使用另一个Pedro板或基于Arduino的遥控器进行多机器人通信或远程控制。这对于群体机器人和低延迟应用程序非常有用。 WiFi
    发表于 03-10 11:22

    名单公布!【书籍评测活动NO.58】ROS 2智能机器人开发实践

    讲解使用ROS 2开发机器人视觉识别、地图构建和自主导航等众多应用的方法,让机器人不仅动得了,还能看懂和理解周围的环境,并且产生进一步的交互运动。 本书特色 本书采用 最新稳定版本R
    发表于 03-03 14:18

    开源项目!基于Arduino控制的六足机器人

    步骤,完整复现这款低成本、高性能的六足机器人开发过程中建议使用支架辅助调试,避免足部意外触地。如需进一步优化步态或扩展功能,可基于提供的Arduino代码进行二次开发。 其他代码资料
    发表于 03-03 11:25