查看: 2818|回复: 18

[未解决] arduino uno开发板怎样使用ZE08-CH2O甲醛传感器获取甲醛浓度值?

[复制链接]
  • TA的每日心情

    2019-6-2 08:50
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    发表于 2019-5-7 19:06 | 显示全部楼层 |阅读模式
    有没有大神做过使用arduino uno开发板来ZE08-CH2O甲醛传感器数据的?求分享一下经验,弄了好久都没搞清楚应该怎样弄,纯新手小白~感谢!
  • TA的每日心情
    开心
    2020-7-4 08:58
  • 签到天数: 148 天

    [LV.7]常住居民III

    发表于 2019-5-7 22:41 | 显示全部楼层
    传感器手册有连线和例程,在那个基础上改一下
  • TA的每日心情

    2019-6-2 08:50
  • 签到天数: 8 天

    [LV.3]偶尔看看II

     楼主| 发表于 2019-5-8 16:19 | 显示全部楼层
    本帖最后由 lina_lyx 于 2019-5-8 16:21 编辑
    tigerzq 发表于 2019-5-7 22:41
    传感器手册有连线和例程,在那个基础上改一下

    C:\Users\agatha\Desktop\1.png
    C:\Users\agatha\Desktop\2.png
    C:\Users\agatha\Desktop\3.png
    C:\Users\agatha\Desktop\4.png
    我买的传感器文档里只有这些内容,可以稍微讲具体一点吗?硬件基础不是很好
    4.png
    3.png
    2.png
    1.png
  • TA的每日心情
    难过
    2019-5-15 17:26
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2019-5-15 17:20 | 显示全部楼层
    我也是新手求教一下。谢谢各位大佬

    该用户从未签到

    发表于 2019-5-15 18:00 | 显示全部楼层
    有UART接口,所以这个传感器是可以串口直接输出的,把rx tx交叉接到板子上,再接上电源就行了吧
    程序参考:
    [mw_shl_code=arduino,true]void setup() {
      // 初始化串口
      Serial.begin(9600);
    }

    void loop() {
      // 读取输入的信息
      char ch=Serial.read();
      // 输出信息
      Serial.print(ch);
      delay(1000);
    }[/mw_shl_code]

    来源https://www.arduino.cn/thread-76060-1-1.html

    该用户从未签到

    发表于 2019-5-15 18:02 | 显示全部楼层
    好像还有模拟输出的引脚,接到板子的模拟输入引脚应该也能读吧,用analogRead函数试试。没用过你那款哎,就着你的资料说说而已
  • TA的每日心情
    慵懒
    2019-5-27 09:45
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    发表于 2019-5-15 18:35 来自手机 | 显示全部楼层
    看到过一个相似的   不过一直得的都不是十六进制的数值             #include <SoftwareSerial.h> SoftwareSerial mySerial(12, 13); // RX, TX String comdata=""; unsigned char DEC1,DEC2;float o3Val; int CheckSum; byte Command[]={0xFF,0x01,0x78,0x40,0x00,0x00,0x00,0x00,0x47};//主动上传 byte Command1[]={0xFF,0x01,0x78,0x41,0x00,0x00,0x00,0x00,0x46};//问答上传 byte Command2[]={0xFF,0x01,0x86,0x00,0x00,0x00,0x00,0x00,0x79};//问答读取 void setup() { Serial.begin(9600); mySerial.begin(9600); delay(1000); mySerial.write(Command,9); } void loop() {  while(mySerial.available()>0){     comdata+=char(mySerial.read());      delay(2);   }   if(comdata.length()>0){   CheckSum=0x00;   for(int x=0;x<comdata.length();x++){   if(x<8)CheckSum+=comdata[x];   //计算校验和   myPtHex(comdata[x]);  //16进制串口输出。接收的是什么代码。   }      CheckSum=~(CheckSum&&0xFF);  //取反   if(comdata[8]==CheckSum){    DEC1=comdata[4];    DEC2=comdata[5];    int o3val=DEC1*256+DEC2;    o3Val=o3val/1000.0;     }   Serial.println(o3Val,3);   comdata="";  }    } void myPtHex(int g){ // 把 g 最右邊 byte 印成 Hex 倆位   int a = g& 0xf0;  // 左邊 4 bits   a = a >> 4;  // 右移 4 bits   int b = g& 0x0f;  // 右邊 4 bits   char c = a < 10 ? a + '0' : a + 'A' - 10;   Serial.write(c);   c = b < 10 ? b + '0' : b + 'A' - 10;   Serial.write(c); }   
  • TA的每日心情
    慵懒
    2019-5-27 09:45
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    发表于 2019-5-15 18:36 来自手机 | 显示全部楼层
    不知道楼主解决了没?   我也刚好在做这个  也不会做
  • TA的每日心情

    2019-6-2 08:50
  • 签到天数: 8 天

    [LV.3]偶尔看看II

     楼主| 发表于 2019-5-17 11:01 | 显示全部楼层
    Zack97 发表于 2019-5-15 18:02
    好像还有模拟输出的引脚,接到板子的模拟输入引脚应该也能读吧,用analogRead函数试试。没用过你那款哎,就 ...

    我看它有默认自动上传的模式,所以就用你说的这个函数读了模拟量,读出来都是八十多,不知道应该怎么转换成正常的那种甲醛浓度值,谢谢您的帮助
  • TA的每日心情

    2019-6-2 08:50
  • 签到天数: 8 天

    [LV.3]偶尔看看II

     楼主| 发表于 2019-5-17 11:04 | 显示全部楼层
    @hjk8765 发表于 2019-5-15 18:36
    不知道楼主解决了没?   我也刚好在做这个  也不会做

    我是看这个传感器有自动上传以及问答上传两种模式,默认是自动上传,那我就理解成它其实会自动发送数据到各输出引脚,我就直接用analogRead()函数去读了模拟引脚,但是读出来的数据都是十以上,不知道要怎么转换成正常那种甲醛浓度值。
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    热门推荐

    5分钟带你快速了解新一代开发板:M5STACK
    5分钟带你快速了解新一代
    一、什么是M5Stack M5Stack是一种模块化、可堆叠扩展的开发板,每个模块
    创客火首发无人机编队套装,开启不一样的人工智能教育
    创客火首发无人机编队套装
    2017年国务院发布《新一代人工智能发展规划》,提出要广泛开展人工智能科普活动,在中
    求解用arduino 让WS2812全灯带无特效常亮并做呼吸灯效果
    求解用arduino 让WS2812全
    本人小白,初学arduino,一边逛论坛一边看网上视频教程,看得比较杂 找了很久也没找
    想通过blinker按钮按住常亮灯松手熄灭功能
    想通过blinker按钮按住常
    1.测试了APP里面的开关按键,可以实现按下灯亮再按一下灯灭。2.做第2步测试的时候,想
    新手求助!blinker同步到米家,但手机里的小爱控制不了ESP8266
    新手求助!blinker同步到
    搞了两个晚上还是没解决,请大神帮忙看看 我的手机是苹果手机,下了点灯,米家,小爱
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   
    快速回复 返回顶部 返回列表