查看: 2157|回复: 16

用OBLOQ - IoT物联网模块制作一台远程调酒机(学科标签)

[复制链接]
本帖最后由 hnyzcj 于 2018-9-1 04:49 编辑


【视频展示】:
TOP 拷贝.jpg
DFROBOT的microbit + OBLOQ的挑战赛,现在已经进入第三轮:非凡之旅。比赛的主题为:不限主题,放飞自我,利用micro:bit与OBLOQ物联网技术实现你的一个想法。

本轮规则:
       1.不限物联网平台,意味着你可以使用EasyIoT或者第三方平台例如IFTTT等,甚至自建服务器;
       2.不限硬件,不限厂商。
       3.不限编程平台。爱写代码写代码,爱图形化编程就图形化,随便你。

【项目简介】
       对于这种“三无”比赛规则,我们可以把他理解为“胡来”……
       开Party自然离不开酒来助兴,为了能够开派对时不必再雇佣调酒师,或是每天都能轻松地品尝到美味的鸡尾酒,于是制作一台远程调酒机的想法诞生了。
      具体功能如下:
       1.提供三种口味酒水混合。
       2.通过手机端或网页端设定相应剂量,从而可以产生需要的酒水。
       3.记录三种酒水的用量,上传到服务器端。为后续数据分析提供基础数据信息。
图1.jpg
【硬件材料】
         micro:bit 编程入门开发板
         Micro:Mate—最小的micro:bit多功能I/O扩展板
         Gravity: UART OBLOQ - IoT物联网模块
         数字蠕动泵
         M3*20扁头内六角螺丝 10套
         M3*25扁头内六角螺丝 10套
         M3*30扁头内六角螺丝 10套
        3D打印结构件

【制作过程】
        一、为什么选择蠕动泵:
图2.jpg
图2
       蠕动泵通过对弹性泵管交替挤压和释放来输送流体,除泵管以外,流体不与泵的任何部件接触,不会污染输送的液体,因此可用来输送各种液体,甚至输送一些带颗粒物的液体。因此它可以在食品、医疗等行业中也有着广泛的应用。
       另外蠕动泵套件,提供简单易用的Gravity接口、舵机PPM信号的驱动方式,大大简化了使用难度,因此可以方便的使用Arduino、树莓派、micro:bit等控制器进行控制。

        二、水泵校准
        水泵的校准是在Arduino下进行的,该代码有两个模式,调试模式和正常模式。在正常使用模式下,将debug赋值为0。写入代码后,水泵会运行,按下按钮后,水泵会停止,再次按下后会继续运行。长按按钮,则水泵持续运行。在正常模式下让蠕动泵工作一段时间后按下按钮停止。让进出水管中充满液体,从而经可能的减少导流管内液体对校准产生的误差。
图3.jpg 图4.jpg
图3                                图4
       将debug赋值为1进入调试模式。先用量杯准备好10ML的液体,将进水口放入其中。
       在调试模式下,进入流量校准模式。在串口调试串口,输入STARTCAL回车后进入校准模式。
图片5.png
图5
        蠕动泵将运行一段时间,读取量筒剩余溶液度数后,用10ML-剩余容量=泵取溶液容量。将数据用“SETCAL:XX”(XX表示读取数据、英文标点)输入后回车。我这里测得数据为8.2,因此串口输入:SETCAL:8.2。
图6.jpg 图7.jpg
图6                   图7
校准结束。
图8.png
图8
学科标签:量筒的规格及使用方法
       量筒是化学实验中常用的一种仪器,学生们应该要掌握量筒的度数的基本操作。化学实验操作中,正确的量筒读数方法是:量筒水平放置,视线与量筒内液体最低凹液面处保持水平,再读出所取液体的体积。即:眼睛、刻度线、凹液面的最低处,三点保持在同一水平线上。
       量筒读数的正确流程是
       ①读数前,当往量筒中注入液体后,一般不要马上读数,要让附着在量筒内壁上的液体流下来再读数,否则读出值会有偏小。
       ②读数时,平视是正确的读数方法。仰视和俯视是两种错误读数法,如果仰视(从下往上看)读出值会小于实际值,俯视(从上往下看),读出值会大于实际值。
       如图:量筒内液体实际体积为44ml,仰视时会误认为液体体积为43ml,即读出值偏低,俯视时,会误认为液体体积为45ml,即读出值偏高。

        此外,我们尤其要注意一点,仰视和俯视确实会导致误差,但是读数和实际数值相比,究竟是大还是小,还和刻度线的朝向有关系。这一点同学们尤其要注意。
22222222222222222.png

三、电路连接
         分别对三个数字蠕动泵进行校准操作后,即可使用。本项目电路连接如图所示。
图9.jpg
图9
olbog模块(Green——A1,Blue——A2)
Pump1模块——P8
Pump2模块——P12
Pump3模块——P16

四、结构设计
       主控部分
       为了主控的美观和防止水溅到主控上而影响设备使用,我们这里为主控加了一个外壳
图10.jpg
水泵部分:
图11.png
图11
由官方给出的水泵结构尺寸图。我们对水泵固定件进行结构设计如下图所示
图12水泵固定片.png
图12水泵固定件设计图
图13.jpg
图13水泵固定件打印图
图14.jpg

图15.jpg



图15水泵固定件安装图
图16水泵固定片连接件.png
图16水泵固定件连接件设计图
图17.jpg
图17水泵固定件连接件打印图
图18.jpg 图19.jpg 图20.jpg 图21.jpg


图22.png
图22支撑架设计图               
图23.png
  图23底部固定
