现代工厂流程在很大程度上依赖于数字技术来监控设施的不同部分。借助数字技术,工厂变得更安全、更高效且更易于操作。这项技术被认为是理所当然的,当您参观越来越老的工厂时,这一点就会变得显而易见。我在一家 18 世纪的磨坊工作,那里几乎不用电。平皮带和皮带轮将动力从传动轴传输到机械,我们的大部分机械都是用木头制成的,手工切割并在 1900 年代初期组装。当我被要求开发一个传感器网络来监控工厂流程的不同部分时,我抓住了这个机会,将我的工作场所带入了 21 世纪。
工厂可以被认为是一台大机器,同时有许多较小的过程。因此,我们需要各种传感器来监督这些过程,并在出现问题时提醒我们。该项目启动时包含的初始传感器在粮仓内进行测量,以确定它有多满,监控 AC Tech SMVector 控制器的 0-10v 直流输出,并获取建筑物各个部分的温度和湿度读数。未来的传感器将包括测量流经喷口的谷物的喷口流量计、记录谷物通过哪个喷口的二通阀上的磁性开关,以及让我们了解轴承温度的总轴轴承上的温度传感器。
通过引入该网络,我们可以节省时间,无需四处走动以目视检查整个建筑物的四层楼的流程,并且我们可以量化不同流程的各个部分,为我们提供用于统计目的的数据。
该网络由标准节点、连接到传感器的 Arduino 供电设备、基本节点、充当网络集线器的 Arduino 设备以及充当服务器和数据解释器的 Raspberry Pi 组成。
nRF24L01(RF24)模块是一个射频发射器,能够向其他RF24模块发送和接收数据。RF24 模块可以按照下面的接线图连接到 Arduino Nano。
RF24 模块可以在 5 伏电压下供电,但建议您在 3.3 伏电压下供电。为确保 RF24 模块不会偶尔断电,需要一个去耦电容器。我在 RF 模块的电源和接地引脚附近使用了一个 10 uF 电解电容器(图中未显示)。如果没有这个电容,RF 模块将表现不佳。
一旦我了解了 RF24 模块,就可以制作可定制的 PCB,以支持不同的传感器。
我设计的 PCB 包括一个 Arduino Nano、一个 RF24 模块、一个 10 uF 电解电容器、2 个 LED 指示灯、两个用于 LED 的电阻器,以及一个用于放置微型 USB 母连接器以为节点供电的位置。当一个节点放在一起时,它看起来像这样......
然后将每个节点封装在一个 3D 打印的外壳中,使其易于安装到墙壁和表面上。
由于范围问题,我修改了 RF24 以添加更长的天线。天线修改将库存 RF24 模块的范围从 5-10 英尺范围扩大到 20 或 30 英尺。为了修改 RF24 天线,我将一根 18 号实心线剪成大约 7 英寸,并将其焊接到 RF24 天线走线的末端。警告:如果对天线施加的压力太大,延伸 RF24 天线可能会拉起 RF24 模块上预先存在的迹线。
我在新天线的两侧涂了一大团热胶,因为在实验过程中,我发现它有助于将新天线加固到 RF24 模块。
为了将系统整合在一起,每个网络都需要一个将所有数据路由到的基本节点。在我的项目中,我使用通过串行电缆连接到 Raspberry Pi 的节点。节点用于发送和接收网络消息,RPI 用作记录和解释数据的中央服务器(服务器程序将在本项目后面解释)。
对于这个项目,我专门使用RF24Network库(由 Tmrh20 创建)来处理 RF24 消息传递。RF24Network 库允许您在树结构中构建节点网络。地址以八进制格式写出。每个 RF24 模块最多可以分支成 5 个节点,这些子节点的地址后跟父地址。因此,如果我们要将两个节点分配到节点 2 下,那么我们将一个节点指定为 012(第一个节点是节点 2 的子节点),另一个节点指定为 022(第二个节点是节点 2 的子节点) .
所以你可以更好地理解一点,这是我网络中连接的几个节点的基本布局。
我使用节点 01、011、0111 和 01111 作为转发器节点,这意味着它们主要用于从树结构中更靠下的节点传输信息。节点 03、0211 和 0311 都是传感器节点,这意味着它们连接了传感器,这些传感器生成我们需要发送回节点 00 的数据。
节点和传感器程序
Node 程序在您正在创建的节点上运行。这是充当端点的程序,其中数据从连接到节点的传感器生成。我提供了一个没有对我的传感器进行任何修改的节点代码版本(带有解释发生了什么的注释),但我还包括我为我的项目网络编写的程序(与节点代码略有不同)。
基地计划
基本程序是您在基本节点(标记为节点 00)上运行的程序。
关于程序需要注意的一点是,当您为消息创建数据结构时,端点程序和基础程序中的 C 结构需要相同。
该网络推出了 3 种传感器类型,用于测量谷物箱满满程度的传感器,用于监控某些电机功率输出的传感器,以及为我们提供建筑物周围温度和湿度读数的传感器。
粮仓传感
为了测量粮仓的深度,我在粮仓顶部安装了超声波传感器,使传感器指向仓内。然后我将 3 个超声波传感器连接到我在节点的原型板区域设置的引脚。每个回声针都连接到一个单独的 Arduino 针,但触发针是共享的,以便于编程。
温湿度传感
DHT11用于测量整个厂房的温度和湿度。这是重要的信息,因为在处理谷物和面粉时,温度和湿度的波动会影响面粉的研磨细度。
SMVector 3 相控制器监视器
要将小麦浆果磨成面粉,我们必须用石磨研磨浆果。磨机本身使用连接到 AC Tech SMVector 控制器的三相电机运行,该控制器可以选择输出 0-10 伏模拟信号,该信号与电机消耗的电流成比例。这对于监控很有用,因为石磨可以打开其进料机构,让更多的谷物进入磨机,这使得磨机更难研磨谷物。最终,这会导致电机试图补偿、吸收更多电流,并最终过载和卡住。网络允许我们远程监控电流,因此如果我们看到该值稳定上升,我们可以在磨机开始超载之前手动关闭进料机构。该电路充当分压器,
消息从网络中的 RF24 节点发送后,消息被路由到基节点(地址 00),然后作为字符串通过串行电缆发送到 Raspberry Pi。
该程序将收到一条消息,将其分解为多个组成部分,解释数据,然后将其显示在 GUI 中。从 GUI 中,您可以查看节点\传感器信息并使用输入框和“发送命令”按钮向节点发送消息。每 10 条消息后,程序会自动将节点信息保存到文本文件中,以便日后分析。
我这个项目的目标是建立一个 RF24 网络,可以从一个中心位置监控我们工厂的不同部分。通过使用 RF24 模块、Arduino Nano 和各种传感器,我能够创建一个廉价的解决方案来完成我的目标,同时构建一个可以轻松构建和扩展的强大框架。虽然网络不是完全无线的(节点需要电源线,除非节点由电池供电),但在网络中实施新节点就像打开设备一样简单。
如果你想在我已经完成的工作的基础上再接再厉,我设计了一个更好的 PCB,它更容易制作传感器。我会将该板作为 gerber 文件包括在内,如果您想根据我的工作构建自己的网络,我建议您使用 Network Board 版本 2 而不是版本 1。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !