電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>基于光敏電阻的心率監(jiān)測器系統(tǒng)

基于光敏電阻的心率監(jiān)測器系統(tǒng)

2023-07-07 | zip | 0.02 MB | 次下載 | 免費

資料介紹

作者制作了一個基于光敏電阻的心率監(jiān)測器以在示波器上顯示。這樣您就可以在示波器上查看波形,同時還可以讀出您的心率。

當心臟收縮并將血液推向全身時,可以檢測到血壓的瞬時波動。這就是我們可以感覺到脈搏的原因。在皮膚和肌肉足夠薄的身體區(qū)域,可以在穿過的光的輕微變化中檢測到這些脈沖。雖然我們的眼睛不夠敏感,甚至無法看到穿過我們身體的光線,更不用說波動了,但光敏電阻確實具有這種程度的敏感度。

光敏電阻會隨著落在其上的光強而改變其電阻。盡管對于光照強度的細微變化,電阻的變化可能非常小,但可以使用幾個運算放大器 IC 來放大它們。

操作原理

下圖顯示了電路原理圖以及該項目中使用的面包板。

pYYBAGOSm7-Accb3AAG10FcIGwU833.png

1 / 2

光敏電阻與 20kΩ 電阻器位于分壓器中,這意味著隨著電阻器上光量的增加,分壓器上的電壓也會增加。第一個運算放大器(上圖中的“Amp1”)用作分壓器的濾波器,從信號中去除高頻噪聲。第二個運算放大器(“Amp2”)用作反相放大器,設(shè)置為最大化通過濾波器的信號。第三個運算放大器(“Amp3”)設(shè)置虛擬接地,將信號集中在 2.5V。這確保運算放大器能夠提供從 0V 到 5V 的最大信號擺幅。經(jīng)過過濾和放大后,信號看起來像這樣。

poYBAGOSm8mAIeFHAAEnUDdm5UA529.png

為了讓 Arduino 測量您的心率,信號需要通過一個比較器(示意圖中的“Cmp”)。比較器是專門設(shè)計用于輸出高信號或低信號的運算放大器。當正輸入電壓大于負輸入電壓時,比較器輸出高電平,當正輸入電壓小于負輸入電壓時,比較器輸出低電平。在其最基本的配置中,比較器用作閾值檢測器,在測量電壓高于或低于該閾值時發(fā)出信號。由于比較器輸出高電平 (5V) 或低電平 (0V),因此非常適合與 Arduino 的數(shù)字引腳連接。

pYYBAGOhUnWANZaNAAAOLZCrVWY083.png

注意噪音和重搏切跡。

仔細觀察來自運算放大器的信號圖像,很明顯在電壓下降之前有一個二次脈沖(這稱為重博陷波)。此外,信號中存在大量噪聲。這兩個事實意味著基本的比較器配置將無法正確檢測脈沖。比較器將生成多個脈沖,而不是每次心跳都生成一個方波脈沖。發(fā)生這種情況是因為噪聲會導致信號在上升和下降過程中多次超過閾值,并且可能在重搏切跡期間根據(jù)閾值的設(shè)置位置而定。這將導致 Arduino 計算出比實際存在的更多的脈沖。

可以使用滯后來處理噪聲信號。這個文件德州儀器 (Texas Instruments) 就滯后信號調(diào)理主題進行了精彩討論,展示了信號噪聲如何影響比較器性能,以及如何處理這些問題。我使用他們的原理圖和導出的方程式(分別為文檔的第 5 頁和第 7 頁)為該項目設(shè)計了非對稱比較器。總體思路是來自輸出的反饋回路將改變正輸入端的電壓,這意味著從低到高的閾值將不同于從高到低的閾值。這在心臟脈搏的背景下意味著比較器可以設(shè)置為在上擺的一個點觸發(fā),然后在下擺的不同點觸發(fā),最好是在重搏切跡之后。這樣,Arduino 將在每次心跳時看到一個方波脈沖,

pYYBAGOhUnuAAvPaAADshXB5GbA236.png

黃色信號來自比較器,每次心跳時它都會變低。

光敏電阻的制備

我強烈建議在光敏電阻上使用某種透明覆蓋物,例如透明熱縮管。至少,確保導線被完全覆蓋,以免它們接觸到您的皮膚。您身體產(chǎn)生的電壓完全在光敏電阻檢測到您的脈搏時產(chǎn)生的電壓范圍內(nèi),因此與您的皮膚接觸可能會影響結(jié)果。

pYYBAGOitMaAMZf1AAjp8C7V8N8642.png

確保光敏電阻包裹在某種東西中以防止引線接觸皮膚。

調(diào)整心率監(jiān)測器

對于示意圖中的電位器 (R7),使用單圈電位器并對其進行調(diào)整以最大化運算放大器的增益而不進入飽和狀態(tài)。首先將電位器的一側(cè)設(shè)置為大約 375Ω,并將濾波器(“Amp1”)連接到這一側(cè)。這個增益量應(yīng)該會產(chǎn)生足夠的脈沖,您將能夠在 WaveForms Live 中看到它。在執(zhí)行下一節(jié)(“在實時波形中查看脈沖”)中的步驟并成功查看您的脈沖后,您可以根據(jù)需要更改增益。通過轉(zhuǎn)動電位器來增大脈沖幅度,使濾波器側(cè)電阻變小。如果幅度已經(jīng)太大并導致削波,請增大濾波器側(cè)電阻。閱讀以下圖像上的說明,以確定所需信號的外觀。

pYYBAGOitM6APX4MAAC3VrXZoak206.png

1 / 7 ?增益為無窮大,增加濾波器側(cè)電阻。

我建議對電阻器 R3 和 R4 使用多圈電位器,以便精確設(shè)置比較器的閾值。電阻 R5 可以是 10-100kΩ 范圍內(nèi)的任何電阻,只要它被精確測量即可。您可以使用附件部分中的電子表格,根據(jù) R5 的測量值和閾值電壓來確定將 R3 和 R4 設(shè)置為什么值。閾值“Vl”和“Vh”需要根據(jù)您通過示波器看到的脈沖進行更改(請參閱標題為“設(shè)置比較器閾值”的部分)。

電阻R8和R9可以用一個電位器代替,中間的引腳接運放的正輸入端。這樣就可以很容易地調(diào)整虛擬接地,而無需尋找匹配電阻。在將輸出調(diào)整為 2.5V 時使用電壓表或 OpenScope。

在 WaveForms Live 中查看脈沖

為了通過 WaveForms Live 查看您的心跳,您需要更改菜單中的一些設(shè)置。默認情況下,輸出要么被拉長并且難以解釋,要么更新速度非常慢并且很難調(diào)整您對光敏電阻的握持以產(chǎn)生清晰的脈沖。

將 OpenScope 示波器通道 2(藍線)連接到“Amp2”的輸出,并確保接地線連接到面包板上的地面。在 WaveForms Live中,將Time更改為“1s”,然后在Trigger菜單中按下OFF按鈕。對于Osc Ch 1Osc Ch2 菜單,將Offset設(shè)置為 2.5V,然后單擊Samples旁邊的鎖定圖標,然后在可用的字段中鍵入“1000”。這將使信號出現(xiàn)在易于解釋的時間尺度上,但會使更新比默認情況下更頻繁地發(fā)生。屏幕應(yīng)每 4 秒左右更新一次。如果這仍然太慢,您可以增加樣本值,但以縮短信號片段為代價(“2000”將一次捕獲大約一個心跳)。

按下RUN按鈕,用手指在光敏電阻上測量脈搏。您需要找出獲得一致結(jié)果的最佳方法。該系統(tǒng)對壓力變化非常敏感,因此您需要找到一種方法讓您的手指保持靜止。我發(fā)現(xiàn)測量脈搏的最佳位置是在食指的第一個關(guān)節(jié)處。訓練自己需要一點時間,但最終你會找到最好的方法。如果您的脈搏看起來太小,請按照上一節(jié)(“調(diào)整心率監(jiān)測器”)第一段中的說明調(diào)整電位計。

