国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

基于RT-Thread的簡單物聯網溫控箱 | 技術集結

RT-Thread官方賬號 ? 2025-12-26 18:18 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

目錄

項目概述


RT-Thread使用情況概述


硬件框架


軟件框架說明


演示效果


改進方向


代碼地址

1 項目概述

本項目是一個簡易的、較高精度的、易于擴展的桌面級溫控系統。實現對箱內溫度的精確控制,并通過Wi-Fi接入網絡,配套了功能完善的Web可視化監控和調參Dashboard,實現了完整的物聯網閉環。整個項目充分利用了RT-Thread多線程、設備驅動框架和網絡組件的能力,實現了一個軟硬件結合的完整解決方案。

硬件平臺:NXP FRDM-MCXA156

RT-Thread版本:5.2.1

核心功能:

整機最大功耗24W

溫控范圍常溫~70°C(接入制冷片/更高溫的PTC可以拓展范圍)

較高精度的恒溫控制(最大波動范圍3°C,穩態波動范圍1°C)

傳感器數據融合

OLED本地顯示

Web遠程監控與在線調參

項目亮點:級聯PID+前饋復合控制算法、三態控制狀態機、TCP-WebSocket橋接的Web可視化方案。

2RT-Thread使用情況概述

RT-Thread作為項目的核心操作系統,為功能的實現提供了堅實的基礎。其穩定可靠的內核、豐富的組件和簡潔的API,讓整個開發過程事半功倍。

內核與調度器:項目創建了多個線程來處理不同任務,包括主控線程、PID控制線程、OLED刷新線程、網絡服務線程和LED指示線程。利用RT-Thread的搶占式調度器,確保了溫度控制等高優先級任務的實時性。

設備驅動框架:通過RT-Thread統一的設備模型,輕松地操作了多個硬件外設:

Pin設備:用于控制LED指示燈和加熱/散熱模式切換的繼電器。

ADC設備:用于讀取NTC熱敏電阻的電壓值,進而計算PTC加熱片的實時溫度。

PWM設備:用于精確控制PTC加熱片和散熱風扇的功率輸出。

I2C設備:用于驅動OLED顯示屏(基于u8g2軟件包)和讀取板載P3T1755環境溫度傳感器

Sensor框架:用于讀取DHT11、P3T1755傳感器數據。

網絡協議棧:使用了內置的lwIP協議棧和SAL套接字抽象層,快速實現了穩定可靠的TCP服務器,為遠程監控提供了數據通道。

WLAN無線框架:通過rt_wlan_connect接口,便捷地實現了Wi-Fi網絡連接功能。

FinSH/MSH命令行:通過自定義的get_status和tune命令,所有關鍵參數都可以在運行時通過串口動態調整。

軟件包生態:

u8g2:本地UI圖形庫。

dhtxx:DHT11溫濕度傳感器軟件包。

p3t1755: 板載I2C溫度傳感器軟件包。

3 硬件框架

系統硬件由核心控制、傳感器、執行器和人機交互四部分組成

2e7f895a-e244-11f0-8ce9-92fbcf53809c.png

核心控制器:NXP FRDM-MCXA156開發板。

傳感器模塊:

箱內溫濕度:DHT11傳感器,通過RT-Thread Sensor框架讀取。

PTC表面溫度:NTC熱敏電阻,通過ADC采樣并使用Steinhart-Hart模型計算,用于內環控制和過溫保護。

環境溫度:開發板板載的P3T1755 I2C傳感器。

執行器模塊:

加熱:LR7843 MOSFET驅動PTC陶瓷發熱片,通過PWM信號調節功率。

散熱:12V直流風扇,同樣由PWM信號驅動。

模式切換:通過一個繼電器切換PWM輸出信號到MOSFET或風扇,實現加熱/散熱模式的自動切換。

人機交互模塊:

本地:SSD1306 OLED顯示屏,實時顯示系統狀態、當前溫度、目標溫度等關鍵信息。

遠程:通過Wi-Fi連接,在PC或手機瀏覽器上訪問可視化Dashboard。

硬件連線圖

2e912b88-e244-11f0-8ce9-92fbcf53809c.png2ea78d4c-e244-11f0-8ce9-92fbcf53809c.png2ebe4ed8-e244-11f0-8ce9-92fbcf53809c.png

4 軟件框架說明

軟件的核心是一個基于main.c中的三態狀態機和pid_entry線程中的級聯PID控制算法。

2ed26e9a-e244-11f0-8ce9-92fbcf53809c.png

軟件模塊說明

主控與狀態機 (main.c)

main函數負責初始化所有設備(傳感器、PWM、ADC、Wi-Fi),并創建各個應用線程。

main函數內的while(1)循環是系統的主狀態機。它周期性地讀取箱內溫度,并與目標溫度和遲滯范圍(hysteresis_band)比較,自動在HEATING(加熱)、WARMING(保溫)、COOLING(散熱)三種狀態間切換。

