STM32_光敏、温湿度传感的选择?

光敏

检测阳光,有三种方案。
第一种,是使用红外接收管。太阳光中占大部分的是红外线光,红外接收管的结构是特殊材质的PN结二极管,红外接收管的阻值会随着照射到其接收点上的太阳光强度的增大而减小,其精确度根据后端的电压采集方式的精度而定。
第二种,是使用光敏电阻。太阳光由光子构成,光敏电阻的结构是特殊材质的电阻,其材质对阳光敏感,且光敏电阻的阻值会随着照射到其接收点上的太阳光强度的增大而减小,其精确度根据后端的电压采集方式的精度而定。
第三种,是使用光敏模块。光敏模块是集成电压转换芯片和光敏电阻的光照度检测元件,其精确度根据光敏模块的电压转换芯片的精度而定。最后通过电压转换芯片的传输协议传输给单片机此时的电压。甚至有一些光敏模块内部集成了单片机,可以将这些电压信号转化为标准的光照值,最后通过单片机的传输协议传输给后端的单片机。
STM32F103C8T6自带12位的ADC通道,对于本项目来说,具有足够的电压采集精度和采集速度,故排除第三种方案。而又光敏电阻对阳光的敏感程度大于红外接收管,故采用光敏电阻方案。
由于光敏电阻的阻值会随着阳光的强度的变化而变化,所以使用串联分压的原理,构建电阻分压电路,使得阻值的变化变成电压的变化,再使用STM32F103C8T6自带的ADC通道采集该电压,便可推算出此时的阳光的强度。
程序上,使用xxx(引脚号)引脚,对光敏电阻分压电路进行电压采集,通过采集各个时间段不同光照时光敏电阻电路的电压,写入代码,获得更高的判别精度,达到区分天气状况的目的。

DHT11

检测湿度,有两种方案。
第一种,是使用一定面积的铜电极板。不同的湿度会使得铜电极板表面的铜离子发生不同情况的电离,从而使得铜电极板之间产生不同的电容效应,使用电容检测芯片,即可采集不同湿度下铜电极板电容的变化,从而通过电容检测芯片的对外通信协议传输给单片机数据。
第二种,是使用DHT11温湿度检测模块。其内部由一个8引脚的51单片机、温度铜基板和湿度铜基板构成,其温度铜基板会随着温度的变化而展现出不同的阻值,其湿度铜基板会随着湿度的变化展现出不同的阻值,DTT11将这两块铜基板的电阻变化转化为两组电压变化,通过这个8引脚的51单片机读取其二者电压,通过标准仪器的校准,转化为温度和湿度,通过单总线的协议传输给后端的单片机。
从电气稳定性、价格和体积上,采用稳妥的第二种方案。STM32F103C8T6通过单总线的协议,获取DHT11的温度和湿度,达到区分天气状况的目的。

你可能感兴趣的:(STM32使用例程,单片机,stm32,嵌入式硬件)