What we learn from PK-LQP

Atitep Anuchettarak
Project-MAR
Published in
11 min readJan 7, 2020

Aviation is the branch of engineering that is least forgiving of mistakes..

Dedicated to

those who lost their lives in this accident,

their families and relatives

their sacrifice will not be in vain

they will be forever be missed and never forgotten

ข้อมูลส่วนใหญ่นำมาจากรายงานสรุปอุบัติเหตุของ Lion Air Flight 610 รุ่น Boeing 737 MAX 8 (PK-LQP) ตกเมื่อวันที่ 29 ตุลาคม 2561

FINAL KNKT.18.10.35.04

รายงานฉบับนี้อ่านยาก เพราะเนื้อหาที่ยาว ประกอบกับตัวย่อและศัพท์เทคนิคต่างๆ มากมาย สุดท้ายแม้จะอ่านไปหลายรอบแล้วแต่ก็ยังมีบางประเด็นที่ผู้เขียนยังไม่เข้าใจ แต่ถึงกระนั้นแล้วผู้เขียนคิดว่าในส่วนที่ผู้เขียนได้อ่านและเข้าใจแล้วนั้นมีคุณค่าต่อการนำมาแชร์เพื่อให้เกิดการเรียนรู้ทั้งในโลกของ Aviation และ Embedded System

บทที่ 0 ที่มาของการออกแบบ B737 MAX

เครื่องบินแบบ A320 และ B737 นับเป็นคู่แข่งทางตรงกันมานาน เมื่อครั้งที่ A320 ได้รับการปรับปรุงใหม่ภายใต้ชื่อ A320 NEO (NEO มาจาก New Engine Option) หนึ่งในการปรับปรุงครั้งนั้นคือการเปลี่ยนเครื่องยนต์ที่ทันสมัยขึ้น ใหญ่ขึ้น ให้แรงขับได้มากขึ้น และประหยัดชื้อเพลิงมากขึ้น

Boeing จึงจำเป็นต้องปรับปรุง B737 NG เดิมเพื่อให้สามารถแข่งขันกับ A320 NEO ได้ภายใต้ชื่อใหม่ว่า B737 MAX

https://www.vox.com/business-and-finance/2019/3/29/18281270/737-max-faa-scandal-explained

แต่ปัญหาอยู่ตรงที่ว่า A320 เดิมนั้นมี Engine Clearance มากกว่า B737 ดังนั้นการใส่เครื่องใหม่ที่ใหญ่ขึ้นจึงทำได้ง่าย

Boeing แก้ปัญหาดังกล่าวด้วยการปรับจุดติดตั้งเครื่องยนต์ใหม่เพื่อให้ได้ Engine Clearance ที่ต้องการ

ผลจากการปรับปรุงนี้ทำให้ B737 MAX มีการตอบสนองต่อการควบคุมของนักบินแตกต่างจาก B737 NG ซึ่งเป็นต้นฉบับค่อนข้างมาก หากปล่อยไว้เช่นนี้ นักบิน B737 NG หากต้องการมาบิน B737 MAX จะต้องทำการฝึกเพิ่มเติมใน simulator ก่อน

During the preliminary design stage of the Boeing 737–8 (MAX), Boeing tests and analysis revealed that the addition of the LEAP-1B engine and associated nacelle changes was deemed likely to negatively affect the stick force per g (FS/g) characteristics required by 14 FAR 25.255 and the controllability and maneuverability requirements of 14 FAR 25.143(f). After the study of various options for addressing this issue, Boeing implemented aerodynamic changes as well as a stability augmentation function called the Maneuvering Characteristics Augmentation System (MCAS), as an extension of the existing Speed Trim System (STS), to improve aircraft handling characteristics at elevated angles of attack.

Boeing แก้ปัญหาดังกล่าวโดยใช้ Software ที่มีชื่อว่า Maneuvering Characteristics Augmentation System (MCAS)

MCAS was needed in order to make the Boeing 737–8 (MAX) handling characteristics so similar to the NG versions that no simulator training was needed for type rating.

กล่าวโดยสรุปคือ

  • MCAS ทำให้นักบิน “รู้สึกว่าการตอบสนอง” ของเครื่อง B737 MAX ในจังหวะที่หัวเครื่องกำลังเชิดขึ้นนั้นไม่ต่างกับเครื่อง B737 NG
  • เมื่อนักบินรู้สึกว่าการตอบสนองต่อการบังคับในเครื่อง B737 MAX และ B737 NG ไม่แตกต่างกัน ดังนั้นการย้ายนักบินจาก B737 NG มาเป็น B737 MAX จึงทำได้โดยง่ายไม่ต้องผ่านการฝึกบินในเครื่องช่วยบินจำลอง (simulator)
  • MCAS ถูกเพิ่มเข้าไปเป็นส่วนหนึ่งของระบบที่มีชื่อว่า Speed Trim System (STS)
  • Input หลักของ MCAS คือค่าของ AOA sensor

ขยายความ Fly by Feel

ในรถยนต์ยุคเก่าสมัยที่ยังไม่มีพวงมาลัยพาวเวอร์ (Power Steering) คนขับจะต้องออกแรงสู้กับแรงเสียดทานของถนนเพื่อบังคับทิศทางของรถ เครื่องบินก็ไม่แตกต่างกันกล่าวคือเมื่อนักบินบังคับทิศทางของเครื่องบินด้วยการบังคับ Control Surfaces นักบินจะต้องออกแรงสู้กับกระแสอากาศที่ชนกับ Control Surfaces เหล่านั้น

ความหนักของแรงต้านขึ้นอยู่กับ 2 ปัจจัยหลักคือ

  • ขนาดของ Control Surfaces
  • ความเร็วของเครื่องบิน
Aircraft Control Surfaces
Flight Control

แรงต้านที่เกิดขึ้นนั้นไม่ได้เป็นผลเสียซ่ะทั้งหมดเพราะนักบินสามารถรับรู้ถึงอาการของเครื่องได้หลายอย่างจากแรงต้านที่เปลี่ยนแปลงไปตามท่าทางการบิน

แต่ในเครื่องบินขนาดใหญ่แรงต้านที่เกิดขึ้นนั้นสูงเกินกว่าที่นักบินจะสู้ไหว นักบินต้องมีตัวช่วย โดยตัวช่วยนั้นเรียกว่าระบบ Powered Flying Controls

Powered Flight Control

Powered Flying Controls นอกจากจะช่วยให้นักบินผ่อนแรงแล้ว ยังมีประโยชน์อีกหลายอย่าง เช่น

  • Artificial Feel Unit ระบบสร้างแรงต้านจำลอง (แรงต้านจริงๆ หนักมากและมาไม่ถึง Control Column แล้วเนื่องจากมี actuator คั่นอยู่)
  • ระบบ actuator ทำให้สามารถพัฒนาระบบอัตโนมัติอื่นๆ เพื่อช่วยบินตามมาได้อีกมากมาย

บทที่ 1 Sensors and Data Flows

Mindsets และ logic behind การออกแบบระบบต่างๆ ในเครื่องบินแต่ละยี่ห้อ แต่ละรุ่นนั้นแตกต่างกันส่งผลให้ระบบมีจุดเด่นและจุดด้อยที่ไม่เหมือนกัน และนี่คือ Mindsets ของ Boeing

System Overall

ระบบ sensors และคอมพิวเตอร์ใน B737 แบ่งเป็น 2 ชุด ซ้ายและขวา (ซ้ายสำหรับกัปตัน ขวาสำหรับนักบินผู้ช่วย) โดยทั้ง 2 ระบบเป็นอิสระจากกัน ถ้าข้างใดข้างหนึ่งมีปัญหานักบินสามารถใช้ระบบอีกข้างทำการบินได้

เส้นทางของข้อมูลเริ่มจาก

  • ADM (Air Data Module) ซึ่งเป็นคอมพิวเตอร์ที่คำนวนความเร็วและความสูงของเครื่องบินจากค่าความดันอากาศ
  • ADIRU (Air Data Inertial Reference Unit) เป็นคอมพิวเตอรที่รับข้อมูลมาจาก TAT(Total Air Temperature), ADM, motion sensors(Accelerometer), rotation sensors (Gyrosensor) รวมถึง AOA sensor เพื่อคำนวนหาตำแหน่ง ท่าทางการบิน เส้นทางการบิน ความเร็ว และความสูงของเครื่องบิน

ADIRU มีข้อมูลทั้งหมดที่จำเป็นสำหรับการบิน ประเด็นคือ ADIRU มี 2 ตัว ดังนั้นหากค่าที่คำนวนได้จากทั้ง 2 ฝั่งไม่ตรงกันจะเกิดอะไรขึ้น ?

PFD: Primary Flight Display
Speed Tape and Altitude Tape

คำตอบคือ หากค่าที่คำนวนได้จาก ADIRU ทั้ง 2 ตัวไม่ตรงกัน ระบบจะ warning ไปที่นักบิน ตัวอย่างเช่น

  • ถ้า CAS (Computed Air Speed) ที่คำนวนได้ต่างกันเกิน 5 knot เป็นเวลานานกว่า 5 วินาที ระบบจะเตือนว่า IAS DISAGREE
  • ถ้าความสูงที่คำนวนได้ต่างกันเกิน 200 ฟุต เป็นเวลานานกว่า 5 วินาที ระบบจะเตือนว่า ALT DISAGREE

หลังจากนั้นก็จะเป็นหน้าที่ของนักบินที่จะต้องแก้ไขปัญหาที่เกิดขึ้นตาม NNC (Non Normal Checklit)

บทที่ 2 AOA Sensor and Display

Angle of Attack Sensor (AOA Sensor)

Angle of Attack คือ

Angle of Attack (AOA) คือ “มุม” ระหว่าง “ลม” กับ “ปีก” ของเครื่องบิน

Angle of attack (AOA) is the angle between the oncoming air or relative wind and a reference line on the airplane or wing.

AoA vs Pitch Angle

AOA Angle ไม่ใช่ Pitch Angle ของเครื่องบิน ( Pitch Angle คือมุมที่เทียบกับแนวระดับ หรือ Horizon) โดยทั้ง 2 มุมนี้แปรผันตรงกัน (pitch ลด AOA ก็จะลด)

AOA มีความสำคัญคือเพราะถ้า AOA มากเกินไปเครื่องบินจะไม่สามารถสร้างแรงยกได้

AOA Display Option

PFD: Primary Flight Display
AOA Disagree Alert message

ใน B737 NG นักบินสามารถดูค่า AOA ได้บนหน้าจอ PFD (Primary Flight Display) และหาก AOA sensors ทั้ง 2 ตัวอ่านค่าได้ไม่เท่ากัน ระบบก็จะ warning ให้นักบินทราบด้วยข้อความ AOA DISAGREE บนหน้าจอ PFD

ใน B737 MAX นั้น Boeing ตั้งใจว่า

  • Angle of Attack Indicator เป็น feature ที่ต้อง “ซื้อเพิ่ม”
  • AOA DISAGREE ALERT เป็น standard feature

ไม่สามารถดู Real time แต่เตือนให้หากผิดปกติ

แต่ด้วยการ Implement software แสดงผลที่ไม่สมบูรณ์ ปรากฏว่า

“หากไม่ซื้อ Angle of Attack Indicator ก็จะไม่ได้ AOA DISAGREE ALERT ไปด้วย”

ทาง Boeing ทราบดีถึงปัญหาดังกล่าวและได้ข้อสรุปว่า AOA DISAGREE ALERT ไม่จัดเป็น Safety Feature และได้วางแผนจะทำการ patch แก้ไขปัญหาดังกล่าวในช่วงปลายปี 2020

The AOA DISAGREE alert has not been considered as a safety feature by Boeing, and is not necessary to safely operate the aircraft. Airspeed, attitude,altitude,vertical speed, heading and engine thrust settings are the primary parameters the flight crews use to safely operate the aircraft in normal flight.

Boeing determined that the absence of the AOA DISAGREE alert did not adversely impact aircraft safety or operation. Accordingly, Boeing concluded that the existing functionality was acceptable until the originally intended functionality could be implemented in a display system software upgrade, scheduled for the third quarter of 2020.

สรุปคือ หากไม่เปิด feature Angle of Attack Indicator และเกิดเหตุการณ์ AOA DISAGREE ขึ้น นักบินจะไม่มีทางทราบได้เลย

แล้วเหตุการณ์ที่ดูว่าไม่น่าจะมีปัญหา 3 อย่างก็อุบัติขึ้นพร้อมกัน…

  • LION AIR ไม่ได้ซื้อ Angle of Attack Indicator (ณ เวลานั้นมีเครื่อง B737 MAX เพียง 20% จากยอดสั่งเท่านั้นที่เลือก option นี้)
  • AOA sensor ด้านซ้ายอ่านค่าได้สูงกว่าปกติ(sensor bias) โดยมีเงือนไขคือ ถ้าอุณหภูมิต่ำกว่า 60 องศาเซลเซียสค่าที่อ่านได้จะมีความผิดพลาดสูงมาก
  • วันนั้นเที่ยวบิน PK-LQP บินด้วย Auto Pilot ฝั่งซ้าย (ข้อมูลที่ใช้บินมาจาก ADIRU ฝั่งซ้าย ซึ่งข้อมูลดิบก็มาจาก sensors ฝั่งซ้าย)

บทที่ 3 MCAS Detailed Description

MCAS Ststem Overview

การทำงานของ MCAS คือ

  • AOA ของเครื่องบินถูกวัดและส่งไปให้ FCC (Flight Control Computer)
  • MCAS เป็นส่วนหนึ่งของระบบ Speed Trim System ซึ่งอยู่ใน FCC
  • หาก AOA สูงเกินค่าที่กำหนดไว้, ระบบ MCAS จะ active ขึ้นมา
Horizontal Stabilizer movement
  • MCAS จะสั่งให้ Horizontal Stabilizer(แพนหางแนวนอนแผ่นใหญ่) เคลื่อนที่ด้วย high rate (high rate automatic trim command) ผลคือ เครื่องบินจะ pitch down และ AOA ก็จะลดลง
  • MCAS ทำให้น้ำหนักของ Control Column มีความเหมาะสมตามอาการของเครื่อง
Stabilizer control
  • นักบินสามารถ override การทำงานของ MCAS ได้ด้วยการเข้าควบคุม Horizontal Stabilizer จากช่องทางอื่น เช่น trim wheel(หมายเลข 1) หรือ electric stabilizer trim switches ที่อยู่บน Control Column(หมายเลข 4) เป็นต้น
  • หากถูก override MCAS จะหยุดทำงาน 5 วินาที จากนั้นจะ active ขึ้นมาใหม่หาก AOA ยังเกินค่าที่ตั้งไว้

บทที่ 4 : 7 Flights สุดท้ายของ PK-LQP

วิธีแปลความหมายจากกราฟที่ได้จาก DFDR (Digital Flight Data Recorder)

Saw tooth Signal
  • ชื่อของข้อมูลจะอยู่บนเส้นกราฟ
  • ค่าของข้อมูลจะเป็นแนวตั้ง อาจจะอยู่ด้านซ้ายหรือด้านขวาก็ได้
  • สัญญาณปกติ(valid value) จะมีลักษณะเป็นเส้น
  • สัญญาณที่ไม่ปกติ(invalid vale) คือสัญญาณที่ swing เป็นฟันเลื่อย (Sawtooth Waveform) แต่เนื่องจากการ swing นี้เกิดขึ้นเร็วมากดังนั้นกราฟที่ออกมาจึงมีลักษณะเป็นสี่เหลี่ยมผืนผ้าและทึบ โดยมีขอบบนอยู่ที่ค่า max value และขอบล่างอยู่ที่ค่า min value

ตัวย่อต่างๆ ในกราฟมีดังนี้

  • ADR FAULT คือ สถานะของ Air Data Reference ใน ADIRU มี 2 Status คือ FAIL/NOFAIL
  • SS SPEED SMYD (Stick Shaker Speed Stall Managment Yaw Damper) คือสถานะของระบบ Stick Shaker (Stick Shaker คือระบบที่จะทำให้ Control Colunm สั่นเมื่อเครื่องบินเข้าใกล้ stall speed)
  • TAT (Total Air Temperature) คืออุณหภูมิภายนอกเครื่องบิน
  • AOA SMYD คือค่ามุม AOA ที่อ่านได้
  • CAS (Computed Air Speed) คือความเร็วของอากาศรอบเครื่องบิน
  • BARO CORRECTED ALT (Barometric Corrected Altitude) คือความสูงของเครื่องบินเทียบกับระดับน้ำทะเล
  • ALTITUDE ADIRU คือความสูงของเครื่องบินเทียบกับพื้น
  • ถ้ามีตัวเลขตามมา เลข 1 หมายถึงฝั่งซ้าย, เลข 2 หมายถึงฝั่งขวา
  • ถ้ามีตัวอักษรตามมา ตัว L หมายถึงฝั่งซ้าย, ตัว R หมายถึงฝั่งขวา

ตัวย่อสนามบินที่ PK-LQP Takeoff/Landing มีดังนี้

  • TSN คือเมือง Tianjin ประเทศจีน
  • MDC คือเมือง Denpasar ประเทศอินโดนีเซีย
  • DPS คือเมือง Manado ประเทศอินโดนีเซีย
  • LOP คือเมือง Lombok ประเทศอินโดนีเซีย
  • CGK คือเมือง Jakatar ประเทศอินโดนีเซีย
  • ตัวเลขที่ตามหลังคือจำนวน Flight ก่อนเกิดอุบัติเหตุ

ข้อมูล 7 Flights สุดท้ายของ PK-LQP มีดังนี้

PK-LQP Boeing 737–8 MAX
ค่าความต่างที่ ADIRU ด้านซ้ายและด้านขวาคำนวณได้

จาภาพรวมของกราฟพบว่า

  • DFDR บันทึกสัญญาณที่ invalid ได้ตั้งแต่เที่ยวบินจาก Tianjin (TSN-7) หรือ 7 Flights ก่อนเกิดอุบัติเหตุ
  • เมื่ออุณหภูมิลดลงถึง 20 องศา ค่า TAT-L จะ invalid
  • เมื่อ TAT-L invalid จะส่งผลให้ BARO CORRECTED, SS SPEED และ CAS ของฝั่งซ้าย invalid ตาม
  • ส่งผลให้มีของความ IAS DISAGREE และ ALT DISAGREE ขึ้นเตือนบนจอ PFD ฝั่งกัปตัน
  • AOA sensor อ่านค่าได้ต่างกันถึง 21 องศา ในเที่ยวบิน DPS-1และ CGK (Flight ก่อนเกิดอุบัติเหตูและ Flight ที่เกิดอุบัติเหตุ) และมีเหตุผลที่ทำให้นักบินในเที่ยว DPS-1 นำเครื่องลงมาได้อย่างปลอดภัย…
  • ค่าของ AOA sensor ทั่ง 2 ฝั่งไม่เคย invalid

ขยายความ ทำไมอุณหภูมิที่ invalid (TAT-L invalid) จึงส่งผลได้มากมายขนาดนี้

Temperature VS Speed

แรงยกของเครื่องบินเกิดขึ้นตามหลักอากาศพลศาสตร์ (Aerodynamic) ซึ่ง “อากาศ” นั้น sensitive ต่ออุณหภูมิ (อุณหภูมิเปลี่ยน ความดันและความหนาแน่นก็จะเปลี่ยนตาม) ดังนั้นข้อมูลอุณหภูมิที่แม่นยำจะส่งผลโดยตรงให้ระบบคำนวนค่าความดันและความหนาแน่นของอากาศได้อย่างถูกต้อง

ปัญหาคือ เครื่องบินโดยสารบินด้วยกว่าเร็วสูงมาก (Transonic Speed หรือเกือบเท่าความเร็วเสียง) ทำให้ค่าอุณหภูมิที่อ่านได้จาก sensor นั้น สูงกว่าความเป็นจริง อันเป็นผลมาจาก

  • แรงเสียดทานของอากาศกับตัว sensor (Kinetic Heating)
  • ความดันอากาศรอบ sensor สูงขึ้นตามความเร็วที่เพิ่มขึ้นและความดันที่เพิ่มทำให้อุณหภูมิบริเวณนั้นสูงขึ้น (Adiabatic Heating)

เราเรียกค่าอุณหภูมิที่อ่านได้โดยตรงจาก sensor ว่า TAT หรือ Total Air Temperature (หรือ IOAT : Indicated Outside Air Temperature)

ระบบไม่อยากได้ TAT แต่อยากได้ SAT (Static Air Temperature), (or COAT: Corrected Outside Air Temperature) หรืออุณหภูมิจริงของสภาพแวดล้อมโดยรอบเครื่องบิน เพื่อใช้ในการคำนวน parameters ต่างๆ ที่จำเป็นต่อการบิน หนึ่งใน paramaters เหล่านั้นคือ

  • CAS
  • BARO CORRECTED ALT

เมื่อ TAT invalid แต่ระบบยังใช้ TAT เป็นข้อมูลตั้งต้นในการคำนวณ SAT จึงส่งผลให้ CAS และ BARO CORRECTED ALT เป็นค่า Invalid

สุดท้ายแล้วเมื่อระบบเปรียบเทียบค่าที่ได้จากฝี่งซ้าย (invalid) กับฝั่งขวา (valid) จึงเกิดเหตุการณ์ IAS DISAGREE และ ALT DISAGREE ขึ้น

บทที่ 5 DPS-1 ลงมาได้อย่างปลอดภัยเพราะ ?

เหตุการณ์ที่เกิดขึ้นในช่วงต้นของ DPS-1(ช่วง Takeoff & Climb)

FDR parameters of the takeoff and climb out on the flight from Denpasar to Jakarta (DPS-1)

จากข้อมูลพบว่า

  • AOA sensors ทั้ง 2 ฝั่งอ่านค่าได้ต่างกัน 21 องศา เกือบทั้ง flight
  • Control Column ฝั่งซ้ายสั่นเนื่องมาจาก stick shaker active เกือบทั้ง flight
  • มีข้อความ IAS DISAGREE และ ALT DISAGREE ขึ้นบนหน้าจอ PFD ฝั่งซ้าย
  • หลังจาก takeoff ไปถึงความสูง 1800 ฟุต นักบินผู้ช่วยเปิด autopilot แต่เปิดได้เพียง 1 นาที ระบบ autopilot ก็ยกเลิก
  • นักบินผู้ช่วยพยายามเปิด autopilot ครั้งที่ 2 ครั้งนี้เปิดได้แป็บเดียว autopilot ก็ถูกยกเลิกอีกครั้ง หลังจากนั้น autopilot ก็ไม่ถูกใช้อีกเลย นักบินบินแบบ manual ไปตลอดทั้ง flight
  • เกิดการแย่งกัน trim จาก MCAS (TRIM AUTOMATIC) และนักบิน (TRIM MANUAL) โดย MCAS พยายาม trim ให้เครื่อง pitch down แต่นักบินพยายาม trim ให้ pitch up (*1)
  • นักบินควบคุมเครื่องได้ยาก เนื่องจาก MCAS trim ด้วย High Rate
  • ทุกครั้งที่นักบิน TRIM MANUAL ระบบ MCAS จะหยุดไป 5 วินาทีจากนั้นก็กลับมาทำงานใหม่
  • กับตันตัดการทำงานของระบบ trim อัติโนมัติ
  • กัปตันสั่งให้นักบินผู้ช่วยเปิด NNC (Non Normal Checklist) หัวข้อ Airspeed Unreliable, Altitude Disagree และ Runaway Stabilizer
  • หนึ่งในขั้นตอนของ Runaway Stabilizer คือให้ทำการปิดระบบ trim อัติโนมัติ (STAB TRIM CUTOUT switch to CUTOUT) ซึ่งทำให้ MCAS ถูกปิดการทำงานไปด้วย
  • นักบินพยายามจะเปิด automatic trim อีกครั้ง (*2) แต่เมื่อเปิดแล้ว MCAS กลับมาสร้างปัญหาอีกรอบ(ช่วงสั้นๆ) นักบินจึงไม่เปิด automatic trim อีก
  • นักบินสามารถควบคุมเครื่องบินได้และกัปตันตัดสินใจที่จะไปต่อ

ขยายความ ทำไมถึงเลือก NNC หัวข้อ Runaway Stabilizer ด้วย

คงต้องบอกว่าเพราะประสบการณ์ของนักบินล้วนๆ เพราะ

1. QRH (Quick Reference Handbook) บอกไว้ว่า “เป็นไปไม่ได้ที่จะสร้าง checklists ที่ครอบคลุมทุกสถานการณ์” ดังนั้นจึงเป็นหน้าที่ของนักบินที่จะต้องวิเคราะห์และเลือกว่าจะหยิบ checklists หัวข้อใหน (อาจจะมากกว่า 1 หัวข้อ) มาใช้เพื่อแก้ปัญหา

2. อาการที่เกิดขึ้นไม่เหมือนกับอาการ Runaway Stabilizer เลย กล่าวคือถ้าเป็น Runaway Stabilizer เครื่องบินจะต้องมีอาการพยายาม pitch down ไปเรื่อยๆ แต่สิ่งที่เกิดขึ้นคือาการ pitch down อย่างหนักที่มาเป็นช่วงๆ (5 วินาทีต่อครั้ง)

บทที่ 6 Last Flight

เหตุการณ์ที่เกิดขึ้นใน flight ที่เกิดอุบัติเหตุมีดังนี้

The significant parameters from the accident flight
  • AOA sensors ทั้ง 2 ฝั่งอ่านค่าได้ต่างกัน 21 องศา เกือบทั้ง flight
  • Control Column ฝั่งซ้ายสั่นเนื่องมาจาก stick shaker active เกือบทั้ง flight
  • มีข้อความ IAS DISAGREE และ ALT DISAGREE ขึ้นบนหน้าจอ PFD ฝั่งซ้าย
  • ในจังหวะ rotate เครื่องยกตัวและกลับมา touched runway ก่อนครั้งหนึ่งก่อนที่จะ airbone ได้
  • ไม่มีการใช้ autopilot เลยใน flight นี้
  • เกิดการแย่งกัน trim จาก MCAS (TRIM AUTOMATIC) และนักบิน (TRIM MANUAL) โดย MCAS พยายาม trim ให้เครื่อง pitch down แต่นักบินพยายาม trim ให้ pitch up (*1)
  • กัปตันสั่งให้นักบินผู้ช่วยทำ memory item ของ Airspeed Unreliable (memory item คือ checklist 4 ข้อแรกที่ต้องทำก่อนจากความจำ ก่อนที่จะเริ่มอ่าน checklist ข้อถัดไป) แต่นักบินผู้ช่วยไม่สามารถจำ memory item ได้
  • นักบินผู้ช่วยทำตาม checklist มาถึงแค่ข้อ 8 เท่านั้นเพราะ checklist ข้อนี้บอกว่า เมื่อเครื่องบิน trim และ stabilized ให้ทำการ cross check ค่าต่างๆ จากฝั่งกัปตัน, นักบินผู้ช่วย และอุปกรณ์สำรอง(Standby ASI) แต่ในขณะนั้นเครื่องบินไม่ stabilized checklist ข้อ 8 จึงไม่ complete
  • กัปตันส่งการควบคุมไปให้นักบินผู้ช่วย
  • นักบินผู้ช่วยทำการบิน และ trim เครื่องบินสู้กับ MCAS แต่ rate การ trim ของนักบินผู้ช่วยนั้นช้ากว่าช่วงที่กัปตันบังคับเครื่องอยู่ ทำให้ MCAS เริ่มชนะ
  • เครื่องบิน pitch down มากขึ้น, น้ำหนักของ control column เพิ่มไปถึง 46 กิโลกรัม
  • PITCH TRIM POSITION(เส้นสีน้ำเงินเข้ม) มีแนวโน้มลดลงลงเรื่อยๆ บ่งบอกว่าเครื่องบิน pitch down ลงเรื่อยๆ
  • MCAS ชนะ

ขยายความ ทำไมต้อง When in trim and stabilized

  1. ความเร็วของเครื่องบินคำนวณจากความดันอากาศเป็นหลัก หากเครื่องบินไม่ stabilized แล้ว ค่าความเร็วที่อ่านได้จะมี error สูง
  2. ในเที่ยวบินนี้ หากนักบินผู้ช่วย cross check เลยโดยไม่รอให้เครื่อง stabilized จะพบว่าค่าความเร็วที่อ่านได้จากฝั่งซ้ายและฝั่งขวาต่างกันเพียง 15 knot ซึ่งไม่เข้าข่าย unreliable

บทที่ 7 บทวิเคราะห์

The Swiss Cheese Model — by James Reason

กลไลการเกิดอุบัติเหตุมักไม่ได้เกิดจากความผิดพลาดจากเรื่องเดียว (single point of failure) แต่มันคือห่วงโช่ของความผิดพลาดเล็กๆ น้อยๆ ที่เกิดขึ้นถูกที่และถูกจังหวะ เสมือนกับชีสที่มีโพรงอากาศตามจุดต่างๆ วันดีคืนดีเมื่อเราเอาชีสหลายๆ แผ่นมาเรียงกันแล้วบังเอิญว่าโพรงอากาศของทุกๆ แผ่นนั้นทะลุถึงกันหมด

อาจจจะฟังดูยากและไม่น่าจะเป็นไปได้… อุบัติเหตุก็เช่นกัน…

ในบทนี้จะกล่าวถึงบริบทต่างๆ ที่เกิดขึ้นรอบๆ เที่ยวบิน PK-LQP

  1. นักบินใน flight DPS-1
  • เหตุการณ์ที่เกิดขึ้นใน flight DPS-1 และ flight ที่เกิดอุบัติมีลักษณะคล้ายกันมาก และนักบินสามารถนำเครื่องกลับมาลงได้อย่างปลอดภัย
  • กัปตันมีการส่งการควบคุมไปให้นักบินผู้ช่วยก่อนที่จะทำการ cross check ค่าต่างๆ ที่เกิดขึ้นเนื่องมาจากกัปตันตระหนักถึงรายงานเกี่ยวกับ ASI DISAGREE, ALT DISAGREE จากเที่ยวบินก่อนหน้า รวมถึงถึงรายงานการเปลี่ยน AOA sensor ฝั่งซ้าย
  • นักบินผู้ช่วยทำการบินและรายงานกัปตันว่าเครื่องบินควบคุมได้ยาก, control column มีน้ำหนักมากและ ไม่สามารถ trim ให้ stabilizied ได้และเครื่องบินมีการ pitch down เอง
  • จากอาการที่เกิดขึ้นทำให้กัปตันตัดสินใจ cut-out the Stabilizer Trim ส่งผลให้นักบินสามารถควบคุมเครื่องบินได้
  • กัปตันแจ้งเหตุฉุกเฉินให้ ATC ทราบทำให้ workload ในการคุยกับ ATC ลดลง
  • กัปตันให้นักบินผู้ช่วยทำ NNC 3 อย่างคือ Airspeed Unreliable, Altitude Disagree และ Runaway Stabilizer
  • นักบินผู้ช่วยทำตาม checklist จนครบ
  • กัปกันตัดสินใจไปต่อด้วยเหตุผล “land-at-the-nearest-suitable-airport” แต่การไปต่อนั้นเป็นเหตุการณ์ที่ไม่ปกติ (รายงานใช้คำว่า highly unuaual) เพราะ

1. จากปี 2001– 2018 มีรายงานเกี่ยวกับ stick shaker หลังจาก takeoff ในเครื่องบินรุ่น B737 ทั้งหมด 27 ครั้ง และมี 5 ครั้งเท่านั้น (รวมถึงเที่ยวบินนี้) ที่กัปตันเลือกไปต่อ

2. ในครั้งนี้มีเหตุให้สัณนิฐานว่า runaway stabilizer situation ร่วมอยู่ด้วย

  • กัปตันสั่งให้ผู้โดยสารนั่งอยู่กับที่และคาดเข็มขัดตลอดเวลา ตลอดจนขอให้ deadhead pilot ที่นั่งอยู่ข้างหลังช่วย monitor เครื่องมือวัด, ฟัง ATC, ช่วยทำ checklists และคำนวณความเร็วที่จำเป็นต้องใช้ตอน landing (required Vref
    approach and N1 go-around values) แสดงให้เห็นว่ากัปตันประเมินสถานการณ์ที่เกิดขึ้นนั้นว่ามีความเสี่ยงสูงและต้องการใช้ทรัพยากรทุกอย่างที่มี
  • เมื่อลงมาแล้วนักบินได้ลงในรายงานว่าเกิด warning 3 อย่างขณะทำการบิน คือ IAS DISAGREE, ALT DISAGREE และ FEEL DIFF PRESS
  • นักบินไม่ได้รายงานถึงเหตุการณ์ stick shaker, เครื่องบินมีอาการคล้ายกับ trim runaway คลอดจนการใช้ STAB TRIM CUTOUT เพื่อแก้ปัญหา

report all known and suspected defects is very critical for engineering to be able to maintain the airworthiness of the aircraft.

2. การ maintenances เครื่องบินหลัง flight DOS-1

  • ทีมช่างตรวจสอบ AFML(Aircraft Flight Maintenance Log) ของเที่ยวบินก่อนๆ หน้าและพบว่ามีรายงานเกี่ยวกับ IAS DISAGREE, ALT DISAGREE และ FEEL DIFF PRESS แต่ไม่มี fault code
  • ทีมช่างทำการตรวจสอบตามคู่มือในหัวข้อ “ALT DISAGREE shows on PFD — captain’s” แต่ไม่ได้ทำหัวข้อ “IAS DISAGREE shows on PFD — Captain’s”
  • ทีมช่างทำการซ่อมตามคู่มือจนเสร็จแต่ได้ข้ามขั้นตอนหนึ่งไป (leak test of the pitot and static system)
  • ทีมช่างทำ operational test และพบว่าปัญหาหายไปจึงได้ releast เครื่องกลับไปบิน
  • ตามหลักแล้วหากข้ามขั้นตอนไปจะไม่ถือว่างานนั้นเสร็จ (The leak test required by the AMM task on step K had not been conducted which mean that the IFIM task point B step (3) could not be considered as complete.)
  • ในการตรวจสอบ “IAS DISAGREE shows on PFD — Captain’s” มีขั้นตอนหนึ่งที่ให้ช่างทำการตรวจสอบ AOA sensor ด้วยสายตา (visual inspection) แต่ไม่บังคับว่าจะต้องทดสอบค่าที่ AOA sensor อ่านได้ (ทำหรือไม่ทำก็ได้) แต่ในการตรวจสอบรอบนี้ไม่ได้ทำ “IAS DISAGREE shows on PFD — Captain’s”
  • สุดท้ายแล้ว ต่อให้ทีมช่างทำทั้ง “ALT DISAGREE shows on PFD — captain’s” และ “IAS DISAGREE shows on PFD — Captain’s” ก็ไม่สามารถแก้ปัญหาได้ (ปัญหาจริงๆ อยู่ที่ AOA sensor อ่านค่าได้ bias)
  • ตามคู่มือ task ในการซ่อมที่บังคับให้ทำการทดสอบค่าของ AOA sensor คือ “AOA DISAGREE show on PFD — Captain’s” ซึ่ง message นี้ไม่โชว์เนื่องจากปัญหาของ software แสดงผลที่กล่าวไว้แล้วในตอนต้น

The IAS and ALT disagree reported which occurred on the LNI043 flight which was caused by AOA sensor bias, would not be able to solve by both IFIM tasks of “ALT DISAGREE shows on PFD — Captain’s” and “IAS DISAGREE shows on PFD — Captain’s”.

3. นักบินใน flight ที่เกิดอุบัติเหตุ

  • กัปตันมีอาการป่วย
  • นักบินผู้ช่วยถูกเรียกมาบินเพราะตารางบินมีการเปลี่ยนแปลง
  • นักบินผู้ช่วยสับสนและไม่สามารถทำ memory item เมื่อกัปตันสั่งได้
  • ผู้ช่วยใช้เวลาไปกับ checklist นาน ทั้งๆ ที่ The Airspeed Unreliable procedure เป็นหนึ่ง precedures ที่อยู่ใน Quick Action Index ซึ่งอยู่ที่หน้าปก บรรทัดที่ 2 ของ checklist
  • นักบินผู้ช่วยไม่สามารถทำ NNC หัวข้อ Airspeed Unreliable จนจบได้เพราะเครื่องบินไม่ stabilized (กล่าวถึงไปแล้วข้างบน)
  • นักบินแจ้ง ATC ว่ามีปัญหาเกี่ยวกับ flight control แต่ไม่ declare emergency
  • การไม่ declare emergency ทำให้นักบินต้องติดต่อกับ ATC เยอะ บวกกับ NNC ไม่เสร็จนักบินไม่สามารถหาสาเหตุของความผิดปกติได้ ทำให้ workload ของนักบินเพิ่มขึ้น
  • ในจังหวะที่กัปตันส่งการควบคุมไปให้นักบินผู้ช่วย กัปตันไม่ได้บอกว่าเครื่องควบคุมยากและต้อง trim nose up อยู่เป็นระยะๆ
  • นักบินผู้ช่วยไม่สามารถควบคุมเครื่องได้
  • มีช่วงจังหวะหนึ่งที่นักบินถาม ATC ว่า เครื่องบินอยู่ที่ความสูงเท่าไร นักบินควรจะรู้ว่า ATC เห็นความสูงของเครื่องบินเพราะเครื่องบินส่งค่าความสูง(พร้อมด้วยค่าอื่นๆ) ผ่านอุปกรณชื่อ transponder ไปให้ ดังนั้นแล้วค่าที่ ATC เห็นจึง unrealiable ไม่ต่างกับที่นักบินเห็น

The activation of stick shaker indicated that the aircraft was about to stall while the cockpit instrument indicated the pitch was relatively level and the speed relatively high. The cockpit instrument did not indicate that the aircraft was close to stall condition which contradicted to the stick shaker activation.

4. MCAS Design/Certification

  • Software แสดงผลทำงานไม่ถูกต้อง
  • ในช่วงการออกแบบและทดสอบ Boeing ได้ระบุอันตรายจาก MCAS ไว้ 2 อย่างที่เกี่ยวข้องกับ uncommanded MCAS (MCAS ทำงานเองโดยไม่ได้สั่ง)โดยทั้ง 2 กรณีถูกจัดเป็นอันตรายระดับ Major (จากสเกล 5ระดับ คือ No Effect, Minor, Major, Hazardous และ Catastrophic)
  • เมื่อจัดอยู่ในกลุ่ม Major, Boeing จึงไม่ได้ทำ Failure Modes and Effects Analysis (FMEA) และ Fault Tree Analysis (FTA)

ในช่วง 27 ปีที่ผ่านมา มีเหตุการณ์ stick shaker เนื่องจาก AOA sensor ทำงานผิดพลาดจำนวน 25 ครั้ง คิดเป็น 1 ใน 10 ล้านช่วงโมงบิน จากความน่าจะเป็น 1 ใน 10 ล้านครั้ง ทำให้ความเสี่ยงของ AOA sensor failure จัดอยู่ในกล่ม Major

  • ถึงแม้ว่าความเสี่ยงจะอยู่ในกลุ่ม Major แต่การ rely อยู่บน sensor เพียงตัวเดียวเป็นเหตการณ์ที่ควรหลีกเลี่ยง
  • หากพิจารณาเฉพาะเครื่องบินแบบ B737 MAX พบว่าก่อนเกิดเหตุมีชั่วโมงบินรวมกัน 500,000 ชั่วโมง ทำให้ความน่าจะเป็นที่จะเกิด AOA sensor failure กลายเป็น 1 ในล้านชั่วโมงบิน(1 ลำมี sensor 2 ตัว) ซึ่งสูงกว่าเกณฑ์ Major
  • ถ้า failure rate สูงว่า catagory ที่กำหนดไว้จะต้อง redesign ใหม่ และถ้าระบบมีความเสี่ยงสูงกว่า Major(Hazardous หรือ Catastrophic) ไม่ควรที่จะให้ระบบนั้น rely ด้วย sensor เพียงตัวเดียวต่อให้โอกาสเกิด failure จะต่ำกว่าเกณฑ์ก็ตาม

If the uncommanded MCAS failure condition had been assessed as more severe than Major, the decision to rely on single AOA sensor should have been avoided.

  • Boeing ได้ simulation เหตุการณ์ uncommanded MCAS ที่ความเร็วสูง แต่ไม่ได้คำนึงถึงเหตุการณ์ uncommanded MCAS ที่ความเร็วต่ำตลอดจนเหตุการณ์แย่งกัน trim ระหว่าง MCAS และนักบิน

Racing condition เป็นเหตุการณ์ที่ระบบ(หรืออุปกรณ์) มากกว่า 1 ระบบเข้าถึงทรัพยากรอย่างเดียวกันในเวลาเดียวกัน ตัวอย่างเช่นสวิตซ์ไฟ 2 ทางตามบันไดถูกแย่งกันเปิดจากผู้ใช้ 2 คนที่อยู่กันคนละชั้น สุดท้ายแล้วเป็นการยากที่จะบอกว่าหลอดไฟถูกเปิดหรือไม่เพราะเราไม่รู้ว่าใครเป็นคนกดสวิตซ์คนสุดท้ายและ State ของสวิตซ์ก่อนกดนั้นเป็นอย่างไร

Racing condition เป็นเหตุการณ์ที่พบได้บ่อย ยิ่งระบบที่มีความซับซ้อนมากยิ่งมีโอกาสเกิดมากตาม ผู้ที่ออกแบบระบบจะต้องตระหนักและเตรียมวิธีรับมืออย่างเหมาะสมไว้ตั้งแต่ขั้นตอนออกแบบ

  • ในช่วงที่เกิดเหตุ MCAS ทำให้ control column หนักถึง 100 lbs.(45 กิโลกรัม) สูงกว่าที่ FAA(14 FAR 25.143) กำหนดไว้ที่ 75 lbs.
  • ในช่วงแรกของการออกแบบ MCAS สามารถควบคุม stabilizer ให้เลื่อนลงได้แค่ 0.6 องศา(เต็มช่วงคือ 4.2 องศา) แต่หลังจากที่ผลิตเครื่องบินต้นแบบและทดลองบินแล้วพบว่าไม่พอจึงได้มีการเพิ่มเป็น 2.5 องศาในภายหลัง
  • ในอุตสาหกรรมการบิน การใช้ software มาปรับปรุงการตอบสนองของเครื่องบินเป็นสิ่งที่พบได้ไม่บ่อย

It is not uncommon to modify the control software to refine the aircraft’s flight characteristics.

ส่งท้าย

ในโลกที่ทุกอย่างขับเคลื่อนด้วยระบบอัติโนมัติ ระบบควบคุมที่มีความซับซ้อนสูงถูกพัฒนาโดยมีข้อจำกัดทางธุรกิจและมี time to marget เป็นปีศาจตัวสำคัญที่ tradeoff ระหว่างความสมบูรณ์ของระบบและความอยู่รอดขององค์กร

ระบบ embedded system ปัจจุบันไปไกลมาก บางครั้งไกลกว่าคนออกแบบจะเข้าใจถึง nature ของระบบที่ embedded system ไปฝังตัวอยู่ การเก็บ requirements, use cases ตลอดจน conditions สำคัญต่างๆ ยากที่จะเก็บได้ครบทั้งหมดดังนั้นแล้วผู้ออกแบบระบบจะต้องคิดให้กว้าง มองให้ครอบคลุม รู้ให้เยอะ รู้ให้กว้าง และทำตัวเป็น Multi-Disciplinary Designer

นี่คงไม่ใช่เหตุการณ์เครื่องบินตกครั้งสุดท้าย แต่นี่ควรเป็นเหตุการณ์เครื่องบินตกอันเนื่องมาจาก MCAS และ AOA sensor ครั้งสุดท้าย

CAE Oxford Aviation Academy book:

  • AIRFRAMES AND SYSTEMS
  • INSTRUMENTATION

--

--