Real-time data synchronization method of multi-level feeder control system

By adopting a master-slave architecture and command arbitration mechanism in the feeder control system, the problems of untimely command response and data synchronization distortion in multi-level feeder control systems are solved, realizing real-time data synchronization and command scheduling optimization of high-speed pick-and-place machines.

CN121069855AActive Publication Date: 2025-12-05DONGGUAN WILDFIRE TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202511604517.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-11-05
Publication Date
2025-12-05
Estimated Expiration
2045-11-05

AI Technical Summary

Technical Problem

In multi-level feeder control systems, there are problems such as untimely command response, data synchronization distortion, and competition and mixed transmission of high-priority and low-priority commands, which makes the control network unable to meet the design requirements of high-speed pick-and-place machines.

Method used

The system adopts a master-slave architecture, which realizes direct synchronization of feeder status information by creating a status information synchronization queue module in the rack card. It also introduces an instruction arbitration mechanism to optimize the scheduling of control instructions and uses a data compression mechanism to reduce bandwidth requirements.

Benefits of technology

It improves the response rate of the terminal feeder to the control commands of the host computer, ensures the timeliness of feeder status information under multi-level nodes, avoids the competition and mixed transmission of high-priority and low-priority commands, and improves data transmission efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121069855A_ABST
    Figure CN121069855A_ABST
Patent Text Reader

Abstract

The invention discloses a real-time data synchronization method for a multi-level feeder control system, and the method comprises the steps: employing an upper computer as a master station, a cabinet card of a first-level slave station, employing the cabinet card as the upper computer, employing a feeder communication card of a third level and a feeder of a fourth level, employing the cabinet card to create a state information synchronization queue module, the cabinet card creates a corresponding number of state information synchronization queues in a feeder state information cache region according to the number of accessed feeder communication cards, reads feeder state information and updates and stores the feeder state information in the feeder state information cache region of the cabinet card; until the feeder state information of the current bit number is synchronized next time according to the queue sequence of the state information synchronization queue module, the upper computer directly and circularly synchronizes the feeder state information in the feeder state information cache region of the cabinet card, and obtains data without multi-layer forwarding; the problems that a multi-level feeder control system is not timely in instruction response, data synchronization is distorted, and a high-priority instruction and a low-priority instruction compete and are transmitted in a mixed mode are solved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of feeder control system of high-speed chip mounter (SMT), and particularly relates to a real-time data synchronization method of multi-level feeder control system. BACKGROUND

[0002] In the current chip mounter device (SMT), the host computer is connected with the cabinet card through the EtherCAT bus, the cabinet card is connected with multiple feeder communication cards through the RS422 serial bus, each feeder communication card manages dozens of feeders, thereby forming a deep cascade control network, and the control network has the following defects:

[0003] 1. In the multi-level control system, the terminal feeder does not respond to the control instruction of the host computer in time.

[0004] 2. Data synchronization distortion, in the traditional polling mechanism, the host computer needs to forward the data layer by layer through multiple nodes to synchronize the state data of the feeder, the host computer→cabinet card→communication card→feeder→communication card→cabinet card→host computer, all feeder nodes are traversed and a round of synchronization data is obtained, and each round of synchronization period is more than 100 milliseconds, so that the real-time data of the feeder displayed in the host computer is distorted, and the actual data is historical data.

[0005] 3. The current deep cascade control network lacks arbitration mechanism, and high-priority instructions and low-priority instructions compete and mix transmission.

[0006] Obviously, the defects of the control network mentioned above are inconsistent with the design concept of high speed and high response of the chip mounter, therefore, an effective control scheme is needed to overcome the problems of non-real-time instruction response and data distortion in the multi-level feeder control system. SUMMARY

[0007] In view of the defects in the prior art, the purpose of the present application is to provide a real-time data synchronization and instruction scheduling optimization method of multi-level feeder control system, which solves the problems of non-real-time instruction response, data synchronization distortion, high-priority instruction and low-priority instruction competition and mixed transmission in the multi-level feeder control system.

[0008] In order to achieve the above purpose, the technical scheme adopted by the present application is: a real-time data synchronization method of multi-level feeder control system,

[0009] The multi-level feeder control system adopts a master-slave architecture mode,

[0010] The first level is the host computer, the host computer is the master station of the entire multi-level feeder control system, the host computer directly synchronizes the feeder state information from the feeder state information buffer area arranged in the cabinet card in real time, and the host computer simultaneously issues control instructions according to the mounting control process;

[0011] The second level is the rack card, which acts as the first-level slave station of the host computer, enabling communication between the host computer and the rack card.

[0012] The third level is the Feida communication card, and the rack card communicates with multiple Feida communication cards;

[0013] The fourth level is the feeder. Each feeder communication card is connected to multiple feeders. The feeder acts as a terminal slave station. Each feeder responds to the instructions of the corresponding feeder communication card and reports its own status information to the corresponding feeder communication card.

[0014] The real-time data synchronization method for a multi-level feeder control system includes the following steps:

[0015] Step 1: Create a status information synchronization queue module. The rack card creates a corresponding number of status information synchronization queues in the feeder status information buffer based on the number of feeder communication cards connected. One feeder communication card corresponds to one status information synchronization queue. The queue members of a status information synchronization queue consist of the feeder status information of each feeder of the corresponding feeder communication card. The feeder status information includes line status and error status. The status information synchronization queues in the status information synchronization queue module are executed sequentially in a cyclical manner. The rack card synchronizes the feeder status information with each feeder communication card in real time.

[0016] Step 2: After the feeder communication card receives the synchronization data instruction, it parses the feeder number that needs to be synchronized, enables the channel with the feeder of that number, organizes the data frame and forwards it to the feeder of the corresponding number, and synchronizes the feeder status information of the corresponding feeder in real time.

[0017] Step 3: The rack card reads the feeder status information and updates and saves it in the feeder status information cache area of ​​the rack card. The feeder status information of the current position number is synchronized again according to the queue order of the status information synchronization queue module. The host computer directly synchronizes the feeder status information in the feeder status information cache area of ​​the rack card in a loop, without obtaining data through multiple layers of forwarding.

[0018] In a further technical solution, the cabinet card receives instructions from the host computer via the EtherCAT communication protocol, the cabinet card establishes communication with the feeder communication card based on the RS422 protocol, and the feeder communication card forwards the instructions to the feeder connected to the corresponding bit number via the urat communication protocol.

[0019] Each feeder communication card responds to the control command forwarded by the rack card, parses the command data frame of the control command and obtains the tag number of the target feeder to be controlled, monitors the information feedback of the target feeder and reports it to the rack card. Each feeder communication card simultaneously manages the power supply of dozens of feeders currently connected to the feeder communication card.

[0020] The data frame is stored in the flying machine state information buffer area of the cabinet card, the data structure of the data frame includes an EtheerCAT frame header, EtheerCAT data and check data, the EtheerCAT data includes control instructions for write operation by the upper computer (master station), controlled flying machine bits, first other data and online state, error state second other data for read operation by the upper computer (master station), the online state is 0 or 1, and the error state is 0 or 1.

[0021] In a further technical solution, the cabinet card analyzes the control instructions issued by the upper computer and forwards them to the corresponding flying machine communication card.

[0022] The flying machine communication card controls the power supply of N flying machines currently accessing the flying machine communication card, forwards the control instructions of the cabinet card to the flying machines with corresponding bit numbers, and synchronously processes the state information of the flying machine communication card, and saves and updates the synchronized flying machine state information in the flying machine state information buffer area of the cabinet card for real-time synchronization by the upper computer.

[0023] The flying machine responds to the control instructions of the flying machine communication card to quickly and accurately feed the chip mounter and simultaneously reports the flying machine state information to the flying machine communication card.

[0024] In a further technical solution, the cabinet card further sets a first instruction scheduling optimization method for optimizing the scheduling of control system instructions.

[0025] The upper computer issues the control instructions according to the mounting control process or issues the control instructions in the optimization stage before mounting work.

[0026] When the cabinet card does not receive the control instructions, the flying machine state information of the flying machine is synchronized in the queue order of the state information synchronization queue, and after the cabinet card receives the control instructions from the upper computer, the control instructions are directly inserted in front of the head of the state information synchronization queue of the corresponding flying machine communication card through an instruction arbitration module and are immediately issued, the corresponding flying machine communication card forwards the control instructions of the cabinet card to the flying machines with corresponding bit numbers, and the flying machines with corresponding bit numbers immediately respond to the control instructions of the flying machine communication card.

[0027] In a further technical solution, the control instructions issued by the upper computer are high-priority instructions, including flying machine feeding control instructions in the mounting work process, step distance modification instructions in the optimization stage, and instructions for reading or setting flying machine information, and the high-priority control instructions are immediately issued to the flying machine communication card and executed through the instruction arbitration module in the cabinet card.

[0028] In a further technical solution, the cabinet card further sets a second instruction scheduling optimization method for optimizing the scheduling of control system instructions.

[0029] The queue members in each of the state information synchronization queues are sequentially circulated, the cabinet card creates an enqueuing module task and a dequeuing module task for circulating the queue members for each of the flyda communication cards according to the flyda bit number, in the enqueuing module task, the flyda bit number is sequentially added to the queue, the queue member at the head of the state information synchronization queue is discharged through the dequeuing module task, and the discharged queue member is pushed into the tail of the state information synchronization queue through the enqueuing module task.

[0030] In a further technical solution, if the queue of the enqueuing module task of the state information synchronization queue is full, the current queue is non-blockingly waited until the queue is in a non-full state to add the current flyda bit number, and the state information of each flyda is sequentially synchronized,

