0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何利用樹莓派建造一個物聯(lián)網(wǎng)風(fēng)格的電動寵物門

科技觀察員 ? 來源:Jeremiah Mattison ? 作者:Jeremiah Mattison ? 2022-03-31 10:33 ? 次閱讀

這個項(xiàng)目的目標(biāo)是建造一個物聯(lián)網(wǎng)風(fēng)格的電動寵物門,這樣我們就可以控制哪些動物可以進(jìn)入房子。為此,我們使用附著在動物(貓)上的BLE標(biāo)簽和RaspberryPi3上的內(nèi)置藍(lán)牙模塊來掃描標(biāo)簽。同時(shí)我們還在RaspberryPi3上配備了一些LED指示燈,用于對門應(yīng)該處于的狀態(tài)進(jìn)行故障排除。

Node-REDBLEScan節(jié)點(diǎn)持續(xù)掃描BLE廣告。如果它看到與設(shè)備名稱和最小RSSI匹配的設(shè)備,它將打開寵物門,并在超時(shí)后關(guān)閉門。為了防止門在緩慢移動的動物身上過早關(guān)閉,系統(tǒng)將在獲得BLE匹配時(shí)重置計(jì)時(shí)器。

這個項(xiàng)目有幾個不同的部分:

硬件:操縱門所需的所有布線和組件

軟件:決定門應(yīng)該向哪個方向移動的所有邏輯。

Fg3MHz49nZC-EWnFM6FdVeJttm16

硬件

門的打開和關(guān)閉由一個12VDC電動汽車天線完成,該天線倒置安裝在門上方,天線的末端連接到門本身。并帶有一個電路,可以對其進(jìn)行逆向工程以控制天線,但我們在這里不通過這種方式,因此您需要將電路撕掉并直接使用電機(jī)線。

pYYBAGJFEtKAMnZcAAM2qwCubKA998.png

要驅(qū)動天線電機(jī),您很可能需要至少1A的12V電源。我使用了一個舊的D-Link路由器電源:

poYBAGJFEsuAH3kJAALkv7CiQYs986.png

您需要在門上安裝兩個限位開關(guān)以停止兩端的電機(jī)。我使用了磁性開關(guān),因?yàn)檫@是我手頭有的現(xiàn)成的東西,但是帶有杠桿臂的標(biāo)準(zhǔn)開關(guān)會更好。

pYYBAGJFEsaAF8ZYAAHjyHZv5-A628.png

根據(jù)下圖組裝H橋PiHat,注意二極管的方向;這是限制電路。使用的H橋是雙通道的,但我們現(xiàn)在只使用一個。如圖所示,電機(jī)、開關(guān)和12VDC輸入將連接到PiHat。

poYBAGJFEsKAFrClAAcCrBeZ9Uk518.png

根據(jù)下圖組裝LEDPiHat。藍(lán)色LED需要的電流比Pi能夠通過GPIO可靠提供的電流多一點(diǎn),因此我們從5V線路為所有LED供電,并使用連接到GPIO的晶體管來切換它們。

pYYBAGJFEr2AZ9VzAAXjEy2WT8g735.png

軟件

該項(xiàng)目的軟件只是在標(biāo)準(zhǔn)Raspbian安裝上運(yùn)行的Node-RED。大多數(shù)邏輯都是使用帶有RPi版本node-red的標(biāo)準(zhǔn)節(jié)點(diǎn)處理的,但BLE掃描儀除外,它需要來自node-red-contrib-noble的“scanble”節(jié)點(diǎn)。按照以下鏈接中的說明設(shè)置組件:

安裝Raspbian

安裝Node-RED

安裝node-red-contrib-noble

在一切都安裝并工作后,繼續(xù)配置您的Node-RED流程,使其看起來像這樣:

pYYBAGJFEraAB6SGAAMAMwGX69o741.png

我們的流程入口點(diǎn)是“scanble”節(jié)點(diǎn);確保選中該框以允許重復(fù)。

pYYBAGJFErKAEy66AAC0B5elFJY421.png

之后添加一個“function”節(jié)點(diǎn)來根據(jù)“l(fā)ocalname”屬性過濾BLE廣告;我使用了使用“Tile”作為本地名稱的TileTracker標(biāo)簽。

poYBAGJFEDSAHL_DAAIswb33F1c559.png

接下來是一個“切換”節(jié)點(diǎn),用于檢查廣告的RSSI。您需要調(diào)整此設(shè)置以匹配標(biāo)簽和開門距離。

pYYBAGJFEqaAZw2RAABZnhgAAcQ644.png

然后,您可以添加另一個“開關(guān)”節(jié)點(diǎn)來根據(jù)標(biāo)簽的唯一ID過濾標(biāo)簽,這樣它就不會在門附近的其他標(biāo)簽上觸發(fā)。如果您還不知道唯一ID,您可以使用“scanble”節(jié)點(diǎn)上的調(diào)試節(jié)點(diǎn)來查看廣告并嘗試查看哪個是您的。設(shè)置第一條規(guī)則匹配一個空UUID并且不連接輸出;這將過濾掉一些垃圾廣告,為每個UUID添加附加規(guī)則。

