基于python的智能风扇设计_[Micropython]TPYBoardV102 DIY智能温控小风扇

1.实验目的

1. 学习在PC机系统中扩展简单I/O 接口的方法。

2. 进一步学习编制数据输出程序的设计方法。

3. 学习DS18B20的接线方法,并利用DS18B20检测当前温度。

4.学习三极管9014的用法。

5.通过18B20智能控制直流电机驱动小风扇。

2.所需元器件

TPYBoard板子一块

直流电机一个

面包板一块

数据线一条

三极管9014(NPN)一个

杜邦线若干

3.学习DS18B20的接线方法,检测当前温度

先看一下DS18B20针脚含义,如上图:

TPYBoard的针脚与DS18B20的针脚对应关系如下:

还是看不明白的话,直接上针脚编号

接线ok后,在MicroPython的源码目录中,进入drivers\onewire\目录,然后将目录下的文件ds18x20.py和onewire.py复制到PYBFLASH磁盘的根目录。复制文件后要安全退出磁盘,然后重新接入,不然找不到文件,即可运行main.py文件了,打印温度,即可用Putty看到当前的温度。

main.py源代码:

#main.py

importpybfrom pyb importPinfrom ds18x20 importDS18X20

Pin("Y11",Pin.OUT_PP).low()#GND

Pin("Y9",Pin.OUT_PP).high()#VCC

pyb.delay(100)

DQ=DS18X20(Pin('Y10'))#DQ

whileTrue:

tem=DQ.read_temp()print(tem)

pyb.delay(1000)

4.三极管的原理

在这里我们用到三极管的开关与放大功能,给基极不同电平控制直流电机电流的通断,以达到控制电机转动的目的,根据三极管特性我们将集电极连接TPYBoard的3.3v,发射极连接电机一极,电机另一极接TPYboard的GND,通过温度传感器18B20检测温度,当温度到达指定温度时,通过TPYBoard控制三极管基极的电平,驱动直流电机转动。

源代码

我们按照上面的步骤做完以后,然后通电,编写main.py文件,即可通过温度控制风扇的转动,具体代码如下:

#main.py

importpybfrom pyb importPinfrom ds18x20 importDS18X20

Pin("Y9",Pin.OUT_PP).high()#VCC

Pin("Y11",Pin.OUT_PP).low()#GND

x1 = Pin('X1', Pin.OUT_PP)

pyb.delay(100)

DQ=DS18X20(Pin('Y10'))#DQ

while 1:

tem=DQ.read_temp()if tem > 18:

x1.value(1)else:

x1.value(0)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值