Oxygenation Monitoring — Indices (P/F · S/F · OI · ROX), Pulse Oximetry & Dyshemoglobinemia
Digest จาก staff lecture Respiratory Monitoring in Mechanically Ventilated Patients (นพ. จิตนงค์ สูตเล็ก, อายุรกรรมและเวชบำบัดวิกฤต รพ. พระปกเกล้า) 19 ส.ค. 2026 ตัวเลขทั้งหมด verify ซ้ำกับ primary source
1. 🧬 Physiology — สิ่งที่แต่ละ index วัดคนละชั้น
คำสองคำที่ต้องแยกก่อนอ่าน index ใด ๆ คือ hypoxemia หมายถึง PaO₂ ในเลือดที่ต่ำ ส่วน hypoxia หมายถึง oxygen delivery ไปที่เนื้อเยื่อที่ต่ำ สองอย่างเกิดแยกกันได้ ผู้ป่วย CO poisoning มี PaO₂ ปกติเต็มที่เนื้อเยื่อขาดออกซิเจนอย่างรุนแรง
กลไกคือ CaO₂ = (1.34 × Hb × SaO₂) + (0.003 × PaO₂) → DO₂ = CO × CaO₂ → ส่วนที่ dissolved O₂ ให้น้อยมากเมื่อเทียบกับ Hb-bound
จุดที่ land ที่ action คือการเพิ่ม FiO₂ แก้ได้เฉพาะ hypoxic hypoxia ที่มี V/Q mismatch หรือ diffusion impairment ใน anemic, stagnant และ histotoxic hypoxia การเพิ่ม FiO₂ ไม่แก้อะไร ต้องเติมเลือด เพิ่ม cardiac output หรือแก้ที่ mitochondria ตามกลไก และใน right-to-left shunt การเพิ่ม FiO₂ ก็ไม่ช่วยเช่นกัน
2. 📊 Oxygenation indices
| Index | สูตร | ค่าที่ใช้ตัดสิน | ข้อจำกัด |
|---|---|---|---|
| PaO₂/FiO₂ (P/F) | PaO₂ ÷ FiO₂ | ปกติ 400-500 · <300 เข้าเกณฑ์ ARDS · <200 บ่งว่า shunt fraction >20% | ขึ้นกับ PEEP, hemodynamic status และ intracardiac shunt ห้ามเทียบข้ามเวลาโดยไม่ดู PEEP |
| SpO₂/FiO₂ (S/F) | SpO₂ ÷ FiO₂ | S/F 235 ≈ P/F 200 (AUC 0.929) · S/F 315 ≈ P/F 300 (AUC 0.920) | ใช้ได้เฉพาะเมื่อ SpO₂ ≤97% เกินนี้ curve เข้า plateau แล้ว SpO₂ ไม่ขยับตาม PaO₂ อีก |
| Oxygenation index (OI) | (MAP × FiO₂ ÷ PaO₂) × 100 | <25 outcome ดี · 25-40 mortality เกิน 40% · >40 ควรคิดถึง ECMO | รวม mean airway pressure เข้าไปจึงสะท้อน cost ของการ support ด้วย ตัวเลข cutoff มาจาก pediatric เป็นหลัก |
| ROX index | (SpO₂ ÷ FiO₂) ÷ RR | ≥4.88 ที่ 2, 6 หรือ 12 ชั่วโมง ทำนาย HFNC success · <2.85 ที่ 2 ชั่วโมง · <3.47 ที่ 6 ชั่วโมง · <3.85 ที่ 12 ชั่วโมง ทำนาย failure | validate ใน pneumonia ที่มี AHRF เท่านั้น ใน COPD exacerbation ต้องใช้ cutoff สูงกว่า (พบค่าที่ 6.88) และ ROX <4.88 ทำนาย intubation ในกลุ่ม COPD ไม่ได้ |
| Shunt fraction | คำนวณจาก shunt equation | >30% คือระดับที่การเพิ่ม FiO₂ หมดประโยชน์ | ต้องมี mixed venous sample จึงไม่ค่อยใช้ข้างเตียง |
New Global Definition of ARDS (2024) ดึง S/F เข้ามาเป็นเกณฑ์อย่างเป็นทางการ
| Category | PaO₂/FiO₂ | SpO₂/FiO₂ (เมื่อ SpO₂ ≤97%) |
|---|---|---|
| Non-intubated ARDS (HFNO ≥30 L/min หรือ NIV/CPAP ≥5 cmH₂O) | ≤300 | ≤315 |
| Mild | 200-300 | 235-315 |
| Moderate | 100-200 | 148-235 |
| Severe | ≤100 | ≤148 |
| Resource-limited setting | — | ≤315 โดยไม่ต้องมี PEEP หรือ flow rate ขั้นต่ำ |
นิยามนี้ตัดข้อบังคับเรื่อง intubation ออก ผู้ป่วยที่อยู่บน HFNC ก็เข้าเกณฑ์ ARDS ได้ จึงเปลี่ยนทั้ง epidemiology และการคัดเข้า trial ดูต่อที่ ARDS (Acute Respiratory Distress Syndrome)
3. 🩻 Pulse oximetry — กลไกและสิ่งที่ทำให้ค่าผิด
กลไกคือ oxyhemoglobin ดูดกลืน infrared 940 nm มากกว่า red 660 nm → เครื่องอ่าน ratio ของการดูดกลืนสองความยาวเฉพาะส่วน pulsatile (AC) → เทียบกับ standard curve ออกมาเป็น SpO₂ ที่ average ไว้ 3 ถึง 6 วินาที
ค่าที่เครื่องรายงานเป็น functional saturation จึงต่างจาก SaO₂ ที่นับ dyshemoglobin เข้าไปด้วย
- SpO₂ (%) = O₂Hb × 100 ÷ (O₂Hb + rHb)
- SaO₂ (%) = O₂Hb × 100 ÷ (O₂Hb + rHb + MetHb + COHb)
ช่องที่เครื่อง calibrate ไว้คือ saturation 70-100% โดยมี bias ±2% เมื่อ SpO₂ ≤80% ความแม่นตกลงมาก จึงต้องอิง ABG ในช่วงนั้น
สาเหตุของค่าที่ผิด แยกตามทิศทางที่ผิด
| ทิศทาง | สาเหตุ |
|---|---|
| อ่านค่าไม่ได้ หรือหลุดเป็นช่วง | Poor perfusion จาก hypovolemia, hypotension, vasoconstriction, hypothermia |
| สูงลวง | CO poisoning (อ่าน COHb เป็น O₂Hb → SpO₂ > SaO₂) · sickle cell vaso-occlusive crisis |
| ต่ำลวง | Venous pulsation (รัด probe แน่น, severe TR, HF) · motion artifact · IV pigmented dye · abnormal Hb · ยาทาเล็บ · severe anemia ที่มี hypoxemia ร่วม |
| ผิดได้สองทิศทาง | Methemoglobinemia · sulfhemoglobinemia · probe วางผิดตำแหน่ง · sepsis และ septic shock · dark skin tone |
Methemoglobinemia เครื่องอ่าน MetHb เป็น rHb ทำให้ SpO₂ ต่ำลวงและมักค้างอยู่ใกล้ 85% ไม่ขยับตาม FiO₂ ที่เพิ่ม ยาที่เจอบ่อยในเวชปฏิบัติไทยคือ dapsone, primaquine, lidocaine, nitrite derivatives, metoclopramide และ methylene blue เองเมื่อให้ dose สูง กลไกคือ oxidizing substance → HbFe²⁺ กลายเป็น HbFe³⁺ → จับ O₂ ไม่ได้ → ต้องพึ่ง cytochrome b5 reductase หรือ methylene blue เพื่อดึงกลับ
ตรงที่ต้องระวังคือใน G6PD deficiency เส้นทาง NADPH ทำงานไม่ได้ จึงห้ามให้ methylene blue เพราะจะกระตุ้น hemolysis ข้อนี้สำคัญมากในบริบทไทยที่ G6PD deficiency ชุก
การแยก 3 ภาวะที่ SpO₂ หลอกตา
| SpO₂ | PaO₂ | SaO₂ (co-oximeter) | ScvO₂ | Lactate | |
|---|---|---|---|---|---|
| CO poisoning | ปกติ | ปกติ | ปกติ | ต่ำ | สูง |
| Cyanide | ปกติ | ปกติ | ปกติ | สูง | สูง |
| Methemoglobinemia | ค้างที่ 85% | ปกติ | ปกติ | ปกติหรือต่ำ | ปกติหรือสูง |
ทางออกเมื่อสงสัยกลุ่มนี้คือ pulse CO oximeter ที่เป็น multi-wavelength วัดได้ทั้ง O₂Hb, COHb และ MetHb หรือส่ง co-oximetry จาก blood gas
4. 🎯 Target และพิษของ hyperoxia
- ทั่วไปใน ICU คุม SpO₂ 94-98%
- กลุ่มที่เสี่ยง hypercapnia คุม SpO₂ 88-92% คือ severe chronic airway disease (COPD, bronchiectasis), severe kyphoscoliosis, severe pulmonary fibrosis และ morbid obesity
กลไกของ hyperoxia injury คือ ROS ↑ → NO ↓ → microvascular perfusion ↓ และ ROS ↑ → uncoupling ของ mitochondrial respiration → ATP synthesis ↓ ขณะเดียวกัน FiO₂ สูงกด hypoxic pulmonary vasoconstriction จึงเกิด resorption atelectasis และ right-to-left shunt เพิ่ม ทำให้ gas exchange แย่ลงใน ARDS
เกณฑ์เวลาที่ใช้คุมความเสี่ยง O₂ toxicity ในคน
- FiO₂ 1.0 — อาการเริ่มที่ 4 ถึง 6 ชั่วโมง มี vital capacity ตกและเจ็บ substernal chest pain
- FiO₂ 0.75 — อาการเริ่มที่ 24 ชั่วโมง
- FiO₂ <0.55 — ไม่พบอาการของ toxicity
5. 📉 ความสัมพันธ์ PaO₂ กับ SpO₂ ที่ต้องจำ
| PaO₂ (mmHg) | SpO₂ (%) |
|---|---|
| 100 | 97.5 |
| 80 | 96 |
| 70 | 94 |
| 60 | 90 |
| 55 | 88 |
| 46 | 82 |
| 40 | 75 |
| 27 | 50 |
จุดที่ต้องจำคือ PaO₂ 60 คู่กับ SpO₂ 90% เพราะเลยจุดนี้ไป curve จะดิ่งชัน SpO₂ ตกเร็วมากเมื่อ PaO₂ ตกอีกเพียงเล็กน้อย ส่วนเหนือ SpO₂ 96% ขึ้นไป PaO₂ ขึ้นได้มากโดย SpO₂ แทบไม่ขยับ นี่คือเหตุผลที่ S/F ใช้ได้เฉพาะเมื่อ SpO₂ ≤97%
curve เลื่อนซ้าย (จับ O₂ แน่นขึ้น ปล่อยที่เนื้อเยื่อน้อยลง) เมื่ออุณหภูมิต่ำ 2,3-DPG ต่ำ H⁺ ต่ำ หรือมี CO → SpO₂ ที่ดูสวยอาจอยู่คู่กับ tissue hypoxia
🚨 STRICT AVOIDANCE / RED FLAGS
- ห้ามใช้ S/F ratio เมื่อ SpO₂ >97% เพราะอยู่ช่วง plateau ของ curve ค่าที่คำนวณได้จะต่ำกว่าความจริง
- ห้ามอ่าน SpO₂ ปกติว่าผู้ป่วยไม่ hypoxic ใน CO poisoning และ cyanide poisoning ต้องส่ง co-oximetry และ lactate
- ห้ามเชื่อ SpO₂ ที่ค้างที่ 85% ว่าเป็น hypoxemia ตามจริง ต้องคิดถึง methemoglobinemia เสมอเมื่อค่าไม่ขึ้นตาม FiO₂
- ห้ามใช้ methylene blue ก่อนที่จะทราบสถานะ G6PD เพราะจะกระตุ้น hemolysis ในคนที่ขาดเอนไซม์นี้
- ห้ามเทียบ P/F ratio ข้ามเวลาโดยไม่ดู PEEP ที่เปลี่ยนไป เพราะ P/F ขึ้นกับ PEEP โดยตรง
6. 📚 Landmark Trials & Literature
-
Rice 2007 (CHEST) — หาสมการแปลง S/F เป็น P/F ในผู้ป่วย ALI/ARDS จาก ARDSNet cohort
สมการ S/F = 64 + 0.84 × (P/F) (r = 0.89, P<0.001) · S/F 235 เทียบเท่า P/F 200 (AUC 0.929) · S/F 315 เทียบเท่า P/F 300 (AUC 0.920) · คัดผู้ที่ SpO₂ >97% ออกตั้งแต่ออกแบบการศึกษา
-
Roca 2019 (Am J Respir Crit Care Med) — validation ของ ROX index n = 191 ใน pneumonia ที่ใช้ HFNC
ROX ≥4.88 ที่ 2, 6 หรือ 12 ชั่วโมง สัมพันธ์กับความเสี่ยง intubation ที่ต่ำลง (HR 0.291 ที่ 12 ชั่วโมง, 95% CI 0.161-0.524) · accuracy ดีขึ้นตามเวลา (AUC 2 ชั่วโมง 0.679 → 12 ชั่วโมง 0.759) · มี 35.6% ของ cohort ที่สุดท้ายต้อง intubate
-
Matthay 2024 (Am J Respir Crit Care Med) — New Global Definition of ARDS
ตัด requirement เรื่อง intubation ออก รับ HFNO ≥30 L/min หรือ NIV/CPAP ≥5 cmH₂O เข้าเกณฑ์ · รับ S/F ≤315 เมื่อ SpO₂ ≤97% เทียบเท่า P/F · รับ lung ultrasound เป็น imaging ที่ยืนยัน bilateral opacities ได้
-
ROX index ใน COPD exacerbation (Respir Care 2024) — n = 260 ผู้ป่วย COPD exacerbation ที่ใช้ HFNC หรือ NIV
cutoff ที่ดีที่สุดคือ ROX >6.88 (sensitivity 62% specificity 57%) ส่วน ROX <4.88 ทำนาย intubation หรือเสียชีวิตในกลุ่มนี้ไม่ได้ เป็นเหตุผลที่ห้ามย้าย cutoff ของ pneumonia มาใช้กับ hypercapnic failure
🎯 High-Yield Recall
-
Hypoxemia คือ PaO₂ ต่ำ ส่วน hypoxia คือ DO₂ ต่ำ การเพิ่ม FiO₂ แก้ได้เฉพาะ hypoxic hypoxia ที่มาจาก V/Q mismatch หรือ diffusion impairment
-
P/F <200 ≈ shunt >20% · P/F ขึ้นกับ PEEP จึงเทียบข้ามเวลาได้เมื่อ PEEP เท่ากันเท่านั้น
-
S/F 235 ≈ P/F 200 · S/F 315 ≈ P/F 300 ใช้ได้เฉพาะ SpO₂ ≤97%
-
ROX ≥4.88 ทำนาย HFNC success · <2.85 / <3.47 / <3.85 ที่ 2 / 6 / 12 ชั่วโมง ทำนาย failure · ใน COPD ต้องใช้ cutoff สูงกว่า
-
OI >40 คือจุดคิดถึง ECMO
-
SpO₂ สูงลวงใน CO poisoning · ต่ำลวงและค้างที่ 85% ใน methemoglobinemia
-
Target SpO₂ 94-98% ทั่วไป และ 88-92% เมื่อเสี่ยง hypercapnia
-
Pulse oximeter calibrate ไว้ที่ 70-100% เมื่อ SpO₂ ≤80% ต้องอิง ABG
-
🔍 Verification status
✅ Searched & verified (19 ส.ค. 2026)
- ROX index cutoff ทั้งชุด (≥4.88 · <2.85 / <3.47 / <3.85) จาก Roca 2019 validation cohort n = 191 รวม HR และ AUC ตามเวลา
- ROX cutoff >6.88 ใน COPD exacerbation (Respir Care 2024, n = 260) รวมข้อสรุปว่า ROX <4.88 ใช้ทำนายในกลุ่มนี้ไม่ได้
- meta-analysis 2022 (13 studies, n = 1,751) ระบุช่วง optimal threshold 4.2-5.4 เป็นข้อสนับสนุนค่า 4.88
⚠️ From source, not re-verified
- สูตร S/F = 64 + 0.84(P/F) และค่า AUC 0.929 / 0.920 ยกจาก slide อ้าง CHEST 2007;132:410-417 ยังไม่ได้ดึง primary paper มาอ่านเอง
- สูตร oxygenation index และ cutoff 25 / 40 ยกจาก slide อ้าง CHEST 2004;125:592-596 และ Respir Care 2020;65:1874-1882 ตัวเลข mortality 40% ที่ OI 25-40 ต้อง verify ก่อนใช้ตัดสิน ECMO จริง
- ตารางเทียบ PaO₂ กับ SpO₂ เป็นค่าจาก standard dissociation curve ที่เลื่อนได้ตาม pH, temperature และ 2,3-DPG ใช้เป็นกรอบคิดเท่านั้น
- ตาราง SpO₂ / PaO₂ / SaO₂ / ScvO₂ / lactate ใน CO, cyanide และ MetHb ยกจาก slide จำเป็นต้องตรวจสอบกับ toxicology reference ก่อนนำไปสอน
- เกณฑ์เวลา O₂ toxicity ตาม FiO₂ (4-6 ชั่วโมง ที่ 1.0) ยกจาก Critical Care 2008;12:R156
- Target SpO₂ 88-92% อ้าง BMJ Open Resp Res 2017;4:e000170 ตาม slide ยังไม่ได้ตรวจกับ BTS oxygen guideline ฉบับล่าสุด
🔴 Flagged uncertain
- ค่า New Global Definition of ARDS 2024 ที่ลงไว้มาจาก slide ซ้ำกับหน้า ARDS เดิม ต้องเทียบสองหน้าเพื่อเลี่ยง divergence ก่อนอ้างจริง
- สถานะการมี pulse CO oximeter และ transcutaneous CO₂ monitor ในโรงพยาบาลไทยยังไม่ได้สำรวจ ส่วนใหญ่มีเฉพาะโรงเรียนแพทย์