亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

污水池液位监测器

组件和用品

Arduino Nano R3
× 1
飞思卡尔 MPXV5010DP
× 1
0.96" OLED 屏幕
× 1
MCP4725 DAC
× 1
中继(通用)
× 1
电容器 1uf, .01uf, 470pf 所有 SMD
× 1
塑料透明项目框 110mm*85mm
× 1
Tygon Tubing 3/32"
× 1

关于这个项目

水槽液位监视器设计用于与我女儿家中或我的家庭监视器项目中的 Ecobee RSM-01 输入板配合使用。我添加了一个继电器以使其独立。我想要一种我觉得比超声波传感器更可靠、更容易安装的东西。为此,我开始研究压力传感器,最终遇到了飞思卡尔 MPXV5010DP。它有一个 0-5vdc 输出,适用于 0-10kPa,大约是 1020mm 的水头。

因为我想要局部指示,所以我选择了一个 OLED 模块来在设计中使用。便宜,明亮,这个有两个颜色的屏幕。为了提供接口,我为干接点输出添加了一个继电器。我为 0-5vdc 输出添加了一个 DAC(数模转换器),其功率比 MPXV5010DP 传感器更大,这也将保护传感器免受可能的接线损坏。由于我使用的是 I2C 通信,因此只需要更改软件即可向另一个 Arduino 提供数据。

为了便于连接,我设计并构建了一个定制板。它为不同的配置提供了足够的灵活性。

传感器通过聚乙烯管连接到铜管,铜管向下进入油槽。这允许您自行决定安装显示器的位置并使其远离水。

代码

  • 油槽液位监控器
Sump Level MonitorC/C++
根据需要进行解析,此版本中的额外垃圾继续进行并根据需要进行清理。
#include #include  #include #include  #include #include #define OLED_RESET 4Adafruit_SSD1306 display(OLED_RESET);#if (SSD1306_LCDHEIGHT !=64)#error("高度不正确,请修复 Adafruit_SSD1306.h!");#endac4da2fruit;int 中继引脚 =5; // 用于继电器报警输出int analogPin =0; //测量DAC输出电压int v1 =0; // MPXV5010int v2 =0 的 ADC 输出; // dac 输入的缩放从 PS 输入转换为 dac inputint v3 =0; //用于从 PS inputint v4 =0 的 mm 转换; //对于来自 PS inputint v5 =0 的深度百分比; // arduinoint v6 =0 读取的 dac 输出; //用于从 PS inputfloat v7 =0 进行 mV 转换; //从毫米转换为inchesint v8 =0; // 消除破坏显示的英寸小数点 int offSet =40; //由arduinoint maxSet =1015测量的0 kPa输出; //由arduinoint maxHeight =1020测量的10 kPa输出; // 从正常水位到盖子的水坑深度,单位为 mmint 范围 =(maxHeight * 0.8) + offSet;int alarmHeight =12; // 以英寸为单位的报警高度// 对于 MPXV5010DP 压差传感器int analogPin2 =1;float divisor =25.4; //用于将显示转换为inchesvoid setup() { Serial.begin(9600); Serial.println("带DP传感器的DAC测试"); // 默认情况下,我们将在内部从 3.3v 线生成高压! (整洁!) display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // 使用 I2C addr 0x3D(对于 128x64)进行初始化 // init done // 清除缓冲区。 display.clearDisplay(); // 对于 MCP4725A0,地址是 0x60 或 0x61 dac.begin(0x60); pinMode(relayPin, OUTPUT); digitalWrite(relayPin, HIGH);}void loop() { v1 =analogRead(analogPin2);延迟(1000); if (v1  alarmHeight) { display.invertDisplay(true); digitalWrite(relayPin,LOW);} else { display.invertDisplay(false); digitalWrite(relayPin,HIGH);} display.setTextSize(2); display.setTextColor(WHITE); display.setCursor(0,0); display.println("SUMP LEVEL"); //display.setTextColor(BLACK, WHITE); // '倒置' 文本 display.setTextSize(4); display.setTextColor(WHITE); display.print(v8); display.setTextSize(2); display.println("英寸");显示。显示();延迟(500); }void serial(){ //用于调试和校准Serial.print(" PS模拟输入:"); Serial.print(v1); Serial.print(" 高度:"); Serial.print(v3); Serial.print(" mm "); Serial.print(v4); Serial.print("%"); Serial.print(" 转换电压:"); Serial.print(v6); Serial.println(" mV");}//结束

示意图

使用 Eagle 6.5.0 sump%20level.sch

制造工艺

  1. 血压计
  2. C# 变量范围
  3. DIY 环境和空气质量监测器
  4. MATRIX VOICE GOOGLE ASSISTANT – MATRIX VOICE PROJECT
  5. Weather Monitor
  6. 远程心率监测器
  7. Rover
  8. GoPiGo v2 与 Windows IoT
  9. 门级建模
  10. 使用 Arduino 制作流光溢彩监视器
  11. JW机器
  12. 如何调平车床