poYBAGJFEqGAZkOnAADjRGgDH2w990.png

為您在前一個節(jié)點(diǎn)中添加的每個規(guī)則添加一個“更改”節(jié)點(diǎn),并為其賦予一個唯一的“觸發(fā)源”值。這些節(jié)點(diǎn)不是必需的,但它們將使您能夠在將來對每個標(biāo)簽進(jìn)行額外的過濾,我用我的貓的名字作為來源。

pYYBAGJFEpmAc0hRAACFdGAvB3E182.png

接下來,我們需要通過將消息有效負(fù)載更改為1來告訴流的其余部分我們想要觸發(fā)門打開。將任何打開的觸發(fā)源連接到此節(jié)點(diǎn)。

poYBAGJFEpWAeIJnAABeP-Qh-6o297.png

現(xiàn)在這個觸發(fā)消息將做兩件事:觸發(fā)藍(lán)色LED閃爍以接收BLE數(shù)據(jù)包,并觸發(fā)門打開。

首先通過添加“觸發(fā)器”節(jié)點(diǎn)來設(shè)置LED路徑。將其設(shè)置為發(fā)送1,然后在500毫秒后發(fā)送0。這將導(dǎo)致LED僅閃爍一次。

pYYBAGJFEpGAEattAAD5NUTD7U0391.png

到該節(jié)點(diǎn)連接一個“rpigpio”輸出節(jié)點(diǎn)并將其配置為藍(lán)色LEDGPIO。將其設(shè)置為初始化為0(關(guān)閉)狀態(tài)。

poYBAGJFEoyAddPEAAEdcx1SMIo685.png

接下來是配置門觸發(fā)路徑。返回觸發(fā)有效負(fù)載節(jié)點(diǎn)并將“更改”節(jié)點(diǎn)與兩個輸出連接。一個輸出將路由到具有“1”有效負(fù)載的開放路徑,另一個將路由到具有“0”有效負(fù)載的關(guān)閉路徑。

poYBAGJFEoeAATKcAABzRgDYHX0358.png

這兩個輸出都將連接到同一個節(jié)點(diǎn),但打開的連接在路徑中有一個額外的觸發(fā)節(jié)點(diǎn),可以在超時(shí)后觸發(fā)關(guān)閉。添加“觸發(fā)”節(jié)點(diǎn)以發(fā)送“1”,然后在超時(shí)(15秒)后發(fā)送“0”。

pYYBAGJFEoKAM5QDAAD_9RWlEkY742.png

然后將該觸發(fā)節(jié)點(diǎn)和前一個節(jié)點(diǎn)的第二個輸出連接到“功能”節(jié)點(diǎn)。此功能節(jié)點(diǎn)有兩個輸出連接到打開的GPIO節(jié)點(diǎn)和關(guān)閉的GPIO節(jié)點(diǎn)。由于您不希望門同時(shí)打開和關(guān)閉,因此它將向每個輸出發(fā)送相反的值。因此,如果觸發(fā)有效載荷為“1”表示打開,它將向打開的GPIO發(fā)送“1”,向關(guān)閉的GPIO發(fā)送“0”,如果有效載荷為“0”表示關(guān)閉,它將向打開的GPIO發(fā)送“0”和“1”到關(guān)閉的GPIO。

poYBAGJFEn2AIDZtAAC7-dSuzTM896.png

最后,將兩個GPIO節(jié)點(diǎn)連接到每個輸出:一個用于LED,一個用于H橋輸入。

pYYBAGJFEneAa2VwAAEfADXXLpI846.png

這應(yīng)該對主要的Node-RED流程執(zhí)行此操作。此外,您應(yīng)該添加一個“注入”節(jié)點(diǎn)以自動“1”有效負(fù)載以在啟動時(shí)打開門,這樣流程就知道門處于哪個狀態(tài)。我還添加了一些手動注入節(jié)點(diǎn),用于通過Node-RED接口。

poYBAGJFEnOAfqDpAAEAYv78mEY272.png

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2909

    文章

    44640

    瀏覽量

    373438
  • 藍(lán)牙模塊
    +關(guān)注

    關(guān)注

    30

    文章

    575

    瀏覽量

    55738
  • 樹莓派
    +關(guān)注

    關(guān)注

    116

    文章

    1707

    瀏覽量

    105653
收藏 人收藏

    評論

    相關(guān)推薦

    樹莓一個關(guān)注的領(lǐng)域是什么?

    ?眾多的電子DIY愛好者紛紛猜測,聯(lián)網(wǎng)?智能家居?可穿戴設(shè)別?對于廣大電子DIY愛好者的提問,樹莓的創(chuàng)始人Eben Upton在次受訪
    發(fā)表于 09-15 09:51

    請教利用樹莓制作六足機(jī)器人的問題

    本人新手,最近在準(zhǔn)備制作六足機(jī)器人,如果利用舵機(jī)控制器+遙控手柄套件的話,可以很容易就實(shí)現(xiàn)簡單的功能。為了能讓六足機(jī)器人實(shí)現(xiàn)更加復(fù)雜的功能,我想利用arduino+
    發(fā)表于 11-10 15:33

    分享款不錯的基于樹莓Raspberry Pi CM的聯(lián)網(wǎng)網(wǎng)關(guān)方案

    分享款不錯的基于樹莓Raspberry Pi CM的聯(lián)網(wǎng)網(wǎng)關(guān)方案
    發(fā)表于 06-15 07:01

    樹莓聯(lián)網(wǎng)開發(fā)的應(yīng)用

    從Arduino開始接觸電子編程,也就是所謂的聯(lián)網(wǎng)開發(fā)吧。從最初的超聲波測距開始,到現(xiàn)在的各種開發(fā),其實(shí)直在浪費(fèi)時(shí)間考慮到底用哪種技術(shù),用哪個芯片。轉(zhuǎn)了圈下來,論性能論價(jià)格,還是
    發(fā)表于 08-03 06:38

    如何利用樹莓派去設(shè)計(jì)聯(lián)網(wǎng)智能小車

    如何利用樹莓派去設(shè)計(jì)聯(lián)網(wǎng)智能小車?基于樹莓
    發(fā)表于 08-18 07:22

    如何利用樹莓實(shí)現(xiàn)聯(lián)網(wǎng)?

    如何利用樹莓實(shí)現(xiàn)聯(lián)網(wǎng)
    發(fā)表于 10-19 06:58

    樹莓和Siri完美結(jié)合,語音控制iphone打開車庫!

    潮人在樹莓派上利用了Siri代理,使得Siri app上的定制命令成為可能。樹莓的機(jī)器盒子作為這個項(xiàng)目的運(yùn)作根基,而樹莓
    的頭像 發(fā)表于 12-25 11:52 ?1.3w次閱讀

    利用樹莓實(shí)現(xiàn)IoT(聯(lián)網(wǎng))開關(guān)門監(jiān)控設(shè)備

    因?yàn)榭紤]需要在戶外使用這套聯(lián)網(wǎng)門控設(shè)備,所以利用樹莓完成這個設(shè)備有兩問題需要解決,第
    發(fā)表于 11-22 12:19 ?5655次閱讀

    樹莓 3 或開啟聯(lián)網(wǎng)革命的大門

    與藍(lán)牙。使這款小型設(shè)備更為實(shí)用的并不是它更快的處理器,而是它的網(wǎng)絡(luò)支持。樹莓3或許將成為許多聯(lián)網(wǎng)項(xiàng)目的硬件平臺選擇。
    發(fā)表于 04-02 14:51 ?290次閱讀

    基于樹莓的智能安全(單片機(jī))

    基于樹莓的智能安全(單片機(jī))
    發(fā)表于 11-23 17:36 ?20次下載
    基于<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>的智能安全<b class='flag-5'>門</b>(單片機(jī))

    如何使用樹莓制作巡線機(jī)器人

    眾所周知,樹莓基于ARM微處理器的開發(fā)平臺。憑借其強(qiáng)大的計(jì)算能力,它在廣大電子愛好者中經(jīng)常會創(chuàng)造出奇跡。為了更好地了解樹莓
    的頭像 發(fā)表于 04-08 16:38 ?5958次閱讀
    如何使用<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>制作<b class='flag-5'>一</b><b class='flag-5'>個</b>巡線機(jī)器人

    基于樹莓CM4的工業(yè)聯(lián)網(wǎng)PC

    CM4 Sensing是種工業(yè)計(jì)算機(jī),旨在滿足聯(lián)網(wǎng)和數(shù)據(jù)采集應(yīng)用的特定要求。利用樹莓計(jì)算模
    的頭像 發(fā)表于 06-25 16:52 ?2165次閱讀
    基于<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>CM4的工業(yè)<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>PC

    基于樹莓CM4的工業(yè)聯(lián)網(wǎng)PC

    CM4 Sensing是種工業(yè)計(jì)算機(jī),旨在滿足聯(lián)網(wǎng)和數(shù)據(jù)采集應(yīng)用的特定要求。利用樹莓計(jì)算模
    發(fā)表于 06-29 17:27 ?799次閱讀
    基于<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>CM4的工業(yè)<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>PC

    樹莓裝ubuntu和raspbian哪個更好

    樹莓(Raspberry Pi)是款由英國樹莓基金會開發(fā)的單板計(jì)算機(jī),廣泛應(yīng)用于教育、科研、
    的頭像 發(fā)表于 08-30 15:41 ?1325次閱讀

    樹莓網(wǎng)關(guān):聯(lián)網(wǎng)應(yīng)用的新標(biāo)桿

    的特點(diǎn)是體積小巧(大約信用卡大?。?,但功能齊全,足以支持多種計(jì)算任務(wù)。 樹莓經(jīng)常被用作物聯(lián)網(wǎng)網(wǎng)關(guān),收集設(shè)備數(shù)據(jù),然后將數(shù)據(jù)上傳云平臺,并還可以用來接收來自云端的控制指令,控制其他連接的設(shè)備。 相比,
    的頭像 發(fā)表于 10-09 16:44 ?318次閱讀
    類<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>網(wǎng)關(guān):<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>應(yīng)用的新標(biāo)桿