PFT (Pulmonary Function Tests) — Spirometry, Lung Volume & DLCO

📖 Source: รศ.นพ.ณรงค์กร ซ้ายโพธิ์กลาง — หน่วยโรคระบบการหายใจและเวชบำบัดวิกฤต ภาควิชาอายุรศาสตร์ มธ. (15-02-67) | Guideline: ATS/ERS 2019 update


🫁 Overview of PFTs

PFTs ประกอบด้วยการตรวจหลายชนิด ได้แก่ Spirometry, Lung volume, DLCO, Respiratory muscle strength (PImax/PEmax), Bronchoprovocative testing (Methacholine challenge), CPET, ABG, P0.1, IOS, และ FeNO

Respiratory muscle strength ค่าปกติ:

  • PImax (MIP/NIF): ชาย −90, หญิง −50 cmH₂O
  • PEmax: ชาย 120, หญิง 60 cmH₂O
  • PEmax > PImax เนื่องจาก abdominal + internal intercostal muscle แข็งแรงกว่า

Methacholine challenge test: PC₂₀ < 8 mg/mL = positive airway hyperresponsiveness (AHR)

FeNO: <25 ppb = asthma ควบคุมได้, >50 ppb = ควบคุมไม่ได้ (gray zone 25–50); บ่งบอก eosinophilic airway inflammation


🌬️ Spirometry

Indications for Spirometry

  • Diagnose or exclude lung disease (esp. COPD, asthma)
  • Assess severity และ monitor disease progression
  • Assess response to therapeutic intervention
  • Preoperative assessment (FEV₁ ≥60%pred → ผ่าตัดได้)
  • Occupational/environmental exposure (silicosis, asbestosis, chemical plant explosion)
  • Evaluate disability or impairment
  • Epidemiologic/clinical research

Contraindications (ATS/ERS 2019)

  • Recent surgery: eye ≤1 wk; brain/thoracic/abdominal ≤4 wks
  • Thoracic, abdominal, cerebral aneurysm (เสี่ยงแตก)
  • Active hemoptysis หรือ respiratory infection (URI ผลดีขึ้นก่อน → ป้องกัน spread)
  • Pneumothorax
  • Acute MI ≤1 wk
  • Significant arrhythmia (uncontrolled AF/VT/VF) หรือ severe CHF / PE / PH
  • Uncontrolled HTN: MAP >130 mmHg (≈ SBP ≥220 / DBP >100)
  • Pregnancy (late pregnancy / เสี่ยงแท้ง — ถ้า suspect asthma ให้ยาไปก่อน แล้วตรวจหลัง ICS+LABA)

สิ่งที่ต้องหลีกเลี่ยงก่อนตรวจ (ATS/ERS 2019)

  • สูบบุหรี่ <1 h (broncoconstrictor → false positive obstruction)
  • ดื่มแอลกอฮอล์/สารมึนเมา <8 h
  • ออกกำลังกายหนัก <1 h (เหนื่อย → ddx exercise-induced bronchospasm)
  • เสื้อผ้าที่รัดแน่นมาก

Bronchodilator Withholding (ATS/ERS 2019)

BD MedicationExampleWithhold
SABAsalbutamol4–6 h
SAMAipratropium bromide12 h
LABAformoterol, salmeterol24 h
Ultra-LABAindacaterol, vilanterol, olodaterol36 h
LAMAtiotropium, umeclidinium, glycopyrronium36–48 h

⚠️ Short-cut: ถ้าทราบ diagnosis อยู่แล้ว (COPD/asthma on treatment) ไม่จำเป็นต้องหยุด BD

Quality Control

Acceptability criteria (ดู Volume-Time curve)

  • Good start ไม่มี hesitation (กราฟแรกไม่ลึก)
  • ไม่มี coughing / air leak
  • Achieve EOFE (end of forced expiration): plateau >1 sec หรือ duration ≥15 sec หรือ FVC test หลัง ≥ FVC test ก่อน

Reproducibility criteria

  • FVC และ FEV₁ สองค่าสูงสุด ต่างกัน ≤150 mL (50 cc = ✓, ต่างกัน 0.95 ≈ borderline)
  • Acceptable efforts: 3 (min) to 8 (max) — pre 3 ครั้ง, post 3 ครั้ง

Reported values

Parameterค่าที่รายงาน
FVCHighest value จาก acceptable trials
FEV₁Highest value จาก acceptable trials
PEFBest test curve = highest sum of FVC+FEV₁
FEF₂₅₋₇₅Best test curve = highest sum of FVC+FEV₁

Spirogram morphology patterns

PatternVolume-TimeCause
Normalplateau ~6 sec
Early hesitationช่วงแรกไม่ทะลงpoor start
Poor effortrounded peak, ต่ำไม่ตั้งใจ/ไม่แข็งแรง
Early terminationplateau เร็วมากglottis closure / tongue obstruction / restrictive
Coughnotch บน curve
Young female (knee)knee appearancenormal variant

Parameters

FEV₁ & FVC

  • FVC (Forced Vital Capacity): volume ทั้งหมดที่เป่าออกแรงสุด
  • FEV₁ (Forced Expiratory Volume in 1 sec): volume ที่เป่าออกใน 1 วินาที — ปกติ ~80–90% ของ FVC
  • Volume-Time curve: แกน X = time, แกน Y = volume; EOFE = จุดที่ plateau

FEF₂₅₋₇₅ (MMEF)

  • = forced expiratory flow ระหว่าง 25–75% ของ FVC
  • Effort-independent zone — แรงเป่าไม่มีผลต่อการไหลออกของลม
  • บ่งบอก small airway function (peripheral airway)
  • ค่าต่ำเจอใน early asthma / early COPD
  • Normal: ≥65%pred

PEF (Peak Expiratory Flow)

  • Effort-dependent — ขึ้นกับความพยายาม
  • ใช้ตรวจ variability ที่บ้าน: Max−Min / ½(Max+Min) → ≥10% = significant variation

Lower Limit of Normal (LLN)

  • LLN = 5th percentile = X − 1.65 SD ของประชากร
  • Fixed ratio 0.7 มีข้อจำกัด: false positive ในผู้สูงอายุ (over-diagnose COPD), false negative ในคนอายุน้อย
  • ATS/ERS แนะนำ LLN; PRIsm ใช้ LLN
  • Predicted value ขึ้นกับ: Race (Caucasian > Asian), Sex (ชาย > หญิง), Age (↑อายุ → LF↓), Height (↑ส่วนสูง → LF↑) — ไม่ขึ้นกับ weight

ค่าปกติ: 80–120%pred (สำหรับ FVC); ยกเว้น FEV₁/FVC >90%pred, FEF₂₅₋₇₅ >65%pred = normal

Spirometry Interpretation Algorithm (Step-by-Step)

Step 1 — Acceptability: ดู Volume-Time curve (plateau ≥1 sec, duration ≥15 sec)

Step 2 — Morphology: Flow-volume loop

  • Scooping/scooped-out pattern → Obstruction
  • Narrow-based → Restriction
  • BD response → reversibility

Step 3 — Obstruction:

  • FEV₁/FVC < 70% (age ≥40) หรือ <75% (age <40) หรือ <LLN

Step 4 — ถ้า obstruction + FVC <80%pred: คำนวณ Corrected FVC

  • Corrected FVC = FVC%pred + (70 − FEV₁/FVC%)
  • Corrected FVC >80%Pure obstruction
  • Corrected FVC <80%Mixed obstruction + Restriction

Step 5 — Restriction:

  • FVC <80%pred หรือ <LLN (ยืนยันด้วย TLC)

Step 6 — Severity (FEV₁ %pred):

GradeFEV₁ %predZ-score
Mild>70−1.65 ถึง −2.5
Moderate60–69−2.51 ถึง −4.0
Moderately severe50–59
Severe35–49< −4.1
Very severe<35

COPD severity ใช้ post-BD FEV₁: GOLD grading = 80 / 50 / 30

Step 7 — BD response:

  • ↑FEV₁ หรือ FVC ≥12% AND 200 mL (หรือ >10%pred)
  • มี BD response → mostly Asthma / reversible obstruction
  • ไม่มี BD response → mostly COPD (แต่ COPD บางส่วนมี response ได้ ~20%)
  • Ratio ปกติหมด + มี BD response = Asthma ที่ควบคุมดีหรือ severe (ratio กลับมา normal แล้ว)

Step 8 — Small Airway Disease:

  • Ratio ปกติ, FVC ปกติ, แต่ FEF₂₅₋₇₅ <65%pred → Early asthma / Early COPD

Complete PFT Interpretation Flowchart

FEV₁/FVC ≥ LLN (normal)
    ├── FVC ≥ LLN → Normal → confirm DLCO ≥ LLN
    │       ├── DLCO normal → NORMAL
    │       └── DLCO low → Pulmonary vascular disease (PH, PE)
    └── FVC < LLN → TLC?
            ├── TLC ≥ LLN → ดูต่อ (อาจเป็น pseudo-restriction)
            └── TLC < LLN → RESTRICTION → DLCO?
                    ├── DLCO normal → NMD / Chest wall disease
                    └── DLCO low → ILD (intrapulmonary restrictive)

FEV₁/FVC < LLN (obstruction)
    ├── FVC ≥ LLN → Pure OBSTRUCTION → DLCO?
    │       ├── DLCO normal → Asthma / Chronic bronchitis
    │       └── DLCO low → Emphysema (COPD)
    └── FVC < LLN → TLC?
            ├── TLC ≥ LLN → OBSTRUCTION (confirmed, pseudo-low FVC)
            └── TLC < LLN → MIXED (obstruction + restriction)

Upper Airway Obstruction (UAO)

UAO แบ่งตาม anatomy: vocal cord ลงมาถึง main bronchus (spirometry บอกตำแหน่งได้เป็น physiology localization)

TypePatternFEF₅₀/FIF₅₀Examples
Intrathoracic UAOExpiratory plateau (ตัดบน)<1Tracheomalacia (below sternal notch), polychondritis/EGPA, Wegener’s granulomatosis, tracheal/main bronchial tumor
Extrathoracic UAOInspiratory plateau (ตัดล่าง)>1Vocal cord paralysis (uni/bilateral), goiter (above sternal notch), ALS, post-polio, airway burn, extrathoracic tracheomalacia
Fixed UAOBoth plateaus (box shape)≈1Fixed vocal cord lesion, large goiter, benign stricture, foreign body, endotracheal tumors, bronchial stenosis
Main bronchial obstructionBiphasic flow-volume loopvariablePartial obstruction right/left main bronchus (tumor) — มีทั้งขาเข้าและขาออก + scooping

Physiological basis:

  • Intrathoracic: expiration → Ppl ↑ (positive) → Ptr < Ppl → airway collapse → expiratory plateau
  • Extrathoracic: inspiration → Patm negative → Ptr < Patm → airway collapse → inspiratory plateau
  • Fixed: rigid obstruction → ทั้ง 2 phase plateau (บอกไม่ได้ว่า intra หรือ extra)

📦 Lung Volume

Indications

  • Diagnose/assess severity ของ restrictive lung disease (reduced TLC)
  • แยก obstructive vs. restrictive pattern (ยืนยัน restriction ด้วย TLC <LLN)
  • Assess response to therapy (BD, steroids, lung surgery, RT/CMT)
  • Preoperative assessment ในคนที่ lung function บกพร่อง
  • Determine extent of hyperinflation (TLC >120%)
  • Assess gas trapping: plethysmographic vs. gas dilution lung volumes (FRCpleth > FRCN₂ = gas trapping)

Lung Volumes and Capacities

ประกอบด้วย 4 volumes + 4 capacities:

  • IRV (Inspiratory Reserve Volume): สูดเพิ่มสูงสุด ~2500 mL
  • VT (Tidal Volume): ~500 mL (1/4 ของ IC)
  • ERV (Expiratory Reserve Volume): หายใจออกสูงสุดจาก FRC
  • RV (Residual Volume): ~25% TLC — spirometry วัดไม่ได้
  • IC = IRV + VT
  • VC (FVC) = IRV + VT + ERV
  • FRC = ERV + RV (~50% TLC)
  • TLC = IRV + VT + ERV + RV (~6 L)

Measurement Methods

FeatureBody PlethysmographyMultiple-Breath N₂ Washout
PrincipleBoyle’s law: P₁V₁ = P₂V₂ (วัด FRCpleth ก่อน → คำนวณ TLC, RV)Wash out N₂ ด้วย O₂ 100% จนเหลือ <1.5% ภายใน 3–4 min (test fail >7 min)
Alveoli measuredVentilated + non-ventilatedเฉพาะ ventilated เท่านั้น (FRC_N₂ < FRC_pleth เพราะ N₂ ค้างในถุงลมที่ปิด)
Standard✅ Gold standard❌ ไม่ใช่ standard
Cost/easeแพง / ต้องฝึก technicianถูก / ง่าย

Body Plethysmography steps: quiet breathing → shutter closed (วัด Boyle’s law) → shutter open → FVC maneuver → collect VC, IC, ERV → คำนวณ FRC, RV, TLC

Normal & Abnormal Lung Volume Patterns

ปกติ TLC: 80–120%pred

  • TLC >120% = hyperinflation (emphysema/obstruction)
  • TLC >155% post-BD = confirmed static hyperinflation

Severity ของ reduced TLC:

GradeTLC %pred
Mild70–79
Moderate60–69
Severe<60

Specific PFT patterns ตามโรค:

ConditionRV/TLCTLCRVDLCOหมายเหตุ
Elderly (normal)aging → small airway collapse
Early emphysema↑ slightlyair trapping เริ่ม
Severe emphysema (COPD)↑↑↑↑ (>155%)↑↑↓↓alveolar destruction
Pulmonary fibrosis (ILD)↓↓RV ↔ เพราะ stiff lung limit ทั้งคู่
Neuromuscular disease (MG/GBS)↑↑RV↑ เพราะหายใจออกเต็มที่ไม่ได้
Severe obesityERV ↓ isolated (fat กด diaphragm)

Pearl: Fibrosis / NMD / Chest wall / Obesity → RV ↔, TLC ↓


💨 DLCO (Diffusing Capacity of Lungs for Carbon Monoxide)

Indications

  • Evaluate/follow parenchymal lung diseases (ILD, emphysema)
  • Pulmonary involvement ใน systemic disease — esp. CNTD (SSc, RA, SLE, myositis)
  • Obstructive disease: COPD vs. asthma (DLCO แยกได้)
  • Cardiovascular: PH, PE (↓DLCO with normal spirometry)
  • Disability associated with ILD
  • ↑DLCO → alveolar hemorrhage, polycythemia, L-R shunt
  • Preoperative assessment

Principle & Technique

DLCO วัดโดยอาศัยหลัก Diffusion limitation of uptake โดยใช้ 0.3% CO เป็น tracer gas (CO จับ Hb แน่นมาก → P_cCO ≈ 0)

Formula:

  • DLCO = V̇CO / (P_A CO − P_C CO)
  • 1/DLCO = 1/Dm + 1/θVc (Dm = membrane diffusion, θVc = reaction rate × capillary volume)

KCO = DLCO/VA (transfer coefficient — normalize ต่อ alveolar volume ของ patient)

  • Pneumonectomy 1 ข้าง: DLCO ↓50% แต่ KCO ปกติ (เพราะ remaining lung ปกติ)

Single-breath hold technique:

  1. หายใจออกจนถึง RV
  2. สูด test gas (CO 0.3%, CH₄ หรือ He tracer, O₂ 21%, N₂ balance) ถึง TLC อย่างรวดเร็ว
  3. Hold breath ~10 sec
  4. หายใจออก → washout dead space (≥750 mL) → collect alveolar sample
  5. วัด inspired vs. expired CO → คำนวณ DLCO = CO ที่ diffuse เข้าไป

Factors Affecting DLCO

↓ DLCO↑ DLCO
↓Alveolar surface area: lung resection, emphysema, bronchial obstructionSupine position (↑venous return)
Alveocapillary membrane disease: ILD, PH, PE, late CHF, DAD, PAP, consolidationExercise, fever (↑CO uptake)
Anemia, high COHb, pregnancyAsthma (↑blood flow)
Valsalva maneuver (↑intrathoracic pressure → ↓venous return → ↓pulmonary capillary blood)Müller maneuver (ตรงข้าม Valsalva)
Extrapulmonary restriction (NMD, kyphoscoliosis)L-R cardiac shunt, early CHF
Polycythemia, alveolar hemorrhage
Obesity, high altitude

Severity ของ Reduced DLCO

GradeDLCO %pred
Mild60–75
Moderate40–60
Severe<40

DLCO ใน Clinical Context

KCO ช่วยแยก:

  • Intrapulmonary restriction (ILD): DLCO ↓↓, KCO ↓ หรือ ↔ (membrane disease)
  • Extrapulmonary restriction (NMD/CW): DLCO ↓/↔, KCO ↑ (capillary bed ปกติ แต่ lung volume เล็ก → KCO = DLCO/VA ดูดีขึ้น)
  • Emphysema vs. Asthma: emphysema DLCO ↓↓ (alveolar destruction), asthma DLCO ↔/↑

📊 Summary: Abnormal PFT Patterns

CharacteristicFEV₁VCRatioTLCDLCOKCO
Asthma↓↓↔/↓↔/↑
COPD (Emphysema)↓↓↓↓↓↓↓↓
Intrapulmonary Restriction (ILD, fibrosis)↓↓↔/↑↓↓↓/↔
Extrapulmonary Restriction (NMD, CW disease)↓↓↔/↑↓/↔

Key differentiators:

  • DLCO ↓↓ + KCO ↑ → extrapulmonary restriction (capillary bed intact แต่ volume เล็ก)
  • DLCO ↓↓ + KCO ↓ → intrapulmonary (membrane disease)
  • Ratio ↓↓ + TLC ↑ + DLCO ↓↓ → emphysema
  • Ratio ↓ + TLC ↑ + DLCO ↔ → asthma / chronic bronchitis

Reference equations available: GLI 2012, Morris Polgar, Siriraj 2000 (Thai) — TU ใช้ GLI 2012 / STD EU


🖼️ Reference Images

Flow-Volume Loop Patterns: Normal vs Obstruction vs Restriction

Flow-Volume Loop Patterns: Normal vs Obstruction vs Restriction

DLCO Alveolar-Capillary Membrane Diagram

DLCO Alveolar-Capillary Membrane Diagram