System and method for distributed and dynamically configurable motor control

By dynamically configuring the hardware blocks in the motor control system, the problem that existing motor control systems are difficult to adapt to changing industrial applications is solved, and the flexibility and cost-effectiveness of the motor control system are achieved.

CN113196644BActive Publication Date: 2025-04-15SCHNEIDER ELECTRIC USA INC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN201980083314.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2018-11-09
Filing Date
2019-11-08
Publication Date
2025-04-15
Estimated Expiration
2039-11-08

AI Technical Summary

Technical Problem

Existing motor control systems are designed as a 'one-size-fits-all' approach, making it difficult to provide scalable and dynamically configured motor control solutions in the face of changing industrial applications.

Method used

By receiving a request for the motor control switch, multiple functional modules are determined and configurable hardware blocks are assigned to each module, and the hardware blocks are dynamically configured based on the functional module configuration of the assigned hardware blocks to form a distributed system for controlling the motor.

Benefits of technology

It realizes the flexibility and adaptability of the motor control system, and can dynamically configure the motor control function according to specific applications, reduce the specificity and quantity of hardware, reduce equipment costs, and improve the scalability of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113196644B_ABST
    Figure CN113196644B_ABST
Patent Text Reader

Abstract

Technology for managing a distributed control system for a motor control switch is described. A request to implement a first controller for a motor control switch is received. An embodiment determines a plurality of function modules of the first controller. Each of the plurality of function modules includes an instance of computer logic configured to perform a corresponding function. A corresponding motor control function set (MCFS) for performing the corresponding function of each of the plurality of function modules is determined. One or more of a plurality of configurable hardware blocks are assigned to each of the plurality of function modules. An embodiment configures each of the plurality of configurable hardware blocks based on the MCFS of the function module to which the corresponding configurable hardware block is assigned. The configured plurality of configurable hardware blocks operate as a distributed system to control the motor control switch.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This international application is based on and claims the priority of U.S. Provisional Application No. 62 / 758,245, filed on November 9, 2018, entitled “SYSTEMS AND METHODS OF DISTRIBUTED AND DYNAMICALLY CONFIGURABLE MOTOR CONTROL,” the entire contents of which are incorporated herein by reference. Technical Field

[0003] The present disclosure relates generally to motor control and, more particularly, to systems and techniques for configuring distributed motor control functionality. Background Art

[0004] Today's industry uses motors to perform a variety of tasks. Typically, various types of motors can be used, depending on the specific application. Motors can be used for fixed speed, variable speed and / or position control of various types of industrial equipment. In most industrial applications, motor controllers are used together with the motors themselves to form a motor control system. The motor controller may include logic and hardware for starting and stopping the motor, selecting motor rotation, selecting and adjusting speed, adjusting or limiting torque and / or various protection functions (such as overload and / or fault). Current motor controllers are typically a "one size fits all" approach and contain a monolithic block of motor control functions, many of which remain unused based on the application because one motor controller is designed for a variety of applications. In view of the wide variability of motor control applications, this monolithic block approach to motor control systems poses a severe challenge to providing scalable and dynamically configurable motor control solutions for evolving industrial applications. Summary of the invention

[0005] One embodiment described herein provides a method that includes receiving a request to implement a first controller for a motor control switch. The method also includes determining a plurality of function modules of the first controller, wherein each of the plurality of function modules includes an instance of computer logic configured to perform a corresponding function. The method includes determining a corresponding motor control function set (MCFS) for performing the corresponding function of each of the plurality of function modules. In addition, the method includes identifying a plurality of configurable hardware blocks that can be used to implement the first controller.

[0006] The method further includes assigning one or more of the plurality of configurable hardware blocks to each of the plurality of functional modules, wherein at least two of the plurality of configurable hardware blocks are assigned to a first of the plurality of functional modules. The method includes configuring each of the plurality of configurable hardware blocks based on the MCFS of the functional module to which the corresponding configurable hardware block is assigned, and operating the configured plurality of configurable hardware blocks as a distributed system to control the motor control switch.

[0007] Another embodiment described herein provides a system comprising one or more computer processors and a memory containing a computer program code, which, when executed by the operation of the one or more computer processors, performs an operation. The operation includes receiving a request to provide a controller function for a motor control switch using a distributed controller, wherein the distributed controller includes a plurality of functional modules, each of which includes an instance of computer logic configured to perform a corresponding function. In addition, the operation includes identifying a plurality of configurable hardware blocks that can be used to implement the controller functionality. The operation also includes determining a corresponding configuration for each of the plurality of functional modules to implement a distributed system that provides the controller functionality for the motor control switch. The operation includes configuring each of the plurality of configurable hardware blocks based on the configuration of each of the plurality of functional modules determined, and operating the configured plurality of configurable hardware blocks as a distributed system to control the motor control switch.

[0008] A third embodiment described herein provides a non-transitory computer readable medium containing computer program code, which, when executed by operation of one or more computer processors, performs operations. The operations include receiving a request of a first controller to implement a motor control switch. The operations also include determining a plurality of function modules of the first controller, wherein each of the plurality of function modules includes an instance of computer logic configured to perform a corresponding function. The operations include determining a corresponding motor control function set (MCFS) for performing a corresponding function of each of the plurality of function modules.

[0009] In addition, the operation includes identifying a plurality of configurable hardware blocks that can be used to implement the first controller, and assigning one or more of the plurality of configurable hardware blocks to each of the plurality of functional modules, wherein at least two of the plurality of configurable hardware blocks are assigned to a first of the plurality of functional modules. The operation also includes configuring each of the plurality of configurable hardware blocks based on the MCFS of the functional module to which the corresponding configurable hardware block is assigned. The operation includes operating the configured plurality of configurable hardware blocks as a distributed system to control the motor control switch. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] A more detailed description of the disclosure briefly summarized above can be obtained by reference to various embodiments, some of which are shown in the accompanying drawings. Although the drawings illustrate selected embodiments of the disclosure, these drawings are not to be considered limiting of its scope, as the disclosure may admit to other equally effective embodiments.

[0011] Figure 1 An example of an industrial motor control system according to one embodiment described herein is shown.

[0012] Figure 2 An example of a logical function mapping of a system for distributed and dynamically configurable motor control according to one embodiment described herein is shown.

[0013] Figure 3 Example functionality of a system for distributed and dynamically configurable motor control according to one embodiment described herein is shown.

[0014] Figure 4 An example of a single logical function mapping of a system for distributed and dynamically configurable motor control according to one embodiment described herein is shown.

[0015] Figure 5 An example of a control logic representation of a single logic function map for a system of distributed and dynamically configurable motor control according to one embodiment described herein is shown.

[0016] Fig. 6A is a flow chart illustrating a method for distributed and dynamically configurable motor control according to one embodiment described herein.

[0017] Figure 6B is a flow chart illustrating the assembly of a method for distributed and dynamically configurable motor control according to one embodiment described herein.

[0018] Figure 6C is a flow chart illustrating the operation of a method for distributed and dynamically configurable motor control according to one embodiment described herein.

[0019] Fig. 7A An example of a starter motor topology utilizing a system for distributed and dynamically configurable motor control according to one embodiment described herein is shown.

[0020] Figure 7B An example of a star-delta inverter motor topology utilizing a system for distributed and dynamically configurable motor control according to one embodiment described herein is shown.

[0021] Figure 8An example of a starting device topology utilizing a system for distributed and dynamically configurable motor control according to one embodiment described herein is shown.

[0022] Fig. 9 is a functional block diagram of a general storage system for implementing the various embodiments described herein.

[0023] Fig.10 is a flow chart illustrating a method for configuring and operating a distributed system for controlling motor control switches according to one embodiment described herein.

[0024] Fig.11 is a flow chart illustrating another method for configuring and operating a distributed system for controlling motor control switches according to one embodiment described herein.

[0025] Fig.12 is a flow chart illustrating another method for configuring and operating a distributed system for controlling motor control switches according to one embodiment described herein.

[0026] Wherever possible, identical reference numerals are used to refer to identical elements in the drawings. However, elements disclosed in one embodiment may be beneficially utilized on other embodiments without specific recitation. DETAILED DESCRIPTION

[0027] Embodiments described herein generally provide systems and techniques for dynamically configuring distributed motor control functions. Conventional motor controllers are typically a "one size fits all" approach and contain monolithic blocks of motor control hardware and associated functions, many of which remain unused based on the application as one motor controller is used for a variety of applications. Given the wide variability of motor control applications, this monolithic block approach to motor control systems presents a serious challenge to providing scalable and dynamically configurable motor control solutions for evolving industrial applications.

[0028] Thus, the embodiments described herein provide hardware blocks that may be individually limited and incapable of performing complex motor control operations, but may be dynamically configured and controlled to perform specific tasks as part of a distributed computing system. These hardware blocks may be combined in a variety of configurations, and dynamically configured and controlled to create appropriate motor control functionality for a given application. In this manner, a motor control system may be optimally or otherwise configured for an application without the need for over encompassing motor controllers or attendant hardware to operate a motor control system that does not require infrastructure specific to the application.

[0029] The use of a combination of hardware blocks to increase the flexibility of the motor control system provides a variety of motor control and protection functions that can be tailored to a given application. In addition, this flexibility can be enhanced by configuring the assembled hardware blocks via a software interface to dynamically configure and control the availability of the assembled solution. It should be understood that the benefits are not achieved simply by programming the hardware, but rather by the dynamic configuration of the motor control logic scheme.

[0030] In this way, separate hardware blocks with the same or similar functionality can be used in combination to implement motor protection and control that is not possible with other motor control devices. Using this distributed architecture, combinations of hardware blocks can be used to implement new functionality without requiring new application-specific devices with those functionality, which may not be available or overly inclusive and cost-prohibitive.

[0031] A distributed architecture provides several benefits by reducing the specificity of hardware blocks and the number of hardware blocks required to support, facilitate and / or manage the entire life cycle of an application. For example, this may include equipment design, component selection and procurement, equipment integration, operation and maintenance.

[0032] In addition, by reducing the number of unique hardware device elements that must be managed, and replacing them with more simplified hardware blocks with reduced numbers, the management of replacement parts is simplified. Through economies of scale, the functionality of application-specific hardware devices is distributed on multiple configurable more general-purpose devices, which can significantly reduce equipment costs. In other words, embodiments can produce more general-purpose hardware that can be dynamically configured to work as a part of a distributed system for various different tasks, rather than producing a relatively small amount of application-specific hardware for a given task. In addition, the system can more easily adapt to changing user needs, because the same device can be used to implement a wide range of functions, rather than realizing a specific limited set of functions, which is achieved by the ability to dynamically configure and control the various devices in the system.

[0033] Figure 1An example of an industrial motor control system according to various embodiments of the present disclosure is shown. As shown, the production line 100 includes various types of motors 105 (1)-(N). The various types of motors 105 (1)-(N) can include alternating current motors AC, DC motors, and can be further subdivided by type. Examples include, but are not limited to, brushless DC motors and brushed DC motors, AC squirrel cage motors, wound rotor motors, servo motors, and stepper motors. It should be understood that although there are other types of motors, the present disclosure is intended to be used with all types of motors in a wide range of applications. No limitation on the type, quantity, or application of these motors should be implied. Generally, the motors 105 (1)-(N) can directly or indirectly operate equipment related to the function of the production line 100 in a manner depending on the specific application.

[0034] In one embodiment described herein, the motor control component 120 includes a plurality of configurable hardware blocks 125. In motor control applications, the configurable hardware blocks 125 may be referred to as motor control hardware blocks. These configurable hardware blocks 125 may be grouped together to configure various hardware configurations to facilitate and / or operate the control and / or protection functions required for a given application. For example, in some embodiments, it is beneficial for each configurable hardware block 125 to have a similar internal structure to allow a highly scalable and configurable environment. Such configurable hardware blocks 125 may be configured to perform similar or identical functions, examples of which include, but are not limited to, starter modules, digital and analog input / output (I / O) modules, or other modules defined by end-user applications. Embodiments of the present disclosure facilitate a variety of configurable hardware block 125 types and configurations, which, when configured as blocks, allow for defined configuration, control, and protection of desired motors and desired applications.

