国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

智能家居系統(tǒng) QT

這篇具有很好參考價(jià)值的文章主要介紹了智能家居系統(tǒng) QT。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一 環(huán)境范圍設(shè)置

(1)界面添加新控件

在mainwindow.ui 添加控件:

控件的類型

文本內(nèi)容

對(duì)象名(唯一)

是否有槽函數(shù)

QLabel

<溫度<

lable_隨意

QLabel

<濕度<

lable_隨意

QLabel

<光照度<

lable_隨意

QPushButton

更新范圍

PushButton_range

是 clicked()

控件的類型

當(dāng)前值

最大值

最小值

對(duì)象名(唯一)

是否有槽函數(shù)

QSpinBox

0

99

-20

spinBox_temMIN

QSpinBox

50

100

-19

spinBox_temMAX

QSpinBox

0

99

0

spinBox_humMIN

QSpinBox

50

100

1

spinBox_humMAX

QSpinBox

0

3999

0

spinBox_illMIN

QSpinBox

1000

4000

1

spinBox_illMAX

智能家居系統(tǒng) QT

智能家居系統(tǒng) QT

智能家居系統(tǒng) QT

智能家居系統(tǒng) QT

智能家居系統(tǒng) QT

智能家居系統(tǒng) QT

智能家居系統(tǒng) QT

(2)實(shí)現(xiàn)”更新范圍”槽函數(shù)

智能家居系統(tǒng) QT

在mainwindow.h 添加:

#include "daosingleton.h"? // range-1? 單例模式類的頭文件
//在public下面添加
??? void setProgressBarRange(RangeEntity &e);//設(shè)置進(jìn)度條的范圍

在mainwindow.cpp 添加槽函數(shù) :

//更新范圍按鈕 槽函數(shù)
void MainWindow::on_pushButton_range_clicked()
{
??? //(a) 從界面上獲得新的范圍range
??? RangeEntity range;
??? range.temMAX = ui->spinBox_temMAX->value();
??? range.temMIN = ui->spinBox_temMIN->value();
??? range.humMAX = ui->spinBox_humMAX->value();
??? range.humMIN = ui->spinBox_humMIN->value();
??? range.illMAX = ui->spinBox_illMAX->value();
??? range.illMIN = ui->spinBox_illMIN->value();
??? //range-3? 修改當(dāng)前房間的環(huán)境范圍? -- 數(shù)據(jù)庫(kù)
??? bool ok = DaoSingleton::getInstance()->getDaoUser()->updateRange(homeNo, range);
??? if(ok){
??????? ui->textBrowser->append("更新環(huán)境范圍成功");
??????? setProgressBarRange(range); //設(shè)置進(jìn)度的最大值+最小值
??? }else
??????? ui->textBrowser->append("更新環(huán)境范圍失敗");
}
//設(shè)置進(jìn)度的范圍(最大值+最小值)
void MainWindow::setProgressBarRange(RangeEntity &e)
{
??? if(ui->progressBar_tem->value() >= e.temMIN
??????????? && ui->progressBar_tem->value() <= e.temMAX){
??????? ui->progressBar_tem->setMinimum(e.temMIN);
??????? ui->progressBar_tem->setMaximum(e.temMAX);
??? }else{
??????? ui->textBrowser->append("溫度進(jìn)度條設(shè)置失敗,原因:當(dāng)前數(shù)據(jù)超出設(shè)置范圍");
??? }
??? if(ui->progressBar_hum->value() >= e.humMIN
??????????? && ui->progressBar_hum->value() <= e.humMAX){
??????? ui->progressBar_hum->setMinimum(e.humMIN);
??????? ui->progressBar_hum->setMaximum(e.humMAX);
??? }else{
??????? ui->textBrowser->append("濕度進(jìn)度條設(shè)置失敗,原因:當(dāng)前數(shù)據(jù)超出設(shè)置范圍");
??? }
??? if(ui->progressBar_ill->value() >= e.illMIN
??????????? && ui->progressBar_ill->value() <= e.illMAX){
??????? ui->progressBar_ill->setMinimum(e.illMIN);
??????? ui->progressBar_ill->setMaximum(e.illMAX);
??? }else{
??????? ui->textBrowser->append("光照強(qiáng)度進(jìn)度條設(shè)置失敗,原因:當(dāng)前數(shù)據(jù)超出設(shè)置范圍");
??? }
}

(3)修改房間編號(hào)槽函數(shù)

在mainwindow.cpp 添加:

//房間號(hào) 修改/切換房間 對(duì)應(yīng)的槽函數(shù)???????????????????????????? arg1修改后的值
void MainWindow::on_comboBox_homeno_currentTextChanged(const QString &arg1)
{
??? homeNo = arg1.toInt();? //新的房間號(hào)
??? ui->textBrowser->setText("您已進(jìn)入新的房間:");
??? //range-2? 查看新房間的環(huán)境的范圍? -- 數(shù)據(jù)庫(kù)
??? RangeEntity range; // 存儲(chǔ)查找到的范圍
??? bool ok = DaoSingleton::getInstance()->getDaoUser()->selectRange(homeNo, range);
??? if(ok)
??? {??? // 將查找到的范圍顯示到界面上
??????? ui->spinBox_temMAX->setValue(range.temMAX);
??????? ui->spinBox_temMIN->setValue(range.temMIN);
??????? ui->spinBox_humMAX->setValue(range.humMAX);
??????? ui->spinBox_humMIN->setValue(range.humMIN);
??????? ui->spinBox_illMAX->setValue(range.illMAX);
??????? ui->spinBox_illMIN->setValue(range.illMIN);
??????? setProgressBarRange(range); //設(shè)置進(jìn)度的最大值+最小值
??? }
}

二 優(yōu)化

(1)代碼優(yōu)化

?在mainwindow.cpp中對(duì)代碼進(jìn)行優(yōu)化1--5:

? //在構(gòu)造函數(shù)中添加
? on_comboBox_homeno_currentTextChanged("1");? //優(yōu)化-1 默認(rèn) 調(diào)用一次切換到1號(hào)房間
? on_pushButton_update_clicked();????????????? //優(yōu)化-1 默認(rèn) 刷新一次串口

智能家居系統(tǒng) QT

//在on_comboBox_homeno_currentTextChanged()函數(shù)中添加
??? ui->textBrowser->setText("您已進(jìn)入新的房間:"); // 優(yōu)化-2 使用說明
??? ui->textBrowser->append("使用說明:1. 將zigbee連接到電腦串口,并上電,等待與Cortex-M0板連通(現(xiàn)象:小燈3個(gè)亮變?yōu)?個(gè)亮);");
??? ui->textBrowser->append("使用說明:2. 點(diǎn)擊'刷新串口'-選擇zigbee的串口-點(diǎn)擊'打開串口'; ");
??? ui->textBrowser->append("使用說明:3. 串口打開成功后, 自動(dòng)啟動(dòng)定時(shí)器,每隔2s采集一次環(huán)境數(shù)據(jù); ");
??? ui->textBrowser->append("使用說明:4. 串口打開成功后, 點(diǎn)擊左邊的控制按鈕,遠(yuǎn)程控制Cortex-M0上的設(shè)備; ");
??? ui->textBrowser->append("使用說明:5. 在界面的下方,可以修改此房間的環(huán)境范圍; ");
??? ui->textBrowser->append("使用說明:6. 點(diǎn)擊 房間號(hào) 后面的控件, 切換到其他房間。");

?智能家居系統(tǒng) QT

//在saveHomeEnv()函數(shù)中添加
?????? // 優(yōu)化-3? 新的房間上線 ,將新的房間號(hào)插入到comboBox_homeno控件中
??????? int index = ui->comboBox_homeno->findText( QString("%1").arg(e.homeno) );
??????? if(index < 0) // 新的房間號(hào)
??????? {
??????????? ui->comboBox_homeno->addItem( QString("%1").arg(e.homeno) ); //插入到控件中
??????? }

?智能家居系統(tǒng) QT

//在on_pushButton_update_clicked()函數(shù)中添加
??? ui->pushButton_open->setEnabled(false); // 優(yōu)化-4? 不能點(diǎn)擊

? ? ui->pushButton_open->setEnabled(true); // 優(yōu)化-4? 能點(diǎn)擊

?智能家居系統(tǒng) QT

//在timerEvent()函數(shù)中添加
??? else?? //優(yōu)化-5
??? {
??????? ui->textBrowser->append("zigbee接收:失敗,原因:請(qǐng)用戶檢查zigbee是否與Cortex-M0連通,或者等一會(huì);");
??? }

智能家居系統(tǒng) QT

(2)界面布局和背景圖片

第一個(gè)界面Login : 布局居中

智能家居系統(tǒng) QT

第一個(gè)界面Login : 背景圖片

智能家居系統(tǒng) QT

?智能家居系統(tǒng) QT

智能家居系統(tǒng) QT

第二個(gè)界面MainWindow : 背景圖片

智能家居系統(tǒng) QT

