构建一个智能空气质量卫士
扫描二维码
随时随地手机看文章
步骤1:收集组件
对于这个项目,您将需要:
•W6300-EVB-PICO2单片机
•Sensirion SFA30传感器
•USBFan
•面包板和跳线
步骤2:硬件设置
W5100S-EVB-PICO2 -可靠的物联网基础
•RP2350双Cortex-M33 (150MHz) + 520KB SRAM
•16MB闪存+ 16KB网络缓冲区
•4个并发套接字,仅支持IPv4
•OTP内存的基本安全性
•基本物联网应用的成本效益
W6300-EVB-PICO2 -高级物联网解决方案
•同样强大的RP2350核心基础
•64KB网络缓冲区+ 8个并发套接字
•支持IPv4/IPv6双栈
•增强安全性与TrustZone +安全启动
•局域网唤醒和先进的电源管理
主要区别:W6300增加了一倍的插槽容量,增加了IPv6的未来保障,并增强了安全性-使其成为复杂的多连接应用的理想选择,而W5100S可以可靠地处理基本的物联网任务。
连接
SFA30传感器
•Tx→gp0
•Rx→gp1
风机控制电路
•MOSFET触发器PWM→GP2(控制信号)
•MOSFET地→Pico板地(共地)
•MOSFET VIN→5V电源
•MOSFET VOUT→风扇
以太网
—内置RJ45到网络路由器
重要提示:在给电路板上电之前,要仔细检查所有连接的安全性和准确性。
步骤3:软件配置
设置Adafruit IO
创建提要:
•温度饲料
•湿度饲料
•甲醛浓缩饲料
设计仪表板:
•转到Dashboard部分设计控制界面,添加开关和颜色选择器等组件
代码实现
导入所需库
•digitalio:用于控制GPIO引脚。
•time:用于代码的延迟。
•board:访问特定于板的引脚定义。
•busio:处理串行通信(如SPI)。
•adafruit_dht:用于与DHT温湿度传感器交互。
•WIZnet Ethernet:如果单板是指定的以太网单板,则导入WIZnet库功能。
•MQTT库:这些库用于使用MQTT协议与Adafruit IO通信。
管理的秘密
此字典存储您的Adafruit IO凭据。您应该创建一个单独的secrets.py文件来保证敏感信息的安全。
网络配置
定义网络连接的MAC地址、静态IP地址、子网掩码、网关和DNS服务器地址。
硬件初始化
•以太网配置:为以太网连接配置引脚并重置WIZnet模块。
•初始化以太网:WIZnet模块使用SPI初始化,启用DHCP以自动获取IP地址。
SFA30传感器设置
1. UART的设置
•UART初始化:这一行使用UART(通用异步收发器)初始化SFA30传感器进行串行通信。
•引脚定义:板。GP0和主板。GP1分别用于TX和RX通信。
•波特率:设置为115200,保证数据传输速度快。
2. 传感器复位
•Reset命令:SFA_reset数组中包含复位SFA30传感器的命令。命令格式通常包括起始和结束字节(0x7E)以及特定的操作代码。
•等待时间:发送reset命令后,等待10秒,以确保传感器完成初始化过程。这对于可靠的读数至关重要。
3. 配置命令
•配置命令:SFA_config数组包含传感器开始测量的设置。与reset命令类似,它包括起始字节和结束字节。
•短等待:在发送配置命令后实现0.2秒的短暂等待,以允许传感器在进行测量之前处理设置。
数据处理功能
Set_reading_values (recv_data)处理来自传感器的原始数据:
•检查有效的响应帧。
•提取和转换原始值为有意义的测量(甲醛,湿度,温度)。
get_reading_value:向传感器发送请求数据的命令,读取响应,并使用set_reading_values函数处理它。
风机控制系统
初始化一个引脚来控制风扇。
•control_fan功能在温度超过27℃时开启风扇。
MQTT配置
套接字池:创建用于网络通信的套接字池。
•MQTT客户机:使用来自秘密字典的代理详细信息和凭据初始化MQTT客户机。
•MQTT回调:定义处理MQTT事件的函数:
•connected:确认与代理的连接。
•disconnected:断开连接时通知。
•message:处理传入消息。
•publish:消息成功发布时的日志。
•回调分配:将前面定义的回调函数链接到MQTT客户机。
主应用程序循环
•处理MQTT任务。
•从SFA30传感器读取数据。
•如果获得有效的读数,它应用一个校准偏移到温度和控制风扇。
•打印传感器读数并将其发布到Adafruit IO
•在下一次读取前等待3秒。
步骤4:功能和好处
实时监控
•环境参数的连续跟踪
•温度超过27℃时,风扇立即启动
•实时数据流到Adafruit IO仪表板
安全特性
•自动温度调节
•空气质量甲醛水平监测
•传感器通信的鲁棒错误处理
数据可视化
•实时测量当前读数
•用于趋势分析的历史数据图表
•从任何设备进行远程监控
步骤5:申请
该系统适用于:
•家庭环境监测
•办公室空气质素评估
•实验室安全系统
•暖通空调系统集成
•智能温室控制
结论
该环境监测系统为环境监测提供了数据实时传输和自动化控制的综合解决方案。W6300-EVB-PICO2可靠的以太网连接和Adafruit IO强大的云平台的结合创造了一个强大的物联网应用程序,既具有教育意义又实用。
该项目展示了重要的物联网概念,包括传感器集成、实时数据处理、MQTT通信和自动控制系统,使其成为物联网爱好者和开发人员的绝佳学习平台。
本文编译自hackster.io





