7841浏览
查看: 7841|回复: 1

温度报警器(李舒欣)

[复制链接]
在温度传感器,LED闪烁和蜂鸣器报警的基础上,将三者结合,制作出温度报警器。
实验器材
1 X  LM35温度报警器(李舒欣)图2
1 X  蜂鸣器温度报警器(李舒欣)图3
1 X  LED温度报警器(李舒欣)图4
1 X  220欧电阻温度报警器(李舒欣)图5
电路图温度报警器(李舒欣)图6

程序代码
  1. float sinVal;            
  2. int toneVal;
  3. int ledpin = 5;
  4. unsigned long tepTimer ;   
  5. void setup(){
  6.     pinMode(8, OUTPUT);        // 蜂鸣器引脚设置
  7.     Serial.begin(9600);    //设置波特率为9600 bps
  8. pinMode(ledpin, OUTPUT);    // LED引脚设置
  9. }
  10. void loop(){
  11.     int val;               // 用于存储LM35读到的值
  12.     double data;          //用于存储已转换的温度值
  13.     val=analogRead(0);   //LM35连到模拟口,并从模拟口读值
  14.     data = (double) val * (5/10.24);  // 得到电压值,通过公式换成温度
  15.      
  16.     if(data>27){        //  如果温度大于27,蜂鸣器响   
  17.           digitalWrite(ledpin,HIGH) ;  // LED亮
  18.           for(int x=0; x<180; x++){
  19.             //将sin函数角度转化为弧度
  20.             sinVal = (sin(x*(3.1412/180)));
  21.             //用sin函数值产生声音的频率
  22.             toneVal = 2000+(int(sinVal*1000));
  23.             //给引脚8一个
  24.             tone(8, toneVal);
  25.             delay(2);
  26.      }   
  27.     } else {    // 如果温度小于27,关闭蜂鸣器
  28.            noTone(8);          //关闭蜂鸣器
  29.     }
  30.      
  31.     if(millis() - tepTimer > 500){     // 每500ms,串口输出一次温度值
  32.              tepTimer = millis();
  33.              Serial.print("temperature: ");     // 串口输出“温度”
  34.              Serial.print(data);               // 串口输出温度值
  35.              Serial.println("C");              // 串口输出温度单位
  36.        }
  37. }
复制代码

实物连接
温度报警器(李舒欣)图1

注意事项
一.在连接LED时需要一个限流电阻,让LED不烧坏
二.  有源蜂鸣器与无源蜂鸣器的区别:
* 注意:这里的“源”不是指电源,而是指震荡源。
也就是说,有源蜂鸣器内部带震荡源,所以只要一通电就会叫
而无源内部不带震荡源,所以如果用直流信号无法令其鸣叫。必须用2K-5K的方波去驱动它
有源蜂鸣器往往比无源的贵,就是因为里面多个震荡电路
无源蜂鸣器的优点是:
1. 便宜
2. 声音频率可控,可以做出“多来米发索拉西”的效果
3. 在一些特例中,可以和LED复用一个控制口
有源蜂鸣器的优点是:程序控制方便。



大连林海  初级技神

发表于 2015-4-12 12:46:47

再把学生的制作过程发上来 更好
回复

使用道具 举报

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

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail