Bei Ausfall des Prozeßrechners werden die Montagefahrzeuge vom Blindschaubild aus manuell zur Arbeitsposition gesteuert:BDE-System bewältigt aufwendige Logistik der Getriebemontage

11.09.1981

Vom Design bis zur Inbetriebnahme dauerte das gesamte Softwareprojekt für die bedarfsorientierte Rechnersteuerung eines Transportsystems bei der Zahnradfabrik Friedrichshafen 25 Monate. Diese kurze Zeitspanne ließ sich nur erreichen, weil mehrere Mitarbeiter der Zahnradfabrik das beauftragte Unternehmen tatkräftig unterstützten, aber auch aufgrund der ausgezeichneten Zusammenarbeit mit den Technikern der Demag. Das installierte Informationssystem kann beispielsweise Leistungsdaten abfragen, Plandaten inspizieren und die Beschickung der Prüfstände steuern.

Bei der Zahnradfabrik Friedrichshafen, dem größten deutschen Getriebehersteller, wurde 1980 eine neue Halle in Betrieb genommen, in der die Endmontage von Nutzkraftwagengetrieben erfolgt:

- im Erdgeschoß Hochregallager für Teile,

- im Obergeschoß Montage, Prüfung, eventuelle Rückmontage und Lackierung,

- im Erdgeschoß Lager und Versand der Getriebe.

Wegen der großen Typenvielfalt bei geringen Losgrößen und einer organisatorischen Nebenbedingung (im wesentlichen einschichtiger Montagebei zweischichtigem Betrieb sonst), war eine aufwendige Logistik zum Transport der Getriebe zwischen Montage, Prüfung, Lackierung und Versand bei eingebetteter Rückmontage nötig, die die folgenden Charakteristika aufzuweisen hatte:

- flurfreier automatischer Transport,

- Speicherfähigkeit (halbe Tagesproduktion),

- freier Zugriff auf einzelne Getriebe.

Demag-Systembahnen

Gerätetechnisch wurde dies durch zwei Demag-Systembahnen (Einschienenhängebahnen mit selbstgetriebenen Individual-Fahrzeugen) realisiert, für Komplettgetriebe bis 1000 Kilogramm und Anbaugetriebe bis 100 Kilogramm:

- Gesamtstreckenlänge 3070 Meter, davon 350 Meter power-free mit Schleppkettenförderung im Lackierbereich und 370 Meter für Anbaugetriebe,

- insgesamt 180 Weichen, 27 Bahnkreuzungen,

- vier automatische Etagenförderer,

- 23 Hub-/Senk-Stationen, an denen Komplett- oder Anbaugetriebe an die Fahrzeuge gehängt oder wieder davon abgenommen werden können,

- 21 Hub-/Senk-Stationen an den Getriebeprüfständen.

- Neben Zu- und Abfahrtsstrecken zu den Wartepositionen an den Arbeitsstationen enthält die Bahn Stauund Sammelstrecken sowie Sortierkreisel mit Ein- und Ausfahrten an beiden Enden.

Notaus-Signal an PDP-11

Fahrzeugpositionen werden für den Prozeßrechner an 167 Lesestellen und 106 Vollmeldern erfaßt. Am Leitstand des Transportsystems können durch Bedienknöpfe an einem Blindschaubild einzelne Fahrzeuge von bestimmten Wartepositionen aus zu geeigneten Arbeitspositionen manuell gesteuert werden. Dieses Vorgehen entspricht dem Notbetrieb bei einem Ausfall des sonst steuernden Prozeßrechners.

Als Prozeßrechner dient eine DEC PDP-11/70 (SX11M) mit der Ausstattung

- ein MB Hauptspeicher,

- zwei RMO3-Platten (67 MB)

- Systemkonsole LA120,

- Line-Printer LP11,

- drei Teletype-Terminals, ein LA36, zwei LA120,

- vier Masken-Bildschirme VT100,

- Farbmonitor mit Keyboard VT30H,

- Floppy-Doppelstation RX02,

- Magnetband TE 16,

- 20 BDE-Geräte PCT 800 von PCS mit Kartenleser, 32stelligem Display, numerischer Tastatur, 18 Funktionstasten (teilweise beleuchtbar),

- MIOS-Digital-lnterface mit 48 Eingangs- und 44 Ausgangsmoduln zu je 16 Bit,

- Kopplung mit dem kommerziellen Zentral-Rechner IBM 3031.

Über die digitalen Eingangs-Moduln erhält der Rechner Information über die Systembahn vom Steuerungssystem "Dematik 700 E":

- Nummer und Schalterstellung (11er, belegt, Rückmontage) eines Fahrzeuges an einer Lesestelle der Hauptbahn für Komplettgetriebe,

- Lichtschrankensignale an der Nebenbahn,

- Bedienknöpfe am Leitstand zum Stillsetzen von Bahnbereichen,

- Notaus-Signal,

- Vollmelder-lnitiatoren,

- Schleppketten-Betriebsinitiatoren,

- Störmeldungen der Weichen,

- Stromversorgungs-lnitiatoren (41 Blockstrecken) .

Mit den Ausgangs-Moduln kann der Rechner:

- Status-Lampen am Leitstand setzen,

- die Lesestellen in der Haupt- und Nebenbahn über separate Datenbusse anwählen,

- Fahrzeuge am Eingang von Kreuzungsbereichen oder am Kopf von Sammelstrecken starten,

- Fahrzeuge in Hub-/Senk-Stationen absenken oder weiterfahren lassen.

Erzeugnisdaten : Plandaten

Am Ende jeder Montagelinie ist eine Hub-/Senk-Station zur Aufgabe der fertigen Komplettgetriebe. Vom Rechner sind dort Leerfahrzeuge bereitgestellt; das vorderste ist abgesenkt, und am BDE-Gerät steht die Anzeige LFZ xxx BEDIENEN. Eine erzeugnisbegleitende Lochkarte mit Stückliste und Erzeugnisnummer des fertigen Getriebes wird dann am BDE-Gerät eingelesen, das Getriebe an das Fahrzeug gehängt, der Schalter am Fahrzeug auf "belegt" gestellt und das Fahrzeug nach oben gehoben. Ist es auf Bahnniveau angekommen, meldet sich das Fahrzeug über die Lesestelle in der Hub-/Senk-Station wieder im Rechner und signalisiert so, daß die Eingabe der Produktionsdaten am BDE-Gerät abgeschlossen ist: Durch Funktionstasten können neben der Erzeugnisidentifikation noch Sonderfälle wie "nicht prüfen", "nicht spritzen", "Eilauftrag" eingegeben werden.

Nach Abgleich der Erzeugnisdaten mit den Plandaten der Produktion, die per Rechnerkopplung bekannt sind, wird das nun belegte Fahrzeug aus der Hub-/Senk-Station herausgefahren und im Normalfall in einen Sortierkreisel gebracht. Das nächste Leerfahrzeug aus der Warteposition der Hub-/Senk-Station rückt inzwischen automatisch in diese nach, wird an der Lesestelle erfaßt und vom Rechner zur Aufnahme des nächsten Komplettgetriebes abgesenkt. Die freigewordene Warteposition wird schließlich vom Rechner am Abfallen des entsprechenden Vollmeldersignals festgestellt und ein neues Leerfahrzeug von geeigneter Stelle aus zur Hub-/Senk-Station in Marsch gesetzt.

Ähnlich wird an den Aufgabeplätzen für fertige Anbau-Getriebe verfahren, wo allerdings nur die Stücklistennummer relevant ist. Die Aufgabeplätze für Anbau-Getriebe sind paarweise an drei Montagelinien angebracht, die jeweils durch ein BDE-Gerät versorgt werden. Durch Eingabe der Stücklistennummern des an einer Linie zu fertigenden Komplett-Getriebes werden durch Stücklistenauflösung die Stücklistennummern der benötigten Anbau-Getriebe aufgesucht.

Vollmelder und Prüflinge

Durch Funktionstasten kann nun das Bedienungspersonal daraus zwei Queues für die nächsten links und rechts der Montagelinie benötigten Anbauten zusammenstellen. Der Rechner arbeitet diese Queues ab, indem passend beladene Anbauten-Fahrzeuge in die Abgabeplätze gesteuert werden, sowie die entsprechenden Vollmelder in den Wartepositionen frei werden.

Durch Vollmelder in den Wartepositionen vor den Prüfständen kann der Rechner ebenfalls feststellen, daß ein Prüfstand ein weiteres Getriebe benötigt. Ein nach vielfältig vorgebbaren Auswahlkriterien passendes Getriebe wird dann in der Bahn gesucht, wobei die Wahl zwischen gleichwertigen Kandidaten schließlich so getroffen wird, daß ein Kompromiß zwischen Priorität und Zugriffszeit optimal ist.

Fahrzeuge mit Prüflingen werden an den Prüfständen automatisch abgesetzt und nach der Prüfung durch das Bedienungspersonal wieder nach oben gesteuert, wobei nacharbeitungswürdige Getriebe durch die Fahrzeugschalterstellung " Rückmontage" gekennzeichnet sind. Das Prüfergebnis wird vom Rechner an der nächsten Lesestelle erfaßt und das Fahrzeug entsprechend in die Staustrecken vor dem Lackierbereich oder zu einer vorgegebenen Hub-/Senk-Station geschickt, an der Rückmontagen abgeladen werden.

An der Rückmontage Hub-/Senk-Station werden natürlich nicht nur "schlecht" geprüfte Getriebe abgehängt, sondern auch nachgebesserte Getriebe wieder in das Transportsystem eingeschleust. Dazu wird wie bei Erstaufgaben wieder das BDE-Terminal benutzt. Darüber hinaus bietet das BDE-Gerät durch Funktionstasten und numerische Eingabe die Möglichkeit der Anforderung zusätzlicher Leerfahrzeuge, wenn mehr Getriebe einzuschleusen sind, als Rückmontagen ankommen.

Staustrecken

Im Lackierbereich werden die Fahrzeuge an Schleppketten gezogen; der Übergang zwischen Selbstantrieb und Power-free-Betrieb geschieht automatisch. Nach Durchlaufen eines Trokkenofens bewegen sich die Fahrzeuge wieder mit eigener Kraft.

Nach dem Trockenofen gelangen die Fahrzeuge über einen Etagenförderer in den Versandbereich des Erdgeschosses. Dort werden mit Hilfe eines Sortierkreisels und sieben Sammelstrecken Getriebe aus dem gleichen Los zusammengeführt und an drei Hub-/Senk-Stationen zum Umladen auf Paletten abgesenkt. An den zugehörigen BDE-Geräten wird dabei jeweils die erforderliche Palette angezeigt.

Durch die BDE-Geräte lassen sich die drei Versandstationen natürlich auch zur Aufgabe von anderweitig gefertigten Getrieben benutzen. Diese gelangen mit den sonst freigewordenen Leerfahrzeugen über einen Etagenförderer zurück ins Obergeschoß der Halle.

Auf dem Weg dorthin passieren die Fahrzeuge einen automatischen Fahrzeugprüfstand, der die Ergebnisse dem Rechner mitteilt. Überholungsbedürftige Fahrzeuge werden in eine Reparaturstrecke gesteuert; der Prüfbericht wird statistisch ausgewertet und auf einem Fernschreiber protokolliert.

Der gesamte I/O mit den Terminals wird durch eine Handler-Task abgewickelt, hinter der eine Server-Task steht, die den Informationsfluß zwischen Handler-Task und anderen Tasks wie der Strategie abwickelt.

Die Handler-Task simuliert eine Reihe von virtuellen Maschinen mit "Operationen", die auf die BDE-Geräte zugeschnitten sind. Typische "Maschinenoperationen" sind Löschen einer Tastenlampe, Anzeigen eines Textes, Abnahme einer numerischen Eingabe. Jeder virtuellen Maschine entspricht dabei ein BDE-Gerät.

