System and method for providing a painting program for coating circuit boards
Patent Information
- Application Number
- EP2023828350
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-12-19
- Filing Date
- 2023-12-04
- Publication Date
- 2025-08-20
AI Technical Summary
Conventional manual processes for creating painting programs for coating circuit boards are inaccurate, error-prone, and time-consuming, leading to increased downtime for coating machines due to the variability of circuit boards and their assemblies.
A system and method that utilize a 3D model of the circuit board assembly to automatically identify painting areas and determine optimal painting paths, generating a precise painting program for the coating machine, reducing the need for manual intervention and minimizing downtime.
The system enables quick, precise, and efficient coating of circuit boards by automating the painting program creation, significantly reducing downtime and improving accuracy, allowing for faster production and reduced errors.
Smart Images

Figure 1.1
Abstract
Description
[0001] Description
[0002] System and method for providing a coating program for the coating of printed circuit boards
[0003] The present invention relates to a system for providing a coating program for coating printed circuit boards equipped with electronic components of an assembly with a protective coating by a coating machine. Furthermore, the present invention relates to a computer-implemented method for providing the coating program.
[0004] During the manufacture of printed circuit boards, a protective coating is applied to provide a coating for the various electronic components of an assembly mounted on the board. This coating serves to provide better protection for the boards against corrosion, dirt, pollutants, and other environmental influences. For example, the protective coating can have a flame-retardant effect, enabling the use of electronic devices containing the printed circuit boards in explosion-proof areas such as refineries.
[0005] The coating is applied using a coating machine which uses a movable nozzle to selectively apply the protective coating. With conventional coating processes, this is currently done manually, i.e. the individual positions of the coating areas on a populated circuit board must be approached with the nozzle under the supervision of an operator. The positions reached are then saved in a coating program, which outputs the information about the various coating areas and the coating paths that should be followed when coating the circuit board to the coating machine. The coating areas vary from circuit board to circuit board, which is why a specific coating program must be created for each individual circuit board.
[0006] Because it is performed manually, this conventional procedure is often inaccurate and error-prone. Furthermore, this conventional manual procedure is time-consuming. Since some coating machines must be stopped during the paint program creation process, the downtime of these coating machines increases with each new paint program that must be created.
[0007] As the variety of printed circuit boards and the assemblies on them, as well as their possible applications, increases over time, an automated, improved procedure that reduces the idle time or downtime of the coating machines is required.
[0008] Regardless of the grammatical gender of a particular term, persons with male, female or other gender identity are included.
[0009] 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 populated 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.
[0010] 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.
[0011] The system according to the invention serves to provide a coating program for coating a circuit board equipped with electronic components, conductor tracks and electronic contact surfaces of an assembly with a protective coating 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 coating area identification unit which is set up to automatically identify coating 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 coating path determination unit which is set up to automatically determine at least one coating path for coating at least the electronic component of the assembly based on the identified coating areas;a computing unit configured to create the painting program based on the identified painting areas and the determined painting path; and an output unit configured to output the painting program created by the computing unit to the coating machine.
[0012] The electronic components of an assembly can include resistors, transistors, capacitors, inductors, diodes, integrated circuits or chips, and any electronic component that can be mounted on a printed circuit board.
[0013] The conductor tracks describe electrically conductive connections between the electronic components. The conductor tracks could be made of copper, for example.
[0014] 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.
[0015] The coating areas describe the surfaces of the printed circuit board assembly that must 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.
[0016] 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.
[0017] A coating machine is a machine that can coat electronic components on a printed circuit board. The coating machine can be equipped to perform various coating types, including conformal coating, potting, dispensing, jetting, film coating, and / or spraying. Materials such as silicone, acrylic, urethane, and epoxy can be used for conformal coating.
[0018] 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 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 foregoing elements. Each element may further comprise a working memory 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 working 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.
[0019] The various units may be implemented in hardware and / or software, wired and / or wireless, and any combination thereof. They may further include an interface to an intranet or the Internet, to a cloud computing service, to a remote server, and / or the like.
[0020] 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.
[0021] 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.
[0022] 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 connected to the cloud computing system. The devices may include or consist of, for example, 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.
[0023] The cloud computing system can enable remote configuration, monitoring, control, and maintenance of the connected devices (also commonly referred to as "assets"). Furthermore, the cloud computing system can facilitate the storage of large amounts of data regularly collected by the devices, analysis of the large amounts of data, and provision of insights (e.g., performance indicators, outliers) and alerts to operators, field technicians, or device owners via a graphical user interface (e.g., web applications). The insights and alerts can enable control and maintenance of the devices, leading to efficient and fail-safe device operation.The cloud computing system can also allow modification of parameters associated with the devices and issue control commands based on the insights and alerts through the graphical user interface.
[0024] 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 dedicated platform (hereinafter referred to as a "cloud computing platform") is installed on the servers / processors, providing the aforementioned functions as a service (hereinafter referred to as a "cloud service"). The cloud computing platform may comprise a plurality of software programs executing 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.
[0025] One or more APIs are used in the cloud computing system to offer various cloud services to users.
[0026] The invention further provides a computer-implemented method for providing a coating program for coating a circuit board populated with electronic components, conductor tracks and electronic contact surfaces of an assembly with a protective coating by a coating machine, comprising the steps of: (a) reading in data from a stored 3D model of the assembly; (b) automatically identifying, based on the read-in data of the assembly, coating 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 coating areas, at least one coating path for coating at least the electronic components of the assembly; (d) creating, based on the identified coating areas and the determined coating path, the coating program;and ( e ) outputting the created coating program to the coating machine .;
[0027] 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.
[0028] 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.
[0029] According to a fourth aspect, the invention provides a non-transitory computer-readable data storage medium comprising executable program code adapted to perform the method according to the second aspect of the present invention when executed.
[0030] 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 configured to generate such a code and which is configured, when executed, to carry out the method according to the second aspect of the present invention.
[0031] According to a sixth aspect of the invention, this 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 printed circuit board populated with electronic components of an assembly.
[0032] One idea underlying the invention is to introduce a system for providing a coating program for coating the electronic components, the conductor tracks, and the electronic contact surfaces of a printed circuit board, wherein the coating program is provided automatically. The system is configured to use or evaluate three-dimensional data of the assembly in order to identify the various coating areas and determine an optimal coating path. A computing unit is designed to process this information as a software program that is used by the coating machine to coat the printed circuit board.
[0033] 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 an assembly on a printed circuit board. First, three-dimensional data from the various electronic components of an assembly on a printed circuit board is read in. The data is then processed to automatically identify (or determine) the coating areas of the respective electronic components, the conductor tracks, and the electronic contact surfaces of the assembly. Based on this, an optimal coating path is determined to implement or carry out the coating. Finally, the information on the coating areas and the coating path is created as a coating software program.The program is output to the coating machine to carry out the coating of the circuit board.
[0034] An advantage of the present invention is that the preparation of the coating program is completely automatic. In particular, the data from the 3D model is processed for identifying the coating areas and determining the coating path. Manual identification of the coating areas and manual definition of the coating path are 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 fast and precise preparation for coating a printed circuit board.
[0035] A further advantage of the invention is that the painting program is output to the coating machine. This eliminates the need to stop the coating machine, as programming is no longer performed manually at a user interface on the coating machine. Coating machine downtime is therefore significantly reduced.
[0036] Advantageous embodiments and further developments emerge from the dependent claims and from the description of the various preferred embodiments shown in the attached figures.
[0037] According to some embodiments of the invention, the read-in data includes 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. The 3D model of the assembly and the components it contains can advantageously be supplied by the manufacturer of the printed circuit board.
[0038] According to some embodiments of the invention, the input unit is further configured to read in 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 are to be painted and how much protective paint is to be applied there. Furthermore, temperature limit values for a component or existing corrosion protection for a component can also be used as information in order to determine the amount of protective paint required per surface area for each painting area.
[0039] According to some embodiments of the invention, the painting path determination unit comprises an operation unit configured to provide predefined operation types for determining the painting path. These predefined operation types may include provisions known from experience. For example, according to one operation type, the various painting areas could be painted in a predefined sequence.
[0040] According to some embodiments of the invention, the system further comprises a validation unit 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 coating specified by the created painting program. Validating the painting areas and the painting path is a measure for testing the determined painting program before it is output to the coating machine. Errors or inaccuracies can be corrected and eliminated for this purpose.
[0041] According to some embodiments of the invention, the painting path determination unit implements an algorithm that is designed 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 around 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 sub-sections with one another in order to provide an optimal overall painting path.
[0042] 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.
[0043] Artificial intelligence is a computer-based entity capable of implementing various data analysis methods, commonly referred to as artificial intelligence, machine learning, deep learning, or computational learning.
[0044] The artificial intelligence module implements at least one artificial intelligence model, which can be a multi-layer perceptron network (MLP), a recurrent neural network (RNN), a long short memory (LSTM) network, a convolutional neural network (CNN), or another neural network.
[0045] 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.
[0046] According to some embodiments of the invention, the system further comprises a translation unit which is configured to translate the created painting program into a readable data format for the coating machine.
[0047] The creation of the painting path must be implemented in a format that the coating machine's painting software can process. One or more postprocessors can be selected to perform this transformation. By developing multiple 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.
[0048] According to some embodiments of the invention, the system further comprises a painting program storage unit configured to store the created painting program. With the increasing number of different circuit boards to be painted, it is advantageous to store and retain the various painting programs in a program library. From there, they can be retrieved and reused.
[0049] According to some embodiments of the invention, the system further comprises a database unit which is configured 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 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 the 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 regard 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 information is available for reuse and can be modified and accessed using version control.
[0050] According to some embodiments of the invention, the system further comprises a simulation unit configured to create a simulation of the coating of the assembly by the coating machine based on the created coating program. Thus, the coating sequence can be simulated in advance in a CAD / CAM software environment in which the coating machine is integrated.
[0051] 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. In cases where one or more units, or even a portion thereof, are provided as software, the units may be implemented by sections or segments of program code that may be separate from each other, but may also be interwoven or integrated with each other.
[0052] Likewise, 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 among several hardware components that do not necessarily correspond to the units. It is therefore to be assumed that any application, system, method, 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.
[0053] All mentioned embodiments and implementations can be combined with each other as required, as long as this makes sense.
[0054] The further scope of applicability of the present method and apparatus will become apparent from the following figures, detailed description, and claims. It should be understood, however, that the detailed description and specific examples, while indicating preferred embodiments of the invention, are primarily illustrative, and various changes and modifications within the basic spirit and scope of the invention will be apparent to those skilled in the art.
[0055] 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.
[0056] It shows :
[0057] Fig. 1 shows a system for providing a coating program for coating a printed circuit board populated with electronic components of an assembly according to one embodiment of the invention; Fig. 2 shows a schematic block diagram illustrating the sequence of a computer-implemented method for providing a coating program for coating a printed circuit board populated with electronic components of an assembly according to one embodiment of the invention;
[0058] Fig. 3 is a schematic flow diagram illustrating the sequence of a computer-implemented method for providing a coating program for coating a printed circuit board populated with electronic components of an assembly according to a further embodiment of the invention;
[0059] Fig. 4 is a graphical representation of the 3D model of a printed circuit board populated with electronic components of an assembly, generated by a CAD / CAM software;
[0060] Fig. 5 is a representation of the identified coating areas of a printed circuit board populated with electronic components of an assembly according to an embodiment of the invention;
[0061] Fig. 6 is a representation of a printed circuit board populated 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.
[0062] 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 printed circuit board populated with electronic components of an assembly;
[0063] 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 illustrating a non-transitory computer-readable data storage medium according to an embodiment of the fourth aspect of the present invention.
[0064] Parts of the various drawings which depict identical or functionally similar elements in the different views are designated by the same reference numerals.
[0065] Elements depicted in the drawings are not necessarily shown to scale. This is intended to clearly disclose the principles and features of the invention. Similarly, in some instances, well-known structures and devices are shown in block diagram form to illustrate possible concepts of the present invention.
[0066] The numbering of steps in the procedures is intended to facilitate their description. They do not necessarily imply a particular order of steps. In particular, several steps may be performed simultaneously.
[0067] 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 may be practiced without these specific details.
[0068] Fig. 1 shows a system 100 for providing a coating program for coating a printed circuit board LP populated with electronic components of an assembly according to an embodiment of the invention.
[0069] 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.
[0070] The input unit 10 is designed to read data DO from a stored 3D model of the electronic components of an assembly mounted on a printed circuit board (PCB). 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.
[0071] The painting area identification unit 20 is configured 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 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 to identify the painting areas automatically, i.e., without manual operation.
[0072] Some components of the assembly can store data that can be read for their identification and / or for identifying the paint areas of the components. Other components have markings or imprints that allow identification of the components and / or the paint areas, for example, using a sensor. Another group of possible components of the assembly has a typical housing shape that allows identification of the components and / or the paint areas of the components using an optical sensor.
[0073] The coating areas include the surfaces of the components of the assembly, which are to be coated with a preferably electrically insulating protective coating, as well as the 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.
[0074] Different protective coatings can be used for different painting areas. However, the same protective coating is usually used for the entire assembly.
[0075] In addition to electronic components, an assembly can also include electromechanical components or mechanical components, such as retaining elements for electronic components. The applied protective coating serves to protect the components from mechanical influences or radiation effects. The applied protective coating can also serve to electrically insulate the components.
[0076] The painting path determination unit 30 is configured 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 as well as 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.
[0077] In some embodiments, as shown in Fig. 1, the painting path determination unit 30 comprises an operation unit 310, which is configured 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 as input by the algorithm and represent boundary conditions for the automatic calculation of the painting path.
[0078] Fig. 1 illustrates an optimization unit 320 included in the paint path determination unit 30. The optimization unit 320 is configured to implement an artificial intelligence module. The artificial intelligence module can use the coating thicknesses and coating distributions of the respective electronic components as input to continuously optimize the paint path algorithm and the necessary parameters by the artificial intelligence module.
[0079] The artificial intelligence module implements an artificial intelligence model, e.g. 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.
[0080] The computing unit 40 is configured 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 coating 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.
[0081] The validation unit 42 is configured to validate the identified painting areas and / or the determined painting path. Errors or inaccuracies can be detected and corrected for this purpose. Validation is performed by simulating a layer thickness and the layer distribution of the protective coating specified by the created painting program. 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.
[0082] The translation unit 44 serves 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 comprise multiple postprocessors to convert the painting program into various data formats. By providing multiple 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.
[0083] The coating program storage unit 46 is configured to store the created coating program for each circuit board to be coated. The coating program storage unit 46 serves as a program library in which the various coating programs are stored. From there, the various coating programs can be retrieved and used as needed. The coating program storage unit 46 can be a data storage medium, such as a DVD. Alternatively, it can be located in a computer, a server, or a cloud platform. Fig. 1 also shows an output unit 50, which is configured to output the created coating program to the coating machine BM. The coating program that the output unit 50 transmits can originate directly from the computing unit 40. Alternatively, the coating program can be transmitted to the coating machine BM after validation and / or translation.
[0084] 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 which originate 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 component data is maintained.
[0085] 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.
[0086] The coating program can be executed by the processing unit of the BM coating machine. This allows the coating of the printed circuit board (LP) populated with electronic components of an assembly to be carried out.
[0087] Fig. 2 shows a schematic flow diagram illustrating the sequence of a computer-implemented method for providing a coating program for coating a printed circuit board (LP) populated with electronic components of an assembly according to one embodiment of the invention. The method can advantageously be carried out using the system 100 of Fig. 1.
[0088] In step S1, data is read from a stored 3D model of the electronic components of an assembly mounted on a printed circuit board (PCB). The 3D model can be created using CAD / CAM software.
[0089] In step S2, the coating areas of the respective electronic components of the printed circuit board (PCB) 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 the basis for identification.
[0090] 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.
[0091] In a step S5, the created coating program is output to a coating machine BM, which coats the printed circuit board LP with varnish, in particular with protective varnish.
[0092] Fig. 3 shows a schematic block diagram illustrating the sequence of a computer-implemented method for providing a coating program for coating a printed circuit board (LP) populated with electronic components of an assembly according to a further embodiment of the invention. The method can advantageously be carried out using the system 100 of Fig. 1.
[0093] In a step S 1 , data is read in from a stored 3D model of the electronic components of an assembly that are installed on a printed circuit board LP.
[0094] In a step S2, the coating areas of the respective electronic components of the printed circuit board LP are automatically identified.
[0095] In step S20, the imported assembly data is saved and made available for readout. This saving can be performed, for example, by a centralized product data management (PDM) system such as Teamcenter.
[0096] In a further step S3, a coating path for coating the electronic components of the assembly is determined or calculated. In Fig. 3, step S3 comprises steps S30, S31, and S32.
[0097] In step S30, predefined operation types are used to determine the painting path. Operation types are typically based on experience and may include instructions. Accordingly, according to an operation type, the various painting areas could, for example, be painted according to a predefined sequence.
[0098] 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. This painting program can be created automatically in a step S4.
[0099] 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 coating specified by the created painting program. The validation can be performed by an operator or user or can occur automatically.
[0100] 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.
[0101] 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.
[0102] In step S5, the created coating program is output via an interface to a coating machine BM, which coats the printed circuit board LP. In step S50, the created coating program is saved, for example, on a data storage medium. From there, the various programs can be retrieved and reused.
[0103] Fig. 4 shows, for example, a graphical representation of the 3D model of a printed circuit board LP populated with electronic components of an assembly, which is generated by CAD / CAM software. The printed circuit board LP can comprise diodes, transistors, resistors, inductors, ICs or chips or capacitors 101. Particularly striking in the example shown are the capacitors 101 with which the printed circuit board LP is populated. 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.
[0104] Fig. 5 shows, for example, a representation of the identified coating areas LB of a printed circuit board LP populated with electronic components of an assembly according to an embodiment of the invention. Fig. 5 shows a cross-section of the printed circuit board LP of Fig. 4. The coating 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 coating areas LB, which is carried out by the coating area identification unit 20. For each identified coating area LB there is corresponding information about the respectively required layer thickness and the layer distribution of the protective coating.Certain coating areas LB of the assembly BG can also be coated with multiple superimposed layers of protective coatings, each with a corresponding layer thickness. For this purpose, it is preferable to wait until the underlying layer has dried. The nozzle of the coating machine BM can therefore approach certain locations or coating areas of the assembly multiple times according to the calculated coating path in order to apply more than one layer of coating.
[0105] Fig. 6 shows a graphical representation of the printed circuit board LP from Fig. 5, in which safety distances SU are marked with dashed lines. In some embodiments of the invention, the coating path determination unit 30 implements a coating path algorithm which uses the information of the identified coating 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 coating path algorithm. For example, an operation type can indicate or state that the capacitors should be coated first. The capacitors form a component type of components within the assembly. Accordingly, the coating or coating of certain component types can be prioritized. The determined coating path should meet the various criteria.The thickness of the protective coating layer on each electronic component is another important criterion. In this case, the determined coating path can take into account, for example, that those components of the assembly which require a larger amount of coating per area are coated first. Finding or calculating an optimal coating path is particularly challenging when there are several boundary conditions or criteria which must be taken into account at the same time. Fig. 6, for example, shows some safety distances SU which define areas which should not be coated with protective coating. Some of these areas enclose electronic components which are not to be coated.For 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 coating path offers a clear advantage over a manual coating path definition.
[0106] 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 populated with electronic components of an assembly.
[0107] The data processing unit 600 can be viewed as an add-on to 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 set up 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 set up to provide a coating program and output it to a coating machine BM. The coating machine BM can use the coating program to coat the electronic components of the assembled printed circuit board LP.
[0108] 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 perform the method according to any embodiment of the second aspect of the present invention, in particular as described in the preceding figures.
[0109] 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 executable program code 450 that, when executed, is configured to perform the method according to any embodiment of the second aspect of the present invention, in particular as described in the preceding figures.
[0110] The non-volatile, computer-readable data storage medium may comprise or consist of any type of computer memory, in particular a semiconductor memory such as a solid-state memory. The data storage medium may also comprise or consist of a CD, a DVD, a Blu-ray disc, a USB memory stick, or the like.
[0111] The system according to the invention is characterized, among other things, by the following features:
[0112] Discrete 3D data from scanned fill / removal profiles (reference profiles) can be used directly without the need for analytical approximation.
[0113] The component surface is meshed with sufficient density to generate support points for the calculation of the painting path.
[0114] 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.
[0115] 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.
[0116] The effect of the moving tool or tool of the BM coating machine can be captured by summing small time steps. The calculation of the coating path is preferably performed in parallel in multiple threads.
[0117] 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.
[0118] For each point along the painting path, the simulation can consider additional process-dependent parameters (e.g., impact angle, primary and secondary effects, number of passes, removal / deposition rate, average distance from the tool, etc.), which can be important for the final layer morphology or surface stress. In addition, thermal stresses can also be captured using suitable model assumptions. This data is available for creating digital twins.
[0119] The method according to the invention can be used for various thermal spray processes (APS, VPS, HVOF, Flash) on complex assemblies to optimize tool paths. The deviations between the calculated and the actual applied layer thickness of the protective coating are less than 10%, preferably less than 1%.
[0120] The above 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 of these embodiments will be readily apparent to those 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 to be accorded the widest possible scope consistent with the principles and novel features disclosed herein.
[0121] Reference symbol list
[0122] 10 Input unit
[0123] 20 Painting Area Identification Unit
[0124] 30 Painting path determination unit
[0125] 40 computing units
[0126] 42 Validation Unit
[0127] 44 Translation unit
[0128] 46 Paint program storage unit
[0129] 50 output units
[0130] 60 database units
[0131] 70 S simulation unit
[0132] 100 systems
[0133] 101 Capacitor
[0134] 300 computer program product
[0135] 310 Operating Unit
[0136] 320 optimization unit
[0137] 350 program code
[0138] 400 Non-volatile computer-readable data storage medium
[0139] 450 program code
[0140] 500 CAD / CAM systems
[0141] 520 CAD / CAM computing unit
[0142] 530 CAD / CAM data storage medium
[0143] 600 data processing unit
[0144] BM coating machine
[0145] D0 data
[0146] LB painting areas
[0147] LP circuit board
[0148] S1-S50 Steps of the procedure
Claims
Patent claims 1. System (100) for providing a coating program for coating a printed circuit board (LP) populated with electronic components, conductor tracks and electronic contact surfaces of an assembly with a protective coating by a coating machine (BM), comprising: an input unit (10) which is configured to read in data (DO) from a stored 3D model of the assembly; a coating area identification unit (20) which is configured to automatically identify coating 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 coating path determination unit (30) which is configured to automatically determine at least one coating path for coating at least the electronic component of the assembly based on the identified coating areas (LB);a computing unit (40) configured to create the painting program based on the identified painting areas (LB) and the determined painting path; and an output unit (50) configured to output the painting program created by the computing unit (40) to the coating machine (BM); 2. System (100) according to claim 1, wherein the read-in data (D0) comprise at least the geometric dimensions of the electronic components of the assembly.
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) 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) 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) 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. 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, wherein the artificial intelligence module optimizes the algorithm.
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) 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) 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) 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. 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: Reading (S1) 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; Creating (S4) the painting program based on the identified painting areas (LB) and the determined painting path; and Output (S5) of the created painting program to the coating machine (BM).
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. A non-transitory computer-readable data storage medium (400) comprising executable program code (450) adapted, when executed, to perform the computer-implemented method according to claim 12.
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.