DE19838595A1 - 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 - Google Patents

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

Info

Publication number
DE19838595A1
DE19838595A1 DE19838595A DE19838595A DE19838595A1 DE 19838595 A1 DE19838595 A1 DE 19838595A1 DE 19838595 A DE19838595 A DE 19838595A DE 19838595 A DE19838595 A DE 19838595A DE 19838595 A1 DE19838595 A1 DE 19838595A1
Authority
DE
Germany
Prior art keywords
pipette
types
type
components
component
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
DE19838595A
Other languages
English (en)
Inventor
Reinhard Enders
Petra Bauer
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
Original Assignee
Siemens AG
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 filed Critical Siemens AG
Priority to DE19838595A priority Critical patent/DE19838595A1/de
Priority to CNB998125938A priority patent/CN1196398C/zh
Priority to KR1020017002456A priority patent/KR20010072999A/ko
Priority to US09/763,460 priority patent/US6678947B1/en
Priority to EP99952388A priority patent/EP1116425B1/de
Priority to DE59911012T priority patent/DE59911012D1/de
Priority to JP2000567063A priority patent/JP2002524842A/ja
Priority to PCT/DE1999/002536 priority patent/WO2000011923A2/de
Publication of DE19838595A1 publication Critical patent/DE19838595A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K13/00Apparatus or processes specially adapted for manufacturing or adjusting assemblages of electric components
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K13/00Apparatus or processes specially adapted for manufacturing or adjusting assemblages of electric components
    • H05K13/04Mounting of components, e.g. of leadless components
    • H05K13/0404Pick-and-place heads or apparatus, e.g. with jaws
    • H05K13/0408Incorporating a pick-up tool
    • H05K13/0409Sucking devices
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K13/00Apparatus or processes specially adapted for manufacturing or adjusting assemblages of electric components
    • H05K13/08Monitoring manufacture of assemblages
    • H05K13/085Production planning, e.g. of allocation of products to machines, of mounting sequences at machine or facility level
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10TTECHNICAL SUBJECTS COVERED BY FORMER US CLASSIFICATION
    • Y10T29/00Metal working
    • Y10T29/49Method of mechanical manufacture
    • Y10T29/49002Electrical device making
    • Y10T29/49117Conductor or circuit manufacturing
    • Y10T29/49124On flat or curved insulated base, e.g., printed circuit, etc.
    • Y10T29/4913Assembling to base an electrical component, e.g., capacitor, etc.
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10TTECHNICAL SUBJECTS COVERED BY FORMER US CLASSIFICATION
    • Y10T29/00Metal working
    • Y10T29/49Method of mechanical manufacture
    • Y10T29/49002Electrical device making
    • Y10T29/49117Conductor or circuit manufacturing
    • Y10T29/49124On flat or curved insulated base, e.g., printed circuit, etc.
    • Y10T29/4913Assembling to base an electrical component, e.g., capacitor, etc.
    • Y10T29/49144Assembling to base an electrical component, e.g., capacitor, etc. by metal fusion
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10TTECHNICAL SUBJECTS COVERED BY FORMER US CLASSIFICATION
    • Y10T29/00Metal working
    • Y10T29/53Means to assemble or disassemble
    • Y10T29/5313Means to assemble electrical device
    • Y10T29/53174Means to fasten electrical component to wiring board, base, or substrate
    • Y10T29/53178Chip component
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10TTECHNICAL SUBJECTS COVERED BY FORMER US CLASSIFICATION
    • Y10T29/00Metal working
    • Y10T29/53Means to assemble or disassemble
    • Y10T29/5313Means to assemble electrical device
    • Y10T29/53174Means to fasten electrical component to wiring board, base, or substrate
    • Y10T29/53183Multilead component

Landscapes

  • Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Operations Research (AREA)
  • General Factory Administration (AREA)
  • Automatic Analysis And Handling Materials Therefor (AREA)
  • Supply And Installment Of Electrical Components (AREA)

Abstract

Eine Zuordnung von Bauelementen zu Pipetten verschiedener Pipettenarten erfolgt gemäß einem inversen Greedy-Verfahren oder gemäß einer Folge von Flußverfahren oder eines linearen Programms, wodurch bei gegebener Consecutive-Ones-Eigenschaft aller möglichen Zuordnungen eine optimale Lösung für eine vorgebbare Anzahl von Zyklen bei der Bestückung einer Leiterplatte durch einen Bestückungsautomaten gewährleistet wird.

Description

Die Erfindung betrifft eine rechnergestützte Pipettenauswahl für einen Bestückungskopf eines Bestückungsautomaten und die Zuordnung von Bauelementen zu den in einer Pipettenauswahl vorgegebenen Pipettenarten.
Von einem Bestückungsautomaten werden Bauelemente, z. B. elek­ trische Widerständen, Transistoren, Kondensatoren, etc., auf eine Leiterplatte auf vorgegebene Positionen innerhalb der Leiterplatte gesetzt. Dies geschieht dadurch, daß unter Ver­ wendung eines Bestückungskopfes die Bauelemente von einem Bauelementespeicher zu der jeweiligen Position über der Lei­ terplatte transportiert und anschließend gesetzt werden.
Es werden üblicherweise verschiedene Arten von Bestückköpfen eingesetzt. Ein solcher Bestückungskopf ist z. B. der soge­ nannte SP-Kopf (Speed Placer-Kopf), mit dem mehrere Bauele­ mente aus dem Bauelementespeicher aufgenommen, transportiert und sukzessive auf die Leiterplatte gesetzt werden können.
Ein SP-Bestückungskopf weist mehrere Segmente (üblicherweise 6 oder 12 Segmente) auf, auf welchen jeweils eine Pipette aufgebracht werden kann. Mit den Pipetten können Bauelemente aufgenommen und gesetzt werden. Es gibt verschiedene Pipet­ tenarten, mit denen jeweils unterschiedliche Arten von Bau­ elementen gesetzt werden können. Die Bestückung einer Leiter­ platte mit Bauelementen durch einen SP-Bestückungskopf er­ folgt üblicherweise in mehreren Iterationen (Zyklen), in de­ nen jeweils der Bestückungskopf zunächst maximal die Anzahl der Bauelemente aufnimmt, die er verarbeiten kann und sie an­ schließend in derselben Reihenfolge, in der er sie aufgenom­ men hat, auf der Leiterplatte absetzt. Die Zeit, die für ei­ nen Zyklus benötigt wird, hängt nur in geringem Maße von der Zahl der in diesen Zyklus aufgenommenen und gesetzten Bauele­ mente ab, so daß eine möglichst geringe Zahl von Zyklen für die Bestückung das zeitkritischste Kriterium im Rahmen der Bestückung darstellt.
Es ist somit wünschenswert, daß in den einzelnen Zyklen mög­ lichst viele Bauelemente aufgenommen und gesetzt werden, also "Lücken" bei der Bestückung vermieden werden, um somit die Zahl der zur Bestückung aller Bauelemente erforderlichen Zy­ klen zu minimieren.
Ein Verfahren zur Überprüfung der sogenannten Consecutive- Ones-Eigenschaft ist in [1] beschrieben. Liegt die Consecuti­ ve-Ones-Eigenschaft vor, so liefert das Verfahren aus [1] im­ plizit sämtliche zulässigen Ordnungen auf den Bauelementty­ pen.
Aus [2] ist ein Verfahren zur Überprüfung der sogenannten azyklischen Hypergraph-Eigenschaft bekannt, welches eine li­ neare Komplexität aufweist.
Aus [3] ist ein Verfahren zur Lösung eines Flußproblems be­ kannt.
In [4] ist ein sogenanntes Branch-and-Cut-Verfahren zur opti­ malen Lösung eines ganzzahligen lineares Programms bekannt.
Der Erfindung liegt das Problem zugrunde, für einen Bestüc­ kungskopf und eine vorgegebene Menge durch ihn zu setzender Bauelemente ein Verfahren und eine Vorrichtung zur Auswahl der an dem Bestückungskopf zu rüstenden Pipetten und zur Zu­ ordnung der Bauelemente zu den in der Pipettenauswahl vorkom­ menden Pipettenarten anzugeben, mit dem bzw. mit der eine Be­ stückung einer Leiterplatte mit den vorgegebenen Bauelementen mit einer möglichst geringen Anzahl von Zyklen erreicht wird.
Das Problem wird durch die Verfahren mit den Merkmalen gemäß den unabhängigen Patentansprüchen sowie durch die Vorrichtun­ gen mit den Merkmalen gemäß den unabhängigen Patentansprüchen gelöst.
Ein Verfahren zur rechnergestützten Pipettenauswahl für einen Bestückungskopf eines Bestückungsautomaten und zur Zuordnung von Bauelementen zu den in einer Pipettenauswahl vorgegebenen Pipettenarten bei einer vorgegebenen Zyklenzahl z, umfaßt folgende Schritt:
unter Verwendung
  • - einer gespeicherten Bauelementtypen-Liste B mit jeweils zu­ gehöriger Anzahl zu setzender Bauelemente des Bauelement­ typs,
  • - einer Bauelementtypen-Ordnung auf den Bauelementtypen,
  • - einer gespeicherten Pipettenarten-Liste P von zur Verfügung stehenden Pipettenarten und einer Zuordnungsliste E, die angibt, welche Bauelementtypen mit welchen Pipettenarten gesetzt werden können,
wird ausgehend von der Bauelementtypen-Ordnung für die Pipet­ tenarten p ∈ P eine Pipettenarten-Ordnung gebildet, derart, daß gilt:
p1 ≦ p2 ⇒ (l(p1)<l(p2)) ∨ ((l(p1)=l(p2)) ∧ f(p1)≧f(p2))),
wobei
  • - p1, p2 ∈ P unterschiedliche Pipettenarten bezeichnen,
  • - l(p), p ∈ P, definiert ist durch
    l(p) = max {b ∈ B | (b, p) ∈ E},
  • - f(p), p ∈ P, definiert ist durch
    f(p) = min {b ∈ B | (b, p) ∈ E},
sukzessive werden die Bauelemente in einer Reihenfolge, die durch die Bauelementtypen-Ordnung gegeben ist, den Pipetten­ arten auf folgende Weise zugeordnet:
existieren für einen Bauelementtypen Pipettenarten, denen nicht ein beliebiges Vielfaches der Zyklenzahl z viele Bau­ elemente bereits zugeordnet sind, so werden zunächst diesen Pipettenarten gemäß der Pipettenarten-Ordnung Bauelemente zu­ geordnet in der Art, daß die Zahl der zugeordneten Bauelemen­ te soweit möglich auf das nächste Vielfache der Zyklenzahl z ergänzt wird;
verbleiben dann noch Bauelemente dieses Bauelementtyps, so werden diese der gemäß der Pipettenarten-Ordnung letzten mög­ lichen Pipettenart zugeordnet, und
aus der Anzahl der einer Pipettenart zugeordneten Bauelemente wird eine Anzahl von Pipetten, die von der Pipettenart auszu­ wählen ist, ermittelt.
Ein weiteres Verfahren zur rechnergestützten Pipettenauswahl für einen Bestückungskopf eines Bestückungsautomaten und zur Zuordnung von Bauelementen zu den in einer Pipettenauswahl vorgegebenen Pipettenarten bei einer vorgegebenen Zyklenzahl z, umfaßt folgende Schritt:
unter Verwendung
  • - einer gespeicherten Bauelementtypen-Liste B mit jeweils zu­ gehöriger Anzahl zu setzender Bauelemente des Bauelement­ typs,
  • - einer gespeicherten Pipettenarten-Liste P von zur Verfügung stehenden Pipettenarten und einer Zuordnungsliste E, die angibt, welche Bauelementtypen mit welchen Pipettenarten gesetzt werden können;
