步骤1:将433mhz射频发射机连接到Raspberry Pi
在我的代码中,我们使用GPIO 24 ,因此将其连接到24或将代码更改为22。
步骤2:获取Python代码
https://github.com/midorineko/rpi_automation/blob/。..
这是我用于家庭自动化的livolo传输代码。它具有“关闭”功能,所有livolo灯均关闭,而另一个频率“打开”,实际上是电灯开关。
但是,在代码注释中,我提供了许多其他可能的频率,这些频率可以全部保存为变量,并在需要时使用。
如果我更改文件名或位置,则内容在下面。
导入时间
import sys import RPi.GPIO作为GPIO
off =如果sys.argv [1:] ==‘off’:NUM_ATTEMPTS = 1000 else:NUM_ATTEMPTS = 200
TRANSMIT_PIN = 24
def send_code(code):‘’‘使用GPIO发送器发送选定的代码字符串’‘’GPIO.setmode(GPIO.BCM)GPIO.setup(TRANSMIT_PIN,GPIO.OUT)在范围t(NUM_ATTEMPTS)中:对于代码中的i:如果i ==‘1’:GPIO.output(TRANSMIT_PIN,1)time.sleep(.00055); GPIO.output(TRANSMIT_PIN,0)elif i ==‘2’:GPIO.output(TRANSMIT_PIN,0)time.sleep(.00011); GPIO.output(TRANSMIT_PIN,1)elif i ==‘3’:GPIO.output(TRANSMIT_PIN,0)time.sleep(.000303); GPIO.output(TRANSMIT_PIN,1)elif i ==‘4’:GPIO.output(TRANSMIT_PIN,1)time.sleep(.00011); GPIO.output(TRANSMIT_PIN,0)elif i ==‘5’:GPIO.output(TRANSMIT_PIN,1)time.sleep(.00029); GPIO.output(TRANSMIT_PIN,0)否则:继续GPIO.output(TRANSMIT_PIN,0)GPIO.cleanup()
如果__name__ ==‘__main__’:用于sys.argv [1:]中的参数: exec(‘transmit_code(’+ str(argument)+‘)’)
#使用方法::我将其放在此处,因为似乎很少有人知道livolo开关。 #按住livolo灯光开关5秒钟,然后等待哔声。 #运行```python livolo.py on```#Livolo灯开关应再次发出蜂鸣声,表示已配对#现在运行```python livolo.py on`‘’将切换开关。 #```python livolo.py off```对所有交换机都是全局的,应该是开箱即用的。
#以下几行是交换机可以学习的可能的RF代码。 #只需将它们设置为字符串,然后将其保存到类似于“ on”或“ off”的变量即可。 #我只有1个开关,因此不需要多个RF频率。 #1,2,4,2,4,2,4,3,5,2,4,2,4,3,4,2,4,2,2,4,2,4,2,4,2,4 ,2,4,2,4,2,4,2,2,4,4,2,4,2,4,2,4,2,4,2#1,2,4,2,4,2 ,4、3、5、2、4、2、4、3、4、2、4、2、4、2、4、2、4、2、4、2、4、2、4、2、5 ,3,4,2,4,2,2,4,2,2,4,4,2#1,2,4,2,4,2,4,4,3,5,2,4,2,4,3 ,4、2、4、2、4、2、4、2、4、2、4、2、4、2、4、2、5、3、5、3、4、2、4、2、4 ,2#1,2,4,2,2,4,2,4,3,5,2,4,2,4,3,4,2,4,2,2,4,4,2,2,4,2 ,4、2、4、2、4、2、4、2、4、2、5、3、4、2、4、2、4、2#1、2、4、2、4、2、4 ,3、5、2、4、2、4、3、4、2、4、2、4、2、4、2、4、2、4、2、4、2、4、2、5、2 ,4,3,4,2,4,4,2,2,4,4,2#1,2,4,2,4,2,4,4,3,5,2,4,2,4,3,4 ,2、4、2、4、2、4、2、4、2、4、2、4、2、4、2、4、2、5、3、4、2、4、2、4、2 ,4、2#1、2、4、2、4、2、4、3、5、2、4、2、4、3、4、2、4、2、4、2、4、2、4 ,2,4,2,4,2,4,2,5,5,4,4,2,5,3,4,2,4,2#1,2,4,2,4,2,4,4,3 ,5、2、4、2、4、3、4、2、4、2、4、2、4、2、4、2、4、2、2、4、2、4、2、4、2、4 ,2,4,2,5,3,4 ,2,4,2#1,2,4,2,4,2,4,3,5,2,4,2,4,4,3,4,2,4,4,4,2,4,4,2 ,4,2,4,2,4,2,4,2,5,5,2,4,2,4,3,4,2,4,2,4,4,2#1,2,4,2,4 ,2、4、3、5、2、4、2、4、3、4、2、4、2、4、2、4、2、4、2、4、2、4、2、4、2 ,4、2、5、2、4、3、4、2、4、2、4、2
第3步:示教开关
现在使用python脚本,您应该可以通过运行安全地关闭所有livolo灯。
```python livolo.py off`‘’
为了使开关拨动正常工作,我们需要教给开关我们的RF代码之一,在这种情况下为“ on”。
1)按住livolo帮手约5秒钟,您会听到哔哔声。
2)输入```python livolo.py on`‘’
3 )听到第二声哔哔声
4)如果听到哔哔声,请运行“ python livolo.py on”以切换开关。否则,请重复步骤1-3。
步骤4:切换Livolo开关
取决于发射机的功率以及与livolo开关的距离可能必须增加或减少代码中的尝试次数。
不幸的是,Livolo仅支持TOGGLE功能和所有OFF功能,不支持单个ON功能。
警告:由于我们向拨动开关发送了200次代码,因此必然会双击灯。但是,Livolo实际的遥控器使用了类似的cr脚模式。
-
树莓派
+关注
关注
116文章
1698浏览量
105520 -
RF开关
+关注
关注
0文章
10浏览量
5513
发布评论请先 登录
相关推荐
评论