Laikā, kad MIT Instrumentation Laboratory izstrādāja Apollo vadības datoru (AGC) (sk 1. daļa un 2. daļa pilnīgam aizmugures stāstam), nelabvēlīgs notikums notika 1965.–1966. gadā, kamēr notika Gemini misijas.
Programma Gemini palīdzēja NASA sagatavoties Apollo Mēness nolaišanās misijām, izmēģinot tikšanās un citas svarīgas metodes un tehnoloģijas. Desmit apkalpes veica misijas Zemes orbītā ar divu cilvēku kosmosa kuģi Gemini.
'IBM izstrādāja Gemini programmas lidojumu vadības sistēmu,' atcerējās Diks Batins, kurš vadīja AGC izstrādi Instrumentation Lab, 'un viņiem vajadzēja veikt programmas izmaiņas vienā no Gemini programmām. IBM veica nelielu aprēķinu un teica NASA: 'Tas jums izmaksās 1 miljonu dolāru.' Tajos laikos tā bija liela nauda.
Džordžs Mullers, NASA asociētais administrators pilotējamo kosmosa lidojumu jautājumos, bija satriekts. 1 miljons dolāru par kaut ko, ko sauc par 'programmatūru?'
'Nu, ja IBM maksā miljonu dolāru, lai veiktu izmaiņas šajā programmatūrā, kāda veida problēma mums radīsies ar Apollo sistēmu, Apollo datoru?' Millers teica. 'Tas ir daudz lielāks darbs... Un, starp citu, kurš vispār strādā ar Apollo vadības datoru?'
Tas ir veids, kā Batins to atcerējās.
Diks Batins (pa kreisi) un Deivids Hoags MIT Instrumentācijas laboratorijā ar Apollo vadības datoru II blokā. Attēla pieklājība: Draper.
'Tātad, šī bija pirmā reize, kad NASA vadošais cilvēks teica: 'Kas notiek ar Apollo datoru?',' sacīja Batins. 'Nu, tad pēkšņi tagad prožektori ir uz mums. Džordžs Mullers ieradās [Bostonā] ciemos, un tad viņš sūtīja cilvēkus no galvenās mītnes. Viņš uzzināja, ka mums ir šis jocīgais dators un smieklīgā programmēšanas sistēma. Pēkšņi interese par Apollo programmatūru kļuva par vissvarīgāko.
Sistēma tika izstrādāta ar trim galvenajām apakšvienībām: inerciālo mērvienību (IMU), datora bloku un optisko vienību. Tas varētu izmantot visas zināmās metodes, lai iegūtu navigācijas datus, tostarp inerciālo, debesu, borta radaru un zemes izsekošanu. Dators bija Apollo vadības, navigācijas un kontroles sistēmas centrālā sastāvdaļa jeb “smadzenes”.
Instrumentācijas laboratorija bija izstrādājusi Apollo vadības sistēmas, taču visas daļas tika būvētas citur: Raytheon salika vadības datorus, AC Sparkplug izveidoja inerciālo sistēmu, bet Kollsman Instrument Company izveidoja optiku. Bet laboratorija bija atbildīga par programmatūru. Būtībā tas, ko viņi darīja, bija radīt kaut ko no nekā, pat radot terminu “programmatūras inženieris”.
'Viss bija jādara ļoti rūpīgi, lai mēģinātu saglabāt mūsu rīcībā esošās atmiņas apjomu,' skaidroja Batins. “Tāpat tas nebija ātrs dators, bet datoram bija jāveic reāllaika aprēķini. Ja jums bija viena sekunde, lai veiktu dažus aprēķinus, un ja tas prasīja divas sekundes, tas nav pieņemami, jo pulkstenis darbojas, un jums ir jāseko tam līdzi.
Džonsona kosmosa centra (JSC) misijas vadības centrā. No kreisās puses ir Gerijs E. Koens, Guidance and Navigation System lidojuma kontrolieris; Hovards V. “Bills” Tindals juniors, A/S lidojumu operāciju direktors; Dr. Christopher C. Kraft Jr., AS direktors; un Sigurds A. Sjobergs, AS direktora vietnieks. Fotoattēlu kredīts: NASA
Bet, kad programmatūras izstrāde sāka atpalikt no grafika, Millers nosūtīja problēmu risinātāju vārdā Bils Tindals — inženieris, ģēnijs un renesanses cilvēks —, kurš strādāja Pilotā kosmosa kuģu centrā Hjūstonā misijas plānošanā. Galu galā Tindals tika iecelts par Apollo datu prioritāšu koordinācijas vadītāju, kurš bija atbildīgs par visu The Lab sniegto norādījumu un navigācijas datoru programmatūras izstrādi. Viņš katru nedēļu devās atpakaļ un no Hjūstonas uz Bostonu.
Tindall veica laboratorijas darbu ar smalku zobu ķemmi un ātri saprata galvenās problēmas un skaidri raksturoja ierosinātos labojumus. Lielākais risinājums bija pieņemt darbā vairāk cilvēku, kas strādātu pie programmatūras.
'Kad Bils Tindals ieradās laboratorijā un it kā pārņēma vadību, viņš gatavojās mūs pilnveidot par programmatūru,' sacīja Batins. 'Un kļuva skaidrs, ka mums vajag vairāk cilvēku. Bet tas bija vadības paņēmiens, ar kuru es, atklāti sakot, nebiju sagatavots. Es tiešām biju cilvēks, kuram patika lietas darīt pašam, un es nemaz nevēlējos vadīt visu orķestri, kad vēlējos koncentrēties uz kādu no tā skaņdarbiem. Bet man nepagāja pārāk ilgs laiks, lai saprastu, ka mēs nevaram turpināt darīt lietas tā, kā mēs to darījām, jo mums bija daži ļoti labi cilvēki, taču neatkarīgi no tā, cik smagi viņi strādāja, mēs nekad nebūtu varējuši sastādīt grafiku. .
Galu galā laboratorijā pie programmatūras strādāja 350 cilvēki, kas ieguldīja līdzvērtīgus 1400 cilvēkgadus, lai izstrādātu AGC programmatūru pirms pirmās Mēness nolaišanās. Kods — montāžas valodas un interpretētās matemātiskās valodas kombinācija — tika uzrakstīts ar roku, pirms tas tika ievadīts milzīgās perfokaršu kaudzēs testēšanai. Visu laiku viss tika pastāvīgi atjaunināts un mainīts – gan aparatūra, gan programmatūra, lai neatpaliktu no prasībām un izmaiņām Apollo misijas plānos. Tomēr ar The Lab inženieru centību un smago darbu programmatūra kļuva par milzīgu lēcienu jebko, kas bija paveikts iepriekš, spējot izpildīt visas reāllaika prasības, savukārt pats dators bija pirmais lidojuma dators izmantot integrālās shēmas.
Galvenā attēla paraksts: komandu ievadīšana Apollo vadības datora displejā un tastatūrā (DSKY) simulācijas laikā. Attēla pieklājība: Draper.
Citā pirmajā gadījumā AGC sistēmai bija nepieciešama saskarne, lai astronauti varētu sazināties ar to. Laboratorijas inženieris Ramons Alonso nāca klajā ar vienkāršu displeja tastatūru ar nosaukumu “DSKY” (izrunā diss-taustiņu). Tam bija digitāls displejs ar lielām pogām ar tikai cipariem (bez burtiem), un tas sazinājās ar AGC, izmantojot darbības vārdu un lietvārdu saskarni, kur divciparu skaitļi apzīmēja programmas, darbības vārdus un lietvārdus. Tomēr DSKY sastāvēja no ierobežota vārdu krājuma, kurā bija 99 lietvārdi un 99 darbības vārdi.
Astronauti ievadīja skaitļus par darbību, ko viņi gribēja veikt, un programmu, kuru viņi gribēja palaist. Lai gan tas izklausās sarežģīti, astronauti teica, ka tas ir viegli lietojams (īpaši cilvēkiem 1960. gados, kuri nekad iepriekš nebija redzējuši vai lietojuši datoru), un tā lietošana drīz vien kļuva par otro dabu. Viens NASA programmatūras inženieris Džeks Gārmens to salīdzināja ar klavierspēli, kur pēc vairākkārtējas dziesmas atskaņošanas nav jāskatās taustiņos, lai zinātu, kur likt pirkstus.
MIT Instrumentation Lab inženieri sēdēja Sistēmas vadības un uzraudzības telpā Apollo 8 misijas laikā, tostarp Eldons Hols (centrā pa kreisi), Diks Batins (centrā pa labi) un Deivids Hoags (pa labi). Attēla pieklājība: Draper.
Pirmais patiesais AGC tests notika Apollo 8 misijā, pirmajā lidojumā, kas lidoja uz Mēnesi un nonāca Mēness orbītā. 24. decembrīth, Frenks Bormans, Džeimss Lovels un Viljams Anderss izmantoja AGC, lai veiksmīgi pabeigtu Mēness orbītas ievietošanu, veicot desmit apgriezienus ap Mēnesi. Katru reizi, kad viņi devās uz Mēness malu, apkalpe zaudēja visus sakarus un izsekošanu ar Zemi, taču dators viņus noturēja uz ceļa.
Tomēr pa ceļam uz mājām Lovels nejauši ievadīja nepareizu kodu DSKY, izdzēšot daļu datora atmiņas un liekot kosmosa kuģim domāt, ka tie atrodas nepareizajā vietā. Taču, veicot īstu rezerves optiskās navigācijas sistēmas testu, Lovels ātri izmantoja sekstantu un teleskopu, lai noskaidrotu precīzu to atrašanās vietu, un pēc tam manuāli ievadīja pareizās koordinātas AGC.
Bet AGC patiešām sevi pierādīja Apollo 11. 1969. gada 20. jūlijā, kad astronauti Nīls Ārmstrongs un Buzs Oldrins nolaidās uz Mēness virsmas uz Mēness moduļa “Eagle”, atskanēja galvenais trauksmes signāls, kas signalizēja par LM galvenā datora pārslodzi.
Neskatoties uz '1202' (un vēlāk līdzīga 1201) pārslodzes trauksmi, vadības dators darbojās, kā bija paredzēts, un ar savu prioritāšu plānošanu izslēdza visas programmas, izņemot prioritāti numur 1 (nosēšanās programmu) un restartēja. , ļaujot Ārmstrongam un Oldrinam turpināt nosēšanos.
Tomēr trauksmes signāli bija satraucoši. Taču, pateicoties šo trauksmju simulācijai tikai divas nedēļas pirms Apollo 11 palaišanas, Džeks Gārmens un lidojuma kontrolieris Stīvs Beilss zināja, ka nevajadzētu aicināt pārtraukt nosēšanos, kad atskanēja datora trauksmes signāli. 1202 trauksmes signāls tika izsekots neskaidram elektriskam stāvoklim, kurā dators bija pārpludināts ar ievadi, kas varēja nozagt tik daudz vērtīga apstrādes laika. Tika lēsts, ka šī problēma varētu rasties tikai vienu reizi no simts, un tikai tad, ja satikšanās radara režīma slēdzis (lai gan tas nav būtisks nosēšanās laikā) bija noteiktā pozīcijā.
'Trauksmes signāls mums tikai ziņoja, ka dators veic darbības, slēdza darbības un restartēja tās darbības, kas bija absolūti nepieciešamas,' sacīja Batins. “Tas tikai nozīmē, ka dators veica restartēšanu, jo tam bija pārāk daudz darāmā. Katru reizi, kad es saku cilvēkiem, ka Apollo dators nekad nav kļūdījies, nekad nav pieļāvis kļūdu, viņi vienmēr izsauc [šos trauksmes signālus]. Bet dators darīja tieši to, kas tam bija jādara.
MIT Instrumentation Lab inženieri Apollo 11 Splashdown svinībās, kas notika laboratorijā. L-R: Džerožs Šmits, Toms Ficgibons, Diks Batins, Džerijs Levins, Eldons Hols, Freds Mārtins un Džeina Guda. Attēla pieklājība: Draper.
Piezīme: Diks Batins nomira 2014. gadā, bet viņa brīnišķīgo mutvārdu vēsturi var atrast Džonsona kosmosa centra vēstures arhīvā.