资料介绍
描述
概述
监测家中的温度和湿度是有帮助的,它使居民能够调节供暖,以创造一个完美的加热气氛。很高兴看到一个屏幕通知您当前的温度和湿度,但是如果您可以在 Google 电子表格上实时可视化它会怎样,这样您就可以通过在任何设备上单击一两次来随时检查您家的状态。
该项目旨在让任何人和每个人都可以轻松访问所有这些内容。利用 Temboo 的 Google 表格编排,您可以轻松地对您的 Arduino Yun 进行编程,以将包含您家的温度和湿度的值附加到 Google 表格中。
功能性
TemperatureVisualiser 将从 DHT11 温度和湿度传感器读取读数并将数据发送到 Temboo。然后 Temboo 会将数据重定向到 Google API,然后是 Google Sheets,在电子表格上显示信息。这是说明该过程的图像。
这是项目代码概述的图解图像。
- 读取温度和湿度将从传感器读取温度和湿度,然后存储数据。
- 过程数据将处理温度和湿度值,并将它们与发送所需的子格式一起输入缓冲区。
- Parse Data to Temboo 会将缓冲区作为 choreo 发送到 Temboo。
- 微控制器将在重复操作之前等待一段时间
Temboo 和 Google 要求以 json 格式与值一起发送数组数组。格式化的缓冲区将如下所示。
[ [ temp, hum, ] ]
Temp 是从 DHT11 传感器接收到的温度读数。Hum 是从 DHT11 传感器接收到的湿度读数。
好处
运营该项目的用户将受益于:
- 随时随地轻松访问数据
- 易于使用 - 只为 Arduino Yun 供电
- 使用 Google 表格轻松实现可视化
建设项目
第 1 步:所需设备
该项目包含的硬件很少,因此很容易构建。对于这个项目,您将需要:
- 跳线
- 1阿杜诺云
第 2 步:连接电路
只有 3 个组件 = 易于组装。以下是该项目的示意图:我要用 5v 为我的 DHT11 传感器供电,因此请确保您的传感器支持 5v,如果不支持,请使用 3.3v。
第 3 步:确认代码
代码分为三个部分:
- 读取传感器
- 创建缓冲区
- 解析缓冲区
这些项目由两个草图组成,主代码和一个包含所有用户在 Google 和 Temboo 上的帐户数据的头文件。这里仔细看一下代码的各个部分,头文件将在下面的“设置变量”中设置。
- 读取传感器值
overview = DHT.read11(11); // Read the sensor output
temp = DHT.temperature,1; // store temperature
hum = DHT.humidity,1; // store humidity
这部分代码使用库从 DHT11 传感器读取数据。当读取结果时,它们存储在温度和湿度的单独变量中(temp
和hum
)。
- 追加到缓冲区
sprintf(values,"[[%02d,%02d,]]",temp,hum); // insert temp and hum in the json packet required
这是将传感器值附加到缓冲区的代码行,sprintf 会将字符添加到缓冲区。[[%02d,%02d,]]
是 Google 要求能够读取值的布局。
- 将缓冲区解析为 Temboo
TembooChoreo AppendValuesChoreo; // initialise which choreo to begin
AppendValuesChoreo.begin(); // begin the choreo
// Set Temboo account credentials - Set in Acounts.h
AppendValuesChoreo.setAccountName(TEMBOO_ACCOUNT);
AppendValuesChoreo.setAppKeyName(TEMBOO_APP_KEY_NAME);
AppendValuesChoreo.setAppKey(TEMBOO_APP_KEY);
// Set Choreo inputs - Set in Accounts.h
AppendValuesChoreo.addInput("RefreshToken", GOOGLE_CLIENT_REFRESH_TOKEN);
AppendValuesChoreo.addInput("ClientSecret", GOOGLE_CLIENT_SECRET);
AppendValuesChoreo.addInput("Values", values);
AppendValuesChoreo.addInput("ClientID", GOOGLE_CLIENT_ID);
AppendValuesChoreo.addInput("SpreadsheetID", GOOGLE_SPREADSHEET_ID);
AppendValuesChoreo.setChoreo("/Library/Google/Sheets/AppendValues");
// identify choreo to run
AppendValuesChoreo.run(); // run the choreo
这部分代码初始化 Temboo,开始编排,设置 Temboo 帐户凭据和 Google 帐户凭据并运行编排。所有帐户的凭据都可以在 Accounts.h 文件中设置。
设置变量
所有变量都在项目主草图附带的 Accounts.h 头文件中设置,您所要做的就是在头文件中定义变量以使 choreo 运行。输入将在下面的“后端程序”中解释,我们将为项目设置 Temboo 和 Google API。
图书馆
Temboo - 版权所有 (c) 2017 Temboo Inc. 在 Apache 2.0 许可证下。查看此许可证
DHT - 作者 Rob Tillaart 这个库在公共领域
Bridge - Arduino LLC 这个库在公共领域
设置
对于这个项目,您需要一个已经设置和初始化的 Arduino Yun。查看有关开始使用 Yun 的指南。这是一个链接,其中包含有关您的 Arduino Yun 上的Temboo和Running Choreos 的信息。准备好后,将您的 Yun 连接到 PC/Mac 并运行下面的草图。
后端程序
要运行这个项目,我们需要配置两个平台:Temboo 和 Google API。我们将一步一步地做到这一点。如果设置不适合您,请再试一次(我花了一段时间才成功)。
- 第 1 步:创建您的 Temboo 帐户
第一步是创建一个 Temboo 帐户,为此请访问此页面。在页面中间的框中,写下用户名。单击“试用”并按照休闲页面上的说明设置您的帐户。Temboo 在基本计划中可免费使用,每月可为您提供 250 次舞蹈。
- 第 2 步:创建和设置您的 Google 帐户
要创建 Google 帐户,请访问此页面。设置帐户后。转到Google 帐户。如果需要,请登录,现在您的窗口应如下所示。
现在,导航到登录和安全标题并选择登录您的 Google 帐户。现在确保在您的帐户中启用“两步验证”。完成后,您的页面应如下所示。
- 第 3 步:设置 Google API
这是最重要和最令人困惑的一步,慢慢来!访问谷歌控制台。该页面可能会要求您登录,请这样做。您将看到一个空白页面,如果您没有创建项目,请单击“创建项目”按钮。现在放松为创建项目而实施的步骤。等待项目加载后,您应该会看到这样的窗口。
现在我们要做的第一件事是单击左侧滑动条上的“凭据”。这应该将您带到这样的窗口。
现在单击“创建凭据”并从下拉菜单中选择 OAuth 客户端 ID。现在将询问您要创建哪种类型的应用程序。选择“网络应用程序”。现在给你的应用起个名字,我叫它 Temboo。在下面,您应该会看到一个标语“授权重定向 URI”,其中写道:
https://ACCOUNT_NAME.temboolive.com/callback/google
输入您的 Temboo 帐户名称而不是 ACCOUNT_NAME,完成后,您的 URL 应包含您的用户名,例如https://myaccount.temboolive.com/callback/google
现在你的窗口应该是这样的,不要填写“Authorized JavaScript origins”。
现在单击“创建”。当您这样做时,您将被重定向到您的仪表板,并会出现一个窗口,为您提供您的客户端 ID 和客户端密码。确保保留这些代码,因为它们在接下来的步骤中是必要的。现在再次单击“仪表板”,然后单击页面顶部的启用 API。现在你的窗口应该是这样的。
在搜索字段中搜索“Google 表格”。现在点击 Google Sheets API。单击它后,您的窗口应如下所示。
单击“启用”按钮。现在您将被重定向到您的仪表板。
- 第 4 步:初始化 OAuth
现在转到 Temboo 并登录,您的页面应如下所示。
现在在左侧的菜单上,向下滚动直到看到“Google”,然后单击它旁边的箭头。完成后,您将打开一个下拉菜单,打开 OAuth,然后单击 InitialiseAuth。你的窗口应该是这样的。
现在将您的 Google ClientID 放在“ClientID”字段中,然后向下滚动,直到看到标有“notes”的部分,您可以在那里找到项目所需的范围。我们将使用谷歌电子表格,所以复制盒子的所有内容,应该是:
https://spreadsheets.google.com/feeds/
https://docs.google.com/feeds/
https://docs.googleusercontent.com/
现在将它们粘贴到顶部的范围框中。你的窗口应该是这样的。
现在单击“立即运行”以运行您的代码。代码运行完毕后,您将收到两个字段,一个 URL 和一个 callbackID,请确保您还保存了您的 callbackID 以供进一步使用。现在访问上面框中显示的 URL。您应该收到来自 Google 的请求,要求您登录,这样做。现在谷歌可能会通知您该网站不安全,如果是,请点击页面底部的“高级”,然后点击下方的“打开 temboolive.com”。现在您将收到另一个通知,告诉您该应用程序想要访问文档和文件,单击“允许”。现在您应该会看到一个空白页,如果看到,请继续进行下一部分设置,如果您没有看到空白页,请从头开始此步骤。
- 第 5 步:完成 OAuth
要完成您的 OAuth,请访问 Temboo。在左侧菜单中选择 Google - OAuth - Finalize OAuth。你的窗口应该是这样的。
使用之前收集的数据填写字段,然后单击“立即运行”,如果代码有效,您应该会收到一个访问令牌和一个 RefreshToken,确保将它们都保存起来,因为下一步将需要它们。干得好,困难的部分结束了。如果成功,您可以继续下一步,如果不成功,请从头再试此步骤,确保 Google 上“授权重定向 URL”字段中的 URL 输入正确,并且您的 clientID 和客户端秘密是正确的。
- 第 6 步:运行探针
为了检查您的配置是否正确,我们将尝试测试草图。访问 Temboo 并转到 Google - Sheets - AppendValues,您的页面应该如下所示。
现在填写之前设置中收到的 ClientID、Client Secret 和 Refresh Token。接下来,转到Google 文档。创建一个新文档,在你这样做之后,给它一个名字。电子表格 ID 位于电子表格的 URL 中。例如。如果电子表格的 URL 是
https://docs.google.com/spreadsheets/d/1wn9R5vPJLIulgxKjDflqnN6X84Xe7zu6925mRQO-tVo/edit#gid=0
然后 ID 是 1wn9R5vPJLIulgxKjDflqnN6X84Xe7zu6925mRQO-tVo,现在复制您的电子表格 ID 并将其粘贴到 Temboo 的电子表格 ID 框中。最后,复制此数组并将其放在“值”字段中。
[ [ "100", "200", "300" ] ]
有关如何格式化值的更多数据,请向下滚动到页面上的注释。你的窗口应该是这样的。
现在向下滚动,直到您看到一个标有“代码”的框,复制该框的所有内容并将其粘贴到 Arduino IDE 中。在该框下方是另一个标有“头文件”的框,复制该框的内容,然后在 Arduino IDE 中,创建一个新选项卡并将其命名为“TembooAccount.h”并将内容粘贴到新选项卡中,编译代码。
通过 USB 类型 A 到 C 电缆将您的 Arduino Yun 连接到您的 PC/Mac,并等待您的 Yun 连接到 wifi,这由标有 WLAN 的蓝色 LED 快速闪烁指示。当您的 Yun 连接到 wifi 时,上传代码并打开串行监视器。如果该项目成功,您应该在 Temboo 的监视器中得到响应。现在返回 Google 文档,然后单击您之前创建的电子表格。 您应该在单独的单元格中看到打印的三个值。100 200 300
如果这行得通,那么您离成功仅一步之遥。
- 第 7 步:最后一步
现在打开下面的代码,确保根据您的喜好编辑 Header 文件,包括之前收到的值。编排运行之间的默认延迟是一分钟,您可以根据需要更改它。我建议在第一次尝试时打开 proDebug(将其设置为 1)并打开串行监视器以接收进度数据和调试信息。在不连接计算机的情况下使用此项目需要将 proDebug 设置为 0(其初始值)。就是这样,只需将草图上传到 Yun 就可以了。任何地方的温度和湿度。
最后
由于该项目几乎没有硬件,我决定不建造一个外壳,但如果你愿意,可以随意制作一个。这是成品。
背景
我创建了这个项目作为一个教程,以使 IOT 更容易理解,就个人而言,我花了一些时间来解决它,所以我想为你节省一些时间。我认为在电子表格上检查温度和湿度非常好,也很容易,所有数据都在一起并且易于访问。
- Pimoroni Enviro pHAT到Google表格记录器
- 将传感器数据从Helium设备路由到Google表格
- 使用Google Assistant监控室温
- 使用Google Assistant的灯光监控系统
- 直接在Google表格中的血压监测仪
- 电源测试温度记录表下载 10次下载
- 使用DS18B20温度传感器设计的实时温度监控系统软件免费下载 17次下载
- 如何设计研究无线温度传感器的网络监控系统 19次下载
- python教程之如何使用XlsxWriter模块创建aexcel表格 10次下载
- 基于usb的温度监控的测试 6次下载
- 温度监控系统的设计资料 10次下载
- LabVIEW中表格控件使用 0次下载
- 基于ARM的大棚温度监控系统设计 466次下载
- 温度湿度监控系统的设计
- 分布式电缆温度监控系统 74次下载
- 如何在鸿蒙系统上安装Google Play 1.2w次阅读
- 如何在word表格前添加空行 1480次阅读
- 驱动电机温度传感器的原理与检测 5602次阅读
- 如何提取Word文档表格保存到Excel 2477次阅读
- Python的PDF表格提取器-Camelot 1961次阅读
- 如何利用温度传感器实现植物监控系统的设计 1663次阅读
- 图像传感器为视频监控带来了新趋势 8.3w次阅读
- 温度传感器TMP275的原理、工作方式及在环境监控中的应用分析 6077次阅读
- 经常使用的中小功率三极管的参数详细表格说明 5282次阅读
- TableBank:高质量的标注表格数据集 5560次阅读
- 基于表格的自然语言理解与生成方向的一系列工作 3143次阅读
- google glass为何停产_google眼镜为什么失败 2.2w次阅读
- 基于TMP275的电机温度监控系统研究 1627次阅读
- 变压器温度智能监控仪电路模块设计 5325次阅读
- ADuC7061和外部RTD构建的基于USB的温度监控器 2922次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多