侵权投诉
订阅
纠错
加入自媒体

物联网课程系列:制作可爱的鲨鱼温度计

之前的文章介绍了温度传感器LM35的使用方式,这次的项目将教大家如何加上伺服马达,制作可爱的箭头式温度计!

鲨鱼头温度计

材料清单:

1.Arduino UNO R3

2.LM35 模拟温度传感器

3.3条杜邦线(公/母)

4.5条杜邦线(公/公)

5.SG90 9G服务器

6.迷你面包板

接线图如下:

首先,我们要学习如何将温度转换成角度,假设温度感测范围是0~40度,而伺服马达旋转范围是0~180度。我们希望当温度是0度时,伺服马达旋转至0度;温度是40度时,伺服马达旋转至180度;以此类推,温度20度时,伺服马达旋转至90度。

那该如何做到呢?Arduino有一个很好用的数学函式:map(),只要三个步骤就可以轻松转换。

1.输入数值来源

2.设定来源数值的范围(最大值与最小值)

3.输入希望转换后的数值范围(最大值与最小值)

map(输入数值来源,来源最小值,来源最大值,转换后的最小值,转换后的最大值)

将刚刚的描述实际套用将会是:

map( 量测温度 , 0 , 40 , 0 ,180 )

程序完成后,接下来就是制作可爱的温度计啦,您可以用纸(最好硬一点)、厚纸板、木板…等,与剪刀或美工刀制作。若是使用画纸,还可以涂上自己喜欢的颜色喔!本文是利用雷切机直接大切一波,下图就是小编的偷懒品。

第一次测试发现指针旋转方向与温度相反

实际装上去测试后发现,指针旋转方向似乎与温度相反。当温度越高时,越偏向左边;温度越低时,反而越转向右边,这样跟鲨鱼嘴里的刻度根本相反呀!

如果您也跟小编遇到相同的情况,没关系!还记得map() 的用法吗?只要将转换的最大值与最小值交换即可:

map( 量测温度 , 0 , 40 , 180 ,0 )

如此一来,当温度为0度时,马达转向180,反之当温度为40度时,马达转向0。修改程序后重新上传~终于完成啰!

修改程序后的完成品

声明: 本文由入驻维科号的作者撰写,观点仅代表作者本人,不代表OFweek立场。如有侵权或其他问题,请联系举报。

发表评论

0条评论,0人参与

请输入评论内容...

请输入评论/评论长度6~500个字

您提交的评论过于频繁,请输入验证码继续

暂无评论

暂无评论

文章纠错
x
*文字标题:
*纠错内容:
联系邮箱:
*验 证 码:

粤公网安备 44030502002758号