Vandaag, 15 november, markeert de 22e verjaardag van de eerste en enige vlucht van ons herbruikbare transportruimtevaartuig "Buran". En ook de tweede en laatste vlucht van het superzware draagraket Energia.
Vaste lezers weten dat dit evenement niet aan mijn aandacht kan voorbijgaan, aangezien ik heb deelgenomen aan het werk aan "Buran", werkend in het experimentele ontwerpbureau "Mars" in Moskou. Hoewel niet op de meest "cutting edge". Er was een banket in het hotel "Oekraïne", waar we dit evenement vierden, echt geweldig voor ons. En er waren plannen voor de volgende vlucht, ook onbemand, maar veel langer, en aan deze plannen werd gewerkt.
En toen was er een duistere tijdloosheid, en toen, in 1993, werd het programma gesloten …
Over de Buran zelf heb ik nog niet geschreven, hoewel het hoofdstuk erover het volgende is in mijn onvoltooide serie over de geschiedenis van projecten van bemande herbruikbare schepen. Hij schreef echter over de geschiedenis van zijn oprichting, en ook over de Energia-raket. En nu zal ik niet over "Buran" als zodanig schrijven, omdat het geen blogpost zou moeten zijn, maar een echt artikel, of misschien meer dan één. Maar ik zal proberen het verantwoordelijkheidsgebied van onze afdeling te laten zien.
We deden wat de USSR opleverde, waarschijnlijk de enige duidelijke prioriteit voor iedereen boven de Amerikaanse shuttle. Wij, onze afdeling, hebben het algoritmische en softwarecomplex gemaakt voor de automatische landing "Buran". Voor zover ik weet, hebben de Amerikanen zo'n regime, maar zijn nooit gebruikt. Hun shuttles werden altijd door piloten aan land gebracht.
Nu, zoals ik het begrijp, is de taak om te landen zonder de deelname van de bemanning opgelost - er landen tenslotte drones, inclusief grote. Maar naar mijn mening landen passagiersvliegtuigen nog steeds niet "automatisch". En dan, ik weet het zeker, goed uitgeruste vliegvelden kunnen goed uitgeruste vliegtuigen naar een hoogte van 15 meter brengen. De volgende is de bemanning. De taak werd verergerd door het feit dat de aerodynamische kwaliteit van "Buran" op subsonisch ongeveer de helft was van de kwaliteit van het toenmalige passagiersvliegtuig - 4, 5 versus 8-10. Dat wil zeggen, het schip was "twee keer zo dicht bij het ijzer" als een normaal geveegd passagiersvliegtuig. Wat niet verwonderlijk is als je hun vorm vergelijkt.
Het automatisch landen van een kanjer van 100 ton is een zeer moeilijke zaak. We hebben geen hardware gedaan, alleen de software voor de landingsmodus - vanaf het moment van het bereiken van (tijdens de afdaling) een hoogte van 4 km tot het stoppen op de startbaan. Ik zal proberen je heel kort te vertellen hoe dit algoritme is gemaakt.
Eerst schrijft de theoreticus het algoritme in een taal op hoog niveau en toetst het aan testgevallen. Dit algoritme, dat door één persoon is geschreven, is "verantwoordelijk" voor één relatief kleine operatie. Vervolgens wordt het gecombineerd tot een subsysteem en naar de modelbouwstandaard gesleept. In de stand "rond" het werkende, ingebouwde algoritme zijn er modellen - een model van de dynamiek van het apparaat, modellen van uitvoerende organen, sensorsystemen, enz. Ze zijn ook geschreven in een taal op hoog niveau. Zo wordt het algoritmische subsysteem getest in de "wiskundige vlucht".
Vervolgens worden de subsystemen in elkaar gezet en opnieuw gecontroleerd. En dan worden de algoritmen "vertaald" van een taal op hoog niveau naar de taal van het boordvoertuig (BCVM). Om ze te controleren, al in de hypostase van het boordprogramma, is er nog een modelleringsstandaard, die een boordcomputer bevat. En om haar heen is hetzelfde - wiskundige modellen. Ze zijn natuurlijk aangepast ten opzichte van de modellen in een puur wiskundige bank. Het model "draait" in een mainframe voor algemene doeleinden. Vergeet niet dat dit de jaren tachtig waren, personal computers waren nog maar net begonnen en hadden een zeer laag vermogen. Het was de mainframetijd, we hadden een paar van twee EC-1061's. En voor de communicatie van een boordvoertuig met een wiskundig model in een universele computer is speciale apparatuur nodig, ook als onderdeel van een stand voor diverse taken.
We noemden deze stand semi-natuurlijk - er zat immers, naast alle wiskunde, een echte boordcomputer in. Het implementeerde de werkingsmodus van de programma's aan boord, zeer dicht bij de realtime-modus. Het duurt lang om uit te leggen, maar voor de boordcomputer was het niet te onderscheiden van de "echte" realtime.
Op een dag zal ik mezelf bij elkaar rapen en schrijven hoe de semi-natuurlijke modelleringsmodus werkt - voor deze en andere gevallen. In de tussentijd wil ik alleen de samenstelling van onze afdeling uitleggen - het team dat dit allemaal heeft gedaan. Het had een complexe afdeling die zich bezighield met de sensor- en executieve systemen die bij onze programma's betrokken zijn. Er was een algoritmische afdeling - deze schreven eigenlijk ingebouwde algoritmen en werkten ze uit op een wiskundige bank. Onze afdeling hield zich bezig met a) het vertalen van programma's in de taal van de boordcomputer, b) het maken van speciale apparatuur voor een halfnatuurlijke stand (hier werkte ik) en c) programma's voor deze apparatuur.
Onze afdeling had zelfs onze eigen ontwerpers om documentatie te maken voor de fabricage van onze blokken. En er was ook een afdeling die verantwoordelijk was voor de bediening van het bovengenoemde EC-1061-paar.
Het outputproduct van de afdeling, en dus van het hele ontwerpbureau in het kader van het thema 'storm', was een programma op magneetband (jaren '80!), Dat verder werd uitgewerkt.
Verder - dit is de stand van de enterprise-ontwikkelaar van het besturingssysteem. Het is immers duidelijk dat het besturingssysteem van een vliegtuig niet alleen een boordcomputer is. Dit systeem is gemaakt door een veel grotere onderneming dan wij. Zij waren de ontwikkelaars en "eigenaren" van de boordcomputer, ze vulden het met een verscheidenheid aan programma's die het hele scala aan taken uitvoeren voor het besturen van het schip, van de voorbereiding voor de lancering tot het afsluiten van systemen na de landing. En voor ons, ons landingsalgoritme, in die boordcomputer, werd slechts een deel van de computertijd toegewezen, terwijl parallel (meer precies, ik zou zeggen quasi-parallel) andere softwaresystemen werkten. Als we het landingstraject berekenen, betekent dit immers niet dat we het apparaat niet langer hoeven te stabiliseren, allerlei soorten apparatuur aan en uit hoeven te zetten, thermische omstandigheden te handhaven, telemetrie te genereren enzovoort, enzovoort…
Laten we echter teruggaan naar het uitwerken van de landingsmodus. Na het trainen in een standaard redundante boordcomputer als onderdeel van de hele set programma's, werd deze set getransporteerd naar de stand van de enterprise-ontwikkelaar van het Buran-ruimtevaartuig. En er was een stand, een stand op ware grootte genoemd, waar een heel schip bij betrokken was. Als programma's draaiden, zwaaide hij met elevons, neuriede schijven en al dat soort dingen. En de signalen kwamen van echte versnellingsmeters en gyroscopen.
Toen zag ik genoeg van dit alles op het Breeze-M-gaspedaal, maar voorlopig was mijn rol vrij bescheiden. Ik reisde niet buiten mijn ontwerpbureau …
Dus, we passeerden de full-size stand. Denk je dat dat alles is? Nee.
Het volgende was het vlieglaboratorium. Dit is de Tu-154, waarvan het besturingssysteem zo is geconfigureerd dat het vliegtuig reageert op de besturingsacties die door de boordcomputer worden gegenereerd, alsof het geen Tu-154 is, maar een Buran. Natuurlijk is het mogelijk om snel "terug te keren" naar de normale modus. "Buransky" was alleen ingeschakeld voor de duur van het experiment.
Het hoogtepunt van de tests waren 24 vluchten van de Buran, speciaal gemaakt voor deze etappe. Het heette BTS-002, had 4 motoren van dezelfde Tu-154 en kon vanaf de startbaan zelf opstijgen. Hij ging zitten tijdens het testen, natuurlijk, met de motoren uitgeschakeld, - tenslotte, "in de staat" zit het ruimtevaartuig in de planningsmodus, er zijn geen atmosferische motoren op.
De complexiteit van dit werk, of beter gezegd, ons software-algoritmische complex, kan door het volgende worden geïllustreerd. In een van de BTS-002 vluchten. vloog "op het programma" totdat het hoofdlandingsgestel de strip raakte. Toen nam de piloot de controle over en liet de neussteun zakken. Daarna ging het programma weer aan en hield het apparaat volledig tot stilstand.
Overigens is dit best begrijpelijk. Terwijl het apparaat in de lucht is, heeft het geen beperkingen op rotatie rond alle drie de assen. En het draait, zoals verwacht, om het zwaartepunt. Hier raakte hij de strip aan met de wielen van de hoofdsteunen. Wat is er gaande? Rolrotatie is nu helemaal niet meer mogelijk. De pitchrotatie is niet langer rond het massamiddelpunt, maar rond de as die door de contactpunten van de wielen gaat, en is nog steeds vrij. En de rotatie langs de koers wordt nu op een complexe manier bepaald door de verhouding van het stuurkoppel van het roer en de wrijvingskracht van de wielen op de strip.
Hier is zo'n moeilijk regime, zo radicaal verschillend van zowel vluchten als rennen langs de strip "op drie punten". Want als het voorwiel ook op de baan valt, dan - als een grap: nergens draait er iemand …
… Ik zal eraan toevoegen dat de problemen, begrijpelijk en onbegrijpelijk, uit alle testfasen naar ons werden gebracht, geanalyseerd, geëlimineerd en opnieuw langs de hele lijn gingen, van de wiskundige stand tot de BTS in Zhukovsky.
We zullen. Iedereen weet dat de landing vlekkeloos verliep: een tijdfout van 1 seconde - na een vlucht van drie uur! - afwijking van de as van de strook 1, 5 m, binnen bereik - enkele tientallen meters. Onze jongens, degenen die in de KDP waren - dit is een dienstgebouw in de buurt van de strip - zeiden dat de gevoelens waren - woorden kunnen niet worden uitgedrukt. Toch wisten ze wat het was, hoeveel dingen daar werkten, welke miljoenen onderling gerelateerde gebeurtenissen er gebeurden in de juiste relatie om deze landing te laten plaatsvinden.
En ik zal ook zeggen: "Buran" is weg, maar de ervaring is niet verdwenen. Deze baan heeft geleid tot een prachtig team van eersteklas specialisten, meestal jong. De lading ervan was zodanig dat het team in moeilijke jaren niet uit elkaar viel, en dit maakte het net op dat moment mogelijk om een besturingssysteem voor de bovenste trap "Breeze-M" te creëren. Het was niet langer een softwaresysteem, er was al onze eigen boordcomputer en de blokken die alle machines aan boord bestuurden - motoren, squibs, gerelateerde systemen van andere ontwikkelaars, enz. En we deden het grondcomplex voor het controleren en prelaunchen van de bovenste fase.
Natuurlijk is "Breeze" door KB voor iedereen gemaakt. Maar een zeer belangrijke rol, voornamelijk bij het creëren van het softwarecomplex, werd gespeeld door de mensen van Buran - mensen die in de loop van het Buran-epos de technologie hebben gebouwd en geperfectioneerd om veel werk te doen met de deelname van honderden specialisten uit tientallen verschillende profielen. En nu heeft het ontwerpbureau, dat zijn waarde heeft bewezen, veel werk …