WO2024132471A1 - System and method for providing a painting program for coating circuit boards - Google Patents

System and method for providing a painting program for coating circuit boards Download PDF

Info

Publication number
WO2024132471A1
WO2024132471A1 PCT/EP2023/084098 EP2023084098W WO2024132471A1 WO 2024132471 A1 WO2024132471 A1 WO 2024132471A1 EP 2023084098 W EP2023084098 W EP 2023084098W WO 2024132471 A1 WO2024132471 A1 WO 2024132471A1
Authority
WO
WIPO (PCT)
Prior art keywords
painting
assembly
coating
unit
program
Prior art date
Application number
PCT/EP2023/084098
Other languages
German (de)
French (fr)
Inventor
Moritz Fischle
Oliver Lohse
Julien Raphael Mrowka
Sven Pihale
Original Assignee
Siemens Aktiengesellschaft
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 Aktiengesellschaft filed Critical Siemens Aktiengesellschaft
Publication of WO2024132471A1 publication Critical patent/WO2024132471A1/en

Links

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/0005Apparatus or processes for manufacturing printed circuits for designing circuits by computer
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B05SPRAYING OR ATOMISING IN GENERAL; APPLYING FLUENT MATERIALS TO SURFACES, IN GENERAL
    • B05BSPRAYING APPARATUS; ATOMISING APPARATUS; NOZZLES
    • B05B12/00Arrangements for controlling delivery; Arrangements for controlling the spray area
    • B05B12/08Arrangements for controlling delivery; Arrangements for controlling the spray area responsive to condition of liquid or other fluent material to be discharged, of ambient medium or of target ; responsive to condition of spray devices or of supply means, e.g. pipes, pumps or their drive means
    • B05B12/12Arrangements for controlling delivery; Arrangements for controlling the spray area responsive to condition of liquid or other fluent material to be discharged, of ambient medium or of target ; responsive to condition of spray devices or of supply means, e.g. pipes, pumps or their drive means responsive to conditions of ambient medium or target, e.g. humidity, temperature position or movement of the target relative to the spray apparatus
    • B05B12/122Arrangements for controlling delivery; Arrangements for controlling the spray area responsive to condition of liquid or other fluent material to be discharged, of ambient medium or of target ; responsive to condition of spray devices or of supply means, e.g. pipes, pumps or their drive means responsive to conditions of ambient medium or target, e.g. humidity, temperature position or movement of the target relative to the spray apparatus responsive to presence or shape of target
    • 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
    • H05K2201/00Indexing scheme relating to printed circuits covered by H05K1/00
    • H05K2201/09Shape and layout
    • H05K2201/09818Shape or layout details not covered by a single group of H05K2201/09009 - H05K2201/09809
    • H05K2201/09872Insulating conformal coating
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K2201/00Indexing scheme relating to printed circuits covered by H05K1/00
    • H05K2201/09Shape and layout
    • H05K2201/09818Shape or layout details not covered by a single group of H05K2201/09009 - H05K2201/09809
    • H05K2201/0989Coating free areas, e.g. areas other than pads or lands free of solder resist
    • 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/07Treatments involving liquids, e.g. plating, rinsing
    • H05K2203/0756Uses of liquids, e.g. rinsing, coating, dissolving
    • H05K2203/0759Forming a polymer layer by liquid coating, e.g. a non-metallic protective coating or an organic bonding layer
    • 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/0091Apparatus for coating printed circuits using liquid non-metallic coating compositions
    • 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/282Applying non-metallic protective coatings for inhibiting the corrosion of the circuit, e.g. for preserving the solderability
    • 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

Definitions

  • the present invention relates to a system for providing a coating program for coating circuit boards, which are equipped with electronic components of an assembly, with a protective coating by means of a coating machine. Furthermore, the present invention relates to a computer-implemented method for providing the coating program.
  • a protective coating is applied which provides a coating for the various electronic components of an assembly that is installed on the printed circuit board.
  • This coating serves to provide better protection for the printed circuit boards against corrosion, dirt, pollutants and other environmental influences.
  • the protective coating can have a flame-retardant effect to enable the use of electronic devices that include the printed circuit boards in explosion-proof areas such as refineries.
  • the coating is carried out using a coating machine which applies the protective coating selectively using a movable nozzle.
  • a coating machine which applies the protective coating selectively using a movable nozzle.
  • this is currently done manually, i.e. the individual positions of the painting areas on a populated circuit board must be approached using the nozzle under the supervision of an operator.
  • the positions approached are then saved in a painting program which outputs the information about the various painting areas and the painting paths that should be followed when coating the circuit board to the coating machine.
  • the painting areas vary from circuit board to circuit board, which is why a specific painting program must be created for each individual circuit board.
  • This traditional procedure is, because it is carried out manually, in many cases inaccurate and error-prone. Furthermore, this traditional manual procedure is time-consuming. Since some coating machines have to be stopped during the painting program creation, the downtime or idle time of these coating machines increases with each new painting program that has to be created.
  • the system according to the invention serves to provide a painting program for the coating of an electronically see components, conductor tracks and electronic contact surfaces of an assembly populated circuit board with a protective varnish by a coating machine and comprises an input unit which is set up to read in data from a stored 3D model of the assembly; a painting area identification unit which is set up to automatically identify painting areas of the respective electronic components and/or the conductor tracks and/or the electronic contact surfaces of the assembly based on the read-in data of the assembly; a painting path determination unit which is set up to automatically determine at least one painting path for coating at least the electronic component of the assembly based on the identified painting areas; a computing unit which is set up to create the painting program based on the identified painting areas and the determined painting path; and an output unit which is arranged to output the painting program created by the computing unit to the coating machine .
  • the electronic components of an assembly can include resistors, transistors, capacitors, inductors, diodes, integrated circuits or chips, and any electronic component that can be installed on a circuit board.
  • the conductor tracks describe electrically conductive connections between the electronic components.
  • the conductor tracks could, for example, be made of copper.
  • the electronic contact surfaces are areas on the circuit board to which the electronic components are soldered or glued.
  • the electronic contact surfaces can, for example, consist of a nickel layer that is chemically gold-plated.
  • the data from a 3D model includes at least the positions of the electronic components installed on the circuit board.
  • the 3D model can be generated using a conventional computer-aided design (CAD) program and/or a computer-aided manufacturing (CAM) program.
  • CAD computer-aided design
  • CAM computer-aided manufacturing
  • the coating areas describe the areas of the circuit board assembly that need to be coated with a protective coating.
  • the coating paths describe the coating sequence that the nozzles of the coating machine will follow to paint or coat the coating areas with a protective coating.
  • the painting program is a software that contains information about the painting areas and the painting paths, which can be processed and executed by a data processing unit of the coating machine.
  • a coating machine is a machine that can perform the coating of electronic components on a circuit board.
  • the coating machine can be equipped to perform various types of coating, including conformal coating, potting, dispensing, jetting, film coating and/or spraying.
  • Materials such as silicone, acrylic, urethane and epoxy can be used with conformal coating.
  • the various units generally comprise devices and computer programs that can receive, process and evaluate data.
  • the units are connected to each other by cable and/or wirelessly in order to be able to exchange signals. Therefore, the units comprise at least one central processing unit (CPU) and/or at least one graphics processing unit (GPU) and/or at least one field programmable gate array (FPGA) and/or at least one application specific integrated circuit (ASIC) and/or any combination of the aforementioned elements.
  • Each element can further comprise a working memory that can operate operatively connected to the at least one CPU, and/or a non-volatile memory operatively connected to the at least one CPU and/or the memory.
  • Each element may be partially and/or fully implemented in a local device and/or partially and/or fully implemented in a remote system, such as a cloud computing platform.
  • the various units may be implemented in hardware and/or software, wired and/or wireless, and any combination thereof. They may further comprise an interface to an intranet or the Internet, to a cloud computing service, to a remote server, and/or the like.
  • the painting area identification unit, the painting path determination unit and the computing unit can execute software, an app or an algorithm with different data processing capabilities.
  • the input unit and the output unit can in particular comprise an interface, for example an Application Programming Interface (API), so that they can in particular read in the 3D models of the assembly and output the painting program.
  • API Application Programming Interface
  • a large number of devices are connected to a cloud computing system via the Internet.
  • the devices may be located in a remote facility that is connected to the cloud computing system.
  • the devices may, for example, include or consist of devices, sensors, actuators, robots and/or machines in one or more industrial facilities.
  • the devices may be household appliances or office equipment in a residential/commercial facility.
  • the cloud computing system can enable remote configuration, monitoring, control and maintenance of the connected en devices (also commonly referred to as "assets").
  • the cloud computing system can facilitate the storage of large amounts of data regularly collected from the devices, analysis of the large amounts of data, and provision of insights (e.g., performance indicators, outliers) and alerts to operators, field engineers, or owners of the devices through a graphical user interface (e.g., web applications).
  • the insights and alerts can enable control and maintenance of the devices, resulting in efficient and fail-safe operation of the devices.
  • the cloud computing system can also enable modification of parameters associated with the devices and issue control commands, based on the insights and alerts, through the graphical user interface.
  • the cloud computing system may comprise a plurality of servers or processors (also referred to as “cloud infrastructure”) that are geographically distributed and interconnected via a network.
  • a special platform (hereinafter referred to as “cloud computing platform”) is installed on the servers/processors, which provides the above-mentioned functions as a service (hereinafter referred to as “cloud service”).
  • the cloud computing platform may comprise a plurality of software programs that run on one or more servers or processors of the cloud computing system to enable the provision of the requested service to the devices and their users.
  • One or more APIs are used in the cloud computing system to offer various cloud services to users.
  • the invention further provides a computer-implemented method for providing a coating program for coating a component equipped with electronic components, conductor tracks and electronic contact surfaces of an assembly.
  • Printed circuit board with a protective varnish by a coating machine with the steps: (a) reading in data from a stored 3D model of the assembly; (b) automatically identifying, based on the read-in data of the assembly, painting areas of the respective electronic components and/or the conductor tracks and/or the electronic contact surfaces of the assembly; (c) automatically determining, based on the identified painting areas, at least one painting path for coating at least the electronic components of the assembly; (d) creating, based on the identified painting areas and the determined painting path, the painting program; and (e) outputting the created painting program to the coating machine.
  • the computer-implemented method according to the second aspect of the invention can be carried out with the system according to the first aspect of the invention.
  • the features and advantages described herein in connection with the system are therefore also applicable to the method and vice versa.
  • the invention further provides a computer program product comprising an executable program code which, when executed, is adapted to carry out the method according to the second aspect of the present invention.
  • the invention provides a non-transitory computer-readable data storage medium comprising an executable program code which, when executed, is adapted to carry out the method according to the second aspect of the present invention.
  • the non-volatile, computer-readable data storage medium can comprise or consist of any type of computer memory, in particular a semiconductor memory, such as a solid-state memory.
  • the data storage medium can also comprise or consist of a CD, a DVD, a Blu-ray disc, a USB memory stick or the like.
  • the invention provides a data stream which comprises an executable program code or is adapted to generate such a code and which is adapted to carry out the method according to the second aspect of the present invention when executed.
  • a sixth aspect of the invention comprises a CAD/CAM system with a data processing unit for carrying out the computer-implemented method according to the second aspect of the invention, wherein the CAD/CAM system is designed to generate a 3D model of a circuit board populated with electronic components of an assembly.
  • One idea underlying the invention is to introduce a system for providing a painting program for coating the electronic components, the conductor tracks and the electronic contact surfaces of a circuit board, whereby the painting program is provided automatically.
  • the system is set up to use or evaluate three-dimensional data of the assembly in order to identify the various painting areas and to determine an optimal painting path.
  • a computing unit is designed to process this information as a software program that is used by the coating machine to carry out the painting of the circuit board.
  • the system described above advantageously enables implementation of a computer-implemented method for providing a coating program for coating the electronic components, the conductor tracks and the electronic contact surfaces of a printed circuit board assembly.
  • a coating program for coating the electronic components, the conductor tracks and the electronic contact surfaces of a printed circuit board assembly.
  • three-dimensional data from the various electronic components of a printed circuit board assembly are read in.
  • the data are then processed to determine the coating areas of the respective electronic components, the conductor tracks and the electronic to automatically identify (or determine) the contact areas of the assembly.
  • an optimal painting path is determined to implement or execute the painting.
  • the information about the painting areas and the painting path is created as a painting software program.
  • the program is output to the coating machine to execute the painting of the circuit board.
  • An advantage of the present invention is that the preparation of the painting program is completely automatic.
  • the data from the 3D model is processed in particular for the identification of the painting areas and for the determination of the painting path.
  • Manual identification of the painting areas and manual painting path definition is no longer necessary. Narrow areas of the assembly that are difficult to reach with a nozzle can be precisely identified with the present invention. This enables quick and precise preparation of the coating of a circuit board.
  • a further advantage of the invention is that the painting program is output to the coating machine. This means that the coating machine does not have to be stopped, since programming is no longer done manually at a user interface on the coating machine. The downtime of the coating machine is therefore significantly reduced.
  • the read-in data include at least the geometric dimensions of the electronic components of the assembly.
  • the geometry of the various electronic components can be obtained from a CAD and/or CAM software program. Manual area identification is therefore not necessary. necessary.
  • the 3D model of the assembly and the components it contains can advantageously be supplied by the manufacturer of the circuit board.
  • the input unit is further configured to read information stored on the electronic components themselves.
  • This information includes the electronic properties of the electronic components (e.g. resistance values for resistors, capacitance values for capacitors or inductance values for inductors) as well as information about the painting requirements of the respective electronic components, e.g. which parts of the components should be painted and how much protective paint should be applied there.
  • temperature limit values of a component or existing corrosion protection of a component can also be used as information in order to determine the amount of protective paint required per area of each painting area.
  • the painting path determination unit comprises an operation unit which is designed to provide predefined operation types for determining the painting path.
  • These predefined operation types can comprise provisions which are known from experience. For example, according to one operation type, the various painting areas could be painted in a predefined order.
  • the system further comprises a validation unit which is configured to validate the identified painting areas and/or the determined painting path based on a simulation of a layer thickness and/or a layer distribution of the protective paint specified by the created painting program.
  • the validation of the painting areas and the painting path is a measure to test the determined painting program before it is output to the coating machine. Errors or inaccuracies can be corrected and eliminated.
  • the painting path determination unit implements an algorithm that is set up to calculate the painting path, at least with regard to a travel path and/or with regard to a sequence, taking into account defined detours and/or safety distances.
  • the algorithm can be used in the form of a plug-in.
  • the various process parameters comprise or define a possible target function, e.g. the painting path length of the painting path, which is to be minimized. Boundary conditions such as the potential detours of components and/or safety distances to components can be recorded by the input unit.
  • the algorithm links the various painting path parts or painting path sections with one another in order to provide an optimal overall painting path.
  • the painting path determination unit comprises an optimization unit which is configured to implement an artificial intelligence module, wherein the artificial intelligence module optimizes the algorithm.
  • Artificial intelligence refers to a computer-based entity capable of implementing various data analysis methods, commonly referred to as artificial intelligence, machine learning, deep learning or computational learning.
  • the artificial intelligence module implements at least one artificial intelligence model, which is a multilayer perceptron network (MLP), a recurrent neural network (RNN), a LSTM network (Long Short Memory), a convolutional neural network (CNN) or another neural network.
  • MLP multilayer perceptron network
  • RNN recurrent neural network
  • LSTM Long Short Memory
  • CNN convolutional neural network
  • the artificial intelligence module can use the layer thicknesses and layer distributions of the coating of the respective electronic components as input to continuously optimize the algorithm and the necessary parameters through the artificial intelligence model.
  • the system further comprises a translation unit which is designed to translate the created painting program into a readable data format for the coating machine.
  • the creation of the painting path must be implemented in a format that the painting software of the coating machine can process.
  • one or more postprocessors can be selected to carry out this transformation.
  • painting software independence can be achieved, so that the system of the invention can be made available for any coating machine or painting software manufacturer.
  • the system further comprises a painting program storage unit which is designed to store the created painting program.
  • a painting program storage unit which is designed to store the created painting program.
  • the system further comprises a database unit which is designed to store the read-in data of the assembly and to keep it available for reading from there.
  • the database unit can, for example, be a centralized product data It can be a product management (PDM) system such as Teamcenter in which the component data is maintained.
  • PDM product management
  • a main goal of the PDM system is to provide traceability of information about the various electronic components of the assemblies of a printed circuit board. This stored information includes, for example, component information and component dimensions with respect to the components of the assembly. This makes it possible to store computer-aided design (CAD) data of the components together with metadata of the components (e.g. documentation or instructions from the manufacturer). All of the information is available for reuse and can be changed and retrieved under version control.
  • CAD computer-aided design
  • the system further comprises a simulation unit which is designed to create a simulation of the coating of the assembly by the coating machine based on the created painting program.
  • the painting sequence can thus be simulated in advance in a CAD/CAM software environment in which the coating machine is integrated.
  • units Although some functions are described here and below as being performed by units, this does not necessarily mean that these units are provided as separate units from each other. In cases where one or more units or even a part thereof are provided as software, the units may be implemented by program code sections or program code segments that may be separate from each other, but may also be interwoven or integrated with each other.
  • one or more units are provided as hardware
  • the functions of one or more units may be provided by one and the same hardware component, or the functions of several units may be distributed across several hardware components that do not necessarily have to correspond to the units. It is therefore to be assumed that any application, system, procedure, etc. that has all the features and functions attributed to a particular unit comprises or implements that unit. In particular, it is possible that all units are implemented by program code executed by, for example, a server or a cloud computing platform.
  • Fig. 1 shows a system for providing a coating program for coating a circuit board equipped with electronic components of an assembly according to an embodiment of the invention
  • Fig. 2 is a schematic block diagram illustrating the sequence of a computer-implemented method for providing a coating program for coating a circuit board populated with electronic components of an assembly according to an embodiment of the invention
  • Fig. 3 is a schematic flow diagram illustrating the sequence of a computer-implemented method for providing a coating program for coating a circuit board populated with electronic components of an assembly according to a further embodiment of the invention
  • Fig. 4 is a graphical representation of the 3D model of a circuit board populated with electronic components of an assembly, generated by a CAD/CAM software;
  • Fig. 5 is a representation of the identified coating areas of a circuit board populated with electronic components of an assembly according to an embodiment of the invention
  • Fig. 6 is a representation of a circuit board equipped with electronic components of an assembly according to an embodiment of the invention, in which safety distances that must be taken into account for the painting path calculation are marked.
  • Fig. 7 shows a CAD/CAM system comprising a data processing unit for carrying out the computer-implemented method according to the second aspect of the invention, wherein the CAD/CAM system is designed to generate a 3D model of a circuit board populated with electronic components of an assembly;
  • Fig. 8 is a schematic block diagram illustrating a computer program product according to an embodiment of the third aspect of the present invention.
  • Fig. 9 is a schematic block diagram showing a non-transitory computer-readable data storage medium according to an embodiment of the fourth aspect of the present invention.
  • Fig. 1 shows a system 100 for providing a coating program for coating a printed circuit board LP equipped with electronic components of an assembly according to an embodiment of the invention.
  • the system 100 comprises an input unit 10, a painting area identification unit 20, a painting path determination unit 30, a computing unit 40, a validation unit 42, a translation unit 44, a painting program storage unit 46, an output unit 50, a database unit 60 and a simulation unit 70.
  • the input unit 10 is designed to read data DO from a stored 3D model of the electronic components of an assembly that are installed on a printed circuit board LP.
  • the input unit 10 can comprise at least a CPU, a data memory and an interface, for example an Application Programming Interface (API).
  • the data DO can be generated, for example, by a CAD/CAM program and stored in a data storage medium (not shown in Fig. 1).
  • the API can be connected to the data storage medium wirelessly and/or with a cable.
  • the painting area identification unit 20 is set up to automatically identify the painting areas of the respective electronic components, the conductor tracks and the electronic contact surfaces of the assembly using the read-in data D0 of the assembly.
  • the basis for identifying the painting areas is the information stored for the corresponding electronic components installed on the circuit board, as well as their dimensions. Since all the required information is known, the painting areas are identified automatically.
  • the painting area identification unit 20 comprises at least one CPU and a data memory, which can execute executable programs, in particular an algorithm. The algorithm can process the information in order to identify the painting areas automatically, i.e. without manual operation.
  • Some components of the assembly can store data that can be read out to identify them and/or to identify the painting areas of the components.
  • Other components have markings or prints that allow the components and/or the painting areas to be identified, for example by means of a sensor.
  • Another group of possible components of the assembly has a typical housing shape that allows identification of the components and/or the painting areas of the components with the help of an optical sensor.
  • the coating areas include surfaces of the components of the assembly, which are to be coated with a preferably electrically insulating protective coating, as well as surfaces of the circuit board populated with components that are to be coated.
  • the protective coating used to coat the coating areas is preferably transparent.
  • Different protective coatings can be used for different painting areas. However, the same protective coating is usually used for painting the entire assembly.
  • an assembly can also include electromechanical components or mechanical components, for example holding elements for electronic components.
  • the protective coating applied serves to protect the components from mechanical influences or from the effects of radiation.
  • the protective coating applied can also serve to electrically insulate the components.
  • the painting path determination unit 30 is set up to determine a painting path based on the identified painting areas.
  • the painting path determination unit 30 comprises at least one CPU, a data memory and a data processing processor, which can execute executable programs, in particular an algorithm (painting path algorithm).
  • the information about the painting areas and defined geometric boundary conditions e.g. information about necessary detours or safety distances to the various electronic components, can be used as input by the painting path algorithm.
  • the painting path determination unit 30 comprises an operation unit 310 which is set up to provide predefined operation types for determining the painting path.
  • an operation type can specify that when painting the components of the assembly, all electrical resistors should first be painted as components of the assembly.
  • Such operation types can be used by the algorithm as input and represent boundary conditions in the automatic calculation of the painting path.
  • Fig. 1 shows an optimization unit 320, which is included in the painting path determination unit 30.
  • the optimization unit 320 is designed to implement an artificial intelligence module.
  • the artificial intelligence module can use the layer thicknesses and the layer distributions of the paint of the respective electronic components as input in order to continuously optimize the painting path algorithm and the necessary parameters by the artificial intelligence module.
  • the artificial intelligence module implements an artificial intelligence model, such as a multilayer perceptron network (MLP), a recurrent neural network (RNN), a long short memory (LSTM) network, a convolutional neural network (CNN), or another neural network.
  • MLP multilayer perceptron network
  • RNN recurrent neural network
  • LSTM long short memory
  • CNN convolutional neural network
  • the computing unit 40 is set up to automatically create a painting program based on the identified painting areas and the determined painting path.
  • the computing unit 40 comprises at least one CPU and a data memory.
  • the painting program encodes the information about the painting areas, the linking of painting paths or partial painting paths and the layer thickness and layer distribution of the applied protective paint for the respective electronic components of the assembly.
  • Fig. 1 also shows a validation unit 42, a translation unit 44 and a painting program storage unit 46.
  • the validation unit 42 is set up to validate the identified painting areas and/or the determined painting path. Errors or inaccuracies can be detected and eliminated for this purpose.
  • the validation is carried out by simulating a layer thickness specified by the created painting program and the layer distribution of the protective paint.
  • the validation unit 42 comprises at least one CPU and an interface with a display, through which the simulation can be visualized for an operator.
  • the translation unit 44 is used to translate the created painting program into a readable data format for the coating machine BM.
  • the created painting path must be converted into a format that the painting software of the coating machine BM can process.
  • the translation unit 44 can include several postprocessors in order to convert the painting program into different data formats. By providing several postprocessors, painting software independence can be achieved, so that the system of the invention can be provided for any coating machine BM or painting software manufacturer.
  • the painting program storage unit 46 is configured to store the created painting program for each circuit board to be coated.
  • the painting program storage unit 46 serves as a program library in which the various painting programs are stored. From there, the various painting programs can be retrieved and used as needed.
  • the painting program storage unit 46 may be a data storage medium, such as a DVD. Alternatively, it may be located in a computer, a server, or a cloud platform.
  • Fig. 1 also shows an output unit 50 which is set up to output the created painting program to the coating machine BM.
  • the painting program which the output unit 50 transmits can come directly from the computing unit 40. Alternatively, the painting program can be transmitted to the coating machine BM after validation and/or translation.
  • the embodiment shown in Fig. 1 comprises a database unit 60 which serves to store the data DO of the electronic components of the assembly of the printed circuit board LP in order to provide traceability of the information about the electronic components of the assemblies of a printed circuit board LP.
  • the stored data DO comprise at least component information (documentation and/or instructions from the manufacturer) and the component dimensions derived from the 3D model. This also makes it possible to store computer-aided design (CAD) data. All of the information is available for reuse and can be changed under version control.
  • the database unit 60 can be a conventional data storage medium or can be implemented in a server and/or cloud platform. Furthermore, the database unit 60 can be a centralized product data management (PDM) system (e.g. Teamcenter) in which the data of the components is maintained.
  • PDM product data management
  • the simulation unit 70 is set up to generate a simulation, based on the created painting program, for the coating of the assembly by the coating machine BM.
  • the painting sequence of the coating can thus be simulated in advance in a CAD/CAM software environment in which the coating machine BM is included.
  • the simulation unit 70 comprises at least one CPU and an interface with a display, through which the simulation can be visualized for an operator or user.
  • the output unit 50 can comprise at least one CPU, a data memory and an interface, for example an Application Programming Interface (API).
  • API can be connected to a computing unit of the coating machine BM wirelessly and/or with a cable.
  • the coating program can be executed by the computer unit of the coating machine BM. This allows the coating of the printed circuit board LP equipped with electronic components of an assembly to be carried out.
  • Fig. 2 shows a schematic flow diagram of the sequence of a computer-implemented method for providing a coating program for coating a printed circuit board LP equipped with electronic components of an assembly according to an embodiment of the invention.
  • the method can advantageously be carried out with the system 100 of Fig. 1.
  • a step S 1 data is read from a stored 3D model of the electronic components of an assembly that are installed on a printed circuit board (LP).
  • the 3D model can be created by CAD/CAM software.
  • a step S2 the coating areas of the respective electronic components of the circuit board LP are automatically identified.
  • the data from the 3D model and technical data of the respective electronic components, as well as conductor tracks and electronic contact surfaces, are used as a basis for the identification.
  • a painting path for coating the electronic components of the assembly is determined.
  • an algorithm painting path algorithm
  • a painting program is automatically created based on the identified painting areas and the determined painting path.
  • a step S5 the created painting program is output to a coating machine BM, which coats the printed circuit board LP with paint, in particular with protective paint.
  • Fig. 3 shows a schematic block diagram of the sequence of a computer-implemented method for providing a coating program for coating a printed circuit board LP equipped with electronic components of an assembly according to a further embodiment of the invention.
  • the method can advantageously be carried out with the system 100 of Fig. 1.
  • a step S 1 data is read from a stored 3D model of the electronic components of an assembly that are installed on a printed circuit board LP.
  • a step S2 the coating areas of the respective electronic components of the printed circuit board LP are automatically identified.
  • a step S20 the read data of the assembly is saved and made available for reading.
  • the saving can be carried out, for example, by a centralized product data management (PDM) system such as Teamcenter.
  • PDM product data management
  • step S3 a painting path for coating the electronic components of the assembly is determined or calculated.
  • step S3 includes steps S30, S31 and S32.
  • predefined operation types are used to determine the painting path. Operation types are usually written based on experience and may contain instructions . Accordingly, according to an operation type, the different painting areas could, for example, be painted in a predefined order .
  • a painting path it is determined whether a painting path can be defined using the operation types. If a suitable painting path is found or determined (marked with a + in Fig. 3), the painting program is automatically created in a step S4. If, on the other hand, no painting path is found (marked with a - in Fig. 3), then in a step S32 a painting path algorithm is used to find a painting path. In a step S4 this painting program can be created automatically.
  • a step S41 the identified painting areas and/or the determined painting path are validated based on a simulation of a layer thickness and/or a layer distribution of the protective paint specified by the created painting program.
  • the validation can be carried out by an operator or user or can take place automatically.
  • a step S42 the created painting program is translated into a readable data format for the coating machine BM, for example by using one or more postprocessors.
  • a simulation of the coating of the assembly by the coating machine BM is created.
  • the created painting program is output via an interface to a coating machine BM, which carries out the coating of the circuit board LP.
  • the created painting program is saved, for example in a data storage medium. From there, the various programs can be called up and used again.
  • Fig. 4 shows, for example, a graphical representation of the 3D model of a printed circuit board LP equipped with electronic components of an assembly, which is generated by CAD/CAM software.
  • the printed circuit board LP can comprise diodes, transistors, resistors, induction coils, ICs or chips or capacitors 101. Particularly striking in the example shown are the capacitors 101 with which the printed circuit board LP is equipped.
  • Fig. 4 can, for example, be the result of a design that is displayed by a GPU.
  • the 3D model contains the three-dimensional coordinates (height, width and length) of all electronic components of the assembly. This data of the 3D model is read in by the input unit 10 of the system 100 according to the invention.
  • Fig. 5 shows, for example, a representation of the identified painting areas LB of a circuit board LP equipped with electronic components of an assembly according to an embodiment of the invention.
  • Fig. 5 shows a cross-section of the circuit board LP of Fig. 4.
  • the painting areas LB are derived automatically, i.e. without manual operation or activation by an operator, from the read-in data of the 3D model and based on information stored in the various electronic components.
  • Fig. 5 therefore concerns a graphic representation of the identification of the painting areas LB, which is carried out by the painting area identification unit 20. For each identified painting area LB there is corresponding information about the layer thickness required in each case and the layer distribution of the protective varnish.
  • Certain painting areas LB of the assembly BG can also be coated with several superimposed layers of protective paint, each with a corresponding layer thickness. preferably wait until the underlying layer has dried.
  • the nozzle of the BM coating machine can therefore move to certain spots or painting areas of the assembly several times according to the calculated painting path in order to apply more than one layer of paint there.
  • Fig. 6 shows a graphical representation of the circuit board LP from Fig. 5, in which safety distances SU are marked with dashed lines.
  • the painting path determination unit 30 implements a painting path algorithm which uses the information of the identified painting areas LB, together with the respective required layer thicknesses and layer distributions, as input.
  • an operation type can indicate or state that the capacitors should be coated first of all.
  • the capacitors form a component type of components within the assembly. Accordingly, the coating or painting of certain component types can be prioritized.
  • the determined painting path should meet the various criteria.
  • the thickness of the protective lacquer layer of each electronic component is another important criterion.
  • the determined painting path can take into account that, for example, those components of the assembly that require a larger amount of lacquer per area for painting are coated first. Finding or calculating an optimal painting path is particularly challenging when there are several boundary conditions or criteria that must be taken into account at the same time.
  • Fig. 6 shows, for example, some safety distances SU that define areas that should not be coated with protective lacquer. Some of these areas enclose electronic components that are not to be coated.
  • the automated determination of the Painting path has a clear advantage over manual painting path definition.
  • Fig. 7 shows a CAD/CAM system 500 comprising a data processing unit 600 for carrying out the computer-implemented method according to the second aspect of the invention, wherein the CAD/CAM system 500 is designed to generate a 3D model of a printed circuit board LP equipped with electronic components of an assembly.
  • the data processing unit 600 can be viewed as an add-on of the CAD/CAM system 500.
  • a CAD/CAM computing unit 520 is designed to generate a 3D model for the design of a printed circuit board LP.
  • the data of the 3D model are stored in a CAD/CAM data storage medium 520.
  • the printed circuit board LP can then be manufactured using the design.
  • the data processing unit 600 is designed to retrieve the data of the 3D model and to process it according to the method shown in Fig. 2 and/or in Fig. 3.
  • the data processing unit 600 is designed to provide a painting program and output it to a coating machine BM.
  • the coating machine BM can use the painting program to paint the electronic components of the assembled printed circuit board LP.
  • Fig. 8 shows a schematic block diagram illustrating a computer program product 300 according to an embodiment of the third aspect of the present invention.
  • the computer program product 300 comprises an executable program code 350 which, when executed, is configured to carry out the method according to any embodiment of the second aspect of the present invention, in particular as described in the previous figures.
  • Fig. 9 shows a schematic block diagram illustrating a non-transitory computer-readable data storage medium 400 according to an embodiment of the fourth aspect of the present invention.
  • the data storage medium 400 comprises an executable program code 450 which, when executed, is configured to carry out the method according to any embodiment of the second aspect of the present invention, in particular as described in the previous figures.
  • the non-volatile, computer-readable data storage medium can comprise or consist of any type of computer memory, in particular a semiconductor memory such as a solid-state memory.
  • the data storage medium can also comprise or consist of a CD, a DVD, a Blu-ray disc, a USB memory stick or the like.
  • the system according to the invention is characterized, among other things, by the following features:
  • Discrete 3D data from scanned deposition/removal profiles can be used directly without the need for analytical approximation.
  • the component surface is meshed with sufficient density to generate support points for the calculation of the painting path.
  • the discretization of the tool paths of a tool of the BM coating machine is preferably carried out automatically according to specified values for the time and spatial resolution.
  • the simulation preferably uses an optically based ray tracing approach to project the discrete deposition/removal profile onto the support points of the component surface.
  • the effect of the moving tool or tools of the BM coating machine can be recorded by summing small time steps.
  • the calculation of the painting path is preferably carried out in parallel in several threads.
  • process-specific effects e.g. reflection or scattering of impacting particles
  • process-specific effects e.g. reflection or scattering of impacting particles
  • the simulation can take into account additional process-dependent parameters (e.g. angle of impact, primary and secondary effects, number of passes, removal/application rate, average distance to the tool, etc.), which can be important for the final layer morphology or surface stress.
  • additional process-dependent parameters e.g. angle of impact, primary and secondary effects, number of passes, removal/application rate, average distance to the tool, etc.
  • thermal stress can also be recorded using suitable model assumptions. This data is available for setting up digital twins.
  • the method according to the invention can be used for various thermal spraying processes (APS, VPS, HVOF, Flash) on complex assemblies to optimize tool paths of a tool.
  • the deviations between the calculated and actual applied layer thickness of the protective coating are less than 10%, preferably less than 1%.

Landscapes

  • Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Application Of Or Painting With Fluid Materials (AREA)

Abstract

The invention relates to a system for providing a painting program for coating a circuit board, populated with electronic components, conductor tracks and electronic contact faces of an assembly, with a protective paint by a coating machine, comprising: an input unit which is configured to read in data from a stored 3D model of the assembly; a painting region identification unit which is configured to automatically identify painting regions of the respective electronic components and/or of the conductor tracks and/or electronic contact faces of the assembly based on the read-in data of the assembly; a painting path determination unit which is configured to automatically determine at least one painting path for coating at least the electronic component of the assembly based on the identified painting regions; a computing unit which is configured to create the painting program based on the identified painting regions and the determined painting path; and an output unit which is configured to output the painting program created by the computing unit to the coating machine.

Description

Beschreibung Description
System und Verfahren zur Bereitstellung eines Lackierprogramms für die Beschichtung von Leiterplatten System and method for providing a coating program for the coating of printed circuit boards
Die vorliegende Erfindung betri f ft ein System zur Bereitstellung eines Lackierprogramms für die Beschichtung von Leiterplatten, welche mit elektronischen Komponenten einer Baugruppe bestückt sind, mit einem Schutzlack durch eine Beschichtungsmaschine . Ferner bezieht sich die vorliegende Erfindung auf ein computerimplementiertes Verfahren zur Bereitstellung des Lackierprogramms . The present invention relates to a system for providing a coating program for coating circuit boards, which are equipped with electronic components of an assembly, with a protective coating by means of a coating machine. Furthermore, the present invention relates to a computer-implemented method for providing the coating program.
Bei der Anfertigung von Leiterplatten ist eine Lackierung mit einem Schutzlack vorgesehen, welche die verschiedenen elektronischen Komponenten einer Baugruppe , die auf der Leiterplatte verbaut ist , eine Beschichtung bereitstellt . Diese Beschichtung dient dazu, einen besseren Schutz für die Leiterplatten gegen Korrosion, Schmutz , Schadstof fe und andere Umwelteinflüsse zu bieten . Beispielsweise kann der Schutzlack flammhemmend wirken, damit den Einsatz von elektronischen Geräten, welche die Leiterplatten umfassen, in explosionsgeschützten Bereichen wie Raf finerien ermöglicht wird . When manufacturing printed circuit boards, a protective coating is applied which provides a coating for the various electronic components of an assembly that is installed on the printed circuit board. This coating serves to provide better protection for the printed circuit boards against corrosion, dirt, pollutants and other environmental influences. For example, the protective coating can have a flame-retardant effect to enable the use of electronic devices that include the printed circuit boards in explosion-proof areas such as refineries.
Die Beschichtung erfolgt mit einer Beschichtungsmaschine , welche mithil fe einer verfahrbaren Düse die Schutzbeschichtung selektiv auf trägt . Gemäß herkömmlichen Lackierungsverfahren geschieht dies momentan von Hand, d . h . die einzelnen Positionen der Lackierbereiche auf einer bestückten Leiterplatte müssen mit der Düse , unter der Aufsicht eines Bedieners , angefahren werden . Anschließend werden die angefahrenen Positionen in einem Lackierprogramm abgespeichert , welches die Information über die verschiedenen Lackierbereiche und die Lackierpfade , die bei der Beschichtung der Leiterplatte verfolgt werden sollten, an die Beschichtungsmaschine ausgibt . Die Lackierbereiche variieren von Leiterplatte zu Leiterplatte , weshalb für j ede einzelne Leiterplatte ein j eweiliges Lackierprogramm erstellt werden muss . The coating is carried out using a coating machine which applies the protective coating selectively using a movable nozzle. According to conventional painting processes, this is currently done manually, i.e. the individual positions of the painting areas on a populated circuit board must be approached using the nozzle under the supervision of an operator. The positions approached are then saved in a painting program which outputs the information about the various painting areas and the painting paths that should be followed when coating the circuit board to the coating machine. The painting areas vary from circuit board to circuit board, which is why a specific painting program must be created for each individual circuit board.
Diese herkömmliche Vorgehensweise ist , da sie manuell ausgeführt wird, in vielen Fällen ungenau und fehlerbehaftet . Weiterhin ist diese herkömmliche manuelle Vorgehensweise zeitaufwendig . Da manche Beschichtungsmaschinen während der Lackierprogrammerstellung gestoppt werden müssen, nimmt die Downtime bzw . Ruhezeit dieser Beschichtungsmaschinen mit j edem neuen Lackierprogramm, das erstellt werden muss , zu . This traditional procedure is, because it is carried out manually, in many cases inaccurate and error-prone. Furthermore, this traditional manual procedure is time-consuming. Since some coating machines have to be stopped during the painting program creation, the downtime or idle time of these coating machines increases with each new painting program that has to be created.
Da die Viel falt der Leiterplatten und darauf befindlichen Baugruppen sowie deren Anwendungsmöglichkeiten mit der Zeit zunehmen, wird eine automatisierte , verbesserte Vorgehensweise , die die Ruhezeit bzw . Downtime der Beschichtungsmaschinen verringert , benötigt . As the variety of printed circuit boards and the assemblies on them, as well as their possible applications, increases over time, an automated, improved approach that reduces the idle time or downtime of the coating machines is required.
Unabhängig vom grammatikalischen Geschlecht eines bestimmten Begri f fes sind Personen mit männlicher, weiblicher oder anderer Geschlechteridentität mit umfasst . Regardless of the grammatical gender of a particular term, persons with male, female or other gender identity are included.
Es ist daher eine Aufgabe der vorliegenden Erfindung, ein System und ein Verfahren zur Bereitstellung eines Lackierprogramms für die Beschichtung einer Leiterplatte , die mit elektronischen Komponenten einer Baugruppe bestückt wird, bereitzustellen, um eine verbesserte , präzise und ef fi ziente Lackierung zu ermöglichen, die insbesondere die Downtime einer Beschichtungsmaschine verringert . It is therefore an object of the present invention to provide a system and a method for providing a coating program for the coating of a printed circuit board which is equipped with electronic components of an assembly in order to enable improved, precise and efficient coating, which in particular reduces the downtime of a coating machine.
Die Aufgabe der vorliegenden Erfindung wird durch ein System mit den Merkmalen des Anspruchs 1 und ein computerimplementiertes Verfahren mit den Merkmalen des Anspruchs 12 gelöst . Bevorzugte Aus führungs formen der Erfindung mit vorteilhaften Merkmalen sind in den abhängigen Ansprüchen angegeben . The object of the present invention is achieved by a system having the features of claim 1 and a computer-implemented method having the features of claim 12. Preferred embodiments of the invention with advantageous features are specified in the dependent claims.
Das erfindungsgemäße System dient zur Bereitstellung eines Lackierprogramms für die Beschichtung einer mit elektroni- sehen Komponenten, Leiterbahnen und elektronischen Kontaktflächen einer Baugruppe bestückten Leiterplatte mit einem Schutzlack durch eine Beschichtungsmaschine und umfasst eine Eingabeeinheit , welche dazu eingerichtet ist , Daten von einem gespeicherten 3D-Modell der Baugruppe einzulesen; eine La- ckierbereiche- Identi f i zierungseinheit , welche dazu eingerichtet ist , basierend auf den eingelesenen Daten der Baugruppe , Lackierbereiche der j eweiligen elektronischen Komponenten und/oder der Leiterbahnen und/oder der elektronischen Kontaktflächen der Baugruppe automatisch zu identi fi zieren; eine Lackierpfad-Bestimmungseinheit , welche dazu eingerichtet ist , basierend auf den identi fi zierten Lackierbereichen, mindestens einen Lackierpfad für die Beschichtung zumindest der elektronischen Komponente der Baugruppe automatisch zu ermitteln; eine Recheneinheit , welche dazu eingerichtet ist , basierend auf den identi fi zierten Lackierbereichen und dem ermittelten Lackierpfad das Lackierprogramm zu erstellen; und eine Ausgabeeinheit , welche dazu eingerichtet ist , das von der Recheneinheit erstellte Lackierprogramm an die Beschichtungsmaschine aus zugeben . The system according to the invention serves to provide a painting program for the coating of an electronically see components, conductor tracks and electronic contact surfaces of an assembly populated circuit board with a protective varnish by a coating machine and comprises an input unit which is set up to read in data from a stored 3D model of the assembly; a painting area identification unit which is set up to automatically identify painting areas of the respective electronic components and/or the conductor tracks and/or the electronic contact surfaces of the assembly based on the read-in data of the assembly; a painting path determination unit which is set up to automatically determine at least one painting path for coating at least the electronic component of the assembly based on the identified painting areas; a computing unit which is set up to create the painting program based on the identified painting areas and the determined painting path; and an output unit which is arranged to output the painting program created by the computing unit to the coating machine .
Die elektronischen Komponenten einer Baugruppe können Widerstände , Transistoren, Kondensatoren, Induktivitäten, Dioden, integrierte Schaltungen bzw . Chips sowie j ede elektronische Komponente , die auf einer Leiterplatte verbaut werden kann, umfassen . The electronic components of an assembly can include resistors, transistors, capacitors, inductors, diodes, integrated circuits or chips, and any electronic component that can be installed on a circuit board.
Die Leiterbahnen beschreiben elektrisch leitende Verbindungen zwischen den elektronischen Komponenten . Die Leiterbahnen könnten beispielsweise aus Kupfer bestehen . The conductor tracks describe electrically conductive connections between the electronic components. The conductor tracks could, for example, be made of copper.
Die elektronischen Kontakt flächen sind Bereiche auf der Leiterplatte , auf denen die elektronischen Komponenten gelötet oder geklebt werden . Die elektronischen Kontakt flächen können beispielsweise aus einer Nickelschicht bestehen, die chemisch vergoldet wird . Die Daten von einem 3D-Modell umfassen mindestens die Positionen der auf der Leiterplatte verbauten elektronischen Komponenten . Das 3D-Modell kann mit einem herkömmlichen Computer- Aided Design ( CAD) Programm und/oder einem Computer-Aided Manufacturing ( CAM) Programm generiert werden . The electronic contact surfaces are areas on the circuit board to which the electronic components are soldered or glued. The electronic contact surfaces can, for example, consist of a nickel layer that is chemically gold-plated. The data from a 3D model includes at least the positions of the electronic components installed on the circuit board. The 3D model can be generated using a conventional computer-aided design (CAD) program and/or a computer-aided manufacturing (CAM) program.
Die Lackierbereiche beschreiben die Flächen der Baugruppe der Leiterplatte , die mit einem Schutzlack beschichtet werden müssen . Die Lackierpfade beschreiben die Lackiersequenz , welche die Düsen der Beschichtungsmaschine folgen werden, um die Lackierbereiche mit Schutzlack zu lackieren bzw . zu beschichten . The coating areas describe the areas of the circuit board assembly that need to be coated with a protective coating. The coating paths describe the coating sequence that the nozzles of the coating machine will follow to paint or coat the coating areas with a protective coating.
Das Lackierprogramm ist eine Software , die Information über die Lackierbereiche und die Lackierpfade enthält , welche von einer Datenverarbeitungseinheit der Beschichtungsmaschine verarbeitet und ausgeführt werden kann . The painting program is a software that contains information about the painting areas and the painting paths, which can be processed and executed by a data processing unit of the coating machine.
Eine Beschichtungsmaschine ist eine Maschine , welche die Beschichtung von elektronischen Komponenten einer Leiterplatte durchführen kann . Die Beschichtungsmaschine kann eine Ausstattung aufweisen, um verschiedene Beschichtungsarten, u . a . Conformal Coating, Vergießen, Dispensen, Jetten, Film-Coaten und/oder Sprühen, durchführen zu können . Mit Conformal Coating können Materialien wie Silikon, Acryl , Urethan und Epoxid verwendet werden . A coating machine is a machine that can perform the coating of electronic components on a circuit board. The coating machine can be equipped to perform various types of coating, including conformal coating, potting, dispensing, jetting, film coating and/or spraying. Materials such as silicone, acrylic, urethane and epoxy can be used with conformal coating.
Die verschiedenen Einheiten umfassen im Allgemeinen Geräte und Computerprogramme , die Daten empfangen, verarbeiten und auswerten können . Die Einheiten sind kabelgebunden und/oder drahtlos miteinander verbunden, um Signale austauschen zu können . Daher umfassen die Einheiten mindestens eine zentrale Verarbeitungseinheit ( CPU) und/oder mindestens eine Grafikverarbeitungseinheit ( GPU) und/oder mindestens ein feldprogrammierbares Gate-Array ( FPGA) und/oder mindestens eine anwendungsspezi fische integrierte Schaltung (AS IC ) und/oder eine beliebige Kombination der vorgenannten Elemente . Jedes Element kann ferner einen Arbeitsspeicher umfassen, der ope- rativ mit der mindestens einen CPU verbunden ist , und/oder einen nicht- flüchtigen Speicher, der operativ mit der mindestens einen CPU und/oder dem Arbeitsspeicher verbunden ist . Jedes Element kann teilweise und/oder vollständig in einem lokalen Gerät und/oder teilweise und/oder vollständig in einem entfernten System, wie etwa einer Cloud-Computing- Plattform, implementiert sein . The various units generally comprise devices and computer programs that can receive, process and evaluate data. The units are connected to each other by cable and/or wirelessly in order to be able to exchange signals. Therefore, the units comprise at least one central processing unit (CPU) and/or at least one graphics processing unit (GPU) and/or at least one field programmable gate array (FPGA) and/or at least one application specific integrated circuit (ASIC) and/or any combination of the aforementioned elements. Each element can further comprise a working memory that can operate operatively connected to the at least one CPU, and/or a non-volatile memory operatively connected to the at least one CPU and/or the memory. Each element may be partially and/or fully implemented in a local device and/or partially and/or fully implemented in a remote system, such as a cloud computing platform.
Die verschiedenen Einheiten können in Hardware und/oder Software , kabelgebunden und/oder drahtlos und in j eder Kombination davon realisiert sein . Sie können ferner eine Schnittstelle zu einem Intranet oder dem Internet , zu einem Cloud- Computing-Dienst , zu einem entfernten Server und/oder dergleichen umfassen . The various units may be implemented in hardware and/or software, wired and/or wireless, and any combination thereof. They may further comprise an interface to an intranet or the Internet, to a cloud computing service, to a remote server, and/or the like.
Die Lackierbereiche- Identi f i zierungseinheit , die Lackierpfad- Bestimmungseinheit und die Recheneinheit können eine Software , eine App oder einen Algorithmus mit unterschiedlichen Fähigkeiten zur Datenverarbeitung aus führen . The painting area identification unit, the painting path determination unit and the computing unit can execute software, an app or an algorithm with different data processing capabilities.
Die Eingabeeinheit und die Ausgabeeinheit können insbesondere eine Schnittstelle , beispielsweise eine Application Programming Interface (API ) umfassen, damit sie insbesondere die 3D- Modelle der Baugruppe einlesen und das Lackierprogramm ausgeben könnten . The input unit and the output unit can in particular comprise an interface, for example an Application Programming Interface (API), so that they can in particular read in the 3D models of the assembly and output the painting program.
In Systemen, die auf der Cloud-Computing-Technologie basieren, ist eine große Anzahl von Geräten über das Internet mit einem Cloud-Computing-System verbunden . Die Geräte können sich in einer Remote-Einrichtung befinden, die mit dem Cloud- Computing-System verbunden ist . Die Geräte können z . B . Geräten, Sensoren, Aktoren, Robotern und/oder Maschinen in einer oder mehreren Industrieanlagen umfassen oder daraus bestehen . Bei den Geräten kann es sich um Haushaltsgeräte oder Bürogeräte in einer Wohn-/Gewerbeeinrichtung handeln . In systems based on cloud computing technology, a large number of devices are connected to a cloud computing system via the Internet. The devices may be located in a remote facility that is connected to the cloud computing system. The devices may, for example, include or consist of devices, sensors, actuators, robots and/or machines in one or more industrial facilities. The devices may be household appliances or office equipment in a residential/commercial facility.
Das Cloud-Computing-System kann die Remote-Konfiguration, - Überwachung, -Steuerung und - Instandhaltung der angeschlosse- nen Geräte ( auch allgemein als "Assets" bezeichnet ) ermöglichen . Außerdem kann das Cloud-Computing-System die Speicherung großer Datenmengen, die regelmäßig von den Geräten erfasst werden, die Analyse der großen Datenmengen und die Bereitstellung von Erkenntnissen ( z . B . Leistungsindikatoren, Ausreißer ) und Warnungen für Bediener, Außendiensttechniker oder Eigentümer der Geräte über eine grafische Benutzerschnittstelle ( z . B . von Webanwendungen) erleichtern . Die Erkenntnisse und Warnungen können die Steuerung und Instandhaltung der Geräte ermöglichen, was zu einem ef fi zienten und aus fallsicheren Betrieb der Geräte führt . Das Cloud- Computing-System kann auch die Änderung von Parametern ermöglichen, die mit den Geräten verbunden sind, und Steuerbefehle , basierend auf der Grundlage der Erkenntnisse und Warnungen, über die grafische Benutzerschnittstelle ausgeben . The cloud computing system can enable remote configuration, monitoring, control and maintenance of the connected en devices (also commonly referred to as "assets"). In addition, the cloud computing system can facilitate the storage of large amounts of data regularly collected from the devices, analysis of the large amounts of data, and provision of insights (e.g., performance indicators, outliers) and alerts to operators, field engineers, or owners of the devices through a graphical user interface (e.g., web applications). The insights and alerts can enable control and maintenance of the devices, resulting in efficient and fail-safe operation of the devices. The cloud computing system can also enable modification of parameters associated with the devices and issue control commands, based on the insights and alerts, through the graphical user interface.
Das Cloud-Computing-System kann eine Viel zahl von Servern oder Prozessoren ( auch als "Cloud- Inf rastruktur" bezeichnet ) umfassen, die geografisch verteilt und über ein Netzwerk miteinander verbunden sind . Auf den Servern/Prozessoren ist eine spezielle Plattform ( im Folgenden als "Cloud-Computing- Plattform" bezeichnet ) installiert , die die oben genannten Funktionen als Service ( im Folgenden als "Cloud-Service" bezeichnet ) bereitstellt . Die Cloud-Computing-Plattform kann eine Viel zahl von Softwareprogrammen umfassen, die auf einem oder mehreren Servern oder Prozessoren des Cloud-Computing- Systems ausgeführt werden, um die Bereitstellung des angeforderten Services für die Geräte und ihre Nutzer zu ermöglichen . The cloud computing system may comprise a plurality of servers or processors (also referred to as "cloud infrastructure") that are geographically distributed and interconnected via a network. A special platform (hereinafter referred to as "cloud computing platform") is installed on the servers/processors, which provides the above-mentioned functions as a service (hereinafter referred to as "cloud service"). The cloud computing platform may comprise a plurality of software programs that run on one or more servers or processors of the cloud computing system to enable the provision of the requested service to the devices and their users.
Eine oder mehrere API s werden in dem Cloud-Computing-System eingesetzt , um den Nutzern verschiedene Cloud-Dienste anzubieten . One or more APIs are used in the cloud computing system to offer various cloud services to users.
Die Erfindung schaf ft ferner ein computerimplementiertes Verfahren zur Bereitstellung eines Lackierprogramms für die Beschichtung einer mit elektronischen Komponenten, Leiterbahnen und elektronischen Kontakt flächen einer Baugruppe bestückten Leiterplatte mit einem Schutzlack durch eine Beschichtungsmaschine mit den Schritten : ( a ) Einlesen von Daten eines gespeicherten 3D-Modells der Baugruppe ; (b ) automatisches Identi fi zieren, basierend auf den eingelesenen Daten der Baugruppe , von Lackierbereichen der j eweiligen elektronischen Komponenten und/oder der Leiterbahnen und/oder der elektronischen Kontakt flächen der Baugruppe ; ( c ) automatisches Ermitteln, basierend auf den identi fi zierten Lackierbereichen, mindestens eines Lackierpfades für die Beschichtung zumindest der elektronischen Komponenten der Baugruppe ; ( d) Erstellen, basierend auf den identi fi zierten Lackierbereichen und dem ermittelten Lackierpfad, des Lackierprogramms ; und ( e ) Ausgeben des erstellten Lackierprogramms an die Beschichtungsmaschine . The invention further provides a computer-implemented method for providing a coating program for coating a component equipped with electronic components, conductor tracks and electronic contact surfaces of an assembly. Printed circuit board with a protective varnish by a coating machine with the steps: (a) reading in data from a stored 3D model of the assembly; (b) automatically identifying, based on the read-in data of the assembly, painting areas of the respective electronic components and/or the conductor tracks and/or the electronic contact surfaces of the assembly; (c) automatically determining, based on the identified painting areas, at least one painting path for coating at least the electronic components of the assembly; (d) creating, based on the identified painting areas and the determined painting path, the painting program; and (e) outputting the created painting program to the coating machine.
Das computerimplementiertes Verfahren gemäß dem zweiten Aspekt der Erfindung kann mit dem System gemäß dem ersten Aspekt der Erfindung durchgeführt werden . Die hierin im Zusammenhang mit dem System beschriebenen Merkmale und Vorteile sind daher auch für das Verfahren anwendbar und umgekehrt . The computer-implemented method according to the second aspect of the invention can be carried out with the system according to the first aspect of the invention. The features and advantages described herein in connection with the system are therefore also applicable to the method and vice versa.
Gemäß einem dritten Aspekt schaf ft die Erfindung ferner ein Computerprogrammprodukt , das einen aus führbaren Programmcode umfasst , der dazu eingerichtet ist , bei seiner Aus führung das Verfahren gemäß dem zweiten Aspekt der vorliegenden Erfindung durchzuführen . According to a third aspect, the invention further provides a computer program product comprising an executable program code which, when executed, is adapted to carry out the method according to the second aspect of the present invention.
Gemäß einem vierten Aspekt stellt die Erfindung ein nichtflüchtiges computerlesbares Datenspeichermedium bereit , das einen aus führbaren Programmcode umfasst , der dazu eingerichtet ist , bei seiner Aus führung das Verfahren gemäß dem zweiten Aspekt der vorliegenden Erfindung durchzuführen . According to a fourth aspect, the invention provides a non-transitory computer-readable data storage medium comprising an executable program code which, when executed, is adapted to carry out the method according to the second aspect of the present invention.
Das nicht- flüchtige , computerlesbare Datenspeichermedium kann j ede Art von Computerspeicher, insbesondere einen Halbleiterspeicher, wie z . B . einen Festkörperspeicher umfassen oder daraus bestehen . Das Datenspeichermedium kann auch eine CD, eine DVD, eine Blu-Ray-Disc, einen USB-Speicherstick oder dergleichen umfassen oder daraus bestehen . Gemäß einem fünften Aspekt schaf ft die Erfindung einen Datenstrom, der einen aus führbaren Programmcode umfasst oder dazu eingerichtet ist , einen solchen zu erzeugen, und der dazu eingerichtet ist , bei seiner Aus führung das Verfahren gemäß dem zweiten Aspekt der vorliegenden Erfindung durchzuführen . The non-volatile, computer-readable data storage medium can comprise or consist of any type of computer memory, in particular a semiconductor memory, such as a solid-state memory. The data storage medium can also comprise or consist of a CD, a DVD, a Blu-ray disc, a USB memory stick or the like. According to a fifth aspect, the invention provides a data stream which comprises an executable program code or is adapted to generate such a code and which is adapted to carry out the method according to the second aspect of the present invention when executed.
Gemäß einem sechsten Aspekt der Erfindung umfasst diese ein CAD/CAM System mit einer Datenverarbeitungseinheit zur Durchführung des computerimplementiertes Verfahren nach dem zweiten Aspekt der Erfindung, wobei das CAD/CAM System dazu ausgelegt ist , ein 3D-Modell einer mit elektronischen Komponenten einer Baugruppe bestückten Leiterplatte zu generieren . According to a sixth aspect of the invention, it comprises a CAD/CAM system with a data processing unit for carrying out the computer-implemented method according to the second aspect of the invention, wherein the CAD/CAM system is designed to generate a 3D model of a circuit board populated with electronic components of an assembly.
Eine der Erfindung zugrundeliegende Idee besteht darin, ein System zur Bereitstellung eines Lackierprogramms für die Beschichtung von den elektronischen Komponenten, den Leiterbahnen und den elektronischen Kontakt flächen einer Leiterplatte einzuführen, wobei die Bereitstellung des Lackierprogramms automatisch erfolgt . Das System ist dazu eingerichtet , dreidimensionale Daten der Baugruppe zu benutzen bzw . aus zuwerten, um die verschiedenen Lackierbereiche zu identi fi zieren und einen optimalen Lackierpfad zu ermitteln . Eine Recheneinheit ist dazu ausgelegt , diese Informationen als ein Softwareprogramm zu verarbeiten, das von der Beschichtungsmaschine eingesetzt wird, um die Lackierung der Leiterplatte durchzuführen . One idea underlying the invention is to introduce a system for providing a painting program for coating the electronic components, the conductor tracks and the electronic contact surfaces of a circuit board, whereby the painting program is provided automatically. The system is set up to use or evaluate three-dimensional data of the assembly in order to identify the various painting areas and to determine an optimal painting path. A computing unit is designed to process this information as a software program that is used by the coating machine to carry out the painting of the circuit board.
Das vorstehend beschriebene System ermöglicht vorteilhaft eine Implementierung eines computerimplementiertes Verfahrens zur Bereitstellung eines Lackierprogramms für die Beschichtung von den elektronischen Komponenten, den Leiterbahnen und den elektronischen Kontakt flächen einer Baugruppe einer Leiterplatte . Hierbei werden zunächst dreidimensionale Daten von den verschiedenen elektronischen Komponenten einer Baugruppe einer Leiterplatte eingelesen . Daraufhin werden die Daten verarbeitet , um die Lackierbereiche der j eweiligen elektronischen Komponenten, der Leiterbahnen und der elektronischen Kontakt flächen der Baugruppe automatisch zu identi fi zieren (oder zu bestimmen) . Darauf basierend wird ein optimaler Lackierpfad ermittelt , um die Lackierung umzusetzen bzw . aus zuführen . Zuletzt werden die Information über die Lackierbereiche und den Lackierpfad als ein Lackier-Softwareprogramm erstellt . Das Programm wird an die Beschichtungsmaschine ausgegeben, um die Lackierung der Leiterplatte aus zuführen . The system described above advantageously enables implementation of a computer-implemented method for providing a coating program for coating the electronic components, the conductor tracks and the electronic contact surfaces of a printed circuit board assembly. First, three-dimensional data from the various electronic components of a printed circuit board assembly are read in. The data are then processed to determine the coating areas of the respective electronic components, the conductor tracks and the electronic to automatically identify (or determine) the contact areas of the assembly. Based on this, an optimal painting path is determined to implement or execute the painting. Finally, the information about the painting areas and the painting path is created as a painting software program. The program is output to the coating machine to execute the painting of the circuit board.
Ein Vorteil der vorliegenden Erfindung ist , dass die Bereitstellung des Lackierprogramms komplett automatisch erfolgt . Insbesondere für die Identi fi zierung der Lackierbereiche sowie für die Ermittlung des Lackierpfads werden die Daten aus dem 3D-Modell verarbeitet . Eine manuelle Identi fi zierung der Lackierbereiche und eine manuelle Lackierpfaddefinition ist nicht mehr notwendig . Enge Bereiche der Baugruppe , die mit einer Düse schwer zu erreichen sind, können mit der vorliegenden Erfindung genau identi fi ziert werden . Dies ermöglicht eine schnelle und präzise Vorbereitung der Beschichtung einer Leiterplatte . An advantage of the present invention is that the preparation of the painting program is completely automatic. The data from the 3D model is processed in particular for the identification of the painting areas and for the determination of the painting path. Manual identification of the painting areas and manual painting path definition is no longer necessary. Narrow areas of the assembly that are difficult to reach with a nozzle can be precisely identified with the present invention. This enables quick and precise preparation of the coating of a circuit board.
Ein weiterer Vorteil der Erfindung besteht darin, dass das Lackierprogramm an die Beschichtungsmaschine ausgegeben wird . Somit muss die Beschichtungsmaschine nicht gestoppt werden, da die Programmierung nicht mehr an einer Nutzerschnittstelle der Beschichtungsmaschine manuell erfolgt . Die Downtime der Beschichtungsmaschine wird daher wesentlich reduziert . A further advantage of the invention is that the painting program is output to the coating machine. This means that the coating machine does not have to be stopped, since programming is no longer done manually at a user interface on the coating machine. The downtime of the coating machine is therefore significantly reduced.
Vorteilhafte Aus führungs formen und Weiterentwicklungen ergeben sich aus den abhängigen Ansprüchen sowie aus der Beschreibung der verschiedenen bevorzugten Aus führungs formen, die in den beigefügten Figuren dargestellt sind . Advantageous embodiments and further developments emerge from the dependent claims and from the description of the various preferred embodiments which are shown in the accompanying figures.
Gemäß manchen Aus führungs formen der Erfindung ist vorgesehen, dass die eingelesenen Daten zumindest die geometrischen Abmessungen der elektronischen Komponenten der Baugruppe umfassen . Die Geometrie der verschiedenen elektronischen Komponenten kann aus einem CAD und/oder CAM Softwareprogramm erhalten werden . Eine manuelle Bereichsidenti fi zierung ist daher nicht notwendig . Das 3D-Modell der Baugruppe und der darin enthaltenen Komponenten kann vorteilhaft von dem Hersteller der Leiterplatte geliefert werden . According to some embodiments of the invention, it is provided that the read-in data include at least the geometric dimensions of the electronic components of the assembly. The geometry of the various electronic components can be obtained from a CAD and/or CAM software program. Manual area identification is therefore not necessary. necessary. The 3D model of the assembly and the components it contains can advantageously be supplied by the manufacturer of the circuit board.
Gemäß manchen Aus führungs formen der Erfindung ist vorgesehen, dass die Eingabeeinheit ferner dazu eingerichtet ist , Informationen, die auf den elektronischen Komponenten selbst hinterlegt sind, einzulesen . Diese Informationen umfassen die elektronischen Eigenschaften der elektronischen Komponenten ( z . B . Widerstandswerte für Widerstände , Kapazitätswerte für Kondensatoren oder Induktivitätswerte für Induktivitäten) sowie Information über die Lackierungsbedürfnisse der j eweiligen elektronischen Komponenten, z . B . an welchen Stellen der Komponenten lackiert werden soll und wieviel Schutzlack dort aufgebracht werden soll . Weiterhin können als Informationen auch Temperaturgrenzwerte einer Komponente oder ein bestehender Korrosionsschutz einer Komponente verwendet werden, um die pro Fläche benötigte Schutzlackmenge j edes Lackierbereiches zu bestimmen . According to some embodiments of the invention, the input unit is further configured to read information stored on the electronic components themselves. This information includes the electronic properties of the electronic components (e.g. resistance values for resistors, capacitance values for capacitors or inductance values for inductors) as well as information about the painting requirements of the respective electronic components, e.g. which parts of the components should be painted and how much protective paint should be applied there. Furthermore, temperature limit values of a component or existing corrosion protection of a component can also be used as information in order to determine the amount of protective paint required per area of each painting area.
Gemäß manchen Aus führungs formen der Erfindung ist vorgesehen, dass die Lackierpfad-Bestimmungseinheit eine Operationseinheit umfasst , welche dazu eingerichtet ist , vordefinierte Operationstypen für die Ermittlung des Lackierpfades zur Verfügung zu stellen . Diese vordefinierten Operationstypen können Vorkehrungen, die durch Erfahrung bekannt sind, umfassen . Beispielsweise könnten gemäß einem Operationstyp die verschiedenen Lackierbereiche nach einer vordefinierten Reihenfolge lackiert werden . According to some embodiments of the invention, it is provided that the painting path determination unit comprises an operation unit which is designed to provide predefined operation types for determining the painting path. These predefined operation types can comprise provisions which are known from experience. For example, according to one operation type, the various painting areas could be painted in a predefined order.
Gemäß manchen Aus führungs formen der Erfindung ist vorgesehen, dass das System ferner eine Validierungseinheit umfasst , welche dazu eingerichtet ist , basierend auf einer Simulation einer von dem erstellten Lackierprogramm vorgegebenen Schichtdicke und/oder einer Schichtverteilung des Schutzlacks , die identi fi zierten Lackierbereiche und/oder den ermittelten Lackierpfad zu validieren . Die Validierung der Lackierbereiche und des Lackierpfades ist eine Maßnahme , um das ermittelte Lackierprogramm zu testen, bevor es an die Beschichtungsmaschine ausgegeben wird . Fehler oder Ungenauigkeiten können hierfür korrigiert und aufgehoben werden . According to some embodiments of the invention, it is provided that the system further comprises a validation unit which is configured to validate the identified painting areas and/or the determined painting path based on a simulation of a layer thickness and/or a layer distribution of the protective paint specified by the created painting program. The validation of the painting areas and the painting path is a measure to test the determined painting program before it is output to the coating machine. Errors or inaccuracies can be corrected and eliminated.
Gemäß manchen Aus führungs formen der Erfindung ist vorgesehen, dass die Lackierpfad-Bestimmungseinheit einen Algorithmus implementiert , der dazu eingerichtet ist , den Lackierpfad zu berechnen, zumindest hinsichtlich eines Verfahrweges und/oder hinsichtlich einer Reihenfolge unter Berücksichtigung definierter Umfahrungen und/oder Sicherheitsabstände . Der Algorithmus kann in Form eines Plug-ins angewandt werden . Die verschiedenen Prozessparameter umfassen bzw . definieren eine mögliche Ziel-Funktion, z . B . die Lackierpfadlänge des Lackierpfades , die minimiert werden soll . Randbedingungen wie die potentiellen Umfahrungen von Komponenten und/oder Sicherheitsabstände zu Komponenten können von der Eingabeeinheit erfasst werden . Der Algorithmus verknüpft die verschiedenen Lackierpfadteile bzw . Lackierpfadteilstrecken miteinander, um einen optimalen Gesamt-Lackierpfad zur Verfügung zu stellen . According to some embodiments of the invention, the painting path determination unit implements an algorithm that is set up to calculate the painting path, at least with regard to a travel path and/or with regard to a sequence, taking into account defined detours and/or safety distances. The algorithm can be used in the form of a plug-in. The various process parameters comprise or define a possible target function, e.g. the painting path length of the painting path, which is to be minimized. Boundary conditions such as the potential detours of components and/or safety distances to components can be recorded by the input unit. The algorithm links the various painting path parts or painting path sections with one another in order to provide an optimal overall painting path.
Gemäß manchen Aus führungs formen der Erfindung ist vorgesehen, dass die Lackierpfad-Bestimmungseinheit eine Optimierungseinheit umfasst , die dazu eingerichtet ist , ein künstliches Intelligenz-Modul zu implementieren, wobei das künstliche Intelligenz-Modul den Algorithmus optimiert . According to some embodiments of the invention, it is provided that the painting path determination unit comprises an optimization unit which is configured to implement an artificial intelligence module, wherein the artificial intelligence module optimizes the algorithm.
Unter künstlicher Intelligenz ist eine computergestützte Einheit zu verstehen, die in der Lage ist , verschiedene Datenanalysemethoden zu implementieren, die im Allgemeinen als künstliche Intelligenz , maschinelles Lernen, Deep Learning oder Computerlernen bezeichnet werden . Artificial intelligence refers to a computer-based entity capable of implementing various data analysis methods, commonly referred to as artificial intelligence, machine learning, deep learning or computational learning.
Das künstliche Intelligenz-Modul implementiert mindestens ein künstliches Intelligenz-Modell , bei dem es sich um ein mehrschichtiges Perzeptron-Net zwerk (MLP ) , ein rekurrentes neuronales Netzwerk (RNN) , ein LSTM-Net zwerk ( Long Short Memory) , ein faltungsneuronales Netzwerk ( CNN) oder ein anderes neuronales Netzwerk handeln kann . The artificial intelligence module implements at least one artificial intelligence model, which is a multilayer perceptron network (MLP), a recurrent neural network (RNN), a LSTM network (Long Short Memory), a convolutional neural network (CNN) or another neural network.
Das künstliches Intelligenz-Modul kann die Schichtdicken und die Schichtverteilungen der Lackierung der j eweiligen elektronischen Komponenten als Input verwenden, um den Algorithmus und die notwendigen Parameter durch das künstliche Intelligenz-Modell fortlaufend zu optimieren . The artificial intelligence module can use the layer thicknesses and layer distributions of the coating of the respective electronic components as input to continuously optimize the algorithm and the necessary parameters through the artificial intelligence model.
Gemäß manchen Aus führungs formen der Erfindung ist vorgesehen, dass das System ferner eine Übersetzungseinheit umfasst , welche dazu eingerichtet ist , das erstellte Lackierprogramm in ein lesbares Datenformat für die Beschichtungsmaschine zu übersetzen . According to some embodiments of the invention, the system further comprises a translation unit which is designed to translate the created painting program into a readable data format for the coating machine.
Die Erstellung des Lackierpfads muss in einem Format umgesetzt werden, welches die Lackiersoftware der Beschichtungsmaschine verarbeiten kann . Hierfür kann ein oder mehrere Postprozessoren ausgewählt werden, um diese Trans formation zu erfolgen . Durch die Entwicklung mehrerer Postprozessoren kann eine Lackiersoftwareunabhängigkeit erreicht werden, so dass das System der Erfindung für beliebige Beschichtungsmaschinen bzw . Lackiersoftwarehersteller bereitgestellt werden kann . The creation of the painting path must be implemented in a format that the painting software of the coating machine can process. For this purpose, one or more postprocessors can be selected to carry out this transformation. By developing several postprocessors, painting software independence can be achieved, so that the system of the invention can be made available for any coating machine or painting software manufacturer.
Gemäß manchen Aus führungs formen der Erfindung ist vorgesehen, dass das System eine Lackierprogramm-Speicherungseinheit ferner umfasst , welche dazu eingerichtet ist , das erstellte Lackierprogramm zu speichern . Mit der zunehmenden Anzahl der verschiedenen zu lackierenden Leiterplatten ist es vorteilhaft , die verschiedenen Lackierprogramme in einer Programmbibliothek zu speichern und dort zu bewahren . Von dort kann man sie abrufen und erneut verwenden . According to some embodiments of the invention, the system further comprises a painting program storage unit which is designed to store the created painting program. With the increasing number of different circuit boards to be painted, it is advantageous to store the various painting programs in a program library and to keep them there. From there, they can be retrieved and used again.
Gemäß manchen Aus führungs formen der Erfindung ist vorgesehen, dass das System ferner eine Datenbankeinheit umfasst , welche dazu eingerichtet ist , die eingelesenen Daten der Baugruppe zu speichern und von dort auslesbar vorzuhalten . Die Datenbankeinheit kann beispielweise ein zentralisiertes Produktda- tenmanagement ( PDM) System wie Teamcenter sein, in dem die Daten der Komponenten gepflegt werden . Ein Hauptziel des PDM- Systems ist es eine Rückverfolgbarkeit der Informationen über die verschiedenen elektronischen Komponenten der Baugruppen einer Leiterplatte bereitzustellen . Diese gespeicherten Informationen umfassen beispielweise Komponenteninformationen und Komponentenabmessungen hinsichtlich der Komponenten der Baugruppe . Dadurch kann man Computer-Aided Design ( CAD) Daten der Komponenten auch zusammen mit Metadaten der Komponenten ( z . B . Dokumentation oder Anweisungen des Herstellers ) speichern . Die ganzen Informationen stehen für die Wiederverwendung bereit und können versionsgesteuert geändert und abgerufen werden . According to some embodiments of the invention, the system further comprises a database unit which is designed to store the read-in data of the assembly and to keep it available for reading from there. The database unit can, for example, be a centralized product data It can be a product management (PDM) system such as Teamcenter in which the component data is maintained. A main goal of the PDM system is to provide traceability of information about the various electronic components of the assemblies of a printed circuit board. This stored information includes, for example, component information and component dimensions with respect to the components of the assembly. This makes it possible to store computer-aided design (CAD) data of the components together with metadata of the components (e.g. documentation or instructions from the manufacturer). All of the information is available for reuse and can be changed and retrieved under version control.
Gemäß manchen Aus führungs formen der Erfindung ist vorgesehen, dass das System ferner eine Simulationseinheit umfasst , welche dazu eingerichtet ist , basierend auf dem erstellten Lackierprogramm, eine Simulation der Beschichtung der Baugruppe durch die Beschichtungsmaschine zu erstellen . Somit kann die Lackiersequenz vorab in einer CAD/CAM Software Umgebung simuliert werden, in welcher die Beschichtungsmaschine miteingebunden wird . According to some embodiments of the invention, the system further comprises a simulation unit which is designed to create a simulation of the coating of the assembly by the coating machine based on the created painting program. The painting sequence can thus be simulated in advance in a CAD/CAM software environment in which the coating machine is integrated.
Obwohl hier und auch im Folgenden einige Funktionen als von Einheiten ausgeführt beschrieben werden, bedeutet dies nicht zwangsläufig, dass diese Einheiten als voneinander getrennte Einheiten bereitgestellt werden . In Fällen, in denen eine oder mehrere Einheiten oder auch ein Teil davon als Software bereitgestellt werden, können die Einheiten durch Programmcodeabschnitte oder Programmcodesegmente implementiert werden, die voneinander getrennt sein können, aber auch miteinander verwoben oder integriert sein können . Although some functions are described here and below as being performed by units, this does not necessarily mean that these units are provided as separate units from each other. In cases where one or more units or even a part thereof are provided as software, the units may be implemented by program code sections or program code segments that may be separate from each other, but may also be interwoven or integrated with each other.
Ebenso können in Fällen, in denen eine oder mehrere Einheiten als Hardware bereitgestellt werden, die Funktionen einer oder mehrerer Einheiten durch ein und dieselbe Hardwarekomponente bereitgestellt werden oder die Funktionen mehrerer Einheiten können auf mehrere Hardwarekomponenten verteilt sein, die nicht notwendigerweise den Einheiten entsprechen müssen . Es ist daher davon aus zugehen, dass j ede Anwendung, j edes System, j edes Verfahren usw . , das alle einer bestimmten Einheit zugeschriebenen Merkmale und Funktionen aufweist , diese Einheit umfasst oder implementiert . Insbesondere ist es möglich, dass alle Einheiten durch Programmcode implementiert werden, der von z . B . einem Server oder einer Cloud-Computing- Plattform, ausgeführt wird . Similarly, in cases where one or more units are provided as hardware, the functions of one or more units may be provided by one and the same hardware component, or the functions of several units may be distributed across several hardware components that do not necessarily have to correspond to the units. It is therefore to be assumed that any application, system, procedure, etc. that has all the features and functions attributed to a particular unit comprises or implements that unit. In particular, it is possible that all units are implemented by program code executed by, for example, a server or a cloud computing platform.
Alle genannten Aus führungs formen und Implementierungen können beliebig miteinander kombiniert werden, soweit dies sinnvoll ist . All mentioned embodiments and implementations can be combined with each other as desired, as long as this makes sense.
Der weitere Umfang der Anwendbarkeit des vorliegenden Verfahrens und der Vorrichtung wird aus den folgenden Figuren, der detaillierten Beschreibung und den Ansprüchen ersichtlich werden . Es versteht sich j edoch, dass die detaillierte Beschreibung und die spezi fischen Beispiele , zwar bevorzugte Aus führungs formen der Erfindung angeben, j edoch in erste Linie zur Veranschaulichung dienen und verschiedene Änderungen und Modi fikationen innerhalb des grundlegenden Gedankens und des Umfangs der Erfindung für Fachleute erkennbar sind . Further scope of applicability of the present method and apparatus will become apparent from the following figures, detailed description, and claims. It is to be understood, however, that the detailed description and specific examples, while indicating preferred embodiments of the invention, are intended primarily for purposes of illustration, and various changes and modifications within the basic spirit and scope of the invention will become apparent to those skilled in the art.
Nachstehend wird die Erfindung mit Bezug auf ihre vorteilhaften Aus führungs formen anhand der folgenden Zeichnungen beschrieben . Sie dienen dazu, Aus führungs formen von Konzepten, die die beanspruchte Erfindung beinhalten, weiter zu veranschaulichen und verschiedene Prinzipien und Vorteile dieser Aus führungs formen zu erläutern . The invention will now be described with reference to its advantageous embodiments with reference to the following drawings. They serve to further illustrate embodiments of concepts incorporating the claimed invention and to explain various principles and advantages of these embodiments.
Es zeigen : Show it :
Fig . 1 ein System zur Bereitstellung eines Lackierprogramms für die Beschichtung einer mit elektronischen Komponenten einer Baugruppe bestückten Leiterplatte gemäß einer Aus führungs form der Erfindung; Fig . 2 ein schematisches Blockdiagramm zur Darstellung des Ablaufs eines computerimplementierten Verfahrens zur Bereitstellung eines Lackierprogramms für die Beschichtung einer mit elektronischen Komponenten einer Baugruppe bestückten Leiterplatte gemäß einer Aus führungs form der Erfindung; Fig. 1 shows a system for providing a coating program for coating a circuit board equipped with electronic components of an assembly according to an embodiment of the invention; Fig. 2 is a schematic block diagram illustrating the sequence of a computer-implemented method for providing a coating program for coating a circuit board populated with electronic components of an assembly according to an embodiment of the invention;
Fig . 3 schematisches Ablauf diagramm zur Darstellung des Ablaufs eines computerimplementierten Verfahrens zur Bereitstellung eines Lackierprogramms für die Beschichtung einer mit elektronischen Komponenten einer Baugruppe bestückten Leiterplatte gemäß einer weiteren Aus führungs form der Erfindung; Fig. 3 is a schematic flow diagram illustrating the sequence of a computer-implemented method for providing a coating program for coating a circuit board populated with electronic components of an assembly according to a further embodiment of the invention;
Fig . 4 eine graphische Darstellung des 3D-Modells einer mit elektronischen Komponenten einer Baugruppe bestückten Leiterplatte , die durch eine CAD/CAM Software generiert wird; Fig. 4 is a graphical representation of the 3D model of a circuit board populated with electronic components of an assembly, generated by a CAD/CAM software;
Fig . 5 eine Darstellung der identi fi zierten Lackierbereiche einer mit elektronischen Komponenten einer Baugruppe bestückten Leiterplatte gemäß einer Aus führungs form der Erfindung; Fig. 5 is a representation of the identified coating areas of a circuit board populated with electronic components of an assembly according to an embodiment of the invention;
Fig . 6 eine Darstellung einer mit elektronischen Komponenten einer Baugruppe bestückten Leiterplatte gemäß einer Aus führungs form der Erfindung, in welcher Sicherheitsabstände , die für die Lackierpfadberechnung berücksichtigt werden müssen, markiert sind . Fig. 6 is a representation of a circuit board equipped with electronic components of an assembly according to an embodiment of the invention, in which safety distances that must be taken into account for the painting path calculation are marked.
Fig . 7 ein CAD/CAM System, umfassend eine Datenverarbeitungseinheit zur Durchführung des computerimplementiertes Verfahren gemäß dem zweiten Aspekt der Erfindung, wobei das CAD/CAM System dazu ausgelegt ist , ein 3D-Modell einer mit elektronischen Komponenten einer Baugruppe bestückten Leiterplatte zu generieren; Fig. 7 shows a CAD/CAM system comprising a data processing unit for carrying out the computer-implemented method according to the second aspect of the invention, wherein the CAD/CAM system is designed to generate a 3D model of a circuit board populated with electronic components of an assembly;
Fig . 8 ein schematisches Blockdiagramm, das ein Computerprogrammprodukt gemäß einer Aus führungs form des dritten Aspekts der vorliegenden Erfindung darstellt ; und Fig . 9 ein schematisches Blockdiagramm, das ein nicht flüchtiges computerlesbares Datenspeichermedium gemäß einer Ausführungs form des vierten Aspekts der vorliegenden Erfindung zeigt . Fig. 8 is a schematic block diagram illustrating a computer program product according to an embodiment of the third aspect of the present invention; and Fig. 9 is a schematic block diagram showing a non-transitory computer-readable data storage medium according to an embodiment of the fourth aspect of the present invention.
Teile der verschiedenen Zeichnungen, die identische oder funktionell ähnliche Elemente in den einzelnen Ansichten darstellen, werden mit den gleichen Bezugs zeichen bezeichnet . Parts of the several drawings which show identical or functionally similar elements in the several views are designated by the same reference characters.
Elemente , die in den Zeichnungen geschildert sind, sind nicht unbedingt maßgetreu dargestellt . Dies dient dazu, die Grundlagen und Prinzipien der Erfindung klar und deutlich zu offenbaren . In ähnlicher Weise werden in einigen Fällen bekannte Strukturen und Geräte in Form von Blockdiagrammen dargestellt , um mögliche Konzepte der vorliegenden Erfindung zu illustrieren . Elements shown in the drawings are not necessarily shown to scale. This is to clearly disclose the principles and principles of the invention. Similarly, in some cases, well-known structures and devices are shown in block diagram form to illustrate possible concepts of the present invention.
Die Nummerierung der Schritte in den Verfahren soll deren Beschreibung erleichtern . Sie impli zieren nicht unbedingt eine bestimmte Reihenfolge der Schritte . Insbesondere können mehrere Schritte gleichzeitig durchgeführt werden . The numbering of the steps in the procedures is intended to facilitate their description. It does not necessarily imply a particular order of the steps. In particular, several steps can be carried out simultaneously.
Die aus führliche Beschreibung der anliegenden Zeichnungen enthält spezi fische Details , um ein umfassendes Verständnis der vorliegenden Erfindung zu ermöglichen . Dem Fachmann wird j edoch klar sein, dass die vorliegende Erfindung auch ohne diese spezi fischen Details ausgeführt werden kann . The detailed description of the accompanying drawings contains specific details in order to provide a thorough understanding of the present invention. However, it will be apparent to one skilled in the art that the present invention can be practiced without these specific details.
Fig . 1 zeigt ein System 100 zur Bereitstellung eines Lackierprogramms für die Beschichtung einer mit elektronischen Komponenten einer Baugruppe bestückten Leiterplatte LP gemäß einer Aus führungs form der Erfindung . Fig. 1 shows a system 100 for providing a coating program for coating a printed circuit board LP equipped with electronic components of an assembly according to an embodiment of the invention.
Das System 100 umfasst eine Eingabeeinheit 10 , eine Lackier- bereiche- Identi f i zierungseinheit 20 , eine Lackierpfad- Bestimmungseinheit 30 , eine Recheneinheit 40 , eine Validierungseinheit 42 , eine Übersetzungseinheit 44 , eine Lackier- programm-Speicherungseinheit 46, eine Ausgabeeinheit 50, eine Datenbankeinheit 60 und eine Simulationseinheit 70. The system 100 comprises an input unit 10, a painting area identification unit 20, a painting path determination unit 30, a computing unit 40, a validation unit 42, a translation unit 44, a painting program storage unit 46, an output unit 50, a database unit 60 and a simulation unit 70.
Die Eingabeeinheit 10 ist dazu ausgelegt, Daten DO von einem gespeicherten 3D-Modell der elektronischen Komponenten einer Baugruppe, die auf einer Leiterplatte LP verbaut sind, einzulesen. Die Eingabeeinheit 10 kann mindestens eine CPU, einen Datenspeicher und eine Schnittstelle, beispielweise eine Application Programming Interface (API) , umfassen. Die Daten D0 können beispielweise von einem CAD/CAM Programm generiert und in einem Datenspeichermedium (nicht in der Fig. 1 gezeigt) gespeichert werden. Die API kann mit dem Datenspeichermedium kabellos und/oder mit Kabel verbunden werden. The input unit 10 is designed to read data DO from a stored 3D model of the electronic components of an assembly that are installed on a printed circuit board LP. The input unit 10 can comprise at least a CPU, a data memory and an interface, for example an Application Programming Interface (API). The data DO can be generated, for example, by a CAD/CAM program and stored in a data storage medium (not shown in Fig. 1). The API can be connected to the data storage medium wirelessly and/or with a cable.
Die Lackierbereiche-Identif izierungseinheit 20 ist dazu eingerichtet, unter Benutzung der eingelesenen Daten D0 der Baugruppe, automatisch die Lackierbereiche der jeweiligen elektronischen Komponenten, der Leiterbahnen und der elektronischen Kontakt flächen der Baugruppe zu identifizieren. Grundlage für die Identifizierung der Lackierbereiche bilden die Informationen, die für die entsprechenden, auf der Leiterplatte verbauten elektronischen Komponenten hinterlegt sind, sowie deren Abmessungen. Da alle benötigten Informationen bekannt sind, erfolgt die Identifizierung der Lackierbereiche automatisch. Die Lackierbereiche-Identif izierungseinheit 20 umfasst mindestens eine CPU und einen Datenspeicher, welche ausführbare Programme, insbesondere einen Algorithmus, durchführen kann. Durch den Algorithmus können die Informationen verarbeitet werden, um die Lackierbereiche automatisch, d.h. ohne manuellen Betrieb, zu identifizieren. The painting area identification unit 20 is set up to automatically identify the painting areas of the respective electronic components, the conductor tracks and the electronic contact surfaces of the assembly using the read-in data D0 of the assembly. The basis for identifying the painting areas is the information stored for the corresponding electronic components installed on the circuit board, as well as their dimensions. Since all the required information is known, the painting areas are identified automatically. The painting area identification unit 20 comprises at least one CPU and a data memory, which can execute executable programs, in particular an algorithm. The algorithm can process the information in order to identify the painting areas automatically, i.e. without manual operation.
Einige Komponenten der Baugruppe können selbst Daten speichern, die zu ihrer Identifizierung und/oder zur Identifizierung der Lackierbereiche der Komponenten ausgelesen werden können. Andere Komponenten besitzen Markierungen oder Aufdrucke die eine Identifizierung der Komponenten und/oder der Lackierbereiche beispielsweise mittels eines Sensors erlauben. Eine weitere Gruppe von möglichen Komponenten der Baugruppe besitzt eine typische Gehäuseform, die eine Identi fi zierung der Komponenten und/oder der Lackierbereiche der Komponenten mit Hil fe eines optischen Sensors erlaubt . Some components of the assembly can store data that can be read out to identify them and/or to identify the painting areas of the components. Other components have markings or prints that allow the components and/or the painting areas to be identified, for example by means of a sensor. Another group of possible components of the assembly has a typical housing shape that allows identification of the components and/or the painting areas of the components with the help of an optical sensor.
Die Lackierbereiche umfassen Oberflächen der Komponenten der Baugruppe , die mit einem vorzugsweise elektrisch isolierenden Schutzlack zu beschichten sind, sowie zu beschichtende Oberflächen der mit Komponenten bestückten Leiterplatte . Der für die Beschichtung der Lackierbereiche verwendete Schutzlack ist vorzugweise transparent . The coating areas include surfaces of the components of the assembly, which are to be coated with a preferably electrically insulating protective coating, as well as surfaces of the circuit board populated with components that are to be coated. The protective coating used to coat the coating areas is preferably transparent.
Für verschieden Lackierbereiche können verschiedene Schutzlacke verwendet werden . In der Regel wird j edoch der gleiche Schutzlack für die Lackierung der gesamten Baugruppe verwendet . Different protective coatings can be used for different painting areas. However, the same protective coating is usually used for painting the entire assembly.
Neben elektronischen Komponenten kann eine Baugruppe auch elektromechanische Komponenten oder mechanische Komponenten, beispielsweise Halteelemente für elektronische Komponenten, umfassen . Der aufgebrachte Schutzlack dient dem Schutz der Komponenten vor mechanischen Einwirkungen oder vor Strahlungseinwirkungen . Der aufgebrachte Schutzlack kann ferner der elektrischen I solation der Komponenten dienen . In addition to electronic components, an assembly can also include electromechanical components or mechanical components, for example holding elements for electronic components. The protective coating applied serves to protect the components from mechanical influences or from the effects of radiation. The protective coating applied can also serve to electrically insulate the components.
Die Lackierpfad-Bestimmungseinheit 30 ist dazu eingerichtet , einen Lackierpfad, auf Basis der identi fi zierten Lackierbereiche , zu ermitteln . Die Lackierpfad-Bestimmungseinheit 30 umfasst mindestens eine CPU, einen Datenspeicher und einen Datenverarbeitungsprozessor, welche aus führbare Programme , insbesondere einen Algorithmus ( Lackierpfad-Algorithmus ) , durchführen kann . Die Information über die Lackierbereiche sowie definierte geometrische Randbedingungen, z . B . Informationen über notwendige Umfahrungen oder Sicherheitsabstände zu den verschiedenen elektronischen Komponenten, können von dem Lackierpfad-Algorithmus als Input verwendet werden . The painting path determination unit 30 is set up to determine a painting path based on the identified painting areas. The painting path determination unit 30 comprises at least one CPU, a data memory and a data processing processor, which can execute executable programs, in particular an algorithm (painting path algorithm). The information about the painting areas and defined geometric boundary conditions, e.g. information about necessary detours or safety distances to the various electronic components, can be used as input by the painting path algorithm.
In einigen Aus führungs formen, wie sie in der Fig . 1 dargestellt sind, umfasst die Lackierpfad-Bestimmungseinheit 30 eine Operationseinheit 310 , welche dazu eingerichtet ist , vordefinierte Operationstypen für die Ermittlung des Lackierpfads zur Verfügung zu stellen . Beispielweise kann ein solcher Operationstyp angeben, dass beim Lackieren der Komponenten der Baugruppe zunächst alle elektrischen Widerstände als Komponenten der Baugruppe lackiert werden sollen . Solche Operationstypen können von dem Algorithmus als Input verwendet werden und stellen Randbedingungen bei der automatischen Berechnung des Lackierpfades dar . In some embodiments, as shown in Fig. 1, the painting path determination unit 30 comprises an operation unit 310 which is set up to provide predefined operation types for determining the painting path. For example, such an operation type can specify that when painting the components of the assembly, all electrical resistors should first be painted as components of the assembly. Such operation types can be used by the algorithm as input and represent boundary conditions in the automatic calculation of the painting path.
Fig . 1 stellt eine Optimierungseinheit 320 dar, die von der Lackierpfad-Bestimmungseinheit 30 umfasst wird . Die Optimierungseinheit 320 ist dazu eingerichtet , ein künstliches Intelligenz-Modul zu implementieren . Das künstliches Intelligenz-Modul kann die Schichtdicken und die Schichtverteilungen der Lackierung der j eweiligen elektronischen Komponenten als Input verwenden, um den Lackierpfad-Algorithmus und die notwendigen Parameter durch das künstliche Intelligenz-Modul fortlaufend zu optimieren . Fig. 1 shows an optimization unit 320, which is included in the painting path determination unit 30. The optimization unit 320 is designed to implement an artificial intelligence module. The artificial intelligence module can use the layer thicknesses and the layer distributions of the paint of the respective electronic components as input in order to continuously optimize the painting path algorithm and the necessary parameters by the artificial intelligence module.
Das künstliche Intelligenz-Modul implementiert ein künstliches Intelligenz-Modell , z . B . ein mehrschichtiges Perzeptron- Netzwerk (MLP ) , ein rekurrentes neuronales Netzwerk (RNN) , ein LSTM-Net zwerk ( Long Short Memory) , ein faltungsneuronales Netzwerk ( CNN) oder ein anderes neuronales Netzwerk . The artificial intelligence module implements an artificial intelligence model, such as a multilayer perceptron network (MLP), a recurrent neural network (RNN), a long short memory (LSTM) network, a convolutional neural network (CNN), or another neural network.
Die Recheneinheit 40 ist dazu eingerichtet , basierend auf den identi fi zierten Lackierbereichen und dem ermittelten Lackierpfad, automatisch ein Lackierprogramm zu erstellen . Die Recheneinheit 40 umfasst mindestens eine CPU und einen Datenspeicher . Das Lackierprogramm kodiert die Informationen über die Lackierbereiche , die Verknüpfung von Lackierpfaden bzw . Lackierteilpfaden und die Schichtdicke und Schichtverteilung des auf getragenen Schutzlacks für die j eweiligen elektronischen Komponenten der Baugruppe . Fig . 1 stellt auch eine Validierungseinheit 42 , eine Übersetzungseinheit 44 und eine Lackierprogramm-Speicherungseinheit 46 dar . The computing unit 40 is set up to automatically create a painting program based on the identified painting areas and the determined painting path. The computing unit 40 comprises at least one CPU and a data memory. The painting program encodes the information about the painting areas, the linking of painting paths or partial painting paths and the layer thickness and layer distribution of the applied protective paint for the respective electronic components of the assembly. Fig. 1 also shows a validation unit 42, a translation unit 44 and a painting program storage unit 46.
Die Validierungseinheit 42 ist dazu eingerichtet , die identifi zierten Lackierbereiche und/oder den ermittelten Lackierpfad zu validieren . Fehler oder Ungenauigkeiten können hierfür detektiert und aufgehoben werden . Die Validierung erfolgt durch eine Simulation einer von dem erstellten Lackierprogramm vorgegebenen Schichtdicke und der Schichtverteilung des Schutzlacks . Die Validierungseinheit 42 umfasst mindestens eine CPU und eine Schnittstelle mit einem Display, durch welche die Simulation für einen Bediener visualisiert werden kann . The validation unit 42 is set up to validate the identified painting areas and/or the determined painting path. Errors or inaccuracies can be detected and eliminated for this purpose. The validation is carried out by simulating a layer thickness specified by the created painting program and the layer distribution of the protective paint. The validation unit 42 comprises at least one CPU and an interface with a display, through which the simulation can be visualized for an operator.
Die Übersetzungseinheit 44 dient dazu, das erstellte Lackierprogramm in ein lesbares Datenformat für die Beschichtungsmaschine BM zu übersetzen . Der erstellte Lackierpfad muss in einem Format umgesetzt werden, das die Lackiersoftware der Beschichtungsmaschine BM verarbeiten kann . Die Übersetzungseinheit 44 kann mehrere Postprozessoren umfassen, um die Konversion des Lackierprogramms in verschiedene Daten-Formate durchzuführen . Durch die Bereitstellung mehrerer Postprozessoren kann eine Lackiersoftwareunabhängigkeit erreicht werden, so dass das System der Erfindung für beliebige Beschichtungsmaschinen BM bzw . Lackiersoftwarehersteller bereitgestellt werden kann . The translation unit 44 is used to translate the created painting program into a readable data format for the coating machine BM. The created painting path must be converted into a format that the painting software of the coating machine BM can process. The translation unit 44 can include several postprocessors in order to convert the painting program into different data formats. By providing several postprocessors, painting software independence can be achieved, so that the system of the invention can be provided for any coating machine BM or painting software manufacturer.
Die Lackierprogramm-Speicherungseinheit 46 ist dazu eingerichtet , das erstellte Lackierprogramm für j ede Leiterplatte , die zu beschichten ist , zu speichern . Die Lackierprogramm- Speicherungseinheit 46 dient als eine Programmbibliothek, in der die verschiedenen Lackierprogramme bewahrt werden . Von dort kann man die verschiedenen Lackierprogramme nach Bedarf abrufen und verwenden . Die Lackierprogramm- Speicherungseinheit 46 kann ein Datenspeichermedium, wie z . B . ein DVD, sein . Alternativ kann sie sich in einem Computer, einem Server oder in einer Cloud Plattform befinden . Fig . 1 stellt auch eine Ausgabeeinheit 50 dar, welche dazu eingerichtet ist , die erstellte Lackierprogramm an die Beschichtungsmaschine BM aus zugeben . Das Lackierprogramm, das die Ausgabeeinheit 50 überträgt , kann direkt von der Recheneinheit 40 stammen . Alternativ kann das Lackierprogramm nach einer Validierung und/oder einer Übersetzung an die Beschichtungsmaschine BM übertragen werden . The painting program storage unit 46 is configured to store the created painting program for each circuit board to be coated. The painting program storage unit 46 serves as a program library in which the various painting programs are stored. From there, the various painting programs can be retrieved and used as needed. The painting program storage unit 46 may be a data storage medium, such as a DVD. Alternatively, it may be located in a computer, a server, or a cloud platform. Fig. 1 also shows an output unit 50 which is set up to output the created painting program to the coating machine BM. The painting program which the output unit 50 transmits can come directly from the computing unit 40. Alternatively, the painting program can be transmitted to the coating machine BM after validation and/or translation.
Die in Fig . 1 dargestellte Aus führungs form weist eine Datenbankeinheit 60 auf , welche dazu dient , die Daten DO der elektronischen Komponenten der Baugruppe der Leiterplatte LP zu speichern, um eine Rückverfolgbarkeit der Information über die elektronischen Komponenten der Baugruppen einer Leiterplatte LP bereitzustellen . Die gespeicherte Daten DO umfassen mindestens Komponenteninformationen ( Dokumentation und/oder Anweisungen des Herstellers ) und die Komponentenabmessungen, die von dem 3D-Modell stammen . Dadurch kann man auch Computer-Aided Design ( CAD) Daten bewahren . Die ganzen Informationen stehen für die Wiederverwendung bereit und können versionsgesteuert geändert werden . Die Datenbankeinheit 60 kann ein herkömmliches Datenspeichermedium sein oder kann in einem Server und/oder Cloud Plattform implementiert werden . Weiterhin kann die Datenbankeinheit 60 ein zentralisiertes Produktdatenmanagement ( PDM) System ( z . B . Teamcenter ) sein, in dem die Daten der Komponenten gepflegt werden . The embodiment shown in Fig. 1 comprises a database unit 60 which serves to store the data DO of the electronic components of the assembly of the printed circuit board LP in order to provide traceability of the information about the electronic components of the assemblies of a printed circuit board LP. The stored data DO comprise at least component information (documentation and/or instructions from the manufacturer) and the component dimensions derived from the 3D model. This also makes it possible to store computer-aided design (CAD) data. All of the information is available for reuse and can be changed under version control. The database unit 60 can be a conventional data storage medium or can be implemented in a server and/or cloud platform. Furthermore, the database unit 60 can be a centralized product data management (PDM) system (e.g. Teamcenter) in which the data of the components is maintained.
Die Simulationseinheit 70 ist dazu eingerichtet , eine Simulation, basierend auf dem erstellten Lackierprogramm, für die Beschichtung der Baugruppe durch die Beschichtungsmaschine BM zu generieren . Die Lackiersequenz der Beschichtung kann somit vorab in einer CAD/CAM Software Umgebung simuliert werden, in welcher die Beschichtungsmaschine BM miteinbegri f fen wird . Die Simulationseinheit 70 umfasst mindestens eine CPU und eine Schnittstelle mit einem Display, durch welche die Simulation für einen Bediener bzw . Nutzer visualisiert werden kann . Die Ausgabeeinheit 50 kann mindestens eine CPU, einen Datenspeicher und eine Schnittstelle , beispielweise eine Application Programming Interface (API ) , umfassen . Die API kann mit einer Recheneinheit der Beschichtungsmaschine BM kabellos und/oder mit Kabel verbunden werden . The simulation unit 70 is set up to generate a simulation, based on the created painting program, for the coating of the assembly by the coating machine BM. The painting sequence of the coating can thus be simulated in advance in a CAD/CAM software environment in which the coating machine BM is included. The simulation unit 70 comprises at least one CPU and an interface with a display, through which the simulation can be visualized for an operator or user. The output unit 50 can comprise at least one CPU, a data memory and an interface, for example an Application Programming Interface (API). The API can be connected to a computing unit of the coating machine BM wirelessly and/or with a cable.
Das Lackierprogramm kann von der Recheneinheit der Beschichtungsmaschine BM ausgeführt werden . Damit kann die Beschichtung der mit elektronischen Komponenten einer Baugruppe bestückten Leiterplatte LP durchgeführt werden . The coating program can be executed by the computer unit of the coating machine BM. This allows the coating of the printed circuit board LP equipped with electronic components of an assembly to be carried out.
Fig . 2 zeigt in einem schematischen Ablauf diagramm eine Darstellung des Ablaufs eines computerimplementierten Verfahrens zur Bereitstellung eines Lackierprogramms für die Beschichtung einer mit elektronischen Komponenten einer Baugruppe bestückten Leiterplatte LP nach einer Aus führungs form der Erfindung . Das Verfahren kann vorteilhaft mit dem System 100 von Fig . 1 durchgeführt werden . Fig. 2 shows a schematic flow diagram of the sequence of a computer-implemented method for providing a coating program for coating a printed circuit board LP equipped with electronic components of an assembly according to an embodiment of the invention. The method can advantageously be carried out with the system 100 of Fig. 1.
In einem Schritt S 1 werden Daten von einem gespeicherten 3D- Modells der elektronischen Komponenten einer Baugruppe , die auf einer Leiterplatte LP verbaut sind, eingelesen . Das 3D- Modell kann von einer CAD/CAM Software erstellt werden . In a step S 1 , data is read from a stored 3D model of the electronic components of an assembly that are installed on a printed circuit board (LP). The 3D model can be created by CAD/CAM software.
In einem Schritt S2 werden die Lackierbereiche der j eweiligen elektronischen Komponenten der Leiterplatte LP automatisch identi fi ziert . Hierfür werden die Daten von dem 3D-Modell sowie technische Daten der j eweiligen elektronischen Komponenten, als auch Leiterbahnen und elektronische Kontakt flächen, als Basis für die Identi fi zierung verwendet . In a step S2, the coating areas of the respective electronic components of the circuit board LP are automatically identified. For this purpose, the data from the 3D model and technical data of the respective electronic components, as well as conductor tracks and electronic contact surfaces, are used as a basis for the identification.
In einem weiteren Schritt S3 wird einen Lackierpfad für die Beschichtung der elektronischen Komponenten der Baugruppe ermittelt . Hierfür wird in einigen Aus führungs formen der Erfindung ein Algorithmus ( Lackierpfad-Algorithmus ) verwendet . In einem Schritt S4 wird ein Lackierprogramm, auf Basis der identi fi zierten Lackierbereichen und dem ermittelten Lackierpfad, automatisch erstellt . In a further step S3, a painting path for coating the electronic components of the assembly is determined. In some embodiments of the invention, an algorithm (painting path algorithm) is used for this purpose. In a step S4, a painting program is automatically created based on the identified painting areas and the determined painting path.
In einem Schritt S5 wird das erstellte Lackierprogramm an eine Beschichtungsmaschine BM ausgegeben, welche die Beschichtung der Leiterplatte LP mit Lack, insbesondere mit Schutzlack, aus führt . In a step S5, the created painting program is output to a coating machine BM, which coats the printed circuit board LP with paint, in particular with protective paint.
Fig . 3 zeigt in einem schematischen Blockdiagramm eine Darstellung des Ablaufs eines computerimplementierten Verfahrens zur Bereitstellung eines Lackierprogramms für die Beschichtung einer mit elektronischen Komponenten einer Baugruppe bestückten Leiterplatte LP nach einer weiteren Aus führungs form der Erfindung . Das Verfahren kann vorteilhaft mit dem System 100 von Fig . 1 durchgeführt werden . Fig. 3 shows a schematic block diagram of the sequence of a computer-implemented method for providing a coating program for coating a printed circuit board LP equipped with electronic components of an assembly according to a further embodiment of the invention. The method can advantageously be carried out with the system 100 of Fig. 1.
In einem Schritt S 1 werden Daten von einem gespeicherten 3D- Modells der elektronischen Komponenten einer Baugruppe , die auf einer Leiterplatte LP verbaut sind, eingelesen . In a step S 1 , data is read from a stored 3D model of the electronic components of an assembly that are installed on a printed circuit board LP.
In einem Schritt S2 werden die Lackierbereiche der j eweiligen elektronischen Komponenten der Leiterplatte LP automatisch identi fi ziert . In a step S2, the coating areas of the respective electronic components of the printed circuit board LP are automatically identified.
In einem Schritt S20 werden die eingelesenen Daten der Baugruppe gespeichert und auslesbar zur Verfügung gestellt . Die Speicherung kann beispielsweise durch ein zentralisiertes Produktdatenmanagement ( PDM) System wie Teamcenter durchgeführt werden . In a step S20, the read data of the assembly is saved and made available for reading. The saving can be carried out, for example, by a centralized product data management (PDM) system such as Teamcenter.
In einem weiteren Schritt S3 wird ein Lackierpfad für die Beschichtung der elektronischen Komponenten der Baugruppe ermittelt bzw . berechnet . In Fig . 3 umfasst der Schritt S3 die Schritte S30 , S31 und S32 . In a further step S3, a painting path for coating the electronic components of the assembly is determined or calculated. In Fig. 3, step S3 includes steps S30, S31 and S32.
In einem Schritt S30 werden vordefinierte Operationstypen für die Ermittlung des Lackierpfades verwendet . Operationstypen sind in der Regel nach Erfahrung verfasst und können Anweisungen beinhalten . Demzufolge könnten laut einem Operationstyp die verschiedenen Lackierbereiche beispielsweise nach einer vordefinierten Reihenfolge lackiert werden . In a step S30, predefined operation types are used to determine the painting path. Operation types are usually written based on experience and may contain instructions . Accordingly, according to an operation type, the different painting areas could, for example, be painted in a predefined order .
In einem Schritt S31 wird festgestellt , ob mit den Operationstypen ein Lackierpfad definiert werden kann . Wenn ein geeigneter Lackierpfad gefunden bzw . ermittelt wird (mit einem + in Fig . 3 gekennzeichnet ) , wird in einem Schritt S4 das Lackierprogramm automatisch erstellt . Wenn dagegen kein Lackierpfad gefunden wird (mit einem - in Fig . 3 gekennzeichnet ) , dann wird in einem Schritt S32 einen Lackierpfad- Algorithmus verwendet , um einen Lackierpfad zu finden . In einem Schritt S4 kann dieses Lackierprogramm automatisch erstellt werden . In a step S31 it is determined whether a painting path can be defined using the operation types. If a suitable painting path is found or determined (marked with a + in Fig. 3), the painting program is automatically created in a step S4. If, on the other hand, no painting path is found (marked with a - in Fig. 3), then in a step S32 a painting path algorithm is used to find a painting path. In a step S4 this painting program can be created automatically.
In einem Schritt S41 werden, basierend auf einer Simulation einer von dem erstellten Lackierprogramm vorgegebenen Schichtdicke und/oder einer Schichtverteilung des Schutzlacks , die identi fi zierten Lackierbereiche und/oder den ermittelten Lackierpfad validiert . Die Validierung kann von einem Bediener bzw . Nutzer durchgeführt werden oder automatisch erfolgen . In a step S41, the identified painting areas and/or the determined painting path are validated based on a simulation of a layer thickness and/or a layer distribution of the protective paint specified by the created painting program. The validation can be carried out by an operator or user or can take place automatically.
In einem Schritt S42 wird das erstellte Lackierprogramm in ein lesbares Datenformat für die Beschichtungsmaschine BM übersetzt , beispielsweise durch den Einsatz von einem oder mehreren Postprozessoren . In a step S42, the created painting program is translated into a readable data format for the coating machine BM, for example by using one or more postprocessors.
In einem Schritt S43 wird, basierend auf dem erstellten Lackierprogramm, eine Simulation der Beschichtung der Baugruppe durch die Beschichtungsmaschine BM erstellt . In a step S43, based on the created painting program, a simulation of the coating of the assembly by the coating machine BM is created.
In einem Schritt S5 wird das erstellte Lackierprogramm über eine Schnittstelle an eine Beschichtungsmaschine BM ausgegeben, welche die Beschichtung der Leiterplatte LP aus führt . In einem Schritt S50 wird das erstellte Lackierprogramm gespeichert , beispielsweise in einem Datenspeichermedium . Von dort können die verschiedenen Programme abgerufen und erneut verwendet werden . In a step S5, the created painting program is output via an interface to a coating machine BM, which carries out the coating of the circuit board LP. In a step S50, the created painting program is saved, for example in a data storage medium. From there, the various programs can be called up and used again.
Fig . 4 zeigt beispielweise eine graphische Darstellung des 3D-Modells einer mit elektronischen Komponenten einer Baugruppe bestückten Leiterplatte LP, die durch eine CAD/CAM Software generiert wird . Die Leiterplatte LP kann Dioden, Transistoren, Widerstände , Induktionsspulen, ICs bzw . Chips oder Kondensatoren 101 umfassen . Besonders auf fallend sind in dem dargestellten Beispiel die Kondensatoren 101 , mit der die Leiterplatte LP bestückt ist . Fig . 4 kann beispielweise das Ergebnis eines Designs sein, das durch eine GPU dargestellt wird . Das 3D-Modell beinhaltet die dreidimensionale Koordinaten (Höhe , Breite und Länge ) von allen elektronischen Komponenten der Baugruppe . Diese Daten des 3D-Modells werden von der Eingabeeinheit 10 des erfindungsgemäßen Systems 100 eingelesen . Fig. 4 shows, for example, a graphical representation of the 3D model of a printed circuit board LP equipped with electronic components of an assembly, which is generated by CAD/CAM software. The printed circuit board LP can comprise diodes, transistors, resistors, induction coils, ICs or chips or capacitors 101. Particularly striking in the example shown are the capacitors 101 with which the printed circuit board LP is equipped. Fig. 4 can, for example, be the result of a design that is displayed by a GPU. The 3D model contains the three-dimensional coordinates (height, width and length) of all electronic components of the assembly. This data of the 3D model is read in by the input unit 10 of the system 100 according to the invention.
Fig . 5 zeigt beispielweise eine Darstellung der identi fi zierten Lackierbereiche LB einer mit elektronischen Komponenten einer Baugruppe bestückten Leiterplatte LP gemäß einer Ausführungs form der Erfindung . Fig . 5 zeigt einen Querschnitt der Leiterplatte LP der Fig . 4 . Die Lackierbereiche LB werden automatisch, d . h . ohne manuellen Betrieb bzw . Betätigung eines Bedieners , von den eingelesenen Daten des 3D-Modells und basierend auf Informationen, die in den verschiedenen elektronischen Komponenten hinterlegt sind, hergeleitet . Fig . 5 betri f ft demzufolge eine graphische Darstellung der Identi fizierung der Lackierbereiche LB, die von der Lackierbereicheidenti fi zierungseinheit 20 durchgeführt wird . Für j eden identi fi zierten Lackierbereich LB gibt es entsprechende Informationen über die j eweils benötigten Schichtdicke und sowie die Schichtverteilung des Schutzlacks . Gewisse Lackierbereiche LB der Baugruppe BG können auch mit mehreren übereinanderliegenden Schichten von Schutzlacken beschichtet werden, die j eweils eine zugehörige Schichtdicke aufweisen . Hierzu wird vorzugsweise gewartet bis die darunterliegende Schicht getrocknet ist . Die Düse der Beschichtungsmaschine BM kann demnach entsprechend dem berechneten Lackierpfad einige Stellen oder Lackierbereiche der Baugruppe mehrfach anfahren, um dort mehr als eine Lackschicht auf zubringen . Fig. 5 shows, for example, a representation of the identified painting areas LB of a circuit board LP equipped with electronic components of an assembly according to an embodiment of the invention. Fig. 5 shows a cross-section of the circuit board LP of Fig. 4. The painting areas LB are derived automatically, i.e. without manual operation or activation by an operator, from the read-in data of the 3D model and based on information stored in the various electronic components. Fig. 5 therefore concerns a graphic representation of the identification of the painting areas LB, which is carried out by the painting area identification unit 20. For each identified painting area LB there is corresponding information about the layer thickness required in each case and the layer distribution of the protective varnish. Certain painting areas LB of the assembly BG can also be coated with several superimposed layers of protective paint, each with a corresponding layer thickness. preferably wait until the underlying layer has dried. The nozzle of the BM coating machine can therefore move to certain spots or painting areas of the assembly several times according to the calculated painting path in order to apply more than one layer of paint there.
Fig . 6 zeigt eine graphische Darstellung der Leiterplatte LP von Fig . 5 , in welcher Sicherheitsabstände SU mit gestrichelten Linien markiert sind . Die Lackierpfad-Bestimmungseinheit 30 implementiert in einigen Aus führungs formen der Erfindung einen Lackierpfad-Algorithmus , welcher die Information der identi fi zierten Lackierbereiche LB, zusammen mit den j eweiligen benötigten Schichtdicken und Schichtverteilungen, als Input verwendet . In manchen Aus führungs formen gibt es Operationstypen bzw . Kriterien, die von dem Lackierpfad-Algorithmus berücksichtigt werden . Beispielweise kann ein Operationstyp darauf hindeuten bzw . angeben, dass zuallererst die Kondensatoren beschichtet werden sollten . Die Kondensatoren bilden einen Komponenten-Typ von Komponenten innerhalb der Baugruppe . Demnach kann die Beschichtung bzw . die Lackierung von bestimmten Komponententypen priorisiert werden . Der ermittelte Lackierpfad sollte die verschiedenen Kriterien erfüllen . Die Schichtdicke der Schut zlackschicht eder elektronischen Komponente stellt ein weiteres wichtiges Kriterium dar . In diesem Fall kann der ermittelte Lackierpfad berücksichtigen, dass beispielsweise zunächst diej enigen Komponenten der Baugruppe , die zur Lackierung eine größere Menge an Lack pro Fläche benötigen beschichtet werden . Einen optimalen Lackierpfad zu finden bzw . zu berechnen ist besonders heraus fordernd, wenn es mehrere Randbedingungen bzw . Kriterien gibt , die gleichzeitig berücksichtigt werden sollen . Fig . 6 zeigt beispielweise einige Sicherheitsabstände SU, die Bereiche definieren, die nicht mit Schutzlack beschichtet werden sollen . Einige Bereiche davon umschließen elektronischen Komponenten, die nicht zu beschichten sind . Bei einer komplex aufgebauten Leiterplatte LP, die mit vielen teilweise unterschiedlichen Komponenten bestückt wird und bei welcher viele Randbedingungen zu erfüllen sind, bietet die automatisierte Ermittlung des Lackierpfads einen klaren Vorteil gegenüber einer manuellen Lackierpfaddefinition . Fig. 6 shows a graphical representation of the circuit board LP from Fig. 5, in which safety distances SU are marked with dashed lines. In some embodiments of the invention, the painting path determination unit 30 implements a painting path algorithm which uses the information of the identified painting areas LB, together with the respective required layer thicknesses and layer distributions, as input. In some embodiments, there are operation types or criteria that are taken into account by the painting path algorithm. For example, an operation type can indicate or state that the capacitors should be coated first of all. The capacitors form a component type of components within the assembly. Accordingly, the coating or painting of certain component types can be prioritized. The determined painting path should meet the various criteria. The thickness of the protective lacquer layer of each electronic component is another important criterion. In this case, the determined painting path can take into account that, for example, those components of the assembly that require a larger amount of lacquer per area for painting are coated first. Finding or calculating an optimal painting path is particularly challenging when there are several boundary conditions or criteria that must be taken into account at the same time. Fig. 6 shows, for example, some safety distances SU that define areas that should not be coated with protective lacquer. Some of these areas enclose electronic components that are not to be coated. In the case of a complex printed circuit board LP that is equipped with many, sometimes different, components and for which many boundary conditions must be met, the automated determination of the Painting path has a clear advantage over manual painting path definition.
Fig . 7 zeigt ein CAD/CAM System 500 , umfassend eine Datenverarbeitungseinheit 600 zur Durchführung des computerimplementiertes Verfahren nach dem zweiten Aspekt der Erfindung, wobei das CAD/CAM System 500 dazu ausgelegt ist , ein 3D-Modell einer mit elektronischen Komponenten einer Baugruppe bestückten Leiterplatte LP zu generieren . Fig. 7 shows a CAD/CAM system 500 comprising a data processing unit 600 for carrying out the computer-implemented method according to the second aspect of the invention, wherein the CAD/CAM system 500 is designed to generate a 3D model of a printed circuit board LP equipped with electronic components of an assembly.
Die Datenverarbeitungseinheit 600 kann als ein Add-On des CAD/CAM Systems 500 angesehen werden . Eine CAD/CAM- Recheneinheit 520 ist dazu ausgelegt , ein 3D-Modell für das Design einer Leiterplatte LP zu generieren . Die Daten des 3D- Modells sind in einem CAD/CAM-Datenspeichermedium 520 gespeichert . Eine Fertigung der Leiterplatte LP unter Benutzung des Designs kann dann erfolgen . Die Datenverarbeitungseinheit 600 ist dazu eingerichtet , die Daten des 3D-Modells abzurufen und gemäß dem in Fig . 2 und/oder in Fig . 3 dargestellten Verfahren zu verarbeiten . Die Datenverarbeitungseinheit 600 ist dazu eingerichtet , ein Lackierprogramm bereitzustellen und es an eine Beschichtungsmaschine BM aus zugeben . Mit dem Lackierprogramm kann die Beschichtungsmaschine BM die elektronischen Komponenten der bestückten Leiterplatte LP lackieren . The data processing unit 600 can be viewed as an add-on of the CAD/CAM system 500. A CAD/CAM computing unit 520 is designed to generate a 3D model for the design of a printed circuit board LP. The data of the 3D model are stored in a CAD/CAM data storage medium 520. The printed circuit board LP can then be manufactured using the design. The data processing unit 600 is designed to retrieve the data of the 3D model and to process it according to the method shown in Fig. 2 and/or in Fig. 3. The data processing unit 600 is designed to provide a painting program and output it to a coating machine BM. The coating machine BM can use the painting program to paint the electronic components of the assembled printed circuit board LP.
Fig . 8 zeigt ein schematisches Blockdiagramm, das ein Computerprogrammprodukt 300 gemäß einer Aus führungs form des dritten Aspekts der vorliegenden Erfindung illustriert . Das Computerprogrammprodukt 300 umfasst einen aus führbaren Programmcode 350 , der so konfiguriert ist , dass er bei seiner Aus führung das Verfahren gemäß einer beliebigen Aus führungs form des zweiten Aspekts der vorliegenden Erfindung durchführt , insbesondere wie es in den vorangegangenen Figuren beschrieben wurde . Fig. 8 shows a schematic block diagram illustrating a computer program product 300 according to an embodiment of the third aspect of the present invention. The computer program product 300 comprises an executable program code 350 which, when executed, is configured to carry out the method according to any embodiment of the second aspect of the present invention, in particular as described in the previous figures.
Fig . 9 zeigt ein schematisches Blockdiagramm, das ein nicht flüchtiges computerlesbares Datenspeichermedium 400 gemäß einer Aus führungs form des vierten Aspekts der vorliegenden Er- findung illustriert . Das Datenspeichermedium 400 umfasst einen aus führbaren Programmcode 450 , der so konfiguriert ist , dass er, wenn er ausgeführt wird, das Verfahren gemäß einer beliebigen Aus führungs form des zweiten Aspekts der vorliegenden Erfindung durchführt , insbesondere wie es in den vorangegangenen Figuren beschrieben wurde . Fig. 9 shows a schematic block diagram illustrating a non-transitory computer-readable data storage medium 400 according to an embodiment of the fourth aspect of the present invention. invention. The data storage medium 400 comprises an executable program code 450 which, when executed, is configured to carry out the method according to any embodiment of the second aspect of the present invention, in particular as described in the previous figures.
Das nicht- flüchtige , computerlesbare Datenspeichermedium kann j ede Art von Computerspeicher, insbesondere einen Halbleiterspeicher wie einen Festkörperspeicher, umfassen oder daraus bestehen . Das Datenspeichermedium kann auch eine CD, eine DVD, eine Blu-Ray-Disc, einen USB-Speicherstick oder ähnliches umfassen oder aus solchen bestehen . The non-volatile, computer-readable data storage medium can comprise or consist of any type of computer memory, in particular a semiconductor memory such as a solid-state memory. The data storage medium can also comprise or consist of a CD, a DVD, a Blu-ray disc, a USB memory stick or the like.
Das erfindungsgemäße System zeichnet sich unter anderem auch durch folgenden Merkmale aus : The system according to the invention is characterized, among other things, by the following features:
Es können diskrete 3D-Daten von eingescannten Auftrags- /Abtragsprof ilen (Referenzprofile ) direkt verwendet , ohne dass eine analytische Approximation erforderlich ist . Discrete 3D data from scanned deposition/removal profiles (reference profiles) can be used directly without the need for analytical approximation.
Die Bauteiloberfläche wird mit ausreichender Dichte vernetzt , um Stützpunkte für die Berechnung des Lackierpfades zu generieren . The component surface is meshed with sufficient density to generate support points for the calculation of the painting path.
Die Diskretisierung der Werkzeugbahnen eines Werkzeuges der Beschichtungsmaschine BM erfolgt vorzugsweise automatisch entsprechend vorgegebener Werte für die Zeit- und Ortsauflösung . The discretization of the tool paths of a tool of the BM coating machine is preferably carried out automatically according to specified values for the time and spatial resolution.
Die Simulation verwendet vorzugsweise einen optisch basierten Raytracing-Ansat z zur Proj ektion des diskreten Auftrags- /Abtragsprof iles auf die Stützpunkte der Bauteiloberfläche . The simulation preferably uses an optically based ray tracing approach to project the discrete deposition/removal profile onto the support points of the component surface.
Die Wirkung des bewegten Tools bzw . Werkzeugs der Beschichtungsmaschine BM kann über die Summation kleiner Zeitschritte erfasst werden . Die Berechnung des Lackierpfades erfolgt vorzugsweise parallel in mehreren Threads . The effect of the moving tool or tools of the BM coating machine can be recorded by summing small time steps. The calculation of the painting path is preferably carried out in parallel in several threads.
Die Wirkung prozessspezi fischer Ef fekte ( z . B . Reflexion oder Streuung von auf tref f enden Partikeln) kann über experimentell erfasste ef fektive Parameter und empirische Modelle mitberücksichtigt werden . The effect of process-specific effects (e.g. reflection or scattering of impacting particles) can be taken into account using experimentally determined effective parameters and empirical models.
Die Simulation kann für j eden Punkt des Lackierpfades zusätzliche prozessabhängige Parameter ( z . B . Auftref fwinkel , Primär- , Sekundäref fekt , Anzahl der Überfahrten, Abtrags- /Auf tragsrate , mittlerer Abstand zum Tool , ... ) berücksichtigen, welche für eine finale Schichtmorphologie bzw . Oberflächenbeanspruchung von Bedeutung sein können . Zusätzlich können auch thermische Beanspruchungen über geeignete Modellannahmen erfasst werden . Diese Daten sind für das Aufsetzen digitaler Zwillinge verfügbar . For each point of the painting path, the simulation can take into account additional process-dependent parameters (e.g. angle of impact, primary and secondary effects, number of passes, removal/application rate, average distance to the tool, etc.), which can be important for the final layer morphology or surface stress. In addition, thermal stress can also be recorded using suitable model assumptions. This data is available for setting up digital twins.
Das erfindungsgemäße Verfahren kann für verschiedene thermische Spritzverfahren (APS , VPS , HVOF, Flash) an komplexen Baugruppen zur Optimierung von Werkzeugbahnen eines Werkzeugs eingesetzt werden . Die Abweichungen zwischen berechneter und realer aufgebrachter Schichtdicke des Schutzlacks betragen weniger als 10% , vorzugsweise weniger als 1 % . The method according to the invention can be used for various thermal spraying processes (APS, VPS, HVOF, Flash) on complex assemblies to optimize tool paths of a tool. The deviations between the calculated and actual applied layer thickness of the protective coating are less than 10%, preferably less than 1%.
Die vorstehende Beschreibung der of fengelegten Aus führungsformen sind lediglich Beispiele für mögliche Aus führungs formen, die dem Fachmann die Möglichkeit geben sollen, die vorliegende Erfindung herzustellen oder zu verwenden . Verschiedene Variationen und Änderungen dieser Aus führungs formen werden für den Fachmann leicht ersichtlich sein, und die hierin definierten allgemeinen Grundsätze können auf andere Aus führungs formen angewandt werden, ohne dass der Kern oder der Anwendungsbereich des vorliegenden Dokuments berührt wird . Daher soll die vorliegende Erfindung nicht auf die hierin gezeigten Aus führungs formen beschränkt werden, sondern es soll ihr der größtmögliche Anwendungsbereich eingeräumt werden, der mit den hierin offenbarten Grundsätzen und neuen Merkmalen vereinbar ist. The foregoing description of the disclosed embodiments are merely examples of possible embodiments intended to enable one skilled in the art to make or use the present invention. Various variations and modifications to these embodiments will be readily apparent to one skilled in the art, and the general principles defined herein may be applied to other embodiments without affecting the spirit or scope of the present document. Therefore, the present invention is not intended to be limited to the embodiments shown herein, but is intended to be given the widest possible scope of application. that is consistent with the principles and new features disclosed herein.
Bezugs zeichenliste Reference symbol list
10 Eingabeeinheit 10 Input unit
20 Lackierbereiche- Identi f i zierungseinheit 20 Painting areas identification unit
30 Lackierpfad-Bestimmungseinheit 30 Painting path determination unit
40 Recheneinheit 40 computing unit
42 Validierungseinheit 42 Validation Unit
44 Übersetzungseinheit 44 Translation unit
46 Lac ki e rpr o gramm- Spei ehe rungs einhe it 46 Paint program storage unit
50 Ausgabeeinheit 50 Output unit
60 Datenbankeinheit 60 database unit
70 S imulationseinheit 70 S simulation unit
100 System 100 Systems
101 Kondensator 101 Capacitor
300 Computerprogrammprodukt 300 Computer program product
310 Operationseinheit 310 Operating Unit
320 Optimierungseinheit 320 Optimization unit
350 Programmcode 350 Program code
400 Nicht- flüchtiges computerlesbares Datenspeichermedium 400 Non-volatile computer-readable data storage medium
450 Programmcode 450 Program code
500 CAD/CAM System 500 CAD/CAM systems
520 CAD/CAM-Recheneinheit 520 CAD/CAM computing unit
530 CAD/CAM-Datenspeichermedium 530 CAD/CAM data storage medium
600 Datenverarbeitungseinheit 600 Data processing unit
BM Beschichtungsmaschine BM coating machine
D0 Daten D0 Data
LB Lackierbereiche LB painting areas
LP Leiterplatte LP circuit board
S1-S50 Schritte des Verfahrens S1-S50 Steps of the procedure

Claims

Patentansprüche Patent claims
1. System (100) zur Bereitstellung eines Lackierprogramms für die Beschichtung einer mit elektronischen Komponenten, Leiterbahnen und elektronischen Kontakt flächen einer Baugruppe bestückten Leiterplatte (LP) mit einem Schutzlack durch eine Beschichtungsmaschine (BM) , umfassend: eine Eingabeeinheit (10) , welche dazu eingerichtet ist, Daten (DO) von einem gespeicherten 3D-Modell der Baugruppe einzulesen; eine Lackierbereiche-Identif izierungseinheit (20) , welche dazu eingerichtet ist, basierend auf den eingelesenen Daten (DO) der Baugruppe, Lackierbereiche (LB) der jeweiligen elektronischen Komponenten und/oder der Leiterbahnen und/oder der elektronischen Kontakt flächen der Baugruppe automatisch zu identifizieren; eine Lackierpfad-Bestimmungseinheit (30) , welche dazu eingerichtet ist, basierend auf den identifizierten Lackierbereichen (LB) , mindestens einen Lackierpfad für die Beschichtung zumindest der elektronischen Komponente der Baugruppe automatisch zu ermitteln; eine Recheneinheit (40) , welche dazu eingerichtet ist, basierend auf den identifizierten Lackierbereichen (LB) und dem ermittelten Lackierpfad das Lackierprogramm zu erstellen; und eine Ausgabeeinheit (50) , welche dazu eingerichtet ist, das von der Recheneinheit (40) erstellte Lackierprogramm an die Beschichtungsmaschine (BM) auszugeben. 1. System (100) for providing a painting program for coating a circuit board (LP) equipped with electronic components, conductor tracks and electronic contact surfaces of an assembly with a protective paint by a coating machine (BM), comprising: an input unit (10) which is set up to read in data (DO) from a stored 3D model of the assembly; a painting area identification unit (20) which is set up to automatically identify painting areas (LB) of the respective electronic components and/or the conductor tracks and/or the electronic contact surfaces of the assembly based on the read-in data (DO) of the assembly; a painting path determination unit (30) which is set up to automatically determine at least one painting path for coating at least the electronic component of the assembly based on the identified painting areas (LB); a computing unit (40) which is configured to create the painting program based on the identified painting areas (LB) and the determined painting path; and an output unit (50) which is configured to output the painting program created by the computing unit (40) to the coating machine (BM).
2. System (100) nach Anspruch 1, wobei die eingelesenen Daten (D0) zumindest die geometrischen Abmessungen der elektronischen Komponenten der Baugruppe umfassen. 2. System (100) according to claim 1, wherein the read data (D0) comprise at least the geometric dimensions of the electronic components of the assembly.
3. System (100) nach einem der vorangehenden Ansprüche, wobei die Eingabeeinheit (10) ferner dazu eingerichtet ist, Informationen, die auf den elektronischen Komponenten hinterlegt sind, einzulesen. 3. System (100) according to one of the preceding claims, wherein the input unit (10) is further configured to read information stored on the electronic components.
4. System (100) nach einem der vorangehenden Ansprüche, wobei die Lackierpfad-Bestimmungseinheit (30) eine Operationseinheit (310) umfasst, welche dazu eingerichtet ist, vordefinierte Operationstypen für die Ermittlung des Lackierpfades zur Verfügung zu stellen. 4. System (100) according to one of the preceding claims, wherein the painting path determination unit (30) comprises an operation unit (310) which is configured to provide predefined operation types for determining the painting path.
5. System (100) nach einem der vorangehenden Ansprüche, ferner umfassend eine Validierungseinheit (42) , welche dazu eingerichtet ist, basierend auf einer Simulation einer von dem erstellten Lackierprogramm vorgegebenen Schichtdicke und/oder einer Schichtverteilung des Schutzlacks, die identifizierten Lackierbereiche (LB) und/oder den ermittelten Lackierpfad zu validieren. 5. System (100) according to one of the preceding claims, further comprising a validation unit (42) which is configured to validate the identified painting areas (LB) and/or the determined painting path based on a simulation of a layer thickness and/or a layer distribution of the protective paint specified by the created painting program.
6. System (100) nach einem der vorangehenden Ansprüche, wobei die Lackierpfad-Bestimmungseinheit (30) einen Algorithmus implementiert, der dazu eingerichtet ist, den Lackierpfad zu berechnen, zumindest hinsichtlich eines Verfahrwegs und/oder hinsichtlich einer Reihenfolge unter Berücksichtigung definierter Umfahrungen und/oder Sicherheitsabstände. 6. System (100) according to one of the preceding claims, wherein the painting path determination unit (30) implements an algorithm which is configured to calculate the painting path, at least with regard to a travel path and/or with regard to a sequence, taking into account defined detours and/or safety distances.
7. System (100) nach Anspruch 6, wobei die Lackierpfad- Bestimmungseinheit (30) eine Optimierungseinheit (320) umfasst, die dazu eingerichtet ist, ein künstliches Intelligenz-Modul zu implementieren, wobei das künstliche Intelligenz-Modul den Algorithmus optimiert. 7. The system (100) of claim 6, wherein the painting path determination unit (30) comprises an optimization unit (320) configured to implement an artificial intelligence module, the artificial intelligence module optimizing the algorithm.
8. System (100) nach einem der vorangehenden Ansprüche, ferner umfassend eine Übersetzungseinheit (44) , welche dazu eingerichtet ist, das erstellte Lackierprogramm in ein lesbares Datenformat für die Beschichtungsmaschine (BM) zu übersetzen . 8. System (100) according to one of the preceding claims, further comprising a translation unit (44) which is configured to translate the created painting program into a readable data format for the coating machine (BM).
9. System (100) nach einem der vorangehenden Ansprüche, ferner umfassend eine Lackierprogramm-Speicherungseinheit (46) , welche dazu eingerichtet ist, das erstellte Lackierprogramm zu speichern. 9. System (100) according to one of the preceding claims, further comprising a painting program storage unit (46) which is configured to store the created painting program.
10. System (100) nach einem der vorangehenden Ansprüche, ferner umfassend eine Datenbankeinheit (60) , welche dazu eingerichtet ist, die eingelesenen Daten (DO) der Baugruppe zu speichern und von dort auslesbar zu stellen. 10. System (100) according to one of the preceding claims, further comprising a database unit (60) which is configured to store the read-in data (DO) of the module and to make it readable from there.
11. System (100) nach einem der vorangehenden Ansprüche, ferner umfassend eine Simulationseinheit (70) , welche dazu eingerichtet ist, basierend auf dem erstellten Lackierprogramm, eine Simulation der Beschichtung der Baugruppe durch die Beschichtungsmaschine (BM ) zu erstellen. 11. System (100) according to one of the preceding claims, further comprising a simulation unit (70) which is configured to create a simulation of the coating of the assembly by the coating machine (BM) based on the created painting program.
12. Computerimplementiertes Verfahren zur Bereitstellung eines Lackierprogramms für die Beschichtung einer mit elektronischen Komponenten, Leiterbahnen und elektronischen Kontaktflächen einer Baugruppe bestückten Leiterplatte (LP) mit einem Schutzlack durch eine Beschichtungsmaschine BM, mit den Schritten : 12. Computer-implemented method for providing a coating program for coating a printed circuit board (LP) equipped with electronic components, conductor tracks and electronic contact surfaces of an assembly with a protective coating by a coating machine BM, comprising the steps:
Einlesen (Sl) von Daten (D0) eines gespeicherten 3D- Modells der Baugruppe; automatisches Identifizieren (S2) , basierend auf den eingelesenen Daten (D0) der Baugruppe, von Lackierbereichen (LB) der jeweiligen elektronischen Komponenten und/oder der Leiterbahnen und/oder der elektronischen Kontakt flächen der Baugruppe ; automatisches Ermitteln (S3) , basierend auf den identifizierten Lackierbereichen (LB) , mindestens eines Lackierpfades für die Beschichtung zumindest der elektronischen Komponenten der Baugruppe; Reading (Sl) data (D0) of a stored 3D model of the assembly; automatically identifying (S2), based on the read data (D0) of the assembly, painting areas (LB) of the respective electronic components and/or the conductor tracks and/or the electronic contact surfaces of the assembly; automatically determining (S3), based on the identified painting areas (LB), at least one painting path for coating at least the electronic components of the assembly;
Erstellen (S4) , basierend auf den identifizierten Lackierbereichen (LB) und dem ermittelten Lackierpfad, des Lackierprogramms; und Creating (S4) the painting program based on the identified painting areas (LB) and the determined painting path; and
Ausgeben (S5) des erstellten Lackierprogramms an die Beschichtungsmaschine (BM) . Output (S5) of the created painting program to the coating machine (BM).
13. Computerprogrammprodukt (300) , umfassend einen ausführbaren Programmcode (350) , der dazu ausgelegt ist, wenn er ausgeführt wird, das computerimplementierte Verfahren gemäß Patentanspruch 12 durchzuführen. 13. A computer program product (300) comprising an executable program code (350) which, when executed, is designed to carry out the computer-implemented method according to claim 12.
14. Nicht-flüchtiges computerlesbares Datenspeichermedium (400) , umfassend einen ausführbaren Programmcode (450) , der dazu ausgelegt ist, wenn er ausgeführt wird, das computerim- plementierte Verfahren gemäß Patentanspruch 12 durchzuführen. 14. A non-transitory computer-readable data storage medium (400) comprising an executable program code (450) which, when executed, is designed to carry out the computer-implemented method according to claim 12.
15. CAD/CAM System (500) mit einer Datenverarbeitungseinheit (600) zur Durchführung des computerimplementierten Verfahrens von Anspruch 12, wobei das CAD/CAM System (500) dazu ausge- legt ist, ein 3D-Modell einer mit elektronischen Komponenten einer Baugruppe bestückten Leiterplatte zu generieren. 15. CAD/CAM system (500) with a data processing unit (600) for carrying out the computer-implemented method of claim 12, wherein the CAD/CAM system (500) is designed to generate a 3D model of a circuit board populated with electronic components of an assembly.
PCT/EP2023/084098 2022-12-19 2023-12-04 System and method for providing a painting program for coating circuit boards WO2024132471A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102022213893.7A DE102022213893A1 (en) 2022-12-19 2022-12-19 System and method for providing a coating program for the coating of printed circuit boards
DE102022213893.7 2022-12-19

