查看: 2546|回复: 3

uno+Sim900整合板GBoard MQ2煤气泄漏报警器

[复制链接]
  • TA的每日心情
    擦汗
    2014-7-18 09:38
  • 签到天数: 6 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    发表于 2014-7-16 14:27:28 | 显示全部楼层 |阅读模式
    分享到:
    本帖最后由 ITEAD创易工作室 于 2014-7-16 14:30 编辑

    前两天给小伙伴们介绍了sim900扩展板ICOMSAT,反响一般,所以今天决定给大家介绍升级整合板GBoard:集mega328sim900模块于一体的arduino开发板。

    gboard.jpg

    今天我们用GBoard来做一个有毒气体检测报警器。(PIR人体红外传感器用的太多了,想要用PIR的小伙伴可以看这个帖子:

    制作有毒气体检测报警器需要用到的配件有:

    IMG_0071.JPG

    GBoardsim900扩展板ICOMSAT一样,需要9V/2A的供电。所以还需要加一个适配器, 还有手机sim卡(仅支持联通/移动2G卡):

    QQ图片20140716141932.jpg QQ图片20140716141900.jpg

    代码如下:
    1. #include <SoftwareSerial.h>

    2. SoftwareSerial mySerial(2, 3); // RX, TX 使用软串口看数值

    3. const int thresholdvalue=700; //MQ2目标值,一般空气环境是100左右。

    4. void setup()
    5. {
    6.    
    7.   pinMode(6, OUTPUT); //D6是Gboard的sim900模块启动脚,使用软件自启动
    8.   pinMode(A1, OUTPUT);
    9.   digitalWrite(6,HIGH);
    10.   delay(1000);
    11.   digitalWrite(6,LOW);
    12.   delay(10000);
    13.   delay(5000);  

    14.   Serial.begin(9600);
    15.   mySerial.begin(9600);
    16. }

    17. void loop()
    18. {
    19.   int sensorValue = analogRead(A0); //使用AO读取MQ2的值
    20.   {
    21.   digitalWrite(A1,HIGH);//使用A1显示LED状态,HIGH是点亮

    22.   Serial.println("ATD12345678900;\r");//12345678900改成你要拨打的电话号码
    23.   mySerial.print("ATD12345678900;\r");//串口显示拨打出号码
    24.   
    25.   delay(5000);
    26. //以下是避免重复拨打号码,当值超过700,只打一次。等降到650以下才进入主程序继续监测
    27.   while((analogRead(A0)-thresholdvalue)>0)
    28.   Serial.println(analogRead(A0));
    29.   while((thresholdvalue-analogRead(A0))<50)
    30.   Serial.println(analogRead(A0));
    31. }
    32.   
    33.   else
    34.   {
    35.     Serial.println(analogRead(A0));     
    36.     digitalWrite(A1,LOW);//MQ2的值没有超过700,LED灭
    37.   }

    38. }
    复制代码
    烧写前,确定GBoard跳帽如下图:(关于跳帽,在这里下载GBoard产品手册、原理图和库文件:http://pan.baidu.com/s/1gdDuBn1

    IMG_0074.JPG

    MQ2接在A0LED接在A1。接上9V/2A适配器和FOCA转串板,插入手机sim,最终如图:

    IMG_0067.JPG

    foca转串板把代码烧写进GBOARD,如图插入:(板子背面有引脚定义)

    QQ图片20140716111701.jpg

    Foca驱动安装跟uno一样,这里略过不谈。GBoard烧写时“board类型”选择Arduino Duemilanove w/atmega328

    程序烧写进去后,GBoardsim900模块自动开启,可以打开串口监视窗口查看MQ2的值。MQ2需要有一个通电加热过程,需要1分钟左右达到稳定状态,所以刚打开串口监视窗口的时候是没有数据的,稍等片刻即可。

    现在,我们就可以用一个打火机来测试了。

    IMG_0070.JPG
    演示视频:




    回复

    使用道具 举报

  • TA的每日心情
    擦汗
    2014-7-18 09:38
  • 签到天数: 6 天

    连续签到: 1 天

    [LV.2]偶尔看看I

     楼主| 发表于 2014-7-16 14:31:33 | 显示全部楼层
    温馨提示:FOCA烧写前需要把开关拨到3.3v的那边。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2014-7-18 09:38
  • 签到天数: 6 天

    连续签到: 1 天

    [LV.2]偶尔看看I

     楼主| 发表于 2014-7-17 10:51:13 | 显示全部楼层
    ITEAD sim900 ICOMSAT 家居安全防盗报警器
    https://www.cirmall.com/bbs/foru ... 1&fromuid=63583
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2014-7-18 09:38
  • 签到天数: 6 天

    连续签到: 1 天

    [LV.2]偶尔看看I

     楼主| 发表于 2014-8-28 11:41:36 | 显示全部楼层

    不好意思,帖子上的代码少了一行if,所以else编译不过。
    void loop()
    {
      int sensorValue = analogRead(A0); //使用AO读取MQ2的值
    if((sensorValue-thresholdvalue)>0)//漏掉的一行if加在这里
      {
      digitalWrite(A1,HIGH);//使用A1显示LED状态,HIGH是点亮
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-11-26 00:52 , Processed in 0.147547 second(s), 22 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.