wird überprüft, ob eine zulässige Bauelementtypen-Ordnung existiert, d. h., ob gilt:
(b1, p) ∈ E, (b2, p) ∈ E, b1 ≦ b ≦ b2 ⇒ (b, p) ∈ E,
wobei mit
(b1, p) ∈ E, (b2, p) ∈ E, b1 ≦ b ≦ b2 ⇒ (b, p) ∈ E,
wobei mit
  • - b1, b2, b Bauelemente der Bauelementtypen-Liste B bezeich­ net werden,
  • - (b, p) ∈ E, b ∈ B, p ∈ P, den Fall bezeichnet, daß ein Bauelement vom Bauelementtypen b mit einer Pipette der Pipet­ tenart p gesetzt werden kann,
ausgehend von der zulässigen Bauelementtypen-Ordnung für die Pipettenarten p ∈ P wird eine Pipettenarten-Ordnung gebil­ det, derart, daß gilt:
p1 ≦ p2 ⇒ (l(p1)<l(p2)) ∨ ((l(p1)=l(p2)) ∧ f(p1)≧f(p2))),
wobei
  • - p1, p2 ∈ P unterschiedliche Pipettenarten bezeichnen,
  • - l(p), p ∈ P, definiert ist durch
    l(p) = max {b ∈ B | (b, p) ∈ E},
  • - f(p), p ∈ P, definiert ist durch
    f (p) min {b ∈ B | (b, p) ∈ E},
sukzessive werden die Bauelemente in einer Reihenfolge, die durch die Bauelementtypen-Ordnung gegeben ist, den Pipetten­ arten auf folgende Weise zugeordnet:
existieren für einen Bauelementtypen Pipettenarten, denen nicht ein beliebiges Vielfaches der Zyklenzahl z viele Bau­ elemente bereits zugeordnet sind, so werden zunächst diese Pipettenarten gemäß der Pipettenarten-Ordnung Bauelemente zu­ geordnet in der Art, daß die Zahl der zugeordneten Bauelemen­ te soweit möglich auf das nächste Vielfache der Zyklenzahl z ergänzt wird;
verbleiben dann noch Bauelemente dieses Bauelementtyps, so werden diese der gemäß der Pipettenarten-Ordnung letzten mög­ lichen Pipettenart zugeordnet, und
aus der Anzahl der einer Pipettenart zugeordneten Bauelemente wird eine Anzahl von Pipetten, die von der Pipettenart auszu­ wählen sind, ermittelt.
Eine Vorrichtung zur rechnergestützten Pipettenauswahl für einen Bestückungskopf eines Bestückungsautomaten und zur Zu­ ordnung von Bauelementen zu den in einer Pipettenauswahl vor­ gegebenen Pipettenarten bei einer vorgegebenen Zyklenzahl z, enthält
  • - einen Speicher zur Speicherung einer Bauelementtypen-Liste B, einer Pipettenarten-Liste P, und einer Zuordnungsliste E,
  • - einen mit dem Speicher gekoppelten Prozessor, der derart eingerichtet ist, daß folgende Schritte durchführbar sind: unter Verwendung
  • - der gespeicherten Bauelementtypen-Liste B mit jeweils zuge­ höriger Anzahl zu setzender Bauelemente des Bauelementtyps,
  • - einer Bauelementtypen-Ordnung auf den Bauelementtypen,
  • - der gespeicherten Pipettenarten-Liste P von zur Verfügung stehenden Pipettenarten und der Zuordnungsliste E, die an­ gibt, welche Bauelementtypen mit welchen Pipettenarten ge­ setzt werden können,
wird ausgehend von der Bauelementtypen-Ordnung für die Pipet­ tenarten p ∈ P eine Pipettenarten-Ordnung gebildet, derart, daß gilt:
p1 ≦ p2 ⇒ (l(p1)<l(p2)) ∨ ((l(p1)=l(p2)) ∧ f(p1)≧f(p2))),
wobei
  • - p1, p2 ∈ P unterschiedliche Pipettenarten bezeichnen,
  • - l(p), p ∈ P, definiert ist durch
    l(p) = max {b ∈ B | (b, p) ∈ E},
  • - f(p), p ∈ P, definiert ist durch
    f(p) = min {b ∈ B | (b, p) ∈ E},
bei dem sukzessive die Bauelemente in einer Reihenfolge, die durch die Bauelementtypen-Ordnung gegeben ist, den Pipetten­ arten auf folgende Weise zugeordnet werden:
existieren für einen Bauelementtypen Pipettenarten, denen nicht ein beliebiges Vielfaches der Zyklenzahl z viele Bau­ elemente bereits zugeordnet sind, so werden zunächst diese Pipettenarten gemäß der Pipettenarten-Ordnung Bauelemente zu­ geordnet in der Art, daß die Zahl der zugeordneten Bauelemen­ te soweit möglich auf das nächste Vielfache der Zyklenzahl z ergänzt wird;
verbleiben dann noch Bauelemente dieses Bauelementtyps, so werden diese der gemäß der Pipettenarten-Ordnung letzten mög­ lichen Pipettenart zugeordnet, und
bei dem aus der Anzahl der einer Pipettenart zugeordneten Bauelemente eine Anzahl von Pipetten, die von der Pipettenart auszuwählen sind, ermittelt wird.
Eine weitere Vorrichtung zur rechnergestützten Pipettenaus­ wahl für einen Bestückungskopf eines Bestückungsautomaten und zur Zuordnung von Bauelementen zu den in einer Pipetteaus­ wahl vorgegebenen Pipettenarten bei einer vorgegebenen Zy­ klenzahl z, enthält
  • - einen Speicher zur Speicherung einer Bauelementtypen-Liste B, einer Pipettenarten-Liste P, und einer Zuordnungsliste E,
  • - einen mit dem Speicher gekoppelten Prozessor, der derart eingerichtet ist, daß folgende Schritte durchführbar sind: unter Verwendung
  • - einer gespeicherten Bauelementtypen-Liste B mit jeweils zu­ gehöriger Anzahl zu setzender Bauelemente des Bauelement­ typs,
  • - einer gespeicherten Pipettenarten-Liste P von zur Verfügung stehenden Pipettenarten und einer Zuordnungsliste E, die angibt, welche Bauelementtypen mit welchen Pipettenarten gesetzt werden können,
wird überprüft, ob eine zulässige Bauelementtypen-Ordnung existiert, d. h., ob gilt:
(b1, p) ∈ E, (b2, p) ∈ E, b1 ≦ b ≦ b2 ⇒ (b, p) ∈ E,
wobei mit
  • - b1, b2, b Bauelemente der Bauelementtypen-Liste B bezeich­ net werden,
  • - (b, p) ∈ E, b ∈ B, p ∈ P, den Fall bezeichnet, daß ein Bauelement vom Bauelementtypen b mit einer Pipette der Pipet­ tenart p gesetzt werden kann,
bei dem ausgehend von der zulässigen Bauelementtypen-Ordnung für die Pipettenarten p ∈ P eine Pipettenarten-Ordnung ge­ bildet wird, derart, daß gilt:
p1 ≦ p2 ⇒ (l(p1)<l(p2)) ∨ ((l(p1)=l(p2)) ∧ f(p1)=f(p2))),
wobei
  • - p1, p2 ∈ P unterschiedliche Pipettenarten bezeichnen,
  • - l(p), p ∈ P, definiert ist durch
    l(p) = max {b ∈ B | (b, p) ∈ E},
  • - f(p), p ∈ P, definiert ist durch
    f(p) = min {b ∈ B | (b, p) ∈ E},
bei dem sukzessive die Bauelemente in einer Reihenfolge, die durch die Bauelementtypen-Ordnung gegeben ist, den Pipetten­ arten auf folgende Weise zugeordnet werden:
existieren für einen Bauelementtypen Pipettenarten, denen nicht ein beliebiges Vielfaches der Zyklenzahl z viele Bau­ elemente bereits zugeordnet sind, so werden zunächst diese Pipettenarten gemäß der Pipettenarten-Ordnung Bauelemente zu­ geordnet in der Art, daß die Zahl der zugeordneten Bauelemen­ te soweit möglich auf das nächste Vielfache der Zyklenzahl z ergänzt wird;
verbleiben dann noch Bauelemente dieses Bauelementtyps, so werden diese der gemäß der Pipettenarten-Ordnung letzten mög­ lichen Pipettenart zugeordnet, und
bei dem aus der Anzahl der einer Pipettenart zugeordneten Bauelemente eine Anzahl von Pipetten, die von der Pipettenart auszuwählen sind, ermittelt wird.
Die Erfindung zeichnet sich dadurch aus, daß die Bestückung einer Leiterplatte mit vorgegebenen Bauelementen in einer möglichst geringen Zahl von Zyklen, teilweise sogar in einer optimalen Zahl von Zyklen durchgeführt werden kann, was zu einer erheblichen Beschleunigung der Bestückung führt.
Das Verfahren gemäß Patentanspruch 2 überprüft die sog. Consecutive-Ones-Eigenschaft der möglichen Zuordnungen der Bauelemente zu den jeweiligen vorgegebenen Pipettenarten, d. h. es untersucht die Frage, ob eine zulässige Bauelementen- Typen-Ordnung existiert.
Bevorzugte Weiterbildungen der Erfindung ergeben sich aus den abhängigen Ansprüchen.
Ist die Consecutive-Ones-Eigenschaft nicht erfüllt, so ist es in einer Weiterbildung vorteilhaft, die Menge E der möglichen Zuordnungen von Bauelementtypen zu Pipettenarteh zu verklei­ nern: ausgehend von der Bauelementtypen und den Pipettenarten sukzessive für jede Pipettenart so viele Bauelemente wie mög­ lich der jeweiligen Pipettenart zugeordnet werden, so daß zur resultierenden Zuordnungsliste E eine Bauelementtypen-Ordnung auf den Bauelementtypen existiert derart, daß gilt:
(b1, p) ∈ E, (b2, p) ∈ E, b1 ≦ b ≦ b2 ⇒ (b, p) ∈ E.
Für die Pipettenarten p ∈ P wird im Rahmen dieser Weiterbil­ dung eine Pipettenarten-Ordnung gebildet derart, daß gilt:
p1 ≦ p2 ⇒ (l(p1)<l(p2)) ∨ ((l(p1)=l(p2)) ∧ f(p1)=f(p2))),
und die Bauelemente werden in einer Reihenfolge, die durch die Bauelementtypen-Ordnung gegeben ist, den Pipettenarten auf folgende Weise zugeordnet:
existieren für einen Bauelementtypen Pipettenarten, denen nicht ein beliebiges Vielfaches der Zyklenzahl z viele Bau­ elemente bereits zugeordnet sind, so werden zunächst diese Pipettenarten gemäß der Pipettenarten-Ordnung Bauelemente zu­ geordnet in der Art, daß die Zahl der zugeordneten Bauelemen­ te soweit möglich auf das nächste Vielfache der Zyklenzahl z ergänzt wird;
verbleiben dann noch Bauelemente dieses Bauelementtyps, so werden diese der gemäß der Pipettenarten-Ordnung letzten mög­ lichen Pipettenart zugeordnet. Aus der Anzahl der einer Pipettenart zugeordneten Bauelemente wird eine Anzahl von Pipetten, die von der Pipettenart auszuwählen sind, ermit­ telt.
Diese Weiterbildung, die zwar eine optimale Lösung nicht mehr gewährleistet hat in der Praxis sehr gute Ergebnisse gezeigt.
Weiterhin kann für den Fall, daß die zulässige Bauelementty­ pen-Ordnung nicht existiert, die zu ermittelnde Lösung durch Lösung einer Folge von Flußproblemen bestimmt werden.
Es kann für den Fall, daß die zulässige Bauelementtypen- Ordnung nicht existiert, geprüft werden, ob für mögliche Zu­ ordnungen der Bauelementtypen zu den Pipettenarten gemäß der Zuordnungsliste E eine Menge von Bäumen mit den Pipettenarten als Knoten der Bäume ermittelt werden kann, so daß jeder von einer Menge von Pipettenarten P(b), die ein Bauelement b set­ zen können, induzierte Teilgraph der Menge der Bäume zusam­ menhängend ist, und, wenn eine solche Menge von Bäumen ermit­ telt werden kann, dir Pipettenarten danach topologisch sor­ tiert werden können und die zu ermittelnde Lösung durch Lö­ sung einer Folge von Flußproblemen bestimmt wird.
Durch diese Ausgestaltung wird eine Bestückung mit einer mi­ nimalen Zahl benötigter Zyklen erreicht.
In einer weiteren bevorzugten Ausgestaltung ist es vorgese­ hen, daß für den Fall, daß die zulässige Ordnung nicht exi­ stiert, geprüft wird, ob für mögliche Zuordnungen der Bauele­ menttypen zu den Pipettenarten gemäß der Zuordnungsliste eine Menge von Bäumen mit den Pipettenarten als Knoten der Bäume ermittelt werden kann, so daß jeder von einer Menge von Pipettenarten P(b), die ein Bauelement b setzen können, indu­ zierte Teilgraph der Menge der Bäume zusammenhängend ist. Wenn eine solche Menge von Bäumen nicht ermittelt werden kann, werden Elemente aus der Zuordnungsliste E gelöscht, bis eine solche Menge von Bäumen ermittelt werden kann. Die zu ermittelnde Lösung wird durch Lösung einer Folge von Flußpro­ blemen bestimmt.
Diese Weiterbildung, die zwar eine optimale Lösung nicht mehr gewährleistet hat in der Praxis sehr gute Ergebnisse gezeigt.
Das Flußproblem kann gemäß folgenden Vorschriften gebildet werden:
wobei
  • - nb eine Zahl der zu setzenden Bauelemente vom Bauelementty­ pen b ∈ B angibt,
  • - cp, p ∈ P, eine vorgebbare Schranke, durch deren Variation die Folge von Flußproblemen gebildet wird, bezeichnet,
  • - eine erste Lösungsvariable xbp angibt, wie viele Bauelemen­ te vom Bauelementtypen b ∈ E durch eine Pipette der Pipet­ tenart p ∈ P gesetzt werden.
Für den Fall, daß die zulässige Ordnung nicht existiert, kann geprüft werden, ob für mögliche Zuordnungen der Bauelementty­ pen zu den Pipettenarten gemäß der Zuordnungsliste eine Menge von Bäumen mit den Pipettenarten als Knoten der Bäume ermit­ telt werden kann, so daß jeder von einer Menge von Pipetten­ arten P(b), die ein Bauelement b setzen können, induzierte Teilgraph der Menge der Bäume zusammenhängend ist. Wenn eine solche Menge von Bäumen nicht ermittelt werden kann, kann die zu ermittelnde Lösung durch Lösen eines linearen Programms ermittelt werden.
Das lineare Programm kann gemäß folgender Vorschriften gebil­ det werden:
wobei
  • - nb eine Zahl der zu setzenden Bauelemente vom Bauelementty­ pen b ∈ B angibt,
  • - eine erste Lösungsvariable xbp angibt, wie viele Bauelemen­ te vom Bauelementtypen b ∈ B durch eine Pipette der Pipet­ tenart p ∈ P gesetzt werden,
  • - eine zweite Lösungsvariable yp angibt, wie viele Pipetten der Pipettenart p ∈ P ausgewählt werden,
  • - k eine Zahl von Segmenten des Bestückungskopfs bezeichnet,
  • - x, y ≧ 0, ganzzahlig ist.
Auch mit dieser Weiterbildung wird gewährleistet, daß die Be­ stückung mit der optimalen Anzahl von Zyklen durchführbar wird.
Die Weiterbildungen gelten sowohl für die Verfahren als auch für die Vorrichtungen, wobei jeweils der Prozessor derart eingerichtet ist, daß die Verfahren gemäß der Weiterbildung durchgeführt werden können.
In den Figuren ist ein Ausführungsbeispiel der Erfindung dar­ gestellt, das im weiteren näher erläutert. wird.
Es zeigen
Fig. 1 ein Ablaufdiagramm, in dem die Verfahrensschritte des Ausführungsbeispiels dargestellt sind;
Fig. 2 eine Skizze eines Bestückungsautomaten;
Fig. 3a und 3b eine Skizze mögliche Zuordnungen von Bau­ elementen zu Pipettenarten, die die Consecutive-Ones- Eigenschaft erfüllen;
Fig. 4a und 4b eine Skizze möglicher Zuordnungen von Bauelementen und Pipettenarten vor und nach der Sor­ tierung der Pipettenarten;
Fig. 5a und 5b eine Skizze möglicher Zuordnungen, die die Azyklische-Hypergraph-Eigenschaft erfüllen.
Fig. 2 zeigt einen Bestückungsautomaten 201 mit einem Förder­ bereich 202, die Förderer enthalten mit Bauelementespeichern. In den Bauelementespeichern sind Bauelemente enthalten, die von dem Bestückungsautomaten 201 auf einer Leiterplatte 203 an vorgegebenen Bestückpositionen 204 gesetzt werden. Die Bauelemente 205 werden von einem Bestückungskopf - einem SP- Kopf oder einem IC-Kopf - aufgenommen, zu den Bestückpositio­ nen transportiert und an der jeweiligen Bestückposition auf die Leiterplatte 203 gesetzt.
Der Bestückungskopf weist Segmente auf zur Aufnahme von Pipetten unterschiedlicher Pipettenarten p ∈ P, mit denen jeweils unterschiedliche Bauelemente aufgenommen, transpor­ tiert-und gesetzt werden können.
Verschiedene Bauelementtypen, die jeweils mit derselben Menge von Pipettenarten gesetzt werden können, können zu sogenann­ ten Bauelementenklassen zusammengefaßt werden und gemeinsam wie ein Bauelementtyp behandelt werden.
Es gilt also: zwei Bauelemente gehören zur selben Bauelemen­ teklasse, wenn sie mit genau denselben Pipettenarten gesetzt werden können.
Der Bestückungsautomat 201 weist eine Vorrichtung 206 auf, mit einem Speicher 207 und einer Prozessor 208, die mit dem Speicher 207 verbunden ist.
In dem Speicher 207 sind folgende Listen gespeichert:
  • - Eine Bauelementtypen-Liste B, in der die Bauelementtypen, mit denen die Leiterplatte 203 bestückt werden soll, gemein­ sam mit der jeweiligen Anzahl Bauelemente gespeichert sind.
  • - Eine Pipettenarten-Liste P, in der die zur Verfügung ste­ henden Pipettenarten gespeichert sind.
  • - Eine Zuordnungsliste E, in der angegeben ist, welche Bau­ elementtypen mit welchen Pipettenarten gesetzt werden können.
Gemäß dem im weiteren beschriebenen Verfahren werden die für die Bestückung der Leiterplatte 203 auf dem SP- Bestückungskopf zu rüstenden Pipetten ermittelt. Der Bestüc­ kungskopf wird mit den Pipetten der entsprechenden Pipetten­ arten gerüstet, und die Leiterplatte 203 wird mit den Bauele­ menten 205 gemäß der vorgegebenen Bestückung und den vorgege­ benen Bestückpositionen 204 bestückt.
Die Zuordnungsliste E kann zum einfacheren Verständnis in Form eines bipartiten Graphen dargestellt werden (vgl. Fig. 3a und Fig. 3b).
Knoten auf der linken Seite des Graphen (vgl. Fig. 3a) be­ zeichnen Bauelementtypen und Knoten auf der rechten Seite des bipartiten Graphen bezeichnen Pipettenarten. Verbindungen zwischen den Knoten der linken und der rechten Seite des Gra­ phen geben an, daß ein Bauelement des jeweiligen Bauelement­ typs mit einer Pipette der jeweiligen Pipettenart gesetzt werden kann.
Zur Zuordnung der Bauelemente zu den Pipetten und somit zur Auswahl der Pipetten verschiedener Pipettenarten zur Bestüc­ kung der Leiterplatte 203 wird das Verfahren, das in seinen Verfahrensschritten in Fig. 1 dargestellt ist, durchgeführt.
Eine Bestückung erfolgt in mindestens einem Zyklus, wobei ein Zyklus jeweils einen Durchgang bezeichnet, bei dem der Be­ stückungskopf eine vorgebbare Anzahl, maximal seine Kapazi­ tät, an Bauelementen aufnimmt, transportiert und an den ent­ sprechenden, vorgegebenen Bestückpositionen 204 der Leiter­ platte 203 setzt.
Ziel ist es, die Zahl benötigter Zyklen für eine Bestückung möglichst gering zu halten. Das im weiteren beschriebene Ver­ fahren wird iterativ für mindestens eine vorgebbare Anzahl Zyklen durchgeführt.
Dabei wird folgende Vorgehensweise gewählt, mit der für die vorgegebene Zahl von Zyklen eine Lösung des Pipetten- Auswahlproblems, das im weiteren erläutert wird, bestimmt wird, bzw. festgestellt wird, daß eine solche Lösung für die vorgegebene Zahl von Zyklen nicht existiert.
Existiert eine Lösung, so ist das Verfahren beendet, wird keine lösung ermittelt, so wird die Zahl der Zyklen solange erhöht und das Verfahren zur Lösung des Pipetten- Auswahlproblems durchgeführt, bis eine Zahl von Zyklen ermit­ telt wurde, für die eine Lösung existiert.
Anschaulich kann diese Vorgehensweise folgendermaßen formu­ liert werden. Es wird für die minimale Anzahl z von Zyklen eine triviale untere Schranken us und eine obere Schranke os angegeben.
Das Verfahren erfolgt gemäß folgenden Schritten:
  • 1. Setze z = us.
  • 2. Finde eine zulässige Lösung für das Pipetten- Auswahlproblem. Falls eine zulässige Lösung nicht existiert und die obere Schranke os für die Zahl z der Zyklen noch nicht erreicht ist, setze z = z + 1 und wiederhole Schritt 2.
Es hat sich herausgestellt, daß zumeist die optimale Zyklen­ zahl durch die untere Schranke us selbst oder durch us + 1 gegeben ist, so daß meistens eine oder zwei Iterationen des Verfahrens zur Ermittlung einer Lösung des Pipetten- Auswahlproblems ausreichen.
In jeder Iteration, d. h. jeweils für eine vorgegebene Zahl von Zyklen, wird das im weiteren beschriebene Verfahren zur Ermittlung der Zuordnung der Bauelemente zu den Pipetten durchgeführt.
In einem ersten Schritt (Schritt 101) wird für die möglichen Zuordnungen der Bauelementtypen zu den verschiedenen Pipet­ tenarten überprüft, ob die Consecutive-Ones-Eigenschaft er­ füllt ist.
Die Consecutive-Ones-Eigenschaft ist gegeben falls gilt:
Es kann eine Bauelementtypen-Ordnung auf der Menge der Bau­ elementtypen angegeben werden, so daß gilt
(b1, p) ∈ E, (b2, p) ∈ E, b1 ≦ b ≦ b2 ⇒ (b, p) ∈ E;
wobei mit
  • - b1, b2, b Bauelemente der Bauelementtypen-Liste B bezeich­ net werden,
  • - (b, p) ∈ E, b ∈ B, p ∈ P, den Fall bezeichnet, daß ein Bauelement vom Bauelementtypen b mit einer Pipette der Pipet­ tenart p gesetzt werden kann.
Eine solche Bauelementtypen-Ordnung wird im weiteren als zu­ lässige Bauelementtypen-Ordnung bezeichnet.
Fig. 3a und Fig. 3b stellen ein Beispiel dar einer möglichen Zuordnung, die die Consecutive-Ones-Eigenschaft erfüllt.
Die beiden bipartiten Graphen (Fig. 3a, Fig. 3b) stellen die Bauelementtypen bj (j = 1, . . ., m) die Pipettenarten pi (i = 1, . . ., n) und die Menge der zulässigen Zuördnungen der Bauelementtypen zu den Pipettenarten dar.
In dem Graphen in Fig. 3b sind die Bauelementtypen derart an­ geordnet, daß für alle Pipettenarten p ∈ P die Bauelementty­ pen, die mit einer Pipette der jeweiligen Pipettenart p ∈ P gesetzt werden können, unmittelbar aufeinanderfolgen. Die Consecutive-Ones-Eigenschaft ist demnach gegeben.
Zur Überprüfung der Consecutive-Ones-Eigenschaft wird das in [1] beschriebene Verfahren eingesetzt, mit dem ein Datensatz in linearer Laufzeit auf die Consecutive-Ones-Eigenschaft hin überprüft werden kann. Liegt die Consecutive-Ones-Eigenschaft vor, so liefert das Verfahren aus [1] implizit sämtliche zu­ lässigen Ordnungen auf den Bauelementtypen.
Liegt eine Instanz des Pipetten-Auswahlproblems mit Consecu­ tive-Ones-Eigenschaft vor, so wird in einem zweiten Schritt (Schritt 102) ein im weiteren als inverses Greedy-Verfahren bezeichnetes und in seinen Verfahrensschritten detailliert erläutertes Verfahren durchgeführt.
Mit dem inversen Greedy-Verfahren wird für eine vorgegebene Zyklenzahl z eine minimale Zahl von Pipetten, die erforder­ lich ist, um alle zu setzenden Bauelemente mit z Zyklen zu setzen, bestimmt. Gleichzeitig werden die entsprechenden Zu­ ordnungen der Bauelemente zu den Pipetten der verschiedenen Pipettenarten sowie die Zahl der Pipetten der jeweiligen Pipettenart p ∈ P ermittelt.
Ist die Zahl der erforderlichen Pipetten nicht größer als die Zahl der Segmente an dem Bestückungskopf, so ist eine Lösung des Pipetten-Auswahlproblems für z Zyklen gefunden, andern­ falls existiert eine solche Lösung nicht.
Bevor das Verfahren durchgeführt wird, wird für die Pipetten­ arten eine Pipettenarten-Ordnung gebildet derart, daß gilt:
p1 ≦ p2 ⇒ (l(p1)<l(p2)) ∨ ((l(p1)=l(p2)) ∧ f(p1)≧f(p2))).
wobei
  • - p1, p2 ∈ P unterschiedliche Pipettenarten bezeichnen,
  • - l(p), p ∈ P, definiert ist durch
    l(p) = max {b ∈ B | (b, p) ∈ E},
  • - f(p), p ∈ P, definiert ist durch
    f(p) = min {b ∈ B | (b, p) ∈ E}.
Fig. 4a und Fig. 4b zeigen das in den Fig. 3a und Fig. 3b begon­ nene Beispiel hinsichtlich der Pipettenarten-Ordnung. Beim Graphen in Fig. 4b sind neben den Bauelementtypen auch die Pipettenarten geeignet angeordnet.
Bei dem inversen Greedy-Verfahren (Schritt 102) werden suk­ zessive die Bauelemente in einer Reihenfolge, die durch die Bauelementtypen-Ordnung gegeben ist, den Pipettenarten auf folgende Weise zugeordnet:
  • - existieren für einen Bauelementtypen Pipettenarten, denen nicht ein beliebiges Vielfaches der Zyklenzahl z viele Bau­ elemente bereits zugeordnet sind, so werden zunächst diese Pipettenarten gemäß der Pipettenarten-Ordnung Bauelemente zugeordnet in der Art, daß die Zahl der zugeordneten Bau­ elemente soweit möglich auf das nächste Vielfache der Zy­ klenzahl z ergänzt wird;
  • - verbleiben dann noch Bauelemente dieses Bauelementtyps, so werden diese der gemäß der Pipettenarten-Ordnung letzten möglichen Pipettenart zugeordnet.
Das folgende Programmstück zeigt eine mögliche Realisierung des inversen Greedy-Verfahrens in Form eines Computerpro­ gramms in der Programmiersprache C.
Eine erste Lösungsvariable xbp, eine zweite Lösungsvariable yp, Parameter nb, tb, etc. sind in dem Programmstück mit x[bp], y[p], n[b], t[b] etc. Bezeichnet. Dabei ist tb durch tb = max {p ∈ P | (b, p) ∈ E} definiert.
In Fig. 6a ist für ein weiteres einfaches Beispiel das inverse Greedy-Verfahren und die sich daraus ergebende Zuordnung in einem Graphen dargestellt. Es wird folgende Ausgangssituation angenommen.
Für die 5 Bauelementtypen sind jeweils eine durch eine Zahl angegebene Anzahl von Bauelementen angegeben, die auf der Leiterplatte 203 zu bestücken sind. Dies bedeutet, daß in diesem Beispielsfall folgende Bauelemente des jeweiligen Bau­ elementtyps bestückt werden müssen:
  • - erster Bauelementtyp: 20 Bauelemente;
  • - zweiter Bauelementtyp: 10 Bauelemente;
  • - dritter Bauelementtyp: 15 Bauelemente;
  • - vierter Bauelementtyp: 7 Bauelemente;
  • - fünfter Bauelementtyp: 20 Bauelemente.
Es stehen zur Bestückung drei verschiedene Pipettenarten zur Verfügung. Die Zahl an den Knoten, mit denen die Pipettenar­ ten bezeichnet werden, gibt jeweils die durch das Verfahren ermittelte Zahl yp (zweite Lösungsvariable) der Pipetten der jeweiligen Pipettenart an.
Es ergibt sich somit folgende Verteilung von Pipetten auf die verschiedenen Pipettenarten:
  • - erste Pipettenart: 4 Pipetten;
  • - zweite Pipettenart: 1 Pipette;
  • - dritte Pipettenart: 7 Pipetten.
