Power generating device and method of operation thereof
A neural network-trained drive control module in free-piston linear expanders adjusts electromagnetic forces and shaft speed to achieve desired output power values in real-time, addressing the challenge of complex power control in these devices.
Patent Information
- Application Number
- JP2025525229
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-11-02
- Filing Date
- 2023-11-02
- Publication Date
- 2025-11-26
AI Technical Summary
Existing power generating devices with free-piston linear expanders face challenges in modulating electromagnetic loading forces to achieve a desired output power value due to complex interactions between force, mass, velocity, and power, making it difficult to control output power in real-time.
A drive control module, potentially trained using a neural network, adjusts electromagnetic load forces and shaft speed in real-time to match a desired output power value by receiving sensor data and using a second-order neural network to determine optimal shaft speed and load force adjustments.
Enables real-time control of output power by gradually changing shaft speed and electromagnetic load force to achieve a desired power value, with adjustments occurring in less than 0.1 ms, maintaining consistent power generation.
Smart Images

Figure 2025538133000001_ABST
Abstract
Description
[Technical Field]
[0001] The improvement relates generally to power plants, and more particularly to power plants incorporating free-piston linear expanders. [Background technology]
[0002] Free-piston linear expanders typically use high-pressure or mixed-phase fluids to move the shaft in a reciprocating sequence along a path. When combined with an electrical generator, the mechanical power produced by the moving shaft can be converted into electrical power. A typical generator includes a stator consisting of a coil wound around the path and a translator with an axially magnetized permanent magnet attached to the shaft and moving with it. In some situations, it may be desirable to provide a variable frequency drive electromagnetically coupled to the generator. The variable frequency drive can modulate the current in the generator's coil to produce a force acting on the translator, which can add or resist a force applied to the shaft, thereby instantaneously increasing or decreasing the speed of the shaft's movement. Thus, the speed of the shaft can be changed in real time as it moves along a path through the involvement of the variable frequency drive. While existing technologies for operating electric power generating apparatuses incorporating free-piston linear expanders have been somewhat satisfactory, there is room for improvement. Summary of the Invention [Problem to be solved by the invention]
[0003] Because the output power of such power generating devices depends on both the speed at which the translator moves relative to the stator (hereinafter referred to as "shaft speed") and the current circulating in the coil, variable frequency drives can affect the output power of free-piston generators by applying an electromagnetic loading force to the generator, which modifies the trajectory of the shaft. However, due to the complex interactions between force, mass, velocity, and power, determining how to modulate the electromagnetic loading force to result in a desired output power value or curve is a difficult problem. This disclosure relates to devices and methods of operating such devices that can enable real-time or near-real-time control of actual output power values. [Means for solving the problem]
[0004] It is known that a significant number of parameters can affect the output power value of the device. Thus, it has been found advantageous to use a drive control module to determine, based on sensor data reflecting the operating state of the power generating device, an electromagnetic load force value that, when applied to the power generating device, gradually changes the shaft speed to a second shaft speed value, where the electromagnetic load force value and the second shaft speed value collectively cause the output power value of the power generating device to correspond to a desired output power value at a point in time. In some embodiments, the drive control module is trained using a neural network to provide better performance. In some embodiments, the architecture of the drive control module is selected to be a second-order neural network that is particularly suited to providing a global optimum solution for immediate future shaft states based on the shaft position, shaft speed, and operating state of the generator, and the global optimum solution is used to calculate future operating states of the device and modify them accordingly in real time.
[0005] According to a first aspect of the present disclosure, there is provided a power generation apparatus comprising: a free-piston linear expander having a moving shaft that generates mechanical power; a generator that converts the mechanical power generated by the movement of the shaft into electrical power; a variable frequency drive coupled to the generator, the variable frequency drive configured to apply an electromagnetic load force u(t) to modify the movement of the shaft and the electrical power; and a controller communicatively coupled to the variable frequency drive, the controller configured to modify the load force u(t) at a first time point t i receiving sensor data reflecting an operating state of the power generating plant at i ), the first shaft speed value v(t i ), and the first electromagnetic load force value u(t i ) and using a drive control module, at a first time t i Based on the sensor data at a second time point t i+1 When the shaft speed v(t) is applied to the second time point t i+1 A second shaft speed value v(t i+1 ) is gradually changed to the second electromagnetic load force value u(t i+1 ), determining a second electromagnetic loading force value u(t i+1 ) and a second shaft speed value v(t i+1 ) at the second time point t i+1 Output power value P(t i+1 ) to the desired output power value Pd(t i+1 ) and the second time point t i+1 The second electromagnetic load force value u(t i+1 and instructing the variable frequency drive to apply a voltage.
[0006] Further, according to the first aspect of the present disclosure, the drive control module may be trained using, for example, a neural network.
[0007] Furthermore, according to the first aspect of the present disclosure, the neural network may be, for example, a quadratic neural network.
[0008] Further, according to the first aspect of the present disclosure, the velocity trajectory function or look-up table can be predetermined using, for example, a velocity determination module, which can be configured to, for example, determine a plurality of second shaft velocity values v(t i+1 ) into the first shaft position value x(t i ), the first shaft speed value v(t i ), and the first electromagnetic load force value u(t i ) can be associated with multiple combinations of
[0009] Furthermore, according to the first aspect of the present disclosure, the desired output power value Pd(t i+1 ) is, for example, the first time point t i A first output power value P(t i ) can be handled.
[0010] Further, according to the first aspect of the present disclosure, there is provided a method for detecting a second electromagnetic load force value u(t i+1 ), determining a second electromagnetic load force value u(t i+1 ) may be applied, for example, at a first time t i At a second time t after i+1 can be executed before
[0011] Furthermore, according to the first aspect of the present disclosure, the steps may be performed in, for example, less than 1 ms, preferably less than 0.5 ms, and most preferably less than 0.1 ms.
[0012] Further, according to the first aspect of the present disclosure, a free-piston linear expander can have, for example, a path, a shaft extending along the path, a piston attached to the shaft, and a cylinder surrounding the piston and forming a hermetically sealed chamber that moves the shaft along the path upon expansion of pressurized gas contained therein, thereby generating mechanical power.
[0013] Further, according to the first aspect of the present disclosure, the generator may include, for example, a linear generator having a plurality of permanent magnets attached to a shaft and a plurality of coils magnetically coupled to the plurality of permanent magnets and wound in a loop around the shaft.
[0014] Furthermore, according to the first aspect of the present disclosure, the generator may include a conversion device that converts mechanical power, for example, linear movement of the shaft, into rotational movement.
[0015] Further, according to the first aspect of the present disclosure, the generator may include, for example, a rotor attached to the conversion device and a stator magnetically coupled to the rotor.
[0016] Further, according to the first aspect of the present disclosure, the power generation apparatus may further include, for example, an energy storage device coupled to the power generation apparatus, the energy storage device storing power and receiving and / or delivering a portion of the power when needed by the controller.
[0017] Further, according to the first aspect of the present disclosure, the controller may, for example, i+1 Desired output power value Pd(t i+1 ) and the second time point t i+1 Upon determining that a difference exists between the output power value of the power generating device at , said one of said receiving and said delivering may be performed.
[0018] According to a second aspect of the present disclosure, there is provided a method of operating a power generation device, the power generation device having a free-piston linear expander having a moving shaft that generates mechanical power, a generator that converts the mechanical power into electrical power, and a variable frequency drive coupled to the generator and configured to apply an electromagnetic load force u(t) to the power generation device, the method including using a controller communicatively coupled to the variable frequency drive, the controller i receiving sensor data reflecting an operating state of the power generating plant at i ), the first shaft speed value v(t i ), and the first electromagnetic load force value u(t i ) and using a drive control module, at a first time t i Based on the sensor data at the second time point t i+1 When the shaft speed v(t) is applied to the second time point t i+1 A second shaft speed value v(t i+1 ) is gradually changed to the second electromagnetic load force value u(t i+1 ), determining a second electromagnetic loading force value u(t i+1 ) and a second shaft speed value v(t i+1 ) at the second time point t i+1 Output power value P(t i+1 ) to the desired output power value Pd(t i+1 ) and the second time point t i+1 The second electromagnetic load force value u(t i+1 and instructing the variable frequency drive to apply the
[0019] Further, according to the second aspect of the present disclosure, the drive control module may be trained using, for example, a neural network.
[0020] Furthermore, according to the second aspect of the present disclosure, the neural network may be, for example, a second-order neural network.
[0021] Furthermore, according to the second aspect of the present disclosure, the desired output power value Pd(t i+1 ) is, for example, the first time point t i A first output power value P(t i ) can be handled.
[0022] Further, according to a second aspect of the present disclosure, a step of receiving sensor data, a second electromagnetic load force value u(t i+1 ), determining a second electromagnetic load force value u(t i+1 ) may be applied, for example, at a first time t i At a second time t after i+1 can be executed before
[0023] According to a third aspect of the present disclosure, there is provided a power generation apparatus comprising: a free-piston linear expander having a moving shaft that produces mechanical power; a generator that converts the mechanical power into electrical power; a variable frequency drive configured to apply an electromagnetic loading force that modifies movement of the shaft; and a controller communicatively coupled to the variable frequency drive, the controller configured to: receive sensor data including a first shaft position value, a first shaft speed value, and a first electromagnetic loading force value; determine, using a drive control module, based on the sensors, a second electromagnetic loading force value that, when applied, gradually changes the shaft speed to a second shaft speed value, wherein the second electromagnetic loading force value and the second shaft speed value cause an output power value to correspond to a desired output power value; and apply the second electromagnetic loading force value.
[0024] Many additional features and combinations of the present improvements will become apparent to those skilled in the art after reading this disclosure. [Brief explanation of the drawings]
[0025] In the figure,
[0026] [Figure 1]FIG. 1 is a block diagram of an example power generation plant showing a free-piston linear expander, a generator, a variable frequency drive, and a controller according to one or more embodiments.
[0027] [Figure 2] FIG. 2 is a block diagram of an example controller of FIG. 1 showing a drive control module according to one or more embodiments.
[0028] [Figure 3] 1 is a flowchart of an example method of operating a power generation device according to one or more embodiments.
[0029] [Figure 4] 2 is a schematic diagram of an example of a computing device of the controller of FIG. 1 in accordance with one or more embodiments.
[0030] [Figure 5] FIG. 1 is a schematic diagram of an example power generation device showing a free-piston linear expander with a dual piston configuration according to one or more embodiments.
[0031] [Figure 6A] 6A-6C are schematic diagrams of the free-piston linear expander of FIG. 5 during a forward stroke, each illustrating a first filling stage, according to one or more embodiments. [Figure 6B] 6A-6C are schematic diagrams of the free-piston linear expander of FIG. 5 during a forward stroke, each illustrating an expansion stage, according to one or more embodiments. [Figure 6C] 6A-6C are schematic diagrams of the free-piston linear expander of FIG. 5 during a forward stroke, each showing a gas braking phase, according to one or more embodiments. [Figure 6D] 6A-6C are schematic diagrams of the free-piston linear expander of FIG. 5 during a forward stroke, each illustrating a second filling stage, according to one or more embodiments.
[0032] [Figure 7A]6A-6D are block diagrams illustrating an example of a switching automaton for a forward stroke and a return stroke (not shown) according to one or more embodiments.
[0033] [Figure 7B] FIG. 1 is a block diagram illustrating the expansion stages in the forward and return strokes according to one or more embodiments.
[0034] [Figure 7C] FIG. 1 is a block diagram of an example of a high-level switching automaton for a power generation device according to one or more embodiments.
[0035] [Figure 8] FIG. 10 is a block diagram of an example of a second-order neural network of a velocity determination module according to one or more embodiments.
[0036] [Figure 9] FIG. 1 is a block diagram of an example of a rate determination module according to one or more embodiments.
[0037] [Figure 10A] 10 is a graph illustrating position as a function of time during the extension phase of a stroke, according to one or more embodiments. [Figure 10B] 10 is a graph illustrating velocity as a function of time during the extension phase of a stroke according to one or more embodiments. [Figure 10C] 10 is a graph illustrating velocity co-state as a function of time for the extension phase of a stroke according to one or more embodiments. [Figure 10D] 10 is a graph illustrating position co-state as a function of time during the extension phase of a stroke, according to one or more embodiments.
[0038] [Figure 11] FIG. 10 is a block diagram of another example of a rate determination module according to one or more embodiments.
[0039] [Figure 12A] 1 is a graph illustrating mechanical power as a function of time for an example power plant under condition C1, according to one or more embodiments. [Figure 12B] 10 is a graph illustrating speed as a function of time for an example power plant under condition C1, according to one or more embodiments. [Figure 12C] 10 is a graph illustrating electromagnetic load force as a function of time for an example power generating device under condition C1, according to one or more embodiments. [Figure 12D] 1 is a graph illustrating position as a function of time for an example power plant under condition C1, according to one or more embodiments.
[0040] [Figure 13A] 10 is a graph illustrating mechanical power as a function of time for an example power plant under condition C1, illustrating switching instants, according to one or more embodiments. [Figure 13B] 10 is a graph showing speed as a function of time for an example power plant under condition C1, illustrating switchover instants, according to one or more embodiments. [Figure 13C] 10 is a graph illustrating electromagnetic load force as a function of time in an example power plant under condition C1, illustrating switching instants, according to one or more embodiments. [Figure 13D] 10 is a graph showing position as a function of time in an example power plant under condition C1, illustrating switchover moments, according to one or more embodiments.
[0041] [Figure 14A] 10 is a graph illustrating mechanical power as a function of time for an example power plant under condition C2, according to one or more embodiments. [Figure 14B] 10 is a graph illustrating speed as a function of time for an example power plant under condition C2, according to one or more embodiments. [Figure 14C]10 is a graph illustrating electromagnetic load force as a function of time for an example power plant under condition C2, according to one or more embodiments. [Figure 14D] 10 is a graph illustrating position as a function of time for an example power plant under condition C2, according to one or more embodiments.
[0042] [Figure 15A] 10 is a graph illustrating mechanical power as a function of time for an example power generating plant under condition C3, according to one or more embodiments. [Figure 15B] 10 is a graph illustrating speed as a function of time for an example power plant under condition C3, according to one or more embodiments. [Figure 15C] 10 is a graph illustrating electromagnetic loading force as a function of time for an example power generating device under condition C3, according to one or more embodiments. [Figure 15D] 10 is a graph illustrating position as a function of time for an example power plant under condition C3, according to one or more embodiments.
[0043] [Figure 16A] 10 is a graph illustrating mechanical power as a function of time for an example power plant under condition C7, according to one or more embodiments. [Figure 16B] 10 is a graph illustrating speed as a function of time for an example power plant under condition C7, according to one or more embodiments. [Figure 16C] 10 is a graph illustrating electromagnetic load force as a function of time for an example power plant under condition C7, according to one or more embodiments. [Figure 16D] 10 is a graph illustrating position as a function of time for an example power plant under condition C7, according to one or more embodiments.
[0044] [Figure 17A] 10 is a graph illustrating mechanical power as a function of time including noise for three experimental controllers according to one or more embodiments. [Figure 17B] 10 is a graph showing velocity as a function of time including noise for three experimental controllers according to one or more embodiments. [Figure 17C] 10 is a graph showing electromagnetic loading force as a function of time including noise for three experimental controllers according to one or more embodiments. [Figure 17D] 10 is a graph showing position as a function of time including noise for three experimental controllers according to one or more embodiments.
[0045] [Figure 18A] 10 is a graph showing mechanical and electrical power for three experimental controllers according to one or more embodiments. [Figure 18B] 10 is a graph showing mechanical and electrical power for three experimental controllers according to one or more embodiments. [Figure 18C] 10 is a graph showing mechanical and electrical power for three experimental controllers according to one or more embodiments.
[0046] [Figure 19] 1 is an electrical circuit for an example of a power generating device with an energy storage system according to one or more embodiments.
[0047] [Figure 20] 20A and 20B show power for different embodiments of a power generator operated using three experimental controllers, showing results with and without the energy storage system of FIG. 19, in accordance with one or more embodiments.
[0048] [Figure 21A] 20 illustrates power in an exemplary power generation device operated using a neural network-based controller showing results with and without the energy storage system of FIG. 19 in accordance with one or more embodiments. [Figure 21B]20 illustrates the charge rate in an exemplary power generation device operated using a neural network-based controller, showing results with and without the energy storage system of FIG. 19 , in accordance with one or more embodiments. DETAILED DESCRIPTION OF THE INVENTION
[0049] FIG. 1 illustrates an example of a power generation plant 100 according to one embodiment. As shown, the power generation plant 100 includes a free-piston linear expander 102, a generator 104, a variable frequency drive 106, and a controller 108. The free-piston linear expander 102 has a moving shaft that generates mechanical power through linear movement. The generator 104 converts the mechanical power generated by the movement of the shaft into electrical power. As shown, the variable frequency drive 106 is coupled to the generator 104 to provide an electrical load to the generator 104. The variable frequency drive 106 is configured to apply an electromagnetic load force u(t) (the variable "t" represents time) that modifies the movement of the shaft, which in turn modifies the electrical power generated by the generator 104. The controller 108 is communicatively coupled to at least the variable frequency drive 106, although in some embodiments, the controller 108 is also communicatively coupled to the free-piston linear expander 102 and / or the generator 104 via sensors and / or dedicated controllers.
[0050] In use, the controller 108 is configured to receive sensor data 110 reflecting the operating conditions of the free-piston linear expander 102 and the power plant 100 at a first point in time f. In the illustrated example, the sensor data 110 includes a first shaft position value x(t i ), the first shaft speed value v(t i ), and the first electromagnetic load force value u(t i However, in some other embodiments, the sensor data 110 received by the controller 108 may include other values. For example, in some embodiments, at a first time point t iA first output power value P(t) indicating the output power P(t) of the generator 104 i ) may be part of the sensor data 110.
[0051] Generally speaking, the controller 108 determines at a first time t i Based on the sensor data 110 at a second time point t i+1 When applied to the shaft speed v(t), the shaft speed v(t) is increased to a second time t i+1 A second shaft speed value v(t i+1 ) is gradually changed to the second electromagnetic load force value u(t i+1 ) is determined. In this way, the second electromagnetic load force value u(t i+1 ) is applied by the variable frequency drive 106 until a second time interval ti+1, a second electromagnetic load force value u(t i+1 ) and a second shaft speed value v(t i+1 ) are both at the second time point t i+1 The output power value P(ti+1) at i+1 ) to correspond to
[0052] In other words, at the first time t i The shaft speed v(ti) and shaft position x(t i ) and electromagnetic load force u(t i ) at the second time t i+1 The value of the shaft speed v(t) at time t is first determined. Then, the value of the electromagnetic load force u(t) is calculated at time t i and intermediate time t i and this value is determined during the time interval extending between intermediate times t i to the second time point t i+1 When the voltage is applied to the shaft, the shaft rotates at a second time t i+1 shaft speed v(t i+1 ) This latter value, the electromagnetic load force u(t), is calculated at the intermediate time t i to the second time point t i+1 , and is performed by the controller 108 until a second time point t i+1In some embodiments, a velocity trajectory function or look-up table is predetermined. The velocity trajectory function and look-up table generally correspond to a second shaft speed value v(t i+1 ) into the first shaft position value x(t i ), the first shaft speed value v(t i ), and the first electromagnetic load force value u(t i ) are associated with different combinations of the second time point t i+1 The determination of the value of the shaft speed v(t) at the second time point t i+1 The appropriate shaft speed v(t i+1 ) to determine the shaft speed v(t i ), shaft position x(t i ), and electromagnetic load force u(t i ) and / or the use of a look-up table.
[0053] In some embodiments, the power generation plant 100 operates in a constant output power mode. Thus, in these embodiments, at the second time t i+1 Desired output power value Pd(t i+1 ) is the first output power value P(t i ) by repeating these steps during shaft movement, the power output P(t) of the power generating plant 100 can be kept constant during at least some stages of shaft movement. In some other embodiments, the desired power output value Pd(t i+1 ) is selected based on the desired shaft speed curve, which may or may not be constant over time.
[0054] 2 illustrates an example of details of the controller 108. More specifically, the controller 108 includes a drive control module 112 communicatively coupled to the variable frequency drive 106. As shown, the drive control module 112 is configured to generate a first shaft position value x(t i ), the first shaft speed value v(t i ), the first electromagnetic load force value u(t i), the first output power value P(t i ) and the like. The drive control module 112 then receives sensor data 110, including but not limited to, the shaft speed at a second time t i+1 The second shaft speed value v(t i+1 ) to achieve a second electromagnetic load force value u(t i+1 ) and determining a second shaft speed value v(t i+1 ) is the electromagnetic load force value u(t i+1 ) to produce a second output power value P(t i+1 ) at the second time point t i+1 Desired output power value Pd(t i+1) The desired output power value Pd(t i+1 ) may be input to or accessible by the controller 108, depending on the embodiment. For example, at intermediate time t i The second electromagnetic load force value u(t i+1 ) is determined, the controller 108 i to the second time point t i+1 The second electromagnetic load force value u(t i+1 ) at a first time t i+1 The second shaft speed value v(t i+1 ) is corrected to match the second time point t i+1 The output power of the power generation device is equal to the desired output power value Pd(t i+1 By repeatedly performing these steps over time, the output power P(t) can be controlled in real time or near real time.
[0055] Referring back to FIG. 1 , the free-piston linear expander 102 includes a path along which a shaft extends, a piston attached to the shaft, and a cylinder surrounding the piston and forming a hermetically sealed chamber in which an expanding pressurized gas or mixed-phase fluid moves the shaft along the path, thereby generating mechanical power. The free-piston linear expander 102 can have any suitable type of configuration, including, but not limited to, a single-action piston configuration, a double-action piston configuration, with or without a bounce chamber. Typically, the piston is moved along the path by a gas or mixed-phase fluid expanding in one or more hermetically sealed chambers. In some embodiments, the expansion of the gas may be caused by high-pressure gas being supplied into the hermetically sealed chambers, which then expands in the hermetically sealed chambers, effectively pushing the piston in a given direction along the path. Additionally or alternatively, the expansion of the gas may be caused by a combustion-like event occurring in the hermetically sealed chambers. Depending on the embodiment, the type of free-piston linear expander 102 used in the power plant 100 may vary.
[0056] In some embodiments, the generator 104 is a linear generator. In these embodiments, the linear generator may be provided in the form of a tubular linear permanent magnet synchronous machine. Such a machine may have a plurality of permanent magnets attached to a shaft and one or more coils arranged in a loop around the shaft and magnetically coupled to the permanent magnets. In some other embodiments, the linear generator has permanent magnets fixed around a path while the shaft moves the coils along the path. In some embodiments, the generator 104 need not be linear. Indeed, in these latter embodiments, the generator has a conversion device that converts the mechanical power of the linear movement of the shaft into rotational movement using mechanical or hydraulic means. In these cases, the generator may have a rotor attached to the conversion device and a stator magnetically coupled to the rotor. The conversion device may be a hydraulic motor driven by hydraulic fluid pressurized by the shaft of a free-piston linear expander, or any other suitable type of conversion device.
[0057] In some embodiments, the free-piston linear expander 102 and the generator 104 are integrated into a single device. In some embodiments, the permanent magnet of the generator can be incorporated into the piston of the free-piston linear expander, and an electric coil is incorporated into the wall of the cylinder of a single-acting or double-acting piston-cylinder assembly, with or without a bounce chamber (not shown), and as the piston moves, a current is generated in the coil as a result of pressurized steam entering the cylinder.
[0058] The variable frequency drive 106 provides an electrical load to the generator 104 to counter the mechanical force generated by the pressurized gas or mixed-phase fluid, i.e., to create a resistive force that counters the movement of the piston along the path. In some embodiments, the variable frequency drive 106 converts the alternating current (AC) output of the generator to direct current (DC) and then back to AC at a frequency and voltage set by a controller. In some embodiments, the variable frequency drive 106 can include a grid-tie interface, which allows the power generated by the power generation plant 100 to be synchronized with and supplied to a local power grid (e.g., a 50 Hz or 60 Hz public power grid) while respecting all applicable regulatory standards. In some embodiments, an electric emergency brake is provided to very quickly stop the piston in the event of an electrical or mechanical fault.
[0059] In some embodiments, the power generation plant 100 has an energy storage device (not shown in FIG. 1 ) coupled to the power generation plant 100 to regulate its power output. The energy storage device can supplement the power generated by the power generation plant 100 by drawing power from the power generation plant 100, storing the power, and providing the stored power. In some embodiments, the energy storage device can provide a portion of its power when needed, for example, by the controller 108. For example, the controller 108 can determine if, at a second time t i+1 The desired output power value Pd(t i+1 ) at time t i+1 Output power value P(t i+1 ), such power supply can be performed. In other words, if the power generation device 100 is unable to generate a sufficient amount of power, the energy storage device can compensate for the shortfall. In some other examples, if the generated electricity exceeds the desired power output value Pd(t), an energy storage device can be used to draw and store the power generated by the power generation device 100. Such energy storage devices are described with reference to FIG. 19 onwards.
[0060] FIG. 3 illustrates an example method 300 for operating a power plant, which may be similar in structure to the power plant described with reference to FIG.
[0061] In step 302, the method 300 includes providing a power generation device. As previously described, the power generation device includes a free-piston linear expander having a moving shaft that generates mechanical power, a generator that converts the mechanical energy into electrical power, and a variable frequency drive coupled to the generator and configured to apply an electromagnetic load force u(t) to the generator.
[0062] In step 304, the variable frequency drive is communicatively coupled to a controller. The controller is thus configured to receive the sensor data and determine a current electromagnetic load force value u(t) applied to the variable frequency drive. The communication coupling can be wired, wireless, or a combination of both, depending on the embodiment.
[0063] In step 306, sensor data reflecting the operating conditions of the power plant at a first point in time f is received or accessed. The sensor data is quantized into a first shaft position value x(t i ), the first shaft speed value v(t i ), the first electromagnetic load force value u(t i), and / or a first output power value P(t i ). The shaft position x(t) can be measured by a position sensor that measures the instantaneous position of the shaft or a particular marker thereof along the path. The shaft speed v(t), in some embodiments, can be measured by a speed sensor that measures the instantaneous speed of the shaft. Examples of such position and speed sensors can include, but are not limited to, proximity sensors, magnetic sensors, optical sensors (e.g., computer vision-based sensors), and radar-based sensors, to name a few. In some other embodiments, the shaft speed v(t) is obtained by performing a derivative of the shaft position x(t). The electromagnetic load force u(t) can be reported by the variable frequency drive that applies it. The output power value P(t) can be measured using a wattmeter that measures the instantaneous output power of the generator. Note that when a generator generates electrical power (as opposed to when it motors), an electromagnetic load force resists movement of the shaft. As described in further detail below, this electromagnetic load force, when multiplied by the shaft speed, determines the mechanical power that is converted to electricity. More specifically, the electromagnetic load force consists of the current in the coil, and the voltage in the coil is determined by the shaft speed, so that power is given by current x voltage. Thus, the output power value P(t) can be approximated using a calculation including the shaft speed v(t) and the electromagnetic load force u(t) using the following equation: P(t) = v(t) · u(t). Other sensor(s) can be used to collect other information about the free-piston linear expander, generator, and / or variable frequency drive, all or some of which can be communicatively coupled to the controller.
[0064] In step 308, based on the sensor data, the drive control module determines a second time point t i+1 When applied to the shaft speed v(t), the shaft speed v(t) is increased to a second time t i+1 The second shaft speed value v(t i+1 ) is gradually changed to the second electromagnetic load force value u(t i+1) and determine the electromagnetic load force value u(t i+1 ) to get the second time point t i+1 The desired power output Pd(t i+1 ) is obtained. Step 308 is i and intermediate time t i ´ The second electromagnetic load force value u(t i+1 ) is the time when the shaft i+1 to the second shaft speed value v(t i+1 ) is intended to correct the shaft movement.
[0065] In step 310, the controller calculates a second time point t i+1 The second electromagnetic load force value u(t i+1 ) as previously described. ti+1 ) and a second shaft speed value v(t i+1 ) is applied, at the second time t i+1 Output power value P(t i+1 ) collectively represent the desired output power value Pd(t i+1 ) The output power P(t) of the power generation device can therefore be controlled in real time or near real time by the drive control module.
[0066] In some embodiments, receiving 306 sensor data, determining 308 a second electromagnetic loading force value u(ti+1), and i+1 ) at a first time point t i After that, at a second time t i+1 More specifically, these steps can be performed in less than 1 ms, preferably less than 0.5 ms, and most preferably less than 0.1 ms.
[0067] In some embodiments, machine learning and / or artificial intelligence is used to determine the time at the second time t i+1 To obtain the desired output power at the intermediate time ti and the second time point t i+1 Functions can be developed that allow the drive control module to accurately calculate the electromagnetic load forces that will be applied between the shaft and the load. In some embodiments, these functions are developed using neural networks. In other embodiments, the neural networks used can be second-order neural networks. It has been found that these latter types of neural networks can help provide a global optimal solution for the immediate future shaft conditions, which are used to calculate the subsequent operating states of the device and modify them accordingly in real time or near real time.
[0068] The drive control module can be trained using supervised learning. In such supervised learning, each training data (or image) in a set of training data can be associated with a label during training. The supervised machine learning engine can be based on an artificial neural network (ANN), a support vector machine (SVM), a capsule-based network, a linear discriminant analysis (LDA), a classification tree, a combination thereof, or any other suitable supervised machine learning engine. However, in some other embodiments, it is contemplated that the module can be trained using unsupervised learning, in which only training data is provided (no desired or true / false output is given), leaving the trained module to find structure or similarities within the provided training data. For example, an unsupervised clustering algorithm can be used. Additionally or alternatively, the trained module can include reinforcement learning, in which the trained module(s) interact with sample training data and, upon reaching a desired or true / false output, the trained module(s) are provided with feedback in terms of rewards or penalties. Two exemplary methods for improving classifier performance include boosting and bagging, which involve using several classifiers together to "vote" on a final decision. Combination rules can include voting, decision trees, and linear and nonlinear combinations of classifier outputs. These techniques can also provide the ability to control the trade-off between accuracy and precision by varying weights or thresholds. These methods can be useful for scaling to a large number of local features. In either case, some of these engines may require human interaction during training or to start the engine, but may not require human interaction while the engine is running, for example, while analyzing accessed data. For further details regarding such trained modules, see Nasrabadi, Nasser M. "Pattern Recognition and Machine Learning." Electronic Imaging Journal 16.4 (2007): 049901.
[0069] For example, in some embodiments, a velocity trajectory function or look-up table is predetermined using a velocity determination module. The velocity trajectory function and / or look-up table generally includes a second shaft speed value v(t i+1 ) into the first shaft position value x(t i ), the first shaft speed value v(t i ), and the first electromagnetic load force value u(t i ) with different combinations of the function or look-up table. By predetermining such a function or look-up table, the controller may, during operation of the device, i and determining a second shaft speed value v(t i+1 ) can be efficiently determined. The speed determination module can also be trained. When training of the module is performed, the controller determines the second shaft speed v(t i+1 ) and / or the second electromagnetic loading force value u(t i+1 It is contemplated that the .times. ...
[0070] Referring now to Figure 4, the controller of the power plant of Figure 1 may be provided as a combination of hardware and software components. The hardware components may be implemented in the form of a computing device 400, an example of which is described with reference to Figure 4. The computing device 400 may have a processor 402, a memory 404, and an I / O interface 406. Instructions 408 for operating the power plant may be stored in the memory 404 and accessible by the processor 402.
[0071] The processor 402 may be, for example, a general-purpose microprocessor or microcontroller, a digital signal processing (DSP) processor, an integrated circuit, a field programmable gate array (FPGA), a reconfigurable processor, a programmable read-only memory (PROM), a programmable logic controller (PLC), or any combination thereof.
[0072] The memory 404 may include any suitable combination of any type of computer-readable memory located either internally or externally, such as, for example, random / access memory (RAM), read-only memory (ROM), compact disc read-only memory (CDROM), electro-optical memory, magneto-optical memory, erasable programmable read-only memory (EPROM), and electrically erasable programmable read-only memory (EEPROM), ferroelectric RAM (FRAM), and the like.
[0073] Each I / O interface 406 allows the computing device 400 to interconnect with one or more input devices, such as a mouse, a keyboard, sensors of a free-piston linear expander, sensors of a generator, etc., or with one or more output devices, such as a monitor, accessible computer-readable memory, variable frequency drive, etc.
[0074] Each I / O interface 406 connects to a network (or multiple networks) capable of carrying data, including the Internet, Ethernet, Plain Old Telephone Service (POTS) lines, Public Switched Telephone Network (PSTN), Integrated Services Digital Network (ISDN), Digital Subscriber Line (DSL), coaxial cable, optical fiber, satellite, mobile, wireless (e.g., Wi-Fi, WiMAX), SS7 signaling networks, fixed lines, local area networks, wide area networks, and any combination thereof, thereby enabling the controller to communicate with other components, exchange data with other components, access and connect to network resources, connect to server applications, and run other computing applications.
[0075] The computing device 400 and any software applications that may be executed by the computing device 400 are meant to be examples only, as those skilled in the art will appreciate that other suitable embodiments of the controller may also be provided.
[0076] Example 1 - Design of a switching control system for a free-piston linear expander
[0077] This example describes a switching controller designed to ensure that the output power of a free-piston linear expander remains nearly constant throughout the stroke cycle. The control system consists of an open-loop system that accelerates the piston, a second-order neural network controller that maintains constant output power throughout the majority of the nonlinear gas expansion process, and a state feedback controller that decelerates the piston at the end of the cycle. The second-order neural network is implemented to predict the system dynamics and determine the electromagnetic load force required for constant power during isentropic expansion. The results are compared to two optimal controllers for continuous-time and discrete-time models. The focus of the control is on the electromagnetic force and its calculation, leading to the determination of the state and input trajectories that result in the desired power value. The design of the power electronics drive to generate the force is beyond the scope of this example. The additional use of an energy storage system (ESS) reduces the power degradation during stroke changes. Simulation results demonstrate the effectiveness of the proposed methodology.
[0078] A free-piston linear engine is a system in which the movement of a piston is not restricted by a rotating crankshaft but is determined by the interaction of forces acting on it. It can have different configurations: a simple piston, a dual piston, an opposed piston, and a gas generator. A dual-piston configuration specifically consists of three parts: a chamber where high-pressure gas enters and expands, a load device that converts the piston's expansion into a different type of energy, and a rebound chamber that recompresses the gas for the next cycle in which the piston moves in the opposite direction. Mechanical energy is converted into electrical energy using permanent magnets. This mechanism is considered by some authors to be the best option for linear engines due to its high efficiency and high power-to-weight ratio. An example of this engine is shown in Figure 5. More specifically, Figure 5 shows an engine with a free-piston linear generator 502 and a generator 504. In this case, the free-piston linear generator 502 has a double-acting piston-cylinder assembly. As shown, the free-piston linear expander 502 includes a passageway 520 through which a shaft 522 extends, pistons 524 attached to the shaft 522, and cylinders 526 surrounding corresponding ones of the pistons 524. The free-piston linear expander 502 defines a hermetically sealed chamber 528 through which an expanding pressurized gas or mixed-phase fluid moves the shaft 522 along the passageway 520, thereby producing mechanical power. In this example, the generator 504 is a linear generator, more specifically provided in the form of a tubular linear permanent magnet synchronous machine. As shown, the generator 504 includes a permanent magnet 530 attached to the shaft 522 and an electric coil 532 magnetically coupled to the permanent magnet 530 and looped around the shaft 522. As shown, the free-piston linear expander 502 and the generator 504 may be combined into a single device in this example.
[0079] The main contributions of this example are as follows:
[0080] 1. Obtaining constant power using electromagnetic force as the control input contrasts with the overwhelming literature that did not focus on constant power.
[0081] 2. As part of a switching control scheme, a second-order neural network is designed by solution of a convex optimization problem that predicts the state variables used to control the power output on a free-piston linear expander.
[0082] 3. Design of an optimal continuous-time controller and a model predictive controller that computes the trajectory that minimizes the allocated cost during isentropic expansion for comparison with a neural network controller.
[0083] After defining the notation of all variables appearing in this example, the dynamics of the piston are derived. The example begins with determining the relationship between position and pressure in isentropic expansion, followed by the definition of the dynamics that generate the piston's movement and how to calculate the mechanical power. Based on the latter, the dynamics of the complete cycle, including the forward and return strokes, are determined. Finally, the equations used to determine the power are defined.
[0084] The notations used are summarized in Table 1.
[0085] [Table 1]
[0086] Several investigations have been conducted into the unique characteristics of free-piston linear expanders and how they can be applied to various thermodynamic processes. A common thermodynamic model is the isentropic process, which is both adiabatic and reversible, and in which entropy remains constant. This model is applied to various idealized processes (such as the Rankine cycle) to obtain an ideal value for maximum work, which is then used as a comparison with the actual output of the system.
[0087] For a closed system, the total change in energy is equal to the sum of the work done and the heat added. In an isentropic process where no heat is added, the first law of thermodynamics states that
[0088]
number
[0089] where U is the total internal energy in the system, p is the pressure, and v is the volume. Furthermore, the change in enthalpy H in the system is given by:
[0090]
number
[0091] Substituting (1) for (2) gives us:
[0092]
number
[0093] Furthermore, for an ideal gas:
[0094]
number
[0095]
number
[0096] where C_p is the heat capacity at constant pressure and C_v is the heat capacity at constant volume. Dividing (5) by (4) and (3) by (1) gives:
[0097]
number
[0098] where γ is the ratio of the specific heats at constant pressure and constant volume. Solving differential equation (6) with the initial conditions gives p0 and v0 as follows:
[0099]
number
[0100] The volume of the system is:
[0101] v=A t X(8)
[0102] where:
[0103]
number
[0104] Substituting (8) for (7) gives us:
[0105]
number
[0106] This gives a pressure p at any instant based on the piston's position x and the piston's initial position x0. The piston's position must be different from 0 in all cases, which means that the piston must never touch the chamber wall.
[0107] The forces present in the system are due to gas pressure, electromagnetic forces, and friction, which are neglected in an isentropic process. The free-piston linear generator configuration means that the piston motion is one-dimensional. The equations of motion for this model are:
[0108]
number
[0109] The gas pressure is calculated using equation (10), and the gas force is expressed as follows:
[0110]
number
[0111] where pA and pB are the pressures in chambers A and B, respectively (see Figure 5). The electromagnetic force (F em ) is the control input and the output mechanical power is given by:
[0112]
number
[0113] During operation of the system, chambers A and B can be in one of four stages:
[0114] 1. Inlet valve A and outlet valve B are open. Outlet valve A and inlet valve B are closed.
[0115] 2. Outlet valve B is open. Inlet valve A, outlet valve A, and inlet valve B are closed.
[0116] 3. Inlet valve B is open. Inlet valve A, outlet valve A and outlet valve B are closed.
[0117] 4. Outlet valve A and inlet valve B are open. Inlet valve A and outlet valve B are closed.
[0118] Each step can be seen in Figures 6A-6D.
[0119] The operation begins in stage 1, where a pressure difference creates a force that moves the piston toward the chamber with lower pressure. Inlet valve A is then closed, creating an isentropic expansion that keeps the piston moving. To help decelerate the piston, outlet valve B is closed and its inlet valve is open. This step increases the pressure in chamber B, creating a net negative force that slows the piston. The final step is to release the gas from chamber A, so the process can begin again, but in the opposite direction. The kinetic equations for each stage are as follows:
[0120]
number
[0121] where po is the value of high pressure and x1 is the length of chamber A when the inlet valve is closed.
[0122] On the return stroke, the dynamic equation is:
[0123]
number
[0124] where x lret is the length of chamber B when its inlet valve is closed. To maintain symmetry of the process, the following constraints must be satisfied:
[0125] x 1ret =x0+x f -x1(16)
[0126] The mechanical power available due to the moving piston is converted to electrical power by using a three-phase tubular permanent magnet linear machine. The qd equation for a synchronous linear generator is:
[0127]
number
[0128]
number
[0129] Λ d =L d I d +Λ PM (19)
[0130] Λq=L q I q (20)
[0131]
number
[0132]
number
[0133]
number
[0134]
number
[0135] In the formula, V d and V qV is the d-axis and q-axis stator voltage, and I d and q are the d-axis and d-axis stator currents, and Ω s is the electrical frequency and L d and L q are the d-axis and q-axis inductances, and Λ d and Λ q is the d-axis and q-axis flux coupling, and Λ PM is the constant per-phase magnet flux linkage, R is the stator resistance, and τ is the PM pole pitch. For this type of machine, we can assume that the current Id is zero, and we get
[0136]
number
[0137] V d =-Ω s Λ q (26)
[0138] Λ q =L q I q (27)
[0139]
number
[0140] F em =K f I q (29)
[0141]
number
[0142] Ω s Λ PM =K v V (31)
[0143]
number
[0144] Therefore, the electromagnetic force is generated by the current I passing through the coils and creating a magnetic field. q (t). This current generates a voltage and therefore a voltage resulting from Park's conversion of three-phase power. Multiplication of these two values by a factor of JPEG2025538133000027.jpg15170 yields the power.
[0145] Because the expansion process in a linear expander involves multiple stages, each with its own distinct dynamics, a single control system is not the best strategy for achieving the desired objectives (maintaining a constant power output and setting the piston velocity to zero at the end of each cycle). For example, stopping the piston requires a different controller than the one used to maintain constant power. Therefore, a switching controller is implemented. The continuous dynamics of the system are determined by discrete events triggered by reaching certain values of continuous states. In stage 1, the system becomes open-loop because higher pressure in chamber A initiates piston movement without requiring any control input. After this, there are controllers to maintain constant power in stages 2 and 3, and finally, there is a state feedback controller to stop the piston in stage 4. As seen in equation (14), because gas dynamics are strongly coupled to the piston, the parameter used to activate the controller switch is the piston position. Once a certain position is reached, the system automatically switches to a different controller. The control system is then modified for use in the return process. The main difference in the return stroke is that the piston moves in the opposite direction compared to the forward stroke. Therefore, the velocity is negative, whereas in the forward process the velocity is positive. Note that x 3r is the point at which the return stroke control stopper is applied. The switching automaton of the proposed controller is shown in Figure 7A.
[0146] To maintain power continuity, the left and right values of electromagnetic force and speed must be the same when switching. The controllers and their activation sequence are as follows (see Figures 6A to 6D):
[0147] 1. In stage 1, the system is in open loop.
[0148] 2. In stages 2 and 3, a controller is used to obtain constant power based on a nonlinear isentropic expansion process.
[0149] 3. In stage 4, a state feedback controller is used to decrease the velocity until it reaches zero.
[0150] A single controller is used to maintain constant power, but there are two stages involved, stage 2 and stage 3, and the change between stages is at switch position x2 for the forward stroke or x for the return stroke. 2ret This is seen in Figure 7B.
[0151] The control of the complete cycle combines controllers used for the forward and return strokes, as can be seen in the switching automaton of Figure 7A. The forward stroke controller controls the piston to a defined position (x f ) is reached. The system then changes to a return stroke controller, which is used until the piston reaches another desired position (x0). Figure 7C shows a diagram of the upper switching automaton.
[0152] Each stage is described in detail below. It is important to note that the dynamic equations and switch positions shown are for the forward stroke. For the return stroke, the dynamic equation (15) is used, the velocity constraints are modified to make their values negative, and the switch positions are modified as follows:
[0153] x0→x f
[0154] x1 → x 1ret
[0155] x2 → x 2ret
[0156] x3→x 3ret
[0157] x f →x0
[0158] The proposed controller in stage 2 requires the speed to be different from 0. Also, at time t s1 At the time of switching to reach the switching position x1, the electromagnetic force and power must be continuous. In phase 2, the system produces a power equal to or close to the desired value, and therefore the power obtained at the end of phase 1 should also be close to the desired value, as can be seen in ph11, ph12, and ph13.
[0159] x(t s1 )=x1(33)
[0160]
number
[0161]
number
[0162] This is the force F em This is achieved by setting the time constant to be a linear function of the form (t) = Mt, where M is the gradient. In stage 1, the dynamics are em Since the flow rate is linear in σ and the gas force is constant, the parameter M can be found using the following system of equations:
[0163] dynamics
[0164]
number
[0165]
number
[0166]
number
[0167] constraints
[0168]
number
[0169] To solve this system, F(t f )=Mt f Using this in lindyn1, lindyn2, and lindyn3 and rearranging these equations, we get
[0170]
number
[0171]
[0172]
number
[0173]
number
[0174] Using the solver of the set of nonlinear systems consisting of (40) and (41), F(t f ) and t f The MATLAB® command fsolve solves this system by applying Newton's method and Powell's dogleg method. The parameter M is found from (42), and v f can be found from (41). At the end of stage 1, v f and F(t f The obtained values for ) are used as the initial values for the controller in stage 2.
[0175] The proposed controller uses a second-order neural network to predict the future value of the speed based on the actual values of the states and inputs, and therefore calculates the value of the input for the next sample time to obtain constant power. The controller results are compared with two standard control methods: an optimal continuous-time controller and a model predictive controller that solves the optimal control problem in discrete time.
[0176] The concept of a neural network is one that includes a large number of nodes called neurons connected by edges. There is an input layer and an output layer, between which a series of hidden layers process the received signal. After the input layer, each neuron's value is multiplied by a weight that represents its importance to the subsequent neuron. Next, each neuron in the hidden layer takes a linear combination of values from the previous layer and processes it using an activation function to obtain a result. Each result from each neuron in the hidden layer is assigned a different weight, and the next neuron processes the linear combination from the previous neuron until the final output layer is reached. One of the difficulties in designing a neural network is determining its architecture, which requires a trial-and-error process. Furthermore, training does not guarantee that the results will be globally optimal. A recent contribution in the literature is the use of second-order neural networks, in which the activation function is quadratic. This method addresses previous shortcomings of traditional neural networks by ensuring globally optimal results and determining the network's architecture. Our goal is to train a neural network based on data inputs including electromagnetic force, position, and velocity to predict velocity at future instants. The architecture of the neural network is shown in Figure 8, where M is the number of neurons in the hidden layer, k is the index of the input, and w and a are the weights between layers. The final output is determined by:
[0177]
number
[0178] Now, as suggested in reference to system identification:
[0179] S (44)
[0180] w j = (45)
[0181] σ(z)=a n z 2 +b n z+cn (46)
[0182] The superscripts indicate the target and the subscripts indicate the source of each connection. We use least squares to approximate the function ReLu(z) = max(0, z) between [-5, 5], and n , b n , and c n The value of was selected.
[0183] A block diagram of a neural network is shown in Figure 9. Training a neural network produces a predictor. Based on the current state and input, The predicted value of JPEG2025538133000039.jpg8170 is taken and a new value of u is calculated. The cycle continues until the final position is reached.
[0184] The optimization problem defined for training a neural network is a minimization problem involving a loss function l(.) that evaluates the difference between the actual and predicted values of the outputs, and a regularization term on the 1-norm of the weights a, as follows:
[0185]
number
[0186]
number
[0187] Vw j V2=1 (49)
[0188] The dual has the same optimal value of the original problem (47), which is formulated as follows:
[0189]
number
[0190]
number
[0191]
number
[0192] Z += (53)
[0193] The goal is to solve the problem formulated in (50) using the symmetric matrix Z + and Z - The goal is to find the matrix JPEG2025538133000045.jpg11170 can be obtained by:
[0194]
number
[0195]
number
[0196] Then, the input matrix is
number
[0197]
number
[0198] The network modeling the system is trained using output labels obtained as the response of the system to a series of inputs u from the chirp function used in the dynamics of stages 2 and 3, or a simulation of the system (if hardware is not available). The chirp function is given by:
[0199]
number
[0200] The following matrices are used to train the network:
[0201]
number
[0202] y out =[v(2)...v(N)] T (59)
[0203] where N is the number of data points collected. TIFF2025538133000052.tif9170 is defined as the input matrix with the input and state values at the current state, and the matrix y out is the output matrix. If we choose the error norm infinity as the loss function, then the dual formulation for this particular problem becomes:
[0204]
number
[0205]
number
[0206]
number
[0207]
number
[0208] Z4=Trace(Z1) (64)
[0209] Z += (65)
[0210] matrix Using TIFF2025538133000057.tif10170 to predict the x and v trajectories, we get:
[0211]
number
[0212]
number
[0213]
number
[0214]
number
[0215]
number
[0216]
number
[0217] where N t is the time from the initial time t0 to the final time t f is the number of intervals selected up to stage 1. The value of v is assumed to be different from 0 for stage 1 and to remain different from 0. The input is applied to the system in stages 2 and 3, and the matrix TIFF2025538133000064.tif8170 is used in two stages.
[0218] The controller is designed by solving an optimal control problem using continuous dynamics. To avoid high values of velocity, it was decided to include a penalty in the value of the velocity-energy term in the cost to be minimized. More specifically, the optimal control problem solved in this chapter is:
[0219]
number
[0220] stu=F em (73)
[0221]
number
[0222]
number
[0223]
number
[0224]
number
[0225] x(0)=x1(78)
[0226] v(0)=v f (79)
[0227] where v f is the resultant velocity from above, and q and r are positive constants at the discretion of the designer. It is important to remember that the switching positions x2 and x3 are set by the designer and two different optimal control problems are solved: one for p in stage 2 b =p atm and the other is p in stage 3 b = p0. The minimization is done using optimal control theory, more specifically the Pontianagin principle of minimum, which states that the optimal cost is:
[0228]
number
[0229] The optimal control input u is
[0230] H(t,x,u,λ)=L(t,x,u)+λ T f(t,x,u)≦H(t,x,u,λ)∀u (81)
[0231]
number
[0232] Assuming that H is differentiable, the necessary conditions for optimality are:
[0233]
number
[0234]
number
[0235]
number
[0236]
number
[0237]
number
[0238] The Hamiltonian of the problem defined in (72) is:
[0239]
number
[0240] The solution to the defined problem must satisfy the necessary conditions (83)-(87). Therefore,
[0241]
number
[0242] Solution:
[0243]
number
[0244] Here, v is assumed to be different from 0 for stage 1 and to remain different from 0 during stages 2 and 3. Pontryagin's quadratic necessary condition is:
[0245]
number
[0246] The costate Hamiltonian equation is
[0247]
number
[0248]
number
[0249] This problem f Considering that is fixed, the transverse conditions, Pontryagin's principle, Hamilton's equation, and the chain rule give:
[0250]
number
[0251] λ v (t f )=0 (95)
[0252] λ x (t f )=0 (96)
[0253] H(t f )=0 (97)
[0254] (95), the control input from equation (90) becomes JPEG2025538133000084.jpg8123 This solution became the basis for the algorithm used in the second-order neural network controller seen in equation (67).
[0255] posopt, velopt, optcontx, optcontv, pont7, pont8, pont9, pont10 generate two-point boundary value problems as follows:
[0256] Boundary Value
[0257] x(0)=x1(98)
[0258] v(0)=v f (99)
[0259] λ v (t f )=0 (100)
[0260] λ x (t f )=0 (101)
[0261] differential equation
[0262]
number
[0263]
number
[0264]
number
[0265]
number
[0266] To solve boun1, boun2, boun3, boun4, boun5, boun6, boun7, boun8, the collocation method is used. The collocation method consists of approximating the solution of the two-point boundary value problem by a linear combination of piecewise continuous polynomials defined on a mesh of collocated points, so that each state (velocity and position) and the costate can be expressed as:
[0267]
number
[0268]
number
[0269]
number
[0270]
number
[0271] where π represents the spline function, ω represents its coefficients, and n c is the number of co-location points, which are the set of points located between the initial and final values of the states and costates.
[0272] This set of linear combinations of spline functions must satisfy the following conditions:
[0273]
number
[0274]
number
[0275]
number
[0276]
number
[0277]
number
[0278]
number
[0279]
number
[0280]
number
[0281]
number
[0282] The optimal controller is used under two different dynamics: Stage 2 and Stage 3, where the difference is a constant value of the gas pressure in chamber B. Therefore, the collocation method is applied twice. First, it is used in Stage 3 to find the initial costate values for that stage, assuming that the final costate must be 0. These obtained initial values then become the final values of the collocation method applied in Stage 2. The code for realizing this procedure is based on the MATLAB command bvp4c (boundary value problem - fourth order). The results of using the collocation method for boun1, boun2, boun3, boun4, boun5, boun6, boun7, and boun8 can be seen in Figures 10A-10D.
[0283] The following paragraphs describe the design of a model predictive controller. In this method, the objective is to find the input that minimizes the short-term cost. The system then updates the next state based on the input of the first step and recalculates a new input that minimizes the cost for the same period delayed by one time step, until the final time is reached. The input at each step is used to determine the trajectory. For this problem, the decision was made to predict only one step into the future so that the controller could be compared to a neural network controller. Since model predictive control is a widely used standard control method, design functionality is already available in commercially available software. A block diagram of a model predictive controller is shown in Figure 11.
[0284] Since the rate constraints are hard-coded in the algorithm, in some embodiments the cost term rv 2 Furthermore, since model predictive control works in discrete time, the cost function needs to be a discrete sum rather than a continuous integral as in equation (72), resulting in a new cost function:
[0285]
number
[0286] Continuous dynamics must be discretized.
[0287]
number
[0288]
number
[0289]
number
[0290]
number
[0291] The following constraints can be imposed:
[0292] v f ≦v≦5 (124)
[0293] x i ≦x≦x1(125)
[0294]
number
[0295]
number
[0296] where v fis the composite rate from Chapter 1. Model predictive control works on discrete-time dynamics, so a sampling time is required when working with a continuous-time model, hence the discretization. The prediction horizon determines the future steps that the controller will look at, and the control horizon determines the steps at which the computed inputs will be implemented. An additional element that can be added to the solver of a PMC problem is the Jacobian of the state model in terms of the states and inputs. The discretization of the dynamics found in mmpc1, mmpc2 is done by the function nlmpc with an implicit trapezoidal rule, which results in:
[0297]
number
[0298]
number
[0299]
number
[0300]
number
[0301]
number
[0302]
number
[0303]
number
[0304] Furthermore, the Jacobian matrix is defined as follows:
[0305]
number
[0306]
number
[0307] Solving jac1 and jac2 gives us:
[0308] J states = (137)
[0309]
number
[0310] The MPC problem is defined as follows:
[0311]
number
[0312] The functions used to solve this optimal discrete-time problem are MATLAB®'s nlmpc (nonlinear model predictive control) and nlmpcmove. The nlmpc command creates an object with inputs for the number of states, the problem's outputs and inputs, and properties such as sample time, prediction horizon, control horizon, model (including the state model, the outputs, and Boolean variables active if the function is continuous), upper and lower state bounds, the Jacobian matrix of the states, and a cost function, all of which are defined by the user. The nlmpcmove command calculates the optimal trajectory based on the model, constraints, outputs, initial state conditions, and inputs defined in the nlmpc object. The nlmpcmove command uses the fmincon command as the default to solve the cost minimization problem subject to the model and constraints using an interior-point method.
[0313] To stop the piston, a state feedback controller is designed. The variable Δx is defined as follows:
[0314] Δx=xx d (140)
[0315] x d is determined later, and the state space representation for stage 4 becomes:
[0316]
number
[0317] F em ,F em =At(p atm -p0)+ΔF em By designing it so that JPEG2025538133000121.jpg9170 where:
[0318]
number
[0319] U=ΔF em (143)
[0320] The state feedback U=KX is designed to obtain:
[0321]
number
[0322] where:
[0323]
number
[0324]
number
[0325] Candidate Lyapunov Function V p (X)=X T PX has been proposed and the system JPEG2025538133000126.jpg10170 In this case, A cl =A+BK and the following must be satisfied:
[0326] V p =X T PX>0,∀X≠0(147)
[0327]
number
[0328] If a symmetric matrix P exists, ph46 and ph47 are satisfied as follows:
[0329] P>0 (149)
[0330]
number
[0331] Substituting (144) with ph48 and ph49 gives the following:
[0332] P>0 (151)
[0333] P(A+BK)+ (152)
[0334] Since equation (152) is bilinear in the variables P and K, a change of coordinates is performed to obtain a set of linear matrix inequalities. The transformations performed are:
[0335] Q=p -1 (153)
[0336] Y=KP -1 (154)
[0337] And that results in:
[0338] Q>0 (155)
[0339] Q
[0340] Q(PA+PBK+A T P+K T B T P)Q<0
[0341] QPAQ+QPBKQ+PA T PQ+QK T B T PQ<0
[0342] AQ+BY+QA T+Y T B T <0 (156)
[0343] The linear matrix inequalities (155) and (156) can be solved using a solver such as cvx, and the values of P and K can be found using ph52, ph53, JPEG2025538133000129.jpg14170 and K=[9.0292 29.613] are obtained. The K obtained by solving the LMI may not guarantee the continuity of the electromagnetic force, which is necessary to avoid undesired high power peaks. A modification is made to find another feasible solution to (155) and (156). For this purpose, a positive parameter k multiplying the value of K is used. t is defined. t To ensure that K still stabilizes the system, we define a matrix:
[0344] C=PA+A T P+K t (PBK+K T B T P)(157)
[0345] Its eigenvalue is k t The resulting expressions for the eigenvalues of C, found using the MATLAB® functions eig and syms, are:
[0346]
number
[0347] Using the MATLAB function fsolve to find the zeros of equation (158), k t We find that the eigenvalue is negative when >0.2868. This adds a new constraint that limits the choice of x3. In addition to the force continuity constraint, we require that the velocity at the end of stage 4 be zero. In summary, the following conditions may need to be satisfied:
[0348] 1. The electromagnetic force at the start of phase 4 must be equal to the electromagnetic force at the end of phase 3.
[0349] 2. The electromagnetic force at the end of stage 4 must be 0.
[0350] 3. The velocity at the end of stage 4 must be 0.
[0351] Each condition can be expressed as an equation with three unknowns. The first two unknowns are the x values defined previously. d and k t For the third unknown, first Define TIFF2025538133000131.tif10170 to specify the forward stroke JPEG2025538133000132.jpg12170 (i.e., TIFF2025538133000133.tif12170 is the switching time from stage 3 to stage 4), then the unknown JPEG2025538133000134.jpg11170 Consider three unknowns (x d , k t and JPEG2025538133000135.jpg9170 ) equations are now defined for the three conditions that must be satisfied to find the value of . The condition for continuity of the electromagnetic force between stages 3 and 4 is
[0352]
number
[0353] Equation (159) is a new unknown JPEG2025538133000137.jpg10170 However, JPEG2025538133000138.jpg11170 Since the stage 3 controller maintains a constant mechanical power, JPEG2025538133000139.jpg10170 can be defined as follows:
[0354]
number
[0355] however, JPEG2025538133000141.jpg12170 is not 0. When switching between stage 4 and stage 1, JPEG2025538133000142.jpg9170 is for the forward stroke JPEG2025538133000143.jpg10170 and JPEG2025538133000144.jpg8170 The condition for continuity of the electromagnetic force between stage 4 and stage 1 is:
[0356]
number
[0357]
number
[0358]
number
[0359] The integral of equation (162) is JPEG2025538133000148.jpg9170 depends on both v and JPEG2025538133000149.jpg12170 is found by solving the simultaneous differential equations defined as follows:
[0360]
number
[0361]
number
[0362] section For JPEG2025538133000152.jpg11170, the following equation is set:
[0363]
number
[0364] Desired speed value JPEG2025538133000154.jpg11170 is the location To ensure that the power trajectory is achieved, the proposed approach is to adjust the switch position x2 between stages 2 and 3, knowing from equation (14) that the switch position affects the piston dynamics. The advantage of this approach is that it does not affect the power trajectory, since stages 2 and 3 are where constant power is achieved. JPEG2025538133000156.jpg9170 , JPEG2025538133000157.jpg9170 The pseudocode for finding xd, kt is as follows:
[0365] The algorithm for solving the unknowns in the state feedback controllers involves performing steps 1 and 2 for each controller. Set the value of x2. Perform step 3 for that controller. JPEG2025538133000158.jpg8170 and Get the value of JPEG2025538133000159.jpg9170. JPEG2025538133000160.jpg8170 , JPEG2025538133000161.jpg9170 and Using the value of JPEG2025538133000162.jpg10170, use equations (159) and (161) to find x d and k t is solved and fsolved. JPEG2025538133000163.jpg9170 , TIFF2025538133000164.tif9170 , x d and k t Check equation (162) with the value of x2. If equation (162) is not satisfied, update the value of x2. JPEG2025538133000165.jpg11170 If , increase by x2. JPEG2025538133000166.jpg11170 If x2 is decreased, equation (162) is satisfied and k for stability is t Run the algorithm between steps 3 and 6 until the inequality constraints on are also satisfied.
[0366] In the Appendix, the algorithm is shown to converge for two specific case studies. In this problem, the states are velocity and position, so for each controller, white noise is added to these values to model the measurement noise. The white noise for velocity and position is W and W respectively.v and W x and they have the following distribution:
[0367] W v ~W(0,0.05)(166)
[0368] W x ~N(0,0.005)(167)
[0369] where the values 0.05 and 0.005 are 1 / 100th of the difference in the range of velocity (0-5 m / s) and position (0.15 m-0.63 m), respectively. In the equations where measurements of velocity and position are required, the noise values are added at each controller to give:
[0370] v n =v+W v (168)
[0371] x n =x+W x (169)
[0372] These new values of velocity and position are what are used to determine the electromagnetic forces at each instant for each controller. The behavior of the controllers when noise is added is studied below.
[0373] The simulation was performed using MATLAB® 2020B on a Dell Inspiron 145000 with an Intel Core i7 processor. The input parameters are listed in Table 2.
[0374] [Table 2]
[0375]
[0376] [Table 3]
[0377]
[0378] For the conditions in Tables 2 and 6, the control law for each controller is calculated using the above equations. More specifically, the design equations are as follows: Stage 1 open loop using sollin1, sollin2, and sollin3 yields M=52526. The neural networks for stages 2 and 3 given by the optimization problem (60) are:
[0379] JPEG2025538133000169.jpg22170
[0380] The two-boundary value problems from the optimal continuous-time controllers of stages 2 and 3, boun1, boun2, boun3, boun4, boun5, boun6, boun7, and boun8, were solved using the collocation method Useλv obtained from the collocation method of equation (90) to define Fem.
[0381] Stage 2 and 3 model predictive controllers, P and F em Functions nlmpc and nlmpcmove to solve the optimization problem (138) using the constraints (124), (125), (128), (129), (130), (131), (132), (133), (137), and (119) to obtain the trajectory of
[0382] The state feedback in stage 4 is obtained by solving the LMI (155), (156) and conditions (161) and (159), resulting in kt = 1.5, K = [13.5244.35] and xd = -187.7 for the neural network, and kt = 3.68, K = [33.2108.89] and xd = -76.07 for the other two controllers.
[0383] To see the behavior of the four controllers under different initial conditions, two parameters are evaluated: the switch position x1 and the initial gas pressure p0. The switch position x2 is also varied to ensure that the desired final position is achieved at v=0. All conditions for the parameters can be seen in Tables 4 and 5.
[0384] [Table 4]
[0385]
[0386] [Table 5]
[0387]
[0388] To find the power, various parameters of the linear expander must be known. A model with the parameters listed in Table 6 is used.
[0389] [Table 6]
[0390]
[0391] Each controller (neural network, continuous-time optimal, and model predictive) is evaluated. First, the mechanical and power are determined under the same initial parameters. Next, the controllers are evaluated under different conditions of position and pressure. The effect of noise is also evaluated for these controllers. Later, the results with different initial parameters and noise are compared between them. Finally, a supercapacitor is implemented to see its effect on the power at the moment of change from the forward stroke to the return stroke.
[0392] Figures 12A-12D and 13A-13D show the results of using three controllers with the parameters shown in Table 2 and a unit value of r for optimal control. NN represents the first controller mentioned above, while Opt.Cont is the second controller and MPC is the third controller, from top to bottom. Each controller achieved constant power during the isentropic expansion for the forward and return portions of the power during the isentropic expansion, with a difference of less than 1% of the desired power value. Graphs of velocity, electromagnetic force, and position are overlaid on each other for the optimal continuous-time and model predictive controllers.
[0393] The neural network prediction gives a trajectory close to the other two controllers, especially at the beginning of stage 2, but as the piston continues to move and enters stage 3, the prediction is not as accurate as before and the controller does not predict the same speed drop as the other controllers. This explains the difference in the force trajectories. The solution is to move the switching position x3 to x2, thus obtaining a lower speed value before the start of stage 4. This is due to the k in the control law of stage 4. t and x d This is why the values are different.
[0394] Since the three analyzed methods yielded similar results, as the optimal trajectories for the given initial conditions in Table 2 satisfied the constraints, it is important to check how they react under different conditions where the constraints could not be satisfied. These results can be seen in Figures 14A-14D, 15A-15D, and 16A-16D for conditions C2, C3, and C7, respectively. The control laws for these conditions can be found in the Appendix. The predictions from the neural network were configured so that its focus was on achieving constant power, which is why its trajectory is closer to the optimal continuous-time model than that of the MPC. While the results are not identical, it is important to note that the trajectories are similar between the neural network controller and the optimal continuous-time controller, validating the use of a second-order neural network. The optimal discrete model with hard constraints is the only one that satisfies the constraints and ensures that the speed value never exceeds the maximum value. In the optimal continuous-time model, changing the value of r to 1000 was insufficient to reduce the speed to the desired range. While there may be a value of r that ensures the system never exceeds the speed, it is expected to be very high due to the low influence of r on the results. It is important to add that while the closed-loop system satisfied the constraints, the model predictive controller was farther from the desired power compared to the other two. Also, the high electromagnetic force required to satisfy the constraints does not result in the same final position as when the optimal continuous-time controller is used. The Appendix shows the mechanical results for the MPC when the constraint on maximum speed is relaxed to 10 m / s, and as expected, the results are similar to those from the other controllers.
[0395] [Table 7]
[0396]
[0397] Table 7 shows the time it takes for the simulation to determine the trajectory for Stage 2. The model predictive controller was consistently the one that took longer to find the trajectory. The results show how this behavior makes the model predictive controller infeasible for real-time implementations, as the simulation takes longer than the system is running.
[0398] Figures 17A-17D show the results for all three controllers with noise added. The results are very similar between them, indicating that noise does not significantly affect the neural network compared to the other controllers, validating its use for predicting trajectories. The advantage of the neural network is that the power fluctuations are smaller than those of the MPC controller. The Appendix contains graphs for all controllers at all initial conditions from Tables 6 and 7, as well as other results with noise.
[0399] For the following results, the parameters used are the same as those from C1. Figures 18A-18D show the results of the mechanical and power simulations after one cycle for all controllers. None of the evaluated controllers exhibits undesirable behavior; the power closely follows the mechanical power, apart from a small initial overshoot.
[0400] The piston must change direction from forward to backward to complete a full cycle. During the phases accompanying this process (phases 4 and 1 of the new half of the cycle), the output power drops until it reaches zero at the time of the aforementioned phase switch. To reduce this necessary drop, a supercapacitor is used to store energy and release it when it drops below a desired value. Supercapacitors were chosen over batteries because they have higher charge and discharge rates, which are more suitable for a linear expander due to the shorter phase 4 and phase 1 times and the higher frequency at which the piston moves.
[0401] The controller is modified so that the new setpoint power is greater than the desired value. This new, increased setpoint is selected based on the designer's criteria. The excess power is supplied to a circuit containing a supercapacitor. Because the voltage obtained from the linear generator is higher than most supercapacitors can support, a transformer is used to reduce the voltage to a value within the supercapacitor's operating range. In this case, the limit voltage for a supercapacitor is 16V. Furthermore, supercapacitors can only store energy if they are in a DC circuit. Due to the generator's periodicity, it behaves like an AC circuit, so a diode bridge is used after the transformer.
[0402] The switch in Figure 19 varies the resulting voltage to zero depending on the output power; when the power is above a desired value, the switch uses the voltage from the linear generator and the current flowing through the resistor to charge the supercapacitor; when the power falls below that value, the voltage goes to zero and the supercapacitor becomes a generator of power rather than a consumer. A series circuit including a resistor and a supercapacitor can be shown in Figure 19. The formula used to select the resistance R and capacitance C is as follows:
[0403]
number
[0404]
number
[0405] If V(t) is 0 (discharge process), it results in:
[0406]
number
[0407]
number
[0408]
number
[0409] P c (t)=V c (t)I(t)(175)
[0410] where V0 is the initial voltage of the supercapacitor when the discharge process begins, and V c is the capacitor voltage. Based on eq:rcdescarga1, eq:rcdescarga2, eq:rcdescarga3, and eq:rcdescarga4, a high value of RC, also called the time constant, can reduce the power degradation over time. However, it can result in high energy losses in the charging process, which must be evaluated numerically using eq:rcinical1 and eq:rcinical2.
[0411] [Table 8]
[0412] Figure 20 shows that the charge on the supercapacitor never exceeds 100%. It also shows that the power drop is lower when the supercapacitor is used compared to when it is not. The energy values obtained with the supercapacitor during the period when the energy is lower than the design value are 44.3% higher than the values obtained during the same interval without the supercapacitor. The optimal continuous-time and model predictive controllers have similar electrical results after using the supercapacitor, but the results of the second-order neural network model using the same supercapacitor have an initial peak at the beginning of the discharge process. To eliminate these peaks, one modification was to modify the resistor value to 0.16 Ω. The results are shown in Figure 21.
[0413] From the work carried out in this example, the following conclusions can be drawn, as presented in the following paragraphs:
[0414] A switching control system for a free-piston linear expander is successfully designed, in which constant power output is achieved during isentropic expansion (stages 2 and 3) by three different methods.
[0415] The piston can be successfully initiated, gain a certain amount of power, and stop at a desired range.
[0416] A second-order neural network is implemented to control power in a free-piston linear expander, and the result is an advancement in the use of second-order neural networks to predict and control power systems.
[0417] As can be seen in Figures 12, 14, 15, 16 and 17, the closed loop system using the neural network exhibits similar behavior to the closed loop results obtained with the other controllers, especially for stage 2.
[0418] Even with noise, the results using the neural network are close to the noise-free trajectory and close to the results using the other controllers with or without noise.
[0419] Neural networks do not require knowledge of the model to predict trajectories and control outputs.
[0420] Compared to the optimal continuous-time controller, the neural network controller is a simpler solution because in the former the collocation method is used between the two phases and therefore the state and costate values must be known at the switching position x_2, and the collocation method can be applied to find the trajectories for stages 2 and 3. This may require some trial and error, which is not the case with neural networks.
[0421] The proposed neural network solves quadratic convex problems and always guarantees a globally optimal solution. Therefore, the implementation is simply the calculation of a quadratic form followed by a quotient. In contrast, the command fmincon used in Matlab's MPC algorithm may not be able to find a global solution due to the non-convex nature of the optimization and the nonlinearity of the dynamics. The complexity of the system increases the time it takes the software to find a solution, reducing the feasibility of real-time implementation compared to neural networks, as seen in Table 9. However, MPC guarantees that the speed constraints are met, whereas neural networks do not.
[0422] The use of a high pressure chamber in stage 3 helps to reduce the velocity so that the state feedback controller uses less power to stop the piston.
[0423] ESS can help reduce the power degradation caused by stroke variations, but it requires proper determination of the supercapacitor parameters so the system does not suffer excessive power loss during the charging process.
[0424] As can be appreciated, the above and illustrated examples are intended to be illustrative only. For example, in one aspect, a power generation device is described that includes a free-piston linear expander having a moving shaft that produces mechanical power, a generator that converts the mechanical power into electrical power, a variable frequency drive configured to apply an electromagnetic loading force that modifies movement of the shaft, and a controller communicatively coupled to the variable frequency drive, the controller configured to: receive sensor data including a first shaft position value, a first shaft speed value, and a first electromagnetic loading force value; determine, using a drive control module, based on the sensors, a second electromagnetic loading force value that, when applied, progressively changes the shaft speed to a second shaft speed value; and apply the second electromagnetic loading force value, wherein the second electromagnetic loading force value and the second shaft speed value cause an output power value to correspond to a desired output power value. In another aspect, a power generation device is described that includes a free-piston linear expander having a moving shaft that produces mechanical power, a generator that converts the mechanical power into electrical power, a variable frequency drive configured to apply an electromagnetic load force that modifies motion of the shaft, and a controller communicatively coupled to the variable frequency drive, the controller configured to: receive sensor data including a first shaft position value, a first shaft speed value, and a first electromagnetic load force value; determine, using a speed determination module, based on the sensor data, a second shaft speed value that causes a second output power value to correspond to a desired output power value; determine a second electromagnetic load force that modifies motion of the shaft to match the second shaft speed value; and instruct the variable frequency drive to apply the second electromagnetic load force. The scope is indicated by the accompanying claims.
Claims
1. a free-piston linear expander having a moving shaft that produces mechanical power; a generator that converts mechanical power generated by the movement of the shaft into electrical power; a variable frequency drive coupled to the generator and configured to apply an electromagnetic load force u(t) to modify the shaft motion and the power; a controller communicatively coupled to the variable frequency drive, First time point t i receiving sensor data reflecting an operating state of the power generating plant at i ), the first shaft speed value v(t i ), and the first electromagnetic loading force value u(t i ) and Using the drive control module, at the first time t i Based on the sensor data at a second time t i+1 When the voltage is applied to the shaft speed v(t) at the second time t i+1 A second shaft speed value v(t i+1 ) is gradually changed to a second electromagnetic loading force value u(t i+1 ) by determining the second electromagnetic loading force value u(t i+1 ) and the second shaft speed value v(t i+1 ) at the second time t i+1 Output power value P(t i+1 ) to the desired output power value Pd(t i+1 ) corresponding to the step, The second time point t i+1 The second electromagnetic load force value u(t i+1 ) instructing the variable frequency drive to apply a a controller configured to execute A power generation device comprising:
2. The power plant of claim 1 , wherein the drive control module is trained using a neural network.
3. The power generation system of claim 2 , wherein the neural network is a second-order neural network.
4. A velocity trajectory function or look-up table is predetermined using a velocity determination module, the velocity determination module determining a plurality of second shaft velocity values v(t i+1 ) into the first shaft position value x(t i ), the first shaft speed value v(t i ), and the first electromagnetic loading force value u(t i 2. The power generating device of claim 1, wherein the power generating device is associated with a plurality of combinations of:
5. The desired output power value Pd(t i+1 ) is the first time point t i A first output power value P(t i 2. The power generating device according to claim 1, wherein the power generating device corresponds to a
6. The step of receiving sensor data, the second electromagnetic load force value u(t i+1 ), and the step of determining the second electromagnetic loading force value u(t i+1 ) at the first time t i After the second time t i+1 The power generating system of claim 1 , wherein the step (a) is performed before the step (b).
7. 7. The power plant of claim 6, wherein said steps are performed in less than 1 ms, preferably less than 0.5 ms, most preferably less than 0.1 ms.
8. 2. The power generating device of claim 1, wherein the free-piston linear expander comprises a passageway along which the shaft extends, a piston attached to the shaft, and a cylinder surrounding the piston and forming a hermetically sealed chamber that, upon expansion of pressurized gas contained therein, moves the shaft along the passageway, thereby producing the mechanical power.
9. 2. The power generating device according to claim 1, wherein the generator is a linear generator having a plurality of permanent magnets attached to the shaft and a plurality of coils magnetically coupled to the plurality of permanent magnets and wound in a loop around the shaft.
10. The power generating apparatus of claim 1 , wherein the generator includes a conversion device that converts the mechanical power of the linear movement of the shaft into rotational movement.
11. The power generating apparatus of claim 10 , wherein the generator includes a rotor attached to the conversion device and a stator magnetically coupled to the rotor.
12. 10. The power plant of claim 1, further comprising an energy storage device coupled to the power plant, the energy storage device storing electrical power and one of receiving and delivering a portion of the electrical power when needed by the controller.
13. The controller determines the second time t i+1 The desired output power value Pd(t i+1 ) and the second time t i+1 13. The power generation device of claim 12, wherein said one of said receiving and said delivering is performed upon determining that a difference exists between the output power value of said power generation device at
14. 1. A method of operating a power generating plant, the power generating plant having a free-piston linear expander having a moving shaft that generates mechanical power, a generator that converts the mechanical power into electrical power, and a variable frequency drive coupled to the generator and configured to apply an electromagnetic load force u(t) to the power generating plant, the method comprising: using a controller communicatively coupled to the variable frequency drive, the controller comprising: First time point t i receiving sensor data reflecting an operating state of the power generating plant at i ), the first shaft speed value v(t i ), and the first electromagnetic loading force value u(t i ) and Using the drive control module, at the first time t i Based on the sensor data at a second time t i+1 When the voltage is applied to the shaft speed v(t) at the second time t i+1 A second shaft speed value v(t i+1 ) is gradually changed to a second electromagnetic loading force value u(t i+1 ) by determining the second electromagnetic loading force value u(t i+1 ) and the second shaft speed value v(t i+1 ) at the second time t i+1 Output power value P(t i+1 ) to the desired output power value Pd(t i+1 ) corresponding to the step, The second time point t i+1 The second electromagnetic load force value u(t i+1 ) instructing the variable frequency drive to apply a configured to perform method.
15. The method of claim 14 , wherein the drive control module is trained using a neural network.
16. The method of claim 15 , wherein the neural network is a second-order neural network.
17. The desired output power value Pd(t i+1 ) is the first time point t i A first output power value P(t i 15. The method of claim 14, wherein
18. The step of receiving sensor data, the second electromagnetic load force value u(t i+1 ), and the step of determining the second electromagnetic loading force value u(t i+1 ) at the first time t i After the second time t i+1 The method of claim 14, wherein the method is performed before
19. 19. The method of claim 18, wherein said steps are performed in less than 1 ms, preferably less than 0.5 ms, most preferably less than 0.1 ms.
20. a free-piston linear expander having a moving shaft that produces mechanical power; a generator that converts the mechanical power into electrical power; a variable frequency drive configured to apply an electromagnetic loading force that modifies the movement of the shaft; a controller communicatively coupled to the variable frequency drive, receiving sensor data including a first shaft position value, a first shaft speed value, and a first electromagnetic load force value; using a drive control module to determine, based on the sensor, a second electromagnetic loading force value that, when applied, gradually changes the shaft speed to a second shaft speed value, the second electromagnetic loading force value and the second shaft speed value causing an output power value to correspond to a desired output power value; applying the second electromagnetic loading force value; a controller configured to execute A power generation device comprising: