91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

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

怎樣將燈控制器用于IoT設備的控制器中

454398 ? 來源:網(wǎng)絡整理 ? 作者:網(wǎng)絡整理 ? 2019-12-06 16:46 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

第1步:電路概述

我已經(jīng)包含了一個上面電路圖的副本供參考,盡管應該注意它是對U1的支持,但DS1307Z + RTC在軟件中不再可用,不再需要以下組件并將其從零件清單中刪除;

U1,R1,R3,R4,C1,Q2和G1

步驟2:軟件概述

序言

要成功編譯此源代碼,您將需要以下額外的庫;

PubSubClient.h

由:Nick O‘ Leary

目的:使設備能夠與給定的Broker一起發(fā)布或訂閱MQTT主題

來自:https://github.com/knolleary/pubsubclient

Bounce2.h

由:Thomas O Fredericks

目的:在軟件中對輸入開關(guān)進行反抖動

來自:https://github.com/thomasfredericks/Bounce2

在源代碼bel中也提供了完整的詳細信息

您還需要知道;

MQTT Broker的IP地址(IPv4格式AAA.BBB.CCC.DDD):

IPAddress代理(

W,X,Y,Z

);

用于您的IoT設備的免費IP地址: byte ip [] = {W,X,Y,Z};

代碼概述

啟動時,軟件將使用上面預先提供的連接詳細信息連接到以太網(wǎng)。

一旦連接到IoT設備的LAN,使用以下客戶端名稱’WIZNet5100-DE:AD:BE:EF:FE:ED ‘在MQTT代理中注冊,并將其詳細信息發(fā)布到以下MQTT主題;

/EthernetDevice/SwVerConfirm::此字符串包含一個連接字符串,以逗號分隔,由通用設備名稱,設備的唯一MAC地址和Arduino文件的名稱組成用于對設備進行編程。在這種情況下,’WIZNet5100,DE:AD:BE:EF:FE:ED,MQTTStudyLightController1_8.ino ‘。

/EthernetDevice/Study/LightConfirm

::當該設備在/EthernetDevice/Study/LightsQuery 主題,它通過單個字節(jié)發(fā)布到Swan,頂架和臺燈下的/EthernetDevice/Study/LightConfirm 主題狀態(tài)。該字節(jié)的值的范圍是0 。.. 7。位0 =天鵝燈,位1 =頂架燈,位2 =桌面燈。 1 =開,0 =關(guān)。注意:如果按下本地按鈕,將發(fā)生相同的確認響應。

/EthernetDevice/Study/LightControllerTempAlarmConfirm

::當此設備在/EthernetDevice/Study/LightControllerTempAlarmQuery 主題上收到發(fā)布時,它會通過發(fā)布到/EthernetDevice/Study/LightControllerTempAlarmConfirm 主題來做出響應。學習燈控制器溫度警報狀態(tài)。有效= 1/無效= 0。

/EthernetDevice/Study/LightControllerTemp

:該設備會針對該主題發(fā)布學習燈控制器內(nèi)部溫度,該溫度以攝氏度為單位,經(jīng)過滾動平均后精確到小數(shù)點后2位,其樣本存儲在以下數(shù)組中’averageTempArray [MAX_TEMPS]‘ 》。僅當溫度發(fā)生整數(shù)變化時才會發(fā)布更新,以防止此IoT設備“阻塞”網(wǎng)絡。

它隨后訂閱以下MQTT主題;

/EthernetDevice/SwVerCommand::在收到有關(guān)此主題的通知時,設備將使用/EthernetDevice/SwVerConfirm 發(fā)布進行響應。這是 廣播 的回復。即。所有設備都可以響應。

/EthernetDevice/DE:AD:BE:EF:FE:ED/SwVerCommand :收到此主題的通知后,設備將以/EthernetDevice/響應SwVerConfirm 發(fā)布。這是 定位 的響應。即。僅此設備將響應。

/EthernetDevice/Study/LightsQuery

::如上文針對/EthernetDevice/Study/LightConfirm ,此設備將使用狀態(tài)字節(jié)響應此主題發(fā)布。

/EthernetDevice/Study/SwanLight::當接收到有關(guān)此主題的通知時,設備將打開/關(guān)閉書房天鵝燈。有效載荷值“ 1”將點亮燈,“ 0”熄滅。更新光輸出后,將通過/EthernetDevice/Study/LightConfirm 主題上的出版物返回光的當前狀態(tài)。這樣,OpenHAB站點將反射相應光線的實際值。

/EthernetDevice/Study/TopShelfLight:至于/EthernetDevice/Study/SwanLight ,但控制權(quán)用于頂級貨架燈。

/EthernetDevice/Study/UnderDeskLight:如上,但適用于Under Desk Light。

/EthernetDevice/Study/LightControllerTempQuery::收到此主題的通知后,設備將以/EthernetDevice/Study/LightControllerTemp 出版物進行響應。有效負載,詳細說明了如上所述的當前內(nèi)部溫度。這樣,可以在任何時候輪詢學習燈控制器,以確定其當前溫度。此機制用于克服OpenHAB中圖持久性的問題。 (有關(guān)更多詳細信息,請參見此處https://github.com/openhab/openhab/wiki/Charts)

/EthernetDevice/Study/LightControllerTempAlarmQuery:當收到有關(guān)此主題的通知時設備將使用/EthernetDevice/Study/LightControllerTempAlarmConfirm 出版物進行響應,該出版物包含詳細描述了當前內(nèi)部溫度警報狀態(tài)的有效負載,如上所述。另外,如果內(nèi)部溫度超過40攝氏度,所有指示燈將自動關(guān)閉,并且將活動狀態(tài)發(fā)布到/EthernetDevice/Study/LightControllerTempAlarmConfirm 主題。這樣,學習燈控制器會自動觸發(fā)對OpenHAB的更新,或者可以對其進行輪詢以確定其當前的溫度警報狀態(tài)。該消息將觸發(fā)“ Light Cont?!鄙暇瘓筲彽念伾珷顟B(tài)更改。配置”頁面并激活警告聲音事件。

完成后,該軟件立即進入循環(huán),監(jiān)視MQTT Broker連接以獲取主題出版物以及通過按鈕進行的任何本地照明更改請求箱輸入,管理系統(tǒng)計時器并持續(xù)監(jiān)控平均內(nèi)部溫度狀態(tài)。

實現(xiàn)無阻塞計時器

如前言中所述,我實現(xiàn)了無阻塞計時器功能,對此的調(diào)用如下;

無效timer_create(int iTimerNumber,無符號長ulTimerPeriod,void(* callbackfn)(void));

用于創(chuàng)建新的計時器“ iTimerNumber”并將其上下文添加到stiTimerArray []。所需的延遲時間“ ulTimerPeriod”以毫秒為單位,并提供了指向回調(diào)函數(shù)的指針。如果計時器到期,則執(zhí)行此回調(diào)函數(shù)。

void timer_update(void);

必須定期從主循環(huán)中調(diào)用此函數(shù),該函數(shù)用于更新所有計時器,檢查它們是否已到期,以及是否已到期,啟動回調(diào)函數(shù)’callback()‘。

無效的timer_start(int iTimerNumber);

如前所述,對該函數(shù)的調(diào)用將啟動計時器倒計時

無效的timer_stop(int iTimerNumber);

如前所述,對該函數(shù)的調(diào)用將

void timer_reset(int iTimerNumber);

被調(diào)用將延長超時時間周期到其初始值。有效地創(chuàng)建一個“可重置的單穩(wěn)態(tài)”計時器。用外行的話來說,就像“踢”看門狗計時器一樣。

布爾型timer_isRunning(int iTimerNumber);

函數(shù)調(diào)用以測試以查看給定的計時器當前是否正在運行。

。

如果需要新的計時器,則必須執(zhí)行以下操作進行;

增加MAX_TIMERS的數(shù)量

#define MAX_TIMERS 3

定義新的計時器定義,即

#define NEW_TIMER 2

定義新的回調(diào)函數(shù)void cf(void);并添加計時器

timer_create(NEW_TIMER,10000,cf);

啟動新timer

timer_start(NEW_TIMER);

給出了源代碼的完整副本

步驟3:OpenHAB接口

要將Study Lights Controller集成到現(xiàn)有的“ SteveQuinn Household” 網(wǎng)站中,我對站點地圖進行了更改,如上圖一所示。這里的陰影屏幕描述了變化;

研究屏幕現(xiàn)在包含三個開關(guān);天鵝燈,頂架燈,臺燈下和內(nèi)部書房燈控制器溫度會顯示出來(請參見圖2),

已添加新的“燈光控制器配置”(“光照配置”)網(wǎng)頁,以允許用戶可以查詢當前內(nèi)部溫度警報狀態(tài)以及當前內(nèi)部溫度。 (請參見圖3,此處顯示為紅色,警報處于活動狀態(tài)),

已添加了一個新的趨勢屏幕,其中顯示了控制器的內(nèi)部溫度趨勢(請參見圖4和5)。

。

與以前一樣如果您想使用“ stevequinnhousehold ”示例,則需要做的就是解壓縮下面zip文件的內(nèi)容并將其拖放進入上圖6所示的OpenHAB目錄。

。

此實現(xiàn)使用OpenHAB的功能播放聲音片段。如上文所述,如果Study Light Controller的內(nèi)部溫度超過40攝氏度,則IoT設備將通過發(fā)送帶有有效負載= ’1‘。收到此消息將觸發(fā)在Raspberry Pi上播放聲音剪輯“ OverTemp.mp3”,并將“內(nèi)部溫度警報”的顏色從黑色更改為紅色。有關(guān)更多詳細信息,請參見“測試IoT設備”。

為了使OpenHAB能夠播放您的OpenHAB安裝聲音,需要進行一些更改(我正在假設您正在遵循本系列的所有部分)。我已將此更改添加到先前的有關(guān)如何安裝OpenHAB(第6部分:IoT家庭自動化)的說明中。但是,為方便起見,我也在下面詳細介紹了它們。照常執(zhí)行更改時,切記要打開OpenHAB服務器的PuTTY終端窗口并剪切并粘貼以避免錯誤。

首先在默認值下編輯openhab文件;

sudo nano/etc/default/openhab

找到USER_AND_GROUP并將其更改為;

USER_AND_GROUP = root:root

現(xiàn)在在systemd下編輯openhab.service;

sudo nano/usr/lib/systemd/system/openhab.service

找到用戶和組并將其更改為;

User = root

Group = root

就是這樣?,F(xiàn)在,重新啟動OpenHAB以使更改生效。

sudo服務openhab重新啟動

或重新啟動

立即重啟sudo

步驟4:測試IoT設備

在我先前的Instructable’設置和配置OpenHAB中。第6部分:物聯(lián)網(wǎng),家庭自動化‘我介紹了如何使用模擬數(shù)據(jù)和實時數(shù)據(jù)進行測試以及它們各自的優(yōu)點。

在這種情況下,我們將同時使用這兩種方法來測試我們的新物聯(lián)網(wǎng)設備。如上圖一和圖二所示。

為方便起見,將使用模擬數(shù)據(jù)來觸發(fā)過熱警報。否則,將需要打開學習燈控制器,并在MSP9700A上施加高于40攝氏度的溫度以強制發(fā)出警報。

我詳細介紹了“過熱警報”序列的消息流。在上面的圖片3中

為了驗證燈光控制和計時器功能,實際上將使用OpenHAB界面和按鈕框進行測試。

我還提供了一個測試視頻片段

步驟5:結(jié)論

鑒于我當前的基礎架構(gòu)以及Arduino/MQTT/Raspberry Pi的知識,我們重新設計了作為家庭自動化網(wǎng)絡中的IoT設備,Study Light Controller相對容易實現(xiàn)且運行良好。實際上,添加按鈕去抖動庫使反應時間比我最初編寫的要快得多。

但是,錯過屬性著名的比爾·蓋茨的報價“ 640 K對任何人都應該足夠”事后看來,我應該選擇一個更大的Arduino,那樣我就可以同時包括RTC功能和DHCP功能。

第6步:使用的引用

我使用以下來源將此Instructable放在一起;

PubSubClient.h

由:Nick O’Leary

目的:使設備可以使用給定的代理發(fā)布或訂閱MQTT主題

來自:https://github .com/knolleary/pubsubclient

Bounce2.h

由:Thomas O Fredericks

目的:在輸入開關(guān)中消除抖動軟件

來自:https://github.com/thomasfredericks/Bounce2

數(shù)據(jù)表

http://ww1.microchip.com/downloads/zh-CN/DeviceDoc/21 。..

解碼規(guī)則的二進制數(shù)據(jù)

HTTPS://community.openhab.org/t/integer-to-binary/。..

https://groups.google.com/forum/# !主題/XTEND浪。..

HTTPS://github.com/openhab/openhab/wiki/Samples-Ru 。..

https://github.com/openhab/openhab/wiki/Samples-Item-Definitions

Xtend

http://www.eclipse.org/xtend/documentation/i ndex.h 。..

繪圖(包括rrd4j持久性問題)

https://github.com/openhab/openhab/wiki/Charts

問題:獲取exec綁定以執(zhí)行命令(如何使playSound與OpenHAB一起使用)

https://community.openhab.org/t/problem-getting-exec-binding-to-execute-command/2872/36

Sounds

http://soundbible.com/tags-alarm.html

比爾·蓋茨(Bill Gates)報價經(jīng)常被錯過的消息

https://en.wikiquote.org/wiki/Bill_Gates
責任編輯:wv

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

    關(guān)注

    114

    文章

    17841

    瀏覽量

    194734
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    深入解析 dsPIC33FJ 系列 16 位微控制器與數(shù)字信號控制器

    深入解析 dsPIC33FJ 系列 16 位微控制器與數(shù)字信號控制器 在電子工程領域,微控制器和數(shù)字信號控制器是構(gòu)建各種電子設備的核心組件。
    的頭像 發(fā)表于 04-08 18:35 ?436次閱讀

    探索AT43USB355:適用于游戲控制器的高性能USB微控制器

    探索AT43USB355:適用于游戲控制器的高性能USB微控制器 在電子設備的設計領域,一款性能卓越且功能豐富的微控制器對于產(chǎn)品的成功至關(guān)重
    的頭像 發(fā)表于 04-06 09:05 ?171次閱讀

    CBM9001控制器

    控制器
    芯佰微電子
    發(fā)布于 :2026年01月13日 16:27:10

    ?NCV78343像素控制器技術(shù)解析與應用指南

    安森美 NCV78343汽車(前)照明單芯片像素控制器是一款單芯片像素控制器,帶控制串聯(lián)LED單個LED的嵌入式開關(guān)。安森美 NC
    的頭像 發(fā)表于 11-26 09:57 ?801次閱讀
    ?NCV78343像素<b class='flag-5'>控制器</b>技術(shù)解析與應用指南

    #機井灌溉智能控制設備 #智能機井控制器 #無線遠傳超聲波水表 #智能機井灌溉刷卡控制器

    控制器
    平升電子-智慧水務解決方案
    發(fā)布于 :2025年11月22日 16:09:02

    智能天文時控,路燈光電控制器,路燈三遙控制器,沃思智能

    在現(xiàn)代城市照明系統(tǒng),智能控制技術(shù)的應用已成為提升能源效率和管理水平的核心手段。智能天文時控、路燈光電控制器與路燈三遙控制器作為三大核心
    的頭像 發(fā)表于 10-09 09:46 ?746次閱讀
    智能天文時控<b class='flag-5'>器</b>,路燈光電<b class='flag-5'>控制器</b>,路燈三遙<b class='flag-5'>控制器</b>,沃思智能

    codesys 3.5版本控制器聯(lián)機指導:如何進行RS232聯(lián)機?#codesys編程控制器 #控制器

    控制器
    長沙碩博電子科技股份有限公司
    發(fā)布于 :2025年08月29日 09:07:25

    1個APP控制千盞?拆解睿澤物聯(lián)單控制器的智能奧秘

    睿澤物聯(lián)的單控制器,不僅是一臺設備,更是城市照明的智能化入口。1個APP控制千盞,看似簡單,背后卻是物聯(lián)網(wǎng)、大數(shù)據(jù)、節(jié)能技術(shù)的深度整合。
    的頭像 發(fā)表于 08-27 19:25 ?1314次閱讀
    1個APP<b class='flag-5'>控制</b>千盞<b class='flag-5'>燈</b>?拆解睿澤物聯(lián)單<b class='flag-5'>燈</b><b class='flag-5'>控制器</b>的智能奧秘

    智慧路燈核心大腦——路燈單控制器-無線單調(diào)光控制器

    智慧路燈核心大腦——路燈單控制器-無線單調(diào)光控制器
    的頭像 發(fā)表于 05-27 09:52 ?1235次閱讀
    智慧路燈核心大腦——路燈單<b class='flag-5'>燈</b><b class='flag-5'>控制器</b>-無線單<b class='flag-5'>燈</b>調(diào)光<b class='flag-5'>控制器</b>

    車載整機控制器 工程機械主機控制器#碩博電子#國產(chǎn)控制器

    控制器
    長沙碩博電子科技股份有限公司
    發(fā)布于 :2025年05月26日 09:09:02

    工程機械控制器廠家 控制器國產(chǎn)替代 #國產(chǎn)控制器#控制器廠家#控制器品牌

    控制器
    長沙碩博電子科技股份有限公司
    發(fā)布于 :2025年04月29日 14:15:05

    NB-IoT控制器:智慧照明的“神經(jīng)末梢”

    在智慧城市建設進程加速的大背景下,NB - IoT控制器作為一種嶄露頭角的智能照明設備,正逐步成為城市照明管理體系的關(guān)鍵構(gòu)成要素。其
    的頭像 發(fā)表于 04-27 16:33 ?773次閱讀

    家用電器開發(fā)控制器的選型要點

    ROHM提供融入自有低功耗技術(shù)優(yōu)勢的豐富的低功耗微控制器產(chǎn)品。通過供應微控制器產(chǎn)品,為從事電池供電的小型設備、家用電器、工業(yè)設備、社會基礎設施、車載
    的頭像 發(fā)表于 04-24 10:26 ?1614次閱讀
    家用電器開發(fā)<b class='flag-5'>中</b>微<b class='flag-5'>控制器</b>的選型要點

    專業(yè)解讀智慧路燈智能照明控制模塊-單控制器

    專業(yè)解讀智慧路燈智能照明控制模塊-單控制器|光伏|
    的頭像 發(fā)表于 04-18 08:37 ?1250次閱讀
    專業(yè)解讀智慧路燈智能照明<b class='flag-5'>控制</b>模塊-單<b class='flag-5'>燈</b><b class='flag-5'>控制器</b>