咨询热线:027-52344235 关注我们

SKU:RB-02S185 PM2.5 传感器

来源: 网络 作者: 中亿财经网 2018-09-30 加入收藏 1,069

产品概述

细颗粒物又称细粒、细颗粒、。细颗粒物指环境空气中空气动力学当量直径小于等于 微米的颗粒物。它能较长时间悬浮于空气中,其在空气中含量浓度越高,就代表空气污染越严重。传感器是一款数字式通用颗粒物浓度传感器,可以用于获得单位体积内空气中 ~10 微米悬浮颗粒物个数,即颗粒物浓度,并以数字接口形式输出,同时也可输出每种粒子的质量数据。本传感器可嵌入各种与空气中悬浮颗粒物浓度相关的仪器仪表或环境改善设备,为其提供及时准确的浓度数据。

产品参数

基本参数

  1. 品名:传感器 空气颗粒物浓度传感器
  2. 货号:RB-02S185
  3. 品牌:奥松机器人
  4. 产地:哈尔滨
  5. 固定孔:M3*2

电气性能

1.接口类型:4P发插反接口
2.信号类型:串口信号
3.指示灯:电源指示灯
4.工作电压:5V
5.工作电流:120mA
6.电源要求:功率大于1W(电流大于200mA)
7.引脚定义:

+:电源正极
-:电源负极
TX:串口数据发送端
RX:串口数据接收端
SET:休眠设置引脚,电平
SET=1 模块工作在连续采样方式下,模块在每一次采样结束后主动上传采样数据,采样响应时间为 1S
SET=0 模块进入低功耗待机模式
RST:模块复位信号,低电平复位不使用时悬空或拉高,此引脚用户可不必操作

8.连接线:4P 传感器连接线
9.检测范围:、、PM10、μm及以上颗粒
10.工作温度:-10~60℃

使用方法

example1_Arduino

Arduino UNO 控制器
传感器扩展板 V5.0
传感器
单头防插反 4P 传感器连接线
USB 数据线
 #define LENG 31   //0x42 + 31 bytes equal to 32 bytes unsigned char buf[LENG];   int PM01Value=0;          //define  value of the air detector module int PM2_5Value=0;         //define  value of the air detector module int PM10Value=0;         //define PM10 value of the air detector module     void setup() {   (9600);         //使用串口0   Serial.setTimeout(1500);    //设置超时时间为1500毫秒(大于传感器传送数据周期1秒)   }   void loop() {   if((0x42)){    //检测到0x42时,开始读取     (buf,LENG);       if(buf[0] == 0x4d){       if(checkValue(buf,LENG)){         PM01Value=transmitPM01(buf); //count  value of the air detector module         PM2_5Value=transmitPM2_5(buf);//count  value of the air detector module         PM10Value=transmitPM10(buf); //count PM10 value of the air detector module        }                }    }     static unsigned long OledTimer=millis();       if (millis() - OledTimer >=1000)      {       OledTimer=millis();                (": ");         (PM01Value);       ln("  ug/m3");                         (": ");         (PM2_5Value);       ln("  ug/m3");                    ("PM1 0: ");         (PM10Value);       ln("  ug/m3");          ln();     }     } char checkValue(unsigned char *thebuf, char leng) {     char receiveflag=0;   int receiveSum=0;     for(int i=0; i<(leng-2); i++){   receiveSum=receiveSum+thebuf[i];   }   receiveSum=receiveSum + 0x42;      if(receiveSum == ((thebuf[leng-2]<<8)+thebuf[leng-1]))  //check the serial data    {     receiveSum = 0;     receiveflag = 1;   }   return receiveflag; }   int transmitPM01(unsigned char *thebuf) {   int PM01Val;   PM01Val=((thebuf[3]<<8) + thebuf[4]); //count  value of the air detector module   return PM01Val; }   //transmit PM Value to PC int transmitPM2_5(unsigned char *thebuf) {   int PM2_5Val;   PM2_5Val=((thebuf[5]<<8) + thebuf[6]);//count  value of the air detector module   return PM2_5Val;   }   //transmit PM Value to PC int transmitPM10(unsigned char *thebuf) {   int PM10Val;   PM10Val=((thebuf[7]<<8) + thebuf[8]); //count PM10 value of the air detector module     return PM10Val; } 

example2_Arduino

Arduino UNO 控制器
传感器扩展板 V5.0
传感器
单头防插反 4P 传感器连接线
USB 数据线
IIC1602 液晶
 #include <Wire.h>  #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x27,16,2);    #define LENG 31   //0x42 + 31 bytes equal to 32 bytes unsigned char buf[LENG];  int PM2_5Value=0;         //define  value of the air detector module  void setup() {   (9600);   //使用串口0   Serial.setTimeout(1500);    //设置超时时间为1500毫秒(大于传感器传送数据周期1秒)   }   void loop() {   if((0x42)){    //检测到0x42时,开始读取     (buf,LENG);       if(buf[0] == 0x4d){       if(checkValue(buf,LENG)){         PM2_5Value=transmitPM2_5(buf);//count  value of the air detector module       }                }    }     static unsigned long OledTimer=millis();       if (millis() - OledTimer >=1000)      {       OledTimer=millis();           ();                            ();         (0, 0);                  ("=");          (6,0);         (PM2_5Value);         (9,0);         ("ug/m3");                 }     } char checkValue(unsigned char *thebuf, char leng) {     char receiveflag=0;   int receiveSum=0;     for(int i=0; i<(leng-2); i++){   receiveSum=receiveSum+thebuf[i];   }   receiveSum=receiveSum + 0x42;      if(receiveSum == ((thebuf[leng-2]<<8)+thebuf[leng-1]))  //check the serial data    {     receiveSum = 0;     receiveflag = 1;   }   return receiveflag; }     //transmit PM Value to PC int transmitPM2_5(unsigned char *thebuf) {   int PM2_5Val;   PM2_5Val=((thebuf[5]<<8) + thebuf[6]);//count  value of the air detector module   return PM2_5Val;   } 

相关资料

链接: 密码:g622

【免责声明】本文仅代表作者本人观点,与本网站无关。本网站对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。
【版权声明】本文部分内容及图片均来自于网络/注册作者/投稿人,版权归原作者所有,如有侵权,请联系删除。邮箱:1821361971@qq.com
中亿财经网官方公众号
  • 咨询热线 400-022-9972
  • 投稿咨询QQ:2126755803
  • 问题咨询处理QQ:1821361971
  • 官方交流群:中亿财经网交流群(群:157829371)
  • 增值电信业务经营许可证:鄂B2-20170157
  • 广播电视节目许可证:鄂字第00358号
  • 网文经营许可证:鄂网文(2017)10517-260号