前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Windows on Device 项目实践 4 - 智能风扇制作

Windows on Device 项目实践 4 - 智能风扇制作

作者头像
ShiJiong
发布2018-01-10 17:06:57
6630
发布2018-01-10 17:06:57
举报

在前面的文章中,我们已经学习并且利用Intel Galileo开发板和Windows on Device制作了火焰报警器、感光灯和PWM调光灯。在这个项目中,我们来利用温度传感器和直流电机,完成一个简单的智能风扇的制作。

1. 温度传感器

LM35 是很常用且易用的温度传感器元件,在传统的Arduino项目中,只需要一个LM35元件和一个模拟接口就可以实现,难点在于算法上的将读取的模拟值转换为实际的温度。但是针对Galileo就不行,因为Galileo对噪声和波动更加敏感,需要额外添加电阻和滤波电容。详细请参考下面的硬件连接一节。

2. 直流电机

这里使用普通的5V供电的直流电机就可以,关键在于,Galileo的驱动能力有限,需要使用一个三极管来驱动直流电机。详细可以参考下面的硬件连接一节。

3. 元器件和硬件连接

这次实践项目需要使用的元器件有:

•温度传感器:LM35 一个 •5V直流电机:一个 •电阻:220欧姆、330欧姆各一个 •二极管:一个 •三极管:9013 一个 •连接线:若干 •面包板:一块

1)温度传感器的连接

LM35有三个引脚,分别是GND、Vout和Vs,连接地、Galileo的A0和5V引脚。这里需要在Vout输入和地之间加入一个220欧姆的电阻,同时需要在LM35电源输入的引脚附近加一个0.1uF的瓷片电容,用于滤除电源的干扰。

2)直流电机的连接

三极管9013的集电极上接直流电机,用Galileo的数字引脚11来控制三极管的基极,射级直接接地。需要注意的是,在直流电机两端放一个二极管,用于在断电后,剩余能量的释放。

最终,其硬件连接如下图所示。

image
image
image
image

4. 实验原理

Galileo的A0口不断采集温度,对返回值进行判断,如果超过一定范围,就开启直流电机。如果温度没有超过设定值,就关闭直流电机。其流程如下。

image
image

5. 源代码解析

#include "stdafx.h" #include "arduino.h"

int _tmain(int argc, _TCHAR* argv[]) {     return RunArduinoSketch(); }

int MOTOR_PIN = 11; //定义数字接口11 控制直流电机 int TEMP_PIN = A0; //定义模拟接口0 连接LM35 温度传感器

void init_motor() {     pinMode(MOTOR_PIN, OUTPUT);     analogWrite(MOTOR_PIN, 0); }

void setup() {     // TODO: Add your code here     init_motor(); // 初始化直流电机控制引脚 }

// the loop routine runs over and over again forever: void loop() {     // TODO: Add your code here     int val;//定义变量     int dat;//定义变量     val = analogRead(TEMP_PIN);// 读取传感器的模拟值并赋值给val     dat = (125 * val) >> 8;//温度计算公式        Log(L"Tep:");     Log(L"%d", dat);//显示dat 变量数值     Log(L"C\r\n");     if (dat > 21)   //温度判断,根据实际情况设定     {         Log(L"Start DC Motor\r\n");         analogWrite(MOTOR_PIN, 100);         delay(3000);     }     else     {         Log(L"Stop DC Motor\r\n");         analogWrite(MOTOR_PIN, 0);         delay(3000);     }

}

6. 调试结果

启动Galileo,利用TelNet建立连接,然后点击调试。程序就会通过网口下载到Galileo上。在温度没有达到设定的阈值之前,风扇不转,温度超标以后,风扇工作。调试图片如下。

IMG_0575
IMG_0575
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2015-01-29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 温度传感器
  • 2. 直流电机
  • 3. 元器件和硬件连接
    • 1)温度传感器的连接
      • 2)直流电机的连接
      • 4. 实验原理
      • 5. 源代码解析
      • 6. 调试结果
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档