Micropython TurnipBit 旋转按钮控制直流电机转速(儿时记忆中的吊扇)

不知道大家是否还记得小时候家里的吊扇,一共有五个档位,通过旋转按钮控制风扇的档位,那我们今天呢就来模拟下这个系统,利用旋转按钮来控制直流电机的转速。

所需原器件:

 TurnipBit一块

 TurnioBit扩展板一块

 杜邦线若干

 usb数据线一条

 旋转按钮模块模块一个

 直流电机一个

 L298N电机驱动模块一个

实验原理:

L298N是一种高电压、大电流电机驱动芯片。该芯片采用15脚封装。主要特点是:工作电压高,最高工作电压可达46v,输出电流大,瞬间峰值电流可达3A,持续工作电流为2A,额定功率25w。内含两个H桥的高电压大电流全桥式驱动器,可以用来驱动直流电机和步进电机,继电器线圈等感性负载。采用标准逻辑电平信号控制,具有两个使能控制端,在不受输入信号影响的情况下允许或禁止器件工作有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作,可外接检测电阻,将变化量反馈给控制电路。使用L298N芯片驱动电机,该芯片可驱动一台两相步进电机或四相步进电机,也可驱动两台直流电机。

 

 

 

 

 

6.4.接线方法:

 

 

 

TurnipBit扩展板

按键模块

3V3

VCC

P5

OUT

GND

GND

   

Turnip扩展板

L298N电机驱动模块

5V

+12V

GND

GND

3V3

+5V

P0

IN3

GND

IN4

L298N电机驱动模块

直流小电机

OUT3

直流小电机某一段

OUT4

直流小电机另一段

 

 

 

6.5. 源代码:

通过TurnipBit可视化编程编写代码

  打开TurnipBit可视化编程地址http://www.turnipbit.com/

 

 

可视化编程:

 

 

源代码:

from microbit import *

speed_list = [423, 623, 1023]
pin0.write_analog(1023)
numbrt = 0
while True:
display.show(Image.YES)
if pin5.read_digital():
numbrt = numbrt + 1
if numbrt > 3:
numbrt = 1
pin0.write_analog((speed_list[int(numbrt - 1)]))
flag = str(numbrt) + str('')
display.show(flag)
sleep(5000)

 

posted @ 2018-03-20 16:27  小小su  阅读(333)  评论(0编辑  收藏  举报