找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1457|回复: 0
打印 上一主题 下一主题
收起左侧

Adruino UNO R3火灾报警器

[复制链接]
跳转到指定楼层
楼主
ID:646466 发表于 2019-11-26 12:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
目标:
开发一个火灾报警装置,可以在人工设定一定温度阀值的条件下,自动探测,并发出警报。
开发硬件材料:
               1. Adruino D1 UNO R3 基于ESP8266 ESP-12F 基板  *1
               2. 无源低电平触发蜂鸣器     *1
               3. 火灾探测模块  *1
               4. 杜邦线(公对母)        *6 (同色为一组(2条),共3组不同色)
5. Micro- Usb 5p 线(一般手机连电脑线即可)
开发软件材料:
               1. Arduino 1.6.8
               注:无需安装,直接打开文件夹,找到arduino.exe运行
               2. Arduino 1.8.0
               注:需要安装。进入Arduino相关链接后,下拉菜单,找到1.8版本,点                                                        击windows,跳转之后选择 JUST DOWNLOAD.
              
               3. Windows 7 SP1 Home等任何版本
硬件连接方式:
           蜂鸣器:
                           (1)GND 连基板D1字样上排中GND接口
                           (2)I/O 连基板D1字样上排中D8口
                           (3)VCC连基板D1字样下排中3.3V口
           火灾探测器:
                            (1)G 连基板D1字样下排GND口
                            (2)+ 连基板D1字样下排5V口
                            (3)D0 连D1字样下排A0口
           基板:
                        USB口连接PC主机USB口(可以外加12V圆孔电源)
Arduion 软件使用:
预先加载ESP8266模块: 由于Adruino 1.8.0 没有在开发板中添加 NodeMCU 1.0 (ESP 12E Module)模块,则需要从1.6.8版本中复制粘贴相关文件夹.
具体步骤:
1. 在下载完Adruino 1.6.8 文件夹 盘符:\BaiduNetdiskDownload\ESPduino\arduino-1.6.8_1.5.4_espduino\arduino-1.6.8_1.5.4\hardware 中存在esp8266com文件夹,全部复制到1.8.0版的相关安装目录(我的目录:
C:\Program Files\Arduino\hardware)
2. 重新启动1.8.0 程序
Adriuno中编辑前的设置:
1. 打开1.8.0界面
2. 工具--〉开发板   NodeMCU 1.0 (ESP 12E Module)
           CPU Frequency: 80MHz
           Flash Size; 4M (3M SPIFFS)
           Upload Speed: 115200
           端口:选择USB接口连接的端口(我的是COM3)
   --------------------------------------------------------
           编辑器: AVR ISP
代码:
int threshold = 600;
void setup() {
  Serial.begin(9600);  // 初始化串口通信
  
}
  
  
void loop() {
  
  int sensorReading = analogRead(A0);// 从A0口读模拟传感器的值
  int alertReading = digitalRead(8);
  
  Serial.println("High FLAME");
  Serial.println(sensorReading);//串口输出独到的传感器的值  
  if (sensorReading > threshold){
    Serial.println("High FLAME");
   
    int thisPitch = map(sensorReading, 400, 1000, 120, 1500);
    tone(8, thisPitch, 10);
    delay(0);
        }
  else if (sensorReading == threshold){
   
    Serial.println("High FLAME");
   
int thisPitch = map(sensorReading, 400, 1000, 120, 1500); //输入的模拟值范围以一比例转换到适合值                                                                                         (此为400—1000)
                         // 音律范围为 (120 - 1500Hz)
    tone(8, thisPitch, 10);   //tone(9, thisPitch, 10);// 播放音频  接                                                                                                    arduino9号端口,thispitch为播放频率,10为维持时间
    delay(0);
}
  else{
    //digitalWrite(BuzzerPin, LOW);
    Serial.println("No flame");
    delay(0);
}
}
编辑完成之后, 点击软件主界面中 保存,然后 验证, 再 上传
注:Serial.begin(9600) 中9600,必须与串口监视器中选择频率相同,如下图:
问题:
1. 如何判断程序已经成功上传入存储模块?
2. 上传过程出现 error: espcomm_upload_men failed 错误,如何解决?
  回答:
          步骤:
1. 工具--〉端口 选择相应接口,打勾 表示成功选择
       2. 重新打开软件,上传
3. 上传过程中出现其他报错信息,如何处理?
   回答:
           步骤:
1. 重新插入usb口,或者换一个PC的usb口
2. 重新打开1.8.0软件
3. 检查蜂鸣器、火灾探测器模块与基板之间的连线,重新插拔。(会有未插紧或者接触不良情况导致问题发生)
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表