資料介紹
描述
我想告訴你我在 Raspberry pi 上使用 Home Assistant(以下簡稱 HA)的一點經(jīng)驗。
當然,其中一個原因是希望從您的評論中了解我在實施此方案時“做錯了什么”。
配置上述功能的方式有三種:“沒有問題”、“短”和“獨立”。在第一種情況下,您可以從網(wǎng)站https://ViaMyBox.com/downloadpage下載開發(fā)的圖像
對于您的 Raspberry pi,您可以在已配置的表單中查看所有內(nèi)容。在第二種情況下,您可以從站點或從 github 項目下載 zip,安裝它,然后通過實用程序 (sudo via-setup.sh) 安裝 HA docker 映像,以查看所有設(shè)置。最后,第三種方法是設(shè)置“一切都以你自己的方式”:從網(wǎng)站或 githab 項目或本教程中獲取有用的東西。您將在文章末尾找到所有這些內(nèi)容的鏈接。
假設(shè)您已經(jīng)有一個正在運行的家庭助理 (HA)。在本文中,我們將只考慮創(chuàng)建 yaml 配置和描述導(dǎo)致特定操作的規(guī)則和條件的順序方面。在我們的例子中,動作是“安全”模式的連接和腳本的觸發(fā),在運動傳感器激活后 5 秒內(nèi)開始拍照。因此,家庭助理通過郵件發(fā)送拍攝的照片。我不是 yaml 或為 Home Assistant 創(chuàng)建配置方面的專家,但按照工作示例,我得到了一個我想分享的工作配置。
我們將聯(lián)系的所有文件,我將在文章末尾列出以方便考慮。我們只會談?wù)摷彝ブ怼?/font>但是,如果您有任何問題 - 歡迎您!
最后,我的一切看起來像這樣(紅色突出顯示了我們將在文章中考慮的內(nèi)容):
自然,我使用樹莓派作為平臺。我的配置文件路徑是 /usr/share/hassio/homeassistant/ 。您的配置文件的路徑可能與我的路徑不同。那時,我有 Home Assistant 0.101.3。我們會對這個目錄下的配置文件感興趣:configuration.yaml 和automation.yaml。
每次更改這些文件后,請務(wù)必記住,您需要在我們更改后檢查配置,以了解其中可能出現(xiàn)的錯誤。這是在 Home Assistant 儀表板 -> 配置 -> 服務(wù)器控制 -> 檢查配置中完成的。然后,在同一個地方,如果檢查成功,我們會執(zhí)行重新加載自動化和重新加載腳本。而且,如果有疑問,服務(wù)器管理會在同一選項卡中重新啟動配置更新。
HC-SR501 運動傳感器連接到 Raspberry pi GPIO 總線。有必要將三個接觸線正確連接到 GPIO,我們將能夠使用我們的傳感器。傳感器具有三個觸點:電源 gcc (+)、零接地 (-)、控制觸點(數(shù)據(jù))。閱讀 GPIO 的描述后,我將它們連接到我的樹莓派,如下所示。我將 HC-SR501 連接到 GPIO 連接器:pir#2 – 5.5 vvcc;pin#26(13 行)——傳感器的數(shù)據(jù)觸點和 pin#6-GND (-)。
作為照片源,我將 USB 相機或 csi 相機與 mjpg-streamer 結(jié)合使用。畢竟,由您決定將哪個 bash 腳本附加到 HA。
現(xiàn)在讓我們在 configuration.yml 中描述我們的傳感器,比方說,通過命令行:
須藤納米/usr/share/hassio/homeassistant/configuration.yaml
雖然使用帶有winscp的notepad ++可能更方便..
讓我們描述 HC-SR501 的設(shè)置順序如下:
binary_sensor:
- platform: rpi_gpio
#name: HC-SR501
ports:
7: Sensor HC-SR501
invert_logic: false
應(yīng)該注意的是,在描述與傳感器控制(數(shù)據(jù))觸點的連接的行中的設(shè)置起到了重要的作用:pin#7
端口:
????? 7:傳感器HC-SR501
家庭助理有一個用于啟用家庭安全功能的內(nèi)置工具。讓我們在我們的 configuration.yaml 中描述它,使用描述:https ://www.home-assistant.io/integrations/manual/
alarm_control_panel:
- platform: manual
name: Home Alarm
pending_time: 60
delay time 40
triggered:
pending_time: 0
code: 1234
這個設(shè)置意味著我們有 60 秒的時間離開家(在這個時間之后,警報會打開),還有 40 秒的時間來關(guān)閉它(使用密碼 1234)當我們回家時。出于某種原因,你離開的時間總是比來的時間長。)
我們現(xiàn)在將描述在我們的 configuration.yaml 中觸發(fā)運動傳感器時啟用和禁用攝影的機制(有關(guān)開關(guān)的更多信息 - 命令行平臺可以在這里找到https://www.home-assistant.io/integrations/switch .command_line/):
- platform: command_line
switches:
start_stop_motion_rec_timelapse:
friendly_name: 'Record motion timelapse video'
command_on: 'curl http://localhost/start_mjpgstrm.php && curl http://localhost//rec-motion-mjpg.php'
command_off: 'curl http://localhost/stop_mjpgstrm.php && curl http://localhost/rec-motion-mjpg-stop.php'
在這里,我們將 command_on enable 和 command_off disable 命令鏈接到控制攝像機記錄的腳本。在這種情況下,當您啟用 command_on 時,會依次執(zhí)行 2 個腳本。這將啟動 mjpg-streamer 并開始在運動傳感器上錄制。通過 Raspberry pi 上工作站點的 php 文件訪問 bash 腳本。為此,我設(shè)置了 nginx 和 web 訪問,當通過瀏覽器以 http://<樹莓派的 IP 地址>/start_mjpgstrm.php 訪問時,應(yīng)該執(zhí)行我們的 php 腳本。
我們不考慮在本文中設(shè)置 Web 訪問。顯然,這并不安全,但由于我在 docker 上有 HA,我面臨著一個事實,即我有一個孤立的 docker 環(huán)境。通過 php 訪問我的網(wǎng)站,我可以看到操作系統(tǒng)的“外部世界”。docker 或 HA 大師可能有很多正確的解決方案。請寫下來,知道會很有趣!?
我將把這些腳本的列表留在文章下面,我們不再贅述。在本文中,我只想關(guān)注 Home Assistant 中一系列動作的形成。
所有這些都放在 start_stop_motion_rec_timelapse 對象中,這將是我們的視覺開關(guān),當運動傳感器被觸發(fā)時,我們將使用它來管理照片的記錄。
我們將能夠在 Home Assistant-> Overview 選項卡中通過切換右上角的 Configure UI 配置模式的激活來可視化我們創(chuàng)建的這些對象
在瀏覽器中的“配置 -> 服務(wù)器控制”選項卡中預(yù)先重啟 HA,以獲取我們的 configuration.yaml。
接下來,選擇瀏覽器窗口底部的黃色加號,單擊實體卡并將我們創(chuàng)建的對象鏈接到地圖。
對于我們的傳感器,請選擇傳感器卡。它看起來像這樣:
如圖所示,第二個實體字段包含上述開關(guān):switch.start_stop_motion_rec_timelapse。
它允許我們打開和關(guān)閉我們的運動傳感器記錄,無論是否啟用了“家庭安全”功能。而且,一般來說,它應(yīng)該在上述所有操作之后已經(jīng)工作。
?并且,相應(yīng)地,我們添加了報警面板圖:
這里還有一個有趣的地方。我使用 Home Assistant 作為 docker 容器。在這方面,我們腳本的路徑將與腳本文件的實際路徑不同。畢竟,容器內(nèi)的文件結(jié)構(gòu)是虛擬化的,并通過 docker 掛載的卷鏈接到實際的文件結(jié)構(gòu)。例如,這看起來像這樣: 容器內(nèi)的路徑:/config/scripts/ 操作系統(tǒng)內(nèi)的路徑:/usr/share/hassio/homeassiatnt/scripts。所以看看你的容器的設(shè)置,這些卷是如何在 Binds 字段中配置的。如果你那里有 HA。
sudo docker inspect homeassistant|less
當運動傳感器被觸發(fā)時,在警報被激活的那一刻:我希望除了我們開始拍攝快速照片(timelapsesnapshots)之外,我還會收到郵件中的警告和一張照片。我并行化了這些過程。在第一種情況下,照片記錄(timelapsesnapshots)在傳感器觸發(fā)后的幾秒鐘內(nèi)發(fā)生。為此,我運行 mjpg-streamer curl http://localhost/start_mjpgstrm.php ,啟動 php:сurl http://localhost/rec-motion-mjpg.php。反過來,它運行 python 腳本 mov.py。所有描述的文件和捆綁包都可以通過鏈接在文章末尾找到。另一個腳本 takeSnapshotWebcam.sh 拍攝了一張我通過電子郵件發(fā)送的照片。我在我們的 configuration.yml 中這樣描述這些腳本:
shell_command:
#start the script that generates a snapshot for the mailing list
take_snapshot_webcam: '/config/scripts/takeSnapshotWebcam.sh'
#starting our mjpg-streamer
start_mgpg_streamer: 'curl http://localhost/start_mjpgstrm.php'
#stopping mjpg-streamer
stop_mgpg_streamer: 'curl http://localhost/stop_mjpgstrm.php'
#start the script that generates snapshots for 5 seconds
start_motion_rec: 'curl http://localhost/rec-motion-mjpg.php'
#stop it
stop_motion_rec: 'curl http://localhost/rec-motion-mjpg-stop.php'
在描述我們的郵件對象的同一 configuration.yml 中:
notify:
- name: ha_sendmail
platform: smtp
#if mail is on gmail
server: smtp.gmail.com
port: 587
timeout: 15
#from whom we send
sender: user@gmail.com
encryption: starttls
username: user@gmail.com
password: passwd
#to whom we send (you can use one box and send it to yourself, why not)
recipient:
- user@gmail.com
sender_name: My Home Assistant
很重要的一點!為了讓我們的 HA 能夠連接和發(fā)送電子郵件(發(fā)件人字段),我們必須允許我們的 HA 服務(wù)在 gmail 上使用此郵箱。如何在此處執(zhí)行此鏈接:https ://myaccount.google.com/lesssecureapps
此外,我們描述了在automation.yaml 中啟用home_alarm 警報時的自動化機制本身:
#first action bundle (alias “triggered by sensor if security is enabled”
- alias: 'Trigger alarm while armed away'
#alias is triggered when the sensor is in the “on” position
trigger:
- platform: state
entity_id: binary_sensor.sensor_hc_sr501
to: 'on'
#provided that the security mode is enabled in the absence of people at home “armed away”
condition:
- condition: state
entity_id: alarm_control_panel.home_alarm
state: armed_away
#and then performs the action
action:
#Running mjpg-streamer (if disabled)
- service: shell_command.start_mgpg_streamer
#Running a script that records from the camera
- service: shell_command.start_motion_rec
#Change the visualization of our "Home security" card on the HA panel to the “alarm triggered” position
- service: alarm_control_panel.alarm_trigger
entity_id: alarm_control_panel.home_alarm
下一組條件和操作是在“安全”關(guān)閉時發(fā)送控制臺消息并關(guān)閉我們的運動記錄腳本。
- alias: 'Send notification when alarm is Disarmed'
trigger:
- platform: state
entity_id: alarm_control_panel.home_alarm
to: 'disarmed'
action:
- service: shell_command.stop_mgpg_streamer
- service: shell_command.stop_motion_rec
- service: persistent_notification.create
data:
message: The alarm is Disarmed at {{ states('sensor.date_time') }}"
最后,第三個鏈接——發(fā)送帶有照片的電子郵件:
- alias: 'Send notification when alarm triggered'
trigger:
- platform: state
entity_id: alarm_control_panel.home_alarm
to: 'triggered'
action:
- service: persistent_notification.create
data:
message: Notification when alarm triggered. Motion sensor HC-SR501 detected.
- delay:
seconds: 4
#run our script for creating a single script
- service: script.webcam_snapshot
#and refer to the described object in configuration.yaml: notify.ha_sendmail
- service: notify.ha_sendmail
data:
title: 'Intruder alert'
message: '{{now().strftime("%H:%M %Y-%m-%d")}}:Notification when alarm triggered. Motion sensor HC-SR501 detected.'
data:
images:
#link to the script already made by the script.webcam_snapshot
- /config/camera/snapshot.jpg
請記住,在 yaml 文件中,行標記很重要,命令前的空格字符在形成代碼塊及其結(jié)構(gòu)方面起著重要作用。通過 Home Assistant(以下簡稱 HA)配置 -> 服務(wù)器控制 -> 檢查配置檢查對 yaml 的所有更改
似乎都是。你的樹莓派變成了優(yōu)雅的東西!..)
這就是—工作 HA 自動化,由您自己配置!一定要把你的想法寫給我!
而且,如果你讀到最后,這里是承諾的鏈接:
圖片和郵編:https ://viamybox.com/downloadpage
Github 項目:https ://github.com/viatc/viamybox
配置文件在此處描述:configuration.yaml、automation.yaml、takeSnapshotWebcam.sh、rec-motion-mjpg.php、mov.py
hc-sr501 ,家庭報警器,家庭助理,樹莓派, видеорегистрация , датчик движения , подключение сигнализации , умный дом
?
- Raspberry Pi支持電視上的視頻通話
- 使用Raspberry Pi的Motioneyeos網(wǎng)絡(luò)攝像頭運動檢測
- 如何使用Raspberry Pi4攝像頭和PIR傳感器發(fā)送電子郵件
- Raspberry Pi Pico上的ADC采樣和FFT
- 與Raspberry Pi接口的多個DS18B20溫度傳感器
- 帶攝像頭和PIR傳感器的Raspberry Pi家庭安全系統(tǒng)
- 帶有Raspberry Pi 4的傳感器定時器
- Raspberry Pi 0 W帶溫度傳感器和LCD
- 使用Raspberry Pi構(gòu)建水位傳感器
- Raspberry Pi和Arduino上的手寫數(shù)字識別
- 可視頻直播的Raspberry Pi網(wǎng)絡(luò)控制機器人 14次下載
- 《愛上Raspberry Pi》中譯版-電子書籍.pdf 0次下載
- Instant Raspberry Pi Gaming 6次下載
- Raspberry_Pi詳解 15次下載
- raspberry_pi各版本差別 0次下載
- 5分鐘內(nèi)將Raspberry Pi Pico變成簡單的示波器+波形發(fā)生器 1522次閱讀
- 使用Raspberry Pi Pico W和MicroPython開發(fā)物聯(lián)網(wǎng)應(yīng)用 1673次閱讀
- 用于測試項目的4個最佳樹莓派Raspberry Pi模擬器 5985次閱讀
- 如何通過Raspberry Pi設(shè)置CE電流監(jiān)視器 2124次閱讀
- 基于樹莓派產(chǎn)品 Raspberry Pi微控制器板的優(yōu)缺點 2710次閱讀
- 如何從Raspberry Pi Pico的模數(shù)轉(zhuǎn)換器捕獲數(shù)據(jù)計算? 2580次閱讀
- 基于Raspberry Pi Pico的GPIO引腳使用運動傳感器 3838次閱讀
- 基于在Raspberry Pi Zero W的基礎(chǔ)上實現(xiàn)設(shè)計微型機器人 2106次閱讀
- 微雪電子Raspberry Pi 3 Model主板簡介 2873次閱讀
- 微雪電子Raspberry Pi 3 Model擴展板簡介 1512次閱讀
- dfrobot微波運動傳感器簡介 2201次閱讀
- 利用Raspberry Pi構(gòu)建存儲和虛擬化時間序列數(shù)據(jù) 884次閱讀
- 一文了解Raspberry Pi 4各項性能跑分 2.9w次閱讀
- 傳感器在運動控制系統(tǒng)中起到了核心的作用 5150次閱讀
- ISSCC上的最新圖像傳感器技術(shù) 1464次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多