[go: up one dir, main page]

DE102009039988A1 - Verfahrwege für Lackierroboter - Google Patents

Verfahrwege für Lackierroboter Download PDF

Info

Publication number
DE102009039988A1
DE102009039988A1 DE102009039988A DE102009039988A DE102009039988A1 DE 102009039988 A1 DE102009039988 A1 DE 102009039988A1 DE 102009039988 A DE102009039988 A DE 102009039988A DE 102009039988 A DE102009039988 A DE 102009039988A DE 102009039988 A1 DE102009039988 A1 DE 102009039988A1
Authority
DE
Germany
Prior art keywords
painted
strips
paint
painting
circuit board
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
DE102009039988A
Other languages
English (en)
Inventor
Peter Fige
Christian Porzel
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.)
Siemens AG
Siemens Corp
Original Assignee
Siemens AG
Siemens 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 Siemens AG, Siemens Corp filed Critical Siemens AG
Priority to DE102009039988A priority Critical patent/DE102009039988A1/de
Priority to PCT/EP2010/061058 priority patent/WO2011026698A1/de
Publication of DE102009039988A1 publication Critical patent/DE102009039988A1/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K3/00Apparatus or processes for manufacturing printed circuits
    • H05K3/0091Apparatus for coating printed circuits using liquid non-metallic coating compositions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B05SPRAYING OR ATOMISING IN GENERAL; APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
    • B05BSPRAYING APPARATUS; ATOMISING APPARATUS; NOZZLES
    • B05B13/00Machines or plants for applying liquids or other fluent materials to surfaces of objects or other work by spraying, not covered by groups B05B1/00 - B05B11/00
    • B05B13/02Means for supporting work; Arrangement or mounting of spray heads; Adaptation or arrangement of means for feeding work
    • B05B13/04Means for supporting work; Arrangement or mounting of spray heads; Adaptation or arrangement of means for feeding work the spray heads being moved during spraying operation
    • B05B13/0431Means for supporting work; Arrangement or mounting of spray heads; Adaptation or arrangement of means for feeding work the spray heads being moved during spraying operation with spray heads moved by robots or articulated arms, e.g. for applying liquid or other fluent material to three-dimensional [3D] surfaces
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K2203/00Indexing scheme relating to apparatus or processes for manufacturing printed circuits covered by H05K3/00
    • H05K2203/13Moulding and encapsulation; Deposition techniques; Protective layers
    • H05K2203/1333Deposition techniques, e.g. coating
    • H05K2203/1366Spraying coating
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K3/00Apparatus or processes for manufacturing printed circuits
    • H05K3/0008Apparatus or processes for manufacturing printed circuits for aligning or positioning of tools relative to the circuit board
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K3/00Apparatus or processes for manufacturing printed circuits
    • H05K3/22Secondary treatment of printed circuits
    • H05K3/28Applying non-metallic protective coatings
    • H05K3/284Applying non-metallic protective coatings for encapsulating mounted components

Landscapes

  • Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Spray Control Apparatus (AREA)
  • Application Of Or Painting With Fluid Materials (AREA)
  • Manipulator (AREA)

Abstract

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, diie in vorteilhafter Weise von einem Lackierroboter verfahren werden.

Description

  • 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]

Claims (10)

  1. Verfahren zur Bestimmung von Verfahrwegen (VW) von Lackierrobotern (R), insbesondere für die Elektronikfertigung, umfassend die folgenden Schritte: a1) Bestimmung von Parametern einer zu verfahrenden und zu lackierenden Leiterplatte (LP1, LP2); a2) Bestimmung von Parametern für den Lackierroboter (R); a3) Festlegen von Sicherheits- und Nebenbedingungen für das Verfahren und Lackieren der Leiterplatte (LP1, LP2); b) Modellieren der zu lackierenden Flächen der Leiterplatte (LP1, LP2) als eine Vereinigung von Rechtecken, wobei die Kanten der Rechtecke parallel zu den Achsen eines kartesischen Koordinatensystems der Leiterplatte (LP1, LP2) angeordnet sind; c) Generieren von Lackierrichtungen für das Verfahren der zu lackierenden Rechtecke durch Gemischt Ganzzahlige Lineare Programmierung (Mixed Integer Linear Programming), wobei die zu lackierende Fläche in horizontal (HB1–HB4, HB1') und in vertikal (VB1–VB5, VB4') zu lackierende Bereiche zerlegt wird; d) Generieren von Lackstreifen (HS1–HS7, VS1) für jeden zusammenhängenden zu lackierenden Bereich (HB1–HB4, HB1', VB1–VB5, VB4') je Lackierrichtung durch Gemischt Ganzzahlige Lineare Programmierung (Mixed Integer Linear Programming).
  2. Verfahren nach Anspruch 1, wobei der Schritt c weiterhin umfasst: Erstellen eines Gitters der Leiterplatte (LP1, LP2), so dass jede Zelle der Leiterplatte (LP1, LP2) 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.
  3. Verfahren nach Anspruch 1, wobei der Schritt d weiterhin umfasst: Erstellen je einer Liste von allen horizontal (HS1–HS7) und von allen vertikalen Kandidaten (VS1) für eine Lackstreifenauswahl, wobei die Lackstreifen (HS1–HS7, VS1) entweder an den Eckpunkten des entsprechenden zu lackierenden Bereiches (HB1–HB4, HB1', VB1–VB5, VB4') oder an anderen schon generierten Lackstreifen (HS1–HS7, VS1) 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 (LP1, LP2) mit den ausgewählten Lackstreifen (HS1–HS7, VS1) bedeckt werden kann, wobei überlappende Streifen minimiert werden und wobei die Gesamtlaufzeit, die zum Durchfahren der ausgewählten Lackstreifen nötig ist, minimiert wird.
  4. Verfahren nach Anspruch 1 oder 3, wobei Schritt d) weiterhin umfasst: Verkürzen eines Streifens (HS1–HS7, VS1), wenn dadurch die bedeckte Fläche nicht verkleinert wird, oder Verlängern eines Streifens (HS1–HS7, VS1), wenn dadurch andere überlappende Streifen verkürzt werden und die Gesamtdurchlaufzeit kleiner wird.
  5. Verfahren nach Anspruch 1 oder 3, 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.
  6. Verfahren nach Anspruch 1 oder 3, wobei Schritt d) weiterhin umfasst: Hinzufügen eines Streifens, wenn dadurch andere Streifen (HS1–HS7, VS1) verkürzt oder eliminiert werden können, und die Durchlaufzeit kleiner wird.
  7. Verfahren nach Anspruch 1, weiter umfassend: Bestimmen der kürzesten Wege zwischen allen Randpunkten unterschiedlicher Lackierstreifen (HS1–HS7, VS1) unter Berücksichtigung von Beschleunigungs- und Bremsweg des Lackierroboters (R).
  8. Verfahren nach Anspruch 1, weiter umfassend: Bestimmen der Fahrtwege (VW) des Lackierroboters (R), wobei die Streifen (HS1–HS7, VS1) in eine Reihenfolge gebracht werden, die ein Spritzen vermeiden und wobei die Summe der Fahrtzeiten zwischen den Streifen (HS1–HS7, VS1) minimiert wird.
  9. Computerlesbares Medium oder Computerprogrammprodukt, umfassend Anweisungen, welche, wenn sie auf einem geeigneten Computer ausgeführt werden, den Computer dazu bringen, das Verfahren gemäß irgendeinem der Ansprüche 1 bis 8 auszuführen.
  10. System zur Durchführung eines Verfahrens nach einem der Ansprüche 1 bis 8.
DE102009039988A 2009-09-03 2009-09-03 Verfahrwege für Lackierroboter Withdrawn DE102009039988A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102009039988A DE102009039988A1 (de) 2009-09-03 2009-09-03 Verfahrwege für Lackierroboter
PCT/EP2010/061058 WO2011026698A1 (de) 2009-09-03 2010-07-29 Verfahrwege für lackierroboter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102009039988A DE102009039988A1 (de) 2009-09-03 2009-09-03 Verfahrwege für Lackierroboter

Publications (1)

Publication Number Publication Date
DE102009039988A1 true DE102009039988A1 (de) 2011-03-17

Family

ID=42767622

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102009039988A Withdrawn DE102009039988A1 (de) 2009-09-03 2009-09-03 Verfahrwege für Lackierroboter

Country Status (2)

Country Link
DE (1) DE102009039988A1 (de)
WO (1) WO2011026698A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021204051A1 (de) 2021-04-23 2022-10-27 Zf Friedrichshafen Ag Vorrichtung mit einer Antennenanordnung und Fahrzeug
WO2024132471A1 (de) * 2022-12-19 2024-06-27 Siemens Aktiengesellschaft System und verfahren zur bereitstellung eines lackierprogramms für die beschichtung von leiterplatten

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013006868B4 (de) * 2013-04-19 2016-06-23 Dürr Systems GmbH Lackierverfahren und Lackieranlage zum Lackieren eines Bauteils mit einer Charakterkante
CN111539574B (zh) * 2020-04-28 2021-04-09 北京洛必德科技有限公司 用于多机器人的订单派送方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69123120T2 (de) * 1990-09-28 1997-03-06 Hewlett Packard Co Verfahren zur Herstellung von gedruckten Leiterplatten
DE19838595A1 (de) * 1998-08-25 2000-03-23 Siemens Ag Verfahren und Vorrichtung zur rechnergestützten Pipettenauswahl für einen Bestückungskopf eines Bestückungsautomaten und zur Zuordnunung von Bauelementen zu den in einer Pipettenauswahl vorgegebenen Pipettenarten
US20030018401A1 (en) * 2001-07-19 2003-01-23 International Business Machines Corporation Punch and die optimization
DE102007048651A1 (de) * 2006-10-11 2008-04-17 Nordson Corp., Westlake Beschichtungseinrichtung zur konformen Dünnlinien-Beschichtung sowie Verfahren dazu
DE102007041424A1 (de) 2007-08-31 2009-03-05 Abb Research Ltd. Verfahren und System zur optimierten Planung komplexer Produktionsabfolgen in großtechnischen Anlagenbetrieben

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2315823A1 (fr) * 1975-06-27 1977-01-21 Schlumberger Prospection Procede et machine pour vernir les cartes de circuits imprimes
DE19852079A1 (de) * 1998-11-11 2000-05-18 Thomas Kovarovsky Bildgebende Lackiervorrichtung
US6829514B2 (en) * 2003-01-17 2004-12-07 Motorola, Inc. Balancing workloads in an electronics assembly factory

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69123120T2 (de) * 1990-09-28 1997-03-06 Hewlett Packard Co Verfahren zur Herstellung von gedruckten Leiterplatten
DE19838595A1 (de) * 1998-08-25 2000-03-23 Siemens Ag Verfahren und Vorrichtung zur rechnergestützten Pipettenauswahl für einen Bestückungskopf eines Bestückungsautomaten und zur Zuordnunung von Bauelementen zu den in einer Pipettenauswahl vorgegebenen Pipettenarten
US20030018401A1 (en) * 2001-07-19 2003-01-23 International Business Machines Corporation Punch and die optimization
DE102007048651A1 (de) * 2006-10-11 2008-04-17 Nordson Corp., Westlake Beschichtungseinrichtung zur konformen Dünnlinien-Beschichtung sowie Verfahren dazu
DE102007041424A1 (de) 2007-08-31 2009-03-05 Abb Research Ltd. Verfahren und System zur optimierten Planung komplexer Produktionsabfolgen in großtechnischen Anlagenbetrieben

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102021204051A1 (de) 2021-04-23 2022-10-27 Zf Friedrichshafen Ag Vorrichtung mit einer Antennenanordnung und Fahrzeug
WO2024132471A1 (de) * 2022-12-19 2024-06-27 Siemens Aktiengesellschaft System und verfahren zur bereitstellung eines lackierprogramms für die beschichtung von leiterplatten

Also Published As

Publication number Publication date
WO2011026698A1 (de) 2011-03-10

Similar Documents

Publication Publication Date Title
DE4209279C3 (de) Verfahren und Vorrichtung zum automatischen Beschichten von Gegenständen
DE102013113165B4 (de) Kalibrierungsverfahren für Robotersystem
EP4157594A1 (de) Programmierverfahren für eine beschichtungsanlage und entsprechende beschichtungsanlage
DE102009039988A1 (de) Verfahrwege für Lackierroboter
DE102022108004A1 (de) Simulationsverfahren für eine Beschichtungsanlage und entsprechende Beschichtungsanlage
DE102010038332B4 (de) Beschichtungsverfahren zumindest einer Seitenfläche eines tafelförmigen Gutes
WO2020210855A1 (de) POSITIONIERHILFE FÜR LASERSCHWEIßEN UND POSITIONIERVERFAHREN
EP3592561A1 (de) Verfahren zur additiven fertigung eines dreidimensionalen gegenstandes
DE102019209540A1 (de) Verfahren und Vorrichtung zur optimalen Aufteilung von Testfällen auf unterschiedliche Testplattformen
WO2022214431A1 (de) Bahnkorrekturverfahren für eine beschichtungsanlage
DE10108762A1 (de) Verfahren zum Montieren von Bauelementen
DE102008013400A1 (de) Verfahren zur Ermittlung von Verriegelungsbereichen wenigstens eines im Raum bewegbaren ersten Objekts
DE102015115065B4 (de) Teachen von Bestückpositionen
DE102020129293B4 (de) Verfahren zum Zusammenstellen eines Schneidplans, Verfahren zum Ausschneiden und Absortieren von Werkstücken und Flachbettwerkzeugmaschine
EP1302828A2 (de) Verfahren und Programmsteuersystem zur Steuerung einer Beschichtungsanlage
DE102008016266B4 (de) Verfahren zum Optimieren des Layouts wenigstens einer Transfereinrichtung zum Herstellen direkter und indirekter Strukturen
DE102017208102A1 (de) Verfahren zur vollautomatischen Korrektur von Beschichtungsfehlern
DE102016212571A1 (de) Vorrichtung und Verfahren zur Herstellung von dreidimensionalen Bauteilen mit einem pulverbettbasierten Strahlschmelzverfahren
DE19626738A1 (de) Kassette zur Halbleiterbauelementfertigung, Herstellungsverfahren hierfür und diese verwendende Halbleiterbauelement-Fertigungsanlage
DE102004056158B3 (de) Verfahren zum Überwachen eines elektrochemischen Behandlungsprozesses und für dieses Verfahren geeignete Elektrodenanordnung
WO2024132471A1 (de) System und verfahren zur bereitstellung eines lackierprogramms für die beschichtung von leiterplatten
DE102006005629A1 (de) Lackieranlage im Modulaufbau
EP3738722A1 (de) Planung von trajektorien für die produktion von werkstücken
DE10225276B4 (de) Verfahren zur Ermittlung einer Schichtdickenverteilung in einer erzeugten Lackschicht
DE202021002006U1 (de) Herstellung einer ätzresisten Maske zur partiellen Passivierung einer Pressblech- oder Endlosbandoberfläche, die anschließend einer chemischen Oberflächenstrukturierung unterzogen werden

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee