300401| 311
|
[项目] 快上车,教你造一个BB-8机器人! |
没错,本次教大家造的就是那个《星球大战:原力觉醒》电影中的机器人BB-8。从去年10月官方放出的首支预告片开始,结构奇特、行为呆萌的BB-8很快俘获了大批粉丝,受欢迎程度与主角们相比毫不逊色。当然,它自己本身也是主角,在影片中的戏份并不少。在洛杉矶举行的首映式上,BB-8也作为主角之一“滚”了一次红毯。 在影片中,BB-8是像木偶一样被控制的,想把BB-8的机器人做成电影里那样自由行走的机器人并不容易。人们在惊叹之余,BB-8的工作原理也得到了外界非常激烈的讨论。有人认为其两个内部齿轮为机器人提供动力,通过对配重块的调整保持平衡,当头部使用磁性单元和球内的传感器进行接触交互之后,能够知道哪个位置是向上哪个位置是前进,BB-8全局能够自动调整头部且不会脱落。 那你可能会问BB-8的工作原理是什么?直到Sphero 的一份专利曝光,从而揭露了BB-8的工作原理。与外界认为BB-8的两个球之间是相互独立工作不同,这份专利透露它们实际上是一体的。在这份名为“磁性耦合的自走式装置”专利中,球体的内部会有一个重力装置,由两个轴轮马达与一个保存垂直的桅杆组成。轴轮马达在运动的过程中,会让球体重心发生偏移,从而影响球体的运动。它的工作原理就是和太空球类似,当有物体进入时,通过改变位置会导致球体的重心变化,最后会导致球的旋转和向前运动。 说到头的部分,很多人以为它是在不断地向后运动来让自己保持向上的状态。实际上它是采用了磁悬浮的技术,在BB-8身体内部的桅杆上面装有磁铁,所以它始终能与球体重心保持在同一个水平线上,所以我们可以看到,在BB-8运动过程中,它通常是倾斜的,这是由于重心在行进过程中总是倾斜的。 本次教大家制作的BB-8机器人属于mini版,身体主要结构都是通过3D打印机打印,控制单元采用了DFRobot的Romeo BLE mini 控制器,这款控制器小巧且功能强大,在继承了RoMeo BLE所有功能的同时,还集成了蓝牙4.0通信、3pin传感器接口、2路电机驱动,所以对空间要求非常苛刻的项目,这款迷你的控制器绝对是不二之选。除此之外,控制采用手机GoBLE APP与Romeo BLE mini板建立通信控制BB-8,电源方面我利用一块1000mAh3.7v锂电池作为动力,由于Romeo BLE mini控制板工作电压最低不能低于5v所以这里需要5v的升压模块,首先看我画好的电路。 啰嗦了一大堆现在原理也知道了,那就开始造吧~~ 需要准备的材料~~~ 第一步:制作磁性耦合重力驱动装置 首先将两只电机分别装入底盘电机座中,并用502胶水进行固定,焊接上电机导线。 将打印好BB-8轮毂上挤上玻璃胶制作轮胎,对玻璃胶进行适当的整形,放在通风处1小时玻璃胶就干了,当然如果你不想等待也可以用吹风机吹10分钟就行。 把传动大齿轮粘在轮毂上,插入光轴粘合为了防止轴孔错位。 把打印好小齿轮分别装在两个电机轴上,用胶水固定。 将直径4mm的光轴插入底盘中间,分别装入转轮,垫圈以及用笔套制作的轮档。 装上电机盖并把电机导线穿入盖板,上好固定螺丝。 依次装上尼龙螺柱、电池、Romeo BLE mini控制板,电池底部用少量热熔胶固定。 装入同步轮支架用1x10的螺丝固定,同步轮轴用3x30的螺杆装入用502胶水固定,用USB线将Romeo BLE mini控制板与电脑连接,上传BB-8控制程序代码。【代码已放在文章结尾处,需要自行下载。】 将开关、充电接口、升压模块按照电路图接线焊接布线,全部按照在电池层并用热熔胶固定。把两个电机导线分别接入Romeo BLE mini控制板MA1、MA2、MB1、MB2,升压模块输出端分别接VIN端正负极。 第二步:制作BB-8身体部分 将3D打印的BB-8身体半圆部分用胶水粘合,并将两半圆合起来打磨,先用粗砂纸打磨后换成细砂纸打磨至球面光滑。 用遮盖胶带将BB-8的身体和头平展包裹起来,用圆规和铅笔画出BB-8身体上的图案,可按照原版照片画有很多不规则的几何图形,用刻刀将需要首先喷银色喷漆的部分遮盖胶带裁下来,喷上银色喷漆。 将需要喷红色部分的图案纸裁除,用遮盖胶带遮盖好已喷好的银色图案,喷上红色喷漆。按照电影原型bb-8要喷黄色油漆才对,至于我为什么要喷红色喷漆呢?小孩子不要多问,当然是因为中国人就是喜欢红色啦!!额,讲错啦~其实是我手上没有一下黄色喷漆只能将就了。。。 为了更像BB-8的图案,你还需要在空白的地方画上很多小圆圈,是不是很苦逼?你说虐不虐,虐不虐? 将头部天线部分用电钻钻出两个1mm的空,制作BB-8的天线用两根白色的导线插在钻孔里并用502胶水固定,长的天线顶套上一段黑色的热缩管会更像原版。并装上头部的小轮和磁铁(磁铁的N极和S极要与身体里的磁铁异名相吸引),头和头底盖同样用胶水粘合。 均匀喷上光漆,一次不要喷过多,等待几分钟后又进行第二次喷油漆,可以循环几次喷涂直到满意。 最后将磁性耦合重力驱动装置放入BB-8身体内,按下开关通过手机蓝牙链接到Romeo BLE mini板,再通过GoBLE APP就可以手机控制BB-8行走了,一个BB-8机器人就造出来了。 对了,视频我会尽快拍摄上传分享给大家,请耐心等待! |
我下载安装了一个ROMEO_M.zip文件,#include <Romeo_m.h>没问题了,但是#include "GoBLE.h" 还是没办法使用,请问该怎么办啊 Arduino:1.6.11 (Windows 10), 开发板:"Arduino/Genuino Uno" C:\Users\keqia\Desktop\bb-8\bb-8.ino:1:45: fatal error: GoBLE.h: No such file or directory #include "GoBLE.h" //鎵嬫満钃濈墮鎺у埗搴? ^ compilation terminated. exit status 1 为开发板 Arduino/Genuino Uno 编译时出错。 在文件 -> 首选项开启 “编译过程中显示详细输出”选项 这份报告会包含更多信息。 |
源代码 发表于 2016-8-5 12:22 LZ 做完后有两个问题啊 第一:假如机体面是A 头部是B 磁性连接上为什么LZ选择的是N-S:S-N的结构呢?是A面循环B面循环 A+B大的磁性循环的意思么?这样可以增进磁性连接强度么?另外假如AB面相对运动时是否会有A面的S与B面的S相对的情况出现呢?这样不是同行相斥了么?机体是否会与头部分离?假如使用N+与S+相对的强磁铁是阜可以呢? 第二,LZ的主动齿轮与从动齿轮的模数是多少呢? 可能是我3D打印机的精度不高的原因 我的咬合并不是很好。再有就是当高速运转时,从动齿轮由于摩擦产生高温。有微微的热熔现象,导致齿轮运行一段时间会脱掉。我采用的打印材料是PLA 是否用ABS会好一点? |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed