×

城市花园监视器开源分享

消耗积分:0 | 格式:zip | 大小:0.11 MB | 2022-12-13

陈键

分享资料个

描述

 

 
pYYBAGOSmhSATDLVAAcSkn_s2d8613.jpg
Urban Garden Monitor 正在运行。
 

该设备允许对城市花园周围的环境进行快速、安全和远程分析。Urban Garden Monitor 由 WIZnet WIZ750SR 串口转以太网模块和 Arduino 101 提供支持,可读取温度、湿度和压力数据,并使用集成神经网络将它们分类到一个类别系统中。

该设备是使用一些相互交织的想法创建的:

WIZnet WIZ750SR串口转以太网模块

 
pYYBAGOSmkSAIn6LAAbhFpmJQLY212.jpg
Urban Garden Monitor 上的 WIZ750SR。
 

WIZ750SR 是一个串行转以太网模块,允许任何带有串行端口的设备连接到互联网。该模块使用 W7500P 处理器,该处理器结合了带 128KB 闪存的 ARM Cortex-M0 和硬连线 TCP/IP 内核,可实现串行数据和以太网数据之间的无缝连接。在 Urban Garden Monitor 中,WIZ750SR 弥合了 Arduino 101 收集的环境数据与连接到与 WIZ750SR 相同路由器的任何设备上可访问的 TCP 客户端终端之间的差距。

Arduino 101 和模式匹配引擎神经网络

Arduino 101 是一款独特的开发板,可在 Arduino 外形中发挥英特尔 Curie 模块的功能。具有实时操作系统、集成 BLE、六轴加速度计/陀螺仪模块和 128 节点模式匹配引擎 (PME) 或人工神经网络。Urban Garden Monitor 利用 RTOS 和 PME 将日常环境数据的优化特征提供到一个 30 类库中,该库会随着设备学习此数据的不同分类而填满,从而使用户能够可视化数据趋势并根据需要调整他们的花园. Arduino 101 还带有一个额外的硬件串行端口,这对 WIZ750SR 的操作至关重要,并充当两个设备之间的链接。

BMP180 和 DHT22 环境传感器

 
pYYBAGOSmm6AJ4PbAAb-7IG-zUo653.jpg
BMP180 是最左边胶带旁边的银色方块,而 DHT22 是它旁边的传感器。
 

Urban Garden Monitor 上有两个环境传感器,BMP180 和 DHT22,用于收集数据以供 Arduino 101 和 PME 解释。BMP180 是气压和温度传感器,使用 I2C 总线与设备通信,而 DHT22 是温度和湿度传感器,使用单个数字引脚与设备通信。这些传感器一起提供 Arduino 101 可以解释并发送给用户的一系列信息。

如何建造

要构建此设备,请首先获取随附材料清单中的所有组件。请注意,您的计算机必须具有以太网端口。如果您的计算机上没有 DB9 RS-232 端口,请获取 USB 到 RS-232 DB9 适配器电缆。

1.配置WIZ750SR。当您将模块作为 EVB 套件的一部分购买时,该模块将附在评估板上。

  • 将随附的 DB9 RS-232 电缆插入 EVB 的 DB9 端口。
  • 将随附的 USB Micro 转 USB A 电缆插入 EVB 的 Micro-USB 端口。
  • 将随附的以太网电缆插入 EVB 上 WIZ750SR 的以太网端口。
  • 如有必要,将 USB 到 RS-232 DB9 适配器电缆的 DB9 端插入 DB9 RS-232 电缆,并将 USB 端插入计算机。否则,将 DB9 RS-232 电缆的 DB9 端直接插入计算机。如果您的计算机中尚不存在 USB 转串口驱动程序,您可能需要为您的电缆下载该驱动程序。
  • 将 USB Micro 转 USB A 电缆的 USB A 端插入计算机。
  • 将以太网电缆插入计算机。这将允许测试设备功能。
  • 轻按电路板侧面的电源开关。LED 将指示您的设备已通电。
  • 使用此链接下载并打开 WIZnet-S2E-Tool-GUI:https ://github.com/Wiznet/WIZnet-S2E-Tool-GUI/releases/tag/v0.5.4
  • 确保操作模式设置为“TCP 服务器”。如有必要,请使用上传按钮更新设备。
 
poYBAGOSmnGALTPlAAF1b4NXG8w590.png
配置工具的注释视图。要查找您的设备,请点击搜索并从表格中选择您的设备。
 
  • 从 EVB 上拔下以太网电缆,然后在家庭路由器和开发板之间插入您自己的以太网电缆。这将允许测试设备连接性。重新打开S2E-Tool软件,检查您设备的“本地IP”和“本地端口”。一旦你有了这些,你的设备就可以使用了。

2. 测试通过WIZ750SR传输数据。保持设备插入。

  • 从此链接下载 SocketTest:https ://sourceforge.net/projects/sockettest/ 这是一个 TCP 客户端/服务器终端程序,可以测试以太网功能。
  • 从arduino.cc的 Software->Downloads下载最新版本的 Arduino IDE 。
  • 打开 Arduino 集成开发环境。转到 Tools->Port 并选择 EVB 的通信端口。如果有多个端口,请检查计算机的设备列表以查看哪个属于您的板。
  • 转到工具 - >串行监视器并打开监视器。将波特率更改为 115200 波特。
  • 打开 SocketTest 并转到客户端选项卡。在各自的字段中输入您的 EVB 的 IP 地址和端口号。点击连接启动终端。
  • 如果一切设置正确,您应该能够在 Arduino 终端中键入字符串并看到它们出现在 SocketTest 终端中,反之亦然。完成模块测试后,关闭所有应用程序并拔下 EVB 的电缆。

3. 使用材料清单中包含的部件构建 Urban Garden Monitor。

  • 从 EVB 上拔下 WIZ750SR。翻转 WIZ750SR,使接头朝上。
  • 按照此电路图组装显示器的电子元件。接线后将电工胶带缠绕在面包板上,然后再将其放在 Arduino 101 的中心。紧紧缠绕胶带以确保连接稳定,但要确保银色 BMP180 单元中的孔暴露在外并朝上。
 
pYYBAGOSmniAFSnDAAHHgWdMnZM486.png
Urban Garden Monitor 的 Fritzing 电路图。通向 12 针接头的 4 根线是 F/F。
 
  • 请注意,WIZ750SR 接头由公针组成。使用 4 个 F/F 跳线,每个跳线的一端都有一个实心 M/M 跳线,以在 Arduino 101 上创建一个薄型连接。
  • 将 WIZ750SR 放在迷你面包板的顶部并将所有东西粘在一起。将任何松动的跳线塞到 Arduino 101 的侧袋中。确保 WIZ750SR 上的三个 LED 仍然可见,并且可以访问重置按钮以及以太网和 USB 端口。
  • 将 Arduino 101 连接到 Arduino 支架以确保对电路板的保护。
 
poYBAGOSmnuAVMTxAABA7OYLQJ0232.jpg
最终产品。结果可能因磁带选择而异。
 

4. 将 Urban Garden Monitor 代码上传到 Arduino 101。

  • 将包含的代码下载到您的计算机并在 Arduino IDE 中打开它。文件中包含有用的注释,以指导您理解。
  • 转到 Tools->Board->Boards Manager 并找到 Intel Curie Boards 核心。下载版本 2.0.2。
  • 关闭集成开发环境。
  • 将以下附加代码库下载到您的计算机:

英特尔模式匹配技术:https ://github.com/intel/Intel-Pattern-Matching-Technology

Adafruit DHT 湿度和温度统一传感器库:https ://github.com/adafruit/DHT-sensor-library

Adafruit 统一 BMP085/BMP180 驱动程序:https ://github.com/adafruit/Adafruit_BMP085_Unified

  • 打开计算机的文件系统并找到“Arduino”文件夹。如果文件夹不存在,请在其中创建一个名为“libraries”的文件夹。打开文件夹,将下载好的三个代码库粘贴到文件夹中。
  • 重新打开 Arduino IDE 并使用 USB AB 电缆将 Urban Garden Monitor 的 USB 端口插入计算机。转到 Tools->Port 并选择 Arduino 101 的端口。然后转到 Tools->Board 并向下滚动到 Intel Curie(32 位)开发板。选择 Arduino/Genuino 101。
  • 点击上传按钮将代码上传到您的开发板。你准备好了!

设备设置

要运行该设备,首先将 Urban Garden Monitor 设置在您想要获取环境读数的区域。如果不是在您可能关注的一组特定植物旁边,最好的位置是靠近,因为这将使您能够获得要监测的植物的最准确读数。

 
poYBAGOW21-AZKCsAAmpKJZ2g5o114.jpg
插入设备的过程。
 

