技术创意与创新专区
作者 ?????如何用Arduino自我打造一款温度计?
发布时间:2016-2-1 下午4:16
提问者:蒲公英在天涯

Arduino 是创客们DIY的必备法宝。借助Arduino 开发板,创客们通过简单的代码程序就可以实现一些常用电子设备的运行功能。

硬创邦此前曾发布过用Arduino制作的 “乌龟机器人”、“家庭报警系统”以及“数控绘图仪”项目,今天,创新林创客空间为大家带来了一款Arduino 温度计。这款温度计既可以作为日常温度计使用,又可以进行家用装饰,特别适合爱画画的小创客们动手制作。那么,它究竟是如何实现的呢?

?

1.jpg
最终作品照



一、材料准备

Arduino UNO? x1
Arduino扩展板? x1
Lm35温度传感器? x1
9g舵机? x1
导线若干
A4白卡纸? x1

?

2.jpg
所需材料



二、盒子制作

准备好工具和卡纸

首先,我们要用尺子和铅笔把要做的方盒子的平面图按照下面示意图,在纸上画出来,盒子的尺寸大小按照可以放得下一个Arduino板的尺寸,这里非常考验空间想象力和盒子的构造。

?

3.jpg
方纸盒子展开图


画好之后,我们就可以用剪刀把它剪下来,如下图所示:
?

5.jpg
剪好后的展开图


大家可以看到上面有一个小水滴样子的指针,这个非常简单,大家在剩下的卡纸料上随手剪一个上色就行。

接下来直接按照原来画的边线进行对折即可,记得有画线的一面向里面,这样可以保证外观的整洁度。在这里大家记得拿出自己的彩色笔哦!给它设计一个好看的涂装,刻度划分可以自己去设计。

?

6.jpg
盒子制作完成



三、Arduino电路搭建及组装

完成上一步的盒子制作之后,这一步我们要完成的就是整个作品的核心部分,传感器连接与电路搭建,连接图如下所示:

?

7.jpg
电路连接图

?

8.jpg
电路实物连接


连接好电路之后,把舵机装在盒子里面,安装前要在盒子前面开一个小孔,然后用热熔胶把舵机固定在纸盒上,如图所示:
?

9.jpg
安装舵机


小水滴指针是如何安装到舵机上的呢?这里就要用到舵机自带的舵盘啦!直接用双面胶就把指针固定在舵盘上了,请看下图:
?

10.jpg
多盘与指针安装

?

11.jpg
安装舵机、舵盘、指针到纸盒


在这里就完成了硬件的所有制作,接下来就是写驱动程序。
?


四、程序编写

Arduino驱动程序编写,我们还是用到Arduino IDE来写这个程序,下面就是这个美美的Arduino温度计的驱动程序,就让我们一起DIY来让这个寒冷的冬天变更即视。下面这个代码大概的运行的原理是先通过LM35温度传感器采集到模拟值,将模拟值通过变换公式转换出温度值,因为表盘用的是舵机,所以这里会用到一个映射函数map,将温度值映射到相应的角度值,从而控制指针旋转到相应的位置。代码如下:

??? #include <Servo.h>

??? #include <math.h>

??? Servo myservo;


??? int a,val;?? //定义变量

??? float temperature;???? //定义浮点型变量,用于存放转换后的温度

??? int B=3975;????????????? //热敏电阻的基础参考值B

??? float resistance;


??? void setup()

??? {

????? myservo.attach(4); //定义舵机驱动端口

??? }

??? void loop()

??? {

????? a=analogRead(0); //读取温度传感器的模拟值

????? resistance=(float)(1023-a)*10000/a; //计算出传感器的电阻值

????? temperature=1/(log(resistance/10000)/B+1/298.15)-273.15;//将电阻值转换成温度值

????? delay(500); //延时500毫秒

????? val=map(temperature,0,50,0,180); //将转换的温度值映射到舵机的角度值

????? myservo.write(val); //舵机转到相应的角度

???? }



文/创新林创客空间
来源:雷锋网

第1楼: ?????回复主题:如何用Arduino自我打造一款温度计?
发布时间:2016-2-18 上午8:37
提问者:JackyWu168
Good
第2楼: ?????回复主题:如何用Arduino自我打造一款温度计?
发布时间:2016-2-18 上午10:05
提问者:寻觅虚无
看看
第3楼: ?????回复主题:如何用Arduino自我打造一款温度计?
发布时间:2016-2-18 上午11:45
提问者:邵子扬
很不错!
第4楼: ?????回复主题:如何用Arduino自我打造一款温度计?
发布时间:2016-2-29 下午4:18
提问者:liyine
不错
此文章源自《电子工程专辑》论坛:
http://forum.eet-cn.com/FORUM_POST_10013_1200293444_0.HTM
返回帖子页面 打印这个帖子... 打印