Satelliten im Weltall, Unglaubliche Ansicht!
20.09.2010 um 16:18Ich kopier es noch mal für dich:
Gesteuert wird der Orbiter von 5 Computern die eine hohe Zuverlässigkeit durch Überzähligkeit erreichen. Dank der Computer konnte auch auf eine aktive Landung (mit einem Düsen Triebwerk) verzichtet werden, was der Nutzlast zugute kommt. Vier der Computer stammen von IBM, der fünfte von Honeywell. Sie synchronisieren sich und tauschen Rechenergebnisse aus. Gibt es eine Abweichung so wird dies der Besatzung mitgeteilt die dann den fehlerhaften Computer abschalten kann. Ursprünglich waren 5 bauidentische Rechner entworfen worden um ein "Zwei aus Fünf" System aufzubauen. Das bedeutet, das maximal zwei der fünf Rechner ausfallen dürften. In Zeiten in denen die Hardware größere Ausfallwahrscheinlichkeiten als heute aufweist waren solche Mehrfachredudanzen ein Möglichkeiten Hardwaredefektem zu begegnen. Als man jedoch an die Entwicklung der Shuttle Software ging und feststellte dass sie im Vergleich zu bisheriger Software enorm komplex werden würde betrachtete man auch Softwarefehler genauer. Softwarefehler würden alle Rechner tangieren und zwar könnte die Besatzung dann diese deaktivieren, jedoch ohne Computer nicht mehr den Orbiter steuern. Man entschied sich daher dafür einen der fünf Computer durch ein anderes Fabrikat auszutauschen auf dem nur die Software läuft die man braucht um in einen Orbit zu kommen oder von einem Orbit zu landen. Dadurch war die "Zwei aus Fünf" Redundanz jedoch nicht mehr gegeben und die vier anderen Rechner sind nicht sicherer als drei identische.
Die Computer basieren auf dem kommerziellen System IBM 360. Der 32 Bit Prozessor AP-101 wurde auch in der B-52 und B-1B eingesetzt. Jeder Prozessor verfügt über einen I/O Prozessor der für die ein/Ausgabe zuständig ist.
Die Geschwindigkeit der ersten Generation erreichte 480.000 Instruktionen/sec, wobei der Computer als erster Rechner in der Raumfahrt auch Flieskommazahlen in Hardware berechnen konnte. Instruktionen konnten in einem 2048 Bit großen Microcode Speicher definiert werden. Die Space Shuttle Computer verwendeten 154 Instruktionen von denen aber 6 nicht oder ineffizient definiert waren, so dass man diese nachbessern musste.
Der AP101 konnte linear 64 KWorte Speicher adressieren. Durch Ergänzen der Adresse mit 4 bits vom Programmzähler konnte man den Speicher ohne Softwareänderungen und Architekturveränderungen jedoch auf 256 KWorte erweitern. Adressiert wurde dann immer ein 64 K Block innerhalb dieses Gesamtspeichers. Ursprünglich meinte man mit den 64 KWorten Halbworten auszukommen (40 K Halbworte für die CPU und 24 K Halbworte für den I/O Prozessor) entsprechend 128 KByte Speicher). Doch die Zunahme der Codelänge der Software führte zur Einführung von Wortmodulen anstatt Halbwort Modulen für die CPU (208 KByte Speicher). Doch auch dieses reichte nicht und so ersetzte man die Module durch "Double density" Modulen mit doppelt so viel Speicher. Die ersten Rechner hatten jeweils 80 KWorte à 32 Bit Speicher +24 KWorte à 32 Bit für den I/O Prozessor. Zusammen also 416 KByte Speicher. Der Speicher bestand noch aus Ringkernspeichern mit einer Zugriffszeit von 400 ns. Jedes Modul organisierte den Speicher in 16 Bit Halbworten mit 2 Bits um Speicherfehler zu erkennen und zu beseitigen.
In Speichergröße und Geschwindigkeit war der AP-101 mit einem Minicomputer dieser Zeit vergleichbar, also durchaus ein leistungsfähiger Rechner.
Ab Anfang der 90 er Jahre wurden die ersten Rechner durch die zweite Generation ersetzt. Der AP-101F wurde durch den AP-101S ersetzt. Der AP101S verwendet nun Halbleiterspeicher und nutzt den vollen Adressraum von 256 KWorten aus. Auch die Geschwindigkeit konnte verdoppelt werden auf 1.2 Millionen Instruktionen/sec. Anstatt zwei Boxen pro Computer kam man nun mit einer aus, wodurch sowohl die Abmessungen wie auch das Gewicht auf die Hälfte sanken (49.5 x 19.4 x 23.4 cm). Die MTBF (mittlere Zeit bis zum Auftreten eines Fehlers lag mit 6000 h ebenfalls höher als die 5200 h der ersten Generation. Der erste Einsatz der neuen Computer war der Flug STS-49 im Mai 1992.
Ursprünglich war gedacht wie bei den Apollo Rechnern die gesamte Software in den Speichern zu halten. Doch bald wurde sie zu komplex und zu groß. Man addierte dann zwei Bandlaufwerke mit 134 MBit Kapazität zum System. Jedes konnte 8 Millionen 16 Bit Worte speichern. Sie wurden in 512 Wort Blöcken gelesen und geschrieben. Die gesamte Space Shuttle Software war anfangs 700 KWorte groß.
Altes CockpitEin und Ausgabeeinheiten für die Besatzung waren kleine Röhrenmonitore die 5 x 7 Zoll groß waren (Bildschirmdiagonale 8.6 Zoll) und 26 Zeilen à 51 Zeichen darstellten. 4 dieser Monitore gab es: 3 vorne im Cockpit, einen hinten beim Missionsspezialisten. Es gab 3 Tastaturen zur Eingabe beim Piloten, Copiloten und Missionsspezialisten. Gesteuert wurden sie von einem 16 Bit Display Controller mit 8 KWorten RAM.
Im Jahre 1998 wurden auch die 4 schweren Kathodenstrahlröhren der Displays durch 9 moderne multifunktionale LCD Displays, wie sie in Verkehrsflugzeugen üblich sind ersetzt. Diese sind intelligent und benötigen keinen Bordcomputer zur Datenaufbereitung und wiegen obwohl es mehr sind deutlich weniger als die bisherigen Kathodenstrahlröhren. Jedes Display kann die Information jedes Bordcomputers darstellen.
Neu war auch die Einführung eines Bussystems. Heute selbstverständlich war dies als man den Shuttle entwarf noch eine Neuerung. Vorherige Rechner hatten direkte Punkt zu Punkt Verbindungen. Für jedes Signal brauchte man eine Leitung. Alle Hauptcomputer und Sensoren hängen an einem Bussystem. Alleine dadurch soll eine Tonne an Kabelverbindungen eingespart worden sein.
Eingesetzt wird ein Echtzeitbetriebsystem mit Prioritätssteuerung. Es gab zwei Zyklusdauern 40 ms für Steuerungsprozessoren und 960 ms für nicht kritische Prozesse wie z.B. die Navigation. Man entschied sich für die Prioritätssteuerung die es erlaubt dass wichtige Prozesse weniger wichtige unterbrechen, weil man dadurch bei Überlastung zwar eine Abnahme der Leistung hat, aber keinen Systemausfall wie er bei einem einfachen Echtzeitbetriebsystem mit festen Zeitscheiben vorkommt.
An den Triebwerken sitzen eigene Triebwerkscontroller, deren einzige Aufgabe es ist die Triebwerke zu steuern und die Messwerte laufend auf Abweichungen zu untersuchen. Sie schalten bei einem sich nähernden Ausfall das Triebwerk automatisch ab. Dies kam einmal bei der Mission STS-51F vor. Auch sie wurden 1985 durch Motorola MC 68000 Prozessoren ersetzt. Ein weiteres Upgrade war vor dem Verlust der Columbia geplant. Die hohe Leistung der Triebwerke war nur durch die Triebwerkskontroller möglich. Sie fuhren die Triebwerke nahe an die Zerstörungsgrenze und reduzierten so Sicherheitsmargen. Sie sitzen direkt an den Triebwerken und sind anders als die Hauptcomputer hohen Belastungen (Schall, Vibrationen, Temperaturen) ausgesetzt.
Die Landung kann vom Computer vollständig autonom erfolgen. Die Besatzung kann aber in der letzten Phase auch den Shuttle wie ein Flugzeug (allerdings mit miserablen Flugeigenschaften) steuern. Im Normalfall fliegt der Pilot nur während der letzten Minute des Abstiegs. Ohne Computer ist das Space Shuttle weder beim Start noch bei der Landung steuerbar. Der Space Shuttle ist ein inhärent instabiles Flugzeug. Lediglich in der letzten Minute der Landung ist die Atmosphäre dicht genug, damit die aerodynamischen Kräfte einen stabilen Gleitflug erlauben. Doch auch dann verhindern die Computer, dass die Piloten die Fähren in einen instabilen Zustand bringen. Es gibt keine direkte Steuerung der Hydraulik und dem Steuerknüppel (Fly by Wire).
Die Software wurde in HAL geschrieben, einer Sprache ähnlich FORTRAN aber speziell auf die Bedürfnisse von Avioniksystemen zugeschnitten. sie war nur etwa 10 % langsamer als Assembler. Allerdings dauerte die Entwicklung weitaus länger als man dachte, die Software wurde komplexer und größer als gedacht und es gab mehr als 200 Änderungen. Schließlich kostete die gesamte Softwareentwicklung 200 Millionen USD, das zehnfache des geplanten Betrages. Die Flugsoftware des Shuttles umfasst insgesamt 500.000 Zeilen. Auch nach den Testflügen wurde an ihr weiter gearbeitet: Von 1982 bis 1989 sank die Fehlerzahl von 11 Fehlern pro 1000 Zeilen auf 1 Fehler pro 1000 Zeilen sank. Die Kosten dafür waren enorm: Die gesamte Software kostete bis 1989 enorme 500 Millionen USD, also 1000 Dollar pro Codezeile. Entwickelt wurde sie von IBM.
Die Funkverbindung zur Erde geschieht über eine Sprachverbindung mit 64 KBit/sec und einer Datenverbindung (vornehmlich für Nutzlastdaten) mit 192 KBit/sec. Telemetrie wird mit 128 KBit gesendet. Diese Bodenfunkverbindungen waren für die ersten Flugtests oder ohne Verbindung zum TDRS System vorgesehen. Ist keine direkte Funkverbindung möglich so werden die Daten zwischengespeichert und beim nächsten Kontakt mit 1 MBit/s übertragen.
Nicht nur für das Space Shuttle, aber wesentlich für dieses war ein Netz aus Übertragungssatelliten (TDRS). Schon der erste operationelle Flug hatte das Ziel den ersten dieser Satelliten zu starten, als der zweite bei der Explosion der Challenger verloren ging, wurde der nächste mit dem ersten Start nach Wiederaufnahme der flüge gestartet. Daran erkennt man die Bedeutung dieser Satelliten für das Space Shuttle Programm. 2 Satelliten erlauben eine Funkverbindung über 85 % der Zeit, 3 Satelliten über 95 % der Zeit. Die Datenrate beträgt 52.5 MBit/s also 50 mal mehr als direkt zum Boden.
Alleine schon die Fehlerquote von 1 Fehler / 1000 Zeilen macht derartige Riesenspeicher unnötig.
Gesteuert wird der Orbiter von 5 Computern die eine hohe Zuverlässigkeit durch Überzähligkeit erreichen. Dank der Computer konnte auch auf eine aktive Landung (mit einem Düsen Triebwerk) verzichtet werden, was der Nutzlast zugute kommt. Vier der Computer stammen von IBM, der fünfte von Honeywell. Sie synchronisieren sich und tauschen Rechenergebnisse aus. Gibt es eine Abweichung so wird dies der Besatzung mitgeteilt die dann den fehlerhaften Computer abschalten kann. Ursprünglich waren 5 bauidentische Rechner entworfen worden um ein "Zwei aus Fünf" System aufzubauen. Das bedeutet, das maximal zwei der fünf Rechner ausfallen dürften. In Zeiten in denen die Hardware größere Ausfallwahrscheinlichkeiten als heute aufweist waren solche Mehrfachredudanzen ein Möglichkeiten Hardwaredefektem zu begegnen. Als man jedoch an die Entwicklung der Shuttle Software ging und feststellte dass sie im Vergleich zu bisheriger Software enorm komplex werden würde betrachtete man auch Softwarefehler genauer. Softwarefehler würden alle Rechner tangieren und zwar könnte die Besatzung dann diese deaktivieren, jedoch ohne Computer nicht mehr den Orbiter steuern. Man entschied sich daher dafür einen der fünf Computer durch ein anderes Fabrikat auszutauschen auf dem nur die Software läuft die man braucht um in einen Orbit zu kommen oder von einem Orbit zu landen. Dadurch war die "Zwei aus Fünf" Redundanz jedoch nicht mehr gegeben und die vier anderen Rechner sind nicht sicherer als drei identische.
Die Computer basieren auf dem kommerziellen System IBM 360. Der 32 Bit Prozessor AP-101 wurde auch in der B-52 und B-1B eingesetzt. Jeder Prozessor verfügt über einen I/O Prozessor der für die ein/Ausgabe zuständig ist.
Die Geschwindigkeit der ersten Generation erreichte 480.000 Instruktionen/sec, wobei der Computer als erster Rechner in der Raumfahrt auch Flieskommazahlen in Hardware berechnen konnte. Instruktionen konnten in einem 2048 Bit großen Microcode Speicher definiert werden. Die Space Shuttle Computer verwendeten 154 Instruktionen von denen aber 6 nicht oder ineffizient definiert waren, so dass man diese nachbessern musste.
Der AP101 konnte linear 64 KWorte Speicher adressieren. Durch Ergänzen der Adresse mit 4 bits vom Programmzähler konnte man den Speicher ohne Softwareänderungen und Architekturveränderungen jedoch auf 256 KWorte erweitern. Adressiert wurde dann immer ein 64 K Block innerhalb dieses Gesamtspeichers. Ursprünglich meinte man mit den 64 KWorten Halbworten auszukommen (40 K Halbworte für die CPU und 24 K Halbworte für den I/O Prozessor) entsprechend 128 KByte Speicher). Doch die Zunahme der Codelänge der Software führte zur Einführung von Wortmodulen anstatt Halbwort Modulen für die CPU (208 KByte Speicher). Doch auch dieses reichte nicht und so ersetzte man die Module durch "Double density" Modulen mit doppelt so viel Speicher. Die ersten Rechner hatten jeweils 80 KWorte à 32 Bit Speicher +24 KWorte à 32 Bit für den I/O Prozessor. Zusammen also 416 KByte Speicher. Der Speicher bestand noch aus Ringkernspeichern mit einer Zugriffszeit von 400 ns. Jedes Modul organisierte den Speicher in 16 Bit Halbworten mit 2 Bits um Speicherfehler zu erkennen und zu beseitigen.
In Speichergröße und Geschwindigkeit war der AP-101 mit einem Minicomputer dieser Zeit vergleichbar, also durchaus ein leistungsfähiger Rechner.
Ab Anfang der 90 er Jahre wurden die ersten Rechner durch die zweite Generation ersetzt. Der AP-101F wurde durch den AP-101S ersetzt. Der AP101S verwendet nun Halbleiterspeicher und nutzt den vollen Adressraum von 256 KWorten aus. Auch die Geschwindigkeit konnte verdoppelt werden auf 1.2 Millionen Instruktionen/sec. Anstatt zwei Boxen pro Computer kam man nun mit einer aus, wodurch sowohl die Abmessungen wie auch das Gewicht auf die Hälfte sanken (49.5 x 19.4 x 23.4 cm). Die MTBF (mittlere Zeit bis zum Auftreten eines Fehlers lag mit 6000 h ebenfalls höher als die 5200 h der ersten Generation. Der erste Einsatz der neuen Computer war der Flug STS-49 im Mai 1992.
Ursprünglich war gedacht wie bei den Apollo Rechnern die gesamte Software in den Speichern zu halten. Doch bald wurde sie zu komplex und zu groß. Man addierte dann zwei Bandlaufwerke mit 134 MBit Kapazität zum System. Jedes konnte 8 Millionen 16 Bit Worte speichern. Sie wurden in 512 Wort Blöcken gelesen und geschrieben. Die gesamte Space Shuttle Software war anfangs 700 KWorte groß.
Altes CockpitEin und Ausgabeeinheiten für die Besatzung waren kleine Röhrenmonitore die 5 x 7 Zoll groß waren (Bildschirmdiagonale 8.6 Zoll) und 26 Zeilen à 51 Zeichen darstellten. 4 dieser Monitore gab es: 3 vorne im Cockpit, einen hinten beim Missionsspezialisten. Es gab 3 Tastaturen zur Eingabe beim Piloten, Copiloten und Missionsspezialisten. Gesteuert wurden sie von einem 16 Bit Display Controller mit 8 KWorten RAM.
Im Jahre 1998 wurden auch die 4 schweren Kathodenstrahlröhren der Displays durch 9 moderne multifunktionale LCD Displays, wie sie in Verkehrsflugzeugen üblich sind ersetzt. Diese sind intelligent und benötigen keinen Bordcomputer zur Datenaufbereitung und wiegen obwohl es mehr sind deutlich weniger als die bisherigen Kathodenstrahlröhren. Jedes Display kann die Information jedes Bordcomputers darstellen.
Neu war auch die Einführung eines Bussystems. Heute selbstverständlich war dies als man den Shuttle entwarf noch eine Neuerung. Vorherige Rechner hatten direkte Punkt zu Punkt Verbindungen. Für jedes Signal brauchte man eine Leitung. Alle Hauptcomputer und Sensoren hängen an einem Bussystem. Alleine dadurch soll eine Tonne an Kabelverbindungen eingespart worden sein.
Eingesetzt wird ein Echtzeitbetriebsystem mit Prioritätssteuerung. Es gab zwei Zyklusdauern 40 ms für Steuerungsprozessoren und 960 ms für nicht kritische Prozesse wie z.B. die Navigation. Man entschied sich für die Prioritätssteuerung die es erlaubt dass wichtige Prozesse weniger wichtige unterbrechen, weil man dadurch bei Überlastung zwar eine Abnahme der Leistung hat, aber keinen Systemausfall wie er bei einem einfachen Echtzeitbetriebsystem mit festen Zeitscheiben vorkommt.
An den Triebwerken sitzen eigene Triebwerkscontroller, deren einzige Aufgabe es ist die Triebwerke zu steuern und die Messwerte laufend auf Abweichungen zu untersuchen. Sie schalten bei einem sich nähernden Ausfall das Triebwerk automatisch ab. Dies kam einmal bei der Mission STS-51F vor. Auch sie wurden 1985 durch Motorola MC 68000 Prozessoren ersetzt. Ein weiteres Upgrade war vor dem Verlust der Columbia geplant. Die hohe Leistung der Triebwerke war nur durch die Triebwerkskontroller möglich. Sie fuhren die Triebwerke nahe an die Zerstörungsgrenze und reduzierten so Sicherheitsmargen. Sie sitzen direkt an den Triebwerken und sind anders als die Hauptcomputer hohen Belastungen (Schall, Vibrationen, Temperaturen) ausgesetzt.
Die Landung kann vom Computer vollständig autonom erfolgen. Die Besatzung kann aber in der letzten Phase auch den Shuttle wie ein Flugzeug (allerdings mit miserablen Flugeigenschaften) steuern. Im Normalfall fliegt der Pilot nur während der letzten Minute des Abstiegs. Ohne Computer ist das Space Shuttle weder beim Start noch bei der Landung steuerbar. Der Space Shuttle ist ein inhärent instabiles Flugzeug. Lediglich in der letzten Minute der Landung ist die Atmosphäre dicht genug, damit die aerodynamischen Kräfte einen stabilen Gleitflug erlauben. Doch auch dann verhindern die Computer, dass die Piloten die Fähren in einen instabilen Zustand bringen. Es gibt keine direkte Steuerung der Hydraulik und dem Steuerknüppel (Fly by Wire).
Die Software wurde in HAL geschrieben, einer Sprache ähnlich FORTRAN aber speziell auf die Bedürfnisse von Avioniksystemen zugeschnitten. sie war nur etwa 10 % langsamer als Assembler. Allerdings dauerte die Entwicklung weitaus länger als man dachte, die Software wurde komplexer und größer als gedacht und es gab mehr als 200 Änderungen. Schließlich kostete die gesamte Softwareentwicklung 200 Millionen USD, das zehnfache des geplanten Betrages. Die Flugsoftware des Shuttles umfasst insgesamt 500.000 Zeilen. Auch nach den Testflügen wurde an ihr weiter gearbeitet: Von 1982 bis 1989 sank die Fehlerzahl von 11 Fehlern pro 1000 Zeilen auf 1 Fehler pro 1000 Zeilen sank. Die Kosten dafür waren enorm: Die gesamte Software kostete bis 1989 enorme 500 Millionen USD, also 1000 Dollar pro Codezeile. Entwickelt wurde sie von IBM.
Die Funkverbindung zur Erde geschieht über eine Sprachverbindung mit 64 KBit/sec und einer Datenverbindung (vornehmlich für Nutzlastdaten) mit 192 KBit/sec. Telemetrie wird mit 128 KBit gesendet. Diese Bodenfunkverbindungen waren für die ersten Flugtests oder ohne Verbindung zum TDRS System vorgesehen. Ist keine direkte Funkverbindung möglich so werden die Daten zwischengespeichert und beim nächsten Kontakt mit 1 MBit/s übertragen.
Nicht nur für das Space Shuttle, aber wesentlich für dieses war ein Netz aus Übertragungssatelliten (TDRS). Schon der erste operationelle Flug hatte das Ziel den ersten dieser Satelliten zu starten, als der zweite bei der Explosion der Challenger verloren ging, wurde der nächste mit dem ersten Start nach Wiederaufnahme der flüge gestartet. Daran erkennt man die Bedeutung dieser Satelliten für das Space Shuttle Programm. 2 Satelliten erlauben eine Funkverbindung über 85 % der Zeit, 3 Satelliten über 95 % der Zeit. Die Datenrate beträgt 52.5 MBit/s also 50 mal mehr als direkt zum Boden.
Alleine schon die Fehlerquote von 1 Fehler / 1000 Zeilen macht derartige Riesenspeicher unnötig.