DE4207001A1 - ROBOTIC GUIDE DEVICE - Google Patents

ROBOTIC GUIDE DEVICE

Info

Publication number
DE4207001A1
DE4207001A1 DE4207001A DE4207001A DE4207001A1 DE 4207001 A1 DE4207001 A1 DE 4207001A1 DE 4207001 A DE4207001 A DE 4207001A DE 4207001 A DE4207001 A DE 4207001A DE 4207001 A1 DE4207001 A1 DE 4207001A1
Authority
DE
Germany
Prior art keywords
nodes
node
robot
connection
voltage
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.)
Withdrawn
Application number
DE4207001A
Other languages
German (de)
Inventor
Gillian Fiona Marshall
Lionel Tarassenko
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.)
UK Secretary of State for Defence
Original Assignee
UK Secretary of State for Defence
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 UK Secretary of State for Defence filed Critical UK Secretary of State for Defence
Publication of DE4207001A1 publication Critical patent/DE4207001A1/en
Withdrawn 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/0259Control of position or course in two dimensions specially adapted to land vehicles using magnetic or electromagnetic means
    • G05D1/0265Control of position or course in two dimensions specially adapted to land vehicles using magnetic or electromagnetic means using buried wires
    • 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/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0242Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using non-visible light signals, e.g. IR or UV signals
    • 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/0255Control of position or course in two dimensions specially adapted to land vehicles using acoustic signals, e.g. ultra-sonic singals

Landscapes

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

Description

Die Erfindung bezieht sich auf eine Vorrichtung zum Führen von Robotern.The invention relates to a device for guiding of robots.

Das Führen von Robotern in einer bekannten Umgebung eines Innenraums, wobei als Nebenbedingung Hindernisse zu vermei­ den sind, ist ein bekanntes Problem auf dem Gebiet des Planens von Roboterwegen. Es gibt verschiedene Verfahren, dieses Problem zu lösen, beispielsweise Vorrichtungen, die alle möglichen Pfade untersuchen und den günstigsten Pfad aussuchen, bevor sich der Roboter von seiner Startposition wegbewegt, oder Vorrichtungen, die ein Verfahren mit einem künstlichen Potentialfeld implementieren. Bei den Verfahren mit dem künstlichen Potentialfeld werden Hindernisse in einer Softwaresimulation auf einem logischen Chip, der am Roboter vorgesehen ist, als eine abstoßende Kraft und das Ziel als eine anziehende Kraft dargestellt. Ein logischer Chip ist normalerweise ein elektronischer Chip, der die gesamte Logik zum Führen des Roboters beinhaltet, wobei die Logik normalerweise durch elektronische binäre Bausteine, wie UND-Gatter, ODER-Gatter, NAND-Gatter usw. implementiert wird. Wenn das Verfahren mit dem künstlichen Potentialfeld verwendet wird, wird ein Potentialfeld über die Darstellung der Umgebung, durch die der Roboter zu führen ist, gelegt. Ein Pfad wird ausgewählt, indem ausgehend von der Roboter­ startposition dem Gradienten des Potentialfelds folgend auf das Ziel zu im Potentialfeld abgestiegen wird. Diese Lösung hat den Nachteil, daß der Algorithmus dazu neigt, bei be­ stimmten Hinderniskonfigurationen, insbesondere dann, wenn die Hindernisse konkav sind, ein lokales Minimum des Poten­ tialfelds zu finden und dort zur Ruhe zu kommen, anstatt das Ziel zu erreichen.Driving robots in a known environment Interior, avoiding obstacles as a secondary condition is a known problem in the field of Planning robot paths. There are different methods to solve this problem, for example devices that examine all possible paths and the cheapest path choose before the robot moves from its starting position moved away, or devices that have a method with a implement artificial potential field. In the process with the artificial potential field, obstacles in a software simulation on a logical chip, which on Robot is intended as a repulsive force and that Goal represented as an attractive force. A logical one Chip is usually an electronic chip that is  includes all logic for guiding the robot, the Logic usually through electronic binary building blocks, such as AND gates, OR gates, NAND gates, etc. implemented becomes. If the procedure with the artificial potential field a potential field is used over the representation the environment through which the robot is to be guided. A path is selected by starting from the robot start position following the gradient of the potential field the goal is descended in the potential field. This solution has the disadvantage that the algorithm tends to be correct obstacle configurations, especially if the obstacles are concave, a local minimum of the pot tialfelds and to calm down there instead of that To achieve goal.

Als eine Alternative kann eine Roboterführungsvorrichtung ein Widerstandsgitter implementieren. Die Umgebung, durch die geführt werden soll, wird fiktiv in ein Gitter unter­ teilt, das Knotenpunkte an den Schnittpunkten der fiktiven Gitterteilungen hat, und jeder Knoten stellt eine bestimmte Position innerhalb des Bereichs, durch den geführt werden soll, dar. Auf dem logischen Chip wird das Widerstandsgitter derartig dargestellt, daß jeder Verbindung zwischen zwei Knoten ein bestimmter Widerstand (normalerweise in der Form eines ohmschen Widerstandes) zugewiesen wird. Das Wider­ standsgitter hat normalerweise eine hexagonale oder eine rechtwinklige Verbindungsstruktur. Hindernisse werden auf dem Logikchip als Bereiche großen oder unendlichen Wider­ stands inmitten einer Umgebung bzw. eines Hintergrundes mit niedrigem Widerstand dargestellt. Zwischen dem Knoten, der die gegenwärtige Position oder die Startposition des Robo­ ters darstellt, und dem das Ziel darstellenden Knoten wird an den Logikchip eine Spannung angelegt. Dann wird ein Strom fließen, und indem man dem Pfad des maximalen Stroms folgt, findet man einen nahezu optimalen Pfad auf das Ziel zu. Das Verfahren hat folgende Vorteile:As an alternative, a robot guidance device implement a resistance grid. The environment, through that is to be managed is fictitiously placed in a grid divides the nodes at the intersections of the fictional Has grid divisions, and each node represents a certain one Position within the area to be guided through on the logic chip is the resistance grid represented in such a way that each connection between two Knot a certain resistance (usually in the form an ohmic resistance). The contradiction floor grille usually has a hexagonal or a right-angled connection structure. Obstacles are on the logic chip as areas of great or infinite opposition stands in the middle of an environment or background  low resistance. Between the knot that the current position or the starting position of the Robo ters, and the node representing the target a voltage is applied to the logic chip. Then there is a stream flow, and following the path of maximum current, you find an almost optimal path to the destination. The The process has the following advantages:

  • 1. Wenn zumindest ein Pfad zwischen der gegenwärtigen Robo­ terposition und dem Ziel existiert, wird dieser Pfad - im Gegensatz zum Verfahren mit künstlichem Potentialfeld - gefunden, indem man der Richtung des maximalen Stroms folgt.1. If at least one path between the current robo terposition and the goal exists, this path - in Contrary to the procedure with artificial potential field - found by looking at the direction of maximum current follows.
  • 2. Das Verfahren kann durch direkte Hardware implementiert werden, die in Echtzeit betrieben werden kann, d. h., daß fortwährend ausgewertet wird, wo sich die Roboterposition innerhalb des befahrbaren Bereichs befindet, und daß die momentane Roboterposition fortlaufend als die Startposi­ tion des Roboters verwendet wird.2. The method can be implemented by direct hardware that can be operated in real time, d. that is is continuously evaluated where the robot position is located within the passable area, and that the current robot position continuously as the start position tion of the robot is used.

Gelegentlich werden kürzere Pfade dadurch gefunden, daß die Spannung an jeden der Knoten angelegt wird, der auf dem Pfad erreicht wurde, und daß die Richtung, in der fortgeschritten werden soll, immer nur für einen Knoten im voraus bestimmt wird. Diese Abwandlung berücksichtigt dann auch Fehler in der Roboterposition, wenn dieser vom vorgeschriebenen Pfad abweicht. Occasionally shorter paths are found in that the Voltage is applied to each of the nodes on the path was achieved and that the direction in which progressed should always be determined for only one node in advance becomes. This modification then also takes into account errors in the robot position if this is from the prescribed path deviates.  

Bei einer Ausführungsform des Verfahrens mit einem Wider­ standsgitter (aus "Parallel analogue computation for real­ time path planning", Tarassenko, Marshall, Gomez-Castaneda and Murray, Proc. Oxford International workshop on VLSI for Artificial Intelligence and Neural Networks, 1990), werden die Verbindungen zwischen den Knoten aus einzelnen Transi­ storen gebildet, wobei eine RAM-Zelle (Random Access Memory element) mit der Basis bzw. dem Gate verbunden ist, so daß der Transistor entweder sperrt (keine Verbindung, d. h. Hin­ dernis) oder leitet (Verbindung mit geringem Widerstand, also Hintergrund).In one embodiment of the method with a counter standing grid (from "Parallel analogue computation for real time path planning ", Tarassenko, Marshall, Gomez-Castaneda and Murray, Proc. Oxford International workshop on VLSI for Artificial Intelligence and Neural Networks, 1990) the connections between the nodes from individual transis storen formed, whereby a RAM cell (Random Access Memory element) is connected to the base or the gate, so that the transistor either blocks (no connection, i.e. out dernis) or conducts (connection with low resistance, background).

Bei der obigen Ausführungsform kann jeder Knoten mittels eines Verbindungstransistors mit einer Spannungsversorgungs­ schiene verbunden werden. Das Anlegen einer hohen Spannung von der Spannungsversorgungsschiene an einen bestimmten Knoten wird durch den Logikchip ausgewertet, und ein Robo­ terbewegungs-Steuerungschip, der auch am Roboter angebracht ist, stellt die gegenwärtige Roboterposition innerhalb des befahrbaren Bereichs als eben diesen Knoten dar. Genausogut kann jeder der Knoten über Verbindungstransistoren nach Masse verbunden werden, wobei der Knoten zum Anzeigen des Ziels geerdet wird. Das Führen eines Roboters besteht dann aus:In the above embodiment, each node can be made using of a connection transistor with a voltage supply rail are connected. Applying a high voltage from the power supply rail to a specific one Node is evaluated by the logic chip, and a robo Movement control chip, which is also attached to the robot is the current robot position within the passable area as this node. Exactly as well each of the nodes can be connected via connection transistors Ground are connected, with the knot for displaying the Target is grounded. There is then a robot out:

  • 1. Programmieren des Widerstandsgitters mit dem Rand des befahrbaren Bereichs und den Positionen der Hindernisse, 1. Programming the resistance grid with the edge of the accessible area and the positions of the obstacles,  
  • 2. Anlegen der Spannung von der Spannungsversorgungsschiene an den der gegenwärtigen Roboterposition entsprechenden Knoten, und2. Apply the voltage from the power supply rail at the current robot position Knot, and
  • 3. Auslesen des Pfades mit maximalem Strom.3. Reading out the path with maximum current.

Das Auslesen der Richtung mit maximalem Strom muß so ausge­ führt werden, daß das Gleichgewicht innerhalb des Gitters nicht verändert wird. Eine hinreichend einfache Anwendungs­ weise der obigen Ausführungsform erfordert es, daß diese Art des Auslesens auf einem Chip durchgeführt werden kann, wobei dieser Chip vorzugsweise der Logikchip ist. Die ausgewählten Daten werden dann üblicherweise einem Steuerungschip zuge­ führt, der die Befehle für die Roboterbewegung steuert.The reading of the direction with maximum current must be so leads to the balance within the grid is not changed. A sufficiently simple application as the above embodiment requires that this type the reading can be carried out on a chip, wherein this chip is preferably the logic chip. The selected ones Data is then usually sent to a control chip that controls the commands for robot movement.

Es gibt zwei Verfahren, mit denen das Auslesen auf dem Logikchip durchgeführt werden kann. Es können die Ströme in den Widerständen, die denjenigen Knoten umgeben, der die gegenwärtige Roboterposition darstellt, ausgelesen werden und dann der Maximalstrom ausgewählt werden. Um dieses ohne nennenswerte Änderung der fließenden Ströme durchzuführen, werden umfangreiche und große Schaltungen benötigt, so daß sich die Anzahl der Knoten, die auf einem Logikchip inte­ griert werden können, reduziert. Alternativ hierzu können die Spannungen der Knoten, die denjenigen Knoten umgeben, der die gegenwärtige Roboterposition repräsentiert, ausgele­ sen werden, und der Pfad mit minimaler Spannung wird ausge­ wählt. Dieses Verfahren ist wesentlich einfacher, da ledig­ lich einfache Source-Folger-Pufferschaltungen oder Emitter­ Folger-Pufferschaltungen verwendet werden können, um die Ausleseschaltung vom Gitter zu isolieren.There are two methods by which reading on the Logic chip can be performed. The currents in the resistances that surround the knot that the represents the current robot position and then the maximum current can be selected. To do this without carry out significant changes in the flowing currents, extensive and large circuits are required, so that the number of nodes integrated on a logic chip can be reduced. Alternatively, you can the tensions of the nodes surrounding that node, representing the current robot position and the path with minimal tension is drawn out chooses. This procedure is much easier because it is single Lich simple source follower buffer circuits or emitters  Follower buffer circuits can be used to control the Isolate readout circuit from the grid.

Aufgabe der Erfindung ist es, eine verbesserte Vorrichtung zum Planen eines Roboterpfades anzugeben.The object of the invention is an improved device to plan a robot path.

Diese Aufgabe wird anspruchsgemäß gelöst. Unteransprüche sind auf bevorzugte Ausführungsformen der vorliegenden Er­ findung gerichtet.This task is solved according to the requirements. Subclaims are on preferred embodiments of the present Er direction directed.

Im folgenden werden bezugnehmend auf die Zeichnungen einzel­ ne Ausführungsformen der vorliegenden Erfindung beschrieben. Es zeigen:The following are individual with reference to the drawings ne embodiments of the present invention described. Show it:

Fig. 1 eine schematische Darstellung einer befahr­ baren Umgebung, Fig. 1 is a schematic representation of a cash befahr environment,

Fig. 2 eine schematische Darstellung eines Roboters, Fig. 2 is a schematic representation of a robot,

Fig. 3 die Darstellung eines Teils eines Wider­ standsgitters, bei dem ein Knoten, der eine zugeordnete niedrigste Spannung hat, nicht einem Pfad mit maximalem Strom entspricht, Figure 3 is an illustration of a portion standing lattice. A reflection in which a node that has an associated lowest voltage, does not correspond to a path with the maximum current,

Fig. 4 ein Flußdiagramm für die Planung eines Robo­ terpfades, Fig. 4 is a flowchart for planning a Robo terpfades,

Fig. 5 eine typische Schaltung zum Zuweisen einer hohen Spannung an eine Busleitung, Fig. 5 is a typical circuit for assigning a high voltage to a bus line,

Fig. 6 eine typische Schaltung zum Zuweisen einer Spannung an eine Busleitung, Fig. 6 shows a typical circuit for assigning a voltage on a bus line,

Fig. 7 eine typische Schaltung, um Kanten eines Widerstandsgitters als Verbindungen mit offe­ ner Schaltung darzustellen, und Fig. 7 is a typical circuit to illustrate edges of a resistor grid as connections with open circuit, and

Fig. 8 ein schematisches Diagramm einer typischen Komparatorschaltung, die zur Auswahl der Richtung der Roboterbewegung verwendet wird. Fig. 8 is a schematic diagram of a typical comparator circuit which is used to select the direction of the robot movement.

Erfindungsgemäß weist eine Vorrichtung zum Planen eines Roboterpfades auf
Einrichtungen zum Implementieren eines Widerstandsgitters mit Knoten und Verbindungen zwischen den Knoten,
Einrichtungen zum Implementieren der Steuerung der Roboter­ bewegungen,
Einrichtungen zum Implementieren der Richtungsauswahl der Roboterbewegung,
kennzeichnende Merkmale sind, daß
die Einrichtungen zum Implementieren der Auswahl der Richtung der Roboterbewegung Einrichtungen aufweisen zum Erfassen von Verbindungen zwischen Knoten mit offener Schal­ tung sowie Einrichtungen, die verhindern, daß sich der Robo­ ter längs eines Pfades bewegt, der einer Verbindung zwischen Knoten mit einer offenen Schaltung zugeordnet ist.
According to the invention, a device for planning a robot path has
Means for implementing a resistance grid with nodes and connections between the nodes,
Devices for implementing the control of the robot movements,
Devices for implementing the direction selection of the robot movement,
characteristic features are that
the means for implementing the selection of the direction of robot motion include means for detecting connections between nodes with an open circuit and means for preventing the robot from moving along a path associated with a connection between nodes with an open circuit.

Die erfindungsgemäße Vorrichtung löst somit ein Problem (nämlich Verbindungen zwischen Knoten mit offener Schal­ tung), das bisher nicht erkannt wurde und dessen Folgerungen nicht näher untersucht wurden.The device according to the invention thus solves a problem (namely connections between nodes with an open scarf tung) that has not been recognized so far and its consequences were not examined in more detail.

Eine Verbindung zwischen zwei Knoten kann aus mehreren Grün­ den ein offener Schaltkreis, eine offene Schaltung oder einfach offen sein, beispielsweise weil sie einen Teil eines Hindernisses darstellt, oder Herstellungsfehler ergeben einen fehlerhaften Transistor, der unabhängig von der Pro­ grammierung immer offen bleibt.A connection between two nodes can consist of several green an open circuit, an open circuit or just be open, for example because it's part of a Represents an obstacle or result in manufacturing defects a faulty transistor, regardless of the pro programming always remains open.

Eine typische Vorrichtung, die zur Implementierung der Er­ findung verwendet werden kann, ist beispielsweise diejenige, die zwischen zwei Knoten eine Verbindung mit offener Schal­ tung dadurch festlegt, daß angemessene Knotenspannungen, die hoch in bezug auf andere Knotenspannungen sind, zugewiesen werden, so daß dann, wenn die Roboterbewegungsrichtung ent­ sprechend dem Kriterium der niedrigsten Knotenspannung aus­ gewählt wird, ein Vergleich der Knotenspannungen ergibt, daß eine Verbindung zwischen Knoten mit offener Schaltung keine gültige Auswahl für die Richtung der Roboterbewegung dar­ stellt. Wenn anders herum die Roboterbewegung mit dem Krite­ rium der höchsten Knotenspannung ausgewählt wird, können Knotenspannungen, die mit Verbindungen zwischen Knoten mit offener Schaltung assoziiert sind, eine im Vergleich zu anderen Knotenspannungen niedrige Spannung zugewiesen wer­ den. Beide oben genannten beispielhaften Vorrichtungen, die zur Implementierung der Erfindung geeignet sind, verwenden Auswahlkriterien, die auf einem Spannungsvergleich basieren, um eine Spannung auszuwählen, die derjenigen, die dem Ziel­ knoten zugeordnet ist, am nächsten liegt. Andere Implemen­ tierungen weisen eine andernorts stattfindende Beurteilung von Knotenspannungen derjenigen Knoten auf, die die Position eines Roboters umgeben, mit einer daran anschließenden Aus­ wahl der Bewegungsrichtung auf der Grundlage von berechneten Stromgrößen. Solche Berechnungen können Interpolationssche­ mata beinhalten, beispielsweise die Auswahl der Bewegungs­ richtung entsprechend der Bestimmung einer gewichteten Summe aller Stromvektoren.A typical device used to implement the Er can be used is, for example, the one the connection between two nodes with an open scarf tion determines that appropriate node tensions, the high with respect to other node voltages be so that when the robot movement direction ent according to the criterion of the lowest node tension is selected, a comparison of the node stresses shows that no connection between open circuit nodes valid selection for the direction of the robot movement poses. If the other way around the robot movement with the Krite rium of the highest node voltage can be selected Node voltages associated with connections between nodes open circuit are associated, one compared to  low voltage to other node voltages the. Both of the above exemplary devices that are suitable for implementing the invention Selection criteria based on a voltage comparison to select a tension that of those who target is assigned to the nearest node. Other implemen tations indicate an assessment taking place elsewhere of node tensions of those nodes that have the position surrounded by a robot, with a subsequent off choice of direction of movement based on calculated Current quantities. Such calculations can be interpolated mata include, for example, the selection of the movement direction according to the determination of a weighted sum of all current vectors.

Die erfindungsgemäße Vorrichtung verhindert außerdem ein Problem, das im Stand der Technik immer wieder auftritt, wonach der Roboter zwischen zwei Knoten oszilliert. Diese Oszillation kann verhindert werden, indem der Beginn eines Oszillationszyklus zwischen zwei Knoten erfaßt wird, und wenn dies auftritt, wird die Verbindung zwischen den zwei Knoten so verändert, daß sie eine offene Schaltung ist, so daß die Oszillationsschleife unterbrochen ist.The device according to the invention also prevents Problem that occurs again and again in the prior art, after which the robot oscillates between two nodes. These Oscillation can be prevented by starting a Oscillation cycle between two nodes is detected, and when this occurs, the connection between the two Node changed so that it is an open circuit, so that the oscillation loop is broken.

Fig. 1 ist eine schematische Darstellung einer befahrbaren Umgebung 1, beispielsweise eines Raums oder eines Stockwerks einer Fabrik, die fiktiv in ein rechtwinkliges Netzwerk von Knoten unterteilt ist, was als Interknotennetzwerk bezeich­ net wird. Typischerweise wird ein Raum von etwa 9 m2 in ein Interknotennetzwerk von 100 Knoten unterteilt, obwohl natür­ lich auch feinere oder gröbere Interknotennetzwerke verwen­ det werden können. Jeder Knoten des Interknotennetzwerks stellt eine individuelle und diskrete Position innerhalb der befahrbaren Umgebung dar. Knoten 2 stellt die Positionierung eines (typischerweise zylindrischen) Roboters 3 dar, Fig. 4 die Zielposition für den Roboter, zu der er geführt werden soll. In der befahrbaren Umgebung sind außerdem Hindernisse 5, 6 und 7 vorhanden. Hindernisse können beispielsweise Tische oder Türen sein, wenn die befahrbare Umgebung ein Raum ist, oder Ausrüstungsteile und Maschinen, wenn die befahrbare Umgebung eine Fabriketage ist. Ein typisches Roboterführungsproblem ist es dann, den Roboter dazu zu bringen, einem Pfad, beginnend an der Startposition, bei­ spielsweise Knoten 2 und endend an der Zielposition, bei­ spielsweise dem Knoten 4, derart zu folgen, daß der Roboter allen Hindernissen, die in der befahrbaren Umgebung vorhan­ den sind, beispielsweise den Hindernissen 5, 6 und 7, aus­ weicht. Die Führung des Roboters durch Implementierung des sogenannten Widerstandsgitterverfahrens verwendet die Knoten des Interknotennetzwerks als die Darstellung von diskreten Positionen innerhalb der befahrbaren Umgebung und weist jeder Verbindung zwischen einem Knoten und den jeweiligen Nachbarknoten Widerstände zu. Jeder Verbindung zwischen Knoten sind Widerstände entsprechend standardisierten Wider­ standsgittertechniken zugeordnet, derart, daß Hindernisse als Bereiche hohen oder unendlich hohen Widerstands vor einem Hintergrund von konstant niedrigem Widerstand darge­ stellt sind. Typische Standard-Widerstandsgittertechniken haben Verbindungen zwischen Knoten, die vollständig außer­ halb eines Hindernisses liegen und denen ein geringer Wider­ stand zugeordnet ist. Verbindungen zwischen Knoten, die Positionen darstellen, die teilweise oder ganz innerhalb eines Hindernisses liegen, werden hohe Widerstände zugeord­ net. Jedes Hindernis wird vergrößert dargestellt, um die physikalische Ausdehnung des Roboters zu berücksichtigen (ist beispielsweise der Roboter zylindrisch, wird die Dar­ stellung der Hindernisse um den halben Durchmesser des Robo­ ters vergrößert, es kann aber auch die Darstellung des Roboters um den halben Durchmesser des Roboters vergrößert werden), und Verbindungen zwischen Knoten, die ganz oder teilweise in die Darstellung der vergrößerten Regionen fal­ len, wird ein Widerstand zugewiesen, der entweder hoch oder mittel im Vergleich zum Hintergrund mit niedrigem Widerstand ist. Fig. 1 is a schematic representation of a navigable environment 1 , for example a room or a floor of a factory, which is fictitiously divided into a right-angled network of nodes, which is referred to as an inter-node network. Typically, a space of about 9 m 2 is divided into an inter-node network of 100 nodes, although of course finer or coarser inter-node networks can also be used. Each node of the inter-node network represents an individual and discrete position within the navigable environment. Node 2 represents the positioning of a (typically cylindrical) robot 3 , FIG. 4 the target position for the robot to which it is to be guided. Obstacles 5 , 6 and 7 are also present in the passable area. Obstacles can be, for example, tables or doors if the passable area is a room, or equipment and machines if the passable area is a factory floor. A typical robot guidance problem is then to get the robot to follow a path starting from the starting position, for example node 2 and ending at the target position, for example node 4 , in such a way that the robot overcomes all obstacles in the are passable environment existing, for example the obstacles 5 , 6 and 7 , from giving way. The guidance of the robot by implementing the so-called resistance grid method uses the nodes of the inter-node network as the representation of discrete positions within the navigable environment and assigns resistances to each connection between a node and the respective neighboring nodes. Each connection between nodes are assigned resistors according to standardized resistance grid techniques, such that obstacles are represented as areas of high or infinitely high resistance against a background of constantly low resistance. Typical standard resistance grid techniques have connections between nodes that are completely out of the way of an obstacle and that have a low resistance associated with them. Connections between nodes that represent positions that are partially or completely within an obstacle are assigned high resistances. Each obstacle is shown enlarged in order to take into account the physical expansion of the robot (for example, if the robot is cylindrical, the representation of the obstacles is enlarged by half the diameter of the robot, but it can also represent the robot by half the diameter of the robot ) and connections between nodes that fall wholly or partially in the representation of the enlarged regions are assigned a resistance that is either high or medium compared to the low resistance background.

Fig. 2 zeigt schematisch den Roboter 3, der für die Bewegung in einer befahrbaren Umgebung geeignet ist. Der Roboter hat Sensoren 10, die zur Erfassung der Position des Roboters innerhalb der befahrbaren Umgebung verwendet werden. Die Sensoren sind typischerweise elektromagnetische Detektoren, beispielsweise Infrarotdetektoren, oder Vibrationssensoren, beispielsweise Vielwellensensoren oder Sonar. Die von den Sensoren bereitgestellte Information wird als Eingabe für einen Auswertungschip 11 verwendet, der die von den Sensoren empfangene Information derartig auswertet, daß er Informa­ tionen an den Logikchip 12 und an das Steuerungsmodul 13 beispielsweise in Form von Koordinaten der gegenwärtigen Roboterstartposition in bezug auf das Interknotennetzwerk und dem zugeordneten Widerstandsnetzwerk ausgibt. Der Logik­ chip weist u. a. eine Logik zur Führung des Roboters von seiner anfänglichen Startposition zur Zielposition auf. Das Steuerungsmodul führt Funktionen durch, u. a. das Bewegen des Roboters 3 mittels beispielsweise einer Motoreinheit 14, eines Lenkmechanismus 15 und Rädern 16. Das Steuerungsmodul kann auch andere Funktionen ausführen, beispielsweise Über­ tragung von Signalen zum Logikchip betreffend die momentane Position des Roboters, Hinderniserfassung und das Mitteilen von Positionen von neuen oder veränderten Hindernissen an den Logikchip. Fig. 2 shows schematically the robot 3 , which is suitable for movement in a drivable environment. The robot has sensors 10 which are used to detect the position of the robot within the drivable environment. The sensors are typically electromagnetic detectors, for example infrared detectors, or vibration sensors, for example multi-wave sensors or sonar. The information provided by the sensors is used as input for an evaluation chip 11 , which evaluates the information received from the sensors in such a way that it informs the logic chip 12 and the control module 13, for example in the form of coordinates of the current robot start position in relation to the Internode network and the associated resistance network outputs. The logic chip has, among other things, logic for guiding the robot from its initial starting position to the target position. The control module performs functions, including moving the robot 3 by means of, for example, a motor unit 14 , a steering mechanism 15 and wheels 16 . The control module can also perform other functions, for example the transmission of signals to the logic chip relating to the current position of the robot, obstacle detection and the notification of positions of new or changed obstacles to the logic chip.

Fig. 3 zeigt ein einfaches Widerstandsgitter 20 mit einer Verbindung zwischen Knoten mit einer offenen Schaltung, möglicherweise aufgrund eines fehlerhaften Transistors oder aufgrund der Darstellung eines Teiles eines Hindernisses. Das Widerstandsgitter basiert auf einem Interknotennetzwerk von hexagonaler Topologie, das Widerstandsgitter kann auch als Teil eines größeren typischen Widerstandsgitters ange­ sehen werden. Im Widerstandsgitter 20 wurde der Knoten 21 durch ein Steuerungsmodul (nicht dargestellt) als die Start­ position des Roboters bestimmt, so daß entsprechend herkömm­ lichen Widerstandsgitterverfahren dieser Knoten an eine hohe Spannung gelegt ist, in diesem Fall an eine Spannung, die von einer Spannungsversorgungsschiene (ebenso nicht darge­ stellt) stammt. Die Spannungsversorgungsschiene kann auf einer beliebig ausgewählten Spannung liegen, üblicherweise wird sie so nah wie möglich an 5 V gehalten. Knoten 27 ist als Darstellung der Zielposition, die durch den Roboter zu erreichen ist, festgelegt, und ist somit entsprechend dem gewöhnlichen Widerstandsgitterverfahren geerdet, beispiels­ weise auf eine Spannung von 0 V gelegt. Die Nachbarn des Knoten 21 sind die Knoten 22, 23 und 24, von denen dem Knoten 23 durch den Logikchip eine Spannung kleiner als die der anderen Nachbarknoten zugewiesen wurde, da er dem Kno­ ten, der die Zielposition darstellt, Knoten 27, am nächsten liegt. Die Auswahl eines Bewegungspfades zwischen Knoten 21 und 27 mittels einer herkömmlichen Widerstandsgitterlogik wird nun aber eine ungültige Roboterbewegung auslösen, da die Verbindung 28 zwischen den Knoten 21 und 23 eine offene Schaltung ist. Sobald sich ein Roboter längs eines Pfades bewegt, der durch eine Verbindung zwischen Knoten mit offe­ ner Schaltung dargestellt ist, stoppt dies alle weiteren Bewegungen des Roboters. Das durch die Verbindungen zwischen Knoten mit offener Schaltung auftretende Problem ist ver­ gleichsweise selten bei der Anwendung von Widerstandsgittern für die Führung von Robotern, hat aber nichtsdestoweniger katastrophale Auswirkungen auf die Bewegung des Roboters, wenn sie doch auftreten, da die Bewegung eines Roboters in die Richtung, die durch eine Verbindung zwischen Knoten mit offener Schaltung dargestellt wird, zu einer Kollision mit einem Hindernis und nachfolgender Beschädigung des Roboters und/oder des Hindernisses führen könnte. Fig. 3 shows a simple resistor grid 20 with a connection between nodes with an open circuit, possibly due to a faulty transistor or due to the representation of a part of an obstacle. The resistor grid is based on an inter-node network of hexagonal topology, the resistor grid can also be seen as part of a larger typical resistor grid. In the resistance grid 20 , the node 21 was determined by a control module (not shown) as the starting position of the robot, so that according to conventional resistance grid methods, this node is connected to a high voltage, in this case to a voltage from a power supply rail (also not shown). The voltage supply rail can be at any selected voltage, usually it is kept as close to 5 V as possible. Node 27 is defined as a representation of the target position which can be reached by the robot, and is therefore grounded in accordance with the usual resistance grid method, for example at a voltage of 0 V. The neighbors of node 21 are nodes 22 , 23 and 24 , of which node 23 has been assigned a voltage lower than that of the other neighboring nodes by the logic chip, since it is closest to the node representing the target position, node 27 . However, the selection of a movement path between nodes 21 and 27 by means of conventional resistance grid logic will now trigger an invalid robot movement, since the connection 28 between nodes 21 and 23 is an open circuit. As soon as a robot moves along a path that is represented by a connection between nodes with an open circuit, this stops all further movements of the robot. The problem posed by the connections between open circuit nodes is comparatively rare when using resistance grids to guide robots, but it nonetheless has catastrophic effects on the movement of the robot if it does occur because the movement of a robot in the direction , which is represented by a connection between nodes with an open circuit, could lead to a collision with an obstacle and subsequent damage to the robot and / or the obstacle.

