RT-Thread X STM32 全连接大赛 智能甲醛检测仪 作者: 乔季军 开发环境:RT-Thread Studio 硬件框架:基于RT-Thread 提供的ART-PI 开发板实现,详细硬件请参考项目设计文档 【RT-Thread作品秀】智能甲醛检测仪作者:乔季军 概述家里房子装修完已经快一年了,装修完一直保持着通风,最近回家住的比较频繁,每次回去住总还是觉得比较别扭,总担心屋里的甲醛会不会还是超标,自己总想着搞一个甲醛检测仪的装置来放到屋里,这样就能够实时查看到屋里面的甲醛浓度了。调研了一番,发现市面上的比较便宜的甲醛检测装置基本都不准确,于是乎自己便开始搜寻相关传感器,寻思着能否自己DIY一个甲醛检测装置,在给自己寻找乐子的同时,也能够做一个使用的物件。 通过调研发现,目前市面上检测甲醛的传感器主要分为两类,一类是半导体式,另一类是电化学式。半导体式甲醛传感器主要是根据甲醛散发到周围空气中,导致周围空气的导电率发生变化来感知甲醛浓度的,这一类传感器主要是根据导电率的特性来检测甲醛的,很容易收到其他环境因素的影响,例如周围湿度的变化也会导致空气的导电率发生改变,因此使用这种传感器测得甲醛浓度就没有太大的参考意义了,另外一种是电化学式传感器, 这种传感器上面有一层滤膜,用来过滤空气中的其他干扰杂质,传感器中包含有一种能够和甲醛发生反应的催化剂,当催化剂和甲醛接触时,就会形成电信号的波动,电信号的波动和甲醛浓度值的变化有一定的关系,因此使用这种传感器检测的甲醛浓度相对来讲会更准确一些。 笔者在调研完之后,选择了英国达特公司设计生产的WZ-S-K 型电化学式甲醛检测传感器,用用来检测甲醛浓度值,此外,还使用到了DHT11 温湿度传感器,用于检测周围环境的温湿度信息。 该智能甲醛检测仪主要实现甲醛检测及温湿度检测功能,检测到的数据通过LCD显示屏实时的显示出来,同时还能够将传感器数据上传到ONENET物联网平台,用来记录历史传感器数据,同时也能够利用这些数据信息和其他设备联动。 开发环境硬件:ART-PI、DHT11温湿度传感器、达特WZ-S-K型甲醛传感器 RT-Thread版本:4.0.3 开发工具及版本:RT-Thread Studio 2.0.0 甲醛传感器介绍WZ-S-K 型甲醛检测传感器模组是英国达特公司设计的一款基于电化学的甲醛检测传感器,具有测量精度高、响应速度快、使用寿命长、功耗低等特点。该传感器能够直接将周围环境中的甲醛含量转换为浓度值,通过串口标准化输出,这款甲醛检测传感器能够非常方便的集成到产品中去,适用于智能家居、便携式测量仪表等产品。 RT-Thread使用情况概述使用 RT-Thread 开发物联网应用的优势已经非常明显了,借助于RT-Thread 软件包生态,开发者只需要关系自己的应用逻辑即可。 该项目使用到许多RT-Thread 的软件包,具体请参考以下截图。 演示视频: 比赛感悟这次比赛,我使用RT-Thread 从头到尾设计了一款基本满足正常使用的甲醛检测设备。整体下来,觉得使用RT-Thread 物联网操作系统进行应用开发还是非常便捷的,借助于软件生态,可以大大缩短开发周期。 设计过程中主要有两部分内容需要攻克,一部分是关于甲醛浓度检测及单位换算部分,这部分查阅了一些资料,总觉得不太合理,传感器输出的浓度单位为ppb或ppm(1ppm=1000ppb),而作为我们日常使用中,比较容易理解的单位是 mg/m3 ,从 ppb 到 mg/m3 之间的换算,网上有很多种说法,其中我找到的最不合理的说法就是 1ppm = 1mg/m3。经过深入研究,发现这其实是化学单位中常用的几个不同的单位,这两个单位之间的换算还要结合不同物质的物质的量来进行计算,经过自己实际对比验证和联系供应商验证问题,最终得出的结论为甲醛浓度单位ppm和 mg/m3 之间的换算关系为: 1ppm = 0.74666 mg/m3 这种看着不起眼的单位换算,背后还是有一些知识点需要理解的,如果单单的将 1ppm 理解为 1mg/m3 的话,最终会造成读取的数据不准确,那么这样的甲醛检测仪也就没有什么设计的意义了。 第二部分内容就是关于LCD显示部分的GUI部分,这部分开发工作相对可查的资料比较多,开源的GUI也很对,网上针对ART-PI进行的GUI适配工作也有很多分享,笔者也亲自适配了lvgl这套开源的GUI,但是对于笔者,还是希望能够在设计过程中深入理解LCD驱动和GUI部分的原理,于是乎在开发过程中,笔者自己动手编写了GUI部分的画点、画线、绘制圆、绘制矩形、显示字符等函数,在编写过程中也参考了正点原子的GUI部分的代码,但是这对于我理解GUI部分的原理已经足够了,借此机会,我还设计了几个GUI的控件,用来显示一些传感器数
2022-04-06 14:31:36 7.31MB 传感器 物联网 diy制作 开源
1
该智能小车基于STC12LE5412AD单片机设计,硬件组成:反射式光电轨迹采样电路、MCU控制部分、直流电机 H 桥驱动器部分、小车USB下载 RF接口部分。 此项目为“寻迹小车”的升级,在结构上作了改进,码盘从10(20)个/圈提高到 50(100)个圈;同时,改进了电机的驱动防护逻辑,既能实现电机的四个状态,保证不短路,还可以使PWM控制的软件耗费大大减少,而且一个电机只需使用3个I/O口(原来为 4个)。其余没做大的改动,所以程序只要要修改的是电机驱动部分。 为了能使用PCA硬件实现PWM,以便于使用RTOS,暂时取消PWM的频率修改功能,日后有更好的方案再考虑。因为程序要支持寻迹的所有功能,所以将程序分成模块化,便于阅读和调试。 程序分为: 1) 主控程序 —— 调度所有消息,初始化系统 2) 电机驱动模块 —— 包含所有与电机驱动有关的函数,接受不同的控制命令,并付诸实施; 3) 轨迹采样模块 —— 包含所有与轨迹采样有关的处理,结果为与处理后的轨迹状态; 4) 走轨迹控制模块 —— 读取轨迹采样所获取的信息,根据需求和策略输出相应的电机控制命令;将调试的相关功能也纳入此模块。 循迹小车详细资料包括电路图、软件编程源码截图:
2022-04-05 14:06:23 585KB 智能小车 diy制作 电赛 电路方案
1
这个项目是关于Arduino电压表的简单介绍。进行此操作的主要原因是基于我的个人经验,当我在实验室中进行一个实验时,我找不到电压表,因此我做出了这种修改以满足我的要求,并且我认为它也会对其他人有所帮助。 对于初学者而言,这是一个很好的项目,它使用基本概念,但功能强大的完整工具。 在运行代码时,您可以在串行监视器上找到输出。 在这里,串行监视器将显示输出,即电压。 计算电压的公式: Vout = (Val * 5.0) / 1024.00; 在这些公式中,Val是Arduino读取为模拟输入的值,再乘以Arduino提供的电压即可得到Vout,将其除以每一位所覆盖的时间周期获得价值。 Vin = Vout / (R2/R1+R2) 通过此公式,我们可以找到Vin大约为0,这间接意味着我们正在建立地面。 注意:这里没有限制使用指定数量的电阻器,可以根据电阻器的可用性来改变它。 最终建议 如果一个电阻的阻值为R ohm,另一个电阻为R'ohm,则只需更改代码中的const。 警告:确保在测试过程中不要弄乱阳极和阴极部分,否则可能会损坏Arduino板。
2022-04-02 11:19:53 283KB diy制作 电路设计方案 Arduino 电路方案
1
在本教程中,我将向您展示如何使用Arduino用大型的诺基亚5110 LCD显示屏构建非常有用的紫外线测量仪。 保护 ...
2022-03-26 23:39:38 504KB arduino display nokia radiation
1
探测器可以探测距离为15厘米的小金属硬币。 硬件组件: Arduino Nano R3× 1 HC-05蓝牙模块× 1 通用晶体管PNP× 1 通用晶体管NPN× 1 功率MOSFET N沟道× 1 运算放大器,运算放大器+比较器+参考× 1 1N4148 - 通用快速切换× 2 电容10μF× 1 电容1μF× 1 单转电位器 - 100k欧姆× 1 单转电位器-47k× 1 12个不同值的电阻× 1 手动工具和制造机器: 烙铁(通用) 原理介绍: 脉冲感应(PI)系统使用单个线圈作为发射器和接收器。该技术通过线圈发送强大的短脉冲(脉冲)电流。每个脉冲产生一个短暂的磁场。当脉冲结束时,磁场反转极性并突然崩溃,导致尖锐的电尖峰。这个尖峰持续几微秒并导致另一个电流通过线圈。该电流称为反射脉冲,非常短,仅持续约30微秒。然后发送另一个脉冲并重复该过程。如果一块金属进入磁场线的范围内,则接收线圈可以检测接收信号的幅度和相位的变化。幅度变化量和相位变化量表示金属的尺寸和距离。
2022-03-26 22:43:41 658KB 金属探测器 电路方案
1
walle-replica Robot and controller code for a Wall-E replica robot. 机器人瓦力 3d打印文件 +arduino 7舵机+2支流马达 Diy 设计
2022-03-25 17:48:50 10.63MB 3d print diy
1
本教程是一个压缩包,里面讲解了如何自定义winpe
2022-03-24 14:34:44 598KB pe diy windows
1
本文档分享的是功能非常强大的雕刻机上位机控制软件,下位机是stc单片机制作的执行机构。 主要功能: 可以把图片的每个点阵像素转换坐标和灰度数据发给单片机,单片机根据不同的灰度值控制激光实现灰度打印! 可以把图片经过抖动算法处理后再发给单片机。这种模式雕刻速度非常快!不懂可以百度【图像抖动算法】。 可以把图片转换成G代码发送给单片机速度也很快!这种就是普通的 Arduino 雕刻机的功能。 抖动算法和G代码结合方式,可以把两者的优势都发挥出来【原创设计】,就是先把图片的 大面积黑色区域 提取出来用G代码雕刻,然后在把剩下的部分用抖动算法处理后雕刻。既能保证速度又可以保留图像的细节! 还可以直接导入G代码文件来刻! 吊炸天的脚本编写功能绝对牛掰! 雕刻机控制板实物图: 上位机截图: 实物购买链接:https://item.taobao.com/item.htm?spm=a1z10.1-c.w4004-1431751395.8.fP4HtZ&id=44931815936
1
个人收藏的多种天线pcb封装,2.4g/433m/915m/gps/gsm/wifi/rfid/nfc等pcb封装,增益高,方向性好,稳定可靠。
2022-03-23 22:12:07 2.1MB diy制作 pcb封装 天线调试 电路方案
1
周工ican协议v1.0学习文件,stm32+ican工程源代码例程,很适合can协议学习,以及简易通讯协议的编写diy
1