Історія комп’ютерного керівництва «Аполлон», частина 2

Pin
Send
Share
Send

Наприкінці 1950-х, перед тим, як НАСА мала наміри їхати на Місяць - або потрібен комп'ютер, щоб дістатися туди - лабораторія приладів MIT спроектувала та побудувала невеликий дослідний зонд, який сподівався, що одного разу полетить на Марс (читайте тло частково 1 цієї історії тут). Цей маленький зонд використовував невеликий рудиментарний комп'ютер загального призначення для навігації, заснований на інерційних системах для балістичних ракет, підводних човнів та літаків, які Лабораторія проектувала і будувала для військових після Другої світової війни.

Люди в лабораторії приладів думали, що їх концепція зонду Марса - і, зокрема, система навігації - буде цікавою для тих, хто бере участь у нових заходах планетарної розвідки, таких як ВВС США та Лабораторія реактивного руху. Але коли лабораторія MIT підійшла до них, жодна особа не зацікавилася. ВВС виходили з космічного бізнесу, і JPL планував керувати власними планетарними космічними кораблями, роблячи навігацію з великої тарілки зв'язку Goldstone в пустелі Мохаве. 26-метровий радіолокаційний посуд був сконструйований для відстеження ранніх робототехнічних зондів Pioneer.

І ВВС, і JPL запропонували Лабораторії поговорити з людьми новоствореної організації NASA.

Члени лабораторії відвідали Х'ю Дрідена, заступника адміністратора НАСА у Вашингтоні, округ Колумбія, та Роберта Чілтона, який керував відділенням динаміки польотів НАСА в дослідницькому центрі Ленглі. Обидва чоловіки подумали, що лабораторія виконала дуже точну роботу над дизайном, особливо на комп'ютері з наведенням. NASA вирішило дати лабораторії 50 000 доларів на продовження вивчення концепції.

Пізніше була встановлена ​​зустріч між лідером лабораторії доктором Чарльзом Старком Дрейпером та іншими керівниками NASA, щоб обговорити різні плани дальнього радіусу, які NASA мав на увазі, і про те, як проекти лабораторії можуть вписуватися в космічний корабель, пілотований людьми. Після кількох зустрічей було встановлено, що система повинна складатися з цифрового комп'ютера загального призначення з управліннями та дисплеями для космонавтів, космічного секстанта, інерційного блоку наведення з гіроскопами та акселерометрами та всієї підтримуючої електроніки. У всіх цих дискусіях всі погодилися, що космонавт повинен грати роль у керуванні космічним кораблем, а не просто бути разом у їзді. І всім людям НАСА особливо сподобалася можливість автономної навігації, оскільки було побоювання, що Радянський Союз може перешкоджати комунікаціям між американським космічним кораблем та землею, загрожуючи місії та життю космонавтів.

Але тоді народився Проект Аполлон. Президент Джон Ф. Кеннеді висловив виклик NASA у квітні 1961 року висадитися на Місяць і безпечно повернутися на Землю - все до кінця десятиліття. Лише одинадцять тижнів пізніше, у серпні 1961 року, з Інструментальною лабораторією MIT Instruments було підписано перший основний контракт на Аполлон для побудови системи наведення та навігації.

"У нас був контракт", - сказав Дік Баттін, інженер TheLab, який був членом команди дизайнерів Mars Probe, "але ... ми не мали уявлення, як ми будемо робити цю роботу, окрім як спробувати її модель після нашого Марса зонд ».

Доктор Дрейпер вказує на те, що деякі технічні характеристики, перелічені в 11-сторінковій лабораторії, були витягнуті з повітря. За відсутності кращих чисел - і знаючи, що потрібно буде поміститися всередині космічного корабля - він сказав, що він буде важити 100 фунтів, мати розмір 1 кубічний фут і використовувати менше 100 Вт енергії.

Але в той час було відомо небагато специфікацій про будь-який інший компонент Аполлона або космічний корабель, оскільки жодних інших контрактів не було допущено, і НАСА ще не визначилася з його методом (пряме сходження, рандеву Земної орбіти або рандеву Місячної орбіти) і типи космічних кораблів, щоб дістатися до місяця.

"Ми сказали:" Ми не знаємо, що це за робота, але це той комп'ютер, який ми маємо, і ми будемо працювати над ним, спробуємо розширити його, зробимо все, що можемо ", - сказав Беттін . "Але це був єдиний комп'ютер у країні, який міг би зробити цю роботу ... якою б не була ця робота".

Баттін нагадав, як спочатку варіантом польоту на Місяць було перебування на орбіті Землі, де різні частини космічного корабля будуть запускатись із Землі та поєднуватись на орбіті Землі та летіти на Місяць і висаджуватися там у цілому. Але врешті-решт, концепція рандеву на місячній орбіті виграла - там, де земля відділиться від командного модуля і приземлиться на Місяць.

"Отже, коли це виникло, тоді питання було ... чи потрібна нам цілком нова і інша система наведення для місячного модуля, ніж у нас для командного модуля?" - сказав Баттін. «Що ми будемо робити з цим? Ми переконали NASA використовувати однакову [комп'ютерну] систему в обох космічних апаратах. У них різні місії, але ми могли б поставити дублюючу систему в місячний модуль. Отже, це ми зробили. "

Рання концептуальна робота над комп'ютером з орієнтації на Аполлон (AGC) швидко протікала, і Беттін та його товариші Мільт Трагесер, Хал Ланінг, Девід Хог та Елдон Холл розробили загальну конфігурацію для наведення, навігації та управління.

Керівництво означало спрямування руху судна, тоді як навігація посилалася на визначення поточного положення якомога точніше стосовно майбутнього пункту призначення. Контроль стосується керування рухом транспортного засобу, а в космосі - напрями, пов'язані з його положенням (позіхання, нахил і кочення) або швидкістю (швидкістю та напрямком). Експертиза MIT зосереджена на керівництві та навігації, тоді як інженери NASA - особливо ті, хто мав досвід роботи над Project Mercury - наголошували на керівництві та контролі. Отже, обидві організації спільно працювали над створенням маневрів, необхідних на основі даних гіроскопів та акселерометрів, а також про те, як зробити маневри частиною комп’ютера та програмного забезпечення.

Для лабораторії приладів MIT, одним із великих проблем, які стосуються керівного комп'ютера Apollo, була надійність. Комп'ютер був би мізком космічного корабля, але що робити, якщо він вийшов з ладу? Оскільки надмірність була відомим рішенням основної проблеми надійності, люди в The Lab запропонували включити на борт два комп'ютери, причому один - резервне копіювання. Але в Північноамериканській авіації - компанії, що будує модулі командування та обслуговування "Аполлон" - виникали свої проблеми з дотриманням вагових вимог. Північна Америка швидко перекрила вимоги до розмірів та простору двох комп’ютерів, і NASA погодилося.

Інша ідея для підвищення надійності включала наявність бортових плат та інших модулів на борту космічного корабля, щоб космонавти моглидомогтися "технічного обслуговування в польоті", замінюючи дефектні деталі під час перебування в космосі. Але ідея астронавта витягувати купе або дошку підлоги, полюючи на несправного модуль, і вставляти запасну плату під час наближення до Місяця здавалося нерозумним - хоча ця опція досить довго розглядалася.

"Ми сказали:" Ми просто зробимо цей комп'ютер надійним ", - нагадав Баттін. "Сьогодні вас викинуть з програми, якщо ви сказали, що збираєтеся побудувати її, щоб вона не вийшла з ладу. Але це ми зробили ».

До осені 1964 року Лабораторія почала розробляти модернізовану версію AGC, головним чином, щоб скористатися вдосконаленою технологією. Одним з найбільш складних аспектів місії "Аполлон" була кількість обчислень у режимі реального часу, необхідних для навігації космічного корабля до Місяця та назад. Коли інженери в Лабораторії вперше розпочали роботу над проектом, комп'ютери все ще покладалися на аналогові технології. Аналогові комп’ютери були недостатньо швидкими або надійними для місії на Місяць.

Інтегральні схеми, що були лише винайдені в 1959 році, тепер були більш спроможними, надійними та меншими; вони могли замінити попередні конструкції за допомогою основних транзисторних схем, займаючи приблизно 40 відсотків менше місця. Як тільки технологія просунулася після того, як MIT виграв контракт AGC в 1961 році, вони впевнені, що час, поки перший рейс Аполлона не дозволить досягти більшого прогресу в надійності та, сподіваємось, зниження вартості. З цим рішенням AGC став одним з перших комп'ютерів, які використовували інтегральні мікросхеми, і незабаром понад дві третини загального виходу мікросхем у США були використані для побудови прототипів комп'ютерів Apollo.

Заголовок зображення свинцевого зображення: рання інтегральна схема, відома як інтегральна схема Fairchild 4500a. Ввічливість до зображення: Draper.

Незважаючи на те, що багато елементів дизайну для комп'ютерного обладнання почали ставати на свої місця, нагальна проблема до середини 1960-х років стала очевидною: пам'ять. Оригінальна конструкція, заснована на зонді Mars, мала всього 4 кілобайти слова фіксованої пам’яті та 256 слів, що стираються. Оскільки NASA додало більше аспектів до програми Apollo, вимоги до пам'яті постійно зростали - до 10 К, потім 12, 16, 24 і нарешті до 36 кілобайт фіксованої пам’яті та 2 К споживаної.

Система, яку розробляла Лабораторія, отримала назву основної мотузкової пам’яті, при цьому програмне забезпечення ретельно створювалося з дроту із сплаву нікелю, витканого крізь крихітні магнітні «пончики», щоб створити пам'ять, що не може бути стертою. Мовою комп’ютерних і нулів, якщо це був один, він пробіг пончик; якщо це був нуль, то навколо нього пробіг дріт. Для однієї складової пам’яті знадобилися пучки з півмилі дроту, просоченого через 512 магнітних ядер. Один модуль міг би зберігати понад 65 000 частин інформації.

Баттін назвав процес побудови ядра-ропемерії методом LOL.

"Маленькі старі дами", - сказав він. "Жінки на фабриці Raytheon буквально вбудували б програмне забезпечення в цю основну пам'ять".

Хоча жінки в основному виконували ткацтво, вони не були обов'язково старими. У Raytheon працювало багато колишніх текстильних робітників, досвідчених у ткацтві, яким потрібно було слідувати детальним інструкціям для плетіння дротів.

Коли спочатку були споруджені спогади про стрижневий мотузок, процес був досить трудомістким: дві жінки сиділи навпроти однієї, вони переплели вручну потік проводів через крихітні магнітні сердечники, штовхаючи щуп з приєднаним з одного боку дротом до іншого. До 1965 року знову було впроваджено механічніший спосіб плетіння дротів, заснований на текстильних машинах, що використовуються в ткацькій промисловості Нової Англії. Але все-таки процес був надзвичайно повільним, і на одну програму може зайняти кілька тижнів, а то й місяців, щоб витратити більше часу на тестування. Будь-які помилки в плетінні означали, що його доведеться переробити. Комп'ютер Command Module містив шість наборів основних мотузкових модулів, тоді як комп'ютер Lunar Module містив сім.

Всього в комп'ютері було приблизно 30 000 деталей. Кожен компонент буде випробовуватися електричним тестом та напруженим тестом. Будь-який збій вимагає відмови від компонента.

"Навіть незважаючи на те, що пам'ять була надійною", - сказав Баттін, - все, що NASA не сподобалося, це те, що вам дуже рано потрібно було вирішити, якою буде комп'ютерна програма. Вони запитали нас: "Що, якби ми змінили останню хвилину?", І ми сказали, що ми не можемо мати змін в останню хвилину, і будь-коли, коли ви хочете змінити пам'ять, означає мінімум шість тижнів. Коли NASAsaid сказав, що це було нестерпно, ми сказали їм: "Так, це комп'ютер, і немає іншого такого комп'ютера, яким ви могли б користуватися."

Під час проектування та складання всього обладнання поставили проблеми, коли робота над АГК проходила до 1965 року і до 1966 року, розмахував і складність іншого аспекту: програмування програмного забезпечення. Це стало основною визначальною проблемою комп'ютера, дотримуючись як терміни, так і технічні характеристики.

Все програмування в основному проводилося на рівні та нульовому рівні, програмуванні мови монтажу. Розробляючи програмне забезпечення для виконання складних завдань, інженерам-програмістам потрібно було придумати геніальний спосіб, щоб відповідати коду в обмеженнях пам'яті. І звичайно, жодного з цих гадерів не робилося раніше, принаймні, не до такого рівня масштабів і складності. У той час, коли АГК, можливо, доведеться узгоджувати відразу кілька завдань: знімати з РЛС, обчислювати траєкторію, виконувати виправлення помилок на гіроскопах, визначати, які дроселі слід запускати, а також передавати дані наземні станції НАСА та приймати нові дані від космонавтів .

Хал Ланінг розробив те, що він назвав виконавчою програмою, яка присвоювала завдання різним пріоритетам і дозволяла виконувати завдання з першочерговим завданням перед бедоні. Комп'ютер міг виділяти пам'ять серед різних завдань і відслідковувати, де завдання було перервано.

Команда програмного забезпечення лабораторії почала навмисне розробляти програмне забезпечення з можливістю планування пріоритету, яке могло б визначити найважливіші команди та дозволяти їм безперебійно працювати з менш важливих команд.

Однак до осені 1965 р. Для NASA стало очевидним, що комп'ютер Apollo зазнав серйозних проблем, оскільки розробка програм значно відставала від графіку. Той факт, що відносно невідома кількість, що називається "програмне забезпечення", може затримати всю програму "Аполлон", NASA не сприйняло добре.

Далі: Частина 3, з'ясовуючи все це.

Ви можете прочитати більше історій про Аполлона, включаючи команду лабораторії MIT Instrumentation Lab, у новій книзі Нансі Аткінсон "Вісім років до Місяця: історія місій Аполлона".

Дивіться більше зображень з лабораторії приладів MIT, тепер відомих як Draper, на їх спеціальному веб-сайті "Hack The Moon" до 50-річчя Аполлона.

Pin
Send
Share
Send