DE2518077B2 - System zum Feststellen der Winkelorientierung eines Durchlaufteiles relativ zu einem Probeteil - Google Patents

System zum Feststellen der Winkelorientierung eines Durchlaufteiles relativ zu einem Probeteil

Info

Publication number
DE2518077B2
DE2518077B2 DE2518077A DE2518077A DE2518077B2 DE 2518077 B2 DE2518077 B2 DE 2518077B2 DE 2518077 A DE2518077 A DE 2518077A DE 2518077 A DE2518077 A DE 2518077A DE 2518077 B2 DE2518077 B2 DE 2518077B2
Authority
DE
Germany
Prior art keywords
register
scanning
circular
circle
scan
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
DE2518077A
Other languages
English (en)
Other versions
DE2518077A1 (de
Inventor
Jimmie A. Bellbrook Ohio Michaud (V.St.A.)
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.)
Bendix Corp
Original Assignee
Bendix Corp
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 Bendix Corp filed Critical Bendix Corp
Publication of DE2518077A1 publication Critical patent/DE2518077A1/de
Publication of DE2518077B2 publication Critical patent/DE2518077B2/de
Withdrawn legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B7/00Measuring arrangements characterised by the use of electric or magnetic techniques
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B7/00Measuring arrangements characterised by the use of electric or magnetic techniques
    • G01B7/28Measuring arrangements characterised by the use of electric or magnetic techniques for measuring contours or curvatures
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B7/00Measuring arrangements characterised by the use of electric or magnetic techniques
    • G01B7/32Measuring arrangements characterised by the use of electric or magnetic techniques for measuring areas
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0014Image feed-back for automatic industrial control, e.g. robot with camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/24Aligning, centring, orientation detection or correction of the image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/42Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/42Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
    • G06V10/421Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation by analysing segments intersecting the pattern

Description

Die Erfindung betrifft ein System gemäß dem Oberbegriff des Anspruchs 1.
Bei automatisierten Produktions- und/oder Inspektionssystemen, die auf der Grundlage von einzelnen oder getrennten Teilen arbeiten, müssen die Teile oder Werkstücke gewöhnlich in einer einheitlichen Orientierung relativ zu dem Arbeitssystem gehalten werden, damit das System richtig arbeiten kann. Bei vielen mehrstufigen Herstellungsprozessen wird ein Teil zu Beginn in einer Halterungsvorrichtung abgestützt, und die Halterungsvorrichtung hält das Teil während einer Anzahl von Stufen des Prozesses fest, wobei die Halterungsvorrichtung entweder zwischen aufeinanderfolgenden Bearbeitungsmaschinen bewegt wird oder stationär gehalten wird und dann aufeinanderfolgend die Maschinen in Bearbeitungsbeziehung zu der Halterungsvorrichtung bewegt werden. Bei bestimmten automatischen Prozessen gelangen auch Manipulatoren zur Anwendung, die ein Teil oder einen Gegenstand, der in einer Halterungsvorrichtung angeordnet ist, ergreifen und die dieses Teil dann häufig in einer neuen Orientierung in eine zweite Halterungsvorrichtung einsetzen.
Bei bestimmten bekannten Systemen wird eine Anzahl von Teilen in einem Massenbehälter dem System zugeführt, und zwar in nicht orientierter Beziehung, so daß diese Teile zunächst ausgerichtet oder orientiert werden müssen, bevor sie in einer getrennten Weise als Einzelteile bearbeitet werden können. Schrauben, Nieten und andere Befestigungsmittel werden häufig durch spezieile Zuführungsbahnen ausgerichtet. Sehr viele Teile, insbesondere solche mit relativ großen Abmaßen, sind jedoch nicht für diese Techniken zur Ausrichtung und Orientierung geeignet; ihre Gestalt oder ihre spezielle Natur macht es
y erforderlich, daß sie mehr individuell gehandhabt
I» werden.
«;; Wenn derartige Teile automatisch manipuliert wer-
;;/ den sollen, so muß das System mit Informationen
ja versorgt werden oder diese Informationen nüssen in
ill dem System bezüglich der momentanen Lage der Teile
Si erzeugt werden, so daß jedes Teil erfaßt werden kann φ und relativ zu den anderen Teilen des Systems durch fcf einen automatischen Mechanismus ausgerichtet werden
p kann. Ein ähnliches Bedürfnis hinsichtlich Informatio-
K. nen, die die Lsge des Werkstückes betreffen, besteht
ß: dann, wenn ein Teil inspiziert werden soll, während es
, sich in irgendeiner beliebigen zufälligen Lage relativ
i;:.; zum Inspektionsmechanismus befindet
|/ Aus der US-PS 36 18 742 ist bereits ein elektro-opti-
' ; sches System zur Bestimmung der Orientierung von
■ i Gegenständen bekannt, bei dem der jeweils zu
:~ untersuchende Gegenstand mittels eines elektro-opti-
sehen Abtasters kreisförmig abgetastet wird. Aus den
;v Signalen, die beim Kreuzen des Abtastkreises mit dem
Objekt entstehen, kann durch Messung der Phasenverschiebung zu vorgegebenen Signalen die Orientierung des momentan gemessenen Teils bestimmt werden. Dabei befindet sich jedoch der Nullpunkt des jeweiligen Abtastkreises an einer vorbestimmten Stelle. Dies bedeutet, daß das jeweils zu untersuchende Teil sich an einer bestimmten, vorgegebenen Stelle befinden muß. Dies bedeutet jedoch, daß das zu untersuchende Teil über besondere Bahnen dem elektro-optischen Abtaster zugeführt werden muß, damit es für die Abtastung die erforderliche Lage einnimmt Dieses bekannte System ist daher auch nicht für die Handhabung von unterschiedlichen Teilen geeignet, beispielsweise wenn einheitliche Teile mit einer ersten bestimmten Größe untersucht werden sollen und zu einem späteren Zeitpunkt untereinander einheitliche Teile mit einer größeren oder kleineren Abmessung untersucht werden sollen.
Versucht man bei diesem bekannten System beispielsweise die Position des zu untersuchenden Teils durch äußere Anschlagmittel festzulegen, so ist die Position auch noch von der jeweiligen Drehlage des zu untersuchenden Teils abhängig, so daß dieses bekannte System nicht für eine vollständige Automatisierung, beispielsweise einer Förderanlage oder einer Einlegevorrichtung, geeignet ist Der Durchmesser des Abtastkreises wird hierbei auch von Hand eingestellt, was eine erhebliche Erfahrung der betreffenden Person voraussetzt und dabei jedoch trotzdem niemals optimal erfolgen kann.
Aus der DE-OS 21 13 264 ist ein Verfahren zum automatischen Erkennen zweidimensionaler Muster mit Hilfe von Momenten zweiter Ordnung bekannt, wobei es sich bei diesen Mustern apch um Schriftzeichen handeln kann. Bei diesem bekannten Verfahren wird die gesamte Fläche abgetastet, und es werden aus dieser Abtastung Schwarz- bzw. Weißelemente ermittelt, die zwischengespeichert werden. Die Momente werden in bezug auf gewählte Achsen als Klassifikationsmerkmale ermittelt und stellen Momente zweiter Ordnung dar, 6U und es werden Schwarz- bzw. Weißelemente unverändert in einer ersten Arbeitsmatrix bzw. Übertragungsmatrix übertragen, auf der mit Hilfe der Momente erster Ordnung bezüglich der Achsen eines im Abtastfeld vorgegebenen Koordinatensystems der Schwerpunkt (,5 des abgetasteten Musters ermittelt wird, wobei von dessen möglichen Momenten zweiter Ordnung die Zentralmomente und daraus wiederum die Hauptträgheitsmomente ermittelt werden. Außerdem werden die Schwarz- bzw. Weißelemente in mindestens eine weitere Arbeitsmatrix übertragen und dann Momente zweiter Ordnung des Musters, bezogen auf gegenüber dem ursprünglichen Koordinatensystem verschobene oder geneigte Achsen ermittelt, und schließlich werden sämtliche festgestellten Momente zweiter Ordnung einem Klassifizierer zugeführt, indem dem abgetasteten Muster mit diesen Klassifikationsmerkinalen eine bestimmte Bedeutungsklasse zugeordnet wird.
Dieses bekannte Verfahren basiert auf der Voraussetzung, daß die zu untersuchenden bzw. zu erkennenden Zeichen oder Schriftzeichen bereits eine feste vorgegebene Orientierung besitzen, so daß hier das Problem der Ermittlung der Orientierung eines zu untersuchenden Teils oder eines zu erkennenden Musters oder Zeichens nicht auftritt
Die der Erfindung zugrunde liegende Aufgabe besteht darin, das System nach dem Oberbegriff des Anspruchs 1 derart zu verbessern, daß es einerseits weitgehend unabhängig von der Position, andererseits jedoch unabhängig von der Drehlage eines zu untersuchenden oder zu manipulierenden Teils sowohl eine Korrektur der Position als auch der Drehlage dieses Teils ermöglicht
Diese Aufgabe wird erfindungsgemäß dadurch gelöst, daß die optische Einrichtung zur Erzeugung von Signalen ausgebildet ist, welche den Umriß des Probeteils und der Durchlaufteile wiedergeben, daß eine Einrichtung vorgesehen ist, welche die den Umriß des Probeteils betreffenden Signale verarbeitet, um die Koordinaten des Flächenschwerpunktes des Probeteils relativ zu einer absoluten Position zu bestimmen, daß eine Einrichtung zur Erzeugung eines Probeteil-Kennungssignals vorgesehen ist, die zunächst mehrere Kreisabtastungen mit inkrementell verändertem (vergrößertem) Abtastradius um den Flächenschwerpunki zur Gewinnung von mehreren Kreisabtastgruppen oder Kreisabtastbändern mit gleichen oder ähnlichen Abtasteigenschaften innerhalb eines Kreisabtastbandes durchführt und dann eines der so gewonnenen Kreisabtastbänder hinsichtlich bestimmter Qualitätsfaktoren, wie z. B. Anzahl der Kreisabtastungen in dem Kreisabtastband, Empfindlichkeit der Grenzabtastkreise des betreffenden Kreisabtastbandes bei geringen Abtastradiusänderungen hinsichtlich der das betreffende Kreisabtastband betreffenden Kennung, oder Anzahl der Schwarz-Weiß-Abschnitte der Kreisabtastungen des jeweiligen Kreisabtastbandes, aus der Zahl der Kreisabtastbänder auswählt und einen im mittleren Bereich des ausgewählten Kreisabtastbandes gelegenen Abtastkreis als Kennungsabtastkreis bzw. als Probeteil-Kennungssignal auswählt, daß eine Analysiereinrichtung vorgesehen ist, welche das den Umriß des Durchlaufteils wiedergebende Signal analysiert, um den Flächenschwerpunkt des Durchlaufteils zu bestimmen, und daß die Einrichtung zur Erzeugung des Probeteil-Kennungssignals das Durchlaufteil mit dem Radius des Kernungsabtastkreises um den ermittelten Flächenschwerpunkt des Durchlaufteils abtastet, um ein Durchlaufteil-Kennungssignal zu erzeugen, welches im Vergleich zum Probeteil-Kennungssignal die relative Drehlage des Durchlaufteils zum Probeteil angibt.
Durcl·. die elektronische Ermittlung des optimalen Abtastkreises arbeitet das erfindungsgemäße System mit vergleichsweise sehr großer Sicherheit, und es kann sogar Gegenstände manipulieren, die einen fast kreisförmigen Umriß aufweisen oder eine sich in
kürzeren Intervallen wiederholende Umrißgestalt besitzen.
Bei dem System nach der Erfindung gelangen zwei unterschiedliche Abtastarten aufeinanderfolgend zur Anwendung, und zwar wird das betreffende Teil zunächst gemäß einem Zeilenraster abgetastet und danach gemäß einem Kreisraster abgetastet, wobei die beiden unterschiedlichen Abtastraster effektiv dazu beitragen, daß die Erkennung der Orientierung des zu untersuchenden Teils weitgehend von der jeweiligen Position desselben unabhängig wird.
Das System nach der Erfindung kann durch jedem Fachmann geläufige Abänderungen dazu verwendet werden, die von einem Probeteil gewonnenen Informationen dazu zu verwenden, um die Ähnlichkeit des Probeteils mit nachfolgenden zu analysierenden Teilen zu bestimmen, so daß dadurch sowohl die Gültigkeit nachfolgender Kennungs-Ablesungen garantiert wird, aber auch zu dem Zweck, um die Übereinstimmung eines nachfolgenden Teils mit dem Probeteil zu überprüfen. Das System kann darüber hinaus auch feststellen, ob eine Bestimmung der Orientierung eines zu untersuchenden Teils innerhalb der annehmbaren Genauigkeitsgrenzen des Systems durchgeführt werden kann und kann ferner bestimmen, ob die Ähnlichkeit zwischen dem zu untersuchenden Teil und dem Probeteil ausreichend ist, um eine Fortführung des Prozesses oder der Verarbeitung des untersuchten Teils sicherzustellen.
Bei dem bevorzugten Ausführungsbeispiel nach der jo Erfindung gelangt eine Bezugsfläche zur Anwendung, auf welche das Werkstück gelegt werden kann und welche die Übertragung von Licht erlaubt, so daß das Werkstück von hinten beleuchtet werden kann. Bei anderen Ausführungsformen der Erfindung können elektromagnetische Strahlungen mit nicht sichtbarer Wellenlänge zur Anwendung gelangen, um den Gegenstand zu bestrahlen, oder es können auch andere Strahlungsformen Verwendung finden, die von dem Gegenstand reflektiert werden. Die Bezugsfläche wird so ausgewählt, daß sie die Bestrahlung reflektiert oder sie so überträgt, daß ein Kontrast zum Werkstück entsteht, so daß die benachbarten Punkte an dem Werkstück und der abstützenden Fläche durch scharfe kontrastreiche Lichtwerte, die von der Bildwandlerröhre empfangen werden, identifiziert werden können.
Weitere vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung ergeben sich aus den Ansprüchen 2 bis 7.
!m folgenden wird die Erfindung anhand eines bevorzugten Ausführungsbeispiels unter Hinweis auf die Zeichnungen näher erläutert Es zeigt
F i g. 1 eine schematische Darstellung eines bevorzugten Ausführungsbeispiels nach der Erfindung, welches an einen Manipulator angeschlossen ist und in Verbindung mit einer Produktionsanlage verwendet wird,
F i g. 2 ein detailliertes Blockschaltbild eines digitalen Analyse-Systems, welches bei dem bevorzugten Ausführungsbeispiel nach der Erfindung zur Anwendung gelangt,
F i g. 3a ein Flußdiagramm, welches die Betriebsfolge des bevorzugten Ausführungsbeispiels während der Lernfolge veranschaulicht,
Fi g. 3b ein Flußdiagramm, welches die Aufeinanderfolge der Betriebsweise des Systems während der Durchlauffolge veranschaulicht,
Fig.4 ein detailliertes Blockschaltbild der Abtaststeuereinheit, die beim Gegenstand der Erfindung zur Anwendung gelangt,
F i g. 5 ein Blockschaltbild zur Erzeugung des kreisförmigen Abtastrasters,
F i g. 6 ein Blockschaltbild des Schwellendetektors, der die Kamera-Abtastung zur Bestimmung des Umrisses des beobachteten Teils analysiert,
F i g. 7 ein Blockschaltbild des Moment- und Flächenberechnungs-Untersystems,
F i g. 8 ein beliebig gewähltes Teil, welches die Art und Weise von vier Abtastungen über unterschiedliche Abschnitte des Teils veranschaulicht,
F i g. 9 ein Blockschaltbild des Flächenschwerpunkt-Berechnungs-Untersystems, welches in Verbindung mit dem Gegenstand der Erfindung zur Anwendung gelangt
Fig. 10 ein breites Flußdiagramm des Programms, welches von dem Kreiswähler befolgt wird, um den Kennungsradius für ein Probeteil zu bestimmen,
F i g. 11 ein Blockschaltbild eines Korrelators, der die Kennungen des Probeteüs und der nachfolgenden Durchlaufteile empfängt und deren relative Drehorientierung bestimmt, und
Fig. 12A, 12B, 13, 14, 15 und 16 Flußdiagramme, welche die Aufeinanderfolge der Betriebsweise der Kennungs-Radiusauswähl-Einheit wiedergeben, wobei die F i g. 12A und 12B Gesamtflußdiagramme darstellen, und
Fig. 13 bis 16 Details der Folgen von den verschiedenen Betriebsabschnitten, die in den F i g. 12A und 12B veranschaulicht sind.
Das bevorzugte Ausführungsbeispiel nach der Erfindung wird in Verbindung mit einem Manipulator verwendet, welches die Teile in eine Standardorientierung bzw. Ausrichtung bewegt so daß sie in richtiger Weise nachfolgenden mechanischen Bearbeitungseinrichtungen angeboten werden können. F i g. 1 zeigt ein schematisches Diagramm des gesamten Positions-Identifizier- und Manipuliersystems.
Eine Vielzahl der Teile, die von dem System gehandhabt und bearbeitet werden sollen, sind in einem Massenbehälter 10 in nicht orientierter Form vorhanden. Eine Ladevorrichtung 12 ergreift in geeigneter Weise eines der Teile des Behälters 10 und legt dieses Teil automatisch in einer nicht orientierten Lage oben auf eine Bezugsfläche 14. Die Ladevorrichtung ist in bekannter Weise ausgeführt und kann Greifer zum Ergreifen des Teils bzw. Werkstückes oder einen Magnet zum Anheben eines Teils aus dem Massenbehälter 10 enthalten und legt das so herausgegriffene Teil in irgendeiner Lage auf die Bezugsfläche 14. Es sei der Übersichtlichkeit halber angenommen, daß das Teil aus einer flachen Platte besteht, so daß dieses Teil nur auf einer seiner zwei flachen Flächen liegen kann.
Die Bezugsfläche 14 ist lichtdurchlässig bzw. durchsichtig und wird von der unteren Seite her von einer Lampe 16 beleuchtet, während die Teile 18 lichtundurchlässig sind.
Das von der Bezugsfläche 14 aus übertragene Lichtbnd, welches durch das Teil 18 geprägt ist, wird durch einen Ober Kopf angeordneten Spiegel 20 zu einem Linsensystem 22 einer Vidicon-Bildkonvertkamera 24 reflektiert Die Kamera tastet das zweidimensionale fokussierte Bild ab, welches sie von dem Linsensystem 22 empfängt, und konvertiert das Lichtbild in elektrische Signale, die dem digitalen Analysiersystem 26 zugeführt werden.
Das digitale Analysiersystem 26 verwendet die
Ausgangsgröße der Kamera zunächst dazu, um den Umriß des Teils 18, wie dieses von der Kamera 24 gesehen wird, zu bestimmen, und das System bestimmt dann die Lage des Flächenschwerpunktes der Umrißfläche relativ zur Bezugsfläche und die Drehorientierung relativ zu diesem Flächenschwerpunkt entsprechend den Unterscheidungsmerkmalen des Umrisses des Teils.
Diese Informationen gelangen zu einem Manipulator 32 mit einem Arm 34, der mehrere Grade an Bewegungsfreiheit aufweist. Die Information hinsiehtlieh der Position und der Orientierung des Teils 18 zur Bezugsfläche 14 wird für die Steuerung des Armes 34 verwendet, um also das Teil 18 zu erfassen und es in einer ausgerichteten Lage in ein nachfolgendes Bearbeitungsgerät 36 zu bewegen. Das Gerät 36 kann aus einer Anordnungseinheii, einer Bearbeitungseinheil oder einfach aus einer Speichereinheit bestehen.
Das digitale Analysiersystem 26 ist mehr im einzelnen als Blockschaltbild in F i g. 2 veranschaulicht. Wie aus dieser Figur ersichtlich ist, werden die X- und V-Ablenksignale, welche die Abtastung des von der Kamera 24 erfaßten bzw. fokussierten Bildes steuern, durch eine Abtaststeuereinheit 40 erzeugt. Diese Signale können die Kamera entsprechend einem normalen rechteckigen Raster bzw. Zeilenabtastung oder in einem kreisförmigen Muster steuern, welches dazu verwendet wird, um den Kennungskreis bei einem Probeteil auszuwählen und um den Kennungskreis von nachfolgenden Teilen zu ermitteln, um deren Drehung bzw. Verdrehung relativ zu dem Probeteil zu testen.
Die Video-Ausgangsgrößen aus der Kamera 24 gelangen zu einer Schwellendetektorschaltung 42, weiche den Durchgang der Videoausgangsgröße der Kamera durch eine bestimmte Spannung feststellt, die als Kennzeichnung des Lichtwertes zwischen einer vollen Lichtübertragung durch die Bezugsfläche 14 und dem Lichtwert ausgewählt wird, der erzielt wird, wenn das Teil 18 das Licht von der Bezugsfläche unterbricht. Die Ausgangsgröße des Schwellendetektors besteht aus einem Signal auf der Leitung 44, welches einen 4(i Übergang anzeigt, und aus einem Signal auf der Leitung 46, welches die Richtung des Übergangs von schwarz nach weiß oder von weiß nach schwarz angibt
Diese Signale gelangen zu einem Moment-Flächenrechner 48, einem Kreiswähler 50 und einem Korrelator-Untersystem 52. Der Moment- und Flächenrechner 48 analysiert die Übergangssignale, die während einer rechteckigen Abtastung eines Teils erzeugt wurden, welches auf der Bezugsfläche liegt, um das Moment des Teils relativ zu den X- und y-Achsen und die Fläche des Teils zu bestimmen. Signale, welche diese Werte wiedergeben, werden einem Flächenschwerpunkt-Rechner 54 eingespeist
Alle diese Einheiten arbeiten unter der Steuerung einer Prozessor-Folgesteuereinheit 56, um den Flächenschwerpunkt eines Probeteils zu bestimmen, um den Kennungsradius dieses Teils auszuwählen und zu speichern, um anschließend den Flächenschwerpunkt eines Durchlaufteils zu bestimmen und um die Abweichung dieses Flächenschwerpunktes von dem Flächenschwerpunkt des Probeteils zu bestimmen und um schließlich die kreisförmige Kennung des nachfolgenden Teils vorzusehen und um diese mit derjenigen des Probeteils zu vergleichen, so daß dadurch die Drehorientierung des nachfolgenden Teils relativ zum Probeteil bestimmt werden kann.
Diese Aufeinanderfolge des Betriebes ist in breiter Form in den Flußdiagrammen der Fi g.3a wiedergegeben, welches die »Lehr«-Folge wiedergibt, und wobei F i g. 3b die »Durchlauf«-Folge wiedergibt.
Der erste Schritt in der Lehrfolge umfaßt das Auflegen eines Probeteils 18 auf die Bezugsfläche 14 innerhalb des Beobachtungsfeldes der Kamera 24. Als nächstes veranlaßt die Abtaststeuereinheit 40 unter der Steuerung der Prozessor-Folgesteuereinheit 56 die Kamera 24, eine rechteckige Abtastung durchzuführen, die aus einer Vielzahl von horizontal verlaufenden Abtastzeilen besteht, die aufeinanderfolgend in vertikaler Richtung zueinander versetzt verlaufen. Das Videoausgangssignal wird durch den Schwellendetektor 42 analysiert, der daraufhin Ausgangssignale auf den Leitungen 44 und 46 erzeugt, die kennzeichnend für den Zeitpunkt jedes Übergangs und für die Polarität dieses Übergangs sind. Der Moment- und Fiächenrechner 48 verwendet diese Signale dazu, um das Moment des Teils 18 zu berechnen, und zwar entsprechend der Anordnung auf der Bezugsfläche 14 relativ zur X- und y-Achse des Beobachtungssystems, und um ebenso die Gesamtfläche des Teils zu berechnen. Der Moment- und Flächenrechner 48 führt diese Rechnung im wesentlichen dadurch aus, daß er die Länge und die Position von horizontal verlaufenden Streifen des Bildes des Teils analysiert und die Momente dieser Streifen um die X- und K-Achse bestimmt. Die Fläche des Teils ist die Summe aus den Längen der Streifen, die so erfaßt werden, daß sie ein Einheitsabmaß in der V-Achse aufweisen.
Der Flächenschwerpunkt-Rechner 54 empfängt diese Ausgangssignale aus dem Moment- und Flächenrechner 48 und teilt die Momente durch die Fläche, um die X- und y-Koordinaten des Flächenschwerpunktes zu bestimmen. Diese Koordinaten zusammen mit der berechneten Fläche des Teils werden der Prozessor-Folgesteuereinheit 56 zugeführt und werden für eine spätere Verwendung gespeichert.
Der nächste Schritt beim Analysieren des Probeteils umfaßt die Erzeugung einer Vielzahl von kreisförmigen Abtastungen der Kamera 24 unter der Steuerung der Abtaststeuereinheit 40. Diese kreisförmigen Abtastungen erfolgen mit zunehmendem Radius und bedecken kollektiv das gesamte Sichtfeld der Kamera 24. Die für diese Abtastungen kennzeichnenden Signale werden durch den Schwellendetektor 42 analysiert, um die Lage und die Richtung jedes Schwarz-Weiß-Übergangs zu bestimmen, und weiter werden diese Ausgangssignale dem Kreiswähler 50 angeboten. Der Satz der Spitzen oder Übergänge während einer einzigen Abtastung wird als Kennung bezeichnet. Der Kreiswähler analysiert aufeinanderfolgend kreisförmige Abtastkreise und vergleicht die Eigenschaften jedes Kreises mit den Eigenschaften des Kreises der vorangegangenen oder früheren Abtastung. Er sendet dann Signale zur Prozessor-Folgesteuereinheit, wodurch bewirkt wird, daß der Abtastradius vergrößert wird. Der Kreiswähler speichert während dieses Analysierprozesses sehr weitreichend den Radius des besten Kennungskreises, nachfolgend auch Kennungsradius genannt, der gefunden wurde, und er wandelt kontinuierlich diese Größe ab, wenn ein besserer Kreis gefunden wird. Nachdem alle Kreise analysiert wurden, speichert der Kreiswähler das Signal, welches kennzeichnend für den Radius des optimalen Kreises ist; die Abtaststeuereinheit steuert dann die Kamera, um diesen optimalen Kreisradius zu erzeugen, und es werden die Übergänge gespeichert, die in diesem Kreis auftreten, und zwar zusammen mit dem Kreisradius und den Koordinaten des Flächenschwer-
punktes und der Fläche des Probeteils.
An dieser Stelle ist das System vorbereitet, um ein Durchlaufteil zu analysieren. Gemäß dem Flußdiagramm von Fig.3b wird das Teil auf die Bezugsfläche 14 innerhalb des Erfassungsbereiches der Kamera 24 aufgelegt; es wird dann eine rechteckige Abtastung eingeleitet; der Moment- und Flächenrechner 48 versorgt dann den Flächenschwerpunkt-Rechner 54 mit den Momentgrößen um die X- und K-Achse des Durchlaufteils und mit der Fläche des Durchlaufteils. Das System vergleicht dann die Fläche des Durchlaufteils mit der gespeicherten Fläche des Probeteils. Wenn die zwei Werte nicht innerhalb eines vorbestimmten Prozentsatzes zueinander liegen, so wird der Prozeß beendet, und es wird ein Signal für die überwachende Person vorgesehen, welches angibt, daß das Durchlaufteil relativ zum Probeteil außerhalb der Toleranz liegt.
Wenn die Flächen innerhalb der Toleranz zueinander liegen, so werden die Koordinaten des Flächenschwerpunktes des Durchlaufteils der Abtaststeuereinheit 40 angeboten, und diese erzeugt eine kreisförmige Abtastung mit dem gespeicherten Kennungs-Radius um den Flächenschwerpunkt des Durchlaufteils. Die auf diese Weise erzeugte Kennung, z. B. die Anzahl der Schnitte des Abtastkreises der Grenzlinie des jeweils abgetasteten Teils, wird zusammen mit der gespeicherten Kennung des Probeteils dem Korrelator 52 angeboten, und es wird eine Kreuz-Korrelation zwischen den zwei durchgeführt. Diese Korrelation wird dazu verwendet, den Grad der kreisförmigen Verschiebung in der Kennung des Durchlaufteils relativ zur Kennung des Probeteils zu bestimmen und ebenso, um den Winkel der maximalen Korrelation zwischen den zv/ei Teilen zu bestimmen. Der Wert dieser maximalen Korrelation wird analysiert, um zu bestimmen, ob dieser innerhalb einer willkürlichen Grenze liegt, die einen vernünftigen Grad an Identität zwischen dem Probeteil und dem Durchlaufteil vorgibt. Wenn dies nicht der Fall ist, so wird der Vergleich unterbrochen. Wenn der Korrelationswert innerhalb einer vorbestimmten Grenze liegt, so berechnet das System Unterschiede zwischen den Koordinaten des Probeteils und den Koordinaten des Durchlaufteils. Diese zwei Werte zusammen mit der Phasenverschiebung zwischen der Probekennung und der Kennung des Durchlaufteils stellen die Ausgangsgröße des Systems dar und werden zur Steuerung des Handhabungsgerätes 32 verwendet.
Das bevorzugte Ausführungsbeispiel nach der Erfindung wird in erster Linie in einem hartverdrahteten digitalen System verwirklicht, obwohl ein programmierbarer Rechner auch verwendet werden kann, um den Kreiswähler 50 zu verwirklichen. Bei alternativen Ausführungsformen können alle Einheiten hartverdrahtet oder es können Mini-Rechner verwendet werden, um einige oder alle der anderen Funktionen zu realisieren. Die Wahl zwischen hartverdrahteten Schaltungen und Minicomputern hängt weitestgehend von den Produktionsmengen des Systems ab.
Die verschiedenen Untersysteme des bevorzugten Ausführungsbeispiels sollen nun im folgenden im einzelnen beschrieben werden.
Die Abtaststeuereinheit 40 ist im Detail in Blockschaltbildform in Fig.4 veranschaulicht, und sie dient dazu, digitale Signale für die Ablenkschaltungen der Kamera 24 vorzusehen, welche die momentane Position der Kameraabtastung des durch das Linsensystem 22 fokussierten Bildes steuern. Ein digitales Signal, welches tür die X-Achsenablenkung kennzeichnend ist, wird auf der Leitung 60 vorgesehen, und das V-Achsensignal wird auf der Leitung 62 erzeugt. Diese Leitungen führen auch zu dem Moment- und Flächenrechner 48 für die ■ Verwendung in Verbindung mit den Übergangssignalen, die dieser Einheit auf der Leitung 44 zugeführt werden, so daß die Koordinaten der Übergänge bestimmt werden können. Die Abtaststeuereinheit erzeugt auch auf der Leitung 64 ein Ausgangssignal, welches den
K' Abtastwinkel während der kreisförmigen Abtastung der Kamera anzeigt. Von der Abtaststeuereinheit 40 wird auf der Leitung 66 ein Signal vorgesehen um anzuzeigen, daß die Abtastung — entweder rechteckig oder kreisförmig — vervollständigt wurde.
Die Abtaststeuereinheit 40 besitzt im wesentlichen drei Betriebsphasen: sie erzeugt rechteckig verlaufende Abtastungen, kreisförmig verlaufende Abtastungen oder Leerlauf. Die Einleitung von entweder einer rechteckigen oder einer kreisförmigen Abtastung wird durch ein Signal auf der Leitung 68 von der Prozessor-Folgesteuereinheit 56 getriggert Der Wert eines Signals auf der Leitung 70 aus der Prozessor-Folgesteuereinheit bestimmt, ob die einzuleitende Abtastung entsprechend einem kreisförmigen Raster oder einem rechteckigen Raster verlaufen soll. Das Signal auf der Leitung 68 triggert die Abtaststeuereinheit 40, so daß diese eine vollständige Abtastung herbeiführt. Nach der Vervollständigung dieser Abtastung kehrt die Einheit in die Leerlaufbetriebsphase zurück, in welcher
so sie Signale für die Kamera vorsieht und diese veranlaßt, eine fortwährende rechteckige Abtastung durchzuführen, um zu verhindern, daß der Abtaststrahl der Kamera an irgendeiner Stelle auf dem Schirm ein Loch ausbrennt.
Die Abtaststeuereinheit 40 enthält einen internen Taktgeber 72, der Signale für ein Paar von UND-Gliedern 74 und 76 vorsieht, deren andere Eingangsanschlüsse durch Signale von der Abtastauswählleitung 70 in Bereitschaft gesetzt werden. Diese Leitung führt normalerweise ein niedriges Signal und führt nur dann ein hohes Signal, wenn eine kreisförmige Abtastung bzw. Abtastraster von der Folgesteuereinheit 56 befehligt wird. Die Eingangsgröße von der Leitung 70 zum Glied 74 wird invertiert, so daß bei Abwesenheit eines hohen Signals auf der Leitung 70 die Taktimpulse von dem Glied 74 zu einem Rechteckabtast-Generator 78 vorgesehen werden. Wenn das Signal auf der Leitung 70 einen hohen Spannungswert annimmt, was ein kreisförmiges Abtastmuster bedeutet, so wird der Ausgang des Gliedes 74 gesperrt, und die Impulse aus der Taktquelle gelangen durch das Glied 76 zu einem Abtastwinkel-Register 80.
Der Rechteck-Abtastgenerator 78 besteht aus einem durch 500 teilenden Zähler, der nach jedem 500.
empfangenen Taktimpuls ein Impulssignal abgibt. Die Taktimpulse werden durch cen Rechteck-Abtastgenerator 78 auf der Leitung 82 abgegeben und gelangen zu einem X-Abtastpositionsregister 86. In ähnlicher Weise werden die Impulse aus dem durch 500 teilenden Zähler auf der Leitung 88 ausgegeben und gelangen zu einem r-Abtast-Positionsregister 92. Während der Leerlaufbetriebsphase werden diese X- und y-Register 86 und 92 regulär weitergeschaltet bzw. erhöht Die digitale Ausgangsgröße des X-Registers 86 wird mit einer Zahl addiert, die in einem X'-Inkrement-Addierer 94 enthalten ist und die digitale Ausgangsgröße des Addierers 94 stellt die Λ-Ablenkkoordinate dar, die auf der Leitung 60 zur Kamera gelangt In ähnlicher Weise wird der
Ausgang des V-Abtastregisters 92 mit einer digitalen Zahl erhöht, die in einem V-Inkrement-Addierer 96 enthalten ist, wobei die Ausgangsgröße dieses Registers auf der Leitung 62 die V-Abtastposition darstellt. Die Addierer 94 und 96 werden während einer kreisförmigen Abtastung dazu verwendet, diese Abtastung um den Flächenschwerpunkt des Teiles 18 auf der Bezugsfläche 14 zu orientieren, wie dies vorangehend durch den Flächenschwerpunkt-Rechner54 bestimmt wurde.
Die Einleitung einer gesteuerten rechteckförmigen Abtastung bzw. Rechteckrasters, die im Gegensatz zu der relativ unkontrollierten Leerlaufrechteckabtastung steht, wird durch den Prozessor 56 eingeleitet, und zwar durch ein Signal auf der Leitung 68 ohne Begleitung eines niedrigen Signals auf der Leitung 70. Das Signal auf der Leitung 68 dient dazu, den Zähler in dem Rechteck-Abtastgenerator 78 auf Nuil zurückzustellen, als auch die Register 86 und 92 zurückzustellen. Hierdurch wird die Abtastung der Kamera an der oberen linken Ecke des Rasters eingeleitet, und zwar unter der Annahme, daß die X- und V-Inkrementaddierer 94 und 96 die Werte Null enthalten. Der Rechteck-Abtastgenerator 78 fährt dann damit fort. Signale für die X- und V-Abtastregb'er 86 und 92 vorzusehen, wodurch die Kameraabtastung veranlaßt wird, zunächst vom linken Extrem zum rechten Extrem zu laufen. An dieser Stelle läuft das X-Abtastregister 86 über und kehrt auf Null zurück. Gleichzeitig wird das V-Abtastregister 92 weitergeschaltet, wobei die Abtastung um ein Inkremenl nach unten abgelenkt wird.
Die Ausgangsgröße des V-Abtastregisters 92 wird auch einer Vergleichsstufe 98 angeboten, die ein Ausgangssignal abgibt, wenn die V-Zählung ihr Maximum erreicht, wodurch angezeigt wird, daß eine vollständige rechteckige Abtastung bzw. Raster vervollständigt wurde. Das V'-Register 92 läuft ebenso über und kehrt an dieser Stelle auf Null zurück. Die Ausgangsgröße aus der Vergleichsstufe 98 wird über ein ODER-Glied 100 auf der Leitung 66 vorgesehen, wodurch angezeigt wird, daß eine Abtastung vervollständigt wurde. Die Abtaststeuereinheit 40 nimmt dann ihre Leerlaufbetriebsweise wieder auf, bis auf der Leitung 68 das nächste hohe Signal empfangen wird.
Eine kreisförmige Abtastung bzw. Raster wird bei einem hohen Signal auf der Leitung 68 in Begleitung eines hohen Signais auf der Leitung 70 eingeleitet. Das Signal auf der Leitung 68 stellt den durch 500 teilenden Zähler in dem Rechteck-Abtastgenerator 78 auf Null zurück, ebenso die Λ'-und V-Abtast-Positionsregister86 und 92, das Abtastwinkel-Register 80 und die in einem Kreisabtast-Generator 102 enthaltenen Register. Das hohe Signal auf der Leitung 70 unterbindet die Taktausgangsgrößen aus dem UND-Glied 74 und setzt die Taktausgangsgrößen aus dem UND-Glied 76 in Bereitschaft bzw. schaltet diese durch, die dann zum Abtastwinkel-Register 80 gelangen. Das an früherer Stelle erregte Abtastwinkel-Register 80 wird dann durch die Taktgröße weitergeschaltet und erzeugt eine digitale Ausgangsgröße, die zum Winkel der kreisförmigen Abtastung proportional ist Diese Größe gelangt aus der Abtaststeuereinheit auf der Leitung 64 heraus und gelangt zum Kreisabtast-Register 102.
Das Kreisabtast-Register 102 ist im einzelnen in F i g. 5 veranschaulicht Zusätzlich zu dem Empfang des Abtastwinkelsignals aus dem Register 80 empfängt dieses ein Radiussignal von einem Register 104, welches eine Zahl enthält, die es von dem Prozessor 56 empfangen hat Wie aus Fig.5 hervorgeht, enthält der Kreisabtast-Generator 102 ein Paar von Lesespeichern 106 und 108. Der Lesespeicher 106 enthält eine Tabelle von Sinuswerten. Für jede digitale Zahl, die aus dem Register 80 empfangen wird, erzeugt dieser eine digitale Ausgangsgröße entsprechend einer Zahl, die proportional zum Sinus des Winkels der Eingangszahl ist. Der Lesespeicher 108 enthält eine Tabelle der Cosinuswerte und für jede Gingangs-Digitalzahl erzeugt er eine Ausgangszahl, die proportional zum Cosinus des Eingangswinkels ist.
Die Signale aus dem Winkelabtast-Register 80 werden direkt dem Sinusspeicher 106 zugeführt und gelangen auch zum Cosinusspeicher 108.
Die numerische Ausgangsgröße aus dem Sinusspeicher 106 gelangt zu einem Multiplizierer 112, und zwar in Verbindung mit dem Radiuswert aus dem Register 104. In ähnlicher Weise gelangt die in paralleler Form vorliegende digitale Ausgangsgröße des Cosinusspeichers 108 zu einem Multiplizierer 114, und zwar in Verbindung mit einem in paralleler Form vorliegenden numerischen Wert, der in dem Radiusregister 104 enthalten ist. Die in paralleler Form vorliegenden Ausgangsgrößen der Multiplizierer 112 und 114 werden dazu verwendet, das -Y-Abtastregister 86 und das V-Abtastregister 92 jeweils direkt zu setzen. Während dieser kreisförmigen Abtastung gelangt von dem Rechteckabtast-Generator 78 keine Ausgangsgröße zu den Registern.
Wenn das Winkelabtast-Register 80 durch die Impulse aus der Taktquelle 72 weitergeschaltet wird, so nehmen die X- und V-Abtaststeuerregister 86 und 92 die Werte an, die erforderlich sind, damit die Kamera 24 eine kreisförmige Abtastung bzw. Raster erzeugt Diese Werte können durch die in den Registern 94 und 96 enthaltenen konstanten numerischen Werte erhöht werden, um effektiv die Koordinaten des Mittelpunkts der kreisförmigen Abtastung zu verschieben oder zu versetzen, wie dies im folgenden erläutert werden soll.
Das Abtastwinkel-Register 80 versorgt auch eine Vergleichsstufe 116 mit einer Ausgangsgröße, die dann einen Impuls abgibt, wenn der Abtastwinkel ein Maximum erreicht wodurch angezeigt wird, daß eine vollständige Abtastung ausgeführt wurde. Die Vergleichsstufe 116 gibt ihren Impuls an ein ODER-Glied 100 ab, welches die Ausgangsgröße auf eine Leitung 66 führt wodurch angezeigt wird, daß die Abtastung vervollständigt wurde. Der Prozessor 56 entfernt dann das hohe Signal auf der Leitung 70, wenn nicht eine andere kreisförmige Abtastung ausgeführt werden muß, und die Abtaststeuereinheit 40 ihre Leerlaufbetriebsweise wieder einnimmt
Der Schwellendetektor 42, der aus der Kamera 24 die analogen Videosignale empfängt und die Kreuzung oder Schnitt der Kameraabtastung mit einer der Grenzen des Teiles 18 feststellt, ist im einzelnen in F i g. 6 wiedergegeben. Das Videosignal gelangt zu einer Analog-Vergleichsstufe 120, die auch eine Analogspannung von einem Potentiometer 122 empfängt dessen eines Ende geerdet ist und dessen anderes Ende mit einer geregelten Gleichspannungsquelle verbunden ist Die Vergleichsstufe erzeugt ein Ausgangssignal, welches dann hoch ist wenn die Videospannung die Bezugsspannung überschreitet und welches zu anderen Zeitpunkten niedrig ist Die Lichtquelle 16 unterhalb der Bezugsfläche 14 besitzt in bevorzugter Weise eine ausreichende Intensität so daß die Lichtwerte, die auf der Bildfläche der Kamera fokussiert werden, relativ eindeutig sind und eine sehr niedrige Amplitude an
Stellen besitzen, die dem Teil 18 zugeordnet sind, und eine wesentlich höhere Intensitä' an Stellen besitzen, die nicht dem Teil 18 zugeordnet sind. Wenn daher die Kameraabtastung vor. einer Stelle außerhalb der Grenze des Teiles zu einer Sielle innerhalb der Grenze des Teiles wandert, sollte der Analogwert des Videosignals scharf abfallen und durch den Spannungswert verlaufen, der durch das Potentiometer 122 vorgegeben wird.
Die Ausgangsgröße der Vergleichsstufe 120 wird einem Univibrator 124 zugeführt, der einen kurzen scharfen Ausgangsimpuls erzeugt, wenn die analoge Ausgangsgröße der Vergleichsstufe ihren Zustand in einer von zwei Richtungen ändert Dieses Signal auf der Leitung 44 in Verbindung mit der Ausgangsgröße der Vergleichsstufe selbst, also auf der Leitung 46, stellen die zwei Ausgangsgrößen des Schwellendetektors dar. Durch Probeentnahme der Polarität des Signals auf der Leitung 46 kann, wenn auf der Leitung 44 ein Impuls auftritt, die Richtung des Übergangs bestimmt werden.
Der Moment- und Flächenrechner 48, der auf der Leitung 44 die Übergangsimpulssignale empfängt und auf der Leitung 46 die Polaritätssignale, ebenso dit: X- und K-Koordinaten der Abtastung auf den Leitungen 60 und 62 empfängt und der die Signale erzeugt, welche für das Moment des Teiles hinsichtlich der X- und y-Achse repräsentativ sind, ist im einzelnen in F i g. 7 gezeigt. Die X-Koordinaten der Abtastung von der Leitung 60 werden in paralleler Form einem Paar von Registern 130 und 132 angeboten. Das Register 130 empfängt auch eine Eingangsgröße von einem UND-Glied 134.
Das Vorhandensein eines niedrigen Signals auf der Leitung 46 zeigt an, daß der Videowert des abgetasteten Punktes unterhalb des Wertes der Vergleichsstufe liegt, so daß demzufolge der am Schirm der Kamera abgetastete Punkt dem Teil 18 und nicht der Bezugsfläche 14 zugeordnet ist. Die Übergangsimpulse auf der Leitung 44, die gleichzeitig mit diesem niedrigen Wert auf der Leitung 46 auftreten, sind für einen Übergang von weiß nach schwarz kennzeichnend. Das Ausgangssignal aus dem UND-Glied 134 bewirkt, daß der X-Wert in das Register 130 geladen wird, welches das ΛΊ-Register genannt wird. Ein nachfolgendes Paar von X-Koordinaten, die in die Register 130 und 132 geladen werden, definieren den Anfang und das Ende der Kreuzung oder Schnittstelle der X-Richtungs-Rechteckabtastung mit dem Teil 18. Dies ist in F i g. 8 veranschaulicht, die ein willkürlich gewähltes Teil 18 zeigt, welches auf der Bezugsfläche J4 angeordnet ist. Vier typische X-Abtastungen sind in F i g. 8 veranschaulicht. Die oberste Abtastung, die mit Ya bezeichnet ist, schneidet zwei unabhängige Abschnitte des Teiles. Die erste Schnittstelle tritt bei X\A auf, die einen Weiß-Schwarz-Übergang darstellt, und endet bei X2A, die einen Schwarz-Weiß-Übergang darstellt. Wenn die Abtastung in den Bereich zwischen dem Schwarz-Weiß-Übergang XiA und dem nächsten Weiß-Schwarz-Übergang, der mit ΛΊ β bezeichnet ist, gelangt, so werden die X-Werte des Anfangs und des Endes der Bewegung X\a und XiA in den Registern 130 und 132 festgehalten. <,o Später schneidet die Abtastung entsprechend Ya den zweiten Abschnitt des Teiles, wodurch die Koordinaten X\b und X2B in den Registern 130 und 132 erhalten werden.
In ähnlicher Weise schneidet eine untere Abtastung ^ entlang der X-Achse bei Yb drei getrennte Segmente des Teiles X\c— X2c;X\d— Around X\e— Xib
Die dritte Abtastung bei der Koordinate Ycschneidet das Teil 18 nur einmal, und zwar in einem Sektor mit der Anfangskoordinate Χι/rund der Endkoordinate X-./; Die vierte Abtastung bei YD kreuzt das Teil an einem Abschnitt, der eine öffnung oder Bohrung 142 enthält und demzufolge in zwei Segmente Xig—X2G und Xih—Xiwaufgeteilt wird.
Das Register 132 wird durch die Ausgangsgröße eines UND-Gliedes 136 in Bereitschaft gesetzt, welches das Übergangssignal auf der Leitung 46 und den nicht invertierten Wert des Kamera-Signals auf der Leitung 44 empfängt Demzufolge verursacht ein Übergang von schwarz nach weiß ein Ausgangssignal am Glied 136. Dieses Ausgangssignal bewirkt, daß der momentane Wert der A"-Koordinate der Abtastung auf der Leitung 60 in das Register 132 eingelesen wird, welches mit XrRegister bezeichnet ist, wodurch jeglicher Wert der früher in diesem Register enthalten war, ersetzt wird.
Die in paralleler Form vorliegenden Ausgangsgrößen beider Register 130 und 132 gelangen fortwährend zu einer Addierschaltung 138, welche in paralleler Form ein digitales Signal erzeugt, welches für deren Summe XH-X2 repräsentativ ist, und gelangen ebenso zu einer Subtrahierschaltung 140, die ein digitales Signal in paralleler Form erzeugt, welches gleich ist der Differenz, also Xj-Xi. Es sei hervorgehoben, daß dieser letztere Wert gleich ist mit der Länge jedes Streifens der Schnittstelle der Abtastung mit dem Teil.
Die Ausgangsgröße von beiden Registern 138 und 140 gelangt zu einer Multiplizierstufe 144, die das Produkt (Xi + X2) (X2 - Xi) erzeugt.
Da (*i+*i) gleich ist mit dem mittleren Abstand des
Streifens X2-Xi von der V-Achse, ist die Größe (Xi+X2) (X2-Xi) gleich zweimal dem Moment eines einzelnen Segments X2-Xi um die K-Achse. Diese Momente werden, wenn sie aufeinanderfolgend erzeugt werden, in einem Register 146 unter Verwendung einer Addierstufe 148 summiert, die Eingangsgrößen von sowohl dem Register 144 als auch vom Ausgang des Registers 146 empfängt Die Inhalte des Registers 146 sind, nach einer vollständigen rechteckförmigen Abtastung des Teiles, gleich mit zweimal dem Moment des Teiles um die V-Achse.
Die Ausgangsgröße der Subtrahierstufe 140, die gleich ist mit der Größe X2-Xi oder der Länge eines elementaren Streifens, wird in einer Multipliziereinheit 150 mit den V-Koordinaten der Abtastung, wie sie auf der Leitung 62 erscheinen, multipliziert. Das Ergebnis dieser Multiplikation ist gleich dem Moment eines individuellen Streifens um die X-Achse. Diese Momente werden für jeden nachfolgenden Streifen in einem Register 152 unter Verwendung eines Addierers 154 summiert, der Eingangsgrößen von dem Register 150 und vom Ausgang des Registers 152 empfängt. Zusatzgrößen in beiden Registern 152 und 146 werden durch Schwarz-Weiß-Übergänge, die durch das UND-Glied 136 erfaßt werden, getriggert.
Die Ausgangsgrößen der Subtrahierstufe 140, welche die Längen der elementaren Streifen darstellen, werden in einem Register 156 ebenso summiert, und zwar nach jedem Auftreten eines Schwarz-nach-Weiß-Überganges, und das Register 156 enthält nach einer vollständigen rechteckförmigen Abtastung eine Zahl, die proportional zur Fläche des Teiles ist, wenn man die K-Inkremente in der Abtastung so betrachtet, daß sie einen Einheitswert haben.
Die Inhalte der Register 146,152 und 156, die jeweils auf den Leitungen 158,160 und 162 vorgesehen werden,
stellen die Ausgangsgrößen des Moment- und Flächenrechners 48 dar. Nachdem eine vollständige rechteckförmige Abtastung durchgeführt wurde, werden die Register 146,1S2 und 156 durch ein Rückstellsignal aus dem Prozessor 56 entleert
Der Flächenschwerpunkt-Rechner 54, der in F i g. 9 veranschaulicht ist, enthält einfach ein Paar von Teilerstufen 170 und 172, welche die Momente um die X- und y-Achse jeweils durch die Fläche teilen, um die Koordinaten des Flächenschwerpunktes jeweils um die Y- und X-Achse zu erzeugen. Indem man den Ausgang des Registers 172 um eins nach links versetzt, werden die Daten aus dem Register 172 effektiv durch zwei geteilt, wodurch die Verwendung von 2 My, wie durch das Register 146 vorgesehen, kompensiert wird.
Die X- und y-Koordinaten des Flächenschwerpunktes gelangen zu der Prozessor-Folgesteuereinheit 56, und zwar in Verbindung mit der Fläche des Teiles, und weiter gelangen die X- und y-Koordinaten des Flächenschwerpunktes zu den Addierstufen 94 und 96 in der Abtaststeuereinheit 40 von Fig.4, in welcher sie dazu verwendet werden, die Ausgangsgrößen der X- und K-Abtastkoordinatenregister ίβ und 92 zu erhöhen, so daß die nachfolgenden kreisförmigen Abtastungen um den Flächenschwerpunkt des Teiles verlaufend ausgeführt werden können.
Das zuvor beschriebene Verfahren der Steuerung der Kamera durch einen rechteckförmigen Abtastraster zur Erzeugung des Flächenschwerpunktes und der Fläche eines Teiles ist das gleiche, ob nun das Teil ein Probeteil jo ist oder ein Durchlauf-Teil. Während der Lernperiode, nachdem die Koordinaten des Flächenschwerpunktes und die Fläche erhalten worden sind, besteht der nächste Schritt darin, den Kennungskreis des Teiles auszuwählen. Der Kreiswähler 50, der diese Funktion durchführt, besteht in bevorzugter Weise aus einem Mini-Computer, und zwar aufgrund der großen Zahl von alternativen Prozeß-Programmen, was von der genauen Eigenheit des Teiles abhängig ist.
Das Verfahren, den Kreis auszuwählen, der bei dem bevorzugten Ausführungsbeispiel Verwendung findet, besteht darin, eine Vielzahl von kreisförmigen Abtastungen mit inkrementell zunehmendem Radius durchzuführen, und zwar über die gesamte Fläche oder Beobachtungsfeld um den Flächenschwerpunkt des Probeteiles. Die Schwarz-Weiß-Übergänge, die während jeder Abtastung auftreten, werden gesammelt und werden als Kennung bezeichnet. Aufeinanderfolgend erzeugte Kreise werden verglichen, um deren Ähnlichkeit zu bestimmen, und, wenn sie einen hohen Grad von Ähnlichkeit besitzen, werden sie in Gruppen zusammengefaßt, die dann als »Bänder« bezeichnet werden. Jedesmal, wenn ein Kreis mit Merkmalen oder Eigenschaften auftritt, die wesentlich von den Eigenschaften des an früherer Stelle erzeugten Kreises abweichen, wird das alte Band beendet es werden bestimmte Charakteristika dieses Bandes gespeichert, und es wird dann mit einem neuen Band begonnen. Wenn ein Band beendet wurde, so werden die Charakteristika desselben mit den Charakteristika des bo besten früher ausgewählten Bandes verglichen, und es werden die Eigenschaften des besseren Bandes weiterverarbeitet. Auf diese Weise wird ein Band aus benachbarten Kreisen ausgewählt, welches die besten Merkmale und Eigenschaften für eine Kennung es aufweist, und es wird dann der Radius des Zentrumkreises dieses Bandes als Kennungsradius gewählt.
Das allgemeine Flußdiagramm des Programms,
welchem der Kreiswähler 50 folgt wenn er den Kennungsradius bestimmt, ist in Fig. 10 wiedergegeben. Als erster Schritt entsprechend dem Block 300 veranlaßt der Kreiswähler die Prozessor-Folgesteuereinheit 56, den Radius in das Register 104 der Abtaststeuereinheit auf einen minimalen Wert einzustellen, und es werden die verschiedenen Register, die in dem Minicomputer enthalten sind und die bei dem Kennungs-Auswählprozeß verwendet werden, auf Null zurückgestell L Der Prozessor 56 steuert dann die Steuereinheit 40, um mit diesem Radius eine kreisförmige Abtastung zu erzeugen, und es werden dann die Koordinaten der während dieser Abtastung festgestellten Übergänge dem Kreiswähler angeboten und gespeichert wie dies im Block 302 festgehalten ist Der auf diese Weise erzeugte Kreis wird dann getestet, um zu bestimmen, ob dieser Kreis auf einer absoluten Grundlage, im Gegensatz zu einer Vergleichsgrundlage, ein zufriedenstellender Kreis ist was durch die im Block 304 angedeuteten Schritte erfolgt. Diese Tests enthalten eine Bewertung der relativen Verhältnisse von Schwarz und Weiß in dem Kreis. Wenn der Kreis nur eine Farbe aufweist so enthält er keine Information und ist damit für eine Kennungsauswahl nicht zufriedenstellend. Der Kreis wird auch mit sich selbst in Beziehung gebracht, und es wird die Tiefe des Tales der Auto-Korrelations-Funktion bewertet. Wenn die Auto-Korrelationsfunktion des Kreises sehr flach ist, so enthält der Kreis sehr wenig Informationen und ist für die Kennungs-Auswahl ungeeignet. Die Anzahl der Spitzen in der Auto-Korrelationsfunktion wird ebenfalls analysiert. Wenn der Kreis zu viele Auto-Korrelations-Spitzen aufweist, so stellt er einen relativ vieldeutigen Kreis dar und wird ausgeschieden. Wenn der Kreis irgendeinen dieser Tests nicht besteht, und wenn ein Band noch nicht begonnen wurde, wie durch den Block 305 bestimmt wird, so signalisiert der Kreiswähler 50 der Prozessor-Folgesteuereinheit 56 den /?-Wert (Block 306) in der Abtaststeuereinheit zu erhöhen, und es wird eine weitere kreisförmige Abtastung erzeugt, und es wird dann der Übergangskreis, der bei dieser Abtastung entsteht, analysiert.
Der erste Kreis, der diese absoluten Tests absolviert, wird aufbewahrt, um ein Band von aufeinanderfolgenden Kreisen mit ähnlichen Charakteristika zu beginnen. Wenn bereits mit einem Band begonnen wurde, so wird der neue Kreis mit dem letzten Kreis in dem Band verglichen, wie durch den Block 308 dargestellt ist, um zu bestimmen, ob seine Charakteristika ausreichend ähnlich mit denjenigen des Kreises sind, um eine Aufnahme in das Band zu ermöglichen. Wenn der Kreis bzw. seine Übergänge nicht ausreichend ähnlich sind, so wird das alte Band ausgeschlossen. Dies macht es erforderlich, bestimmte Eigenschaften des Bandes zu analysieren und zu speichern, die dann später mit dem nächsten Band verglichen werden, um zu bestimmen, welches Band für die Bestimmung des Kennungsradius besser ist. Der Ausschluß eines Bandes, was durch die Operationen in den Blöcken 312 und 314 ausgeführt wird, macht eine Überprüfung erforderlich, um festzustellen, ob die Anzahl der Kreise zu eng für die Kennungsauswahl ist, da eine leichte Fehlausrichtung bei der nachfolgenden Analyse eine Kennung erzeugen könnte, die zufällig außerhalb des Bandes liegt. Auch das Band wird analysiert um das zu bestimmen, was mit »Qualitätsfaktor« bezeichnet wird, das ist ein numerischer Nennwertfaktor, basierend auf der Anzahl der Kreise in dem Band, dem minimalen Auto-Korrelations-
Mittelwert der Kreise in dem Band, der Empfindlichkeit der letzten Kennung in dem Kreis auf Änderungen im Radius und die Zahl der Schwarz-Weiß-Abschnitte in dieser letzten Kennung. Diese Informationen werden dann gespeichert, und wenn ein früheres Band erzeugt wurde, so werden die Qualitätsfaktoren der zwei Bänder im Block 316 verglichen, es werden die das bessere Band betreffenden Informationen aufgehoben, und es werden die das andere Band betreffenden Informationen im Block 318 ausgeschieden. ίο
Nach diesem Prozeß wird R erneut erhöht, und wenn ein gültiger Kreis erzeugt wird, so wird dieser Kreis getestet, um zu bestimmen, ob er zum alten Band paßt, in welchem Fall er in das alte Band (Block 319) eingegliedert wird, oder im anderen Fall das alte Band beendet wird, und unter Verwendung des neuen Kreises (Block 310) mit einem neuen Band begonnen wird.
Dieser Prozeß wird fortgeführt, bis der Kreis mit maximalem Radius am Sichtschirm erzeugt wurde, wie dies im Block 320 festgelegt ist An dieser Stelle wurde nur ein Band aufgehoben, und der Kennungsradius wird als Radius des mittleren Kreises des Bandes ausgewählt, wenn das Band eine ungerade Zahl von Kreisen aufweist, oder es wird der Kreis mit einem zur Mitte des Bandes hin größten Radius ausgewählt, wenn das Band eine gerade Zahl von Kreisen besitzt, was im Block 322 geschieht. Die Abtaststeuereinheit wird dann auf diesen Radius eingestellt, und es wird die Kennung entsprechend diesem Radius erzeugt, gespeichert und dem Rechner 52 angeboten.
Eine detailliertere Analyse der Aufeinanderfolge des Betriebes des Kreiswählers 50 soll im folgenden in Verbindung mit den Flußdiagrammen der F i g. 12 bis 16 beschrieben werden.
Nachdem der Kennungskreis des Probeteiles ausgewählt wurde, ist das System dafür bereit, eine Vielfalt von ähnlichen Teilen zu verarbeiten. Zu diesem Zeitpunkt bestehen die gespeicherten Informationen aus der Fläche des Probeteiles, den Koordinaten des Flächenschwerpunktes, dem Kennungs-Kreisr.adius und dem Kennungskreis selbst, das heißt die Koordinaten der Übergänge, die während einer kreisförmigen Abtastung aufgetreten sind.
Wenn dann ein weiteres Teil bzw. Durchlaufteil auf die Bezugsfläche 14 gelegt wird, so wird die Abtaststeuereinheit erregt, um eine rechteckförmige Abtastung des Durchlaufteiles herbeizuführen, und der Flächenschwerpunkt-Rechner 54 berechnet den Flächenschwerpunkt und die Räche dieses Teiles. Die Fläche des Durchlaufteiles wird dann mit der Fläche des Probeteiles verglichen, die während der Lernfolge gespeichert wurde, um auf diese Weise festzustellen, ob diese Größen innerhalb einer vorbestimmten Toleranz zueinander liegen. Wenn die Fläche des Durchlaufteiles außerhalb der Toleranz liegt, und zwar relativ zur Fläche des Lern-Teiles, so wird der Vorgang unterbrochen, und die überwachende Person wird mit einem geeigneten Signal darauf aufmerksam gemacht.
Wenn die Teile innerhalb der Toleranz liegen, so werden die Koordinaten des Flächenschwerpunktes des ω Durchlaufteiles in die X- und K-Addierer 94 und 96 der Abtaststeuereinheit 40 eingelesen, und der Kennungsradius wird in das Register 104 der Abtaststeuereinheit eingeladen. Die Abtaststeuereinheit wird dann erregt, um eine kreisförmige Abtastung mit dem Kennungsra- (,5 dius um den Flächenschwerpunkt des Teiles zu erzeugen.
Der Korrelator 52, der die Kennung des Probeteiles
empfängt und diese während der Lernphase speichert und ebenso die Kennung des Durchlaufteiles speichert und der die Drehorientierung des Durchlaufteiles relativ zum Probeteil bestimmt und den Grad der Korrelation zwischen den zwei Kennungen bestimmt, ist im Detail in F i g. 11 veranschaulicht Der Korrelator verwendet ein Paar von Schieberegistern 180 und 182. Diese Register besitzen eine Anzahl von Stufen, die gleich ist mit dem gesamten Winkelintervall eines Kennungskreises, das heißt der in der Vergleichsstufe 116 der Steuereinheit gespeicherten Zahl. Das Register 180 wird mit Bits geladen, die von einem UND-Glied 184 durchgelassen werden, welches durch die hochliegende Ausgangsspannung der Analog-Vergleichsstufe 120 in Bereitschaft gesetzt wird, die auf der Leitung 46 erscheint, und wird über ein UND-Glied 186 angesteuert, welches von einem Signal in Bereitschaft gesetzt wird, welches spannungsmäßig hoch liegt, während eine kreisförmige Abtastung mit dem Kennungsradius an einem Probeteil durchgeführt wird, und ein Taktimpuls vom Taktgeber 72 der Kreis-Abtaststeuereinheit empfangen wird. Die Ausgangsgröße des Gliedes 186 wird auch dazu verwendet, die Inhalte des Registers 180 während der kreisförmigen Abtastung mit dem Kennungsradius beim Probeteil durch Signale zu verschieben, die durch ein ODER-Glied 188 hindurchgelangen. Es werden also während einer Abtastung mit dem Kennungsradius eines Probetüles, welches auf der Bezugsfläche 14 abgestützt ist entweder Einsen oder Nullen in aufeinanderfolgende Stufen des Rezirkulierregisters 180 geschoben, was davon abhängt, ob die Videoausgangsgröße oberhalb oder unterhalb der Vergleichsstufenspannung liegt, die durch das Potentiometer 122 eingestellt ist In ähnlicher Weise werden, wenn die Abtastung mit dem Kennungsradius eines Durchlauf-Teiles durchgeführt wird, die Informationen in das Register 182 von dem UND-Glied 190 eingeschoben, wobei letzteres durch die Ausgangsgröße der Vergleichsstufe auf der Leitung 46 und ein Signal von einem UND-Glied 192 in Bereitschaft gesetzt wird, welch letzteres wiederum durch die Taktquelle 72 in der Abtaststeuereinheit und über eine Leitung, die ein spannungsmäßig hohes Signal führt, wenn das Signal des Durchlauf-Teiles erzeugt wird, in Bereitschaft gesetzt wird. Die Ausgangsimpulse aus dem UND-Glied 192 werden auch dazu verwendet, um die Inhalte des Registers 182 mit Hilfe eines ODER-Gliedes 194 weiter zu schieben.
Der Korrelator 52 wirkt derart, daß er die in den Registern 180 und 182 enthaltenen Kennungen kreuzkorreliert Die Inhalte der Register werden im Gleichtakt durch eine Taktquelle 196 verschoben, wobei diese Taktquelle das Register 180 über das ODER-Glied 188 steuert und das Register 182 durch Impulse gesteuert wird, die durch ein UND-Glied 198 dem ODER-Glied 194 zugeführt verden.
Die Taktimpulse gelangen auch zu einem Zähler 200, der eine Kapazität gleich der Zahl der Stufen in den Registern 180 und 182 besitzt. Die Überläufe dieses Zählers gelangen zum Setzeingang eines Flip-Flops 202. Dieser Flip-Flop hat die Eigenart, daß er von der Taktquelle in Bereitschaft gesetzt wird, und sein Setzausgang ist mit seinem Rückstelleingang verbunden, so daß er in den Setzzustand nur für eine Taktperiode gelangt, die auf den Überlauf des Zählers 200 folgt. Die Setz-Ausgangsgröße des Flip-Flops 202 wirkt als eine in Bereitschaft setzende Eingangsgröße für das UND-Glied 198, so daß die Impulse aus der
Taktquelle 196 durch das UND-Glied 198 zum ODER-Glied 194 gelangen und zum Register 182 gelangen, und zwar zu ailen Zeitpunkten außer, wenn der Flip-Flop 202 sich in seinem Setz-Zustand befindet Die Setz-Ausgangsgröße des Flip-Flops 202 stellt auch den Zähler 200 zurück.
Die Taktquelle 196 wird durch ein Signal aus der Folgesteuereinheit 56 auf der Leitung 204 gestartet, welches auch dazu dient, alle Register in dem Korrelator 52 zu entleeren und zurückzustellen. Die Impulse aus der Taktquelle wirken dahingehend, daß sie die Inhalte der Register 180 und 182 synchron verschieben. Die Ausgangsgrößen dieser Register gelangen zu einem exklusiven ODER-Glied 206 und werden auch zu den Eingangsstufen des Registers zurückgeführt. Während der ersten Rückführung der Inhalte der Register 180 und 182 vergleicht das exklusive ODER-Glied 206 die Ausgangsgrößen der Register 180 und 182 Bit für Bit Wenn die Ausgangsgrößen die gleichen sind, entweder beide Nullen oder beide Einsen, so liegt die Ausgangsgröße des exklusiven ODER-Gliedes niedrig, und wenn die zwei Bits unterschiedlich sind, so liegt die Ausgangsgröße spannungsmäßig hoch. Wenn demzufolge die in den Registern 180 und 182 gespeicherten zwei Kennungen identisch sind, so liegt der Ausgang des exklusiven ODER-Gliedes 206 spannungsmäßig niedrig, und zwar während des gesamten Rezirkulierprozesses.
Die invertierte Ausgangsgröße des ODER-Gliedes 206 und die Taktimpulse werden dazu verwendet, ein UND-Glied 208 in Bereitschaft zu setzen, welches daraufhin immer dann einen Taktimpuls als Ausgangsgröße vorsieht, wenn die zwei von dem Glied 206 in Betracht gezogenen Bits die gleichen sind. Diese Impulse werden in einem Übereinstimmungs-Zählregister 210 gezählt. Wenn die Register 180 und 182 ein volles Mal eine Rezirkulation durchgemacht haben, so enthält das Register 210 eine Zählung, die gleich ist der Zahl ähnlicher Bits, die in den zwei Bitströmen enthalten waren. Wenn die zwei Kennungen identisch sind, so enthält das Anpassungs-Zählregister eine Zählung gleich der Zahl der Stufen der Register 180 und 182.
Der Zähler 200 arbeitet derart, daß er die Möglichkeit schafft, daß ein Extraschiebeimpuls zum Register 180 am Ende jedes vollständigen Rezirkulations Vorgangs der Register gelangt, so daß die Inhalte des Registers 180 um ein Bit hinsichtlich der Inhalte des Registers 182 während des nächsten Korrelationszyklus verschoben werden. Um dies durchzuführen, werden die Impulse aus dem UND-Glied 198 dem Zähler 200 angeboten, so daß er am Ende eines vollständigen Rezirkulationszyklus überläuft Dadurch nimmt der Flip-Flop 202 seinen Setz-Zustand für einen Zyklus an und verhindert das Zuführen des nächsten Taktimpulses zum Register 182, ermöglicht jedoch das Zuführen des Impulses zum Register 180. Die Setz-Ausgangsgröße des Flip-Flops 202 stellt auch den Zähler 200 zurück, so daß dieser für den nächsten Korrelationszyklus bereit ist
Am Ende jedes Korrelationszyklus enthält das Obereinstimmungs-Zählregister 210 eine Zählung, die gleich ist der Zahl von Übereinstimmungen zwischen m> den Bits der Register 180 und 182 während dieses Zyklus. Die Setz-Ausgangsgröße des Flip-Flops 202 setzt die Vielfach-UND-Glieder 212 in Bereitschaft, damit die Inhalte des Registers 210 zu einem Maximumkomparator 214 gelangen können. Dieser Komparator empfängt auch die Ausgangsgröße eines Maximum-Koinzidenzregisters 216. Wenn die Zählung in dem Register 210 die Zählung in dem Register 216 überschreitet, so setzt eine Ausgangsgröße aus dem Komparator 214 das Vielfach-UN D-Glied 118 in Bereitschaft, so daß die Inhalte des Registers 210 zum Register 216 gelangen und die früheren Inhalte desselben ersetzt werden. Da das Register 216 zu Beginn durch das Signal auf der Leitung 204 entleert wurde, welches den Korrelationsprozeß eingeleitet hat, werden die Inhalte des Anpassungs-Zählregisters am Ende der ersten Korrelation automatisch dem Register 216 zugeführt Danach werden am Ende jedes Korrelationszyklus, wie dies durch die Setz-Ausgangsgröße des Flip-Flops 202 signalisiert wird, die Inhalte des Obereinstimmungs-Zählregisters 210 mit den Inhalten des Registers 216 durch den Komparator 214 verglichen, und wenn die neue Übereinstimmungs-Zählung die alte überschreitet wird die alte Zählung in dem Maximumregister ersetzt In identischer Weise wird am Ende jedes Korrelationszyklus die Ausgangsgröße des Registers 210 einem Minimum-Komparator 218 über ein UND-Glied 220 zugeführt und wird mit den Inhalten eines Minimum-Registers 222 verglichen. Wenn die Übereinstimmungs-Zählung kleiner ist als die Inhalte des Minimumregisters (welches zu Beginn auf einen maximalen Zählschritt eingestellt wird), werden die Inhalte des Übereinstimmungs-Zählregisters über ein UND-Glied 224 dem Minimumregister zugeführt
Die Korrelationszyklen werden durch einen anderen Zähler 226 gezählt der die Setz-Ausgangsgröße des Flip-Flops 202 empfängt Jedesmal, wenn der Maximumdetektor 214 erkennt daß die Inhalte des Übereinstimmungs-Zählregisters 210 die Inhalte des Maximumregisters 216 überschreiten und die alte Übereinstimmungs-Zählung in diesem Register ersetzt wird, gelangt die Ausgangsgröße des Zählers 226 zu einem Winkel-Register 228, und zwar über ein UND-Glied 230. Der Zustand des Zählers 226 stellt den Schiebewinkel zwischen den in den Registern 180 und 182 enthaltenen Kennungen dar. Am Ende der Reihen von Kreuz-Korrelationen speichert das Register 228 den Winkel, bei welchem die zwei Kennungen ihre maximale Korrelation aufweisen.
Die Ausgangsgröße des Zählers 226 gelangt auch zu einer Vergleichsstufe 232, die auf die maximale Zählung eingestellt ist und wenn die Zahl der Korrelationszyklen dieses Maximum erreicht wird an die Taktquelle 196 ein Unterbrechungssignal angelegt wodurch der Kreuz-Korrelationszyklus beendet wird. Demzufolge speichert am Ende des Korrelationsprozesses der Korrelator 52 den Winkel der maximalen Korrelation zwischen den zwei Kennungen; den Wert der maximalen Korrelation und den Wert der minimalen Korrelation.
Wenn dieser minimale Korrelations-Wert kleiner ist als ein voreingestellter Wert, und wenn der maximale Korrelationswert einen zweiten voreingestellten Wert überschreitet so wird der Winkel der maximalen Korrelation als Maß für die Umdrehung des Durchlaufteils relativ zum Probeteil angenommen. Das System gibt dann an das Handhabungsgerät 32 Signale ab, die kennzeichnend für die Verschiebung des Flächenschwerpunktes des Durchlaufteils von dem Probeteil von sowohl in Richtung der X- als auch der V-Achse und für den Drehwinkel sind. Das Handhabungsgerät verwendet dann diese Signale, um das Durchlaufteil zu ergreifen.
Die Betriebsweise des Kreiswählers 50 für den Kennungsradius ist mehr im einzelnen in den Flußdiagrammen der Fig. 12 bis 16 dargestellt Fig. 12 zeigt ein gesamtes Flußdiagramm, welches Unterprogramme
aufweist, die in den anderen Figuren dargestellt sind. Gemäß Fig. 12 werden beim Start des Programms verschiedene Register in dem Rechner initialisiert:
1. Ein Register mit der Zahl der Spitzenübergänge in der Auto-Korrelationsfunktion in einem Band, welches einen Schwellenwert überschreitet, ist auf einen Maximalwert eingestellt.
2. Ein die Zahl der Kreise in dem Band enthaltendes Register wird auf den Wert Null eingestellt.
3. Ein Register, welches den Radius des in Betracht in stehenden Kreises speichert, wird auf einen Minimalwert eingestellt
4. Ein Register, welches einen Qualitätsparameter eines Bandes speichert, wird auf Null gestellt.
Als nächstes wirj der Radiuswert mit einem maximalen Radiuswert verglichen. Dieser Vergleich dient zu Beendigung des Programms, wenn der Radiuswert den Maximalwert überschreitet. Solange der Radiuswert nicht gleich ist mit diesem Maximum, besteht der nächste Schritt darin, das Radiusregister um einen einzelnen Wert zu erhöhen. Als nächstes wird der Prozessor 56 gesteuert, um eine kreisförmige Abtastung mit dem Kennungsradius zu erzeugen. Die während dieser Abtastung entstehenden Übergangssignale werden dazu verwendet, beide Register 180 und 182 des Korrelators 52 zu laden. Der Korrelator wird dann gesteuert, um eine Auto-Korrelation der Kennung durchzuführen. Dies führt zu minimalen und maximalen Auto-Korrelationswerten, die in den Registern 222 und 216 gespeichert werden. jo
Prüfung eines neuen Kreises hinsichtlich absoluter Kriterien
Der minimale Korrelationswert ist umgekehrt proportional zu dem Informationsinhalt in einem Kreis. Wenn dieser minimale Wert einen voreingestellten Wert überschreitet, so besitzt der Kreis keinen ausreichenden Informationsinhalt, um den Radius desselben als Kennungsradius zu verwenden, und das Programm gelangt zu einem Band-Ausschluß-Programm, welches im folgenden erläutert werden soll. Wenn der minimale Korrelationswert innerhalb der Toleranz liegt, so wird ein Schwellenwert für die Bestimmung der Spitzenübergänge in dem Kreis berechnet. Dieser Wert stellt eine direkte Funktion der Differenz zwischen dem maximalen und dem minimalen Korrelationswert dar. Dieser Schwellwertfaktor wird dann in einem Auto-Korrelationsprogramm verwendet, welches als Software ausgeführt ist, bei welchem das System die Lage und die Größe der Spitzen (Übergänge) in der Auto-Korrelationsfunktion bestimmt, die den Schwellenwert überschreiten und angenähert die Zahl der schwarzen und weißen Abschnitte in der Kennung bestimmt Diese Operation wird durch das Unterprogramm ausgeführt, welches im einzelnen in Fig. 13 wiedergegeben ist die im folgenden mehr im einzelnen erläutert werden soil.
Wenn die Zahl der Spitzen (Übergänge), die den Schwellenwert fiberschreiten, einen Maximalwert nicht überschreitet (5 bei dem bevorzugten Ausfflhningsbeispiel nach der Erfindung), so ist der unter Betracht stehende Kreis in ausreichendem MaB eindeutig, um ihn in dem Kennungsradhis-AuswählprozeB zu verwenden, und das Programm gelangt in eine Phase, in welcher der unter Betracht stehende Kreis getestet wird, und zwar für die Aufnahme in ein früher gestartetes Band von Kreisen. Dieses Programm son nun im folgenden erläutert werden. Wenn die Auto-Korrelationsfunktion des Kreises mehr als 5 Spitzen enthält, so gelangt das Programm zum Bandausschluß.
Bandausschluß Das Bandausschlußprogramm wird betreten:
1. Wenn der Radiuswert den maximalen Radius erreicht.
2. Wenn ein neuer Kreis einen der an früherer Stelle beschriebenen absoluten Tests nicht besteht (minimaler Korrelationswert und Zahl der Spitzen).
3. Wenn ein guter Kreis nicht in ausreichendem Maß ähnlich mit dem letzten Kreis ist, um seine Aufnahme in das gleiche Band dieses letzten Kreises zu begünstigen.
Die erste Operation bei der Durchführung des Ausschlusses besteht darin, zu bestimmen, ob die Zahl der Kreise, die an früherer Stelle als in das Band aufnehmbar festgestellt wurden, ein Minimum überschreitet Bei dem bevorzugten Ausführungsbeispiel muß ein Band mindestens drei Kreise enthalten, bevor es für die Auswahl des Kennungsradius in Betracht gezogen wird. Wenn die Kreiszählung in dem auszuschließenden Band das Minimum trifft oder es überschreitet so wird der Qualitätsfaktor des Bandes berechnet Der Qualitätsfaktor stellt ein Maß der gewünschten Eigenschaften eines Bandes dar und wird unter Verwendung eines Unterprogramms gemäß Fig. 14 berechnet die im folgenden im einzelnen erläutert werden soll. Als nächstes wird die Zahl der Spitzen (Übergänge) in dem Band, welches gespeichert wird, mit der Zahl der Spitzen in dem letzten Band verglichen, welches als für die Verwendung im Kennungs-Auswählprozeß geeignet ausgewählt wurde.
Wenn das vorhandene Band weniger Spitzen (Übergänge) als das gespeicherte Band enthält, so wird es für die Verwendung in dem Kreisauswählprozeß als besser erachtet als dieses letztere Band, und es werden die verschiedenen Eigenschaften des vorhandenen Bandes in den Registern gespeichert die zuvor die Eigenschaften des letzten Bandes enthielten. Wenn natürlich das bewertete Band das erste in Betracht gezogene Band ist so werden dessen Eigenschaften einfach gespeichert
Diese Eigenschaften umfassen die Spitzenzählung des Bandes, d. h. die Zahl der Spitzen (Übergänge) in jedem Kreis, die Kreiszählung, den Qualitätsfaktor, wie dieser durch das Unterprogramm gemäß Fig. 14 bestimmt wird, und den mittleren Radius des Bandes. Der mittlere Radius ist gleich dem Radius des Zentrumkreises des Bandes, wenn dieses eine ungerade Zahl von Kreisen enthält oder gleich dem des nächsten radial äußeren Kreises, wenn dieses eine gerade Zahl von Ringen oder Kreisen enthält d.h. in einem Band, welches sechs Kreise enthält ist der mittlere Radius derjenige des dritten, vom äußersten Kreis ab gezählt
Wenn das vorhandene Band und das Band, für welches die Charakteristika gespeichert wurden, die gleiche Zahl von Spitzen aufweisen, so wird das Band mit dem besten Qualitätsfaktor aufbewahrt, und die Eigenschaften des anderen Bandes werden ausgeschieden bzw. gelöscht
Am Ende des Bandausscheide-Prozesses wird eine Feststellung getroffen, ob der in Betracht stehende Kreis für die Verwendung bei dem Kennungsradius-Auswählprozeß geeignet ist Dieser Test ist erforderlich, da das Bandausschlußprogramm betreten werden kann, wenn ein guter Kreis nicht ausreichend ähnlich mit den anderen Kreisen eines Teilbandes ist um den Einschluß
bzw. Aufnahme in dieses Band zu begünstigen. In diesem Fall wird es erforderlich, nachdem das letzte Band ausgeschlossen wurde, mit einem neuen Band zu beginnen.
Test eines guten oder geeigneten Kreises für die
Aufnahme in ein Band
Der erste Schritt beim Testen eines guten Kreises für die Aufnahme in ein Band besieht darin, zu bestimmen, ob ein Band bereits angefangen wurde. Wenn ein Band κι noch nicht angefangen wurde, werden ein Kreis-Zählregister und ein Verzerrungsregister beide initialisiert, und es werden die folgenden Charakteristika des guten Kreises aufgehoben:
1. Der Radiuswert.
2. Der Gütefaktor — dieser Faktor besteht aus der Anfangsneigung der Auto-Korrelationsfunktion für den Kreis, wie diese durch das Unterprogramm gemäß Fig. 13 erzeugt wird. Er stellt eine Anzeige der Zahl der getrennten schwarzen und weißen Segmente in der Kennung dar und wird als am besten betrachtet, wenn er klein ist, wodurch eine kleine Zahl von schwarzen und weißen Zonen angezeigt wird.
3. Die Differenz zwischen dem maximalen und dem minimalen Auto-Korrelationswert für den Kreis.
4. Die Werte der Spitzen in der Auto-Korrelationsfunktion, welche den Schwellenwert überschreiten.
Als nächstes wird die Kennung dieses Kreises in dem Register 180 des Korrelators gespeichert, und der Radius wird erhöht und die nächste Kennung erreicht.
Wenn mit einem Band bereits begonnen wurde, bevor der gute Kreis erreicht ist, so wird eine Reihe von Tests durchgeführt, um zu bestimmen, ob der neue Kreis in dieses Band aufgenommen werden kann. Zunächst j-> werden die Zahlen der Spitzen in dem in Betrachtung stehenden Kreis mit denjenigen des letzten Kreises verglichen. Wenn die Zahlen der Spitzen unterschiedlich sind, so wird das Bandausschließprogramm betreten. Wenn die Anzahl der Spitzen (Übergänge) ad gleich ist, so wird ein Test der relativen Orte der Spitzen in den Auto-Korrclationsfunktionen dieses Bandes und des letzten Bandes durchgeführt. Dieser Test wird durch das Unterprogramm gemäß Fig. 15 geleitet. Die tatsächliche Differenz in der Lage der Spitzen in den -r> zwei Bändern (weiches als Verschrägung bzw. Verzerrung bezeichnet wird) wird aufbewahrt, und zwar als Zusatz in eine zusammengesetzte Verschrägung bzw. Verzerrung. Wenn dieser Spitzen-Verschiebungswert ein Maximum überschreitet, so wird das Bandaus- >o schließprogramm betreten. Wenn die Spitzenstellen innerhalb der Toleranz liegen, so werden die Spitzeninformationen des vorhandenen Kreises für einen Vergleich mit dem nächsten guten Kreis aufbewahrt, und es wird eine Kreuz-Korrelation zwischen dem vorhandenen Kreis und dem früheren Kreis durchgeführt, um die Zahl der Spitzen und deren Stellen in der Kreuz-Korrelationsfunktion zu bestimmen, und zwar unter Verwendung des Programms gemäß F i g. 13. Als nächstes wixd eine Bestimmung durchgeführt, ob die eo Zahl der Spitzen in der Kreuz-Korrelationsfunktion die gleiche ist wie die Zahl der Spitzen in der Auto-Korrelationsfunktion des neuen Kreises. Wenn diese Zahlen unterschiedlich sind, so wird das Bandausschließprogramm betreten. Wenn sie gleich sind, werden die relativen Lagen der Spitzen in der Kreuz-Korrelationsfunktion und der Auto-Korrelationsfunktion verglichen, und zwar unter Verwendung des Unterprogramms von F i g. 15. Wenn die Lage der Spitzen nicht innerhalb der Toleranz liegt, so wird das Bandausschließprogramm betreten. Wenn sie innerhalb der Toleranz liegt, so wird der neue Kreis effektiv zum alten Band addiert, und zwar durch Erhöhen des Kreis-Zählregisters; die Korrelationserweiterung des vorhandenen Kreises (der Maximum-zu-Minimum-Korrelationswert) wird in das Register eingegeben, welche die Erweiterungen der früheren Bänder enthält, und es wird die Verzerrung des neuen Kreises zur Summe der Verzerrungen der anderen Kreise in dem Band addiert. Dann wird die Kennung des neuen Kreises in dem Register 180 des Korrelators 52 aufbewahrt, und der Radiuswert wird für die nächste Kennung erhöht.
Auf diese Weise werden aufeinanderfolgende Kennungen erreicht, werden getestet, um zu bestimmen, ob sie die absoluten Kriterien treffen, und werden mit dem früheren Band verglichen, um festzustellen, ob sie in das Band aufgenommen werden können. Ein Band wird ausgeschlossen, wenn ein neuer Kreis die absoluten Kriterien nicht erfüllt oder an den absoluten Kriterien vorbeigeht, jedoch nicht in ausreichendem Maß die Kriterien des alten Bandes erfüllt. Wenn ein Band ausgeschlossen wird, werden seine Kriterien mit den Kriterien des früheren Bandes verglichen, und das beste Band wird aufbewahrt.
Wenn der Radius schließlich den maximalen Radius überschreitet, so umfassen die gespeicherten Bandinformationen den zu verwendenden Kennungskreis. Der Radius dieses Kreises und seine Kennung werden dann für die Verwendung während der Durchlaufphase für einen Vergleich mit dem Kennungsradius und der Kennung von den Durchlaufteilen aufbewahrt.
Korrelations-Programm
Fig. 13 veranschaulicht das Korrelations-Programm, welches dazu verwendet wird, eine Kennung selbst in Beziehung zu setzen bzw. autozukorrelieren, um die Lagen der Spitzen (Übergänge) und die Zahl der Spitzen desselben zu bestimmen und um dessen Gütefaktor zu bestimmen und um einen Kreis in einem Band mit einem früheren Kreis in Kreuz-Korrelation zu bringen.
Der erste Schritt bei diesem Programm besteht darin, die Register zu initialisieren, welche die Verzerrung, die Zählung der Spitzen oberhalb des Schwellenwertes in der Korrelationsfunktion und die Anfangsneigung der Korrelationsfunktion (»Gütefaktor«) enthalten. Als nächstes werden die zwei zu korrelierenden Kennungen, die in den zwei Pufferregistern gespeichert sind, die als Register »A« und Register »B« bezeichnet sind, verglichen, um die Zahl der Punkte zu bestimmen, bei welchen sie sich entsprechen, wobei das Programm gemäß F i g. 16 verwendet wird. Die Ausgangsgröße des Übereinstimmungsprogramms besteht aus einer Zahl gleich der Zahl der Ziffernpunkte, bei welchen die zwei Kennungen Obereinstimmen. Wenn dies zum erstenmal durchgeführt wird, wird ein Register, welches die frühere Übereinstimmungs-Zählung enthält, auf den Wert der ersten Übereinstimmungs-Zählung eingestellt Danach wird die frühere Übereinstimmungs-Zählung von der vorhandenen Übereinstimmungs-Zählung abgezogen, um die Differenz zu ermitteln, die ein Maß der Steigerung der Korrelationsfunktion darstellt Wenn die Winkelverschiebung der Kennung in dem Register A relativ zur Kennung in dem Register B um ein Inkrement unterschiedlich ist, d.h. nach der zweiten Übereinstimmungs-Zählung, wird dieser Differenzwert
als der »Gütefaktor« für die Kennung aufbewahrt. Wenn die frühere Differentialsteigung positiv war und die vorhandene Steigung negativ ist, wodurch angezeigt wird, daß eine Spitze passiert wurde, wird festzustellen sein, ob die Spitze den Schwellenwert überschreitet. -■ Wenn dies der Fall ist, so wird die Größe der Spitze und die Lage der Spitze in Ausdrucken der Winkelverschiebung von einer Kennung relativ zur anderen gespeichert. Wenn fünf Spitzen gespeichert wurden, wird das Unterprogramm beendet. Im anderen Fall wird das Register, welches die letzte Steigung enthält, d. h. die Differenz zwischen der vorhandenen und der vergangenen Übereinstimmungs-Zählung, auf den vorhandenen Wert eingestellt, und es wird eine der Kennungen um ein Inkrement relativ zur Kennung verschoben. Es wird dann ein Test durchgeführt um zu bestimmen, ob eine volle Drehung von 360° erreicht wurde. Wenn dies der Fall war, werden der Gütefaktor für die Kennung und die Spitzenzählung gespeichert, und das Unterprogramm wird beendet. Im anderen Fall wird die Übereinstimmungs-Zählung der verschobenen Kennung genommen, und das Programm wird wiederholt, bis wenigstens fünf Spitzen erreicht sind oder eine volle 360°-Schiebung der Kennungen erreicht ist.
Übereinstimmungsprogramm
Bei dem Übereinstimmungsprogramm gemäß Fi4J-. 16 wird zunächst ein Übereinstimmungswert auf Null initialisiert, und es wird eine Inkrementgröße »i« auf Null eingestellt. Dann wird »i« um eine Einheit jo erhöht, und die in der ersten Bitstellung der zwei Pufferstufen enthaltenen Bits gelangen durch ein exklusives ODER-Glied, welches eine Ausgangsgröße erzeugt, wenn die zwei Bits gleich sind. Wenn dies der Fall ist, wird der Übereinstimmungswert um eins erhöht. j> Es wird dann ein Test durchgeführt, um festzustellen, ob der Wert »i« gleich ist mit der Zahl der Bits in dem Register. Solange dies nicht der Fall ist, wird »i« erhöht, es werden beide Register um eine Bitposition verschoben, und das Programm wird wiederholt. Wenn »i« den Wert N erreicht (die Zahl der Bits in jedem der Register A und B), so wird der Übereinstimmungswert aufbewahrt, und das Unterprogramm wird beendet.
Qualitätswert 4r
Die Bestimmung des Qualitätswertes von zwei Kreisen, der dazu verwendet wird um festzustellen, welcher Kreis während des Kreisauswählprogramms aufzubewahren ist, wenn die zwei Kreise die gleiche Zahl von Spitzen aufweisen, wie dies in Fig. 14 veranschaulicht ist, besteht einfach aus einer Berechnung des Wertes Q
= Klx(RingzähIu:jg)
+ K2 χ (mittleres Korrelationsmax-min)
— K3 χ (Schräge/Kreiszählung) -K4 χ (Gütefaktor).
Die K-Werte sind willkürliche Bewertungsfaktoren, die zu Beginn eingestellt werden auf Kl = 16, K2 = 5, K3= 16undK4= 16.
Die Kreiszählung besteht natürlich aus einer Zählung bo der Zahl von Kreisen, die in dem Band enthalten sind.
Das mittlere Korrelationsmax-min ist gleich mit
1 /Kreiszählung
χ (die Summe der maximalen Auto-Korrelationswerte
— Summe der minimalen Auto-Korrelationswerte) für jedes Band.
Der Schrägungsfaktor besteht aus der weitesten mittleren Winkelstreuung zwischen den Korrelationsspitzen aufeinanderfolgender Kreise innerhalb d.s in Betracht stehenden Bandes.
Der Gütefaktor besteht aus der Anfangsneigung oder Steigung der Auto-Korrelationsfunktion der Kennung des ersten Kreises in dem Band und stellt eine Annäherung der Anzahl der schwarzen und weißen Abschnitte in dieser Kennung dar.
Berechnung der Schräge
Das Programm für die Bestimmung der relativen Lagen der Spitzen in einem Paar von aufeinanderfolgenden Auto Korrelationen, welches zum Test eines Kreises für die Aufnahme in ein Band verwendet wird, ist in Fig. 15 gezeigt. Das Eingangsmaterial für dieses Programm besteht aus den Werten der Lagen und der Größe der Korrelationsspitzen von zwei Kennungen A und B. Allgemein werden bei diesem Programm die Spitzenlagen der zwei unterschiedlichen Korrelationen verglichen, und es wird die mittlere Winkelverschiebung der Spitzen berechnet. Die Lage jeder Spitze in einem Datensatz wird aufeinanderfolgend mit der Lage jeder Spitze in dem zweiten Datensatz verglichen, bis eine Übereinstimmung innerhalb einer spezifizierten Toleranzverschiebung zwischen zwei Spitzen gefunden ist. An dieser Stelle wird die tatsächliche Differenz hinsichtlich der Lage der zwei Spitzen, die innerhalb dieser Toleranz liegen, für die Addition zu einer zusammengesetzten Verschiebung aufbewahrt. Wenn keine Übereinstimmung gefunden wird, so wird ein Außer-Toleranz-Zeichen gesetzt. Der zusammengesetzte Verschiebungswert besteht aus der Summe aller Verschiebungen der Spitzenlagen, die sich innerhalb der Toleranz entsprechen. Als letzte Operation wird die Verschiebungssumme durch die Zahl der Spitzen zum Zweck einer Normierung geteilt. Dieser Wert wird dazu verwendet, zu bestimmen, ob ein neuer Kreis zu dem Band addiert werden soll.
Unter Hinweis auf Fig. 15 wird zu Beginn ein Register »i« auf Null gestellt welches die Spitzenlage in der Kennung A bestimmt, und es wird ein Register, welches die Schräge summiert, auf Null gestellt. Als nächstes wird das »Ar-Register um eins erhöht, und es wird ein .»/«-Register, welches die Spitzenzahl der Korrelationsfunktion der verglichenen Kennung B einstellt, auf Null gestellt. Als nächstes wird der /Wert um eins erhöht. Es werden dann die Lagen der /- und /Spitzen verglichen. Wenn sie innerhalb einer vorbestimmten Winkeltoleranz liegen, wird deren Differenz in das Schräge-Register eingeführt Dann wird der /-Wert mit der Spitzenzählung verglichen, und wenn er kleiner ist als die Spitzenzählung, wird der /-Wert erhöht und die nächste Spitzenlage in dem Register A wird mit jeder der Spitzenlagen in dem Register B verglichen, bis eine Spitze erreicht ist die innerhalb der Toleranz liegt Wenn die ersie verglichene Spitze nicht innerhalb der Toleranz liegt und wenn der/-Wert nicht die Spitzenzählung der Kennung in dem Register B erreicht wird der /-Wert erhöht und die nächste Spitzenlage in dem Register B wird mit der in Betracht stehenden Lage in dem Register A verglichen. Wenn der /Wert die Spitzenzählung in dem Register B erreicht ohne daß irgendeine der Spitzen in dem Register B innerhalb der Toleranz der Spitzen in dem Register A gelegen hat so wird ein Außer-Toleranz-Signal gesetzt
Wenn eine Spitze in dem Register B gefunden wird, die innerhalb der Toleranz mit der Spitze in dem Register A, bezeichnet als «/«-Wert, liegt oder wenn
alle Spitzen des Registers B in Betracht gezogen wurden, so wird der »/«-Wert um eins erhöht, und es wird dann die nächste Spitzenlage in dem Register A mit den Spitzenlagen in dem Register B verglichen. Wenn irgendwelche Spitzen gefunden werden, die ϊ innerhalb der Toleranz liegen, so wird die Winkeltrenriung zwischen diesen Spitzen zur Schrägungs-Summe addiert. Dieser Prozeß wird fortgeführt, bis alle Spitzen in dem Register A verglichen wurden. Dann wird die Summe in dem Schräge-Register durch die Spitzenzählung geteilt, und das Unterprogramm wird beendet.
Paar-Kennungen für Übereinstimmung
Die in Verbindung mit dem Korrelationsprogramm von Fig. 13 verwendete Technik, um den Grad der Übereinstimmung zwischen den Kennungen zu bestimmen, die in einem Paar von Registern A und B enthalten sind, ist in Fig. 16 veranschaulicht Zu Beginn wird ein Übereinstimmungswert und eine Größe / auf Null gestellt. Als nächstes wird der /-Wert erhöht, und das erste Bit in dem Register A wird einer exklusiven ODER-Funktion unterzogen, und zwar in Verbindung mit dem ersten Bit in dem Register. Wenn die Bits beide Einsen sind oder beide Nullen sind, so wird aus dem ODER-Glied eine Ausgangsgröße erhalten, und das Übereinstimmungswert-Register wird um eins erhöht Der /-Wert wird dann erhöht, und die zweiten Bits in den zwei Registern werden verglichen. Dieser Prozeß wird wiederholt, bis der /-Wert die Zahl der Bits in den Registern erreicht, an welcher Stelle das Programm ausläuft.
Es sei hervorgehoben, daß bei dem bevorzugten Ausführungsbeispiel nach der Erfindung eine gewisse Redundanz zwischen dem Hardware-Korrelator 52 und dem Software-Korrelator besteht, der in dem Kreiswähler 50 enthalten ist. In alternativen Ausfühningsformen kann die gesamte Korrelation entweder in einem Hardware- oder Software-Korrelator durchgeführt werden, was von der Wirtschaftlichkeit des Systems abhängig ist.
Hierzu 13 Blatt Zeichnungen

Claims (7)

Patentansprüche:
1. System zum Feststellen der Winkelorientierung eines Durchlaufteils relativ zu einem Probeteil, die auf ein und derselben Fläche abgestützt angeordnet sind, bestehend aus einer optischen Einrichtung zum Abtasten des Probeteils und der Durchlaufteile und zum Gewinnen von Signalen, einer Einrichtung zum Erzeugen eines Probeteil-Kennungssignals aus den das Probeteil betreffenden gewonnenen Signalen, einer Einrichtung zum Erzeugen eines Durchlaufteil-Kennungssignals aus den ein Durchlaufteil betreffenden gewonnenen Signalen, und einer Einrichtung zum Bestimmen der Phasenbeziehung zwischen dem Durchlaufteil-Kennungssignal und dem Probeteil-Kennungssignal, dadurch gekennzeichnet, daß die optische Einrichtung (16, 20, 22, 24) zur Erzeugung von Signalen ausgebildet ist, welche den Umriß des Probeteils und der Durchlaufteile wiedergeben, daß eine Einrichtung (42,48) vorgesehen ist, welche die den Umriß des Probeteils betreffenden Signale verarbeitet, um die Koordinaten des Flächenschwerpunktes des Probeteils relativ zu einer absoluten Position zu bestimmen, daß eine Einrichtung (40, 50, 52, 56) zur Erzeugung eines Probeteil-Kennungssignals vorgesehen ist, die zunächst mehrere Kreisabtastungen mit inkrementell verändertem (vergrößertem) Abtastradius um den Flächenschwerpunkt zur Gewinnung von mehreren Kreisabtastgruppen oder Kreisabtastbändern mit gleichen oder ähnlichen Abtasteigenschaften innerhalb eines Kreisabtastbandes durchführt und dann eines der so gewonnenen Kreisabtastbänder hinsichtlich bestimmter Qualitätsfaktoren, wie z. B. Anzahl der Kreisabtastungen in dem Kreisabtastband, Empfindlichkeit der Grenzabtastkreise des betreffenden Kreisabtastbandes bei geringen Abtastradiusänderungen hinsichtlich der das betreffende Kreisabtastband betreffenden Kennung, oder w Anzahl der Schwarz-Weiß-Abschnitte der Kreisabtastungen des jeweiligen Kreisabtastbandes, aus der Zahl der Kreisabtastbänder auswählt und einen im mittleren Bereich des ausgewählten Kreisabtastbandes gelegenen Abtastkreis als Kennungsabtastkreis bzw. als Probeteil-Kennungssignal auswählt, daß eine Analysiereinrichtung (48, 54) vorgesehen ist, welche das den Umriß des Durchlaufteils wiedergebende Signal analysiert, um den Flächenschwerpunkt des Durchlaufteils zu bestimmen, und daß die κι Einrichtung (40, 50, 52, 56) zur Erzeugung des Probeteil-Kennungssignals das Durchlaufteil mit dem Radius des Kennungsabtastkreises um den ermittelten Flächenschwerpunkt des Durchlaufteils abtastet, um ein Durchlaufteil-Kennungssignal zu v, erzeugen, welches im Vergleich zum Probeteil-Kennungssignal die relative Drehlage des Durchlaufteils zum Probeteil angibt.
2. System nach Anspruch 1, dadurch gekennzeichnet, daß ein Kreuz-Korrelator (52) vorgesehen ist, μ der eine Einrichtung zum Erzeugen einer Kreuz-Korrelationsfunktion des Probeteil-Kennungssignals und des Durchlaufteil-Kennungssignals und zur Bestimmung der Stelle des Spitzenwertes dieser Funktion enthält. <
3. System nach Anspruch 1, dadurch gekennzeichnet, daß die optische Einrichtung eine optisch/elektrische Wandlervorrichtung (24) enthält, die den Beleuchtungswert an einer Stelle innerhalb ihres Sehbereiches zu einem Zeitpunkt bestimmen kann, und eine Einrichtung (40) enthält, die bewirkt, daß das Sehfeld der genannten Vorrichtung in Form eines rechteckigen Rasters abgetastet wird, um dabei elektrische Signale zu erzeugen, die für den Umriß des Probeteils und des Durchlaufteils repräsentativ sind, und um den Sehbereich in kreisförmigem Raster abzutasten.
4. System nach Anspruch 1, dadurch gekennzeichnet, daß die Einrichtung zur Erzeugung des Probeteil-Kennungssignals eine Klassifiziereinrichtung (56) enthält, um die Signale, die für die Schnittstellen einer kreisförmigen Abtastung mit dem Umriß des Teils repräsentativ sind, in Gruppen zu klassifizieren, welche einen hohen Grad an Korrelation relativ zueinander haben.
5. System nach Anspruch 1, dadurch gekennzeichnet, daß Register (180,182, F i g. 11) vorgesehen sind, um die Eigenschaften der Gruppen der Kreisabtastungen miteinander zu vergleichen.
6. System nach den Ansprüchen 1,4 und 5, dadurch gekennzeichnet, daß die Einrichtung (40,50,52, 56) zum Erzeugen des Probeteil-Kennungssignals aus mehreren Minirechnern aufgebaut ist.
7. System nach Anspruch 6, dadurch gekennzeichnet, daß die Einrichtung (40, 50, 52, 56) zum Erzeugen des Probeteil-Kennungssignals wenigstens einen programmierbaren Rechner enthält.
DE2518077A 1974-05-16 1975-04-23 System zum Feststellen der Winkelorientierung eines Durchlaufteiles relativ zu einem Probeteil Withdrawn DE2518077B2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/470,345 US4017721A (en) 1974-05-16 1974-05-16 Method and apparatus for determining the position of a body

Publications (2)

Publication Number Publication Date
DE2518077A1 DE2518077A1 (de) 1975-11-27
DE2518077B2 true DE2518077B2 (de) 1979-07-26

Family

ID=23867239

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2518077A Withdrawn DE2518077B2 (de) 1974-05-16 1975-04-23 System zum Feststellen der Winkelorientierung eines Durchlaufteiles relativ zu einem Probeteil

Country Status (9)

Country Link
US (1) US4017721A (de)
JP (1) JPS5821683B2 (de)
CA (1) CA1037593A (de)
CH (1) CH590454A5 (de)
DE (1) DE2518077B2 (de)
FR (1) FR2271541B1 (de)
GB (1) GB1474010A (de)
IT (1) IT1038202B (de)
SE (1) SE408491B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3408100A1 (de) * 1981-03-05 1985-09-05 President And Fellows Of Harvard College, Cambridge, Mass. Verfahren und vorrichtung zum erkennen und positionieren eines flachen gegenstands, insbesondere bei der herstellung von bekleidungsstuecken

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1073111A (en) * 1975-11-28 1980-03-04 Bendix Corporation Method and apparatus for calibrating mechanical-visual part manipulating system
GB1592368A (en) * 1976-10-18 1981-07-08 Texas Instruments Inc Automated manipulative operation system
US4132318A (en) * 1976-12-30 1979-01-02 International Business Machines Corporation Asymmetric six-degree-of-freedom force-transducer system for a computer-controlled manipulator system
US4187051A (en) * 1978-05-26 1980-02-05 Jerry Kirsch Rotary video article centering, orienting and transfer device for computerized electronic operating systems
US4373804A (en) * 1979-04-30 1983-02-15 Diffracto Ltd. Method and apparatus for electro-optically determining the dimension, location and attitude of objects
US4305130A (en) * 1979-05-29 1981-12-08 University Of Rhode Island Apparatus and method to enable a robot with vision to acquire, orient and transport workpieces
US4316189A (en) * 1980-05-08 1982-02-16 Westinghouse Electric Corp. Electromechanical display apparatus
US4402053A (en) * 1980-09-25 1983-08-30 Board Of Regents For Education For The State Of Rhode Island Estimating workpiece pose using the feature points method
JPS57120112A (en) * 1980-12-22 1982-07-27 Fujitsu Ltd Locus control method of arm
JPS57113115A (en) * 1980-12-30 1982-07-14 Fanuc Ltd Robot control system
JPS57113116A (en) * 1980-12-30 1982-07-14 Fanuc Ltd Robot control system
FR2499736B1 (fr) * 1981-02-12 1987-03-06 Renault Dispositif et procede de localisation d'objets tridimensionnels en vrac pour la commande d'un terminal de prehension
US4412293A (en) * 1981-03-30 1983-10-25 Kelley Robert B Robot system which acquires cylindrical workpieces from bins
US4498778A (en) * 1981-03-30 1985-02-12 Technical Arts Corporation High speed scanning method and apparatus
US4443855A (en) * 1981-05-06 1984-04-17 Robert Bishop Method of and apparatus for controlling robotic equipment with the aid of mask algorithm image processing techniques
FR2517066A1 (fr) * 1981-11-20 1983-05-27 Lavergnat Jacques Dispositif pour determiner et suivre les coordonnees instantanees de l'extremum d'une courbe y = f (x), caracteristique d'un systeme comportant une entree x et une sortie y
GB2112130B (en) * 1981-12-04 1985-04-03 British Robotic Syst Component identification systems
SE456048B (sv) * 1982-02-24 1988-08-29 Philips Norden Ab Sett och anordning for att bestemma kollisionsrisken for tva inbordes rorliga kroppar
JPS58177295A (ja) * 1982-04-07 1983-10-17 株式会社日立製作所 ロボット制御装置
AU1684883A (en) * 1982-08-06 1984-02-09 Emhart Industries Inc. Inspection of glassware containers
US4671650A (en) * 1982-09-20 1987-06-09 Crane Co. (Hydro-Aire Division) Apparatus and method for determining aircraft position and velocity
US4495589A (en) * 1982-09-20 1985-01-22 Crane Co. Aircraft ground velocity determination system
US4628469A (en) * 1982-09-29 1986-12-09 Technical Arts Corporation Method and apparatus for locating center of reference pulse in a measurement system
JPS5959397A (ja) * 1982-09-29 1984-04-05 オムロン株式会社 特徴点のラベリング装置
JPS5991229U (ja) * 1982-12-08 1984-06-20 川崎重工業株式会社 物体移載装置
DE3485604D1 (de) * 1983-04-11 1992-04-23 Komatsu Mfg Co Ltd Verfahren zum identifizieren von objekten.
DE3481144D1 (de) * 1983-04-11 1990-03-01 Komatsu Mfg Co Ltd Verfahren zum identifizieren von objekten.
US4628464A (en) * 1983-10-07 1986-12-09 Westinghouse Electric Corp. Robotic system for mounting electrical components
EP0149457B1 (de) * 1984-01-13 1993-03-31 Kabushiki Kaisha Komatsu Seisakusho Identifizierungsverfahren von Konturlinien
JPH0652167B2 (ja) * 1984-02-08 1994-07-06 シチズン時計株式会社 画像処理方法
US4613269A (en) * 1984-02-28 1986-09-23 Object Recognition Systems, Inc. Robotic acquisition of objects by means including histogram techniques
JPS60200385A (ja) * 1984-03-26 1985-10-09 Hitachi Ltd 姿勢判定方式
FR2566217B1 (fr) * 1984-05-28 1988-05-27 Micro Controle Procede et dispositif pour la reconnaissance d'un motif particulier d'une image
JPS60263681A (ja) * 1984-06-08 1985-12-27 株式会社日立製作所 ロボツトの教示方法
JPH0629694B2 (ja) * 1984-08-30 1994-04-20 新明和工業株式会社 位置ずれ補正方法
DE3580918D1 (de) * 1984-12-14 1991-01-24 Sten Hugo Nils Ahlbom Anordnung zur behandlung von bildern.
JPS61296409A (ja) * 1985-06-25 1986-12-27 Fanuc Ltd ロボツト制御方式
JPS6216692U (de) * 1985-07-15 1987-01-31
US4750123A (en) * 1985-08-30 1988-06-07 Texas Instruments Incorporated Method for predicting tracking cameras for free-roaming mobile robots
US4754402A (en) * 1985-08-30 1988-06-28 Texas Instruments Incorporated Mobile vehicle controller utilization of delayed absolute position data for guidance and navigation
JPS62103508A (ja) * 1985-10-31 1987-05-14 Hajime Sangyo Kk 物体の外形検査方法及び装置
US4704694A (en) * 1985-12-16 1987-11-03 Automation Intelligence, Inc. Learned part system
DE3601523C1 (de) * 1986-01-20 1987-07-16 Manfred Richter Verfahren zur Positionierung und Vermessung von Werkstuecken auf Bearbeitungsstrassen
JPS62209305A (ja) * 1986-03-10 1987-09-14 Fujitsu Ltd 寸法良否判定方法
JPS62209304A (ja) * 1986-03-10 1987-09-14 Fujitsu Ltd 寸法測定方法
US5159474A (en) * 1986-10-17 1992-10-27 E. I. Du Pont De Nemours And Company Transform optical processing system
US5078501A (en) * 1986-10-17 1992-01-07 E. I. Du Pont De Nemours And Company Method and apparatus for optically evaluating the conformance of unknown objects to predetermined characteristics
JPS63123175A (ja) * 1986-11-12 1988-05-26 Fanuc Ltd 画像デ−タのモ−メント計算装置
US4979949A (en) * 1988-04-26 1990-12-25 The Board Of Regents Of The University Of Washington Robot-aided system for surgery
US4945493A (en) * 1988-09-26 1990-07-31 Ford Motor Company Method and system for correcting a robot path
US4985846A (en) * 1989-05-11 1991-01-15 Fallon Patrick J Acoustical/optical bin picking system
US5157734A (en) * 1989-12-19 1992-10-20 Industrial Technology Research Institute Method and apparatus for picking and placing a surface mounted device with the aid of machine vision
JPH041869A (ja) * 1990-04-19 1992-01-07 Nippon Sheet Glass Co Ltd 画像照合方法
US5105368A (en) * 1990-08-01 1992-04-14 At&T Bell Laboratories Method for improving robot accuracy
AU645123B2 (en) * 1990-09-24 1994-01-06 Fmc Corporation Automatic windowing for article recognition
US5297238A (en) * 1991-08-30 1994-03-22 Cimetrix Incorporated Robot end-effector terminal control frame (TCF) calibration method and device
US6072583A (en) * 1996-12-06 2000-06-06 General Electro Mechanical Corp. Apparatus and method for detecting mis-oriented fasteners
US7392287B2 (en) * 2001-03-27 2008-06-24 Hemisphere Ii Investment Lp Method and apparatus for sharing information using a handheld device
US6640716B1 (en) * 2002-07-30 2003-11-04 Hewlett-Packard Development Company, L.P. Imaging print media
JP3859574B2 (ja) * 2002-10-23 2006-12-20 ファナック株式会社 3次元視覚センサ
US6723951B1 (en) 2003-06-04 2004-04-20 Siemens Westinghouse Power Corporation Method for reestablishing holes in a component
US8024126B2 (en) * 2003-07-10 2011-09-20 International Business Machines Corporation Moment analysis of tertiary protein structures
WO2005120742A1 (de) * 2004-06-07 2005-12-22 Müller Weingarten AG Bildverarbeitungssystem zum einsatz an nutenstanzen
US7255647B2 (en) * 2005-02-18 2007-08-14 Blue Marlin Method and system for determining club head speed
CN102236033A (zh) * 2010-04-30 2011-11-09 向熙科技股份有限公司 不需治具盘的自动定位设备及电性量测系统
JP5533727B2 (ja) * 2011-02-18 2014-06-25 株式会社安川電機 ワークピッキングシステム
DE102012013022A1 (de) * 2012-06-29 2014-04-24 Liebherr-Verzahntechnik Gmbh Vorrichtung zur automatisierten Handhabung von Werkstücken
DE102012013030A1 (de) * 2012-06-29 2014-04-24 Liebherr-Verzahntechnik Gmbh Vorrichtung zum automatischen Entnehmen von in einem Behälter angeordneten Werkstücken
JP5670397B2 (ja) * 2012-08-29 2015-02-18 ファナック株式会社 バラ積みされた物品をロボットで取出す装置及び方法
EP3946825A1 (de) * 2019-03-25 2022-02-09 ABB Schweiz AG Verfahren und steuerungsanordnung zur bestimmung einer beziehung zwischen einem roboterkoordinatensystem und koordinatensystem einer beweglichen vorrichtung
RU2721769C1 (ru) * 2019-08-28 2020-05-22 Федеральное государственное автономное образовательное учреждение высшего образования "Национальный исследовательский Томский политехнический университет" Стенд для контроля контурных перемещений гибкого манипулятора

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3120578A (en) * 1960-09-23 1964-02-04 Maxson Electronics Corp Orientation determining device
US3643018A (en) * 1966-07-13 1972-02-15 Texas Instruments Inc Alignment system using an electronic scanner
US3457422A (en) * 1967-02-21 1969-07-22 Ibm Optical system adapted for rotation of an image to be scanned with reference to a scanning path
GB1234941A (en) * 1967-08-16 1971-06-09 Emi Ltd Improvements in or relating to pattern recognition devices
CH537064A (de) * 1971-02-26 1973-05-15 Gretag Ag Verfahren und Vorrichtung zur automatischen Echtheitsprüfung von graphischen Vorlagen
JPS5121529B1 (de) * 1971-07-23 1976-07-03
JPS5529378B2 (de) * 1972-08-23 1980-08-02

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3408100A1 (de) * 1981-03-05 1985-09-05 President And Fellows Of Harvard College, Cambridge, Mass. Verfahren und vorrichtung zum erkennen und positionieren eines flachen gegenstands, insbesondere bei der herstellung von bekleidungsstuecken

Also Published As

Publication number Publication date
FR2271541A1 (de) 1975-12-12
AU8041375A (en) 1976-10-28
IT1038202B (it) 1979-11-20
GB1474010A (en) 1977-05-18
DE2518077A1 (de) 1975-11-27
JPS5821683B2 (ja) 1983-05-02
FR2271541B1 (de) 1978-06-30
SE408491B (sv) 1979-06-11
SE7505670L (sv) 1975-11-17
CH590454A5 (de) 1977-08-15
US4017721A (en) 1977-04-12
CA1037593A (en) 1978-08-29
JPS50153670A (de) 1975-12-10

Similar Documents

Publication Publication Date Title
DE2518077B2 (de) System zum Feststellen der Winkelorientierung eines Durchlaufteiles relativ zu einem Probeteil
DE3305710C2 (de) Schaltungsanordnung zur Merkmalserkennung bei auf einem Bildschirm darstellbaren Objekten
EP1036003B1 (de) Verfahren zur kontrolle der vollzähligkeit von zigarettengruppen und der befüllung der zigaretten
DE3328753C2 (de) Verfahren und Vorrichtung zur Abbildung einer Szene
EP0365928B1 (de) Verfahren zur Auswertung von Zellbildern
DE3012559C2 (de)
DE2803653C3 (de) Ausrichtvorrichtung
DE2404183B2 (de) Vorrichtung zur Erkennung der Lage eines Musters
DE2432129C3 (de) Verfahren zum maschinellen Lesen von Zeichen und Vorrichtung zur Durchführung des Verfahrens
DE2801536A1 (de) Zeichenerkennungsvorrichtung
DE2935261A1 (de) Anordnung und verfahren zur mustererkennung
DE2952443A1 (de) Verfahren und vorrichtung zum ermitteln der lage eines gegenstandes
DE3508400C2 (de) Mustererkennungsvorrichtung
DE2746969C2 (de) Einrichtung zum Vergleichen von Mustern
DE4318140A1 (de) Verfahren zur Verwendung von Lichtleiterbündeln aus nicht parallelen Lichtleitfasern
DE2428827A1 (de) Automatische bearbeitungsmaschine
DE3545960C1 (de) Verfahren und Anordnung zur Erkennung von Teilen
DE1924253A1 (de) System zum automatischen elektrischen Erkennen von optisch erfassbaren Bildmerkmalen
DE3622222A1 (de) Zeichenerkennung in zweidimensionalen signalen
EP1098268A2 (de) Verfahren zur dreidimensionalen optischen Vermessung von Objektoberflächen
DE2513655C3 (de) Einrichtung für die Steuerung von automatischen Handhabungssystemen mittels Fernsehkamera
EP3462164A1 (de) Anordnung und verfahren zur inspektion von bewegten plattenförmigen objekten
DE2631073C3 (de) Vorrichtung zur Struktur- und Textur-Analyse zumindestens eines Mediums
EP2345004B1 (de) Verfahren und prüfsystem zur optischen prüfung einer kontur eines prüfobjekts
DE2222346A1 (de) Bildpunktklassifizierung bei der Bildanalyse

Legal Events

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