Typische Schritte, die durch eine Vorrichtung für die Führung eines Roboters, längs eines Pfades 25 innerhalb einer befahrbaren Umgebung durchgeführt werden, werden nun be­ schrieben. Fiktiv ist die befahrbare Umgebung in ein Inter­ knotennetzwerk unterteilt. Knoten des Interknotennetzwerks sind diskrete Positionen innerhalb der befahrbaren Umgebung und sind auf einem Logikchip als Knoten eines Widerstands­ gitters dargestellt. Die befahrbare Umgebung wird durch die Sensoren des Roboters überwacht, so daß die ursprüngliche Startposition und die Positionen eines oder mehrerer Hinder­ nisse erfaßt werden. Die Sensoren senden ein Signal an einen Auswertechip, der wiederum Signale an den Logikchip schickt, die Informationen über diese Positionen enthalten. Der Logikchip kombiniert diese Informationen mit derjenigen über die Zielposition (wie sie durch das Befehlsmodul bereit­ gestellt wurde), um zwischen die Knoten des Widerstands­ gitters angemessene Widerstände zu legen. Jede Verbindung zwischen Knoten des Widerstandsnetzes wird ein Widerstand entsprechend seiner Position in bezug auf das oder die Hindernisse gegeben. Die Startposition, die die anfängliche Startposition zu Beginn der Führung des Roboters ist, wird in einem Schieberegister gespeichert. Der Logikchip liest dann die Spannungen all der Knoten, die den die anfängliche Startposition repräsentierenden Knoten umgeben. Der Logik­ chip ist hierzu in der Lage, da in seine Struktur ein Bus vorgesehen ist, wobei als Bus eine Übertragungseinrichtung für eine Anzahl von Informationseinheiten parallel von einem Teil einer Logik zu einer anderen verstanden wird. Ein Bus besteht aus einer Anzahl von Busleitungen, typischerweise Kabeln, Leitungen oder Verbindungen, von denen jede in der Lage ist, eine Informationseinheit zu übertragen. Innerhalb des Logikchips 12 sind die Busleitungen über das Gitter so verteilt, daß für jeden bestimmten Knoten ausreichend viele Busleitungen verfügbar sind, um Informationen über jede mögliche Bewegungsrichtung von dem bestimmten Knoten zu übertragen. Somit würde ein Bus für ein Widerstandsgitter hexagonaler Topologie sechs Leitungen haben, die in der Lage sind, sechs Informationseinheiten zu übertragen. Obwohl jeder Knoten den Zugriff hat, seine Spannung als Information an eine passende Busleitung zu liefern, wird es nur den Spannungen derjeniger Knoten erlaubt, auf den Bus gelegt zu werden, deren Knoten unmittelbare Nachbarknoten des die anfängliche Startposition darstellenden Knotens sind. Nach­ dem für die Zuführung von Informationen bezüglich der Kno­ tenspannungen zum Bus die geeigneten Verbindungen definiert worden sind, wird jede geeignete Verbindung zwischen Knoten daraufhin bewertet, ob sie eine Verbindung zwischen Knoten mit offener Schaltung ist. Wenn eine Knotenverbindung zwischen dem die anfängliche Startposition darstellenden Knoten und einem unmittelbar benachbarten Knoten eine offene Schaltung ist, wird für den unmittelbar benachbarten Knoten eine hohe Spannung an eine geeignete Busleitung angelegt. Typischerweise ist diese hohe Spannung die gleiche wie die, die an den die Startposition repräsentierenden Knoten ange­ legt wurde, beispielsweise 5 V von einer Spannungsversor­ gungsschiene. Alternativ hierzu kann die hohe Spannung auch anders und insbesondere etwas kleiner als die Spannung der Versorgungsschiene sein. Wenn eine Knotenverbindung keine offene Schaltung ist, wird die Spannung, die an dem entspre­ chenden unmittelbaren Nachbarknoten anliegt, durch eine geeignete Busleitung an den Logikchip 12 übertragen. Wenn die Information vom Bus geladen wurde, wird die minimale Spannung ausgewählt. Der Logikchip führt diese Information dem Befehlsmodul 13 in Form eines ausgewählten Knotens zu, der die kleinste Spannung hat. Das Befehlsmodul weist dann die Motoreinheit 14, den Lenkmechanismus 15 und die Räder 16 an, den Roboter zu der Position zu bewegen, die durch den Knoten repräsentiert wird, der eine minimale Spannung zwi­ schen sich und dem die ursprüngliche Startposition repräsen­ tierenden Knoten hat. Die neue Roboterposition wird nun seine gegenwärtige Startposition, und alle Vorgänge, die auf die ursprüngliche Startposition angewendet wurden, werden nun dem gleichen Flußdiagramm folgend auf die gegenwärtige Startposition angewendet.Typical steps that are carried out by a device for guiding a robot along a path 25 within a navigable environment will now be described. The navigable environment is fictionally divided into an inter-node network. Nodes of the inter-node network are discrete positions within the trafficable environment and are shown on a logic chip as nodes of a resistance grid. The drivable environment is monitored by the sensors of the robot, so that the original starting position and the positions of one or more obstacles are detected. The sensors send a signal to an evaluation chip, which in turn sends signals to the logic chip that contain information about these positions. The logic chip combines this information with that about the target position (as provided by the command module) to place appropriate resistances between the nodes of the resistance grid. Each connection between nodes of the resistance network is given a resistance according to its position in relation to the obstacle or obstacles. The start position, which is the initial start position at the beginning of the guidance of the robot, is stored in a shift register. The logic chip then reads the voltages of all of the nodes surrounding the node representing the initial starting position. The logic chip is able to do this since a bus is provided in its structure, the bus being understood as a transmission device for a number of information units in parallel from one part of a logic to another. A bus consists of a number of bus lines, typically cables, lines or connections, each of which is capable of transmitting an information unit. Within logic chip 12 , the bus lines are distributed across the grid such that enough bus lines are available for each particular node to transmit information about any possible direction of movement from the particular node. Thus, a bus for a hexagonal topology resistor grid would have six lines capable of carrying six information units. Although each node has access to supply its voltage as information to a suitable bus line, only the voltages of those nodes whose nodes are immediate neighboring nodes of the node representing the initial starting position are allowed to be placed on the bus. After the appropriate connections have been defined for supplying information regarding the node voltages to the bus, each suitable connection between nodes is evaluated to determine whether it is a connection between open circuit nodes. If a node connection between the node representing the initial starting position and an immediately adjacent node is an open circuit, a high voltage is applied to an appropriate bus line for the immediately adjacent node. Typically, this high voltage is the same as that applied to the node representing the starting position, for example 5 V from a voltage supply rail. As an alternative to this, the high voltage can also be different and in particular somewhat lower than the voltage of the supply rail. If a node connection is not an open circuit, the voltage applied to the corresponding immediate neighboring node is transmitted to the logic chip 12 by a suitable bus line. When the information has been loaded from the bus, the minimum voltage is selected. The logic chip supplies this information to the command module 13 in the form of a selected node which has the lowest voltage. The command module then instructs the motor unit 14 , the steering mechanism 15 and the wheels 16 to move the robot to the position represented by the node that has a minimum tension between itself and the node representing the original starting position. The new robot position now becomes its current start position, and all operations that have been applied to the original start position are now applied to the current start position following the same flow diagram.

Die gegenwärtige Startposition verändert sich während der Bewegung des Roboters, da jede Bewegung eine neue gegenwär­ tige Roboterstartposition erzeugt, genausogut können aber auch die Ziel- und Hindernispositionen während der Führung durch die befahrbare Umgebung Veränderungen unterworfen sein. Nach jeder Bewegung des durch den befahrbaren Bereich geführten Roboters können die Widerstände der Verbindungen zwischen den Knoten Änderungen unterworfen sein, um eine neue Beurteilung der Positionen des oder der Hindernisse zu erhalten. Um mögliche Veränderungen der Positionen des oder der Hindernisse einarbeiten zu können, weist der Ablauf der Tätigkeiten der Vorrichtung einen logischen Schritt des Beurteilens dieser Möglichkeit sowie des Programmierens dieser Änderungen im Widerstandsgitter auf, so daß die Wi­ derstände der Verbindungen zwischen den Knoten geändert werden können, um die neue befahrbare Umgebung darzustellen. Der Tätigkeitenablauf der oben beschriebenen Vorrichtung ist in dem in Fig. 4 dargestellten Flußdiagramm zusammengefaßt.The current start position changes during the movement of the robot, since each movement creates a new current robot start position, but the target and obstacle positions can also be subject to changes during the tour through the navigable environment. After each movement of the robot guided through the passable area, the resistance of the connections between the nodes can be subject to changes in order to obtain a new assessment of the positions of the obstacle or obstacles. In order to be able to incorporate possible changes in the positions of the obstacle (s), the sequence of activities of the device has a logical step of assessing this possibility and programming these changes in the resistance grid so that the resistance of the connections between the nodes can be changed, to represent the new drivable environment. The operational sequence of the device described above is summarized in the flow chart shown in FIG. 4.

Hat sich ein Roboter zumindest zweimal von seiner anfängli­ chen Startposition wegbewegt, kann ein zusätzlicher Logik­ schritt im Ablauffluß der Vorrichtung vorgesehen sein. Die­ ser zusätzliche Logikschritt ist auch in dem in Fig. 4 dargestellten Flußdiagramm gezeigt. In diesem Logikschritt wird beurteilt, ob die gegenwärtige Startposition des Robo­ ters, wie sie im Schieberegister gespeichert ist, die glei­ che ist wie seine Startpositionen zwei Bewegungsschritte vor dieser Beurteilung. Befindet sich der Roboter an der glei­ chen Position wie zwei Bewegungsschritte vorher, ist dies die Folge einer Oszillation. Um diese Oszillationsfolge zu unterbrechen, wird derjenigen Verbindung zwischen Knoten ein hoher Widerstand zugewiesen, die als eine Verbindung ausge­ wählt wurde, die in der Richtung entsprechend dem maximalen Spannungsabfall von der Ausgangsposition für die gegenwär­ tige Startposition liegt (d. h. die gleiche Knotenverbindung zu einem Knoten, der als des Roboters gegenwärtige Start­ position im letzten Bewegungsschritt vor der gegenwärtigen Beurteilung festgelegt wurde), so daß verhindert wird, daß der Logikchip diese spezielle Knotenverbindung abermals als Verbindung zwischen Knoten mit minimaler Spannung auswählt.If a robot has moved away from its initial starting position at least twice, an additional logic step can be provided in the flow of the device. This additional logic step is also shown in the flow chart shown in FIG. 4. In this logic step it is judged whether the current starting position of the robot as stored in the shift register is the same as its starting positions two movement steps before this judgment. If the robot is in the same position as two movement steps before, this is the result of an oscillation. In order to interrupt this oscillation sequence, a high resistance is assigned to the connection between nodes which was selected as a connection which lies in the direction corresponding to the maximum voltage drop from the starting position for the current starting position (ie the same node connection to a node, which was determined as the robot's current starting position in the last movement step before the current assessment), so that the logic chip is prevented from selecting this particular node connection again as a connection between nodes with minimal voltage.

Ein typischer Algorithmus, der zur Zuweisung einer hohen Spannung an eine Verbindung zwischen Knoten, im folgenden auch "Knotenverbindung" genannt, mit offener Schaltung durch den Logikchip 12 implementiert werden kann, wird nun angege­ ben. Diese Logik wird für jede Verbindung zwischen Knoten durchgeführt.A typical algorithm which can be implemented by the logic chip 12 with an open circuit for assigning a high voltage to a connection between nodes, hereinafter also referred to as "node connection", is now given. This logic is done for each connection between nodes.

Für jede Verbindung falls (Buserdungszyklus) dann Bus erden, um ihn zu entladen; andernfalls (Knoten X mit Quelle verbun­ den) dann
falls (Verbindung zu Knoten Y geschlossen) dann lege Spannung Y an Busleitung;
sonst Busleitung auf HOCH legen; andernfalls (Knoten Y mit Quelle verbunden) dann falls (Verbindung zu Knoten X ge­ schlossen) dann Spannung X auf Busleitung legen;
sonst
Busleitung auf HOCH legen;
sonst
Busleitung erdfrei.
For each connection if (bus grounding cycle) then ground bus to discharge it; otherwise (node X connected to source) then
if (connection to node Y closed) then apply voltage Y to the bus line;
otherwise set the bus line to HIGH; otherwise (node Y connected to source) then if (connection to node X closed) then apply voltage X to the bus line;
otherwise
Put bus line HIGH;
otherwise
Bus line floating.

Somit wird für jede sinnvolle Knotenverbindung (hier verall­ gemeinert dargestellt als zwischen den Knoten X und Y) die sinnvolle Busleitung für diese spezielle Knotenverbindung geerdet, also überprüft, um sicherzustellen, daß sie unbe­ legt ist und somit bereit zum Empfangen der Spannung des Knotens. Nach diesem Vorgang überprüft der Algorithmus, ob dem Knoten X eine hohe Spannung zugewiesen wurde (überprüft also, ob die gegenwärtige Startposition des Roboters die durch den Knoten X repräsentierte Position ist) und ob die Knotenverbindung zwischen den Knoten X und Y geschlossen, also keine offene Schaltung ist. Wenn der Knoten X der die gegenwärtige Startposition des Roboters darstellende Knoten ist und die Knotenverbindung zwischen den Knoten X und Y (Verbindung XY) geschlossen ist, wird die Spannung des Kno­ ten Y auf eine sinnvolle Busleitung für diese Knotenverbin­ dung gelegt. Wenn die Knotenverbindung zwischen X und Y eine offene Schaltung ist, wird die entsprechende Busleitung für diese Knotenverbindung auf HOCH gelegt (also eine hohe Spannung zugewiesen). Wenn allerdings Knoten X nicht mit der Quelle verbunden ist und somit nicht der Knoten ist, der die gegenwärtige Startposition des Roboters darstellt, fährt der Algorithmus fort zu überprüfen, ob dem Knoten Y eine hohe Spannung zugewiesen wurde (also ob die gegenwärtige Start­ position des Roboters die durch den Knoten y repräsentiert ist), und ob die Knotenverbindung zwischen den Knoten y und X (Verbindung XY) geschlossen ist. Wenn bezugnehmend auf knoten Y beide obigen Bedingungen erfüllt sind, wird die Spannung des Knoten X auf die für diese Knotenverbindung geeignete Busleitung gelegt. Wenn die Knotenverbindung XY eine offene Schaltung ist, wird die entsprechende Busleitung für diese Knotenverbindung auf HOCH gelegt (also hohe Spannung zugewiesen). Wenn Knoten Y nicht die gegenwärtige Startposition des Roboters darstellt, wird die für die Kno­ tenverbindung geeignete Busleitung erdfrei gehalten, d. h. sie übernimmt keine Spannungsinformation von den mit der Knotenverbindung XY verbundenen Knoten, da weder X noch Y die gegenwärtige Startposition des Roboters darstellen.Thus, for every meaningful node connection (here general shown as between the nodes X and Y) sensible bus line for this special node connection grounded, so checked to make sure they are is ready and ready to receive the tension of the Knot. After this process, the algorithm checks whether  a high voltage has been assigned to node X (checked that is, whether the robot’s current starting position is the position represented by node X) and whether the Node connection between nodes X and Y closed, is not an open circuit. If the node X is the nodes representing current starting position of the robot and the node connection between nodes X and Y (Connection XY) is closed, the voltage of the kno ten Y on a sensible bus line for this node connection manure. If the node connection between X and Y is a is open circuit, the corresponding bus line for set this node connection to HIGH (i.e. a high one Voltage assigned). However, if node X does not match the Source and is therefore not the node that is the represents the current starting position of the robot, the Algorithm continues to check whether node Y is high Voltage has been assigned (i.e. whether the current start position of the robot represented by node y ) and whether the node connection between nodes y and X (connection XY) is closed. If referring to node Y both conditions are met, the Voltage of node X to that for this node connection suitable bus line laid. If the node connection XY is an open circuit, the corresponding bus line for this node connection set to HIGH (i.e. high Voltage assigned). If node Y is not the current one Starting position of the robot represents that for the kno suitable bus line is kept floating, d. H. it does not accept any voltage information from those with the  Node connection XY connected nodes, since neither X nor Y represent the current starting position of the robot.

Fig. 5 zeigt eine logische Schaltung 29, wie sie durch C- MOS-Logikschaltungen aufgebaut wird, um eine Busleitung auf HOCH zu legen, wenn eine Knotenverbindung XY eine offene Schaltung ist. Die Schaltung 29 wird zwischen eine durch eine Spannungsversorgungsschiene 30 bereitgestellte Spannung von etwa 5 V und 0 V gelegt. Der Bus wird über Transistoren 35, 44 und 45 geerdet. Wenn Knoten X die gegenwärtige Start­ position des Roboters darstellt, existiert über Transistoren 31, 32, 38 und 40 ein Schaltungspfad. Wenn Knoten Y die gegenwärtige Startposition des Roboters darstellt, existiert über Transistoren 33, 39 und 41 ein Schaltungspfad. Wenn entweder Knoten X oder Knoten Y die Startposition des Robo­ ters darstellen, entsteht über Transistoren 36 und 37 ein Schaltungspfad, wenn die Knotenverbindung XY eine offene Schaltung ist. Sind weder X noch Y die gegenwärtige Start­ position des Roboters, entsteht ein Schaltungspfad über die Transistoren 31, 32, 33 und 34 sowie Gatter 38, 39, 40 und 41, so daß keine Spannung an die entsprechende Busleitung angelegt wird. Transistor 42 und Gatter 43 werden zur Inver­ tierung von Signalen verwendet, so daß die den Transistor 45 erreichenden Signale invertiert werden. Wenn aufgrund der gegenwärtigen Startposition des Roboters die den Transistor 45 erreichenden Signale durch X (oder Y) repräsentiert wer­ den, und wenn die Knotenverbindung XY geschlossen ist, wird über die Schaltung, die weiter unten bezugnehmend auf Fig. 6 beschrieben wird, die Spannung der Knotenverbindung XY auf die Busleitung gelegt. Wenn aber die gegenwärtige Startposi­ tion des Roboters zwar durch X (oder Y) repräsentiert wird, die Knotenverbindung XY jedoch eine offene Schaltung ist, wird Schalter 46 geschlossen gehalten und der Busleitung wird von der Spannungsversorgungsschiene her eine Spannung von etwa 5 V zugewiesen. FIG. 5 shows a logic circuit 29 as constructed by C-MOS logic circuits to put a bus line HIGH when a node connection XY is an open circuit. The circuit 29 is placed between a voltage of approximately 5 V and 0 V provided by a voltage supply rail 30 . The bus is grounded through transistors 35 , 44 and 45 . If node X represents the current starting position of the robot, a circuit path exists via transistors 31 , 32 , 38 and 40 . If node Y represents the current starting position of the robot, a circuit path exists through transistors 33 , 39 and 41 . If either node X or node Y represent the starting position of the robot, a circuit path is created via transistors 36 and 37 if the node connection XY is an open circuit. If neither X nor Y is the current starting position of the robot, a circuit path is created via transistors 31 , 32 , 33 and 34 and gates 38 , 39 , 40 and 41 , so that no voltage is applied to the corresponding bus line. Transistor 42 and gate 43 are used to invert signals, so that the signals reaching transistor 45 are inverted. If, due to the current starting position of the robot, the signals reaching transistor 45 are represented by X (or Y), and if the node connection XY is closed, the voltage of the circuit is described via the circuit described below with reference to FIG Node connection XY placed on the bus line. However, if the current starting position of the robot is represented by X (or Y), but the node connection XY is an open circuit, switch 46 is kept closed and the bus line is assigned a voltage of approximately 5 V from the voltage supply rail.

Fig. 6 zeigt eine logische Schaltung 50, die dazu verwendet wird, die Spannung der Knotenverbindung XY auf die entspre­ chende Busleitung zu legen. Die Schaltung tritt in Aktion, wenn die logische Schaltung 29 bestimmt hat, daß Knoten X (oder Y) die gegenwärtige Startposition des Roboters reprä­ sentiert und daß die Knotenverbindung XY geschlossen ist. Sollen die logische Schaltung 50 und die logische Schaltung 29 teilweise gemeinsam aufgebaut werden, können Transistoren 51 und 52 gemeinsam verwendet werden, so daß sie auch Tran­ sistoren 31 und 33 (oder 32 und 34, wenn Knoten Y die gegen­ wärtige Startposition des Roboters darstellt) der Logik­ schaltung 29 sind. Die Busleitung ist durch Transistor 53 und Gatter 55 geerdet. Wenn Knoten X (oder Y) als der Knoten bestimmt wurde, der die anfängliche oder gegenwärtige Start­ position darstellt, existiert ein Schaltungspfad über die Transistoren 51, 52, 56 und 57, Gatter 54 und 58 sind offen, wenn die Knotenverbindung XY geschlossen ist. An der Schal­ tungsverbindung 60 liegt somit eine hohe Spannung an, und Gatter 61 leitet eine gepufferte Knotenspannung der geeigne­ ten Busleitung zu. Fig. 6 shows a logic circuit 50 , which is used to apply the voltage of the node connection XY on the corre sponding bus line. The circuit comes into action when logic circuit 29 has determined that node X (or Y) represents the current starting position of the robot and that node connection XY is closed. If the logic circuit 50 and the logic circuit 29 are to be partially built together, transistors 51 and 52 can be used together, so that they also transistors 31 and 33 (or 32 and 34 , if node Y represents the current starting position of the robot) the logic circuit 29 are. The bus line is grounded through transistor 53 and gate 55 . If node X (or Y) has been determined as the node representing the initial or current starting position, a circuit path exists through transistors 51 , 52 , 56 and 57 , gates 54 and 58 are open when node connection XY is closed. A high voltage is thus present at the circuit connection 60 , and gate 61 supplies a buffered node voltage to the suitable bus line.

Befindet sich die gegenwärtige Startposition eines Roboters an der Kante einer befahrbaren Umgebung 1, werden Randeffek­ te dadurch berücksichtigt, daß eine von der Spannungsversor­ gungsschiene 30 stammende Spannung auf eine entsprechende Busleitung gelegt wird, wenn eine nicht existierende Verbin­ dung angesprochen wird. Dies wird durch die Verwendung von logischen Schaltungen implementiert, die an jedem der Knoten angebracht sind, die eine Position am Rande der befahrbaren Umgebung darstellen, wo eine Blindverbindung in die Logik­ schaltung eingebaut ist.If the current starting position of a robot is at the edge of a trafficable environment 1 , edge effects are taken into account in that a voltage originating from the voltage supply rail 30 is placed on a corresponding bus line when a non-existing connection is addressed. This is implemented through the use of logic circuits attached to each of the nodes that represent a position on the edge of the navigable environment where a blind connection is built into the logic circuit.

Fig. 7 zeigt eine logische Schaltung zur Implementierung einer Blindverbindung. Man sieht, daß diese logische Schaltung in etwa die gleiche wie die logische Schaltung 29 ist, mit der Ausnahme, daß Transistoren 33 und 34 und Gatter 39 und 41 bei den Komponenten fehlen, die zur Definierung der Knoten, die mögliche gegenwärtige Startpositionen des Roboters repräsentieren, verwendet werden. Auch die Gatter 36 und 37 sind nicht vorhanden, was dazu führt, daß der Logikschaltungs-Freigabeschalter 46 die Signale, die den Transistor 45 erreichen, unterbinden kann, so daß die Blind­ knotenverbindung eine hohe Spannung von der Versorgungs­ schiene 30 auf die Busleitung legen kann. Figure 7 shows a logic circuit for implementing a blind connection. This logic circuit is seen to be approximately the same as logic circuit 29 , except that transistors 33 and 34 and gates 39 and 41 are absent from the components which, to define the nodes, represent the robot's possible current starting positions , be used. Also the gates 36 and 37 are not present, which means that the logic circuit release switch 46 can prevent the signals that reach the transistor 45 , so that the blind node connection can put a high voltage from the supply rail 30 on the bus line .

Nachdem jeder Busleitung eine Spannung zugeführt wurde, ist es notwendig, die Minimalspannung aus den sechs über den Bus zugeführten Spannungen herauszusuchen. Eine Möglichkeit hierzu ist die, jede der Spannungen einem Analog/Digital­ wandler zuzuführen und digital die minimale Spannung auszu­ wählen. Alternativ hierzu kann eine analoge Schaltung 70, wie in Fig. 8 dargestellt, verwendet werden. Die Komparato­ ren 71, 72, 73, 74, 75 und 76 sind aus Operationsverstärkern gebildet. Die sechs Busleitungen werden so zugeführt, daß jede einzelne Busleitung in einen bestimmten Komparator als Eingang läuft. Jeder Komparator hat außerdem einen Eingang mit einer Referenzspannung 78. Die Referenzspannung wird allmählich von 0 V bis zur Spannung der Spannungsversor­ gungsschiene erhöht. Der erste Komparator, dessen Zustand umschaltet, was durch die Decodierlogik 79 als das Zuleiten einer Spannung, die im wesentlichen kleiner als die der anderen Komparatoren ist, erfaßt wird, entspricht der Kompa­ rator-Busleitung, die mit der geringsten Spannung beauf­ schlagt ist. Nachdem ein Umschaltzustand erreicht wurde, verhindert eine Rückkopplung 80 von der Decodierlogik die weitere Zunahme der Referenzspannung. Die Decodierlogik gibt dann eine digitale Ziffer als eine Eingabe für den Logikchip aus, die die Busleitung mit der geringsten Spannung dar­ stellt, wobei der Logikchip dann diese Information zu den Befehlsmodulen in Form der Richtung, in die sich der Roboter bewegen sollte, schickt. Das Befehlsmodul weist dann die Motoreinheit 14, den Lenkmechanismus 15 und die Räder 16 an, den Roboter in die durch den Logikchip bestimmte Richtung um eine vorbestimmte Distanz zu bewegen, wobei die Distanz den Knotenabstand des Interknotennetzwerks darstellt. Der Robo­ ter bewegt sich somit von Knoten zu Knoten, bis er die Zielposition erreicht.After a voltage has been supplied to each bus line, it is necessary to find the minimum voltage from the six voltages supplied via the bus. One possibility for this is to supply each of the voltages to an analog / digital converter and to select the minimum voltage digitally. Alternatively, an analog circuit 70 as shown in FIG. 8 can be used. The Komparato ren 71 , 72 , 73 , 74 , 75 and 76 are formed from operational amplifiers. The six bus lines are fed in such a way that each individual bus line runs into a specific comparator as an input. Each comparator also has an input with a reference voltage 78 . The reference voltage is gradually increased from 0 V to the voltage of the power supply rail. The first comparator, the state of which switches, which is detected by the decoding logic 79 as the supply of a voltage which is substantially lower than that of the other comparators, corresponds to the comparator bus line which is subjected to the lowest voltage. After a switchover state is reached, feedback 80 from the decoding logic prevents the reference voltage from further increasing. The decoding logic then outputs a digital number as an input to the logic chip which represents the bus line with the lowest voltage, the logic chip then sending this information to the command modules in the form of the direction in which the robot should move. The command module then instructs the motor unit 14 , the steering mechanism 15 and the wheels 16 to move the robot in the direction determined by the logic chip by a predetermined distance, the distance representing the node spacing of the inter-node network. The robot moves from node to node until it reaches the target position.

Die oben angegebenen Ausführungsformen wurden so beschrie­ ben, daß die gesamte oder der größte Teil der Richtungsaus­ wahllogik auf dem Logikchip 12 angeordnet ist. Es ist aber auch möglich, den größten (oder ganzen) Teil der Selektions­ logik außerhalb des Chips in einem externen Prozessor durchzuführen, so daß sich eine Vereinfachung der Logikchip- Schaltung ergibt. Typischerweise kann jede beliebige der Logiken zur Bestimmung beispielsweise bestimmter Knotenspan­ nungen auf Busleitungen, Erden von Busleitungen oder Zuweisung von hoher Spannung zu bestimmten Knoten durch einen externen Prozessor ausgeführt werden, der dann die Richtungsauswahlinformation den entsprechenden Bereichen der Roboterführungsvorrichtung zuführt.The above-mentioned embodiments have been described so that all or most of the directional selection logic is arranged on the logic chip 12 . However, it is also possible to carry out most (or all) of the selection logic outside the chip in an external processor, so that the logic chip circuit is simplified. Typically, any of the logic to determine, for example, certain node voltages on bus lines, ground bus lines, or assign high voltage to certain nodes, can be performed by an external processor, which then supplies the direction selection information to the appropriate areas of the robot guidance device.

Die Logikimplementierung (auf dem Chip oder außerhalb des Chips) kann durch eine Reihe von Kriterien festgelegt sein - beispielsweise Leistungsaufnahme der verschiedenen Chips, die von der Führungsvorrichtung geforderte Ansprechgeschwin­ digkeit, Erleichterung der Kommunikation zwischen Logikchips auf dem Chip und außerhalb des Chips, Anzahl der verfügbaren Busleitungen, Topologie des Interknotennetzwerks usw. Eine typische Implementierung einer Logik, bei der die Leistungs­ aufnahme der Richtungsauswahllogik klein ist, kann einen Ladetransistor pro Busleitung zur Verwendung als Knotenaus­ lesepuffer aufweisen, im Gegensatz zu einem Ladetransistor pro Knoten. Typischerweise kann die Anzahl der Busleitungen begrenzt werden, indem geeignete ausgelesene Knotenspannun­ gen gespeichert werden und dann in ihrem Spannungswert ver­ glichen werden, im Gegensatz zum Vergleich von simultan zugeführten ausgelesenen Knotenspannungen.The logic implementation (on the chip or outside the Chips) can be determined by a number of criteria - for example power consumption of the various chips, the response speed required by the guiding device ability, facilitate communication between logic chips on-chip and off-chip, number of available Bus lines, topology of the inter-node network, etc. A typical implementation of logic where the performance direction selection logic is small, can Charging transistor per bus line for use as a node have read buffers, in contrast to a charging transistor per knot. Typically, the number of bus lines be limited by suitable read node voltage conditions are saved and then ver in their voltage value are compared, in contrast to the comparison of simultaneous supplied read out node voltages.

Claims (9)

1. Vorrichtung zum Planen eines Roboterpfads mit
Einrichtungen zum Implementieren eines Widerstandsgitters mit Knoten (21-28) und Verbindungen (29) zwischen den Knoten,
Einrichtungen zum Implementieren einer Steuerung der Roboterbewegungen,
Einrichtungen zum Implementieren einer Auswahl der Richtung der Roboterbewegung,
dadurch gekennzeichnet, daß die Einrichtungen zum Implementieren der Auswahl der Richtung der Roboterbewegung Einrichtungen zum Erfassen von Verbindungen zwischen Knoten mit offener Schaltung aufweist sowie Einrichtungen, die verhindern, daß sich der Roboter auf einem Pfad bewegt, der einer Verbindung zwischen Knoten mit offener Schaltung zugeordnet ist.
1. Device for planning a robot path with
Means for implementing a resistance grid with nodes ( 21-28 ) and connections ( 29 ) between the nodes,
Devices for implementing control of robot movements,
Means for implementing a selection of the direction of robot movement,
characterized in that the means for implementing the selection of the direction of robot movement includes means for detecting connections between open circuit nodes and means for preventing the robot from moving on a path associated with a connection between open circuit nodes .
2. Vorrichtung nach Anspruch 1, bei der die Einrichtungen zur Implementierung der Auswahl der Richtung der Roboter­ bewegung Einrichtungen zum Vergleichen von den Knoten zugewiesenen Spannungen aufweisen.2. Apparatus according to claim 1, wherein the devices to implement the selection of the direction of the robots movement devices for comparing the nodes have assigned voltages. 3. Vorrichtung nach Anspruch 2, bei der die Einrichtungen zum Vergleichen von den Knoten zugewiesenen Spannungen Einrichtungen zum Auswählen der niedrigsten, einem Knoten zugewiesenen Spannung aufweisen.3. Apparatus according to claim 2, wherein the devices to compare the voltages assigned to the nodes Means for selecting the lowest, one node assigned voltage. 4. Vorrichtung nach Anspruch 3, bei der die Einrichtungen zum Verhindern einer Roboterbewegung längs eines Pfades, der einer Verbindung zwischen Knoten mit offener Schaltung zugeordnet ist, Einrichtungen zum Zuweisen einer hohen Spannung an einen Knoten mit einer Verbindung zwischen Knoten mit offener Schaltung aufweisen.4. The device according to claim 3, wherein the means to prevent robot movement along a path,  that of a connection between nodes with open Circuit is assigned, facilities for assigning a high voltage on a node with a connection between open circuit nodes. 5. Vorrichtung nach Anspruch 2, bei der die Einrichtungen zum Vergleichen von den Knoten zugeordneten Spannungen Einrichtungen zum Auswählen der höchsten, einem Knoten zugewiesenen Spannung aufweisen.5. The device of claim 2, wherein the devices for comparing voltages assigned to the nodes Means for selecting the highest one node assigned voltage. 6. Vorrichtung nach Anspruch 5, bei der die Einrichtungen zum Verhindern einer Roboterbewegung längs eines Pfades, der einer Verbindung zwischen Knoten mit offener Schaltung zugeordnet ist, Einrichtungen zum Zuweisen einer niedrigen Spannung an einen Knoten mit einer Ver­ bindung zwischen Knoten mit offener Schaltung aufweisen.6. The device according to claim 5, wherein the devices to prevent robot movement along a path, that of a connection between nodes with open Circuit is assigned, facilities for assigning a low voltage to a node with a ver have connection between nodes with open circuit. 7. Vorrichtung nach Anspruch 1, bei der die Einrichtungen zum Implementieren der Auswahl der Richtung der Roboter­ bewegung Einrichtungen zum Beurteilen von den Knoten zugewiesenen Spannungen aufweist, und zwar der Spannung derjenigen Knoten, die verschiedene und diskrete Positio­ nen, die die Roboterposition umgeben, darstellen, und Einrichtungen zur Richtungsauswahl auf der Grundlage von berechneten Stromgrößen.7. The apparatus of claim 1, wherein the devices to implement the selection of the direction of the robots Movement devices for assessing the nodes assigned voltages, namely the voltage of those nodes that have different and discrete positions represent the robot position, and Direction selection devices based on calculated current quantities. 8. Vorrichtung nach Anspruch 1, bei der das Widerstandsgit­ ter eine hexagonale Topologie hat. 8. The device according to claim 1, wherein the resistance grid ter has a hexagonal topology.   9. Vorrichtung nach Anspruch 1, bei der das Widerstandsgit­ ter eine rechtwinklige Topologie hat.9. The device of claim 1, wherein the resistance grid ter has a rectangular topology.
DE4207001A 1991-03-05 1992-03-05 ROBOTIC GUIDE DEVICE Withdrawn DE4207001A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB919104576A GB9104576D0 (en) 1991-03-05 1991-03-05 Robot navigation apparatus

Publications (1)

Publication Number Publication Date
DE4207001A1 true DE4207001A1 (en) 1992-09-10

Family

ID=10690985

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4207001A Withdrawn DE4207001A1 (en) 1991-03-05 1992-03-05 ROBOTIC GUIDE DEVICE

Country Status (3)

Country Link
DE (1) DE4207001A1 (en)
FR (1) FR2673736A1 (en)
GB (2) GB9104576D0 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102007013303A1 (en) 2007-03-16 2008-09-18 Robert Bosch Gmbh Method for calculating a collision avoiding trajectory for a driving maneuver of a vehicle
CN101512452B (en) * 2006-07-31 2011-02-02 皮尔茨公司 Camera-based monitoring of machines with moving machine elements for the purpose of collision prevention
CN109242973A (en) * 2018-09-18 2019-01-18 珠海金山网络游戏科技有限公司 A kind of crash tests method, apparatus, electronic equipment and storage medium

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112344943B (en) * 2020-11-20 2022-09-06 安徽工程大学 Intelligent vehicle path planning method for improving artificial potential field algorithm

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101512452B (en) * 2006-07-31 2011-02-02 皮尔茨公司 Camera-based monitoring of machines with moving machine elements for the purpose of collision prevention
DE102007013303A1 (en) 2007-03-16 2008-09-18 Robert Bosch Gmbh Method for calculating a collision avoiding trajectory for a driving maneuver of a vehicle
WO2008113636A1 (en) 2007-03-16 2008-09-25 Robert Bosch Gmbh Method for the calculation of a collision-preventing trajectory for a driving maneuver of a vehicle
US8630762B2 (en) 2007-03-16 2014-01-14 Robert Bosch Gmbh Method for the calculation of a collision-preventing trajectory for a driving maneuver of a vehicle
CN109242973A (en) * 2018-09-18 2019-01-18 珠海金山网络游戏科技有限公司 A kind of crash tests method, apparatus, electronic equipment and storage medium
CN109242973B (en) * 2018-09-18 2022-12-06 珠海金山数字网络科技有限公司 Collision test method and device, electronic equipment and storage medium

Also Published As

Publication number Publication date
GB9104576D0 (en) 1991-04-17
GB2253926A (en) 1992-09-23
GB9204812D0 (en) 1992-04-15
FR2673736A1 (en) 1992-09-11

Similar Documents

Publication Publication Date Title
DE3111027C2 (en)
EP0906596B1 (en) Process automation system
DE2949330C3 (en) Method for controlling and regulating several interrelated operating parameters in an electrical discharge machining machine
DE602004009309T2 (en) AUTOMATIC TEST PATTERN GENERATION
DE4206286C2 (en) Memory access system and method for outputting a digital data stream
DE19639629C2 (en) Programmable, monolithic, integrated logic circuit and method for implementing the same
DE2312707A1 (en) TEST REQUIREMENTS FOR A COMPUTER
DE19732046A1 (en) Process diagnostic system and method for diagnosing processes and states of a technical process
DE69834011T2 (en) Static random access memory circuits
DE69628034T2 (en) HIGH IMPEDANCE MODE FOR JTAG
DE60010614T2 (en) On-line testing of the programmable interconnect network in a field programmable gate array
DE4024594C2 (en)
DE10045671A1 (en) Test device and test method for a semiconductor integrated circuit
DE60206223T2 (en) Method and device for writing a memory
CH621657A5 (en)
DE4207001A1 (en) ROBOTIC GUIDE DEVICE
DE10337509B4 (en) Device for the production of semiconductors
DE4236452C2 (en) Semiconductor memory device
DE60221515T2 (en) STORAGE SYSTEM FOR GRINDING ACCESSORIES AS WISH
DE4344231C2 (en) Integrated circuit device with bit slice cells
DE3317593A1 (en) TEST MEMORY ARCHITECTURE
DE102018000205A1 (en) Numerical control
DE3743438C2 (en) Method and device for generating control signals
DE102005050394A1 (en) Simulate a floating wordline condition in a memory device and related techniques
DE4026581A1 (en) Multi-spindle textile machine control - has slide register at each spindle linked to bus computer at central computer

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee