資料介紹
描述
動機:
你有沒有想過你的大學(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 項目詳細介紹了檢查驅(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,并將兩個傳感器分開并使它們相距更遠。
揚聲器連接:
接地 --> 接地
脈寬調(diào)制 --> P2_1
按鈕連接:
接地 --> 接地
GPIO --> P2_3*
*注意:1k 電阻至 5V,參見熔結(jié)圖
這個怎么運作:
第 1 步:將設(shè)備放置在門口
第 2 步:打開設(shè)備
第 3 步:等待加載屏幕完成并顯示計數(shù)器
第 4 步:享受吧!
問題:
測試:
目前的原型包含許多錯誤,其中大部分源于超聲波傳感器的問題。其中一個問題是,每次屏幕更新時,它都會延遲傳感器讀取聲音的返回信號,并返回距離讀數(shù)很遠的距離。另一個錯誤來源是,超聲波傳感器需要同時獲取讀數(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)計詳細方法說明 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)勢與好處 2183次閱讀
- 漁船人員進出如何利用rfid來控制 696次閱讀
- 油浸電力變壓器民用建筑中設(shè)置的要求 1.5w次閱讀
- firefly連鎖店客流統(tǒng)計簡介 1561次閱讀
- 浴室內(nèi)局部等電位連接圖 1.1w次閱讀
- 毫米波雷達應(yīng)用于室內(nèi)人員檢測的原理解析 9734次閱讀
- 多空持倉人數(shù)比的數(shù)據(jù)思路分析 1.9w次閱讀
- 二氧化碳傳感器在房間內(nèi)空氣質(zhì)量中的應(yīng)用 1482次閱讀
- 如何從騰訊QQ游戲高性能服務(wù)器集群架構(gòu)看分布式架構(gòu)設(shè)計原則 4279次閱讀
- PCB抗瞬態(tài)導(dǎo)電性和PCB抗電磁場輻射性 3717次閱讀
- 手持式公交車信息收集收費裝置設(shè)計 1285次閱讀
- 中央空調(diào)溫控器原理 1.4w次閱讀
- 智能垃圾桶的工作原理詳解 5.7w次閱讀
- 一篇文章帶你認(rèn)識“掃地機器人” 1764次閱讀
- 智能型節(jié)能飲水機制作電路圖 7467次閱讀
下載排行
本周
- 1涂鴉各WiFi模塊原理圖加PCB封裝
- 11.75 MB | 76次下載 | 1 積分
- 2錦銳科技CA51F2 SDK開發(fā)包
- 24.06 MB | 29次下載 | 1 積分
- 3錦銳CA51F005 SDK開發(fā)包
- 19.47 MB | 3次下載 | 1 積分
- 4蘋果iphone 11電路原理圖
- 4.98 MB | 3次下載 | 2 積分
- 5基礎(chǔ)模擬電子電路
- 3.80 MB | 3次下載 | 1 積分
- 6RA-Eco-RA6M4-100PIN-V1.0開發(fā)板資料
- 34.89 MB | 1次下載 | 免費
- 7STM32F3系列、STM32F4系列、STM32L4系列和STM32L4+系列Cortex-M4編程手冊
- 3.32 MB | 1次下載 | 免費
- 8聯(lián)想A820t手機維修圖紙包括主板原理圖 尾板原理圖 點位圖
- 0.62 MB | 次下載 | 5 積分
本月
- 1AI智能眼鏡產(chǎn)業(yè)鏈分析
- 4.43 MB | 383次下載 | 免費
- 2蘇泊爾電磁爐線路的電路原理圖資料合集
- 2.02 MB | 296次下載 | 5 積分
- 3貼片三極管上的印字與真實名稱的對照表詳細說明
- 0.50 MB | 94次下載 | 1 積分
- 4長虹液晶電視R-HS310B-5HF01的電源板電路原理圖
- 0.46 MB | 91次下載 | 5 積分
- 5涂鴉各WiFi模塊原理圖加PCB封裝
- 11.75 MB | 76次下載 | 1 積分
- 6錦銳科技CA51F2 SDK開發(fā)包
- 24.06 MB | 29次下載 | 1 積分
- 7AO4803A雙P通道增強型場效應(yīng)晶體管的數(shù)據(jù)手冊
- 0.11 MB | 28次下載 | 2 積分
- 8長虹液晶彩電LS29機芯的技術(shù)資料說明
- 3.42 MB | 16次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935127次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191388次下載 | 10 積分
- 5十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183342次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81588次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73815次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評論