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

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

3天内不再提示

如何构建自己的自平衡机器人

单片机 来源:单片机 2020-05-14 09:47 次阅读

这篇文章是关于DIY自平衡机器人的,我将向您展示如何构建自己的自平衡机器人。

这篇文章是关于DIY自平衡机器人的,我将向您展示如何构建自己的自平衡机器人。我尝试构建该项目,但未能获得预期的结果。但是这款机器人的表现相当不错且准确,尽管与我以前的机器人相比,这并不完美。

我使用定制的PCBArduino nano,MPU6050,A4988驱动程序,HC-05 bt模块,MDF板和一些硬件来构建此自平衡机器人,详细材料清单可在本文中找到。此项目中使用Balancingwii固件和EZ-GUIandroid应用程序通过蓝牙连接控制机器人。

因此,让我们从一些基本的自平衡机器人开始。

自平衡机器人的基础

自平衡机器人是指机器人通过不断校正其位置来平衡两个轮子。

陀螺仪传感器用于自平衡机器人中,该传感器连续将机器人方向数据发送到控制器

根据该数据控制器的命令,电动机向前或向后运行,以保持机器人的位置笔直。

这是自平衡机器人的理想位置,身体完美地向上注视着车轮。Y轴与机器人的身体之间的夹角为零。

当身体向前倾斜时,Y轴与身体之间会有一定角度。MPU6050陀螺仪传感器检测到该角度,然后将此数据发送到Arduino。Arduino现在执行PID计算,并命令步进电机正向运行,以将倾斜角最小化到零度。

如果机器人向后倾斜时,电机也会向后旋转并将倾斜角校正为零,则会发生相同的情况。机器人继续以每秒400次的速度向前和向后反转电动机,因此我们看起来机器人在该位置稳定。

所需组件

Arduino Nano………………………..1个

MPU605陀螺仪传感器……………….1个

Nema 17步进电机………….2个

100mm车轮…………………………..2个

A4988步进驱动器IC…………..2个

HC-05蓝牙模块............ 1个

4mm MDF板

150mm M5螺纹杆——4个

一些螺母和螺栓

DIY自平衡机器人电气图纸

上图是自平衡机器人的电路图。

我已经准备好一块PCB,您也可以下载Gerber文件订购PCB,也可以在easyeda平台中编辑PCB。
https://easyeda.com/sharmaz747/self-balancing

注意:-订购PCB之前,请先对自己的产品进行交叉检查。


您必须需要的基本连接和最小连接如下

I2C

A4 – SDA

A5 – SCL

电机驱动器引脚:

D5 – STEP1(PORTD 5)

D6 – STEP2(PORTD 6)

D7 – DIR1(PORTD 7)

D8 – DIR2(PORTB 0)

D4 –启用(均适用)

机器人构造

以下是自平衡机器人的基本构造图

从4mm厚的MDF纸上切下了三张大小为130 x 65mm的图片

在这里,我钻了一些孔,以便步进电机,然后将M3杆插入所有三个MDF板上。

然后,我切成两片20mm x 20mm铝角,尺寸为42mm,用于安装带有平台的步进电机。

现在,我使用一些硬件来组装自平衡机器人的主体。

在这里,我将M5杆插入了基础平台,并借助20x20x42铝角安装了nema 17步进电机。

现在,我将中间和顶部平台放在M5摇杆上,并用M5螺母固定。

并将PCB放在10 mm垫片上的中间平台上。

将1500mah 11.7 V脂糊剂放在基础平台上,并用皮带将其固定在适当的位置。

现在,终于将车轮固定在步进电机的轴上,并用M3机器人将其拧紧。

这样,我们的机器人组装就完成了。

现在我们可以进行自平衡机器人的编程了。

程式设计

下载balancewii//github.com/mahowik/BalancingWii

首先要开始对arduino进行编程,我们需要下载一个称为balancewii的用于平衡机器人的固件。

该固件基于用于四旋翼和多旋翼飞行无人机的Multiwii固件。您可以在此处了解有关Multiwii的更多信息http://www.multiwii.com/wiki/index.php?title=Main_Page 。

特别感谢开发此固件的Mahowik:https://github.com/mahowik

下载固件均衡wii//github.com/mahowik/BalancingWii,现在单击绿色按钮克隆或下载。固件将以ZIP格式下载到您的PC中。

现在解压缩下载的文件,打开新创建的文件夹,并删除图像中突出显示的三个文件,这根本不需要。

另外,包含balancewii.ino文件的文件夹的名称都必须相同,否则您将得到编译错误。

现在,在arduino中打开balancedwii.ino文件并编译代码并上传它,而无需进行任何更改。

在上传代码之前,请不要忘记关闭BT模块。

如果您的MPU6050方向不同,那么我需要在config.h文件中更改此行。
您可以在此处将PITCH更改为ROLL

#define CURRENT_AXIS PITCH //可以选择ROLL或PITCH轴作为当前轴。

默认情况下,大多数HC-05 BT模块都带有默认的9600波特率。

但对于此项目,请注意,您的HC-05 BT模块的波特率必须为115200,否则您将无法连接android应用

您可以通过AT命令在google上搜索HC-05 bt模块的波特率来更改它,您将获得许多有关它的教程

/ *这是串行接口的速度* /

#定义SERIAL0_COM_SPEED 115200

#define SERIAL1_COM_SPEED 115200

#define SERIAL2_COM_SPEED 115200

#define SERIAL3_COM_SPEED 115200

如果您认为机器人的响应速度较慢,则可以尝试在config.h文件中更改此设置,但请记住,这些值必须处于约束状态。

#define MAX_SPEED 350 //应该<= 500

#define MAX_TARGET_ANGLE 130 //其中10 = 1度,应<= 15度(即<= 150)

#define MAX_STEERING 90 //应该<= 100

Android应用

EZ-GUI应用程序是我们要在这里使用,你可以了解更多关于EZ-GUI(http://ez-gui.com/)从这里。EZ-GUI应用程序可通过点击以下或扫描下面的二维码链接从Play商店免费下载。上面下载包已包含这个apk文件。

https://play.google.com/store/apps/details?id=com.ezio.multiwii

应用程式设定

打开下载的应用程序,然后单击屏幕右上角的三个点,点击设置。

在BT设备上选择以选择BT模块,现在单击NEXT按钮

现在,从列表中选择固件“ Multiwii 2.40”,然后单击“下一步”,直到到达主屏幕。

单击“连接”按钮以连接蓝牙。

按下“ AUX”按钮

刻度线标记如上所示。

这是我的PID设置

该PID设置对于您的机器人来说不是强制性的,每个机器人都是唯一的。PID取决于机器人的设计,重心,车轮尺寸,电机类型等。尝试不同的设置,经过一定的尝试,您肯定会获得最佳的设置。

现在从此屏幕返回,并单击右上角的三个点并转到“高级”,然后转未经测试”,然后单击“模型控件”

现在,这是与您玩机器人的屏幕,您可以从操纵杆上运行自平衡机器人,
并在此屏幕上进行尝试不同的设置以了解更多信息。

这样,我们的DIY自平衡机器人就可以玩了。

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

    关注

    4316

    文章

    22990

    浏览量

    396142
  • 控制器
    +关注

    关注

    112

    文章

    16186

    浏览量

    177342
  • 机器人
    +关注

    关注

    210

    文章

    28187

    浏览量

    206424

原文标题:DIY 自平衡Arduino机器人-【单片机教程-创客】

文章出处:【微信号:aidanpianji,微信公众号:单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【书籍评测活动NO.51】具身智能机器人系统 | 了解AI的下一个浪潮!

    学习并优化自己的行为,以更好地服务家庭成员。 具身智能的发展如何? 近年来,具身智能机器人的发展呈现出强劲势头,尤其是在智能化和自主决策能力方面。 2010 年以来,具身智能机器人
    发表于 11-11 10:20

    利用NVIDIA Isaac平台构建、设计并部署机器人应用

    机器人在智能制造设施、商业厨房、医院、仓库物流和农业领域等不同环境中的应用正在迅速扩展。该行业正在向智能自动化转变,这需要增强的机器人功能来执行感知、地图构建、导航、负载处理、物体抓取和复杂的装配
    的头像 发表于 11-09 11:41 423次阅读
    利用NVIDIA Isaac平台<b class='flag-5'>构建</b>、设计并部署<b class='flag-5'>机器人</b>应用

    构建语音控制机器人 - 深入研究电路

    2024-07-29 |Annabel Ng S1XT33N项目 正如[之前的博客文章]中提到的,加州大学伯克利分校的 EECS 16B 课程重点关注构建名为 S1XT33N 的语音控制机器人的为期
    的头像 发表于 10-02 16:40 201次阅读
    <b class='flag-5'>构建</b>语音控制<b class='flag-5'>机器人</b> - 深入研究电路

    开源项目!用ESP32做一个可爱的无用机器人

    巧妙设计的杠杆将开关推回“关”位置。这种玩具很常见,许多人已经制作并上传到YouTube上。 作者每年都会挑战自己制作一个技术产品,今年他决定制作这个复杂的项目——可爱无用机器人。这个机器人参考了日本
    发表于 09-03 09:34

    智能分拣投递机器人

    研智能分拣投递机器人,专注于物流行业“NC小件”的分拣与投递,机器人运行稳定、分拣效率高,搭配智能分拣投递系统单台机器人最大作业效率可达400件/H,投递效率相较于传统“小黄人“提升
    的头像 发表于 08-30 15:24 242次阅读
    智能分拣投递<b class='flag-5'>机器人</b>

    开源项目!用ESP32做一个可爱的无用机器人

    巧妙设计的杠杆将开关推回“关”位置。这种玩具很常见,许多人已经制作并上传到YouTube上。 作者每年都会挑战自己制作一个技术产品,今年他决定制作这个复杂的项目——可爱无用机器人。这个机器人参考了
    发表于 08-30 14:50

    迈步前行养老产业康养第一机器人

    江智机器人公司2016年开始进军机器人,非常明确的把机器人与自动驾驶装备作为自己的功能定位。确立了自己
    的头像 发表于 08-08 08:14 574次阅读
    迈步前行养老产业康养第一<b class='flag-5'>人</b>(<b class='flag-5'>机器人</b>)

    Al大模型机器人

    金航标kinghelm萨科微slkor总经理宋仕强介绍说,萨科微Al大模型机器人有哪些的优势?萨科微AI大模型机器人由清华大学毕业的天才少年N博士和王博士团队开发,与同行相比具有许多优势:语言
    发表于 07-05 08:52

    自动停车机器人,如何快速构建

    停车机器人是用于在停车场或车库等场所中进行车辆的自动停放和取车操作。随着智能交通和智能城市的发展,停车机器人在解决停车难、提高停车效率和减少停车空间浪费等方面具有广阔的应用前景。 ▲停车移动机器人
    的头像 发表于 06-20 11:25 222次阅读
    自动停车<b class='flag-5'>机器人</b>,如何快速<b class='flag-5'>构建</b>?

    机器人完成超2亿元战略融资

    机器人成立于2011年,致力于成为全球领先的移动机器人公司。公司是国家级重点专精特新小巨人企业,杭州准独角兽企业,已建立了完整的移动机器人产品技术体系,包括
    的头像 发表于 01-03 16:01 686次阅读

    人形机器人第一股优必选科技成功登陆香港主板

    2012年成立以来,优必选已成为全球人形机器人产业的领先者,专注于人形机器人的研发和应用。在此过程中,优必选掌握了包括机器人技术和人工智能技术在内的众多前沿科技,并
    的头像 发表于 01-02 14:59 706次阅读

    开源项目!教你如何复刻平衡赛车机器人、智能家居中控、竞技机器人先进模糊控制器等

    开源项目作品 为了方便大家更好提升自己,电子发烧友小编为大家整理了一些工程师大佬设计的开源项目作品,供大家可以参考学习,希望对广大工程师有所帮助。 1.用全志R128复刻平衡赛车机器人
    发表于 12-26 09:17

    LabVIEW的六轴工业机器人运动控制系统

    LabVIEW开发六轴工业机器人运动控制系统 本项目开发了一个高效的工业机器人控制系统,重点关注于运动学算法和轨迹规划算法的实现和测试。LabVIEW作为一个关键技术,在项目中扮演了核心角色
    发表于 12-21 20:03

    用全志R128复刻平衡赛车机器人,还实现了三种不同的操控方式

    更上一层楼。 硬件设计 本项目中的平衡赛车机器人的硬件设计结构非常简单,硬件部分主要由R128开发板和几个驱动模块组成。 供电模块 平衡机
    发表于 12-20 10:22

    高动态人形机器人“夸父”通过OpenHarmony 3.2 Release版本兼容性测评

    鸿联合乐聚(深圳)机器人技术有限公司(简称“乐聚”)联合打造,通过KaihongOS构建了“人形机器人+”开放生态平台。近日,夸父人形机器人正式上市。 夸父人形
    发表于 12-20 09:31