振动/敲击检测传感器
-
- 一、传感器介绍
- 二、接线图
- 四、完整代码
- 五、实验过程及结论
一、传感器介绍
我们只在这里使用AO由于电压信号能反映振动的强度,因此输出的电压模拟信号。DO引脚更容易使用。传感器模块电路板上的电位器调整灵敏度后,即可使用Core提供的GPIO库函数实现正确DO这里不涉及信号高低电平的检测。
二、接线图
四、完整代码
--配置Core的USB口以虚拟串口模式工作,这样print()输出的内容可以显示在计算机串口终端上 LIB_UsbConfig("CDC") --配置AD电压采集功能,最大采样值4096对应3.6V输入电压 --当通道充满收集时1每个点的收集时间间隔为300ms LIB_ADConfig(1,300000) --开始大循环 while(GC(1) == true) do --每隔300ms查询A0通道是否转换完成 --开发人员也可以接收传感器A1-A3中的任何通道也可以连接多个传感器,用法与下面相同 LIB_DelayMs(300) A0_full_flag, A0_buf = LIB_ADCheckBufFull("A0") if A0_full_flag == 1 then --打印输出A0通道的AD采样值及相应的电压值 print(string.format("A0=d Voltage=%.2fv", A0_buf[1], A0_buf[1]*3.6/4096.0)) end end
注:上述代码将在上述代码中AD采样间隔设置为3000ms是为了不让print()打印太快,为了及时检测振动和敲击,您应该将此时间设置为1ms
- 10ms内值更合适。
五、实验过程及结论
传感器输出的电压值为0.02V左右 手指轻敲传感器探头检测到的电压为0.19V