本教学项目由两部分组成。最初的目的是创建一个简单的原型设计项目,学生可以在带有模拟输入(电位器)和数字输出(LED)的面包板上进行设计。项目的第二部分添加了使其成为“物联网”项目所需的额外代码。第二部分将电位器 (pot) 的模拟输入值作为 WiFi 数据输出发送到ThingSpeak.com网站上的图表。
对于项目的第一部分,我们将电位器连接到代码中指定的引脚上的英特尔爱迪生板。我们需要将电位器的“雨刷”线(通常是中间电位器引脚)连接到模拟输入。如果我们反转连接到电位器的 5V 电压和接地线并不重要,因为电位器不是有争议的,唯一的结果将是反转电位器旋转值的反转。
在 Edison 上,我们提供了 6 条专用模拟线路,在板上列为 A0-A5。一旦连接了电位器并读取该值,该值就会在代码中标准化。由于该值在 Arduino 上进行了标准化,默认为 0-1023,我们可以根据我们选择的各种输入值设置阈值。我根据 1023/5 的标准化值选择了五个输出。
但是,您可以根据自己喜欢的任意数量的阈值来分解此值。从代码中您可以看到,这些“阈值范围”被指定给五个不同的引脚,这些引脚根据旋钮旋转的位置为 LED 供电。应指定每个引脚并将其连接到 Edison 板上的输出引脚。我使用了一个“下拉”电阻来保护通过面包板上的通用接地连接的 LED。电阻值不是那么重要,100-500 欧姆之间的任何值都应该可以很好地安全处理 LED 上的电压降。
项目的第二部分将原型部分“包装”到 WiFi 连接算法中,该算法将标准化的电位器值传输到 ThingSpeak 网站。对于本项目的第二部分,您将需要您的 WiFi 名称、密码和 ThingSpeak Write API 密钥。所有三个 WiFi 数据都输入在提供的 Edison 草图的顶部。对于项目的第二部分,您将使用 Edisons WiFi 库WiFi.h
(
虽然 LED 阈值是实时的,但电位值仅每 15 秒传输一次到 Thingspeak。这个有限的上传间隔时间是由于 ThingSpeak 允许无限制的免费请求。Thingspeak 需要更多的成本和资源才能允许即时传输和无限制的请求。最终结果是,Thingspeak 字段上的底池值图不是每秒“实时”的,而是每 15 秒一次的底池值样本。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !