Collaborative programming method, device and system, electronic equipment and storage medium

文档序号:449824 发布日期:2021-12-28 浏览:43次 中文

阅读说明:本技术 一种协同编程方法、装置、系统及电子设备、存储介质 (Collaborative programming method, device and system, electronic equipment and storage medium ) 是由 钱胜杰 刘继硕 刘华 刘丰收 于 2020-06-28 设计创作,主要内容包括:本发明公开了一种协同编程方法、装置、系统及电子设备、存储介质,该协同编程方法包括:获取协同编程任务;检测PCB设计文件读入任务的初始状态值;并行检测BOM表数据读入任务、创建拼版任务及创建MARK点任务的初始状态值;检测程序输出任务的初始状态值,根据程序输出任务的初始状态值,将程序输出任务的初始状态值更新为最终状态值,输出程序。本发明所提供协同编程方法提高了参与人员的协同性,提高了任务完成的效率,降低了企业的金钱成本和时间成本,确保协同编程项目的数据安全得到较高的保障。(The invention discloses a collaborative programming method, a device and a system thereof, an electronic device and a storage medium, wherein the collaborative programming method comprises the following steps: acquiring a collaborative programming task; detecting an initial state value of a PCB design file read-in task; detecting the initial state values of a BOM data reading task, a creation imposition task and a creation MARK point task in parallel; and detecting the initial state value of the program output task, updating the initial state value of the program output task to a final state value according to the initial state value of the program output task, and outputting the program. The collaborative programming method provided by the invention improves the cooperativity of the participators, improves the efficiency of task completion, reduces the money cost and time cost of enterprises, and ensures that the data security of the collaborative programming project is ensured to be relatively high.)

1. A co-programming method, comprising:

acquiring a collaborative programming task, wherein the collaborative programming task at least comprises a PCB design file reading task, a MARK point creating task, a component library data query and mounting parameter setting task and a program output task;

detecting an initial state value of the PCB design file read-in task, and updating the initial state value of the PCB design file read-in task to a final state value according to the initial state value of the PCB design file read-in task;

detecting initial state values of a BOM table data read-in task, a creation makeup task and a creation MARK point task in parallel, and updating the initial state values of the BOM table data read-in task, the creation makeup task, the creation MARK point task, the component library data query and the mounting parameter setting task to final state values according to the initial state values of the BOM table data read-in task, the creation makeup task and the creation MARK point task;

detecting an initial state value of the program output task, updating the initial state value of the program output task to a final state value according to the initial state value of the program output task, and outputting a program;

wherein the initial state value characterizes an unexecuted state or an executed state and the final state value characterizes an executed state.

2. The co-programming method according to claim 1, before detecting the initial state value of the PCB design file read-in task, updating the initial state value of the PCB design file read-in task to the final state value according to the initial state value of the PCB design file read-in task, further comprising:

judging whether the BOM table data read-in task and/or the creation imposition task exist in the collaborative programming task, if the BOM table data read-in task exists in the collaborative programming task, maintaining an initial state value of the BOM table data read-in task, if the BOM table data read-in task does not exist in the collaborative programming task, updating the initial state value of the BOM table data read-in task to represent an executed state, if the creation imposition task exists in the collaborative programming task, maintaining the initial state value of the creation imposition task, and if the creation imposition task does not exist in the collaborative programming task, updating the initial state value of the creation imposition task to represent the executed state.

3. The co-programming method according to claim 1 or 2, wherein the detecting of the initial state value of the PCB design file read-in task, and the updating of the initial state value of the PCB design file read-in task to the final state value according to the initial state value of the PCB design file read-in task comprise:

detecting an initial state value of a PCB design file read-in task, judging whether the initial state value of the PCB design file read-in task represents an executed state or an unexecuted state, if the initial state value of the PCB design file read-in task represents the executed state, the initial state value of the PCB design file read-in task is a final state value, if the initial state value of the PCB design file read-in task represents the unexecuted state, executing the PCB design file read-in task, and after the PCB design file read-in task is executed, updating the initial state value of the PCB design file read-in task to the final state value.

4. The co-programming method according to claim 3, wherein the step of executing the task of reading the PCB design file and updating the initial state value read by the PCB design file to the final state value after the task of reading the PCB design file is completed comprises:

executing the PCB design file reading task, judging whether an abnormal condition exists in the execution process of the PCB design file reading task, if not, updating the initial state value read by the PCB design file to a final state value after the PCB design file reading task is completed, if so, feeding back the abnormal condition to a manual processing client, then receiving the feedback that the manual processing client has processed the abnormal condition within a first preset time, and after receiving the feedback and after the PCB design file reading task is completed, updating the initial state value of the PCB design file reading task to the final state value.

5. The collaborative programming method according to claim 1 or 2, wherein detecting initial state values of a BOM table data read-in task, a creation imposition task, and a creation MARK point task, and updating the initial state values of the BOM table data read-in task, the creation imposition task, the creation MARK point task, the component library data query, and a mounting parameter setting task to final state values according to the initial state values of the BOM table data read-in task, the creation imposition task, the creation MARK point task, the component library data query, and the mounting parameter setting task includes:

judging the initial state values of the BOM table data read-in task, the creation imposition task and the creation MARK point task;

if the initial state value of the BOM table data reading task represents the executed state, detecting the initial state value of the element library data query and mounting parameter setting task, updating the initial state value of the element library data query and mounting parameter setting task to a final state value according to the initial state value of the element library data query and mounting parameter setting task, if the initial state value of the BOM table data read-in task represents an unexecuted state, executing the BOM table data read-in task, after the BOM table data reading task is executed, updating the initial state value of the BOM table data reading task to a final state value, then detecting the initial state value of the element library data query and mounting parameter setting task, updating the initial state value of the element library data query and mounting parameter setting task to a final state value according to the initial state value of the element library data query and mounting parameter setting task;

if the initial state value of the created imposition task represents an executed state, the initial state value of the created imposition task is a final state value, if the initial state value of the created imposition task represents an unexecuted state, the created imposition task is executed, and after the created imposition task is executed, the initial state value of the created imposition task is updated to the final state value;

and if the initial state value of the task for creating the MARK point represents the executed state, the initial state value of the task for creating the MARK point is the final state value, if the initial state value of the task for creating the MARK point represents the unexecuted state, the task for creating the MARK point is executed, and after the task for creating the MARK point is executed, the initial state value of the task for creating the MARK point is updated to the final state value.

6. The co-programming method according to claim 5, wherein the step of executing the BOM table data reading task and updating the initial state value of the BOM table data reading task to the final state value after the completion of the execution of the BOM table data reading task comprises:

executing the BOM table data reading task, judging whether an abnormal condition exists in the execution process of the BOM table data reading task, if not, updating the initial state value of the BOM table data reading task to a final state value, if so, feeding back the abnormal condition to a manual processing client, then receiving the feedback that the manual processing client has processed the abnormal condition within a second preset time, and after receiving the feedback, updating the initial state value of the BOM table data reading task to the final state value.

7. The co-programming method according to claim 5, wherein the executing of the create-imposition task and the updating of the initial state value of the create-imposition task to the final state value after the completion of the execution of the create-imposition task comprises:

and executing the imposition creating task, judging whether an abnormal condition exists in the execution process of the imposition creating task, if the abnormal condition does not exist, updating the initial state value of the imposition creating task to a final state value, if the abnormal condition exists, feeding back the abnormal condition to a manual processing client, then receiving the feedback that the manual processing client has processed the abnormal condition within a third preset time, and after receiving the feedback, updating the initial state value of the imposition creating task to the final state value.

8. The co-programming method according to claim 5, wherein the executing the create MARK point task and updating the initial state value of the create MARK point task to the final state value after the executing of the create MARK point task is completed comprises:

and executing the MARK point creating task, judging whether an abnormal condition exists in the execution process of the MARK point creating task, if the abnormal condition does not exist, updating the initial state value of the MARK point creating task to a final state value, if the abnormal condition exists, feeding back the abnormal condition to a manual processing client, receiving the feedback that the manual processing client has processed the abnormal condition within fourth preset time, and after receiving the feedback, updating the initial state value of the MARK point creating task to the final state value.

9. The co-programming method according to claim 5, wherein updating the initial state value of the component library repository and mounting parameter setting task to a final state value according to the initial state value of the component library repository and mounting parameter setting task comprises:

detecting an initial state value of the element library data query and mounting parameter setting task, judging whether the initial state value of the element library data query and mounting parameter setting task represents an executed state or an unexecuted state, if the initial state value of the element library data query and mounting parameter setting task represents the executed state, the initial state value of the element library data query and mounting parameter setting task is a final state value, if the initial state value of the element library data query and mounting parameter setting task represents the unexecuted state, executing the element library data query and mounting parameter setting task, and after the element library data query and mounting parameter setting task is completed, updating the initial state value of the element library data query and mounting parameter setting task to the final state value.

10. The cooperative programming method according to claim 9, wherein the task of querying component library data and setting mounting parameters is performed, and after the task of querying component library data and setting mounting parameters is performed, the task of querying component library data and setting mounting parameters is updated to a final state value, and the method comprises:

executing the element library data query and mounting parameter setting task, judging whether abnormal conditions exist in the execution process of the element library data query and mounting parameter setting task, if not, updating the initial state value of the element library data query and mounting parameter setting task to a final state value after the element library data query and mounting parameter setting task is completed, if so, feeding back the abnormal conditions to a manual processing client, then receiving feedback that the abnormal conditions are processed by the manual processing client within a fifth preset time, and after receiving the feedback, updating the initial state value of the element library data query and mounting parameter setting task to the final state value after the element library data query and mounting parameter setting task is completed.

11. The co-programming method according to claim 1 or 2, wherein detecting an initial state value of the program output task, and updating the initial state value of the program output task to a final state value according to the initial state value of the program output task comprises:

after the initial state values of the component library data query and mounting parameter setting task, the creation imposition task and the creation MARK point task are all updated to final state values, detecting the initial state values of the program output tasks, judging whether the initial state values of the program output tasks represent an executed state or an unexecuted state, if the initial state values of the program output tasks represent an executed state, the initial state values of the program output tasks are the final state values, if the initial state values of the program output tasks represent an unexecuted state, the program output tasks are executed, and after the program output tasks are executed, the initial state values of the program output tasks are updated to the final state values.

12. The co-programming method according to claim 11, wherein executing the program output task, and updating the initial state value of the program output task to the final state value after the program output task is completed, comprises:

executing the program output task, judging whether an abnormal condition exists in the execution process of the program output task, if the abnormal condition does not exist, updating the initial state value of the program output task to a final state value, if the abnormal condition exists, feeding back the abnormal condition to a manual processing client, then receiving the feedback that the manual processing client has processed the abnormal condition within sixth preset time, and after receiving the feedback, updating the initial state value of the program output task to the final state value.

13. A co-programming apparatus, comprising:

the PCB task processing module is used for acquiring a PCB design file read-in task, detecting an initial state value of the PCB design file read-in task, and updating the initial state value of the PCB design file read-in task to a final state value according to the initial state value of the PCB design file read-in task;

the parallel processing module is used for respectively acquiring a BOM table data reading task, a makeup creating task, a MARK point creating task, a component library data query and a mounting parameter setting task, detecting initial state values of the BOM table data reading task, the makeup creating task and the MARK point creating task in parallel, and updating the initial state values of the BOM table data reading task, the makeup creating task, the MARK point creating task, the component library data query and the mounting parameter setting task to final state values according to the initial state values of the BOM table data reading task, the makeup creating task and the MARK point creating task;

the program output processing module is used for acquiring a program output task, detecting an initial state value of the program output task, updating the initial state value of the program output task to a final state value according to the initial state value of the program output task, and outputting a program;

wherein the initial state value characterizes an unexecuted state or an executed state and the final state value characterizes an executed state.

14. A collaborative programming system comprising a human processing client and the collaborative programming apparatus of claim 11, wherein,

the manual processing client is used for sending the collaborative programming task to the collaborative programming device, and in addition, the manual processing client is also used for distributing at least one designated person to process the abnormal condition under the conditions of set times and set time corresponding to each time when at least one task of the PCB design file reading task, the BOM table data reading task, the creation makeup task, the creation MARK point task, the element library data query and the mounting parameter setting task and the program output task is abnormal in the execution process, and after the abnormal condition is processed, the manual processing client feeds back to the SMT collaborative programming device.

15. An electronic device is characterized by comprising a processor, a communication interface, a memory and a communication bus, wherein the processor and the communication interface are used for realizing mutual communication by the memory through the communication bus;

a memory for storing a computer program;

a processor for implementing the method steps of any one of claims 1-12 when executing the computer program.

16. A storage medium, characterized in that a computer program is stored in the storage medium, which computer program, when being executed by a processor, carries out the method steps of any one of claims 1-12.

Technical Field

The invention belongs to the technical field of printed circuit boards, and particularly relates to a collaborative programming method, device and system, electronic equipment and a storage medium.

Background

SMT (Surface Mounted Technology) is one of the most popular techniques and technologies in the electronic assembly industry. SMT is a Circuit assembly technique in which a leadless or short-lead surface-mounted component is mounted on the surface of a Printed Circuit Board (PCB) or other substrate, and then soldered or assembled by reflow soldering or dip soldering.

At present, there are no more than two kinds of providers for SMT programming software in the industry, one is a software system carried by the equipment manufacturer itself, and the other is a programming system developed by a third party. Among them, the solution of the software system provided by the equipment manufacturer focuses on the operation performance optimization of the equipment, i.e. the production mounting efficiency of the equipment in a specified time during production, and the software system neglects the programming efficiency during off-line; the other scheme is provided by a third-party software company, and focuses on conversion between EDA (Electronic Design automation) CAD (Computer Aided Design) Design research and development data and Gerber (photo drawing file) data, and because of the non-openness of the operating parameters of the device, the third scheme cannot well improve the operating performance of the device, and particularly, the operating parameters of the device cannot be obtained in the current mainstream modular chip mounter.

For the conventional mode, it contains 6 relative nodes during the whole SMT programming process, and these 6 relative nodes are: 1. reading a PCB (Printed Circuit Board) design file; 2. reading in BOM (Bill of Material) table data; 3. creating a makeup; 4. creating a MARK (location identification) point; 5. inquiring component library data and setting mounting parameters; 6. and (4) outputting a program, and executing the nodes in sequence by industrial software at present. When the nodes are executed, when one of the nodes is abnormal, the execution task is interrupted at the node, and if the abnormal node has a processing method, the operation needs to be started again from the beginning or continued manually. If the number of nodes is abnormal, the operation needs to be repeated all the time, so that the previous flow without errors can be operated again, the production cycle of the stage can be greatly prolonged, the cooperativity of the participants in the whole process can be influenced (certain nodes have no errors and need to be repeatedly operated), and the related participants are easy to have negative emotions.

In summary, the conventional operation mode is time-consuming and has poor cooperativity of the participants, thereby greatly increasing the money cost and the time cost of the enterprise at this stage.

Disclosure of Invention

In order to solve the above problems in the prior art, the present invention provides a collaborative programming method, apparatus, system, electronic device, and storage medium. The technical problem to be solved by the invention is realized by the following technical scheme:

a collaborative programming method, comprising:

acquiring a collaborative programming task, wherein the collaborative programming task at least comprises a PCB design file reading task, a MARK point creating task, a component library data query and mounting parameter setting task and a program output task;

detecting an initial state value of the PCB design file read-in task, and updating the initial state value of the PCB design file read-in task to a final state value according to the initial state value of the PCB design file read-in task;

detecting initial state values of a BOM table data read-in task, a creation makeup task and a creation MARK point task in parallel, and updating the initial state values of the BOM table data read-in task, the creation makeup task, the creation MARK point task, the component library data query and the mounting parameter setting task to final state values according to the initial state values of the BOM table data read-in task, the creation makeup task and the creation MARK point task;

detecting an initial state value of the program output task, updating the initial state value of the program output task to a final state value according to the initial state value of the program output task, and outputting a program;

wherein the initial state value characterizes an unexecuted state or an executed state and the final state value characterizes an executed state.

In an embodiment of the present invention, before detecting an initial state value of a PCB design file read-in task, updating the initial state value of the PCB design file read-in task to a final state value according to the initial state value of the PCB design file read-in task, the method further includes:

judging whether the BOM table data read-in task and/or the creation imposition task exist in the collaborative programming task, if the BOM table data read-in task exists in the collaborative programming task, maintaining an initial state value of the BOM table data read-in task, if the BOM table data read-in task does not exist in the collaborative programming task, updating the initial state value of the BOM table data read-in task to represent an executed state, if the creation imposition task exists in the collaborative programming task, maintaining the initial state value of the creation imposition task, and if the creation imposition task does not exist in the collaborative programming task, updating the initial state value of the creation imposition task to represent the executed state.

In an embodiment of the present invention, detecting an initial state value of the PCB design file read-in task, and updating the initial state value of the PCB design file read-in task to a final state value according to the initial state value of the PCB design file read-in task, includes:

detecting an initial state value of a PCB design file read-in task, judging whether the initial state value of the PCB design file read-in task represents an executed state or an unexecuted state, if the initial state value of the PCB design file read-in task represents the executed state, the initial state value of the PCB design file read-in task is a final state value, if the initial state value of the PCB design file read-in task represents the unexecuted state, executing the PCB design file read-in task, and after the PCB design file read-in task is executed, updating the initial state value of the PCB design file read-in task to the final state value.

In an embodiment of the present invention, the executing the PCB design file reading task, and after the PCB design file reading task is completed, updating the initial state value read by the PCB design file to the final state value includes:

executing the PCB design file reading task, judging whether an abnormal condition exists in the execution process of the PCB design file reading task, if not, updating the initial state value read by the PCB design file to a final state value after the PCB design file reading task is completed, if so, feeding back the abnormal condition to a manual processing client, then receiving the feedback that the manual processing client has processed the abnormal condition within a first preset time, and after receiving the feedback and after the PCB design file reading task is completed, updating the initial state value of the PCB design file reading task to the final state value.

In an embodiment of the present invention, detecting initial state values of a BOM table data read-in task, a creation imposition task, and a creation MARK point task, and updating the initial state values of the BOM table data read-in task, the creation imposition task, the creation MARK point task, the component library data query, and a mounting parameter setting task to a final state value according to the initial state values of the BOM table data read-in task, the creation imposition task, and the creation MARK point task, including:

judging the initial state values of the BOM table data read-in task, the creation imposition task and the creation MARK point task;

if the initial state value of the BOM table data reading task represents the executed state, detecting the initial state value of the element library data query and mounting parameter setting task, updating the initial state value of the element library data query and mounting parameter setting task to a final state value according to the initial state value of the element library data query and mounting parameter setting task, if the initial state value of the BOM table data read-in task represents an unexecuted state, executing the BOM table data read-in task, after the BOM table data reading task is executed, updating the initial state value of the BOM table data reading task to a final state value, then detecting the initial state value of the element library data query and mounting parameter setting task, updating the initial state value of the element library data query and mounting parameter setting task to a final state value according to the initial state value of the element library data query and mounting parameter setting task;

if the initial state value of the created imposition task represents an executed state, the initial state value of the created imposition task is a final state value, if the initial state value of the created imposition task represents an unexecuted state, the created imposition task is executed, and after the created imposition task is executed, the initial state value of the created imposition task is updated to the final state value;

and if the initial state value of the task for creating the MARK point represents the executed state, the initial state value of the task for creating the MARK point is the final state value, if the initial state value of the task for creating the MARK point represents the unexecuted state, the task for creating the MARK point is executed, and after the task for creating the MARK point is executed, the initial state value of the task for creating the MARK point is updated to the final state value.

In an embodiment of the present invention, the executing the BOM table data reading task, and after the completion of the execution of the BOM table data reading task, updating the initial state value of the BOM table data reading task to a final state value includes:

executing the BOM table data reading task, judging whether an abnormal condition exists in the execution process of the BOM table data reading task, if not, updating the initial state value of the BOM table data reading task to a final state value, if so, feeding back the abnormal condition to a manual processing client, then receiving the feedback that the manual processing client has processed the abnormal condition within a second preset time, and after receiving the feedback, updating the initial state value of the BOM table data reading task to the final state value.

In an embodiment of the present invention, executing the create-imposition task, and updating the initial state value of the create-imposition task to the final state value after the completion of the execution of the create-imposition task includes:

and executing the imposition creating task, judging whether an abnormal condition exists in the execution process of the imposition creating task, if the abnormal condition does not exist, updating the initial state value of the imposition creating task to a final state value, if the abnormal condition exists, feeding back the abnormal condition to a manual processing client, then receiving the feedback that the manual processing client has processed the abnormal condition within a third preset time, and after receiving the feedback, updating the initial state value of the imposition creating task to the final state value.

In an embodiment of the present invention, executing the create MARK point task, and after the create MARK point task is executed, updating an initial state value of the create MARK point task to a final state value, includes:

and executing the MARK point creating task, judging whether an abnormal condition exists in the execution process of the MARK point creating task, if the abnormal condition does not exist, updating the initial state value of the MARK point creating task to a final state value, if the abnormal condition exists, feeding back the abnormal condition to a manual processing client, receiving the feedback that the manual processing client has processed the abnormal condition within fourth preset time, and after receiving the feedback, updating the initial state value of the MARK point creating task to the final state value.

In an embodiment of the present invention, updating the initial state value of the component library data query and mounting parameter setting task to a final state value according to the initial state value of the component library data query and mounting parameter setting task includes:

detecting an initial state value of the element library data query and mounting parameter setting task, judging whether the initial state value of the element library data query and mounting parameter setting task represents an executed state or an unexecuted state, if the initial state value of the element library data query and mounting parameter setting task represents the executed state, the initial state value of the element library data query and mounting parameter setting task is a final state value, if the initial state value of the element library data query and mounting parameter setting task represents the unexecuted state, executing the element library data query and mounting parameter setting task, and after the element library data query and mounting parameter setting task is completed, updating the initial state value of the element library data query and mounting parameter setting task to the final state value.

In an embodiment of the present invention, the executing the element library data query and mounting parameter setting task, and after the executing of the element library data query and mounting parameter setting task is completed, updating the initial state value of the element library data query and mounting parameter setting task to the final state value includes:

executing the element library data query and mounting parameter setting task, judging whether abnormal conditions exist in the execution process of the element library data query and mounting parameter setting task, if not, updating the initial state value of the element library data query and mounting parameter setting task to a final state value after the element library data query and mounting parameter setting task is completed, if so, feeding back the abnormal conditions to a manual processing client, then receiving feedback that the abnormal conditions are processed by the manual processing client within a fifth preset time, and after receiving the feedback, updating the initial state value of the element library data query and mounting parameter setting task to the final state value after the element library data query and mounting parameter setting task is completed.

In an embodiment of the present invention, detecting an initial state value of the program output task, and updating the initial state value of the program output task to a final state value according to the initial state value of the program output task includes:

after the initial state values of the component library data query and mounting parameter setting task, the creation imposition task and the creation MARK point task are all updated to final state values, detecting the initial state values of the program output tasks, judging whether the initial state values of the program output tasks represent an executed state or an unexecuted state, if the initial state values of the program output tasks represent an executed state, the initial state values of the program output tasks are the final state values, if the initial state values of the program output tasks represent an unexecuted state, the program output tasks are executed, and after the program output tasks are executed, the initial state values of the program output tasks are updated to the final state values.

In an embodiment of the present invention, executing the program output task, and updating the initial state value of the program output task to the final state value after the program output task is executed, includes:

executing the program output task, judging whether an abnormal condition exists in the execution process of the program output task, if the abnormal condition does not exist, updating the initial state value of the program output task to a final state value, if the abnormal condition exists, feeding back the abnormal condition to a manual processing client, then receiving the feedback that the manual processing client has processed the abnormal condition within sixth preset time, and after receiving the feedback, updating the initial state value of the program output task to the final state value.

An embodiment of the present invention also provides a cooperative programming apparatus, including:

the PCB task processing module is used for acquiring a PCB design file read-in task, detecting an initial state value of the PCB design file read-in task, and updating the initial state value of the PCB design file read-in task to a final state value according to the initial state value of the PCB design file read-in task;

the parallel processing module is used for respectively acquiring a BOM table data reading task, a makeup creating task, a MARK point creating task, a component library data query and a mounting parameter setting task, detecting initial state values of the BOM table data reading task, the makeup creating task and the MARK point creating task in parallel, and updating the initial state values of the BOM table data reading task, the makeup creating task, the MARK point creating task, the component library data query and the mounting parameter setting task to final state values according to the initial state values of the BOM table data reading task, the makeup creating task and the MARK point creating task;

the program output processing module is used for acquiring a program output task, detecting an initial state value of the program output task, updating the initial state value of the program output task to a final state value according to the initial state value of the program output task, and outputting a program;

wherein the initial state value characterizes an unexecuted state or an executed state and the final state value characterizes an executed state.

An embodiment of the present invention further provides a collaborative programming system, which includes a human processing client and the collaborative programming apparatus according to the above embodiment, wherein,

the manual processing client is used for sending the collaborative programming task to the collaborative programming device, and in addition, the manual processing client is also used for distributing at least one designated person to process the abnormal condition under the conditions of set times and set time corresponding to each time when at least one task of the PCB design file reading task, the BOM table data reading task, the creation makeup task, the creation MARK point task, the element library data query and the mounting parameter setting task and the program output task is abnormal in the execution process, and after the abnormal condition is processed, the manual processing client feeds back to the SMT collaborative programming device.

An embodiment of the present invention further provides an electronic device, including a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface, and the memory complete communication with each other through the communication bus;

a memory for storing a computer program;

a processor, configured to implement the co-programming method steps of any of the above embodiments when executing the computer program.

An embodiment of the present invention further provides a storage medium, in which a computer program is stored, and the computer program, when executed by a processor, implements the co-programming method steps described in any of the above embodiments.

The invention has the beneficial effects that:

the collaborative programming method provided by the invention can realize automatic pushing and task execution at any task node, and at the task node with abnormality, after the abnormal condition of the task node is solved, the task is continuously executed, thereby improving the cooperativity of the participators. And because the processing personnel of each task do not need to participate in the whole operation process, after the reading task of the PCB design file is completed, the reading task, the creation imposition task and the MARK point task of the BOM table data are simultaneously operated, the task completion efficiency is greatly improved, and the money cost and the time cost of enterprises are reduced.

The present invention will be described in further detail with reference to the accompanying drawings and examples.

Drawings

Fig. 1 is a schematic flowchart of a co-programming method according to an embodiment of the present invention;

FIG. 2 is a schematic diagram of a framework for implementing a co-programming method according to an embodiment of the present invention;

FIG. 3 is a diagram of a human processing client according to an embodiment of the present invention;

FIG. 4 is a schematic diagram of an exception handling group workflow provided by an embodiment of the present invention;

FIG. 5 is a schematic diagram of a co-programming apparatus according to an embodiment of the present invention;

fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.

Detailed Description

The present invention will be described in further detail with reference to specific examples, but the embodiments of the present invention are not limited thereto.

Example one

Please refer to fig. 1 to understand the technical solution of the present embodiment. The embodiment of the invention provides a collaborative programming method, which specifically comprises the following steps:

step 1, acquiring a collaborative programming task, wherein the collaborative programming task at least comprises a PCB design file reading task, a MARK point creating task, a component library data query and mounting parameter setting task and a program output task;

step 2, detecting an initial state value of a PCB design file read-in task, and updating the initial state value of the PCB design file read-in task to a final state value according to the initial state value of the PCB design file read-in task;

step 3, detecting initial state values of a BOM table data reading task, an imposition task and a MARK point task in parallel, and updating the initial state values of the BOM table data reading task, the imposition task, the MARK point task, the component library data query and the mounting parameter setting task to final state values according to the initial state values of the BOM table data reading task, the imposition task and the MARK point task;

step 4, detecting the initial state value of the program output task, updating the initial state value of the program output task to a final state value according to the initial state value of the program output task, and outputting the program;

wherein the initial state value characterizes an unexecuted state or an executed state and the final state value characterizes an executed state.

In this embodiment, because the tasks of reading PCB design files, creating MARK points, querying component library data, setting mounting parameters, and outputting programs are performed in the SMT programming process, the collaborative programming tasks at least include the tasks of reading PCB design files, creating MARK points, querying component library data, setting mounting parameters, and outputting programs, and in some SMT programming processes, the tasks of reading BOM table data and/or creating imposition tasks also need to be performed.

In the present embodiment, initial state values are set for the PCB design file reading task, the BOM table data reading task, the imposition creating task, the MARK point creating task, the component library data query, the mounting parameter setting task, and the program output task, where the initial state values of the six tasks may respectively represent TI, T2, T3, T4, T5, and T6, the state of the task is an executed state when the initial state value is YES (e.g., TI — YES, T2 — YES, T3 — YES, T4 — YES, T5 — YES, and T6 — YES), and the state of the task is an executed state when the initial state value is NO (e.g., TI — NO, T2 — NO, T3 — NO, T4 — NO, T636 — NO, and T6 — NO) represents the executed state before the execution of the tasks is T3927, T5, T1, T4684 — NO; the final state values are YES.

After the cooperative programming task is obtained, an initial state value of a PCB design file read-in task needs to be detected firstly, when the initial state value represents an unexecuted state, the PCB design file read-in task is executed, after the execution is finished, the initial state value is updated to a final state value, and when the initial state value represents an executed state, the initial state value can be directly used as the final state value; then, detecting initial state values of the BOM table data reading task, the imposition task creation task and the MARK point task creation at the same time, and when any one of the initial state values of the BOM table data reading task, the imposition task creation task and the MARK point task creation is in an unexecuted state, executing the unexecuted task correspondingly until the initial state values of the BOM table data reading task, the imposition task creation task and the MARK point task creation are all updated to be final state values; meanwhile, in order to save time, after the initial state value of the BOM table data reading task is updated to the final state value, the initial state value of the element library data query and mounting parameter setting task can be directly detected, when the initial state value represents the non-execution state, the element library data query and mounting parameter setting task is executed, after the execution is finished, the initial state value is updated to the final state value, and when the initial state value represents the execution state, the initial state value can be directly used as the final state value; after initial state values of a BOM table data reading task, a makeup creating task, a MARK point creating task, a component library data query and a mounting parameter setting task are all updated to final state values, an initial state value of a program output task is detected, the program output task is executed when the initial state value represents an unexecuted state, the initial state value is updated to a final state value after the execution is completed, the initial state value can be directly used as a final state value when the initial state value represents an executed state, then the program can be output, the completion condition can be fed back to a manual processing client to complete an SMT programming task, and the state values T1, T2, T3, T4, T5 and T6 are recovered to default values NO.

In the embodiment, the state value is set for each task node, so that the execution state of each task can be recorded through the state value in the process of executing the task, the task can be continuously executed after the abnormal condition occurs in a certain task and the abnormal condition is processed, the situation that all tasks need to be executed again due to the abnormal condition in the execution of the certain task is avoided, and the cooperativity of participators is improved. In addition, after the reading task of the PCB design file is completed, the BOM table data reading task, the imposition task creation task and the MARK point creation task are operated at the same time, and the program output task is executed only when the initial state values of the BOM table data reading task, the imposition task creation task, the MARK point creation task, the component library data query and the mounting parameter setting task are all updated to the final state values, so that the task completion efficiency can be greatly improved, and the money cost and the time cost of enterprises can be reduced.

In addition, after the co-programming task is obtained, the BOM table data reading task and/or the imposition creation task may not be included in the co-programming task, so before the PCB design file reading task is detected, the task content that the co-programming task needs to execute needs to be determined, that is:

judging whether a BOM table data reading task and/or a creation imposition task exist in the collaborative programming task, if the BOM table data reading task exists in the collaborative programming task, maintaining an initial state value of the BOM table data reading task, if the BOM table data reading task does not exist in the collaborative programming task, updating the initial state value of the BOM table data reading task to represent an executed state, even if T2 is YES, if the creation imposition task exists in the collaborative programming task, maintaining the initial state value of the creation imposition task, if the creation imposition task does not exist in the collaborative programming task, updating the initial state value of the creation imposition task to represent the executed state, even if T3 is YES.

Then, step 2 may be executed, and step 2 may specifically include:

detecting an initial state value of a PCB design file read-in task, judging whether the initial state value of the PCB design file read-in task represents an executed state or an unexecuted state, if the initial state value of the PCB design file read-in task represents the executed state, the initial state value of the PCB design file read-in task is a final state value, if the initial state value of the PCB design file read-in task represents the unexecuted state, executing the PCB design file read-in task, and after the PCB design file read-in task is executed, updating the initial state value of the PCB design file read-in task to the final state value.

Further, when executing the PCB design file reading task, there may be abnormal situations, such as the PCB design file cannot be read in, there is a component bit number duplication situation in the PCB design file reading process, the reading file is found to be incomplete in the PCB design file reading process, etc., so it is necessary to determine whether there is an abnormal situation in the execution process of the PCB design file reading task, if there is no abnormal situation, after the PCB design file reading task is completed, the initial state value of the PCB design file reading task is updated to the final state value, if there is an abnormal situation, the abnormal situation is fed back to the manual processing client, then the feedback that the manual processing client has processed the abnormal situation is received within a first preset time, after receiving the feedback, and after the PCB design file reading task is completed, the initial state value of the PCB design file reading task is updated to the final state value, the first preset time is the time for processing the abnormal condition when the PCB design file reading task is executed.

To more clearly illustrate the processing procedure of the abnormal situation occurring when the PCB design file reading task is executed, the example of the abnormal situation as the PCB design file cannot be read is illustrated as follows:

referring to fig. 2, 3 and 4, if an abnormal situation that the PCB design file cannot be read in occurs, the abnormal situation and the suggestion that is read again need to be fed back to the manual processing client, the manual processing client stores the abnormal situation that the PCB design file cannot be read in and the suggestion that is suggested to be read again into a task pool in a PCB data exception handling group, according to the situation (according to the problem that the abnormal situation occurs, the abnormal situation can be preferentially distributed to members who are more professional to handle the problem), the PCB data exception handling group distributes the processing task of the abnormal situation to, for example, member 1 for processing, and sets the completion time (for example, 10 minutes), member 1 starts counting down when receiving the task, if the task is completed within the specified time, the processing situation is fed back to the node where the PCB design file is read in, the PCB design file reading task is completed, and the initial state value of the PCB design file reading task is updated to the final state value, i.e., T1 — YES; if the task is not completed within the specified time, the member 1 can choose to abandon the processing, the abnormal task is in an interrupted state in the processing of the member 1, the processing condition of the interrupted abnormal condition can be stored and returned to the task pool, the PCB data abnormal processing group can choose to continue the processing according to the condition (according to the condition of the abnormal processing task, for example, the abnormal processing task is completed soon, but the countdown time is up, the condition can be processed by the member 1 until the abnormal processing task is completed, the countdown setting can be realized by setting countdown reminders with different time lengths and different times according to the difficulty degree of the task by the PCB data abnormal processing group, for example, for the abnormal condition that a PCB design file cannot be read in, setting 2 countdown reminders after being distributed to the member 1, the time lengths are respectively set as 10 minutes and 5 minutes, if the abnormal processing task is completed, the member 1 has no capability to process the exception, and may consider to change to another member to continue to execute the exception handling task), the member 1 is allocated again or another member to continue to process the exception (continue to process the exception in the state of processing the exception before), and sets a completion time (for example, 10 minutes), when the member receives the task, the member starts counting down, if the task is completed within a specified time, the processing condition is fed back to the node of the PCB design file reading task, the PCB design file reading task is completed, the initial state value of the PCB design file reading task is updated to the final state value, that is, the node is completed and the state value T1 is set to YES, and if the exception handling is not completed, the above operations are repeated.

Similarly, when the task of reading the PCB design file is executed, if other abnormal conditions occur, the task can be processed according to the method, and different problems can be distributed to different members for processing, so that the task can be efficiently completed.

In a specific embodiment, step 3 may specifically include:

judging initial state values of a BOM table data reading task, a creation imposition task and a creation MARK point task;

if the initial state value of the BOM table data reading task represents the executed state, the initial state value of the element library data query and mounting parameter setting task is detected, and updating the initial state value of the element library data query and mounting parameter setting task to a final state value according to the initial state value of the element library data query and mounting parameter setting task, if the initial state value of the BOM table data read-in task represents an unexecuted state, executing the BOM table data read-in task, after the BOM table data reading task is executed, updating the initial state value of the BOM table data reading task to a final state value, then detecting the initial state value of the element library data query and mounting parameter setting task, updating the initial state value of the element library data query and mounting parameter setting task to a final state value according to the initial state value of the element library data query and mounting parameter setting task;

if the initial state value of the created imposition task represents the executed state, the initial state value of the created imposition task is the final state value, if the initial state value of the created imposition task represents the unexecuted state, the created imposition task is executed, and after the created imposition task is executed, the initial state value of the created imposition task is updated to the final state value;

and if the initial state value of the task for creating the MARK point represents the executed state, the initial state value of the task for creating the MARK point is the final state value, if the initial state value of the task for creating the MARK point represents the unexecuted state, the task for creating the MARK point is executed, and after the task for creating the MARK point is executed, the initial state value of the task for creating the MARK point is updated to the final state value.

Specifically, in this embodiment, it is necessary to simultaneously determine the initial state values of the BOM table data read-in task, the imposition creation task, and the MARK point creation task, and for the BOM table data read-in task, after the initial state value representing the executed state is confirmed, the initial state values of the component library data query and the mounting parameter setting task may be detected, and this process may be executed in parallel with the process of detecting the initial state values of the imposition creation task and the MARK point creation task, and are not in conflict with each other, so that the programming time may be saved, and the work efficiency may be improved.

Further, when detecting the initial state value of the element library data query and mounting parameter setting task, it may be determined whether the initial state value of the element library data query and mounting parameter setting task represents an executed state or an unexecuted state, if the initial state value of the element library data query and mounting parameter setting task represents an executed state, the initial state value of the element library data query and mounting parameter setting task is a final state value, if the initial state value of the element library data query and mounting parameter setting task represents an unexecuted state, the element library data query and mounting parameter setting task is executed, and after the element library data query and mounting parameter setting task is completed, the initial state value of the element library data query and mounting parameter setting task is updated to the final state value.

Preferably, when the initial state value of the BOM table data reading task represents an unexecuted state, the BOM table data reading task needs to be executed, and during the execution, there may be abnormal situations, such as reading failure of the BOM table, finding duplication of elements during reading of the BOM table, finding inconsistency of the number and the number of the elements in the BOM table during reading of the BOM table, finding that the positions of the elements in the BOM table cannot be found in the CAD design file during reading of the BOM table, etc. as shown in table 1, a BOM table provided in this embodiment is provided, so that it is also necessary to determine whether there is an abnormal situation during the execution of the BOM table data reading task, if there is no abnormal situation, after the BOM table data reading task is completed, the initial state value of the BOM table data reading task is updated to a final state value, and if there is an abnormal situation, the abnormal situation is fed back to the manual processing client, and then receiving feedback that the abnormal condition is processed by the manual processing client within a second preset time, and updating the initial state value of the BOM table data reading task to a final state value after receiving the feedback and finishing the BOM table data reading task, wherein the second preset time is the time for processing the abnormal condition when the BOM table data reading task is executed.

TABLE 1BOM Table

Number of bits Material number Number of Information
C1,C11 E16359-001 2 CAP C,X5R,0402,1UF,6.3V,10%,GRM155R60J1>
C1M5,C2M1 C83410-003 2 CAPC,X5R,0201,0.100UF,6.300V,+/-10%

To more clearly illustrate the processing procedure of the abnormal condition occurring when the data reading task of the BOM table is executed, the abnormal condition is taken as an example that the number and the bit number of the elements in the BOM table are found to be inconsistent in the reading process of the BOM table, and the positions of the elements in the BOM table are found in the reading process of the BOM table:

referring to fig. 2, 3 and 4, if an abnormal condition that the number of elements and the bit number in the BOM table are inconsistent is found in the reading process of the BOM table, the abnormal condition that the number of elements and the bit number are inconsistent and the element information that the number of elements and the bit number are inconsistent in the BOM table are fed back to the manual processing client, the manual processing client divides the abnormal condition that the number of elements and the bit number are inconsistent and the element information that the number of elements and the bit number are inconsistent in the BOM table into two types of tasks (the first type is to check whether the number of elements in the fed back element information is wrong or not, and the second type is to check whether the number of elements in the fed back element information is wrong or not) to be stored in a task pool of the BOM data exception handling group, according to the situation (according to the problem that an exception occurs, a member who is more specialized in handling the problem) can be preferentially assigned to the BOM data exception handling group to allocate the two types of tasks to, such as member 3 and member 4, to handle the two types of exceptions in parallel, setting the completion time as 10 minutes, starting countdown when the members 3 and 4 receive the task, if the task is completed within the specified time, feeding back the processing condition to a node of the BOM table data reading task, completing the BOM table data reading task, and updating the initial state value of the BOM table data reading task to the final state value, namely T2 is YES; if the abnormal task is not finished within the specified time (there are 3 abnormal processing abnormal completion conditions: neither the first abnormal condition nor the second abnormal condition is finished; the first abnormal condition is finished but the second abnormal condition is not finished; the first abnormal condition is not finished but the second abnormal condition is finished.), the member 3 and the member 4 can choose to abandon the processing, the abnormal processing task is in an interruption state in the processing of the member 3 and the member 4, the interrupted abnormal processing condition can be stored and returned to the task pool, the BOM data abnormal processing group can choose to continue the processing according to the condition (according to the condition of the abnormal processing task, for example, the abnormal processing task is finished soon, but the countdown time is up, the condition can be chosen by the member 3 and/or the member 4 to continue the processing until the abnormal processing task is finished, the countdown setting can be set according to the difficulty degree of the task by the BOM data abnormal processing group, setting countdown reminders with different durations and different times, for example, setting countdown reminders for 2 times after being distributed to a member 3 and/or a member 4 aiming at the abnormity that the number and the bit number of elements in the BOM are inconsistent in the reading process of the BOM, wherein the durations are respectively set to 10 minutes and 5 minutes; if the member 3 and/or the member 4 has no capability to process the exception, the other member may be considered to continue to perform the exception processing), the member 3 and/or the member 4 is again assigned to or the other member to continue to process the exception (continue processing in the state of processing the exception before), and a completion time (for example, 10 minutes) is set, the member starts counting down when receiving the task, if the task is completed within a specified time, the processing condition is fed back to the node of the BOM table data reading task, the BOM table data reading task is completed, and the initial state value of the BOM table data reading task is updated to the final state value, that is, the node is completed and a state value T2 is set as YES, and if the exception processing is not completed, the above operations are repeated.

If the component position in the BOM table is found not to be found in the CAD design file in the reading process of the BOM table, the abnormal condition and the related component information of the component position which cannot be found in the CAD design file in the BOM table are fed back to the manual processing client, the abnormal condition and the related component information of the component position which cannot be found in the CAD design file in the BOM table are divided into two types of tasks (the first type is that whether the related component information in the CAD file is wrong or not, and the second type is that whether the related component information in the BOM table is wrong or not) by the manual processing client to be stored in a task pool of the BOM data abnormal processing group, according to the condition, the BOM data abnormal processing group distributes the two types of tasks to the member 5 and the member 6 for parallel processing, and sets the completion time (for example, 10 minutes), the member 5 and the member 6 start counting down when receiving the tasks, if the tasks are completed within the specified time, the data of the processing condition are fed back to the node of the BOM table reading task, completing the node and setting the state value T2 to YES; if the abnormal task is not completed within the specified time, the member 5 and the member 6 can choose to abandon the processing, the abnormal task is in an interrupted state in the processing of the member 5 and the member 6, the interrupted abnormal processing condition can be saved and returned to the task pool, the BOM data abnormal processing group is distributed to the member 5 and/or the member 6 or other members to continue processing the abnormal task according to the condition, the completion time is set, the member starts counting down when receiving the task, if the task is completed within the specified time, the processing condition is fed back to a node of the BOM table data reading task, the node is completed, the state value T2 is set to be YES, and if the abnormal processing is not completed, the operation is repeated.

Similarly, when the BOM table data reading task is executed, if other abnormal conditions occur, the processing can be carried out according to the mode, different problems can be distributed to different members for processing, and therefore the task can be completed efficiently.

Preferably, when the initial state value of the imposition task represents the unexecuted state, the imposition task needs to be executed, and during the execution, there may be abnormal situations, for example, imposition information may not be found during the imposition creation, the size of the board after the imposition operation is completed is too large, so it is also necessary to determine whether there is an abnormal situation during the execution of the imposition task, if there is no abnormal situation, the initial state value of the imposition task is updated to the final state value after the imposition task is completed, if there is an abnormal situation, the abnormal situation is fed back to the manual processing client, then the feedback that the manual processing client has processed the abnormal situation is accepted within a third preset time, after the feedback is received, and after the imposition task is completed, the initial state value of the imposition task is updated to the final state value, and the third preset time is the time for processing the abnormal condition when the imposition task is created.

To more clearly illustrate the processing procedure of abnormal situations occurring when the imposition creating task is executed, the abnormal situations are taken as examples that imposition information cannot be found when imposition is created:

referring to fig. 2, 3 and 4, if imposition information cannot be found during imposition creation, feeding back an abnormal situation in which imposition information cannot be found and an opinion suggesting that makeup information is supplemented to a manual processing client, storing the abnormal situation in which imposition information cannot be found and the opinion suggesting that makeup information is supplemented to a task pool of an imposition exception processing group by the manual processing client, distributing such abnormal tasks to member 1 for processing by the imposition exception processing group according to conditions, and setting completion time, counting down by member 1 when receiving the tasks, and feeding back processing conditions to a node in which an imposition task is created if the tasks are completed within a specified time, completing the node and setting a state value T3 YES; if the task is not completed within the specified time, the member 1 can choose to abandon the processing, the abnormal task is in an interrupted state in the processing of the member 1, the interrupted abnormal processing condition can be saved and returned to the imposition abnormal processing group in the task pool, the member 1 or other members can be distributed again to continue processing the abnormality according to the condition, the completion time is set, the member starts counting down when receiving the task, if the task is completed within the specified time, the processing condition is fed back to the node for creating the imposition task, the node is completed, the state value T3 is set to be YES, and if the abnormal processing is not completed, the operation is repeated.

Similarly, when executing the imposition creation task, if other abnormal conditions occur, the processing can also be performed according to the above manner, and different problems can be distributed to different members for processing, so as to efficiently complete the task.

Preferably, when the initial state value of the task creating the MARK point represents an unexecuted state, the task creating the MARK point needs to be executed, and in the execution process, there may be an abnormal condition, for example, a suitable MARK point may not be found when creating the MARK point, the number of MARK points is found to be insufficient when creating the MARK point, the size of the super board found when creating the MARK point is found, and the like, so it is further necessary to determine whether there is an abnormal condition in the execution process of creating the MARK point task, if there is no abnormal condition, after the task creating the MARK point is completed, the initial state value of the task creating the MARK point is updated to the final state value, if there is an abnormal condition, the abnormal condition is fed back to the manual processing client, then within a fourth preset time, the feedback that the manual processing client has processed the abnormal condition is received, after the feedback is received, and after the task creating the MARK point is completed, and updating the initial state value of the task of creating the MARK point to the final state value, wherein the fourth preset time is the time for processing the abnormal condition when the task of creating the MARK point is created.

To more clearly illustrate the processing procedure of the abnormal situation occurring when the task of creating the MARK point is executed, the example of the abnormal situation is that no suitable MARK point can be found when the MARK point is created is taken as an example:

if the proper MARK point cannot be found when the MARK point is created, feeding back the abnormal condition of the improper MARK point and the opinion of manually creating the MARK point to the manual processing client, storing the abnormal condition of the improper MARK point and the opinion of manually creating the MARK point into a task pool for creating an MARK point abnormal processing group by the manual processing client, creating the MARK point abnormal processing group according to the condition, distributing the abnormal task to the member 1 for processing, setting the completion time, counting down when the member 1 receives the task, feeding back the processing condition to a node for creating the MARK point task if the task is completed within the specified time, completing the node and setting a state value T4 YES; if the task is not completed within the specified time, the member 1 can choose to abandon the processing, the abnormal task is in an interrupted state in the processing of the member 1, the interrupted abnormal processing condition can be saved and returned to the task pool, the MARK point abnormal processing group is created, the member 1 or other members are distributed again to continue processing the abnormality according to the condition, the completion time is set, the member starts counting down when receiving the task, if the task is completed within the specified time, the processing condition is fed back to the node creating the MARK point task, the node is completed, the state value T4 is set to be YES, and if the abnormal processing is not completed, the above operations are repeated.

Similarly, when the task of creating the MARK point is executed, if other abnormal conditions occur, the processing can also be performed according to the above mode, and different problems can be distributed to different members for processing, so that the task can be completed efficiently.

Preferably, when the initial state value of the component library data query and mounting parameter setting task represents an unexecuted state, the component library data query and mounting parameter setting task needs to be executed, and during the execution, there may be abnormal situations, such as finding that the downloaded data is incomplete when downloaded in the component library according to the part number (part number), finding that the related component cannot be found in the component library when downloaded in the component library according to the part number, finding that the angular offset of part of the components and/or the mounting data information cannot be found when the component number is found in the total component library and the mounting data information is found, and so on, so that it is also necessary to determine whether there is an abnormal situation during the execution of the component library data query and mounting parameter setting task, and if there is no abnormal situation, after the component library data query and mounting parameter setting task is completed, the initial state value of the component library data query and mounting parameter setting task is updated to the final state value, and if the abnormal condition exists, the abnormal condition is fed back to the manual processing client, then the feedback that the abnormal condition is processed by the manual processing client is received within a fifth preset time, after the feedback is received and the element library data query and mounting parameter setting task is completed, the initial state value of the element library data query and mounting parameter setting task is updated to the final state value, wherein the fifth preset time is the time for processing the abnormal condition when the element library data query and mounting parameter setting task is executed.

To more clearly explain the processing procedure of abnormal situations occurring during the execution of the task of querying the component library data and setting the mounting parameters, the example of the abnormal situation is that the downloaded data is found to be incomplete when the component library is downloaded according to the material number:

referring to fig. 2, 3 and 4, if the downloaded data is found to be incomplete when the part library is downloaded according to the part number, the abnormal conditions of the part information with incomplete downloaded data and lacking data (for example, N part data are not downloaded) are fed back to the manual processing client, the manual processing client splits the part information with incomplete downloaded data and lacking data into a plurality of tasks (for example, N) to be stored in the task pool of the part library maintenance and mounting parameter setting abnormal processing group, according to circumstances, the component maintenance and mounting parameter setting abnormality processing group assigns these tasks to respective members for parallel processing, setting the completion time, starting countdown when the member receives the task, if the task is completed within the specified time, feeding back the processing condition to the node of the element library data query and mounting parameter setting task, completing the node and setting a state value T5 to be YES; if the task is not completed within the specified time, the member i (i is any number from 1 to N) can choose to abandon the process, the abnormal task is in an interrupted state in the process of the member i, the interrupted abnormal processing condition can be stored and returned to the task pool, the component maintenance and mounting parameter setting abnormal processing group is distributed to the corresponding member i or other members again according to the condition to continue processing the abnormality, the completion time is set, the member starts counting down when receiving the task, if the task is completed within the specified time, the processing condition is fed back to the node of the component library data query and mounting parameter setting task, the component library data query and mounting parameter setting task is completed, the node is completed and the state value T5 is set, and if the abnormal processing is not completed, the above operations are repeated. Specific examples thereof include: if there are 100 material numbers, 70 are inquired without problems, and 30 have problems, then the 30 can be split into 30 exception tasks, and the 30 exception processing members can perform exception processing in parallel.

Similarly, when the task of inquiring the component library data and setting the mounting parameters is executed, if other abnormal conditions occur, the abnormal conditions can be processed according to the method, and different problems can be distributed to different members for processing, so that the task can be efficiently completed.

In a specific embodiment, step 4 may specifically be:

after the initial state values of the element library data query and mounting parameter setting task, the creation imposition task and the creation MARK point task are all updated to the final state values, the initial state values of the program output tasks are detected, whether the initial state values of the program output tasks represent an executed state or an unexecuted state is judged, if the initial state values of the program output tasks represent the executed state, the initial state values of the program output tasks are the final state values, if the initial state values of the program output tasks represent the unexecuted state, the program output tasks are executed, and after the program output tasks are executed, the initial state values of the program output tasks are updated to the final state values.

Further, when the program output task is executed, there may be an abnormal situation, for example, when the program output is executed, the program cannot be output, and therefore, it is also necessary to determine whether there is an abnormal situation during the execution of the program output task, if there is no abnormal situation, after the program output task is completed, the initial state value of the program output task is updated to the final state value, if there is an abnormal situation, the abnormal situation is fed back to the manual processing client, then the feedback that the manual processing client has processed the abnormal situation is received within a sixth preset time, after the feedback is received, and after the program output task is completed, the initial state value of the program output task is updated to the final state value, where the sixth preset time is a time for processing the abnormal situation when the program output task is executed.

In order to more clearly explain the processing procedure of the abnormal situation when the program output task is executed, the example of the abnormal situation as the output failure of the program when the program output is executed is taken as an example:

referring to fig. 2, 3 and 4, if the program cannot be output when the program output is executed, feeding back the exception that the program cannot be output and the suggestion that manual assistance is needed to the manual output client, storing the exception that the program cannot be output and the suggestion that manual assistance is needed to the task pool of the program output exception handling group by the manual handling client, distributing such tasks to the member 1 by the program output exception handling group according to the situation, setting the completion time, counting down by the member 1 when receiving the tasks, feeding back the handling situation to the node of the program output task if the tasks are completed within the specified time, completing the node and setting the state value T6 to YES; if the task is not completed within the specified time, the member 1 can choose to abandon the processing, the abnormal task is in an interrupted state in the processing of the member 1, the interrupted abnormal processing condition can be saved and returned to the task pool, the program output abnormal processing group is distributed to the member 1 again or other members to continue processing the abnormality according to the condition, the completion time is set, the member starts counting down when receiving the task, if the task is completed within the specified time, the processing condition is fed back to the node of the program output task, the node is completed, the state value T6 is set to be YES, and if the abnormal processing condition is not completed, the operation is repeated.

Similarly, when the program output task is executed, if other abnormal conditions occur, the processing can also be carried out according to the method, and different problems can be distributed to different members for processing, so that the task can be completed efficiently.

In the collaborative programming method of the embodiment, whether the BOM table data reading task and/or the imposition creating task exist is judged, and the initial state values of the BOM table data reading task and the imposition creating task are set according to the existence state of the BOM table data reading task and the imposition creating task, so that the execution conditions of the BOM table data reading task and the imposition creating task can be determined; in addition, after the reading task of the PCB design file is completed, the initial state values of the BOM table data reading task, the imposition task and the MARK point task are all updated to the final state values by simultaneously operating the BOM table data reading task, the imposition task, the MARK point task, the element library data query and the mounting parameter setting task, and then executing the program output task, so that the task completion efficiency can be improved, and the money cost and the time cost of enterprises can be reduced.

In the embodiment, the state value is set for each task node, so that the execution state of each task can be recorded through the state value in the process of executing the task, the task can be continuously executed after the abnormal condition occurs in a certain task and the abnormal condition is processed, the situation that all tasks need to be executed again due to the abnormal condition in the execution of the certain task is avoided, and the cooperativity of participators is improved.

In the embodiment, when each task node has an abnormal condition, the abnormal condition can be timely fed back to the manual processing client, after the abnormal condition is processed and completed by the manual processing client, the corresponding task is continuously executed, and when the abnormal condition is processed, the manual processing client can designate the corresponding professional to solve the abnormal condition, the personnel participating in each abnormal processing node only need to read the abnormal data of the related node without reading the data of the whole design file, the embodiment can control the data contact authority of the abnormal professional participating in the specific collaborative programming project, namely, the data information which can be known and processed by the professional is very limited, and even if the personnel are leaked at the later stage of the project, the safety of the data of the whole project can still be ensured to obtain higher guarantee.

Example two

Referring to fig. 5, fig. 5 is a schematic diagram of a cooperative programming apparatus according to an embodiment of the present invention. The cooperative programming apparatus includes:

the PCB task processing module is used for acquiring a PCB design file read-in task, detecting an initial state value of the PCB design file read-in task, and updating the initial state value of the PCB design file read-in task to a final state value according to the initial state value of the PCB design file read-in task;

the parallel processing module is used for respectively acquiring BOM table data reading tasks, creating imposition tasks, creating MARK point tasks, component library data query and mounting parameter setting tasks, detecting initial state values of the BOM table data reading tasks, the creating imposition tasks and the creating MARK point tasks in parallel, and updating the initial state values of the BOM table data reading tasks, the creating imposition tasks, the creating MARK point tasks, the component library data query and the mounting parameter setting tasks to final state values according to the initial state values of the BOM table data reading tasks, the creating imposition tasks and the creating MARK point tasks;

the program output processing module is used for acquiring the program output task, detecting the initial state value of the program output task, updating the initial state value of the program output task into a final state value according to the initial state value of the program output task, and outputting the program;

wherein the initial state value characterizes an unexecuted state or an executed state and the final state value characterizes an executed state.

In an embodiment of the present invention, the PCB task processing module may be specifically configured to determine whether a BOM table data read-in task and/or a create imposition task exists in the collaborative programming task, maintain an initial state value of the BOM table data read-in task if the BOM table data read-in task exists in the collaborative programming task, update the initial state value of the BOM table data read-in task to represent an executed state if the BOM table data read-in task does not exist in the collaborative programming task, maintain the initial state value of the create imposition task if the create imposition task exists in the collaborative programming task, and update the initial state value of the create imposition task to represent the executed state if the create imposition task does not exist in the collaborative programming task.

Further, the PCB task processing module is more specifically configured to detect an initial state value of a PCB design file read-in task, and determine whether the initial state value of the PCB design file read-in task represents an executed state or an unexecuted state, where if the initial state value of the PCB design file read-in task represents the executed state, the initial state value of the PCB design file read-in task is a final state value, and if the initial state value of the PCB design file read-in task represents the unexecuted state, the PCB design file read-in task is executed, and after the PCB design file read-in task is executed, the initial state value of the PCB design file read-in task is updated to the final state value.

Further, executing a PCB design file reading task, and after the PCB design file reading task is completed, updating the initial state value read by the PCB design file to a final state value, including: executing a PCB design file reading task, judging whether an abnormal condition exists in the execution process of the PCB design file reading task, if not, updating an initial state value read by the PCB design file to a final state value after the PCB design file reading task is completed, if so, feeding back the abnormal condition to a manual processing client, then receiving the feedback that the manual processing client has processed the abnormal condition within a first preset time, and after receiving the feedback and after the PCB design file reading task is completed, updating the initial state value read by the PCB design file to the final state value.

In an embodiment of the present invention, the parallel processing module may be specifically configured to determine an initial state value of a BOM table data read-in task, an imposition task creation task, and a MARK point task creation task; if the initial state value of the BOM table data reading task represents the executed state, the initial state value of the element library data query and mounting parameter setting task is detected, and updating the initial state value of the element library data query and mounting parameter setting task to a final state value according to the initial state value of the element library data query and mounting parameter setting task, if the initial state value of the BOM table data read-in task represents an unexecuted state, executing the BOM table data read-in task, after the BOM table data reading task is executed, updating the initial state value of the BOM table data reading task to a final state value, then detecting the initial state value of the element library data query and mounting parameter setting task, updating the initial state value of the element library data query and mounting parameter setting task to a final state value according to the initial state value of the element library data query and mounting parameter setting task; if the initial state value of the created imposition task represents the executed state, the initial state value of the created imposition task is the final state value, if the initial state value of the created imposition task represents the unexecuted state, the created imposition task is executed, and after the created imposition task is executed, the initial state value of the created imposition task is updated to the final state value; and if the initial state value of the task for creating the MARK point represents the executed state, the initial state value of the task for creating the MARK point is the final state value, if the initial state value of the task for creating the MARK point represents the unexecuted state, the task for creating the MARK point is executed, and after the task for creating the MARK point is executed, the initial state value of the task for creating the MARK point is updated to the final state value.

Further, executing the BOM table data reading task, and after the execution of the BOM table data reading task is completed, updating the initial state value of the BOM table data reading task to a final state value, including: executing the BOM table data reading task, judging whether an abnormal condition exists in the execution process of the BOM table data reading task, if not, updating the initial state value of the BOM table data reading task to a final state value, if so, feeding back the abnormal condition to the manual processing client, then receiving the feedback that the manual processing client has processed the abnormal condition within a second preset time, and after receiving the feedback, updating the initial state value of the BOM table data reading task to the final state value.

Further, executing the imposition creating task, and updating the initial state value of the imposition creating task to the final state value after the imposition creating task is completed, wherein the method comprises the following steps: executing the created imposition task, judging whether an abnormal condition exists in the execution process of the created imposition task, if the abnormal condition does not exist, updating the initial state value of the created imposition task to a final state value, if the abnormal condition exists, feeding back the abnormal condition to the manual processing client, then receiving the feedback that the manual processing client has processed the abnormal condition within a third preset time, and after receiving the feedback, updating the initial state value of the created imposition task to the final state value.

Further, executing the task of creating a MARK point, and after the task of creating the MARK point is executed, updating the initial state value of the task of creating the MARK point to the final state value, including: executing a MARK point task, judging whether an abnormal condition exists in the execution process of the MARK point task, if not, updating the initial state value of the MARK point task to a final state value, if so, feeding back the abnormal condition to the manual processing client, then receiving the feedback that the manual processing client has processed the abnormal condition within a fourth preset time, and after receiving the feedback, updating the initial state value of the MARK point task to the final state value.

Further, updating the initial state value of the component library data query and mounting parameter setting task to a final state value according to the initial state value of the component library data query and mounting parameter setting task, including: detecting an initial state value of a component library data query and mounting parameter setting task, judging whether the initial state value of the component library data query and mounting parameter setting task represents an executed state or an unexecuted state, if the initial state value of the component library data query and mounting parameter setting task represents the executed state, the initial state value of the component library data query and mounting parameter setting task is a final state value, if the initial state value of the component library data query and mounting parameter setting task represents the unexecuted state, executing the component library data query and mounting parameter setting task, and after the component library data query and mounting parameter setting task is executed, updating the initial state value of the component library data query and mounting parameter setting task to the final state value.

Further, executing a task of querying the component library data and setting the mounting parameters, and after the task of querying the component library data and setting the mounting parameters is completed, updating the initial state values of the task of querying the component library data and setting the mounting parameters to final state values, including: the method comprises the steps of executing a component library data query and mounting parameter setting task, judging whether abnormal conditions exist in the execution process of the component library data query and mounting parameter setting task, if not, updating the initial state values of the component library data query and mounting parameter setting task to final state values after the component library data query and mounting parameter setting task is completed, if so, feeding back the abnormal conditions to a manual processing client, then receiving feedback that the manual processing client has processed the abnormal conditions within a fifth preset time, and after receiving the feedback and after the component library data query and mounting parameter setting task is completed, updating the initial state values of the component library data query and mounting parameter setting task to final state values.

In an embodiment of the present invention, the program output processing module may be specifically configured to detect an initial state value of the program output task after the initial state values of the component library data query and mounting parameter setting task, the imposition creation task, and the MARK point creation task are all updated to final state values, determine whether the initial state value of the program output task represents an executed state or an unexecuted state, determine that the initial state value of the program output task represents the executed state or the unexecuted state, determine that the initial state value of the program output task is the final state value if the initial state value of the program output task represents the executed state, execute the program output task if the initial state value of the program output task represents the unexecuted state, and update the initial state value of the program output task to the final state value after the program output task is executed.

Further, executing the program output task, and updating the initial state value of the program output task to the final state value after the program output task is executed, including: executing the program output task, judging whether an abnormal condition exists in the execution process of the program output task, if not, updating the initial state value of the program output task to a final state value, if so, feeding back the abnormal condition to the manual processing client, then receiving the feedback that the manual processing client has processed the abnormal condition within sixth preset time, and after receiving the feedback, updating the initial state value of the program output task to the final state value.

The cooperative programming apparatus provided in the embodiment of the present invention may implement the method embodiments, and the implementation principle and the technical effect are similar, which are not described herein again.

EXAMPLE III

Referring to fig. 2, 3 and 4, an embodiment of the present invention further provides a collaborative programming system, which includes a manual processing client and a collaborative programming device according to the second embodiment, where the manual processing client is configured to send a collaborative programming task to the collaborative programming device, and in addition, the manual processing client is further configured to, when an abnormal condition occurs during the execution of at least one of a PCB design file reading task, a BOM table data reading task, a imposition creating task, a MARK point creating task, a component library data query, a mounting parameter setting task, and a program output task, allocate at least one designated person to handle the abnormal condition under the condition of a set number of times and a set time corresponding to each time, and after the abnormal condition is handled, the manual processing client feeds back to the SMT collaborative programming device, where the set number of times is the number of times required for solving the abnormal condition, the setting time is the time required for handling each abnormal situation, and the manual processing client can set the setting times and the setting time according to the difficulty degree of handling each abnormal situation.

Specifically, the manual processing client may include an initiating task group, a PCB data exception handling group, a BOM data exception handling group, a makeup exception handling group, a MARK point creation exception handling group, a component library maintenance and mounting parameter setting exception handling group, and a program output exception handling group, where the initiating task group is used to initiate a task to a co-programming device, the co-programming device is an SMT automation processing center, the co-programming device selects whether to accept the task initiated by the manual client according to a condition (for example, the co-programming device is accepting other items and may need to re-assign the manual processing client to other co-programming devices), and when the co-programming device accepts the task, the co-programming device starts an independent SMT automation programming; the PCB data exception handling group is used for handling exception conditions occurring in the process of executing a PCB design file read-in task; the BOM data exception handling group is used for handling exception conditions occurring in the process of executing the BOM table data reading task; the imposition exception handling group is used for handling exception conditions occurring in the process of executing the imposition task; creating a MARK point exception handling group for handling exception conditions occurring in the process of executing the MARK point creation task; the component library maintenance and mounting parameter setting exception handling group is used for handling exception conditions occurring in the process of executing a component library data query and mounting parameter setting task; the program output exception handling group is used for handling exception conditions occurring in the process of executing the program output task.

Further, the PCB data exception handling group, the BOM data exception handling group, the imposition exception handling group, the MARK point creation exception handling group, the component library maintenance and mounting parameter setting exception handling group, and the program output exception handling group all include a plurality of task pools, and each exception handling group can allocate an exception condition to a designated person for handling according to a situation.

In the embodiment, when each task node has an abnormal condition, the abnormal condition can be timely fed back to the manual processing client, the corresponding task is continuously executed after the abnormal condition is processed and completed by the manual processing client, and when the abnormal condition is processed, the manual processing client can appoint personnel to solve the abnormal condition, the personnel participating in each node only need to read abnormal data of the related node, the data of the whole design file does not need to be read, and thus the safety of the whole project data is improved.

Example four

Referring to fig. 6, fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present invention. The electronic device 1100 comprises: the system comprises a processor 1101, a communication interface 1102, a memory 1103 and a communication bus 1104, wherein the processor 1101, the communication interface 1102 and the memory 1103 are communicated with each other through the communication bus 1104;

a memory 1103 for storing a computer program;

the processor 1101, when executing the computer program, implements the above method steps.

The processor 1101, when executing the computer program, implements the following steps:

step 1, acquiring a collaborative programming task, wherein the collaborative programming task at least comprises a PCB design file reading task, a MARK point creating task, a component library data query and mounting parameter setting task and a program output task;

step 2, detecting an initial state value of a PCB design file read-in task, and updating the initial state value of the PCB design file read-in task to a final state value according to the initial state value of the PCB design file read-in task;

step 3, detecting initial state values of a BOM table data reading task, an imposition task and a MARK point task in parallel, and updating the initial state values of the BOM table data reading task, the imposition task, the MARK point task, the component library data query and the mounting parameter setting task to final state values according to the initial state values of the BOM table data reading task, the imposition task and the MARK point task;

step 4, detecting the initial state value of the program output task, updating the initial state value of the program output task to a final state value according to the initial state value of the program output task, and outputting the program;

wherein the initial state value characterizes an unexecuted state or an executed state and the final state value characterizes an executed state.

The electronic device provided by the embodiment of the present invention can execute the above method embodiments, and the implementation principle and technical effect are similar, which are not described herein again.

Example four

Yet another embodiment of the present invention provides a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, performs the steps of:

step 1, acquiring a collaborative programming task, wherein the collaborative programming task at least comprises a PCB design file reading task, a MARK point creating task, a component library data query and mounting parameter setting task and a program output task;

step 2, detecting an initial state value of a PCB design file read-in task, and updating the initial state value of the PCB design file read-in task to a final state value according to the initial state value of the PCB design file read-in task;

step 3, detecting initial state values of a BOM table data reading task, an imposition task and a MARK point task in parallel, and updating the initial state values of the BOM table data reading task, the imposition task, the MARK point task, the component library data query and the mounting parameter setting task to final state values according to the initial state values of the BOM table data reading task, the imposition task and the MARK point task;

step 4, detecting the initial state value of the program output task, updating the initial state value of the program output task to a final state value according to the initial state value of the program output task, and outputting the program;

wherein the initial state value characterizes an unexecuted state or an executed state and the final state value characterizes an executed state.

The computer-readable storage medium provided by the embodiment of the present invention may implement the above method embodiments, and the implementation principle and technical effect are similar, which are not described herein again.

As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, apparatus (device), or computer program product. Accordingly, this application may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects that may all generally be referred to herein as a "module" or "system. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-readable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein. A computer program stored/distributed on a suitable medium supplied together with or as part of other hardware, may also take other distributed forms, such as via the Internet or other wired or wireless telecommunication systems.

In the description of the present invention, it is to be understood that the terms "first", "second" and the like are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implying any number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature. In the description of the present invention, "a plurality" means two or more unless specifically defined otherwise.

In the description herein, references to the description of the term "one embodiment," "some embodiments," "an example," "a specific example," or "some examples," etc., mean that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the invention. In this specification, the schematic representations of the terms used above are not necessarily intended to refer to the same embodiment or example. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Furthermore, various embodiments or examples described in this specification can be combined and combined by those skilled in the art.

The foregoing is a more detailed description of the invention in connection with specific preferred embodiments and it is not intended that the invention be limited to these specific details. For those skilled in the art to which the invention pertains, several simple deductions or substitutions can be made without departing from the spirit of the invention, and all shall be considered as belonging to the protection scope of the invention.

28页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:验证实例生成方法、装置、电子设备及存储介质

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类