A manufacturing worker digital twin software system based on rosnodejs and polygonjs fusion

By integrating rosnodejs and PolygonJS, the problems of intuitive interface, precise modeling and system integration in the factory digital twin system were solved, efficient and stable factory management and production scheduling were achieved, and development efficiency and system reliability were improved.

CN119761006BActive Publication Date: 2025-10-17ZHUHAI MAKERWIT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411830897.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-12
Publication Date
2025-10-17
Estimated Expiration
2044-12-12

AI Technical Summary

Technical Problem

Existing technologies in the development of factory digital twin systems have problems such as insufficient intuitive interfaces and precise modeling capabilities, shallow interaction between robot systems, difficulty in system integration, poor compatibility, and unstable data transmission, which limit the application effect.

Method used

By integrating rosnodejs and PolygonJS, and designing new classes to inherit their key properties and methods, the interface for data interaction and function call is optimized, a data interaction mechanism is established, 3D model construction, simulation, logistics scheduling and real-time data interaction are realized, data caching, synchronization and verification algorithms are adopted, Web-side components are integrated, and a graphical programming method is provided.

Benefits of technology

It has achieved technological integration, improved factory management efficiency, enhanced system stability and reliability, reduced development and maintenance costs, enhanced cross-platform accessibility and development efficiency, and achieved seamless connection from early planning to actual production.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119761006B_ABST
    Figure CN119761006B_ABST
Patent Text Reader

Abstract

The application provides a manufacturing plant digital twin software system based on fusion of rosnodejs and PolygonJS, which comprises a fusion module, the fusion module designs and realizes a new class of Node class of rosnodejs and CoreGraphNode class of PolygonJS; a data interaction mechanism is established in the fusion module; a front-end simulation function module, a high-precision 3D model of the plant is constructed, and through the fusion module and the acquisition capability of equipment and robot motion data in the ROS system, combined with the simulation engine of PolygonJS, the action of the equipment, the running process of the production line, the planning of the logistics route and the motion trajectory of the mobile robot are simulated; an actual production interaction function module integrated with ROS2 is used for intelligently scheduling the logistics system according to the front-end simulation analysis result and real-time data in the actual production process, and the function of the fusion module is used to realize the intelligent scheduling of the logistics system. The application combines the advantages of rosnodejs in robot system interaction and communication and the ability of PolygonJS in 3D modeling and visualization, and realizes a powerful, easy-to-integrate and deploy digital twin system of the plant.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of intelligent management of manufacturing industry and software system development, and particularly relates to a manufacturing plant digital twin software system based on rosnodejs and PolygonJS fusion. BACKGROUND

[0002] In the rapid development of modern manufacturing industry, improving production efficiency, optimizing logistics processes and reducing costs have become key elements for enterprises to continuously compete and develop. With the continuous progress of information technology, digital twin technology, as a new technology, has gradually shown great potential in the optimization management of factories. Digital twin technology creates a virtual mirror of the physical factory, enabling enterprises to plan, simulate and optimize the factory layout, equipment operation and logistics path in a virtual environment, thereby effectively improving production efficiency and reducing operating costs.

[0003] However, although digital twin technology has many advantages in theory, in the development and application process of the digital twin system of the factory, there are still many technical challenges and limitations.

[0004] Firstly, in the construction of complex 3D factory models and fine simulation, the existing technology has obvious shortcomings. For example, orosnodejs, as a technology framework with unique advantages in robot system interaction and communication, although it performs well in robot control, it lacks intuitive visual interface and precise modeling capability for the physical environment of the factory. This makes it difficult for enterprises to obtain accurate and comprehensive simulation results when using orosnodejs for pre-planning and simulation verification of overall factory layout, equipment action and logistics path, thereby affecting the application effect of digital twin technology.

[0005] On the other hand, oPolygonJS, although it has significant advantages in creating realistic 3D scenes and visual simulation operations, can provide enterprises with an intuitive and vivid factory simulation environment, but it has shortcomings in deep interaction with actual robot systems and real-time data communication. In actual production processes, oPolygonJS cannot efficiently interact with mobile robots in real time, which makes it difficult to achieve precise scheduling and dynamic optimization of the logistics system, and this limitation has seriously limited the application of oPolygonJS in digital twin technology.

[0006] In addition, the prior art also faces problems such as difficulty in integration, poor compatibility, unstable data transmission, and poor functional synergy when trying to integrate different systems for plant digital twinning. Due to differences in the architecture and interface of different systems, the integration process is complex and costly, and the development cycle is prolonged. At the same time, the integrated system often cannot guarantee stability and reliability, and is prone to problems such as data loss and transmission delay, which seriously affects the actual application effect of digital twinning technology.

[0007] In summary, the prior art has many limitations in the development and application process of the plant digital twinning system, and it is difficult to meet the urgent needs of the manufacturing industry for efficient, stable, and reliable digital twinning technology. Therefore, a new technical solution is needed to solve the above problems and promote the widespread application and development of digital twinning technology in modern manufacturing. SUMMARY

[0008] In order to overcome the limitations of the prior art, the purpose of the present application is to provide a manufacturing plant digital twinning software system based on the fusion of rosnodejs and PolygonJS. This system combines the advantages of rosnodejs in robot system interaction and communication and the capabilities of PolygonJS in 3D modeling and visualization to achieve a powerful, easy-to-integrate, and deployable plant digital twinning system.

[0009] The present application achieves the above-mentioned purposes through the following technical solutions:

[0010] A manufacturing plant digital twinning software system based on the fusion of rosnodejs and PolygonJS, comprising:

[0011] A fusion module that designs and implements a new class of rosnodejs Node class and PolygonJS CoreGraphNode class. This class inherits the key attributes and methods of the two classes and optimizes the interface for data interaction and function calls. The new class is used to handle the communication mechanism of the ROS system and perform specific operations of PolygonJS in a node object.

[0012] A data interaction mechanism is established in the fusion module to achieve data transmission and interaction between the fusion module and other modules, ensuring that data in the ROS system is transmitted to the 3D scene of PolygonJS for visualization and analysis, and the data simulated and monitored in PolygonJS is fed back to the ROS system for control and scheduling of actual production equipment and mobile robots.

[0013] The early simulation function module constructs a high-precision 3D model of the factory by using the fusion module and the modeling function of PolygonJS, and simulates the action of the equipment, the operation process of the production line, the planning of the logistics route and the motion trajectory of the mobile robot by combining the simulation engine of PolygonJS with the acquisition capability of the equipment and the robot motion data in the ROS system through the fusion module;

[0014] The actual production interaction function module integrated with ROS2 realizes data interaction between the system and the mobile robot through the fusion module, sends instruction information to the mobile robot, and realizes intelligent scheduling of the logistics system according to the early simulation analysis result and real-time data in the actual production process by using the function of the fusion module.

[0015] According to the manufacturing plant digital twin software system based on the fusion of rosnodejs and PolygonJS provided by the application, the fusion module further comprises the following self-defined methods:

[0016] The start method is used to start the Node instance of rosnodejs;

[0017] The stop method is used to stop the Node instance of rosnodejs;

[0018] The publish method is used to publish messages to a specified ROS topic.

[0019] According to the manufacturing plant digital twin software system based on the fusion of rosnodejs and PolygonJS provided by the application, further comprising:

[0020] The Web component is used to realize instant synchronization and cross-platform access functions of data through Web technology.

[0021] According to the manufacturing plant digital twin software system based on the fusion of rosnodejs and PolygonJS provided by the application, the data interaction mechanism further performs data caching, synchronization and verification:

[0022] Receive equipment operation data from various sensors in the chemical production plant;

[0023] Use the data caching mechanism to quickly store the received data in the temporary cache to reduce data access delay;

[0024] Implement a data synchronization algorithm to ensure consistency and real-time between cached data and the system main database;

[0025] Apply a data verification algorithm to real-time verify the data in the cache, eliminate error or abnormal data, and ensure data quality.

[0026] According to the manufacturing plant digital twin software system based on the fusion of rosnodejs and PolygonJS provided by the application, the verified data is converted into visual charts in real time by using the PolygonJS technology, and the running state of the equipment in the chemical production plant is intuitively displayed.

[0027] Through the interaction interface between rosnodejs and the ROS system, control instructions are generated and sent to related equipment and robots according to the real-time state of the equipment and production requirements.

[0028] When a large amount of concurrent data is processed, the computing resources are dynamically allocated according to the priority and urgency of the data, key data is identified and processed preferentially, and load balancing is achieved through intelligent algorithms.

[0029] According to the manufacturing plant digital twin software system based on the fusion of rosnodejs and PolygonJS provided by the application, the Web component is deployed on the server side, and when the system needs to add new functions, repair vulnerabilities or optimize performance, only the corresponding function adding, testing and optimization work needs to be performed on the server side; wherein all update operations are completed on the server side, and there is no need to separately deploy or update each client device in the factory.

[0030] The Web interface of the system is accessed through a standard Web browser; after the server side completes the update, the system automatically detects and prompts the user to refresh the browser page; the user can immediately use the latest version of the system by refreshing the page.

[0031] According to the manufacturing plant digital twin software system based on the fusion of rosnodejs and PolygonJS provided by the application, the fusion module design includes:

[0032] A new class named GraphicalROSNode is created, which inherits from the CoreGraphNode class, aiming to combine the basic capabilities of the graphical node and the properties and methods of the Node class of rosnodejs and the CoreGraphNode class of PolygonJS; wherein in the definition of the GraphicalROSNode class, it is specified that it inherits from the Node class and the CoreGraphNode class, and all public properties and methods of the two parent classes are obtained;

[0033] In the GraphicalROSNode class, all properties and methods of the Node class and the CoreGraphNode class are accessed and called through the inheritance mechanism; for properties and methods that need to be specially processed or rewritten, custom implementations are provided in the GraphicalROSNode class.

[0034] According to the requirements of the system, the properties and methods of the Node class and the CoreGraphNode class are fused;

[0035] According to the above design, the code of the GraphicalROSNode class is written, in which the interfaces and functions provided by the Node class and the CoreGraphNode class are used to realize the specific functions of the fusion class;

[0036] During the test process, the inheritance and fusion of the fusion class to the properties and methods of the Node class and the CoreGraphNode class are verified.

[0037] According to the manufacturing plant digital twin software system based on the fusion of rosnodejs and PolygonJS provided by the application, in the constructor of the GraphicalROSNode class, the constructor of the parent class CoreGraphNode is first called, and the initial graphical properties are passed in;

[0038] In the constructor, a corresponding rosnodejs Node instance is created and saved as a property this.rosNode of the GraphicalROSNode class, and the correct association between this.rosNode and the GraphicalROSNode instance is established;

[0039] In the GraphicalROSNode class, the start method is defined, which internally calls the start method of this.rosNode to start the corresponding rosnodejs node; the stop method is defined, which internally calls the stop method of this.rosNode to stop the corresponding rosnodejs node; the publish method is defined, which accepts at least one parameter to specify the ROS topic to be published, and optionally accepts the message content as a parameter; in the publish method, the relevant method of this.rosNode is called to construct and publish the message according to the specified ROS topic and message content.

[0040] According to the manufacturing plant digital twin software system based on the fusion of rosnodejs and PolygonJS provided by the application, in the GraphicalROSNode class, the base class or interface for building 3D models in PolygonJS is inherited to ensure the use of 3D modeling, rendering and interaction functions provided by PolygonJS;

[0041] In the GraphicalROSNode class, methods and properties for managing specific properties and behaviors of the factory 3D model are added;

[0042] Using the 3D modeling tool or API of PolygonJS, build the factory 3D model in the instance of fusion class, adjust the model parameters to make the 3D model visually close to the actual factory environment;

[0043] In the GraphicalROSNode class, set the physical parameters for each component of the factory 3D model for subsequent simulation calculations to ensure that the behavior of the model in the virtual environment conforms to the physical law;

[0044] Add animation effects to dynamic elements in the factory 3D model, which can be achieved through keyframe animation, path animation or dynamic simulation driven by a physics engine.

[0045] According to the manufacturing plant digital twin software system based on the fusion of rosnodejs and PolygonJS provided by the application, communicate with the ROS system, subscribe to the data topics of actual devices and robots, analyze the received data, and extract the state information, position information, and motion trajectory of the devices and robots;

[0046] According to the actual data obtained through the ROS system, initialize the factory 3D model, map the state, position, and motion trajectory of the actual devices and robots to the corresponding components of the 3D model, set the initial state of the model, and make it consistent with the actual factory environment;

[0047] After initialization, start the simulation, update the state and animation effects of the factory 3D model in real time according to the actual data continuously obtained by the ROS system, and provide a user interaction interface.

[0048] Therefore, compared with the prior art, the system provided by the application has the following beneficial effects:

[0049] (1) Technical fusion innovation: the application breaks down the technical barriers between rosnodejs and PolygonJS, and realizes the synergistic effect of the two. Through the fusion technology, the system can simultaneously utilize the advantages of rosnodejs in robot system interaction and communication and the capabilities of PolygonJS in 3D modeling and visualization, providing a new solution for manufacturing plant digital twins.

[0050] (2) Functional integration innovation: the application integrates the whole process functions from early 3D modeling, simulation, to actual production interaction and logistics scheduling, forming a one-stop solution, which greatly improves the efficiency of factory management.

[0051] (3) Performance optimization innovation: By optimizing data interaction mechanism, using advanced data caching, synchronization and verification algorithms, the application realizes accurate data transmission and efficient processing, ensuring the smoothness of production.

[0052] (4) Web client operation advantage: The application is developed based on the Web end, with convenient cross-platform accessibility, real-time data synchronization and updating, and easy deployment and maintenance.

[0053] (5) Graphical programming advantage: The application introduces graphical programming, reduces the programming threshold, promotes multi-field cooperation, improves development efficiency, and makes the logical structure of the system more intuitive and easy to understand and maintain.

[0054] The application will be further described in detail below in combination with the drawings and specific embodiments. BRIEF DESCRIPTION OF DRAWINGS

[0055] Figure 1 is a principle schematic diagram of an embodiment of a manufacturing workshop digital twin software system based on the fusion of rosnodejs and PolygonJS of the application.

[0056] Figure 2 is a principle schematic diagram of the docking of a forklift AGV and two roller conveyor lines in an embodiment of a manufacturing workshop digital twin software system based on the fusion of rosnodejs and PolygonJS of the application. DETAILED DESCRIPTION

[0057] In order to make the purpose, technical scheme and advantages of the application clearer, the technical scheme in the application will be described clearly and completely below in combination with the drawings in the application. Obviously, the described embodiments are part of the embodiments of the application, not all the embodiments. Based on the embodiments in the application, all other embodiments obtained by those skilled in the art without creative labor fall within the scope of protection of the application.

[0058] In this document, reference to "embodiment" means that the specific feature, structure or property described in connection with the embodiment can be included in at least one embodiment of the application. The phrase appears at various places in the specification does not necessarily all refer to the same embodiment, nor is it necessarily mutually exclusive or alternative to other embodiments. Those skilled in the art explicitly and implicitly understand that the embodiments described herein can be combined with other embodiments.

[0059] Referring to Figure 1 , the embodiment provides a manufacturing workshop digital twin software system based on the fusion of rosnodejs and PolygonJS, comprising:

[0060] The fusion module designs and implements a new class of the Node class of rosnodejs and the CoreGraphNode class of PolygonJS, which inherits key attributes and methods of the two classes and optimizes the interface of data interaction and function call; wherein the new class is used to simultaneously process the communication mechanism of the ROS system and the specific operation of PolygonJS in a node object.

[0061] The data interaction mechanism is established in the fusion module to realize data transmission and interaction between the fusion module and other modules, which is used to ensure that the data transmission in the ROS system is transmitted to the 3D scene of PolygonJS for visual display and analysis, and at the same time, the data simulated and monitored in PolygonJS is fed back to the ROS system, so as to control and schedule the actual production equipment and mobile robots.

[0062] The early simulation function module uses the modeling function of the fusion module and PolygonJS to build a high-precision 3D model of the factory, and through the fusion module and the acquisition ability of the motion data of the equipment and robots in the ROS system, combined with the simulation engine of PolygonJS, the action of the equipment, the running process of the production line, the planning of the logistics route and the motion trajectory of the mobile robot are simulated.

[0063] The actual production interaction function module integrated with ROS2 realizes data interaction between the system and the mobile robot through the fusion module, and sends instruction information to the mobile robot, according to the early simulation analysis result and the real-time data in the actual production process, the intelligent scheduling of the logistics system is realized by using the function of the fusion module.

[0064] In this embodiment, the fusion module further includes the following custom methods:

[0065] The start method is used to start the Node instance of rosnodejs.

[0066] The stop method is used to stop the Node instance of rosnodejs.

[0067] The publish method is used to publish messages to the specified ROS topic.

[0068] In this embodiment, the system further includes:

[0069] The Web component is used to realize instant synchronization and cross-platform access function of data through Web technology.

[0070] In this embodiment, the data interaction mechanism also performs data caching, synchronization and verification:

[0071] Receiving equipment operation data from various sensors in the chemical production factory;

[0072] The received data is quickly stored in a temporary cache using a data caching mechanism to reduce data access delay;

[0073] A data synchronization algorithm is implemented to ensure consistency and real-time between cached data and the system master database;

[0074] A data verification algorithm is applied to verify the data in the cache in real time, eliminate incorrect or abnormal data, and ensure data quality.

[0075] In this embodiment, the PolygonJS technology is used to convert the verified data into visual charts in real time, intuitively displaying the running state of the equipment in the chemical production plant; through the interaction interface between rosnodejs and the ROS system, control instructions are generated and sent to related equipment and robots according to the real-time state of the equipment and production requirements. Among them, when processing a large amount of concurrent data, the computing resources are dynamically allocated according to the priority and urgency of the data; key data is identified and processed first, and load balancing is achieved through intelligent algorithms.

[0076] In this embodiment, the Web component is deployed on the server side, and when the system needs to add new functions, fix bugs, or optimize performance, only the corresponding function addition, testing, and optimization work need to be done on the server side; all update operations are completed on the server side, without the need to separately deploy or update each client device in the factory; the Web interface of the system is accessed through a standard Web browser; after the server side completes the update, the system automatically detects and prompts the user to refresh the browser page; the user can immediately use the latest version of the system by refreshing the page.

[0077] In this embodiment, the fusion module design includes:

[0078] A new class named GraphicalROSNode is created, which inherits from the CoreGraphNode class, aiming to combine the basic capabilities of the graphical node (from CoreGraphNode) and the properties and methods of the Node class of rosnodejs and the CoreGraphNode class of PolygonJS; in the definition of the GraphicalROSNode class, it is explicitly specified that it inherits from the Node class and the CoreGraphNode class, and all public properties and methods of the two parent classes are obtained.

[0079] In the GraphicalROSNode class, all the attributes and methods of the Node class and the CoreGraphNode class are accessed and invoked through the inheritance mechanism; for the attributes and methods that need to be specially processed or overridden, custom implementations are provided in the GraphicalROSNode class.

[0080] According to the requirements of the system, the attributes and methods of the Node class and the CoreGraphNode class are fused; according to the above design, the code of the GraphicalROSNode class is written, in which the interfaces and functions provided by the Node class and the CoreGraphNode class are used to realize the specific functions of the fusion class; during the testing process, the inheritance and fusion of the fusion class to the attributes and methods of the Node class and the CoreGraphNode class are verified.

[0081] In the constructor of the GraphicalROSNode class, the constructor of the parent class CoreGraphNode is first called, and the initial graphical attributes (such as label, color, position, etc., the attributes here are only examples, and are determined according to the real requirements of the CoreGraphNode) are passed in; in the constructor, a corresponding Node instance of rosnodejs is created and saved as an attribute this.rosNode of the GraphicalROSNode class, and the correct association between this.rosNode and the GraphicalROSNode instance is established;

[0082] The start method is defined in the GraphicalROSNode class, which internally calls the start method of this.rosNode to start the corresponding rosnodejs node; the stop method is defined, which internally calls the stop method of this.rosNode to stop the corresponding rosnodejs node; the publish method is defined, which accepts at least one parameter to specify the ROS topic to be published, and optionally accepts the message content as a parameter; in the publish method, the relevant methods of this.rosNode are called to construct and publish messages according to the specified ROS topic and message content. It can be seen that this embodiment defines several convenient operation methods, such as the start and stop methods, which internally simply call the corresponding start and stop methods of the Node instance of rosnodejs, and the publish method for publishing messages to the specified ROS topic. Of course, the real scene needs to correctly construct and process the message according to the specific ROS message type, etc.

[0083] In the GraphicalROSNode class, inherit from the base class or interface used in PolygonJS for building 3D models to ensure the use of 3D modeling, rendering and interaction functions provided by PolygonJS; In the GraphicalROSNode class, add methods and properties for managing factory 3D model specific properties and behaviors; Use PolygonJS's 3D modeling tools or API to build factory 3D models in the instance of the fusion class, and adjust the model parameters to make the 3D model visually close to the actual factory environment.

[0084] In the GraphicalROSNode class, set physical parameters for each component of the factory 3D model for subsequent simulation calculations to ensure that the model's behavior in the virtual environment conforms to physical laws; Add animation effects to dynamic elements in the factory 3D model, implemented through keyframe animation, path animation or physically engine-driven dynamic simulation.

[0085] In this embodiment, communicate with the ROS system, subscribe to the data topics of actual equipment and robots, parse the received data, and extract the state information, position information, motion trajectory, etc. of the equipment and robots;

[0086] According to the actual data obtained through the ROS system, initialize the factory 3D model, map the state, position, motion trajectory, etc. of the actual equipment and robots to the corresponding components of the 3D model, set the initial state of the model, and make it consistent with the actual factory environment;

[0087] After initialization, start the simulation run, update the state and animation effects of the factory 3D model in real time according to the actual data continuously obtained by the ROS system, and provide a user interaction interface.

[0088] For example, the present embodiment takes the asynchronous function part as an example:

[0089] First, initialize the rosnodejs node, which is a basic prerequisite for using rosnodejs.

[0090] Then create an instance of GraphicalROSNode, pass in the node name

[0091] And rosnodejs Node initialization related options (such as namespace, etc.).

[0092] Then start this graphical ROS node, and a simple message publishing operation example is performed, which publishes a message of std_msgs / String type to the / test_topic topic (again, this is just an example, and the message type and content should be adjusted according to actual business requirements). Subsequently, more graphical interactions and complex ROS node operation logic can be added.

[0093] In actual applications, the real API of the CoreGraphNode class in PolygonJS needs to be accurately called to invoke the constructor of its parent class and utilize the graphical functions (such as adding nodes to the graphical scene, handling node movement and scaling, and other interaction events).

[0094] For the rosnodejs part, message publishing, subscription, and interaction with different ROS message types, services, etc. need to be detailed and perfected according to the actual requirements in the ROS system. For example, correctly handle message callbacks, service request responses, and other operations.

[0095] Develop data interaction interfaces and communication protocols to achieve data transmission and interaction between fusion classes and other modules. Referring to the above code, because the graphical programming node integrates the ros node, it automatically inherits the ros Node topic publishing, subscription, and other methods, and inherits the ROS communication function to achieve data interaction and communication function.

[0096] In actual applications, the development environment setup includes the following:

[0097] Install and configure the necessary development tools and software environment, including ROS-related components, PolygonJS development library, programming language runtime environment (such as Node.js), etc. Ensure compatibility and normal communication between various software.

[0098] Establish the project development directory structure and set up related configuration files and parameters. For example, a forklift AGV is connected to two roller conveyor lines, one of which is a forklift AGV loading a pallet from one conveyor line and moving to another location to place the pallet on another conveyor line. Only by drawing the flow and corresponding parameters as shown in Figure 2 , can the graphical programming interface be used.

[0099] According to the design scheme, write the code of the fusion class, implement the inheritance and fusion of the properties and methods of the Node class of rosnodejs and the CoreGraphNode class of PolygonJS, and conduct sufficient testing and debugging to ensure the normal function of the fusion class.

[0100] Utilize the fusion class and PolygonJS functions to build a 3D model of the factory, set the physical parameters and animation effects of the model. Obtain data from actual devices and robots through the ROS system for simulation initialization. For example, factory buildings, automatic doors, elevators, and various devices can be encapsulated as fusion classes, with their properties and methods defined, and then encapsulated as PolygonJS child nodes. Through the addition of these physical object nodes, coordinate (position in the factory scene) settings, size settings, action parameter settings, and graphical programming configuration in the physical nodes to publish and subscribe to different topics and services according to the actual process flow and information flow requirements, the 3D model can be quickly built.

[0101] Write simulation algorithms and analysis programs to implement production, logistics, and robot motion simulation analysis functions. Integrate ROS2-related functions to achieve real-time interaction and scheduling with mobile robots.

[0102] Conduct comprehensive system testing, including functional testing, performance testing, compatibility testing, etc. Simulate different production scenarios and robot operation conditions to verify the accuracy and stability of the system.

[0103] Based on the test results, optimize and adjust the system, fix any issues found, and improve the performance and reliability of the system.

[0104] In the past independent system, rosnodejs focuses on the communication and interaction of robot system, for example, when using rosnodejs alone to control the movement of robots in a traditional factory, although it can accurately realize the movement of a single robot according to the predetermined trajectory, and can perform basic communication scheduling in a multi-robot cooperation scene, but its visualization effect is poor, and it cannot intuitively present the overall layout of the factory and the correlation between devices. PolygonJS performs well in building exquisite 3D models and can create realistic factory environment models, but it lacks the ability to interact deeply with the actual robot system. When the two are combined, taking a car manufacturing factory as an example, during the early planning of a new car model production, the combined system can simultaneously obtain accurate motion parameters of the robot using rosnodejs and build high-precision 3D models of the factory workshop, production equipment, and robots using PolygonJS. Engineers can intuitively see the operation of the robot in the workshop and easily adjust the motion path and action of the robot according to actual needs without switching between two different systems and performing complex data conversion, greatly improving the efficiency and accuracy of early planning. It can be seen that the present application breaks down the technical barriers between rosnodejs and PolygonJS, realizing the synergistic effect of the two. Through the fusion technology, the system can simultaneously utilize the advantages of rosnodejs in robot system interaction and communication and the capabilities of PolygonJS in 3D modeling and visualization, providing a new solution for digital twin of manufacturing industry.

[0105] Traditional digital twin systems of factories often have scattered functions. For example, some systems can only perform simple 3D model display and cannot simulate and analyze the production process; while some systems that focus on logistics scheduling cannot be combined with the actual running state of the robot. The present application integrates the whole process functions from early 3D modeling, simulation and simulation to actual production interaction and logistics scheduling, forming a one-stop solution that greatly improves the efficiency of factory management. In an electronic product manufacturing factory, from the early stage of factory construction, the 3D modeling function of the system can be used to build the plant and production line model, and the simulation and simulation function can be used to verify the rationality of the production line design in advance, such as whether the equipment layout will cause material transportation route congestion, whether the production rhythm is coordinated, etc. In the actual production stage, the system can obtain the position and state information of the mobile robot in real time, dynamically adjust the path planning of the robot according to the production task, and optimize the task allocation of the logistics system to ensure that the materials are supplied to the production line in time and accurately, realizing seamless connection from virtual design to actual production, avoiding the problem of information island and poor function connection caused by using multiple independent systems.

[0106] In the un-fused system, there are many bottlenecks in data transmission and processing. For example, when using independent analog system and robot control system in traditional factory, the large amount of data generated by the analog system often appears delay and data loss phenomenon when transmitting to the robot control system. This leads to the actual operation of the robot does not match the simulation situation, for example, in the logistics handling scene, the robot may collide or delay material handling because of the delay of the received path information. The fused system of the present application optimizes the data interaction mechanism, adopts advanced data caching, synchronization and verification algorithms. In the chemical production factory, the equipment operation data collected by the sensor can be quickly and accurately transmitted to the fused system, and the system uses the visualization function of PolygonJS to display the equipment state in real time, and through the interaction ability of rosnodejs and ROS system, the control instructions are timely delivered to the related equipment and robots. At the same time, when processing a large number of concurrent data, the system can intelligently allocate computing resources, and give priority to processing key data, such as data related to safety warning and production bottleneck link, to ensure the efficient and stable operation of the whole production process, and reduce the probability of production stagnation and failure caused by data problems.

[0107] In traditional PC software applications, if it is a manufacturing industry digital twin software developed based on a specific operating system, such as a conventional PC software that only adapts to Windows system, when the management personnel or technical personnel of the factory use devices with different operating systems (such as Linux or macOS), they cannot smoothly access and operate the software. The Web-based system of the present application can be accessed through a browser, as long as the device is connected to the network and has a browser, whether it is a desktop computer in the factory office, a notebook computer of an engineer, or a handheld mobile device, it can log in to the system at any time to view the real-time state of the factory, adjust parameters and other operations. For example, when performing emergency repair of equipment in the factory, technical personnel can use a mobile phone to quickly access the system through the Web end, view the 3D model of the equipment and related data, and guide the on-site maintenance personnel to operate, even if they are not in front of the office computer in the factory.

[0108] The conventional PC-side software often relies on manual update or synchronization at fixed time intervals in terms of data update. In the production process of a factory, this can cause information lag. For example, in the conventional PC-side factory monitoring software, the running data of the equipment can be updated every half hour. However, in the web-side system of the present application, with the advantages of modern web technologies such as the WebSocket real-time communication protocol, instant synchronization of data can be achieved. When the sensors on the production line detect changes in equipment parameters or changes in the position of mobile robots, the web-side interface can be updated and displayed instantly, and the management personnel can make decisions in the first time. For example, in logistics management, once the mobile robot changes the route due to obstacles, the web-side can immediately display the new route information, and the dispatcher can immediately adjust the subsequent logistics tasks to ensure the smoothness of the entire production and logistics process.