Für jeden logischen BDE-Typ ist ein Satz "Maschinen-Programme" bereitgestellt, die interpretativ abgearbeitet werden. Den Anstoß zur Ausführung eines solchen Programmes geben das Einlesen einer Lochkarte, das Drücken einer Funktionstatste oder der Empfang einer Message von der Server-Task.

Die "Maschinenprogramme" der Handler-Task werden aus Quellfiles durch einen "Assembler" erzeugt und beim Start der Handler-Task geladen. Eine Änderung des Benutzer-Dialogs im Ablauf oder eine Umbelegung der Funktionstasten kann also ohne Änderung der ausführenden Programme durchgeführt werden.

In die Software des Prozeßrechners ist ein Informationssystem integriert, das sowohl die Teletype- als auch die Bildschirm-Terminals bedient. Durch die Eingabe eines Tätigkeitssymbols werden nach Paßwortüberprüfung (jedes Terminal hat ein individuelles Default-Paßwort) die zugehörigen Tasks gestartet.

Diese übernehmen zur Prompt-Abwicklung oder Maskendarstellung das Terminal vom Informationssystem und geben es bei Terminierung zurück. Die Ergebnisse werden entweder auf dem Drucker ausgegeben oder in die Output-Queue des Terminals eingetragen. Das Informationssystem gestattet es dem Benutzer, in seiner Output-Queue zu blättern.

An das Informationssystem angeschlossene Programme erlauben es dem Personal unter anderem:

- Leistungsdaten abzufragen,

- Fertigungsstände von Losen auszugeben,

- Plandaten zu inspizieren,

- Kunden- und Stücklistenstammsätze zu ändern,

- das Betriebs-Logbuch zu durchsuchen,

- Broadcasts an andere Terminals zu schicken und

- die Beschickung der Prüfstände durch Vorgabe der passenden Lose und Angabe der Auswahlkriterien zu steuern.

RSX11M mit CICS

Zur Erstellung der Anwendungsprogramme wurden Listen- und Maskengeneratoren entwickelt und eingesetzt, die es unter anderem erlauben, Drucklayouts allein durch Änderung von formatfreien Steuerfiles zu modifizieren.

Bei der Rechnerkopplung handelt es sich um eine BSC-Dialogkopplung (9600 Baud) die den RSX11M-Prozeßrechner mit der zentralen CICS-Anlage verbindet. Der Prozeßrechner erhält über die Kopplung Fortschreibungen der Stammdaten, vor allem über geplante Fertigungen. In die andere Richtung werden Fertigmeldungen der Montage, Prüfung und des Versandes übertragen. (Große Datenbestände können auch offline mit Magnetbändern überspielt werden.)

In einem Task-Common von 80 KB werden alle für den Prozeßablauf relevanten Daten gehalten. Der Inhalt des Task-Common ist grob wie folgt strukturiert:

- allgemeine Informationen, Flags, Statuswörter,

- Kopien der Digital-Signale,

- Zuordnungstabellen zwischen Signalen und geometrisch/physikalischen Objekten,

- weichenorientierte Tabellen für schnellste Verbindungen zu Zielpunkten,

- lesestellenorientierte Tabellen für das Defaultverhalten von Fahrzeugen für die Strategie

- geometrisch/physikalische Objekte, dargestellt durch verkettete Vektoren,

- Vektoren für 450 Fahrzeuge in der Hauptbahn beziehungsweise 110 in der Nebenbahn,

- dynamisch verwalteter Freispeicher für Getriebe- und Losvektoren sowie für Stammsatzrecords und Arbeitsspeicher.

Signaländerungen werden von einer zyklischen Task in Zustände endlicher Automaten umgesetzt, die Offsets in den geometrisch/physikalischen Vektoren entsprechen.