In diesem Beispielsfall wird eine Zuordnung für 6 Zyklen er­ mittelt.
Die Bauelemente des ersten Bauelementtyps können nur mit Pipetten der ersten Pipettenart, wie durch die Verbindung der beiden Knoten des Graphen dargestellt, gesetzt werden.
Die Bauelemente des zweiten Bauelementtyps können sowohl durch Pipetten der ersten als auch der zweiten Pipettenart gesetzt werden.
Bauelemente des dritten Bauelementtyps können von Pipetten sowohl der ersten, als auch der zweiten oder der dritten Pipettenart gesetzt werden
Bauelemente des vierten Bauelementtyps können dürch Pipetten der zweiten Pipettenart und durch Pipetten der dritten Pipet­ tenart gesetzt werden.
Bauelemente des fünften Bauelementtyps können nur durch Pipetten der dritten Pipettenart gesetzt werden.
Bei dem inversen Greedy-Verfahren 102 wird begonnen mit den Bauelementen des ersten Bauelementtyps, für die alle Bauele­ mente den Pipetten der ersten Pipettenart in den sechs Zyklen zugeordnet werden. Insgesamt werden vier Pipetten der ersten Pipettenart in den sechs Zyklen (6 × 4 = 24) benötigt, um al­ le 20 Bauelemente des ersten Bauelementtyps mit den Pipetten der ersten Pipettenart zu setzen. Somit werden die 20 Bauele­ mente des ersten Bauelementtyps den Pipetten der ersten Pipettenart zugeordnet.
Anschließend werden die Bauelemente des zweiten Bauelement­ typs (10 Bauelemente) den Pipetten zugeordnet. Die Pipetten der ersten Pipettenart haben in den sechs Zyklen noch eine freie Kapazität von vier Bauelementen (24 - 20 = 4 Bauelemen­ te), die in den sechs Zyklen von Pipetten der ersten Pipet­ tenart gesetzt werden können. Vier der 10 Bauelemente des zweiten Bauelementtyps werden somit den Pipetten der ersten Pipettenart zugeordnet, da bei der Zuordnung, wenn möglich, die Pipetten mit den Bauelementen "aufgefüllt" werden. Die restlichen sechs Bauelemente des zweiten Bauelementtyps wer­ den einer Pipette der zweiten Pipettenart zugeordnet, da eine Pipette der zweiten Pipettenart insgesamt in den sechs Zyklen sechs Bauelemente setzen kann.
In einem weiteren Schritt werden die Bauelemente des dritten Bauelementtyps (15 Bauelemente) den Pipetten zugeordnet. Die Pipetten der ersten Pipettenart und der zweiten Pipettenart sind schon belegt, so daß die 15 Bauelemente des dritten Bau­ elementtyps Pipetten der dritten Pipettenart zugeordnet wer­ de. Hierfür sind sieben Pipetten der dritten Pipettenart er­ forderlich. Ebenso werden die sieben Bauelemente des vierten Bauelementtyps und die 20 Bauelemente des fünften Bauelement­ typs Pipetten der dritten Pipettenart zugeordnet. Insgesamt können mit den sieben Pipetten der dritten Pipettenart 7 × 6 = 42 Bauelemente gesetzt werden. Dies ist genau die Anzahl an Bauelementen, die von Bauelementen des dritten Bauelement­ typs, des vierten Bauelementtyps und des fünften Bauelement­ typs gesetzt werden sollen.
Somit existiert eine Lösung für die Zuordnung gemäß dem in­ versen Greedy-Verfahren (Schritt 102) für 6 Zyklen und die Bestückung kann gemäß dieser Zuordnung im weiteren erfolgen. Das Ergebnis des Verfahrens ist gegeben durch die Anzahl der benötigten Pipetten der jeweiligen Pipettenarten und durch die Zuordnung der Bauelemente zu den Pipettenarten.
Es ist zu betonen, daß das inverse Greedy-Verfahren, wie im weiteren noch erläutert wird, für den Fall eine optimale Lö­ sung des Pipetten-Auswahlproblems angibt, wenn für die mögli­ chen Zuordnungen die Consecutive-Ones-Eigenschaft erfüllt ist.
Es kann lediglich nicht mehr gewährleistet werden, daß die Lösung eine optimale Lösung des Pipetten-Auswahlproblems im mathematischen Sinne darstellt, falls die Consecutive-Ones- Eigenschaft nicht erfüllt ist.
Ist die Consecutive-Ones-Eigenschaft (vgl. Schritt 101) nicht gegeben, so wird eine der Varianten (Schritt 103 oder Schritt 104), die im weiteren erläutert werden, durchgeführt.
Im Rahmen einer ersten Heuristik (Schritt 103) werden ausge­ hend von einem leeren Graphen, d. h. eine Menge von Bauele­ menttypen und Pipettenarten, jedoch ohne Zuordnungen, der die Consecutive-Ones-Eigenschäft trivialerweise erfüllt, sukzes­ sive die einzelnen Pipettenarten p ∈ P betrachtet und so viele Kanten (p, b) ∈ E wie möglich dem Graphen hinzugefügt, ohne die Consecutive-Ones-Eigenschaft zu verlieren. Auf den resultierenden Graphen, der nun weniger Kanten als der ur­ sprüngliche Graph enthält, jedoch die Consecutive-Ones- Eigenschaft erfüllt, wird nun das oben beschriebenen inverse Greedy-Verfahren durchgeführt.
Es kann in einer weiteren Variante des Verfahrens auch in ei­ nem weiteren Schritt (Schritt 104) derart vorgegangen werden, daß die möglichen Zuordnungen auf folgende Eigenschaft hin untersucht wird, die im weiteren als Azyklische-Hypergraph- Eigenschaft bezeichnet wird:
Es gibt eine Menge von Bäumen W (Wald W) mit den Pipettenar­ ten P als Knoten, so daß jeder von einer Menge von Pipetten­ arten P(b), die ein Bauelement b setzen können, induzierte Teilgraph des Waldes W zusammenhängend ist.
Ist die Azyklische-Hypergraph-Eigenschaft erfüllt, so werden die Pipettenarten gemäß des Waldes W wopologisch sortiert, also eine lineare Ordnung für die Pipettenarten bestimmt.
Aus [2] ist ein Verfahren zur Überprüfung der Azyklischer- Hypergraph-Eigenschaft bekannt, welches eine lineare Komple­ xität aufweist.
Zur Verdeutlichung dieser Eigenschaft zeigen Fig. 5a und Fig. 5b zum einen eine Zuordnungsliste E mit Bauelementtypen und Pipettenarten (Fig. 5a) und einen Wald mit den geforderten Eigenschaften die Ziffern definieren eine gewünschte lineare Ordnung (Fig. 5b).
Ist die Azyklischer-Hypergraph-Eigenschaft erfüllt, so wird in einem weiteren Schritt (Schritt 105) ein im weiteren als Greedy-Fluß-Verfahren beschriebenes Verfahren durchgeführt. Das Pipetten-Auswahlproblem wird als eine Folge PAPc von Flußproblemen gemäß folgenden Vorschriften formuliert:
wobei
  • - nb eine Zahl der zu setzenden Bauelemente vom Bauelementty­ pen b ∈ E angibt,
  • - cp, p ∈ P eine vorgebbare Schranke, durch deren Variation die Folge von Flußproblemen gebildet wird, bezeichnet wird,
  • - eine erste Lösungsvariable xbp angibt, wie viele Bauelemen­ te vom Bauelementtypen b ∈ B durch eine Pipette der Pipet­ tenart p ∈ P gesetzt werden.
Zur Lösung eines solchen Flußproblems wird das in [3] be­ schriebene Verfahren eingesetzt.
Zur Lösung des Pipettenauswahl-Problems wird das im folgenden dargestellte Computerprogramm eingesetzt werden, in dem eine Folge von Flußproblemen des obigen Typs gelöst wird, wobei die Schranken cp (im Programm c[p]) variiert werden. Die li­ neare Ordnung der Pipettenarten sei durch p1 ≦ p2 ≦ . . . ≦ p|P| gegeben
Die Zuordnungen, d. h. die Werte für xbp ergeben sich aus der Lösung des jeweils letzten Flußproblems.
Ferner gilt: Ist
wobei k die Zahl von Segmenten des Bestückungskopfs bezeichnet, existiert keine Lösung mit der Zyklenzahl z.
Ergibt die Überprüfung auf die azyklische Hypergraph- Eigenschaft (Schritt 104) ein negatives Resultat, d. h. ist die Eigenschaft nicht erfüllt, so wird ein Verfahren aus zwei im weiteren beschriebenen möglichen Verfahren (Schritt 106 oder Schritt 107) durchgeführt.
In einer ersten Variante (Schritt 106) wird im Rahmen einer zweiten Heuristik ein Verfahren durchgeführt, bei dem aus dem Zuordnungsgraphen Kanten gelöscht wurden, so daß gemäß dem oben beschriebenen Verfahren ein Wald W mit der azyklischen Hypergraph-Eigenschaft gebildet werden kann. Es ist vorteil­ haft, dabei darauf zu achten, daß möglichst wenig Kanten ge­ löscht werden. Anschließend wird das Greedy-Fluß-Verfahren auf den sich ergebenden Graphen durchgeführt.
Es ist zu betonen, daß das Greedy-Fluß-Verfahren für jede li­ neare Ordnung auf den Pipettenarten P ausgeführt werden kann. Es ist lediglich im allgemeinen Fall nicht gewährleistet, daß es keine Lösung gibt, wenn mit dem Greedy-Fluß-Verfahren kei­ ne Lösung gefunden wird. Trotzdem werden auch mit dem Greedy- Fluß-Verfahren sehr gute Ergebnisse erzielt.
Alternativ zu der zweiten Heuristik (Schritt 106) kann das Pipetten-Auswahlproblem als ein ganzzahliges lineares Pro­ gramm formuliert und gelöst werden bzw. dessen Unzulässigkeit festgestellt werden. Das lineare Programm PAPz wird für das Pipetten-Auswahlproblem gemäß folgenden Vorschriften formu­ liert:
wobei
  • - nb eine Zahl der zu setzenden Bauelemente vom Bauelementty­ pen b ∈ E angibt,
  • - eine erste Lösungsvariable xbp angibt, wie viele Bauelemen­ te vom Bauelementtypen b ∈ B durch eine Pipette der Pipet­ tenart p ∈ P gesetzt werden,
  • - eine zweite Lösungsvariable yp angibt, wie viele Pipetten der Pipettenart p ∈ P ausgewählt werden,
  • - k eine Zahl von Segmenten des Bestückungskopfs bezeichnet,
  • - x, y ≧ 0, ganzzahlig ist.
Ein ganzzahliges lineares Programm wird durch das bekannte Branch-and-Cut-Verfahren optimal gelöst, wie es in [4] be­ schrieben ist.
Ist gemäß dem oben beschriebenen Verfahren die Zuordnung der Bauelemente zu den Pipetten der verschienden Pipettenarten und somit die Zuordnung der Pipetten bzw. Pipettenarten zu dem Bestückungskopf ermittelt, so wird die Bestückung gemäß dieser Zuordnung unter Verwendung der ermittelten Pipetten durchgeführt.
Die Auswahl der jeweiligen Verfahrensvariante erfolgt abhän­ gig von der für die Durchführung des Verfahrens verfügbaren Rechenzeit.
Im Rahmen dieses Dokuments wurden folgende Veröffentlichungen zitiert:
[1] W. L. HSU, A Simple Test for teh Consecutive Ones Pro­ perty, Lecture Notes in Computer Science: Algorithms and Computation, Vol. 650, S. 459-468, 1992
[2] R. E. Tarjan, M. Yannakakis, Simple Linear-Time Algo­ rithms to Test Chordality of Graphs, Test Acyclicity of Hypergraphs, and Selectively Reduce Acyclic Hyper­ graphs, SIAM J. Comput., Vol. 13, S. 566-579, 1984
[3] R. K. Ahuja et al. Network Flows, Prentice Hall, S. 207-242 und 255-258, 1993
[4] G. L. Nemhauser, L. A. Wolsey, Integer and Combina­ torial Optimization, Wiley, New York, S. 349-379, 1988

Claims (24)

1. Verfahren zur rechnergestützten Pipettenauswahl für einen Bestückungskopf eines Bestückungsautomaten und zur Zuordnung von Bauelementen zu den in einer Pipettenauswahl vorgegebenen Pipettenarten bei einer vorgegebenen Zyklenzahl z, bei dem unter Verwendung
  • 1. einer gespeicherten Bauelementtypen-Liste B mit jeweils zu­ gehöriger Anzahl zu setzender Bauelemente des Bauelement­ typs,
  • 2. einer Bauelementtypen-Ordnung auf den Bauelementtypen,
  • 3. einer gespeicherten Pipettenarten-Liste P von zur Verfügung stehenden Pipettenarten und einer Zuordnungsliste E, die angibt, welche Bauelementtypen mit welchen Pipettenarten gesetzt werden können,
