本帖最后由 donglw 于 2024-7-9 18:31 编辑
这里以mq2烟雾传感器模块为列进行分析处理。只能保证结果结果接近于真实值,想要完全精确需做标定。
使用matlab进行仿真:
得到公式:Rs/R0=11.5428*ppm^(-0.6549) R0:表示传感器再洁净空气中的值。
根据电路图我们可以得到: Vrl/Rl = (Vc - Vrl)/Rs; Vrl:即AO口输出电压 Vc:回路电压 Rl:我的电路里面Rl为5.1K,具体看电路图 根据技术文档我们知道R0就是在洁净空气下Rs的值。 我的回路测试电压为5V,洁净空气下Vrl为0.621887(多次测得电压取平均值),所以得到R0的值为35.904K。 注:为保证准确性,洁净空气下Vrl的值需要在传感器充分预热下测得。 然后根据公式Rs/R0 = 11.5428 * ppm^(-0.6549)和Vrl/Rl = (Vc - Vrl)/Rs推导,得到: ppm^0.6549 = 11.5428 * 35.904 * Vrl/(25.5-5.1 * Vrl); 使用C标准库函数pow(x,y)求得ppm;//其作用是计算x的y次方。x、y及函数值都是double型 ppm = pow(11.5428 * 35.904 * Vrl/(25.5-5.1* Vrl),0.6549);
|