Logisch höher geordnete Tasks wie die Strategie erkennen dann solche Zustandsänderungen und reagieren darauf mit Aktionen wie dem Absetzen von Startsignalen, wobei der Automatenzustand auf einen Wert umdefiniert wird, der das Warten auf die Befolgung der Aktion durch die Bahn signalisiert.

So pendelt etwa der Zustand einer Lesestelle zwischen den Werten "frei", "besetzt", "wartend auf Abfahrt" und der Automat zur Beschickung eines Prüfstandes mit Fahrzeugen zwischen den Werten "hungrig", "gabel", "satt". Da jeweils noch der Zeitpunkt von Zustandsänderungen festgehalten wird, können asynchron zu reagierenden Tasks Time-Outs überwacht und geeignet behandelt werden (so durch die Wiederholung von Startsignalen).

Um die Programme mit Zugriffen zum Task-Common lesbar und flexibel gegenüber Strukturänderungen gestalten zu können, wurde ein Precompilersystem eingesetzt, das unter anderem aus formalen Bezeichnungen gen für die statischen Vektoren (geometrisch/physikalische Objekte) und die Offsets numerische Werte in den Quellen substituiert. Strukturänderungen konnten somit durch automatisch ablaufende Compilationen in den Programmen fehlerfrei nachvollzogen werden.

Zur Initialisierung des Task-Commons mit Daten, die die Geometrie der Bahn reflektieren, wurde ein Generator entwickelt, der aus Klartext-Files BLOCK DATA-Programme erzeugt. Die darin beschriebenen Strukturen verlaufen parallel zum Task-Common und können dorthin kopiert werden.

Solange sich am Prozeß etwas ändert, wird der komplette Task-Common alle zwei Minuten alternierend auf die beiden Laufwerke ausgeschrieben. Von dort kann er nach einem Stromausfall wieder geladen werden. Der gleichzeitige Ausschluß des Task-Common-Saves mit Vektorumkettungen erfolgt über Flags.

Sämtliche Stammfiles sind auf den beiden Plattenlaufwerken doppelt vorhanden und werden für alle anderen Programme zentral von zwei Tasks verwaltet. Damit ist der kollisionsfreie Zugriff beliebig vieler Programme auf die Stammdaten möglich. Lesezugriffe werden an einem bevorzugten Laufwerk vorgenommen, Schreibzugriffe stets an beiden.

Durch die zentrale Stammfileverwaltung ist außerdem der Rechnerbetrieb gegen Ausfälle eines Laufwerks abgesichert. Die Übergabe der Stammsatz-Records zwischen den Anwendungsprogrammen und der Stammfile-Verwaltung geschieht über dynamische Task-Common-Bereiche und wird über Flags synchronisiert.

Der Farbmonitor mit Keyboard wird durch eine Task betrieben, die in vier zyklisch dargestellten Bildern den Prozeß in Teilbereichen anzeigt. Außerdem können Histogramme sichtbar gemacht werden, die über das Informationssystem erzeugt wurden.

Warnfarben

Für einen Teilbereich wird zunächst ein Schwarz-Weiß-Bild aus einem File kopiert. Dieses Bild wird dann farbig ergänzt durch aktuelle Informationen des Task-Common:

- gestörte Weichen rot,

- gestörte Blockstrecken mit gelbem Hintergrund,

- Fahrzeuge an den aktuellen Orten in verschiedenen Farben zur Anzeige des Bearbeitungszustandes des eventuell angehängten Getriebes.

Über das Keyboard können Fahrzeuge mit dem Cursor ausgewählt werden; alle relevanten Daten werden dann auf den Farbmonitor geschrieben. Weiterhin kann durch das Keyboard ein Trace-Menü aktiviert werden, mit dem sich einzelne Fahrzeuge oder Fahrzeuggruppen zur Verfolgung markieren lassen. In den folgenden Prozeßdarstellungen werden die markierten Fahrzeuge dann durch Blinken hervorgehoben. Fahrzeuggruppen lassen sich unter anderem nach folgenden Gesichtspunkten zusammenstellen:

-gleicher Kunde,

-gleiche Stückliste,

-gleiches Los.

Fahrzeuge gehen über Weichen

Die Steuerstrategie arbeitet hierarchisch: Auf der untersten Ebene stehen Tabellen für Richtungs- und Fahrentscheidungen für Fahrzeuge, die an Lesestellen angekommen sind:

- Fahrzeue mit vergebenem Ziel (momentan bekannter Mission) werden entsprechend Richtungstabellen über Weichen gesteuert.

- Fahrzeuge ohne aktuell bekannte Mission werden entsprechend Fahrempfehlungen gesteuert, die aus Tabellen folgen oder durch explizit ausgeschriebene Sonderregeln vorgegeben werden (so etwa Balancieren von Sortierkreiseln) .

Die Fahrempfehlungen beinhalten eine mehr oder weniger starke Richtungsbevorzugung und eine eventuelle Option zum "Stehenbleiben, falls nichts Besonderes vorliegt". Je nach Stärke der Richtungsbevorzugung wird verschieden lange auf das Freiwerden der bevorzugten nächsten Strecke gewartet, bevor die andere Richtung eingeschlagen wird. Die Option bedeutet beispielsweise, daß ein Fahrzeug sich nur bewegen muß, wenn sich in derselben Strecke ein Fahrzeug mit wichtiger Mission befindet (Blaulichteffekt), das mithin für eine Arbeitsstation angefordert wurde und dem Platz gemacht werden muß.

In der nächsten Ebene werden Konflikte zwischen Fahrzeugen an benachbarten Lesestellen bereinigt, insbesondere das Problem der Vorfahrt an Kreuzungen gelöst. Der hierbei benutzte heuristische Algorithmus verwendet im Konfliktfall neben Prioritäten noch eine Art "Ampelregelung" mit örtlich verschiedenen "Rotlichtphasen".

In einer weiteren Ebene werden Fahrzeuge wichtiger Missionen zur Beschickung der Arbeitsstationen erteilt (bedarfsorientierte Steuerung). Liegt nach Arbeitsende keine wichtige Mission mehr vor, so erfolgen überhaupt keine Starts mehr und der Prozeß legt sich schlagartig zur Ruhe. Diese wird erst wieder unterbrochen, wenn etwa an einer Hub-/Senk-Station ein neues Getriebe aufgegeben wird.

In der höchsten Ebene werden teils automatisch, teils durch Benutzereingriffe an einem Terminal im Leitstand Rahmen für die darunterliegenden Ebenen abgesteckt:

- Umsiedlung von Fahrzeugen zwischen verschiedenen Bahnbereichen bei sich abzeichnendem Bedarf (automatisch),

- Stillsetzen von gerade unbenutzten Arbeitsstationen .

Ruhiger Winkel

Darüber hinaus kann in den Ablauf der Fahrstrategie jederzeit durch den Benutzer auf den drei unteren Ebenen eingegriffen werden durch

- explizite Starts einzelner Fahrzeuge,

- Vorgabe eines Ziels (Steuerung eines reparaturbedürftigen Fahrzeugs in einen ruhigen Winkel der Bahn),

- Abänderung des logischen Bearbeitungsstandes und der Priorität eines Getriebes.

Zum normalen Betrieb des Prozesses gehören 20 residente Tasks, zu denen sich bei Bedarf noch die Tasks gesellen, die durch das Informationssystem gestartet werden oder mit denen in den Strategieablauf eingegriffen wird.

Das Hochfahren und geordnete Herunterfahren der Software wird durch geeignete Prozeduren gesteuert, die vom Personal nur minimal Eingaben erfordern.

Weiterhin stehen folgende Utilities zur Verfügung

- Dump/Restore des Prozeßabbildes,

- Hardware-Tests und Signaltraces,

- Stammdatenregenerierung.

Die anlaufende Produktion in der Halle wurde durch eine Hilfsstrategie mit häufigen Operatoreingriffen unterstützt. Während dieser Phase wurden die Funktionstests der eigentlichen Strategie durchgeführt.