A method for collecting, storing and reading data of flash butt welding of mooring anchor chains

Through independent threading and binary serialization processing data acquisition and storage methods, the time error and resource consumption problems of mooring anchor welding data collection are solved, efficient data storage and rapid reading are realized, and high-strength anchor welding needs of marine engineering equipment are adapted.

CN116303446BActive Publication Date: 2025-08-29JIANGSU UNIV OF SCI & TECH
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202310196840.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-03-03
Publication Date
2025-08-29
Estimated Expiration
2043-03-03

AI Technical Summary

Technical Problem

In the prior art, mooring anchor welding data acquisition has problems such as accumulation of time errors, large system resource consumption, low storage efficiency and slow reading speed.

Method used

Data acquisition is carried out using independent threads, and welding data is stored using queues and binary serialization. It is independent of the main program of the control system and improves sampling accuracy and storage efficiency through periodic sampling and binary serialization processing.

Benefits of technology

It realizes high-precision data acquisition, reduces time errors, improves storage and reading speeds, saves system resources, adapts to the storage needs of massive welding data, and ensures the authenticity and management convenience of data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116303446B_ABST
    Figure CN116303446B_ABST
Patent Text Reader

Abstract

The present invention discloses a method for collecting, storing, and reading flash butt welding data for mooring anchor chains. This method uses an independent thread to periodically collect data and write it into a queue for storage. The queue is then binary-serialized and ultimately written into a data table for storage. During reading, features such as the weldment number are used to locate the desired record, and deserialization is performed to obtain the welding data for each link. This method effectively addresses the problems of accumulated errors during collection time and the high system resource consumption caused by high-frequency, large-scale data collection. It improves storage efficiency and reduces data storage space. Furthermore, deserialization allows for efficient and orderly reading of relevant mooring anchor chain welding process data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to data acquisition technology, in particular to a method for acquiring, storing and reading flash butt welding data of a mooring anchor chain. Background Art

[0002] Mooring chains are used on semi-submersible drilling platforms, offshore radars, and other marine engineering equipment. They are the core of the mooring and positioning systems for various types of marine equipment. To enable exploration in deeper waters, mooring chains will develop towards ultra-long and ultra-high strength. This will face the challenges of increasing the number of links in a single chain, expensive materials, and difficult welding. The production quality requirements for mooring chains are becoming increasingly stringent, and the processing process also generates a large amount of welding data. Therefore, the collection, storage, and access of production data are becoming increasingly important. It is particularly important to lay a data foundation for subsequent production quality assessments, and the breadth and depth of demand for this data will continue to grow.

[0003] Chinese Patent 2020111353869 discloses a message processing method, apparatus, device, and storage medium. The method establishes a timing program group during data collection, with multiple timing programs. Each timing program corresponds to a preset time period during which data is collected. The comparison moment used in this method is replaced by the time in the timing program group. The sampling time period may be subject to system errors, time deviations, and uncalibrated time. The sampling time point may fluctuate. As the number of sampling times increases, the time error accumulates and increases, and the data sampling point is inaccurate.

[0004] Chinese patent 2022108517665 discloses a method for collecting and storing industrial data. This method uses a preset initial reference time and termination time to execute an acquisition function, collect data, store the collected data in an array, and write the array directly into a database. This method makes the timing program non-independent, and the sampling process and control process interfere with each other, reducing the accuracy of the sampled data. The sampled data is stored in a two-dimensional array, which has a fixed storage array space and low storage space flexibility, making it difficult to store the massive welding data streams required in the production of mooring anchor chains. At the same time, a large number of arrays are directly stored in the database, which has a slow storage speed and occupies a large amount of storage space. When reading, the entire array needs to be directly read, which has a slow reading speed and occupies a large amount of space, making it difficult to store and read large amounts of industrial data over a long period of time. Summary of the Invention

[0005] Purpose of the invention: The present invention aims to provide a method for collecting, storing and reading mooring chain flash butt welding data, which can solve the problems of accumulated acquisition time errors and high system resource consumption caused by high-frequency and large-scale data acquisition, improve storage efficiency and reduce data storage space.

[0006] Technical solution: The method for collecting, storing and reading mooring chain flash butt welding data of the present invention comprises the following steps:

[0007] (1) Determine the datasheet datasheet-y corresponding to the current anchor chain number y and the current serial number m, and create an empty welding data queue Q m and welding parameter object F m , read the current welding parameters and write them into the welding parameter object F in sequence m In the corresponding elements of

[0008] (2) Establish a data acquisition thread Thread that is independent of the control system main program, determine the welding data array D based on the periodic collection of welding process data, and place the welding data array D into the welding data queue Q m ;

[0009] (3) Data storage: After the flash butt welding is completed, a new record R is created in datasheet-y and the queue Q is stored. m Binary data Q′ after binary serialization m And the current serial number m;

[0010] (4) Data reading: read historical welding data and draw welding curves.

[0011] Furthermore, step (1) includes the following steps:

[0012] (1.1) Search the datasheet datasheet-y corresponding to the current anchor chain number y in the welding record database and read the number of records num in datasheet-y; if datasheet-y does not exist, create a new datasheet-y and set the number of records num=0; datasheet-y includes the following field names: serial number, process specification, weldment number, threshold current, initial clamp length, flash flat length, preheating speed, flash speed, burn-out length, upset hold time, upset length, and welding data, and the data type of the welding data field is blob; set the current serial number m=num+1;

[0013] (1.2) Create a new empty welding data queue Q m and welding parameter object F m ; Welding parameter object F m The elements include: process specifications, weldment number, threshold current, initial clamp length, flash flat length, preheating speed, flash speed, burning length, upsetting holding time and upsetting length;

[0014] (1.3) Read the current welding parameters from the welding control system and write them into the welding parameter object F in sequence m The corresponding element of .

[0015] Furthermore, step (2) includes the following steps:

[0016] (2.1) Establish a data acquisition thread Thread that is independent of the control system main program, set the sampling time interval Δt and the sampling comparison time t;

[0017] (2.2) Read the system time t0, set t=t0, and create an empty welding data array D;

[0018] (2.3) Periodically collect welding process data;

[0019] (2.3.1) Read the current system time t n ;

[0020] (2.3.1.1) When t n When -t≥Δt, read the data of the current sampling point and write it into the welding data array D=[t n ,s n ,i n ,v n ,x n ,p n ], where s n For welding state, i n is the welding current, v n is the welding voltage, x n is the electrode displacement, p n is the forging pressure; put array D into welding data queue Q m ; Otherwise, return to (2.3.1);

[0021] (2.3.2) If the welding control system issues a welding end command, jump to (2.4); otherwise, set t = t n , return to (2.3.1);

[0022] (2.4) The control system stops the data acquisition thread Thread and ends data acquisition.

[0023] Furthermore, step (3) includes the following steps:

[0024] (3.1) After the flash butt welding is completed, open datasheet-y.

[0025] (3.2) Create a new record R in datasheet-y and write the current serial number m into the serial number field of record R;

[0026] (3.3) The welding parameter object F m The elements in are written into the corresponding fields of record R;

[0027] (3.4) Queue Q m Perform binary serialization processing to binary data Q′ m , and write it into the welding data field of record R;

[0028] (3.5) Data storage is complete, close datasheet-y.

[0029] Furthermore, step (4) includes the following steps:

[0030] (4.1) Create a new empty data queue Q w , parameter object F w and the welding data point array D u ;

[0031] (4.2) According to the historical anchor chain number z and weldment number e w , retrieve the historical data table datasheet-z corresponding to the historical anchor chain number z;

[0032] (4.2.1) If datasheet-z exists, according to the weldment number e w Determine the weldment number e in datasheet-z w The corresponding historical record J;

[0033] (4.2.2) If datasheet-z or history record J does not exist, an error message will be displayed and the process will go to (4.6);

[0034] (4.3) Write the welding parameters in the history J into the parameter object F w middle;

[0035] (4.4) The historical binary data Q' in the "welding data" field in the history record J is converted to w Deserialization, if deserialization is successful, it will be generated and written into the data queue Q w Otherwise, it will prompt that the welding data is incorrect and jump to (4.6);

[0036] (4.5) The control system sequentially dequeues data from the queue Q w Each element in the welding curve is plotted on the historical welding curve interface;

[0037] (4.5.1) If the data queue Q w The number of elements in the data queue Q is greater than 0. w Dequeue an element and write it into the welding data point array D u =[t u , s u ,i u , v u , x u , pu ], where t u is the sampling time, s u is the historical welding state, i u is the historical welding current, v u is the historical welding voltage, x u is the historical electrode displacement, p u is the historical upsetting pressure; otherwise, jump to (4.6);

[0038] (4.5.2) Read array D sequentially u Middle t u , s u ,i u , v u , x u , p u The data is sampled at time t u is the horizontal axis, i u 、v u 、x u and p u Draw the coordinate points in the current line graph Pi, voltage line graph Pv, displacement line graph Px, and pressure line graph Pp as the vertical coordinates, and return to (4.5.1);

[0039] (4.6) The control system finishes reading historical welding data.

