項(xiàng)目三 智慧園區(qū)能源管控系統(tǒng) 實(shí)訓(xùn)報(bào)告

實(shí)驗(yàn)?zāi)康?/h1>

智慧園區(qū)為體現(xiàn)低消耗、低排放、高性能、高舒適的設(shè)計(jì)理念,應(yīng)用集
成技術(shù)和物聯(lián)網(wǎng)技術(shù)在智慧園區(qū)內(nèi)建設(shè)能效管理系統(tǒng),實(shí)現(xiàn)多能涌、多
業(yè)態(tài)和多用戶的綜合能涌管理。

實(shí)驗(yàn)任務(wù)

1.實(shí)時(shí)采集溫濕度,光照,氣壓值。
2.實(shí)現(xiàn)對(duì)燈光的自動(dòng)控制,當(dāng)光照充足的時(shí)候,燈光熄滅。光照暗時(shí),照明燈亮起。

實(shí)驗(yàn)步驟

一、代碼更改

1.寫(xiě)回調(diào)函數(shù)

void write_callback(
        uint16_t       objid,
        uint16_t       instid,
        uint16_t       resid,
        nbiot_value_t *data)
{
    printf("write /%d/%d/%d:%d\r\n",
           objid,
            instid,
           resid, data->value.as_bool);
    
    if(objid == 3311 && instid == 0 && resid == 5850)
    {
        if(data->value.as_bool)
        {
            Lcd_Clear(WHITE);
            ledStatus.Led1Sta=1;
        }
        else
        {
            Lcd_Clear(BLACK);
            ledStatus.Led1Sta=0;
        }
    }
   
}

2.添加 讀回調(diào)函數(shù)

if(objid == 3303 && instid == 0 && resid == 5700)
            {
                SHT20_INFO sht20 = { 0 };
        sht20 = SHT20_GetValue();
        temp.value.as_float = sht20.tempreture;
            }
        else if(objid == 3301 && instid == 0 && resid == 5700)
            {
                BH1750_test();
                illumi.value.as_float = result_lx;
            }

3.更新資源

void res_update(time_t interval)
{
    SHT20_INFO sht20;
    if (cur_time >= last_time + interval) {
        cur_time = 0;
        last_time = 0;

        /* 更新溫濕度光照數(shù)值 */
        temp.flag |= NBIOT_UPDATED;
        humi.flag |= NBIOT_UPDATED;
                illumi.flag |= NBIOT_UPDATED;
                led.flag |= NBIOT_UPDATED;
        led.value.as_bool = ledStatus.Led1Sta;
                BH1750_test();
        sht20 = SHT20_GetValue();
        temp.value.as_float = sht20.tempreture;
        humi.value.as_float = sht20.humidity;
                illumi.value.as_float = result_lx;
            
    } else if (cur_time == 0 && last_time == 0) {
        cur_time = nbiot_time();
        last_time = cur_time;
    } else {
        cur_time = nbiot_time();
    }
}

4.添加光照和lcd燈資源

illumi.type = NBIOT_FLOAT;
    illumi.flag = NBIOT_READABLE;
    ret = nbiot_resource_add(dev,
            3301,
            0,
            5700,
            &illumi);
    if (ret)
    {
        nbiot_device_destroy(dev);
        printf("device add resource(illumi) failed, code = %d.\r\n", ret);
    }
        
        led.type = NBIOT_BOOLEAN;
    led.flag = NBIOT_READABLE | NBIOT_WRITABLE;
    ret = nbiot_resource_add(dev,
            3311,
            0,
            5850,
            &led);
    if (ret)
    {
        nbiot_device_destroy(dev);
        printf("device add resource(led) failed, code = %d.\r\n", ret);
    }

二、平臺(tái)控制

1.資源列表


平臺(tái)2022-03-29 114242.png

2.平臺(tái)控制燈


平臺(tái)2022-03-29 114212.png

三、在Postman添加資源調(diào)用API

image.png

postman讀.png

四、數(shù)據(jù)推送自動(dòng)控制燈光

1.修改intellij IDEA參數(shù)


image.png

2.控制燈光數(shù)據(jù)


平臺(tái) 4.1.png

3.數(shù)據(jù)推送驗(yàn)證成功
平臺(tái)4.1.png

實(shí)驗(yàn)總結(jié)

通過(guò)此次項(xiàng)目的實(shí)施,能夠?qū)崿F(xiàn)對(duì)園區(qū)內(nèi)的溫濕度實(shí)時(shí)檢測(cè)。雖然過(guò)程并不順利,但是在老師的幫助下,實(shí)驗(yàn)都順利下去了,在這次項(xiàng)目中更熟悉了postman的用法。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容