A data acquisition method and system

CN117075991BActive Publication Date: 2026-10-13HEFEI INSTITUTE OF PHYSICAL SCIENCE CHINESE ACADEMY OF SCIENCES
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310965137.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-07-31
Publication Date
2026-10-13
Estimated Expiration
2043-07-31

AI Technical Summary

Technical Problem

[0003]现有的数据采集技术方案,都无法灵活兼容各种型号的仪器设备;每次接入一款新的采集仪器,都必须针对性的开发适配厂家提供的SDK控制和采集数据的功能逻辑、开发适配仪器使用的通信协议、开发适配仪器参数设置相关的界面和流程,并把相关的开发代码集成到采集软件中;在工控机上调试验证通过后,再重新编译软件工程、制作软件安装包;最终,在各工控机上由人工逐个替换安装新的采集软件的客户端

Benefits of technology

[0127](1)能够兼容支持在不同类型仪器上采集数据:该框架中每个仪器都开发适配一个仪器接口层,调用仪器厂家提供的SDK;能够兼容解决不同厂家的SDK接口不同的问题。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117075991B_ABST
    Figure CN117075991B_ABST
Patent Text Reader

Abstract

The application discloses a data acquisition method and system, comprising: determining an interface preset function and an interface set of an access instrument, wherein the interface set adopts a pre-prepared general interface specification; analyzing an interface function of a first software development kit of the access instrument, adapting and transferring the interface function of the first software development kit to the interface set; compiling a second software development kit according to the interface preset function and the interface set after the interface function of the first software development kit is transferred; setting instrument parameters of the access instrument through the second software development kit and the first software development kit; and controlling the access instrument after the instrument parameters are set to perform data acquisition through a control interface of the first software development kit and a control interface of the second software development kit. The effect of compatibility of different software development kit interfaces, different instrument communication protocols and different instrument parameter settings is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of data acquisition technology, and in particular relates to a data acquisition method and system. Background Technology

[0002] With the development of information technology, instrument data acquisition technology has been widely used in scientific research and modern industrial fields. It has greatly reduced the expenses of relevant personnel and improved scientific research and production efficiency. In actual application scenarios, different scientific research or industrial applications require different types of data to be collected, and the types of instruments used will vary greatly, which may involve adapting to a variety of instruments. When adapting to different models of instruments, three main aspects of adaptation are involved: (1) the SDK (Software Development Kit) interface provided by the instrument manufacturer, (2) the communication protocol of the instrument, and (3) the parameter settings of different instruments.

[0003] Existing data acquisition technologies are not flexible enough to accommodate various types of instruments and equipment. Each time a new acquisition instrument is connected, it is necessary to develop custom functional logic for controlling and acquiring data using the SDK provided by the manufacturer, develop communication protocols compatible with the instrument, develop interfaces and processes for setting instrument parameters, and integrate the relevant development code into the acquisition software. After debugging and verification on an industrial control computer, the software project is recompiled and a software installation package is created. Finally, the client software for the new acquisition software is manually installed on each industrial control computer. Summary of the Invention

[0004] To address the shortcomings of existing technologies, this application proposes a data acquisition method and system.

[0005] Firstly, this application proposes a data acquisition method, including:

[0006] Determine the preset functions and interface set of the access instrument, wherein the interface set adopts a predefined general interface specification;

[0007] Analyze the interface functions of the first software development kit (SDK) of the access instrument, and adapt and transfer the interface functions of the first SSD to the interface set;

[0008] Compile the second software development kit based on the interface set after transferring the interface functions of the first software development kit and the interface preset functions of the interface;

[0009] The instrument parameters of the access instrument are set using the second software development kit and the first software development kit;

[0010] The control interfaces of the first and second software development kits are used to control the connected instruments, which have had their instrument parameters set, to collect data.

[0011] Optionally, the step of setting the instrument parameters of the access instrument using the second software development kit and the first software development kit further includes:

[0012] Scan the client's system to obtain a list of connected instruments;

[0013] Enables communication between the client and the instruments in the access instrument list;

[0014] The instrument parameters set by the user in the client are then applied to the instruments in the access instrument list.

[0015] Optionally, the step of setting the instrument parameters set by the user in the client to the instruments in the access instrument list includes:

[0016] The instrument parameters set by the user in the client are generated into an Extensible Markup Language configuration file for the instruments in the access instrument list and saved to the instruments.

[0017] The client selects and dynamically loads the second software development kit corresponding to the instrument in the access instrument list;

[0018] The Extensible Markup Language (XML) configuration file saved in the instrument is parsed using the second software development kit to obtain the XML configuration file parsing result.

[0019] The second software development kit calls the first software development kit to set the Extensible Markup Language configuration file parsing results into the internal settings of the instruments in the access instrument list.

[0020] Optionally, the communication between the client and the instruments in the access instrument list includes:

[0021] Users select and set the instrument name and communication protocol on the client based on the list of connected instruments and the communication protocols used by the instruments in the list.

[0022] Optionally, the communication protocol includes: serial communication, universal serial bus communication, universal interface bus communication, and Ethernet communication.

[0023] Optionally, the instrument parameters include: general parameters, Boolean parameters, list-based single-selection parameters, and list-based multi-selection parameters.

[0024] Secondly, a data acquisition system is proposed, including:

[0025] The interface set determination module is used to determine the preset functions and interface set of the access instrument, wherein the interface set adopts a predefined general interface specification;

[0026] The interface function transfer module is used to analyze the interface functions of the first software development kit of the access instrument, adapt and transfer the interface functions of the first software development kit to the interface set;

[0027] The toolkit compilation module is used to compile the second software development toolkit based on the interface preset functions and the interface set after transferring the interface functions of the first software development toolkit.

[0028] The instrument parameter setting module is used to set the instrument parameters of the connected instrument through the second software development kit and the first software development kit;

[0029] The data acquisition module is used to control the connected instrument, after its instrument parameters have been set, to acquire data through the control interfaces of the first software development kit and the second software development kit.

[0030] The beneficial effects of the technical solutions provided in some embodiments of this application include at least the following:

[0031] This invention addresses the practical need to collect various types of data and be compatible with various types of instruments, providing a data acquisition method and system. It achieves compatibility with different SDK interfaces provided by instrument manufacturers, different instrument communication protocols, and different instrument parameter settings, and eliminates the need to install and replace the original data acquisition software client on each industrial control computer when connecting new instruments.

[0032] Other features and advantages of this application will be set forth in the following description and will be apparent in part from the description or may be learned by practicing the application. The objectives and other advantages of this application are realized and obtained through the structures particularly pointed out in the description, claims and drawings.

[0033] To make the above-mentioned objectives, features and advantages of this application more apparent and understandable, preferred embodiments are described below in detail with reference to the accompanying drawings.

[0034] The advantages of this application in its additional aspects will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description

[0035] To more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the description of the embodiments of the present invention or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0036] Figure 1 This is a flowchart of the data acquisition method shown in Embodiment 1 of this application;

[0037] Figure 2 This is a schematic diagram of a conventional data acquisition technology as shown in the embodiments of this application;

[0038] Figure 3 This is a schematic diagram of the data acquisition method shown in Embodiment 1 of this application;

[0039] Figure 4 This is a block diagram of the data acquisition system shown in Embodiment 2 of this application. Detailed Implementation

[0040] To make the objectives, technical solutions, and advantages of this application clearer, the embodiments of this application will be described in further detail below with reference to the accompanying drawings.

[0041] In the following description, when referring to the accompanying drawings, the same numbers in different drawings denote the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of methods and systems consistent with some aspects of this application as detailed in the appended claims.

[0042] In the description of this application, it should be understood that the terms "first," "second," etc., are used for descriptive purposes only and should not be construed as indicating or implying relative importance. Those skilled in the art can understand the specific meaning of the above terms in this application based on the specific circumstances. Furthermore, in the description of this application, unless otherwise stated, "multiple" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship.

[0043] In existing data acquisition technologies, instrument access-related functional modules (including SDK access, communication protocols, data acquisition and instrument control, instrument parameter setting interfaces, etc.) are all coupled and integrated into a single client. They do not employ a fully modular software framework design, nor do they utilize the method of loading instrument SDK libraries to dynamically access and run instruments. The principle is as follows... Figure 2As shown. The common technical process for connecting a new acquisition instrument is as follows: (1) Analyze the SDK and sample code provided by the manufacturer for instrument adaptation; (2) Add the instrument adaptation function code to the existing acquisition software. The main development and adaptation work involved includes: ① Interface adaptation development of the new instrument SDK; ② Adaptation development of the new communication protocol used by the new instrument (may be: serial port, USB, GPIB, Ethernet, MODBUS); ③ Adaptation development of various instrument parameters used by the new instrument, and also develop the corresponding parameter configuration interface; (3) After the adaptation verification is completed, it is necessary to recompile and make the installation package of the new acquisition software; Finally, the staff will install the client of the new acquisition software on each industrial control computer.

[0044] The disadvantages of existing technologies are as follows:

[0045] ① Incompatibility with SDK interfaces of different instruments: The names, number, parameters, and calling methods of SDK interfaces of different instruments may vary; the existing technical framework requires a lot of modification to the adaptation layer code that calls the SDK, and a copy of the adaptation layer code is saved for each instrument in the software code project, which will lead to an accumulation of more and more software project code, increase the complexity of the code project, and reduce maintainability.

[0046] ② Incompatibility with different instrument data communication protocols: Different instruments may use different communication protocols. The basic communication protocols supported by instruments include serial communication, USB communication, GPIB communication, and Ethernet communication; and each instrument has its own proprietary communication protocol (usually the definition of the data stream field) on top of these basic protocols. The existing technical framework cannot flexibly and directly support the communication protocols of these instruments.

[0047] ③ Incompatibility with configuration parameter settings of different instruments: The names, value ranges, types, and quantities of configuration parameters may differ between instruments. Current technical frameworks typically develop a separate parameter configuration interface for each instrument, providing users with the option to set instrument parameters. Developing and storing a separate parameter configuration interface and logic for each instrument within the software codebase leads to an ever-increasing volume of code, increasing code complexity and reducing maintainability.

[0048] ④ It is impossible to dynamically expand the types of instruments that can be connected without reinstalling the acquisition software: In the existing technical framework, the functional modules related to instrument access (including SDK access, communication protocols, data acquisition and instrument control, instrument parameter setting interfaces, etc.) are all coupled and integrated into a single client. It does not adopt a fully modular software framework design, nor does it use the method of loading instrument SDK libraries to dynamically connect and run instruments. This means that every time a new type of instrument is added, it is necessary to recompile and create a new acquisition software installation package; then, staff must install the new acquisition software client on each industrial control computer; this consumes a significant amount of manpower.

[0049] This invention addresses the shortcomings of existing technical solutions by implementing a flexible and compatible data acquisition technology solution for various types of instruments. The principle is as follows: Figure 3 As shown in the diagram. In this solution, ① the functional modules of the data acquisition software are thoroughly modularized, with a complete abstraction and decoupling of the instrument access interface layer. This allows for compilation into an independent instrument interface layer SDK2, which then specifically calls the instrument manufacturer's SDK1, resolving the issue of different instrument SDK interfaces. ② It can dynamically obtain a list of connected instruments in the operating system currently running the software, prompting the user to select the corresponding instrument. The name of the instrument, containing communication protocol information, is then set in the instrument manufacturer's SDK1, ensuring compatibility with different instrument data communication protocols. ③ An interface supporting user-defined instrument parameters is designed, allowing users to define parameter names, value ranges, types, and quantities for connected instruments, enabling flexible support for all types of instrument parameters. Furthermore, the parameters set in this interface are saved to the instrument's parameter configuration XML (Extensible Markup Language). The instrument interface layer SDK2 parses the parameter configuration XML and then sets it in the instrument by calling the instrument manufacturer's SDK1 interface. Therefore, it can flexibly accommodate the parameter configurations of various instruments. ④ In this technical framework, the development code related to instrument access adaptation is concentrated in the instrument interface layer module. This module can be independently compiled into Instrument Interface Layer SDK2, which is then paired with SDK1 and published to a remote server, and subsequently distributed to the acquisition software on each industrial control computer. The acquisition software implements the functions of dynamically receiving, loading, and matching accessed instruments. Therefore, this technical solution can dynamically achieve support for accessed instruments on each industrial control computer without consuming excessive manpower. Thus, this technical solution has more complete functions, better compatibility, and greater flexibility, and is better able to adapt to the real-time data acquisition needs of different scenarios.

[0050] Example 1

[0051] This application discloses a data acquisition method, such as... Figure 1 As shown, the steps are as follows:

[0052] Step S1: Determine the preset functions and interface set of the access instrument's interface, wherein the interface set adopts a predefined general interface specification;

[0053] In the specific implementation process, the code is as follows:

[0054] public interface IPluginBase

[0055] {

[0056] / / Set the plugin information, mainly regarding its compatibility with the instrument.

[0057] int SetPluginArgs(PluginArgs pluginInfo);

[0058] / / Instrument parameter configuration

[0059] int SetDevConfig(string configFilePath);

[0060] / / Multi-channel data acquisition and processing of the instrument

[0061] int SetDevRelation(DeviveRelation relation);

[0062] / / Data callback interface

[0063] int SetCallBackListner(ICallBackListner listner);

[0064] / / Update parameter settings during instrument operation

[0065] int UpdateDevConfig(string configFilePath);

[0066] / / Start collecting data

[0067] int Start();

[0068] / / Stop collecting data

[0069] int Stop();

[0070] }

[0071] Step S2: Analyze the interface functions of the first software development kit (SDK) connected to the instrument, and adapt and transfer the interface functions of the first SSD to the interface set;

[0072] Specifically, the interface functions and calling methods of the first software development kit provided by the analytical instrument manufacturer will be adapted and transferred to the interface set of the instrument that adopts the general interface specification.

[0073] Step S3: Compile the second software development kit based on the interface set after transferring the interface functions of the first software development kit and the interface preset functions of the interface;

[0074] Specifically, based on the interface preset functions and the interface set after transferring the interface functions of the first software development kit, an interface layer code module for the newly connected instrument is developed and adapted, and a second software development kit is compiled for the interface layer code module.

[0075] Step S4: Set the instrument parameters of the connected instrument using the second software development kit and the first software development kit;

[0076] In one feasible implementation, before setting the instrument parameters of the access instrument using the second software development kit and the first software development kit, the first software development kit and the second software development kit of the access instrument can also be uploaded to the server.

[0077] The server distributes a first software toolkit and a second software development toolkit to the client;

[0078] The client receives and manages the complete first software toolkit and second software development kit after distribution.

[0079] The process of completing the first software toolkit and the second software development toolkit after client management and distribution includes: matching the first software development toolkit and the second software development toolkit with the access instrument, loading the second software development toolkit and the first software development toolkit corresponding to the access instrument, and updating the instrument parameters of the access instrument through the second software development toolkit and the first software development toolkit;

[0080] Specifically, in one feasible implementation, setting the instrument parameters of the access instrument using the second software development kit and the first software development kit further includes the following steps:

[0081] Step S4.1: Scan the client's system to obtain the list of connected instruments;

[0082] Specifically, in this embodiment, the client scans the industrial control computer system periodically (once per second in this embodiment) to obtain the list of connected instruments, including: a list of serial port devices and a list of universal serial bus devices;

[0083] Specifically, the code to retrieve the names of all available serial port devices is:

[0084] string[]names=SerialPort.GetPortNames();

[0085] The code to retrieve the names of all Universal Serial Bus devices is:

[0086] USBDeviceList mUSBDeviceList=new USBDeviceList(CyConst.DEVICES_CYUSB);).

[0087] Step S4.2: Enable communication between the client and the instruments in the access instrument list;

[0088] Specifically, users select and set the instrument name and communication protocol on the client based on the list of connected instruments and the communication protocols used by the instruments in the list (including communication protocol type, instrument name, instrument port, etc.); the communication protocol includes one or more of the following protocols:

[0089] ① For serial communication, you need to select serial port as the device type and select the serial port device name of the instrument from the list of serial port instruments;

[0090] ②For USB (Universal Serial Bus) communication, you need to select USB as the device type and choose the USB device name of the instrument from the USB instrument list;

[0091] ③ For GPIB (General-Purpose Interface Bus) communication, you need to select GPIB as the device type and set the GPIB port number used by the instrument;

[0092] ④ For Ethernet communication, you need to select Ethernet as the device type and set the Ethernet port number used by the instrument.

[0093] Step S4.3: Set the instrument parameters set by the user in the client to the instruments in the access instrument list.

[0094] Specifically, in this embodiment, the following steps are adopted:

[0095] Step S4.3.1: Generate the instrument parameters set by the user in the client into an Extensible Markup Language configuration file for the instrument in the access instrument list and save it to the instrument;

[0096] Step S4.3.2: The client selects and dynamically loads the second software development kit corresponding to the instrument in the access instrument list;

[0097] Step S4.3.3: Parse the Extensible Markup Language (XML) configuration file saved in the instrument using the second software development kit to obtain the XML configuration file parsing result;

[0098] Step S4.3.4: The second software development kit calls the first software development kit to set the Extensible Markup Language configuration file parsing results into the instrument list and access the internal system of the instrument.

[0099] The instrument parameters set by the user in the client include one or more of the following parameters:

[0100] ① General parameters: This requires setting the name and content of the instrument parameters.

[0101] Specifically, in this embodiment, the general parameters are as follows:

[0102] NPLC: 0.05

[0103] The parameter for the name NPLC is set to 0.05.

[0104] ② Boolean parameter: This requires setting the name of the instrument parameter and the "Yes / No" value.

[0105] Specifically, in this embodiment, the Boolean parameter is:

[0106] Automatic delay: No;

[0107] The parameter whose name is "Automatic Delay" is set to "No".

[0108] ③ List-based single-selection parameters: This requires setting the instrument parameter name, list content, and single-selection values.

[0109] Specifically, in this embodiment, the list of single-select parameters includes:

[0110] Rang: "Auto / 100mv / 500mv / 1V / 10V / 20V", value is 1V;

[0111] This means that the parameter named "Rang" has a value range of "Auto / 100mv / 500mv / 1V / 10V / 20V", and the set value is "1V".

[0112] ④ List-based multi-select parameters: This requires setting the parameter name, list content, and values ​​for multiple selections.

[0113] Specifically, in this embodiment, the list includes multiple selection parameters:

[0114] Instrument channels: "Channel_1 / Channel_2 / Channel_3 / Channel_4 / Channel_5 / Channel_6 / Channel_7 / Channel_8 / Channel_9 / Channel_10", and user-defined multi-channel values: "Channel_2 / Channel_5 / Channel_8";

[0115] This indicates that the parameter named "Instrument Channel" has a value range of "Channel_1 / Channel_2 / Channel_3 / Channel_4 / Channel_5 / Channel_6 / Channel_7 / Channel_8 / Channel_9 / Channel_10", and the user has selected "Channel_2", "Channel_5", and "Channel_8".

[0116] In the actual implementation process, the calling order of SDK2 and SDK1 is as follows:

[0117] The client of the acquisition software -> (loaded at runtime) Instrument interface layer .dll (SDK2) -> (directly referenced) Instrument manufacturer .dll (SDK1);

[0118] The client of the acquisition software loads the instrument interface layer .dll at runtime using Assembly.Load(), etc.; the adaptation code of the instrument interface layer directly references the instrument manufacturer's .dll (i.e., by going to Project>References>Add instrument manufacturer's .dll).

[0119] Understandably, during implementation, users can consult the instrument's user manual and extend the settings to include any number of instrument parameters according to the instrument's configuration requirements. Specifically, the client receives the instrument settings configured by the user, generates a parameter configuration file (XML configuration file) for that instrument, and saves it on the industrial control computer for later use. The client then uses SDK2 to set the XML configuration file in SDK1, and SDK2 parses the XML configuration file and sets it into the newly connected instrument.

[0120] Step S5: Control the connected instrument, after setting the instrument parameters, to perform data acquisition through the control interfaces of the first software development kit and the second software development kit.

[0121] In practice, users can control "start" and "stop" data acquisition in the client; specifically, the acquisition software client controls the instrument through the control interfaces of the second software development kit and the first software development kit.

[0122] Understandably, before the client connects to the instrument to collect data, it can perform a self-test. Specifically, the client can check whether each channel in the instrument can collect data normally without performing channel calculations, and directly display the raw data.

[0123] The client can also set experimental information, including: ① setting the name of the experiment; ② setting the atomic relation of each instrument channel used; ③ setting the multi-channel relation of the multi-channel acquisition.

[0124] The specific process is as follows: The second software development kit (SDK) of the instrument interface layer collects instrument data by calling the instrument manufacturer's first SSD; then, it performs calculations on the raw data collected from each channel according to the atomic relationships set by the user for each channel; and then performs calculations on the multi-channel data according to the multi-channel relationships. Finally, the calculated data is displayed as waveforms on the client and simultaneously published to a remote database for storage.

[0125] Using the method described in this application, each instrument access only requires: (1) Developing a set of unified standard instrument interfaces for upper-layer functional logic calls provided to the client based on the general interface specification of the instrument interface layer; these interface sets need to rely on the SDK provided by the instrument manufacturer, adapting the functional interfaces provided in the instrument manufacturer's SDK to the instrument interface set that adopts the general interface specification; and then compiling the developed and adapted instrument interface layer code module into an SDK (i.e., SDK2) for the interface layer of the instrument. (2) Configuring parameter information for the accessed instrument in the parameter setting interface (i.e., the client interface layer) of the software client. Users can flexibly configure parameters for the accessed instrument, including: parameter name, value range, type, quantity, etc.; and the client interface generates and saves the instrument's XML configuration file based on the parameter information configured by the user, and passes it to the instrument interface layer SDK for parsing, and finally sets it into the instrument through the instrument manufacturer's SDK. (3) Publishing the instrument interface layer SDK (i.e., SDK2) and the instrument manufacturer's SDK (i.e., SDK1) together to the backend server, and finally distributing them to the acquisition software on each industrial control computer, without requiring users to reinstall and replace the acquisition software on the industrial control computer.

[0126] As can be seen from the above-described method of invention, this application achieves the following beneficial effects:

[0127] (1) It can be compatible with and support data acquisition on different types of instruments: Each instrument in this framework has an instrument interface layer developed to adapt to it and call the SDK provided by the instrument manufacturer; it can be compatible with and solve the problem of different SDK interfaces from different manufacturers.

[0128] (2) It can be compatible with the parameter configuration of different types of instruments: Users can configure various types and any number of instrument parameter information for the connected instruments in the client interface of the acquisition software.

[0129] (3) It is compatible with the data communication protocols of different types of instruments: The framework supports the basic communication protocols supported by existing instruments, including serial communication, USB communication, GPIB communication and Ethernet communication; it also supports the proprietary communication protocols of each instrument.

[0130] (4) It can dynamically expand the types of instruments that can be connected without reinstalling the acquisition software: The framework distributes SDK2 and SDK1 used by the connected instruments to the acquisition software clients running on each industrial control computer through the network server. The clients can dynamically expand the support for connected instruments by dynamically loading SDK2 and referencing SDK1.

[0131] In summary, this invention is flexible and compatible with the access of various types of instruments, enabling real-time data acquisition on different types of instruments; and it eliminates the need for staff to replace and install new acquisition software clients on each industrial control computer; thus, it is better adapted to the acquisition instruments.

[0132] Example 2

[0133] This application discloses a data acquisition system, such as Figure 4 As shown, it includes: an interface set determination module, an interface function transfer module, a toolkit compilation module, an instrument parameter setting module, and a data acquisition module;

[0134] The interface set determination module is used to determine the preset functions and interface set of the access instrument, and the interface set adopts a predefined general interface specification;

[0135] The interface function transfer module is used to analyze the interface functions of the first software development kit of the access instrument, adapt and transfer the interface functions of the first software development kit to the interface set.

[0136] The toolkit compilation module is used to compile the second software development toolkit based on the interface preset functions and the interface set after transferring the interface functions of the first software development toolkit.

[0137] The instrument parameter setting module is used to set the instrument parameters of the connected instrument through the second software development kit and the first software development kit;

[0138] The data acquisition module is used to control the connected instrument, after the instrument parameters have been set, to acquire data through the control interfaces of the first software development kit and the second software development kit.

[0139] The interface set determination module, interface function transfer module, toolkit compilation module, instrument parameter setting module, and data acquisition module are connected in sequence.

[0140] The data acquisition system provided in this embodiment is implemented by the data acquisition method provided in Embodiment 1. It has the same technical features as the data acquisition method provided in Embodiment 1, so it can also solve the same technical problems and achieve the same technical effects.

[0141] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working process of the method described above can be referred to the corresponding process in the aforementioned system embodiments, and will not be repeated here.

[0142] In the several embodiments provided by this invention, it should be understood that the disclosed systems and methods can be implemented in other ways. The system embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. Furthermore, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Additionally, the coupling or direct coupling or communication connection shown or discussed may be through some communication interfaces; the indirect coupling or communication connection between systems or units may be electrical, mechanical, or other forms.

[0143] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0144] In addition, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.

[0145] If the aforementioned functions are implemented as software functional units and sold or used as independent products, they can be stored in a processor-executable, non-volatile, computer-readable storage medium. Based on this understanding, the technical solution of this invention, essentially, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for causing a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0146] It should be noted that the flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order than those marked in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.

[0147] Finally, it should be noted that the above-described embodiments are merely specific implementations of the present invention, used to illustrate the technical solutions of the present invention, and not to limit it. The scope of protection of the present invention is not limited thereto. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that any person skilled in the art can still modify or easily conceive of changes to the technical solutions described in the foregoing embodiments within the technical scope disclosed in the present invention, or make equivalent substitutions for some of the technical features; and these modifications, changes, or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention, and should all be covered within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.

[0148] The applicant has provided a detailed description of the implementation examples of this application in conjunction with the accompanying drawings. However, those skilled in the art should understand that the above implementation examples are merely preferred embodiments of this application. The detailed description is only intended to help readers better understand the spirit of this application and is not intended to limit the scope of protection of this application. On the contrary, any improvements or modifications made based on the inventive spirit of this application should fall within the scope of protection of this application.

Claims

1. A data acquisition method, characterized in that, include: Determine the preset functions and interface set of the access instrument. The interface set adopts a predefined general interface specification, and the preset functions of the interface are the instrument access-related functions of the access instrument. Analyze the interface functions of the first software development kit (SDK) of the access instrument, and adapt and transfer the interface functions of the first SSD to the interface set; Compile the second software development kit based on the interface set after transferring the interface functions of the first software development kit and the interface preset functions of the interface; The instrument parameters of the access instrument are set using the second software development kit and the first software development kit; The instrument parameters include general parameters, Boolean parameters, single-selection list parameters, or multiple-selection list parameters; The control interface of the first software development kit and the control interface of the second software development kit are used to control the connected instrument after the instrument parameters have been set to perform data acquisition. The first software development kit is a software development kit provided by the instrument manufacturer; the second software development kit is a software development kit that adapts and transfers the interface functions provided in the first software development kit to the interface set of the access instrument using a common interface specification, and develops and adapts the interface layer of the newly accessed instrument.

2. The data acquisition method according to claim 1, characterized in that, The step of setting the instrument parameters of the access instrument using the second software development kit and the first software development kit includes: Scan the client's system to obtain a list of connected instruments; Enables communication between the client and the instruments in the access instrument list; The instrument parameters set by the user in the client are then applied to the instruments in the access instrument list.

3. The data acquisition method according to claim 2, characterized in that, The step of setting the instrument parameters set by the user in the client to the instruments in the access instrument list includes: The instrument parameters set by the user in the client are generated into an Extensible Markup Language configuration file for the instruments in the access instrument list and saved to the instruments. The client selects and dynamically loads the second software development kit corresponding to the instrument in the access instrument list; The Extensible Markup Language (XML) configuration file saved in the instrument is parsed using the second software development kit to obtain the XML configuration file parsing result. The second software development kit calls the first software development kit to set the Extensible Markup Language configuration file parsing results into the internal settings of the instruments in the access instrument list.

4. The data acquisition method according to claim 2, characterized in that, The process of enabling communication between the client and the instruments in the access instrument list includes: Users select and set the instrument name and communication protocol on the client based on the list of connected instruments and the communication protocols used by the instruments in the list.

5. The data acquisition method according to claim 4, characterized in that, The communication protocols include: serial communication, universal serial bus communication, universal interface bus communication, and Ethernet communication.

6. A data acquisition system, comprising: The interface set determination module is used to determine the preset functions and interface set of the access instrument, wherein the interface set adopts a predefined general interface specification; The interface function transfer module is used to analyze the interface functions of the first software development kit of the access instrument, adapt and transfer the interface functions of the first software development kit to the interface set; The toolkit compilation module is used to compile the second software development toolkit based on the interface preset functions and the interface set after transferring the interface functions of the first software development toolkit. The instrument parameter setting module is used to set the instrument parameters of the connected instrument through the second software development kit and the first software development kit; Data acquisition module; This is used to control the connected instrument, after its instrument parameters have been set, to acquire data through the control interfaces of the first software development kit and the second software development kit.

Citation Information

Patent Citations

  • Method for configuring universal virtual instrument interface

    CN101944062A

  • Method and device for improving equipment compatibility, electronic equipment and storage medium

    CN112230945A