[0109] For conventional PC-side software, when deployed in a factory, complex operations such as installation programs and configuration environments need to be performed on each device. Moreover, when the software is updated or vulnerabilities are repaired, each device needs to be updated one by one, which not only consumes a lot of time and manpower, but also may fail to install or update due to differences between some devices. The web-side system of the present application only needs to be deployed and updated on the server side, and factory employees can use the latest version by accessing it through a browser. For example, when the system adds a simulation function for a new type of equipment, it only needs to be completed and tested on the server side, and all authorized users in the factory can immediately use the new function by refreshing the browser page, greatly reducing the deployment and maintenance costs and improving the usability of the system.

[0110] Under the traditional conventional code programming method, professional programmers with deep programming knowledge are needed to develop digital twin software for manufacturing factory, including mastering multiple programming languages (such as C++, Python, etc.), data structures and algorithms, etc. This makes it difficult for non-programming professionals, such as factory process engineers and logistics planners, to participate in the development and optimization process of the software. The application of graphical programming in the system of the present application, taking the construction of a logistics simulation model of a factory as an example, the logistics planner can easily build the basic framework of the logistics simulation by dragging graphical modules representing different functions (such as modules representing material transportation equipment, path node modules, etc.), without the need to write complex code. This greatly reduces the programming threshold and promotes collaboration between personnel from different professional fields, enabling faster adjustment and optimization of system functions according to actual production needs.

[0111] When developing functions using conventional code programming, a lot of time is often spent on the entire process from writing code, compiling, debugging to finally implementing functions. For example, when adding a new device action simulation function, the programmer may need to write hundreds of lines of code, and may encounter various syntax errors, logical errors and other problems during debugging. Through graphical programming, in the system of the present application, only the corresponding device action module needs to be selected from the graphical module library, the relevant parameters need to be set and connected to the system to complete the function addition. This enables the developer to quickly iterate the system function, such as in the process of optimizing the factory production line, different device combinations and production flow simulation schemes can be quickly tried, the connection and parameter setting of the graphical module are adjusted in time according to the simulation results, so that the optimal production scheme is quickly found, and the product development cycle is greatly shortened.

[0112] In conventional code programming, especially for complex algorithms and business logic, the readability of the code is poor, and it is a difficult task for the subsequent maintenance personnel to understand the code logic and troubleshoot. Graphical programming displays the logical structure of the system in an intuitive graphical module and connection relationship. In the factory digital twin software of the present application, when viewing the interaction logic of the devices on the production line, the connection order and data flow between the various device modules can be clearly seen through the graphical interface. When the system fails, the maintenance personnel can quickly locate the module or connection line where the problem is located, and perform targeted repair. For example, when the path planning logic of the mobile robot fails, through graphical display, it can be quickly determined whether the path calculation module or the connection with the environment perception module is abnormal, greatly improving the maintainability of the system.

[0113] The technical features of the above embodiments can be combined in any way. To make the description concise, not all possible combinations of the technical features in the above embodiments are described, but as long as the combinations of the technical features do not exist contradictions, they should be considered as the scope of the present application.

[0114] The above embodiments are only preferred embodiments of the present application, and cannot be used to limit the scope of protection of the present application. Any non-essential changes and replacements made by those skilled in the art based on the present application shall fall within the scope of protection of the present application.

Claims

1. A digital twin software system for manufacturing plants based on the integration of rosnodejs and PolygonJS, characterized by: include: A fusion module, which designs and implements a new class combining the Node class of rosnodejs and the CoreGraphNode class of PolygonJS. This new class inherits the key properties and methods of both classes and optimizes the interfaces for data interaction and function calls. The new class is used to simultaneously handle the communication mechanism of the ROS system and perform specific operations of PolygonJS in a single node object. A data interaction mechanism is established in the fusion module to realize data transmission and interaction between the fusion module and other modules. This is used to ensure that the data in the ROS system is transmitted to the PolygonJS 3D scene for visualization and analysis. At the same time, the data simulated and monitored in PolygonJS is fed back to the ROS system to control and schedule actual production equipment and mobile robots. The early simulation function module uses the fusion module and the modeling function of PolygonJS to build a high-precision 3D model of the factory. By combining the fusion module with the ability to obtain equipment and robot motion data in the ROS system and the simulation engine of PolygonJS, it simulates the movement of equipment, the operation process of the production line, the planning of logistics routes, and the movement trajectory of mobile robots. The actual production interaction function module of ROS2 is integrated, and data interaction between the system and the mobile robot is realized through the fusion module, and instruction information is sent to the mobile robot. According to the results of the previous simulation analysis and the real-time data in the actual production process, the function of the fusion module is used to realize the intelligent scheduling of the logistics system.

2. The system according to claim 1, wherein: The fusion module also includes the following custom methods: The start method is used to start the Node instance of rosnodejs; The stop method is used to stop the Node instance of rosnodejs; The publish method is used to publish messages to the specified ROS topic.

3. The system according to claim 1, wherein: Also includes: Web-side components are used to achieve real-time data synchronization and cross-platform access through Web technology.

4. The system according to claim 1, wherein: The data interaction mechanism also performs data caching, synchronization and verification: Receive equipment operation data from various sensors in chemical production plants; Utilize the data caching mechanism to quickly store received data in a temporary cache to reduce data access latency; Implement data synchronization algorithms to ensure consistency and real-time performance between cached data and the system's main database; Apply data verification algorithms to verify the data in the cache in real time, eliminate erroneous or abnormal data, and ensure data quality.

5. The system according to claim 4, characterized in that: Using PolygonJS technology, the verified data is converted into visual charts in real time, which can directly display the operating status of equipment in chemical production plants; Through the interactive interface between rosnodejs and the ROS system, control instructions are generated and sent to related equipment and robots based on the real-time status of the equipment and production requirements; When processing large amounts of concurrent data, computing resources are dynamically allocated based on the priority and urgency of the data; critical data is identified and prioritized, and load balancing is achieved through intelligent algorithms.

6. The system according to claim 2, characterized in that: Web components are deployed on the server side. When the system needs to add new features, fix vulnerabilities, or optimize performance, only the corresponding function addition, testing, and optimization work need to be performed on the server side. All update operations are completed on the server side, eliminating the need to deploy or update each client device in the factory separately. Access the system's web interface through a standard web browser; when the server has completed the update, the system automatically detects and prompts the user to refresh the browser page; the user can immediately use the latest version of the system by refreshing the page.

7. The system according to any one of claims 1 to 6, characterized in that The fusion module design includes: Create a new class named GraphicalROSNode. This class inherits from the CoreGraphNode class. It aims to combine the basic capabilities of graphical nodes and integrate the properties and methods of the Node class of rosnodejs and the CoreGraphNode class of PolygonJS. In the definition of the GraphicalROSNode class, it is explicitly specified that it inherits from the Node class and the CoreGraphNode class, obtaining all the public properties and methods of these two parent classes. In the GraphicalROSNode class, all properties and methods of the Node class and the CoreGraphNode class are accessed and called through the inheritance mechanism; for properties and methods that require special processing or rewriting, custom implementations are provided in the GraphicalROSNode class; According to the system requirements, the properties and methods of the Node class and the CoreGraphNode class are integrated; Based on the above design, write the code for the GraphicalROSNode class. In the code, use the interfaces and functions provided by the Node class and the CoreGraphNode class to implement the specific functions of the fusion class. During the test, verify the inheritance and integration of the fusion class's properties and methods of the Node class and CoreGraphNode class.

8. The system according to claim 7, characterized in that: In the constructor of the GraphicalROSNode class, first call the constructor of the parent class CoreGraphNode and pass in the initial graphical properties; In the constructor, create a corresponding rosnodejs Node instance and save it as an attribute this.rosNode of the GraphicalROSNode class, and ensure that the correct association is established between this.rosNode and the GraphicalROSNode instance; Define the start method in the GraphicalROSNode class, which internally calls the start method of this.rosNode to start the corresponding rosnodejs node; define the stop method, which internally calls the stop method of this.rosNode to stop the corresponding rosnodejs node; define the publish method, which accepts at least one parameter to specify the ROS topic to be published and accepts the message content as a parameter; inside the publish method, call the relevant methods of this.rosNode to construct and publish a message based on the specified ROS topic and message content.

9. The system according to claim 8, characterized in that: In the GraphicalROSNode class, inherit from the base class or interface used to build 3D models in PolygonJS to ensure that the 3D modeling, rendering, and interaction functions provided by PolygonJS are utilized; In the GraphicalROSNode class, add methods and properties for managing specific properties and behaviors of the factory 3D model; Use the PolygonJS 3D modeling tool or API to build a 3D model of the factory in the Fusion class instance. Adjust the model parameters to make the 3D model visually close to the actual factory environment. In the GraphicalROSNode class, set physical parameters for each component of the factory 3D model for subsequent simulation calculations to ensure that the model's behavior in the virtual environment conforms to physical laws; Animate dynamic elements in your 3D factory model through keyframe animation, path animation, or physics-driven dynamic simulation.

10. The system according to claim 9, characterized in that: Communicate with the ROS system, subscribe to data topics of actual devices and robots, parse the received data, and extract the status information, location information, and motion trajectory of the devices and robots; Initialize the factory 3D model based on the actual data obtained through the ROS system, map the status, position, and motion trajectory information of the actual equipment and robots to the corresponding components of the 3D model, and set the initial state of the model to keep it consistent with the actual factory environment; After initialization is completed, the simulation is started. Based on the actual data continuously obtained by the ROS system, the status and animation effects of the factory 3D model are updated in real time, and a user interaction interface is provided.

Citation Information

Patent Citations

  • Vehicle information display system, method and device and storage medium

    CN111614766A

  • Scheduling simulation method and system of AGV logistics system

    CN115793496A