Publications (1)

Publication Number Publication Date
WO2024132471A1 true WO2024132471A1 (en) 2024-06-27

Family

ID=89321473

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2023/084098 WO2024132471A1 (en) 2022-12-19 2023-12-04 System and method for providing a painting program for coating circuit boards

Country Status (2)

Country Link
DE (1) DE102022213893A1 (en)
WO (1) WO2024132471A1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3448951B2 (en) 1993-08-25 2003-09-22 マツダ株式会社 Method of evaluating coating sagging in coating and coating control device
DE102017215725A1 (en) 2017-09-07 2019-03-07 Bayerische Motoren Werke Aktiengesellschaft Device and method for applying a sealing and / or coating material
US11285616B2 (en) 2018-09-11 2022-03-29 Teradyne, Inc. Robotic coating application system and method
DE102020205456A1 (en) 2020-04-29 2021-11-04 Volkswagen Aktiengesellschaft Method, device and computer program for generating quality information about a coating profile, method, device and computer program for generating a database, monitoring device

Also Published As

Publication number Publication date
DE102022213893A1 (en) 2024-06-20

Similar Documents

Publication Publication Date Title
EP2266066B1 (en) Method and system for identification of grouping characteristics
EP3786745B1 (en) Identification of deviations between an actual system and a digital twin
EP0845720B1 (en) Method of analyzing and monitoring of transient processes
WO2015082669A1 (en) Computer-implemented method and system for automatically monitoring and determining the status of entire process segments in a process unit
DE102018123393A1 (en) Detection of parking areas
EP3847517B1 (en) Method and device and method for producing a product and computer program product
DE102008013400B4 (en) Method for determining locking areas of at least one first object movable in space
WO2018059851A1 (en) Method for tamper-proof evaluation of component properties of a field device
WO2024132471A1 (en) System and method for providing a painting program for coating circuit boards
EP0829809B1 (en) Method for process-visualization
DE102011082838A1 (en) Identification of reusable mechatronic components in factory automation
DE10013137B4 (en) Process for image-controlled testing and processing of products
EP2118618A1 (en) Method for determining measuring points
DE102005014979B4 (en) Method and arrangement for planning production facilities
DE102019207090A1 (en) Method for providing an object tracking function
WO2024056445A1 (en) Method and system for generating a production plan for an order to produce components using at least one production facility
EP4109194B1 (en) Sensor data generation for controlling an autonomous vehicle
WO2012150150A1 (en) Method for estimating the position of an object in a computer-assisted manner
DE102006056273A1 (en) Complete system or subsystem e.g. process system, planning and/or developing method, involves implementing planning and development of complete or subsystem in completely automated manner by software and/or data network i.e. neural network
DE2559252C2 (en) System for the computer-aided generation of a die for printed circuit boards
EP4141805A1 (en) Method for the generation, automated annotation and provision of training image data
EP4231800A1 (en) Computer-implemented method for determining a set of module types of a predetermined set of module types and an associated modified fixed setup
WO2021239476A1 (en) Method and systems for providing synthetic labelled training datasets and applications thereof
EP4300345A1 (en) Computer-implemented method and device for generating a digital 3d, in particular so-called building information model, bim, building model and computer program product
EP4228386A1 (en) Computer-implemented method for determining at least one fixed setup family of semiconductor types for a predetermined number of multiple groups of one or feeding lines