poYBAGOitP2Aa_fTAAoZD0dt7jc440.png

我找到的固定光敏電阻的最佳方法。

設(shè)置比較器閾值

一旦信號在示波器上可見,您將需要設(shè)置比較器將觸發(fā)并向 Arduino 發(fā)出信號的閾值。獲取具有代表性的波形并停止捕獲以將波形保留在顯示屏上。在屏幕底部按下CURSORS按鈕。在類型下選擇“電壓”并設(shè)置兩個CursorChannels到“Osc 2”。顯示屏上將出現(xiàn)兩條水平虛線。拖動左側(cè)的三角形來移動它們。將其中一條線設(shè)置在脈沖峰值附近的點,將另一條線設(shè)置在重搏切跡下方的點。查看屏幕底部并記錄括號中顯示的兩個電壓。在最后附上的電子表格中輸入這些值作為閾值電壓“Vl”和“Vh”。較小的值為“Vl”,較大的值為“Vh”。根據(jù)這些值和您選擇的電阻器 R5 值,設(shè)置電子表格計算的電位器 R3 和 R4 值。

poYBAGOitP-AYmcZAAETyut49ak920.png

用于設(shè)置比較器閾值的良好波形示例。

設(shè)置比較器后,它應(yīng)該開始輸出類似于“光敏電阻器的準備”部分之前的信號。

Arduino代碼

Arduino 代碼由頻率計數(shù)器和計算心率(以每分鐘心跳次數(shù)為單位)的方法組成。頻率計數(shù)器會考慮來自比較器的脈沖寬度,并拒絕任何小于 200 毫秒或大于 800 毫秒的脈沖。當光敏電阻未用于測量且比較器可能為高電平、低電平或在兩種狀態(tài)之間快速切換時,這將防止它顯示錯誤數(shù)據(jù)。該代碼保持前 15 秒心率的運行平均值,以濾除因意外運動引起的信號噪聲而遺漏的脈搏。

未來的改進

該項目的主要缺點是很難以脈沖在兩次使用之間具有相同幅度的方式來固定光敏電阻。由于傳感器依賴于環(huán)境光來檢測脈搏,因此全天改變光照水平可能會導致不同的結(jié)果。我注意到在陰天我的比較器閾值太寬,而在明亮的日子里重搏切跡非常明顯并且可能導致錯誤的脈沖檢測。此外,光敏電阻甚至可以檢測到房間運動引起的細微光線變化。一致性問題可以通過幾種不同的方式來解決。

傳感器系統(tǒng)可以包括 LED 以提供一致的光。這類似于醫(yī)生辦公室使用的心臟監(jiān)測夾或手機中的心率監(jiān)測器。我試著用另一側(cè)的光敏電阻將紅色 LED 靠在手指的頂部。結(jié)果令人鼓舞,因此如果可以制作良好的圍欄,這可能是一個可行的選擇。

在軟件方面,一個潛在的解決方案是在 Arduino 中使用自動量程算法。它會檢測脈沖并找到它們的波峰和波谷。但是,這不足以執(zhí)行心率測量。一個合適的頻率計數(shù)器需要中斷。如果沒有中斷,Arduino 的處理器可能會在檢查輸入引腳和錯過脈沖之外做其他事情。由于中斷僅在數(shù)字引腳上可用,因此實現(xiàn)自動量程的最佳方法是使用數(shù)字電位器。Arduino 將使用模擬引腳找到脈沖出現(xiàn)的范圍,確定比較器閾值應(yīng)該是多少,通過數(shù)字電位器應(yīng)用它們,然后使用來自比較器的數(shù)字信號執(zhí)行頻率計數(shù)。

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關(guān)電源設(shè)計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅(qū)動電路設(shè)計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費