সুচিপত্র:

অনেক উন্নত নির্ভুলতার সাথে পালস অক্সিমিটার: 6 টি ধাপ (ছবি সহ)
অনেক উন্নত নির্ভুলতার সাথে পালস অক্সিমিটার: 6 টি ধাপ (ছবি সহ)

ভিডিও: অনেক উন্নত নির্ভুলতার সাথে পালস অক্সিমিটার: 6 টি ধাপ (ছবি সহ)

ভিডিও: অনেক উন্নত নির্ভুলতার সাথে পালস অক্সিমিটার: 6 টি ধাপ (ছবি সহ)
ভিডিও: KOSPET TANK S1 Review: Rugged Smartwatch with Elegant Style 2024, জুলাই
Anonim
অনেক উন্নত নির্ভুলতার সাথে পালস অক্সিমিটার
অনেক উন্নত নির্ভুলতার সাথে পালস অক্সিমিটার
অনেক উন্নত নির্ভুলতার সাথে পালস অক্সিমিটার
অনেক উন্নত নির্ভুলতার সাথে পালস অক্সিমিটার

আপনি যদি সম্প্রতি একজন ডাক্তারের কাছে যান, তাহলে সম্ভাবনা আছে যে আপনার মৌলিক গুরুত্বপূর্ণ লক্ষণগুলি একজন নার্স দ্বারা পরীক্ষা করা হয়েছে। ওজন, উচ্চতা, রক্তচাপ, সেইসাথে হার্ট রেট (HR) এবং পেরিফেরাল রক্তে অক্সিজেন সম্পৃক্তি (SPO2)। সম্ভবত, শেষ দুটিটি একটি লাল-জ্বলন্ত বৈদ্যুতিন আঙ্গুলের প্রোব থেকে প্রাপ্ত হয়েছিল যা কয়েক মিনিটের মধ্যে একটি ছোট পর্দায় প্রাসঙ্গিক সংখ্যা প্রদর্শন করে। সেই প্রোবটিকে পালস অক্সিমিটার বলা হয় এবং আপনি এটি সম্পর্কে সমস্ত প্রাথমিক তথ্য এখানে পেতে পারেন।

কেউ সহজেই একটি সাধারণ পালস অক্সিমিটার কিনতে পারে, নিশ্চিত, কিন্তু এতে মজা কোথায়? আমি আমার নিজের তৈরি করার সিদ্ধান্ত নিয়েছি, প্রথমে এটির জন্য, কিন্তু আরো গুরুত্বপূর্ণভাবে একটি নির্দিষ্ট অ্যাপ্লিকেশন মাথায় রেখে: নিশাচর অক্সিমেট্রি যেখানে HR এবং SpO উভয়ই2 ডেটা ক্রমাগত রাতারাতি সংগ্রহ করা হবে এবং একটি মাইক্রো এসডি কার্ডে রেকর্ড করা হবে। ইন্সট্রাকটেবলে ইতিমধ্যেই এই ধরণের বেশ কয়েকটি প্রকল্প রয়েছে, যেমন, এখানে এবং এখানে Arduino জড়িত দুটি, এবং একটি রাস্পবেরি পাই ব্যবহার করে। মাইন নিয়ন্ত্রণ এবং ডেটা রেকর্ডিংয়ের জন্য MAXIM ইন্টিগ্রেটেড এবং অ্যাডাফ্রুটের পালক M0 অ্যাডালগার থেকে সামান্য নতুন সেন্সর MAX30102 ব্যবহার করে।

এইভাবে আমাদের প্রকল্পটি হার্ডওয়্যারের ক্ষেত্রে বিশেষভাবে উদ্ভাবনী নয় এবং এই নির্দেশযোগ্য লেখার মতো হবে না, কিন্তু এটি তৈরির প্রক্রিয়ায় আমি সফটওয়্যারে গুরুত্বপূর্ণ অগ্রগতি অর্জন করেছি যা আমাকে MAX30102 থেকে অনেক বেশি ধারাবাহিকতার সাথে ডেটা বের করার অনুমতি দিয়েছে এই সেন্সরের জন্য ম্যাক্সিমের লেখা সফটওয়্যারের চেয়ে কম শব্দ। আমাদের সিগন্যাল প্রসেসিং অ্যালগরিদমের পারফরম্যান্স উপরের চার্টে দেখানো হয়েছে যেখানে দুটি শীর্ষ গ্রাফে রাতারাতি হার্ট রেট এবং অক্সিজেন স্যাচুরেশন থাকে যা আমাদের পদ্ধতি দ্বারা কাঁচা সিগন্যাল থেকে গণনা করা হয় ("RF" দ্বারা চিহ্নিত), যখন নিচের দুটি গ্রাফ MAXIM এর ফলাফল দেখায় ঠিক একই সংকেত। HR- এর জন্য স্ট্যান্ডার্ড বিচ্যুতি হল 4.7 bpm এবং 18.1 bpm, এবং SPO- এর জন্য2 0.9% এবং 4.4%, যথাক্রমে RF এবং MAXIM এর জন্য।

(উভয় RF গ্রাফ 0.25 এর ন্যূনতম স্বতorস্ফূর্ততার সীমার সাথে মিলে যায় এবং R / IR পারস্পরিক সম্পর্কের কোন সীমা নেই; এই শর্তগুলির ব্যাখ্যার জন্য ধাপ 4 এবং 5 দেখুন।)

ধাপ 1: হার্ডওয়্যার

হার্ডওয়্যার
হার্ডওয়্যার
হার্ডওয়্যার
হার্ডওয়্যার
হার্ডওয়্যার
হার্ডওয়্যার
হার্ডওয়্যার
হার্ডওয়্যার
  1. ম্যাক্সিম ইন্টিগ্রেটেড, ইনকর্পোরেটেড থেকে পালস অক্সিমিটার এবং হার্ট রেট সেন্সর MAX30102 সিস্টেম বোর্ড।
  2. Adafruit, Inc. থেকে Feather M0 Adalogger।
  3. অ্যাডাফ্রুট, ইনকর্পোরেটেড থেকে লিথিয়াম আয়ন ব্যাটারি

সংযোগ:

  • অ্যাডালগার পিন এসসিএল এবং এসডিএ MAX30102 বোর্ডে সংশ্লিষ্ট এসসিএল এবং এসডিএ পিনের সাথে
  • অ্যাডালগার পিন 10 MAX30102 বোর্ডে INT পিন করতে
  • Adalogger GND থেকে MAX30102 বোর্ড GND
  • Adalogger 3V থেকে MAX30102 VIN

ধাপ 2: MAX30102 দ্বারা ফেরত ডিজিটাল সিগন্যাল

MAX30102 দ্বারা ফেরত ডিজিটাল সিগন্যাল
MAX30102 দ্বারা ফেরত ডিজিটাল সিগন্যাল
MAX30102 দ্বারা ফেরত ডিজিটাল সিগন্যাল
MAX30102 দ্বারা ফেরত ডিজিটাল সিগন্যাল

সেন্সর ক্রিয়াকলাপের নীতিগুলি খুব সহজ: দুটি এলইডি, একটি লাল (660 এনএম) এবং একটি ইনফ্রারেড (880 এনএম, আইআর) মানুষের ত্বকের মাধ্যমে আলো জ্বালায়। পেরিফেরাল রক্ত সহ অন্তর্নিহিত টিস্যু দ্বারা আলো আংশিকভাবে শোষিত হয়। সেন্সরের ফটোডেটেক্টর উভয় তরঙ্গদৈর্ঘ্যে প্রতিফলিত আলো সংগ্রহ করে এবং I2C প্রোটোকল ব্যবহার করে দুটি অনুরূপ আপেক্ষিক তীব্রতা প্রদান করে। যেহেতু অক্সিজেনযুক্ত এবং ডিঅক্সিজেনেটেড হিমোগ্লোবিনের শোষণ বর্ণালী উভয় তরঙ্গদৈর্ঘ্যের জন্য পৃথক, তাই প্রতিফলিত আলোর একটি পরিবর্তনশীল উপাদান রয়েছে যেমন ধমনী রক্তের পরিমাণ যা প্রতিটি হৃদস্পন্দনের সাথে ত্বকের স্পন্দনের নিচে উপস্থিত থাকে। হার্ট রেট এবং অক্সিজেন স্যাচুরেশন বের করা সিগন্যাল প্রসেসিং সফটওয়্যারের উপর নির্ভর করে।

কাঁচা সিগন্যালের উদাহরণ (শুধুমাত্র আইআর চ্যানেল) উপরের ছবিতে দেখানো হয়েছে। উইকিপিডিয়া পৃষ্ঠায় উল্লিখিত একাধিক কারণের কারণে একটি পরিবর্তনশীল বেসলাইনে আচ্ছাদিত একটি পর্যায়ক্রমিক উপাদান লক্ষ্য করা যায়। মোশন প্ররোচিত শিল্পকর্মগুলি বিশেষত বিরক্তিকর কারণ তারা দরকারী এইচআর সংকেতকে মুখোশ করে এবং ভুয়া ফলাফলের কারণ হতে পারে। অতএব, উন্নত বাণিজ্যিক অক্সিমিটারগুলিতে অ্যাকসিলরোমিটার রয়েছে যা এই শিল্পকর্মগুলিকে বাতিল করতে সহায়তা করে।

আমি আমার অক্সিমিটারের পরবর্তী সংস্করণে একটি অ্যাকসিলরোমিটার যোগ করতে পারি, কিন্তু নিশাচর HR/SpO এর জন্য2 রেকর্ডিং, যখন সেন্সর বেশিরভাগ সময় গতিহীন থাকে, এটি বিকৃত সংকেত সনাক্ত এবং বাদ দেওয়ার জন্য যথেষ্ট।

MAX30102 সেন্সর নিজেই একটি ছোট পৃষ্ঠ -মাউন্ট করা প্যাকেজে আসে, কিন্তু MAXIM অনুগ্রহ করে Arduino এবং mbed- এর জন্য একটি ব্রেকআউট বোর্ড (সিস্টেম বোর্ড 6300) প্লাস সিগন্যাল প্রসেসিং সফটওয়্যার প্রদান করে - সবই রেফারেন্স ডিজাইন প্যাকেজে MAXREFDES117#। আমি সেন্সর এবং অ্যাডালগারের মধ্যে কিছু তারের সোল্ডার করার আশা করে আনন্দের সাথে এটি কিনেছি এবং একটি দিনে একটি ভাল, ভাল অক্সিমিটার আছে। আমি অ্যাডালগারের এআরএম কর্টেক্স এম 0 প্রসেসরে চালানোর জন্য ম্যাক্সিমের সফটওয়্যারের RD117_ARDUINO সংস্করণটি অভিযোজিত করেছি। মূলত, আমাকে যা করতে হয়েছিল তা ছিল সংশ্লিষ্ট ওয়্যার লাইব্রেরি কলগুলির দ্বারা max30102.cpp এ অসঙ্গত SofI2C ফাংশন প্রতিস্থাপন করা। কোডটি Arduino IDE v1.8.5 এ সূক্ষ্মভাবে সংকলিত হয়েছে এবং কোন ত্রুটি ছাড়াই M0 এ চলেছে। নিট ফলাফল অবশ্য হতাশাজনক ছিল। ভূমিকা ধাপে আমি ইতিমধ্যেই এইচআর এবং এসপিও উভয়ের খুব উচ্চ বৈচিত্র দেখিয়েছি2। স্বাভাবিকভাবেই, কেউ দাবি করতে পারে যে আমি কিছু ভুল করেছি এবং এটি আমার মূল চিন্তাও ছিল। যাইহোক, MAXIM এর নির্দেশমূলক ভিডিওতে আপনি পর্দায় প্রদর্শিত হিংস্রভাবে HR মানগুলি পর্যবেক্ষণ করতে পারেন। তদুপরি, ভিডিওর নীচের মন্তব্যগুলি নিশ্চিত করে যে অন্যরাও অনুরূপ ঘটনা লক্ষ্য করেছে।

একটি দীর্ঘ কাহিনী সংক্ষিপ্ত করার জন্য, কিছু পরীক্ষা -নিরীক্ষার পর আমি নির্ধারণ করেছি যে সেন্সর ঠিক আছে এবং ডিজিটাল সিগন্যাল প্রক্রিয়াকরণের একটি বিকল্প পদ্ধতি অনেক ভালো স্থিতিশীলতার দিকে পরিচালিত করে। "RF" দ্বারা নির্দেশিত এই নতুন পদ্ধতিটি পরবর্তী ধাপে বর্ণনা করা হয়েছে।

ধাপ 3: সিগন্যাল প্রি -প্রসেসিং

সিগন্যাল প্রি -প্রসেসিং
সিগন্যাল প্রি -প্রসেসিং
সিগন্যাল প্রি -প্রসেসিং
সিগন্যাল প্রি -প্রসেসিং
সিগন্যাল প্রি -প্রসেসিং
সিগন্যাল প্রি -প্রসেসিং
সিগন্যাল প্রি -প্রসেসিং
সিগন্যাল প্রি -প্রসেসিং

আমাদের বাস্তবায়নে, কাঁচা সংকেত পূর্ণ 4 সেকেন্ডের জন্য 25 Hz (MAXIM এর সমান) হারে সংগ্রহ করা হয় (MAXIM এর সফটওয়্যার মাত্র 1 সেকেন্ডের মূল্য সংগ্রহ করে), যার ফলে প্রতি শেষ ডাটা পয়েন্টে 100 ডিজিটাইজড টাইম পয়েন্ট হয়। প্রতিটি 100-পয়েন্ট ক্রমটি নিম্নোক্ত উপায়ে প্রাকপ্রক্রিয়া করা আবশ্যক:

  1. গড়-কেন্দ্রিক (তড়িৎ প্রকৌশলীদের কাছে "ডিসি উপাদান অপসারণ")। সেন্সর থেকে আসা কাঁচা তথ্য হল 10 এর পূর্ণসংখ্যার একটি সময় সিরিজ5 পরিসীমা দরকারী সংকেত, যদিও, ধমনী রক্ত থেকে প্রতিফলিত আলোর একটি অংশ যা মাত্র 10 এর ক্রমে পরিবর্তিত হয়2 - প্রথম চিত্র। অর্থপূর্ণ সংকেত প্রক্রিয়াকরণের জন্য, তাই প্রতিটি সিরিজ বিন্দু থেকে গড় বিয়োগ করা বাঞ্ছনীয়। এই অংশটি ম্যাক্সিম সফটওয়্যার ইতিমধ্যে যা করে তার থেকে আলাদা নয়। যাইহোক, ভিন্ন, সময় সূচকগুলির নিজস্ব গড়-কেন্দ্রিকতা। অন্য কথায়, 0 থেকে 99 এর সংখ্যার দ্বারা সিরিজ পয়েন্টগুলি ইনডেক্স করার পরিবর্তে, নতুন সূচকগুলি এখন -49.5, -48.5,…, 49.5 নম্বর। প্রথমে এটি অদ্ভুত মনে হতে পারে, তবে এই পদ্ধতির জন্য ধন্যবাদ সিগন্যাল কার্ভের "মাধ্যাকর্ষণ কেন্দ্র" সমন্বয় ব্যবস্থার উৎপত্তি (দ্বিতীয় চিত্র) এর সাথে মিলে যায়। এই সত্যটি পরবর্তী ধাপে বেশ উপযোগী হয়ে ওঠে।
  2. বেসলাইন লেভেলিং। ধাপ 2 এ দেখানো তরঙ্গাকৃতিগুলির আরেকটি দৃষ্টিভঙ্গি ব্যাখ্যা করে যে বাস্তব অক্সিমেট্রি সংকেতগুলির বেসলাইন অনুভূমিকভাবে সমতল হওয়া থেকে অনেক দূরে, তবে বিভিন্ন.ালের মাধ্যমে পরিবর্তিত হয়। তৃতীয় চিত্রটি একটি গড়-কেন্দ্রিক IR সংকেত (নীল বক্ররেখা) এবং এর বেসলাইন (নীল সরলরেখা) দেখায়। এই ক্ষেত্রে, বেসলাইনের opeাল নেতিবাচক। সামনে বর্ণিত সিগন্যাল প্রসেসিং পদ্ধতির জন্য বেসলাইন অনুভূমিক হতে হবে। গড়-কেন্দ্রিক সংকেত থেকে কেবল বেসলাইন বিয়োগ করে এটি অর্জন করা যেতে পারে। Y এবং X উভয়ের গড়-কেন্দ্রিকতার জন্য ধন্যবাদ, বেসলাইনের ইন্টারসেপ্ট শূন্য এবং এর opeাল সমীকরণটি বিশেষভাবে সহজ, যেমন চতুর্থ চিত্রে দেখানো হয়েছে।

এইভাবে প্রিপ্রোসেসড সিগন্যাল পরবর্তী ধাপের জন্য প্রস্তুত।

ধাপ 4: ওয়ার্কহর্স: অটোকরিলেশন ফাংশন

The Workhorse: স্বয়ংসম্পূর্ণ ফাংশন
The Workhorse: স্বয়ংসম্পূর্ণ ফাংশন
The Workhorse: স্বয়ংসম্পূর্ণ ফাংশন
The Workhorse: স্বয়ংসম্পূর্ণ ফাংশন
The Workhorse: স্বয়ংসম্পূর্ণ ফাংশন
The Workhorse: স্বয়ংসম্পূর্ণ ফাংশন

স্বাভাবিক 1,…, n ইনডেক্সিংয়ে ফিরে আসা, প্রথম চিত্রটি স্বতreস্ফূর্ত ফাংশনের সংজ্ঞা দেখায় rমি - একটি পরিমাণ যা সিগন্যালের পর্যায়ক্রমিকতা এবং গুণমান সনাক্ত করতে খুব দরকারী বলে প্রমাণিত হয়েছে। এটি কেবল সিগন্যালের সময় সিরিজের একটি স্বাভাবিক স্কেলার পণ্য যা নিজেই ল্যাগ মি দ্বারা স্থানান্তরিত হয়। আমাদের আবেদনে, যদিও, lag = 0 এ তার মান সম্পর্কিত প্রতিটি স্বতocস্ফূর্ত সম্পর্ককে স্কেল করা সুবিধাজনক, যেমন, r দ্বারা সংজ্ঞায়িত আপেক্ষিক স্বয়ংসম্পূর্ণতা ব্যবহারমি / আর0.

একটি সাধারণ ভাল মানের আইআর সিগন্যালের আপেক্ষিক স্বতorস্ফূর্ত সম্পর্কের প্লট দ্বিতীয় চিত্রে দেখানো হয়েছে। প্রত্যাশিত হিসাবে, এর মান lag = 0 এর বৈশ্বিক সর্বোচ্চ 1 এর সমান। পরবর্তী (স্থানীয়) সর্বাধিক lag = 23 এ ঘটে এবং 0.79 এর সমান। স্বতreস্ফূর্ত সম্পর্ক চক্রান্তে স্থানীয় মিনিমা এবং ম্যাক্সিমার উপস্থিতি বোঝা সহজ: যেহেতু সিগন্যাল ডানদিকে স্থানান্তরিত হয় তার শিখরগুলি প্রথমে একে অপরের সাথে ধ্বংসাত্মকভাবে হস্তক্ষেপ করে, কিন্তু নির্দিষ্ট সময়ে হস্তক্ষেপ গঠনমূলক হয়ে ওঠে এবং গড়ের সমান ব্যবধানে সর্বাধিক অর্জন করে সংকেত সময়কাল।

শেষ বাক্যটি অত্যন্ত গুরুত্বপূর্ণ: শিখরগুলির মধ্যে গড় সময়কাল নির্ধারণ করার জন্য, যেখান থেকে কেউ সংকেতের ফ্রিকোয়েন্সি (যেমন, হার্ট রেট) গণনা করতে পারে, এটি প্রথম স্থানীয় সর্বাধিক অটোকোরিলেশন ফাংশন খুঁজে পাওয়ার জন্য যথেষ্ট! ডিফল্টরূপে, MAX30102 প্রতি সেকেন্ডে 25 পয়েন্ট হারে এনালগ ইনপুট নমুনা দেয়, অতএব প্রদত্ত m এ সেকেন্ডের সময় m / 25 এর সমান।

HR = 60*25 / m = 1500 / m

অবশ্যই, r এর ব্যয়বহুল গণনা করার প্রয়োজন নেইমি সব ল্যাগ মান। আমাদের অ্যালগরিদম হার্ট রেট = 60 বিপিএম এর প্রথম অনুমান করে, যা m = 25 এর সাথে মিলে যায়। অটোকোরিলেশন ফাংশনটি সেই সময়ে মূল্যায়ন করা হয় এবং তার বাম প্রতিবেশীর মান m = 24 এর সাথে তুলনা করা হয়। যদি প্রতিবেশীদের মান বেশি হয়, তাহলে মার্চ পর্যন্ত বাম দিকে চলতে থাকে rমি -1 <আরমি । এভাবে নির্ধারিত চূড়ান্ত m তারপর সর্বাধিক ল্যাগ হিসাবে ফেরত দেওয়া হয়। পরবর্তী পুনরাবৃত্তি 25 এর পরিবর্তে সেই মান থেকে শুরু হয় এবং পুরো প্রক্রিয়াটি পুনরাবৃত্তি হয়। যদি প্রথম বাম প্রতিবেশী কম হয়, তাহলে উপরের রুটিন মার্চগুলি একইভাবে ডানদিকে নির্দেশ করে। বেশিরভাগ সময়, সর্বাধিক ল্যাগের জন্য অটোকোরিলেশন ফাংশনের মাত্র কয়েকটি মূল্যায়ন প্রয়োজন। উপরন্তু, সর্বাধিক এবং সর্বনিম্ন গ্রহণযোগ্য ল্যাগগুলি (যথাক্রমে ন্যূনতম এবং সর্বাধিক হৃদস্পন্দনের সাথে সম্পর্কিত) সীমিত মান হিসাবে ব্যবহৃত হয়।

ভাল মানের সিগন্যালের জন্য উপরের কাজটি খুব ভাল, কিন্তু বাস্তব জগৎ আদর্শ থেকে অনেক দূরে। কিছু সংকেত বিকৃতভাবে বেরিয়ে আসে, বেশিরভাগ গতিশীল শিল্পকর্মের কারণে। এই ধরনের সংকেত তৃতীয় চিত্রে দেখানো হয়েছে। দুর্বল পর্যায়কাল তার স্বতocস্ফূর্ততা ফাংশনের আকারে প্রতিফলিত হয় এবং সেই সাথে কম মান, 0.28, প্রথম স্থানীয় সর্বোচ্চ m = 11 এ প্রতিফলিত হয়। ভাল মানের সংকেতের জন্য নির্ধারিত 0.79 এর সর্বোচ্চ মানের সাথে এটি তুলনা করুন। ল্যাগ সীমিত মান বরাবর, অতএব, r এর মানমি / আর0 সর্বাধিক সংকেত মানের একটি ভাল সূচক এবং এটি নির্দিষ্ট প্রান্তিক সীমা অতিক্রম করার জন্য একটি প্রয়োজন গতি শিল্পকর্ম ফিল্টার আউট ব্যবহার করা যেতে পারে। ভূমিকাগুলিতে দেখানো "আরএফ" গ্রাফগুলি 0.25 এর সমান থ্রেশহোল্ড থেকে এসেছে।

ধাপ 5: অক্সিজেন স্যাচুরেশন নির্ধারণ

অক্সিজেন স্যাচুরেশন নির্ধারণ
অক্সিজেন স্যাচুরেশন নির্ধারণ
অক্সিজেন স্যাচুরেশন নির্ধারণ
অক্সিজেন স্যাচুরেশন নির্ধারণ
অক্সিজেন স্যাচুরেশন নির্ধারণ
অক্সিজেন স্যাচুরেশন নির্ধারণ
অক্সিজেন স্যাচুরেশন নির্ধারণ
অক্সিজেন স্যাচুরেশন নির্ধারণ

হার্ট রেট নির্ধারণের জন্য আগের ধাপটি যথেষ্ট ছিল। এসপিও2 আরো কাজ প্রয়োজন। প্রথমত, লাল (R) চ্যানেলে এতদূর অবহেলিত সংকেত অবশ্যই বিবেচনায় নিতে হবে। পরবর্তীতে, লাল থেকে ইনফ্রারেড সংকেতের অনুপাত, Z = R/IR, উভয় ধমনী রক্ত থেকে প্রতিফলিত হয়, গণনা করা হয়। "ধমনী রক্ত" অংশটি গুরুত্বপূর্ণ, যেহেতু বেশিরভাগ আলো আসলে টিস্যু এবং শিরা রক্ত থেকে প্রতিফলিত হয়। ধমনী রক্তের সাথে সম্পর্কিত সংকেতের অংশটি কীভাবে চয়ন করবেন? আচ্ছা, এই পালস্যাটাইল উপাদান যা প্রতিটি হৃদস্পন্দনের সাথে পরিবর্তিত হয়। বৈদ্যুতিক প্রকৌশলীদের কথায়, এটি "এসি অংশ", যখন অবশিষ্ট প্রতিফলিত আলো "ডিসি অংশ"। যেহেতু R এবং IR আলোর পরম তীব্রতা সামঞ্জস্যপূর্ণ নয়, Z অনুপাত আপেক্ষিক তীব্রতা থেকে গণনা করা হয়, যেমন প্রথম চিত্রে দেখানো হয়েছে। প্রকৃতপক্ষে গণিত পরিমাণের ক্ষেত্রে, আমি মধ্য-কেন্দ্রীভূত, বেসলাইন-সমতল সংকেতের মূল-গড়-বর্গ (RMS) ব্যবহার করি, y, কাঁচা সংকেতের ইতিমধ্যেই পরিচিত মানে, <Y>; দ্বিতীয় চিত্র দেখুন। তবে জেড রেশিও কাজের অর্ধেক। অ -রৈখিক সেন্সর প্রতিক্রিয়ার জন্য Z এবং চূড়ান্ত SPO এর মধ্যে একটি পরীক্ষামূলক ক্রমাঙ্কন প্রয়োজন2 মান আমি MAXIM এর কোড থেকে ক্রমাঙ্কন সমীকরণ নিয়েছি:

এসপিও2 = (-45.06*Z + 30.354)*Z + 94.845

মনে রাখবেন এই সমীকরণটি শুধুমাত্র 2017 সালে কেনা MAX30102 ডিজাইন বোর্ডের জন্য বৈধ! সম্ভবত ম্যাক্সিম পরবর্তী সময়ে তার সেন্সরগুলি পুনরায় গণনা করতে পারে।

উপরের পদ্ধতিটি এখনও প্রচুর মিথ্যা এসপিও তৈরি করে2 পড়া লাল চ্যানেলটি আইআর -এর মতো অনেকগুলি নিদর্শন থেকে ভুগছে। এটা মনে করা যুক্তিসঙ্গত যে উভয় সংকেত দৃ strongly়ভাবে সম্পর্কযুক্ত হওয়া উচিত। প্রকৃতপক্ষে, ভালো মানের সংকেত, যেমন তৃতীয় চিত্রে উদাহরণ, খুব ভালোভাবে সম্পর্কযুক্ত। পিয়ারসন পারস্পরিক সম্পর্ক সহগ এই ক্ষেত্রে 0.99 হিসাবে উচ্চ। এটা সবসময় হয় না, যেমন চতুর্থ চিত্রে দেখানো হয়েছে। যদিও আইআর সিগন্যাল হার্ট রেট কোয়ালিটি ফিল্টারকে তার r দিয়ে পাস করবেমি / আর0 = 0.76, বিকৃত আর সিগন্যালের ফলে দু'জনের মধ্যে মাত্র 0.42 এর সমান দুর্বল সম্পর্ক সহগ হয়। এই পর্যবেক্ষণটি দ্বিতীয় মানের ফিল্টার সরবরাহ করে: নির্দিষ্ট থ্রেশহোল্ডের চেয়ে বেশি চ্যানেলের মধ্যে পারস্পরিক সম্পর্ক সহগ থাকা।

শেষ দুটি পরিসংখ্যান এই ধরনের মানের ফিল্টারিংয়ের নিট প্রভাবের উদাহরণ দেয়। প্রথমত, পরিমাপ করা অক্সিজেন স্যাচুরেশন 0.25 এর এইচআর মানের থ্রেশহোল্ড দিয়ে প্লট করা হয়েছে, তবে এসপিও ছাড়াই2 ছাঁকনি. দরিদ্র এইচআর এবং এসপিও ফিল্টার করার পরের চক্রান্তের ফলাফল2 0.5 r এ ফলাফলমি / আর0 এবং 0.8 পারস্পরিক সম্পর্ক সহগের থ্রেশহোল্ড। সামগ্রিকভাবে, মোট ব্যবস্থার 12% দরিদ্র ডেটা পয়েন্টগুলি কঠোর শাসন দ্বারা ফিল্টার করা হয়েছিল।

আমাদের কোডে পারস্পরিক সম্পর্ক সহগ, সিসি, পঞ্চম চিত্রের সূত্র অনুসারে গণনা করা হয়, যেখানে y গড়-কেন্দ্রিক, বেসলাইন-সমতল সংকেতকে প্রতিনিধিত্ব করে, যেখানে r0 পূর্ববর্তী ধাপে সংজ্ঞায়িত করা হয়েছিল।

ধাপ 6: সোর্স কোড

এই প্রকল্পের জন্য C উৎস কোড, Arduino IDE- এর জন্য ফরম্যাট করা হয়েছে, আমাদের Github অ্যাকাউন্ট থেকে নিচের লিংকে পাওয়া যাবে:

github.com/aromring/MAX30102_by_RF

এর Readme পৃষ্ঠা পৃথক উপাদান বর্ণনা করে।

আমি M0- ভিত্তিক Adalogger এর মত একটি চমৎকার পণ্য তৈরির জন্য Adafruit এর প্রশংসা করতে একটু সময় নিতে চাই। এর দ্রুত 48 মেগাহার্টজ এআরএম কর্টেক্স এম 0 প্রসেসর, প্রচুর RAM সহ, অবশ্যই এই প্রকল্পটিকে কার্যকর করতে সাহায্য করেছে, যখন সরাসরি সংযুক্ত এসডি কার্ড রিডার (প্লাস অ্যাডাফ্রুটের এসডি লাইব্রেরি) প্রচুর পরিমাণে ডেটা রিয়েল টাইম স্টোরেজ সম্পর্কিত সমস্ত শখের যন্ত্রণা দূর করে।

প্রস্তাবিত: