• 发文
  • 评论
  • 微博
  • 空间
  • 微信

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

易心STEAM编程 2019-05-17 10:51 发文

之前的文章介绍了温度传感器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维科号作者发布,不代表OFweek维科号立场。如有侵权或其他问题,请及时联系我们举报。
2
评论

评论

    相关阅读

    暂无数据

    易心STEAM编程

    分享STEAM教育课程内容,生态...

    举报文章问题

    ×
    • 营销广告
    • 重复、旧闻
    • 格式问题
    • 低俗
    • 标题夸张
    • 与事实不符
    • 疑似抄袭
    • 我有话要说
    确定 取消

    举报评论问题

    ×
    • 淫秽色情
    • 营销广告
    • 恶意攻击谩骂
    • 我要吐槽
    确定 取消

    用户登录×

    请输入用户名/手机/邮箱

    请输入密码