狀態切換時,會通過STATE_PIN控制繼電器,將PWM信號通路切換到對應的執行器(PTC或風扇),并重置PID積分項,防止狀態突變。

核心控制算法 (pid_entry線程)

這是一個獨立的線程,以更高的頻率(CONTROL_PERIOD_MS)運行,負責核心的溫度控制算法。

級聯PID+前饋(加熱/保溫模式):

外環PID (pid_box): 根據箱內溫度與目標溫度的差值,計算出一個期望的PTC目標溫度 (ptc_target_temp)。這使得PTC的加熱速率能根據箱內離目標的遠近動態調整。

內環PID (pid_ptc): 根據PTC實際溫度與外環給出的ptc_target_temp的差值,計算出PWM的調節量。這可以快速響應PTC自身的溫度波動,實現更穩定的熱量輸出。

前饋控制: 建立了一個ptc_target_temp到base_pwm的映射表 (ff_table)。PID的輸出是疊加在這個PWM基礎值之上的微調,這大大加快了系統收斂速度,減少了PID積分飽和的風險。

PI控制(散熱模式):

切換到散熱模式后,算法切換為簡單的pid_cool PI控制器,根據箱內溫度與目標溫度的差值直接控制風扇的轉速。

過溫保護: 算法實時監測PTC溫度,一旦超過設定的安全閾值(PTC_MAX_SAFE_TEMP),立即將PWM輸出置零,確保系統安全。

遠程控制服務 (remote.c)

在remote_server_thread_entry線程中,創建了一個TCP服務器,監聽5000端口

服務器接收兩種文本命令:

get_status: 將系統中所有關鍵的實時變量(各處溫度、濕度、PID參數、控制狀態、PWM占空比等)打包成一個JSON字符串返回。

tune ...: 將收到的參數直接傳遞給main.c中的tune()函數,實現了對目標溫度、PID增益、前饋表等所有關鍵參數的運行時修改。

OLED顯示 (screen.c)

screen_on線程負責驅動OLED屏幕。

UI界面清晰地展示了當前的工作模式(HEATING/COOLING/WARMING)、4個溫度值(當前、目標、環境溫度、PTC當前溫度),以及一個直觀的溫差指示條。

5 演示效果

本地OLED顯示

2ee7957c-e244-11f0-8ce9-92fbcf53809c.png

OLED實時顯示系統關鍵數據

遠程Web Dashboard


通過瀏覽器訪問的實時監控儀表盤,包含儀表、狀態指示和在線調參區

2f01893c-e244-11f0-8ce9-92fbcf53809c.png

溫度歷史曲線圖,可以直觀地分析系統的響應速度、超調和穩態誤差(K線圖可以得到的信息更多,而且看起來很有趣)

MSH 命令行調試

通過串口連接,可以直接使用get_status查看系統狀態,或使用tune命令修改參數。

2f19c68c-e244-11f0-8ce9-92fbcf53809c.png

6 改進方向

硬件

把DHT11換成更好的(比如DHT22),DHT11的精度和響應速度都不太行,我手里暫時沒有其它的溫度傳感器了,所以只能先用這個。

功能

可以允許用戶通過Web界面預設一條隨時間變化的溫度曲線(例如:先60℃保溫30分鐘,再升到70℃保溫1小時),使溫控箱能用于更復雜的場景。

參數優化

目前的參數還不太好,還有很大的優化空間。由于溫度的變化很慢,所以如果通過實驗測定最優參數的話會非常消耗時間,目前正在嘗試通過建模擬真的方式尋找最優參數,因為期中有點忙,所以還沒做完。

2f29c014-e244-11f0-8ce9-92fbcf53809c.png

7 代碼地址

本項目已開源,歡迎大家復刻。

