开启新的征程,邀请您见证ST的蜕变

【特惠季】小马哥最新小四轴,完整资料限时特价开源!

不用变着法偷懒,智能家政机器人给你理由!

基于Arduino Uno制作的啤酒浇注机器人

基于Arduino Uno制作的啤酒浇注机器人

倒啤酒是一种艺术,绝对是品尝体验的一部分,特别是当你需要足够的泡沫完美地排列在玻璃的边缘。由于比利时是啤酒之乡,我们决定为两种比利时啤酒(Duvel和Jupiler)制作一个浇注机器人,并根据玻璃瓶和瓶子尺寸制作机器人,作为我们的Master One项目的一部分。这个想法是为两个啤酒品牌建立一个共同的机器人。基于可用性,我们使用以下组件和材料构建机器人。

硬件:Arduino微控制器。

结构材料:密度板,有机玻璃

3D打印:解放军

建模软件:Solidworks / Inventor

编码:Fritzing和Arduino

步骤1:所需组件

所需组件的图片

这一步是关于我们的选择和可用性。在其他条件可能有所不同。

  1. 直流电机(2个)
  2. 径向球轴承(2个)
  3. 轴联轴器(2个)
  4. 液晶显示屏(1个)
  5. 称重传感器(1个)
  6. Arduino Uno(1个)
  7. 称重传感器模块(放大器HX711)(1个)
  8. H桥电机驱动器(1个)
  9. 电位器(2个)
  10. 中密度纤维板(五金店)
  11. 有机玻璃(五金店)
  12. 用于3D打印的PLA卷筒*

*如果三维打印机不可用,大部分打印件可以无论如何订购或加工。

步骤2:持有人设计

Holder Design的图片

选择您需要制作的啤酒品牌做一个机器人。(经过简短的讨论后,我们决定与一个温和而非常有名的啤酒Jupiler和一个强烈的啤酒Duvel)。对不同的想法进行头脑风暴,以共同的设置为玻璃和瓶子设计合适的支架。(我们遵循scrum的方法来提出一些创新的设计,并用以下两个设计来完成)

持有人:

在Solidworks中设计了两个瓶子,并通过叠加一个或其他来比较两个瓶子。

概述了组合模型的边界,准备了一个壳,并与它们抵消一些。抓手需要被设计来抓住瓶子(我们的抓手通过将三根触手伸出平面而嵌入支架设计中)。

为支架制作一个合适的连接器,将其与执行器/马达连接起来(在我们的例子中,我们将连接器和支架合并在一起,因为我们用PLA来打印三维)

如果分别设计连接器和支架,最好使用两种不同的材料(最好是金属 - 聚合物组合)

玻璃持有人:

Duvel和Jupiler的眼镜也采用了类似的方法。玻璃可能不需要复杂的3D打印外壳,但需要一些东西来阻止其不需要的垂直运动。但是,与瓶架单元中的一样,玻璃架也需要连接器连接到执行器。(我们的玻璃支架的概念只是一个L支撑,用于将玻璃放置在两个通用的合适直径之间,然而,由于我们还需要设计一个连接器,因此我们决定在加工支架组件的其余部分时进行3D打印出有机玻璃)

注意:一般来说,可以使用任何两种不同的瓶子和一杯含酒精或不含酒精的饮料。

步骤3:框架设计和组件/材料选择

框架设计和组件/材料选择的图片

框架设计

一旦支架设计完成瓶和玻璃,继续框架设计。准备一个粗略的草图勾画了我们关于自动化啤酒倾倒的粗略想法。现在,自动浇注的一个重要因素是,正确固定轴线并确定瓶子和玻璃杯轴之间的精确距离,以便将啤酒精确地倒入玻璃杯中。但是为此,需要至少放置一个轴,然后通过反复试验重复另一个轴的位置。(在我们的例子中,我们固定了瓶子的轴线,并在其周围设计了一个装配体的框架,甚至可以固定玻璃轴并在其周围工作)。

