proteus中仿真arduino的水位测试传感器

一、原理介绍

我们这里使用的水位传感器,只能说是一个小实验用途的水位传感器。我们首先上图

如上图所示,线没有连接,传感器由许5对裸露在外的铜线片作为传感部分,当浸入水中时这些铜线片会被水桥接。 这些被水连接起来的铜线,根据水浸没的程度,电流的流通量会不一样。 就好像一个可变电阻(就像一个电位器),其电阻根据水位的变化而变化。 电阻的变化与传感器浸没的多少相对应。所以,我们通过电阻来判断水的浸没程度,自然就是用模拟信号口来接收信号了。

二、电路原理图

如果你找不到proteus中的watersensor器件,可以在这里下载

如果我们需要连接一个显示用的LCD,可以如下连接。

三、测试代码

cpp 复制代码
#define POWER_PIN  8
#define SIGNAL_PIN A5
#define SENSOR_MIN 0
#define SENSOR_MAX 521

int value = 0; // variable to store the sensor value
int level = 0; // variable to store the water level

void setup() {
  Serial.begin(9600);
  pinMode(POWER_PIN, OUTPUT);   // configure D7 pin as an OUTPUT
  digitalWrite(POWER_PIN, LOW); // turn the sensor OFF
}

void loop() {
  digitalWrite(POWER_PIN, HIGH);  // turn the sensor ON
  delay(10);                      // wait 10 milliseconds
  value = analogRead(SIGNAL_PIN); // read the analog value from sensor
  digitalWrite(POWER_PIN, LOW);   // turn the sensor OFF

  level = map(value, SENSOR_MIN, SENSOR_MAX, 0, 4); // 4 levels
  Serial.print("Water level: ");
  Serial.println(level);

  delay(1000);
}
相关推荐
BT-BOX2 天前
第三章|新建STM32CubeMX工程生成keil工程和proteus联调仿真
stm32·嵌入式硬件·proteus
小美单片机8 天前
Proteus8.9安装保姆级教程
c语言·c++·算法·51单片机·proteus·大一新生
嵌入式×边缘AI:打怪升级日志1 个月前
C语言算术赋值运算复习笔记
c语言·stm32·单片机·算法·51单片机·proteus·代码
送外卖的工程师1 个月前
STM32 驱动五线四相步进电机(28BYJ-48+ULN2003)教程
stm32·单片机·嵌入式硬件·mcu·物联网·51单片机·proteus
xutSwIpZotzM1 个月前
Matlab Simulink 实现事件触发控制仿真并达稳定
proteus
环能jvav大师1 个月前
在Proteus中仿真PLD元器件(WinCupl及WinSim基础使用)
硬件架构·proteus·fpga
shihui20031 个月前
两个8*8点阵流水屏
c语言·51单片机·proteus
shihui20031 个月前
11.DHT11UART
c语言·51单片机·proteus
xiaobuding_QAQ2 个月前
51汇编仿真proteus8.15学习篇四(附源码)
汇编·单片机·学习·proteus
xiaobuding_QAQ2 个月前
51汇编仿真proteus8.15学习篇三(附源码)
汇编·单片机·学习·proteus