資料介紹
描述
動機:
你有沒有想過你的大學(xué)宿舍有多受歡迎?無法了解房間內(nèi)有多少人?擔(dān)心違反防火規(guī)范?這些問題不斷地掠過我的腦海,讓我失眠。直到我決定創(chuàng)建一個能夠告訴我的設(shè)備!訪客計數(shù)器是一種方便的設(shè)備,只需在進出人數(shù)時統(tǒng)計房間內(nèi)的人數(shù)即可!您不僅可以統(tǒng)計您房間內(nèi)的人數(shù),還可以查看一天甚至一周內(nèi)有多少人進出您的房間。
概述:
啟動時,訪客計數(shù)器需要大約 10 秒來初始化其硬件并準(zhǔn)備就緒,在此期間會顯示加載屏幕。設(shè)備完成初始化后,三個計數(shù)器,Inside 、Entered和Exited將出現(xiàn)在屏幕上,設(shè)備已準(zhǔn)備好發(fā)出隆隆聲!建議將訪客柜臺放置在距離地面至少 3 英尺的門口。定位后打開電源,設(shè)備將開始計數(shù)。當(dāng)設(shè)備檢測到人時,它會開始播放提示音,一旦該人通過,提示音就會停止。如果按下按鈕,屏幕上的計數(shù)器將重置為 0。
電子設(shè)置:
主要的電子硬件組件是Pocketbeagle 、兩個 HC - SR04 超聲波傳感器、一個 Mikroe OLED C 顯示器和一個壓電元件。
- 袖珍獵犬:
對于這個設(shè)備,我在代碼中指定了我需要的所有不同引腳。為了讓設(shè)備在啟動時啟動程序,我執(zhí)行了以下步驟。
sudo crontab -e
然后我一直向下滾動到底部并添加了這行代碼。我必須確保為我的 shell 腳本輸入正確的路徑,否則代碼將無法運行。
@reboot sleep 30 && sh /var/lib/cloud9/ENGI301/python/project_1/run_guest_counter.sh > /home/debian/bin/logs/cronlog 2>&1
要檢查它是否有效:
sudo reboot
-超聲波傳感器:
HC - SR04 傳感器有 4 個連接:GND、TRIG、ECHO、VCC。VCC 是為傳感器供電的 5V 輸入。TRIG 從 pocketbeagle 獲取輸出脈沖來告訴傳感器何時發(fā)出聲音信號。ECHO 是從傳感器到 pocketbeagle 的 5V 輸出,表示信號已反彈并被傳感器接收。
我嘗試了許多不同的庫和設(shè)置超聲波傳感器的方法。一種方法是手動將 GPIO 引腳指定為輸出和輸入,并創(chuàng)建一個函數(shù)來發(fā)送觸發(fā)器、設(shè)置定時器并在返回距離之前接收回波。此外,網(wǎng)上還有其他一些過時的庫,它們根本不起作用。因此,adafruit 的這個特定庫幾乎沒有給我?guī)硎裁磫栴}。
adafruit HC - SR04 庫有一個稱為距離的函數(shù),它通過連接到 TRIG 的引腳發(fā)出脈沖,并測量從連接到 ECHO 的引腳讀取電壓所需的時間。
要安裝 adafruit 庫,請在 pocketbeagle 終端中輸入以下內(nèi)容:
sudo pip3 install adafruit-circuitpython-hcsr04
?
-顯示:
pocketbeagle 有兩個 Mikrobus 位置,這在技術(shù)上允許 pocketbeagle 使用兩個單獨的點擊板,只需將它們插入板上的接頭即可。對于訪客柜臺,顯示屏插入“MikroElektronika Click Board 2 Position”,如下圖所示。
為了設(shè)置顯示,我遵循了這個 hackster項目的說明,演示了如何在 pocketbeagle 上使用 Mikroe Click 板。
以下是 url 中描述的步驟的縮寫版本。
首先,我必須下載名為 PB_SPI1_OLEDC_click.dtbo 的“PocketBeagle? OLED-C Click Device Tree Overlay Binary”文件(可以位于該項目的 github 存儲庫中)并將其上傳到 pocketbeagle 上的 Cloud9 文件夾。
- 然后將文件復(fù)制到 /lib/firmware 目錄
sudo cp PB-SPI1-OLEDC-CLICK.dtbo /lib/firmware/
- 接下來我必須編輯 /boot/uEnv.txt 以在啟動時使用設(shè)備樹文件。
sudo nano /boot/uEnv.txt
- 在 nano 中進行以下更改
###Additional custom capes
uboot_overlay_addr4=/lib/firmware/PB-SPI1-OLEDC-CLICK.dtbo
#uboot_overlay_addr5=/lib/firmware/.dtbo
#uboot_overlay_addr6=/lib/firmware/.dtbo
#uboot_overlay_addr7=/lib/firmware/.dtbo
- 下次重啟
sudo reboot
Hackster 項目詳細(xì)介紹了檢查驅(qū)動程序是否正確設(shè)置的進一步步驟。
為了真正能夠在顯示器上顯示圖像,我下載了 fbi (Linux Frame Buffer Image-viewer)
sudo apt-get install fbi
顯示圖像的命令是:
sudo fbi -T 1 -a NameofImage
代碼中使用了python中的os模塊,在程序中調(diào)用上述命令來改變圖像。
使用此顯示器時出現(xiàn)的一個獨特問題是您只能在其上顯示圖像:您不能直接發(fā)送要顯示的文本。此外,雖然顯示器的邊框應(yīng)該是 96 x 96 像素,但如果您嘗試顯示正確尺寸的圖像,它會翻轉(zhuǎn)并偏離屏幕邊緣。
為了解決這些問題,我不得不使用 python 中的pillow庫。這使我能夠在精確位置手動將文本繪制到圖像上,保存圖像,然后在將圖像發(fā)送到顯示器之前翻轉(zhuǎn)圖像。
要為 python 安裝 pillow,首先必須安裝它的依賴項。實際上只需要兩個依賴項:zlib 和 libjpeg。對于這個項目,我最終在終端中使用以下代碼安裝了所有這些。
sudo apt-get install libtiff5-dev libjpeg8-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev libharfbuzz-dev libfribidi-dev tcl8.6-dev tk8.6-dev python-tk
然后實際安裝枕頭:
sudo pip install pillow
最初測試庫時,我在從庫中選擇字體時遇到問題,所以我下載了“arial.ttf”文件(可以在存儲庫中找到)并將其放在與我的代碼相同的文件夾中。
有關(guān)顯示器使用的更多信息,請參見附件中的“display.py”文件。
- 壓電元件
揚聲器連接到 pwm 引腳并接收輸入信號以產(chǎn)生聲音。
電子,布線:
下面是設(shè)備的燒結(jié)圖:
*注意:顯示屏未顯示在上面的熔結(jié)圖上,有關(guān)顯示屏的接線說明,請參見下面的部分。
Mikroe OLED C 顯示屏:
顯示器直接插入 Click Board 2 位置的 pocketbeagle。
HC - SR04 連接:
-左傳感器:
接地 --> 接地
回聲 --> P2_4*
觸發(fā) --> P2_2
電壓源 --> 5V
-右傳感器:
接地 --> 接地
回聲 --> P2_8*
觸發(fā) --> P2_6
電壓源 --> 5V
*注意:ECHO 輸出電壓為 5V,但 GPIO 引腳的最大額定電壓為 3.3V,最高可處理 3.6V。我使用分壓器將電壓降至 3.5V
我最初使用分壓器設(shè)置傳感器,將電壓從 5v 拉低至 3.3v,使用兩個串聯(lián)的 1 kOhm 電阻作為 R2 和一個 1 kOhm 電阻作為 R1。但是,我注意到超聲波傳感器返回的值有些不一致。
下面是原始設(shè)置的圖片:
新的和當(dāng)前的設(shè)置將電壓降至 3.5V,并將兩個傳感器分開并使它們相距更遠(yuǎn)。
揚聲器連接:
接地 --> 接地
脈寬調(diào)制 --> P2_1
按鈕連接:
接地 --> 接地
GPIO --> P2_3*
*注意:1k 電阻至 5V,參見熔結(jié)圖
這個怎么運作:
第 1 步:將設(shè)備放置在門口
第 2 步:打開設(shè)備
第 3 步:等待加載屏幕完成并顯示計數(shù)器
第 4 步:享受吧!
問題:
測試:
目前的原型包含許多錯誤,其中大部分源于超聲波傳感器的問題。其中一個問題是,每次屏幕更新時,它都會延遲傳感器讀取聲音的返回信號,并返回距離讀數(shù)很遠(yuǎn)的距離。另一個錯誤來源是,超聲波傳感器需要同時獲取讀數(shù)才能檢測是否有人經(jīng)過,但它們不能同時獲取讀數(shù),否則會發(fā)生干擾。因此在代碼中,傳感器一次讀取一個讀數(shù),這意味著該設(shè)備可能會錯過路過的人。
外殼:
外殼的 CAD 模型如下所示。它包含前面的超聲波傳感器切口、頂部的屏幕切口和按鈕,以及背面的電源線切口。CAD 文件附加到項目中。不幸的是,我沒有進行實際激光切割外殼部件的最后一步。
未來的改進:
- 激光切割模型外殼,該外殼將包含設(shè)備并保持按鈕、揚聲器的功能,并且不會妨礙傳感器。
- 放棄所有連接的無焊面包板
- 修改確定 w 人是否通過設(shè)備的算法。當(dāng)前的設(shè)置涉及使用一個線程不斷地從聲納中獲取值,并使用另一個線程檢查是否有東西在聲納的視線范圍內(nèi)。此外,第三個線程在后臺運行,更新設(shè)備上顯示的值。
- 使用不同的傳感器,如斷光束傳感器,它不會連續(xù)發(fā)回讀數(shù),而是簡單地檢測其路徑是否被阻塞。此外,傳感器不需要從門口的另一邊進行通信。
?
- 關(guān)于監(jiān)控房間內(nèi)的溫度開源分享
- 基于Arduino UNO的房間清潔機器人Roombot 1次下載
- 一種計算進出您門的人數(shù)的設(shè)備
- 使用Helium、Grid EYE和Raspberry Pi進行人數(shù)統(tǒng)計
- 基于51單片機的教室人數(shù)檢測
- 基于單片機的教室人數(shù)檢測系統(tǒng)
- 單片機-人數(shù)統(tǒng)計系統(tǒng)
- 使用51單片機實現(xiàn)統(tǒng)計展覽會4個入口參展總人數(shù)的仿真設(shè)計實例教文件 20次下載
- 如何使用結(jié)合特征圖譜學(xué)習(xí)的方法進行人數(shù)統(tǒng)計詳細(xì)方法說明 3次下載
- 基于嵌入式平臺人臉檢測及實時人數(shù)統(tǒng)計 2次下載
- 基于MATLAB的數(shù)字圖像人數(shù)統(tǒng)計_張建青 9次下載
- C語言教程之統(tǒng)計不及格的人數(shù)問題 0次下載
- 基于單片機的太陽能人數(shù)統(tǒng)計系統(tǒng)設(shè)計 101次下載
- 室內(nèi)LED智能照明節(jié)能系統(tǒng)的設(shè)計 178次下載
- 手持式公交車收費及信息統(tǒng)計裝置 97次下載
- UWB室內(nèi)定位系統(tǒng)的優(yōu)勢與好處 1968次閱讀
- 漁船人員進出如何利用rfid來控制 634次閱讀
- 油浸電力變壓器民用建筑中設(shè)置的要求 1.4w次閱讀
- firefly連鎖店客流統(tǒng)計簡介 1420次閱讀
- 浴室內(nèi)局部等電位連接圖 1.1w次閱讀
- 毫米波雷達應(yīng)用于室內(nèi)人員檢測的原理解析 9537次閱讀
- 多空持倉人數(shù)比的數(shù)據(jù)思路分析 1.8w次閱讀
- 二氧化碳傳感器在房間內(nèi)空氣質(zhì)量中的應(yīng)用 1379次閱讀
- 如何從騰訊QQ游戲高性能服務(wù)器集群架構(gòu)看分布式架構(gòu)設(shè)計原則 4150次閱讀
- PCB抗瞬態(tài)導(dǎo)電性和PCB抗電磁場輻射性 3614次閱讀
- 手持式公交車信息收集收費裝置設(shè)計 1192次閱讀
- 中央空調(diào)溫控器原理 1.4w次閱讀
- 智能垃圾桶的工作原理詳解 5.6w次閱讀
- 一篇文章帶你認(rèn)識“掃地機器人” 1703次閱讀
- 智能型節(jié)能飲水機制作電路圖 7264次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多