-
-
Anordnung zum automatischen Erkennen eines Musters,
-
insbesondere zur Lageerkennung eines Bildmusters Die Erfindung betrifft
eine Anordnung zum automatischen Erkennen eines Musters, insbesondere zur Lageerkennung
eines Bilamusters durch Vergleich des Istmusters mit einem vorgebs baren Sollmuster.
-
Derartige Anordnungen zum Vergleich eines Istmusters mit einem vorgebbaren
Sollmuster werden insbesondere für die Steuerung von Manipulatoren und Positionierern
benötigt.
-
Hierbei muß aus einer Vielzahl von Mustern unterschiedlicher Form
und Größe ein Muster mit einer vorgegebenen Form automatisch aufgefunden und beispielsweise
in einer Bearbeitungsmaschine in eine genau vorgegebene Position gebracht werden.
-
Insbesondere bei miniaturisierten elektronischen Bauteilen wie BED-Chi-s
oder Transistoren werden an die Genauigkeit und die Geschwindigkeit des Erkennens
äußerst hohe Anforderungen gestellt, die bislang noch nicht befriedigend gelöst
werden konnten. Das eindeutige Erkennen eines Musters durch eine einfache Kantenvermessung
von Hell/Dunkel-8bergängen ist
vielfach nicht möglich. Zu den optischen
Problemen, wie Kontrast, Verzeichnung, Unschärfe durch Höhenabweichung und Kippung
des Meßobjektes kommt bei den LED-Chips noch eine durch den Fertigungsablauf bedingte
Störung des Istmusters hinzu.
-
So können die zu ermittelnden Kontaktierflächen durch die vorhergegangene
Funktionsprüfung optisch erheblich gestört erscheinen. Zusätzliche Reflexionen,
die z.B. durch Staub, Leitkleber oder Schleifspuren nervorgerufen werden, bringen
eine weitere Erschwerung der Mustererkennung mit sich.
-
Der Erfindung liegt somit die Aufgabe zugrunde, eine Anordnung zum
automatischen Erkennen eines Musters zu schaffen, welche hinsichtlich der Genauigkeit
und der Geschwindigkeit des Erkennens auch den für die Kontaktierung von LED-Chips
gestellten Anforderungen genügt.
-
Diese Aufgabe wird bei einer Anordnung der eingangs genannten Art
gelöst durch einen Istmuster-Detektor zur Ausgabe einer elektrischen Signalfolge,
deren taktweise aufeinanderfolgenden elektrischen Signale Rasterpunkten eines Istmuster-Rasters
zugeordnet sind, einen an den Ausgang des Istmusters-Detektors angeschlossenen Istwert-Vergleichsspeicher
zum taktweisen Durchschieben der elektrischen Signalfolge, einen Sollwert-Vergleichsspeicher
zur Speicherung von vorgebbaren Sollmusterwerten, dessen Speicherplätze entsprechenden
Speicherplätzen des Istwert-Vergleichsspeichers zugeordnet sind, eine zwischen Istwert-Vergleichsspeicher
und Sollwert-Vergleichsspeicher geschaltete Istmuster/Sollmuster-Vergleichsanordnung
mit mindestens einem Ausgang für übereinstimmende Musterwerte und durch ein Summierwerk,
das an den Ausgang der Istmuster/Sollmuster-Vergleichsanordnung angeschlossen ist.
-
Neben dem automatischen Erkennen von Bildmustern für die Positionierung,
Klassifizierung, Qualitätskontrolle und dgl. kann die erfindungsgemäße Anordnung
auch für das automatische Erkennen anderer Muster, wie z.B. akustischer Muster,
eingesetzt
werden. Durch die räumliche Verschiebung der vom Istmuster-Detektor
ausgegebenen elektrischen Signalfolge um jeweils einen Rasterpunkt wird die Übereinstimmung
der einzelnen Signale mit den entsprechenden Signalen des gespeicherten Sollmusters
im Echtzeit-Betrieb festgestellt, indem man nach jedem Verschiebeimpuls die Summe
aller übereinstimmenden Musterwerte bildet.
-
Dieser Vorgang wird bis zum letzten Rasterpunkt des Rasterfeldes wiederholt,
so daß die bei einem der Verschiebeimpulse auftretende maximale Anzahl an übereinstimmenden
Musterwerter ein Maß für den Grad der Ähnlichkeit zwischen Istmuster und Sollmuster
ergibt.
-
Bei einem Vergleich eines Istmusters f2 (x, g) an der Stelle x2, y2
mit einem vorgegebenen Sollmuster f¢ (x, y) an der Stelle x1, y1 kann die genannte
Art der Verarbeitung der elektrischen Signale mathematisch aus einer von der Verschiebung
#, # des Istmusters abhängigen Funktion
Y ~\ ) dF abgeleitet werden, wobei ! = x2 - x1 und X = y2 - y1 ist.
-
Diese Funktion bildet ein Minimum, wenn die darin enthaltenen Kreuzkorrelati
onsfunktion
ein Maximum bildet. Die Größe des absoluten Minimums der Funktion V (t ,) <)
gibt ein Maß für die Ähnlichkeit zwischen dem Sollmuster £1(x,y) und dem Istmuster
f2(x,y), während die Lage f , V des Minimums die Verschiebung zwischen f1(x,y) und
f2(x,y) angibt.
-
Das geschilderte Korrelationsprinzip ermöglicht eine sehr hohe Genauigkeit
bei dem Erkennen von Mustern. Ein weiterer Vorteil der erfindungsgemäßen Anordnung
ergibt sich durch die Echtzeitverarbeitung der elektrischen Signale und die damit
verbundene äußerst geringe Verarbeitungszeit.
-
Vorzugsweise sind zusätzlich ein Speicher zur Speicherung der bisher
größten im Summierwerk ermittelten Summe übereinstimmender Musterwerte und eine
an das Summierwerk und den Speicher angeschlossene Naximumabfrage zum Vergleich
der bei aufeinanderfolgenden Verschiebe impulsen des Istwert-Vergleichsspeichers
ermittelten Summen übereinstimmender Musterwerte vorgesehen.
-
Hierdurch kann zwischen jedem Verschiebeimpuls die Summe der übereinstimmenden
Mustc--rwerte mit der gespeicherten Summe verglichen und das absolute Maximum der
Übereinstimmung der Rasterpunkte des Istmusters mit dem Sollinuster aufgefunden
werden.
-
Bei einer bevorzugten Ausführungsform der erfindungsgemäßen Anordnung
ist das Summierwerk mit einem Schwellwertschalter zum Vergleich der ermittelten
Summe übereinstimmender Musterwerte mit einem vorgebbaren Ähnliehkeits-Schwellwert
verbunden. Der vorgebbare Ähnlichkeits-Schwellwert definiert eine hinreichende Ähnlichkeit
zwischen Istmuster und Sollmuster und ermöglicht somit ein hohes Maß an Flexibilität
bei den verschiedenen Anwendungsfällen der Mustererkennung.
-
Der Istwert-Vergleichsspeicher und der Sollwert-Vergleichsspeicher
können parallel auslesbar sein, wobei ihre einander zugeordneten Ausgänge durch
Vergleichslogiken miteinander verbunden sind. Nach jedem Verschiebeimpuls für das
Durchschieben der elektrischen Signalfolge kann bei dieser parallelen Vergleichsanordnung
der Grad der Übereinstimmung der zu vergleichenden Muste;nverte gleichzeitig, d.h.
äußerst rasch erfaßt werden.
-
Der Istwert-Vergleichsspeicher und der Sollwert-Vergleichsspeicher
können auch seriell auslesbar sein, wobei ihre Ausgänge durch eine Vergleichslogik
miteinander verbunden sind.
-
Nach jedem Verschiebe impuls für das Durchschieben der elektrischen
Signalfolge kreisen die zu vergleichenden Signale in dem Schieberegister und dem
Sollwert-Vergleichsspeicher jeweils einmal mit hoher Frequenz. Zur aufeinanderfolgenden
Ermittlung
des Grades der Übereinstimmung der zu vergleichenden
Musterwerte wird dann nur eine Vergleichslogik benötigt.
-
Der Istwert-Vergleichsspeicher, die Istmuster/Sollmuster-Vergleichsanordnung
und der Sollwert-Vergleichsspeicher können auch zu in Reihe geschalteten, seriellen
Vergleichseinheiten zusammengefaßt sein, wobei die Ausgänge der Zwischenzähler parallel
an ein Summierwerk geführt sind. Diese seriellparallele Mischform kann mit geringerem
Aufwand als die rein parallele Vergleichsanordnung realisiert werden und führt zu
kürzeren Verarbeitungszeiten als bei der rein seriellen Vergleichsanordnung.
-
Vorzugsweise ist der Istwert-Vergleichsspeicher ein Schieberegister.
Derartige Standard-Logikbausteine sind für das Durchschieben der elektrischen Signalfolge
besonders geeignet.
-
Das Summierwerk kann aus mehreren nach Art einer Kaskadenschaltung
angeordneten Addierern bestehen. Bei derartigen Anordnungen sind die Additionszeiten
äußerst kurz.
-
Die gemäß der Erfindung gebildete Anordnung soll insbesondere zum
Erkennen eines Bildmusters geeignet sein. Bei einer derartigen Anwendung ist der
Istmuster-Detektor vorzugsweise ein nach Zeilenraster abtastender Bildwandler. Ist
zusätzlich ein vom Bildpunkttakt des Bildwandlers gesteuerter Bildpunktzähler vorgesehen,
so kann vom Stand dieses Bildpunktzählers zum Zeitpunkt, an dem das absolute Ähnlichkeitsmaximum
auftritt, die räumliche Verschiebung zwischen dem Istmuster und dem Sollmuster abgeleitet
werden. Die so ermittelten Koordinaten können dann für die Positionierung des Werkstückes
oder eines Werkzeuges herangezogen werden.
-
Im folgenden werden Ausführungsbeispiele der Erfindung an Hand der
Zeichnung näher erläutert.
-
Es zeigt
Figur 1 den prinzipiellen Aufbau einer Anordnung
zum Erkennen beliebiger Muster in vereinfachter Darstellung, Figur 2 die Darstellung
einer Istmuster/Sollmuster-Vergleichsanordnung für binäre Muster, Figur 3 die Auswertung
der von einem Bildwandler gelieferten Signalfolge nach dem beschriebenen Korrelationsprinzip
in schematischer Darstellung, Figur 4 das Funktionsprinzip zur Auffindung des Korrelationsmaximums
am Beispiel eines speziellen Bildmusters, Figur 5 das Blockschaltbild einer Anordnung
zur automatiscllen Lageerkennung eines Werkstückes, Figur 6 das Schaltbild einer
ersten Ausführungsform des Korrelators der Figur 5, Figur 7 ein Ausführungsbeispiel
für das Summierwerk der Figur 6, Figur 8 das Schaltbild einer zweiten Ausführungsform
des Korrelators der Figur 5 und Figur 9 das Schaltbild einer dritten Ausführungsform
des Korrelators der Figur 5.
-
Figur 1 zeigt einen Istmuster-Detektor 1 welcher ein beliebiges Istmuster
abtastet und die erfaßten Rasterpunkte eines Istmuster-Rasters in eine elektrische
Signalfolge 2 umsetzt.
-
Diese elektrische Signalfolge 2 wird einem als Istwert-Vergleichsspeicher
dienenden Schieberegister 3 zugeleitet und in einem durch die Abtastfrequenz des
Istmuster-Detektors 1 vorgegebenem Verschiebetakt durchgeschoben. Das mit dem Istmuster
zu vergleichende Sollmuster ist in einem Sollwert-Vergleichsspeicher 4 programmiert.
Zum Vergleich zwischen Istmuster und Sollmuster ist jeder Datenausgang 5 des Schieberegisters
3 einem entsprechenden Datenausgang 6 des Sollwert-Vergleichsspeichers 4 zugeordnet.
Die Bit-Muoter des Schieberegisters 3 und des Sollwert-Vergleichsspeiohers 4 werden
mit jedem Verschiebeimpuls so gegeneinander verschoben, daß nach jedem Verschiebe
impuls alle einander zugeordneten Speicherstelleninhalte in einer Istmuster/Sollmuster-Vergleichsanordnung
7
erfaßt und die jeweilige Summe der einzelnen Vergleichsergebnisse
in einem daran angeschlossenen Summierwerk 8 ermittelt werden kann. Die größte im
Summierwerk 8 ermittelte Summe innerhalb eines vollständigen Durchlaufs sämtlicher
Rasterpunkte des Istmuster-Rasters stellt die beste Übereinstimmung zwischen Istmuster
und Sollmuster dar. Ein Ausfahrungsbeispiel der Istmusger/Sollmuster-Vergleichsanordnung
7 für binäre Muster ist in Figur 2 vereinfacht dargestellt. Die einander zugeordneten
Datenausgänge 5 und 6 sind an die Eingänge eines Vergleichs-Gatters 9 geführt, dessen
Ausgang 0 die Ubereinstimmung angibt oder nicht angibt. Bei dem dargestellten Exklusiv-NOR-Gatter
mit den Eingängen A und B und dem Ausgang X ergibt sich folgende Wahrheitstabelle:
A B |
0 0 1 |
0 1 0 |
1 0 0 |
1 1 1 |
Die Übereinstimmung einander zugeordneter Speicherstelleninhalte kann jedoch auch
durch andere Verknüpfungsglieder bewertet werden. So wird bei UND-Gattern die Summe
übereinstimmender Musterwerte einer Wertigkeit, beispielsweise beleuchteter Bildpunkte,
als Korrelationsmaximum ermittelt. Andererseits kann auch bei Exklusiv-OD»lv-Gattern
oder NAND-Gattern das Minimum nicht übereinstimmender Musterwerte ausgewertet werden.
-
Für mehrwertige Soll- und Istmuster können verschiedenartige Vergleichsfunktionen
in einem adressierbaren Festwertspeicher progranmiert werden, wobei die Datenausgänge
5 und 6 an die Adreßleitungen des Festwertspeichers geführt sind und aus den an
den Datenausgängen anstehenden Informationen die Adresse für das im Festwertspeicher
programmierte Vergleichs-
ergebnis gebildet wird. Vorzugsweise
kann die Funktion x = (A - B)2 in den Festwertspeicher programmiert werden, wobei
A = a1 . 2 + a1 . 21 + + am . 2m B = b . 20 + b1 . 21 + + bn . 2 ai = (o,l) und
b; = (o,1) ist.
-
Figur 3 zeigt die Auswertung der von einem Bildwandler gelieferten
binären Signalfolge nach dem Korrelationsprinzip in schematischer Darstellung. Das
Istmuster wird durch einen Bildwandler mit 6 x 6 Bildpunkten erfaßt. In dem dargestellten
Zeilenraster mit den Bildpunkten BpO bis Sp35 stellen die beleuchteten in der Zeichnung
schwarz ausgefüllt dargestellten Bildpunkte das aufzufindende Muster dar. Der Koordinatenursprung
ist in den Bildpunkt BpO gelegt. Die von dem Bildwandler gelieferte elektrische
Signalfolge, welche durch die vertikal angeordnete Folge der Bildpunkte BpO bis
3p35 figürlich dargestellt ist, wird einem Istwert-Vergleichsspeicher 11 zugeführt
und um jeweils einen Verschiebetakt weitergeschoben. Als Istwert-Vergleichsspeicher
11 ist beispielsweise ein Schieberegister geeignet. Das Sollmuster, mit welchem
das Istmuster zu vergleichen ist, umfaßt einen durch die strichpunktierte Linie
12 begrenzten Programmierbereich mit insgesamt neun Speicherstellen SsO bis Ss8.
Diese Speicherstellen entsprechen dem Sollwert-Vergleichsspeicher 13, wobei die
entsprechenden Speicherplätze durch die vertikal angeordnete Reihe der Speicherstellen
SsO bis Ss8 dargestellt sind. Jeder Speicherstelle des Sollwert-Vergleichsspeichers
13 ist eine entsprechende Speicherstelle des Istwert-Vergleichsspeichers 11 zugeordnet,
wie es durch die Pfeile 14 und 15 angedeutet ist. Übereinstimmende Speicherstellen
werden nach jedem Verschiebeimpuls durch eine Istmuster/Sollmuster-Vergleichsanordnung
16
erfaßt und ihre jeweilige Summe durch einen daran angeschlossenen Zähler 17 ermittelt.
Ist der Zählerstand des Zählers 17 größer als der Zählerstand eines vorausgegangenen
Schiebetaktes, so wird er in einen Speicher 18 übernommen. Hierzu wird nach jedem
Schiebetakt der Zählerstand des Zählers 17 mit dem im Speicher 18 gespeicherten
Zählerstand durch eine Maximumabfrage 19 verglichen. Die auf diese Weise nach einem
vollständigen Bilddurchlauf gefundene größte Summe übereinstimmender Speicherstelleninhalte,
wird durch einen mit der Maximumabfrage 19 verbundenen Schwellwertschalter 20 daraufhin
überprüft, ob sie einen vorgegebenen Ähnlichkeits-Schwellwert erreicht oder überschreitet.
Ist dies der Fall, so erfolgt über die Maximumabfrage 19 die Freigabe eines Koordinaten-Speichers
21, welcher die Koordinaten-Zustellgrößen 22 zum richtigen Positionieren des Objekts
oder eines Werkzeuges ausgibt. Die Ermittlung der Koordinaten erfolgt durch einen
Bildpunktzähler 23, welcher die Anzahl der bis zum Auftreten des absoluten Eorrelationsmaximums,
die durch den Istwert-Vergleichsspeicher 11 geschobenen Signale bzw. die Bildpunkte
erfaßt und der Rasterteilung entsprechend in x, y- Koordinaten aufteilt. Bei dem
in der Zeichnung dargestellten Fall wird das absolute Korrelationsmaximum zu z 229
= 9 ermittelt, d.h. nach 29 Verschiebetakten VT stimmen 9 einander zugeordnete Speicherstellen
des Istwert-Vergleichsspeichers 11 und des Sollwert-Vergleichsspeichers 13 überein.
Nach 29 Verschiebetakten werden bei dem 6 x 6 Zeilenraster des Bildwandlers die
Koordinaten zu x = 5R und y = 4R ermittelt, wobei R das Rastermaß des Zeilenrasters
ist.
-
In Figur 4 ist ein vorgegebenes Sollmuster durch die strichpunktierte
Linie 25 und ein Progranunierbereich, welcher in ein Rasterfeld mit 5 Zeilen und
6 Spalten aufgeteSt'ist, durch die strichpunktierte Linie 26 dargestellt. Das durch
einen Bildwandler erfaßte Istmuster ist durch schraffierte Flächen dargestellt,
wobei das Istmuster 27 an der Stelle des Eorre-
lationsmaximums
und das Istmuster 28 in einer zum Korrelationsmaximum um einen Rasterpunkt verschobenen
Lage eingezeichnet ist. Das Istmuster 29 stellt eine vom Bildwandler erfaßte Steurung
dar, welche in Teilbereichen mit dem Sollmuster 25 übereinstimmt. Die über die aneinandergereihten
Zeilen des Rasterfeldes aufgetragenen digitalen Signalfolgen sind jeweils mit f1
für das Sollmuster 25, mit f2 (27) für das Istmuster 27, mit f2 (28) für das Istmuster
28 und mit f2 (29) für das gestörte Istmuster 29 bezeichnet. Ein Vergleich des Verlaufs
dieser digitalen Signalfolgen ergibt, daß die Summe der übereinstimmenden Bildpunkte
beim Istmuster 27 ELÜ = 30, beim Istmuster 28 zÜ = 20 und bei dem gestörten Istmuster
29 E 8 = 27 beträgt. Mit der Summe der übereinstimmenden Bildpunkte E2 = 30 wurde
also ein eindeutiges Korrelationsmaximum aufgefunden. Trotz der Störung bei f2 (29)
liegt das Korrelationsmaximum E 0 = 27 an der gleichen Stelle wie bei f2 (27).
-
Figur 5 zeigt das Blockschaltbild einer Anordnung zur automatischen
Lageerkennung eines Werkstückes. Die Erfassung des Werkstückes erfolgt über eine
Dioden-Matrixkamera 30 mit 50 x 50 Bildpunkten. Das von der Dioden-Matrtxkamera
30 ausgegebene Videosignal 31 wird in einem Analog-Digital-Wandler 32 in eine digitale
Signalfolge 33 umgewandelt, welche an den Eingang eines 50 x 18 Bit umfassenden
Schieberegisters 34, welches als Istwert-Vergleichsspeicher dient, geführt ist.
-
Das Durchschieben der digitalen Signalfolge 33 durch das Schieberegister
34 erfolgt mit der von der Dioden-Matrixkamera 30 vorgegebenen Bildpunktfrequenz
1 von 100 kHz. Von dem Schieberegister 34 besitzen 18 x 18 Speicherstellen einen
durch den Pfeil 35 angedeuteten Datenausgang. Das aufzufindende Muster ist als Sollmuster
in einem Sollwert-Vergleichsspeicher 36 programmiert, bei welchem ebenfalls 18 x
18 Speicherstellen einen durch den Pfeil 37 angedeuteten Datenausgang besitzen.
-
Hierbei ist jeweils ein Datenausgang des Schieberegisters 34 einem
Datenausgang des Sollwert-Vergleichsspeichers 36 zuge-
ordnet.
Die Bit-Muster des Schieberegisters 34 und des Sollwert-Vergleichs speichers 36
we-rden durch den Bildpunkttakt T1 so gegeneinander verschoben, daß nach jedem Verschiebeimpuls
T1 alle einander zugeordneten und übereinstimmenden Speicherstelleninhalte in einer
Istmuster/Sollmuster-Vergleichsanordnung 38 ermittelt und beispielsweise mit einer
Frequenz von 20 14Hz auf ein Summierwerk 79 gegeben werden. Das Schieberegister
34, der Sollwert-Vergleichsspeicher 36, die Istmuster/ Sollmuster-Vergleichsanordnung
38 und das Summierwerk 39 bilden einen Korrelator 100, wobei der großte Zählerstand
des Sumruierwerkes 39 das absolute Korrelationsmaximum darstellt. Zur Ermittlung
des Korrelationsmaximums dient eine Maximumaberage 40 und ein 8 Bit-Speicher 41.
Der nach einem Bildpunkttakt ermittelte Zählerstand des Summierwerkes 39 wird mit
dem im Speicher 41 gespeicherten größten Zählerstand vorangegangener Bildpunkttakte
durch die Maximumabfrage verglichen, wie es durch die Pfeile 42 und 43 dargestellt
ist. Ist der neu ermittelte Zählerstand des Summierwerkes 39 größer als der im Speicher
41 gespeicherte Zählerstand, so erfolgt über die Freigabe 44 die Übertragung 45
des neuen Zählerstandes auf den Speicher 41. Auf diese Weise gibt der Speicher 41
nach jedem vollständigen Bilddurchlauf die größte Zahl der übereinstimmenden Speicherstelleninhalte
an. Ein Schwellwertschalter 46 prüft das absolute Maximum der Übereinstimmungen
und setzt durch einen Ahnlichkeits-Schwellwert die minimal geforderte Ähnlichkeit
zwischen Istmuster und Sollmuster fest. Wird diese minimale Ähnlichkeit erreicht,
so erfolgt die Freigabe 47 einer Koordinaten-Ausgabe 48. Zur Ermittlung der Koordinaten
wird in einem vom Bildpunkttakt T1 angesteuerten Bildpunktzähler 49 die Anzahl der
mit 50 Bildpunkten voll durchgelaufenen Bildzeilen und die Anzahl der Bildpunkte
der jeweils noch nicht voll durchgelaufenen Bildzeile ermittelt, bis zu dem Zeitpunkt,
an dem das Korrelationsmaximum erreicht wird. Die Anzahl der Bildzeilen und Bildpunkte
ergibt die laufenden Bildpunktkoordinaten, welche in der Koordinaten-Ausgabe 48
abgespeichert werden, sofern ein Korrelationsmaximum und der vorgegebene Ahnlichkeits-Schwellwert
erreicht sind. Mit jedem neuen Maximalwert werden
die in der Koordinatenausgabe
48 gespeicherten Koordinaten durch die dem neuen Maximum zugeordneten Bildpunktkoordinaten
überschrieben, so daß nach einem vollständigen Bilddurchlauf die dem absoluten Maximum
zugeordneten Koordinaten gespeichert sind. Die an der als 14 Bit-Speicher ausgeführten
Koordinaten-Ausgabe 48 anliegenden Koordinatengrößen 50 sind digitale Koordinaten-Zustellgrößen
zum Positionieren des Werkstückes in Bezug auf ein Werkzeug oder zum Positionieren
eines Werkzeuges in Bezug auf das Werkstück dienen. Die Steuerung der automatischen
Lage erkennung des Werkstückes erfolgt durch eine Ablaufsteuerung 51, wobei der
Start durch den Pfeil 52 angedeutet ist. An die Ablaufsteuerung 51 sind der Bildpunkttakt
T1 und der Bildtakt 23 der Dioden-Matrixkamera 30 geführt, während sie ihrerseits
zur Steuerung des Schieberegisters 34 und des Bildpunktzählers 49 den Takt 1 freigibt.
-
Figur 6 zeigt das Schaltbild einer ersten Ausführungsform des Korrelators
100 der Figur 5. Der darestellte Korrelator umfaßt ein seriell ein- und parallel
auslesbares Schubregister 340, einen Sollwert-Vergleichsspeicher 360, eine Istmuster/Sollmuster-Vergleichsanordnung
380 und ein Sumnierwerk 390. Der Vergleich der Speicherstelleninhalte des Schieberegisters
340 mit den Speicherstelleninhalten des Sollwert-Vergleichsspeichers 360 erfolgt
rein parallel. Hierzu wird die vom Analog/Digital-Wandler 32 der Figur 5 ausgegebene
digitale Signalfolge 33 mit dem Bildpunkttakt T1 durch das n Stufen umfassende Schieberegister
340 geschoben. Die n parallelen Ausgänge des Schieberegisters 340 sind an jeweils
einen Eingang eines Exklusiv-NOR-Gatters der aus n Exklusiv-NOR-Gattern bestehenden
Istmuster/Sollnuster-Vergleichsanordnung 380 geführt, wobei die Zuordnung durch
die Buchstaben a, b, c, d, y und z angegeben ist. Die anderen Eingänge der Exklusiv-NOR-Gatter
sind mit jeweils einem Dastenausgang des ebenfalls n Stufen umfassenden Sollwert-Vergleichsspeichers
360 verbunden. Während der Sollwert-Vergleichsspeicher 360 in
der
Zeichnung als Schalterfeld dargestellt ist, können auch beliebige andere Speicherarten,
insbesondere Festwertspeicher Verwendung finden. Die Ausgänge der Exklusiv-NOR-Gatter
sind an das Summierwerk 390 gefuhrt, an dessen Ausgang nach jedem Verschiebeimpuls
T1 die Summe der übereinstimmenden Speicherstelleninhalte als Binärzahl angegeben
wird.
-
In Figur 7 ist ein Ausführungsbeispiel für das Summierwerk 390 der
Figur 6 dargestellt, wobei die Istmuster/Sollmuster-Vergleichsanordnung 380 der
Figur 6 zur besseren Übersicht teilweise mit abgebildet ist. Das dargestellte Summierwerk
ist für einen Korrelator mit n = 15 Stufen ausgelegt und besteht aus vier 1-Bit-Addierern
60, zwei 2-Bit-Addierern 61 und einem 3-Bit-Addierer 62, welche nach Art einer Kaskadenschaltung
angeordnet sind. Zur Vereinfachung der zeichnerischen Darstellung sind lediglich
zwei der insgesamt vier 1-Bit-Addierer 60 abgebildet.
-
Figur 8 zeigt das Schaltbild einer zweiten Ausführungsform des Korrelators
100 der Figur 5. Der dargestellte Korrelator umfaßt ein seriell ein- und auslesbares
Schieberegister 341, einen Sollwert-Vergleichsspeicher 361, eine Istmuster/Sollmuster-Vergleichsanordnung
381 und ein Summierwerk 391. Der Vergleich der Speicherstelleninhalte des Schieberegisters
341 mit den Speicherstelleninhalten des Sollwert-Vergleichsspeichers 361 erfolgt
rein seriell. Hierzu wird die vom Analog/Digital-Wandler 32 der Figur 5 ausgegebene
digitale Signalfolge 33 an den Eingang 63 des Schieberegisters 341 geführt und mit
dem an der Schiebeimpulsleitung 64 anliegenden Bildpunkttakt 1 durchgeschoben. Der
Eingang 63 und der Ausgang 65 des Schieberegisters 341 sind miteinander verknüpft,
so daß die jeweils gespeicherten Informationen nach jedem Verschiebeimpuls T1 einmal
kreisen können, wie es durch den Pfeil 66 angedeutet ist. Für dieses Kreisen der
Informationen ist eine zweite Schiebeimpulsleitung 67 vorgesehen, welche durch einen
Takt T2 angesteuert ist. In gleicher Weise ist bei dem als seriall
ein-
und auslesbares Schieberegister ausgebildeten Sollwert-Vergleichsspeicher 36t der
Ausgang 69 mit dem Eingang 68 verknüpft, über den beispielsweise aus einem programmierbaren
Festwertspeicher 70 ein abgespeicherter Sollwert eingegeben werden kann. Damit das
Kreisen der Informationen in den Schieberegistern 341 und 361 synchron mit dem Takt
T2 erfolgen kann, sind ihre Schiebeimpulsleitungen 67 bw. 72 zusammengeschlossen.
-
Der Istmuster/Sollmuster-Vergleich erfolgt durch ein Exklusiv-NOR-Gatter,
welches die Istmuster/Sollmuster-Vergleichsanordnung bildet und mit seinen Eingängen
an die Ausgänge 65 bzw. 69 der Schieberegister 341 bzw. 361 angeschlossen ist. Sind
beim Kreisen der Informationen die jeweils in den letzten Stufen der Schieberegister
341 und 361 vorhandenen Speicherstelleninhalte gleich, so öffnet sich das Exklusiv-NOR-Gatter
und gibt ein entsprechendes Signal an das Summierwerk 391. Bei einem einmaligen
Kreisen der Informationen zeigt das Summierwerk 391 somit nach jedem Verschiebeimpuls
T1 die Summe der übereinstimmenden Speicherstelleninhalte an. Für einen raschen
Vergleich sollte die Frequenz des Taktes T1 möglichst hoch sein. Bei n-stufigen
Schieberegistern 341 bzw. 361 gilt die Forderung 22 > 21 . n.
-
Figur 9 zeigt das Schaltbild einer dritten Ausführungsform des Korrelators
100 der Figur 5. Der dargestellte Korrelator ist für einen den 50 x 50 Bildpunkten
der Dioden-I4atrixkamera 30 der Figur 5 entsprechenden Fangbereich ausgelegt, wobei
der Programmierbereich 16 x 18 Bildpunkte, d.h. 18 Zeilen mit jeweils 16 Bildpunkten
umfaßt. Der Programmierbereich ist in drei Gruppen unterteilt, wobei der Gruppe
1 die Zeilen 1 bis 6, der Gruppe 2 die Zeilen 7 bis 12 und der Gruppe 3 die Zeilen
13 bis 18 zugeordnet sind. Die vom Analog/Digital-Wandler 32 der Figur 5 ausgegebene
digitale Signalfolge 33 wird mit dem Bildpunkttakt 1 durch ein Schieberegister geschoben,
welches aus achtzehn seriell ein- und auslesbaren 16 Bit Istliext-Schieberegistern
75 und achtzehn seriell ein-und auslesbaren 34 Bit Istwert-Schieberegistern 76 zusammen-
gesetzt
ist. Die 16 Bit Istwert-Schieberegister 75 und die 34 Bit Istwert-Schieberegister
76 sind in alternierender Folge in Reihe geschaltet, wobei jedes der 16 Bit Istwert-Schieberegister
75 einer 16 Bildpunkte umfassenden Zeile des Programmierbereiches und jedes der
34 Bit Istwert-Schieberegister 76 den übrigen 34 in einer Zeile der Dioden-Matrixkamera
liegenden Bildpunkten zugeordnet ist. Die 34 Bit Istwert-Schieberegister 75 erfassen
also nicht den Programmierbereich und sind daher als Leer-Register ohne Anschlüsse
für einen Vergleich ausgebildet. Der Sollwert-verga iclisspeicher besteht aus insgesamt
achtzehn seriell ein- und auslesbaren 16 Bit Sollwert-Schieberegistern 77, von welchen
jeweils sechs hintereinander in Reihe geschaltet einer der Gruppen 1 bis 3 des Programmierbereiches
zugeordnet sind. Dementsprechend erfolgt das Einlesen der Informationen über einen
programmierbaren Festwertspeicher 78, welcher einen Ausgang 79 für die Gruppe 1,
einen Ausgang 80 für die Gruppe 2 und einen Ausgang 81 für die Gruppe 3 besitzt.
Einander zugeordnete 16 Bit Istwert-Schieberegister 75 und 16 Bit Sollwert-Schieberegister
77 bilden jeweils zusammen mit einem Exklusiv-NOR-Gatter 82 und einem Zähler 83
serielle Vergleichseinheiten 84, welche in gleicher Weise wie die in Figur 8 dargestellte
serielle Vergleichseinheit aufgebaut sind. Die Ausgänge 85 der Zähler 83 sind parallel
an ein Summierwerk 86 geführt, welches beispielsweise in gleicher Weise wie das
in Figur 7 dargestellte Summierwerk aufgebaut sein kann. Der 9 Bit-Ausgang 87 des
Summierwerkes 86 gibt nach jedem Bildpunkttakt T1 die Summe sämtlicher übereinstimmender
Musterwerte als Binärzahl an. Der Istmuster/ Sollmuster-Vergleich erfolgt also für
die einzelnen Zeilen des Programmierbereiches seriell und im übrigen parallel. Diese
seriell-parallele Mischform des Vergleichs der Istmusterwerte mit den Sollmusterwerten
wird für die in Figur 5 dargestellte Anordnung zur automatischen Lageerennung eines
Werkstückes bevorzugt, da sie bei geringem Aufwand eine Sageerkennung in äußerst
kurzer Zeit ermöglicht, wobei die Schieberegister 75 durch entsprechend angeordnete
und adressierbare Schreib-
Lesespeicher, vorzugsweise Halbleiterspeicher,
die Schieberegister 76 durch ebensolche oder durch adressierbare Festwertspeicher
ersetzt werden können. Ist letzteres der Fall, entfällt der Festwertspeicher 78.
-
Die im Blockschaltbild der Figur 5 und der zugehörigen Figur 9 dargestellte
Anordnung zur automatischen Sageerkennung eines Werkstückes wurde für die Lage erkennung
von BED-Chips an Kontaktierautomaten mit sehr gutem Erfolg eingesetzt. Das gesuchte
Istaiuster der 400 x 400/um großen LED-Chips ist ihre kreisförmige Kontaktierfläche,
welche einen Durchmesser von 100/um besitzt und in Bezug auf ein Bondwerkzeug genau
ausgerichtet werden muß. Hierzu wird das über ein Mikroskop vergrößerte Bild des
BED-Chips durch die Dioden-Matrixkamera erfaßt. Bei einer Bildpurn1ftfrequenz T1
von 100 3dIz erfolgt ein Bilddurchlauf in 25 ms. Da die Auswerteschaltung auf den
Anfang eines Bilddurchlaufes synchronisiert wird, stehen die Koordinaten spätestens
nach 50 ms zur Verfügung. Mit Hilfe der ermittelten Koordinaten wird dann entweder
der entsprechende LED-Chip oder das Bondwerkzeug in die für die Kontaktierung erforderliche
Position gebracht. Die Genauigkeit der Lageerkennung beträgt auch bei gestörten
Bildern + 1/2 Rasterpunkte der Dioden-Matrixkamera. Bei einem Bildbereich von 400
x 400/um ergibt das den Wert +/um. Ist die Abweichung zwischen Istmuster und Sollmuster
so groß, daß mehrere Maxima der ausgewerteten Korrelationsfunktion dieselbe Amplitude
besitzen, werden die Lagekoordinaten des ersten Maximums ausgegeben.
-
Wird die durch den Ähnlichkeits-Schwellwert vorgegebene minimale Ähnlichkeit
nicht erreicht, so wird das Signal "kein Chip" ausgegeben.
-
10 Patentansprüche 9 Figuren