Gravity:浊度传感器

概述

浊度传感器采用光学原理,通过测量透明管道等容器中液体的透光率和散射率来综合判断溶液浊度情况,给出一个定性的分析,从而达到检测水质的目的。这款浊度传感器,采用非接触式方式检测透明管道中的液体的浑浊度,传感器采用两个红外探头,通过对射安装的方式安装于40~50mm的透明管道上,当透明管道中液体超过两个传感器探头安装高度时,即可通过光线的透过量对水质的浑浊度进行定性分析。它的优势在于为非接触式安装,不用接触检测液体,避免传感器因防水不足进水或被液体腐蚀的情况。

技术参数

通信协议

主机协议格式: 帧头 数据长度 写指令 读指令 帧尾
从机协议格式 帧头 数据长度 写指令应答 数据 帧尾
主机读脏污数据 0X18 0X05 0X00 0X01 0X0D
从机发送数据 0X18 0X05 0X00/0XAA 0X00-0XFF 0X0D
从机读取AD数据 0X18 0X05 0X00 0X02 0X0D
从机发送AD值 0X18 0X05 0X00/0XAA 0X00-0X0F/0X00-0XFF 0X0D
主机标定 0X18 0X05 0X55 0X00 0X0D
标定发送成功 0X18 0X05 0XAA 0X00 0X0D
主机清楚标定 0X18 0X05 0X5A 0X00 0X0D
清除标定成功 0X18 0X05 0X00 0X00 0X0D

连接示意图

传感器采用TTL通信方式与MCU进行通信,检测到不同浊度数据后通过串口传输数据

传感器线序定义

黑色=GND 蓝色=TX 红色=VCC 白色=RX

推荐连接示意图

此处我们使用Gravity: 4Pin传感器转接板,Gravity-4P连接线(一头PH2.0插头 一头2.54杜邦母头)将传感器与uno板连接。接线对应关系如下表。

传感器 转接板 uno
GND GND GND
VCC VOUT VCC
RX IO1 11(TX)
TX IO2 12(RX)

安装方式

两探头固定于透明管道左右两侧,保持对中。

尺寸图

硬件准备

1 x uno控制板 1 x 浊度传感器

1 x Gravity: 4Pin传感器转接板

1 x Micro USB数据线

1 x Gravity-4P连接线(一头PH2.0插头 一头2.54杜邦母头)

软件

Arduino IDE 点击下载Arduino IDE

示例代码

#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11); // RX, TX
unsigned char str[5] = { }; //串口接收数据
unsigned char col;
unsigned int distance = 0;
unsigned char a[5] = {
  0x18,0x05, 0x00, 0x01 ,0x0D
};
void setup()
{
  Serial.begin(9600);
  mySerial.begin(9600);
}
void loop() {
  mySerial.write(a, 5);
  while (!mySerial.available());
  while (mySerial.available() > 0) //检测是否有串口数据
  {
      for (int i = 0; i < 5; i++)
      {
        str[i]=mySerial.read();
        delay(5);
      }
      Serial.println(str[3],DEC);
      mySerial.flush();
  } 
  delay(500);
}

常见问题

Q1:输出百分比随浊度的变化曲线?