我使用 Arduino MKR1000 作为微控制器来创建我的笔更换系统。我使用了 MKR1000,因为它支持 wifi,并且有一个很好的资源可以通过连接互联网的 Arduino 连接到 Amazon DRS。在添加 AmazonDRS、AmazonJSON 和 Wifi101 资源之前,请确保 Arduino 软件已完全更新。当我使用旧版本的 Arduino 软件运行它时,我遇到了一堆错误,导致我无法编译代码。
网站上的教程:https ://github.com/andium/AmazonDRS非常有帮助,但是有一些没有提到的注释让我有些沮丧。在 Security Profile>Web Settings 中,确保将添加到Allowed Return URLs 。当涉及到 AmazonTokens.h 的部分时,您需要记住在运行authCodeGrant代码以获取refresh_token之前清除refresh_token 、authorization_grant_code和access_token. 除此之外,github 资源编写得非常好且简洁,几乎涵盖了在 MKR1000 上设置 Amazon DRS 所需的所有内容。
在为我的项目设置限位开关之前,我使用示例建议的方法对其进行了测试,该示例建议是引脚 12 上的单个按钮。这可以在amazonDashButton示例下的示例中找到。
出于几个原因,我想使用限位开关而不是光敏电阻或质量传感器 - 光敏电阻需要模拟输入,所以如果我想缩放设备以检测 24 支笔而不是 5 支,那么我需要更多的模拟输入。光敏电阻还需要我根据外部光线自动调整系统。如果系统在抽屉里或某个非常黑暗的地方,光敏电阻就不能很好地完成它的工作。我没有使用质量传感器,因为如果用户在笔上堆放一堆东西(比如在办公环境中),那么就没有迹象表明它是随机的东西还是特定的东西。
我在网上买了一些限位开关,需要5VDC,接地并输出常闭信号。常闭信号在未按下限位开关时给出 5VDC 信号,在按下开关时给出 0VDC 信号。开关上有一个 LED,用于指示何时按下开关。
我使用了五个限位开关并将它们排成一排,这样每个开关都与一支笔对齐。我用快干粘土制作了一个形状,使笔与限位开关对齐。限位开关比我最初希望的要大,因此,我决定这个项目更像是一个概念证明,而不是一个完全成熟的项目想法。
请参阅我编写的修改后的代码和代码中的注释,了解我的逻辑是如何工作的。下面是运行代码的结果图像。
当系统要求更换时,它会要求亚马逊向用户发送一封电子邮件,通知他们正在订购补货并且正在运送中。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !