薄膜压力传感器


项目介绍

在这个套件中,有一个Keyes 薄膜压力传感器,薄膜压力传感器是基于新型纳米压敏材料辅以舒适杨式模量的超薄薄膜衬底一次性贴片而成,兼具防水和压敏双重功能。

通过采集模块上S端模拟信号,判断压力大小。ADC值、DAC值和电压值越小,压力越大;并在“Shell”窗口上显示测试结果。

模块参数

工作电压DC 3.3 ~ 5V
电流20 mA
最大功率0.1 W
量程0-5KG
响应点150g
重复性<±9.7%(60%负载)
一致性±10%
耐久性>100万次
初始电阻大于10MΩ(无负载)
响应时间<1ms
恢复时间<15ms
工作温度-10°C ~ +50°C
输出信号模拟信号
尺寸32 x 23.8 x 7.4 mm
定位孔大小直径为 4.8 mm
接口间距为2.54 mm 3pin防反接口

模块原理图

薄膜压力传感器原理图

当传感器感知到外界压力时,传感器的电阻值发生变化。Keyes 薄膜压力传感器使用LM321运算放大器芯片将传感器感知到的压力变化的压力信号转换成相应变化强度的电信号输出。这样就可以通过检测电压信号变化得知压力变化情况。

实验组件

ESP32 Plus主板
ESP32 Plus主板 x1
Keyes 薄膜压力传感器
Keyes 薄膜压力传感器 x1
XH2.54-3P 转杜邦线母单线
XH2.54-3P 转杜邦线母单线 x1
USB线
USB线 x1

模块接线图

薄膜压力传感器接线图

代码

from machine import ADC,Pin,DAC
import time

# 开启并配置ADC,量程为0-3.3V
adc=ADC(Pin(34))
adc.atten(ADC.ATTN_11DB)
adc.width(ADC.WIDTH_12BIT)

# 每0.1秒读取一次ADC值,将ADC值转换为DAC值输出,并将这些数据打印到“Shell”
try:
    while True:
        adcVal=adc.read()
        dacVal=adcVal//16
        voltage = adcVal / 4095.0 * 3.3
        print("ADC Val:",adcVal,"DACVal:",dacVal,"Voltage:",voltage,"V")
        time.sleep(0.1)
except:
    pass

实验结果

为了使实验数据最精准,请将薄膜压力传感器尽量平放。按照接线图正确接好模块,用USB线连接到计算机上电,单击 运行按钮 来执行程序代码。
代码开始执行,"Shell"窗口打印出薄膜压力传感器的ADC值、DAC值和电压值。用手按压薄膜时,随着力量的增大,可以看到ADC值,DAC值和电压值逐渐变小。

单击 停止按钮 或 Ctrl+C 退出程序

实验结果示意图

代码说明

代码说明
adc=ADC(Pin(34))定义ADC对象,采集34号引脚的模拟信号
adc.atten(ADC.ATTN_11DB)设置ADC衰减,量程为0-3.3V
adc.width(ADC.WIDTH_12BIT)设置ADC分辨率为12位
adc.read()读取当前ADC值(0~4095)
dacVal=adcVal//16将ADC值缩放为DAC输出值
voltage = adcVal / 4095.0 * 3.3将ADC值换算为实际电压
print(...)在Shell窗口打印ADC、DAC和电压值
注意事项:
1. 薄膜压力传感器请勿用尖锐物体按压,以免损坏。
2. 若Shell窗口无输出,请检查接线和端口设置。
3. 代码与前面章节类似,详细原理和用法可参考第二十课内容。