放置显示器后,取一个 USB 壁式充电器并将 USB AB 数据线插入其中。将充电器插入墙上插座。将电缆的 B 端连接到显示器所在的位置。准备就绪后,从路由器上取下以太网电缆并将其也连接到显示器。将 USB 电缆插入 USB-B 端口,然后将以太网电缆插入以太网端口。您应该首先看到红色 LED 灯亮起,然后在设备连接到互联网后蓝色 LED 灯亮起。

 
poYBAGOW24eADeLiAAeHGs8KHLU869.jpg
设备上的 LED 指示灯位于右上角。
 

显示器连接好后,您就可以不用管它了。转到您的计算机并打开 SocketTest 应用程序。输入您之前为 EVB 记录的 IP 地址和端口号,然后点击连接。请注意,如果您在首次获得 IP 地址和现在之间添加或断开任何其他设备,IP 地址可能会发生变化。如果是这种情况,您可以检查路由器的主页以查看显示器的当前 IP 地址。

 
pYYBAGOW242AGb-FAABmXkZYltg143.png
准备好 SocketTest。
 

如果显示器无法连接,请重试,因为可能需要一些时间才能完全连接到网络。

设备操作和命令

连接后,您应该会看到此屏幕:

 
pYYBAGOW25CANIkSAABqZv0D5jE617.png
连接到 Monitor 后的 SocketTest 应用程序。
 

输入任何内容并点击发送或 Enter 键以激活监视器。然后系统会提示您提供当前时间。先输入小时数,发送,然后输入分钟数并发送。如果你犯了错误,你可以点击显示器上的重置按钮,然后重试。

 
poYBAGOW25KAST4BAAAYSPhP5No743.png
输入时间后的画面。注意时间要输入24H格式。
 

配置时间后,您应该会看到菜单提示。以下是您可以输入的命令:

 
pYYBAGOW25WAKRGrAAA79Uoy9kk356.png
设备打印的命令列表。
 
  • LD:此命令使用中断服务程序创建传感器数据读数的 2 秒间隔循环。在此期间,循环将优先于所有其他命令,因此请确保在此期间不要激活任何其他数据显示命令,否则它们将被中断。当您希望能够远程查看植物生长的环境时,建议使用此命令,以便您可以在条件发生变化时做出相应的响应。
 
poYBAGOW252AX8T6AACYcM2UZcc383.png
内部热量可能导致异常高温。您可以减去补偿以在代码中提供帮助。
 
  • DL:此命令关闭 ISR 数据循环。
  • DD:此命令发送当前传感器数据读数的单个快照。
  • SS:此命令显示前一天的平均数据和神经网络分类。如果您在前一天的数据不存在时调用此命令,您将收到通知并且不会显示任何数据。
  • ST:此命令显示过去 30 天的数据分类。在一天被分类之前,它将显示为类别 0。请注意类别 0 也将被设备进行的第一个分类使用。如果您愿意,可以通过从 1 开始数组索引并使其以 30 而不是 29 结束来修改它。
  • DC:此命令显示每个保存的数字日数据分类代表的内容。如果尚未为类别分配特征,则所有字段的数据将显示为零。
 
poYBAGOW26CAE6ghAAAiwkLvt88569.png
Display Characterizations 命令正在运行。由于尚未对数据进行分类,因此所有值为 0。
 
  • SC:此命令显示命令列表,如果您需要它以供参考。

PME操作

在用户操作本板的过程中,Pattern-Matching Engine会在后台运行。每小时,设备都会记录设备周围的温度、气压和湿度样本。然后将此数据以数组形式保存到设备中。在记录的 24 小时后,设备会取每个数据集的平均值,并创建过去 24 小时环境的三变量表示。然后将这些数据加载到 PME 中,PME 根据学习经验对其进行分类。如果没有 PME 找到匹配的先前分类,则数据将被赋予新的分类并保存到 PME 的内存中。否则,分配现有的分类。在这两种情况下,当天分配的分类也会被保存。分类被放入一个 30 天的数组中,该数组动态适应以防止溢出,删除最早保存的日期并将所有其他数据向上移动,从而允许记录最新的分类。这允许用户每天查看环境如何变化,从而允许他们调整他们的花园以适应潜在的数据增加或减少趋势。

如果分类数量超过 30,则由于 PME 中的存储空间数量有限,最旧的分类随后将被删除。

 
poYBAGOW28CAXppwAAaMAbERRn0628.jpg
Urban Garden Monitor 足够小,可以放在花盆的边缘和旁边。
 

 

希望这个项目能让人们在生活中有更多的时间,让他们为他们可能会照顾的城市花园提供更多的好处!


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !