CN114756536A - SCADA-based big data expansion storage system and method - Google Patents

SCADA-based big data expansion storage system and method Download PDF

Info

Publication number
CN114756536A
CN114756536A CN202210334659.5A CN202210334659A CN114756536A CN 114756536 A CN114756536 A CN 114756536A CN 202210334659 A CN202210334659 A CN 202210334659A CN 114756536 A CN114756536 A CN 114756536A
Authority
CN
China
Prior art keywords
data
variable
sql
scada system
memory table
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210334659.5A
Other languages
Chinese (zh)
Inventor
仲海卫
薛建娟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Zeyi Automation Technology Co ltd
Original Assignee
Suzhou Zeyi Automation Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Zeyi Automation Technology Co ltd filed Critical Suzhou Zeyi Automation Technology Co ltd
Priority to CN202210334659.5A priority Critical patent/CN114756536A/en
Publication of CN114756536A publication Critical patent/CN114756536A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses a system and a method for realizing SCADA big data expansion storage, wherein a DataTransfer application program is established to be connected with a self-contained SQL server of an SCADA system, and an SQL memory table is established; the SCADA system writes or updates the data variable in the PLC into the SQL memory table; the Data Transfer application program reads the Data variable in the SQL memory table and sends the Data variable to the Data Center database, and the Data Center database receives the Data variable in the SQL memory table through the Data Transfer application program and carries out classified storage; the Data Center database sends a control instruction variable to a Data Transfer application program; the DataTransfer application program translates the control instruction variable into a hardware operation instruction set which can be identified by the SCADA system and then stores the hardware operation instruction set in an SQL memory table; the SCADA system regularly scans and reads a hardware operation instruction set in the SQL memory table, and industrial equipment or instruments are controlled to make corresponding actions through the PLC. On the premise that the SCADA system normally and rapidly operates, the invention realizes the expansion storage of the SCADA big data and is convenient for analyzing the stored data and exchanging external data.

Description

SCADA-based big data expansion storage system and method
Technical Field
The invention relates to the field of data processing, in particular to a system and a method for expanding and storing big data based on SCADA.
Background
The invention is mainly based on the background of two aspects, firstly, the mode of PLC + SCADA has been developed for many years, And because the database of SCADA (Supervisory Control And Data Acquisition, real-time monitoring system) of each manufacturer is relatively closed, there is a technical barrier for the analysis, Data warehouse And Data pool of most of the existing companies; secondly, the SCADA system is used for a long time, and for a sensor with a short sampling period, the data volume is huge, so that the operation speed of the database is slow, the database needs to be cleaned regularly, otherwise, the normal operation of the SCADA is influenced, and the immeasurable loss is caused.
Disclosure of Invention
In order to overcome the defects that the operation speed of a database is slowed due to huge data quantity for a sensor with a relatively short sampling period when an SCADA system is used for a long time in the background art, and the normal operation of the SCADA is influenced because the database needs to be cleaned regularly, the invention aims to provide a large data expansion storage system and a method based on the SCADA.
In order to achieve the purpose, the invention adopts the technical scheme that: a big Data expansion storage system based on SCADA system comprises a Data Transfer application program, an SCADA system and a Data Center database,
The Data Transfer application program is connected with an SQL Server database of the SCADA system through an SQL connection script, and an SQL memory table is built in the SQL Server database; the Data Transfer application program reads the Data variables in the SQL memory table and sends the Data variables to a Data Center database, and then the SQL memory table is emptied; the Data Transfer application program receives a control instruction variable sent by a Data Center database, translates the control instruction variable into a hardware operation instruction set which can be identified by an SCADA system, and then stores the control instruction variable in an SQL memory table;
the SCADA system is in communication connection with the PLC, reads various data variables needing to be stored or filed in the PLC, executes the SQL connection script according to the stored conditions or the needed data types, and writes or updates the data variables into the SQL memory table; the SCADA system regularly scans and reads a hardware operation instruction set in the SQL memory table, and industrial equipment or instruments are controlled to make corresponding actions through the PLC;
the Data Center database receives the Data variables in the SQL memory table through the Data Transfer application program and classifies and stores the Data variables; the Data Center database sends a control instruction variable to a Data Transfer application program; the user checks the Data variables in the Data Center database by logging in the WEB Server, and controls the PLC by remote operation on the WEB Server.
In some possible embodiments, the SQL memory table includes a Data memory table and a DO memory table, where the Data memory table is a temporary table in the SCADA system that sends a Data variable to a Data Center database; the DO memory table is a temporary table for controlling the control instruction variable of the PLC by a user through a webpage in a WEB server contained in a Data Center database; the SQL memory table exists in the memory of the computer where the SCADA system is located.
In some possible embodiments, the Data Transfer application program is used as one of the external programs for starting the SCADA system, is started together with the SCADA system, and is arranged on the computer equipment on which the SCADA system depends; the Data Center database is independent of the computer devices on which the SCADA system depends.
A big data expansion storage method based on an SCADA system comprises the following working steps:
s1: the industrial control equipment is communicated with the PLC, and the PLC reads the data variable of the industrial control equipment;
s2: starting the SCADA system, synchronously starting a Data Transfer application program, confirming whether an SQL memory table exists in an SQL Server database by the Data Transfer application program, and if not, establishing the SQL memory table in the SQL Server database, namely respectively establishing a Data memory table and a DO memory table; if yes, clearing the SQL memory table;
S3: after all work is initialized, the SCADA system communicates with the PLC by adopting a TCP or an IP, reads a data variable in the PLC, executes an SQL connection script according to a stored condition or a required data type, and writes or updates the data variable into a data memory table;
s4: the Data Transfer application program inquires that a Data variable exists in the Data memory table, and after all Data variables are read out, the Data variable is sent to a Data Center database, and the Data memory table is emptied;
s5: a user changes a control instruction variable by logging in a WEB Server, a Data Center database carries out batch processing on the control instruction variable, then a new control instruction variable is sent to a Data Transfer application program through remote Data exchange, the Data Transfer application program translates the new control instruction variable into a hardware operation instruction set which can be identified by an SCADA system, the new control instruction variable is stored into an SQL memory table, the SCADA system carries out timing state updating and scanning on the hardware operation instruction set in the SQL memory table, and then the hardware operation instruction is sent to a PLC according to the reading value of 1 or 0, so that the PLC changes the switch of corresponding equipment or instrument into a corresponding state through an execution unit.
In some possible embodiments, the clearing operation performed by the SQL memory table specifically includes: the data memory table is emptied once, and the filling of the SCADA system data variables is waited; after the DO memory table is initialized, before the end user does not perform any operation of changing the PLC switch variable at the WEB Server end, the state is guaranteed to be an empty state.
In some possible embodiments, the writing or updating of data into the data memory table specifically includes: when a data variable is updated, regularly executing the function of the SQL statement by using a function which is carried by the SCADA system and can execute the SQL statement or by using a timer of the SCADA system, and writing the data variable which needs to be updated and stored into a data memory table in a variable name and variable value mode; if there is no data for the variable name, then the SQL statement inserts the variable and the variable value into the dataram table.
In some possible embodiments, in S4, after the Data variable is sent to the Data Center database, the Data Center database workflow is as follows:
the method comprises the following steps: and classifying the sent data variables, wherein the types of the data variables are divided into control instruction variables and numerical variables.
Step two: judging the type of the data variable;
step three: the user performs data analysis on the numerical variable through the WEB Server, so that the numerical variable is reset; the user changes the control instruction variable through the WEB Server, the Data Center database performs batch processing on the control instruction variable, and then the new control instruction variable is sent to the Data Transfer application program through remote Data exchange.
In some possible embodiments, the "determining the type of the data variable" in the second step is specifically as follows: if the Data Center database is a numerical variable, judging whether a variable table exists in the Data Center database, if the variable table does not exist, establishing the variable table by paging according to years, then storing the numerical variable into the variable table, if the variable table pre-exists in the Data Center database, directly storing the numerical variable into the variable table, remotely logging in a WEB Server by a user, and checking the numerical variable through a picture control picture;
if the control instruction variable is the control instruction variable, the control instruction variable is directly sent to a graph control picture of the WEB Server for a user to check.
A computer readable storage medium, which stores a computer program, and when the computer program is executed by a processor, the computer program implements a method for storing big data expansion based on SCADA system according to the present invention.
The invention has the beneficial effects that:
1. the Data Transfer application program is used for establishing the SQL memory table in the SQL Server database, the Data Transfer application program and the SCADA system are used for exchanging Data list tables, and on the premise of little influence on the operation of the SCADA system, the Data and control of the SCADA system are processed by an external system, so that the stability of the SCADA system is utilized, and the defects of large and complex SCADA system, high technical level requirement, large early programming work, high cost and the like can be avoided.
2. The system can be easily transferred to a local area network or the Internet from the single machine monitoring of the traditional SCADA system through the WEB server, and can save a large amount of time for engineering personnel for monitoring the on-site exception handling and the heavy work of data report forms.
And 3, establishing a Data Center database provides a basis for preprocessing work such as Data cleaning format, sorting, dirty Data filtering and the like, and provides a powerful technical basis for integrating large Data analysis of a cross-system.
4. An SQL memory table is established, so that data variables transmitted from the SCADA system all perform Insert or update actions in one memory table; there are three significant advantages: first, for a non-persistent table, data is stored only in memory, so that data is stored and updated very quickly, much faster than normal SQL table data that operates on disk. Therefore, for the huge system structure of the SCADA system, the workload of data processing is reduced to the minimum as much as possible; secondly, all variables enter one table uniformly, and programming work is reduced when the variables are set in the SCADA system; finally, all variables are uniformly entered into one table, the reproducibility is greatly enhanced for different systems, one set of software can be suitable for different structures, and a structural foundation is laid for the universality of the data expansion system.
Drawings
FIG. 1 is a flow chart of storing data variables outside a conventional SCADA system according to an embodiment of the present invention;
fig. 2 is a schematic diagram of an overall structure of a big data expansion storage system based on an SCADA system according to an embodiment of the present invention;
fig. 3 is an overall work flow diagram of a method for expanding and storing big data based on the SCADA system according to an embodiment of the present invention.
Detailed Description
The following detailed description of the preferred embodiments of the present invention, taken in conjunction with the accompanying drawings, will make the advantages and features of the invention easier to understand by those skilled in the art, and thus will clearly and clearly define the scope of the invention.
SCADA (Supervisory Control And Data Acquisition, Data Acquisition And monitoring Control): the SCADA system is a DCS and electric power automatic monitoring system based on a computer; the remote control system has wide application fields, can be applied to various fields such as data acquisition and monitoring control and process control in the fields of electric power, metallurgy, petroleum, chemical industry, gas, railways and the like, plays an important role in a telemechanical system, and can monitor and control on-site operating equipment so as to realize various functions such as data acquisition, equipment control, measurement, parameter adjustment, various signal alarms and the like.
Data Transfer; data Center (Data Center);
PLC (Programmable Logic Controller): a programmable logic controller is a digital arithmetic operation electronic system designed specifically for use in an industrial environment, which employs a programmable memory in which instructions for performing operations such as logic operations, sequence control, timing, counting, and arithmetic operations are stored, and controls various types of mechanical equipment or manufacturing processes through digital or analog inputs and outputs.
SQL Server (relational database management system): the SQL Server is a relational database management system introduced by Microsoft corporation, has the advantages of convenient use, good scalability, high integration degree of related software, and the like, can be used across a plurality of platforms from a laptop running Microsoft Windows 98 to a Server running a large-scale multiprocessor of Microsoft Windows 2012, and is a comprehensive database platform, and provides enterprise-level data management by using an integrated Business Intelligence (BI) tool. The Microsoft SQL Server database engine provides a safer and more reliable storage function for the relational data and the structured data, so that a high-availability and high-performance data application program for business can be constructed and managed.
Intouch (Industrial Automation configuration software, product of Wonderware corporation);
TCP (Transmission Control Protocol): is a connection-oriented, reliable, byte stream-based transport layer communication protocol.
IP (Internet Protocol ): is a network layer protocol in the TCP/IP architecture.
As described with reference to fig. 1, the conventional SCADA system wants to save data off-system as follows:
editing the design of the SCADA project in advance through planning; designing a data table in an SCADA development system according to the data variables and the variable types; the SQL Server database and the data table are bound in the SCADA system, so that when the SCADA system runs, the corresponding SQL binding table can be automatically established in the SQL Server database.
The method comprises the following steps that a PLC is started, industrial control equipment is communicated with the PLC, the PLC reads equipment data, an SCADA system is started, the PLC is communicated with the PLC through a TCP or an IP, the SCADA system reads various data needing to be stored or filed corresponding to the PLC, an SQL binding table stores corresponding data according to different storage conditions and needs, and then the data are stored in a corresponding database table according to updated logic.
The traditional SCADA system stores data in a database in a data binding mode and has the following defects in implementation and operation:
1. binding data, establishing a database, and in a running version, the data can not be changed or is inconvenient to change;
2. binding a data table, wherein in the operation process of the SCADA system, a process of storing data from a memory to a hard disk medium can be realized, the process needs time to operate for completion, and the operation of the whole SCADA system can be influenced by a large amount of data table binding;
3. binding a data table, and accumulating the data table at any time, so that the single-table data of the database is too huge, the SQL database is processed slowly, and the operation of the whole SCADA system is influenced;
4. the structure of the data is built by an SCADA software system, and external software is difficult to read the database, so that the large data integration of the whole factory is not facilitated;
SCADA software itself often requires expensive controls or components to implement if the system is queried and controlled remotely. Furthermore, the control and the assembly can be combined into the original system only by the engineer with strong professional knowledge, and the seamless operation is realized. Meanwhile, the number of users is limited, and a plurality of non-durable limitations are brought to remote monitoring.
In order to solve the problem that the conventional SCADA system stores Data in a database in a Data binding manner, referring to fig. 3, the big Data expansion storage system based on the SCADA system in this embodiment includes a Data Transfer application, a SCADA system, and a Data Center database, where the Data Transfer application is one of external programs for starting the SCADA system, is started together with the SCADA system, and is installed in a computer on which the SCADA system depends; the Data Center database is independent of the computer devices on which the SCADA system depends. The Data Center database is run separately from the computer on which the SCADA system depends. Even if the SCADA system is in a closed state, the latest variable value of the PLC cannot be obtained except that the SCADA system cannot be used for switching on and off hardware with the PLC, historical records can still be inquired, and data analysis is carried out. The Data Center can be composed of servers or server arrays, and provides software and hardware technical solutions for Data sharing, Data statistical analysis and user operation.
The Data Transfer application program is connected with an SQL Server database of the SCADA system through an SQL connection script, and an SQL memory table is established in the SQL Server database and comprises a Data memory table and a DO memory table, wherein the Data memory table is a temporary table for transmitting Data variables to a Data Center database in the SCADA system; the DO memory table is a temporary table for controlling the control instruction variable of the PLC by a user through a webpage in a WEB server contained in a Data Center database; the SQL memory table exists in the memory of the computer where the SCADA system is located.
The original SCADA system adopts a Data Transfer application program to connect with an SQL Server database through an SQL connection script. Taking Intouch database and SQL Server database as examples: the SQL Server database interface SQLOLEDB is used. The script is as follows:
resultcode1 ═ SQLConnect (connectionID, "Provider ═ sqloledb.1; User ID ═ username; Password ═ Password; Initial Catalog ═ database name; Data Source:;); through the script, the connection between the independent Intouch database and the SQL Server database can be established, and the operation of the database is based on the connection. The Data Transfer application program reads the Data in the SQL memory table and sends the Data to the Data Center database, and then the SQL memory table is emptied; the Data Transfer application program receives the control instruction variable sent by the Data Center database, translates the control instruction variable into a hardware operation instruction set which can be identified by the SCADA system, and then stores the hardware operation instruction set in the SQL memory table.
The SCADA system and the PLC adopt TCP or IP communication, data variables are exchanged from the PLC and stored in the SQL memory table; the SCADA system regularly scans and reads a hardware operation instruction set in the SQL memory table, and industrial equipment or instruments are controlled to make corresponding actions through the PLC.
The Data Center database receives the Data variables in the SQL memory table through the Data Transfer application program and classifies and stores the Data variables; the Data Center database sends a control instruction variable to a Data Transfer application program; the user checks the Data variables in the Data Center database by logging in the WEB Server, and controls the PLC by remote operation on the WEB Server. The user can log in the system in a remote webpage mode, and can see the running state of the industrial control equipment and the reading values of various field instruments and equipment. Some parameters can be adjusted, and data statistical analysis, report generation and the like can be carried out; changes are made to the field switch state.
Referring to fig. 2, in an industrial control device or instrument, different types of sensors are often used to collect data, for example, a temperature sensor converts a temperature data variable into a transmittable standardized output signal, a pressure sensor can sense a pressure signal and convert the pressure signal into a usable output signal according to a certain rule, a flow sensor can sense a fluid flow and convert the fluid flow into a usable output signal, and a PLC receives the output signal, converts the output signal into standardized data, and reads the standardized data together with on-off state data of the device or instrument. The data, i.e., data variables, include control command variables (including on-off state variables of industrial control equipment or instruments, etc.) and numerical variables (including measured numerical variables of temperature, humidity, pressure, flow, etc. to be measured).
Because the SCADA system and the PLC adopt TCP or IP communication, the SCADA system can read various corresponding data needing to be stored or filed in the PLC. When the SCADA system is started to operate, the Data Transfer application program establishes connection with the SQL Server database of the SCADA system through the SQL connection script, and the Data Transfer application program is started synchronously. The Data Transfer application program establishes an SQL memory table in an SQL Server database, the SCADA system updates Data variables (including numerical variables and control instruction variables) into the SQL memory table, the Data Transfer application program reads the Data variables in the SQL memory table and then clears the SQL memory table, then the Data Transfer application program carries out Data remote exchange through TCP or IP and sends the Data variables into a Data Center database, the Data Center database stores the Data variables in a classified manner, a user logs in a WEB Server through a picture control picture by using a mobile phone or a computer and inquires and displays the Data variables, after inquiry, the user changes the control instruction variables through the WEB Server, the Data Center database carries out batch processing on the control instruction variables, then sends new control instruction variables to the Transfer application program through remote Data exchange, and the Data application program translates new control instructions into a hardware operation instruction set which can be recognized by the SCADA system, and the SCADA system updates and scans the state of the hardware operation instruction set in the SQL memory table at regular time, and then sends the hardware operation instruction to the PLC according to the read value of 1 or 0, so that the PLC changes the switch of the corresponding equipment or instrument into the corresponding state through the execution unit.
For a non-persistent table, data is only stored in a computer memory, so that the storage and the update of the data are very quick and are far higher than the operation of the data of a SQL normal table on a disk. This minimizes the workload of data processing to the lowest possible for the large system architecture of the SCADA itself. Secondly, all variables enter a table uniformly, and programming work is reduced when the variables are set in the SCADA. Thirdly, all variables are uniformly entered into one table, the reproducibility is greatly enhanced for different systems, one set of software can be suitable for different structures, and a structural foundation is laid for the universality of the data expansion system.
Referring to fig. 3, a method for expanding and storing big data based on an SCADA system specifically includes the following steps:
s1: and starting the PLC, communicating the industrial control equipment with the PLC, and reading the data variable of the industrial control equipment by the PLC.
S2: the method comprises the following steps that a SCADA system is started, a Data Transfer application program is connected with an SQL Server database of the SCADA system through an SQL connection script, the Data Transfer application program is started synchronously, the Data Transfer application program confirms whether an SQL memory table in the SQL Server database exists or not, and if the SQL memory table does not exist, the SQL memory table is built in the SQL Server database, namely, the Data memory table and a DO memory table are built respectively; if yes, clearing the SQL memory table; the method specifically comprises the following steps: the data memory table is emptied once to wait for the filling of the data variables of the SCADA system; after the DO memory table is initialized, before the end user does not perform any operation of changing the PLC switch variable at the WEB Server end, the state is guaranteed to be an empty state.
S3: after all work of the SCADA system is initialized, the SCADA system communicates with the PLC by adopting a TCP or an IP, reads various data variables which need to be stored or filed and correspond to the PLC, executes an SQL connection script according to the stored conditions or the needed data types, and writes or updates the data variables into a data memory table; the method specifically comprises the following steps: when a data variable is updated, regularly executing the function of the SQL statement by using a function which is carried by the SCADA system and can execute the SQL statement or by using a timer of the SCADA system, and writing the data variable which needs to be updated and stored into a data memory table in a variable name and variable value mode; if there is no data for the variable name, then the SQL statement inserts the variable and the variable value into the dataram table. The advantages of this are: one variable can be started or stopped being stored at any time in the whole system, and the normal operation of the original SCADA system and the system provided by the invention cannot be influenced. Especially for the original SCADA system, the system can not be stopped and regulated to operate again because the variables to be stored are changed; the number of the stored variables can be flexibly adjusted, and the operation efficiency of the whole system is effectively improved.
S4: and the Data Transfer application program inquires that the Data variables exist in the Data memory table, sends the Data variables to the Data Center database after all Data variables are read out, and clears the Data memory table.
S5: a user changes a control instruction variable by logging in a WEB Server, a Data Center database carries out batch processing on the control instruction variable, then a new control instruction variable is sent to a Data Transfer application program through remote Data exchange, the Data Transfer application program translates the new control instruction variable into a hardware operation instruction set which can be identified by an SCADA system, the hardware operation instruction set is stored in an SQL memory table, the hardware operation instruction set in the SQL memory table is updated and scanned by the SCADA system in a timing mode, then a hardware operation instruction is sent to a PLC according to a reading value of 1 or 0, and the PLC changes a switch of a corresponding device or instrument into a corresponding state through an execution unit.
The two processes S3 and S4 loop indefinitely during operation of the SCADA system until the SCADA system is no longer operational. Because the Data Transfer application program queries and reads the Data variables in the Data memory table according to a certain frequency, when the SCADA system is no longer running, the Data Transfer application program queries the Data variables in the Data memory table according to the previously set frequency, reads the complete and available Data variables, sends the Data variables to the Data Center database, and then clears the Data memory table until the SCADA system exits.
The Data Center database uses Table paging technique to store Data in different tables or media. Referring to fig. 1, after the Data Transfer application sends Data to the Data Center database, the Data Center database work flow is as follows:
the method comprises the following steps: and classifying the sent data variables, wherein the types of the data variables are divided into control instruction variables and numerical variables.
Step two: judging the type of the data variable:
if the Data Center database is a numerical variable, judging whether a variable table exists in the Data Center database, if not, establishing the variable table by paging according to the year, and then storing the numerical variable into the variable table; if the Data Center database has a variable table in advance, the numerical value variable is directly stored in the variable table, and the user remotely logs in the WEB Server and can check the numerical value variable through the graph control picture.
And if the control instruction variable is the control instruction variable, the control instruction variable is directly sent to a graph control picture of the WEB Server for a user to check.
Step three: the user can also carry out data analysis on the numerical variables through the WEB Server, so that some numerical variables (temperature, humidity, pressure, flow and the like) are reset; the user changes the control instruction variable through the WEB Server, the Data Center database carries out batch processing on the control instruction variable, then the new control instruction variable is sent to the Data Transfer application program through remote Data exchange, the Data Transfer application program translates the new control instruction variable into a hardware operation instruction set which can be identified by the SCADA system, the hardware operation instruction set is stored in the SQL memory table, the hardware operation instruction set in the SQL memory table is updated and scanned in a timing state by the SCADA system, then the hardware operation instruction is sent to the PLC according to the reading value of 1 or 0, and the PLC changes the switch of the corresponding equipment or instrument into a corresponding state through the execution unit.
The variable table is a variable paging table. The variable paging table can divide data into different files according to a certain rule for storage. The unit of year is 1051200 Data in one year if one Data is stored for 30 seconds, and the method can be basically obtained in a point-to-point manner for the single-table query speed of million levels, so that the running speed of the Data Center system does not change too much after a long time, and the bad experience cannot be brought to the end user.
The invention can store SCADA system Data in the Data Center database without affecting the performance of the original SCADA system. With the lapse of the SCADA operation time, the query of a large amount of data and the report form can not influence the original SCADA system, some SCADA systems can be modified, so that the data and monitoring of the single-machine SCADA can realize internet networking under the condition that the single-machine SCADA does not need too much change (especially for old systems), and the data base or cloud storage of big data can be realized at low cost.
A computer readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the computer program implements a SCADA-based big data expansion saving method according to the present invention.
The above embodiments are merely illustrative of the technical concept and features of the present invention, and the present invention is not limited thereto, and any equivalent changes or modifications made according to the spirit of the present invention should be included in the scope of the present invention.

Claims (9)

1. A big Data expansion storage system based on SCADA system is characterized in that the system comprises a Data Transfer application program, an SCADA system and a Data Center database,
the Data Transfer application program is connected with an SQL Server database of the SCADA system through an SQL connection script, and an SQL memory table is built in the SQL Server database; the Data Transfer application program reads the Data variables in the SQL memory table and sends the Data variables to a Data Center database, and then the SQL memory table is emptied; the Data Transfer application program receives a control instruction variable sent by a Data Center database, translates the control instruction variable into a hardware operation instruction set which can be identified by an SCADA system, and then stores the hardware operation instruction set in an SQL memory table;
the SCADA system is in communication connection with the PLC, reads a data variable in the PLC, executes the SQL connection script and writes or updates the data variable into the SQL memory table; the SCADA system regularly scans and reads a hardware operation instruction set in the SQL memory table, and industrial equipment or instruments are controlled to make corresponding actions through the PLC;
The Data Center database receives the Data variables in the SQL memory table through the Data Transfer application program and classifies and stores the Data variables; the Data Center database sends a control instruction variable to a Data Transfer application program; the user checks the Data variables in the Data Center database by logging in the WEB Server, and controls the PLC by remote operation on the WEB Server.
2. The SCADA system-based big Data expansion storage system of claim 1, wherein the SQL memory table comprises a Data memory table and a DO memory table, and the Data memory table is a temporary table in the SCADA system for sending Data variables to a Data Center database; the DO memory table is a temporary table for controlling the control instruction variable of the PLC by a user through a webpage in a WEB server contained in a Data Center database; the SQL memory table exists in the memory of the computer where the SCADA system is located.
3. The SCADA system-based big Data expansion storage system as claimed in claim 1, wherein the Data Transfer application program is one of external programs for starting the SCADA system, is started together with the SCADA system, and is arranged in the computer equipment on which the SCADA system depends; the Data Center database is independent of the computer devices on which the SCADA system depends.
4. A big data expansion storage method based on an SCADA system is characterized by comprising the following working steps:
s1: the industrial control equipment is communicated with the PLC, and the PLC reads the data variable of the industrial control equipment;
s2: starting the SCADA system, synchronously starting a Data Transfer application program, confirming whether an SQL memory table exists in an SQL Server database by the Data Transfer application program, and if not, establishing the SQL memory table in the SQL Server database, namely respectively establishing a Data memory table and a DO memory table; if yes, clearing the SQL memory table;
s3: after all work of the SCADA system is initialized, the SCADA system communicates with the PLC by adopting a TCP or an IP, reads a data variable in the PLC, executes an SQL connection script according to a stored condition or a required data type, and writes or updates the data variable into a data memory table;
s4: the Data Transfer application program inquires that a Data variable exists in the Data memory table, and after all Data variables are read out, the Data variable is sent to a Data Center database, and the Data memory table is emptied;
s5: a user changes a control instruction variable by logging in a WEB Server, a Data Center database carries out batch processing on the control instruction variable, then a new control instruction variable is sent to a Data Transfer application program through remote Data exchange, the Data Transfer application program translates the new control instruction variable into a hardware operation instruction set which can be identified by an SCADA system, the hardware operation instruction set is stored in an SQL memory table, the hardware operation instruction set in the SQL memory table is updated and scanned by the SCADA system in a timing mode, then a hardware operation instruction is sent to a PLC according to a reading value of 1 or 0, and the PLC changes a switch of a corresponding device or instrument into a corresponding state through an execution unit.
5. The SCADA system-based big data expansion storage method according to claim 4, wherein the SQL memory table performs an emptying action, specifically: the data memory table is emptied once, and the filling of the SCADA system data variables is waited; after the DO memory table is initialized, before the end user does not perform any operation of changing the PLC switch variable at the WEB Server end, the state is guaranteed to be an empty state.
6. The SCADA system-based big data expansion storage method according to claim 4, wherein the writing or updating of data into the data memory table specifically comprises: when a data variable is updated, regularly executing the function of the SQL statement by using a self-contained function of the SCADA system or using a self timer of the SCADA system, and writing the data variable to be updated and stored into a data memory table in a variable name and variable value mode; if there is no data for the variable name, then the SQL statement inserts the variable and the variable value into the dataram table.
7. The SCADA system-based big Data expansion saving method of claim 4, wherein in S4, after the Data variable is sent to the Data Center database, the Data Center database workflow is as follows:
the method comprises the following steps: classifying the sent data variables, wherein the types of the data variables are divided into control instruction variables and numerical variables;
step two: judging the type of the data variable;
step three: the user carries out data analysis on the numerical variable through the WEB Server so as to reset the numerical variable; the user changes the control instruction variable through the WEB Server, the Data Center database performs batch processing on the control instruction variable, and then the new control instruction variable is sent to the Data Transfer application program through remote Data exchange.
8. The SCADA system-based big data expansion storage method according to claim 4, wherein in the second step, "judging the type of the data variable" is specifically as follows: if the Data Center database is a numerical variable, judging whether a variable table exists in the Data Center database, if the variable table does not exist, establishing the variable table by paging according to years, then storing the numerical variable into the variable table, if the variable table pre-exists in the Data Center database, directly storing the numerical variable into the variable table, remotely logging in a WEB Server by a user, and checking the numerical variable through a picture control picture;
If the control instruction variable is the control instruction variable, the control instruction variable is directly sent to a graph control picture of the WEB Server for a user to check.
9. A computer readable storage medium, on which a computer program is stored, which when executed by a processor implements a SCADA system based big data extension saving method of any of claims 4 to 8.
CN202210334659.5A 2022-03-31 2022-03-31 SCADA-based big data expansion storage system and method Pending CN114756536A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210334659.5A CN114756536A (en) 2022-03-31 2022-03-31 SCADA-based big data expansion storage system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210334659.5A CN114756536A (en) 2022-03-31 2022-03-31 SCADA-based big data expansion storage system and method

Publications (1)

Publication Number Publication Date
CN114756536A true CN114756536A (en) 2022-07-15

Family

ID=82329621

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210334659.5A Pending CN114756536A (en) 2022-03-31 2022-03-31 SCADA-based big data expansion storage system and method

Country Status (1)

Country Link
CN (1) CN114756536A (en)

Similar Documents

Publication Publication Date Title
CN108388223B (en) Equipment control system based on data closed loop for intelligent factory
EP2294487B1 (en) Actuator for hvac systems and method for operating the actuator
CN1737790B (en) Device and method of at least one part of automation configuration for industrial system
RU2394262C2 (en) System for configuring devices and method of preventing abnormal situations on production plant
US8442938B2 (en) Child data structure update in data management system
EP1542105B1 (en) Industrial control system and data processing method therefor
US7142929B2 (en) Process data management
CN1936751A (en) Use of a really simple syndication communication format in process control
CN112995327B (en) Cloud platform system, factory side, industrial cloud platform and service docking system
CN112311742A (en) Method, device and system for adapting field gateway data
JP2002023812A (en) Automatic control system and automatic control method
CN113395180B (en) Industrial real-time big data acquisition and release method and industrial real-time big data platform
CN114756536A (en) SCADA-based big data expansion storage system and method
Prist et al. Cyber-physical manufacturing systems: An architecture for sensor integration, production line simulation and cloud services
CN116643542A (en) Oil field station digital twin process configuration method, system and device based on low-code development platform
CN116723094A (en) Device access method, device, computer device and storage medium
EP3582034A1 (en) Method and apparatus, in the field of automation technology, of updating processing data
JP2000330622A (en) Remotely operable arithmetic type system
Tang et al. Development of upper computer software based on OPC UA technology
CN113726644B (en) Method and system for intelligent gateway data acquisition
JP2004178157A (en) Programmable logic controller supporting device
CN109765840A (en) High-grade, digitally controlled machine tools tool changing forecasting system
US20240039820A1 (en) Messaging protocol for configuring remote terminal unit
CN117590801B (en) Cloud edge cooperative 5G edge control device
KR20220095481A (en) Distributed Control Method And Distributed Control System Of Network-Based Plant Process Control System

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination