項(xiàng)目開(kāi)發(fā)背景
隨著全球人口老齡化趨勢(shì)日益明顯,老年人的生活需求成為社會(huì)關(guān)注的焦點(diǎn)之一。在晚年,老年人在夜間的照明需求更為重要,因?yàn)樗麄冊(cè)谝雇淼幕顒?dòng)較為頻繁,可能需要多次起夜、進(jìn)出臥室或浴室等。
 老年人在夜間面臨一系列獨(dú)特的挑戰(zhàn),包括視力下降、平衡問(wèn)題和容易產(chǎn)生夜間驚恐等。這些問(wèn)題增加了老年人在黑暗中移動(dòng)的風(fēng)險(xiǎn),可能導(dǎo)致摔倒和其他意外事故。因此,為老年人設(shè)計(jì)一套安全、智能的夜間燈光照明系統(tǒng),成為了提高老年人生活質(zhì)量、增強(qiáng)其安全感的重要舉措。
 夜間燈光照明系統(tǒng)的開(kāi)發(fā)背景還源于現(xiàn)代科技的進(jìn)步。隨著智能家居、物聯(lián)網(wǎng)等技術(shù)的迅速發(fā)展,人們?cè)絹?lái)越能夠?qū)崿F(xiàn)智能化、個(gè)性化的生活方式。對(duì)于老年群體,智能照明系統(tǒng)可以根據(jù)其活動(dòng)習(xí)慣和需求,自動(dòng)調(diào)節(jié)光線亮度和顏色,提供更為舒適、安全的環(huán)境。
 此外,節(jié)能環(huán)保也是夜間燈光照明系統(tǒng)開(kāi)發(fā)背景中的一個(gè)重要考慮因素。傳統(tǒng)照明設(shè)備可能在老年人不需要時(shí)繼續(xù)工作,造成能源浪費(fèi)。而智能夜間燈光系統(tǒng)可以通過(guò)傳感器檢測(cè)老年人的活動(dòng),根據(jù)需求自動(dòng)開(kāi)關(guān)或調(diào)整光線,達(dá)到節(jié)能的目的。
 綜上所述,針對(duì)老年群體的夜間燈光照明系統(tǒng)是為了解決老年人在夜間活動(dòng)中的安全和舒適問(wèn)題,提高其生活質(zhì)量,適應(yīng)老齡化社會(huì)的需求,并兼顧節(jié)能環(huán)保的要求。這樣的照明系統(tǒng)在為老年人提供更好的生活體驗(yàn)的同時(shí),也體現(xiàn)了科技進(jìn)步為社會(huì)帶來(lái)的實(shí)際益處。
項(xiàng)目硬件選擇
采用stm32f407zgt6芯片進(jìn)行運(yùn)算處理;
 采用ap3216c傳感器檢測(cè)光強(qiáng)和距離;
 采用rw007 wifi模塊進(jìn)行通信處理。
 項(xiàng)目主要功能
 通過(guò)接近與光強(qiáng)傳感器感測(cè)人體靠近并開(kāi)啟燈光照明系統(tǒng)
 統(tǒng)計(jì)老人夜間的如廁次數(shù)并將數(shù)據(jù)上傳云端進(jìn)行身體健康監(jiān)測(cè)
項(xiàng)目具體實(shí)現(xiàn)
1、程序流程圖

2、光強(qiáng)和距離數(shù)據(jù)的采集(判斷是否有人接近,檢測(cè)到人體后開(kāi)啟照明系統(tǒng)):
while (1)
    {
        rt_pin_write(PIN_LED3, PIN_LOW);
        rt_uint16_t ps_data;
        float brightness;
        /* 讀 接 近 感 應(yīng) 值 */
        ps_data = ap3216c_read_ps_data(dev);
        /* 讀 光 照 強(qiáng) 度 值 */
        brightness = ap3216c_read_ambient_light(dev);
        if (brightness <= 0.5 && ps_data <= 20)
            {
                rt_pin_write(PIN_LED1, PIN_HIGH);
                rt_pin_write(PIN_LED2, PIN_HIGH);
            }
        else if (brightness <= 0.5 && ps_data > 20)
            {
                //LOG_D("ps:%d", ps_data);
                rt_pin_write(PIN_LED1, PIN_LOW);
                rt_pin_write(PIN_LED2, PIN_LOW);
                add();
                rt_thread_mdelay(10000);
            }
        else
            {
                rt_pin_write(PIN_LED1, PIN_HIGH);
                rt_pin_write(PIN_LED2, PIN_HIGH);
            }
        rt_thread_mdelay(399);
        rt_pin_write(PIN_LED3, PIN_HIGH);
        rt_thread_mdelay(399);
    }
3、自動(dòng)聯(lián)網(wǎng)功能:
#define WLAN_SSID "test"
 #define WLAN_PASSWORD "12345678"
 #define NET_READY_TIME_OUT (rt_tick_from_millisecond(15 * 1000))
 static void print_wlan_information(struct rt_wlan_info info,int index);
 static int wifi_autoconnect(void);
 static struct rt_semaphore net_ready;
 static struct rt_semaphore scan_done;
 const char * ssid="test";
 const char * key="12345678";
 int main(void)
 {
 static int i = 0;
 int result = RT_EOK;
 struct rt_wlan_info info;
 rt_wlan_connect(ssid, key);
 / 等待 500 ms 以便 wifi 完成初始化 /
 rt_thread_mdelay(500);
 / 掃描熱點(diǎn) /
 LOG_D("start to scan ap ...");
 / 執(zhí)行掃描 */
 rt_sem_init(&scan_done,"scan_done",0,RT_IPC_FLAG_FIFO);
 rt_wlan_register_event_handler(RT_WLAN_EVT_SCAN_REPORT, wlan_scan_report_hander,&i);
 rt_wlan_register_event_handler(RT_WLAN_EVT_SCAN_DONE, wlan_scan_done_hander,RT_NULL);
 if(rt_wlan_scan() == RT_EOK)
 {
 LOG_D("the scan is started... ");
 }else
 {
 LOG_E("scan failed");
 }
 /*等待掃描完畢 /
 rt_sem_take(&scan_done,RT_WAITING_FOREVER);
 / 熱點(diǎn)連接 /
 LOG_D("start to connect ap ...");
 rt_sem_init(&net_ready, "net_ready", 0, RT_IPC_FLAG_FIFO);
 / 注冊(cè) wlan ready 回調(diào)函數(shù) /
 rt_wlan_register_event_handler(RT_WLAN_EVT_READY, wlan_ready_handler, RT_NULL);
 / 注冊(cè) wlan 斷開(kāi)回調(diào)函數(shù) /
 rt_wlan_register_event_handler(RT_WLAN_EVT_STA_DISCONNECTED, wlan_station_disconnect_handler, RT_NULL);
 / 同步連接熱點(diǎn) /
 result = rt_wlan_connect(WLAN_SSID, WLAN_PASSWORD);
 if (result == RT_EOK)
 {
 rt_memset(&info, 0, sizeof(struct rt_wlan_info));
 / 獲取當(dāng)前連接熱點(diǎn)信息 /
 rt_wlan_get_info(&info);
 LOG_D("station information:");
 print_wlan_information(&info,0);
 / 等待成功獲取 IP /
 result = rt_sem_take(&net_ready, NET_READY_TIME_OUT);
 if (result == RT_EOK)
 {
 LOG_D("networking ready!");
 msh_exec("ifconfig", rt_strlen("ifconfig"));
 }
 else
 {
 LOG_D("wait ip got timeout!");
 }
 / 回收資源 /
 rt_wlan_unregister_event_handler(RT_WLAN_EVT_READY);
 rt_sem_detach(&net_ready);
 }
 else
 {
 LOG_E("The AP(%s) is connect failed!", WLAN_SSID);
 }
 rt_thread_mdelay(5000);
 //LOG_D("ready to disconect from ap ...");
 //rt_wlan_disconnect();
 / 自動(dòng)連接 */
 LOG_D("start to autoconnect ...");
 wifi_autoconnect();
 return 0;
 }
 4、云平臺(tái)的自動(dòng)初始化與數(shù)據(jù)上傳:
static void onenet_upload_entry(void *parameter)
 {
 while(1)
 {
 if (onenet_mqtt_upload_digit("Toilet Frequency", value) < 0)
 {
 LOG_E("upload has an error, stop uploading");
 break;
 }
 else
 {
 LOG_D("buffer : {"Toilet Frequency":%d}", value);
 }
 rt_thread_delay(rt_tick_from_millisecond(30 * 1000));
 }
 }
 int onenet_upload_cycle(void)
 {
 rt_thread_t tid;
 tid = rt_thread_create("onenet_send",
 onenet_upload_entry,
 RT_NULL,
 2 * 1024,
 RT_THREAD_PRIORITY_MAX / 3 - 1,
 5);
 if (tid)
 {
 rt_thread_startup(tid);
 }
 return 0;
 }
項(xiàng)目成品展示
1、夜間照明系統(tǒng)工作示意圖
2、如廁頻率數(shù)據(jù)實(shí)時(shí)上傳onenet:

- 
                                傳感器
                                +關(guān)注
關(guān)注
2573文章
54030瀏覽量
782867 - 
                                wifi模塊
                                +關(guān)注
關(guān)注
60文章
388瀏覽量
76245 - 
                                RT-Thread
                                +關(guān)注
關(guān)注
32文章
1514瀏覽量
43987 - 
                                STM32F407ZGT6
                                +關(guān)注
關(guān)注
4文章
5瀏覽量
5326 - 
                                OneNET
                                +關(guān)注
關(guān)注
1文章
52瀏覽量
13735 
發(fā)布評(píng)論請(qǐng)先 登錄
stm32f407zgt6上移植emwin怪問(wèn)題
stm32f407zgt6封裝引腳圖
如何對(duì)STM32F407ZGT6進(jìn)行仿真
STM32F407ZGT6是什么
如何對(duì)STM32F407ZGT6系列進(jìn)行Proteus仿真
STM32F407ZGT6的引腳是如何進(jìn)行接線的
stm32f407Zgt6與hc05藍(lán)牙模塊通信步驟
STM32F407ZGT6升級(jí)板電路原理圖免費(fèi)下載
    
STM32F407ZGT6開(kāi)發(fā)板的電路原理圖免費(fèi)下載
    
STM32F407ZGT6核心板的資料合集免費(fèi)下載
    
應(yīng)用筆記|基于STM32F407ZGT6實(shí)現(xiàn)微生態(tài)花園控制系統(tǒng)設(shè)計(jì)
    
          
        
        
基于stm32f407zgt6的夜間燈光照明系統(tǒng)設(shè)計(jì)
                
 
           
            
            
                
            
評(píng)論