GitHub:https://github.com/Cylopsis/Little-TempControled-Box

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 物聯網
    +關注

    關注

    2945

    文章

    47818

    瀏覽量

    414838
  • 溫控箱設計
    +關注

    關注

    0

    文章

    8

    瀏覽量

    6346
  • RT-Thread
    +關注

    關注

    32

    文章

    1613

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    RT-Thread Vector軟件包:嵌入式開發的動態數組容器 | 技術集結

    RT-Thread Vector軟件包:嵌入式開發的動態數組容器 | 技術集結
    的頭像 發表于 01-25 09:33 ?5374次閱讀
    <b class='flag-5'>RT-Thread</b> Vector軟件包:嵌入式開發的動態數組容器 | <b class='flag-5'>技術</b><b class='flag-5'>集結</b>

    RT-Thread開發,如何有效學習RT-Thread的五個步驟

    RT-Thread推出RT-Thread Inside戰略開放RT-Thread開發平臺授權合作,與硬件十萬個為什么合作首次推出第一款RT-Inside的開發板——iBox
    的頭像 發表于 09-25 09:55 ?3.6w次閱讀
    <b class='flag-5'>RT-Thread</b>開發,如何有效學習<b class='flag-5'>RT-Thread</b>的五個步驟

    RT-Thread資深開發者朱天龍正式加盟RT-Thread

    新年伊始,中國自主聯網操作系統廠商RT-Thread迎來一位聯網行業的技術大咖!
    發表于 01-10 09:08 ?1w次閱讀

    RT-Thread軟件包定義和使用

    RT-Thread軟件包是運行于RT-Thread聯網操作系統平臺上,面向不同應用領域的通用軟件組件 。RT-Thread 同時提供了開放
    的頭像 發表于 05-21 11:29 ?1.2w次閱讀
    <b class='flag-5'>RT-Thread</b>軟件包定義和使用

    國民技術攜手RT-Thread共同推進MCU與RT-Thread操作系統廣泛適配

    日前,國民技術股份有限公司與知名物聯網操作系統廠商睿賽德科技(RT-Thread)簽署會員合作協議,正式成為RT-Thread高級會員。國民技術
    的頭像 發表于 12-16 09:56 ?3142次閱讀

    RT-Thread全球技術大會:螢石研發團隊使用RT-Thread技術挑戰

    RT-Thread全球技術大會:研發團隊使用RT-Thread技術挑戰 ? ? ? ? 審核編輯:彭靜
    的頭像 發表于 05-27 11:36 ?2204次閱讀
    <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術</b>大會:螢石研發團隊使用<b class='flag-5'>RT-Thread</b>的<b class='flag-5'>技術</b>挑戰

    2022 RT-Thread全球技術大會:螢石EZIOT SDK對RT-Thread的支持

    2022 RT-Thread全球技術大會:RT-Thread在攝像頭及IoT設備上的實踐經驗分享
    的頭像 發表于 05-27 11:08 ?1885次閱讀
    2022 <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術</b>大會:螢石EZIOT SDK對<b class='flag-5'>RT-Thread</b>的支持

    RT-Thread全球技術大會:RT-Thread Smart更好的兼容Linux生態

    RT-Thread全球技術大會:RT-Thread Smart更好的兼容Linux生態 ? ? ? ? ? ? 審核編輯:彭靜
    的頭像 發表于 05-27 14:31 ?2644次閱讀
    <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術</b>大會:<b class='flag-5'>RT-Thread</b> Smart更好的兼容Linux生態

    RT-Thread全球技術大會:Kconfig在RT-Thread中的工作機制

    RT-Thread全球技術大會:Kconfig在RT-Thread中的工作機制 ? ? ? ? ? ? ? 審核編輯:彭靜
    的頭像 發表于 05-27 14:49 ?2349次閱讀
    <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術</b>大會:Kconfig在<b class='flag-5'>RT-Thread</b>中的工作機制

    RT-Thread全球技術大會:在RT-Thread上編寫測試用例

    RT-Thread全球技術大會:在RT-Thread上編寫測試用例 ? ? ? ? ? 審核編輯:彭靜
    的頭像 發表于 05-27 16:28 ?2110次閱讀
    <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術</b>大會:在<b class='flag-5'>RT-Thread</b>上編寫測試用例

    RT-Thread全球技術大會:RT-Thread測試用例集合案例

    RT-Thread全球技術大會:RT-Thread測試用例集合案例 ? ? ? ? ? 審核編輯:彭靜
    的頭像 發表于 05-27 16:34 ?2831次閱讀
    <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術</b>大會:<b class='flag-5'>RT-Thread</b>測試用例集合案例

    RT-Thread全球技術大會:RT-Thread對POSIX的實現情況介紹

    RT-Thread全球技術大會:RT-Thread對POSIX的實現情況介紹 ? ? ? ? ? ? 審核編輯:彭靜
    的頭像 發表于 05-27 16:52 ?2628次閱讀
    <b class='flag-5'>RT-Thread</b>全球<b class='flag-5'>技術</b>大會:<b class='flag-5'>RT-Thread</b>對POSIX的實現情況介紹

    RT-Thread學習筆記 RT-Thread的架構概述

    的種種優越之處。RT-Thread 是一款完全由國內團隊開發維護的嵌入式實時操作系統(RTOS),具有完全的自主知識產權。經過 16 個年頭的沉淀,伴隨著聯網的興起,它正演變成一個功能強大、組件豐富的
    的頭像 發表于 07-09 11:27 ?5881次閱讀
    <b class='flag-5'>RT-Thread</b>學習筆記 <b class='flag-5'>RT-Thread</b>的架構概述

    RT-Thread文檔_RT-Thread 簡介

    RT-Thread文檔_RT-Thread 簡介
    發表于 02-22 18:22 ?5次下載
    <b class='flag-5'>RT-Thread</b>文檔_<b class='flag-5'>RT-Thread</b> 簡介

    RT-Thread文檔_RT-Thread SMP 介紹與移植

    RT-Thread文檔_RT-Thread SMP 介紹與移植
    發表于 02-22 18:31 ?9次下載
    <b class='flag-5'>RT-Thread</b>文檔_<b class='flag-5'>RT-Thread</b> SMP 介紹與移植