步驟1:將433mhz射頻發(fā)射機連接到Raspberry Pi
在我的代碼中,我們使用GPIO 24 ,因此將其連接到24或?qū)⒋a更改為22。
步驟2:獲取Python代碼
https://github.com/midorineko/rpi_automation/blob/。..
這是我用于家庭自動化的livolo傳輸代碼。它具有“關(guān)閉”功能,所有l(wèi)ivolo燈均關(guān)閉,而另一個頻率“打開”,實際上是電燈開關(guān)。
但是,在代碼注釋中,我提供了許多其他可能的頻率,這些頻率可以全部保存為變量,并在需要時使用。
如果我更改文件名或位置,則內(nèi)容在下面。
導(dǎo)入時間
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發(fā)送器發(fā)送選定的代碼字符串’‘’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)否則:繼續(xù)GPIO.output(TRANSMIT_PIN,0)GPIO.cleanup()
如果__name__ ==‘__main__’:用于sys.argv [1:]中的參數(shù): exec(‘transmit_code(’+ str(argument)+‘)’)
#使用方法::我將其放在此處,因為似乎很少有人知道livolo開關(guān)。 #按住livolo燈光開關(guān)5秒鐘,然后等待嗶聲。 #運行```python livolo.py on```#Livolo燈開關(guān)應(yīng)再次發(fā)出蜂鳴聲,表示已配對#現(xiàn)在運行```python livolo.py on`‘’將切換開關(guān)。 #```python livolo.py off```對所有交換機都是全局的,應(yīng)該是開箱即用的。
#以下幾行是交換機可以學(xué)習(xí)的可能的RF代碼。 #只需將它們設(shè)置為字符串,然后將其保存到類似于“ on”或“ off”的變量即可。 #我只有1個開關(guān),因此不需要多個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步:示教開關(guān)
現(xiàn)在使用python腳本,您應(yīng)該可以通過運行安全地關(guān)閉所有l(wèi)ivolo燈。
```python livolo.py off`‘’
為了使開關(guān)撥動正常工作,我們需要教給開關(guān)我們的RF代碼之一,在這種情況下為“ on”。
1)按住livolo幫手約5秒鐘,您會聽到嗶嗶聲。
2)輸入```python livolo.py on`‘’
3 )聽到第二聲嗶嗶聲
4)如果聽到嗶嗶聲,請運行“ python livolo.py on”以切換開關(guān)。否則,請重復(fù)步驟1-3。
步驟4:切換Livolo開關(guān)
取決于發(fā)射機的功率以及與livolo開關(guān)的距離可能必須增加或減少代碼中的嘗試次數(shù)。
不幸的是,Livolo僅支持TOGGLE功能和所有OFF功能,不支持單個ON功能。
警告:由于我們向撥動開關(guān)發(fā)送了200次代碼,因此必然會雙擊燈。但是,Livolo實際的遙控器使用了類似的cr腳模式。
-
樹莓派
+關(guān)注
關(guān)注
116文章
1708瀏覽量
105683 -
RF開關(guān)
+關(guān)注
關(guān)注
0文章
10瀏覽量
5525
發(fā)布評論請先 登錄
相關(guān)推薦
評論