智能家居系統(tǒng) QT

第二個(gè)界面MainWindow : 窗口大小固定

智能家居系統(tǒng) QT

三 運(yùn)行測(cè)試

(1)注冊(cè)功能測(cè)試

智能家居系統(tǒng) QT

(2)登錄功能測(cè)試

智能家居系統(tǒng) QT

智能家居系統(tǒng) QT

(3)串口功能測(cè)試——接收環(huán)境信息

智能家居系統(tǒng) QT

智能家居系統(tǒng) QT

(4)串口功能測(cè)試——發(fā)送控制命令

智能家居系統(tǒng) QT

智能家居系統(tǒng) QT

(5)更新環(huán)境范圍測(cè)試

智能家居系統(tǒng) QT

(6)切換房間

智能家居系統(tǒng) QT

智能家居系統(tǒng) QT

(7)關(guān)閉串口

智能家居系統(tǒng) QT文章來源地址http://www.zghlxwxcb.cn/news/detail-404927.html

到了這里,關(guān)于智能家居系統(tǒng) QT的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • qt實(shí)現(xiàn)智能家居系統(tǒng)

    qt實(shí)現(xiàn)智能家居系統(tǒng)

    一、項(xiàng)目介紹 ? ????????通過TCP/IP協(xié)議實(shí)現(xiàn)客戶端和和服務(wù)端的鏈接,服務(wù)端和下位機(jī)通過串口通信的方式鏈接,傳遞信息,客戶端通過賬號(hào)登錄進(jìn)入進(jìn)入智能家居服務(wù)系統(tǒng),賬號(hào)登錄和QQ登錄類似,我采用的是數(shù)據(jù)庫(kù)的方式實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)和調(diào)用,界面使用qt-ui的方式進(jìn)

    2024年02月11日
    瀏覽(28)
  • QT 項(xiàng)目 智能家居系統(tǒng) 上位機(jī)

    QT 項(xiàng)目 智能家居系統(tǒng) 上位機(jī)

    有哪些文件? : 頭文件: 1. auidio .h? 語音識(shí)別 模塊 2. camera.h? 人臉識(shí)別登錄模塊 3. chooselevelscene.h? 翻金幣游戲的? 4. dataconfig.h? ?翻金幣游戲的 關(guān)卡 的數(shù)據(jù)? 5.entry_mode.h 登錄方式的界面類 6.luck_draw.h? ?開心一天的界面類 7.mainsence.h 翻金幣游戲的背景圖片的類? 8.mainwindow

    2024年02月12日
    瀏覽(30)
  • 基于QT的智能家居中控系統(tǒng)的簡(jiǎn)明設(shè)計(jì)

    基于QT的智能家居中控系統(tǒng)的簡(jiǎn)明設(shè)計(jì)

    ??系統(tǒng)采用 “ 主從式架構(gòu) ” ,即一主多從式,該智能居家控制系統(tǒng)的主要功能包括 登錄功能 、 注冊(cè)功能 、 音樂播放功能 、 時(shí)間顯示 、 日歷顯示 、 溫度濕度光照氣壓海拔數(shù)據(jù)等環(huán)境指標(biāo)數(shù)據(jù) 顯示等。 ??該智能居家控制系統(tǒng)的軟硬件環(huán)境如下: ??硬件環(huán)境:

    2024年02月09日
    瀏覽(20)
  • QT使用MQTT協(xié)議連接ONENET云平臺(tái):智能家居PC客戶端開發(fā)筆記-1 環(huán)境搭建

    QT使用MQTT協(xié)議連接ONENET云平臺(tái):智能家居PC客戶端開發(fā)筆記-1 環(huán)境搭建

    前端時(shí)間做了一個(gè)項(xiàng)目,要求在PC端使用QT制作一個(gè)客戶端,用來接收從單片機(jī)上傳到Onennet的數(shù)據(jù),并且還要下發(fā)指令。當(dāng)時(shí)弄了好幾天,中途遇見了非常多的問題,所以寫下這篇文章記錄一下,同時(shí)分享一下自己的經(jīng)驗(yàn)。 我的環(huán)境:QT 5.12.6 總結(jié)下我遇見的難點(diǎn): 1,環(huán)境配

    2024年02月11日
    瀏覽(29)
  • 基于stm32單片機(jī)的智能家居環(huán)境監(jiān)控系統(tǒng)

    基于stm32單片機(jī)的智能家居環(huán)境監(jiān)控系統(tǒng)

    智能家居環(huán)境監(jiān)控系統(tǒng)的整體電路主要由stm32單片機(jī)最小系統(tǒng),光MQ-2煙霧傳感器電路,紅外人體檢測(cè)電路,DS18B20溫度傳感器,LCD1602顯示電路,水泵驅(qū)動(dòng)電路,風(fēng)扇驅(qū)動(dòng)電路,LED指示燈,蜂鳴器報(bào)警電路;原理圖如圖: PCB如下: 1.通過MQ-2煙霧傳感器及檢測(cè)電路對(duì)周圍環(huán)境中的

    2024年02月11日
    瀏覽(100)
  • Linux MQTT智能家居項(xiàng)目(智能家居界面布局)

    Linux MQTT智能家居項(xiàng)目(智能家居界面布局)

    1.選擇工程名稱和項(xiàng)目保存路徑 2.選擇QWidget 3.添加保存圖片的資源文件: 在工程目錄下添加Icon文件夾保存圖片: 將文件放入目錄中: 將圖片添加進(jìn)入資源文件中: 這里我們一共顯示4個(gè)界面:LED控制界面,溫度濕度顯示界面,光照強(qiáng)度顯示界面,攝像頭監(jiān)測(cè)界面。 所以這里

    2024年02月13日
    瀏覽(31)
  • 畢業(yè)設(shè)計(jì) STM32單片機(jī)的智能家居環(huán)境監(jiān)測(cè)控制系統(tǒng)

    畢業(yè)設(shè)計(jì) STM32單片機(jī)的智能家居環(huán)境監(jiān)測(cè)控制系統(tǒng)

    ?? 這兩年開始畢業(yè)設(shè)計(jì)和畢業(yè)答辯的要求和難度不斷提升,傳統(tǒng)的畢設(shè)題目缺少創(chuàng)新和亮點(diǎn),往往達(dá)不到畢業(yè)答辯的要求,這兩年不斷有學(xué)弟學(xué)妹告訴學(xué)長(zhǎng)自己做的項(xiàng)目系統(tǒng)達(dá)不到老師的要求。 為了大家能夠順利以及最少的精力通過畢設(shè),學(xué)長(zhǎng)分享優(yōu)質(zhì)畢業(yè)設(shè)計(jì)項(xiàng)目,今天

    2024年02月10日
    瀏覽(227)
  • 基于STM32單片機(jī)的智能家居環(huán)境監(jiān)測(cè)與控制系統(tǒng)設(shè)計(jì)

    基于STM32單片機(jī)的智能家居環(huán)境監(jiān)測(cè)與控制系統(tǒng)設(shè)計(jì) 摘要 :隨著物聯(lián)網(wǎng)技術(shù)的不斷發(fā)展,智能家居環(huán)境監(jiān)測(cè)與控制系統(tǒng)的應(yīng)用越來越廣泛。本文設(shè)計(jì)了一種基于STM32單片機(jī)的智能家居環(huán)境監(jiān)測(cè)與控制系統(tǒng),該系統(tǒng)能夠?qū)崟r(shí)監(jiān)測(cè)環(huán)境中的溫濕度和天然氣濃度,并將數(shù)據(jù)顯示在

    2024年04月25日
    瀏覽(97)
  • HMI界面:感官與體驗(yàn)俱佳的智能家居界面分享

    HMI界面:感官與體驗(yàn)俱佳的智能家居界面分享

    Hello,我是大千UI工場(chǎng),本期分享HMI人機(jī)交互界面在智能家居領(lǐng)域的案例,關(guān)注大千,學(xué)習(xí)N多UI干貨,有設(shè)計(jì)需求,可以聯(lián)絡(luò)。 設(shè)計(jì)感官和體驗(yàn)俱佳智能家居的UI界面時(shí),可以考慮以下幾個(gè)方面: 簡(jiǎn)潔直觀: 智能家居的UI界面應(yīng)該簡(jiǎn)潔直觀,用戶能夠快速理解和操作。 分組分

    2024年02月20日
    瀏覽(30)
  • 【qt】仿寫一個(gè)智能家居頁(yè)面

    【qt】仿寫一個(gè)智能家居頁(yè)面

    B站大學(xué) 示例圖片: 后面的保持默認(rèn),點(diǎn)擊完成。成功后可以看到: 再將圖片拖入工程文件夾下面。 向頁(yè)面添加圖片 前綴名可以是自己設(shè)定,注意添加完畢后一定要先保存(ctrl+s),看文件后面的小星號(hào)*消失就保存成功,否則后面無法添加文件。 回到ui文件,將一個(gè)label拖到

    2024年04月27日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包