我想试试SAMI,所以这是一个交通跟踪门铃!
目前,当您按下 Raspberry Pi 2 上的按钮时,它会点亮 LED 并发送“哟!” SAMI,三星的物联网数据管理器。它会生成随时间变化的活动图表——可能是您的流量、传感器数据或任何其他内容。
从 Raspberry Pi 网站下载最新的 NOOBS 包
将它插入你的 Pi 并启动它。我坚持使用基本安装:点击向右箭头几次,然后单击“完成”。
使用默认管理员凭据 (pi / raspberry) 登录并键入startx以启动 GUI。
现在,您需要更新和安装一些东西:
sudo apt-get update
sudo apt-get upgrade
apt-get install scrot python-pip
如果您在最后一个上遇到授权或访问错误,请发送sudo !!
以以根用户身份重新运行该命令。
scrot是一个屏幕截图实用程序,我发现它很有用。您可以随时使用scrot -cd 5
(截屏,延迟 5 秒,带倒计时)截屏。
python-pip是 Python 的包管理器。如果您要安装任何额外的模块,这将很有用。
它们都不是绝对必要的,但它们很好。
使用数字引脚 14 上的 LED(及其限流电阻)和引脚 15 与地之间的按钮设置您的硬件。
[油炸]
而已!
这涉及 3 个步骤:在 SAMI 中设置您的设备;通过 Temboo 生成与 SAMI 对话的代码;并编写其余代码。
但我们将从一个简单的草图开始,当您按下按钮时它会触发一个动作。
这是我们的开始按钮/LED 代码。(我从本教程改编而来。)
将它保存在你的 Pi 上的某个位置,最好是在一个名为“doorbell”之类的文件夹中。
现在,在您的 Unix 终端中打开该目录并运行脚本:
cd doorbell
sudo python gpio-button.py
该脚本将数字引脚 15 设置为带有上拉电阻的按钮。它会为您提供 2 秒的 LED 闪光,让您知道它已启动。然后,当您按下按钮时,d15 连接到 GND,将其拉低。Pi 看到这个并打开 LED 灯一秒钟以确认它,然后等着看你是否会再做一次。
它需要 sudo(root)权限才能工作,因为 Pi 需要它才能与 GPIO 引脚通信。
您可以将数据从任何设备推送到 SAMI。您需要做的就是...
然后,它会自动为您绘制数据图表!如果您很好奇,请立即运行HelloWorld教程 - 您只需要一台计算机,您就会对这些功能有一个很好的了解。
添加清单
登录开发人员门户并单击“新设备类型”按钮。
输入设备的显示名称、格式如“io.hackster.device”的唯一名称(如果您编写过移动应用程序,这看起来会很熟悉)和描述。
完成后,您将返回到概览页面。
单击您的新设备类型,然后从左侧边栏中选择“Manifest”。您会在右上角看到一个“新版本”按钮;对于这个项目,我们只是添加一个简单的清单。在字段名称中输入“文本”,它会自动完成——填写数据类型(字符串)。
由于我们只是读取传感器数据,因此不需要将操作发送回设备。单击“下一步”访问该页面,然后单击底部的“保存新清单”。
创建新设备
SAMI 中有两个门户,下一步将带我们到另一个:用户门户。登录,单击“连接另一台设备...”,然后输入新设备类型的名称。命名并保存设备,您就可以开始了!
单击您的设备名称,您将看到一个仪表板,其中显示了所有设备的数据。您可以从已连接的所有设备中选择要显示的设备。随心所欲地设置它。
使用 API
单击导航栏中的“设备”,然后单击“设置”齿轮图标。为了使用此设备进行通信,您需要为其生成设备令牌。这是您发送的每条数据附加的唯一代码;它告诉 SAMI 您有权这样做,就像密码一样。就像密码一样,您可以撤销设备令牌并生成一个新的设备令牌,以防它被泄露……例如,如果您在在线教程中发布屏幕截图;)
设备 ID就像用户名:设备的唯一标识符。
就是这样——我们准备好继续前进了!
在您的 Raspberry Pi 上登录 Temboo 时,您可能想要执行下一部分。打开浏览器,前往Temboo并为自己创建一个帐户,或登录。
您将被重定向到图书馆页面;向下滚动并单击列表底部的Utilities ,然后导航到HTTP > Post。(直接链接- 仅在登录时有效)
输入信息:
{ :, :, :{ : } }
{ : , : }
…… 大功告成!现在,向下滚动并单击粉红色的运行 按钮:
这是神奇的时刻——你的“哟!” 应该住在SAMI!
返回 SAMI 用户门户,然后单击您的设备名称。使用蓝色的+/- CHARTS按钮,确保您的文本字段正在显示,然后单击右上角的三角形“播放”按钮。最后,您可能需要调整顶部的时间设置。
你的哟来了!
如您所见,我一直在尝试不同的文本变体,并且 SAMI 对它们进行了颜色编码。太棒了!这意味着您可以使用 RFID 传感器而不是按钮,并将姓名发送到 SAMI 以绘制单个客人的图表。我可以将其视为很酷的办公室或创客空间黑客。
调试信息
由于您已将Debug 设置为“true”,您可以看到 SAMI 对 Temboo 的反馈。返回库页面并查看详细信息,其中带有有用的复制 按钮,因此您可以跟踪您的实验。
特别有趣的是Response 字段,它显示了您刚才发送给 SAMI 的特定信息包的个人 ID(“mid” = “message id”),以及ResponseStatusCode – 应该是 200,HTTP 状态代码“好的!” 如果您还有其他事情,请在此处查找线索。
差不多完成了——再向下滚动一点,您会找到代码 框。大奖!
由于我们使用的是 Python,因此请从语言下拉列表中选择它,并将代码复制到方便的位置。
最后,点击右边的“Get the Python SDK”。
前往Temboo/Python 入门指南并按照步骤设置 SDK。
重要提示:将它移到您的门铃 目录中,以便您的脚本可以访问它。
(Temboo 设置部分改编自这个很棒的教程!)
在尝试使用不同的 Python 库来发出 HTTP 请求之后,使用 Temboo 变得异常简单。希望您很快就会明白这一点。
编写代码:
现在,我们将采用该示例代码并将其与一些让灯亮起来的东西混合在一起!
您可以运行sudo idle3 &
以启动 Python 3 的空闲编辑器,或者运行nano sami-gpio.py
以创建一个新的 Python 文件并在终端中对其进行编辑。如果你使用 Idle,你可以通过按 F5 来运行脚本——但同样,它必须有 sudo 权限才能工作。
无论哪种方式,您应该仍在门铃 目录中。
现在,在一个新的文本文件中,您要粘贴来自 Temboo 的代码。现在尝试运行它!代码应如下所示。
sudo python sami-temboo-test.py
哦,看!一个漂亮的 200 响应!至少,这应该是你所拥有的……因为你正在运行与以前相同的命令,只是从你的终端而不是浏览器。通过打开 SAMI 中的时间表进行检查。(注意:它可能不会加载到 Pi 上,但你的计算机会知道。)
最后,让我们把所有东西混合在一起!您完成的代码看起来像这样。
我已经包括了原始的 Temboo 评论,加上我自己的一些评论,以帮助您。
现在,运行它:(sudo python sami-gpio.py
或者随便你怎么称呼它)
按下按钮,关注 SAMI 图表!极好!
我希望这可以帮助您设置几个很棒的工具。如果您有任何疑问,请在评论中打我!
好吧,如果没有扬声器,下一个门铃就什么都不是。
然后,我显然必须 3D 打印一个很棒的外壳。
在编码方面,添加一行向IFTTT 的 Maker 频道和/或Twilio发送消息,触发电子邮件和文本警报是微不足道的。(事实上 ,在所有这些 SAMI 集成之前我已经开始工作了!但那是另一天......)
敬请关注 :)
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !