The present disclosure relates to electronic control and more particularly to duplex control of passively-actuated electronic devices.
Generally speaking, a sump pump is traditionally installed in a pit or well that is located where water needs to be removed. It has the name “sump pump” because a sump refers to a low space that often collects some type of liquid (e.g., water) and a pump is the mechanical means that transfers fluid from one position to another. By funneling water into a pit with a sump pump, the sump pump can function to control the movement of water from the pit to a desired location. In this respect, a basement that may be prone to flooding or water egress due to the water table or soil structure of the building site can shepherd water into the pit and use a sump pump installed in the pit to control the transport water to another particular location. That is, the sump pump functions to pump water that otherwise would accumulate in a home outside of the home to a water-tolerant location.
The background description provided here is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventors, to the extent it is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure.
The present disclosure will become more fully understood from the detailed description and the accompanying drawings.
In the drawings, reference numbers may be reused to identify similar and/or identical elements.
As shown in
The duplex system 100 (e.g., via the controller 200) “passively” controls the operation of the electrical devices (e.g., the pumps 10) by controlling whether one or both pumps 10 are connected to a power source. In other words, the duplex system 100 is an intermediary that receives a power input 20 and selectively functions as a power source to transfer some form of the power input 20 to the pumps 10. In this manner, the duplex system 100 is capable of selecting which set of pumps 10 (e.g., one or a plurality of pumps) has power to operate and when that power will be transferred.
The duplex system 100 therefore has a multiplexing mode and a non-multiplexing mode. A multiplexing mode refers to a mode where the duplex system 10 provides power to multiple devices at the same time such that some set of the multiple devices may operate simultaneously. On the other hand, a non-multiplexing mode refers to a mode where the duplex system 10 provides power to one device at a time. For simplicity of explanation, the multiplexing mode is described with respect to two electrical devices as a duplex mode while the non-multiplexing mode is described accordingly as a non-duplexing mode.
In the duplexing mode shown in
By being able to function in both a duplexing mode and a non-duplexing mode, the duplex system 100 is situationally adaptive. This may be advantageous because electrical, mechanical, and electro-mechanical devices, such as pumps 10, have components which experience stress and strain by cyclical operation. That is, cycling a pump off and on creates some form of stress on the pump 10. When this stress occurs repeatedly, it is nearly inevitable that the cyclical loading will cause some aspect of the pump to fail (e.g., due to cumulative stress and strain over time). Because of this, operating electrical/mechanical devices intelligently is in the best interest for the longevity of these devices. For example, even though a duplexing mode may provide an owner of the pumps 10 with a greater capability of throughput, that high throughput may not be necessary all of the time. In other words, dual pumps 10a, 10b may only be needed on certain occasions while a single pump 10 may be able to keep a basement dry a majority of the time. Here, it would be in the interest of the owner to operate the number of pumps 10 that the situation calls for to minimize the time and resources needed for upkeep and maintenance of the pump system.
The duplex system 100 is configured to recognize the situational needs for the pump system and to passively control the power supplied to the pumps 10 to address these situation needs. For example, if the duplex system. 100 recognizes that a situation is occurring where the pumping capacity of multiple pumps 10 is required, the duplex system 100 can operate in the duplexing mode to enable both of the pumps 10a, 10b to operate to be address the situation. Similarly, if the duplex system 100 recognizes that a situation is occurring where the pumping capacity of only one device is required, the duplex system 100 can operate in the non-duplexing mode to fulfill that requirement. Therefore, by having a duplexing and non-duplexing mode, the duplex system 100 is able to intelligently tailor the power supplied to the pumps 10.
To further minimize the stress or strain on the pump system (e.g., pumps 10), in the non-duplex mode, the duplex system 100 is also configured to alternate between pumps 10. Alternating between pumps 10 offers the duplex system 100 several advantageous. For example, by alternating between pumps 10, the duplex system 100 can attempt to balance the running time of each pump 10. For example, the duplex system 100 may supply power to the first pump 10a for a first period of time or first operating event, then discontinue power to the first pump 10a and supply power to the second pump 10b for a second period of time or second operating event (e.g., subsequent to the first period or first operating event), and then discontinue power to the second pump 1Ob and supply power to the first pump 10a for a third period of time or third operating event (e.g., subsequent to the second period or second operating event). This pattern (e.g., shown in
An operating event refers to a parameterized control situation. As an example, sump pumps are often configured to be OFF (i.e., not running or idle) when an operational switch 12 is in one particular state and to be ON (i.e., running) when the switch is in another state. Here, an operating event would refer to an event that begins when the operational switch 12 triggers the pump 10 to be ON according to a first parameter (e.g., the float reaches a first water level) and ends when the operational switch 12 triggers the pump 10 to be OFF (or idle) according to a second parameter (e.g., the float reaches a second water level). In this respect, during the non-duplex mode, the duplex system 100 may supply power to a pump 10 for a duration of an operating event before alternating the supply power to another pump 10.
An operational switch 12 functions to actively control an associated device such as a pump 10. An operational switch 12 may be mounted on or integrated with its associated device. For example,
An operational switch 12 that actively controls a device is in contrast to a passive control device such as the duplex system 100. In the pump system associated with the duplex system 100, the pump 10, when electrically coupled to the duplex system 100 (e.g., at the second port 124) is not going to actually tum ON and operate unless the pump is (i) supplied adequate power from the duplex system 100 and (ii) switched to an ON state by an operational switch 12 (e.g., a float switch). In this respect, if the duplex system 100 is not supplying power to a pump 10, the pump 10 will not operate even if the operational switch 12 attempts to switch the pump 10 to an ON state because the pump 10 will not have power from the duplex system 100.
One commonly used type of operational switch 12 is a float switch. A float switch typically includes a float that triggers a switch (e.g., a physical switch) when the float reaches a particular position. The float switch may be configured to switch the pump ON when the float rises to a designated first water level (e.g., an on water level) and then to switch the pump OFF when the float reaches a designated second water level (e.g., an off water level). As an example, as a float rises past the first water level, a float switch triggers (or switches) the pump 10 that the float is associated with to an ON state (an operating state) and, as the float descends past the second water level, the position of the float triggers the float switch to switch the pump 10 that it is associated with to an OFF state (e.g., a non-operating state or idle state). The first water level and the second water level are generally configurable such that they may be different water levels or refer to the same water level (e.g., shown in
In addition to being able to balance the run time between pumps 10, the ability to alternate between pumps 10 enables the duplex system 100 to react to situations such as pump failure. That is, the duplex system 100 may recognize that a pump 10 is failing to operate or has failed to operate even though it is supplied power (by the duplex system 100) and being switched ON by an operational switch 12. In this failure situation, the duplex system 100 can recognize a failing pump 10 (e.g., via the current sensing circuit) and reroute or change the power it is supplying to another pump 10 (e.g., a pump 10 that is capable of operation). Moreover, by disconnecting the failing pump from power, the duplex system 100 allows the failing pump to be in a safe mode where maintenance or upkeep can be performed on the failing pump without risk of an electrical issue (e.g., an electrical shock to a maintenance worker).
To illustrate with an example, if the duplex system 100 is supplying power to the first pump 10a and senses that the first pump 10a is having a failure (e.g., not sensing current with the current sensing circuit), the duplex system 100 may disconnect the power source from the first pump 10a and instead supply another pump (e.g., the second pump 10b) with power from the power source. Here, if the duplex system 100 was in a non-duplex mode, the duplex system 100 would connect a disconnected pump 10 (e.g., the second pump 10b) to power and disconnect the first pump 10a from power (i.e., enabling a safe mode for the first pump 10a).
Referring further to
For example, in
The interface 120 is also configured with additional ports 124, 126 that allow the electrical devices (e.g., the pumps 10) to electrically couple with the duplex system 100. In
In some configurations, the interface 120 further includes the ability to receive input from other power inputs 20, such as a second power input 20b like a battery. For instance,
The duplex system 100 may also be configured to communicate various types of faults, warnings, or states that relate to the duplex system itself or the devices connected to the duplex system (e.g., the pumps 10). Some examples of faults or warnings include a jammed pump, a stuck float switch, and an anomaly with a connected device such as an abnormal behavior of a pump 20 (e.g., an abnormal spike in current draw). The duplex system 100 may communicate these faults through different features of the duplex system 100 such as an audio/visual panel associated with the interface 120 or a wireless communication module.
The audio/visual panel refers to a portion of the interface 120 that includes visual indicators and/or audio input/output device(s). For instance,
The visual indicators may also be configured to indicate which power input 20 is being used to power the pump 10 (e.g., alternating current from the wall outlet 20a or direct current from a battery 20b) or the health of a particular power input 20. For example, if a visual indicator associated with the battery 20b is on, it means that the battery 20b is currently being used by the duplex system 100 to feed the power source. There may be a visual indicator associated with the battery 20b that indicates its level of charge in some manner. For example, if the visual indicator associated with the battery 20b is green it means the battery 20b has a healthy level of charge (e.g., 70-100% charged). If the visual indicator associated with the battery 20b is yellow, it means the battery 20b has a moderate level of charge (e.g., 35-70%). If the visual indicator associated with the battery 20b is red, it means the battery 20b has a low level of charge (e.g., 0-35%) and indicates that charging is recommended.
In some examples, a visual indicator indicates that an alert or fault state has been provided by the duplex system 100. For instance, the duplex system 100 includes wireless communication capabilities (e.g., a wireless communication module). With wireless communication capability, the duplex system 100 may communicate alerts (e.g., fault alerts) or other information to one or more wireless-enabled devices. For example, the duplex system 100 may be communicating with a remote device such as a mobile phone. The duplex system 100 may be associated with an application (e.g., a mobile application) that allows a user of the duplex system 100 to monitor and/or control the duplex system 100 (e.g., to manually switch between pumps 10 or modes such as the duplex mode and non-duplexing mode). In this respect, the user may receive alerts or notifications regarding the state of the pumps 10 or the duplex system 100. For instance, the user of the duplex system 100 receives a notification that the duplex system 100 had to switch to the battery as the power input 20 or has detected a fault with one or more pumps 20 (e.g., a motor failure). In some configurations, the duplex system 100 communicates in real-time or near real-time the current that is being sensed across the pumps 10 by the current sensing circuit.
Additionally or alternatively, the A/V panel includes audio input/output devices. For example, the A/V panel includes a speaker. Here, the speaker may allow the duplex system 100 to communicate an audible alert regarding a state of the duplex system 100 or the electrical devices connected to the duplex system 100. For instance, the duplex system 100 generates an audible sound to indicate that a fault or failure has been detected for one or more pumps 10. In another example, the duplex system 100 generates an audible sound to indicate that the duplex system 100 is currently using the battery as the power input 20 or that a device has been disconnected from the duplex system 100 (e.g., a power input 20 or pump 10 has been disconnected).
Referring to
In a situation where the controller 200 decides to operate using the battery 20b to form the power source 102 (e.g., during a power outage), the relay 210 would accordingly select the battery 20b. In this situation, the controller 200 first converts the direct current from the battery 20b (e.g., 12 VDC) into alternating current using an inverter circuit 220 (e.g., shown as a DC-AC converter). This conversion is typically required to allow the power source 102 to provide power that is compatible with pumps 10 configured to use AC power.
By using the battery 20b, the battery 20b will naturally deplete its stored charge over time. Accordingly, for long-term use, the controller 200 includes a charger 230 that enables the battery 20b to charge (e.g., replenish charge). For example, while the wall outlet 20a provides power to the controller 200, the charger 230 is configured to draw an amount of power from the power provided by the wall outlet 20a and provide that power to the battery 20b to recharge. The charger 230 may also include some form of a regulator to regulate the charging rate of the battery 20b (e.g., control the power draw to recharge the battery 20b).
In some examples, the controller 200 refers to a one or more printed circuit boards (PCBs). That is, when the controller 200 “includes” a component, that component may be integrated into one or more PCBs forming the controller 200 or that component may be separate from, yet in communication with some aspect of the controller-200. That is, each component of the controller 200 does not have to be physically connected to each other (e.g., integrated in the same circuit), but can collectively form the controller 200 through a means of communication. In this sense, in some implementations, the components of the controller 200 are entirely enclosed within the housing 110. Yet in other configurations, one or more components of the controller 200 may be external to the housing 110. For instance, when the controller 200 includes a wireless communication module, that module may be connected to a port of the interface 120 such that it is external to the housing 110. Thus, the components of the controller 200 may be internal to the housing 110, external to the housing 110, or some combination thereof.
Referring further to
In response to an operational switch 12 turning a pump 10 to an ON state (i.e., activating a power-supplied pump), the pump 10 will draw some amount of current. For instance, as shown in
Based on the pump’s behavior, the control circuit 250 may disconnect the power being supplied to that particular pump 10 and/or connect power to another pump 10 coupled to the duplex system 100. To connect or disconnect power from a particular pump 10, the control circuit 250 includes a set of relays 252. Each relay of the set is associated with a particular pump 10. This means that the first pump 10a includes at least one relay and the second pump 10b includes at least one relay.
Referring to
The current sensing circuit 240 senses current for each pump. In various implementations, one or more current sensors may be placed at common locations (prior to the relays) to measure the cumulative current going to both pumps. For example, a single current sensor may be used on a first line of the power source; while in other implementations, one current sensor may be used on the first line while a second current sensor may be used on a second line of the power source. In various implementations, only a single relay is used to control current to a pump. In such implementations, the current sensing for a pump may be performed on one or both of (i) the current-carrying line that is being switched by the relay and (ii) the current-carrying line that is not being switched.
In various implementations, the current sensing circuit 240 performs current sensing using one or more current transformers. A current transformer is generally designed to produce an alternating current in a secondary winding that is proportional (e.g., amplified or reduced) to the current being measured in its primary winding. For instance, the primary winding of a current transformer is electrically coupled to relay 252 of the control circuit 250. In some configurations, the current sensing circuit 240 may include only a single current transformer for each pump 10. Yet in other configurations, the sensing circuit 240 mirrors that of the control circuit 250 and includes a current transformer for each relay 252 associated with a pump 10. As shown in
At this time t1, the sensing circuit 240 senses that the change in current corresponds to the first pump 10a turning off. In response to sensing the first pump 10a turning off, the controller 200 disconnects the power source 102 from the first pump 10a by controlling one or more relays 242 associated with the first pump 10a to be in a power source-prohibiting position. At the same time t1 or shortly thereafter, the controller 200 connects the power source 102 to the second pump 10b by controlling one or more relays 242 associated with the second pump 10b to be in a power-providing position.
During that time when the second pump 1Ob is being provided power (after time t1), the second float switch 12b reaches a water level height H(t2) that switches the second pump 10b to an ON state where the second pump 10b is running. During this period of running time, the sensing circuit 240 measures the current of the second pump 10b. Once the second pump 10b pumps the water to a lower water height H(t3), the second float switch 12b turns off the second pump 10b.
At this time t3, the sensing circuit 240 senses that the change in current corresponds to the second pump 10b turning off In response to sensing the second pump 10b turning; off, the controller 200 disconnects the power source 102 from the second pump 10b by controlling one or more relays 242 associated with the second pump 1Ob to be in a power source-prohibiting position. At the same time t3 or shortly thereafter, the controller 200 connects the power source 102 to the first pump 10a by controlling one or more relays 242 associated with the first pump 10a to be in a power-providing position.
During that time when the first pump 10a is being provided power (after time t3), the first float switch 12a reaches a water level height H(t4) that switches the first pump 10a to an ON state where the first pump 10a is running. During this period of running time, the sensing circuit 240 measures the current of the first pump 10a. Once the first pump 10a pumps the water to a lower water height H(t5), the first float switch 12a turns off the first pump 10a.
At this time t5, the sensing circuit 240 senses that the change in current corresponds to the first pump 10a turning off. In response to sensing the first pump 10a turning off, the controller 200 disconnects the power source 102 from the first pump 10a by controlling one or more relays 242 associated with the first pump 10a to be in a power source-prohibiting position. At the same time t5 or shortly thereafter, the controller 200 connects the power source 102 to the second pump 10b by controlling one or more relays 242 associated with the second pump 1Ob to be in a power-providing position.
During that time when the second pump 10b is being provided power (after time t5), the second float switch 12b reaches a water level height H(t6) that switches the second pump 10b to an ON state where the second pump 10b is running. During this period of running time, the sensing circuit 240 measures the current of the second pump 10b. Once the second pump 10b pumps the water to a lower water height H(t7), the second float switch 12b turns off the second pump 10b. This process then repeats this pattern during operation of the pump system unless one of the pumps 10 experiences a failure.
When the duplex system 100 determines that the duplexing operational/ switch 30 has attempted to turn ON multiple pumps 10, the duplex system 100 changes to the duplexing mode and supplies power to both pump 10a, 10b. During that time when both the pumps 10a, 10b are being provided power (after time t4), the pumps 10a, 10b pump the water to a lower water height H(t6), the third float switch 30 turns off both pumps 10a, 10b. During this period of running time, the sensing circuit 240 measures the current of both pumps 10a, 10b as shown by the current magnitude from t4 to t5 being double the current magnitude of a single pump 10. With both pumps 10 being turned off, the controller 200 may return to a non-duplexing mode (e.g., to conserve the operational longevity of the pumps 10).
At t6, the same duplexing sequence occurs again. The incoming water rate greatly increases such that the water level activates a duplexing operational switch 30. This triggers the controller 200 to supply power to both pumps 10a, 10b. During that time when both the pumps 10a, 10b are being provided power after t6, the current sensing circuit 240 measures the current of both pumps 10a, 10b. Yet here, the sensing circuit 240 measures a current that is uncharacteristically low for the current that the sensing circuit 240 and/or controller 200 expects for the current of both pumps 10a, 10b. This occurs in reality because one of the pumps 10 (e.g., the second pump 10b) failed to tum on. Here, because of the measured current anomaly, the controller 200 communicates a fault alert. The fault alert may be communicated via the NV panel or wirelessly as a notification to alert an operator that a failure has occurred with the pump system. In some examples, the operator receives the alert on a wireless-enabled device such as a mobile phone.
The foregoing description is merely illustrative in nature and is in no way intended to limit the disclosure, its application, or uses. The broad teachings of the disclosure can be implemented in a variety of forms. Therefore, while this disclosure includes particular examples, the true scope of the disclosure should not be so limited since other modifications will become apparent upon a study of the drawings, the specification, and the following claims. In the written description and claims, one or more steps within a method may be executed in a different order (or concurrently) without altering the principles of the present disclosure. Similarly, one or more instructions stored in a non-transitory computer-readable medium may be executed in a different order (or concurrently) without altering the principles of the present disclosure. Unless indicated otherwise, numbering or other labeling of instructions or method steps is done for convenient reference, not to indicate a fixed order.
Further, although each of the embodiments is described above as having certain features, any one or more of those features described with respect to any embodiment of the disclosure can be implemented in and/or combined with features of any of the other embodiments, even if that combination is not explicitly described. In other words, the described embodiments are not mutually exclusive, and permutations of one or more embodiments with one another remain within the scope of this disclosure.
Spatial and functional relationships between elements (for example, between modules, circuit elements, semiconductor layers, etc.) are described using various terms, including “connected,” “engaged,” “coupled,” “adjacent,” “next to,” “on top of,” “above,” “below,” and “disposed.” Unless explicitly described as being “direct,” when a relationship between first and second elements is described in the above disclosure, that relationship encompasses a direct relationship where no other intervening elements are present between the first and second elements as well as an indirect relationship where one or more intervening elements are present between the first and second elements.
The phrase “at least one of A, B, and C” should be construed to mean a logical (A ORB OR C), using a non-exclusive logical OR, and should not be construed to mean “at least one of A, at least one of B, and at least one of C.” The term “set” does not necessarily exclude the empty set - in other words, in some circumstances a “set” may have zero elements. The term “non-empty set” may be used to indicate exclusion of the empty set - in other words, a non-empty set will always have one or more elements. The term “subset” does not necessarily require a proper subset. In other words, a “subset” of a first set may be coextensive with (equal to) the first set. Further, the term “subset” does not necessarily exclude the empty set - in some circumstances a “subset” may have zero elements.
In the figures, the direction of an arrow, as indicated by the arrowhead, generally demonstrates t e flow of information (such as data or instructions) that is of interest to the illustration. For example, when element A and element B exchange a variety of information but information transmitted from element A to element B is relevant to the illustration, the arrow may point from element A to element B. This unidirectional arrow does not imply that no other information is transmitted from element B to element A. Further, for information sent from element A to element B, element B may send requests for, or receipt acknowledgements of, the information to element A.
In this application, including the definitions below, the term “module” can be replaced with the term “controller” or the term “circuit.” In this application, the term “controller” can be replaced with the term “module.” The term “module” may refer to, be part of, or include: an Application Specific Integrated Circuit (ASIC); a digital, analog, or mixed analog/digital discrete circuit; a digital, analog, or mixed analog/digital integrated circuit; a combinational logic circuit; a field programmable gate array (FPGA); processor hardware (shared, dedicated, or group) that executes code; memory hardware (shared, dedicated, or group) that stores code executed by the processor hardware; other suitable hardware components that provide the described functionality; or a combination of some or all of the above, such as in a system-on-chip.
The module may include one or more interface circuits. In some examples, the interface circuit(s) may implement wired or wireless interfaces that connect to a local area network (LAN) or a wireless personal area network (WPAN). Examples of a LAN are Institute of Electrical and Electronics Engineers (IEEE) Standard 802.11-2020 (also known as the WIFI wireless networking standard) and IEEE Standard 802.3-2018 (also known as the ETHERNET wired networking standard). Examples of a WPAN are IEEE Standard 802.15.4 (including the ZIGBEE standard from the ZigBee Alliance) and, from the Bluetooth Special Interest Group (SIG), the BLUETOOTH wireless networking standard (including Core Specification versions 3.0, 4.0, 4.1, 4.2, 5.0, and 5.1 from the Bluetooth SIG).
The module may communicate with other modules using the interface circuit(s). Although the module may be depicted in the present disclosure as logically communicating directly with other modules, in various implementations the module may actually communicate via a communications system. The communications system includes physical and/or virtual networking equipment such as hubs, switches, routers, and gateways. In some implementations, the communications system connects to or traverses a wide area network (WAN) such as the Internet. For example, the communications system may include multiple LANs connected to each other over the Internet or point-to-point leased lines using technologies including Multiprotocol Label Switching (MPLS) and virtual private networks (Ns).
In various implementations, the functionality of the module may be distributed among multiple modules that are connected via the communications system. For example, multiple modules may implement the same functionality distributed by a load balancing system. In a further example, the functionality of the module may be split between a server (also known as remote, or cloud) module and a client (or, user) module. For example, the client module may include a native or web application executing on a client device and in network communication with the server module.
Some or all hardware features of a module may be defined using a language for hardware description, such as IEEE Standard 1364-2005 (commonly called “Verilog”) and IEEE Standard 1076-2008 (commonly called “VHDL”). The hardware description language may be used to manufacture and/or program a hardware circuit. In some implementations, some or all features of a module may be defined by a language, such as IEEE 1666-2005 (commonly called “SystemC”), that encompasses both code, as described below, and hardware description.
The term code, as used above, may include software, firmware, and/or microcode, and may refer to programs, routines, functions, classes, data structures, and/or objects. Shared processor hardware encompasses a single microprocessor that executes some or all code from multiple modules. Group processor hardware encompasses a microprocessor that, in combination with additional microprocessors, executes some or all code from one or more modules. References to multiple-microprocessors encompass multiple microprocessors on discrete dies, multiple microprocessors on a single die, multiple cores of a single microprocessor, multiple threads of a single microprocessor, or a combination of the above.
The memory hardware may also store data together with or separate from the code. Shared memory hardware encompasses a single m.e.mory device that stores some or all code from multiple modules. One example of shared memory hardware may be level 1 cache on or near a microprocessor die, which may store code from multiple modules. Another example of shared memory hardware may be persistent storage, such as a solid state drive (SSD) or magnetic hard disk drive (HDD), which may store code from multiple modules. Group memory hardware encompasses a memory device that, in combination with other memory devices, stores some or all code from one or more modules. One example of group memory hardware is a storage area network (SAN), which may store code of a particular module across multiple physical devices. Another example of group memory hardware is random access memory of each of a set of servers that, in combination, store code of a particular module.
The term memory hardware is a subset of the term computer-readable medium. The term computer-readable medium, as used herein, does not encompass transitory electrical or electromagnetic signals propagating through a medium (such as on a carrier wave); the term computer-readable medium is therefore considered tangible and non-transitory. Non-limiting examples of a non- transitory computer-readable medium are nonvolatile memory devices (such as a flash memory device, an erasable programmable read-only memory device, or a mask read-only memory device), volatile memory devices (such as a static random access memory device or a dynamic random access memory device), magnetic storage media (such as an analog or digital magnetic tape or a hard disk drive), and optical storage media (such as a CD, a DVD, or a Blu-ray Disc).
The apparatuses and methods described in this application may be partially or fully implemented by a special purpose computer created by configuring a general purpose computer to execute one or more particular functions embodied in computer programs. Such apparatuses and methods may be described as computerized apparatuses and computerized methods. The functional blocks and flowchart elements described above serve as software specifications, which can be translated into the computer programs by the routine work of a skilled technician or programmer.
The computer programs include processor-executable instructions that are stored on at least one non-transitory computer-readable medium. The computer programs may also include or rely on stored data. The computer programs may encompass a basic input/output system (BIOS) that interacts with hardware of the special p_urpose computer, device drivers that interact with particular devices of the special purpose computer, one or more operating systems, user applications, background services, background applications, etc.
The computer programs may include: (i) descriptive text to be parsed, such as HTML (hypertext markup language), XML (extensible markup language), or JSON (JavaScript Object Notation), (ii) assembly code, (iii) object code generated from source code by a compiler, (iv) source code for execution by an interpreter, (v) source code for compilation and execution by a just-in-time compiler, etc. As examples only, source code may be written using syntax from languages including C, C++, C#, Objective-C, Swift, Haskell, Go, SQL, R, Lisp, Java®, Fortran, Perl, Pascal, Curl, OCaml, JavaScript®, HTML5 (Hypertext Markup Language 5th revision), Ada, ASP (Active Server Pages), PHP (PHP: Hypertext Preprocessor), Scala, Eiffel, Smalltalk, Erlang, Ruby, Flash®, Visual Basic®, Lua, MATLAB, SIMULINK, and Python®.
This application claims priority to, and the benefit of, U.S. Provisional Pat. Application No. 63/342,477, titled Duplex Control of Redundant Passively-Actuated Electronic Devices, filed on May 16, 2022, which is incorporated herein in its entirety by reference.
Number | Date | Country | |
---|---|---|---|
63342477 | May 2022 | US |