Iot system and method for compatibility with multiple devices and providing multiple device services

By designing an IoT system compatible with multiple devices, and utilizing a combination of interface modules, general tool modules, and communication modules, the problem of IoT systems being incompatible with multiple devices was solved, enabling flexible hardware access and efficient service provision.

CN116074176BActive Publication Date: 2026-06-05AISINO CORPORATION

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
AISINO CORPORATION
Filing Date
2022-12-30
Publication Date
2026-06-05

AI Technical Summary

Technical Problem

Existing IoT systems are not compatible with a variety of devices and cannot meet the rapidly evolving application needs when expanding or reducing hardware.

Method used

An IoT system compatible with multiple devices was designed, including an interface module group, a general tool module group, a communication module group, and an upper-layer application module group. The interface module provides hardware device interfaces, the general tool module encapsulates data, the communication module selects the communication method, and the upper-layer application module establishes connections and provides hardware device services.

Benefits of technology

It enables compatible access and service provision for various devices, flexibly responds to changing needs in real-world IoT scenarios, improves work efficiency, and reduces development costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116074176B_ABST
    Figure CN116074176B_ABST
Patent Text Reader

Abstract

The application discloses an Internet of Things system and method compatible with multiple devices and providing multiple device services, and belongs to the technical field of Internet of Things application.The system comprises an interface module, a tool module, a communication module and an upper application module.The interface module is used for providing a hardware device interface, and a hardware device is connected through the hardware device interface to obtain a specification and a program set of the hardware device.The tool module receives the specification and the program set of the hardware device corresponding to the universal tool module, encapsulates the specification and the program set to obtain encapsulation data.The communication module corresponds to a communication mode.The upper application module corresponds to a communication protocol of the hardware device, and based on the encapsulation data of the hardware device, a corresponding upper application module, communication module and interface module are selected to establish a connection with the hardware device.After the connection is completed, the upper application module provides a hardware device service.The application can be compatible with multiple devices and provide hardware services.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of Internet of Things (IoT) application technology, and more specifically, to an IoT system and method that is compatible with multiple devices and provides services for multiple devices. Background Technology

[0002] Currently, some IoT systems on the market only support communication via network protocols, requiring all hardware within the system to transmit data via socket communication; otherwise, they cannot connect to the system. Others can only handle single application scenarios, failing to meet requirements when expanding hardware with other functions or even reducing hardware. These limitations are unacceptable in keeping pace with the rapid development and application of IoT technology. Summary of the Invention

[0003] To address the above problems, this invention proposes an Internet of Things (IoT) system that is compatible with multiple devices and provides services to multiple devices, comprising:

[0004] An interface module group, comprising multiple interface modules, wherein the interface modules are used to provide hardware device interfaces, and to connect to hardware devices through the hardware device interfaces to obtain the hardware device's instruction manual and program set;

[0005] A general tool module group, comprising multiple general tool modules, wherein each general tool module receives the instruction manual and program assembly of the hardware device corresponding to it, and encapsulates the instruction manual and program assembly to obtain encapsulation data;

[0006] A communication module group, comprising multiple communication modules, each corresponding to a communication method;

[0007] The upper-layer application module group includes multiple upper-layer application modules, each corresponding to a communication protocol with the hardware device. Based on the encapsulation data of the hardware device, the corresponding upper-layer application module, communication module, and interface module are selected to establish a connection with the hardware device. After the connection is completed, the upper-layer application module provides hardware device services.

[0008] Optional communication protocols include: HTTP and RESTful protocols.

[0009] Optionally, the general tool module group is also used to encapsulate the communication data between the system and the hardware device.

[0010] Optionally, the system may also include a hardware management center module, which is used to create and control the operating logic flow of hardware devices and store basic information of hardware devices.

[0011] Optionally, the system may also include: a low-level protocol module group, which includes communication protocols for various hardware devices and program sets for interfacing with the hardware devices.

[0012] Optionally, the interface module, tool module, communication module, and upper-layer application module may each include multiple modules to form an interface module group, a tool module group, a communication module group, and an upper-layer application module group, respectively. Each communication module in the communication module group corresponds to a different communication protocol, and each upper-layer application module in the upper-layer application module group corresponds to a different communication protocol with the hardware device.

[0013] Furthermore, the present invention also provides a method for being compatible with multiple devices and providing services for multiple devices, comprising:

[0014] The interface module provides a hardware device interface, through which the hardware device interface is connected to obtain the hardware device's instruction manual and program set;

[0015] The system receives the instruction manual and program assembly of the hardware device corresponding to the general tool module through the general tool module, and encapsulates the instruction manual and program assembly to obtain encapsulation data.

[0016] Based on the encapsulation data of the hardware device, the corresponding upper-layer application module, communication module, and interface module are selected to establish a connection with the hardware device. After the connection is completed, the upper-layer application module provides hardware device services.

[0017] Optional communication protocols include: HTTP and RESTful protocols.

[0018] Optionally, the method further includes: encapsulating the communication data between the system and the hardware device through a set of general tool modules.

[0019] Optionally, the method also includes: creating and controlling the operation logic flow of hardware devices through the hardware management center module, and saving the basic information of hardware devices.

[0020] Optionally, the method also includes: using the underlying protocol module group, which includes the communication protocols of various hardware devices, to interface with the hardware device's program assembly.

[0021] Compared with the prior art, the beneficial effects of the present invention are as follows:

[0022] This invention provides an Internet of Things (IoT) system compatible with and providing services to multiple devices, comprising: an interface module for providing hardware device interfaces to connect to hardware devices and obtain their manuals and program assemblies; a tool module for receiving the manuals and program assemblies corresponding to the hardware device, encapsulating them to obtain encapsulation data; a communication module for a specific communication method; and an upper-layer application module for a specific communication protocol with the hardware device. Based on the encapsulation data of the hardware device, the upper-layer application module, communication module, and interface module are selected to establish a connection with the hardware device. After connection is established, the upper-layer application module provides hardware device services. This invention is compatible with the connection of multiple devices and provides hardware services. Attached Figure Description

[0023] The above and other objects, features, and advantages of the present invention will become more apparent from the more detailed description of the embodiments of the invention in conjunction with the accompanying drawings. The drawings are provided to further illustrate the embodiments of the invention and form part of the specification. They are used together with the embodiments of the invention to explain the invention and do not constitute a limitation thereof. In the drawings, the same reference numerals generally represent the same parts or steps.

[0024] Figure 1 This is a structural diagram of an Internet of Things (IoT) system that is compatible with multiple devices and provides services to multiple devices according to the present invention;

[0025] Figure 2 This is a flowchart illustrating a method for providing services to multiple devices that is compatible with multiple devices according to the present invention. Detailed Implementation

[0026] Hereinafter, exemplary embodiments according to the present invention will be described in detail with reference to the accompanying drawings. Obviously, the described embodiments are merely some embodiments of the present invention, and not all embodiments of the present invention. It should be understood that the present invention is not limited to the exemplary embodiments described herein.

[0027] It should be noted that, unless otherwise specifically stated, the relative arrangement, numerical expressions, and values ​​of the components and steps described in these embodiments do not limit the scope of the invention.

[0028] The embodiments of this invention can be applied to electronic devices such as terminal devices, computer systems, and servers, and can operate together with a wide range of other general-purpose or special-purpose computing system environments or configurations. Well-known examples of terminal devices, computing systems, environments, and / or configurations suitable for use with electronic devices such as terminal devices, computer systems, and servers include, but are not limited to: personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputer systems, mainframe computer systems, and distributed cloud computing environments including any of the above systems, etc.

[0029] Electronic devices such as terminal devices, computer systems, and servers can be described in the general context of computer system executable instructions (such as program modules) executed by a computer system. Typically, program modules can include routines, programs, object programs, components, logic, data structures, etc., which perform specific tasks or implement specific abstract data types. Computer systems / servers can be implemented in distributed cloud computing environments, where tasks are executed by remote processing devices linked through communication networks. In distributed cloud computing environments, program modules can reside on local or remote computing system storage media, including storage devices.

[0030] Exemplary methods

[0031] Example 1:

[0032] This invention proposes an Internet of Things (IoT) system 200 that is compatible with multiple devices and provides services to multiple devices, such as... Figure 1 As shown, it includes:

[0033] Interface module 201 is used to provide a hardware device interface, and to connect to the hardware device through the hardware device interface to obtain the hardware device's instruction manual and program set.

[0034] Tool module 202, the general tool module 202 receives the instruction manual and program assembly of the hardware device corresponding to the general tool module, and encapsulates the instruction manual and program assembly to obtain encapsulation data;

[0035] Communication module 203, the communication module 203 corresponding to a communication method;

[0036] The upper-layer application module 204 corresponds to a communication protocol with the hardware device. Based on the encapsulation data of the hardware device, the upper-layer application module, communication module and interface module are selected to establish a connection with the hardware device. After the connection is completed, the upper-layer application module provides hardware device services.

[0037] The communication protocols include: HTTP protocol and RESTful protocol.

[0038] The general-purpose tool module group is also used to encapsulate the communication data between the system and the hardware device.

[0039] The system also includes a hardware management center module 205, which is used to create and control the operation logic flow of hardware devices and save the basic information of hardware devices.

[0040] The system also includes: a low-level protocol module group 305, which includes communication protocols for various hardware devices and program sets for interfacing with hardware devices.

[0041] The interface module 201, tool module 202, communication module 203, and upper-layer application module 204 are each comprised of multiple modules, forming an interface module group 301, a tool module group 302, a communication module group 303, and an upper-layer application module group 304. Each communication module 203 in the communication module group 303 corresponds to a different communication protocol, and each upper-layer application module 204 in the upper-layer application module group 304 corresponds to a different communication protocol with the hardware device.

[0042] This invention primarily enables hardware with different connection methods and communication protocols to access the platform. For hardware that must be directly connected to a computer, such as serial ports and USB ports, a micro-agent program is developed on the terminal to communicate directly with the hardware. The micro-agent program converts the hardware data and control information into a standard data model and then forwards it to the IoT platform. For hardware devices that do not require a direct connection, they can communicate with the IoT platform via Ethernet ports, wireless connections, etc.

[0043] This invention provides multiple interface methods for upper-layer applications to call. It can be encapsulated into an assembly and directly imported into the upper-layer code, or it can be called through protocols such as HTTP according to the agreed interface.

[0044] In this invention, the system can be divided into a communication layer, a hardware proxy layer, a logic layer, and a service provision layer. Each part can be independently encapsulated as a module. When faced with new requirements, the necessary modules can be assembled to quickly build a new system.

[0045] At the lowest level are the communication module components, each corresponding to a specific communication method. When hardware needs to be connected, the hardware's data packets are first converted into standard data packets for the platform system according to the hardware manual, and then connected to the corresponding communication protocol module.

[0046] At the hardware proxy layer, the corresponding functions and basic device operation interfaces are inherited and encapsulated into independent program assemblies corresponding to the hardware. For example, access control hardware has basic operations such as initialization, connection, start, and stop, and special functions such as opening and closing the door. After all hardware is encapsulated into corresponding program assemblies, the relevant information is registered in the configuration file of the IoT platform. Then, when the IoT platform system is running, the program assembly of the hardware can be automatically imported using the principle of reflection and connected to the hardware.

[0047] The logic layer is responsible for importing and creating various hardware agent modules, managing all hardware connections, startup, pause, and stop operations, and finding and calling the relevant hardware modules to exchange data with the hardware when commands are sent from the upper layer.

[0048] The service provider layer can implement multiple protocol interfaces to meet the needs of different application software. Hardware data and errors are proactively uploaded using reflection and callback methods. Simply register a function with the specified name in the configuration file within the service provider layer to receive data and error notifications.

[0049] The system of this invention is divided into: an interface module group, providing interfaces for various hardware functions; a general tool module group, including general tools for data encapsulation and format conversion; a low-level protocol module group, including various hardware communication protocols and program assemblies for interfacing with each type of hardware; a hardware management center module, responsible for creating and controlling the hardware operation logic flow, storing basic information of hardware devices in the system, and processing and coordinating data flow between various hardware components; and an upper-layer application interface module group, providing multiple interface methods for upper-layer applications, such as HTTP protocol, RESTful protocol, or direct encapsulation into DLL form.

[0050] The hardware access process includes: writing a program assembly corresponding to the hardware based on the hardware manual and provided SDK, and writing a platform-standard configuration file to store the basic information of the hardware. This program assembly uses tool modules to encapsulate communication data into a platform-standard data packet format, locates the corresponding underlying communication protocol module, and completes data transmission with the hardware. This program assembly then registers the hardware with the platform system, and the hardware management center module automatically creates, initializes, and starts the hardware. During creation, using reflection, the data and exception notification interface callback functions of this program assembly are registered with the upper-layer application interface module group. The upper-layer application interface module group interprets and translates the data and exception information before passing it to the upper-layer application.

[0051] When an upper-layer application requests hardware data or status, it first sends the request to the upper-layer application interface module via upper-layer protocols such as HTTP. The upper-layer application interface module converts the request into a data request for the hardware and sends it to the hardware management center module. The hardware management center module finds the hardware registered in the platform through the hardware's unique identifier and sends the function request code and related data to the program assembly corresponding to the hardware. The program assembly module corresponding to the hardware notifies the hardware of the data request through the underlying protocol communication module, and the received hardware response data is returned via the same path.

[0052] For scenarios where hardware actively uploads data, such as temperature and humidity meters periodically uploading indoor temperature and humidity data or abnormal error information, the application layer receiving function name is first registered in the configuration file. Then, the reflection mechanism is used to dynamically associate it with the hardware assembly at runtime. The hardware assembly uses a callback method to push the data up to the application layer receiving function.

[0053] This invention enables seamless interface between upper-layer application systems and lower-layer hardware.

[0054] This invention can be flexibly connected to hardware with various communication protocols and is compatible with most hardware products on the market.

[0055] This invention can provide services to upper-layer application systems in multiple ways, meeting the needs of various Internet of Things scenarios.

[0056] This invention is flexible: Having been validated through actual projects, it can flexibly address various changing needs in real-world IoT scenarios. All connected hardware assemblies are dynamically loaded using reflection mechanisms, without being hard-coded into the program. Therefore, simply making changes in the configuration file and restarting the system allows for the addition or reduction of hardware types and quantities.

[0057] This invention features independence: all variable factors in the system are configured according to the principle of "configuration over code", so as to make each part as independent as possible. They are only effectively connected into a whole when the system is running, so that all changes can be dealt with at the lowest cost.

[0058] This invention is highly efficient: all parts of the system can be reused, and in different usage scenarios, the required modules can be selected and quickly assembled into a new application support system, which greatly improves work efficiency, reduces the redevelopment time cycle, and saves development costs.

[0059] Example 2:

[0060] This invention also provides a method that is compatible with multiple devices and provides services for multiple devices, such as... Figure 1 As shown, it includes:

[0061] Step 1: Provide a hardware device interface through the interface module, and connect to the hardware device through the hardware device interface to obtain the hardware device's instruction manual and program set;

[0062] Step 2: Receive the instruction manual and program assembly of the hardware device corresponding to the general tool module through the general tool module, and encapsulate the instruction manual and program assembly to obtain encapsulation data;

[0063] Step 3: Based on the encapsulation data of the hardware device, select the corresponding upper-layer application module, communication module and interface module to establish a connection with the hardware device. After the connection is completed, provide hardware device services based on the upper-layer application module.

[0064] The communication protocols include: HTTP protocol and RESTful protocol.

[0065] The method also includes encapsulating the communication data between the system and the hardware device using a general tool module group.

[0066] The method also includes: creating and controlling the operation logic flow of hardware devices through the hardware management center module, and saving the basic information of the hardware devices.

[0067] The method also includes: using the underlying protocol module group, which includes the communication protocols of various hardware devices, to interface with the hardware device program set.

[0068] Example 3:

[0069] Based on the same inventive concept, this invention also provides a computer device, which includes a processor and a memory. The memory stores a computer program, which includes program instructions. The processor executes the program instructions stored in the computer storage medium. The processor may be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. It is the computing and control core of the terminal, suitable for implementing one or more instructions, specifically suitable for loading and executing one or more instructions in the computer storage medium to implement corresponding method flows or corresponding functions, thereby implementing the steps of the methods in the above embodiments.

[0070] Example 4:

[0071] Based on the same inventive concept, this invention also provides a storage medium, specifically a computer-readable storage medium (Memory), which is a memory device in a computer device used to store programs and data. It is understood that the computer-readable storage medium here can include both the built-in storage medium in the computer device and extended storage media supported by the computer device. The computer-readable storage medium provides storage space that stores the terminal's operating system. Furthermore, this storage space also stores one or more instructions suitable for loading and execution by a processor. These instructions can be one or more computer programs (including program code). It should be noted that the computer-readable storage medium here can be high-speed RAM or non-volatile memory, such as at least one disk storage device. The processor can load and execute one or more instructions stored in the computer-readable storage medium to implement the steps of the method in the above embodiments.

[0072] Exemplary computer program products and computer-readable storage media

[0073] In addition to the methods and apparatus described above, embodiments of this disclosure may also be computer program products comprising computer program instructions that, when executed by a processor, cause the processor to perform the steps of the methods according to various embodiments of this disclosure as described in the "Exemplary Methods" section above.

[0074] The computer program product can be written in any combination of one or more programming languages ​​to perform the operations of the embodiments of this disclosure. The programming languages ​​include object-oriented programming languages ​​such as Java and C++, as well as conventional procedural programming languages ​​such as C or similar languages. The program code can be executed entirely on a user's computing device, partially on a user's computing device, as a standalone software package, partially on a user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0075] Furthermore, embodiments of this disclosure may also be computer-readable storage media having computer program instructions stored thereon, which, when executed by a processor, cause the processor to perform the steps in the methods according to various embodiments of this disclosure described in the "Exemplary Methods" section above.

[0076] The computer-readable storage medium may be any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may, for example, include, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or devices, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: electrical connections having one or more wires, portable disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0077] The basic principles of this disclosure have been described above with reference to specific embodiments. However, it should be noted that the advantages, benefits, and effects mentioned in this disclosure are merely examples and not limitations, and should not be considered as essential features of each embodiment of this disclosure. Furthermore, the specific details disclosed above are for illustrative and facilitative purposes only, and are not limitations. These details do not limit the scope of this disclosure to the necessity of employing the aforementioned specific details for implementation.

[0078] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For system embodiments, since they largely correspond to method embodiments, the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments.

[0079] The block diagrams of devices, apparatuses, devices, and systems disclosed herein are merely illustrative examples and are not intended to require or imply that they must be connected, arranged, or configured in the manner shown in the block diagrams. As those skilled in the art will recognize, these devices, apparatuses, devices, and systems can be connected, arranged, and configured in any manner. Words such as “comprising,” “including,” “having,” etc., are open-ended terms meaning “including but not limited to,” and are used interchangeably with them. The terms “or” and “and” as used herein refer to the terms “and / or,” and are used interchangeably with them unless the context clearly indicates otherwise. The term “such as” as used herein refers to the phrase “such as but not limited to,” and is used interchangeably with it.

[0080] The methods and apparatus of this disclosure may be implemented in many ways. For example, they may be implemented by software, hardware, firmware, or any combination of software, hardware, and firmware. The above-described order of steps for the methods is for illustrative purposes only, and the steps of the methods of this disclosure are not limited to the order specifically described above unless otherwise specifically stated. Furthermore, in some embodiments, this disclosure may also be implemented as a program recorded on a recording medium, the program including machine-readable instructions for implementing the methods according to this disclosure. Thus, this disclosure also covers recording media storing programs for performing the methods according to this disclosure.

[0081] It should also be noted that in the apparatus, devices, and methods of this disclosure, the components or steps are decomposable and / or recombinable. Such decomposition and / or recombination should be considered equivalent to the present disclosure. The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use this disclosure. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein can be applied to other aspects without departing from the scope of this disclosure. Therefore, this disclosure is not intended to be limited to the aspects shown herein, but rather to be carried out within the widest scope consistent with the principles and novel features disclosed herein.

[0082] The above description has been given for purposes of illustration and description. Furthermore, this description is not intended to limit the embodiments of this disclosure to the forms disclosed herein. Although numerous exemplary aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, alterations, additions, and sub-combinations therein.

Claims

1. An Internet of Things (IoT) system compatible with multiple devices and providing services to multiple devices, characterized in that, The system includes: An interface module is used to provide a hardware device interface, through which the hardware device interface is connected to the hardware device to obtain the hardware device's instruction manual and program assembly. The tool module receives the instruction manual and program assembly of the hardware device corresponding to the tool module, and encapsulates the instruction manual and program assembly to obtain encapsulation data. A communication module, wherein the communication module corresponds to a communication method; The upper-layer application module corresponds to a communication protocol with the hardware device. Based on the encapsulation data of the hardware device, the upper-layer application module, communication module and interface module are selected to establish a connection with the hardware device. After the connection is completed, the upper-layer application module provides hardware device services.

2. The system according to claim 1, characterized in that, The communication protocols include: HTTP protocol and RESTful protocol.

3. The system according to claim 1, characterized in that, The tool module is also used to encapsulate the communication data between the system and the hardware device.

4. The system according to claim 1, characterized in that, The system also includes a hardware management center module, which is used to create and control the operating logic flow of hardware devices and save basic information of hardware devices.

5. The system according to claim 1, characterized in that, The system also includes: a low-level protocol module group, which includes communication protocols for various hardware devices and program sets for interfacing with hardware devices.

6. The system according to claim 1, characterized in that, The interface module, tool module, communication module, and upper-layer application module are each comprised of multiple modules, forming an interface module group, a tool module group, a communication module group, and an upper-layer application module group, respectively. Each communication module in the communication module group corresponds to a different communication protocol, and each upper-layer application module in the upper-layer application module group corresponds to a different communication protocol with the hardware device.

7. A method for providing services to multiple devices using an Internet of Things (IoT) system compatible with any one of claims 1-6, characterized in that, The method includes: The interface module provides a hardware device interface, through which the hardware device interface is connected to obtain the hardware device's instruction manual and program set; Through the tool module, the manual and program assembly of the hardware device corresponding to the tool module are received, and the manual and program assembly are encapsulated to obtain encapsulation data. Based on the encapsulation data of the hardware device, the corresponding upper-layer application module, communication module, and interface module are selected to establish a connection with the hardware device. After the connection is completed, the upper-layer application module provides hardware device services.

8. The method according to claim 7, characterized in that, The communication protocols include: HTTP protocol and RESTful protocol.

9. The method according to claim 7, characterized in that, The method further includes: encapsulating the communication data between the system and the hardware device through a tool module.

10. The method according to claim 7, characterized in that, The method also includes: creating and controlling the operation logic flow of hardware devices through the hardware management center module, and saving the basic information of hardware devices.

11. The method according to claim 7, characterized in that, The method also includes: using the underlying protocol module group, which includes the communication protocols of various hardware devices, to interface with the hardware device program set.