新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于Dragonboard 410c使用紅外探測(cè)人體運(yùn)動(dòng)情況

基于Dragonboard 410c使用紅外探測(cè)人體運(yùn)動(dòng)情況

作者: 時(shí)間:2017-10-11 來(lái)源:網(wǎng)絡(luò) 收藏

是安防設(shè)計(jì)中常用的一種,通過(guò)該可以快速的探測(cè)到移動(dòng)的物體,目前許多攝像頭上都集成了紅外移動(dòng)偵測(cè)開(kāi)關(guān),可以在有移動(dòng)物體入侵的時(shí)候快速的啟動(dòng)攝像設(shè)備觀察和拍照記錄,這樣就可以有效的避免了攝像頭長(zhǎng)期工作中浪費(fèi)電能和影響其使用壽命,本節(jié)博客將基于開(kāi)發(fā)板來(lái)實(shí)現(xiàn)通過(guò)紅外移動(dòng)偵測(cè)來(lái)探測(cè)人體的運(yùn)動(dòng),具體的設(shè)計(jì)如下:

本文引用地址:http://2s4d.com/article/201710/365558.htm

一、硬件設(shè)備的準(zhǔn)備

這里大家首先要準(zhǔn)備的硬件設(shè)備包括一個(gè)Dragonboard 410c開(kāi)發(fā)板、給開(kāi)發(fā)板供電的電源、面包板和杜板線等,如下圖1所示:

圖1 DragonBoard 410c開(kāi)發(fā)板及相關(guān)套件

Dragonboard 410c開(kāi)發(fā)板是由高通推出的一塊面向創(chuàng)客群體的開(kāi)發(fā)套件,體積小但是功能非常強(qiáng)大,具體的資料和相關(guān)的學(xué)習(xí)內(nèi)容可以在http://qualcomm.csdn.NET/上有詳細(xì)介紹。

然后還需要,準(zhǔn)備一個(gè)紅外感應(yīng)模塊,本文使用的是常用的HC-SR501紅外模塊,如下圖2所示,該模塊的技術(shù)參數(shù)如下:

1)工作電壓:DC5V至20V

2)靜態(tài)功耗:65微安

3)電平輸出:高3.3V,低0V

4)延時(shí)時(shí)間:可調(diào)(0.3秒~18秒)

5)封鎖時(shí)間:0.2秒

6)觸發(fā)方式:L不可重復(fù),H可重復(fù),默認(rèn)值為H

7)感應(yīng)范圍:小于120度錐角,7米以內(nèi)

8)工作溫度:-15~+70度

9)PCB外形尺寸:32*24mm,螺絲孔距28mm,螺絲孔徑2mm,感應(yīng)透鏡尺寸:(直徑):23mm(默認(rèn))

圖2 HC-SR501人體紅外感應(yīng)模塊

以上就是所使用的硬件,開(kāi)發(fā)軟件工具的準(zhǔn)備大家可以參考基于Linux系統(tǒng)實(shí)現(xiàn)DragonBoard 410c GPIO的控制一文中的軟硬件環(huán)境的搭建過(guò)程,因?yàn)槲覀冏罱K要完成對(duì)紅外感應(yīng)開(kāi)關(guān)的控制主要還是需要通過(guò)GPIO控制來(lái)實(shí)現(xiàn)。

二、軟件環(huán)境的搭建

本文在設(shè)計(jì)程序過(guò)程中,使用的是Linux操作系統(tǒng),Dragonboard 410c開(kāi)發(fā)板linux系統(tǒng)的安裝和環(huán)境搭建參考https://developer.qualcomm.com/hardware/dragonboard-410c/tools上的資源和工具,下載linux鏡像和使用手冊(cè)根據(jù)使用手冊(cè)進(jìn)行安裝,完成linux環(huán)境的搭建。

完成linux環(huán)境的搭建后還需要在linux環(huán)境下安裝一個(gè)QT庫(kù),該庫(kù)的移植可以參考博客QT+Opencv粒子濾波算法實(shí)現(xiàn)視頻目標(biāo)跟蹤——(三)QT環(huán)境安裝及配置,這個(gè)庫(kù)主要是為后續(xù)我們?cè)O(shè)計(jì)和開(kāi)發(fā)紅外人體傳感器模塊提供相應(yīng)的顯示功能,以上就是整個(gè)開(kāi)發(fā)過(guò)程中的軟件環(huán)境的搭建。

三、硬件連接

準(zhǔn)備好硬件后,我們各個(gè)硬件模塊用杜邦線進(jìn)行連接,如下圖3所示。這里連接過(guò)程需要注意,供電直接從Dragoboard 410c開(kāi)發(fā)板提供的5v電源給紅外感應(yīng)模塊進(jìn)行供電,完成連線后,如果大家手中有萬(wàn)用表最好先測(cè)量一下,看是否有出現(xiàn)短路現(xiàn)象,還有一點(diǎn)就是在I/O口連接的過(guò)程中,不能直接將紅外模塊的輸出I/O口接到Dragoboard410c開(kāi)發(fā)板上,應(yīng)為開(kāi)發(fā)板的I/O電壓為1.8v,而紅外模塊的輸出電壓為3.3v,直接接會(huì)導(dǎo)致系統(tǒng)工作不問(wèn)題,I/O口被燒壞。

圖3 硬件連接示意圖

四、軟件設(shè)計(jì)

完成硬件連接后,接著就可以進(jìn)行軟件設(shè)計(jì)了,軟件設(shè)計(jì)中主要是采用QT作為界面,然后通過(guò)調(diào)用系統(tǒng)函數(shù)來(lái)訪問(wèn)和控制相關(guān)的GPIO口來(lái)監(jiān)測(cè)和讀取紅外感應(yīng)模塊輸出端的電平變化,對(duì)其輸出進(jìn)行監(jiān)測(cè),具體的軟件設(shè)計(jì)與基于Linux系統(tǒng)實(shí)現(xiàn)DragonBoard 410c GPIO的控制一文中的GPIO程序設(shè)計(jì)一樣,只是在上層增加了QT來(lái)進(jìn)行處理,在QT環(huán)境下通過(guò)一個(gè)定時(shí)器來(lái)控制GPIO訪問(wèn)的頻率,然后將獲取的結(jié)果顯示到界面上,核心程序設(shè)計(jì)如下:

int get_Infrared _status(int Key){

int tmp=1;

int TIme=0;

Write_GPIO(Infrared_stat, 1) ;

do{

delay_ms(10);

if(Read_GPIO(infrared_stat, tmp)==0){

TIme++;

}

else return -1;

if(TIme>=100){

break; //輸出的電平維持時(shí)間超過(guò)1s,表示探測(cè)到人體,退出檢測(cè)。

}

}while(!tmp)

if(TIme>=50){ //輸出電平大于0.5s認(rèn)為有人體進(jìn)入,不是干擾

return 1;

}

else return 0;

}

五、測(cè)試

完成軟件設(shè)計(jì)后,利用qmake工具進(jìn)行交叉編譯,編譯后的文件下載到安裝了linux的Dragoboard 410c開(kāi)發(fā)板,并將開(kāi)發(fā)板的HDMI輸出連接到顯示器上,運(yùn)行后用手在傳感器邊上移動(dòng),可以看到LED燈變亮和熄滅。

總結(jié),本文介紹了大家如何通過(guò)Dragobard 410c開(kāi)發(fā)板來(lái)實(shí)現(xiàn)紅外感應(yīng)監(jiān)測(cè),后續(xù)大家還可以結(jié)合前面有關(guān)利用Dragobard和攝像頭實(shí)現(xiàn)幀測(cè)的博客,實(shí)現(xiàn)一個(gè)利用紅外傳感器來(lái)喚醒攝像頭工作進(jìn)行基于觸發(fā)方式的拍照和監(jiān)測(cè)功能。



評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