[0031] In the dequeuing module task of the state information synchronization queue, after waiting for the last frame to be normally responded, the first flyda bit number in the current queue is directly obtained and added to a new frame of state information synchronization data frame of the flyda communication card corresponding to the current queue.

[0032] In a further technical solution, after receiving the data fed back by the flyda communication card, the cabinet card updates and saves the data in the flyda state information buffer area, when receiving the control instruction of the upper computer for synchronizing the flyda state information, the cabinet card directly packs and compresses the content in the flyda state information buffer area and directly reports to the upper computer.

[0033] In a further technical solution, the packing and compression includes compressing the state information of all flydas on a single flyda communication card into a 64-bit data type, each bit represents the online state of the corresponding flyda arranged in the order of the flyda bit number of the flyda communication card,

[0034] Various error codes and error contents of a single flyda are compressed into a bit, which is in two states of 0 or 1, 0 represents no error, and 1 represents error, and the upper computer only needs to synchronize 256 bits, that is, 32 bytes of data.

[0035] When the Nth flyda is in an error state, only the error content of the Nth flyda is read and synchronized.

[0036] In a further technical solution, the cabinet card creates an enqueuing module task and a dequeuing module task for each of the flyda communication cards according to the flyda bit number,

[0037] The cabinet card accesses n flyda communication cards and creates n state information synchronization queues, n enqueuing module tasks of flyda bit number circulation, and n dequeuing module tasks of the state information synchronization queues

[0038] ​​​A state information synchronization queue Corresponding to an enqueuing module task And a dequeuing module task ,

[0039] An initialized state information synchronization queue All members in the state information synchronization queue are arranged in order according to all the flight positions accessible by the corresponding flight communication card,

[0040] Corresponding to the flight position,

[0041] According to the flight position of the head member of the dequeuing module task In the state information synchronization queue The queue member with the same flight position is queried,

[0042] The dequeuing module task The head member is dequeued,

[0043] The queried queue member is added to a new frame of state information synchronization data frame corresponding to the flight communication card and is delivered to the corresponding flight,

[0044] The enqueuing module task The dequeued member is pushed into the tail thereof;

[0045] The cabinet card performs point-to-point communication interaction with each flight communication card through RS422, and each flight communication card maintains relative independence,

[0046] The data structure of each queue member includes the flight position and the corresponding control instruction, and when a high-priority control instruction of the upper computer is not received, the flight control instructions of all positions are data synchronization instructions delivered by the cabinet card.

[0047] Compared with the prior art, the present application has the following advantages:

[0048] 1. The response rate of the terminal flight to the control instruction of the upper computer in the multi-level flight control system is improved.

[0049] 2. The timeliness of the periodic synchronization of more than one hundred flight state information data in the multi-level node is ensured.

[0050] 3. By introducing the instruction arbitration mechanism, the competition and mixed transmission of high-priority instructions and low-priority instructions are avoided.

[0051] 4. The data information compression mechanism compresses the complex and redundant online state and error content of each flight into bit operation, greatly reducing the bandwidth requirement.

[0052] 5. Provide a complete and reliable control scheme for multi-level control system in industrial manufacturing. BRIEF DESCRIPTION OF DRAWINGS

[0053] Figure 1 The schematic diagram of the multi-level flying device control system framework of the application.

[0054] Figure 2 The schematic diagram of the real-time data synchronization queue channel workflow of the multi-level flying device control system of the application.

[0055] Figure 3 The schematic diagram of the instruction scheduling workflow of the multi-level flying device control system of the application.

[0056] Figure 4 The schematic diagram of the state information synchronization queue member in-out queue of the multi-level flying device control system of the application.

[0057] Figure 5 The schematic diagram of the master station synchronization flying device state information buffer data of the multi-level flying device control system of the application. DETAILED DESCRIPTION

[0058] The real-time data synchronization method of the multi-level flying device control system, Figures 1 to 5 as shown,

[0059] The multi-level flying device control system adopts a master-slave architecture mode,

[0060] The first level is the host computer, which is the master station of the entire multi-level flying device control system, synchronizes the flying device state information of each flying device in real time, and issues control instructions according to the mounting control process.

[0061] Specifically, the host computer issues control instructions according to the mounting control process or issues control instructions in the optimization stage before mounting work; the host computer directly synchronizes the flying device state information from the flying device state information buffer area of the cabinet card.

[0062] The second level is the cabinet card, which is the first level slave station of the host computer. The host computer communicates with the cabinet card, the cabinet card analyzes the control instructions issued by the host computer and forwards them to the corresponding flying device communication card, the cabinet card is provided with a flying device state information buffer area, and the cabinet card synchronizes the corresponding flying device state information with multiple flying device communication cards in real time.

[0063] The third level is the flying device communication card. The cabinet card communicates with multiple flying device communication cards. The state information synchronization of the flying device communication card is parallel processing. The synchronized flying device state information is saved and updated in the flying device state information buffer area of the cabinet card for real-time synchronization by the host computer. The flying device communication card controls the power supply of N flying devices connected to the flying device communication card, and the flying device communication card forwards the control instructions of the cabinet card to the flying device with the corresponding bit number.

[0064] The fourth level is a flying dart, each flying dart communication card is connected with multiple flying darts, the flying dart serves as a terminal station, each flying dart responds to the instruction of the corresponding flying dart communication card, feeds the chip mounter quickly and accurately, and reports the flying dart state information to the flying dart communication card at the same time, and reports the state information of itself to the corresponding flying dart communication card.

[0065] The cabinet card receives the instruction of the upper computer through the EtherCAT communication protocol, the cabinet card establishes communication with the flying dart communication card based on the RS422 protocol, the flying dart communication card forwards the instruction to the flying dart connected to the corresponding bit number through the urat communication protocol; each flying dart communication card responds to the control instruction forwarded by the cabinet card, analyzes the instruction data frame of the control instruction and obtains the bit number of the target flying dart which needs to be controlled, monitors the information feedback of the target flying dart and reports it to the cabinet card, and each flying dart communication card simultaneously manages the power supply of dozens of flying darts connected to the flying dart communication card.

[0066] The real-time data synchronization method of the multi-level flying dart control system comprises the following steps:

[0067] Step 1: the upper computer issues action instructions according to the mounting control process or issues control instructions such as modifying the step distance in the optimization stage before mounting work.

[0068] Step 2: the cabinet card synchronizes the flying dart state information of the flying dart in the order of the state information synchronization queue when no control instruction is received,

[0069] After the cabinet card receives the control instruction from the upper computer, the control instruction is directly inserted into the state information synchronization queue of the corresponding flying dart communication card before the head of the queue through the instruction arbitration module and is immediately issued.

[0070] Step 3: the corresponding flying dart communication card forwards the control instruction of the cabinet card to the flying dart of the corresponding bit number.

[0071] Step 4: the flying dart of the corresponding bit number immediately responds to the control instruction of the flying dart communication card.

[0072] Wherein, when the cabinet card does not receive the high-priority control instruction from the host computer, the cabinet card is periodically synchronized with the state information of the flying machine through the state information synchronization queue, and the instruction is a low-priority instruction. The flying machine position number which needs to be synchronized with the state information is generated in sequence by the flying machine position number cycle-in queue module task, and is pressed into the tail position of the corresponding synchronization queue. Then, the data synchronized is saved in the flying machine state information buffer area, and the flying machine state information in the flying machine state information buffer area is synchronized in real time between the host computer and the cabinet card. When the cabinet card receives the control instruction from the host computer, the instruction is directly inserted into the head of the state information synchronization queue of the corresponding flying machine communication card through the instruction arbitration module, and the high-priority control instruction is directly sent out after the channel is ready.

[0073] Wherein, the host computer is used for interacting with the operator in the optimization stage before the mounting work, issuing control instructions for modifying the flying machine step distance, setting all flying machines to be in the ready state, issuing action instructions according to the mounting control process in the mounting work, controlling the flying machine of the specified position number to feed, and being responsible for synchronizing the state information of all flying machines in real time, processing the synchronized data, and presenting the error content to the operator if it is judged that there is an error in the flying machine.

[0074] The cabinet card receives the instruction of the host computer through the EtherCAT communication, and establishes the communication with the flying machine communication card based on the RS422 protocol. The control instruction of the host computer is inserted into the first position in the corresponding queue by using the real-time data synchronization method of the multi-level flying machine control system provided by the application, and is forwarded to the corresponding flying machine communication card as soon as possible. The state information of each flying machine is polled and synchronized with the flying machine communication card by using the real-time data synchronization method of the multi-level flying machine control system provided by the application, and is written into the flying machine state information buffer area of the cabinet card for real-time synchronization of the host computer; the flying machine communication card is the second level slave station of the cabinet card, and is used for responding to the instruction of the cabinet card, analyzing the instruction data frame to obtain the target flying machine position number which needs to be controlled, forwarding the flying machine connected with the position number through the urat communication, monitoring the information feedback of the target flying machine and reporting to the cabinet card, and managing and controlling the power supply of dozens of flying machines connected therewith.

[0075] The control instruction issued by the host computer is a high-priority instruction, and the control instruction includes the flying machine feeding control instruction in the mounting work process, the step distance modification instruction in the optimization stage, and the instruction for reading or setting the flying machine information, Figure 3The schematic diagram of the instruction scheduling work flow of the multi-level flying device control system is shown in the figure, and the instruction arbitration module in the cabinet card immediately issues the control instruction with high priority to the flying device communication card and immediately executes it. Under this mechanism, the slave flying device communication card and the terminal flying device under the multi-level flying device control system can respond to the control instruction of the upper computer in real time as much as possible, and the competition and mixed transmission phenomenon of the high-priority control instruction and the low-priority flying device state information synchronization instruction are avoided.

[0076] Figure 1 The flying device communication card n shown in the figure represents that the maximum number of n pieces of cards are accessed in the cabinet card; the flying device m represents that the maximum number of m pieces of flying devices are accessed in the flying device communication card. According to different models of the chip mounter, the maximum numbers n and m are also different. Generally, n is 2-4 pieces, and m is 28-36 pieces.

[0077] The cabinet card further sets a second instruction scheduling optimization method for optimizing the instruction scheduling of the control system, which includes the following steps,

[0078] Step S1: According to the number of the accessed flying device communication cards, a state information synchronization queue of the sequential loop of the flying device state information is created in the cabinet card, and a flying device bit number loop enqueuing module task and a state information synchronization queue dequeuing module task are respectively created for each flying device communication card. In the enqueuing task, the flying device bit number is sequentially added to the queue. If the queue is full, the current queue is non-blockingly waited until the non-full state is reached to add the current flying device bit number, so as to ensure that the state information of each flying device is sequentially synchronized. In the dequeuing task, after the last frame is normally responded, the first flying device bit number in the current queue is directly obtained and added to the new frame of the state information synchronization data frame of the flying device communication card corresponding to the current queue.

[0079] Step S2: The flying device communication card forwards the synchronization data instruction of the cabinet card to the flying device with the corresponding bit number, and reports the response from the flying device to the cabinet card.

[0080] Step S3: The flying device state information read by the cabinet card is updated and saved in the cache area until the next synchronization of the flying device state information of the current bit number.

[0081] Step S4: The upper computer directly loops the flying device state information in the cabinet card cache area, and does not need to further forward the data.

[0082] The more detailed steps are as follows,

[0083] Step S1: The cabinet card creates a state information synchronization queue module in the flying device state information cache area,

[0084] The cabinet card creates a corresponding number of state information synchronization queues in the state information buffer area according to the number of accessed flying radar communication cards, one flying radar communication card corresponds to one state information synchronization queue, and the queue members of one state information synchronization queue are composed of the flying radar state information of each flying radar of the corresponding flying radar communication card, the flying radar state information includes line state and error state, each state information synchronization queue constitutes a state information synchronization queue module, and each state information synchronization queue in the state information synchronization queue module is sequentially and circularly arranged and executed, and the cabinet card synchronizes the flying radar state information with each flying radar communication card in real time;

[0085] Step S2: After the flying radar communication card receives the synchronization data instruction, the flying radar communication card parses the flying radar bit number to be synchronized, enables the channel of the bit number flying radar through the built-in software (prior art) of the flying radar, arranges the data frame and forwards it to the corresponding bit number flying radar after encryption, until the flying radar correctly responds to the reported synchronization state information, and immediately feeds back to the cabinet card, thereby synchronizing the flying radar state information of the corresponding flying radar in real time;

[0086] Step S3: The cabinet card updates and saves the data fed back by the flying radar communication card in the flying radar state information buffer area until the next synchronization of the flying radar state information of the current bit number according to the queue order of the state information synchronization queue module.

[0087] When receiving the instruction of the upper computer to synchronize the flying radar state information, it is not necessary to issue it through multiple levels, but to directly package and compress the content in the state information buffer area and report it to the upper computer. The packaging and compression mechanism is to compress the complex and redundant data in the buffer area, reduce the bandwidth demand on the communication link with the upper computer, and further improve the transmission efficiency.

[0088] Regarding the packaging and compression mechanism, the packaging and compression includes compressing the state information of all flying radars on a single flying radar communication card into a 64-bit data type, each bit representing the online state of the corresponding flying radar arranged in the flying radar bit number order of the flying radar communication card, and compressing various error codes and error contents of a single flying radar into a bit, which is in two states of 0 or 1, 0 representing no error and 1 representing error, so that the upper computer only needs to synchronize 256 bits, i.e. 32 bytes of data. When the Nth flying radar has an error state, only the error content of the Nth flying radar is read and synchronized.

[0089] For example, for the online state of the flyda, that is, whether the interface of each flyda number is connected to the flyda, if one byte represents the online state of one flyda, more than one hundred bytes are needed in total, but the online state of the flyda is only two states of 0 and 1, so the state information of all flydas on a single flyda communication card can be compressed into a 64-bit data type, each bit represents the online state of one flyda, and there is enough spare space for subsequent expansion; Taking four communication cards as an example, each of which can access a maximum of 36 flydas, the host computer only needs to synchronize 256 bits, that is, 32 bytes of data. Compared with the original need to read 144 bytes, the bandwidth requirement is greatly reduced. Similarly, the error state of the flyda has a larger and more complex data volume. Through the above data compression mechanism, various error codes and error contents of a single flyda are compressed into two states of 0 no error and 1 error represented by one bit. The host computer also only needs to synchronize 256 bits, that is, 32 bytes of data. In the case that all flydas have no error, the host computer only needs to synchronize the flyda state information of all flydas in real time with very small bandwidth requirement. When it is judged that a flyda has an error state, the error content of the flyda is read. Through accurate positioning, there is no need to synchronize the error content of all flydas (including flydas without error state).

[0090] Step S4: The host computer directly loops the flyda state information in the flyda state information buffer area of the cabinet card. When receiving the control instruction of the host computer to synchronize the flyda state information, the cabinet card directly packages and compresses the content in the flyda state information buffer area and directly reports it to the host computer without multi-layer forwarding to obtain data.

[0091] The application synchronizes the state information of all flyda communication cards in parallel through the creation of a corresponding number of synchronization queues, and each flyda communication card does not interfere with each other. Each flyda communication card saves and updates the synchronized flyda state information in the state information buffer area of the cabinet card for real-time synchronization with the host computer. Compared with the traditional scheme, the multi-level node data forwarding is avoided, that is, "host computer cabinet card communication card flyda communication card cabinet card host computer". The synchronization period required for synchronizing the state information of 112 flydas is reduced from hundreds of milliseconds to tens of milliseconds. Specifically, the synchronization period is reduced from more than 500 ms to 30 ms. The synchronization efficiency is greatly improved, and the timeliness of the flyda state information is guaranteed.

[0092] In step S1,

[0093] The queue members in each state information synchronization queue circulate in sequence, the cabinet card creates an enqueuing module task and a dequeuing module task for circulating the queue members for each flying card in sequence according to the flying position number, adds the flying position number into the queue in sequence in the enqueuing module task, and discharges the queue member at the head of the state information synchronization queue through the dequeuing module task, and pushes the discharged queue member into the tail of the state information synchronization queue through the enqueuing module task.

[0094] Specifically, the cabinet card creates an enqueuing module task and a dequeuing module task for each flying card in sequence according to the flying position number, if the queue of the enqueuing module task is full, the current queue is non-blockingly waited until the queue is not full to add the current flying position number, the state information of each flying card is synchronously added in sequence, in the dequeuing module task of the state information synchronization queue, the first flying position number in the current queue is directly obtained after the last frame is normally responded, and the new frame of state information synchronization data frame of the flying card corresponding to the current queue is added.

[0095] Specifically, the cabinet card creates an enqueuing module task and a dequeuing module task for each flying card in sequence according to the flying position number,

[0096] The cabinet card accesses n flying cards and creates n state information synchronization queues , n enqueuing module tasks of the flying position number and n dequeuing module tasks of the state information synchronization queue ,

[0097] One state information synchronization queue corresponds to one enqueuing module task and one dequeuing module task ,

[0098] All members in the initialized state information synchronization queue are sequentially arranged according to all flying position numbers that can be accessed by the corresponding flying card,

[0099] the corresponding flying position number,

[0100] According to the flying position number of the member at the head of the dequeuing module task , the queue member with the same flying position number is obtained in the state information synchronization queue ,

[0101] The dequeuing module task discharges the member at the head,

[0102] The queue member obtained by the query is added to a new frame of state information synchronization data frame corresponding to the radar communication card and is sent to the corresponding radar,

[0103] The enqueuing module task The member is pushed to the tail of the queue.

[0104] The cabinet card communicates with each radar communication card through RS422 for data and instruction point-to-point communication interaction, and each radar communication card maintains relative independence.

[0105] The data structure of each queue member includes the radar bit number and the corresponding control instruction. When a high-priority control instruction from the upper computer is not received, the control instruction of each bit number of the radar is the data synchronization instruction sent by the cabinet card.

[0106] Exemplarily, in combination with Figure 2 and Figure 4 The state information synchronization queue enqueuing and dequeuing working mechanism in the cabinet card is specifically described, taking the state information synchronization queue as an example, the data structure of each member in the queue includes the radar bit number and the control instruction. When a high-priority control instruction from the upper computer is not received, the control instruction of each bit number of the radar is the data synchronization instruction sent by the cabinet card. Otherwise, the control instruction of the radar bit number controlled by the upper computer is the high-priority control instruction sent by the upper computer. In order to clearly show the order of the members in the queue, the radar bit number is used instead of the data structure of the member in the queue in the figure and the following text. All members in the initialized queue are sequentially arranged in the order of all radar bit numbers that can be accessed by the corresponding radar communication card 1, i.e., radar 1, radar 2, …, radar m-1, and radar m. When it is judged in the dequeuing task that there is a member in the queue at this time, the first radar bit number in the queue , i.e., radar 1, is directly obtained and added to a new frame of state information synchronization data frame corresponding to the radar communication card 1 and is sent out. At this time, it is judged in the enqueuing task that the queue is not full, and the radar bit number radar 1 is pushed to the tail of the queue . Thus, the first radar bit number in the queue is immediately obtained in the dequeuing task after it is judged that the last frame is normally responded, and is added to a new frame of state information synchronization data frame and is sent out. In the enqueuing task , the queue is non-blockingly waited for until the radar bit number of the current order is added when the queue is not full, so as to ensure that the state information of each radar is synchronized in order.

[0107] The host computer, acting as the master station, establishes communication with each slave station via EtherCAT at a fixed time period T. The time period T is XX milliseconds (please specify). Here, T is a preset, extremely short time period, ensuring real-time data synchronization between the master and slave stations. For example... Figure 5 As shown, the EtherCAT communication data packet contains read and write operations for each slave station, and the rack card described in this application is one of its slave stations. The rack card, through the optimized method for real-time data synchronization of a multi-level feeder control system provided in the second aspect of this invention, updates the synchronized feeder status information in the rack card's status information buffer. Each status is an independent buffer; for example, the online status buffer stores the online status of all feeders from position 1 to position m, and the error status is similarly handled. Whenever the rack card receives an EtherCAT communication data packet from the master station after a time period T, it compresses and packages the feeder's online and error statuses into the corresponding data segment. Simultaneously, the rack card checks if the data segment from the master station's write operation has a new control command. If so, it immediately responds and forwards the command to the corresponding feeder communication card via the command arbitration mechanism, thus ultimately delivering the control command to the target feeder.

Claims

1. A real-time data synchronization method of a multi-level joystick control system, characterized in that: the multi-level joystick control system adopts a master-slave architecture mode, the first level is an upper computer, which is the master station of the entire multi-level joystick control system, the upper computer directly synchronizes the joystick state information from the joystick state information buffer area of the cabinet card in real time, and simultaneously issues control instructions according to the mounting control process; the second level is a cabinet card, which is the first level slave station of the upper computer, the upper computer communicates with the cabinet card, the third level is a joystick communication card, the cabinet card communicates with multiple joystick communication cards; the fourth level is a joystick, each joystick communication card is connected with multiple joysticks, and the joystick is a terminal slave station, each joystick responds to the instructions of the corresponding joystick communication card and reports its state information to the corresponding joystick communication card; the real-time data synchronization method of the multi-level joystick control system comprises the following steps: Step 1: creating a state information synchronization queue module, the cabinet card creates a corresponding number of state information synchronization queues in the joystick state information buffer area according to the number of joystick communication cards connected, one joystick communication card corresponds to one state information synchronization queue, and the queue members of one state information synchronization queue are composed of the joystick state information of each joystick of the corresponding joystick communication card, the joystick state information includes line state and error state, each state information synchronization queue in the state information synchronization queue module is sequentially and circularly arranged and executed, and the cabinet card synchronizes the joystick state information with each joystick communication card in real time; Step 2: after the joystick communication card receives the synchronization data instruction, the joystick communication card parses the joystick bit number to be synchronized, enables the channel of the bit number joystick, arranges the data frame and forwards it to the corresponding bit number joystick, and synchronizes the joystick state information of the corresponding joystick in real time; Step 3: the cabinet card reads the joystick state information and updates the joystick state information buffer area of the cabinet card, until the next synchronization of the joystick state information of the current bit number according to the queue order of the state information synchronization queue module, the upper computer directly synchronizes the joystick state information in the joystick state information buffer area of the cabinet card in a loop, and obtains the data without multi-level forwarding.

2. The real-time data synchronization method of the multi-level joystick control system according to claim 1, characterized in that: the cabinet card receives the instructions of the upper computer through the EtherCAT communication protocol, the cabinet card establishes communication with the joystick communication card based on the RS422 protocol, and the joystick communication card forwards the instructions to the corresponding bit number joystick through the urat communication protocol; each joystick communication card responds to the control instructions forwarded by the cabinet card, parses the instruction data frame of the control instruction and obtains the bit number of the target joystick to be controlled, monitors the information feedback of the target joystick and reports it to the cabinet card, and each joystick communication card simultaneously manages the power supply of dozens of joysticks connected to the joystick communication card. ​ ​ ​ The data frame is stored in the flying machine state information buffer area of the cabinet card, the data structure of the data frame comprises an EtheerCAT frame header, EtheerCAT data and check data, the EtheerCAT data comprises control instructions for write operation by the upper computer (master station), controlled flying machine bits, first other data and online state, error state and second other data for read operation by the upper computer (master station), the online state is 0 or 1, and the error state is 0 or 1.

3. The real-time data synchronization method of the multi-level flying machine control system according to claim 1, characterized in that: The cabinet card analyzes the control instructions issued by the upper computer and forwards them to the corresponding flying machine communication card; The flying machine communication card controls the power supply of the N flying machines currently connected to the flying machine communication card, forwards the control instructions of the cabinet card to the flying machines with corresponding bit numbers, and synchronously processes the state information of the flying machines, and saves and updates the synchronized flying machine state information in the flying machine state information buffer area of the cabinet card for real-time synchronization by the upper computer; The flying machine responds to the control instructions of the flying machine communication card to quickly and accurately feed the chip mounter and simultaneously reports the flying machine state information to the flying machine communication card.

4. The real-time data synchronization method of the multi-level flying machine control system according to claim 1, characterized in that: The cabinet card is further provided with a first instruction scheduling optimization method for optimizing the scheduling of control system instructions, The upper computer issues control instructions according to the mounting control process or issues the control instructions in the optimization stage before mounting work; When no control instructions are received, the cabinet card synchronizes the flying machine state information of the flying machines in the order of the state information synchronization queue, and immediately issues the control instructions through the instruction arbitration module after the cabinet card receives the control instructions from the upper computer, and inserts the control instructions before the head of the state information synchronization queue of the corresponding flying machine communication card and immediately issues them, and the corresponding flying machine communication card immediately forwards the control instructions of the cabinet card to the flying machines with corresponding bit numbers, and the flying machines with corresponding bit numbers immediately respond to the control instructions of the flying machine communication card.

5. The real-time data synchronization method of the multi-level flying machine control system according to claim 4, characterized in that: The control instructions issued by the upper computer are high-priority instructions, including flying machine feeding control instructions in the mounting work process, step distance modification instructions in the optimization stage and instructions for reading or setting flying machine information, and the high-priority control instructions are immediately issued to the flying machine communication card and executed through the instruction arbitration module in the cabinet card.

6. The real-time data synchronization method of the multi-level flying machine control system according to any one of claims 1 to 5, characterized in that: The cabinet card is further provided with a second instruction scheduling optimization method for optimizing the scheduling of control system instructions, The queue members in each of the state information synchronization queues are sequentially circulated, the cabinet card creates an enqueuing module task and a dequeuing module task for circulating the queue members for each of the flyda communication cards in a flyda bit number circulation manner, a flyda bit number is sequentially added to the queue in the enqueuing module task, the queue member at the head of the state information synchronization queue is discharged through the dequeuing module task, and the discharged queue member is pushed into the tail of the state information synchronization queue through the enqueuing module task.

7. The real-time data synchronization method of the multi-level flyda control system according to claim 6, characterized in that: if the queue of the state information synchronization queue of the enqueuing module task is full, the current queue is non-blockingly waited until the queue is in a non-full state to add the current flyda bit number, and the state information of each flyda is sequentially synchronized, in the dequeuing module task of the state information synchronization queue, the first flyda bit number in the current queue is directly obtained after the last frame is normally responded, and is added into a new frame of state information synchronization data frame of the flyda communication card corresponding to the current queue.

8. The real-time data synchronization method of the multi-level flyda control system according to claim 7, characterized in that: after the flyda communication card feedback data is received, the cabinet card updates and saves the data in the flyda state information buffer area, and when a control instruction of the upper computer is received, the cabinet card directly packs and compresses the content in the flyda state information buffer area and directly reports to the upper computer.

9. The real-time data synchronization method of the multi-level flyda control system according to claim 8, characterized in that: the packing and compression includes compressing the state information of all flydas on a single flyda communication card into a 64-bit data type, each bit represents the online state of the corresponding flyda arranged in the flyda bit number sequence of the flyda communication card, the various error codes and error contents of a single flyda are compressed into a bit, which is in two states of 0 or 1, 0 represents no error, and 1 represents error, and the upper computer only needs to synchronize 256 bits, that is, 32 bytes of data, when the Nth flyda has an error state, only the error content of the Nth flyda is read and synchronized.

10. The real-time data synchronization method of the multi-level flyda control system according to claim 6, characterized in that: the cabinet card creates an enqueuing module task and a dequeuing module task for each of the flyda communication cards in a flyda bit number circulation manner, The cabinet card accesses n flying card communication cards and creates n state information synchronization queues respectively , n flying card number cycle in module task And n state information synchronization queue out module task , a status information synchronization queue corresponding to an enqueuing module task and a dequeuing module task , Initialization state information synchronization queue All members in the initialization state information synchronization queue are sequentially arranged in all the flight data numbers that the corresponding flight data communication card can access. the corresponding flyda bit number, The member of the head of the queue according to the dequeuing module task The state information synchronization queue The queue member with the same flight position number is inquired Dequeue module task Dequeue the head member, the obtained queue member is added to a new frame of state information synchronization data frame of the corresponding flyda communication card and is delivered to the corresponding flyda for execution, Enqueue module task Push the dequeued member to the end of its queue. the cabinet card performs point-to-point communication and interaction of data and instructions with each flyda communication card through RS422, and each flyda communication card maintains relative independence, the data structure of each queue member includes a flyda bit number and a control instruction, and when a high-priority control instruction of the upper computer is not received, the control instructions of all flyda bit numbers are data synchronization instructions delivered by the cabinet card.

Citation Information

Patent Citations

  • Driving and control integrated system and storage medium

    CN116300535A

  • Control system of SMT high-speed chip mounter based on EtherCAT

    CN119270738A

  • Asynchronous transfer mode system for, and method of, writing a cell payload between a control queue on one side of a system bus and a status queue on the other side of the system bus

    US6075790A