[0035] exist Figure 1 In the illustrated embodiment, the configurable functionality associated with the illustrated configurable hardware block 125 can be logically represented by a motor control logic block (MCLB) 128. This logic representation is used to programmatically control the functions of the various configurable hardware blocks 125, and allows visualization of the combined configurable hardware blocks 125 and their accompanying logic functions. As shown, the MCLB 128 includes available inputs, switching functions, and outputs. It is through these different functions that the configurable hardware blocks 125 can be dynamically configured to create scalable motor control and protection schemes. In some embodiments, various aspects of these schemes can be considered as distributed scalable protection schemes (Distributed Scalable ProtectionScheme, DSPS). Embodiments of the present disclosure contemplate motor control functions as well as motor protection, represented as MCLB 128.

[0036] In the depicted embodiment, the motor control assembly 120 can interact with a distributed system control assembly 115 located in the common control panel 110. Of course, in other embodiments, the distributed system control assembly 115 can be located in another part of the production line 100, in a building, or even remotely from the production line, and more generally, the distributed system control assembly 115 can be located in any environment associated with any kind of automated process (e.g., an automated car wash). The machine intelligence function can be responsible for the command and control of the motor control assembly and act as an interface between any distributed computing environment 130, such as a remotely located computing environment or other distributed environment. It should be understood that embodiments of the present disclosure do not require a distributed computing environment 130, and all command and control can be done locally as well as remotely.

[0037] The distributed system control component 115 can be hardware-based, software-based, or a combination of the two. In addition, the machine intelligence function can reside locally in a facility with a motor control application, remote from the application, or in a cloud-based environment, such as at the edge of an Internet of Things (IOT) system. Various embodiments of the present disclosure contemplate these different solution forms and environments.

[0038] Figure 2 An example of a logical function mapping of a system for distributed and dynamically configurable motor control according to various embodiments of the present disclosure is shown. The key concept in creating distributed motor control and protection functions for a given application is that a single configurable hardware block 125 can be combined with one or more configurable hardware blocks to perform scalable control and / or protection functions for the desired application. The system of configurable hardware blocks can be programmed with a motor control function set (MCFS), where logical functions are programmed from the distributed system control component 115 to one or more configurable hardware blocks that form a motor control system. The configuration of the MCFS will determine what motor control and / or protection functions the configurable hardware block will perform.

[0039] exist Figure 2 , configurable hardware block logical function map 200 illustrates examples of various functions 205a-g that may be used to implement a scalable configuration of a distributed system control component 115 using configurable hardware blocks to implement MCFS functions, wherein Figure 3Some example functions of configurable hardware blocks and various examples of configurable hardware block types are shown. Examples of types of configurable hardware blocks may include a bus coupler, a boot device, a safe boot device, a power interface module (PowerInterface Module, PIM), an analog / digital input / output module (analog / digital Input / outputModule, IOM), a voltage input module (Voltage Input Module, VIM) and / or a safety interface module (SafetyInterface Module, SIM). Examples of functions may include, but are not limited to, commands, configuring configurable hardware blocks (e.g., providing and running configurations for given configurable hardware blocks), reporting MCFS data (e.g., to report status and information about MCFS), and / or reporting configurable hardware block data (e.g., to report status and information about configurable hardware blocks). It should be understood that there are many other such functions and are not limited by the present disclosure.

[0040] The distributed system control component 115 can process one or more inputs 210a-b from users 220 and / or various systems 230, and convert these into inputs for configurable hardware block functions through the configured MCFS logic. It should be understood that a variety of numbers and types of inputs can be expected, including but not limited to other configurable hardware block outputs, manual inputs from switches or controls (e.g., local control switches or operator panels), other controllers, external memory, other devices, external power supplies, and / or external sensors (e.g., overvoltage, current, temperature). The distributed system control component 115 can reside locally in a facility with a motor control application, remote from the application, or in a cloud-based environment, such as on the edge of an Internet of Things (IoT) system. Various embodiments of the present disclosure take into account these different solution forms and environments.

[0041] The machine intelligence logical function mapping utilizes these various inputs 210a-b and is interconnected by logical operators 270, which allow the interaction of various functions based on the MCFS configuration. These functions create one or more outputs 240a-b via their operators, which can be used by other configurable hardware blocks, distributed system control components 115, or other system and / or management functions. As one of many examples, outputs 240a-b can be used to determine health and product identification data, wire monitoring, motor status and protection monitoring, motor efficiency data, and / or overall system status. It should be understood that these are merely examples, and various embodiments of the present disclosure contemplate other various uses of the outputs of the overall system.

[0042] Figure 4Configurable hardware blocks (e.g., such as Figure 1 125). Each function will have various inputs and outputs associated with it to allow the function to perform its one or more tasks. It should be understood that each of these functions may have the ability to operate independently of any other such function, be completely dependent on one or more other functions, or a combination of both. In this way, these configurable hardware block functions act as building blocks for the MCFS logical function map 200. Figure 2 The use of various functions 205a-g with associated inputs and outputs to form logic blocks that are part of or as a complete solution is shown.

[0043] In one embodiment, the distributed system control component 115 is configured to determine which functional modules (also referred to herein as avatars) are configured and which functional modules provide information. Generally, as used herein, a "functional module" (or "avatar") refers to a computer logic (e.g., logic implemented in software and / or hardware) dedicated to a specific function or task. For example, a specific functional module can perform the function of a direct online reverse start device. In one embodiment, such a functional module is implemented as a distributed system across multiple configurable hardware blocks 125. Generally, the various functions performed by multiple configurable hardware blocks 125 can vary depending on the type of functional module configured. These functions may include, but are not limited to, reading the topology, settings, configuration, identification, diagnosis, and asset data required for the functional module. These functions may also include reading the state of the load protection function of the functional module and saving the state of the load protection function of each functional module. If the I / O module is an analog I / O module, when the system is converted to an operating state, according to another example function, an environmental parameter message may be sent to the I / O module in the functional module. Other functions may also include the transmission of system parameters, such as requesting topology, settings, configuration, identification, diagnostic and / or asset data, reading that data and returning it to the appropriate functional modules.

[0044] Figure 5 An example of a control logic diagram MCLB 128 of a single MCFS for a distributed and dynamically configurable motor control system according to various embodiments of the present disclosure is shown. A configurable hardware block is a unit of hardware that is programmed, configured, and / or controlled by the distributed system control component 115 according to the configured MCFS functionality. Figure 4As described, MCFS includes a series of logical functions, and the configurable hardware block represents how the logic of MCFS is implemented on the hardware of the configurable hardware block. Each unique MCFS will utilize a specific hardware configuration on the configurable hardware block. It should be understood that each configurable hardware block will receive the same MCFS, a unique part of the total MCFS, or no MCFS as determined by the application. The embodiments of the present disclosure also anticipate the redundant nature of the solution, in which multiple configurable hardware blocks can act as redundant components in the event of a failure. Others may not contain (or substantially contain) any part of the MCFS, and will be deployed as needed with spare capacity after the MCFS is properly loaded. In this way, the hardware of each configurable hardware block will be changed to meet the corresponding MCFS.

[0045] Fig. 6A An example flow chart of a method for distributed and dynamically configurable motor control according to various embodiments of the present disclosure is shown. In one embodiment, a user or system determines a motor control application / switch configuration (box 610). This determination can be performed manually when a user selects a specific motor control configuration or parameter for an application for creating an MCFS. The determination can also be made automatically by the system based on input to other parts of the system or automatic discovery of associated devices. For example, if the distributed system control component 115 scans the available motor hardware via an established protocol and determines that a specific configuration is available, the system can determine the appropriate motor control configuration to match. In some embodiments, the selection of an MCFS will determine a specific motor control switch configuration. This may occur in a separate operation that is different from the reminder operation of the process. During the selection, the user or system can select the desired MCFS, which will determine the specific configurable hardware blocks required for the specific application.

[0046] Validation / verification of the MCFS solution is performed to ensure that the proposed solution matches the application to be configured (box 615). The motor control library functions are accessed to extract the appropriate MCFS (box 620). The MCFS is a digital representation of a set of logical functions that will determine what configurable hardware blocks are needed and how the configurable hardware blocks and the distributed system control component 115 will operate to achieve the desired MCFS behavior. Such behavior may include, but is not limited to, management, control, and / or protection. The MCFS can be located in the distributed system control component 115, the distributed computing environment 130, or other general-purpose computers local or remote to the production line 100. Embodiments of the present disclosure contemplate that these functions (boxes 610, 615, and / or 620) can be performed in one or more operations and produce a unified, valid MCFS output for further processing by the system.

[0047] Once the appropriate MCFS is derived to configure the determined configurable hardware blocks, the MCFS will be updated at one or more configurable hardware blocks with the determined MCFS (block 630). The MCFS will be communicated via a communication protocol and loaded into each configurable hardware block. Examples of communications may include CAN, TCP / IP, and / or other industry standard protocols. It should be understood that each configurable hardware block may receive the same MCFS, a unique portion of the total MCFS, or no MCFS as determined by the application.

[0048] Embodiments of the present disclosure also contemplate the redundant nature of the solution, where multiple configurable hardware blocks can act as redundant components in the event of a failure. Others may not contain any portion of MCFS, but are deployed as needed with spare capacity once MCFS is properly loaded.

[0049] Once dynamically updated with the appropriate MCFS, one or more configurable hardware blocks will run the MCFS and enter an operational state (block 640). This state may include verifying the loading of the MCFS and / or communicating with other configurable hardware blocks in the solution to determine the readiness of the complete MCFS functional solution in addition to the readiness of each configurable hardware block. When run, the MCFS may provide periodic checks to ensure that the MCFS is operating properly, such as heartbeats or other mechanisms to verify the end-to-end operation of the solution, such as Figure 6B and Figure 6C shown.

[0050] Figure 6B An example flow chart of a method for assembling distributed and dynamically configurable motor control according to various embodiments of the present disclosure is shown. As previously described, once the appropriate MCFS is derived to configure the determined configurable hardware blocks, the MCFS will be updated at one or more configurable hardware blocks with the determined MCFS (box 630). Each configurable hardware block will be dynamically updated based on the MCFS (box 632). It should be understood that each configurable hardware block can receive the same MCFS, a unique portion of the total MCFS, or no MCFS as determined by the application.

[0051] Verification that the appropriate configurable hardware blocks have been correctly configured for the complete MCFS will occur, and each configurable hardware block will be initialized for operation (frame 636). This initialization may include various internal verifications to ensure that the configurable hardware blocks have been correctly configured and are ready to be placed in a pre-operational state. Upon completion of initialization of each configurable hardware block in the solution, a final operational readiness check will be performed, which may include communications within the configurable hardware block, communications with the remaining application elements, and / or communications between the corresponding elements of the solution and any local, remote, or distributed processing capabilities. If successful, the application will enter an operational state (frame 638) from an operational ready state.

[0052] Figure 6C An example flow chart of the operation of a method for distributed and dynamically configurable motor control according to various embodiments of the present disclosure is shown. Once dynamically updated with the appropriate MCFS, one or more configurable hardware blocks will run the MCFS and enter an operational state (box 640). Once in an operational state, the system will communicate health, status, and / or faults to various parts of the system regardless of their physical location. Examples of health, status, and / or faults may include, but are not limited to, pass / fail status, environmental conditions such as temperature, operating conditions such as voltage, fault conditions such as overcurrent. Embodiments of the present disclosure contemplate using a wide variety of these parameters as information used by the system to determine and perform these actions to advance the benefits of the present disclosure.

[0053] The readiness of the system elements, such as configurable hardware blocks, MCFS, and the entire system will be monitored accordingly (boxes 642, 644, 646). This monitoring can occur in real time, near real time, periodically, on demand, or at any other interval. Monitoring of various readiness conditions may include health, status, and / or failures. This information can be used to communicate with other parts of the system, management systems, or other functions to achieve communication, monitoring, and / or management of the entire system. The configurable hardware blocks, MCFS, and the entire system will also be monitored for failures or other behaviors determined to be abnormal for a given application (boxes 643, 645, 646). Each failure and / or anomaly will be processed (box 650) and remedied accordingly. Processing and remediation may include a wide range of actions, including but not limited to reporting health, status, and / or failures to the management system for further action. In various embodiments, autonomous actions are also contemplated as part of the present disclosure, in which the system can be used to remedy failures that are determined to be occurring.

[0054] Fig. 7AAn example of a starting motor topology utilizing a distributed and dynamically configurable motor control system according to various embodiments of the present disclosure is shown. In this case, a MCFS of a motor starter is implemented utilizing a single configurable hardware block. As a result of the associated MCFS, a starter motor MCLB is shown (box 700). Such MCFS will produce a starter motor configurable hardware block configuration (box 710). Magnetic motor starters, which are typically an electromechanical device that starts and stops a connected motor load, can be found in nearly all motor control applications. Most motor starters consist of an electrical contactor and an overload relay to provide protection in the event of an electrical event associated with the motor, such as a motor overload.

[0055] The starter motor control switch configuration is determined for a specific application. Based on the application, the MCFS of the motor starter device is determined by the user or the system and is available locally or remotely from the distributed computing environment 130 at the distributed system control component 115. The starter motor control MCFS is programmed into a configurable hardware block, such as Fig. 7A Once MCFS has been updated at the configurable hardware block and reported as ready, MCFS is run and the configurable hardware block is then configured to start the motor control switch. The other connections to the circuit can now be installed or activated and the circuit operates as designed.

[0056] It should be understood that although the motor control logic may not be as complex as many motor control or protection functions, the control or protection is implemented using the same configurable hardware block device as the more complex MCFS configuration and application. In addition, the concept of a scaled solution can be illustrated in this example because although only one configurable hardware block is used, if a non-distributed or scalable solution is implemented, more hardware resources that may never be used may be required. In short, the benefits of the present disclosure are achieved when the functions are less complex and less hardware is required. Implementing this solution without the benefits of the present disclosure may result in a much more complex hardware solution.

[0057] Figure 7B An example of an inverting dual speed topology utilizing a distributed and dynamically configurable motor control system according to various embodiments of the present disclosure is shown. In this case, four configurable hardware blocks are utilized to implement the MCFS of the dual speed inverter. The dual speed inverter MCLB (box 720) is shown as a result of the associated MCFS. This MCFS will produce a dual speed inverter configurable hardware block configuration (box 730). The dual speed connection is used to control a dual speed motor, which is one way to achieve motor speed control in applications such as lifting, milling, and pumping.

[0058] The dual speed inverter motor control switch configuration is determined for use in a particular application. Based on the application, the MCFS for the star-delta inverter motor controller is determined by the user or system and can be obtained locally or remotely from the distributed computing environment 130 at the distributed system control component 115. The dual speed inverter motor control MCFS is programmed into a configurable hardware block such as Figure 7B Once MCFS has been updated on the multiple configurable hardware blocks and each one is reported ready, MCFS is run and the configurable hardware block solution is then configured as a dual speed reverser motor control switch. The other connections to the circuit can now be installed or activated and the circuit operates as designed. Figure 7B The benefit of the flexibility of the distributed architecture is shown because four separate configurable hardware block devices that are similar to each other are used.

[0059] When completed, the system transitions from the operational ready state to the operational state. In the operational state, the system will perform control and protection functions for the motor control application based on the configuration from the MCFS. It should be understood that the benefits of the operating system include collecting and transmitting the operating characteristics of the motor control application. This can include capturing and transmitting parameters associated with the application, including motor efficiency, electrical usage, and faults associated with the components of the application. The data can be transmitted to parts of the system for further analysis or action. This includes transmission to a distributed computing environment 130, where the information can be analyzed and utilized in various big data or IOT applications.

[0060] Any general purpose computer system used in various embodiments of the present disclosure may be, for example, a general purpose computer such as one based on an Intel Pentium processor, a Motorola PowerPC, a Sun UltraSPARC, a HP PA-RISC processor, an ARM, or any other type of processor.

[0061] For example, various embodiments of the present disclosure may be implemented as dedicated software running in a general-purpose computer system 800, such as Figure 8 The general computer system shown. The computer system 800 may include a processor 820 connected to one or more memories 830, such as a disk drive, memory, or other device for storing data. The memory 830 is generally used to store programs and data during the operation of the computer system 800. The computer system 800 may also include a storage device 850 that provides additional storage capacity. The components of the computer system 800 can be coupled by an interconnection mechanism 840, which may include one or more buses (e.g., between components integrated within the same machine) and / or networks (e.g., between components located on independent discrete machines). The interconnection mechanism 840 allows communications (e.g., data, instructions) to be exchanged between system components of the system 800.

[0062] The computer system 800 also includes one or more input devices 810, such as a keyboard, a mouse, a trackball, a microphone, a touch screen, and one or more output devices 860, such as a printing device, a display screen, and a speaker. In addition, the computer system 800 may include one or more interfaces (not shown) that connect the computer system 800 to a communication network (in addition to or instead of the interconnection mechanism 840).

[0063] exist Fig. 9 The storage device 850 shown in more detail in the figure generally includes a computer-readable and writable non-volatile recording medium 910, in which a signal is stored, which defines a program to be run by a processor, or information to be processed by a program stored on or in the medium 910 to perform one or more functions associated with the embodiments described herein. The medium can be, for example, a disk or a flash memory. Usually in operation, the processor causes data to be read from the non-volatile recording medium 910 into another memory 920, which allows the processor to access information faster than the medium 910. The memory 920 is generally a volatile random access memory, such as a dynamic random access memory (DRAM) or a static random access memory (SRAM). As shown, it can be located in the storage system 900, or in the memory 830. The processor 820 generally manipulates the data in the integrated circuit memory 830, 920, and then copies the data to the medium 910 after the processing is completed. A variety of mechanisms are known for managing data movement between the medium 910 and the integrated circuit memories 830 , 920 , and the present disclosure is not limited thereto. The present disclosure is not limited to a particular memory 830 or storage device 850 .

[0064] The computer system may include specially programmed dedicated hardware, such as an application-specific integrated circuit (ASIC). Aspects of the present disclosure may be implemented in software, hardware, or firmware, or any combination thereof. In addition, these methods, actions, systems, system elements, and components thereof may be implemented as part of the above-described computer system or as independent components.

[0065] Although computer system 800 is shown as an example of one type of computer system on which various aspects of the present disclosure may be implemented, it should be understood that various aspects of the present disclosure are not limited to such computer systems. Fig. 9 The various aspects of the present disclosure may be implemented on a computer system having Fig. 9In addition, where the functions or processes of the embodiments of the present disclosure are described herein (or in the claims) as being executed on a processor or controller, such description is intended to include systems that use more than one processor or controller to perform these functions.

[0066] Computer system 800 can be a general-purpose computer system programmable using a high-level computer programming language. Computer system 800 can also be implemented using specially programmed dedicated hardware. In computer system 800, processor 820 is typically a commercially available processor, such as the well-known Pentium class processor obtained from Intel Corporation. Many other processors are also available. Such processors typically run an operating system, for example, Windows 95, Windows 98, Windows NT, Windows 2000, Windows ME, Windows XP, Vista, Windows 7, Windows 10, or a sub-operating system, MAC OS System X, available from Microsoft Corporation, or a sub-operating system available from Apple Computer, a Solaris operating system, UNIX, Linux (any distribution) available from Sun Microsystems, or a sub-operating system available from various sources. Many other operating systems can be used.

[0067] The processor and the operating system together define a computer platform, and applications are written for the computer platform in a high-level programming language. It should be understood that the embodiments of the present disclosure are not limited to a specific computer system platform, processor, operating system, or network. In addition, it is obvious to those skilled in the art that the present disclosure is not limited to a dedicated programming language or computer system. In addition, it should be understood that other suitable programming languages ​​and other suitable computer systems may also be used.

[0068] One or more parts of the computer system may be distributed on one or more computer systems coupled to a communication network. For example, as described above, the computer system that determines the available power capacity may be remote from the system manager. These computer systems may also be general-purpose computer systems. For example, various aspects of the present disclosure may be distributed in one or more computer systems configured to provide services (e.g., servers) to one or more client computers or to perform overall tasks as part of a distributed system. For example, various aspects of the present disclosure may be performed on a client-server or multi-layer system, which includes components distributed in one or more server systems, which perform various functions according to various embodiments of the present disclosure. These components may be executable code, intermediate code (e.g., IL) or interpreted code (e.g., Java) that communicates using a communication protocol (e.g., TCP / IP) over a communication network (e.g., the Internet). For example, one or more database servers may be used to store device data, such as expected power consumption, which is used to design a layout associated with an embodiment of the present disclosure.

[0069] It should be understood that the present disclosure is not limited to running on any particular system or system group. In addition, it should be understood that the present disclosure is not limited to any particular distributed architecture, network or communication protocol.

[0070] Fig.10 1 is a flow chart illustrating a method for configuring and operating a distributed system for controlling a motor control switch according to one embodiment described herein. As shown, the method 1000 begins at block 1010, where the control module 115 receives a request to implement a first controller for a motor control switch. The control module 115 determines a plurality of functional modules of the first controller, wherein each of the plurality of functional modules includes an instance of computer logic configured to perform a corresponding function (block 1015). In addition, the control module 115 determines a corresponding MCFS for performing a corresponding function of each of the plurality of functional modules (block 1020).

[0071] The control module 115 further identifies a plurality of configurable hardware blocks that can be used to implement the first controller (block 1025). The control module 115 assigns one or more of the plurality of configurable hardware blocks to each of the plurality of functional modules, wherein at least two of the plurality of configurable hardware blocks are assigned to a first of the plurality of functional modules (block 1030). The control module 115 also configures each of the plurality of configurable hardware blocks based on the MCFS of the functional module to which the corresponding configurable hardware block is assigned (block 1035). The control module 115 operates the configured plurality of configurable hardware blocks as a distributed system to control the motor control switch (block 1040), and the method 1000 ends.

[0072] Fig.111 is a flow chart illustrating another method for configuring and operating a distributed system for controlling a motor control switch according to one embodiment described herein. The method 1100 begins at block 1110, where the control module 115 receives a request to provide controller functionality for a motor control switch using a distributed controller. In the depicted embodiment, the distributed controller includes a plurality of functional modules, each of which includes an instance of computer logic configured to perform a corresponding function. The control module 115 identifies a plurality of configurable hardware blocks that can be used to implement the controller functionality (block 1115).

[0073] In addition, the control module 115 determines a corresponding configuration for each of the plurality of functional modules to implement a distributed system that provides controller functionality for the motor control switch (block 1120). The control module 115 configures each of the plurality of configurable hardware blocks based on the configuration determined for each of the plurality of functional modules (block 1125). The control module 115 further operates the configured plurality of configurable hardware blocks as a distributed system to control the motor control switch (block 1130), and the method 1100 ends.

[0074] Fig.12 1 is a flow chart illustrating another method for configuring and operating a distributed system for controlling a motor control switch according to one embodiment described herein. As shown, the method 1200 begins at block 1210, where the control module 115 receives a request to implement a first controller for a motor control switch. The control module 115 determines a plurality of functional modules of the first controller, wherein each of the plurality of functional modules includes an instance of computer logic configured to perform a corresponding function (block 1215). In addition, the control module 115 determines a corresponding MCFS for performing a corresponding function of each of the plurality of functional modules (block 1220).

[0075] The control module 115 further identifies a plurality of configurable hardware blocks that can be used to implement the first controller (block 1225). The control module 115 assigns one or more of the plurality of configurable hardware blocks to each of the plurality of functional modules, wherein at least two of the plurality of configurable hardware blocks are assigned to a first of the plurality of functional modules (block 1230). The control module 115 also configures each of the plurality of configurable hardware blocks based on the MCFS of the functional module to which the corresponding configurable hardware block is assigned (block 1235). The control module 115 operates the configured plurality of configurable hardware blocks as a distributed system to control the motor control switch (block 1240), and the method 1200 ends.

[0076] Various embodiments of the present disclosure can be programmed using object-oriented programming languages, such as SmallTalk, Java, C++, Ada, or C# (C-Sharp). Other object-oriented programming languages ​​may also be used. Alternatively, functional, scripted, and / or logical programming languages, such as BASIC, ForTran, COBoL, TCL, or Lua, may be used. Various aspects of the present disclosure may be implemented in a non-programming environment (e.g., when viewed in a window of a browser program, documents created in HTML, XML, or other formats present various aspects of a graphical user interface (GUI) or perform other functions. Various aspects of the present disclosure may be implemented as programming or non-programming elements, or any combination thereof.

[0077] The embodiments of the systems and methods described above are generally described for use in relatively large data centers with many racks of equipment; however, embodiments of the present disclosure may also be used with smaller data centers and facilities outside of data centers. Some embodiments may also be very small numbers of computers distributed geographically so as not to resemble a particular architecture.

[0078] In the embodiments of the present disclosure discussed above, the analysis results are described as being provided in real time. As will be appreciated by those skilled in the art, the use of the term "real time" is not meant to imply that the results are immediately available, but rather are available quickly, enabling the designer to try many different designs in a short period of time, such as a few minutes.

[0079] Thus, having described several aspects of at least one embodiment, it will be appreciated that various changes, modifications, and improvements will readily occur to those skilled in the art. Such changes, modifications, and improvements are intended to be a part of this disclosure and are intended to be within the scope of this disclosure. Therefore, the foregoing description and accompanying drawings are intended only as examples.

[0080] In the foregoing, reference has been made to various embodiments. However, the scope of the present disclosure is not limited to the specifically described embodiments. On the contrary, any combination of the described features and elements, whether or not related to different embodiments, is contemplated to implement and practice the contemplated embodiments. In addition, although the embodiments may achieve advantages over other possible solutions or prior art, whether a particular advantage is achieved by a given embodiment does not limit the scope of the present disclosure. Therefore, the foregoing aspects, features, embodiments, and advantages are merely illustrative and are not considered to be elements or limitations of the appended claims unless expressly stated in the claims.

[0081] The various embodiments disclosed herein may be implemented as systems, methods, or computer program products. Thus, various aspects may take the form of a complete hardware embodiment, a complete software embodiment (including firmware, resident software, microcode, etc.), or a combination of software and hardware aspects that are commonly referred to as "circuits," "modules," or "systems." Additionally, various aspects may take the form of a computer program product contained in one or more computer-readable media having computer-readable program code contained thereon.

[0082] Any combination of one or more computer-readable media may be utilized. The computer-readable medium may be a non-transitory computer-readable medium. The non-transitory computer-readable medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared or semiconductor system, device or apparatus, or any suitable combination of the foregoing. More specific examples (non-exhaustive list) of non-transitory computer-readable media may include the following: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. The program code contained on the computer-readable medium may be transmitted using any suitable medium, including but not limited to wireless, wired, fiber optic cable, RF, etc., or any suitable combination of the foregoing.

[0083] The computer program code for performing the operations of various aspects of the present disclosure can be written in any combination of one or more programming languages. In addition, such computer program code can be executed using a single computer system or by multiple computer systems that communicate with each other (e.g., using a local area network (LAN), a wide area network (WAN), the Internet, etc.). Although the various features described above are described with reference to flow charts and / or block diagrams, it will be understood by those of ordinary skill in the art that each box of the flow charts and / or block diagrams and the combination of boxes in the flow charts and / or block diagrams can be implemented by computer logic (e.g., computer program instructions, hardware logic, a combination of the two, etc.). Typically, computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device. In addition, the use of a processor to execute such computer program instructions produces a machine that can perform the functions or actions specified in the flow charts and / or block diagram blocks.

[0084] The flow charts and block diagrams in the accompanying drawings illustrate the possible implementation architecture, function and / or operation of various embodiments of the present disclosure. In this regard, each block in the flow chart or block diagram can represent a module, a code segment or a code portion, which includes one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions mentioned in the box may not occur in the order mentioned in the figure. For example, the two boxes shown in succession can actually be performed substantially simultaneously, or these boxes can sometimes be performed in reverse order, depending on the functions involved. It will also be noted that each box in the block diagram and / or flow chart illustration and the combination of boxes in the block diagram and / or flow chart illustration can be implemented by a system based on special-purpose hardware or a combination of special-purpose hardware and computer instructions that performs a specified function or action.

[0085] The application of the present disclosure is not limited to the construction details and component arrangements set forth in the foregoing description or illustrated by the accompanying drawings. The present disclosure is capable of other embodiments and can be practiced or implemented in various ways. In addition, the words and terms used herein are for descriptive purposes and should not be considered limiting. The words "include," "comprising," "having," "containing," "involving," and variations thereof as used herein are open-ended, i.e., "including but not limited to."

[0086] It should be understood that the above description is intended to be illustrative, not restrictive. By reading and understanding the above description, many other embodiments are apparent. Although the present disclosure describes dedicated examples, it should be appreciated that the systems and methods of the present disclosure are not limited to the examples described herein, but can be modified to be implemented within the scope of the appended claims. Therefore, the description and drawings are to be considered illustrative, not restrictive. Therefore, the scope of the present disclosure should be determined with reference to the appended claims and the full scope of equivalents to which these claims are assigned.

Claims

1. A method for motor control, the method comprising: receiving a request to implement a first controller for a motor control switch; determining a plurality of functional modules of the first controller, wherein each of the plurality of functional modules comprises an instance of computer logic configured to perform a corresponding function; determining a corresponding motor control function set MCFS for executing a corresponding function of each of the plurality of function modules; identifying a plurality of configurable hardware blocks that can be used to implement the first controller; allocating one or more configurable hardware blocks of the plurality of configurable hardware blocks to each functional module of the plurality of functional modules, wherein at least two configurable hardware blocks of the plurality of configurable hardware blocks are allocated to a first functional module of the plurality of functional modules; configuring each of the plurality of configurable hardware blocks based on the MCFS of the functional module to which the corresponding configurable hardware block is assigned; verifying configuration of the plurality of configurable hardware blocks; and responsive to successful verification of the configuration, operating the configured plurality of configurable hardware blocks as a distributed system to control the motor control switch.

2. The method according to claim 1, wherein: The plurality of configurable hardware blocks each include a plurality of inputs, a plurality of outputs, and one or more processing functions for processing input data from one or more of the plurality of inputs to generate output data for transmission on one or more of the plurality of outputs.

3. The method according to claim 1, wherein: Allocating one or more configurable hardware blocks of the plurality of configurable hardware blocks to each of the plurality of functional modules further comprises: determining two or more potential allocations of configurable hardware blocks from the plurality of configurable hardware blocks to a first functional module of the plurality of functional modules, wherein in at least two of the two or more potential allocations, different numbers of configurable hardware blocks are allocated to the first functional module; and One of the two or more potential allocations is selected.

4. The method according to claim 1, wherein: Allocating one or more configurable hardware blocks of the plurality of configurable hardware blocks to each of the plurality of functional modules further comprises: At least one configurable hardware block among the plurality of configurable hardware blocks is reserved as a redundant backup device, so that the reserved at least one configurable hardware block is not currently allocated to any of the plurality of functional modules.

5. The method according to claim 4, further comprising: After the configured plurality of configurable hardware blocks operate as a distributed system to control the motor control switch, determining that a first hardware block in the configured plurality of configurable hardware blocks has experienced an error state, wherein at least a portion of the MCFS of the first functional module is assigned to the first hardware block; allocating the reserved at least one configurable hardware block to the first functional module; configuring the reserved at least one configurable hardware block based on at least a portion of the MCFS of the first functional module; as well as The retained configured plurality of configurable hardware blocks are operated as a distributed system to control the motor control switch.

6. The method according to claim 1, wherein: The plurality of configurable hardware blocks are identical in structure to one another.

7. A system for motor control, the system comprising: one or more computer processors; as well as A memory containing computer program code which, when executed by operation of the one or more computer processors, performs operations comprising: receiving a request to provide controller functionality for a motor control switch using a distributed controller, wherein the distributed controller includes a plurality of functional modules, each functional module including an instance of computer logic configured to perform a corresponding function; identifying a plurality of configurable hardware blocks that can be used to implement the controller functionality; determining a respective configuration for each of the plurality of functional modules to implement a distributed system providing the controller functionality for the motor control switch; configuring each of the plurality of configurable hardware blocks based on the determined configuration for each of the plurality of functional modules; verifying configuration of the plurality of configurable hardware blocks; as well as In response to successful verification of the configuration, the configured plurality of configurable hardware blocks are operated as the distributed system to control the motor control switch.

8. The system according to claim 7, wherein: The plurality of configurable hardware blocks each include a plurality of inputs, a plurality of outputs, and one or more processing functions for processing input data from one or more of the plurality of inputs to generate output data for transmission on one or more of the plurality of outputs.

9. The system according to claim 7, wherein: Allocating one or more configurable hardware blocks of the plurality of configurable hardware blocks to each of the plurality of functional modules further comprises: determining two or more potential allocations of configurable hardware blocks from the plurality of configurable hardware blocks to a first functional module of the plurality of functional modules, wherein in at least two of the two or more potential allocations, different numbers of configurable hardware blocks are allocated to the first functional module; and One of the two or more potential allocations is selected.

10. The system according to claim 7, wherein: Allocating one or more configurable hardware blocks of the plurality of configurable hardware blocks to each of the plurality of functional modules further comprises: At least one configurable hardware block among the plurality of configurable hardware blocks is reserved as a redundant backup device, so that the reserved at least one configurable hardware block is not currently allocated to any of the plurality of functional modules.

11. The system of claim 10, wherein the operations further comprise: After operating the configured plurality of configurable hardware blocks as the distributed system to control the motor control switch, determining that a first hardware block of the configured plurality of configurable hardware blocks has experienced an error state, wherein at least a portion of the MCFS of the first functional module is assigned to the first hardware block; allocating the reserved at least one configurable hardware block to the first functional module; configuring the reserved at least one configurable hardware block based on at least a portion of the MCFS of the first functional module; as well as The retained configured plurality of configurable hardware blocks are operated as a distributed system to control the motor control switch.

12. The system according to claim 7, wherein: The plurality of configurable hardware blocks are identical in structure to one another.

13. A non-transitory computer readable medium containing computer program code which, when executed by operation of one or more computer processors, performs operations comprising: receiving a request to implement a first controller for a motor control switch; determining a plurality of functional modules of the first controller, wherein each of the plurality of functional modules comprises an instance of computer logic configured to perform a corresponding function; determining a corresponding motor control function set MCFS for executing a corresponding function of each of the plurality of function modules; identifying a plurality of configurable hardware blocks that can be used to implement the first controller; allocating one or more configurable hardware blocks of the plurality of configurable hardware blocks to each functional module of the plurality of functional modules, wherein at least two configurable hardware blocks of the plurality of configurable hardware blocks are allocated to a first functional module of the plurality of functional modules; configuring each of the plurality of configurable hardware blocks based on the MCFS of the functional module to which the corresponding configurable hardware block is assigned; verifying configuration of the plurality of configurable hardware blocks; as well as In response to successful verification of the configuration, the configured plurality of configurable hardware blocks are operated as a distributed system to control the motor control switch.

14. The non-transitory computer-readable medium of claim 13, wherein the plurality of configurable hardware blocks each comprise a plurality of inputs, a plurality of outputs, and one or more processing functions for processing input data from one or more of the plurality of inputs to generate output data for transmission on one or more of the plurality of outputs.

15. The non-transitory computer readable medium of claim 13, wherein: Allocating one or more configurable hardware blocks of the plurality of configurable hardware blocks to each of the plurality of functional modules further comprises: determining two or more potential allocations of configurable hardware blocks from the plurality of configurable hardware blocks to a first functional module of the plurality of functional modules, wherein in at least two of the two or more potential allocations, different numbers of configurable hardware blocks are allocated to the first functional module; selecting one of the two or more potential allocations; and At least one configurable hardware block among the plurality of configurable hardware blocks is reserved as a redundant backup device, so that the reserved at least one configurable hardware block is not currently allocated to any of the plurality of functional modules.

16. The non-transitory computer readable medium of claim 15, the operations further comprising: After operating the configured plurality of configurable hardware blocks as a distributed system to control the motor control switch, determining that a first hardware block of the configured plurality of configurable hardware blocks has experienced an error state, wherein at least a portion of the MCFS of the first functional module is assigned to the first hardware block; allocating the reserved at least one configurable hardware block to the first functional module; configuring the reserved at least one configurable hardware block based on at least a portion of the MCFS of the first functional module; as well as The retained configured plurality of configurable hardware blocks are operated as a distributed system to control the motor control switch.

17. The non-transitory computer readable medium of claim 13, wherein: The plurality of configurable hardware blocks are identical in structure to one another.

Citation Information

Patent Citations

  • Power distribution control within a modular converter system using efficiency calculations

    CN108429480A