108个传感器之-金属触摸传感器(29)

108个传感器之-金属触摸传感器(29)

介绍

当触摸传感器的前金属尖端时,金属触摸传感器会发出信号。此触摸检测使其非常适合需要简单直观的用户界面的应用程序。传感器的灵敏度可以使用控制器调整,以便它可以响应不同的触摸级。该传感器非常适合互动项目,控件和其他触摸触发的应用程序。

传感器功能

该传感器的电路板上有两个功能组件:前传感器单元,它对环境进行物理测量,并将其作为模拟信号输出到第二个单元,即比较器。比较器将传感器的测量值与旋转电位计上设置的值进行比较,如果超过旋转电位计上的值,则在数字引脚和LED L1上输出逻辑高信号。

请注意:信号已反转。如果测量到高值,则会导致模拟输出端的电压值较低。顺时针增加灵敏度,逆时针减小灵敏度。

旋转电位计可按如下方式设置:

img

引脚连接

该传感器非常适合阈值测量。这意味着,一旦超过用户在旋转电位计上设置的阈值,传感器就会发出数字高信号。这里应该注意的是,数字信号是旋转电位计上设置的值与传感器上测量值的比较,然后由安装在板上的LM393比较器进行比较。旋转电位计的设定值是阈值,用于定义逻辑高信号。

数字输出:如果检测到磁场,则在此处输出信号

模拟输出:传感器单元的直接测量值

LED1:表示传感器有电压

LED2:表示检测到磁场

Arduino Sensor
5 V +V
GND GND
Pin 5 Digital Signal
Pin A2 Analog Signal

代码示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <Arduino.h>

int analog_input = A2;
int digital_input = 5;

void setup()
{
pinMode(analog_input, INPUT);
pinMode(digital_input, INPUT);
Serial.begin(9600);
}

void loop()
{
float analog_value;
int digital_value;

analog_value = analogRead(analog_input) * (5.0 / 1023.0);
digital_value = digitalRead(digital_input);

Serial.print("Analog voltage value: ");
Serial.print(analog_value, 4);
Serial.print(" V, \t Threshold value: ");

if (digital_value == 1)
{
Serial.println("reached");
}
else
{
Serial.println("not yet reached");
}
Serial.println("----------------------------------------------------------------");
delay(1000);
}

小结

待完善…

108个传感器之-金属触摸传感器(29)

http://blog.jzxer.cn/20241231/20241231-METAL-TOUCH/

作者

dev

发布于

2024-12-31

更新于

2025-01-12

许可协议

评论

Your browser is out-of-date!

Update your browser to view this website correctly.&npsb;Update my browser now

×