Software-defined industrial IoT control method and system based on cloud services
Through the cloud service-based software definition method, the functional expansion and remote operation and maintenance of industrial control terminals are realized, which solves the problem of difficult upgrade of existing terminals, reduces costs and improves system management efficiency.
Patent Information
- Application Number
- CN202111242227.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-10-25
- Publication Date
- 2025-09-02
- Estimated Expiration
- 2041-10-25
AI Technical Summary
The existing industrial control terminals are difficult to expand and upgrade, resulting in enterprises needing to purchase new physical equipment, increasing procurement and commissioning costs, and lacking remote operation and maintenance and security management functions.
Through the software-defined method based on cloud services, the terminal function application code is compiled to form an executable file, uploaded to the cloud service platform for authentication and issuance, the terminal burns basic components for registration, receives and executes functional applications, realizes functional expansion, and includes security authentication and management modules.
It realizes terminal function expansion without replacing hardware equipment, provides remote operation and maintenance and security management, solves the problem of difficult upgrade of dedicated terminals, reduces costs and improves system scheduling and management efficiency.
Smart Images

Figure CN116032978B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a method for publishing and installing wireless applications, and in particular to a software-defined industrial IoT control method and system based on cloud services. Background Art
[0002] Currently, the control terminals used in many industrial fields are dedicated control terminals for a certain control field, and often only complete one or two special control purposes. With the intelligent upgrading of production modes in the industrial field, it is necessary to monitor and control more statuses of production equipment at the same time to improve production efficiency. For example, in the past, only start and stop production instructions were issued manually through the terminal, but now it is necessary to expand other monitoring items such as temperature and video signals to assist in intelligent production judgment. However, since the original control terminal is a single dedicated terminal, it cannot be directly expanded and new physical equipment must be purchased to complete the expansion. The expansion of new equipment requires increased procurement costs and debugging costs, resulting in additional expenses for the enterprise.
[0003] For example, a factory currently has several PLCs controlling automatic processing equipment such as injection molding machines and rolling mills. These equipment are connected to the PLCs via a RS485 serial port through a control terminal A, which uses the MODBUS protocol to collect PLC runtime status information. Now, the production line needs to be upgraded and a video surveillance function needs to be added so that the production site can be viewed at any time. However, the original control terminal does not have a video monitor interface, and the original software program in the control terminal does not support the video function. As a result, the need to add the video surveillance function requires the purchase of additional equipment. The present invention provides a solution. The present invention provides a universal industrial control terminal capable of expanding functions according to software. The terminal includes a universal processor CPU, a non-volatile memory NVM, and physical interfaces commonly used in the industrial control field, such as a VGA interface, an HDMI interface, an Ethernet interface, an RS232 interface, an RS422 interface, an RS485 interface, a CAN interface, and an optional 5G / 4G / WIFI wireless interface. Functional modules required by the current scenario and physically supported by the terminal can be remotely sent to a designated control terminal through the cloud, realizing a physical terminal with multiple uses defined by software, solving the problem that dedicated terminals in the industrial control field are difficult to expand and upgrade, and providing basic support for remote operation and maintenance of equipment and system scheduling management.
[0004] Patent document CN103250133 (application number: CN201180049095.0) discloses a "software-defined wireless terminal device and method for publishing and installing wireless applications." The software-defined wireless terminal device of the invention is a software-defined wireless terminal device that is adaptively configured according to wireless applications, including: a storage unit, a microprocessor, and a baseband accelerator. The microprocessor is used to control the baseband accelerator to send control instructions and information to be sent from the upper layer to the baseband accelerator, read code from the storage unit, and the code includes a wireless control layer that sends information received from the baseband accelerator to the upper layer and a baseband driver layer that enables the wireless control layer and the baseband accelerator to connect and implement the code. The code is also configured to load at least one functional module required for implementing the wireless application from the storage unit into the baseband accelerator. The functional modules loaded into the baseband accelerator are configured to include a base rate control functional module that implements control of the baseband accelerator. This invention focuses on wireless terminal devices such as mobile phones and base stations, and the software functions defined are wireless baseband applications, which are quite different from the application field of this technology. This technology is used in the industrial control field, and the software defines industrial control scenario functions such as data acquisition, automatic control, video monitoring, etc., and the peer solution requires setting up a compiler module on the terminal, which is technically complex and does not require this module. In addition, the peer solution does not have a cloud platform part, which makes it impossible to remotely configure functional applications, and there is no explanation on how to monitor the operation of the application after installation and how to remotely maintain it. At the same time, the peer solution does not have a security management module, and there are potential security defects. Summary of the Invention
[0005] In view of the defects in the prior art, the purpose of the present invention is to provide a software-defined industrial Internet of Things control method and system based on cloud services.
[0006] According to the present invention, a cloud service-based software-defined industrial IoT control method is provided, comprising:
[0007] Step S1: compile the terminal function application code to form an executable application file, and package the executable application file and its corresponding application metadata information file to form a function application package;
[0008] Step S2: The function application package is uploaded to the cloud service platform. The cloud service platform authenticates the industrial IoT control terminal and selects and issues the function application according to the function application required by the industrial IoT control terminal.
[0009] Step S3: The industrial IoT control terminal burns the basic components, starts the industrial IoT control terminal, reads the built-in product serial number of the terminal device, generates encrypted authentication information, and registers with the cloud service platform;
[0010] Step S4: The industrial IoT control terminal application receives the functional application issued by the cloud service platform, starts the application to execute the corresponding function to complete the functional expansion of the industrial IoT control terminal.
[0011] Preferably, in step S1:
[0012] Step S1.1: Develop and package the functional application package. The application provider specifies the application type and defines the physical hardware support for the application in accordance with the platform's relevant standards. Different applications have different constraints on the platform's physical hardware.
[0013] Data acquisition and control applications include MODBUS protocol applications, ProfiBus applications, OPC protocol applications, OPCUA protocol applications, SNAP7 protocol applications, and CAN protocol applications. For data acquisition and control protocols, the physical interface used by the protocol is defined in the metadata.
[0014] Step S1.2: Use the development language to develop the application and provide platform-compliant control command interfaces in the application. These interfaces include:
[0015] Implement the application startup interface: its function is to start the application and feedback the application startup result information to the caller. 0 is normal, non-zero is abnormal, and the abnormal information code is defined in the form of application name + abnormal code;
[0016] Implement the application stop interface: its function is to stop the application and feedback the application stop result information to the caller. 0 indicates normal operation, non-zero indicates abnormality. The abnormal information code can be defined in the form of application name + abnormality code;
[0017] Implement the application running status feedback interface: its function is to feedback the application running status. Normal operation is feedback 0, and other is abnormal. The abnormal information code can be composed of application name + abnormal code;
[0018] Implement the application operation log acquisition interface: its function is to upload the application log information in the form of a string to the control module;
[0019] Step S1.3: Compile the functional application code for multiple target platforms. Currently, the terminals connected to this platform run on the X86 platform and the ARM platform, and the operating systems support Windows, Linux, and UNIX. The functional application needs to compile the Windows, Linux, and UNIX executable programs corresponding to the X86 platform and the ARM platform;
[0020] Step S1.4: Configure the functional application meta-information. The functional application meta-information is stored in XML file format. The cloud service platform generates an application configuration interface based on the configuration information and provides the function of remote dynamic configuration of the application. The information provided includes:
[0021] The name and type of the functional application. A unique application ID will be generated for each functional application platform.
[0022] Provider information of the functional application, including provider name and contact information;
[0023] The current version number of the functional application and update-related historical information;
[0024] Functional application configuration information, used to support remote modification of functional application configuration information;
[0025] Provide a dynamic configuration section in the XML configuration file. The configuration file uses predefined dynamic input forms, including text boxes, drop-down boxes, and selection boxes. The cloud service platform that stores the functional application uses these dynamic input boxes to generate the functional application parameter input page and sends it to the specified remote terminal as needed.
[0026] Step S1.5: compress and package the compiled functional application executable file and metadata configuration file using the cross-platform packaging format tar. Different directories are used in the package file to distinguish executable files under different platforms.
[0027] Preferably, in step S2:
[0028] Step S2.1: Upload and use functional applications. The application provider logs in to the industrial application management center of the cloud service platform and fills in the new functional application information, including the name, type, current version, and R&D party information. The packaged functional application package is uploaded to the industrial application management center of the cloud service platform.
[0029] Step S2.2: Review the uploaded functional application to see if it meets the upload standards. If not, request modification. The cloud service platform's industrial application management center manages the functional application versions, displays the latest version of the driver by default, and enables users to switch to the version they need based on their needs.
[0030] Step S2.3: The cloud service platform extracts the basic information of the functional application from the metadata configuration file of the functional application package and displays it to ordinary users. It extracts the remote parameter configuration information of the functional application from the metadata configuration file. The platform automatically identifies the configuration file information and generates a remote configuration input page for this type of application. The platform extracts the functional application information through keywords and generates remote configuration information based on the configuration keywords.
[0031] Preferably, in step S3:
[0032] Step S3.1: Burn and install the security authentication module, application management module, and application receiving module in the industrial IoT control terminal device;
[0033] The security authentication module is responsible for the secure access authentication of communications between terminal devices and the cloud service platform. The application receiving module monitors the port and receives functional application packages from the cloud service platform. The application management module is responsible for starting and stopping applications, obtaining status information and log information from applications according to control commands from the cloud service platform, and uploading them to the cloud service platform.
[0034] The above modules are automatically started when the IoT control terminal is powered on, registered as system services or daemons, and will be triggered to start again by the operating system if they exit.
[0035] Step S3.2: After the industrial IoT control terminal is powered on, the security authentication module reads the unique product serial number of the terminal, generates a JSON string, and converts it into a license string through the built-in BASE64 conversion encoding;
[0036] The security authentication module operation module has a built-in terminal health status monitoring program to check the terminal's hardware information and software system operating environment. When the check is passed, it sends a license string to the cloud service platform device authentication module. The platform device authentication management module performs reverse conversion and decoding matching based on the device product serial number information stored in the platform center. When the match is successful, the terminal is a legal device and can access the platform for data communication.
[0037] Preferably, in step S4:
[0038] Step S4.1: The cloud service platform sends the functional application to the industrial IoT control terminal. There are two modes for sending the functional application: first-time sending and update and upgrade:
[0039] In the cloud service platform's functional application management center, users select functional applications that need to be delivered to the terminal based on the extended functions currently required by the terminal. If it is the first time to deliver, fill in the required application parameters in the functional application remote configuration page. If it is an update or upgrade, the platform will extract the last filled information by default. The cloud service platform will uniformly deliver functional applications to the terminals connected to the platform, and select the designated terminal to deliver functional applications. For a certain terminal, switch the functional application version through the functional application management center and deliver the specified version of the functional application.
[0040] Step S4.2: The application receiving module in the terminal receives the functional application package sent by the cloud service platform and performs a cyclic redundancy check on the application package. If the check fails, a resend command is sent to the cloud service platform. If the check passes, the application installation operation begins.
[0041] If it is the first time to send the application, the application receiving module will create the application working path and configuration path instance, place the decompressed application execution program and configuration information in the directory respectively, and call the application startup interface in the application to run the application.
[0042] If the application is updated, the application receiving module will save the working configuration information in use, create a configuration information storage directory, place the execution program in the directory, decompress the configuration information, copy the information in the directory back to the application, and then call the application startup interface to run the application;
[0043] Step S4.3: After the functional application is started, the application management module cyclically calls the application running status feedback interface at a preset period. If the application running status is abnormal, the application management program uploads an alarm information to the cloud service platform;
[0044] Step S4.4: The cloud service platform receives the alarm information and determines the application status based on the knowledge base in the device operation and maintenance monitoring module built into the cloud service platform. The cloud service platform device operation and maintenance monitoring module records each historical fault information, performs statistical classification on it, and displays the application and terminal status information on the front-end interface.
[0045] Step S4.5: In addition to obtaining status information, the cloud service platform sends a log acquisition command to the application control module according to demand. The functional application module outputs different levels of logs according to the log level. The cloud service platform specifies to upload a terminal log according to demand and obtains the log according to the filtering conditions. The equipment operation and maintenance personnel summarize and analyze the logs online through the equipment monitoring and operation module to remotely troubleshoot and solve the problem.
[0046] According to the present invention, a cloud service-based software-defined industrial IoT control system is provided, comprising:
[0047] Module M1: compile the terminal function application code to form an executable application file, and package the executable application file and its corresponding application metadata information file to form a function application package;
[0048] Module M2: The function application package is uploaded to the cloud service platform. The cloud service platform authenticates the industrial IoT control terminal and selects and issues the function application according to the function application required by the industrial IoT control terminal.
[0049] Module M3: Burns the basic components of the industrial IoT control terminal, starts the industrial IoT control terminal, reads the built-in product serial number of the terminal device, generates encrypted authentication information and registers with the cloud service platform;
[0050] Module M4: The industrial IoT control terminal application receives the functional application issued by the cloud service platform, starts the application to execute the corresponding function to complete the functional expansion of the industrial IoT control terminal.
[0051] Preferably, in the module M1:
[0052] Module M1.1: Develop and package functional application packages. Application providers must clearly define the application type, define the application's physical hardware support according to the platform's relevant standards, and generate information about the different constraints imposed on the platform's physical hardware by different applications.
[0053] Data acquisition and control applications include MODBUS protocol applications, ProfiBus applications, OPC protocol applications, OPCUA protocol applications, SNAP7 protocol applications, and CAN protocol applications. For data acquisition and control protocols, the physical interface used by the protocol is defined in the metadata.
[0054] Module M1.2: Use the development language to develop applications and provide platform-compliant control command interfaces in the application. These interfaces include:
[0055] Implement the application startup interface: its function is to start the application and feedback the application startup result information to the caller. 0 is normal, non-zero is abnormal, and the abnormal information code is defined in the form of application name + abnormal code;
[0056] Implement the application stop interface: its function is to stop the application and feedback the application stop result information to the caller. 0 indicates normal operation, non-zero indicates abnormality. The abnormal information code can be defined in the form of application name + abnormality code;
[0057] Implement the application running status feedback interface: its function is to feedback the application running status. Normal operation is feedback 0, and other is abnormal. The abnormal information code can be composed of application name + abnormal code;
[0058] Implement the application operation log acquisition interface: its function is to upload the application log information in the form of a string to the control module;
[0059] Module M1.3: Compile the functional application code for multiple target platforms. Currently, the terminals connected to this platform run on the X86 platform and the ARM platform, and the operating systems support Windows, Linux, and UNIX. The functional application needs to compile the Windows, Linux, and UNIX executable programs corresponding to the X86 platform and the ARM platform;
[0060] Module M1.4: Configure the functional application meta-information. The functional application meta-information is stored in XML file format. The cloud service platform generates the application configuration interface based on the configuration information and provides the function of remote dynamic configuration of the application. The information provided includes:
[0061] The name and type of the functional application. A unique application ID will be generated for each functional application platform.
[0062] Provider information of the functional application, including provider name and contact information;
[0063] The current version number of the functional application and update-related historical information;
[0064] Functional application configuration information, used to support remote modification of functional application configuration information;
[0065] Provide a dynamic configuration section in the XML configuration file. The configuration file uses predefined dynamic input forms, including text boxes, drop-down boxes, and selection boxes. The cloud service platform that stores the functional application uses these dynamic input boxes to generate the functional application parameter input page and sends it to the specified remote terminal as needed.
[0066] Module M1.5: Compress and package the compiled functional application executable file and metadata configuration file using the cross-platform packaging format tar. Different directories are used in the packaged file to distinguish executable files on different platforms.
[0067] Preferably, in the module M2:
[0068] Module M2.1: Functional application upload and use application. Functional application providers log in to the cloud service platform industrial application management center and fill in the new functional application information, including name, type, current version, and R&D party information. The packaged functional application package is uploaded to the cloud service platform industrial application management center.
[0069] Module M2.2: Review uploaded functional applications to see if they meet upload standards. If not, request modification. The cloud service platform's industrial application management center manages versions of functional applications, displaying the latest version of the driver by default, allowing users to switch to the version they need based on their needs.
[0070] Module M2.3: The cloud service platform extracts the basic information of the functional application from the metadata configuration file of the functional application package and displays it to ordinary users. It also extracts the remote parameter configuration information of the functional application from the metadata configuration file. The platform automatically identifies the configuration file information and generates a remote configuration input page for this type of application. The platform extracts the functional application information through keywords and generates remote configuration information based on the configuration keywords.
[0071] Preferably, in the module M3:
[0072] Module M3.1: Burn and install the security authentication module, application management module, and application receiving module in the industrial IoT control terminal device;
[0073] The security authentication module is responsible for the secure access authentication of communications between terminal devices and the cloud service platform. The application receiving module monitors the port and receives functional application packages from the cloud service platform. The application management module is responsible for starting and stopping applications, obtaining status information and log information from applications according to control commands from the cloud service platform, and uploading them to the cloud service platform.
[0074] The above modules are automatically started when the IoT control terminal is powered on, registered as system services or daemons, and will be triggered to start again by the operating system if they exit.
[0075] Module M3.2: After the industrial IoT control terminal is powered on and started, the security authentication module reads the unique product serial number of the terminal, generates a JSON string, and converts it into a license string through the built-in BASE64 conversion encoding;
[0076] The security authentication module operation module has a built-in terminal health status monitoring program to check the terminal's hardware information and software system operating environment. When the check is passed, it sends a license string to the cloud service platform device authentication module. The platform device authentication management module performs reverse conversion and decoding matching based on the device product serial number information stored in the platform center. When the match is successful, the terminal is a legal device and can access the platform for data communication.
[0077] Preferably, in the module M4:
[0078] Module M4.1: The cloud service platform sends functional applications to the industrial IoT control terminal. There are two modes for sending functional applications: initial delivery and update and upgrade.
[0079] In the cloud service platform's functional application management center, users select functional applications that need to be delivered to the terminal based on the extended functions currently required by the terminal. If it is the first time to deliver, fill in the required application parameters in the functional application remote configuration page. If it is an update or upgrade, the platform will extract the last filled information by default. The cloud service platform will uniformly deliver functional applications to the terminals connected to the platform, and select the designated terminal to deliver functional applications. For a certain terminal, switch the functional application version through the functional application management center and deliver the specified version of the functional application.
[0080] Module M4.2: The application receiving module in the terminal receives the functional application package issued by the cloud service platform and performs a cyclic redundancy check on the application package. If the check fails, a resend command is sent to the cloud service platform. If the check passes, the application installation operation is started;
[0081] If it is the first time to send the application, the application receiving module will create the application working path and configuration path instance, place the decompressed application execution program and configuration information in the directory respectively, and call the application startup interface in the application to run the application.
[0082] If the application is updated, the application receiving module will save the working configuration information in use, create a configuration information storage directory, place the execution program in the directory, decompress the configuration information, copy the information in the directory back to the application, and then call the application startup interface to run the application;
[0083] Module M4.3: After the functional application is started, the application management module cyclically calls the application operation status feedback interface at a preset period. If the application operation status is abnormal, the application management program uploads alarm information to the cloud service platform;
[0084] Module M4.4: The cloud service platform receives alarm information, determines the application status based on the knowledge base in the cloud service platform's built-in device operation and maintenance monitoring module, and decides on the handling method based on the judgment result. The cloud service platform's device operation and maintenance monitoring module records each historical fault information, performs statistical classification on it, and displays application and terminal status information on the front-end interface;
[0085] Module M4.5: In addition to obtaining status information, the cloud service platform sends a log acquisition command to the application control module as needed. The functional application module outputs different levels of logs according to the log level. The cloud service platform specifies to upload a terminal log as needed and obtains the log according to the filtering conditions. The equipment operation and maintenance personnel summarize and analyze the logs online through the equipment monitoring and operation module to remotely troubleshoot and solve the problem.
[0086] Compared with the prior art, the present invention has the following beneficial effects:
[0087] 1. By adding functional applications, the control terminal can expand the control functions of the industrial control terminal without replacing new hardware devices. This allows a physical terminal to be used for multiple purposes as defined by software, solving the problem of difficulty in expanding and upgrading dedicated terminals in the industrial control field.
[0088] 2. The present invention provides basic support for remote operation and maintenance of equipment and system scheduling management;
[0089] 3. The present invention has a security management module, which eliminates potential security defects. BRIEF DESCRIPTION OF THE DRAWINGS
[0090] Other features, objects and advantages of the present invention will become more apparent upon reading the detailed description of non-limiting embodiments with reference to the following drawings:
[0091] Figure 1 The cloud service software of the present invention defines the industrial IoT control terminal architecture block diagram;
[0092] Figure 2 Define the overall process of industrial IoT control terminal for the cloud service software of the present invention;
[0093] Figure 3 Develop and package processes for the functional applications of the present invention;
[0094] Figure 4 Upload and select download for the functional application of the present invention;
[0095] Figure 5 Deliver functional applications to the cloud platform to expand terminal functions;
[0096] Figure 6 This is a schematic diagram of the industrial Internet of Things control terminal in this design. DETAILED DESCRIPTION
[0097] The present invention will be described in detail below with reference to specific embodiments. The following examples will help those skilled in the art to further understand the present invention, but are not intended to limit the present invention in any form. It should be noted that, for those skilled in the art, several changes and improvements can be made without departing from the scope of the present invention. These all fall within the scope of protection of the present invention.
[0098] Example 1:
[0099] According to the present invention, a software-defined industrial IoT control method based on cloud services is provided. Figures 1-6 As shown, including:
[0100] Step S1: compile the terminal function application code to form an executable application file, and package the executable application file and its corresponding application metadata information file to form a function application package;
[0101] Step S2: The function application package is uploaded to the cloud service platform. The cloud service platform authenticates the industrial IoT control terminal and selects and issues the function application according to the function application required by the industrial IoT control terminal.
[0102] Step S3: The industrial IoT control terminal burns the basic components, starts the industrial IoT control terminal, reads the built-in product serial number of the terminal device, generates encrypted authentication information, and registers with the cloud service platform;
[0103] Step S4: The industrial IoT control terminal application receives the functional application issued by the cloud service platform, starts the application to execute the corresponding function to complete the functional expansion of the industrial IoT control terminal.
[0104] Preferably, in step S1:
[0105] Step S1.1: Develop and package the functional application package. The application provider specifies the application type and defines the physical hardware support for the application in accordance with the platform's relevant standards. Different applications have different constraints on the platform's physical hardware.
[0106] Data acquisition and control applications include MODBUS protocol applications, ProfiBus applications, OPC protocol applications, OPCUA protocol applications, SNAP7 protocol applications, and CAN protocol applications. For data acquisition and control protocols, the physical interface used by the protocol is defined in the metadata.
[0107] Step S1.2: Use the development language to develop the application and provide platform-compliant control command interfaces in the application. These interfaces include:
[0108] Implement the application startup interface: its function is to start the application and feedback the application startup result information to the caller. 0 is normal, non-zero is abnormal, and the abnormal information code is defined in the form of application name + abnormal code;
[0109] Implement the application stop interface: its function is to stop the application and feedback the application stop result information to the caller. 0 indicates normal operation, non-zero indicates abnormality. The abnormal information code can be defined in the form of application name + abnormality code;
[0110] Implement the application running status feedback interface: its function is to feedback the application running status. Normal operation is feedback 0, and other is abnormal. The abnormal information code can be composed of application name + abnormal code;
[0111] Implement the application operation log acquisition interface: its function is to upload the application log information in the form of a string to the control module;
[0112] Step S1.3: Compile the functional application code for multiple target platforms. Currently, the terminals connected to this platform run on the X86 platform and the ARM platform, and the operating systems support Windows, Linux, and UNIX. The functional application needs to compile the Windows, Linux, and UNIX executable programs corresponding to the X86 platform and the ARM platform;
[0113] Step S1.4: Configure the functional application meta-information. The functional application meta-information is stored in XML file format. The cloud service platform generates an application configuration interface based on the configuration information and provides the function of remote dynamic configuration of the application. The information provided includes:
[0114] The name and type of the functional application. A unique application ID will be generated for each functional application platform.
[0115] Provider information of the functional application, including provider name and contact information;
[0116] The current version number of the functional application and update-related historical information;
[0117] Functional application configuration information, used to support remote modification of functional application configuration information;
[0118] Provide a dynamic configuration section in the XML configuration file. The configuration file uses predefined dynamic input forms, including text boxes, drop-down boxes, and selection boxes. The cloud service platform that stores the functional application uses these dynamic input boxes to generate the functional application parameter input page and sends it to the specified remote terminal as needed.
[0119] Step S1.5: compress and package the compiled functional application executable file and metadata configuration file using the cross-platform packaging format tar. Different directories are used in the package file to distinguish executable files under different platforms.
[0120] Preferably, in step S2:
[0121] Step S2.1: Upload and use functional applications. The application provider logs in to the industrial application management center of the cloud service platform and fills in the new functional application information, including the name, type, current version, and R&D party information. The packaged functional application package is uploaded to the industrial application management center of the cloud service platform.
[0122] Step S2.2: Review the uploaded functional application to see if it meets the upload standards. If not, request modification. The cloud service platform's industrial application management center manages the functional application versions, displays the latest version of the driver by default, and enables users to switch to the version they need based on their needs.
[0123] Step S2.3: The cloud service platform extracts the basic information of the functional application from the metadata configuration file of the functional application package and displays it to ordinary users. It extracts the remote parameter configuration information of the functional application from the metadata configuration file. The platform automatically identifies the configuration file information and generates a remote configuration input page for this type of application. The platform extracts the functional application information through keywords and generates remote configuration information based on the configuration keywords.
[0124] Preferably, in step S3:
[0125] Step S3.1: Burn and install the security authentication module, application management module, and application receiving module in the industrial IoT control terminal device;
[0126] The security authentication module is responsible for the secure access authentication of communications between terminal devices and the cloud service platform. The application receiving module monitors the port and receives functional application packages from the cloud service platform. The application management module is responsible for starting and stopping applications, obtaining status information and log information from applications according to control commands from the cloud service platform, and uploading them to the cloud service platform.
[0127] The above modules are automatically started when the IoT control terminal is powered on, registered as system services or daemons, and will be triggered to start again by the operating system if they exit.
[0128] Step S3.2: After the industrial IoT control terminal is powered on, the security authentication module reads the unique product serial number of the terminal, generates a JSON string, and converts it into a license string through the built-in BASE64 conversion encoding;
[0129] The security authentication module operation module has a built-in terminal health status monitoring program to check the terminal's hardware information and software system operating environment. When the check is passed, it sends a license string to the cloud service platform device authentication module. The platform device authentication management module performs reverse conversion and decoding matching based on the device product serial number information stored in the platform center. When the match is successful, the terminal is a legal device and can access the platform for data communication.
[0130] Preferably, in step S4:
[0131] Step S4.1: The cloud service platform sends the functional application to the industrial IoT control terminal. There are two modes for sending the functional application: first-time sending and update and upgrade:
[0132] In the cloud service platform's functional application management center, users select functional applications that need to be delivered to the terminal based on the extended functions currently required by the terminal. If it is the first time to deliver, fill in the required application parameters in the functional application remote configuration page. If it is an update or upgrade, the platform will extract the last filled information by default. The cloud service platform will uniformly deliver functional applications to the terminals connected to the platform, and select the designated terminal to deliver functional applications. For a certain terminal, switch the functional application version through the functional application management center and deliver the specified version of the functional application.
[0133] Step S4.2: The application receiving module in the terminal receives the functional application package sent by the cloud service platform and performs a cyclic redundancy check on the application package. If the check fails, a resend command is sent to the cloud service platform. If the check passes, the application installation operation begins.
[0134] If it is the first time to send the application, the application receiving module will create the application working path and configuration path instance, place the decompressed application execution program and configuration information in the directory respectively, and call the application startup interface in the application to run the application.
[0135] If the application is updated, the application receiving module will save the working configuration information in use, create a configuration information storage directory, place the execution program in the directory, decompress the configuration information, copy the information in the directory back to the application, and then call the application startup interface to run the application;
[0136] Step S4.3: After the functional application is started, the application management module cyclically calls the application running status feedback interface at a preset period. If the application running status is abnormal, the application management program uploads an alarm information to the cloud service platform;
[0137] Step S4.4: The cloud service platform receives the alarm information and determines the application status based on the knowledge base in the device operation and maintenance monitoring module built into the cloud service platform. The cloud service platform device operation and maintenance monitoring module records each historical fault information, performs statistical classification on it, and displays the application and terminal status information on the front-end interface.
[0138] Step S4.5: In addition to obtaining status information, the cloud service platform sends a log acquisition command to the application control module according to demand. The functional application module outputs different levels of logs according to the log level. The cloud service platform specifies to upload a terminal log according to demand and obtains the log according to the filtering conditions. The equipment operation and maintenance personnel summarize and analyze the logs online through the equipment monitoring and operation module to remotely troubleshoot and solve the problem.
[0139] Example 2:
[0140] Example 2 is a preferred example of Example 1 and is used to illustrate the present invention in more detail.
[0141] Those skilled in the art may understand the cloud-service-based software-defined industrial IoT control method provided by the present invention as a specific implementation of a cloud-service-based software-defined industrial IoT control system, that is, the cloud-service-based software-defined industrial IoT control system may be implemented by executing the step flow of the cloud-service-based software-defined industrial IoT control method.
[0142] According to the present invention, a cloud service-based software-defined industrial IoT control system is provided, comprising:
[0143] Module M1: compile the terminal function application code to form an executable application file, and package the executable application file and its corresponding application metadata information file to form a function application package;
[0144] Module M2: The function application package is uploaded to the cloud service platform. The cloud service platform authenticates the industrial IoT control terminal and selects and issues the function application according to the function application required by the industrial IoT control terminal.
[0145] Module M3: Burns the basic components of the industrial IoT control terminal, starts the industrial IoT control terminal, reads the built-in product serial number of the terminal device, generates encrypted authentication information and registers with the cloud service platform;
[0146] Module M4: The industrial IoT control terminal application receives the functional application issued by the cloud service platform, starts the application to execute the corresponding function to complete the functional expansion of the industrial IoT control terminal.
[0147] Preferably, in the module M1:
[0148] Module M1.1: Develop and package functional application packages. Application providers must clearly define the application type, define the application's physical hardware support according to the platform's relevant standards, and generate information about the different constraints imposed on the platform's physical hardware by different applications.
[0149] Data acquisition and control applications include MODBUS protocol applications, ProfiBus applications, OPC protocol applications, OPCUA protocol applications, SNAP7 protocol applications, and CAN protocol applications. For data acquisition and control protocols, the physical interface used by the protocol is defined in the metadata.
[0150] Module M1.2: Use the development language to develop applications and provide platform-compliant control command interfaces in the application. These interfaces include:
[0151] Implement the application startup interface: its function is to start the application and feedback the application startup result information to the caller. 0 is normal, non-zero is abnormal, and the abnormal information code is defined in the form of application name + abnormal code;
[0152] Implement the application stop interface: its function is to stop the application and feedback the application stop result information to the caller. 0 indicates normal operation, non-zero indicates abnormality. The abnormal information code can be defined in the form of application name + abnormality code;
[0153] Implement the application running status feedback interface: its function is to feedback the application running status. Normal operation is feedback 0, and other is abnormal. The abnormal information code can be composed of application name + abnormal code;
[0154] Implement the application operation log acquisition interface: its function is to upload the application log information in the form of a string to the control module;
[0155] Module M1.3: Compile the functional application code for multiple target platforms. Currently, the terminals connected to this platform run on the X86 platform and the ARM platform, and the operating systems support Windows, Linux, and UNIX. The functional application needs to compile the Windows, Linux, and UNIX executable programs corresponding to the X86 platform and the ARM platform;
[0156] Module M1.4: Configure the functional application meta-information. The functional application meta-information is stored in XML file format. The cloud service platform generates the application configuration interface based on the configuration information and provides the function of remote dynamic configuration of the application. The information provided includes:
[0157] The name and type of the functional application. A unique application ID will be generated for each functional application platform.
[0158] Provider information of the functional application, including provider name and contact information;
[0159] The current version number of the functional application and update-related historical information;
[0160] Functional application configuration information, used to support remote modification of functional application configuration information;
[0161] Provide a dynamic configuration section in the XML configuration file. The configuration file uses predefined dynamic input forms, including text boxes, drop-down boxes, and selection boxes. The cloud service platform that stores the functional application uses these dynamic input boxes to generate the functional application parameter input page and sends it to the specified remote terminal as needed.
[0162] Module M1.5: Compress and package the compiled functional application executable file and metadata configuration file using the cross-platform packaging format tar. Different directories are used in the packaged file to distinguish executable files on different platforms.
[0163] Preferably, in the module M2:
[0164] Module M2.1: Functional application upload and use application. Functional application providers log in to the cloud service platform industrial application management center and fill in the new functional application information, including name, type, current version, and R&D party information. The packaged functional application package is uploaded to the cloud service platform industrial application management center.
[0165] Module M2.2: Review uploaded functional applications to see if they meet upload standards. If not, request modification. The cloud service platform's industrial application management center manages versions of functional applications, displaying the latest version of the driver by default, allowing users to switch to the version they need based on their needs.
[0166] Module M2.3: The cloud service platform extracts the basic information of the functional application from the metadata configuration file of the functional application package and displays it to ordinary users. It also extracts the remote parameter configuration information of the functional application from the metadata configuration file. The platform automatically identifies the configuration file information and generates a remote configuration input page for this type of application. The platform extracts the functional application information through keywords and generates remote configuration information based on the configuration keywords.
[0167] Preferably, in the module M3:
[0168] Module M3.1: Burn and install the security authentication module, application management module, and application receiving module in the industrial IoT control terminal device;
[0169] The security authentication module is responsible for the secure access authentication of communications between terminal devices and the cloud service platform. The application receiving module monitors the port and receives functional application packages from the cloud service platform. The application management module is responsible for starting and stopping applications, obtaining status information and log information from applications according to control commands from the cloud service platform, and uploading them to the cloud service platform.
[0170] The above modules are automatically started when the IoT control terminal is powered on, registered as system services or daemons, and will be triggered to start again by the operating system if they exit.
[0171] Module M3.2: After the industrial IoT control terminal is powered on and started, the security authentication module reads the unique product serial number of the terminal, generates a JSON string, and converts it into a license string through the built-in BASE64 conversion encoding;
[0172] The security authentication module operation module has a built-in terminal health status monitoring program to check the terminal's hardware information and software system operating environment. When the check is passed, it sends a license string to the cloud service platform device authentication module. The platform device authentication management module performs reverse conversion and decoding matching based on the device product serial number information stored in the platform center. When the match is successful, the terminal is a legal device and can access the platform for data communication.
[0173] Preferably, in the module M4:
[0174] Module M4.1: The cloud service platform sends functional applications to the industrial IoT control terminal. There are two modes for sending functional applications: initial delivery and update and upgrade.
[0175] In the cloud service platform's functional application management center, users select functional applications that need to be delivered to the terminal based on the extended functions currently required by the terminal. If it is the first time to deliver, fill in the required application parameters in the functional application remote configuration page. If it is an update or upgrade, the platform will extract the last filled information by default. The cloud service platform will uniformly deliver functional applications to the terminals connected to the platform, and select the designated terminal to deliver functional applications. For a certain terminal, switch the functional application version through the functional application management center and deliver the specified version of the functional application.
[0176] Module M4.2: The application receiving module in the terminal receives the functional application package issued by the cloud service platform and performs a cyclic redundancy check on the application package. If the check fails, a resend command is sent to the cloud service platform. If the check passes, the application installation operation is started;
[0177] If it is the first time to send the application, the application receiving module will create the application working path and configuration path instance, place the decompressed application execution program and configuration information in the directory respectively, and call the application startup interface in the application to run the application.
[0178] If the application is updated, the application receiving module will save the working configuration information in use, create a configuration information storage directory, place the execution program in the directory, decompress the configuration information, copy the information in the directory back to the application, and then call the application startup interface to run the application;
[0179] Module M4.3: After the functional application is started, the application management module cyclically calls the application operation status feedback interface at a preset period. If the application operation status is abnormal, the application management program uploads alarm information to the cloud service platform;
[0180] Module M4.4: The cloud service platform receives alarm information, determines the application status based on the knowledge base in the cloud service platform's built-in device operation and maintenance monitoring module, and decides on the handling method based on the judgment result. The cloud service platform's device operation and maintenance monitoring module records each historical fault information, performs statistical classification on it, and displays application and terminal status information on the front-end interface;
[0181] Module M4.5: In addition to obtaining status information, the cloud service platform sends a log acquisition command to the application control module as needed. The functional application module outputs different levels of logs according to the log level. The cloud service platform specifies to upload a terminal log as needed and obtains the log according to the filtering conditions. The equipment operation and maintenance personnel summarize and analyze the logs online through the equipment monitoring and operation module to remotely troubleshoot and solve the problem.
[0182] Example 3:
[0183] Example 3 is a preferred example of Example 1 and is used to illustrate the present invention in more detail.
[0184] The present invention aims to provide a design method and implementation of a cloud-based industrial IoT control terminal with software-defined functions. The present invention includes an industrial IoT control terminal (hereinafter referred to as a terminal, unless contextual semantics are confused) capable of online software function application expansion based on the functions required by industrial control scenarios. The terminal device comprises, in terms of hardware interfaces, a general-purpose processor (CPU), a non-volatile memory (NVM), and physical interfaces commonly used in the industrial control field, including a VGA interface, an HDMI interface, an Ethernet interface, an RS232 interface, an RS422 interface, an RS485 interface, a CAN interface, and an optional 5G / 4G / WIFI wireless interface. The general-purpose processor (CPU) reads and executes code from its non-volatile memory (NVM). The physical interfaces can provide physical support for software-defined functions, such as the VGA interface and HDMI interface providing physical support for video surveillance functions, and the Ethernet interface providing physical network communication support. The terminal device pre-stores basic software components in its non-volatile memory (NVM): a security authentication component, a module receiving component, and a module management component. The present invention also has some modules running on the cloud service end, including a device authentication module, a device remote configuration module, a device monitoring and operation module, and an application management center, which at least includes data acquisition applications, data analysis applications, AI alarm applications, video monitoring applications and other software applications.
[0185] After the terminal device is powered on, the general-purpose processor CPU reads the security authentication component from its non-volatile memory NVM, the module receives the component, the module manages the component code and runs it, performs a security check on the terminal device through the security authentication component, and reads its unique deviceID and bound certificate information deviceKey. After the security check is normal, the device deviceID and deviceKey are transmitted back to the cloud service platform for access authentication. The control personnel choose to remotely send the software function applications required by the current scenario and physically supported by the terminal to the designated control terminal in the cloud. By installing the sent function applications, the control terminal can expand the control functions of the industrial control terminal without replacing new hardware equipment. This realizes a physical terminal with multiple uses defined by software, solves the problem that dedicated terminals in the industrial control field are difficult to expand and upgrade, and provides basic support for remote equipment operation and maintenance and system scheduling management.
[0186] Example 4:
[0187] Example 4 is a preferred example of Example 1 and is used to illustrate the present invention in more detail.
[0188] Step 1: Implement the steps as follows Figure 2 As described in P1, prepare a functional application package. Software functional application providers can create software applications for extending terminal functionality. Developers, following the platform's development constraints, write terminal functional application code M101. M101 is compiled by a compiler M102 to form an executable application file. The executable application file and its corresponding application metadata information file M103 are packaged together to form a functional application package M104.
[0189] Step 2: The software application provider uploads the packaged application to the cloud service platform's application management center M210. The administrator reviews the application for compliance with platform development rules to ensure it runs correctly and securely on the platform. The cloud service platform M20's device authentication management module M203 authenticates the industrial IoT control terminal based on the pre-assigned serial number (SN) for each device. Cloud service platform users select and distribute application modules based on the application requirements for a specific industrial IoT control terminal M30. Device configuration and status monitoring are performed via the device remote configuration module M205 and the device monitoring module M204.
[0190] Step 3: The functional applications that the Industrial IoT control terminal receives need to be pre-programmed with basic components such as the receiving module and security monitoring. First, the developed basic component executable program is burned into the Industrial IoT control terminal M30 through tools such as the network port or serial port. Then, the Industrial IoT control terminal is powered on and started. After the security authentication module checks that the working environment of the Industrial IoT control terminal M30 is normal, it reads the built-in SN serial number of the terminal device M30, generates encrypted authentication information, and then registers with the cloud service platform.
[0191] Step 4: The application receiving module M303 of the industrial IoT control terminal M30 receives the functional application issued by the cloud service platform. The application management module M302 starts the application. The functional application executes the corresponding function to complete the functional expansion of the industrial IoT control terminal, and selectively sends logs and status information to the application management module M302 according to the control command. The application management module M302 sends the logs and status information to the cloud service platform device monitoring and operation module M204 for status tracking.
[0192] The step 1 comprises the following steps:
[0193] Step 1.1: As attached Figure 3 As shown in the figure, a functional application package is developed and packaged. First, in step S110, the application provider specifies the application type. In step S120, the physical hardware support of the application is defined in accordance with the relevant standards of the platform. Different applications have different constraint information on the physical hardware of the platform. In step S130,
[0194] Data acquisition and control applications can be common industrial protocol applications such as MODBUS, ProfiBus, OPC, OPCUA, SNAP7, and CAN. For data acquisition and control protocols, the physical interface used by the protocol should be defined in the metadata. For example, if it is a MODBUS function application, it is necessary to declare whether this application supports RS-232, RS-422, RS-485, and Ethernet devices.
[0195] For video applications, the metadata should clearly indicate the hardware interface type required by the current application, such as VGA, HDMI, SDI interface, etc.
[0196] For applications involving algorithms, hardware requirement information should be provided in the metadata, such as whether there are requirements for GPU configuration and number.
[0197] For data storage applications, the metadata information should provide requirements for storage space and storage file system type, such as SFX, EXT3, EXT4, etc.
[0198] Step 2: includes the following steps
[0199] Step 2.1: Reference Figure 4 Functional application upload and use application, step S210 functional application provider logs in to the cloud service platform industrial application management center, fills in the new functional application information, including name, type, current version, R&D party information, and uploads the packaged functional application package to the cloud service platform industrial application management center.
[0200] Step 2.2: In step S211, an administrator with functional application management authority reviews the uploaded functional application to see if it meets the upload standards. If not, the uploaded application is required to be modified. In step S221, the cloud service platform industrial application management center manages the functional application versions, displaying the latest version of the driver by default. Driver users can switch to the version they need according to their needs.
[0201] Step 2.3: In step S222, the cloud service platform extracts the basic information of the functional application from the metadata configuration file of the functional application package and displays it to ordinary users. In step S223, the cloud service platform extracts the remote parameter configuration information of the functional application from the metadata configuration file. The platform automatically identifies the configuration file information and generates a remote configuration input page for this type of application. The metadata format of the functional application package is similar to the following. The platform can extract functional application information based on keywords such as APPMetaName, desinfo, author, and vesion, and generate remote configuration information based on configuration keywords such as conntype, input, and select.
[0202]
[0203]
[0204]
[0205] Step 3: includes the following steps
[0206] Step 3.1: Install the security authentication module M301, application management module M302, and application receiving module M302 in the Industrial IoT control terminal M30. The security authentication module is responsible for secure access authentication between the terminal and the cloud service platform. The application receiving module listens on the port and receives functional application packages from the cloud service platform. The application management module is responsible for starting and stopping applications, obtaining status and log information from applications based on control commands from the cloud service platform, and uploading them to the cloud service platform. These modules automatically start when the IoT control terminal is powered on and are registered as system services or daemons. If they exit, they will be triggered to start again by the operating system.
[0207] Step 3.2: Reference Figure 5In step S210, after the industrial IoT control terminal is powered on, the security authentication module reads the unique SN serial number of the terminal and generates a JSON string similar to the following format:
[0208]
[0209] A similar license string is formed through built-in BASE64 conversion encoding
[0210] eyJpc3DSXiJKb2huIFd1IExZYCIsImlhdCI6MTQ0MTU5MzUwMiwiZXhwIjoxNDQxNTk0NzIyLCJhdWQiOiJ3d3cuZXhhbXBsZS5 jb20iAbczdWIiOiJqcm9ja2V0QGV4YW1wbGUuY29tIiwiZnJvbV91c2VyIjoiQiIsInRhcmdldF91c2VyIjoiQSJ91416797419
[0211] At the same time, the security authentication module M301 running module has a built-in terminal health status monitoring program, which checks the terminal's CPU, non-volatile storage NVM, physical peripheral interface Ethernet, serial port and other hardware information as well as the software system operating environment. Once the inspection passes, it sends a permission string to the cloud service platform device authentication module M203. The platform device authentication management module M203 performs reverse conversion and decoding matching based on the device SN information stored in the platform center. Once the match is successful, the terminal is considered to be a legal device and can access the platform for data communication.
[0212] Step 4: includes the following steps
[0213] Step 4.1: Reference Figure 5 The cloud platform sends functional applications to expand terminal functions. Step S220: The cloud service platform sends functional applications to the industrial IoT control terminal. There are two modes for sending functional applications.
[0214] 1) First issuance
[0215] 2) Update and upgrade
[0216] In the cloud service platform's functional application management center, users select functional applications that need to be delivered to the terminal based on the extended functions currently required by the terminal. If it is the first delivery, fill in the required application parameters in step S260 on the functional application remote configuration page. If it is an update or upgrade, the platform will extract the last filled-in information by default. The cloud service platform can uniformly deliver functional applications to terminals connected to the platform, or select a specified terminal to deliver functional applications. For a certain terminal, the functional application version can be switched through the functional application management center M210 to deliver a specified version of the functional application.
[0217] Step 4.2: The application receiving module in the terminal receives the functional application package issued by the M303 cloud service platform and performs a CRC check on the application package (step S230). If the check fails, a resend command is sent to the cloud service platform. If the check passes, the application installation operation is started.
[0218] If the application is delivered for the first time, the application receiving module will directly create the application work path and configuration path, such as / opt / apps / XXAPP / work / and / opt / apps / XXAPP / work / config / , and place the unpacked application appxxx executable and configuration information appxx_cofig.xml in the above work and config directories respectively, and then call the appstart interface in the application to run the application.
[0219] If the application is updated or upgraded, the application receiving module will save the working configuration information in use, create a configuration information saving directory such as / opt / apps / XXAPP / work / copyback / , place the appxxx executable program in the / opt / apps / XXAPP / work / directory, decompress and place the configuration information in / opt / apps / XXAPP / work / config / , and then copy the information in the / opt / apps / XXAPP / work / copyback / directory back to / opt / apps / XXAPP / work / config / and then call the appstart interface in the application to run the application.
[0220] Step 4.3: After the functional application is started, the application management module M303 calls the application running status feedback interface appstatus at a regular period, such as 3s. If the application running status is abnormal, such as hardware initialization failure, resource allocation failure, freezing, or abnormal exit, the application management program uploads an alarm information to the cloud service platform in step S240.
[0221] Step 4.4: The cloud service platform receives the alarm information and determines the application status based on the knowledge base in the cloud service platform's built-in device operation and maintenance monitoring module. Based on the determination, it determines the appropriate response, executing step S250. For example, it sends various notifications to management personnel and a restart attempt command to the application management module. The cloud service platform's device operation and maintenance monitoring module records each historical fault, categorizes it, and displays application and terminal status information on the front-end interface.
[0222] Step 4.5: In addition to obtaining status information, the cloud service platform can send a log acquisition command S250 to the application control module as needed. The functional application module outputs different levels of logs according to the log level. The log levels are from high to low: CRITICAL, ERROR, WARNING, INFO, DEBUG, TRACE. The cloud service platform can specify to upload a terminal log as needed, and can obtain logs according to date, level, specified functional application and other filtering conditions. Equipment operation and maintenance personnel can use the equipment monitoring and operation module M204 to summarize and analyze the logs online and remotely troubleshoot problems.
[0223] Those skilled in the art will appreciate that, in addition to implementing the system, device, and various modules provided by the present invention in purely computer-readable program code, it is entirely possible to implement the same program in the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, embedded microcontrollers, and the like by logically programming the method steps. Therefore, the system, device, and various modules provided by the present invention can be considered a hardware component, and the modules included therein for implementing various programs can also be considered structures within the hardware component; the modules for implementing various functions can also be considered both software programs for implementing the method and structures within the hardware component.
[0224] The above describes specific embodiments of the present invention. It should be understood that the present invention is not limited to the specific embodiments described above, and those skilled in the art may make various changes or modifications within the scope of the claims, which do not affect the essence of the present invention. The embodiments of this application and the features in the embodiments may be combined with each other in any manner unless there is a conflict.
Claims
1. A software-defined industrial IoT control method based on cloud services, characterized in that: include: Step S1: compile the terminal function application code to form an executable application file, and package the executable application file and its corresponding application metadata information file to form a function application package; In the step S1: Step S1.1: Develop and package the functional application package. The application provider specifies the application type and defines the physical hardware support for the application in accordance with the platform's relevant standards. Different applications have different constraints on the platform's physical hardware. Data acquisition and control applications include MODBUS protocol applications, ProfiBus applications, OPC protocol applications, OPCUA protocol applications, SNAP7 protocol applications, and CAN protocol applications. For data acquisition and control protocols, the physical interface used by the protocol is defined in the metadata. Step S1.2: Use the development language to develop the application and provide platform-compliant control command interfaces in the application. These interfaces include: implementing an application startup interface, implementing an application stop interface, implementing an application running status feedback interface, and implementing an application running log acquisition interface; Step S1.3: compile the functional application code for multiple target platforms; Step S1.4: Configure the functional application meta-information. The functional application meta-information is stored in XML file format. The cloud service platform generates an application configuration interface based on the configuration information and provides the function of remote dynamic configuration of the application. The information provided includes: The name and type of the functional application. A unique application ID will be generated for each functional application platform. Provider information of the functional application, including provider name and contact information; The current version number of the functional application and update-related historical information; Functional application configuration information, used to support remote modification of functional application configuration information; Provide a dynamic configuration section in the XML configuration file. The configuration file uses predefined dynamic input formats, including text boxes, drop-down boxes, and selection boxes. The cloud service platform that stores the functional application uses these dynamic input boxes to generate the functional application parameter input page and sends it to the specified remote terminal as needed. Step S1.5: compress and package the compiled functional application executable file and metadata configuration file using the cross-platform tar format. The packaged file contains different directories to distinguish executable files for different platforms. Step S2: The function application package is uploaded to the cloud service platform. The cloud service platform authenticates the industrial IoT control terminal and selects and issues the function application according to the function application required by the industrial IoT control terminal. Step S3: The industrial IoT control terminal burns the basic components, starts the industrial IoT control terminal, reads the built-in product serial number of the terminal device, generates encrypted authentication information, and registers with the cloud service platform; Step S4: The industrial IoT control terminal application receives the functional application issued by the cloud service platform, starts the application to execute the corresponding function to complete the functional expansion of the industrial IoT control terminal.
2. The software-defined industrial IoT control method based on cloud services according to claim 1, characterized in that: In the step S1.2, The application startup interface is implemented as follows: its function is to start the application and feedback the application startup result information to the caller. 0 is normal, non-zero is abnormal, and the abnormal information code is defined in the form of application name + abnormal code; The application stop interface is implemented to stop the application and provide feedback to the caller on the application stop result information. 0 indicates normal operation and non-zero indicates abnormal operation. The abnormal information code can be defined in the form of application name + abnormal code. The application running status feedback interface is implemented: its function is to feedback the application running status. If it runs normally, the feedback is 0, otherwise it is abnormal. The abnormal information code can be the application name + abnormal code; The application operation log acquisition interface is used to upload the application log information in the form of a string to the control module; In step S1.3, the operating systems currently running in the terminals connected to this platform include X86 platform and ARM platform, and the operating system supports Windows, Linux, and UNIX. Functional applications need to compile Windows, Linux, and UNIX executable programs corresponding to the X86 platform and ARM platform.
3. The software-defined industrial IoT control method based on cloud services according to claim 1, characterized in that: In step S2: Step S2.1: Upload and use the functional application. The application provider logs in to the cloud service platform industrial application management center and fills in the new functional application information, including the name, type, current version, and developer information. The packaged functional application package is uploaded to the cloud service platform industrial application management center. Step S2.2: Review the uploaded functional application to see if it meets the upload standards. If not, request modification. The cloud service platform's industrial application management center manages the functional application versions, displays the latest version of the driver by default, and enables users to switch to the version they need based on their needs. Step S2.3: The cloud service platform extracts the basic information of the functional application from the metadata configuration file of the functional application package and displays it to ordinary users. It extracts the remote parameter configuration information of the functional application from the metadata configuration file. The platform automatically identifies the configuration file information and generates a remote configuration input page for this type of application. The platform extracts the functional application information through keywords and generates remote configuration information based on the configuration keywords.
4. The software-defined industrial IoT control method based on cloud services according to claim 1, characterized in that: In step S3: Step S3.1: Burn and install the security authentication module, application management module, and application receiving module in the industrial IoT control terminal device; The security authentication module is responsible for the secure access authentication of communications between terminal devices and the cloud service platform. The application receiving module monitors the port and receives functional application packages from the cloud service platform. The application management module is responsible for starting and stopping applications, obtaining status information and log information from applications according to control commands from the cloud service platform, and uploading them to the cloud service platform. The above modules are automatically started when the IoT control terminal is powered on, registered as system services or daemons, and will be triggered to start again by the operating system if they exit. Step S3.2: After the industrial IoT control terminal is powered on, the security authentication module reads the unique product serial number of the terminal, generates a JSON string, and converts it into a license string through the built-in BASE64 conversion encoding; The security authentication module operation module has a built-in terminal health status monitoring program to check the terminal's hardware information and software system operating environment. When the check is passed, it sends a license string to the cloud service platform device authentication module. The platform device authentication management module performs reverse conversion and decoding matching based on the device product serial number information stored in the platform center. When the match is successful, the terminal is a legal device and can access the platform for data communication.
5. The software-defined industrial IoT control method based on cloud services according to claim 1, characterized in that: In step S4: Step S4.1: The cloud service platform sends the functional application to the industrial IoT control terminal. There are two modes for sending the functional application: first time sending and update and upgrade: In the cloud service platform's functional application management center, users select functional applications that need to be delivered to the terminal based on the extended functions currently required by the terminal. If it is the first time to deliver, fill in the required application parameters in the functional application remote configuration page. If it is an update or upgrade, the platform will extract the last filled information by default. The cloud service platform will uniformly deliver functional applications to the terminals connected to the platform, and select the designated terminal to deliver functional applications. For a certain terminal, switch the functional application version through the functional application management center and deliver the specified version of the functional application. Step S4.2: The application receiving module in the terminal receives the functional application package sent by the cloud service platform and performs a cyclic redundancy check on the application package. If the check fails, a resend command is sent to the cloud service platform. If the check passes, the application installation operation begins. If the application is being delivered for the first time, the application receiving module will create an application working directory and configuration directory, place the decompressed application executable and configuration information in the directories, and call the application startup interface in the application to run the application. If the application is updated, the application receiving module will save the working configuration information in use, create a configuration information storage directory, place the execution program in the directory, decompress the configuration information, copy the information in the directory back to the application, and then call the application startup interface to run the application; Step S4.3: After the functional application is started, the application management module cyclically calls the application running status feedback interface at a preset period. If the application running status is abnormal, the application management program uploads an alarm information to the cloud service platform; Step S4.4: The cloud service platform receives the alarm information and determines the application status based on the knowledge base in the device operation and maintenance monitoring module built into the cloud service platform. The cloud service platform device operation and maintenance monitoring module records each historical fault information, performs statistical classification on it, and displays the application and terminal status information on the front-end interface. Step S4.5: In addition to obtaining status information, the cloud service platform sends a log acquisition command to the application control module according to demand. The functional application module outputs different levels of logs according to the log level. The cloud service platform specifies to upload a terminal log according to demand and obtains the log according to the filtering conditions. The equipment operation and maintenance personnel summarize and analyze the logs online through the equipment monitoring and operation module to remotely troubleshoot and solve the problem.
6. A software-defined industrial IoT control system based on cloud services, characterized in that: include: Module M1: compile the terminal function application code to form an executable application file, and package the executable application file and its corresponding application metadata information file to form a function application package; In the module M1, Module M1.1: Develop and package functional application packages. Application providers must clearly define the application type, define the application's physical hardware support according to the platform's relevant standards, and generate information about the different constraints imposed on the platform's physical hardware by different applications. Data acquisition and control applications include MODBUS protocol applications, ProfiBus applications, OPC protocol applications, OPCUA protocol applications, SNAP7 protocol applications, and CAN protocol applications. For data acquisition and control protocols, the physical interface used by the protocol is defined in the metadata. Module M1.2: Use the development language to develop applications and provide platform-compliant control command interfaces in the application. These interfaces include: implementing the application startup interface, implementing the application stop interface, implementing the application running status feedback interface, and implementing the application running log acquisition interface; Module M1.3: Compile the functional application code to multiple target platforms; Module M1.4: Configure the functional application meta-information. The functional application meta-information is stored in XML file format. The cloud service platform generates the application configuration interface based on the configuration information and provides the function of remote dynamic configuration of the application. The information provided includes: The name and type of the functional application. A unique application ID will be generated for each functional application platform. Provider information of the functional application, including provider name and contact information; The current version number of the functional application and update-related historical information; Functional application configuration information, used to support remote modification of functional application configuration information; Provide a dynamic configuration section in the XML configuration file. The configuration file uses predefined dynamic input formats, including text boxes, drop-down boxes, and selection boxes. The cloud service platform that stores the functional application uses these dynamic input boxes to generate the functional application parameter input page and sends it to the specified remote terminal as needed. Module M1.5: Compress and package the compiled functional application executable file and metadata configuration file using the cross-platform tar format. Different directories are used in the package file to distinguish executable files on different platforms. Module M2: The function application package is uploaded to the cloud service platform. The cloud service platform authenticates the industrial IoT control terminal and selects and issues the function application according to the function application required by the industrial IoT control terminal. Module M3: Burns the basic components of the industrial IoT control terminal, starts the industrial IoT control terminal, reads the built-in product serial number of the terminal device, generates encrypted authentication information and registers with the cloud service platform; Module M4: The industrial IoT control terminal application receives the functional application issued by the cloud service platform, starts the application to execute the corresponding function to complete the functional expansion of the industrial IoT control terminal.
7. The cloud service-based software-defined industrial IoT control system according to claim 6, characterized in that: In the module M1.2, The application startup interface is implemented as follows: its function is to start the application and feedback the application startup result information to the caller. 0 is normal, non-zero is abnormal, and the abnormal information code is defined in the form of application name + abnormal code; The application stop interface is implemented to stop the application and provide feedback to the caller on the application stop result information. 0 indicates normal operation and non-zero indicates abnormal operation. The abnormal information code can be defined in the form of application name + abnormal code. The application running status feedback interface is implemented: its function is to feedback the application running status. If it runs normally, the feedback is 0, otherwise it is abnormal. The abnormal information code can be the application name + abnormal code; The application operation log acquisition interface is used to upload the application log information in the form of a string to the control module; In the module M1.3, the operating systems currently running in the terminals connected to this platform include X86 platform and ARM platform, and the operating system supports Windows, Linux, and UNIX. Functional applications need to compile Windows, Linux, and UNIX executable programs corresponding to the X86 platform and ARM platform.
8. The cloud service-based software-defined industrial IoT control system according to claim 6, characterized in that: In the module M2: Module M2.1: Functional application upload and application use. Functional application providers log in to the cloud service platform industrial application management center and fill in the new functional application information, including name, type, current version, and developer information. The packaged functional application package is uploaded to the cloud service platform industrial application management center. Module M2.2: Review uploaded functional applications to see if they meet upload standards. If not, request modification. The cloud service platform's industrial application management center manages versions of functional applications, displaying the latest version of the driver by default, allowing users to switch to the version they need based on their needs. Module M2.3: The cloud service platform extracts the basic information of the functional application from the metadata configuration file of the functional application package and displays it to ordinary users. It also extracts the remote parameter configuration information of the functional application from the metadata configuration file. The platform automatically identifies the configuration file information and generates a remote configuration input page for this type of application. The platform extracts the functional application information through keywords and generates remote configuration information based on the configuration keywords.
9. The cloud service-based software-defined industrial IoT control system according to claim 6, characterized in that: In the module M3: Module M3.1: Burn and install the security authentication module, application management module, and application receiving module in the industrial IoT control terminal device; The security authentication module is responsible for the secure access authentication of communications between terminal devices and the cloud service platform. The application receiving module monitors the port and receives functional application packages from the cloud service platform. The application management module is responsible for starting and stopping applications, obtaining status information and log information from applications according to control commands from the cloud service platform, and uploading them to the cloud service platform. The above modules are automatically started when the IoT control terminal is powered on, registered as system services or daemons, and will be triggered to start again by the operating system if they exit. Module M3.2: After the industrial IoT control terminal is powered on and started, the security authentication module reads the unique product serial number of the terminal, generates a JSON string, and converts it into a license string through the built-in BASE64 conversion encoding; The security authentication module operation module has a built-in terminal health status monitoring program to check the terminal's hardware information and software system operating environment. When the check is passed, it sends a license string to the cloud service platform device authentication module. The platform device authentication management module performs reverse conversion and decoding matching based on the device product serial number information stored in the platform center. When the match is successful, the terminal is a legal device and can access the platform for data communication.
10. The cloud service-based software-defined industrial IoT control system according to claim 6, characterized in that: In the module M4: Module M4.1: The cloud service platform sends functional applications to the industrial IoT control terminal. There are two modes for sending functional applications: initial delivery and update and upgrade. In the cloud service platform's functional application management center, users select functional applications that need to be delivered to the terminal based on the extended functions currently required by the terminal. If it is the first time to deliver, fill in the required application parameters in the functional application remote configuration page. If it is an update or upgrade, the platform will extract the last filled information by default. The cloud service platform will uniformly deliver functional applications to the terminals connected to the platform, and select the designated terminal to deliver functional applications. For a certain terminal, switch the functional application version through the functional application management center and deliver the specified version of the functional application. Module M4.2: The application receiving module in the terminal receives the functional application package issued by the cloud service platform and performs a cyclic redundancy check on the application package. If the check fails, a resend command is sent to the cloud service platform. If the check passes, the application installation operation is started; If the application is being delivered for the first time, the application receiving module will create an application working directory and configuration directory, place the decompressed application executable and configuration information in the directories, and call the application startup interface in the application to run the application. If the application is updated, the application receiving module will save the working configuration information in use, create a configuration information storage directory, place the execution program in the directory, decompress the configuration information, copy the information in the directory back to the application, and then call the application startup interface to run the application; Module M4.3: After the functional application is started, the application management module cyclically calls the application operation status feedback interface at a preset period. If the application operation status is abnormal, the application management program uploads alarm information to the cloud service platform; Module M4.4: The cloud service platform receives alarm information, determines the application status based on the knowledge base in the cloud service platform's built-in device operation and maintenance monitoring module, and decides on the handling method based on the judgment result. The cloud service platform's device operation and maintenance monitoring module records each historical fault information, performs statistical classification on it, and displays application and terminal status information on the front-end interface; Module M4.5: In addition to obtaining status information, the cloud service platform sends a log acquisition command to the application control module as needed. The functional application module outputs different levels of logs according to the log level. The cloud service platform specifies to upload a terminal log as needed and obtains the log according to the filtering conditions. The equipment operation and maintenance personnel use the equipment monitoring and operation module to summarize and analyze the logs online and remotely troubleshoot and solve the problem.
Citation Information
Patent Citations
Software-defined radio terminal device and method for distributing and installing radio application
CN103250133A
Open Internet of Things system and method based on cloud platform
CN109857446A
Cluster type internet of things application development system and method thereof
CN109960516A
Industrial control equipment identity authentication method and device based on dynamic password
CN113507368A