ausgehend von der Bauelementtypen-Ordnung für die Pipettenar­ ten p ∈ P eine Pipettenarten-Ordnung gebildet wird, derart, daß gilt:
p1 ≦ p2 ⇒ (l(p1)<l(p2)) ∨ ((l(p1)=l(p2)) ∧ f(p1)≧f(p2))),
wobei
  • 1. p1, p2 ∈ P unterschiedliche Pipettenarten bezeichnen,
  • 2. l(p), p ∈ P, definiert ist durch
    l(p) = max {b ∈ B | (b, p) ∈ E},
  • 3. f(p), p ∈ P, definiert ist durch
    f(p) = min {b ∈ B | (b, p) ∈ E},
bei dem sukzessive die Bauelemente in einer Reihenfolge, die durch die Bauelementtypen-Ordnung gegeben ist, den Pipetten­ arten auf folgende Weise zugeordnet werden:
existieren für einen Bauelementtypen Pipettenarten, denen nicht ein beliebiges Vielfaches der Zyklenzahl z viele Bau­ elemente bereits zugeordnet sind, so werden zunächst diese Pipettenarten gemäß der Pipettenarten-Ordnung Bauelemente zu­ geordnet in der Art, daß die Zahl der zugeordneten Bauelemen­ te soweit möglich auf das nächste Vielfache der Zyklenzahl z ergänzt wird;
verbleiben dann noch Bauelemente dieses Bauelementtyps, so werden diese der gemäß der Pipettenarten-Ordnung letzten mög­ lichen Pipettenart zugeordnet, und
bei dem aus der Anzahl der einer Pipettenart zugeordneten Bauelemente eine Anzahl von Pipetten, die von der Pipettenart auszuwählen sind, ermittelt wird.
2. Verfahren zur rechnergestützten Pipettenauswahl für einen Bestückungskopf eines Bestückungsautomaten und zur Zuordnung von Bauelementen zu den in einer Pipettenauswahl vorgegebenen Pipettenarten bei einer vorgegebenen Zyklenzahl z, bei dem unter Verwendung
  • 1. einer gespeicherten Bauelementtypen-Liste B mit jeweils zu­ gehöriger Anzahl zu setzender Bauelemente des Bauelement­ typs,
  • 2. einer gespeicherten Pipettenarten-Liste P von zur Verfügung stehenden Pipettenarten und einer Zuordnungsliste E, die angibt, welche Bauelementtypen mit welchen Pipettenarten gesetzt werden können,
überprüft wird, ob eine zulässige Bauelementtypen-Ordnung existiert, d. h., ob gilt:
(b1, p) ∈ E, (b2, p) ∈ E, b1 ≦ b ≦ b2 ⇒ (b, p) ∈ E,
wobei mit
  • 1. b1, b2, b Bauelemente der Bauelementtypen-Liste B bezeich­ net werden,
  • 2. (b, p) ∈ E, b ∈ B, p ∈ P, den Fall bezeichnet, daß ein Bauelement vom Bauelementtypen b mit einer Pipette der Pipet­ tenart p gesetzt werden kann,
bei dem ausgehend von der zulässigen Bauelementtypen-Ordnung für die Pipettenarten p ∈ P eine Pipettenarten-Ordnung ge­ bildet wird, derart, daß gilt:
p1 ≦ p2 ⇒ (l(p1)<l(p2)) ∨ ((l(p1)=l(p2)) ∧ f(p1)≧f(p2))),
wobei
  • 1. p1, p2 ∈ P unterschiedliche Pipettenarten bezeichnen,
  • 2. l(p), p ∈ P, definiert ist durch
    l(p) = max {b ∈ B | (b, p) ∈ E},
  • 3. f(p), p ∈ P, definiert ist durch
    f(p) = min {b ∈ B | (b, p) ∈ E},
bei dem sukzessive die Bauelemente in einer Reihenfolge, die durch die Bauelementtypen-Ordnung gegeben ist, den Pipetten­ arten auf folgende Weise zugeordnet werden:
existieren für einen Bauelementtypen Pipettenarten, denen nicht ein beliebiges Vielfaches der Zyklenzahl z viele Bau­ elemente bereits zugeordnet sind, so werden zunächst diese Pipettenarten gemäß der Pipettenarten-Ordnung Bauelemente zu­ geordnet in der Art, daß die Zahl der zugeordneten Bauelemen­ te soweit möglich auf das nächste Vielfache der Zyklenzahl z ergänzt wird;
verbleiben dann noch Bauelemente dieses Bauelementtyps, so werden diese der gemäß der Pipettenarten-Ordnung letzten mög­ lichen Pipettenart zugeordnet, und
bei dem aus der Anzahl der einer Pipettenart zugeordneten Bauelemente eine Anzahl von Pipetten, die von der Pipettenart auszuwählen sind, ermittelt wird.
3. Verfahren nach Anspruch 2,
  • 1. bei dem für den Fall, daß die zulässige Bauelementtypen- Ordnung nicht existiert, die Zuordnungsliste E verkleinert wird: ausgehend von den Bauelementtypen und den Pipettenarten sukzessive für jede Pipettenart so viele Bauelemente wie mög­ lich der jeweiligen Pipettenart zugeordnet werden, so daß zur resultierenden Zuordnungsliste E eine Bauelementtypen-Ordnung auf den Bauelementtypen existiert derart, daß gilt:
    (b1, p) ∈ E, (b2, p) ∈ E, b1 ≦ b ≦ b2 ⇒ (b, p) ∈ E,
  • 2. bei dem für die Pipettenarten p ∈ P eine Pipettenarten- Ordnung gebildet wird derart, daß gilt:
    p1 ≦ p2 ⇒ (l(p1)<l(p2)) ∨ ((l(p1)=l(p2)) ∧ f(p1)≧f(p2))),
  • 3. bei dem sukzessive die Bauelemente in einer Reihenfolge, die durch die Bauelementtypen-Ordnung gegeben ist, den Pipet­ tenarten auf folgende Weise zugeordnet werden:
    existieren für einen Bauelementtypen Pipettenarten, denen nicht ein beliebiges Vielfaches der Zyklenzahl z viele Bau­ elemente bereits zugeordnet sind, so werden zunächst diese Pipettenarten gemäß der Pipettenarten-Ordnung Bauelemente zu­ geordnet in der Art, daß die Zahl der zugeordneten Bauelemen­ te soweit möglich auf das nächste Vielfache der Zyklenzahl z ergänzt wird;
    verbleiben dann noch Bauelemente dieses Bauelementtyps, so werden diese der gemäß der Pipettenarten-Ordnung letzten mög­ lichen Pipettenart zugeordnet, und
  • 4. bei dem aus der Anzahl der einer Pipettenart zugeordneten Bauelemente eine Anzahl von Pipetten, die von der Pipettenart auszuwählen sind, ermittelt wird.
4. Verfahren nach Anspruch 2, bei dem für den Fall, daß die zulässige Bauelementtypen- Ordnung nicht existiert, die zu ermittelnde Lösung durch Lö­ sung einer Folge von Flußproblemen bestimmt wird.
5. Verfahren nach Anspruch 2,
  • 1. bei dem für den Fall, daß die zulässige Bauelementtypen- Ordnung nicht existiert, geprüft wird, ob für mögliche Zuord­ nungen der Bauelementtypen zu den Pipettenarten gemäß der Zu­ ordnungsliste E eine Menge von Bäumen mit den Pipettenarten als Knoten der Bäume ermittelt werden kann, so daß jeder von einer Menge von Pipettenarten P(b), die ein Bauelement b set­ zen können, induzierte Teilgraph der Menge der Bäume zusam­ menhängend ist,
  • 2. bei dem, wenn eine solche Menge von Bäumen ermittelt werden kann, die zu ermittelnde Lösung durch Lösung einer Folge von Flußproblemen bestimmt wird.
6. Verfahren nach Anspruch 2,
  • 1. bei dem für den Fall, daß die zulässige Ordnung nicht exi­ stiert, geprüft wird, ob für mögliche Zuordnungen der Bäuele­ menttypen zu den Pipettenarten gemäß der Zuordnungsliste eine Menge von Bäumen mit den Pipettenarten als Knoten der Bäume ermittelt werden kann, so daß jeder von einer Menge von Pipettenarten P(b), die ein Bauelement b setzen können, indu­ zierte Teilgraph der Menge der Bäume zusammenhängend ist,
  • 2. bei dem, wenn eine solche Menge von Bäumen nicht ermittelt werden kann, Elemente aus der Zuordnungsliste E gelöscht wer­ den, bis eine solche Menge von Bäumen ermittelt werden kann, und
  • 3. bei dem die zu ermittelnde Lösung durch Lösung einer Folge von Flußproblemen bestimmt wird.
7. Verfahren nach einem der Ansprüche 4 bis 6, bei dem die Folge von Flußproblemen gemäß folgender Vor­ schriften gebildet wird:
wobei
  • 1. nb eine Zahl der zu setzenden Bauelemente vom Bauelementty­ pen b ∈ E angibt,
  • 2. cp, p ∈ P eine vorgebbare Schranke, durch deren Variation die Folge von Flußproblemen gebildet wird, bezeichnet wird,
  • 3. eine erste Lösungsvariable xbp angibt, wie viele Bauelemen­ te vom Bauelementtypen b ∈ B durch eine Pipette der Pipet­ tenart p ∈ P gesetzt werden.
8. Verfahren nach Anspruch 2,
  • 1. bei dem für den Fall, daß die zulässige Ordnung nicht exi­ stiert, geprüft wird, ob für mögliche Zuordnungen der Bauele­ menttypen zu den Pipettenarten gemäß der Zuordnungsliste eine Menge von Bäumen mit den Pipettenarten als Knoten der Bäume ermittelt werden kann, so daß jeder von einer Menge von Pipettenarten P(b), die ein Bauelement b setzen können, indu­ zierte Teilgraph der Menge der Bäume zusammenhängend ist.
  • 2. bei dem, wenn eine solche Menge von Bäumen nicht ermittelt werden kann, die zu ermittelnde Lösung durch Lösen eines li­ nearen Programms ermittelt wird.
9. Verfahren nach Anspruch 8, bei dem das lineare Programm gemäß folgender Vorschriften ge­ bildet wird:
wobei
  • 1. nb eine Zahl der zu setzenden Bauelemente vom Bauelementty­ pen b ∈ E angibt,
  • 2. eine erste Lösungsvariable xbp angibt, wie viele Bauelemen­ te vom Bauelementtypen b ∈ B durch eine Pipette der Pipet­ tenart p ∈ P gesetzt werden,
  • 3. eine zweite Lösungsvariable yp angibt, wie viele Pipetten der Pipettenart p ∈ P ausgewählt werden,
  • 4. k eine Zahl von Segmenten des Bestückungskopfs bezeichnet,
  • 5. x, y ≧ 0, ganzzahlig ist.
10. Verfahren nach Anspruch 9, bei dem das lineare Programm unter Verwendung eines Branch­ and-Cut-Verfahrens gelöst wird.
11. Verfahren nach einem der Ansprüche 1 bis 10, das mehrmals für jeweils eine unterschiedliche Zyklenzahl durchgeführt wird.
12. Verfahren nach einem der Ansprüche 1 bis 11, bei dem die ermittelten Pipetten dem Bestückungskopf zugeord­ net werden und die Bauelemente mit dem Bestückungskopf auf eine Leiterplatte gesetzt werden.
13. Vorrichtung zur rechnergestützten Pipettenauswahl für ei­ nen Bestückungskopf eines Bestückungsautomaten und zur Zuord­ nung von Bauelementen zu den in einer Pipettenauswahl vorge­ gebenen Pipettenarten bei einer vorgegebenen Zyklenzahl z,
  • 1. mit einem Speicher zur Speicherung einer Bauelementtypen- Liste B, einer Pipettenarten-Liste P, und einer Zuordnungsli­ ste E,
  • 2. mit einer mit dem Speicher gekoppelten Prozessor, der der­ art eingerichtet ist, daß folgende Schritte durchführbar sind:
unter Verwendung
  • 1. der gespeicherten Bauelementtypen-Liste B mit jeweils zuge­ höriger Anzahl zu setzender Bauelemente des Bauelementtyps,
  • 2. einer Bauelementtypen-Ordnung auf den Bauelementtypen,
  • 3. der gespeicherten Pipettenarten-Liste P von zur Verfügung stehenden Pipettenarten und der Zuordnungsliste E, die an­ gibt, welche Bauelementtypen mit welchen Pipettenarten ge­ setzt werden können,
wird ausgehend von der Bauelementtypen-Ordnung für die Pipet­ tenarten p ∈ P eine Pipettenarten-Ordnung gebildet, derart, daß gilt:
p1 ≦ p2 ⇒ (l(p1)<l(p2)) ∨ ((l(p1)=l(p2)) ∧ f(p1)≧f(p2))),
wobei
  • 1. p1, p2 ∈ P unterschiedliche Pipettenarten bezeichnen,
  • 2. l(p), p ∈ P, definiert ist durch
    l(p) = max {b ∈ B | (b, p) ∈ E},
  • 3. f(p), p ∈ P, definiert ist durch
    f(p) = min {b ∈ B | (b, p) ∈ E},
bei dem sukzessive die Bauelemente in einer Reihenfolge, die durch die Bauelementtypen-Ordnung gegeben ist, den Pipetten­ arten auf folgende Weise zugeordnet werden:
existieren für einen Bauelementtypen Pipettenarten, denen nicht ein beliebiges Vielfaches der Zyklenzahl z viele Bau­ elemente bereits zugeordnet sind, so werden zunächst diese Pipettenarten gemäß der Pipettenarten-Ordnung Bäuelemente zu­ geordnet in der Art, daß die Zahl der zugeordneten Bauelemen­ te soweit möglich auf das nächste Vielfache der Zyklenzahl z ergänzt wird;
verbleiben dann noch Bauelemente dieses Bauelementtyps, so werden diese der gemäß der Pipettenarten-Ordnung letzten mög­ lichen Pipettenart zugeordnet, und
bei dem aus der Anzahl der einer Pipettenart zugeordneten Bauelemente eine Anzahl von Pipetten, die von der Pipettenart auszuwählen sind, ermittelt wird.
14. Vorrichtung zur rechnergestützten Pipettenauswahl für ei­ nen Bestückungskopf eines Bestückungsautomaten und zur Zuord­ nung von Bauelementen zu den in einer Pipettenauswahl vorge­ gebenen Pipettenarten bei einer vorgegebenen Zyklenzahl z,
  • 1. mit einem Speicher zur Speicherung einer Bauelementtypen- Liste B, einer Pipettenarten-Liste P, und einer Zuordnungsli­ ste E,
  • 2. mit einer mit dem Speicher gekoppelten Prozessor, der der­ art eingerichtet ist, daß folgende Schritte durchführbar sind:
unter Verwendung
  • 1. einer gespeicherten Bauelementtypen-Liste B mit jeweils zu­ gehöriger Anzahl zu setzender Bauelemente des Bauelement­ typs,
  • 2. einer gespeicherten Pipettenarten-Liste P von zur Verfügung stehenden Pipettenarten und einer Zuordnungsliste E, die angibt, welche Bauelementtypen mit welchen Pipettenarten gesetzt werden können,
wird überprüft, ob eine zulässige Bauelementtypen-Ordnung existiert, d. h., ob gilt:
(b1, p) ∈ E, (b2, p) ∈ E, b1 ≦ b < b2 ⇒ (b, p) ∈ E,
wobei mit
  • 1. b1, b2, b Bauelemente der Bauelementtypen-Liste B bezeich­ net werden,
  • 2. (b, p) ∈ E, b ∈ B, p ∈ P, den Fall bezeichnet, daß ein Bauelement vom Bauelementtypen b mit einer Pipette der Pipet­ tenart p gesetzt werden kann,
bei dem ausgehend von der zulässigen Bauelementtypen-Ordnung für die Pipettenarten p ∈ P eine Pipettenarten-Ordnung ge­ bildet wird, derart, daß gilt:
p1 ≦ p2 ⇒ (l(p1)<l(p2)) ∨ ((l(p1)=l(p2)) ∧ f(p1)≧f(p2))),
wobei
  • 1. p1, p2 ∈ P unterschiedliche Pipettenarten bezeichnen,
  • 2. l(p), p ∈ P, definiert ist durch
    l(p) = max {b ∈ B | (b, p) ∈ E},
  • 3. f(p), p ∈ P, definiert ist durch
    f(p) = min {b ∈ B | (b, p) ∈
bei dem sukzessive die Bauelemente in einer Reihenfolge, die durch die Bauelementtypen-Ordnung gegeben ist, den Pipetten­ arten auf folgende Weise zugeordnet werden:
existieren für einen Bauelementtypen Pipettenarten, denen nicht ein beliebiges Vielfaches der Zyklenzahl z viele Bau­ elemente bereits zugeordnet sind, so werden zunächst diese Pipettenarten gemäß der Pipettenarten-Ordnung Bauelemente zu­ geordnet in der Art, daß die Zahl der zugeordneten Bauelemen­ te soweit möglich auf das nächste Vielfache der Zyklenzahl z ergänzt wird;
verbleiben dann noch Bauelemente dieses Bauelementtyps, so werden diese der gemäß der Pipettenarten-Ordnung letzten mög­ lichen Pipettenart zugeordnet, und
bei dem aus der Anzahl der einer Pipettenart zugeordneten Bauelemente eine Anzahl von Pipetten, die von der Pipettenart auszuwählen sind, ermittelt wird.
15. Vorrichtung nach Anspruch 14, bei der der Prozessor derart eingerichtet ist, daß
  • 1. für den Fall, daß die zulässige Bauelementtypen-Ordnung nicht existiert, wird die Zuordnungsliste E verkleinert: aus­ gehend von den Bauelementtypen und den Pipettenärten sukzes­ sive für jede Pipettenart so viele Bauelemente wie möglich der jeweiligen Pipettenart zugeordnet werden, so daß zur re­ sultierenden Zuordnungsliste E eine Bauelementtypen-Ordnung auf den Bauelementtypen existiert derart, daß gilt:
    (b1, p) ∈ E, (b2, p) ∈ E, b1 ≦ b ≦ b2 ⇒ (b, p) ∈ E,
  • 2. für die Pipettenarten p ∈ P eine Pipettenarten-Ordnung ge­ bildet wird derart, daß gilt:
    p1 ≦ p2 ⇒ (l(p1)<l(p2)) ∨ ((l(p1)=l(p2)) ∧ f(p1)≧f(p2))),
  • 3. sukzessive die Bauelemente in einer Reihenfolge, die durch die Bauelementtypen-Ordnung gegeben ist, den Pipettenarten auf folgende Weise zugeordnet werden:
    existieren für einen Bauelementtypen Pipettenarten, denen nicht ein beliebiges Vielfaches der Zyklenzahl z viele Bau­ elemente bereits zugeordnet sind, so werden zunächst diese Pipettenarten gemäß der Pipettenarten-Ordnung Bauelemente zu­ geordnet in der Art, daß die Zahl der zugeordneten Bauelemen­ te soweit möglich auf das nächste Vielfache der Zyklenzahl z ergänzt wird;
    verbleiben dann noch Bauelemente dieses Bauelementtyps, so werden diese der gemäß der Pipettenarten-Ordnung letzten mög­ lichen Pipettenart zugeordnet, und
  • 4. aus der Anzahl der einer Pipettenart zugeordneten Bauele­ mente eine Anzahl von Pipetten, die von der Pipettenart aus­ zuwählen sind, ermittelt wird.
16. Vorrichtung nach Anspruch 14, bei der die Prozessor derart eingerichtet ist, daß für den Fall, daß die zulässige Bauelementtypen-Ordnung nicht exi­ stiert, die zu ermittelnde Lösung durch Lösung einer Folge vor Flußproblemen bestimmt wird.
17. Vorrichtung nach Anspruch 14, bei der die Prozessor derart eingerichtet ist, daß
  • 1. für den Fall, daß die zulässige Bauelementtypen-Ordnung nicht existiert, geprüft wird, ob für mögliche Zuordnungen der Bauelementtypen zu den Pipettenarten gemäß der Zuord­ nungsliste E eine Menge von Bäumen mit den Pipettenarten als Knoten der Bäume ermittelt werden kann, so daß jeder von ei­ ner Menge von Pipettenarten P(b), die ein Bauelement b setzen können, induzierte Teilgraph der Menge der Bäume zusammenhän­ gend ist,
  • 2. wenn eine solche Menge von Bäumen ermittelt werden kann, die zu ermittelnde Lösung durch Lösung einer Folge von Fluß­ problemen bestimmt wird.
18. Vorrichtung nach Anspruch 14, bei der die Prozessor derart eingerichtet ist, daß
  • 1. für den Fall, daß die zulässige Ordnung nicht existiert, geprüft wird, ob für mögliche Zuordnungen der Bauelementtypen zu den Pipettenarten gemäß der Zuordnungsliste eine Menge von Bäumen mit den Pipettenarten als Knoten der Bäume ermittelt werden kann, so daß jeder von einer Menge von Pipettenarten P(b), die ein Bauelement b setzen können, induzierte Teil­ graph der Menge der Bäume zusammenhängend ist,
  • 2. wenn eine solche Menge von Bäumen nicht ermittelt werden kann, Elemente aus der Zuordnungsliste E gelöscht werden, bis eine solche Menge von Bäumen ermittelt werden kann, und
  • 3. bei dem die zu ermittelnde Lösung durch Lösung einer Folge von Flußproblemen bestimmt wird.
19. Vorrichtung nach einem der Ansprüche 16 bis 18, bei der die Prozessor derart eingerichtet ist, daß die Folge von Flußproblemen gemäß folgender Vorschriften gebildet wird:
wobei
  • 1. nb eine Zahl der zu setzenden Bauelemente vom Bauelementty­ pen b ∈ E angibt,
  • 2. cp, p ∈ P, eine vorgebbare Schranke, durch deren Variation die Folge von Flußproblemen gebildet wird, bezeichnet wird,
  • 3. eine erste Lösungsvariable xbp angibt, wie viele Bauelemen­ te vom Bauelementtypen b ∈ B durch eine Pipette der Pipet­ tenart p ∈ P gesetzt werden.
20. Vorrichtung nach Anspruch 14, bei der die Prozessor derart eingerichtet ist, daß
  • 1. für den Fall, daß die zulässige Ordnung nicht existiert, geprüft wird, ob für mögliche Zuordnungen der Bauelementtypen zu den Pipettenarten gemäß der Zuordnungsliste eine Menge von Bäumen mit den Pipettenarten als Knoten der Bäume ermittelt werden kann, so daß jeder von einer Menge von Pipettenarten P(b), die ein Bauelement b setzen können, induzierte Teil­ graph der Menge der Bäume zusammenhängend ist.
  • 2. wenn eine solche Menge von Bäumen nicht ermittelt werden kann, die zu ermittelnde Lösung durch Lösen eines linearen Programms ermittelt wird, als das die möglichen Zuordnungen formuliert werden.
21. Vorrichtung nach Anspruch 14, bei der die Prozessor derart eingerichtet ist, daß das linea­ re Programm gemäß folgender Vorschriften gebildet wird:
wobei
  • 1. nb eine Zahl der zu setzenden Bauelemente vom Bauelementty­ pen b ∈ E angibt,
  • 2. eine erste Lösungsvariable xbp angibt, wie viele Bauelemen­ te vom Bauelementtypen b ∈ E durch eine Pipette der Pipet­ tenart p ∈ P gesetzt werden,
  • 3. eine zweite Lösungsvariable yp angibt, wie viele Pipetten der Pipettenart p ∈ P ausgewählt werden,
  • 4. k eine Zahl von Segmenten des Bestückungskopfs bezeichnet,
  • 5. x, y ≧ 0, ganzzahlig ist.
22. Vorrichtung nach Anspruch 21, bei der die Prozessor derart eingerichtet ist, daß das linea­ re Programm unter Verwendung eines Branch-and-Cut-Verfahrens gelöst wird.
23. Vorrichtung nach einem der Ansprüche 13 bis 22, bei der die Prozessor derart eingerichtet ist, daß das Ver­ fahren mehrmals für jeweils eine unterschiedliche Zyklenzahl durchgeführt wird.
24. Bestückungsautomat mit einer Vorrichtung nach einem der Ansprüche 13 bis 23,
mit einem Bauelementespeicher für die Bauelemente,
mit einem Bestückungskopf zur Aufnahme von Pipetten,
mit mindestens einer Pipette zur Aufnahme der Bauelemente,
mit einer Bestückungseinrichtung zum Bestücken der Bauelemen­ te auf einer Leiterplatte.
DE19838595A 1998-08-25 1998-08-25 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 Withdrawn DE19838595A1 (de)

Priority Applications (8)

Application Number Priority Date Filing Date Title
DE19838595A DE19838595A1 (de) 1998-08-25 1998-08-25 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
CNB998125938A CN1196398C (zh) 1998-08-25 1999-08-13 用于计算机辅助选择吸移管的方法和设备
KR1020017002456A KR20010072999A (ko) 1998-08-25 1999-08-13 자동 배치 머신의 배치 헤드의 컴퓨터 이용 피펫 선택 및선택된 피펫 타입에 대한 부품 할당을 위한 방법 및 장치
US09/763,460 US6678947B1 (en) 1998-08-25 1999-08-13 Method and device for computer assisted selection of suction nozzles
EP99952388A EP1116425B1 (de) 1998-08-25 1999-08-13 Verfahren und vorrichtung zur rechnergestützten pipettenauswahl für einen bestückungskopf und zur zuordnung von bauelementen zu den in einer pipettenauswahl vorgegebenen pipettenarten
DE59911012T DE59911012D1 (de) 1998-08-25 1999-08-13 Verfahren und vorrichtung zur rechnergestützten pipettenauswahl für einen bestückungskopf und zur zuordnung von bauelementen zu den in einer pipettenauswahl vorgegebenen pipettenarten
JP2000567063A JP2002524842A (ja) 1998-08-25 1999-08-13 自動装着装置の実装ヘッドに対する、コンピュータ支援されたピペット選択、およびピペット選択で設定されるピケット形式への構成素子の割り当てを行う方法および装置
PCT/DE1999/002536 WO2000011923A2 (de) 1998-08-25 1999-08-13 Verfahren und vorrichtung zur rechnergestützten pipettenauswahl für einen bestückungskopf

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19838595A DE19838595A1 (de) 1998-08-25 1998-08-25 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

Publications (1)

Publication Number Publication Date
DE19838595A1 true DE19838595A1 (de) 2000-03-23

Family

ID=7878652

Family Applications (2)

Application Number Title Priority Date Filing Date
DE19838595A Withdrawn DE19838595A1 (de) 1998-08-25 1998-08-25 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
DE59911012T Expired - Fee Related DE59911012D1 (de) 1998-08-25 1999-08-13 Verfahren und vorrichtung zur rechnergestützten pipettenauswahl für einen bestückungskopf und zur zuordnung von bauelementen zu den in einer pipettenauswahl vorgegebenen pipettenarten

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE59911012T Expired - Fee Related DE59911012D1 (de) 1998-08-25 1999-08-13 Verfahren und vorrichtung zur rechnergestützten pipettenauswahl für einen bestückungskopf und zur zuordnung von bauelementen zu den in einer pipettenauswahl vorgegebenen pipettenarten

Country Status (7)

Country Link
US (1) US6678947B1 (de)
EP (1) EP1116425B1 (de)
JP (1) JP2002524842A (de)
KR (1) KR20010072999A (de)
CN (1) CN1196398C (de)
DE (2) DE19838595A1 (de)
WO (1) WO2000011923A2 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009013353B3 (de) * 2009-03-16 2010-10-07 Siemens Aktiengesellschaft Verfahren zur Bestimmung von Rüstungen für konstante Tische von Bestückautomaten
DE102009039988A1 (de) * 2009-09-03 2011-03-17 Siemens Aktiengesellschaft Verfahrwege für Lackierroboter

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7546255B2 (en) * 2000-03-31 2009-06-09 International Business Machines Corporation Inventory system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2479641A1 (fr) * 1980-03-25 1981-10-02 Numergo Sa Atelier flexible permettant la digitalisation et le cablage de circuits electroniques hybrides
JP3474682B2 (ja) * 1995-08-07 2003-12-08 松下電器産業株式会社 実装部品振り分け方法及び実装設備
JP3504394B2 (ja) * 1995-09-08 2004-03-08 松下電器産業株式会社 部品配列のデータ作成方法
JPH10190299A (ja) * 1996-12-20 1998-07-21 Matsushita Electric Ind Co Ltd 電子部品実装ライン及び電子部品実装方法
JP3245081B2 (ja) * 1997-02-04 2002-01-07 松下電器産業株式会社 電子部品実装機

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102009013353B3 (de) * 2009-03-16 2010-10-07 Siemens Aktiengesellschaft Verfahren zur Bestimmung von Rüstungen für konstante Tische von Bestückautomaten
US8793008B2 (en) 2009-03-16 2014-07-29 Siemens Aktiengesellschaft Method for determining fittings for constant tables of automatic placement machines
DE102009039988A1 (de) * 2009-09-03 2011-03-17 Siemens Aktiengesellschaft Verfahrwege für Lackierroboter

Also Published As

Publication number Publication date
WO2000011923A2 (de) 2000-03-02
JP2002524842A (ja) 2002-08-06
DE59911012D1 (de) 2004-12-09
CN1324559A (zh) 2001-11-28
EP1116425B1 (de) 2004-11-03
KR20010072999A (ko) 2001-07-31
CN1196398C (zh) 2005-04-06
US6678947B1 (en) 2004-01-20
WO2000011923A3 (de) 2000-04-20
EP1116425A2 (de) 2001-07-18

Similar Documents

Publication Publication Date Title
DE102006037162B4 (de) Verfahren und Vorrichtung und deren Verwendung zur Prüfung des Layouts einer elektronischen Schaltung
DE1538604B2 (de) Verfahren zum realisieren einer elektrischen integrierten schaltung
DE10240877A1 (de) Fehlerklassifikations-/Inspektions-System
DE4325095A1 (de) Verfahren und Vorrichtung zur verzögerten Baugruppenbestimmung
DE69532307T2 (de) Ausdrucks-Propagierung für hierarchisches Netzlisten
DE3106727A1 (de) &#34;verfahren und vorrichtung zum automatischen pruefen elektrischer und elektronischer schaltkreise&#34;
DE102012221259A1 (de) Optimieren von Rüstfamilien
DE3940302A1 (de) Erweiterung der moeglichkeiten, rom code dem speicherbereich eines computers zuzuordnen
DE2912073C2 (de)
DE4136061A1 (de) Leiterplatten-pruefsystem
DE19838595A1 (de) 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
DE19963493A1 (de) Verfahren und System zur Prüfmuster-Erzeugung sowie rechnerlesbares Medium, welches das System zur Durchführung des Verfahrens anweist
EP0206214B1 (de) Verfahren zur einheitlichen symbolischen Beschreibung von Dokumentenmustern in Form von Datenstrukturen in einem Automaten
DE60026527T2 (de) Robot-vor-positionierung in einem chip-herstellungssystem
DE10115280C2 (de) Verfahren zum Klassifizieren von Bauelementen
DE10129654B4 (de) Verfahren, Vorrichtung und Computerprogramm-Produkt zum Ermitteln von Auswirkungen von Konstruktionsänderungen
DE10206658B4 (de) Verfahren zum Überprüfen einer integrierten elektrischen Schaltung
DE102019218448A1 (de) Testen von Kombinationen aus Software und Hardware
DE102011082838A1 (de) Identifikation wiederverwendbarer mechatronischer Komponenten in der Fabrikautomation
EP0126896B1 (de) Hybrid-Assoziativspeicher, bestehend aus einem nicht assoziativen Basisspeicher und einer assoziativen Oberfläche
DE69822658T2 (de) Vorrichtung und verfahren zur redundanz-zuordnung bei einem speicher
DE10262424B3 (de) Verfahren zum Testen einer digitalen Schaltung
DE102022117160A1 (de) Computerimplementiertes Verfahren zum Konfigurieren eines virtuellen Testsystems und Trainingsverfahren
DE102005008622A1 (de) Verfahren und Vorrichtung, die kontextabhängige Testzahlfaktoren zum Zuweisen von Testzahlen verwenden
EP0220467A1 (de) Verfahren zur einheitlichen symbolischen Beschreibung von Dokumentmustern in einem Automat

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8139 Disposal/non-payment of the annual fee