DE3686301T2 - Eigensichere bremse fuer ein mehrraedriges fahrzeug mit motorgesteuerter lenkung. - Google Patents

Eigensichere bremse fuer ein mehrraedriges fahrzeug mit motorgesteuerter lenkung.

Info

Publication number
DE3686301T2
DE3686301T2 DE8686306676T DE3686301T DE3686301T2 DE 3686301 T2 DE3686301 T2 DE 3686301T2 DE 8686306676 T DE8686306676 T DE 8686306676T DE 3686301 T DE3686301 T DE 3686301T DE 3686301 T2 DE3686301 T2 DE 3686301T2
Authority
DE
Germany
Prior art keywords
block
mobile device
navigation
memory
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE8686306676T
Other languages
English (en)
Other versions
DE3686301D1 (de
Inventor
Thomas J Doty
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Texas Instruments Inc filed Critical Texas Instruments Inc
Application granted granted Critical
Publication of DE3686301D1 publication Critical patent/DE3686301D1/de
Publication of DE3686301T2 publication Critical patent/DE3686301T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0287Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling
    • G05D1/0289Control of position or course in two dimensions specially adapted to land vehicles involving a plurality of land vehicles, e.g. fleet or convoy travelling with means for avoiding collisions between vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Navigation (AREA)

Description

    HINTERGRUND DER UND ÜBERSICHT ÜBER DIE ERFINDUNG HINTERGRUND DER ERFINDUNG
  • Die Erfindung betrifft mehrrädrige Fahrzeuge und insbesondere steuerbare mehrrädrige Fahrzeuge sowie noch spezieller steuerbare mehrrädrige Fahrzeuge mit einem Ausfall-Bremssystem.
  • Beim Betrieb eines steuerbaren beweglichen Roboters, der in der Lage ist, unter der Steuerung eines Navigationssystems über einen Fabrikboden zu fahren, ist es erwünscht, die bewegliche Vorrichtung im Falle eines Stromausfalls oder einer Notwendigkeit zum Anhalten schnell zum Stillstand zu bringen. Die bei einer per Hand gesteuerten beweglichen Vorrichtung verwendete Technik besteht in einer Totmannbremse, bei der die mechanischen Bremsen nicht an den Rädern angreifen, so- lange ein Knopf gedrückt ist. Sobald der Knopf losgelassen ist, bringen die mechanischen Bremsen das Fahrzeug zum Anhalten. Wenn jedoch im Zuge der schnell zunehmenden Automatisierung von Fabrikanlagen bewegliche Roboter zu Zwecken der Materialhandhabung dienen, ist es im Falle eines Stromausfalls beim Navigationssystem oder bei der beweglichen Vorrichtung notwendig, die bewegliche Vorrichtung zu einem ausfallsicheren Anhalten zu bringen, wenn ein Totmann-Bremssystem nicht zur Verfügung steht.
  • In der Druckschrift GB-A-2 129 161 ist eine automatische Transporteinrichtung beschrieben, die mehrere Fahrzeuge mit jeweils einer Infrarot-Signaleinrichtung aufweist, deren Position von einer oder mehreren Kameras beobachtet wird, sowie eine auf die Signale von den Kameras ansprechende Recheneinheit, die die Position, die Geschwindigkeit und die Richtung der Fortbewegung jedes Fahrzeugs berechnet und daraufhin Signale an die Fahrzeuge sendet, um ihre Bewegung zu steuern.
  • Gemäß der Druckschrift GB-A-2 095 350 werden in einem induktiv gelenkten Fahrzeug Bremssignale erzeugt, wenn das Fahrzeug wahrscheinlich um mehr als einen maximal zulässigen Seitenabstand von der Leitlinie, der es folgen soll, abkommt. Das Fahrzeug enthält eine Einrichtung zur Berechnung seiner wahrscheinlichen Bahn von seiner Position aus, seines Fehl winkels bezüglich der Leitlinie und seines Lenkwinkels.
  • ÜBERSICHT ÜBER DIE ERFINDUNG
  • Gemäß der Erfindung wird eine bewegliche Vorrichtung mit mehreren Rädern, einem Navigationssystem, mit dem die Vorrichtung zu einem befohlenen Ziel geführt werden kann, und einer Bremseinrichtung zum Anhalten der Vorrichtung geschaffen, die dadurch gekennzeichnet ist, daß die Bremseinrichtung eine erste Kraftquelle aufweist, die dafür eingerichtet ist, die Vorrichtung zu lenken, indem sie Lenkbefehle liefert, die wenigstens zwei der mehr Räder veranlassen, den Winkel, den die Räder mit der Vorrichtung einschließen, in Reaktion auf die Lenkbefehle um einen vorbestimmten Betrag zu ändern, und eine weitere Einrichtung aufweist, mit der die Vorrichtung gebremst werden kann, indem der Winkel zwischen den wenigstens zwei Rädern geändert wird, um die Räder in eine Richtung zu lenken, durch welche die Vorwärtsbewegung der Vorrichtung behindert wird, wobei die weitere Einrichtung eine Hilfskraftquelle aufweist, die bei einem Ausfall der ersten Kraftquelle automatisch betreibbar ist.
  • Eine steuerbare bewegliche Vorrichtung, etwa ein beweglicher Roboter, fährt unter der Steuerung eines Leitsystems, das die steuerbare bewegliche Vorrichtung mit Geschwindigkeits- und Richtungsbefehlen versieht, zu einem befohlenen Ziel. Mehrere Räder befördern die bewegliche Vorrichtung in Reaktion auf die Geschwindigkeitsbefehle vom Leitsystem zu der befohlenen Position. Lenkbefehle veranlassen von den mehreren Rädern ausgewählte Räder, ihre Winkel in Reaktion auf die vom Leitsystem gelieferten Lenkbefehle um einen vorbestimmten Betrag zu ändern. Ferner ist ein Bremssystem vorgesehen, mit dem die steuerbare bewegliche Vorrichtung angehalten werden kann, wenn ihr ein Stromausfall oder ein Ausfall der Verbindung mit dem Leitsystem zustößt.
  • Das Bremssystem wird in Verbindung mit den Servomotoren verwendet, die zum Lenken der beweglichen Vorrichtung benutzt werden, und enthält eine Speichereinrichtung, etwa einen Kondensator, der im Zustand ohne Bremsung Energie aufspeichert. Eine Übertragungseinrichtung, etwa ein Relais, überträgt die Energie vom Kondensator auf die zum Lenken der beweglichen Vorrichtung verwendeten Servomotoren und ist in einer solchen Weise angeschlossen, daß die lenkbaren Räder entkoordiniert und dazu gebracht werden, sich in eine die Vorwärtsbewegung der beweglichen Vorrichtung behindernde Richtung zu drehen.
  • Diese und weitere Vorteile und Gegenstände der Erfindung ergeben sich aus der Beschreibung in Verbindung mit den Figuren:
  • FIGURENÜBERSICHT
  • Figur 1 ist ein Blockdiagramm eines erfindungsgemäßen Fertigungssystems;
  • Figur 2 ist ein Blockdiagramm der Steuer- und Navigationsschaltung der Figur 1;
  • Figur 3 ist ein Blockdiagramm des Schnittstellenbausteins der Figur 4;
  • Figur 4 ist ein Blockdiagramm des Bildhistogrammprozessors der Figur 2;
  • Figur 5 ist ein Blockdiagramm des Fenstergenerators der Figur 2;
  • Figur 6 ist ein Blockdiagramm des Bildspeicherbausteins der Figur 2;
  • Figuren 7 sind Wellenform-Diagramme, die die Wirkungsweise der Steuer- und Navigationsschaltung 15 der Figur 1 veranschaulichen;
  • Figuren 8 zeigen Flußdiagramme der erfindungsgemäßen Bild- Schwerpunktbildung;
  • Figur 9 ist eine isometrische Darstellung einer erfindungsgemäßen Fertigungseinrichtung;
  • Figuren 10 und 11 veranschaulichen das bei Spiegelbildern auftretende Problem;
  • Figur 12 ist ein Flußdiagramm des bei auftretenden Spiegelbildern ausgeführten Programms;
  • Figuren 13, 14 und 15 veranschaulichen das Problem, das auftritt, wenn bei der Erfindung die Sicht einer Kamera auf eine Leit-Signaleinrichtung verdeckt ist;
  • Figuren 16 und 17 veranschaulichen die Bestimmung eines verdeckten Bildes;
  • Figur 18 ist ein Blockdiagramm eines erfindungsgemäßen beweglichen Roboters;
  • Figur 19 ist ein Flußdiagramm eines von dem beweglichen Roboter der Figur 18 ausgeführten Programms;
  • Figur 20 ist ein Blockdiagramm einer erfindungsgemäßen Servosteuerschleife;
  • Figur 21 ist ein Blockdiagramm eines erfindungsgemäßen Ausfallannahme-Navigationssystems;
  • Figuren 22 sind Flußdiagramme des bei der beweglichen Vorrichtung der Figur 18 verwirklichten Ausfallannahme-Navigationssystems;
  • Figur 23 ist ein Flußdiagramm der Ausführung eines erfindungsgemäßen Servofilters;
  • Figuren 24 bis 27 zeigen ein Bremssystem für die bewegliche Vorrichtung der Figur 18;
  • Figur 28 ist ein Blockdiagramm eines drahtlosen Kommunikationssystems zur Datenübertragung zwischen den Steuer- und Navigationsschaltungen und der beweglichen Vorrichtung;
  • Figur 29 ist eine Wellenform des drahtlosen Kommunikationssystems der Figur 28;
  • Figur 30 ist eine Draufsicht auf eine erfindungsgemäße Signaleinrichtung;
  • Figur 31 ist eine Schnittansicht einer erfindungsgemäßen Navigations-Signaleinrichtung;
  • Figur 32 ist eine Draufsicht auf eine erfindungsgemäße Fertigungseinrichtung;
  • Figur 33 ist eine isometrische Ansicht der Fertigungseinrichtung der Figur 32;
  • Figur 34 ist ein Flußdiagramm eines Programms, das erfindungsgemäß zur Positionsbestimmung einer beweglichen Vorrichtung dient, wenn sie außer Sicht der Kamera ist;
  • Figur 35 ist ein Blockdiagramm einer Fertigungseinrichtung mit einem erfindungsgemäßen Mehr-Vorrichtungs-System;
  • Figur 36 ist ein Flußdiagramm der Bedienerschnittstelle der Figur 35;
  • Figur 37 ist ein Flußdiagramm der Kommunikationslogik der Figur 35;
  • Figur 38 ist ein Flußdiagramm, das die Wirkungsweise der Navigationslogik der Figur 35 veranschaulicht;
  • Figur 39 ist ein Flußdiagramm, das die Wirkungsweise der Fertigungsanlagensteuerung der Figur 35 veranschaulicht;
  • Figur 40 ist ein Flußdiagramm, das die Wirkungsweise der Organisationssteuerung der Figur 35 veranschaulicht;
  • Figur 41 ist ein Flußdiagramm, das die Wirkung der Ladestations-Logik der Figur 35 veranschaulicht;
  • Figur 42 stellt ein Flußdiagramm der Steuerung eines Systems mit beweglichen Vorrichtungen wie das in Figur 35 gezeigte dar;
  • Figuren 43 bis 50 veranschaulichen die Aufstellung von Regeln für ein System mit beweglichen Vorrichtungen mehrerer Typen;
  • Figuren 51 bis 53 veranschaulichen ein Verfahren zur Steuerung der Bewegungen einer beweglichen Vorrichtung in der Umgebung einer Fertigungsanlage mit mehreren Knotenpunkten;
  • Figuren 54 sind Flußdiagramme, die die Betriebsweise eines Systems mit mehreren beweglichen Vorrichtungen veranschaulichen;
  • Figuren 55 bis 57 sind Flußdiagramme, die die Navigation und Steuerung einer Mehrfach-Vorrichtung mit einer einzelnen Steuer- und Navigationsschaltung 15 veranschaulichen;
  • Figuren 58 bis 61 liefern ein Zusammenstoß-Vermeidungssystem für die erfindungsgemäße Mehrfach-Vorrichtung; und
  • Figuren 62 sind eine Auflistung von Gleichungen.
  • DETAILLIERTE BESCHREIBUNG DER AUSFÜHRUNGSFORMEN
  • In Figur 1, auf die nun Bezug genommen wird, ist ein vereinfachtes Diagramm eines Steuer- und Navigationssystems 2A und einer beweglichen Vorrichtung 21 gemäß der Erfindung gezeigt. Das Steuer- und Navigationssystem 2A enthält mehrere Kameras 1, eine Steuer- und Navigationsschaltung 15, ein Kommunikationssystem 19 und eine Ein-/Ausgabestation für Daten, ein Terminal 17. Jede einzelne der mehreren Kameras 1 in der dargestellten Ausführungsform ist eine Rasterabtast-Fernsehkamera und setzt das von Signaleinrichtungen 3, 5 und 7 ausgesandte Licht in Videosignale um. Die Signaleinrichtungen 3, 5 und 7 sind auf der beweglichen Vorrichtung 21 angebracht und sind bei der Ausführungsform nach Figur 1 Leuchtdioden, die im Infrarotbereich arbeiten. Das Licht gibt eine optische Information über die Position und Orientierung der beweglichen Vorrichtung 21 wieder, die über eine optische Linse 11, die in der dargestellten Ausführungsform ein über der optischen Linse 11 angebrachtes Infrarotfilter 9 aufweist, auf die mehreren Kameras 1 übertragen wird. Das Infrarotfilter 9 ist zwar nicht notwendig, dämpft aber das durch Fremdlicht in der Umgebung einer Fertigungsanlage verursachte Rauschen, indem das zu den Kameras 1 gelangende Licht auf den infraroten Teil des Lichtspektrums begrenzt wird.
  • Die mehreren Kameras 1 setzen die optische Information in ein Videosignal um, das über einen Leiter 13 an die Steuer- und Navigationsschaltung 15 gelangt, welche Bedienereingaben vom Terminal 17 empfängt, die Videosignale in Lagebefehle umsetzt und die Lagebefehle, die eine Information über die Position und Orientierung der beweglichen Vorrichtung 21 enthalten, an ein Kommunikationssystem 19 anlegt, das ein Funkgerät oder ein in der Umgebung einer Fertigungsanlage eher bevorzugtes, mit Licht oder im Infraroten arbeitendes drahtloses Kommunikationssystem sein kann. Das drahtlose Infrarot-Kommunikationssystem ermöglicht durch die Verwendung von Leuchtdioden und lichtempfindlichen Dioden einen Informationsaustausch zwischen der Steuer- und Navigationsschaltung 15 und der beweglichen Vorrichtung 21, auf der die Lichtquellen oder Signaleinrichtungen 3, 5 und 7 angebracht sind. Die bewegliche Vorrichtung 21 vergleicht ihre Position mit ihrer befohlenen Position und gibt ihren Rädern oder Beinen 23 Bewegungsbefehle, um ihre Position zu verändern und/oder um außerdem einen Roboterarm 25 für die Ausführung einer befohlenen Arbeit zu bewegen. Die Position des Roboterarms 25 kann mittels einer wahlweise vorhandene Signaleinrichtung 27 oder mittels interner Bezugsmarken innerhalb der beweglichen Vorrichtung 21 bestimmt werden.
  • STEUER-UND NAVIGATIONSSCMALTUNG 15
  • In Figur 2, auf die nun Bezug genommen wird, ist ein vereinfachtes Blockdiagramm der Steuer- und Navigationsschaltung 15 gezeigt. Die mehreren Fernsehkameras 1A bis 1N liefern der Steuer- und Navigationsschaltung 15 und spezieller einem Video-Schnittstellenbaustein (VIM) 31 Bildinformationen. Der Video-Schnittstellenbaustein 31 wählt eine vorbestimmte Fernsehkamera 1S aus, welche eine einzelne aus der Gruppe von Fernsehkameras 1A bis 1N und als solche in Figur 2 nicht besonders gekennzeichnet ist. Der Video-Schnittstellenbaustein 31 setzt die Bildinformation, die in Form eines Analogsignals vorliegt, dessen Wellenform der Lichtstärke gegen die Rasterabtastposition der ausgewählten Fernsehkamera 1S entspricht, in ein Digitalsignal um, das eine digitale Graustufenwiedergabe der von der ausgewählten Fernsehkamera 15 erzeugten analogen Wellenform liefert.
  • Die digitale Graustufenwiedergabe der analogen Wellenformen wird in einem als zweidimensionale Anordnung gebildeten Bildspeicherbaustein (PMM) 35 so verarbeitet und gespeichert, daß die Lichtintensität durch ihre Position innerhalb der Speicheranordnung einer Position der Rasterabtastung der ausgewählten Fernsehkamera 1S entspricht. Zusätzlich überführt ein Bus 39 das Digitalsignal an einen Bildhistogrammprozessor (VHP) 33, bei dem das Digitalsignal in ein Signal (im folgenden Raumgebietsignal genannt) umgesetzt wird, das die Raumgebiet-Position der Lichtguellen 3, 5 und 7 und somit der beweglichen Vorrichtung 21 repräsentiert. Aus dem Raumgebietsignal werden die Schwerpunkte des intensiveren, von der ausgewählten Fernsehkamera empfangenen Lichts festgestellt.
  • Eine Host-Zentralrecheneinheit(CPU) mit Speicher 37 enthält eine Navigations-CPU mit Speicher 37a, eine Kommunikations- CPU mit Speicher 517 und eine Steuer-CPU mit Speicher 505, wobei insbesondere die Navigations-CPU mit Speicher 37a die Schwerpunkte der Lichtquellen mit einem in der Navigations- CPU mit Speicher 37a gespeicherten, erwarteten Muster der an der beweglichen Vorrichtung 21 angebrachten Lichtquellen 3, 5 und 7 vergleicht. Sobald das Muster identifiziert ist, wird die Position einschließlich der Lage und Orientierung der beweglichen Vorrichtung 21 über die Kommunikations-CPU mit Speicher 517 und ein drahtloses Infrarot-Kommunikationssystem 19 an die bewegliche Vorrichtung 21 übertragen.
  • Das drahtlose Infrarot-Kommunikationssystem 19 enthält eine Anordnung von Infrarot-Leuchtdioden 45, mit denen Licht zu einer Infrarotlicht empfangenden Diode 47 gesandt wird, und überträgt Informationen und Befehle an die bewegliche Vorrichtung 21, die auf deren Lage basieren. Außerdem wird die Host-CPU mit Speicher 37 mit Befehlen von einem Fertigungsanlagen-Steuerungscomputer oder einem Terminal 17 versorgt, damit sie über die Kommunikations-CPU mit Speicher 517 und das drahtlose Infrarot-Kommunikationssystem 19 an die bewegliche Vorrichtung 21 übertragen werden. Ein Bediener kann die Bewegung der beweglichen Vorrichtung 21 auf einem an den Video- Schnittstellenbaustein 31 angeschlossenen Fernsehbildschirm 29 beobachten. Das Bediener-Terminal 17 kann auch dazu verwendet werden, der beweglichen Vorrichtung 21 zu Testzwecken oder zur Handsteuerung direkt Befehle einzugeben.
  • VIDEO-SCHNITTSTELLENBAUSTEIN 31
  • Figur 3, auf die nun Bezug genommen wird, ist ein Blockdiagramm des Video-Schnittstellenbausteins 31 der Figur 2. Die Videosignale von den mehreren Fernsehkameras 1A bis 1N gelangen über ein Leiterbündel 32 in den Video-Schnittstellenbaustein 31. Die Videosignale sind Analogsignale und gelangen an einen Analogmultiplexer 49, der auf der Basis einer Ausgabe der Navigations-CPU mit Speicher 37a über Ausgangs leitungen 41 einer Steuerregistereinheit(CRU) das Videosignal der vorbestimmten Fernsehkamera 1S zur Verarbeitung auswählt. Die Navigations-CPU mit Speicher 37a wählt das Videosignal einer Fernsehkamera 1S aufgrund seiner Vorherbestimmbarkeit aus, die sich in erster Linie danach richtet, welche Kamera die beste Sicht auf die bewegliche Vorrichtung 21 bietet, wenn ihre letzte bekannte Position und ihre erwartete Bewegungsrichtung nach der Ausführung des letzten Bewegungsbefehls gegeben sind. Das Videosignal wird durch den Analogmultiplexer 49 multiplexiert und an eine Videoklemmschaltung oder Aktivklemmschaltung 51 gelegt, mit der das Videosignal an eine durch ein Klemmspannungspotentiometer 42 erzeugte Referenzspannung angeklemmt wird. Das angeklemmte Videosignal gelangt an einen Pufferverstärker 55 und dann an einen Blink- A/D-Wandler 57, der eine digitale Momentaufnahme des angeklemmten und verstärkten Videosignals aufnimmt.
  • Referenzspannungen aus D/A-Wandlern 53 und 59, welche von Befehlen abhängen, die auf einem Datenbus 41 von der Steuerregistereinheit der Navigations-CPU mit Speicher 37a vorliegen, kompensieren Bereichsänderungen des Eingangs-Videosignals.
  • Der Video-Schnittstellenbaustein 31 versieht ferner eine Leitung 40 mit einem Videosignal zum Fernsehbildschirm 29, an dem ein Bediener das Fortschreiten der beweglichen Vorrichtung 21 beobachten kann. Dies geschieht, indem ein Einzelbild der digitalen Bildinformation über einen Datenbus 43 aus dem Bildspeicherbaustein 35 genommen und an eine Rastschaltung 61 angelegt wird, um mittels eines Digital/Analog-Wandlers 63 in ein Analogsignal umgewandelt zu werden. Das Analogsignal gelangt an eine Bild-Zusammensetzeinrichtung oder einen Mischer 65, in dem es mit einem Videoüberlagerungssignal gemischt wird, um eine Kopie des vorher gespeicherten Videosignals zu reproduzieren. Ein Pufferverstärker 67 puffert das reproduzierte Videosignal, bevor es an den Fernsehbildschirm 29 gelangt.
  • Der Mischer 65 mischt das umgewandelte Analogsignal mit externen Überlagerungseingaben, die von dem Bildspeicherbaustein 35 und der Navigations-CPU mit Speicher 37a bereitgestellt werden, um eine genaue Wiedergabe des Videobildes zu gewinnen. Außerdem ist im Video-Schnittstellenbaustein 31 ein Synchronisier- und Taktgenerator 69 vorgesehen, der die Pixeltakte, die Horizontalsynchronisationsimpulse und die Vertikalsynchronisationsimpulse liefert, mit denen die richtige Synchronisation der Videosignale sichergestellt wird.
  • Eine Prozessorschnittstelle 71 bildet eine Schnittstelle, die die Ausgabe der Steuerregistereinheit aus der Navigations-CPU mit Speicher 37a an den Video-Schnittstellenbaustein 31 anpaßt. Die Prozessorschnittstelle 71 bildet Zeilenempfänger, so daß die Signale der Steuerregistereinheit richtig empfangen werden, ehe sie an die geeigneten Bausteine innerhalb des Video-Schnittstellenbausteins 31 gelangen.
  • BILDHISTOGRAMMPROZESSOR 33
  • Figur 4 ist ein Blockdiagramm des Bildhistogrammprozessors 33. Das digitale Videosignal gelangt vom Video-Schnittstellenbaustein 31 über einen Datenbus 39 an den Bildhistogrammprozessor 33. Derjenige Anteil des digitalen Videosignals, welcher Synchronisations- und Referenztaktdaten trägt, gelangt an einen Fenstergenerator 73. Der Fenstergenerator 73 erzeugt ein Fenster um die Bilder, die als Abbilder der Lichtquellen oder Signaleinrichtungen 3, 5 und 7 vorhergesagt werden, um den Bereich der Identifikationsprüfung der Objekte, etwa der Lichtquellen oder Signaleinrichtungen 3, 5 und 7, zu verkleinern. Sobald ein Fenster erzeugt wird, gelangt die Ausgabe des Fenstergenerators zusammen mit Daten von einer Video-Schwellenschaltung 920 an einen Reihenprojektionszähler 4, der dazu dient, eine Reihen-Vektoraddition für jede Reihe durchzuführen, wobei die Addition mittels von einer CPU 8 ausgeführter Zeilensprung-Steuersoftware gespeichert und in einem Speicher 6 gespeichert wird. Die Figuren 8 liefern eine detailiertere Anweisung für die mittels der CPU 8 ausgeführten Tätigkeiten. In ähnlicher Weise gelangt die Ausgabe des Fenstergenerators 73 an einen Spaltenadresszähler 2, der die den Rasterspaltenpositionen entsprechenden Speicheradressen (nachstehend als Spaltenadressdaten bezeichnet) erzeugt.
  • Die Spaltenadressdaten werden auf zwei parallele Pfade verzweigt und gelangen an eine erste und an eine zweite Sammlerrechenschaltung, wodurch die Rechengeschwindigkeit der Sammler auf die Hälfte der Eingangs-Pixelrate reduziert wird. Während der aktive Fensterbereich wirkt, werden Speicherstellen, die der Position der Rasterabtastung der ausgewählten Kamera 1S entsprechen, aufgerufen und getrennt als Funktion des verarbeiteten Videosignals von der Video-Schwellenschaltung 920 inkrementiert. Die erste Sammlerrechenschaltung enthält einen Sammler 922, einen Addierer 14 und eine D-Typ- Rastschaltung 16. Die zweite Sammlerrechenschaltung enthält einen Sammler 924, einen Addierer 22 und eine D-Typ-Rastschaltung 24. Die erste und die zweite Sammlerrechenschaltung arbeiten im Tandembetrieb und verarbeiten alle Spaltendaten, die innerhalb des mittels des Fenstergenerators 73 erzeugten Fensters auftreten. Unter der Steuerung der CPU 8 werden eine D-Typ-Rastschaltung 10 und eine D-Typ-Rastschaltung 18 während dieser Betriebsart (der Sammlung von Daten innerhalb des erzeugten Fensters) in einem zurückgesetzten Zustand gehalten, und die Überträge an Anschlüssen der Addierer 14 und 22 werden durch die Tätigkeit von Invertern 12 und 20 auf logisch Ein gehalten. Wenn eine Steuerleitung 921 aufgrund der Tätigkeit der CPU 8 auf Aus gehalten wird, addiert der Sammler die Graustufenwerte jedes Pixels (Bildelements) in den entsprechenden Spalten.
  • Die Bildhistogramme werden mittels der Wirkung der CPU 8 auf einen Multiplexer 923 zustande gebracht, welcher das digitale Videosignal in den Sammleradressbus leitet. Mittels der gleichen Wirkung wie oben erzeugt der Sammler ein Histogramm im Sammlerspeicher.
  • Die in den Sammlern 922 und 924 enthaltene Information wird in der CPU 8 übersetzt und sowohl in ihrem Speicher 6 gespeichert als auch über den Datenbus 41 an die Navigations-CPU mit Speicher 37a übertragen.
  • FENSTERGENERATOR 73
  • Der Fenstergenerator 73 ist in Figur 5 dargestellt, auf die nun Bezug genommen wird, und enthält einen Horizontaladresszähler 77 und einen Vertikaladresszähler 75. Der Horizontaladresszähler 77 und der Vertikaladresszähler 75 empfangen eine Horizontalsynchronisation, eine Vertikalsynchronisation und einen Pixeltakt vom Synchronisier- und Taktgenerator 69, der im Video-Schnittstellenbaustein 31 enthalten ist und der eine Zählung erzeugt, die der Abtastposition der ausgewählten Rasterabtast-Fernsehkamera 1S entspricht. Der Horizontaladresszähler 77 liefert eine Horizontaladresse an einen Horizontalfensterspeicher 88, der einen der Anzahl von Horizontaladressen der Pixel der Mitglieder der mehreren Kameras 1 entsprechenden Speicherumfang hat. Wenn der Horizontaladresszähler 77 seinen Speicherumfang durchläuft, adressiert er alle diejenigen im Horizontalfensterspeicher 88 enthaltenen Speicherplätze, die der Pixellage der Rasterabtastkameras 1 entsprechen. In ähnlicher Weise adressiert der Vertikaladresszähler 75 einen Vertikalfensterspeicher 76, dessen Speicherumfang den Vertikaladressen der Pixel der Mitglieder der mehreren Kameras 1 entspricht. Die CPU 8 stellt über einen Datenbus 925 eine angenäherte Lage jedes zu erzeugenden Fensters ein, indem sie im Horizontalfensterspeicher 88 und im Vertikalfensterspeicher 76 einen logischen Zustand der Start- und Stoppadressen speichert, der J-K-Flip-Flops 79 und 91 umschaltet, um die Fenster an den geforderten Stellen zu erzeugen. Ferner gestattet es diese Technik, so viele Fenster wie nötig zu erzeugen, begrenzt nur durch die Speichergrößen.
  • Die Fenster dienen dazu, die Vektorsumme des Videosignals zu bilden. Ein Fenster wird gemäß der Koordinaten der Position der Rasterabtastung der ausgewählten Fernsehkamera 1S erzeugt, wie mittels der CPU 8 vorgesehen.
  • Die gelieferten Daten enthalten eine Startkoordinate und eine Endkoordinate, und jede Koordinate weist eine horizontale und eine vertikale Position auf. Die horizontale Startposition wird mittels der CPU 8 codiert, indem ein der Startposition entsprechendes Bit im Horizontalfensterspeicher 88 gesetzt wird. Die Koordinate des Stopps oder Endes des Fensters wird codiert, indem ein Bit auf die Adresse gesetzt wird, die der Adresse, die der Stoppposition im Horizontalfensterspeicher 88 entspricht, gerade vorausgeht. Dies erlaubt es, ein zusätzliches Startbit an einer Stelle einzuschließen, die einem genau an das vorangegangene Fenster angrenzenden Fenster entspricht. Die Ausgabe des Horizontalfensterspeichers 88 erscheint in Form zweier Impulse, von denen einer in einer dem Start entsprechenden Abtastposition und einer beim Stopp des Fensters auftritt. Um mehrere Fensterbereiche zu erzeugen, können zusätzliche Start/Stop-Paare gesetzt werden.
  • Das J-K-Flip-Flop 79 wird durch die Tätigkeit der Horizontalsynchronisation in den Zustand Aus zurückgesetzt. Entsprechend der Bildschirmkoordinaten schalten die Start/Stopp- Impulse das J-K-Flip-Flop 79 um.
  • Ein Indexzähler 81 erzeugt einen einzigen Index für jedes Fenster, um die Ergebnisse jeder Vektoraddition in einen getrennten Teil der Sammler 922 und 924 zu leiten.
  • Ähnlich wird die Startkoordinate für die Vertikalposition im Vertikalfensterspeicher 76 gespeichert, und den Start- und Stopppositionen entsprechende Stellen werden codiert, indem ein Bit im Vertikalfensterspeicher 76 gesetzt wird, das den Start- und Stopppositionen entspricht. Eine Kompensation für benachbarte Fenster und eine Vektorsummen-Speicherindexerzeugung ist vorgesehen.
  • Eine Zusammensetzung des Vertikalfensters VWIND und des Horizontalfensters wird mittels der Tätigkeit von Taktsignalen erzeugt, die vom Horizontalfensterspeicher 88 und vom Vertikalfensterspeicher 76 erzeugt werden. Ein J-K-Flip-Flop 83 wird dadurch auf den Zustand Ein gesetzt, daß der horizontale Startimpuls und das Vertikalfenster vorhanden sind und daß ein vorangehendes Fenster nicht vorhanden ist. Die vorangehende Funktion wird mittels der Tätigkeit eines Inverters 87 und einer NAND-Torschaltung 84 ausgeführt. Das J-K-Flip-Flop 83 wird auf den Zustand zurückgesetzt, daß das Horizontalfenster, das Vertikalfenster und das Stoppbit vom Horizontalfensterspeicher 88 vorhanden sind. Dieser Vorgang wird wird um eine Taktperiode verzögert und durch die Gegenwart eines benachbarten Fensters gesperrt, das die Wirkung hat, daß das J- K-Flip-Flop 83 im gesetzten Zustand gehalten wird. Die vorangehende Funktion wird mittels der Tätigkeit eines Flip-Flop 79, das die Gegenwart einer Horizontalfensterperiode registriert, und einer NAND-Torschaltung 90 durchgeführt. Ein Flip-Flop 89 führt die Verzögerung um einen Takt durch. Eine AND-Torschaltung 85 verhindert die Tätigkeit bei Gegenwart eines überlagerten benachbarten Fensters, das durch die Gegenwart eines zusätzlichen Startimpulses repräsentiert wird.
  • Das Signal des Vertikalfensters oder das VWIND-Signal wird mittels der Tätigkeit des Vertikaladresszählers 75 und des Vertikalfensterspeichers 76 erzeugt, wie oben beschrieben. Die Start/Stoppimpulse gelangen mittels der Tätigkeit einer AND-Torschaltung 92, die den Vertikalfenster-Startpuls mit einem HCLR-Signal kombiniert, an ein J-K-Flip-Flop 91. Das HCLR-Signal ist ein eine Taktperiode breiter Zurücksetzimpuls, der einmal pro Zeile auftritt und der vom oben beschriebenen, im Synchronisier- und Taktgenerator 69 erzeugten Horizontalsynchronisations (HORZ SYNC) -Signal erzeugt wird. Dies hat die Wirkung, daß das J-K-Flip-Flop 91 auf Ein geschaltet wird. Die Ausgabe des J-K-Flip-Flop 91 wird zusammen mit einem Vertikalstartsignal VRAM und dem Horizontaltaktsignal HCLR angewandt. Logische Torschaltungen 93, 96 und 95 steuern die Tätigkeit eines J-K-Flip-Flop 97, der die Vertikalfensterperiode bestimmt. Die Tätigkeit eines J-K-Flip-Flop 98, einer D-Typ-Rastschaltung 99 und einer NAND-Torschaltung 94 erzeugen einen letzten aktiven Zeilenmerker, der zum Resynchronisieren der Logik des Indexzählers 81 dient.
  • BILDSPEICHERBAUSTEIN 35
  • Der Videobus 39 überträgt das Videosignal von dem Video- Schnittstellenbaustein 31 an den Bildspeicherbaustein 35, der von einer Kombination CPU und Speicher 46 gesteuert wird. Die Kombination CPU und Speicher 46 liefert die CRU-Steuerung an die innerhalb des Bildspeicherbausteins 35 enthaltene Logik und bildet außerdem eine Schnittstelle zur Navigations-CPU mit Speicher 37a der Figur 1.
  • Unter Bezugnahme auf Figur 6 wählt ein Multiplexer 30 entweder die Ausgabe eines Videobildpuffer-RAM 40 oder die Eingabe auf dem Videobus 39, um sie wie vorgeschrieben mittels der Kombination CPU und Speicher 46 zu verarbeiten. Das ausgewählte digitalisierte Videosignal gelangt an eine Binärlogikkarte 34, die ein RAM (Direktzugriffsspeicher) ist, der dazu codiert ist, die im digitalisierten Videosignal codierte Information von einer Grauskala in eine schwarz-weiß codierte Information umzuwandeln. Die von der Binärlogikkarte ausgeführte Tätigkeit ist üblicherweise ein Schwellenvergleich. Der Vergleich ist derart, daß, wenn der in dem digitalisierten Videosignal codierte Lichtstärkepegel über einer Schwelle liegt, ein erster logischer Zustand erreicht wird und daß, wenn er unter der Schwelle liegt, ein zweiter logischer Zustand als Ausgabe der Binärlogikkarte 34 erreicht wird.
  • Das am Ausgang der Binärlogikkarte 34 vorliegende schwarz und weiß digitalisierte Videosignal gelangt an einen 3x3-Rechenbaustein 36, der eine 3x3-Matrix von logischen Zuständen vergleicht. Dieser 3x3-Rechenbaustein verwendet eine digitale Filtertechnik, welche Rauschen entfernt, indem er eine 3x3- Matrix von im digitalisierten Videosignal codierten Pixelinformationen vergleicht. Wenn das mittlere Pixel im einen Zustand ist und seine benachbarten Pixel in anderen Zuständen sind, wird der Zustand des mittleren Pixels geändert, so daß er mit dem benachbarten Zustand der umgebenden Pixel übereinstimmt. Die Ausgabe des 3x3-Rechenbausteins 36 gelangt an einen Videobildpuffer 1140, der ein Direktzugriffsspeicher ist, und wird unter der Steuerung der Kombination CPU und Speicher 46 und einer Adresszähler-Steuerlogik 44 gespeichert.
  • Falls von dem Video-Schnittstellenbaustein 31 eine Darstellung über den Fernsehbildschirm 29 ausgewählt ist, ermöglicht ein Multiplexer 1142 die Darstellung als Ausgabe des Videobildpuffers 1140, der verarbeiteten Daten von dem 3x3-Rechenbaustein 36 oder abwechselnd der auf dem Videobus 39 vorliegenden Videodaten. Eine Austastungsverzögerungseinrichtung 26 kompensiert innerhalb des Bildspeicherbausteins 35 erlittene Verarbeitungsverzögerungen.
  • Theorie der Arbeitsweise
  • Die Theorie der Arbeitsweise läßt sich unter Bezugnahme auf die Figuren 7 in Verbindung mit den Figuren 1 bis 6 verstehen. Figur 7a ist eine grafische Darstellung des Analogsignals von der ausgewählten Fernsehkamera 1S, das nach dem Multiplexieren durch den Analogmultiplexer 49 der Figur 3 an die Aktivklemmschaltung 51 gelangt. Wie an einer früheren Stelle der Beschreibung beschrieben, sind die Fernsehkameras 1 Rasterabtast-Kameras, bei denen Abtastungen über das Blickfeld durchgeführt werden, um ein Bild 100 zu erhalten, das aus mehreren Abtastungen 101 zusammengesetzt ist. Im Falle einer sich vom Hintergrund abhebenden Lichtintensität wird im Bild 100 ein Abbild 103 abgebildet. Mehrfach-Abbildungen wie in einer Abtastung 105 werden zusätzlich abgebildet. Jede erscheinende Abtastung wird multiplexiert und gelangt an die Aktivklemmschaltung 51, deren Ausgangssignal in Figur 7B dargestellt ist, bei der die Abtastung 105 zwei Zacken 107 und 109 aufweist, die die Lichtstärke repräsentieren.
  • Das Ausgangssignal der Aktivklemmschaltung 51 ist in Figur 7C dargestellt, bei der die Wirkung einer zeitlich sprunghaften Digitalisierung durch eine Wellenform 111 dargestellt ist. Die Wellenform 111 ist eine Darstellung der zeitlich sprunghaften Digitalisierung der Wellenform 105, die das Eingangssignal für die Aktivklemmschaltung 51 ist. Jeder diskrete Abschnitt der dargestellten Ausführungsform bezieht sich auf eine Spannung, die vom Klemmspannungspotentiometer 42 geliefert wird. Die Wirkung der zeitlich sprunghaften Digitalisierung besteht in einer Synchronisation mit dem Pixeltakt. Die Ausgabe der Aktivklemmschaltung 51 gelangt über den Pufferverstärker 55 an den Blink-A/D-Wandler 57, der beim Erscheinen jedes Pixeltakts das abgetastete Videosignal in ein Digitalsignal umsetzt, von dem ein Beispiel durch eine Wellenform 130 der Figur 7C dargestellt ist. Die von den D/A-Wandlern 53 und 59 erzeugten zeitlich sprunghaften Digitalisierungsspannungen dienen dazu, den Hintergrund des Bildes zu setzen, das quantisiert wird.
  • In Figur 7D ist das Ausgangssignal des Synchronisier- und Taktgenerators 69 dargestellt, das ein Feldindexsignal 113 enthält und das mittels eines Abrufs von der Navigations-CPU mit Speicher 37a über die Steuerregistereinheit an den Synchronisier- und Taktgenerator erzeugt wird, um ein einzelnes, für die Navigations-CPU mit Speicher 37a wichtiges Bild anzuzeigen oder abzutasten. Außerdem erzeugt der Synchronisier- und Taktgenerator 69 einen Vertikalsynchronisationsimpuls, der durch eine Wellenform 115 wiedergegeben ist, welche die Vertikalsynchronisation für ein Bild ist, sowie einen Vertikalsynchronisationsimpuls, der mittels einer Wellenform 117 gebildet und wiedergegeben ist, welche die Horizontalsynchronisationsimpulse zeigt, die für den Aufbau eines Bildes wie das in Figur 7A gezeigte erforderlich sind.
  • Figur 7D veranschaulicht ferner die Anzahl von Leitern auf dem Datenbus der Figur 2. Bei der Gruppe von Schaltungen, die den Video-Schnittstellenbaustein 31, den Bildhistogrammprozessor 33 und den Bildspeicherbaustein 35 enthält, besteht die Leitidee von einem verallgemeinerten Videobus, nämlich dem digitalen Videobus 39. Das wichtigste Merkmal des Videobus 39 besteht darin, daß ein Pixeladressbus nicht erforderlich ist. Die durch die Wellenform 115 dargestellte Vertikalsynchronisation und die durch die Wellenform 117 dargestellte Horizontalsynchronisation synchronisieren alle drei Bausteine. Das Feldindexsignal 113 und eine Fenster-Wellenform 119 können ebenfalls als Pixel-Gültigkeitsadresse verwendet werden, wie des weiteren dargestellt. Bei dieser Konfiguration kann der Videobus 39 größenvermindert sein und ohne Änderungen der Hardware mit einer großen Vielfalt möglicher Bilderzeuger, Videokameras, umgehen. Bei dieser verminderten Anzahl von Anschlüssen können Bausteine leicht so gestaltet sein, daß sie digitale Mehrfacheingaben auswählen. Der Fenstergenerator 73 der Figur 4 erzeugt Fenster, wie sie durch die Wellenform 119 und insbesondere durch Ausgangsimpulse 121 und 123 dargestellt sind. Der Pixeltakt wird mittels des Synchronisier- und Taktgenerators 69 erzeugt und durch eine Wellenform 125 repräsentiert, und die Videodaten werden durch eine Wellenform 127 repräsentiert, wobei das Ausgangssignal des Blink-A/D-Wandlers 57 durch ein Diagramm 129 dargestellt ist.
  • Wenn das ausgewählte Bezugsbild digitalisiert ist, wird der Bereich innerhalb des mittels des Fenstergenerators 73 erzeugten Fensters mittels des Bildhistogrammprozessors 33 verarbeitet. Das sich ergebende Abbild (Diagramm 131 der Figur 7E) wird ferner im Videobildpuffer 1140 gespeichert. Die nach der Verarbeitung die Signaleinrichtungen repräsentierenden Abbilder werden als Störungen etwa an einer Stelle 134 identifiziert. Ein Geisterbild, das sich einer Reflexion oder einer anderen Erscheinung, etwa einem Quantisierfehler, zuschreiben läßt, ist bei 136 dargestellt.
  • Die horizontale und die vertikale Vektoraddition werden an den im Diagramm 130 gezeigten digitalen Daten ausgeführt, um eine horizontale Vektoraddition, die durch eine Wellenform 133 repräsentiert wird, und eine vertikale Vektoraddition, die durch eine Wellenform 135 repräsentiert wird, zu erhalten. Die Vektoraddition wird mit den Sammlerrechenschaltungen ausgeführt, die Teil des in Figur 4 dargestellten und dort abgehandelten Bildhistogrammprozessors 33 sind.
  • Die Vektoradditionen werden mittels der Tätigkeit der CPU 8 mit dem Speicher 6 einer Schwellwertbedingung unterworfen und mittels der Tätigkeit der Schaltungen innerhalb des Bildspeicherbausteins 35 projiziert. Die resultierenden Wellenformen sind in Figur 7F dargestellt, in der eine Wellenform 137 eine normalisierte Projektion der Wellenform 133 darstellt und eine Wellenform 139 die normalisierte Projektion der Wellenform 135 darstellt. Die Wellenformen werden kombiniert, und Koinzidenzbereiche wie in Bereichen 141 und 143 oder den schraffierten Bereichen repräsentieren Gebiete mit hoher Wahrscheinlichkeit dafür, daß sie ein Abbild einer Signaleinrichtung enthalten. Auf der Grundlage der Intensitäten der Bereiche aller Abbilder innerhalb eines Anwärterfachs kann eine Entscheidung über die genaue Position der Signaleinrichtungen der beweglichen Vorrichtung 21 getroffen werden. Somit erhält man aus der in Figur 7E dargestellten Information die Lage der beweglichen Vorrichtung 21.
  • Figur 8 ist ein Flußdiagramm der Schrittfolgen, die in der Navigations-CPU mit Speicher 37a, der CPU 8 mit Speicher 6 des Bildhistogrammprozessors 33 und der innerhalb des Bildspeicherbausteins 35 enthaltenen Kombination CPU und Speicher 46 programmiert sind.
  • LEITSTRAHLQUELLEN-SCHWERPUNKTBILDUNG UND TRANSFORMATION
  • Bei einer Initialisierung (Figur 8A) befindet sich das Steuer- und Navigationssystem 2A in einem Startzustand 200. Es wird eine Vorhersage getroffen, um in einem Block 201 eine der Fernsehkameras 1A bis 1N zur Abtastung auszuwählen. Nach der Auswahl der ausgewählten Fernsehkamera 1S gelangt das Bild in einem Block 203 über ein Videosignal von der ausgewählten Fernsehkamera 1S an den Video-Schnittstellenbaustein 31. In einem Block 205 wird der Fenstergenerator 73 von der CPU 8 mit einer Fensterinformation der Koordinaten der erwarteten Lage der Anwärterobjekte versehen. In einem Block 207 werden Fenster um die Koordinaten der erwarteten Lage der beweglichen Vorrichtung 21 aufgebaut. Der Bildspeicherbaustein 35 wird in einem Block 209 dazu verwendet, falsche Anwärter und zu große Objekte abzulegen und die Schwerpunkte der Anwärter, die in Figur 7E in Bereichen 134 und 136 dargestellt sind, zu berechnen und in der Navigations-CPU mit Speicher 37a zu speichern. Die Schwerpunktkoordinaten werden in einem Block 210 in einen Leitebene/Bodenflächen-Raum transformiert.
  • ERFASSUNG VON LEITSTRAHLQUELLEN-ANZAHL UND SEHNENLÄNGEN
  • Nach der Transformation der Schwerpunktkoordinaten auf den Bodenfächen-Raum erfolgt eine Zählung der Objektschwerpunkte, um zu bestimmen, wie viele Objekte sichtbar sind. Dies geschieht über einen Anknüpfpunkt P2 in einem Entscheidungsblock 211 der Figur 8B. In einem Block 212 wird das Abbild beiseite gelegt, falls kein oder nur ein Schwerpunkt festgestellt wird, und es wird über einen Anknüpfpunkt P1 zum Startzustand oder Startpunkt 200 zurückgekehrt. Falls zwei Abbilder sichtbar sind, kann dies bedeuten, daß eine bewegliche Vorrichtung 21 anwesend ist und daß eine der Signaleinrichtungen 3, 5 oder 7 durch einen Gegenstand wie den Roboterarm 25 verdeckt wird, und das dritte Abbild muß rekonstruiert werden. Dies geschieht in einem Block 213 und wird im Zusammenhang mit den Figuren 14 bis 19 erörtert. Falls vier oder mehr Bilder vorhanden sind, muß eine Entscheidung darüber getroffen werden, ob es ein Spiegelbild gibt oder nicht, und wenn es ein Spiegelbild gibt, wird das Spiegelbild beiseite gelegt und nur das Urbild der beweglichen Vorrichtung 21 verwendet. Dies geschieht in einem Block 214 und wird später im Zusammenhang mit den Figuren 11, 12 und 13 erörtert.
  • In den Situationen, in denen erwartungsgemäß drei Abbilder sichtbar sind, die verdeckte Bildkoordinate gewonnen oder das Spiegelbild ausgefiltert ist, werden dann die drei Sehnenlängen zwischen den Bildern in einem Block 215 gewonnen. In einem Entscheidungsblock 217 wird eine Entscheidung getroffen, mit der sichergestellt wird, daß sich die Sehnenlängen in den richtigen Proportionen befinden. Falls sich die Längen nicht in richtigen Proportionen befinden, kehrt das Steuer- und Navigationssystem 2A an den Anknüpfpunkt P1 und zum Startpunkt 200 zurück, um den Vorgang zu wiederholen. Falls die Sehnenlängen in richtigen Proportionen sind, erfolgt in einem Block 219 eine Ordnung im Uhrzeigersinn der Sehnen von der Hypothenuse her. Die Sehnen werden dann in einem Block 221 in der Reihenfolge abnehmender Länge angeordnet. Falls diese Anordnung im Block 221 nicht vorgenommen werden kann, kehrt das Steuer- und Navigationssystem 2a über den Anknüpfpunkt P1 an den Startpunkt 200 zurück.
  • Ein Anknüpfpunkt P3 verbindet Figur 8B mit Figur 8C, auf die nun Bezug genommen wird.
  • ERFASSUNG VON POSITION UND ORIENTIERUNG DER BEWEGLICHEN VORRICHTUNG
  • In einem Block 223 werden die Winkel der Sehnen berechnet, und es wird in einem Entscheidungsblock 225 geprüft, ob einer der Sehnenwinkel 90 Grad beträgt oder ob irgendein anderer vorbestimmter Sehnenwinkel vorliegt. Falls die Sehnenwinkel vorschriftsmäßig sind, wird in einem Block 227 der Umfang oder die Summe der Sehnen berechnet. Falls nicht, kehrt das Steuer- und Navigationssystem 2A über den Anknüpfpunkt P1 zum Startpunkt 200 zurück. Falls der Umfang die richtige Länge hat, wird in einem Block 229 die Bodenflächenkoordinate des Mittelpunkts der Signaleinrichtungs-Hypothenuse berechnet. Falls der Umfang nicht die erwartete Länge hat, kehrt das Steuer- und Navigationssystem 2A über den Anknüpfpunkt P1 zum Startpunkt 200 zurück.
  • Die Orientierung der beweglichen Vorrichtung 21 wird in einem Block 231 aus Bogen- und Anschlußsehnenwinkeln berechnet. Die Bogensehne wird um 90 Grad gedreht, und der Durchschnitt der Anschlußsehne und der gedrehten Bogensehne wird als entscheidende Orientierung der beweglichen Vorrichtung verwendet. In einem Block 232 erfolgt eine Übertragung der Daten der Orientierung und der Lagefestlegung an die bewegliche Vorrichtung 21.
  • Damit die Orientierungs- und Lagebestimmung der beweglichen Vorrichtung 21 stattfinden kann, muß wenigstens ein Winkel einen bestimmten, von den anderen beiden Winkeln verschiedenen Wert haben, wie sich aus der Erörterung des Flußdiagramms ergibt. Im Falle der Ausführungsform der Figur 1 ist der Winkel 90 Grad, und mit dem gegebenen rechten Winkel kann die Orientierung der beweglichen Vorrichtung 21 und ihr Verhältnis zur Lage eines Rasters, das zu einer identifizierbaren Kamera gehört, die eine einzelne aus der Gruppe der Kameras 1A bis 1N ist, und infolgedessen seine Position auf einer Fläche gewonnen werden. Sodann wird der Vorgang über einen Anknüpfpunkt P4 wiederholt, um eine Abfolge von Positionen zu erhalten, und die bewegliche Vorrichtung 21 wird durch ihr internes Leitsystem und die aufeinanderfolgende Aktualisierung ihrer Position über den Boden einer Fabrikanlage, eines Warenhauses oder irgendeines anderen ihr zugewiesenen Einsatzortes geführt.
  • Anzumerken ist, daß das Winkelverhältnis der Leitstrahlquellen zueinander ein Abbild eines unsymetrischen Dreiecks liefern soll und daß das optimale Dreieck eines mit Winkeln von 30, 60 und 90 Grad ist.
  • Figur 9 veranschaulicht die Schritte der Signaleinrichtungs- Identifizierung und -Transformation bildlich, indem sie mehrere Kameras 1A und 1B zeigt. Jede Kamera hat ein Sichtfeld von einer Höhe aus, die durch Abstandslinien 151 und 153 dargestellt ist. Das Sichtfeld überdeckt eine Ebene, die für die Kamera 1A als Ebene 155 und für die Kamera 1B als Ebene 157 dargestellt ist. Diese Ebenen werden so berechnet, daß sie auf der Höhe von Signaleinrichtungen 159 und 161 liegen. Die Signaleinrichtungsebene liegt jedoch auf einer anderen Höhe als die Bodenfläche 163. Nachdem die Signaleinrichtungsebene bei 155 oder 157 berechnet ist, wird daher die Ebene auf den Bodenflächenraum (Block 210 der Figur 8A) transformiert, so daß sie mit der Bodenfläche 163 übereinstimmt.
  • SPIEGELBILDAUSSONDERUNG
  • Bei der Erörterung der Figuren 8 und insbesondere der Figur 8B wurde ein Schritt oder Block 214 genannt, der mittels des in Figur 1 gezeigten Steuer- und Navigationssystems 2A ausgeführt wird und der darin besteht, Spiegelbilder beiseite zu legen, wenn mehr als die erwartete Anzahl von empfangenen und verarbeiteten Abbildern festgestellt wurde. Dieser Schritt ist notwendig, wenn die bewegliche Vorrichtung 21 in Umgebungen betrieben wird, wie sie gewöhnlich in einer Fertigungseinrichtung auftreten. Eine reflektierende Oberfläche, etwa ein Fenster 400 (Figur 10), spiegelt das Bild der beweglichen Vorrichtung 21 auf die Kamera 1, so daß die Kamera 1 das in Figur 11 dargestellte Bild, also zwei bewegliche Vorrichtungen 21 und 21R sieht. Die Steuer- und Navigationsschaltung 15 ermittelt, welches Bild das Urbild und welches das Spiegelbild ist, und legt die zum Spiegelbild gehörende Information beiseite. Zur Ausführung dieser Technik der Spiegelbildaussonderung sind die Signaleinrichtungen 3, 5 und 7 in der in Figur 10 gezeigten Ausführungsform in Gestalt eines unsymetrischen Dreiecks angeordnet, das, wie durch Abstandslinien 401 angegeben, einen rechten Winkel zwischen einer von der Signaleinrichtung 3 zur Signaleinrichtung 5 gezogenen Linie und einer zwischen den Signaleinrichtungen 5 und 7 gezogenen Linie aufweist. Die drei Signaleinrichtungen bilden ein rechtshändiges, asymetrisches rechtwinkliges Dreieck, und unter Kenntnis dieser Information wird die Steuer- und Navigationsschaltung 15 das Spiegelbild 21R nicht beachten.
  • Das angewandte Verfahren ist in Figur 12 dargestellt und beginnt an einem Startpunkt im Block 214, der gleichzeitig der Anschlußpunkt zur Figur 8B ist. Sämtliche Schwerpunkte der Abbilder werden in einem Block 402 gewonnen. Die Abstände von je einem Abbildschwerpunkt zu einer als Lot gefällten Mittelpunktkoordinate werden in einem Block 403 gewonnen, und in einem Block 405 erfolgt eine Sortierung der Sehnen vom Lotpunkt zu den Schwerpunkten in der Reihenfolge ihrer Länge. In einem Block 407 werden die Abbilder festgestellt, die den kürzesten Mittelliniensehnen entsprechen, welche ein Dreieck richtiger Form und Größe bilden, und die Koordinaten der drei ausgewählten Signaleinrichtungen werden in einem Block 409 gewonnen. In einem Endblock 412 kehrt der Mikroprozessor zur Ausführung des nächsten Schritts zurück, der im Schritt 214 der Figur 8B erfolgt.
  • VERFAHREN ZUR FESTSTELLUNG VERDECKTER LEITSTRAHLQUELLEN
  • In Figur 13 ist eine Fertigungsanordnung gezeigt, bei der zwei bewegliche Vorrichtungen 21A und 21B unter dem Sichtfeld einer ausgewählten Fernsehkamera 1S arbeiten. Jede bewegliche Vorrichtung 21, sei sie 21A oder 21B, weist drei Navigations- Signaleinrichtungen 3, 5 und 7 und einen Roboterarm 25 auf. In beiden, in den Figuren 13 und 14 gezeigten Fällen ist eine der drei Signaleinrichtungen jeder beweglichen Vorrichtung gegenüber dem Sichtfeld der ausgewählten Fernsehkamera 15 verdeckt. Dieser Zustand tritt ein, wenn die Sicht von einer der Signaleinrichtungen zu der ausgewählten Fernsehkamera 1S verdeckt ist, und die Steuer- und Navigationsschaltung 15 wird im Block 213 der Figur 8B das Verfahren für verdeckte Leitstrahlguellen durchführen.
  • Die durch das Verfahren für verdeckte Leitstrahlen gelösten Probleme sind in den Figuren 14 bis 17 veranschaulicht, die im Zusammenhang mit Figur 13 anzuwenden sind. Die Sicht auf die Leitstrahlquellen, wie sie sich der ausgewählten Fernsehkamera 1S bietet, ist als Sichtfeld 416 gezeigt. Figur 17 ist eine Detailansicht, bei der zwei Leitstrahlquellen sichtbar und eine dritte Leitstrahlquelle verdeckt ist. Sowohl in der Figur 14 als auch in der Figur 17 ist der Lotpunkt mit P markiert. Ein Abbild 414 zeigt, wie das Verdecken der Leitstrahlquelle 3A zwei verschiedene Möglichkeiten eröffnet: sie kann entweder da sein, wo die Leitstrahlquelle 3A dargestellt ist, oder da, wo die Leitstrahlquelle 3AR dargestellt ist. Ein Abbild 415 veranschaulicht den Fall, daß eine der beiden anderen Leitstrahlquellen gegenüber der Sicht der ausgewählten Fernsehkamera 1S verdeckt ist. Im Falle des Abbildes 415 verdeckt ein Roboterarm 25B eine Leitstrahlquelle 5B. Das Steuer- und Navigationssystem 2A muß die genaue Lage der Leitstrahlquelle bestimmen, wobei die Wahl zwischen der Lage der Leitstrahlguelle 5B und der Lage der Leitstrahlquelle 5BR besteht.
  • Die Lösung des vorstehend erörterten Problems läßt sich unter Bezugnahme auf die Geometrie des von der ausgewählten Fernsehkamera 1S gesehenen Abbildes verstehen. Dies ist in Figur 15 dargestellt, in der es ein Dreieck mit drei Seiten s1, s2 und s3 gibt, wobei die Seite s1 die Sehne zwischen den Signaleinrichtungen 3 und 5 ist, die Seite s2 die die Signaleinrichtungen 3 und 7 verbindende Sehne ist und die Seite s3 die Signaleinrichtungen 5 und 7 miteinander verbindet. Das Dreieck liegt in einer Ebene 417, die die Leitstrahlquellen 3, 5 und 7 enthält.
  • VERFAHREN ZUR FESTSTELLUNG VERDECKTER ABBILDER
  • Die Figuren 16 sind Flußdiagramme von Verfahren zur Feststellung verdeckter Abbilder wie den in Figur 13 gezeigten. Falls, wie in Figur 17 dargestellt, die Abbilder zweier Signaleinrichtungen als A und B festgestellt werden, beginnt die Steuer- und Navigationsschaltung 15 in einem Block 420. Die Koordinaten der Abbilder A und B werden in einem Block 421 an die Steuer- und Navigationsschaltung 15 gegeben. Der Abstand zwischen den Abbildern A und B wird in einem Block 423 gewonnen. In der Steuer- und Navigationsschaltung 15 sind die Längen der Sehnen s1, s2 und s3 gespeichert. Im Block 424 vergleicht die Steuer- und Navigationsschaltung 15 den Abstand zwischen den Abbildern A und B mit der Länge jeder Sehne s1, s2 und s3 und wählt diejenige Sehne aus, deren Länge genau der Länge des Abstandes zwischen den Bildern A und B entspricht, und versieht die ausgewählte Sehne mit einem Bezugszeichen D, wie in Figur 17 dargestellt. Wie in Figur 16A in einem Block 425 angegeben, werden die nicht ausgewählten Sehnen mit Bezugszeichen E und F versehen. Ein erster Kreis AE mit Radius E wird um A geschlagen, und ein zweiter Kreis BE mit gleichem Radius wird um B geschlagen. Ein dritter Kreis AF mit einem Radius der Länge F wird um A und eine vierter Kreis BF mit gleichem Radius um B geschlagen.
  • Der nächste Schritt besteht darin, die Koordinaten von Anwärterpunkten C1 und C2 an den Schnittpunkten der Kreise AE und BF zu gewinnen. Dieser Schritt erfolgt in einem Block 427. In einem Block 431 werden die Sehnen AB, AC1 und BC1 im Uhrzeigersinn angeordnet. In einem Block 433 wird beginnend mit der Hypothenuse geprüft, ob die Länge der Sehnen zunimmt oder abnimmt. Falls die Anordnung der Sehnen im Uhrzeigersinn eine Anordnung hervorbringt, die mit der Hypothenuse beginnt und der Länge nach abnimmt, geht das Steuer- und Navigationssystem 2A zu einem Block 439 über, und die Koordinate C1 wird der erste Hauptanwärter und wird mit X1 bezeichnet. Andernfalls geht das Steuer- und Navigationssystem 2A zu einem Block 437 über, in dem C2 als erster Hauptanwärter X1 bezeichnet wird.
  • In einem Block 441 der Figur 16B werden die Koordinaten der Schnittpunkte der Kreise AF und BE gewonnen und jeweils mit C3 und C4 bezeichnet. Die Längen der Sehnen (X1, C3) und (X1, C4) werden in einem Block 443 gewonnen. In einem Block 445 wird geprüft, ob die Sehne (X1,C3) kürzer als die Sehne (X1,C4) ist. Falls (X1,C3) kürzer als (X1,C4) ist, wird C4 in einem Block 447 als zweiter Hauptanwärter X2 ausgewählt; falls nicht, wird C3 in einem Block 449 als zweiter Hauptanwärter X2 ausgewählt.
  • Die Abstände zwischen den Koordinaten des ersten und des zweiten Hauptanwärters X1 und X2 und dem Lotpunkt P werden in einem Block 451 berechnet. Falls die Länge der Sehne PX1 kleiner als die der Sehne von PX2 ist, was in einem Block 453 geprüft wird, ist X2 der Punkt der dritten Signaleinrichtung. Andernfalls ist X1 der Punkt der dritten Signaleinrichtung, wie in einem Block 457 angegeben. Die Ergebnisse der Feststellung liegen in einem Block 459 vor, um das Verfahren für versteckte Signaleinrichtungen zu vervollständigen, und das Steuer- und Navigationssystem 2A kehrt zum Block 215 der Figur 8B zurück.
  • DIE BEWEGLICHE VORRICHTUNG 21
  • Figur 18 ist ein Blockdiagramm der erfindungsgemäßen beweglichen Vorrichtung 21, wie sie in Figur 1 gezeigt ist. Ein mit Funk oder anders, etwa mit Infrarotdioden arbeitendes drahtloses Kommunikationssystem 19 empfängt Positionsdaten und Befehle von der Navigations-CPU mit Speicher 37a und überträgt sie an das Herz der beweglichen Vorrichtung 21, eine CPU mit Speicher 52. Die CPU mit Speicher 52 überträgt Anweisungen an einen Roboterarm oder an eine Material handhabende Vorrichtung, etwa den in Figur 1 dargestellten Roboterarm 25, und versieht außerdem die Navigations-Signaleinrichtungen mit Befehlen wie "Einschalten", "Ausschalten", "Blinken" oder anderen Tätigkeiten. Zusätzlich versieht die CPU mit Speicher 52 mehrere Radaufbauten 58 mit Lenk-, Start-, Stopp- und Drehanweisungen. Jeder Radaufbau enthält einen ersten D/A (Digital nach Analog)-Wandler 60, einen Lenk-Servoverstärker 62, einen Lenkmotor 64, der auf Befehle vom Lenk-Servoverstärker 62 anspricht, einen zweiten D/A-Wandler 72, einen Antriebs-Servoverstärker 70 und einen Antriebsmotor 68, der das Rad 23 zum Drehen bringt. Sowohl der Antriebs-Servoverstärker 70 als auch der Lenk-Servoverstärker 62 sind in Figur 20 als Servoverstärker 371 dargestellt. Sowohl der erste D/A- Wandler 60 als auch der zweite D/A-Wandler 72 sind in Figur 20 als D/A-Wandler 372 dargestellt. Sowohl der Lenkmotor 64 als auch der Antriebsmotor 68 sind in Figur 20 als Motor 376 dargestellt. Eine Batterie 48 versorgt den Aufbau der beweglichen Vorrichtung 21 mit Strom.
  • PROGRAMMABLAUF DER KOMBINATION CPU MIT SPEICHER 52
  • Figur 19 ist ein Flußdiagramm der Folge von Schritten, die innerhalb der CPU mit Speicher 52 der beweglichen Vorrichtung 21 ausgeführt werden. Sie beginnt mit einer Startposition 300, wobei die bewegliche Vorrichtung 21 in einem Block 301 über das mit Funk oder anders arbeitende drahtlose Kommunikationssystem 19 einen Befehl "Gehe zum Ziel" aufnimmt und in einem Block 303 der Empfang dieses Befehls geprüft wird. Das Navigationssystem stellt der beweglichen Vorrichtung 21 in einem Block 305 zuerst die Lageinformation zur Verfügung, und dann findet in einem Block 307 ein Vergleich statt, um zu prüfen, ob die gegenwärtige Position gleich der Zielposition ist. Falls dies der Fall ist, veranlaßt die CPU mit Speicher 52 die bewegliche Vorrichtung 21, anzuhalten und zu warten, bis ein neuer Befehl "Gehe zum Ziel" empfangen wird. Falls die Positionen nicht übereinstimmen, werden die Richtungen und Abstände zur Zielposition in einem Block 309 geprüft, und in einem Block 310 erfolgt eine Aktualisierung der Lenkwinkel und der Geschwindigkeit in Richtung auf die Zielposition, wodurch die bewegliche Vorrichtung 21 in Richtung auf die Zielposition gelenkt wird.
  • LEIT- UND SERVOSTEUERUNGSSYSTEM DER BEWEGLICHEN VORRICHTUNG
  • In Figur 20 ist ein vereinfachter Schaltplan einer Servosteuerschleife 320 gezeigt, von der es innerhalb der beweglichen Vorrichtung 21 für jeden Radaufbau 58 eine gibt und die zur Steuerung der beweglichen Vorrichtung 21 dient. Die Servosteuerschleife 320 enthält die CPU mit Speicher 52. Die CPU mit Speicher 52 versieht den Servoverstärker 371 über den D/A-Wandler 372 mit Geschwindigkeits- und Richtungsdaten in Form digitaler Signale. Der D/A-Wandler 372 wandelt die von der CPU mit Speicher 52 bereitgestellten digitalen Signale in eine Analogspannung oder Befehlsspannung um, die an den Servoverstärker 371 gelangt, Der Servoverstärker 371 bildet einen Puffer für den D/A-Wandler 372 und verstärkt die Befehls-Spannung. Die verstärkte Befehlsspannung gelangt dann an einen Motor 376 und bewirkt, daß der Motor 376 eine Achse 374 dreht, die eine Last 23 wie ein Rad oder ein Lenkrad veranlaßt, sich um eine solche Gradzahl zu drehen, wie sie durch die vom Servoverstärker 371 an den Motor 376 gelegte verstärkte Befehlsspannung repräsentiert wird. Ein Achscodierer 333 codiert die Gradzahl der Drehungen und liefert diese Information an eine Codierschnittstelle 370, die das Ausgangssignal des Achscodierers in Signale umwandelt, die für die CPU mit Speicher 52 verwertbar sind.
  • LEITSYSTEM BEI ANGENOMMENEM AUSFALL
  • Die bewegliche Vorrichtung 21 soll frei umherfahren können, so daß die Lenkwinkel und die Antriebsgeschwindigkeiten aller Räder aufeinander abgestimmt werden müssen. Figur 21, die in Verbindung mit den Figuren 18 bis 20 zu benutzen ist, zeigt die Ausführung eines Leitsystems für den angenommenen oder unterstellten Ausfall der beweglichen Vorrichtung 21. Die CPU mit Speicher 52 empfängt über das drahtlose Kommunikationssystem 19 von der Steuer- und Navigationsschaltung 15 eine befohlene Bahn und führt in einem Block 331 einen Positionsvergleich durch. Das Ergebnis dieses Vergleichs dient dazu, einen Radpositionsfehler auszudrücken, der von der CPU mit Speicher 52 dazu verwendet wird, in einem Block 328 Bahnsteuerungs- und Radkoordinations-Befehle aufzustellen, die in der Form digitaler, in Verbindung mit Figur 20 beschriebener Signale an die Radaufbauten 58 gegeben werden. Die digitalen Signale gelangen an die Servosteuerung im Block 327, die Be-323 erzeugt, welcher den D/A-Wandler 372, den Servoverstärker 371 und den Motor 376 enthält. Nach der Umwandlung in analoge Signale mittels des D/A-Wandlers 372 gelangt die analoge Befehlsspannung zur Verstärkung an den Servoverstärker 371. Die Servosteuerung 327 empfängt über einen Winkelmeßwertaufnehmer 325 einen Winkel und verwendet diese Information zur Einstellung der Amplitude der an den Servoverstärker mit -mechanik 323 gelegten Befehlsspannung. Außerdem gelangt der vom Winkelmeßwertaufnehmer 325 an jedem Motor 376 gemessene Winkel an eine Positionsschätzeinrichtung 329. Der Winkelmeßwertaufnehmer 325 enthält den Achscodierer 333, ein Leiterbündel 375 und die Codierschnittstelle 370. Die Positionsschätzeinrichtung 329 empfängt ferner eine Gesamtheit von 6 Positionsdaten von 6 Winkelmeßwertaufnehmern 325 und ist für eine bewegliche Vorrichtung 21 mit 3 Rädern bestimmt, bei der jeder Radaufbau 58 sowohl zu Antriebs- als auch Lenktätigkeiten verwendet wird. Die Positionsschätzeinrichtung liefert die Position der beweglichen Vorrichtung 21 an den Positionsvergleicher 331, der Befehle zur Positionsanpassung der beweglichen Vorrichtung 21 erzeugt, bis die befohlene Position erreicht ist. Die bewegliche Vorrichtung 21 empfängt periodisch eine gemessene Position von der Steuer- und Navigationsschaltung 15 und berichtigt die Ausfallannahme-Position dementsprechend. Die Bewegungsgleichung für alle Räder stellt Gleichung 1 dar; Gleichung 2 liefert die Abstimmung der Räder untereinander und Gleichung 3 liefert die Koppelrechnung. Alle Gleichungen finden sich in der Auflistung von Gleichungen (Figuren 62).
  • Die Figuren 22 sind Flußdiagramme der Programmausführung für die Führung der beweglichen Vorrichtung 21 der Figur 1, bei der die Steuer- und Navigationsschaltung 15 Befehlsanweisungen an die bewegliche Vorrichtung 21 übermittelt, um sie längs eines vorbestimmten, befohlenen Weges zu verfahren. Außerdem verschafft die Steuer- und Navigationsschaltung 15 der beweglichen Vorrichtung 21 periodisch Positionsdaten, welche die bewegliche Vorrichtung 21 dazu verwendet, Fehler zu berichtigen, die in Navigationsbefehlen vorhanden sind, die in einem von der beweglichen Vorrichtung 21 ausgeführten Ausfallannahme-Navigations-Verfahren enthalten sind.
  • Die CPU mit Speicher 52 führt innerhalb des CPU-Abschnitts ein Ausfallannahme-Programm aus, das im Speicher der CPU mit Speicher 52 gespeichert ist und das durch das in den Figuren 22 enthaltene Flußdiagramm dargestellt ist. In einem Block 350 stellt das Steuer- und Navigationssystem 2A die wirkliche Position der beweglichen Vorrichtung 21 auf und überträgt sie über das mit Funk oder anders arbeitende drahtlose Kommunikationssystem 19 an die bewegliche Vorrichtung 21. Die bewegliche Vorrichtung 21 befindet sich, wie in einem Block 351 angegeben, in einer Anhalteposition, in der sie auf den Empfang der wirklichen Positionsdaten von dem Steuer- und Navigationssystem 2A wartet, das in der Ausführungsform der Figur 1 eher als Meßwertaufnehmer denn als Steuereinrichtung verwendet wird. In einem Block 353 beginnt sich das Fahrzeug, die bewegliche Vorrichtung 21, in einer befohlenen, von der Steuer- und Navigationsschaltung 15 gelieferten Richtung zu bewegen, und speichert extrapolierte Positionen und eine nach jedem Zeitabschnitt markierte Fahrzeug-Referenzzeit. In einem Block 355 empfängt das Fahrzeug, die bewegliche Vorrichtung 21, die wirklichen Positionsdaten zusammen mit der Meßwertaufnehmer-Referenzzeitmarke von der Steuer- und Navigationsschaltung 15, und die CPU mit Speicher 52 sucht nach gespeicherten extrapolierten Daten, die am genauesten zwischen die Daten der wirklichen Position und die extrapolierte radiale Fortbewegung von der Anhalteposition im Block 351 zur gegenwärtigen Position im Block 357 passen.
  • Die CPU mit Speicher 52 bestimmt dann die Versetzung zwischen der Zeitmarke der passendsten Position aus dem Block 357 und den Meßwertaufnehmerdaten der wirklichen Position in einem Block 359. In einem Block 361 schreitet die bewegliche Vorrichtung 21 in der befohlenen Richtung fort, wobei sie fortlaufend die extrapolierte Position speichert und nach jedem Zeitabschnitt die Referenzzeitmarke erzeugt.
  • Sobald die bewegliche Vorrichtung 21 die Daten der wirklichen Position mit der Zeitmarke von der Steuer- und Navigationsschaltung 15 empfängt, findet ein Vergleich statt, um zu prüfen, ob eine vorgewählte zeitliche Grenze zwischen Datenpunkten überschritten ist. Falls dem so ist, wird eine Abzweigung 363 von einem Block 365 genommen, und in einem Block 367 ergibt sich ein Fehler der zeitlichen Synchronisation zwischen der Steuer- und Navigationsschaltung 15 und der beweglichen Vorrichtung 21. Daher muß die bewegliche Vorrichtung 21 anhalten und warten und zum Block 350 zurückkehren, bis sie ihre wirkliche Position empfängt. Falls die zeitliche Grenze zwischen den Datenpunkten nicht überschritten ist, schreitet die CPU mit Speicher 52 zu einem Block 369 fort, in dem die CPU mit Speicher 52 eine extrapolierte Position zu der Zeit bestimmt, in der die wirkliche Position unter Verwendung der aus dem Block 359 bekannten Versetzung und der im Speicherteil der CPU mit Speicher 52 gespeicherten extrapolierten Position gemessen wurde. In einem Block 371 werden Abweichungen der bei der Messung der wirklichen Position extrapolierten Position von der gegenwärtig extrapolierten Position abgezogen.
  • Falls die Abweichungen größer als erwartet sind, etwa 16 Zentimeter Radialabstand oder 5 Grad, wird im Block 367 angenommen, daß ein Synchronisationszeitfehler vorliegt, und die CPU mit Speicher 52 befiehlt der beweglichen Vorrichtung 21, anzuhalten. Falls nicht, wird einer Linie 373 gefolgt und die bewegliche Vorrichtung 21 schreitet in der befohlenen Richtung fort.
  • Bei der Erörterung des Unterprogramms für verdeckte Bilder, das in Verbindung mit den Figuren 13 bis l7 erörtert wurde, wurde gezeigt, daß es möglich ist, die Position und die Orientierung der beweglichen Vorrichtung 21 zu kennen, wenn eines der Abbilder verdeckt ist. In reflektierenden Umgebungen oder bei einem Zusammentreffen gewisser Sichtbedingungen in der Umgebung kann das Unterprogramm für verdeckte Bilder jedoch ungenau sein. Deswegen wird die bewegliche Vorrichtung 21 einen von der Steuer- und Navigationsschaltung 15 der Figur 1 erhaltenen fehlerhaften Befehl übergehen. Diese Fähigkeit, sich über Befehle hinwegzusetzen, ist in Figur 22C veranschaulicht, auf die nun Bezug genommen wird.
  • Während der Ausführung der Blöcke 351, 355 und 365 der Figuren 22A und 22B verläßt die CPU mit Speicher 52 einen Startblock 352 und wartet auf Positionsdaten von der Steuer- und Navigationsschaltung 15. Die Positionsdaten enthalten einen Hinweis darauf, ob es ein verdecktes Bild gibt. Diese Daten werden in einem Block 356 geprüft. Falls es keinen Hinweis auf ein verdecktes Bild gibt, wird das Programm über einen Block 364 verlassen. Falls es einen Hinweis auf ein verdecktes Bild gibt, vergleichen Blöcke 358 und 360 den Winkel von der Steuer- und Navigationsschaltung 15 mit dem Ausfallannahme-Winkel. Der vom Ausfallannahme-Leitsystem bestimmte Winkel wird der beherschende Winkel, falls die beiden Winkel um 180 Grad auseinander liegen, was auf einen Fehler im Programm für verdeckte Bilder hinweist, und in einem Block 362 werden die Daten von der Steuer- und Navigationsschaltung 15 angepaßt, und zwar auf der Grundlage der Lichtgeometrie und -Information, die in den Positionsdaten, die angeben, welches Abbild verdeckt ist, enthalten und deshalb falsch verarbeitet sind. Dieses Programm der Figur 22C wird jedesmal ausgeführt, wenn Positionsdaten von der Steuer- und Navigationsschaltung 15 empfangen werden.
  • GESCHWINDIGKEITSFILTER FÜR EIN SERVOSYSTEM
  • Die CPU mit Speicher 52 der Figur 20 führt ein Servofilterprogramm aus, das im Flußdiagramm der Figur 23, auf die nun Bezug genommen wird, dargestellt ist. In Figur 23 bringt die CPU mit Speicher 52 in einem Block 376 das Geschwindigkeitsfilter ins Spiel, und die mittels des Achscodierers 333 bestimmte Motorposition oder Achsposition wird in einem Block 377 gelesen. Die ungefilterte Geschwindigkeit wird in einem Block 374 aufgrund der zwischen dem Zeitpunkt eines Lesevorgangs und der zwischen Lesevorgängen liegenden Zeit vom Achscodierer gemessenen Drehung bestimmt. Die CPU mit Speicher 52 arbeitet wie die meisten Mikroprozessoren auf einer zyklischen Zeitbasis, so daß die periodischen Lesevorgänge alle n Zyklen ausgeführt werden können, wobei n eine positive ganze Zahl zwischen 1 und unendlich ist. In einem Block 375 wird die gefilterte Geschwindigkeit gewonnen, indem die zuvor gefilterte Geschwindigkeit mal einer Konstante K1 und die ungefilterte Geschwindigkeit mal einer Konstante K2 zusammengezählt werden. Die Summe ist gleich der gefilterten Geschwindigkeit.
  • K1 und K2 unterliegen der Bedingung, daß ihre Summe gleich 1 sein muß, und sie werden experimentell bestimmt, indem der Wert des Verhältnisses K1/K2 aufgrund der dynamischen Wirkung des Servosystems eingestellt wird, besonders bei niedrigen oder langsamen Geschwindigkeiten, bei denen sich die Daten vom Achscodierer 333 sehr langsam ändern. Beispielsweise kann sich die Achse in der Ausführungsform der Figur 20 in jeder von der CPU mit Speicher 52 durchgeführten Abtastperiode um einem viertel Schritt drehen. Die Geschwindigkeit beträgt ohne Filterung 0 Grad je Abtastung für drei Abtastungen und 1 Grad je Abtastung für die vierte Abtastung. Dies hat also zur Folge, daß das Servosystem in jeder vierten Abtastung vorstößt und somit möglicherweise irgendein empfindliches, von der beweglichen Vorrichtung 21 gehandhabtes Material beschädigt. Die Wahl der Konstanten K1 und K2 und die Verwendung des Geschwindigkeitsfilters schalten dieses Problem aus, indem die Geschwindigkeit über alle Abtastungen ausgeglichen wird.
  • Vor einer Rückkehr zu Block 376 in Figur 23 ist zu beachten, daß die Eingangs- und Ausgangssignale des digitalen Servosystems quantisiert sind. Im Beispiel der Figur 20 weist der schrittweise arbeitende Achscodierer 333 eine Quantisierung von +/- einer Zähleinheit auf. Es gibt daher einen minimalen und einen maximalen Wert für die zulässige Geschwindigkeit. Diese Information ist durch die Auflösung des Achscodierers gegeben. Daher wird die gefilterte Geschwindigkeit in einem Block 379 durch die minimale und die maximale Geschwindigkeit auf der Grundlage der Quantisierung des Achscodierers 333 begrenzt.
  • VERFAHREN ZUR AUSWAHL DER KONSTANTEN K1 UND K2
  • Setze das Verhältnis von K1 zu K2 gleich einer Konstanten, etwa 1 und erhöhe den Wert, falls das Servosystem zuckt, oder vermindere den Wert des Verhältnisses, falls das Servosystem instabil ist und oszilliert.
  • BREMSSYSTEM DER VORRICHTUNG
  • Figur 24, auf die nun Bezug genommen wird, zeigt ein vereinfachtes Schema eines Lenk-Servosteuerungssystems, in das die Ausführungsformen der Erfindung eingebaut sind. Eine Stromquelle 381 liefert Strom an eine Stromsteuerung 383, die den an den Servoverstärker 62 und den Lenkmotor 64 gelangenden Strom steuert. Eine Schaltung mit bezugspotentialfreiem Kondensator 389 legt den Strom vom Servoverstärker 62 über Relaiskontakte 407 bis 405 und 411 bis 413 an den Lenkmotor 64. Außerdem gelangt Strom von der Stromquelle über Relaiskontakte 393 und 403 und Relaiskontakte 401 bis 397 an einen Kondensator 391, der das Herz der Schaltung ist. Im Falle eines Stromausfalls wird eine Spule 385 aberregt, was dazu führt, daß der Kontakt 411 den Kontakt 409 und der Kontakt 405 den Kontakt 399 berührt, und in ähnlicher Weise dazu, daß der Kontakt 397 den Kontakt 415 und der Kontakt 393 den Kontakt 395 berührt, wodurch die im Kondensator 391 gespeicherte Ladung an den Lenkmotor 64 gelangt und die Lenkung der beweglichen Vorrichtung 21 entkoordiniert. Ferner kann ein Bremsbefehl an eine Spule 387 gelangen, was zur Folge hat, daß die Spule 385 aberregt wird und die im Kondensator 391 gespeicherte Spannung wiederum an den Lenkmotor 64 gelangt. Das vorstehend erörterte Anlegen der Ladung im Kondensator 391 an den Lenkmotor 64 ist in Figur 25 veranschaulicht.
  • Figur 26 zeigt eine vierrädrige Ausführungsform der beweglichen Vorrichtung 21, bei der Räder 23A und B zum Lenken der beweglichen Vorrichtung 21 verwendet werden, indem die Winkel 417 und 418, die die Räder mit der beweglichen Vorrichtung 21 einschließen, verändert werden. Man beachte, daß im Lenkbetrieb der durch eine Abstandslinie 417 repräsentierte Winkel etwa gleich dem durch eine Abstandslinie 418 repräsentierten Winkel ist. In der entkoordinierten Betriebsweise oder im Bremsbetrieb werden die Räder 23A und 23B in eine Richtung gebracht, bei welcher die Bewegung der beweglichen Vorrichtung 21 gehemmt wird. Infolgedessen ist der durch eine Abstandslinie 419 repräsentierte Winkel zu dem durch eine Abstandslinie 420 repräsentierten Winkel entkoordiniert und beziehungslos. Im Idealfall sollen die Winkel gleich groß sein, aber in einander entgegengesetzte Richtungen bezogen auf Mittellinien 425 und 426 durch die Achsen von Rädern 23A und 23C beziehungsweise 23B und 23D weisen.
  • Figur 27 ist eine andere Ausführungsform der Erfindung, bei der es nur drei Räder gibt und deren Steuerung mittels Rädern 23C und 23D ausgeführt wird. Abstandslinien 421 und 422 repräsentieren die koordinierte Lenkung der steuerbaren beweglichen Vorrichtung 21, und in Figur 27B ist der Bremsbetrieb dargestellt, in dem die durch Abstandslinien 423 und 424 repräsentierten Winkel derart sind, daß sie der Vorwärtsbewegung der steuerbaren beweglichen Vorrichtung 21 Widerstand leisten.
  • EIN DRAHTLOSES KOMMUNIKATIONSSYSTEM
  • In Figur 28, auf die nun Bezug genommen wird, ist ein Blockdiagramm des erf indungsgemäßen Kommunikations- und Navigationssystems gezeigt. Wie im Falle der Figur 1 ist ein Terminal 17 vorgesehen, so daß ein Bediener mit der Steuer- und Navigationsschaltung 15 kommunizieren kann, welche wie an früherer Stelle erörtert die Befehlsschaltungen enthält, die für die Erzeugung von Befehlssignalen zur Übermittlung von Befehlen an die bewegliche Vorrichtung 21 notwendig sind. Die Befehlssignale werden über einen feststehenden Fernmeldebaustein 19A übertragen, der mittels Blinklicht Daten an die bewegliche Vorrichtung 21 überträgt, insbesondere an einen mit der beweglichen Vorrichtung 21 vereinigten Fernmelde- und Navigationsbaustein 19B, der in jeder Signaleinrichtung 3, 5 und 7 der Figur 1 enthalten ist.
  • Der mit der beweglichen Vorrichtung 21 vereinigte Fernmeldeund Navigationsbaustein 19B setzt das Blinklicht in digitale Daten um, die an eine Modemsteuerung 19C gelangen, welche die Daten für die Eingabe in die CPU mit Speicher 52 demoduliert. Die Navigationsschaltung arbeitet dann so wie an früherer Stelle in Verbindung mit den Figuren 18 bis 20 erörtert. Bei der Ausführungsform der Figur 28 werden außerdem die Daten zur Übertragung an den Bediener über den mit der beweglichen Vorrichtung 21 vereinigten Fernmelde- und Navigationsbaustein 19B und den feststehenden Fernmeldebaustein 19A moduliert, wobei die Steuer- und Navigationsschaltung 15 eine nicht gezeigte Modemsteuerung enthält, die aber mit der als 19C dargestellten Schaltung zur Datendemodulation übereinstimmt.
  • Figur 29, auf die nun Bezug genommen wird, ist ein Diagramm der Wellenformen der Übertragung zwischen der beweglichen Vorrichtung 21 und der Steuer- und Navigationsschaltung 15 über den feststehenden Fernmeldebaustein 19A, der in der gezeigten Ausführungsform nahe der Fernsehkamera 1 angebracht ist. Das Navigations-Signaleinrichtungs-Steuersystem ist so ausgeführt, daß es wie in einer Wellenform 433 dargestellt an Blinkstellen 434 und 435 blinkt. Die Daten von der Modemsteuerung 19C sind durch eine Wellenform 440 dargestellt, bei der frequenzmodulierte Daten stoßweise an Stellen 436, 437 und 438 auftreten. Die tatsächliche Datenübertragung ist durch eine Wellenform 439 dargestellt und kann als Wellenform 440 in Verbindung mit der Wellenform 433, mit denen sich die Wellenform 439 ergibt, die die frequenzmodulierten Daten, die über den mit der beweglichen Vorrichtung 21 vereinigten Fernmelde- und Navigationsbaustein 19B übertragen werden, in Bereichen 442, 443 und 445 enthält, optisch empfangen werden. Zusätzlich liefert eine Wellenform 441 in Form einer Darstellung den Empfang von Daten, wie sie von dem feststehenden Fernmeldebaustein 19 A zur beweglichen Vorrichtung 21 übertragen werden, bei der das durch die Wellenform 433 dargestellte Navigations-Signaleinrichtungs-Steuerungssystem nicht benötigt wird und daher nicht Teil der von der Basisstation übertragenen Daten ist.
  • NAVIGATIONSBAUSTEINE
  • Figur 30 ist eine Draufsicht auf den mit der beweglichen Vorrichtung 21 vereinigten Fernmelde- und Navigationsbaustein 19B, der oben auf jeder der Signaleinrichtungen 3, 5 und 7 der Figur 1 angebracht ist. Mehrere Leuchtdioden 447 sind parabolförmig angeordnet, um eine Bündelung des Lichts zu erzielen, welches in der gezeigten Ausführungsform in Infrarotbereich liegt, um Kommunikations- und Lageinformationen auf eine Empfangsstation zu übertragen. Außerdem ist am Rand des Fernmelde- und Navigationsbausteins 19B eine Licht empfangende Diode 449 angebracht.
  • Figur 31 ist eine Schnittansicht des Fernmelde- und Navigationsbausteins 19B von Schnittlinien 31 in Figur 30 aus und zeigt die Parabolform 450 der Anordnung der Leuchtdioden 447, die dazu verwendet werden, sowohl die Daten und Signaleinrichtungspositionen von der beweglichen Vorrichtung als auch nur die die Daten von der Basisstation, die jeweils als Wellenformen 439 und 441 dargestellt sind, zu übertragen.
  • VORHERSAGE-ZIELVERFOLGUNGS-KAMERAS FÜR FREI UMHERFAHRENDE ROBOTER.
  • Figur 32 stellt eine Draufsicht eines Fabrikbodens oder einer Fertigungsumgebung dar, auf der vier Kamerafelder abgebildet sind, nämlich ein erstes Kamerafeld 451, ein zweites Kamerafeld 453, ein drittes Kamerafeld 352 und ein viertes Kamerafeld 454, welche für die darauf blickenden Kameras stehen, die aus den mehreren Kameras 1 der Figur 1 ausgewählt sind. Eine gestrichelte Linie 461 stellt einen möglichen Weg der beweglichen Vorrichtung 21 dar, der im ersten Kamerafeld 451 beginnt und im dritten Kamerafeld 452 endet. Solange die bewegliche Vorrichtung 21 im Kamerafeld 1 bleibt, wird die Navigationsverbindung durch die darüberliegende Kamera aufrechterhalten, deren Blickwinkel mit dem ersten Kamerafeld 451 übereinstimmt. Für eine gewisse Zeit, nachdem die bewegliche Vorrichtung diesen Blickwinkel oder das erste Kamerafeld 451 verlassen hat, ist die bewegliche Vorrichtung 21 für keine der Kameras sichtbar. Dieser blinde Bereich ist als Bereich 463 abgebildet. Etwas später gelangt die bewegliche Vorrichtung 21 bei der Ausführungsform der Figur 32 in das dritte Kamerafeld 452, und es wird eine normale Navigationssteuerung eingerichtet, wie im Zusammenhang mit den Figuren 18 bis 23 erörtert.
  • Für den Zeitabschnitt, in dem die Navigationsverbindung im blinden Bereich 463 unterbrochen ist, besteht allerdings eine Unsicherheit über die genaue Lage der beweglichen Vorrichtung 21 und über die Richtung, in der sie orientiert ist. In Figur 32 vollzieht die bewegliche Vorrichtung 21 eine plötzliche Wende, wie durch eine gestrichelte Linie 461 angegeben; sie kann in Wirklichkeit im Verlauf dieser Zeit aber auch mehrere Wenden vollziehen, wie durch eine gestrichelte Linie 456 in Figur 33 angegeben.
  • Wenn die bewegliche Vorrichtung 21 ihre Position und ihre Orientierung den Sichtfeldern 451, 452, 453 oder 454 zuwendet, wird diese Information im Speicherteil der Navigations- CPU mit Speicher 37a der Figur 2 gewonnen und gespeichert. Wenn sich die steuerbare bewegliche Vorrichtung aus dem Sichtfeld herausbewegt, entsteht ein Unsicherheitsradius um die gespeicherte Position. Dieser Radius ist proportional zu und wenigstens gleich der Entfernung, die die bewegliche Vorrichtung 21 erreichen kann, wenn sie sich mit ihrer größtmöglichen Geschwindigkeit fortbewegt. Der von dem mit diesem Unsicherheitsradius geschlagenen, wie bei 455 dargestellten Kreis umschlossene Bereich wird mit dem Sichtfeld jeder der wirksam gemachten Kameras verglichen, deren Sichtfeld dem dritten Kamerafeld 452 und dem zweiten Kamerafeld 453 entspricht. Falls sich die beiden Felder überlappen, ist es durchaus möglich, daß die bewegliche Vorrichtung 21 in das Kamerafeld etwa in einem Bereich 465 eingetreten ist. Wenn dies der Fall ist, wählt der Video-Schnittstellenbaustein 31 das Eingangssignal von dieser Kamera aus und untersucht die Bildinformation auf der Suche nach dem Abbild der beweglichen Vorrichtung 21.
  • In der Situation, daß es keine Überlappung zwischen den Kamerafeldern gibt, etwa im Bereich 463, umgibt der Unsicherheitsbereich die letzte bekannte Position der beweglichen Vorrichtung 21. Der Unsicherheitsradius wird mit der Zeit regelmäßig schrittweise vergrößert, damit er die Entkommen- Entfernung der beweglichen Vorrichtung 21 stets richtig repräsentiert, bis der Radius auf den maximalen Durchmesser der Fertigungsanlage angewachsen ist. Die Nutzbarkeit der Abtastung vermindert sich dabei auf ein Minimum, da dann keine Kamera von der Betrachtung ausgenommen werden kann. Bei kurzen Ausfällen der Sichtbarkeit, die bei einer typischen Fabrikationsanlage die ganz überwiegende Mehrheit der Fälle bilden, führt jedoch die in Figur 34 dargestellte Vorgehensweise zu bedeutenden Zeitersparnissen.
  • Wenn die Navigations-CPU mit Speicher 37a die Darstellung der Figuren 32 und 33 verwirklicht, bedient sie sich der im Flußdiagramm der Figur 34 gezeigten Vorgehensweisen, wonach in einer Startposition 457 der Positionsalgorithmus ausgeführt und in einem Entscheidungsblock 458 bestimmt wird, ob die Position der beweglichen Vorrichtung 21 zuvor bestimmt wurde oder nicht. Falls nicht, wird zu einem Anknüpfpunkt P3 übergegangen. Falls sie bestimmt wurde, wird die erste Kamera ausgewählt, indem die Kameranummer "n" in einem Block 467 gleich 1 gesetzt wird. Sodann wird in einem Block 469 geprüft, ob das Sichtfeld der ausgewählten Kamera den blinden Bereich oder den "Unsicherheitsbereich" überlappt. Falls sie dies nicht tut, erfolgt ein Sprung zu einem Block 475. Falls jedoch das Sichtfeld der ausgewählten Kamera überlappt, fährt das Positions-Unterprogramm in einem Block 471 fort. Das Sichtfeld der ausgewählten Kamera wird nach der beweglichen Vorrichtung 21 abgesucht, und dann wird in einem Block 473a geprüft, ob die bewegliche Vorrichtung 21 geortet ist oder nicht. Falls die bewegliche Vorrichtung 21 im Sichtfeld der ausgewählten Kamera geortet wurde, geht das Positions-Unterprogramm zu einem Anknüpfpunkt P2 über. Falls nicht, wird in einem Entscheidungsblock 475 geprüft, ob sämtliche Kameras abgesucht wurden oder nicht. Im ungünstigen Fall erhöht die Navigations-CPU mit Speicher 37a bei 477 "n" auf das nächste Kamerafeld, und ein Anknüpfpunkt P1 führt zurück zum Eingang des Blocks 469.
  • Falls sämtliche der mehreren Kameras 1 abgesucht wurden, werden die Unsicherheitskreise in einem Block 479 vergrößert, und die bewegliche Vorrichtung 21 wird in einem Block 480 als unsichtbar bezeichnet, wonach die Routine über einen Anknüpfpunkt P4 zum Ende des Unterprogramms fortschreitet.
  • Ein Anknüpfpunkt P3, der der "Nein"-Zweig der im Block 458 getroffenen Entscheidung ist, führt bei der Suche nach der beweglichen Vorrichtung 21 in einem Block 481 zu einer einmaligen geradlinigen Abtastung jedes Kamerafeldes der mehreren Kameras 1. Sodann wird in einem Block 483 gefragt "wurde die bewegliche Vorrichtung 21 oder der Roboter geortet?". Falls die Antwort nein ist, führt ein Anknüpfpunkt P5 zurück zum Block 480, in dem die bewegliche Vorrichtung 21 als unsichtbar bezeichnet wird. Falls die bewegliche Vorrichtung 21 entweder im Block 483 oder im Block 473 geortet ist, führt der Weg zu einem Block 485, der die bewegliche Vorrichtung 21 als sichtbar bezeichnet, und in einem Block 487 wird die Unsicherheitszone 455 auf Null verkleinert. Das geeignete Kamerafeld und die Position der beweglichen Vorrichtung 21 werden in einem Entscheidungsblock 489 festgestellt, und das Unterprogramm endet an einem Block 491.
  • NETZWERK ZUR STEUERUNG EINES SYSTEMS BEWEGLICHER ROBOTER
  • In Figur 1 ist ein Bewegliche-Vorrichtungs-System zur Steuerung einer einzelnen beweglichen Vorrichtung 21 gezeigt. Bei vielen praktischen Anwendungen gibt es jedoch mehr als eine bewegliche Vorrichtung 21 in einer einzelnen Fertigungsanlagen-Umgebung.
  • Figur 35 veranschaulicht den Betrieb eines Computernetzwerks zur Steuerung eines Bewegliche-Vorrichtungs-Systems, unter dem mehr als eine bewegliche Vorrichtung 21 arbeiten. In Figur 35 ist das Terminal 17 an die Steuer- und Navigationsschaltung 15 angeschlossen.
  • Insbesondere ist das Terminal 17 an eine Bedienerschnittstelle 501 angeschlossen, die mit einem Kommunikationsprozessor 517 Daten austauscht. Außerdem stehen mit dem Kommunikationsprozessor eine Fertigungsanlagensteuerung 503, eine Organisationssteuerung 505 und eine Navigationssteuerung 507 in Verbindung. Da die beweglichen Vorrichtungen 21 batteriebetrieben sind, müssen sie sich regelmäßig bei einer Ladestation zur Wiederaufladung melden. Hierfür kann es innerhalb der Host-CPU mit Speicher 37 eine Ladestationssteuerung 515 geben. Daten vom Kommunikationsprozessor 517 stehen mit Treibern in Verbindung, die innerhalb jeder beweglichen Vorrichtung 21 und insbesondere in der CPU mit Speicher 52 gespeichert sind. Demnach gibt einen ersten Bewegliche-Vorrichtungs-Treiber 509, einen zweiten Bewegliche-Vorrichtungs- Treiber 511 und einen n-ten Bewegliche-Vorrichtungs-Treiber 513.
  • Figur 36 ist ein Flußdiagramm für die Bedienerschnittstelle 501, bei dem die Bedienerschnittstelle in einer Startposition 1515 wartet und fortlaufend nach irgendwelchen bei 1517 empfangenen Botschaften sucht. Falls eine Botschaft empfangen wurde, wird die Botschaft in einem Block 519 verarbeitet und der Systemstatus aktualisiert. Falls im Block 1517 keine Botschaften vom Kommunikationsprozessor empfangen wurden, wird in einem Block 521 geprüft, ob irgendwelche Tastaturbefehle empfangen wurden. Falls keine Tastaturbotschaften empfangen wurden, erfolgt in einem Block 523 eine Aktualisierung der Sichtanzeige auf dem Terminal 17. Wenn eine Tastatureingabe empfangen wurde, wird diese Information in einem Block 525 verarbeitet, und die Bedienerschnittstellen-Steuerung geht zum Block 523 über, um die Sichtanzeige auf dem Terminal 17 zu aktualisieren. In einem Block 527 kehrt die Bedienerschnittstellen-Steuerung zur Startposition 1515 zurück, wo sie überwacht, ob irgendwelche neuen Statusbotschaften am Block 1517 eintreffen.
  • Figur 37 zeigt die zur Ausführung des in der Navigations-CPU mit Speicher 37a gespeicherten Kommunikationsprozessor-Programms erforderliche Logik. In einem Startblock 529 ist der Kommunikationsprozessor im Ruhezustand und nimmt in einem Block 531 eine Botschaft auf. Falls die Botschaft mehrere Bestimmungsorte hat, werden diese in einem Block 533 bestimmt, und der Kommunikationsprozessor 517 geht zu einem Block 535 über, um die Botschaften an alle angeforderten Ausgangswarteschlangen zu übermitteln, oder die Botschaft wird in einem Block 537 in der entsprechenden Warteschlange abgelegt, falls die Botschaft nur einen einzigen Bestimmungsort hat, und dann werden die abgehenden Botschaften in einem Block 539 übermittelt. Die Kommunikationslogik kehrt dann zur Startposition im Block 529 zurück, um eine Botschaft aufzunehmen.
  • Die Navigationslogik 507 (die logische Struktur der Navigationssteuerung 507) wird gemäß Figur 38 ausgeführt. Der beweglichen Vorrichtung 21 dient eine interne Ausfallannahme- Schaltung zur Durchführung ihrer Navigation. Allerdings wird sie in regelmäßigen Zeitabständen mit ihrer wirklichen Position versorgt, so daß irgendwelche Abweichungen zwischen der Ausfallannahme-Position und der gegenwärtigen Position nachträglich ausgeglichen werden können. Hierzu wird das Verfahren der Figur 38 durchgeführt, bei dem die Navigationssteuerung 507 in einem Block 543 in der Startposition ist und in einem Block 545 das Suchprogramm zum Erkennen und Orten einer beweglichen Vorrichtung ausführt. Sobald die bewegliche Vorrichtung 21 geortet ist, wird ihre Position in einem Block 547 an die bewegliche Vorrichtung 21 übermittelt, und die Navigationssteuerung 507 kehrt an die Startposition im Block 543 zurück.
  • Figur 39 ist ein Blockdiagramm der Logik der Fertigungsanlagensteuerung, wobei der Fertigungsanlagensteuerung-Computer 503 in einem Block 551 im Ruhezustand ist. Ein Entscheidungsblock 553 prüft, ob irgendwelche Materialeingänge eingetroffen sind. Falls ja, wird in einem Block 555 ein Befehl erzeugt und an die Organisationssteuerung 505 übermittelt, das Material an eine erste Bearbeitungsstation zu transportieren, und eine Arbeitsanweisung erzeugt. Die Fertigungsanlagensteuerung überwacht in einem Block 557, ob eine bewegliche Vorrichtung 21 an einer bezeichneten Station angekommen ist, und zwar ohne Rücksicht darauf, ob ein Eintreffen von Material im Block 553 erwartet wurde oder ob die Arbeitsanweisung im Block 555 verarbeitet wurde. Falls im Entscheidungsblock 557 festgestellt wurde, daß eine bewegliche Vorrichtung 21 an einer Station angekommen ist, wird der Station, an der die bewegliche Vorrichtung 21 angekommen ist, in einem Block 559 das Signal gegeben, die Bearbeitung aufzunehmen. Falls nicht, oder falls die Bearbeitung im Block 559 angefangen hat, prüft die Fertigungsanlagensteuerung in einem Block 561, ob irgendwelche Stationen angezeigt haben, ihre Bearbeitung sei beendet. Falls die Bearbeitung beendet ist, wird der Organisationssteuerung 505 befohlen, teilweise fertigbearbeitetes Material an die nächst folgende Bearbeitungsstation oder vollständig fertigbearbeitetes Material zum Auslieferplatz zu befördern, wobei dann die Arbeitsanweisung in einem Block 563 ausgeführt ist und die Fertigungsanlagensteuerung in einem Block 565 zur Startposition 551 zurückkehrt. Falls die Bearbeitung noch nicht beendet ist, nimmt die Steuerung den "Nein"-Zweig vom Block 565 zum Block 565.
  • Figur 40 liefert ein Flußdiagramm für die Organisationssteuerung 505, bei dem die Organisationssteuerung 505 in einer Startposition 567 beginnt und in einem Entscheidungsblock 569 nach irgendwelchen neu empfangenen Arbeitsanweisungen sucht. Falls keine neue Arbeitsanweisung empfangen wurde, prüft die Organisationssteuerung 505 in einem Block 571, ob irgendwelche Roboter oder beweglichen Vorrichtungen 21 verfügbar sind. Falls die neue Arbeitsanweisung in der Warteschlange ist, wird die Arbeitsanweisung in einem Block 573 aufgenommen. Die Organisationssteuerung 505 ordnet dann in einem Block 575 zusätzliche Arbeitsanweisungen derjenigen beweglichen Vorrichtung 21 zu, welche die Arbeit am besten verrichten kann, und die Arbeitspläne werden in einem Block 576 an die bewegliche Vorrichtung 21 gesandt, wonach die Organisationssteuerung 505 in einem Block 577 zur Startposition zurückkehrt. Wie durch einen Pfad 579 angezeigt, fährt die Organisationssteuerung 505 damit fort, Arbeitsanweisungen oder die Verfügbarkeit der beweglichen Vorrichtungen 21 zu überwachen.
  • Figur 41 ist die Logik der Ladestationssteuerung 515, wobei sich die Ladestationssteuerung 515 in einem Block 579 in einer Startposition befindet und in einem Bock 581 die zur Zeit wiederaufgeladenen Batterien überwacht. In einem Entscheidungsblock 583 prüft sie, ob irgendwelche neuen Befehle empfangen wurden, und falls dies der Fall ist, verarbeitet sie in einem Block 585 einen neuen Befehl, die Batterien zu entfernen, einzusetzen, wiederaufzuladen usw., und kehrt in einem Block 587 zur Startposition zurück.
  • STEUERUNG FÜR EIN SYSTEM BEWEGLICHER ROBOTER
  • Wie im Zusammenhang mit Figur 35 erörtert, plant die Organisationssteuerung 505 die Bewegung mehrerer beweglicher Vorrichtungen 509, 511-513. Das in Figur 35 dargestellte System muß in sich abgestimmt sein, um Tätigkeiten und zurückgelegte Wege möglichst klein zu machen.
  • Die Organisationssteuerung 505 ist mittels der in Figur 1 gezeigten Vorrichtung verwirklicht und umfaßt ein Datenverarbeitungsprogramm, das in der Host-CPU mit Speicher 37 enthalten ist. In Figur 42A gibt es sechs mögliche Aufforderungen, die die Organisationssteuerung 505 in die Tat umsetzen kann, wenn sie dazu angewiesen ist. Diese Aufforderungen betreffen eine Anlaufphase (Block 601), einen Materialtransport (Block 603), einen Batteriewechsel (Block 605), ein Parken (Block 607), einen Stellungswechsel (Block 609) und ein Abziehen vom System (Block 611). Die Organisationssteuerung 505 kreist auf der Suche nach Aufforderungen, die in die Tat umzusetzen sind, fortwährend von einem Startblock 600 aus durch die sechs Blöcke.
  • Beginnend mit der Ruhe- oder Startposition 600 startet die Organisationssteuerung 505 einen Vorgang, bei dem die Organisationssteuerung 505 im ersten Entscheidungsblock 601 prüft, ob eine Aufforderung zur Durchführung einer Anlaufphase bei einer beweglichen Vorrichtung 21, etwa einem Roboter, vorliegt. Falls eine Aufforderung oder eine "Ja"-Antwort vorliegt, wird ein Unterprogramm A in Figur 42B aufgerufen, und falls keine Aufforderung für die Durchführung einer Anlaufphase bei einer beweglichen Vorrichtung 21 oder eine "Nein"- Antwort vorliegt, geht die Organisationssteuerung 505 bei 603 zum nächsten Entscheidungsblock über.
  • Der Entscheidungsblock 603 prüft, ob eine Aufforderung zu einem Materialtransport empfangen wurde. Falls eine solche Aufforderung empfangen wurde, wird dem "Ja"-Zweig gefolgt, und die Organisationssteuerung 505 geht zu einem Anknüpfpunkt B über, der sich in Figur 42C befindet. Falls keine Aufforderung empfangen wurde, wird dem "Nein"-Zweig gefolgt, und die Organisationssteuerung 505 geht zum Block 605 über, welcher prüft, ob eine Aufforderung zu einem Batteriewechsel empfangen wurde. Falls eine Aufforderung zur Durchführung eines Batteriewechsels empfangen wurde, wird dem Ja-Zweig gefolgt und das in Figur 42D angegebene Unterprogramm ausgeführt, oder falls dem Nein-Zweig gefolgt wurde (keine Aufforderung), geht die Organisationssteuerung 505 zum Entscheidungsblock 607 über.
  • Der Entscheidungsblock 607 prüft, ob eine Aufforderung empfangen wurde, die bewegliche Vorrichtung 21 zu einem Parkplatz zu überführen. Falls ja, wird natürlich der "Ja"-Zweig beschritten und das in Figur 42E dargestellte Unterprogramm D ausgeführt, und falls nicht, wird der "Nein"-Zweig beschritten, und die Organisationssteuerung 505 geht zum Entscheidungsblock 609 über. Im Entscheidungsblock 609 prüft die Organisationssteuerung 505, ob eine Aufforderung empfangen wurde, die bewegliche Vorrichtung 21 zu einem anderen Fertigungsplatz zu überführen. Falls "Ja", wird in einem Anknüpfpunkt E das Unterprogramm der Figur 42F ausgeführt. Falls "Nein", geht die Organisationssteuerung 505 zum Entscheidungsblock 611 über.
  • Die bewegliche Vorrichtung 21 kann aus der Fertigungsumgebung abgezogen werden, wozu in einem Entscheidungsblock 611 geprüft wird, ob es eine Aufforderung zum Abziehen der beweglichen Vorrichtung 21 vom Boden der Fertigungseinrichtung gegeben hat. Falls "Nein", kehrt die Organisationssteuerung 505 zur Startposition 600 zurück. Falls "Ja", geht die Organisationssteuerung 505 zum in Figur 42G ausgeführten Anknüpfpunkt F über.
  • Es ist ersichtlich, daß dieses Programm mehrere Mehrfachaufforderungen umfassen kann, die die Organisationssteuerung 505 ausführen kann, indem die Entscheidungsblöcke aneinandergereiht werden und alsdann die Unterprogramme zur Ausführung von deren Entscheidungen ausgeführt werden.
  • Am Anknüpfpunkt A in Figur 42B beginnt die Organisationssteuerung 505 in einem Block 613, mit der beweglichen Vorrichtung 21 Daten auszutauschen. Dieser Datenaustausch wird vom Kommunikationsprozessor 517 der Figur 35 verwaltet. Falls die adressierte bewegliche Vorrichtung 21 nicht antworten kann, wird in einem Entscheidungsblock 615 entschieden, zurück zur Startposition 613 zu gehen, was bedeutet, daß keine Antwort vorliegt, und den Datenaustausch mit der beweglichen Vorrichtung 21 wieder aufzunehmen. Nach einer gewissen Anzahl von Versuchen im Block 614 kehrt die Organisationssteuerung 505 zur Startposition im Block 600 zurück, um festzustellen, ob eine andere Aufforderung empfangen wurde. Falls die bewegliche Vorrichtung 21 antwortet, wird der Navigations-CPU mit Speicher 37a in einem Block 617 befohlen, damit anzufangen, die steuerbare bewegliche Vorrichtung 21 zu verfolgen. In einem Block 619 erfolgt eine Bestimmung der Lage der steuerbaren beweglichen Vorrichtung 21 auf dem Boden der Fertigungseinrichtung, und dann wird die steuerbare bewegliche Vorrichtung 21 in einem Block 612 zum nächst verfügbaren Zielpunkt bewegt. Nach Vollendung des Blocks 612 kehrt die Organisationssteuerung 505 für die nächste Entscheidung zum Block 603 zurück.
  • Im Block 603 erfolgt eine Entscheidung aufgrund einer Prüfung, ob eine Aufforderung zur Durchführung eines Materialtransports vorliegt. Falls ja, führt die Organisationssteuerung 505 über den Anknüpfpunkt B das Materialtransport-Unterprogramm aus. In Figur 42C umfaßt das am Anknüpfpunkt B ausgeführte Unterprogramm in einem Block 623 einen Versuch, einen Materialtransport aufzustellen. Falls die Organisationssteuerung 505 feststellt, daß es keine Möglichkeit gibt, einen Transport zu versuchen, kehrt die Organisationssteuerung 505 zum Block 605 zurück und geht zu der in Figur 42A dargestellten Schleife über. Falls ein Materialtransport möglich ist, wird in einem Block 625 eine Bahn durch die Fabrikanlage erzeugt, welcher die steuerbare bewegliche Vorrichtung 21 folgen soll. Die bewegliche Vorrichtung 21 wird in einem Block 627 angewiesen, sich gemäß der von der Organisationssteuerung 505 zur Verfügung gestellten Bahninformation durch die Fertigungseinrichtung zu bewegen, und führt dies gemäß seines Navigationserzeugungsprogramms aus, das sein in Verbindung mit den Figuren 18 bis 23 erörtertes Ausfallannahme- Programm umfaßt. Beim Erreichen ihres endgültigen Bestimmungsortes werden die Fertigungsanlagensteuerung 503 und die Bedienerschnittstellensteuerung 501 von der Organisationssteuerung 505 in einem Block 629 davon in Kenntnis gesetzt, daß die bewegliche Vorrichtung 21 ihre endgültige Position erreicht hat.
  • In einem Block 631 ergeht eine Entscheidung, bei der geprüft wird, ob eine Vorrichtung zum Transport von Material an Bord der beweglichen Vorrichtung 21 ist. Falls ja, wird das Material in einem Block 633 transportiert. Falls nein, wartet die Einheit in einem Block 635, bis der Materialtransport vollendet ist, wonach des Unterprogramm abgeschlossen ist und das Verfahren zum Anknüpfpunkt B zurückkehrt, bis sämtliches Material transportiert wurde, wonach es zum Block 605 der Figur 42A zurückkehrt.
  • Der Anknüpfpunkt C wird in Figur 42D ausgeführt und nur dann benutzt, wenn eine Batteriewechselvorrichtung verfügbar ist. Er umfaßt einen Entscheidungsblock 637, in dem geprüft wird, ob eine Batteriewechelvorrichtung verfügbar und gegebenenfalls einsetzbar ist. Falls die Batteriewechelvorrichtung nicht verfügbar ist, kehrt die Organisationssteuerung 505 zum Block 607 zurück und durchläuft die in Figur 42A dargestellte Schleife. Falls doch, erzeugt die Organisationssteuerung 505 in einem Block 639 eine Bahn durch die Fertigungseinrichtung, der die bewegliche Vorrichtung 21 folgen soll.
  • In einem Block 641 steuert die bewegliche Vorrichtung 21 gemäß der Bahninformation durch die Fertigungseinrichtung. Die Organisationssteuerung 505 teilt der Batteriewechselvorrichtung in einem Block 643 mit, daß die bewegliche Vorrichtung 21 ihr endgültiges Ziel erreicht hat. Die Batterie wird dann in einem Block 645 gewechselt, und die Organisationssteuerung 505 kehrt zum Block 607 zurück und durchläuft die in Figur 42A dargestellte Schleife weiter. Das mit dem Anknüpfpunkt D verbundene Unterprogramm ist in Figur 42E dargestellt, auf die nun Bezug genommen wird. Sie führt einen Parkvorgang der steuerbaren beweglichen Vorrichtung 21 aus. In einem Block 647 wird geprüft, ob irgendwelche Parkplätze frei sind. Falls nicht, kehrt das Unterprogramm zum Block 609 der Figur 42A zurück. Falls es welche gibt, wird in einem Block 649 eine Bahn erzeugt, und die bewegliche Vorrichtung 21 wird in einem Block 651 durch die Fertigungseinrichtung zu dem freien Parkplatz bewegt, wonach das Unterprogramm zum Block 609 der Figur 42A zurückkehrt. Figur 42F zeigt ein Unterprogramm, das eine Aufforderung in die Tat umsetzt, eine bewegliche Vorrichtung 21 zu einem anderen Platz innerhalb der Fertigungseinrichtung zu schicken. Wenn dieser Zweig beschritten wird, wird gemäß Figur 42F in einem Entscheidungsblock 653 geprüft, ob ein Bestimmungsort frei ist. Falls nicht, kehrt das Unterprogamm zum Block 611 der Figur 42A zurück. Falls doch, wird in einem Block 655 eine Bahn erzeugt und die bewegliche Vorrichtung 21 in einem Block 657 angewiesen, sich dort entlang zu bewegen und eine Meldung über die Vollendung der Bewegung auszugeben.
  • Ein Unterprogramm F zieht die bewegliche Vorrichtung 21 aus der Fertigungseinrichtung ab. Wie gezeigt, muß in einem Entscheidungsblock 659 der Figur 42G bestimmt werden, ob ein Ausgang zur Verfügung steht. Falls nicht, kehrt das Unterprogramm zum Block 601 der Figur 42A zurück. Falls doch, wird in einem Block 661 eine Bahn erzeugt und die bewegliche Vorrichtung 21 in einem Block 663 angewiesen, sich zu bewegen und der Organisationssteuerung 505 die Vollendung dieser Bewegung zu melden.
  • KOORDINATION DER WECHSELWIRKUNG MEHRERER ROBOTER
  • Figur 43, auf die nun Bezug genommen wird, ist ein schematischer Plan des Bodens einer Fertigungseinrichtung 700. Punkte 701 bis 708 sind mögliche Zielpunkte für die bewegliche Vorrichtung 21 und werden im folgenden als Knotenpunkte bezeichnet. Linien 709 bis 716 sind mögliche Bahnabschnitte zwischen den Knotenpunkten 701 bis 708, längs derer sich die bewegliche Vorrichtung 21 in der durch Pfeile angegebenen Richtung bewegen kann. Alle anderen Bereiche der Fertigungseinrichtung 700 sind für die steuerbare bewegliche Vorrichtung 21 verboten. Boxen 717 bis 720 sind Plätze innerhalb der Fertigungseinrichtung 700, an denen die bewegliche Vorrichtung 21 einen Dienst ausführen kann. Vorausgesetzt, daß es eine Reihe aneinander anschließender Bahnabschnitte zwischen zwei Plätzen gibt, kann die bewegliche Vorrichtung 21 von dem einen Platz zum anderen fahren.
  • Wenn es mehreren beweglichen Vorrichtungen 21 erlaubt ist, entlang der gleichen Bahn zu fahren, muß die Ankunft jeder beweglichen Vorrichtung 21 an einem der Knotenpunkte 701 bis 708 zeitlich auf die Ankunft und die Abfahrt anderer beweglicher Vorrichtungen 21 abgestimmt werden, um Stillstände und Zusammenstöße zu vermeiden. Um die Fahrt der beweglichen Vorrichtung 21 durch die Fertigungseinrichtung 700 zu koordinieren, wird ein Satz von Regeln aufgestellt, welche die Ankunft und die Abfahrt der beweglichen Vorrichtung 21 an jedem Knotenpunkt entlang einer bestimmten Bahn regeln. Falls mehrere bewegliche Vorrichtungen 21 den gleichen Knotenpunkt aufsuchen müssen, bestimmen diese Regeln, welche bewegliche Vorrichtung 21 den Knotenpunkt zuerst aufsuchen darf. Sobald ein Satz von Regeln aufgestellt ist, werden diese Regeln befolgt, bis eine bewegliche Vorrichtung 21 einen Knotenpunkt aufsucht, der nicht von einer anderen beweglichen Vorrichtung 21 besetzt ist.
  • Die Figuren 44 bis 49 dienen dazu, die Aufstellung von Regeln zu veranschaulichen, welche die Ankunft und die Abfahrt der beweglichen Vorrichtungen 21 regeln. Die Figuren 44, 46 und 48 zeigen die Bahnen von beweglichen Vorrichtungen 21, die in diesem Fall Vorrichtungen R1, R2 und R3 sind, und die Figuren 45, 47 und 49 zeigen die Knotenpunkte, an denen sich die Vorrichtungen R1, R2 und R3 in einem bestimmten Zeitabschnitt befinden.
  • Figur 44, auf die nun Bezug genommen wird, ist eine Reihe von Bahnabschnitten, denen mehrere, mit R1, R2 und R3 bezeichnete bewegliche Vorrichtungen 21 durch eine typische Fertigungseinrichtung 700 folgen sollen. Punkte 721 bis 728 sind Ziel- Knotenpunkte und Linien 729 bis 736 sind zulässige Bahnabschnitte zwischen den Knotenpunkten. In Figur 44 wurde lediglich eine Bahn 737 für die mit R1 bezeichnete bewegliche Vorrichtung 21 erzeugt. Die bewegliche Vorrichtung 21 beginnt sich vom Knotenpunkt 721 aus zu bewegen, kommt an den Knotenpunkten 723, 724 und 726 vorbei und hält dann am Knotenpunkt 727. Die Knotenpunktposition der mit R1 bezeichneten beweglichen Vorrichtung 21 für jeden der sechs Zeitabschnitte ist in Figur 45 angegeben.
  • In Figur 45 sind die Regeln aufgestellt, die die Bewegungen der beweglichen Vorrichtungen R1, R2 und R3 regeln. Da die mit R1 für eine Vorrichtung 1 bezeichnete Vorrichtung keinen Knotenpunkt aufsuchen wird, den eine andere bewegliche Vorrichtung 21 aufsuchen wird, sind für die Bahn zu dieser Zeit keine Regeln aufgestellt. In Figur 44 ist indessen wie bei der Ausführungsform der Figuren 46 und 48 der erste Knotenpunkt der Vorrichtung R1 721 und ihr letzter Knotenpunkt 727.
  • In den Figuren 46 und 47 befindet sich die als Roboter 1 oder R1 bezeichnete bewegliche Vorrichtung 21 am Knotenpunkt 721 und soll nach 727 fahren. Die Bahnknotenpunkte, die sie auf ihrem Weg zum Knotenpunkt 727 überqueren wird, umfassen den Start-Knotenpunkt 721 und die Knotenpunkte 723, 724, 726 und 727. Ferner befindet sich bei der Ausführungsform der Figur 46 die zweite, mit R2 bezeichnete bewegliche Vorrichtung 21 an einem Start-Knotenpunkt 722, ihr letzter Knotenpunkt ist der Knotenpunkt 728, und sie soll über eine Bahn 738 fahren. Diese Bahn umfaßt die Knotenpunkte 722, 723, 724, 726 und 728.
  • In Figur 47 sind die Knotenpunktpositionen in Bezug auf die Zeit für beide, mit R1 beziehungsweise mit R2 bezeichnete bewegliche Vorrichtungen 21 dargestellt. Figur 47 liefert außerdem die Regeln, die das Aufsuchen der Knotenpunkte in der Fertigungseinrichtung 700 durch die beiden Vorrichtungen R1 und R2 koordinieren. Wie in Figur 44 gezeigt, hat die mit R1 bezeichnete bewegliche Vorrichtung 21 bereits eine Bahn durch die Knotenpunkte 723, 724 und 726 ausgewählt. Deshalb muß sich die zweite, mit R2 bezeichnete bewegliche Vorrichtung 21 vom Knotenpunkt 722 zum Knotenpunkt 728 bewegen. Es wird eine Bahn erzeugt, ohne die Bahn für R1 zu ändern.
  • Während des ersten Zeitabschnitts wird R2 versuchen, sich zum Knotenpunkt 723 zu bewegen. R1 hat jedoch Vorrang bei der Besetzung des Knotenpunkts 723 und wird sich daher während des zweiten Zeitabschnitts bewegen. Deshalb sind die Regeln so, daß R1 vor R2 am Knotenpunkt 723 ankommen muß und R2 nach R1 ankommen muß. Während des zweiten Zeitabschnitts muß R2 warten, ehe sie sich zum Knotenpunkt 723 bewegt. Im dritten Zeitabschnitt kann R2 den Knotenpunkt 723 besetzen. Da R2 nach R1 am Knotenpunkt 723 ankommen muß, ändern sich die Regeln für R2 so, daß sie nach der Abfahrt von R1 ankommt. Die Regeln für R1 ändern sich ferner so, daß sie nach der Ankunft von R2 ankommt. Da die Regeln nun aufgestellt wurden, werden sie auf die Knotenpunkte 724 und 726 angewandt. Indessen gibt es keine Konflikte zwischen R1 und R2 an den Knotenpunkten 727 und 728, weshalb die Regeln nicht länger angewandt werden.
  • Die Figuren 48 und 49 zeigen die Bahnen für eine dritte bewegliche Vorrichtung 21 oder R3 zusammen mit den früheren Bahnen für die steuerbaren, mit R1 und R2 bezeichneten beweglichen Vorrichtungen 21. R3 wird sich vom Knotenpunkt 728 längs einer Bahn 739 bewegen, an den Knotenpunkten 726, 725 und 723 vorbeikommen und schließlich am Knotenpunkt 722 anhalten. Die Knotenpunkte 726 und 723 sind allen drei beweglichen Vorrichtungen 21 gemeinsam, die in Figur 48 mit R1, R2 und R3 bezeichnet sind.
  • Figur 49 zeigt die Knotenpunktpositionen in Bezug auf die Zeit für alle drei beweglichen Vorrichtungen 21. In Figur 49 sind die Regeln dargestellt, die das Aufsuchen der Knotenpunkte in der Fertigungseinrichtung für alle Vorrichtungen 21 koordinieren. Wie in Figur 47 gezeigt, haben R1 und R2 bereits eine Bahn durch die Knotenpunkte 723 und 726 ausgewählt, weshalb eine neue Bahn erzeugt werden muß, um R3 vom Knotenpunkt 728 zum Knotenpunkt 722 zu bewegen, ohne die früheren Bahnen für R1 und R2 zu ändern.
  • R3 wird sich zuerst zum Knotenpunkt 726 bewegen. Im Hinblick auf den Umstand, daß weder R1 noch R2 den Knotenpunkt 726 während des zweiten Zeitabschnitts besetzen, darf R3 den Knotenpunkt 726 besetzen. R3 wird vor den anderen beweglichen Vorrichtungen 21 am Knotenpunkt 726 ankommen, weshalb die Regeln für R3 als Ankunft vor R1 aufgestellt werden. Die Regeln für R1 und R2 ändern sich natürlich nicht.
  • Im dritten Zeitabschnitt wird sich R3 zum Knotenpunkt 724 oder zum Knotenpunkt 725 bewegen. Die frühestens mögliche Zeit, zu der R3 den Knotenpunkt 724 besetzen kann, liegt gemäß der früheren, in Verbindung mit den Figuren 46 und 47 erörterten Einrichtung von Bahnen im fünften Zeitabschnitt. R3 muß nach R1 am Knotenpunkt 724 ankommen. Die Regeln setzen außerdem fest, daß R3 an allen Knotenpunkten vor R1 ankommen muß, und werden deshalb für eine Bewegung von R3 zum Knotenpunkt 724 verletzt. Da weder R1 noch R2 den Knotenpunkt 725 irgendwann besetzen werden, kann R3 dem Knotenpunkt 725 während des dritten Zeitabschnitts besetzen.
  • Wenn eine der mehreren, im Beispiel der Figur 48 als R1, R2 oder R3 bezeichneten beweglichen Vorrichtungen 21 einen Knotenpunkt aufsucht, der nicht von einer anderen beweglichen Vorrichtung 21 besetzt ist, werden die Regeln für die bewegliche Vorrichtung 21 zurückgesetzt, so daß es für R3 keine Regeln gibt, die ihre Bewegung zum Knotenpunkt 725 regeln. R3 wird sich dann im vierten Zeitabschnitt zum Knotenpunkt 723 bewegen. R3 wird am Knotenpunkt 723 ankommen, nachdem R1 und R2 abgefahren sind, so daß die Regel für R3 lautet, nach Abfahrt von R2 anzukommen. Weil die Regeln für R3 gesetzt wurden, sind sie außerdem auf den Knotenpunkt 722 anwendbar. Mittels der Aufstellung von Regeln aufgrund aller Bewegungen einer beweglichen Vorrichtung 21 wird daher keine bewegliche Vorrichtung 21 einen Knotenpunkt zu der gleichen Zeit besetzen, die für eine zweite bewegliche Vorrichtung 21 zum Besetzen dieses Knotenpunktes bestimmt ist.
  • Figur 50 liefert ein Flußdiagramm für die Ausführung der Koordination eines Mehr-Vorrichtungs-Systems in einer Fertigungseinrichtung, wie in Verbindung mit den Figuren 43 bis 49 erörtert. Insbesondere liegt in Figur 50A die Startposition an einem Punkt 750. Beim Verlassen des Punkts 750 erscheint ein erster Entscheidungsblock, ein Block 751, in dem geprüft wird, ob es weitere Knotenpunkte gibt, die durch einen Bahnabschnitt mit dem gegenwärtigen Knotenpunkt verbunden sind. Falls die Antwort "Nein" ist, wird ein Anknüpfpunkt H benutzt, der zu Figur 50C hinüberführt. Falls die Antwort "Ja" ist, wird die Organisationssteuerung 505 in einem Block 755 den nächsten mit dem Bahnabschnitt verbundenen Knotenpunkt wiederbeschaffen und in einem Block 753 die Ankunfts- und Abfahrtszeit am nächsten Knotenpunkt berechnen. Das Programm geht dann zu einem Block 757 über, an dem die Ankunftszeit am nächsten Knotenpunkt verglichen wird, um zu bestimmen, ob sie länger als die kürzeste Fahrzeit zum endgültigen Bestimmungsort ist. Falls die Antwort "Nein" ist, wird ein Anknüpfpunkt C zu Figur 50B gewählt; falls die Antwort "Ja" ist, wird ein Anknüpfpunkt H zu Figur 50G gewählt.
  • Bei der Verfolgung des "Nein"-Zweigs und einem Übergehen zu Figur 50B wird in einem Entscheidungsblock 758 die Frage gestellt: "Wird die gegenwärtige bewegliche Vorrichtung 21 am nächsten Knotenpunkt ankommen, nachdem eine andere bewegliche Vorrichtung 21 von diesem Knotenpunkt abgefahren ist?". Falls die Antwort "Nein" ist, wird dann ein Anknüpfpunkt D zu Figur 50C am Start eines Blocks 763 gewählt. Falls die Antwort "Ja" ist, ist der nächste Schritt in der Abfolge: "Soll die gegenwärtige bewegliche Vorrichtung 21 gemäß der vorbestimmten Regeln am nächsten Knotenpunkt ankommen, ehe die andere bewegliche Vorrichtung 21 an diesem Knotenpunkt ankommt (Block 759)?". Falls die Antwort "Ja" ist, wird der Anknüpfpunkt H gewählt, der sich in Figur 50G befindet. Wenn jedoch der "Nein"-Zweig beschritten wird, werden in einem Block 761 die Aufsuch-Regeln für die nächsten Knotenpunkte aufgestellt. Die Regeln setzen fest, daß die gegenwärtige bewegliche Vorrichtung 21 am nächsten Knotenpunkt ankommen muß, nachdem die andere bewegliche Vorrichtung 21 von diesem Knotenpunkt abgefahren ist, wonach zu einem Anknüpfpunkt F übergegangen wird, der sich in Figur 50E befindet. Indessen bildet Figur 50C den vom Entscheidungsblock 758 aus beschrittenen Zweig und wird nunmehr erörtert.
  • In einem ersten Entscheidungsblock (Block 763) lautet die Frage: "Wird die gegenwärtige bewegliche Vorrichtung am nächsten Knotenpunkt ankommen, ehe die andere bewegliche Vorrichtung von diesem Knotenpunkt abgefahren ist?". Falls die Antwort "Nein" ist, wird dann der Zweig über einen Anknüpfpunkt E beschritten, der zu Figur 50D führt. Falls die Antwort "Ja" ist, geht die Organisationssteuerung 505 zu einem Block 765 über, an dem entschieden wird "Soll die gegenwärtige bewegliche Vorrichtung 21 gemäß der Regeln am nächsten Knotenpunkt ankommen, nachdem die andere bewegliche Vorrichtung 21 von diesem Knotenpunkt abgefahren ist?". Der "Ja"-Zweig vergrößert in einem Block 767 die gegenwärtige Ankunftszeit und geht dann zu einem Anknüpfpunkt B über, der vor dem Block 757 an Figur 50A anknüpft. Falls das Ergebnis "Nein" lautet, wird in einem Entscheidungsblock 769 geprüft "befindet sich die andere bewegliche Vorrichtung gegenwärtig am nächsten Knotenpunkt?". Der "Ja"-Zweig ergibt einen Programmsprung, um die dem in Figur 50G dargestellten Zweig H folgenden Blöcke auszuführen. Falls die Antwort "Nein" ist, stellt die Organisationssteuerung 505 in einem Block 781 die Aufsuch-Regeln für den nächsten Knotenpunkt auf.
  • Die Regeln setzen im Block 781 fest, daß die gegenwärtige bewegliche Vorrichtung am nächsten Knotenpunkt ankommen muß, ehe die andere bewegliche Vorrichtung von diesem Knotenpunkt abgefahren ist, wonach das Programm mit dem in Figur 50E befindlichen Unterprogramm F fortfährt. Das Unterprogramm E oder der Zweig E von einem Block 763 aus ist in Figur 50D dargestellt. Nachdem festgesetzt wurde, daß die gegenwärtige beweglich Vorrichtung nicht an dem Knotenpunkt ankommen wird, ehe eine andere bewegliche Vorrichtung diesen Knotenpunkt verläßt, wird in einem Entscheidungsblock 783 entschieden, ob die gegenwärtige bewegliche Vorrichtung gemäß der Regeln am nächsten Knotenpunkt ankommen soll, ehe eine andere bewegliche Vorrichtung an diesem Knotenpunkt ankommt. Falls das Ergebnis "Nein" lautet, wird die Ankunftszeit der gegenwärtigen beweglichen Vorrichtung in einem Block 785 erhöht, und es geht mit einem Anknüpfpunkt B weiter, der sich in Figur 50A direkt vor dem Entscheidungsblock 757 befindet. Falls die Antwort "Ja" ist, wird der Anknüpfpunkt H der Figur 50G gewählt.
  • Nach Vollendung des Blocks 781 der Figur 50C nimmt die Organisationssteuerung 505 den in Figur 50E dargestellten Zweig F und weist einen ersten Entscheidungsblock bei 787 auf, welcher prüft, ob sämtliche beweglichen Vorrichtungen auf Konflikte am nächsten Knotenpunkt untersucht wurden. Falls die Antwort "Nein" ist, wird der in Figur 50B dargestellte Zweig C beschritten, der die Aufstellung von Regeln zur Konfliktlösung fortsetzt. Falls die Antwort "Ja" ist, geht die Organisationssteuerung 505 zu einem Block 788 über, welcher bestimmt, ob irgendeine bewegliche Vorrichtung den nächsten Knotenpunkt aufsuchen wird. Falls die Antwort "Nein" ist, werden die Regeln für die gegenwärtige bewegliche Vorrichtung am nächsten Knotenpunkt zurückgesetzt. Falls die Antwort "Ja" ist, fährt das Programm mit dem in Figur 50A dargestellten Zweig B fort.
  • Andererseits werden, wenn der "Nein"-Zweig beschritten wird, die Regeln in einem Block 789 für den nächsten Knotenpunkt zurückgesetzt und dann in einem Block 790 sämtliche Knotenpunkt-Aufsuchparameter gesichert, die für den nächsten Knotenpunkt erzeugt wurden, und anschließend wird in einem Block 971 der nächste Knotenpunkt zum gegenwärtigen Knotenpunkt. Das Programm geht dann zu dem in Figur 50F dargestellten Anknüpfpunkt G über, bei dem in einem Block 792 geprüft wird: "Ist der nächste Knotenpunkt der endgültige Bestimmungsort der beweglichen Vorrichtung?". Falls die Antwort "Nein" ist, geht das Programm zum Beginn von Block 751 über, der in Figur 50A dargestellt ist. Falls die Antwort "Ja" ist, wird in einem Block 793 gefragt: "Ist die gegenwärtige Ankunftszeit die kürzeste Ankunftszeit?". Falls die Antwort "Nein" ist, geht das Programm zum in Figur 50G dargestellten Block H über. Falls die Antwort "Ja" ist, werden in einem Block 794 sämtliche Parameter für den aufgesuchten Knotenpunkt und für sämtliche Knotenpunkte auf der gegenwärtigen Bahn gesichert. Die Organisationssteuerung 505 geht zum in Figur 50G dargestellten Anknüpfpunkt H über.
  • Figur 50G prüft in einem Block 795: "Sind irgendwelche weiteren Bahnzuweisungen für den gegenwärtigen Knotenpunkt bestimmt?". Falls die Antwort "Nein" ist, geht das Programm zum Anknüpfpunkt A in Figur 50A über, der im wesentlichen die Startposition ist. Falls die Antwort "Ja" ist, geht es zu einem Block 797 über, an dem es den Schritt ausführt, eine Sicherheitskopie für einen Knotenpunkt auf der gegenwärtigen Bahn anzulegen. In einem Entscheidungsblock 799 wird geprüft: "Ist dieser Knotenpunkt der erste Knotenpunkt auf der Bahn?". Falls die Antwort "Ja" ist, geht es zu einem Schritt 800 über. Falls die Antwort "Nein" ist, geht es zum Anknüpfpunkt A über, der vor dem Block 751 in Figur 50A liegt.
  • Wenn der "Ja"-Zweig von Block 799 zu Block 800 beschritten wird, fragt dieser: "Wurde eine mögliche Bahn festgestellt, der die bewegliche Vorrichtung 21 folgen kann?", wobei der "Ja"-Zweig die Einheit dazu bringt, zu einem Block 801 überzugehen. Falls die Antwort "Nein" ist, bringt der "Nein"- Zweig das System dazu, am Block 803 auszusteigen. Sämtliche Knotenpunkt-Aufsuchparameter, welche gesichert wurden, werden in einem Block 801 in eine Tabelle der endgültigen Bahn kopiert, und dann werden die Befehle erzeugt, mit denen die bewegliche Vorrichtung 21 entlang der endgültigen Bahn zu bewegen ist.
  • STEUERUNG DER BEWEGUNGEN VON ROBOTERN IN EINER UMGEBUNG MIT MEHREREN KNOTENPUNKTEN.
  • Wie in Verbindung mit Figur 35 erörtert, ist die Organisationssteuerung 505 dafür verantwortlich, Bewegungsbefehle für die einzelnen Vorrichtungen 509 bis 513 zu erzeugen, von denen allerdings zahlreiche in der Fertigungseinrichtung 700 verwendet werden. Der Kommunikationsprozessor 517 ist dafür verantwortlich, Bewegungsbefehle über das drahtlose Kommunikationssystem 19 der Figur 1 an die beweglichen Vorrichtungen 21 zu senden. Jede CPU mit Speicher 52, die in je einer steuerbaren beweglichen Vorrichtung 21 enthalten ist, ist für die Ausführung der Bewegungsbefehle verantwortlich.
  • Wie in Verbindung mit Figur 43 erörtert, die ein schematischer Plan eines typischen Fabrikbodens ist, sind die Knotenpunkte 701 bis 708 mögliche Zielpunkte für die bewegliche Vorrichtung 21 entlang der Bahnen 709 bis 716. Die Pfeile an den Linien geben die möglichen Fahrtrichtungen für die bewegliche Vorrichtung 21 an. Alle anderen Bereiche der Fertigungseinrichtung 700 sind als verboten bezeichnet. Um eine bewegliche Vorrichtung 21 durch die Fertigungseinrichtung 700 zu bewegen, muß die Organisationssteuerung 505 zuerst einer beweglichen Vorrichtung 21 Knotenpunkte von einer vorher erzeugten Bahn zuweisen und dann der beweglichen Vorrichtung 21 befehlen, sich zu den Knotenpunkten hin zu bewegen. Die bewegliche Vorrichtung 21 kann jederzeit auf einen Knotenpunkt bewegt werden und speichert mehrere aufeinanderfolgende Bewegungsbefehle, die in ihrem Speicher, der Teil der CPU mit Speicher 52 ist, gepuffert sind. Wenn sich eine bewegliche Vorrichtung 21 von Knotenpunkt zu Knotenpunkt bewegt, benachrichtigt die bewegliche Vorrichtung 21 die Organisationssteuerung 505 von jedem Knotenpunkt, an dem sie vorbeigekommen ist. Wenn die Organisationssteuerung 505 benachrichtigt wurde, daß ein Knotenpunkt passiert wurde, wird die Zuweisung des Knotenpunkts aufgehoben und der Knotenpunkt wird für eine andere bewegliche Vorrichtung 21 zugänglich.
  • Die Figuren 51 veranschaulichen die Durchführung des oben erörterten Verfahrens, und Figur 51A ist ein Flußdiagramm der Übertragung von Anweisungen und Befehlen zwischen der Organisationssteuerung 505 und einer beweglichen Vorrichtung 21. Das Verfahren beginnt in einem Block 805. Ein Entscheidungsblock 806 prüft, ob die bewegliche Vorrichtung 21 am endgültigen Zielknotenpunkt angekommen ist. Falls ja, wird der Ausgang an einem Block 809 gewählt. Falls nicht, geht die Organisationssteuerung 505 zu einem Block 807 über, an dem eine Entscheidung getroffen wird, die bestimmt, ob der beweglichen Vorrichtung 21 bereits die maximale Anzahl von Knotenpunkten zugewiesen ist.
  • Falls die maximale Anzahl von Knotenpunkten zugewiesen worden ist, wird sodann ein Zweig A zu Figur 51B beschritten, der in einem Block 815 darauf wartet, daß die bewegliche Vorrichtung 21 die nächste Bewegung vollzogen hat. Das System hebt in einem Block 817 die Zuweisungen aller Knotenpunkte auf, an denen die bewegliche Vorrichtung 21 vorbeigekommen ist, und kehrt über einen Anknüpfpunkt 819 zur Figur 51A zurück.
  • In einem Block 808 der Figur 51A wird die Frage gestellt: "Kann der nächste Knotenpunkt der beweglichen Vorrichtung 21 zugewiesen werden?". Falls die Antwort "Nein" ist, wird dann ein Anknüpfpunkt B zu Figur 51C gewählt, wo das System in einem Block 818 darauf wartet, daß die Zuweisung des Knotenpunkts mittels einer anderen beweglichen Vorrichtung 21 aufgehoben wird. Wenn der Schritt im Block 818 ausgeführt ist, kehrt das System über einen Anknüpfpunkt 821 zu Figur 51A zurück.
  • In einem Block 811 wird wie in Figur 43 dargestellt der Bahnverlauf der beweglichen Vorrichtung 21 für den nächsten Abschnitt bestimmt. Danach wird in einem Block 813 der Bewegungsbefehl an die zu betätigende bewegliche Vorrichtung 21 übertragen. Dieses Verfahren wird fortgesetzt, bis die bewegliche Vorrichtung 21 am endgültigen Zielknotenpunkt angekommen ist, was im Block 806 festgestellt wird.
  • DAS AUSFÜHRENDE PROGRAMM EINES BEWEGLICHEN ROBOTERS
  • Es gibt zwei Hauptprogramme, die von der innerhalb je einer beweglichen Vorrichtung 21 enthaltenen CPU mit Speicher 52 ausgeführt werden. Dies sind die ausführenden und die steuernden Befehlsstrukturen. Die ausführende Befehlsstruktur läuft ständig, um eine Systemdienst-Unterstützung für die Entschlüsselung von Nachrichten, Sonderfunktionen und Befehlen und für die Formatierung von zwischen je einer beweglichen Vorrichtung 21 und dem Kommunikationsprozessor 517 übertragenen Botschaften zur Verfügung zu stellen. Das Steuerprogramm läuft mit Unterbrechungen und ist für die zuvor erörterten Ausfallannahme-, Navigations- und Steuersysteme verantwortlich. Bei der Bewegung der beweglichen Vorrichtung 21 durch eine Fertigungseinrichtung 700 wird von allen diesen Systemen Gebrauch gemacht. Ein Befehl von der Host-CPU mit Speicher 37 wird über das Kommunikationssystem 19 an die bewegliche Vorrichtung 21 übertragen. Das ausfuhrende Programm empfängt und entschlüsselt diese Befehle. Im Falle eines Bewegungsbefehls wird dieser formatiert und zur Ausführung in die Ausführungswarteschlange für das Steuerprogramm gegeben. Das ausführende Programm prüft dann nach, ob eine Statusänderung der beweglichen Vorrichtung 21 aufgrund eines ausgeführten Befehls oder einer Statusänderung der beweglichen Vorrichtung 21 eingetreten ist. Falls notwendig, überträgt das aus führende Programm unter Aufschlüsselung der Statusänderungen eine Botschaft an die Navigations-CPU mit Speicher 37a, ehe es zum Empfang eines anderen Befehls von der Host- CPU mit Speicher 37 übergeht. Diese Schleife wird ununterbrochen ausgeführt.
  • Wenn eine Zeitgeber-Unterbrechung auftritt, steuert das Steuerprogramm die Lenk- und Antriebs-Servos für jede Bewegung. Es berechnet dann die gegenwärtige Position der beweglichen Vorrichtung 21, wobei sie die Daten von der Steuer- und Navigationsschaltung 15 verwendet, was zuvor erörtert wurde, und setzt die Ausfallannahme- und Navigations-Aufforderungen in die Tat um.
  • Je nach ihrer gegenwärtigen Position und ihrem Status kann der gegenwärtig ausführende Befehl vollzogen sein. Falls dies so ist, wird der nächste Befehl in der Warteschlange zur Ausführung ausgewählt. Das ausführende Programm nimmt von diesem Umstand Kenntnis und stellt die Statusänderungs-Botschaft auf, die an die Host-CPU mit Speicher 37 zu übertragen ist. Das Steuerprogramm der beweglichen Vorrichtung 21 wird dann untätig, während es auf die nächste Zeitgeber-Unterbrechung wartet.
  • Es wird auf Figur 52 Bezug genommen, die das ausführende Programm beschreibt, welches in einem Block 850 fortwährend über das Kommunikationssystem 19 empfangene Botschaften überwacht. Wenn keine Botschaft empfangen wird, wird ein Zweig 827 beschritten, und wenn eine Botschaft empfangen wird, geht die CPU mit Speicher 52 zu einem Block 826 über, bei dem die Botschaft nötigenfalls in die Warteschlange der beweglichen Vorrichtung 21 gegeben wird. In einem Block wird dann eine Unvon Sonderfunktionen zur Verfügung gestellt. Ein Entscheidungsblock 831 prüft, ob sich ein Befehlszeiger geändert hat oder nicht. Falls "Nein", geht das Programm zum Block 850 über. Falls sich der Befehlszeiger geändert hat, setzt die bewegliche Vorrichtung 21 die Host-CPU mit Speicher 37 in einem Block 833 von einer Befehlsausführung und von der Position der beweglichen Vorrichtung 21 in Kenntnis. Wenn der im Block 833 angegebene Schritt ausgeführt ist, kehrt das Programm zum Eingang des Blocks 850 zurück.
  • DAS STEUERPROGRAMM EINES BEWEGLICHEN ROBOTERS
  • Der Ablauf des vorstehend erwähnten Steuerprogramms ist in Figur 53 ausgeführt, bei der in einem Block 835 alle Lenk - und Antriebs-Servos gesteuert werden. Die Position der beweglichen Vorrichtung 21 wird in einem Block 837 berechnet, was bereits erörtert wurde, und die Ausfallannahme-Befehle werden in einem Block 839 erzeugt. Ein Entscheidungsblock 841 bestimmt, ob der Befehlszeiger oder die Bahn auf den neuesten Stand gebracht werden müssen. Falls ja, werden sie in einem Block 843 aktualisiert, und falls nicht, fährt das Steuerprogramm in einem Block 845 mit weiterer Datenverarbeitung fort, um eine Statustabelle aufzustellen, die zum ausführenden Programm der beweglichen Vorrichtung 21 gegeben und dorthin übertragen wird. Dies wird übrigens auch dann ausgeführt, wenn eine Aktualisierung der Befehlsposition über den Zweig 847 nicht notwendig ist. Das Steuerprogramm geht dann über einen Zweig 849 zum Eingang des Blocks 835 zurück.
  • NAVIGATIONSSYSTEM FÜR MEHRERE ROBOTER
  • Bei dem komplexen System mehrerer beweglicher Vorrichtungen 21, die sich wie in Figur 43 dargestellt durch die Fertigungseinrichtung bewegen, sagt die Navigations-CPU mit Speicher 37a ständig diejenige bewegliche Vorrichtung 21 voraus, die eine Positionsfestlegung benötigt. Unter Bezugnahme auf Figur 54A wird in einem Block 851 die bewegliche Vorrichtung mit dem größten Bedarf für eine Positionsfestlegung festgestellt. Über den Kommunikationsprozessor 517 wird in einem Block 853 eine Botschaft an alle beweglichen Vorrichtungen gesendet, die geeigneten Navigations-Leitstrahlquellen einzuschalten, alle anderen Leitstrahlquellen auszuschalten und jeglichen Datenaustausch einzustellen. Der nächste Schritt besteht darin, in einem Block 855 alle Botschaften vom Kommunikationsprozessor einzulesen. In einem Entscheidungsblock 857 wird festgestellt, ob die Botschaft eine Navigationsbestätigung ist. Falls sie es nicht ist, wird die Botschaft in einem Block 859 verarbeitet. Falls doch, erwirbt die Steuerund optische Navigationsschaltung 15 in einem Block 860 ein Videobild, wonach in einem Block 861 eine Freigabe an die beweglichen Vorrichtungen 21 gesandt wird, damit sie ihren Infrarot-Datenaustausch fortsetzen.
  • Das Bild von der aus den mehreren Kameras 1 ausgewählten Kamera wird in einem Block 863 untersucht. Nach der Untersuchung des von der ausgewählten Kamera 1S eingegangenen Bildes geht die Navigations-CPU mit Speicher 37a über einen Anknüpfpunkt P2 zu einem Block 864 der Figur 54B über, in dem das Abbild der beweglichen Vorrichtung 21 untersucht und geprüft wird, ob es erkannt ist. Dieses Verfahren wurde zuvor im Zusammenhang mit der Steuer- und Navigationsschaltung 15 erörtert. Falls die Antwort "Nein" ist, wird in einem Block 865 geprüft, ob sämtliche Kameras, die zu den mehreren Kameras 1 gehören, abgesucht wurden. Falls die Antwort hierzu "Nein" ist, wird in einem Block 867 eine Vorhersage der nächsten, wahrscheinlichsten Kamera getroffen, und das Programm geht zu einem Anknüpfpunkt P3 über, der sich in Figur 54A direkt vor der Ausführung des im Block 853 enthaltenen Schrittes befindet.
  • Falls sämtliche Kameras abgesucht wurden, wird der direkt vor dem Block 851 befindliche Anknüpfpunkt P1 gewählt. Falls das Abbild der Vorrichtung erkannt ist, werden ihre Position und ihre Orientierung in einem Block 854 ermittelt, und in einem Block 866 wird diese Position an die bewegliche Vorrichtung 21 gesandt, wonach die Einheit zum Anknüpfpunkt P1 zurückkehrt, um das Verfahren neu zu beginnen.
  • DER KOMMUNIKATIONSPROZESSOR
  • Der Kommunikationsprozessor 517 und insbesondere die Schnittstelle ist in Figur 55A ausgeführt, die in Verbindung mit den Figuren 1 und 35 anzuwenden ist. An einem Block 510 startet der Kommunikationsprozessor 517 das Verfahren und wartet auf eine Navigations-Aufforderung von der Navigationssteuerung 507. Der Kommunikationsprozessor 517 nimmt die Navigations- Aufforderung auf (Block 868) und sendet diese Botschaft in die Ausgangswarteschlange, um sie über das drahtlose Kommunikationssystem 19 zu übertragen (Block 869). Der Kommunikationsprozessor 517 überträgt in einem Block 870 die abgehende Botschaft über ein drahtloses Kommunikationssystem, etwa ein Infrarot-System, bis er die Botschaft der Navigations("NAV")- Aufforderung erkennt. Der Kommunikationsprozessor 517 sendet in einem Block 871 die "NAV"-Aufforderung an alle Bewegliche- Vorrichtungs-Treiber 509 bis 513 und eine Navigationsbestätigung an die Navigationssteuerung 507 und eröffnet den Datenaustausch mit allen Bewegliche-Vorrichtungs-Treibern. Der Kommunikationsprozessor fährt im Block 871 damit fort, alle ankommenden Botschaften in eine Warteschlange einzureihen, sendet aber keinerlei Botschaften über das drahtlose Kommunikations-Verbindungsglied.
  • In einem Block 872 wartet der Kommunikationsprozessor 517 auf eine Synchronisationsbotschaft von der Navigationssteuerung 507. Der Kommunikationsprozessor 517 erkennt dann in einem Block 873 der Figur 55B die Synchronisationsbotschaft und versetzt das Kommunikationssystem 19 in die Lage, alle Botschaften in seine Ausgangswarteschlange zu übertragen. In einem Block 874 wird die Botschaft der Positionsfestlegung von der Navigationssteuerung 507 empfangen und in die Kommunikations-Ausgangswarteschlange gegeben, die mit dem Kommunikationssystem 19 verbindet. Die Botschaften der Positionsfestlegung werden in einem Block 875 an die Bewegliche-Vorrichtungs-Treiber 509 bis 513 übertragen, und anschließend kehrt das Programm an die Startposition im Block 510 zurück.
  • VERFAHREN DES KOMMUNIKATIONSPROZESSORS ZUR AUSGABE VON BOTSCHAFTEN
  • Das Verfahren der Nachrichtenausgabe ist in Figur 56 dargestellt, bei der in einem Block 876 die Ausgabewarteschlange davon abgehalten wird, sich ihrer Botschaften zu entledigen, d. h. die Ausgabeschnittstelle ist angehalten. Die Botschaft wird in einem Block 877 zu der beweglichen Vorrichtung (Einrichtung) gesendet, und in einem Block 878 wartet der Kommunikationsprozessor 517 auf eine Navigationsaufforderung. Falls keine empfangen wird, kehrt er zum Anfang des Blocks 876 zurück. Falls eine empfangen wird, hält er das Verfahren der Nachrichtenausgabe in einem Block 879 an und geht dann zum Block "Ausgabeschnittstelle angehalten" im Block 876 über.
  • VERFAHREN DES KOMMUNIKATIONSPROZESSORS ZUR EINGABE VON BOTSCHAFTEN
  • In einem Block 811 der Figur 57 überwacht der Kommunikationsprozessor 517 seine Eingangswarteschlange auf den Empfang von Botschaften. Er prüft in einem Block 882, ob eine Botschaft von der Navigationssteuerung 507 stammt. Falls "Nein", legt er die Botschaft in einem Block 883 in der richtigen Ausgangswarteschlange ab und kehrt dann zum Block 881 zurück. Falls ja, prüft er in einem Block 884 nach, ob die Botschaft eine Navigations-Synchronisations-Botschaft ist. Falls sie dies nicht ist, geht der Kommunikationsprozessor 517 zum Block 833 über. Falls sie es ist, beginnt er das Ausgabeverfahren der beweglichen Vorrichtung 21 in einem Block 885 von neuem und geht zum Block 883 über.
  • ZUSAMMENSTOSSVERMEIDUNG
  • Wenn sich die bewegliche Vorrichtung entlang einer Bahn in einer Fertigungseinrichtung 700 bewegt, kann ein gewisser Umfang an dem Koppelsystem gemäßer Abweichung von einer befohlenen Bahn erwartet und in Kauf genommen werden. Wenn sich die mehreren Bewegliche-Vorrichtungs-Treiber 509 bis 513 in einem System bewegen, wird ein Fenster um die gegenwärtige Bahn jeder beweglichen Vorrichtung 21 herum projiziert. Figur 58 veranschaulicht den ersten Schritt beim Aufbau des Fensters um die Bahn einer beweglichen Vorrichtung 21 herum. Das Fenster erstreckt sich zwischen Punkten 891 und 887 entlang der Bahn der beweglichen Vorrichtung 21 und dient dazu, eine gerade Linie 893 zu umgrenzen, der die Bahn der beweglichen Vorrichtung 21 folgen soll. Die zulässige Abweichung der beweglichen Vorrichtung 21 von der geraden Linie 893 ist durch einen vorgeschriebenen, durch eine Abstandslinie 894 angezeigten Abstand bestimmt.
  • Figur 59 veranschaulicht den zweiten Schritt beim Aufbau des Fensters um die Bahn der beweglichen Vorrichtung 21 herum.
  • Der Abstand von der geraden Linie 893 bestimmt die Größe des Fensters, steuert aber nicht denjenigen Abstand der beweglichen Vorrichtung 21, um den sie sich von den Endpunkten der Linie 893 aus bewegen darf. Der Abstand von jedem Endpunkt aus wird dazu verwendet, das Fenster vollständig zu schließen. Ein Radius 901 eines um jeweils einen der Endpunkte 891 und 887 geschlagenen Kreises 1200 ist der Abstand des Bahnabschnitts 893 plus einer Konstanten 904, um Abweichungen in der Bahn der beweglichen Vorrichtung 21 zu gestatten.
  • In Figur 60 ist ein schraffierter Bereich 905 das Fenster der beweglichen Vorrichtung 21, das mittels der Abstandslinien 894 und der beiden um die Endpunkte 887 und 891 geschlagenen Kreise errichtet ist. Falls die Position der beweglichen Vorrichtung 21 nicht innerhalb des Fensters liegt, wird die bewegliche Vorrichtung 21 angehalten.
  • Figur 61 zeigt den Ablauf eines Steuerprogramms zur Ausführung dieser Funktion. Das System startet in einem Block 907 und geht zu einem Block 909 über, wo es auf die aktuellste Position der beweglichen Vorrichtung 21 wartet. In einem Block 911 wird der Abstand zwischen der beweglichen Vorrichtung 21 und der Linie zwischen den Endpunkten bestimmt, und dann erfolgt in einem Block 981 eine Entscheidung aufgrund der optischen Position der beweglichen Vorrichtung 21 und danach, ob diese Position innerhalb des Teilfensters der Figur 58 liegt.
  • Falls sich die bewegliche Vorrichtung 21 nicht innerhalb des Teilfensters der Figur 58 befindet, wird die bewegliche Vorrichtung in einem Block 917 angehalten, und das Steuerprogramm kehrt zu den Startpositionen zurück.
  • Falls sich die bewegliche Vorrichtung 21 innerhalb des Teilfensters befindet, wird in einem Block 913 der Abstand zwischen der beweglichen Vorrichtung 21 und jedem Endpunkt berechnet. In einem Block 915 wird bestimmt, ob sich die bewegliche Vorrichtung 21 innerhalb des berechneten Abstands befindet. Wenn dies der Fall ist, wird eine Linie 918 zurück zur Startposition gewählt.
  • Der Abstand der beweglichen Vorrichtung 21 von der Linie 893 der Figur 58 wird mittels Gleichung 4 bestimmt, bei der Rx gleich der x-Koordinate der beweglichen Vorrichtung 21, Ry gleich der y-Koordinate der beweglichen Vorrichtung 21, Px gleich der x-Koordinate des Endpunkts und Py gleich der y-Koordinate des Endpunkts sind. Vx ist gleich dem Abstand zwischen den Endpunkten in Richtung der x-Achse, und Vy ist gleich dem Abstand zwischen den Endpunkten in Richtung der y- Achse. Gleichung 5 wird zur Berechnung des Radius verwendet, der um jeden der Endpunkte erzeugt wird. Der Radius ist gleich der Quadratwurzel von (Vx² + Vy²) + der Konstanten 904. Beide Gleichungen 4 und 5 sind in der Auflistung von Gleichungen angegeben.

Claims (6)

1. Bewegliche Vorrichtung mit mehreren Rädern, einem Navigationssystem, mit dem die Vorrichtung zu einem befohlenen Ziel geführt werden kann, und einer Bremseinrichtung zum Anhalten der Vorrichtung, dadurch gekennzeichnet, daß die Bremseinrichtung eine erste Kraftquelle aufweist, die dafür eingerichtet ist, die Vorrichtung zu lenken, indem sie Lenkbefehle liefert, die wenigstens zwei der mehreren Räder veranlassen, den Winkel, den die Räder mit der Vorrichtung einschließen, in Reaktion auf die Lenkbefehle um einen vorbestimmten Betrag zu ändern, und eine weitere Einrichtung aufweist, mit der die Vorrichtung gebremst werden kann, indem der Winkel zwischen den wenigstens zwei Rädern geändert wird, um die Räder in einer Richtung zu lenken, die der Vorwärtsbewegung der Vorrichtung entgegengesetzt ist, wobei die weitere Einrichtung eine Hilfskraftquelle aufweist, die bei einem Ausfall der ersten Kraftquelle automatisch betreibbar ist.
2. Vorrichtung nach Anspruch 1, welche ferner eine Kraftfühlereinrichtung aufweist, mit der der Kraftverlust erfaßt und dadurch ein Haltesignal erzeugt werden kann.
3. Vorrichtung nach Anspruch 2, bei welcher die Hilfskraft auf das Haltesignal anspricht.
4. Vorrichtung nach Anspruch 1, bei welcher das Navigations- System aufweist:
eine erste Sende- und Empfangseinrichtung zum Senden und Empfangen von Daten zu und von der beweglichen Vorrichtung und eine zweite Sende- und Empfangseinrichtung zum Senden und Empfangen von Daten zu und von der beweglichen Vorrichtung.
5. Vorrichtung nach Anspruch 4, bei welcher die erste und die zweite Sendeeinrichtung aufweisen:
eine Einrichtung zur Umsetzung von Daten in Licht.
6. Vorrichtung nach Anspruch 5, bei welcher die erste und die zweite Empfangseinrichtung aufweisen:
eine Einrichtung zur Umsetzung von Licht in Daten.
DE8686306676T 1985-08-30 1986-08-29 Eigensichere bremse fuer ein mehrraedriges fahrzeug mit motorgesteuerter lenkung. Expired - Fee Related DE3686301T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US77137985A 1985-08-30 1985-08-30

Publications (2)

Publication Number Publication Date
DE3686301D1 DE3686301D1 (de) 1992-09-10
DE3686301T2 true DE3686301T2 (de) 1993-01-21

Family

ID=25091615

Family Applications (1)

Application Number Title Priority Date Filing Date
DE8686306676T Expired - Fee Related DE3686301T2 (de) 1985-08-30 1986-08-29 Eigensichere bremse fuer ein mehrraedriges fahrzeug mit motorgesteuerter lenkung.

Country Status (4)

Country Link
US (3) US4887013A (de)
EP (1) EP0213938B1 (de)
JP (1) JPH0785205B2 (de)
DE (1) DE3686301T2 (de)

Families Citing this family (121)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3851020T2 (de) * 1987-08-27 1995-03-30 Nissan Motor Produktionssystem mit unbemannten, automatisch geführten Fahrzeugen.
JPH0797549B2 (ja) * 1987-08-28 1995-10-18 東京エレクトロン九州株式会社 露光方法及びその装置
US5075853A (en) * 1989-02-17 1991-12-24 Whs Robotics, Inc. Replaceable vehicle control prom
US5179329A (en) * 1989-04-25 1993-01-12 Shinko Electric Co., Ltd. Travel control method, travel control device, and mobile robot for mobile robot systems
JPH0680203A (ja) * 1992-03-24 1994-03-22 East Japan Railway Co 床面洗浄ロボットの制御方法
DE4231492A1 (de) * 1992-09-21 1994-03-24 Basf Ag Nichtlinear-optischer Schichtaufbau
US5983161A (en) 1993-08-11 1999-11-09 Lemelson; Jerome H. GPS vehicle collision avoidance warning and control system and method
JP3296105B2 (ja) * 1994-08-26 2002-06-24 ミノルタ株式会社 自律移動ロボット
JPH08222898A (ja) * 1995-02-15 1996-08-30 Japan Tobacco Inc 部品装着順序決定方法
US6574536B1 (en) 1996-01-29 2003-06-03 Minolta Co., Ltd. Moving apparatus for efficiently moving on floor with obstacle
US5764014A (en) * 1996-02-01 1998-06-09 Mannesmann Dematic Rapistan Corp. Automated guided vehicle having ground track sensor
US5991674A (en) * 1996-05-02 1999-11-23 Chrysler Corporation Floor shifter linkage for robotic control of vehicle
US5821718A (en) * 1996-05-07 1998-10-13 Chrysler Corporation Robotic system for automated durability road (ADR) facility
US6004016A (en) * 1996-08-06 1999-12-21 Trw Inc. Motion planning and control for systems with multiple mobile objects
US5938705A (en) * 1996-09-03 1999-08-17 Chrysler Corporation Vehicle controller (VCON) for automated durability road (ADR) facility
US5867089A (en) * 1996-09-03 1999-02-02 Chrysler Corporation Base-to-remotely controlled vehicle communications for automated durability road (ADR) facility
US6141620A (en) * 1996-09-03 2000-10-31 Chrysler Corporation Vehicle control system for automated durability road (ADR) facility
US5906647A (en) * 1996-09-03 1999-05-25 Chrysler Corporation Vehicle mounted guidance antenna for automated durability road (ADR) facility
US6061613A (en) * 1996-09-03 2000-05-09 Chrysler Corporation Base station for automated durability road (ADR) facility
US5908454A (en) * 1996-09-03 1999-06-01 Chrysler Corporation Operator interface for automated durability road (ADR) facility
US6167332A (en) * 1999-01-28 2000-12-26 International Business Machines Corporation Method and apparatus suitable for optimizing an operation of a self-guided vehicle
US6290188B1 (en) 1999-02-18 2001-09-18 Pri Automation, Inc. Collision avoidance system for track-guided vehicles
EP1145090B1 (de) * 1999-07-02 2003-04-02 Pri Automation, Inc. Dynamischer verkehrsführungsalgorithmus
US6429016B1 (en) * 1999-10-01 2002-08-06 Isis Pharmaceuticals, Inc. System and method for sample positioning in a robotic system
US6577925B1 (en) * 1999-11-24 2003-06-10 Xerox Corporation Apparatus and method of distributed object handling
US6411864B1 (en) * 1999-12-13 2002-06-25 Xerox Corporation Apparatus and method of distributed object handling
JP3721940B2 (ja) * 2000-05-16 2005-11-30 松下電器産業株式会社 移動作業ロボット
JP3721939B2 (ja) * 2000-05-16 2005-11-30 松下電器産業株式会社 移動作業ロボット
SE519481C2 (sv) * 2000-06-22 2003-03-04 Tts Ships Equipment Ab Anordning vid Ro-Ro fartyg
US6393335B1 (en) * 2000-07-17 2002-05-21 Storage Technology Corporation Synchronous mounting and dismounting method and system for multiple accessor storage libraries
US6539284B2 (en) * 2000-07-25 2003-03-25 Axonn Robotics, Llc Socially interactive autonomous robot
JP2002164409A (ja) * 2000-11-29 2002-06-07 Tokyo Electron Ltd 移送装置,基板処理装置及び基板処理システム
SE0004466D0 (sv) * 2000-12-04 2000-12-04 Abb Ab Mobile Robot
AU2002333320A1 (en) * 2001-08-02 2003-02-17 Siemens Aktiengesellschaft Material handling systems with high frequency radio location devices
US7123988B2 (en) * 2001-10-10 2006-10-17 Paul Robert Russell System and apparatus for materials transport and storage
US6832139B2 (en) * 2002-03-21 2004-12-14 Rapistan Systems Advertising Corp. Graphical system configuration program for material handling
US6895301B2 (en) * 2002-07-15 2005-05-17 Distrobot Systems, Inc. Material handling system using autonomous mobile drive units and movable inventory trays
US6748292B2 (en) 2002-07-15 2004-06-08 Distrobot Systems, Inc. Material handling method using autonomous mobile drive units and movable inventory trays
US6950722B2 (en) * 2002-07-15 2005-09-27 Distrobot Systems, Inc. Material handling system and method using mobile autonomous inventory trays and peer-to-peer communications
FR2848520B1 (fr) * 2002-12-11 2005-12-23 Soc Mecanique Irigny Commande motorisee de valve a assistance variable pour direction assistee hydraulique
KR20050035739A (ko) * 2003-10-14 2005-04-19 삼성전자주식회사 무인반송차 제어시스템 및 그 제어방법
BE1016001A3 (nl) * 2004-04-30 2006-01-10 Egemin Nv Automatisch geleid voertuig met verbeterde navigatie.
JP4329034B2 (ja) * 2004-08-09 2009-09-09 株式会社ダイフク 物品搬送装置
JP4621073B2 (ja) * 2005-05-23 2011-01-26 本田技研工業株式会社 ロボット制御装置
JP4438095B2 (ja) * 2005-05-26 2010-03-24 村田機械株式会社 搬送システム
US20070024112A1 (en) * 2005-07-08 2007-02-01 Anders Lindqvist Brake system with auxiliary power supply
US8483869B2 (en) 2005-07-19 2013-07-09 Amazon Technologies, Inc. Method and system for fulfilling requests in an inventory system
US7894933B2 (en) * 2005-07-19 2011-02-22 Kiva Systems, Inc. Method and system for retrieving inventory items
US7894932B2 (en) * 2005-07-19 2011-02-22 Kiva Systems, Inc. Method and system for replenishing inventory items
US9330373B2 (en) * 2005-07-19 2016-05-03 Amazon Technologies, Inc. Method and system for storing inventory holders
DE102005055609A1 (de) * 2005-11-22 2007-05-24 Continental Aktiengesellschaft Transport- und Fertigungssystem zur Verwendung beim Aufbau von Reifenrohlingen
US7991521B2 (en) * 2006-02-01 2011-08-02 Jervis B. Webb Company Variable path automated guided vehicle
US7912574B2 (en) * 2006-06-19 2011-03-22 Kiva Systems, Inc. System and method for transporting inventory items
US20130302132A1 (en) 2012-05-14 2013-11-14 Kiva Systems, Inc. System and Method for Maneuvering a Mobile Drive Unit
US7873469B2 (en) * 2006-06-19 2011-01-18 Kiva Systems, Inc. System and method for managing mobile drive units
US8220710B2 (en) * 2006-06-19 2012-07-17 Kiva Systems, Inc. System and method for positioning a mobile drive unit
US8538692B2 (en) 2006-06-19 2013-09-17 Amazon Technologies, Inc. System and method for generating a path for a mobile drive unit
US7920962B2 (en) * 2006-06-19 2011-04-05 Kiva Systems, Inc. System and method for coordinating movement of mobile drive units
US8649899B2 (en) * 2006-06-19 2014-02-11 Amazon Technologies, Inc. System and method for maneuvering a mobile drive unit
JP5112666B2 (ja) * 2006-09-11 2013-01-09 株式会社日立製作所 移動装置
GB2457927B (en) * 2008-02-28 2013-02-13 Ultra Global Ltd Method and system for resolving deadlocks
EP2136275B1 (de) * 2008-06-18 2014-05-21 C.R.F. Società Consortile per Azioni Automatisches Antriebssystem zum automatischen Antrieb eines Motorfahrzeugs entlang vordefinierten Wegen
CN103543282A (zh) 2010-07-23 2014-01-29 贝克曼考尔特公司 用于处理化验盒的系统
CA2831832C (en) * 2011-04-11 2021-06-15 Crown Equipment Limited Method and apparatus for efficient scheduling for multiple automated non-holonomic vehicles using a coordinated path planner
EP2707725B1 (de) 2011-05-13 2018-07-11 Beckman Coulter, Inc. Transportelement für laborprodukte sowie anordnung
BR112013029217A2 (pt) 2011-05-13 2017-01-31 Beckman Coulter Inc sistema e método incluindo um elemento de transporte de produtos de laboratório
EP2535993B1 (de) * 2011-06-16 2016-03-30 ebm-papst Mulfingen GmbH & Co. KG Schneller und redundanter Übertemperaturschutz mit sicherem Halt für einen EC-Motor
US8892240B1 (en) 2011-06-29 2014-11-18 Amazon Technologies, Inc. Modular material handling system for order fulfillment
US20140058634A1 (en) 2012-08-24 2014-02-27 Crown Equipment Limited Method and apparatus for using unique landmarks to locate industrial vehicles at start-up
US9056754B2 (en) 2011-09-07 2015-06-16 Crown Equipment Limited Method and apparatus for using pre-positioned objects to localize an industrial vehicle
CN104053997B (zh) 2011-11-07 2016-12-21 贝克曼考尔特公司 用于处理样本的系统和方法
WO2013070754A1 (en) 2011-11-07 2013-05-16 Beckman Coulter, Inc. Robotic arm
EP2776847A1 (de) 2011-11-07 2014-09-17 Beckman Coulter, Inc. Magnetische dämpfung für probentransportsystem
EP2776844B1 (de) 2011-11-07 2020-09-30 Beckman Coulter, Inc. Probenbehälterdetektion
EP2776846B1 (de) 2011-11-07 2019-08-21 Beckman Coulter, Inc. Aliquotierungssystem und arbeitsablauf
WO2013070755A2 (en) 2011-11-07 2013-05-16 Beckman Coulter, Inc. Centrifuge system and workflow
BR112015005346A2 (pt) 2012-09-14 2017-07-04 Beckman Coulter Inc sistema analítico com transporte capilar
US9616349B2 (en) 2012-11-07 2017-04-11 Oceaneering International, Inc. Method of managing loading, unloading, and routing of trackless vehicles and system using the same
DE102013003834A1 (de) * 2013-03-07 2014-09-11 Sew-Eurodrive Gmbh & Co Kg Verfahren zur Steuerung der Fahrzeuge, insbesondere Transportfahrzeuge, einer Anlage
GB201409883D0 (en) * 2014-06-03 2014-07-16 Ocado Ltd Methods, systems, and apparatus for controlling movement of transporting devices
CN104331079B (zh) * 2014-11-17 2017-03-08 成都四威高科技产业园有限公司 一种agv交通管制系统及管制方法
CN105320139A (zh) * 2015-11-30 2016-02-10 深圳市步科电气有限公司 Agv双路径运行系统及其实现方法和agv
CN105459117B (zh) 2016-01-04 2017-05-03 杭州亚美利嘉科技有限公司 控制大量机器人急停的方法及装置
US9858819B2 (en) 2016-02-03 2018-01-02 Caterpillar Inc. Traffic control system having deadlock avoidance functionality
US10303171B1 (en) * 2016-09-29 2019-05-28 Amazon Technologies, Inc. Autonomous ground vehicles providing ordered items in pickup areas
US10222798B1 (en) 2016-09-29 2019-03-05 Amazon Technologies, Inc. Autonomous ground vehicles congregating in meeting areas
US10241516B1 (en) 2016-09-29 2019-03-26 Amazon Technologies, Inc. Autonomous ground vehicles deployed from facilities
US10245993B1 (en) 2016-09-29 2019-04-02 Amazon Technologies, Inc. Modular autonomous ground vehicles
US10427162B2 (en) 2016-12-21 2019-10-01 Quandx Inc. Systems and methods for molecular diagnostics
CN107844117B (zh) * 2017-10-23 2020-10-30 上海木木聚枞机器人科技有限公司 一种基于云端的道路锁定系统及方法
US10425158B2 (en) * 2017-11-21 2019-09-24 Hak Seo Oh Apparatus for controlling line guide of automated material handling system and method thereof
CN109839928A (zh) * 2017-11-29 2019-06-04 北京京东尚科信息技术有限公司 无人车及其远距离防对撞方法、装置和系统
US10394234B2 (en) 2017-12-18 2019-08-27 The Boeing Company Multi-sensor safe path system for autonomous vehicles
CN108268038B (zh) * 2018-01-19 2021-04-20 广东美的智能机器人有限公司 多移动机器人的调度方法及系统
CN108549263A (zh) * 2018-05-04 2018-09-18 安徽三弟电子科技有限责任公司 一种基于功率自调节的病人转移机器人调控系统
CN109029416B (zh) * 2018-05-07 2021-07-23 集美大学 自动导引运输车自主导航方法及自动导引运输车
ES2882149T3 (es) * 2018-07-02 2021-12-01 Kollmorgen Automation Ab Un sistema AGV y un método de controlar un sistema AGV
CN108919815A (zh) * 2018-08-29 2018-11-30 广州市君望机器人自动化有限公司 机器人路径干涉检测方法及系统
CN109048909B (zh) * 2018-08-29 2020-12-18 广州市君望机器人自动化有限公司 枝节式路径调度方法、装置、后台服务端及第一机器人
JP7064429B2 (ja) * 2018-11-06 2022-05-10 株式会社東芝 情報処理装置、情報処理方法及びコンピュータプログラム
US10401870B1 (en) * 2018-11-15 2019-09-03 Grey Orange Pte. Ltd. System and method for handling items using movable-bots
CN109189081A (zh) * 2018-11-16 2019-01-11 湖北文理学院 Agv调度控制方法及装置
WO2020105189A1 (ja) * 2018-11-22 2020-05-28 日本電気株式会社 経路計画装置、経路計画方法、及びコンピュータ読み取り可能な記録媒体
US11392130B1 (en) 2018-12-12 2022-07-19 Amazon Technologies, Inc. Selecting delivery modes and delivery areas using autonomous ground vehicles
CN111322993B (zh) * 2018-12-13 2022-03-04 杭州海康机器人技术有限公司 一种视觉定位方法和装置
CN109724612B (zh) * 2019-01-14 2021-06-15 浙江华睿科技有限公司 一种基于拓扑地图的agv路径规划方法及设备
JP7228420B2 (ja) * 2019-03-13 2023-02-24 株式会社東芝 情報処理装置、情報処理方法、情報処理システム及びコンピュータプログラム
EP3990337B1 (de) * 2019-06-26 2023-12-27 ABB Schweiz AG Verfahren zum bremsen eines automatisch geführten fahrzeugs und automatisch geführtes fahrzeug
KR20220020354A (ko) * 2019-07-12 2022-02-18 무라다기카이가부시끼가이샤 주행차 시스템 및 주행차의 제어 방법
CN110471417B (zh) * 2019-08-22 2021-08-24 东北大学 一种基于负载均衡的多agv避碰方法
CN110597263B (zh) * 2019-09-25 2021-11-26 福州大学 一种无人餐厅自动送餐路径规划方法
WO2021061810A1 (en) 2019-09-26 2021-04-01 Amazon Technologies, Inc. Autonomous home security devices
US10796562B1 (en) 2019-09-26 2020-10-06 Amazon Technologies, Inc. Autonomous home security devices
JP7237799B2 (ja) * 2019-10-29 2023-03-13 株式会社東芝 走行制御装置及び運行システム
JP7328923B2 (ja) * 2020-03-16 2023-08-17 株式会社東芝 情報処理装置、情報処理方法、及びコンピュータプログラム
CN111487983B (zh) * 2020-06-11 2023-07-25 上海振华重工(集团)股份有限公司 一种封闭式自动化物流园区的多台agv调度方法
JP7417500B2 (ja) 2020-09-14 2024-01-18 株式会社東芝 情報処理装置、情報処理方法、コンピュータプログラム及び走行管理システム
CN112405529B (zh) * 2020-10-30 2021-12-28 深圳优地科技有限公司 机器人控制方法、装置、机器人及存储介质
CN113253692B (zh) * 2021-06-21 2021-10-15 浙江华睿科技股份有限公司 Agv的巡游方法、装置、设备及可读存储介质
CN114613140B (zh) * 2022-03-18 2023-03-14 西安主函数智能科技有限公司 无人车辆的交叉区域的智能调度方法及装置
CN117172398B (zh) * 2023-10-31 2024-01-26 民航机场成都电子工程设计有限责任公司 一种基于数字孪生仿真平台的地图节点计算方法

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3755712A (en) * 1972-09-07 1973-08-28 Square D Co Fault protection for dc motor thyristor power supplies
GB1366262A (en) * 1973-01-30 1974-09-11 Portfolio Management Inc Remotely controlled vehicle
DE2344291C2 (de) * 1973-09-03 1983-01-13 Robert Bosch Gmbh, 7000 Stuttgart Sicherheitseinrichtung für eine Anordnung zum Spurführen von gleisfreien Fahrzeugen
FR2246102B1 (de) * 1973-09-27 1976-10-01 Cit Alcatel
US4008779A (en) * 1974-12-24 1977-02-22 Kabushiki Kaisha Toyoda Jidoshokki Seisakusho Power steering control system for industrial trucks
US3936782A (en) * 1975-01-29 1976-02-03 Automatic Switch Company Automatic transfer switch
JPS5266176A (en) * 1975-11-28 1977-06-01 Komatsu Ltd Communication apparatus for unmanned vehicle
EP0007790A1 (de) * 1978-08-01 1980-02-06 Imperial Chemical Industries Plc Unbemanntes, durch Lichtsignale selbst-gesteuertes Fahrzeug mit nicht-gerichteten Empfangseinrichtungen
US4372407A (en) * 1978-08-17 1983-02-08 Owens-Illinois, Inc. Independent steering and propulsion system for off road vehicle
DE2928351A1 (de) * 1979-07-13 1981-02-19 Volkswagenwerk Ag Antriebsvorrichtung fuer kraftfahrzeuge, insbesondere gelaendefahrzeuge
DE3110499C2 (de) 1981-03-18 1983-12-01 Jungheinrich Unternehmensverwaltung Kg, 2000 Hamburg Fahrzeug mit Überwachungsvorrichtung und Bremsvorrichtung als freiverfahrbares, insbesondere induktivgeführtes Fahrzeug
DE3214408A1 (de) * 1982-04-20 1983-10-20 Ernst Wagner Kg, 7410 Reutlingen Lenkvorrichtung fuer ein leitdrahtgefuehrtes, selbstfahrendes fahrzeug
GB2129161B (en) 1982-10-14 1986-02-26 Industry The Secretary Of Stat Automatic control of vehicles
JPS59105731A (ja) * 1982-12-09 1984-06-19 Mitsubishi Electric Corp 自動搬送車の通信装置
JPS59122141A (ja) * 1982-12-28 1984-07-14 Fujitsu Ltd 赤外線通信方式
JPS59167363A (ja) * 1983-03-15 1984-09-20 株式会社東芝 移動機の運転制御装置
EP0142594B1 (de) * 1983-10-26 1989-06-28 Automax Kabushiki Kaisha Steuerungssystem für einen bewegbaren Roboter
US4653002A (en) * 1984-09-26 1987-03-24 Westinghouse Electric Corp. Navigation system for unmanned vehicles
JPS6195414A (ja) * 1984-10-17 1986-05-14 Hitachi Ltd 移動車の経路探索方式
US4680811A (en) * 1984-12-13 1987-07-14 Veeco Integrated Automation Inc. Vehicle to fixed station infrared communications link
JPH0827811B2 (ja) * 1985-02-28 1996-03-21 株式会社日立製作所 輸送計画作成方法およびシステム
JPH063561B2 (ja) * 1985-08-19 1994-01-12 日本電気株式会社 無人車の誘導路
US4647223A (en) * 1985-08-29 1987-03-03 Kolpak Industries, Inc. Cold storage room thermometer and back-up power supply
JPS6266114A (ja) * 1985-09-19 1987-03-25 Niles Parts Co Ltd 方位デ−タ補正回路
JPS62138907A (ja) * 1985-12-12 1987-06-22 Toyoda Autom Loom Works Ltd 無人車の誘導法
US4817000A (en) * 1986-03-10 1989-03-28 Si Handling Systems, Inc. Automatic guided vehicle system
US4821192A (en) * 1986-05-16 1989-04-11 Denning Mobile Robotics, Inc. Node map system and method for vehicle
US4807127A (en) * 1986-12-10 1989-02-21 Sumitomo Electric Industries, Ltd. Vehicle location detecting system
JP2639921B2 (ja) * 1987-01-26 1997-08-13 トヨタ自動車株式会社 迂回走行可能な無人走行システム
JPH0653470A (ja) * 1992-07-27 1994-02-25 Fuji Xerox Co Ltd イメージセンサ及びイメージセンサの製造方法

Also Published As

Publication number Publication date
US4926103A (en) 1990-05-15
US4887013A (en) 1989-12-12
EP0213938A2 (de) 1987-03-11
EP0213938B1 (de) 1992-08-05
US5283739A (en) 1994-02-01
EP0213938A3 (en) 1988-10-12
DE3686301D1 (de) 1992-09-10
JPH0785205B2 (ja) 1995-09-13
JPS62216009A (ja) 1987-09-22

Similar Documents

Publication Publication Date Title
DE3686301T2 (de) Eigensichere bremse fuer ein mehrraedriges fahrzeug mit motorgesteuerter lenkung.
DE3686379T2 (de) Regler fuer ein ferngesteuertes fahrzeug unter verwendung der verzoegerten absoluten positionsdaten fuer lenkung und navigation.
EP3371800B1 (de) Verfahren und vorrichtung zur auswahl und übertragung von sensordaten von einem ersten zu einem zweiten kraftfahrzeug
DE60011674T2 (de) Autonomes mehrplattform robotersystem
DE68928565T2 (de) Methode zur Steuerung der Bewegungen eines mobilen Roboters in einer Fabrik mit mehreren Kurs-Knotenpunkten
DE112018006578T5 (de) Wegplanung für autonome sich bewegende vorrichtungen
DE68925558T2 (de) Rückgekoppeltes Navigationssystem für mobile Roboter
EP2722687B1 (de) Sicherheitsvorrichtung für ein Fahrzeug
EP2835973B1 (de) 3D-Kamera und Verfahren zur Erfassung von dreidimensionalen Bilddaten
DE3534183C2 (de)
DE10029423B4 (de) Objekterkennungssystem
DE102017217961A1 (de) Einrichtung zum steuern eines fahrzeugs an einer kreuzung
WO2020089311A1 (de) Steuerungssystem und steuerungsverfahren zum samplingbasierten planen möglicher trajektorien für kraftfahrzeuge
DE102018119469A1 (de) System und verfahren zur verbesserten hinderniserkennung unter verwendung eines v2x-kommunikationssystems
DE102019114796A1 (de) Führungssystem und -verfahren für autonome fahrzeuge
WO2019043171A1 (de) Bewegungsplanung für autonome mobile roboter
DE112018003986T5 (de) Steuervorrichtung, steuerverfahren, programm und mobileinheit
DE112006003007T5 (de) Systeme und Verfahren zum Vermeiden von Hindernissen
DE102020106204A1 (de) Technologien zur Verwaltung eines Weltmodells eines überwachten Gebiets
DE102018215560A1 (de) Verfahren zum Koordinieren und Überwachen von Objekten
DE102020117732A1 (de) Eigenständiges Ausrichten eines Fahrzeugs und einer drahtlosen Ladevorrichtung
DE112020002287T5 (de) Informationsverarbeitungsvorrichtung, informationsverarbeitungsverfahren und programm
DE102019000804B4 (de) Verfahren und Vorrichtung zur präzisen Positionsbestimmung und Erstellung von hochaktuellen Karten mit Sensorfusion
DE102019127062A1 (de) Transportinfrastrukturkommunikation und -steuerung
DE102019207448A1 (de) Simultane Lokalisierung und Kartenerstellung in 2D unter Verwendung eines 3D-Scanners

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee