-
Die Erfindung betrifft ein Verfahren zur Bestimmung von Verfahrwegen von Lackierrobotern, insbesondere für die Elektronikfertigung.
-
In der Elektronikfertigung können Baugruppen (beispielsweise bestehend aus einer Leiterplatte und Bauelementen) mit einem Schutzlack besprüht werden, um die Leiterplatten von physikalischen und chemischen Einflüssen zu schützen. Durch diese Lackierung wird eine Erhöhung der Robustheit gegenüber äußeren Einflüssen (Feuchtigkeit, Verschmutzung, Schadgase, etc.) erreicht. Die Lackierung erfolgt üblicherweise nach der Bestückung und Prüfung einer Baugruppe. Eine Lackierung einer Baugruppe kann einseitig oder beidseitig erfolgen. Baugruppen können je nach Anforderungen teilweise oder vollständig lackiert werden.
-
Dieser Lackiervorgang wird üblicherweise von einer Lackiermaschine durchgeführt, die mit einem Roboterarm, an dem eine Düse befestigt ist, über die Leiterplatte fährt und die gewünschten Teilflächen der Platte in Streifen lackiert. Dazu müssen die Fahrtwege des Roboterarms und die Platzierung der Lackstreifen bestimmt werden. Bei einer manuellen Eingabe bei der Roboterprogrammierung sind die Fehlerwahrscheinlichkeiten und der Zeitaufwand sehr hoch, weiterhin ist die Qualität des Lackiervorganges nicht immer sichergestellt. Bei einer manuellen Eingabe werden die Lackstreifen und die Verfahrwege des Lackierroboters von einem Mitarbeiter mit Hilfe eines Bildes der Leiterplatte eingegeben. Dazu werden auf dem Bild zuerst die Koordinaten gemessen, dann trägt der Mitarbeiter die Koordinaten in eine Software ein, die später die Lackiermaschine steuert. Das erstellte Lackierprogramm wird auf der Maschine getestet. Falls das Programm fehlerhaft war (Zusammenstöße mit Bauelementen, usw.), wird es nachher manuell korrigiert und wieder getestet.
-
Aus der deutschen Offenlegungsschrift
DE 10 2007 041 424 A1 sind ein Verfahren und ein System zur optimierten Planung komplexer Produktionsabfolgen in großtechnischen Anlagenbetrieben, insbesondere für die Stahlindustrie, basierend auf Methoden des Mixed Integer Linear Programming (MILP) bekannt.
-
Die Aufgabe der vorliegenden Erfindung ist es, ein Verfahren und ein System zur möglichst optimalen Bestimmung von Verfahrwegen für Lackierroboter, insbesondere für die Elektronikfertigung, bereitzustellen.
-
Die Aufgabe wird gelöst durch ein Verfahren zur Bestimmung von Verfahrwegen von Lackierrobotern, insbesondere für die Elektronikfertigung, umfassend die folgenden Schritte:
- a1) Bestimmung von Parametern einer zu verfahrenden und zu lackierenden Leiterplatte;
- a2) Bestimmung von Parametern für den Lackierroboter;
- a3) Festlegen von Sicherheits- und Nebenbedingungen für das Verfahren und Lackieren der Leiterplatte;
- b) Modellieren der zu lackierenden Flächen der Leiterplatte als eine Vereinigung von Rechtecken, wobei die Kanten der Rechtecke parallel zu den Achsen eines kartesischen Koordinatensystems der Leiterplatte angeordnet sind;
- c) Generieren von Lackierrichtungen für das Verfahren der zu lackierenden Rechtecke durch Gemischt Ganzzahlige Lineare Programmierung (Mixed Integer Linear Programming, MILP),
wobei die zu lackierende Fläche in horizontal und in vertikal zu lackierende Bereiche zerlegt wird; - d) Generieren von Lackstreifen für jeden zusammenhängenden zu lackierenden Bereich je Lackierrichtung durch Gemischt Ganzzahlige Lineare Programmierung (Mixed Integer Linear Programming). Wenn eine Lackiermaschine oder ein Lackierroboter keine Optimierungssoftware hat, müssen die Fahrtwege des Roboterarms und die Bestimmung der Lackstreifen manuell bestimmt werden. Bei einer Manuellen Eingabe sind Fehlerwahrscheinlichkeiten und der Zeitaufwand für die Eingabe sehr hoch. Ein automatisch erstelltes, optimiertes Lackierprogramm ermöglicht es, die Fehlermöglichkeiten (z. B. Verkleben von Löchern durch den Lack, Lackspritzer auf frei zubleibenden Flächen, Hängenbleiben des Roboterarms an Bauelementen)) zu eliminieren, den Planungsaufwand drastisch zu reduzieren und den gesamten Lackierprozess effizienter und schneller zu machen. Mit der Gemischt Ganzzahligen Linearen Programmierung (Mixed Integer Linear Programming, MILP) lassen sich Softwareprogramme zur optimalen Bestimmung von Lackstreifen und zur Berechnung von optimalen Fahrtwegen des Roboterarms beschreiben.
-
Eine erste vorteilhafte Ausgestaltung der Erfindung liegt darin, dass der Schritt c weiterhin umfasst:
Erstellen eines Gitters der Leiterplatte, so dass jede Zelle der Leiterplatte entweder komplett in einer zu lackierenden Fläche liegt, oder außerhalb; und
Minimieren der Summen der Längen der Gitterkanten nach einer der folgenden Bedingungen:
die zwei Zellen zu beiden Seiten der Gitterkante gehören zu der zu lackierenden Fläche, aber die Lackierrichtungen beider Zellen sind unterschiedlich, oder
nur eine der zwei Zellen zu beiden Seiten der Gitterkante gehört zu der zu lackierenden Fläche, und die Lackierrichtung und die Kantenrichtung dieser Zellen sind unterschiedlich. Das Verfahren beruht auf einem hierarchischen Ansatz und bestimmt schrittweise optimale Lösungen für die jeweiligen Problembeschreibungen. Damit lassen sich in einem Top-Down-Ansatz gemischt ganzzahlige Lineare Programme und Heuristiken für die Problemlösungen erstellen.
-
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt darin, dass der Schritt d weiterhin umfasst:
Erstellen je einer Liste von allen horizontal und von allen vertikalen Kandidaten für eine Lackstreifenauswahl, wobei die Lackstreifen entweder an den Eckpunkten des entsprechenden zu lackierenden Bereiches oder an anderen schon generierten Lackstreifen ausgerichtet sind, und bezüglich der Nebenbedingungen zulässig sind; und
Auswählen von zu lackierenden Streifen durch Gemischt Ganzzahlige Lineare Programmierung (Mixed Integer Linear Programming), wobei mindestens ein vorgegebener Prozentsatz der Leiterplattenfläche mit den ausgewählten Lackstreifen bedeckt werden kann, wobei überlappende Streifen minimiert werden und wobei die Gesamtlaufzeit, die zum Durchfahren der ausgewählten Lackstreifen nötig ist, minimiert wird. Es wird zuerst eine sehr große Liste von möglichen Streifen erstellt und dann mit dem MILP ein Teil davon als Lösung ausgewählt. Alle Flächen der Probleminstanz (zu lackierende Leiterplatte) werden als Vereinigung von Rechtecken modelliert, wobei die Kanten der Rechtecke parallel zu den Achsen des Koordinatensystems sind. Falls eine Fläche diesen Anforderungen nicht entspricht (z. B. ein quaderförmiges, um 45° gedrehtes Bauelement), wird es mit einer vorgegebenen Auflösung in eine Fläche konvertiert, deren Kanten horizontal oder vertikal sind. Dies vereinfacht die Programmerstellung zur Problemlösung.
-
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt darin, dass Schritt d) weiterhin umfasst:
Verkürzen eines Streifens, wenn dadurch die bedeckte Fläche nicht verkleinert wird, oder
Verlängern eines Streifens, wenn dadurch andere überlappende Streifen verkürzt werden und die Gesamtdurchlaufzeit kleiner wird. Dies erhöht die Effizienz des erstellten Programmes bezüglich der Verfahrwege des Lackierroboters.
-
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt darin, dass wobei Schritt d) weiterhin umfasst:
Verschieben eines Streifens, wenn dadurch die bedeckte Fläche vergrößert wird oder die bedeckte Fläche gleich bleibt, aber die Überlappungen reduziert werden. Auch dadurch wird die Effizienz des erstellten Programmes bezüglich der Verfahrwege des Lackierroboters erhöht.
-
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt darin, dass Schritt d) weiterhin umfasst:
Hinzufügen eines Streifens, wenn dadurch andere Streifen verkürzt oder eliminiert werden können, und die Durchlaufzeit kleiner wird. Auch dadurch wird die Effizienz des erstellten Programmes bezüglich der Verfahrwege des Lackierroboters erhöht.
-
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt im Bestimmen der kürzesten Wege zwischen allen Randpunkten unterschiedlicher Lackierstreifen unter Berücksichtigung von Beschleunigungs- und Bremsweg des Lackierroboters. So werden z. B. zwischen den Streifen (a → b) und Streifen (c → d) vier kürzeste Wege berechnet (a → c, a → d, b → c, b → d). Dies erfolgt für alle möglichen Streifenpaare. Es werden dabei geometrische Bedingungen der Leiterplatte und des Lackierroboters berücksichtigt, dadurch wird zwischen zwei Punkten ein zeitoptimaler Verfahrweg für den Roboterarm berechnet. Hindernisse werden dabei berücksichtigt.
-
Eine weitere vorteilhafte Ausgestaltung der Erfindung liegt im Bestimmen der Fahrtwege des Lackierroboters, wobei die Streifen in eine Reihenfolge gebracht werden, die ein Spritzen vermeiden und wobei die Summe der Fahrtzeiten zwischen den Streifen minimiert wird. Dadurch werden die Verfahrwege des Roboters minimiert und die Qualität des Lackiervorganges erhöht.
-
Die Aufgabe wird weiterhin gelöst durch ein computerlesbares Medium (CD, Floppy Disk, Speicherkarte, USB-Stick etc.) oder Computerprogrammprodukt, umfassend Anweisungen, welche, wenn sie auf einem geeigneten Computer ausgeführt werden, den Computer dazu bringen, das erfindungsgemäße Verfahren auszuführen. Dies erleichtert die Flexibilität des Einsatzes sowie die Verteilung und den kommerziellen Vertrieb des erfindungsgemäßen Verfahrens.
-
Die Aufgabe wird weiterhin gelöst durch ein System zur Durchführung des erfindungsgemäßen Verfahrens. Das System kann durch handelsübliche Lackierroboter oder Lackiermaschinen mit verkehrsüblichen Steuerungen realisiert werden. Die Programmerstellung kann offline textuell (in einer Programmiersprache: z. B. C, C++) und/oder CAD-gestützt erfolgen.
-
Ein Ausführungsbeispiel der Erfindung ist in der Zeichnung dargestellt und wird im Folgenden erläutert.
-
Dabei zeigen:
-
1 eine Schemadarstellung für einen Lackiervorgang auf einer Leiterplatte,
-
2 eine Schemadarstellung für eine Leiterplatte, mit horizontal und vertikal zu lackierenden Bereichen, und
-
3 einen Ausschnitt der Leiterplatte von 2 mit horizontal und vertikal zu lackierenden Lackstreifen, sowie einem dazugehörigen Verfahrweg für einen Lackierroboter.
-
1 zeigt eine Schemadarstellung für einen Lackiervorgang auf einer Leiterplatte LP1 durch einen Lackierroboter R. In der Elektronikproduktion werden Baugruppen mit Bauelementen, die mit Löt-, Steck- oder Klebetechnik auf einer Leiterplatte LP1 befestigt sind, üblicherweise mit einer Lackierung versehen, um ihre Robustheit gegenüber äußeren Einflüssen zu erhöhen. Eine Baugruppe kann dabei vollständig oder teilweise lackiert werden. In 1 ist dargestellt, wie der Lack durch eine Düse eines Lackierroboters R aufgetragen wird. Der Roboter R verfährt dabei die Leiterplatte LP1 und besprüht mit der Düse die zu lackierenden Stellen auf der Leiterplatte LP1. Je nach Typ des verwendeten Lackes erfolgt die Härtung bei Raumtemperatur, im Trockenofen oder z. B. durch UV-Licht. Entscheidend zur Qualität und Dauerhaftigkeit der Lackierung ist die Lackschichtdichte innerhalb der definierten zu lackierenden Stellen. Oft ergibt sich hieraus die Anforderung, dass bei der Lackierung jede Lackstelle nur einmal lackiert werden darf. Dies muss bei der Bestimmung des Verfahrwegs des Roboters R berücksichtigt werden. Die Düse zum Lackieren kann üblicherweise bewegt, gedreht, geöffnet oder geschlossen werden.
-
Weiterhin darf es zu keiner Beschädigung von Bauelementen, der Leiterplatte LP1 oder der Lackieranlage R kommen. Kollisionen der Düse mit Bauelementen, der Leiterplatte LP1 oder mit der Lackieranlage R dürfen deshalb nicht stattfinden.
-
Für eine Leiterplatte LP1 sollen die Platzierung der anzubringenden Lackstreifen und die Verfahrwege des Roboterarms R bestimmt werden, so dass:
- • der Roboterarm mit keinem Bauelement zusammenstößt,
- • ein (vorgegebener) hoher Prozentsatz der zu lackierenden Flächen lackiert wird,
- • vorgegebene Flächen (zum Beispiel Löcher, Kontaktflächen) vom Kopf nicht überfahren werden, um Lacktropfen zu vermeiden,
- • die Lackstreifen so lackiert werden, dass „Spritzen” vermieden wird und
- • die für den Lackiervorgang benötigte Zeit minimiert wird.
-
Das gesamte Problem wird hierarchisch gelöst. Mit dem in dieser Erfindungsmeldung beschriebenen Ansatz, Mixed Integer Linear Programming, Graphenalgorithmen und Heuristiken, werden die Lackstreifen und die Fahrtwege des Roboterarms berechnet.
-
Erst wird die Probleminstanz (Bestimmen der lackfreien Flächen, Bestimmen der Lackierflächen, Höhe der Bauelemente, Sicherheitsabstände etc.) für die Optimierung aufbereitet, dann werden allgemeine Lackrichtungen über die Lackfläche bestimmt und anschließend werden Streifen erzeugt. Diese Streifen werden mit lokaler Suche nachoptimiert. Kürzeste Wege zwischen allen Paaren von Streifenendpunkten werden berechnet und die Streifen werden in eine optimierte Reihenfolge gebracht.
-
Die Lackiermaschine kann nicht nur Lackstreifen ziehen, sondern sie kann über der Leiterplatte anhalten, die Düse kurz öffnen und dadurch einen so genannten Lackspot erzeugen. Diese Spots werden als Rechtecke modelliert und in der weiteren Beschreibung analog mit regulären Lackstreifen behandelt.
-
Input des Verfahrens:
-
• Beschreibung der Leiterplatte:
-
- • Leiterplattenfläche als Polygon
- • als Quader modellierte Bauelemente mit Größe, Posi tion und Drehung
- • als Zylinder modellierte Bauelemente mit Durchmes ser und Position
- • Fräskonturen, als Rechtecke modelliert
- • Bohrungen mit Mittelpunkt und Durchmesser
- • Kontaktflächen, als Kreisflächen modelliert
- • zu lackierende Fläche, als Menge von Polygonen be schrieben
- • Liste der Bauelemente, die nicht lackiert werden dürfen
-
• Beschreibung der Maschine:
-
- • Geschwindigkeits- und Beschleunigungsdaten des Ro boterarms
- • maximale Beschleunigungs- und Bremswege vor und nach einem Lackierstreifen
- • Verlaufen des Lacks für Streifen ohne Beschleuni gungs- und Bremsweg
- • Durchmesser der Lackierdüse
- • maximale Z-Fahrthöhe des Roboterarms
- • Größen und Parameter von Lackspots
-
• Sicherheits- und Nebenbedingungen:
-
- • minimaler Abstand des Kopfes von den Kantender Leiterplatte
- • minimaler Abstand des Kopfes von Bauelementen, die nicht lackiert werden dürfen
- • minimaler Abstand des Kopfes von den Kontaktflächen
- • minimaler Abstand des Kopfes von den Löchern
- • minimaler Abstand in XY Richtung zwischen dem Kopf und einem hohen Bauelement
- • minimaler Abstand in Z Richtung zwischen dem Kopf und einem Bauelement
- • minimaler Prozentsatz der Lackfläche, die mit Lack streifenbedeckt werden soll
-
2 zeigt eine Schemadarstellung für eine Leiterplatte LP2 mit horizontal HB1–HB4 und vertikal VB1–VB5 zu lackierenden Bereichen. Die zu lackierenden Bereiche werden als MILP formuliert, mit dem Ziel, lange Streifen zu erhalten, da diese billiger zu lackieren sind.
-
Alle Flächen der Probleminstanz werden als eine Vereinigung von Rechtecken modelliert, wobei die Kanten der Rechtecke parallel zu den Achsen des Koordinatensystems sind. Falls eine Fläche diesen Anforderungen nicht entspricht (zum Beispiel ein quaderförmiges, um 45° gedrehtes Bauelement), wird es mit einer vorgegebenen Auflösung in eine Fläche konvertiert, deren Kanten horizontal oder vertikal sind.
-
Folgende Flächen werden aus den Inputdaten erzeugt:
- • Lackfreie Fläche: die Fläche darf mit Lack nicht in Berührung kommen. Hier werden die Fräskonturen, Bohrungen, Kontaktflächen, nicht lackierbaren Bauelemente und die Seiten der Leiterplatte mit den gegebenen Sicherheitsabständen berücksichtigt.
- • Lackfläche: die im Input gegebene zu lackierende Fläche abzüglich der lackfreien und physikalisch unerreichbaren Flächen
-
Für jeden Punkt über der Leiterplatte wird die minimale Höhe berechnet, auf der der Kopf über dem Punkt sich aufhalten kann. Bauelemente und Sicherheitsabstände werden berücksichtigt.
-
In einer ersten Phase ist das Ziel, allgemeine Lackrichtungen (horizontal oder vertikal) für Teile (bzw. Bereiche) der Lackfläche zu bestimmen. In dieser Phase werden noch keine Lackstreifen bestimmt, sondern nur die Richtung der Streifen. Es wird ein Gitter erstellt, so dass jede Zelle entweder komplett in der Lackfläche liegt, oder außerhalb. Ein Mixed Integer Linear Program (MILP) wird wie folgt erstellt:
- • Der Input ist das Gitter der Lackfläche als 0–1 Matrix repräsentiert (1: Zelle gehört zur Lackfläche, 0: Zelle gehört nicht zur Lackfläche).
- • Für jede Zelle, die zur Lackfläche gehört, wird eine 0–1 Variable definiert (1: wird horizontal lackiert, 0: wird vertikal lackiert).
- • Manche Variablen können auf Grund physikalischer Bedingungen fixiert werden.
- • Zielfunktion: Minimieren die Summe der Längen der Gitterkanten, für die eine der folgenden Bedingungen gilt:
- • Die zwei Zellen zu beiden Seiten der Kante gehören zur Lackfläche, aber die Lackrichtungen beider Zellen sind unterschiedlich.
- • Nur eine der zwei Zellen zu beiden Seiten der Kante gehört zur Lackfläche, und die Lackrichtung und die Kantenrichtung dieser Zelle sind unterschiedlich.
-
Dieses MILP separiert die Lackfläche in Bereiche, die horizontal HB1–HB4 und Bereiche, die vertikal VB1–VB5 lackiert werden sollen. Die Zielfunktion garantiert, dass die Richtungen so gewählt sind, dass die Bereiche mit wenigen langen Streifen lackiert werden können.
-
Es gibt verschiedene handelsübliche oder open source Solver (Lösungssoftware) zur Lösung von MILPs, z. B. SYMPHONY MILP solver, LP-Solv, SCIP usw.
-
Weiterhin zeigt 2 einen Ausschnitt A (dargestellt durch ein gestricheltes Rechteck) der Leiterplatte LP2, der in 3 näher erläutert wird.
-
3 zeigt einen Ausschnitt A' der dem Ausschnitt A der Leiterplatte LP2 von 2 entspricht. Der Ausschnitt A' umfasst den horizontalen Bereich HB1 und den vertikalen Bereich VB4 von 2. In 3 entspricht der horizontale Bereich HB1' dem horizontalen Bereich HB1 von 2 und der vertikale Bereich VB4' dem vertikalen Bereich VB4 von 2. Für den horizontale Bereich HB1' werden durch MILP die horizontal zu lackierenden Lackstreifen HS1–HS7 und für den vertikalen Bereich VB4' der vertikal zu lackierenden Lackstreifen VS1 berechnet. Der dazugehörige durch Heuristiken (z. B. Greedy-Heuristiken, Lokale-Such-Heuristiken) berechnete Verfahrweg VW wird für einen Lackierroboter zur Lackierung der Lackstreifen HS1–HS7 und VS1 wird durch eine abzufahrende Linie dargestellt und basiert auf dem kürzesten Wege-Algorithmus nach Dijkstra.
-
Anschließend an die Phase der Bestimmung der horizontalen und vertikalen Bereiche werden Lackstreifen für jeden zusammenhängenden Bereich der Lackfläche HB1', VB4', in dem die Lackrichtung die gleiche ist, generiert.
-
Der Algorithmus geht folgendermaßen vor:
- • Eine Liste von allen möglichen Streifen, die in die gegebene Richtung laufen, wird erstellt. Diese Streifen sind entweder an den Eckpunkten des Lackflächenbereichs oder an anderen schon generierten Streifen ausgerichtet. Alle generierten Streifen sind bezüglich der Nebenbedingungen zulässig. Die Zahl der erzeugten Streifen ist viel größer als die Zahl der Streifen in der endgültigen Lösung.
- • Mit Hilfe einer MILP-Formulierung werden aus der oben erzeugten Menge diejenigen Streifen HS1–HS7, VS1 ausgewählt, die zur Lösung gehören,
- • jedem möglichen Streifen ist eine 0–1 Variable zugeordnet (1: Streifen gehört zur Lösung, 0: Streifen gehört nicht zur Lösung),
- • wobei mindestens der vorgeschriebene Prozentsatz der Fläche mit den ausgewählten Streifen bedeckt werden soll,
- • wobei mehrfache Überdeckung von Flächen (überlappende Streifen) möglichst vermieden werden soll,
- • wobei das Ziel die Minimierung der Gesamtzeit ist, die zum Durchfahren der ausgewählte Streifen nötig ist.
-
Die Lösung dieses MILP wird auch mit handelsüblichen MILP-Solver berechnet (z. B. SCIP). Die erhaltene Lösung kann mit lokalen Suchheuristiken verbessert werden. Die ausgewählten Streifenmenge wird verändert, mit dem Ziel, die für das Durchfahren der Streifen benötigte Zeit zu minimieren.
-
Folgende lokale Modifizierungsschritte werden bei einer Optimierung bewertet bzw. berücksichtigt:
- • Ein Streifen kann verkürzt werden, wenn dadurch die bedeckte Fläche nicht verkleinert wird.
- • Ein Streifen kann verlängert werden, wenn dadurch andere überlappende Streifen verkürzt werden können und die Gesamtdurchlaufzeit kleiner wird.
- • Ein Streifen kann bewegt werden, wenn dadurch
- • die bedeckte Fläche vergrößert wird, oder
- • die bedeckte Fläche gleich bleibt, aber die Überlappungen reduziert werden.
- • Ein zulässiger Streifen kann hinzugefügt werden, wenn dadurch andere Streifen verkürzt oder eliminiert werden können, und die Durchlaufzeit kleiner wird.
-
Bei sehr langen Streifen kann es passieren, dass der ganzen Streifen von einer höheren Kopfposition lackiert werden muss, um den Zusammenstoß mit Bauelementen zu vermeiden. Da die Qualität der Lackierung besser ist, wenn der Kopf tiefer fährt, werden diese Streifen zu kleineren Streifen zerlegt und nur die Teilstreifen über den großen Bauelementen werden mit einer hohen Kopfposition lackiert.
-
Berechnung der kürzesten Wege zwischen Streifenendpunkten Eine weitere Phase des Verfahrens liegt in der Berechnung der kürzesten Wege zwischen Streifenendpunkten. Für jeden Streifen werden eine Startposition, eine Endposition und eine Fahrthöhe berechnet. Die Start- und Endposition ist in der Regel nicht an den Enden der Streifen, weil ausreichende Beschleunigungs- und Bremswege die Lackierqualität verbessern. Diese Beschleunigungs- und Bremswege werden durch die geometrischen Bedingungen bestimmt.
-
Für jedes Paar von Streifenendpunkten wird der kürzeste Weg für den Kopf mit einer Implementierung des Dijkstra-Algorithmus berechnet.
-
Dazu wird ein Graph aufgebaut, der alle Eckpunkte der Lackflächen, Bauelemente und lackfreien Flächen sowie die Gitterpunkte eines Gitters von gegebener Auflösung als Knoten hat. Dieser Knotensatz wird auf verschiedenen relevanten Fahrthöhen dupliziert. Kanten werden für jedes Knotenpaar eingeführt, wenn die Kante keine lackfreie Fläche durchquert. Auf den Kanten wird eine Kostenfunktion definiert, die auf der Kantenlänge, der Beschleunigung und der maximalen Geschwindigkeit des Kopfes beruht.
-
Berechnung der Fahrtwege
-
In dieser Phase werden die Streifen in eine Reihefolge gebracht so dass:
- • kein „Spritzen” vorkommt: Wenn der Kopf beim Streifenziehen eine so genannte „trocken-nass Kante” durchquert, d. h. von einem noch nicht lackierten Bereich auf einen schon lackierten Bereich fährt, können, Lacktropfen auf andere Teile der Leiterplatte spritzen. Dadurch könnten lackfreie Flächen durch Lacktropfen bedeckt werden, was die Leiterplatte unbrauchbar macht. Durch sorgfältiges Wählen der Reihenfolge von Lackstreifen kann dieses Spritzen vermieden werden, und
- • die Summe der Fahrtzeiten zwischen den Streifen minimiert wird.
-
Um die Reihenfolge zu Berechnen wird eine lokale Suchheuristik benutzt. Erst wird eine Startreihenfolge generiert, bei der kein Spritzen vorkommt. Diese Startlösung wird durch folgende Modifizierungsschritte verbessert:
- • Ein Teilintervall der Streifen wird aus der Reihenfolge gelöscht, und die Streifen werden einzeln wieder an einer Position hinzugefügt, wo weiterhin kein Spritzen verursacht wird und die Fahrtzeit nach dem Einfügen minimal ist. Wenn alle gelöschten Streifen wieder hinzugefügt werden können und die Gesamtzeit besser geworden ist, wird die neue Lösung übernommen.
- • Ein Teilintervall der Streifen wird aus der Reihenfolge gelöscht und umgekehrt wieder an der gleichen Stelle eingefügt. Wenn die neue Reihenfolge kein Spritzen verursacht und die Gesamtzeit besser geworden ist, wird die neue Lösung übernommen.
-
In den Lösungsansatz fließen folgende Ideen ein:
- • allgemeine Lackierrichtungen werden mit einer globale Optimierungsmethode (in fast allem Fällen) optimal bestimmt,
- • die Auswahl der Streifen in der Erstlösung wird global optimiert,
- • spezielle lokale Verbesserungen liefern eine Lösung, die aus elektrotechnischer Sicht optimal ist,
- • kürzeste Wege zwischen Punkten werden optimal bestimmt,
- • die Reihenfolgeoptimierung vermeidet Spritzen und minimiert Fahrtzeiten gleichzeitig
-
Vorteile des automatischen Lösungsansatzes basierend auf MILP:
- • globaler Optimierungsansatz für die Berechnung der Bereiche und Streifen,
- • fehlerfreie Lösung (im Vergleich zur manuellen Planung),
- • Planungsaufwand wird erheblich reduziert,
- • der Lackiervorgang der Maschine ist wesentlich schneller, d. h. bessere Qualität der Lackierung,
- • Einsatz von Üblichen MILP-Solvern möglich.
-
Verfahren und System zur Bestimmung von Verfahrwegen von Lackierrobotern, insbesondere für die Elektronikfertigung. Durch Gemischt Ganzzahlige Lineare Programmierung (Mixed Integer Linear Programming, MILP), wird in einem hierarchischen Ansatz eine zu lackierende Fläche in horizontal und in vertikal zu lackierende Bereiche und Streifen zerlegt, die in vorteilhafter weise von einem Lackierroboter verfahren werden.
-
Bezugszeichen
-
- R
- Lackierroboter
- LP1, LP2
- Leiterplatte
- A, A'
- Ausschnitt einer Leiterplatte
- HB1–HB4, HB1'
- Horizontaler Lackierbereich
- VB1–VB5, VB4'
- Vertikaler Lackierbereich
- VW
- Verfahrweg
- HS1–HS7
- Horizontaler Lackierstreifen
- VS1
- Vertikaler Lackierstreifen
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- DE 102007041424 A1 [0004]