comp.lang.ada
 help / color / mirror / Atom feed
From: tranngocduong@gmail.com
Subject: Re: Boeing 737 and 737 MAX software
Date: Fri, 19 Apr 2019 02:13:28 -0700 (PDT)
Date: 2019-04-19T02:13:28-07:00	[thread overview]
Message-ID: <fc297efd-cffc-4bc8-9fd0-9d4ab392cbc6@googlegroups.com> (raw)
In-Reply-To: <874l6vhsvx.fsf@nightsong.com>

On Friday, April 19, 2019 at 5:04:54 AM UTC+7, Paul Rubin wrote:
> FWIW here's an article that just came out in IEEE Spectrum, by a
> programmer and private pilot pontificating about the 737 software and
> MCAS.  I don't have the impression that it's a good article from an
> paviation standpoint but don't know enough about the topic to be sure.
> 
> Anyway, here it is, since it has been getting some attention:
> 
> https://spectrum.ieee.org/aerospace/aviation/how-the-boeing-737-max-disaster-looks-to-a-software-developer

Thank you for introducing the article. 

I, too, am under similar impression. I think that the article may contain oversimplified or otherwise imprecise information. Nevertheless, I find it inspiring: it hepls me to come up with a theory which can explain many conflicting facts and viewpoints. (Example of conflicting facts, the general public believe MCAS is an anti-stall, i.e. critical, system, while Boeing insists it is a control-quality, i.e. non-critical, system.) 

I'm just trying to sort things up in my mind. I'm not intended to blame or to defend anyone.

1. The 737 has two, not only one, autopilots (AP1 and AP2). They work without any coordination, with the only exception that at most one can be active at a time. In particular, neither of them monitors or can override the other.

2. Technically, an autopilot can take input from a set of sensors on its side as well as a second set of sensors on the other side. However, as a design philosophy, to keep them as independent as possible, systematic effort was made to let them not to look at the other side's set of sensors unless it is absolutely necessary.

3. Each autopilot can detect sensor failures on its own side and manage to fly even in case of one or couple of simultaneous faulty sensors. It disengages if the number of faulty sensors go beyond of its ability.

4. For simplicity, the two autopilots are documented as "the autopilot" and there is only one button on either (captain or first-officer) side to engage/disengage one. The simplicity comes at certain inconvenience. For example, the captain can only activate AP1 while the first officer can only activate AP2, and the captain may fail but the first officer may succeed to activate "the autopilot".

5. On the 737 MAX, two anti-stall systems (AS1, AS2) were added, in the same design principle that there is no coordination between the four systems (AP1, AP2, AS1, AS2) except that at most one can be active at a time. Because AS1 and AS2 have authority to move control surfaces (such as the horizontal stabilizer), they're classified safety-critical.

6. Additionally on the MAX, "maneuvering characteristics" (MC), a control-quality tweaker, was added. The very purpose is to keep the control stick feeling exactly as it was on previous 737 generations. It changes the [artificial] control feeling by the classical mechanism: a "force generator" controlled by a "feel computer". It does not touch any control surface. Because of that, it is classified non-critical.

7. In order to save time, the MC and the ASs were submitted to certification, and were eventually certified, as a single system, under the umbrella name MCAS. The name Anti-Stall was changed to Augmentation System. The category was changed from safety-critical to non-critical.

8. Like AP1/AP2, AS1/AS2 is able to detect faulty AoA sensor on its side and terminate itself. However, a bug causes AS1/AS2 fail to do its job in certain cases, such as multiple sensor failures.

9. After the first accident, the FAA ordered to "fix the MCAS". After the second accident, it finds that the name "MCAS" not correct anymore and insists in resolving _two_ problems. Maybe MC and AS. Or AP and AS. And it insists in re-classifying the AS safety-critical. Although generally, that would be very hard to impossible, in this case that's no problem for Boeing: the AS was designed to be (1) safety-critical, and (2) separately of the AP, in the first place. Therefore, about 10 - 14 months (since the first accident) would suffice.


  reply	other threads:[~2019-04-19  9:13 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-05 21:16 Boeing 737 and 737 MAX software Paul Rubin
2019-04-06  1:16 ` Jere
2019-04-06 19:05   ` Paul Rubin
2019-04-18 22:04   ` Paul Rubin
2019-04-19  9:13     ` tranngocduong [this message]
2019-04-06 17:30 ` Dennis Lee Bieber
2019-04-06 18:45   ` Niklas Holsti
2019-06-28 23:45   ` Paul Rubin
2019-06-29  2:52     ` Dennis Lee Bieber
2019-06-29  3:38       ` Paul Rubin
2019-06-29 16:29         ` Dennis Lee Bieber
2019-08-07  6:06     ` robin.vowels
2019-11-08  1:12   ` Paul Rubin
2019-11-08 15:32     ` Dennis Lee Bieber
2019-11-18 11:16     ` robin.vowels
2019-11-18 15:32       ` Optikos
2019-04-12  7:46 ` tranngocduong
2019-04-12 22:15   ` Dennis Lee Bieber
2019-04-17 17:27   ` Maciej Sobczak
2019-04-18  9:45     ` tranngocduong
2019-04-18 12:44       ` Maciej Sobczak
2019-04-18 13:53         ` tranngocduong
2019-04-18 15:13           ` Niklas Holsti
2019-04-18 16:21             ` tranngocduong
2019-04-18 18:20               ` Niklas Holsti
2019-04-20  0:29                 ` tranngocduong
2019-04-18 20:36               ` Randy Brukardt
2019-04-18 20:51                 ` Paul Rubin
2019-04-18 20:20             ` Paul Rubin
2019-04-18 16:39           ` Dennis Lee Bieber
2019-04-19  2:39             ` Dennis Lee Bieber
2019-04-22 19:36             ` Norman Worth
2019-04-28 18:27               ` russ lyttle
2019-04-18 13:50   ` Simon Wright
2019-04-18 15:07     ` tranngocduong
2019-05-05 14:29 ` robin.vowels
2019-05-06 13:54   ` robin.vowels
2019-05-06 15:12     ` Dennis Lee Bieber
2019-08-07  5:51   ` robin.vowels
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox