日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 工業(yè)控制 > 電路設(shè)計(jì)項(xiàng)目集錦
[導(dǎo)讀]輕松監(jiān)測(cè)室內(nèi)空氣質(zhì)量!這個(gè)Arduino應(yīng)用程序,在CY8CKIT-062S2-AI上運(yùn)行,通過(guò)Wi-Fi和MQTT將您的二氧化碳傳感器連接到家庭助理,利用家庭助理的MQTT發(fā)現(xiàn)進(jìn)行無(wú)縫集成。

您想要發(fā)現(xiàn)使用PSOC?6微控制器進(jìn)行快速原型設(shè)計(jì)的無(wú)縫方法并將您的想法變?yōu)楝F(xiàn)實(shí)嗎?

通過(guò)PSOC?6 Arduino集成,您可以做到這一點(diǎn)!這種強(qiáng)大的組合使您能夠進(jìn)入龐大的Arduino生態(tài)系統(tǒng),并利用PSOC?6微控制器的靈活性。

通過(guò)將英飛凌CO2傳感器與PSOC?6 AI評(píng)估套件連接,并使用Arduino代碼將其連接到家庭助理,親身體驗(yàn)其簡(jiǎn)單性。告別復(fù)雜性,迎接輕松的原型制作!

概述

輕松監(jiān)測(cè)室內(nèi)空氣質(zhì)量!這個(gè)Arduino應(yīng)用程序,在CY8CKIT-062S2-AI上運(yùn)行,通過(guò)Wi-Fi和MQTT將您的二氧化碳傳感器連接到家庭助理,利用家庭助理的MQTT發(fā)現(xiàn)進(jìn)行無(wú)縫集成。

先決條件:家庭助理和MQTT經(jīng)紀(jì)人

要繼續(xù),您需要準(zhǔn)備以下內(nèi)容:MQTT代理、具有MQTT集成的Home Assistant實(shí)例和Wi-Fi網(wǎng)絡(luò)。

這是它!如果您已經(jīng)運(yùn)行了Home Assistant、MQTT代理和MQTT集成,那么就可以繼續(xù)了。

你需要什么?

硬件設(shè)置

獲取一個(gè)英飛凌PAS CO2傳感器,將其連接到PSOC?6 AI評(píng)估套件,并運(yùn)行Arduino代碼讀取傳感器數(shù)據(jù)。然后,將其流式傳輸?shù)郊彝ブ?,您就可以進(jìn)行數(shù)據(jù)可視化了!下圖顯示了如何將二氧化碳傳感器連接到工具包。

傳感器需要5V電源來(lái)進(jìn)行測(cè)量,3.3V電源用于邏輯與通信,您可以在PSOC板上找到:

軟件安裝

步驟1:安裝Arduino IDE

確保安裝了Arduino IDE 2.0或更高版本。如果沒(méi)有,請(qǐng)從Arduino官方網(wǎng)站下載并安裝。

步驟2:將PSOC?6板添加到Arduino IDE

如果還沒(méi)有,請(qǐng)按照Hackster文章中的說(shuō)明在Arduino IDE中安裝PSOC?6板。

步驟3:選擇CY8CKIT-062S2-AI板

在Arduino IDE中,導(dǎo)航到Tools > Board >英飛凌PSOC6 Boards并選擇CY8CKIT-062S2-AI板。

步驟4:安裝pas - co2傳感器庫(kù)

在Arduino IDE中,轉(zhuǎn)到Sketch > Include Library > Library Manager。搜索pass -co2-sensor并安裝庫(kù)。

步驟5:安裝Arduino_JSON庫(kù)

在Arduino IDE中,導(dǎo)航到Sketch > Include Library > Library Manager。搜索Arduino_JSON并單擊Install按鈕來(lái)安裝庫(kù)。此資料庫(kù)將簡(jiǎn)化為家庭助理準(zhǔn)備訊息。

步驟6:安裝PubSubClient Library

在Arduino IDE中,導(dǎo)航到Sketch > Include Library > Library Manager。搜索PubSubClient并單擊Install按鈕來(lái)安裝庫(kù)。這是MQTT客戶機(jī),允許連接到MQTT代理。

編碼解碼

常量

現(xiàn)在,所有硬件設(shè)置和軟件安裝完成后,讓我們深入研究代碼。要開始使用我們的傳感器庫(kù),我們需要始終將其與基本Arduino庫(kù)一起包含在代碼的頂部:

現(xiàn)在我們必須定義常量參數(shù),包括I2C通信頻率、測(cè)量間隔、壓力參考和消息緩沖區(qū)大小。

然后應(yīng)該定義用于建立Wi-Fi連接和MQTT代理的常量。

然后,我們需要使用常量來(lái)配置MQTT傳感器與Home Assistant的集成,從而啟用自動(dòng)發(fā)現(xiàn)和狀態(tài)更新。

然后定義一個(gè)名為discoveryMessage的StaticJsonDocument對(duì)象,其容量為512字節(jié),用于構(gòu)造用于Home Assistant發(fā)現(xiàn)的JSON消息。

現(xiàn)在我們定義兩個(gè)對(duì)象sta,它是一個(gè)wiificlient對(duì)象,將用于建立Wi-Fi連接,然后mqttc,它是PubSubClient對(duì)象,將用于MQTT連接。

此外,我們必須實(shí)例化一個(gè)PASCO2Ino類型的對(duì)象來(lái)定義我們想要的傳感功能,假設(shè)我們將其命名為cotwo。

聲明一個(gè)字符數(shù)組msg,其大小為MSG_BUFFER_SIZE,它將用于存儲(chǔ)MQTT消息。

在我們可以嘗試一切之前,要做的最后一步是創(chuàng)建一個(gè)錯(cuò)誤類型變量和一個(gè)16位整數(shù)來(lái)存儲(chǔ)我們的傳感器讀數(shù)。(錯(cuò)誤類型變量將被用作錯(cuò)誤監(jiān)控緩沖區(qū),我們將監(jiān)控其值以確保一切正常工作):

Wi-Fi連接

現(xiàn)在定義一個(gè)函數(shù)connect_wifi來(lái)建立Wi-Fi連接。該函數(shù)首先打印一條消息,指示要連接的Wi-Fi網(wǎng)絡(luò),并使用begin()啟動(dòng)Wi-Fi連接。然后等待連接建立,連接成功后打印成功消息和在Wi-Fi網(wǎng)絡(luò)中獲得的本地IP地址。

MQTT連接

定義了reconnect_mqtt()函數(shù)來(lái)建立或重新建立MQTT連接。在這里,它進(jìn)入一個(gè)循環(huán),直到MQTT連接建立為止。然后,它嘗試使用mqttc.connect()連接到MQTT代理。如果連接成功,則打印成功消息;如果連接失敗,則打印帶有返回代碼的錯(cuò)誤消息,并等待3秒后重試。

設(shè)置

現(xiàn)在我們有了setup()函數(shù)。這里我們初始化波特率為115200的串行端口

初始化CO2傳感器的I2C接口。

下一步是實(shí)際初始化我們的傳感器,我們通過(guò)在我們創(chuàng)建的PASCO2Ino對(duì)象的實(shí)例上使用begin()函數(shù)來(lái)實(shí)現(xiàn)。在這里,我們前面創(chuàng)建的錯(cuò)誤類型變量證明它很方便。我們將使用它來(lái)檢查初始化是否成功執(zhí)行:

通過(guò)調(diào)用connect_wifi()函數(shù)建立Wi-Fi連接。接下來(lái),使用服務(wù)器地址、端口和緩沖區(qū)大小配置MQTT客戶機(jī),為通信做好準(zhǔn)備。如果MQTT連接丟失,則調(diào)用reconnect_mqtt()函數(shù)來(lái)重新建立鏈接。

現(xiàn)在我們必須為PAS CO2傳感器準(zhǔn)備Home Assistant MQTT Discovery消息。請(qǐng)參閱此處查看背后的文檔。這里我們?yōu)閭鞲衅髟O(shè)置了name、state_topic、unit_of_measurement、device_class和unique_id等屬性。

我們還創(chuàng)建了一個(gè)嵌套的設(shè)備對(duì)象,該對(duì)象具有name屬性和一個(gè)標(biāo)識(shí)符數(shù)組,其中包含我們的MQTT client_id作為標(biāo)識(shí)符。

在此之后,JSON對(duì)象被序列化為字符串,準(zhǔn)備發(fā)布到MQTT代理。

此代碼將MQTT發(fā)現(xiàn)有效負(fù)載打印到串行控制臺(tái)以進(jìn)行調(diào)試。然后,它使用MQTT客戶機(jī)將有效負(fù)載發(fā)布到指定的discoveryTopic,使用false參數(shù)表示消息不應(yīng)保留在代理上。

現(xiàn)在,作為一個(gè)可選的中間步驟,我們打印要發(fā)布的消息。

在此之后,消息將發(fā)布到代理的Home Assistant Discovery主題,設(shè)備將已經(jīng)顯示在Home Assistant中。

循環(huán)

主循環(huán)做以下事情:

?如果斷開連接,通過(guò)調(diào)用reconnect_mqtt()來(lái)維護(hù)MQTT連接。

?使用cotwo. getco2 (co2ppm)檢索CO2傳感器值,如果出現(xiàn)錯(cuò)誤,則嘗試處理錯(cuò)誤,如果成功則發(fā)布CO2值。

?將更新的傳感器值發(fā)布到指定的state_topic。

?調(diào)用mqttc.loop()來(lái)處理傳入的MQTT消息。

?等待指定的時(shí)間間隔(PERIODIC_MEAS_INTERVAL_IN_SECONDS),然后進(jìn)行下一次測(cè)量。

現(xiàn)在,一旦你編譯并上傳Arduino代碼到你的PSOC6設(shè)備,你會(huì)看到傳感器二氧化碳添加在你的家庭助理MQTT設(shè)備(設(shè)備-> MQTT)。上傳后,您應(yīng)該看到“CO2傳感器設(shè)備”和“CO2值”實(shí)體添加。

在幾秒鐘的初始化時(shí)間后,傳感器將發(fā)布第一個(gè)測(cè)量值,該值將更新每個(gè)測(cè)量間隔。您的設(shè)置已經(jīng)完成,您已經(jīng)準(zhǔn)備好開始監(jiān)控和探索傳感器的讀數(shù)!

本文編譯自hackster.io

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過(guò)流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問(wèn)題卻十分常見(jiàn),不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問(wèn)題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問(wèn)題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來(lái)解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