图24.jpg
图25.jpg
图26.jpg
图26整体安装效果图
完成安装后按电路连接的顺序连接相关电路设备
四、注册账号设备添加:
        登陆http://iot.dfrobot.com.cn/index.html完成用户注册及设备添加。drink控制水泵三个水泵运转时间,也就是控制不同酒水的量,drink num 分别记录三种酒水消耗的量。
图27.png
图27
五、代码编写
       添加OBLOG软件包
       进入https://makecode.microbit.org/---下载程序,解压,导入makecode---高级---添加软件包或者输入网址https://github.com/DFRobot/pxt-Obloq---添加OBLOQ软件包。
图28.png
图28
程序初始化如图所示
       本项目涉及两个topic,一个topic对应设备H1eCzeVIm既控制三个水泵运行时间的,另外一个topic对应设备By17kfBDX既上传各种酒水用量的。
图29.png
控制部分程序如图所示
图30.png
图30
用于从字符串中提取对应地址的字符。注意地址是从0开始,例如我们输入“789”字符串,当at后参数为0时,获得的字符串为7,at后参数为1时,获得字符为8。
图31.png
图31用于将字符串转换为整型数字。
图32.png
图32以此实现对泵运行时间上的控制。

【运行测试】
         进入工作间,对“drink”发送数据“888”,“666”,“555”如下图所示
图33.png
图33
进入工作间,打开“drinknum”查看数据如下图所示。记录了三种饮料的使用量。
图34.png
图34
图35.png

图35
后记:
       虽然远程调酒机的基本功能已经实现了,但是依然存在很多问题,例如当没有网络信号时如何进行调酒(与硬件有一定关系);如何检测某种酒水瓶中的酒已经用完,并给出相应的提示信息;如何在制酒操作上给用户一些相应的提示……这些方面将是后续改进的方向。



图24.jpg

校准程序.zip

1.01 KB, 下载次数: 1, 下载积分: 创造力 -1

售价: 4 创造力  [记录]

model.zip

73.5 KB, 下载次数: 1, 下载积分: 创造力 -1

售价: 4 创造力  [记录]

sunkf  初级技师

发表于 2018-8-31 17:36:25

陈老师 懂喝酒的创客
回复 支持 反对

使用道具 举报

hnyzcj  超级版主
 楼主|

发表于 2018-8-31 20:44:35

sunkf 发表于 2018-8-31 17:36
陈老师 懂喝酒的创客

一个酒量很一般的创客
回复 支持 反对

使用道具 举报

微笑的rockets  NPC

发表于 2018-8-31 22:09:16

这个,我觉得我们可以玩各游戏,就是把远程开关释放出来,我们点多少,然后你喝掉,哈哈哈哈。
回复 支持 反对

使用道具 举报

hnyzcj  超级版主
 楼主|

发表于 2018-8-31 22:22:48

微笑的rockets 发表于 2018-8-31 22:09
这个,我觉得我们可以玩各游戏,就是把远程开关释放出来,我们点多少,然后你喝掉,哈哈哈哈。 ...

rockets上酒
回复 支持 反对

使用道具 举报

digi_cow  初级技匠

发表于 2018-9-1 07:50:38

一直想买个蠕动泵,商城里搜了下好像没有啊!版主特供?
回复 支持 反对

使用道具 举报

hnyzcj  超级版主
 楼主|

发表于 2018-9-1 11:19:49

digi_cow 发表于 2018-9-1 07:50
一直想买个蠕动泵,商城里搜了下好像没有啊!版主特供?

英文商城
回复 支持 反对

使用道具 举报

hnyzcj  超级版主
 楼主|

发表于 2018-9-1 11:20:02

digi_cow 发表于 2018-9-1 07:50
一直想买个蠕动泵,商城里搜了下好像没有啊!版主特供?

www.dfrobot.com
回复 支持 反对

使用道具 举报

hnyzcj  超级版主
 楼主|

发表于 2018-9-1 11:20:13

digi_cow 发表于 2018-9-1 07:50
一直想买个蠕动泵,商城里搜了下好像没有啊!版主特供?

pump
回复 支持 反对

使用道具 举报

digi_cow  初级技匠

发表于 2018-9-1 15:28:29


这还美金结算?你是英文商城下单买的?
回复 支持 反对

使用道具 举报

hnyzcj  超级版主
 楼主|

发表于 2018-9-1 15:56:01

你要买吗,找我好了
回复 支持 反对

使用道具 举报

digi_cow  初级技匠

发表于 2018-9-1 16:05:10

hnyzcj 发表于 2018-9-1 15:56
你要买吗,找我好了

我加到采购清单里
回复 支持 反对

使用道具 举报

gada888  版主

发表于 2018-9-1 16:17:00

lz好用心。
回复 支持 反对

使用道具 举报

gray6666  高级技匠

发表于 2018-9-13 09:31:33

好东西,搞一个上班偷着喝
回复 支持 反对

使用道具 举报

gray6666  高级技匠

发表于 2018-9-13 09:44:40

打印组件填充度是多少?
回复 支持 反对

使用道具 举报

hnyzcj  超级版主
 楼主|

发表于 2018-9-13 10:46:16

gray6666 发表于 2018-9-13 09:44
打印组件填充度是多少?

40%
回复 支持 反对

使用道具 举报

gray6666  高级技匠

发表于 2018-9-14 08:43:04

回复 支持 反对

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies |上传

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
wifi气象站

硬件清单

btnicon
我也要做!
点击进入购买页面
exit; ?>
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2016 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail