1996-yil 4-iyunda Ariane 5 startdan 40 soniya o‘tib portlab ketdi. To‘rtta sun’iy yo‘ldosh va 370 million dollarlik raketa qoldiqlarga aylandi. Sabab Ariane 5 ga avvalgi raketadan meros bo‘lib o‘tgan kodda yashiringan edi.

   Manba:   «Mail.ru Hi-Tech».  

Anton Sokolov

Hi-Tech Mail muallifi

Ракета Ariane 5
Manba: wikimedia/Jamoat mulki

Ariane 5 — yaratilishiga o‘n yil ketgan og‘ir klassdagi Yevropa bir martalik raketa-tashuvchisi. Yevropa kosmik agentligi raketa Fransuz Gvianasidagi Gviana kosmik markazining start maydonchasiga joylashguniga qadar unga taxminan 7 milliard dollar sarmoya kiritdi. Bortda — Yer magnetosferasini o‘rganishi kerak bo‘lgan Cluster loyihasining to‘rtta sun’iy yo‘ldoshi. Birinchi uchirish sanasi: 1996-yil 4-iyun.

Parvozning qirq soniyasi

Raketa shtat rejimida ko‘tarildi. Ammo dvigatellar ishga tushganidan atigi 37 soniya o‘tgach, bortdagi ikkala navigatsiya tizimi ham ishdan chiqdi. Ular SRI (inersial navigatsiya tizimi) deb atalardi va asosiy hamda zaxira sifatida parallel ravishda ishlardi. Ikkalasi ham 72 millisoniya interval bilan ishdan chiqdi.

Инерциальная навигационная система БР S3 (Франция).
BR S3 inersial navigatsiya tizimi (Fransiya).Manba: wikimedia/Mualliflik: Pline/CC BY-SA 3.0

Bort kompyuteri xato kodini navigatsiya ma’lumotlari deb qabul qildi. Ushbu «ma’lumotlar»ga ko‘ra, raketa kursdan keskin og‘ishayotgani kelib chiqardi. Kompyuter soplolarga maksimal burchakka og‘ishni buyurdi. Ariane 5 keskin burildi, aerodinamik yuklamalar konstruksiyaning mustahkamlik chegarasidan oshib ketdi va tezlatgichlar aerodinamik yuklama ostida markaziy bosqichdan ajralgani sababli avariya holatida portlatish tizimi ishlab ketdi. Parvoz 40 soniya davom etdi.

32 767 soni

SRI dasturiy ta’minoti Ada tilida yozilgan edi va avvalgi raketadan — Ariane 4 dan meros bo‘lib o‘tgandi. Modullardan biri raketaning gorizontal tezligini hisoblab chiqar edi va natijani suzuvchi nuqtali 64-bitli o‘zgaruvchiga yozar edi. Keyin bu qiymat tizimning boshqa qismiga uzatish uchun 16-bitli butun songa o‘tkazilar edi.

Ishorali 16-bitli butun son faqat 32 767 gacha bo‘lgan sonlarni o‘z ichiga oladi. Ariane 4 tezlik hech qachon bu chegaradan oshmasligi uchun yetarlicha sekin uchardi. Ariane 5 esa ancha tajovuzkorroq tezlashardi. Gorizontal tezlik qiymati 32 767 dan oshib ketdi — va o‘tkazish (konvertatsiya) uzilish bilan yakunlandi.

Ada tilida bunday uzilish istisno (exception) keltirib chiqaradi. Agar istisno qayta ishlanmasa, dastur to‘xtaydi. SRI bilan aynan shunday sodir bo‘ldi: tekislash moduli xato tufayli to‘xtab qoldi va chiqish kanaliga navigatsiya ma’lumotlari o‘rniga xato kodini uzatdi.

центр управления
Manba: Magnific

Nima uchun himoya olib tashlandi

O‘sha kod blokida nazariy jihatdan to‘lib ketishi mumkin bo‘lgan yettita o‘zgaruvchi bor edi. Muhandislar har birini tekshirib ko‘rishdi va ulardan to‘rttasini himoya qilishdi — istisnolarni qayta ishlashni qo‘shishdi. Uchtasini, jumladan gorizontal tezlik o‘zgaruvchisini himoyasiz qoldirishdi.

Mantiq shunday edi: Ariane 4 da bu qiymat hech qachon xavfsiz chegaralardan chiqib ketmagandi. Tergov komissiyasining rasmiy hisobotida qayd etilgan: muhandislar to‘lib ketishni «fizik jihatdan imkonsiz» deb hisoblashgan. Bundan tashqari, SRI bort kompyuteri 80% lirik yuklama cheklovi bilan ishlardi — ortiqcha tekshiruvlar resurs talab qilardi, shuning uchun himoyaning bir qismi qasddan olib tashlangan.

Hech kim boshqa parvoz profilida qiymatlar qanday o‘zgarishini qayta hisoblab chiqmadi.

Hatto zahiradagi blog ham halokatdan qutqarmadi

Bortda ikkita mustaqil SRI bloki bor edi: biri ishchi, ikkinchisi issiq zaxira. Tizim chidamliligining standart sxemasi: biri ishdan chiqsa — ikkinchisi darhol boshqaruvni o‘z qo‘liga oladi. Ammo ikkala blok ham bir xil dasturiy ta’minotda ishlardi.

Zaxira SRI birinchi bo‘lib ishdan chiqdi — asosiy blokdan 72 millisoniya oldin. Asosiy blok undan xabar kodi oldi va uni navigatsiya ma’lumotlari sifatida ishlatishga urindi. Keyin xuddi shu sababga ko‘ra o‘zi ham ishdan chiqdi. Aynan bir xil kodda «apparat»ni dublyaj qilish dasturiy bagdan emas: ikkala tugun ham bir xil kirish qiymatida ishdan chiqadi.

Defisning bunga nima aloqasi bor

Ariane 5 tarixini ko‘pincha boshqa falokat bilan adashtirishadi — 1962-yilda kursdan og‘ib ketgan va startdan bir necha daqiqa o‘tib yo‘q qilingan Amerikaning Mariner 1 zondi bilan. U yerda sabab sifatida yo‘naltirish tizimi kodida tushirib qoldirilgan defis ko‘rsatilgan edi. Aynan o‘sha hodisa «tarixdagi eng qimmat defis» reputatsiyasini oldi. Zondning o‘zi narxi — taxminan $18,5 mln, raketa-tashuvchini hisobga olganda umumiy zarar esa taxminan $80 mln ni tashkil etdi.

Ariane 5 halokati defislarga aloqador emas edi, lekin aynan u to‘g‘ridan-to‘g‘ri yo‘qotishlar bo‘yicha o‘n yillikning eng qimmat dasturiy xatosiga aylandi: to‘rtta Cluster sun’iy yo‘ldoshi va raketa — baholash metodikasiga qarab 370 dan 500 mln dollargacha.

Tayyor kodning narxi

Matematik Jak-Lui Lions boshchiligidagi komissiyaning 1996-yilda chop etilgan texnik hisoboti xulosani aniq shakllantirdi: falokat spetsifikatsiya va loyihalashdagi kamchiliklar tufayli yuz berdi — kod Ariane 4 dan moslik yetarlicha tahlil qilinmasdan ko‘chirilgan.

Tayyor koddan takroriy foydalanish vaqt va pulni tejaydi — yangi tizim eski tizim bilan bir xil sharoitlarda ishlayotganiga qadar. Ariane 5 boshqa trayektoriya bo‘yicha uchdi va tezroq tezlashdi. Ushbu farqlarning hech biri o‘zgaruvchilarning chegaraviy qiymatlarida tekshirilmagan edi.

Tergovdan so‘ng ESA dasturiy ta’minotni verifikatsiya qilish talablarini o‘zgartirdi: har bir meros qolgan modul endi yangi tizim sharoitida takroriy testdan o‘tishi shart. Ariane 5 yakunda tarixdagi eng ishonchli raketa-tashuvchilardan biriga aylandi — 2023-yilda ekspluatatsiyadan chiqarilgunga qadar u 132 767 soni va yarim milliard dollarlik raketa: 1990-yillarning eng qimmat kompyuter xatosi tarixi

Avvalroq biz og‘irligi 269 bayt bo‘lgan bitta stiker Telegram’ni qanday qilib ishdan chiqarishi mumkinligi haqida so‘zlab bergan edik — koddagi bitta ishlanmagan ssenariy butun tizimni to‘xtatib qo‘yishiga yana bir misol.

Kosmos

От qwert.uz