[0040] Beneficial effects: Compared with the prior art, the present invention has the following significant advantages: 1. The present invention performs timed sampling through an independent thread, which will not affect the flash butt welding control thread and enhance the stability of the control system; at the same time, the sampling period is controlled according to the actual time, avoiding the time error accumulation problem caused by conventional sampling period control by a timer, making the sampling period more accurate; 2. The present invention adopts a class to store welding parameters, which facilitates the rapid query of a small amount of basic welding information; the use of a queue to store welding process status and sensor data composed of a series of one-dimensional arrays can adapt to the flexible and efficient storage of welding process data of different lengths, avoiding the problem of system memory waste caused by the use of fixed-length two-dimensional array storage; 3. The present invention writes the welding parameter data that needs to be quickly read and queried into the corresponding field of the database, It is convenient for the program to quickly retrieve and count; and the welding process status and sensor data organized in the form of queues are serialized into binary data and stored in the database, which not only realizes the one-time writing / reading of massive welding process data, greatly shortening the reading and writing time of the database, but also the space occupied by the serialized binary data is much smaller than the original data, which can save a lot of disk space, and can store welding process data for a long time period under the condition of limited disk space of the welding machine control system; in addition, the serialized binary data also has a certain anti-tampering ability, which can better ensure the authenticity of the welding data; 4. The present invention stores the flash butt welding data of a mooring anchor chain as a data table, which facilitates the management and archiving of the butt welding data, and also facilitates the subsequent delivery of the flash butt welding data of the mooring anchor chain to the corresponding shipowner. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] Figure 1 Flowchart for initialization of step (1);

[0042] Figure 2 Flowchart for data collection in step (2);

[0043] Figure 3 A flowchart of data storage for step (3);

[0044] Figure 4 Flowchart for step (4) historical data reading. DETAILED DESCRIPTION

[0045] The present invention will be further described below with reference to the accompanying drawings.

[0046] The method for collecting, storing and reading mooring chain flash butt welding data of the present invention comprises the following steps:

[0047] (1) Determine the datasheet datasheet-y corresponding to the current anchor chain number y and the current serial number m, and create an empty welding data queue Q m and welding parameter object F m, read the current welding parameters and write them into the welding parameter object F in sequence m The corresponding elements are as follows:

[0048] (1.1) Before the target weldment is processed, the welding machine control system reads the current welding anchor chain number y=0205 and searches the datasheet datasheet-0205 corresponding to the anchor chain number 0205 in the welding record database;

[0049] (1.1.1) If the datasheet-0205 does not exist, create a new datasheet-0205. This table contains multiple fields, including: "Serial Number", "Process Specification", "Weldment Number", "Threshold Current", "Initial Clamp Length", "Flash Flat Length", "Preheat Speed", "Flash Speed", "Burning Length", "Upset Hold Time", "Upset Length", and "Welding Data". The data type of the "Welding Data" field is blob (binary large object). Let the number of records num = 0 and the current serial number m = num + 1 = 1.

[0050] (1.1.2) If datasheet-0205 exists, read the number of records in datasheet-0205 (num = 6) and calculate the current welding serial number (m); m = num + 1 = 7;

[0051] (1.2) Create a new empty welding data queue Q m and an empty welding parameter object F m ; Welding parameter object F m The elements in include: process specification N, weldment number E, threshold current I, initial clamp length L0, flash flat length L a , preheating speed V1, flash speed V2, burning length L b , upsetting holding time T i , upsetting length L c ;

[0052] (1.3) Read process specifications n from the welding control system m =90R3s, weldment number e m =0205.0007, threshold current i m =450A, initial clamp length l 0m =80mm, flash flat length l am =3mm, preheating speed v 1m =10mm / s, flash speed v 2m =2mm / s, burning length l bm =12mm, upsetting holding time t im =50s, upsetting length l cm=15mm, and write welding parameter object F in sequence m In the corresponding element.

[0053] (2) Establish a data acquisition thread Thread that is independent of the control system main program, determine the welding data array D based on the periodic collection of welding process data, and place the welding data array D into the welding data queue Q m ; The details are as follows:

[0054] (2.1) Create a data acquisition thread Thread independent of the main program, set the parameters: sampling time interval Δt = 0.01s, sampling comparison time t,

[0055] (2.2) The welding control system issues a start command, starts the data acquisition thread Thread, and reads the current system time t0. Let t = t0 and create an empty welding data array D = [0, 0, 0, 0, 0]

[0056] (2.3) Periodic collection of welding process data

[0057] (2.3.1) The sampling system reads the current system time t n ,

[0058] (2.3.1.1) When t n - When t≥0.01s, read the data of the current sampling point from the welding control system, including: welding status s n , welding current i n , welding voltage v n , electrode displacement x n , upsetting pressure p n , and write welding data array D = [t n ,s n ,i n ,v n ,x n ,p n ], put array D into welding data queue Q m Otherwise, return to (2.3.1)

[0059] (2.3.2) If the welding control system issues a welding end command, jump to (2.4); otherwise, set t = t n , and return to (2.3.1)

[0060] (2.4) The control system stops the data acquisition thread Thread and ends data acquisition.

[0061] (3) Data storage: After the flash butt welding is completed, a new record R is created in datasheet-y and the queue Q is stored. mBinary data Q′ after binary serialization m And the current serial number m; the details are as follows:

[0062] (3.1) After the welding is completed, the control system issues a data storage instruction and opens the data sheet datasheet-0205;

[0063] (3.2) Create a new record R in table datasheet-0205 and write the serial number 7 into the "Serial Number" field of record R;

[0064] (3.3) The welding parameter object F m Process specifications n m (90R3s), weldment number e m (0205.0007), threshold current i m (450A), initial clamp length l 0m (80mm), flash flat length l am (3mm), preheating speed v 1m (10mm / s), flash speed v 2m (2mm / s), burning length l bm (12mm), upsetting holding time t im (50s), upsetting length l cm (15mm) are written into the "Process Specifications", "Weldment Number", "Threshold Current", "Initial Clamp Length", "Flash Flat Length", "Preheating Speed", "Flash Speed", "Burn Length", "Upsetting Holding Time", and "Upsetting Length" fields of record R respectively.

[0065] (3.4) Queue Q m Perform binary serialization processing to Q′ m , and written into the "Welding Data" field of record R.

[0066] (3.5) Data storage is complete, close datasheet-0205

[0067] (4) Data reading: read historical welding data and draw welding curves. Details are as follows:

[0068] (4.1) The control system issues a command to read historical welding data, opens the historical welding curve interface, and establishes a sampling time t u is the horizontal axis, welding current i u , welding voltage v u , electrode displacement x u , upsetting pressure p u 4 line graphs Pi, Pv, Px, and Pp as vertical coordinates; create an empty data queue Q w, empty parameter object F w , empty welding data point array D u .

[0069] (4.2) Obtain the anchor chain number z=0226 and weldment number e from the control system w = 0226.0003, search the datasheet-0226 corresponding to the anchor chain number w = 0226 in the welding record database;

[0070] (4.2.1) If datasheet-0226 exists, open datasheet-0226, search for link serial number 3, and locate historical record J corresponding to link serial number 3 in the datasheet;

[0071] (4.2.2) If datasheet-0226 does not exist or history record J does not exist, an error message will be displayed and the process will go to (4.6);

[0072] (4.3) Record the process specification n in the history J w (90R3s), weldment number e w (0226.0003), threshold current i w (440A), initial clamp length l 0w (75mm), flash flat length l aw (3.5mm), preheating speed v 1w (10.5mm / s), flash speed v 2w (2mm / s), burning length l bw (11mm), upsetting holding time t iw (35s), upsetting length l cw (16mm) write parameter object F in sequence w middle;

[0073] (4.4) Record the historical binary data Q' in the "welding data" field in J w Deserialize, if deserialization is successful, generate and write it into the data queue Q w Otherwise, it will prompt that the welding data is incorrect and jump to (4.6)

[0074] (4.5) The control system sequentially dequeues data from the queue Q w Each element in the welding process is plotted on the historical welding curve interface.

[0075] (4.5.1) If the data queue Q w The number of elements in the data queue Q is greater than 0. w Dequeue an element and write it into the welding data point array D u=[t u , s u ,i u , v u , x u , p u ]; Otherwise, jump to (4.6)

[0076] (4.5.2) Read the array D u Middle D u [t u ], D u [s u ], D u [i u ], D u [v u ], D u [x u ], D u [p u ] data, plotted in the line graph Pi (D u [t u ], D u [i u ]) coordinate point,; draw (D u [t u ], D u [v u ]) coordinate point; draw (D u [t u ], D u [x u ]) coordinate point; draw (D u [t u ], D u [p u ]) coordinate point; and return to (4.5.1)

[0077] (4.6) The control system finishes reading historical welding data.

Claims

1. A method for collecting, storing and reading data of flash butt welding of mooring anchor chains, characterized in that: The following steps are involved: (1) Determine the datasheet datasheet-y corresponding to the current anchor chain number y and the current serial number m, and create an empty welding data queue Q m and welding parameter object F m , read the current welding parameters and write them into the welding parameter object F in sequence m In the corresponding elements of (2) Establish a data acquisition thread Thread that is independent of the control system main program, determine the welding data array D based on the periodic collection of welding process data, and place the welding data array D into the welding data queue Q m ; (3) Data storage: After the flash butt welding is completed, a new record R is created in datasheet-y and the queue Q is stored. m Binary data Q′ after binary serialization m And the current serial number m; (4) Data reading: read historical welding data and draw welding curves; Step (1) includes the following steps: (1.1) Search the datasheet datasheet-y corresponding to the current anchor chain number y in the welding record database and read the number of records num in datasheet-y; if datasheet-y does not exist, create a new datasheet-y and set the number of records num=0; datasheet-y includes the following field names: serial number, process specification, weldment number, threshold current, initial clamp length, flash flat length, preheating speed, flash speed, burn-out length, upset hold time, upset length, and welding data, and the data type of the welding data field is blob; set the current serial number m=num+1; (1.2) Create a new empty welding data queue Q m and welding parameter object F m ; Welding parameter object F m The elements include: process specifications, weldment number, threshold current, initial clamp length, flash flat length, preheating speed, flash speed, burnout length, upset holding time and upset length; (1.3) Read the current welding parameters from the welding control system and write them into the welding parameter object F in sequence m In the corresponding elements of Step (3) includes the following steps: (3.1) After the flash butt welding is completed, open datasheet-y. (3.2) Create a new record R in datasheet-y and write the current serial number m into the serial number field of record R; (3.3) The welding parameter object F m The elements in are written into the corresponding fields of record R; (3.4) Queue Q m Perform binary serialization processing to binary data Q′ m , and write it into the welding data field of record R; (3.5) Data storage is complete, close datasheet-y.

2. The method for collecting, storing and reading mooring chain flash butt welding data according to claim 1 is characterized in that: Step (2) includes the following steps: (2.1) Establish a data acquisition thread Thread that is independent of the control system main program, set the sampling time interval Δt and the sampling comparison time t; (2.2) Read the system time t0, set t=t0, and create an empty welding data array D; (2.3) Periodically collect welding process data; (2.3.1) Read the current system time t n ; (2.3.1.1) When t n When -t≥Δt, read the data of the current sampling point and write it into the welding data array D=[t n ,s n ,i n ,v n ,x n ,p n ], where s n For welding state, i n is the welding current, v n is the welding voltage, x n is the electrode displacement, p n is the forging pressure; put array D into welding data queue Q m ; Otherwise, return to (2.3.1); (2.3.2) If the welding control system issues a welding end command, jump to (2.4); otherwise, set t = t n , return to (2.3.1); (2.4) The control system stops the data acquisition thread Thread and ends data acquisition.

3. The method for collecting, storing and reading mooring chain flash butt welding data according to claim 1 is characterized in that: Step (4) comprises the following steps: (4.1) Create a new empty data queue Q w , parameter object F w and welding data point array D u ; (4.2) According to the historical anchor chain number z and weldment number e w , retrieve the historical data table datasheet-z corresponding to the historical anchor chain number z; (4.2.1) If datasheet-z exists, according to the weldment number e w Determine the weldment number e in datasheet-z w The corresponding historical record J; (4.2.2) If datasheet-z or history record J does not exist, an error message will be displayed and the process will go to (4.6); (4.3) Write the welding parameters in the history J into the parameter object F w middle; (4.4) The historical binary data Q' in the "welding data" field in the history record J is recorded. w Deserialization, if deserialization is successful, it will be generated and written into the data queue Q w Otherwise, it will prompt that the welding data is incorrect and jump to (4.6); (4.5) The control system sequentially dequeues data from the queue Q w Each element in the welding curve is plotted on the historical welding curve interface; (4.5.1) If the data queue Q w The number of elements in the data queue Q is greater than 0. w Dequeue an element and write it into the welding data point array D u =[t u , s u ,i u , v u , x u , p u ], where t u is the sampling time, s u is the historical welding state, i u is the historical welding current, v u is the historical welding voltage, x u is the historical electrode displacement, p u is the historical upsetting pressure; otherwise, jump to (4.6); (4.5.2) Read array D sequentially u Middle t u , s u ,i u , v u , x u , p u The data is sampled at time t u is the horizontal axis, i u 、v u 、x u and p u Draw the coordinate points in the current line graph Pi, voltage line graph Pv, displacement line graph Px and pressure line graph Pp as the vertical coordinates respectively, and return to (4.5.1); (4.6) The control system finishes reading historical welding data.

Citation Information

Patent Citations

  • Signal acquisition and storage method and device, electronic equipment and readable storage medium

    CN115344508A