資料介紹
作者制作了一個(gè)基于光敏電阻的心率監(jiān)測(cè)器以在示波器上顯示。這樣您就可以在示波器上查看波形,同時(shí)還可以讀出您的心率。
當(dāng)心臟收縮并將血液推向全身時(shí),可以檢測(cè)到血壓的瞬時(shí)波動(dòng)。這就是我們可以感覺到脈搏的原因。在皮膚和肌肉足夠薄的身體區(qū)域,可以在穿過的光的輕微變化中檢測(cè)到這些脈沖。雖然我們的眼睛不夠敏感,甚至無法看到穿過我們身體的光線,更不用說波動(dòng)了,但光敏電阻確實(shí)具有這種程度的敏感度。
光敏電阻會(huì)隨著落在其上的光強(qiáng)而改變其電阻。盡管對(duì)于光照強(qiáng)度的細(xì)微變化,電阻的變化可能非常小,但可以使用幾個(gè)運(yùn)算放大器 IC 來放大它們。
操作原理
下圖顯示了電路原理圖以及該項(xiàng)目中使用的面包板。
1 / 2
光敏電阻與 20kΩ 電阻器位于分壓器中,這意味著隨著電阻器上光量的增加,分壓器上的電壓也會(huì)增加。第一個(gè)運(yùn)算放大器(上圖中的“Amp1”)用作分壓器的濾波器,從信號(hào)中去除高頻噪聲。第二個(gè)運(yùn)算放大器(“Amp2”)用作反相放大器,設(shè)置為最大化通過濾波器的信號(hào)。第三個(gè)運(yùn)算放大器(“Amp3”)設(shè)置虛擬接地,將信號(hào)集中在 2.5V。這確保運(yùn)算放大器能夠提供從 0V 到 5V 的最大信號(hào)擺幅。經(jīng)過過濾和放大后,信號(hào)看起來像這樣。
為了讓 Arduino 測(cè)量您的心率,信號(hào)需要通過一個(gè)比較器(示意圖中的“Cmp”)。比較器是專門設(shè)計(jì)用于輸出高信號(hào)或低信號(hào)的運(yùn)算放大器。當(dāng)正輸入電壓大于負(fù)輸入電壓時(shí),比較器輸出高電平,當(dāng)正輸入電壓小于負(fù)輸入電壓時(shí),比較器輸出低電平。在其最基本的配置中,比較器用作閾值檢測(cè)器,在測(cè)量電壓高于或低于該閾值時(shí)發(fā)出信號(hào)。由于比較器輸出高電平 (5V) 或低電平 (0V),因此非常適合與 Arduino 的數(shù)字引腳連接。
注意噪音和重搏切跡。
仔細(xì)觀察來自運(yùn)算放大器的信號(hào)圖像,很明顯在電壓下降之前有一個(gè)二次脈沖(這稱為重博陷波)。此外,信號(hào)中存在大量噪聲。這兩個(gè)事實(shí)意味著基本的比較器配置將無法正確檢測(cè)脈沖。比較器將生成多個(gè)脈沖,而不是每次心跳都生成一個(gè)方波脈沖。發(fā)生這種情況是因?yàn)樵肼晻?huì)導(dǎo)致信號(hào)在上升和下降過程中多次超過閾值,并且可能在重搏切跡期間根據(jù)閾值的設(shè)置位置而定。這將導(dǎo)致 Arduino 計(jì)算出比實(shí)際存在的更多的脈沖。
可以使用滯后來處理噪聲信號(hào)。這個(gè)文件德州儀器 (Texas Instruments) 就滯后信號(hào)調(diào)理主題進(jìn)行了精彩討論,展示了信號(hào)噪聲如何影響比較器性能,以及如何處理這些問題。我使用他們的原理圖和導(dǎo)出的方程式(分別為文檔的第 5 頁(yè)和第 7 頁(yè))為該項(xiàng)目設(shè)計(jì)了非對(duì)稱比較器。總體思路是來自輸出的反饋回路將改變正輸入端的電壓,這意味著從低到高的閾值將不同于從高到低的閾值。這在心臟脈搏的背景下意味著比較器可以設(shè)置為在上擺的一個(gè)點(diǎn)觸發(fā),然后在下擺的不同點(diǎn)觸發(fā),最好是在重搏切跡之后。這樣,Arduino 將在每次心跳時(shí)看到一個(gè)方波脈沖,
黃色信號(hào)來自比較器,每次心跳時(shí)它都會(huì)變低。
光敏電阻的制備
我強(qiáng)烈建議在光敏電阻上使用某種透明覆蓋物,例如透明熱縮管。至少,確保導(dǎo)線被完全覆蓋,以免它們接觸到您的皮膚。您身體產(chǎn)生的電壓完全在光敏電阻檢測(cè)到您的脈搏時(shí)產(chǎn)生的電壓范圍內(nèi),因此與您的皮膚接觸可能會(huì)影響結(jié)果。
確保光敏電阻包裹在某種東西中以防止引線接觸皮膚。
調(diào)整心率監(jiān)測(cè)器
對(duì)于示意圖中的電位器 (R7),使用單圈電位器并對(duì)其進(jìn)行調(diào)整以最大化運(yùn)算放大器的增益而不進(jìn)入飽和狀態(tài)。首先將電位器的一側(cè)設(shè)置為大約 375Ω,并將濾波器(“Amp1”)連接到這一側(cè)。這個(gè)增益量應(yīng)該會(huì)產(chǎn)生足夠的脈沖,您將能夠在 WaveForms Live 中看到它。在執(zhí)行下一節(jié)(“在實(shí)時(shí)波形中查看脈沖”)中的步驟并成功查看您的脈沖后,您可以根據(jù)需要更改增益。通過轉(zhuǎn)動(dòng)電位器來增大脈沖幅度,使濾波器側(cè)電阻變小。如果幅度已經(jīng)太大并導(dǎo)致削波,請(qǐng)?jiān)龃鬄V波器側(cè)電阻。閱讀以下圖像上的說明,以確定所需信號(hào)的外觀。
1 / 7 ?增益為無窮大,增加濾波器側(cè)電阻。
我建議對(duì)電阻器 R3 和 R4 使用多圈電位器,以便精確設(shè)置比較器的閾值。電阻 R5 可以是 10-100kΩ 范圍內(nèi)的任何電阻,只要它被精確測(cè)量即可。您可以使用附件部分中的電子表格,根據(jù) R5 的測(cè)量值和閾值電壓來確定將 R3 和 R4 設(shè)置為什么值。閾值“Vl”和“Vh”需要根據(jù)您通過示波器看到的脈沖進(jìn)行更改(請(qǐng)參閱標(biāo)題為“設(shè)置比較器閾值”的部分)。
電阻R8和R9可以用一個(gè)電位器代替,中間的引腳接運(yùn)放的正輸入端。這樣就可以很容易地調(diào)整虛擬接地,而無需尋找匹配電阻。在將輸出調(diào)整為 2.5V 時(shí)使用電壓表或 OpenScope。
在 WaveForms Live 中查看脈沖
為了通過 WaveForms Live 查看您的心跳,您需要更改菜單中的一些設(shè)置。默認(rèn)情況下,輸出要么被拉長(zhǎng)并且難以解釋,要么更新速度非常慢并且很難調(diào)整您對(duì)光敏電阻的握持以產(chǎn)生清晰的脈沖。
將 OpenScope 示波器通道 2(藍(lán)線)連接到“Amp2”的輸出,并確保接地線連接到面包板上的地面。在 WaveForms Live中,將Time更改為“1s”,然后在Trigger菜單中按下OFF按鈕。對(duì)于Osc Ch 1和Osc Ch2 菜單,將Offset設(shè)置為 2.5V,然后單擊Samples旁邊的鎖定圖標(biāo),然后在可用的字段中鍵入“1000”。這將使信號(hào)出現(xiàn)在易于解釋的時(shí)間尺度上,但會(huì)使更新比默認(rèn)情況下更頻繁地發(fā)生。屏幕應(yīng)每 4 秒左右更新一次。如果這仍然太慢,您可以增加樣本值,但以縮短信號(hào)片段為代價(jià)(“2000”將一次捕獲大約一個(gè)心跳)。
按下RUN按鈕,用手指在光敏電阻上測(cè)量脈搏。您需要找出獲得一致結(jié)果的最佳方法。該系統(tǒng)對(duì)壓力變化非常敏感,因此您需要找到一種方法讓您的手指保持靜止。我發(fā)現(xiàn)測(cè)量脈搏的最佳位置是在食指的第一個(gè)關(guān)節(jié)處。訓(xùn)練自己需要一點(diǎn)時(shí)間,但最終你會(huì)找到最好的方法。如果您的脈搏看起來太小,請(qǐng)按照上一節(jié)(“調(diào)整心率監(jiān)測(cè)器”)第一段中的說明調(diào)整電位計(jì)。
我找到的固定光敏電阻的最佳方法。
設(shè)置比較器閾值
一旦信號(hào)在示波器上可見,您將需要設(shè)置比較器將觸發(fā)并向 Arduino 發(fā)出信號(hào)的閾值。獲取具有代表性的波形并停止捕獲以將波形保留在顯示屏上。在屏幕底部按下CURSORS按鈕。在類型下選擇“電壓”并設(shè)置兩個(gè)CursorChannels到“Osc 2”。顯示屏上將出現(xiàn)兩條水平虛線。拖動(dòng)左側(cè)的三角形來移動(dòng)它們。將其中一條線設(shè)置在脈沖峰值附近的點(diǎn),將另一條線設(shè)置在重搏切跡下方的點(diǎn)。查看屏幕底部并記錄括號(hào)中顯示的兩個(gè)電壓。在最后附上的電子表格中輸入這些值作為閾值電壓“Vl”和“Vh”。較小的值為“Vl”,較大的值為“Vh”。根據(jù)這些值和您選擇的電阻器 R5 值,設(shè)置電子表格計(jì)算的電位器 R3 和 R4 值。
用于設(shè)置比較器閾值的良好波形示例。
設(shè)置比較器后,它應(yīng)該開始輸出類似于“光敏電阻器的準(zhǔn)備”部分之前的信號(hào)。
Arduino代碼
Arduino 代碼由頻率計(jì)數(shù)器和計(jì)算心率(以每分鐘心跳次數(shù)為單位)的方法組成。頻率計(jì)數(shù)器會(huì)考慮來自比較器的脈沖寬度,并拒絕任何小于 200 毫秒或大于 800 毫秒的脈沖。當(dāng)光敏電阻未用于測(cè)量且比較器可能為高電平、低電平或在兩種狀態(tài)之間快速切換時(shí),這將防止它顯示錯(cuò)誤數(shù)據(jù)。該代碼保持前 15 秒心率的運(yùn)行平均值,以濾除因意外運(yùn)動(dòng)引起的信號(hào)噪聲而遺漏的脈搏。
未來的改進(jìn)
該項(xiàng)目的主要缺點(diǎn)是很難以脈沖在兩次使用之間具有相同幅度的方式來固定光敏電阻。由于傳感器依賴于環(huán)境光來檢測(cè)脈搏,因此全天改變光照水平可能會(huì)導(dǎo)致不同的結(jié)果。我注意到在陰天我的比較器閾值太寬,而在明亮的日子里重搏切跡非常明顯并且可能導(dǎo)致錯(cuò)誤的脈沖檢測(cè)。此外,光敏電阻甚至可以檢測(cè)到房間運(yùn)動(dòng)引起的細(xì)微光線變化。一致性問題可以通過幾種不同的方式來解決。
傳感器系統(tǒng)可以包括 LED 以提供一致的光。這類似于醫(yī)生辦公室使用的心臟監(jiān)測(cè)夾或手機(jī)中的心率監(jiān)測(cè)器。我試著用另一側(cè)的光敏電阻將紅色 LED 靠在手指的頂部。結(jié)果令人鼓舞,因此如果可以制作良好的圍欄,這可能是一個(gè)可行的選擇。
在軟件方面,一個(gè)潛在的解決方案是在 Arduino 中使用自動(dòng)量程算法。它會(huì)檢測(cè)脈沖并找到它們的波峰和波谷。但是,這不足以執(zhí)行心率測(cè)量。一個(gè)合適的頻率計(jì)數(shù)器需要中斷。如果沒有中斷,Arduino 的處理器可能會(huì)在檢查輸入引腳和錯(cuò)過脈沖之外做其他事情。由于中斷僅在數(shù)字引腳上可用,因此實(shí)現(xiàn)自動(dòng)量程的最佳方法是使用數(shù)字電位器。Arduino 將使用模擬引腳找到脈沖出現(xiàn)的范圍,確定比較器閾值應(yīng)該是多少,通過數(shù)字電位器應(yīng)用它們,然后使用來自比較器的數(shù)字信號(hào)執(zhí)行頻率計(jì)數(shù)。
- 如何使用光敏電阻
- 基于單片機(jī)的光照度(光敏電阻)測(cè)量系統(tǒng)設(shè)計(jì) 51次下載
- 光敏電阻怎么做開關(guān)
- 光敏電阻傳感器模塊55690資料匯總 37次下載
- 如何進(jìn)行光敏電阻的照度特性測(cè)試及應(yīng)用光敏電阻設(shè)計(jì)自動(dòng)照明燈電路 17次下載
- 光敏電阻傳感器模塊電路圖.pdf 151次下載
- 4線制光敏電阻傳感器模塊使用說明書.pdf 240次下載
- 光敏電阻傳感器模塊 68次下載
- 傳感器實(shí)驗(yàn)--光敏電阻-演示 5次下載
- 光敏電阻特性設(shè)定 4次下載
- 光敏電阻傳感器模塊3線制 45次下載
- Maxim醫(yī)療心率/健康狀況監(jiān)測(cè)器解決方案 55次下載
- 光敏電阻的特性和光敏電阻的應(yīng)用
- 光敏電阻的變換電路 0次下載
- 光敏電阻控制路燈開關(guān)電路及制作
- 光敏電阻是光照越強(qiáng)電阻越小嗎為什么 1257次閱讀
- 光敏電阻在開關(guān)設(shè)計(jì)中的應(yīng)用 1339次閱讀
- 光敏電阻電路工作過程 光敏電阻應(yīng)用電路 5639次閱讀
- 心率/健身監(jiān)測(cè)器無線化 792次閱讀
- 光敏電阻主要應(yīng)用在什么場(chǎng)合 1.6w次閱讀
- 光敏電阻有正負(fù)極嗎_光敏電阻的阻值如何變化 2.5w次閱讀
- 光敏二極管和光敏電阻的區(qū)別 1w次閱讀
- 深入探究光敏電阻的工作原理及應(yīng)用 1.6w次閱讀
- 光敏電阻的基礎(chǔ)知識(shí)介紹 1w次閱讀
- 光敏電阻控制燈亮硬件設(shè)計(jì)圖及程序分享 2w次閱讀
- 電子元件基礎(chǔ)篇之光敏電阻(原理及作用、符號(hào)及參數(shù)、選型及電路) 3.4w次閱讀
- 光敏電阻典型應(yīng)用電路 3.4w次閱讀
- 光敏電阻的性質(zhì)和應(yīng)用 8730次閱讀
- 光敏電阻組成結(jié)構(gòu) 8062次閱讀
- 光敏電阻的工作原理和作用_光敏電阻的檢測(cè) 5w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論