视频:https://v.qq.com/txp/iframe/p...要完成这个有趣的实验,你需要的材料是:其实你也可以改造220V粉丝,但是比较复杂,需要多一个继电器,这个我们下篇说改造台灯的时候再说。开始前推荐阅读上一篇文章:Python使用智能音箱通过语音控制电脑开关机,你会对控制过程有一个整体的了解。首先是改造风扇,用树莓派控制开关。我们的改造对象:完成这个有趣的实验,需要的材料有:1.电烙铁2.一个8050三极管3.一个路由器4.一个树莓派5.一个智能音箱(我用的是AmazonEchoDot2)6.一个普通的5V风扇其实也可以变身为220V的风扇,只是比较复杂,需要额外加一个继电器。下一篇说到改造台灯的时候再说。首先是改造风扇,用树莓派控制开关。我们的改造对象:像这种风扇,内部电路其实就是一个开关。它使用USB连接的5V电压,其实和树莓派的5V是一样的。所以我们可以直接使用树莓派供电。但是如何控制它的开关呢?这时候就需要8050三极管。如图所示,从8050的正(平)面看,三极管中间的那个,即b,可以作为控制端。我们可以将它连接到RaspberryPi上的GPIO端口。三极管的原理我们可以先略过,大致这样理解:当b端为低电平时,电路被阻断;b端为高电平时,电路导通;因此,通过控制GPIO口的高低电平,就可以控制其开关。我们摒弃它原来的电路,用三极管作为新的开关电路,如下图,树莓派的5V接风扇,出来后接三极管,再接负极,b端接GPIO的第12端口,如图所示。这样我们就可以通过树莓派控制Pin12#的高低电平来控制风扇的开关了。实际焊接的版本如图(是的,红色的不是必须的,不过我又延长了,黑色的是三极管,棕色的是控制端,接在电源的PIN12#上)RaspberryPi):进入后,将正负极线分别焊在风扇的正负极上即可,如图(其实我连这个都不用焊,直接接上就行了)风扇的正负极。焊接是为了防止它掉下来):如果你不知道,你可以用一个LED灯连接一个电阻来尝试控制三极管。成功之后,就可以大胆前行了!这是我们的控制代码GPIO12.py:#-*-coding:utf-8-*-importRPi.GPIOasGPIOimporttimeimportsys#BOARD编号方法,基于插座引脚号GPIO.setmode(GPIO.BOARD)#输出模式GPIO.setup(12,GPIO.OUT)defturnOn():GPIO.output(12,GPIO.HIGH)defturnOff():GPIO.output(12,GPIO.LOW)ifsys.argv\[1\]=='on':turnOn()elifsys.argv\[1\]=='off':turnOff()文件接收一个参数是开还是关。当参数为on时,运行turnOn函数,向pin12#发送高电平,风扇开启。关闭时,执行turnOff函数,给pin12#送低电平,关闭风扇。我们已经讲了如何使用树莓派来控制风扇的开关,接下来就是语音控制部分了。在上一篇《利用智能音箱语音控制电脑开关机》中已经介绍了模拟WEMO智能家居软件Fauxmo是如何与AmazonEchodot2配合使用的,这里就不再介绍了。不明白的可以仔细想想之前的帖子。推。根据前面的代码,我们知道这是一个控制风扇开关的Python文件,所以我们可以按照这样的逻辑思路来完成语音控制。"echo,turnonthefan"->Echo->向树莓派发送命令,执行Python文件,输出高电平到Pin12#,风扇启动"echo,turnoffthefan"->Echo->向树莓派发送命令Pi发送命令,执行Python文件,输出低电平给Pin12#,关闭风扇。所以这里,我们可以继续使用前面提到的commandlineplugin.py文件。speaker收到命令后,寻找一个叫fan的设备,然后发现有这个设备(在树莓派上),通过commandlineplugin.py让它执行一个文件(GPIO12.pyon/off)。在config.json中的PLUGINS下添加如下代码。注意端口可以随意设置,只要不重复即可。范是说话者认得的名字。如果改成baby,那么就开启(the)babyGPIO12.py可以放在任何地方,只要执行的时候写清楚即可。另外,如前所述,记得将传递给它的参数写在文件末尾。"MyLight":{"path":"/home/pi/Documents/fauxmo/src/fauxmo/plugins/commandlineplugin.py","DEVICES":[{"name":"Fan","port":49918,“on_cmd”:“python2/home/pi/Documents/Automatic/GPIO12.pyon”,“off_cmd”:“python/home/pi/Documents/Automatic/GPIO12.pyoff”,“state_cmd”:“”}]}大功告成,重启fauxmo,然后试试echo,打开风扇。你会发现风扇运行成功。如果您使用的是其他智能音箱,请注意Fauxmo仅适用于Echo,您可以找到适合您智能音箱的工具,让您的树莓派模拟智能家居。风扇只是一个小测试。下一篇我们要改造台灯,这才是真正的大工程。这是我们文章的结尾。如果你今天想要我们的Python教程,请继续关注我们。如果对您有帮助,请在下方点赞或观看。如果您有任何问题,可以在下方留言区留言。我们会耐心解答!Python实战宝典(pythondict.com)不只是一个合集欢迎关注公众号:Python实战宝典
