本帖最后由 windgo 于 2018-4-24 09:48 编辑
你真的對實做非常認真 希望等你問題都解決後可以整理步驟分享出來
這樣未來的入門者看到你的文章一定非常感動
第一个问题:开锁后遥控器一直处于发射状态,不会自动停止发射开锁射频,是不是一直处于high的状态。问题正是你说的:用High來輸出高電壓,過100ms後再輸出LOW表示放開按鍵。但这个過100ms後再輸出LOW表示放開按鍵我应该在哪里写,怎么写呢。
這個問題有幾種解法:
第一種解法 使用MQTT switch的方式,送出狀態改變的碼給sonoff
讓他改變電壓狀態,可參考下面連結
https://www.home-assistant.io/components/switch.mqtt/
這個部份我當初沒做出來 希望你做出來後也可以分享給我
也可以在論壇再問問其他大神的作法
第二種解法
如果sonoff刷了ESPEASY韌體後,有支援rest方式改變某個GPIO腳位電壓
可以使用下面網頁方式調整輸出電壓
https://www.letscontrolit.com/wiki/index.php/GPIO
#使用HA的shell_command執行下面的script即可,GPIO腳位18,1為高電壓,0為低電壓
#curl為命令介面執行網頁瀏覽的工具,sleep 1表示間隔3秒,太短會造成網頁還沒打開就跳下一步而失效
curl http://<espeasyip>/control?cmd=GPIO,18,1;
sleep 3;
curl http://<espeasyip>/control?cmd=GPIO,18,0;
這個解法的問題是,會因為開發版網頁來不及回應而來不及高電壓-->低電壓
所以有時候會失效,但是這個只要刷ESPEASY的固件
sonoff刷8265晶片(1M)固件,nodemcu刷8266晶片(4M)固件
第三種解法
自己寫一個給sonoff用的固件
使用以下程式碼去輸出高電壓與低電壓
//使用遙控器開門,100ms後輸出低電壓,18為開發版對應的GPIO 18腳位
digitalWrite(18, HIGH);
delay(100);
digitalWrite(18, LOW);
我當初是拿nodemcu開發版配合arduino去寫程式控制
這個是沒問題的,但是arduino有沒有支援sonoff的固件我不清楚
第二个问题是,按照7总帖子所说方法,只对开锁按钮操作,好像只能开锁,不能上锁。遥控器原本开锁与上锁是两个按钮,有无方法实现能开和关。我尝试,与开锁一样的方法,用另一个继电器和8266中另gpio和gnd对上锁按钮改造,但结果好像无法正常运行,是什么原因呢
?
一個按鈕使用高低電壓來模擬開與關
所以sonoff只有一路的繼電功能 只能開關一個按鈕
需要使用GPIO腳位去外接別的繼電器來能開關其他按鈕
這樣是可以的 所以你要再看看哪裡有問題
第三个问题,遥控器是要电池,能否将遥控器直接接ac—dc的正负极给遥控器供电呢。我的遥控器是3v的,而ac—dc是5v的,可不可以直接连接供电呢。
直接接dc 5v可能會燒掉 如果你不怕遙控器壞掉的話可以直接接上試試
通常會另外接一個降壓模組使用,降到3V就可以了
第四个问题,怎么样通过ibeacon实现人到家门口自动开锁呢,我反复看了您的帖子,但还是知道怎么实现。我用asuswrt device_tracker,通过自动化可以实现人到家门口自动开锁。但有两个问题:一是反应较慢。我是电梯直接到大门口,出电梯wifi就能连上,可以大概需要20秒左右才会开锁。第二,如果人本来在家里,打开手机连上wifi也会自动开门,这就有安全问题。
我實際使用自動開門確實會有你講的問題
所以我後來直接拿掉 使用指模模組辨識比較安心
我後來有在QQ看到7總的解決方法
貼上來給你看看 有需要可以再請教他
|