最好将框架设计成两个部分。这将有助于更轻松的组装。(上半部分由有机玻璃制成,为了使啤酒倾倒得更好,下半部分由中纤板制成,上半部分是一个主要部分支撑啤酒浇注的所有结构部件,下半部分主要是上半部分的支撑,还包含电气和电子部件,并具有电池盒设置,上下半部之间的连接使用2个铰链,这种方式如果需要,我们可以很容易地访问电子。)

组件选择

为了完美地倒入啤酒,玻璃和瓶子同时进行受控运动。这可以通过在连接到电机的轴的帮助下旋转来完成。电机的选择需要通过计算旋转玻璃和瓶子所需的有效扭矩来完成。旋转编码器/电位器需要在闭环中用直流电来控制角度,如果不是伺服电机的话。(我们使用25千克*厘米扭矩的直流电动机在两个轴上连接一个闭环电位器)

与电机和轴一起,轴联轴器,轴承及其支架,电机,电机夹的良好支撑也需要设计/采购。(我们采购轴承和轴联轴器,3d印刷轴承座,底座支架,电机夹和电机支架,电位器支架和电位器支架)

步骤4:电路设计和传感器选择

电路设计和传感器选择的图片

这个项目所需的电气部分是:

  • 1个Arduino UNO板;
  • 2x直流电机(高转矩); [ 电机 ]
  • 1个H桥(L298N); [ H桥 ]
  • 1个适配器AC / DC 220V AC-12V DC;
  • 1个称重传感器(0-10kg); [ 称重传感器 ]
  • 1x称重传感器放大器HX711; [ 称重传感器放大器 ]
  • 2个电位计10kΩ;
  • 1个液晶显示器(16x2);
  • 1x内部集成电路协议I2C;
  • 1个按钮(开始按钮);
  • 1个开/关按钮;
  • 不同颜色的电线。

旋转玻璃和瓶子所需的扭矩是非常高的,所以选择了两个高扭矩,低速度的电机,因为我们需要慢慢倒入啤酒。为了控制电机的速度和方向,H-Bridge连接到电机和Arduino。速度由Arduino的PWM引脚控制(使用“模拟写入(pin,speedValue)”功能)。由于电机电压是12V,我们使用AC / DC适配器,可以将电压从220V AC转换为12V DC。

(我们使用电位计对电机进行闭环,实际上,通过适当的计算,可以给出电机轴的角度位置。)

为了识别瓶子和玻璃杯的不同可能的组合,使用配备有能够检测小的重量变化的放大器(HX711)的称重传感器。每个重量对应于一个组合。根据所需的输出数量,情况可能会有所不同(总共我们考虑了6种组合,因为我们有2种不同的瓶子和2种不同的眼镜,第六种组合表示不同的情况,所有的情况在后面的基准。)

LCD配备协议I2C以节省引脚并使通信变得简单,显示了在整个过程中所遵循的所有指令。

最后,机器人配有一个按钮,可以启动循环。

 步骤5:编码

为了使代码清晰,我们将其分为不同的部分。

第一部分:包含图书馆。这部分对简化代码非常重要。事实上,包括一些图书馆,我们可以使用现有的功能,而不是自己创建它们。我们使用传感器和液晶显示器的库,如下图所示:

第二部分:全局变量的声明。这些变量被用在所有的代码中。

第三部分:引脚声明。在这里,我们正确地设置连接在Arduino上的引脚。

第四部分:本部分致力于功能的创建

  • 测量重量。它可以测量称重传感器上的重量。每当我们需要知道哪个瓶子和玻璃被固定在盒子里时,我们使用这个功能。
  • 阅读角度。它允许实现电机的闭环。事实上,通过阅读和分析电位器给出的值,我们可以知道瓶子和玻璃的角位置。
  • 运动。这包含执行电机旋转的两个功能。一个用于玻璃杯,另一个用于瓶子。
  • 重置。在循环结束时使用它来重置程序并使其能够进行新的灌注。

第五部分 最后一部分是专用于主要代码。这里有设置和循环。

  • 无效设置。这部分只在程序开始时执行一次。我们使用该设置来初始化所有引脚(INPUT或OUTPUT)和LCD。
  •  无效循环。这部分是真正的程序,它在循环中执行不定时间(直到提供电源)。在这里,我们使用的功能“切换大小写”,根据称重传感器读取的重量,程序会执行不同的操作。例如,它在液晶显示屏上显示下一步要做的事情,如“插入Duvel瓶”。然后,如果外壳兼容,按下开始按钮,机器人开始倾倒。在几种情况下浇注是为了正确倒入啤酒。

最后,如果程序终止,我们可以通过按下开始按钮重新启动程序,循环再次开始。

步骤6:制造和装配

制造与装配的图片

这个项目的制造主要可以分为两类

  1. 3D打印

对于3D打印,需要注意所选材料的收缩百分比,打印机的最大尺寸容量,材料的密度,打印温度,支撑的有效放置,以便在建筑物中正确地竖立所需的部件区。我们使用PLA材料在Ultimaker 2.0中进行了打印。

我们3d打印的部分如下,

  • 瓶架(1个)
  • 轴承座(2个)
  • 电位器支架(2个)
  • 电位器支持(2个)
  • 电机座(4个)
  • 电机夹(2个)
  • 玻璃座连接器(1个)
  • 电位器轴耦合器(2个)

  2.加工:

这可以通过材料板的激光切割来完成,或者在较厚的木板或MDF的情况下通过切割机来完成。在装配过程中,一些偏移或不匹配可以通过研磨或锉削来解决,以减小直径或平滑部件的边缘。(我们通过激光切割完成了所有的有机玻璃切割,而MDF被切割机切割,钻孔机钻孔)。

通过激光切割完成的部件:

1)玻璃持有人

2)装配框架的上部

切割机完成的部件:

1)装配框架的下部

2)电机安装

注:制造时,最好将螺栓组装的零部件的孔尺寸标准化(我们是用M4螺栓和螺钉做的,CAD也是附在整个装配上供参考)。

步骤7:Bechmarking&Trails

Bechmarking&Trails的图片

这是一个关键的阶段,因为在机器人上执行设计的代码需要很多时间。从两个品牌之一开始,一旦成功尝试在另一个品牌上实施。注意其他品牌的速度和旋转角度的变化,并尝试相对地改变它。

此外,如果您使用以下液体循环进行每个品牌的测试,以确保电子和物理安装的安全性,则是首选。

  • 没有液体 - 3个周期
  • 水 - 3个周期
  • 啤酒 - 2个周期

在桌上,我们可以看到不同瓶子和眼镜之间的不同情况。因为瓶子和玻璃瓶的品牌是兼容的,所以只有箱子4和5倒入啤酒很好。该表格还显示了定义箱子的重量范围。

步骤8:结果

一旦用水测试结果良好,是时候用真正的啤酒尝试。不幸的是,这些结果并不是真的很重要。对于Jupiler,由于玻璃和瓶子的位置,我们无法得到适当的泡沫。主要的问题在于瓶子与玻璃的相对位置/角度不适合于正确倒出两种啤酒,因为玻璃和瓶子具有非常不同的形状。

设置在有机玻璃框架内的相对位置,使之后无法调整。缺乏时间不允许我们通过尝试和错误的真正的啤酒来调整位置。除了这个位置的调整,机器人是完美的(啤酒识别,电机控制,...)。

一旦位置问题得到解决,您就可以坐下来,让机器人为您辛苦工作,享受比利时啤酒!

视频观看链接:http://v.youku.com/v_show/id_XMzI5MjQ0NTQ3Mg==.html

电路相关文件

电路图文件
Final+Sketch.fzz
描述:最终的Sketch文件
源代码
Beer_Robot.ino
描述:啤酒机器人Arduino代码
其他文件
drawing+pdfs.rar
描述:3D打印文件
分享到:
收藏 (2)
电子硬件助手小程序 电子硬件助手小程序

电路城电路折扣劵获取途径:

电路城7~10折折扣劵(全场通用):对本电路进行评分获取;

电路城6折折扣劵(限购≤100元电路):申请成为卖家,上传电路,审核成功后获取。

(版权归AnandJ23所有)

版权声明:电路城所有电路均源于网友上传或网上搜集,供学习和研究使用,其版权归原作者所有,对可以提供充分证据的侵权信息,本站将在确认后24小时内删除。对本电路进行投诉建议,点击投诉本电路反馈给电路城。

使用说明:直接使用附件资料或需要对资料PCB板进行打样的买家,请先核对资料的完整性,如果出现问题,电路城不承担任何经济损失!

换一批 more>>

大家都在看:

继续阅读

  • Arduino打造多功能自动漫游车

    我在这个项目中的目标是制造一个能够在你家周围进行许多活动的自动漫游车。这个想法来自于我学习火星漫游者,如好奇号以及它们如何运作。我决定制作一个自己的小流浪者会很有趣也很有帮助。我开始这个项目是为了制造一个在我不在的时候不会撞到障碍物的机器人。它始于2017年,现在我们的目标已转向制造自动漫游车。第一部分:底盘和电机自动漫游车的底盘是由Servo City的Bogie Runt Rover制造的,我按照教程将它们组合在一起。该套装配有完整的电机和底盘,但不附带电子设备。自动漫游车使用6个直流电机为车轮提供动力。所有电机都有通过机箱中的孔到达顶部的电线。然后,它们连接到L298N电机驱动器。由于这些强大的电机,概率可以达到4英里/小时的速度!第二部分: 所有六个电机均由L298N双桥电机驱动芯片供电。所有电机线都连接到芯片的右侧和左侧。为了给arduino供电,它连接到芯片上的5V和GND。然后5V变为5V,GND变为GND。要使所有电机工作,需要使用ENA,IN1,IN2,IN3,IN4和ENB将L298N电机驱动芯片连接到arduino。然后将这些导线连接到arduino上的任意六个数字引脚。项目还会有后续的更新,附件中的源码部分也会继续更新,详细的可以关注附件里的原文链接。
    来自:家用电器时间:2018-10-17 arduino 智能车 直流电机
  • 小型Arduino点唱机

    硬件组件:Arduino Nano R3× 1 DFPlayer Mini× 1 扬声器:3W,4欧姆× 1 按钮× 3 Adafruit标准LCD - 16x2白色蓝色× 1 电阻1k欧姆× 1 手动工具和制造机器:3D打印机(通用)我的地下摇滚乐队在20年后重新团聚,我决定使用Arduino Nano,DFPlayer Mini,扬声器,三个按钮和一个16x2 LCD显示器创建一个带有一些“点击”的小型自动点唱机。对于我使用Fusion 360的情况。我正在附加STL文件。最初的想法是创建一个像盒子一样的点唱机,但我没有时间。对于LCD显示器,请获取I2C接口,因此只需要2根信号电缆,5V和接地。成果图:
    来自:家用电器时间:2018-10-15 arduino mp3 播放器
  • Arduino Shield NCS314 NIXIE管时钟IN-14

    硬件组件:盾Nixie管IN-14 NCS314 Arduino用于Nixie管时钟× 1 盾Nixie管时钟IN-12 NCS312用于xUSSR数码管× 1 Arduino UNO和Genuino UNO× 1 Arduino Mega 2560和Genuino Mega 2560× 1 电源12V 1A× 1 适用于SHIELD NCS314的亚克力外壳× 1 软件应用程序和在线服务:Arduino IDE实现功能: 基于移位寄存器的静态显示。Slote Machine(Ani中毒)提供时钟,时钟,日期,时间,闹钟的标准功能。带电池CR1220的RTC(实时时钟)。(新版V1.2-2.X板使用高精度时间芯片RTC DS3231)。温度测量DS18B20 [摄氏或华氏温度]。通过IR端口TSOP4836进行控制(仅适用于Mega)。经过与遥控索尼RM-X151,但它有可能和其他远程用36kHz的频率。与外部GPS同步(仅限工作)简单的菜单。单独管理结肠(下部和上部)RGB背光颜色,输液顺畅用于闹钟的RTTTL铃声(铃声传输语言)老虎机(防止中毒指标)在自我测试。(检查每个显示器中的所有数字,从0到9,检查所有LED,串行开关颜色为蓝色,红色,绿色,声音检查(铃声播放)
    来自:家用电器时间:2018-10-12 arduino 时钟 辉光管
  • Arduino复古街机时钟

    建立一个交互式街机床头钟,配有触摸屏和动画街机数字,您可以录制您选择的声音。硬件组件:Arduino Mega 2560和Genuino Mega 2560× 1 软件应用程序和在线服务:Arduino IDE手动工具和制造机器:3D打印机(通用)构建一个交互式街机床头钟,带有触摸屏和动画街机数字,您可以录制您选择的闹钟声音。该项目包括一个3D打印的案例和四个单独的程序可供选择1.街机时钟 - DK马里奥,太空侵略者和吃豆人动画2.吃豆子时钟 - 具有时钟功能的互动动画吃豆人游戏3. DK时钟 - 具有时钟功能的交互式动画DK游戏4. Tumble Ghost - 基于Flappy Bird的动画吃豆人鬼游戏对于那些喜欢重温80年代街机游戏人物怀旧情绪的人来说,有很多乐趣,也是一个很棒的礼物。
    来自:DIY创意产品时间:2018-10-11 arduino 时钟 创意设计
  • 废物改造:EM弹球机的Arduino转换

    将旧的弹球游戏场转换为Arduino驱动的全功能弹球机。硬件组件:Arduino UNO和Genuino UNO× 1 Arduino Mega 2560和Genuino Mega 2560× 1 MAX7219 LED显示屏× 1 WS2812 LED× 1 IRL540N MOSFET× 1 这是我在旧弹球游戏场的第二个修复项目。我在第一次尝试时探索了使用Arduino控制弹球机的基础知识,但是我在第一台机器的构建过程中学到了很多东西,并想用我学到的东西来改进我的第二台机器。附件里也有附上第一个项目的链接,可以学习一些基础知识,项目的详细教程就见附件项目详情部分内容啦!
    来自:DIY创意产品时间:2018-10-10 arduino 废物改造
  • Arduino温度计,轻松准确查看温度

    使用LM35传感器测量温度,并使用7段4位数显示器进行显示。在这些炎热的日子里,温度计是一个非常有用的设备。它通常是用水银制成的,并不是很精确。这就是为什么使用Arduino,我们将能够轻松,快速,准确地查看温度。您需要的东西清单:Arduino Uno面包板线(准确地说是15)LM35温度传感器7段4位数字显示USB-B电缆(或其他东西为Arduino供电)一旦你拥有了所有这些,就像这样连接它们:*在这个方案中,7段4位显示器有16个引脚,但在项目中使用了12针显示器。如果你有一个12针脚,只需丢弃此图像上的最左边和最右边的针脚并保持连接。如果您没有相同的产品,请查看显示器的数据表,并查看每个引脚的使用情况。完成后,将Arduino连接到PC并运行代码,代码详见附件!
    来自:家用电器时间:2018-09-25 arduino 温度计 lm35传感器
  • DIY一个基于ARDUINO的停车协助系统

    硬件组件: Perfboard× 1 Arduino Nano R3× 1 红色,绿色和黄色LED× 1 220ohm× 3 超声波传感器 - HC-SR04(Generic)× 1 蜂鸣器盾× 1 220V AC至5v DC降压降压模块× 1 母针头带× 1 以太网电缆× 1 一些连接电缆× 1 用于将代码上传到Arduino的USB线× 1 和一般焊接设备× 1 软件应用程序和在线服务: Arduino IDE这次我试图通过在车库中安装防撞系统来帮助她安全地停放汽车而不会碰到车库墙,从而使我的伴侣生活变得轻松。因此,在本项目中,我将使用超声波传感器计算汽车与车库墙壁的距离,并使用绿色,黄色和红色LED显示。LED的颜色表示是继续移动,减速,停止还是返回。该项目的总成本约为20至25美元。
    来自:其他时间:2018-09-25 arduino diy 停车协助
  • 从BT到WiFi:创建WiFi控制的Arduino机器人汽车

    NodeMCU ESP8266处于接入点模式:使用蓝牙Arduino Robot Car + Android App制作Wi-Fi控制机器人车的最简单方法。硬件组件:NodeMCU ESP8266分线板× 1 Arduino UNO和Genuino UNO× 1 面包板(通用)× 2 SparkFun双H桥电机驱动器L298× 2 4WD智能机器人汽车底盘套件× 1 LED(通用)× 2 电阻221欧姆× 2 跳线(通用)× 1 电池座× 1 18650锂离子电池× 2 软件应用程序和在线服务麻省理工学院App InventorArduino IDE手动工具和制造机器:烙铁(通用)将蓝牙机器人汽车改造为Wi-Fi的基本步骤:删除蓝牙模块安装NodeMCU ESP-12E开发套件板在Arduino IDE中上传Arduino Uno板和NodeMCU板的草图将电线Tx,Rx,+ 5v和GND连接到NodeMCU安装并打开Android App将智能手机连接到WiFi机器人网络(无密码),享受驾驶机器人车的乐趣!
    来自:智能车时间:2018-09-12 arduino 智能车 wifi控制
  • 使用Arduino的磁铁悬浮玩具。便宜又容易制作

    硬件组件:Arduino Nano R3(您可以使用任何arduino,但屏蔽是为Nano制作的。)× 1 电磁铁12v直径25mm。× 1 线性霍尔效应传感器49E(不要使用霍尔效应开关。)× 1 达林顿大功率晶体管× 1 电阻1k欧姆× 1 1N4007 - 高电压,高电流额定二极管× 1 电源12V 1A× 1 面包板(通用)× 1 按钮开关12mm (SparkFun按钮开关12mm)× 2 跳线(通用)× 1 软件应用程序和在线服务:Arduino IDE实物图:Arduino有2个固件版本:1 - Easy Levitation。Levitator.ino - 固定值(只需用开关更改值)。2 - 很难做到...... Levitator_PID.ino - PID功能(您需要为玩具找到正确的PID值,但您可以使用开关调整种子)。无PID版本(固定值),它是如何工作的:当永磁体下降然后在永磁体上升太多(仅十分之一毫米)之前关闭电子磁体时,电子设备才会打开电磁铁。由于电磁铁每秒开启和关闭一百次,因此永久磁铁保持在原位。线性霍尔效应传感器49E极其精确和灵敏,对于那些看起来像是永磁体的人来说。
    来自:DIY创意产品时间:2018-09-12 arduino 玩具 磁铁悬浮
  • 易于制作的Arduino PC示波器

    这是一种可视化模拟信号的数字设备。一个非常基本且易于制作的Arduino PC示波器。硬件组件:Arduino UNO和Genuino UNO× 1 电阻10k欧姆× 1 软件应用程序和在线服务Arduino IDE加工基础处理特征:50K样本/秒(实际上它可以达到110K,但信号会变得嘈杂)自动触发频率计数器合理准确的电压读数(取决于用于分压器的电阻的精度)可选:可选电压范围:5V,6.6V,10V,20V
销量
22
查看
1303
参数名 参数值
发布于 2018 年 01 月 05日
Moore8直播课堂