البته اصلی این عنوان رو روزنامه (فکر کنم) واشنگتن پست برای انفجار آریان 5 استفاده شده بود.
در اوایل جنگ خلیج در سال 1990، یک مجموعه عملیات برای مدیریت و اتمام جنگ در زمان مناسب با عنوان طوفان صحرا انجام شد. ویژگی اصلی این عملیات استفاده از تکنولوژی های پیشرفته تو سطح گسترده بود. یه قسمت از این عملیات، استفاده از سیستم دفاع موشکی پاتریوت بود.
در شب 25 ماه فوریه سال 1991، یه سیستم پاتریوت تو عربسات سعودی نتونست یه موشک اسکات رو ردیابی بکنه و موشک بعد از اصابت باعث کشته شدن 28 نظامی آمریکایی و زخمی شدن 98 نفر شد.
با بررسی که انجام شد، مشخص شد که مشکل از سیستم رادار پاتریوت بود.
سیستم دفاع موشکی پاتریوت یه سیستم زمین به هوا ساخته شرکت رایتون هست و توسط ارتش آمریکه استفاده میشد. این سیستم از اول برای مقابله با موشک های کروز و هواپیماهای ارتفاع پایین و بالای شوروی ساخته شده بود. این سیستم برای اینکه شناسایی نشه به صورت قابل جابجایی ساخته شده بود و بازه های چند ساعتی کار میکرد.
توی عملیات حفاظ صحرا، چند تا از این سکوهای پرتاپ پاتریوت توی نقاط حساس عربستان و اسرائیل کار کذاشته شده بود تا در مقابل موشک های اسکات عراق بتونه مقابله بکنه.
کنار هر سکوی پرتاب یه سیستم رادار زمینی هم وجود داره که کارش تشخیص و دنبال کردن اهداف بوده. این داده ها به قسمت کنترل مرکزی داده میشه و کنترلر تصمیم میگیره که چکار بکنه.
سیستم کنترلر مرکزی مجموعه کارهایی برای دنبال کردن اهداف و کنترل موشک ها انجام میده.
مشکل نرم افزاری
باگ سیستم تو محاسبه محل فرود اومدن موشک خودش رو نشون داد. محاسبه محل اصابت با بررسی میزان جابجایی موشک و زمانبندی بین ردگیری های متوالی رادار انجام میشه. میزان شتاب با یک عدد و صحیح و یک قسمت اعشاری ذخیره میشه و زمان هم به صورت یک عدد که نشان دهنده تعداد ثانیه های سپری شده است نشون داده میشه.
الگوریتم محاسبه مکان فرود موشک نیازمند سرعت موشک و زمان ها به صورت اعداد حقیقی هست. کامپیوتر سیستم پاتریوت به صورت رجیسترهای 24 بیتی بود. تو این سیستم زمان به صورت یک دهم ثانیه حساب میشه (deci=1/10). تو باینری 1/10 یه عدد اعشاری نامتناهی هست. برای حالت دابل عدد زیر میشه
0x3FB999999999999A = | 00111111 10111001 10011001 10011001 10011001 10011001 10011001 10011010 |
این عدد بالا برای حالت دابل هست، برای 24 بیت تعداد این ارقام اعشار کمتر هم میشه. این میزان خطا با ادامه کار سیستم تو مدت زمان جمع شده و بیشتر میشه. این خطا تاثیر مستقیم تو نتیجه نهایی داره.
زمان طراحی سیستم موشک پاتریوت برای مقابله با موشک های کروز شوروی سابق بود که سرعت اونا 2 ماخ بود و این سیستم روزی چند ساعت فعال بود. تو جریان جنگ خلیج موشک های اسکات سرعت 5 ماخ داشتن و نیروی ارتش آمریکا، پاتریوت رو با تغییراتی برای این سرعت آماد کرده بودن.
کشف مشکل
اولین بار نیروهای اسراءیلی مشکل رو پیدا کرن و گزارش دادن. بر اساس گزارش اونها سیستم پاتریوت بعد از 8 ساعت کار، تقریبا 20 درصد خطا تو محاسبه پیدا میکنه (که البته تدریجی اضافه میشه).
نیروهای ارتش آمریکا اعلام کردن چون این سیستم تو بازه های زمانی کوتاه روشن میشه و جابجا میشه، این قضیه نمیتونه مشکل خاصی ایجاد بکنه. تو هر ریست سیستم هم چون زمانسنج صفر میشه، مشکل برطرف میشه. به خاطر همین مشکل رو برطرف نکردن.
بروز مشکل
تو 25 فوریه 1991 سیستم پاتریوت موشک اسکاتی که عراق شلیک کرده بود رو ردیابی کرد اما محاسبه کرد که به خارج از نواحی حساس برخورد میکنه و به همین خاطر برای مقابله موشکی رو شلیک نکرد. اما موشک اسکات به داخل شهر ظهران برخورد کرد.
سایت اصلی تو زمان حادثه 100 ساعت بود که کار میکرد و میزان خطای زمانی محاسبه 0.34 ثانیه شده بود. این اختلاف زمانی باعث میشد تا محاسبه سرعت موشک با اشتباه 1.7 کیلومتر بر ثانیه انجام بشه. همین اشتباه محاسباتی باعث میشه نقطه برخورد هم اشتباه محاسبه بشه.