聲明:該項(xiàng)目設(shè)計(jì)來源DF創(chuàng)客社區(qū),僅供學(xué)習(xí)參考,不可用于商業(yè)用途。
前言:
寵物自動(dòng)感應(yīng)相機(jī)設(shè)計(jì)目的是為了能夠隨時(shí)隨地和家人朋友分享家中愛寵的照片信息,由于工作繁忙,沒有太多時(shí)間去關(guān)照家里的寵物,更別說拍照片了,所以萌發(fā)了想給家中的狗狗拍照片的想法。
之前想過用山狗和樹莓派來搭建,但是都沒有去做,因?yàn)閮蓚€(gè)問題,第一個(gè)如果用樹莓派的官方攝像頭,不太好集成到我的程序里面,只能通過shell腳本來實(shí)現(xiàn),不夠高端大氣上檔次。。。如果用arduino有覺得攝像頭不好控制。。。。后來參加blueeye做無人船的時(shí)候,大熊借給我一塊Edison,所以決定用edison去實(shí)現(xiàn)拍照的功能,是不是有作死的感覺,通過查閱資料,看到edison的運(yùn)算性能非常不錯(cuò),又非常的低功耗,也有大神已經(jīng)實(shí)現(xiàn)了在edison上跑opencv的實(shí)踐。
寵物自動(dòng)感應(yīng)相機(jī)視頻演示:
用edison結(jié)合傳感器來實(shí)現(xiàn)拍照原理:
也許在大牛的眼里,就是小兒科啊。。。我只用了一個(gè)傳感器,就是人體紅外熱釋傳感器,也叫運(yùn)動(dòng)傳感器,就是如果傳感器感應(yīng)到有運(yùn)動(dòng)物體就會(huì)產(chǎn)生電平的高低變化(因?yàn)檫@是一個(gè)數(shù)字傳感器),通過程序判斷電平的高低變化就可以實(shí)現(xiàn)對(duì)運(yùn)動(dòng)物體的檢測,然后通過edison結(jié)合opencv的視覺庫,進(jìn)行抓圖的操作,并存入一張照片,然后利用定時(shí)腳本將拍攝的照片通過wifi傳入阿里云服務(wù)器,再通過編輯好的頁面展示出來。這樣,不管是在任何地方,任何時(shí)間,只要萌寵經(jīng)過傳感器的前方,就會(huì)被感應(yīng)到,并且被拍照上傳服務(wù)器。我和我的朋友家人就可以通過手機(jī)或者電腦,隨時(shí)隨地的訪問這些圖片了。
當(dāng)然,后期會(huì)考慮如果涉及到安全和隱私的話,我們會(huì)加入驗(yàn)證環(huán)節(jié)。另外,通過在喂食盆附近的放置該設(shè)備,還可以通過對(duì)圖片的統(tǒng)計(jì)算出寵物被感應(yīng)到的次數(shù),就可以繪制出一個(gè)曲線,判斷萌寵饑餓的程度,然后提供的數(shù)據(jù)可以總結(jié)后設(shè)置一個(gè)自動(dòng)喂食機(jī)構(gòu),在達(dá)到閾值就投放食物,真是寵物用品界的大數(shù)據(jù)分析和應(yīng)用?。?/p>
想法誕生的時(shí)候只是簡單畫了個(gè)圖:
現(xiàn)場制作過程中由于大家都太專注,拍攝的圖片少,大家湊合看啦,頭骨是用502粘到俞廷同學(xué)設(shè)計(jì)和打印的3D外殼上的。
制作需要的物件:
- Edison 一塊
- Edison擴(kuò)展板 一塊
- 還要一塊很重要的設(shè)備,就是DFRobot的一塊I/O extended sheild,有了它,一切變得更加簡單了。
- 母對(duì)母頭杜邦線 x 3
- 270度攝像頭一個(gè)
- 人體紅外熱釋傳感器 一個(gè)
- 構(gòu)建過程極其簡單,我將人體紅外熱釋傳感器通過線纜接入到i/o擴(kuò)展板的7號(hào)接口,記得看清楚pin腳的描述。
- vcc----接5v
- GND---接地
- sign----接io擴(kuò)展板的pin腳。
- 攝像頭-----接usb接口(唯一一個(gè)寬口的USB)
然后刷入yoctolinux系統(tǒng),這個(gè)過程需要用到:
具體刷系統(tǒng)的過程就不寫了。很簡單,intel官方網(wǎng)站有,請(qǐng)自行搜索。
然后啟動(dòng)edison的時(shí)候通過串口連入edison。這里要簡單說明一下,edison有兩個(gè)microusb的接口。和我們用的android手機(jī)充電接口一樣,最下面的那個(gè)是調(diào)試串口,上面的一個(gè)小的microusb是和大口usb共用的,靠一個(gè)switch來控制。
這個(gè)實(shí)驗(yàn)里面我已經(jīng)把switch撥到靠近大usb口的位置了,所以大的usb將會(huì)得到應(yīng)用。小的可以做為供電。然后通過電腦連接串口進(jìn)行查看。因?yàn)槲业碾娔X是mac,所以我用的的方法和大家不一樣,如果是windows就用putty去連接設(shè)備。
更多操心講解詳見附件內(nèi)容。
opencv的源代碼,見附件內(nèi)容下載:
shell腳本記得加執(zhí)行權(quán)限:
#chmod +x upload.sh
還有一個(gè)Makefile: