METHOD AND SYSTEM FOR CONTROLLING A FREE PISTON MOVER
20220085743 · 2022-03-17
Assignee
Inventors
Cpc classification
F02D41/28
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D2200/02
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D41/1402
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D29/06
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D41/20
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D2200/023
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D25/00
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F04B2201/0206
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D2041/2058
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D41/266
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F04B49/12
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D41/18
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
G05B13/042
PHYSICS
F02D2041/141
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F02D2041/1419
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F04B2203/0401
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F04B17/044
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F04B49/065
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
International classification
Abstract
Adaptive control of a Free Piston Mover (1, 19), wherein a Control Parameter Set (COPS′) for closed loop control of a Target Control Variable (CV.sub.t) is adapted using a Future-Stroke Controller (20) to respond to Input Demand (21) signals whilst ensuring a sufficient current control margin and compensating for system changes over time. The Control Parameter Set (COPS′) is transmitted to an In-Stroke Controller (23) in advance of the start of a stroke to be controlled, and the In-Stroke Controller (23) transmits a Current Demand (Qt) to a Current Controller (25) of the Free Piston Mover (119).
Claims
1-32. (canceled)
33. A method of controlling a Free Piston Mover, the method comprising the steps of: generating a Control Parameter Set for closed loop control of a Target Control Variable, this set comprising a Target Control Variable Function together with one or more of: a Stroke Threshold Function; a Feed Forward Current Function; a Feedback Terms Function; Control Parameter Set Transition Conditions; transmitting the Control Parameter Set to an In-Stroke Controller in advance of the start of a Stroke to be controlled; modifying one or more of the constituents of the Control Parameter Set for any Future Stroke of the Free Piston Mover using a Future-Stroke Controller; and transmitting the modified Control Parameter Set to the In-Stroke Controller for the control of any Future Stroke.
34. A method according to claim 33, further comprising the steps of: sampling a Base Variable indicative of Free Piston Mover performance during a Stroke following the generation of the Control Parameter Set; generating at least one Target Control Variable using the measured Base Variable with reference to a Target Control Variable Function; and determining at least one Control Variable Error using the measured Control Variable and the Target Control Variable.
35. A method according to claim 34, further comprising the step of: generating a Current Demand output which is input to a Current Controller using the Control Variable Error.
36. A method according to claim 35, further comprising the steps of: sampling a second Base Variable indicative of a second Free Piston Mover performance; generating at least one second Target Control Variable using the measured second Base Variable with reference to a second Target Control Variable Function; determining at least one second Control Variable Error using the measured second Control Variable and the second Target Control Variable; generating a Current Demand output which is input to a second Current Controller using the second Control Variable Error; and modifying the second Target Control Variable Function for a future stroke of the Free Piston Mover using a Future-Stroke Controller which may affect the next stroke or any future stroke.
37. A method according to claim 36, further comprising: measuring a FPM Synchronisation Error reflecting a difference between a measured Control Variable or measured Base Variable of the second mover and the equivalent measured Control Variable or measured Base Variable of a first mover when a measured variable of either or both mover has become equal to a predefined Stroke Transition Threshold value; providing a Demand Input; wherein the Future-Stroke Controller modifies the Control Parameter Set for a subsequent stroke for at least one of the Free Piston Movers based on at least one of: the measured current, the Current Demand, the FPM Synchronisation Error, the Demand Input.
38. A method according to claim 33, wherein the Target Control Variable Function is an array of Base Variable and Target Control Variable values from which a Target Control Variable can be looked up by reference to the array element corresponding to a measured Base Variable.
39. A method according to claim 38 wherein Target Control Variable Function values for a present stroke and at least one subsequent stroke are stored in a common array.
40. A method according to claim 34, wherein the Target Control Variable Function is either a mathematical formula from which the Target Control Variable can be calculated by applying the measured Base Variable or a simulation model from which the Target Control Variable can be determined by inputting the measured Base Variable.
41. A method according to claim 36, wherein the second Target Control Variable Function is one of an array of Base Variable and Target Control Variable values from which a second Target Control Variable can be looked up by reference to the array element corresponding to a measured second Base Variable, a mathematical formula from which the second Target Control Variable can be calculated by applying the measured second Base Variable, or a simulation model from which the second Target Control Variable can be determined by inputting the measured second Base Variable.
42. A method according to claim 35, wherein the Future-Stroke Controller receives input from a Synchronisation Controller for the two Free Piston Movers.
43. A method according to claim 42, wherein the synchronisation modifications to the Control Parameter Set of the first and second FPMs are opposite in direction.
44. A method according to claim 33, further comprising the step of recording a measurable output of one or more of the Free Piston Mover, In-Stroke Controller and Future-Stroke Controller.
45. A method according to claim 33, wherein the Control Parameter Set includes the Feed Forward Current Function and the Feed Forward Current Function comprises Feed Forward Current Demand values for a range of Base Variable values or for a range of Control Variable values.
46. A method according to claim 35, wherein the Current Demand is calculated for the measured Base Variable by addition of at least one Feedback Current Demand value and one Feed Forward Current Demand value.
47. A method according to claim 45, wherein the Future-Stroke Controller adjusts the Feed Forward Current Function for a future stroke by adding a proportion of the Feedback Current Demand value corresponding to one or more measured Base Variable values to the Feed Forward Current Demand values associated with each measured Base Variable value by the Feed Forward Current Function.
48. A system for controlling a free-piston mover for conducting a method according to any of the preceding claims, the system comprising: a Current Controller, an In-Stroke controller and a Future-Stroke controller, the Current Controller including at least one Gate Controller for controlling at least one circuit switching element such as an Insulated Gate Bipolar Transistor (IGBT), a Field Effect Transistor (FET), a Triode for Alternating Current (TRIAC), a Solid State Relay (SSR) or other type of electrical power relay.
49. A system according to claim 48, wherein the computational loop rate within the In-Stroke Controller is at least two times the computational loop rate within of the Future-Stroke Controller.
50. A system according to claim 48, wherein the Gate Controller and Current Feedback Controller are physically separated and linked by a serial communication means including one or more of: single ended switched unidirectional or bidirectional electrical circuit(s); differential switched unidirectional or bidirectional electrical circuit(s); or one or more optical fibres and associated transceivers.
51. A system according to claim 50, wherein the Gate Controller additionally comprises one or more Sensor Controllers or Sensors.
52. A computer program comprising computer program code means adapted to perform a method according to claim 33 when said program is run on a programmable microcomputer.
Description
BRIEF DESCRIPTION OF THE FIGURES
[0215] The present invention will now be described by way of example with reference to the accompanying drawings, in which:
[0216]
[0217]
[0218]
[0219]
[0220]
[0221]
[0222]
[0223]
[0224]
[0225]
[0226]
[0227]
[0228]
[0229]
[0230]
[0231]
DESCRIPTION OF THE FIGURES
[0232]
[0233]
[0234] The FPM 3 acts as the translator of the LEMS. In the example shown the FPM 3 is open at one end 3a to allow it to pass over a fixed central core 7 whilst moving within a surrounding cylinder 8 of the LPS housing 6. In this example the FPM 3 is closed at one end 3b so that a working chamber 4 is formed within the cylinder 8, and between the cylinder end wall 8a of the LPS housing end 6a and the closed end 3b of the FPM 3.
[0235] In a LPS application such as a Free Piston Linear Generator (also known as a Free Piston Engine) or Free Piston Gas Expander, the working chamber 4 may be used to apply a force on the closed end 3b of the FPM 3 by combustion, by introduction of a high pressure gas, or by a phase change. The associated features that may be included within these types of LPS (for example fuel and air supply, valves and ignition features) are not shown for clarity.
[0236] In the example embodiment shown in
[0237] The FPM 3 is formed to include one or more magnetically permeable or magnetised elements (not shown) which interact with Stator 5 to influence the current flowing within the Stator 5 and produce or vary a linear electromagnetic force acting on the FPM 3.
[0238] When the LPS 1 acts as a type of linear motor or actuator, electrical power input to the Stator 5 causes motion of the FPM 3. When the LPS 1 acts as a type of linear generator, electrical power output from in the Stator -(5-) is caused by motion of the FPM 3.
[0239] When the working chamber 4 acts as a combustion chamber converting fuel energy into mechanical work acting upon the FPM 3, the performance of the LPS depends on the timing, speed and completeness of the combustion reaction and the resulting emissions remaining in the working fluid following this reaction. The system performance of the LPS according to these characteristics depends critically on the profile of the linear motion of the FPM 3 with time.
[0240] A motion controller is therefore required to control the linear motion of the FPM 3 with time.
[0241]
[0242] A Target Control Variable Function CVt(BV) may be used to generate a Target Control Variable CVt from a measured values of the Base Variable BVm. The loci of CVt values determined from Target Control Variable Functions CVt(BV) with reference to measured values BVm are illustrated in
[0243] In both
[0244] In an alternative embodiment of Stroke Threshold Function ST(BV,CV), Stroke Transition Threshold values have the same units as Base Variable values. Stroke Transition Threshold values ST are determined from a Stroke Threshold Function ST(BV,CV) (10) with respect to measured Control Variable values CVm and Stroke Transition Threshold Conditions 11 occur when a measured Base Variable BVm is equal to Stroke Transition Threshold value ST.
[0245]
[0246]
[0247] For clarity, the clockwise direction of progression of FPM motion with time around the illustrated cycle is indicated by arrowhead marks 18
[0248]
[0249] The Demand Input could be generated by an end user of the LPS, or for example by another automated controller such as an Engine Control Unit (ECU) or hybrid vehicle Powertrain Control Unit (PCU). In this case the Future Stroke Controller 20 may periodically issue status signals to the Demand Input controller indicating operational readiness or other inputs required or utilised by the Demand Input controller.
[0250]
[0251] The Future Stroke Controller 20 periodically issues to the In-Stroke Controller 23 a set of outputs referred to as the Next Control Parameter Set (COPS′) and comprising a next Target Control Variable Function CVt(BV)′ together with one or more of; [0252] A set of Next COPS transition conditions CTC′ [0253] A Next Stroke Threshold Function ST(BV,CV)′ [0254] A Next Feed Forward Current Function QFF(BV,CV)′ [0255] A Next Feedback Terms Function QFB(BV,CV)′
[0256] Each of these outputs may be generated independently using inputs to the Future-Stroke Controller or may be based on previous versions of these outputs, modified using inputs to the Future-Stroke Controller.
[0257] The Future-Stroke Controller may generate one of more constituents of the Next Control Parameter Set with reference to multi-stroke historic and trend analysis data provided by a Logging, Analytics and Diagnostics controller 22, and/or with reference to a Synchronisation Error SE provided by a Synchronisation Controller 27.
[0258] The In-Stroke Controller 23 uses the Next Control Parameter Set, together with measured values of the Base Variable BVm and Control Variable CVm to determine a Current Demand output Qt that is issued as an input to a Current Controller 25. The In-Stroke Controller 23 may operate as a Reduced Authority Controller or Low Authority Controller (LAC).
[0259] The Current Controller 25 uses the Current Demand output Qt together with measured values of the Base Variable BVm and measured current values Qm to control the set of current values Q that flow in each coil or phase of one or more Linear Electrical Machine Stator within the LPS 1, and which may comprise a number of discrete and independent current values according to the number of coils and phases that exist within the LPS 1.
[0260] The set of currents Q results in FPM motion and output from the LPS 1 that is intended to satisfy the external Demand Input 21 and contribute to optimal system performance of the LPS 1.
[0261]
[0267] Within the Future-Stroke Controller 20 a Control Target Function Generator 26 generates the next Target Control Variable Function CVt(BV)′, the Next Stroke Threshold Function ST(BV,CV)′ and a set of Transition Conditions (CTC′) determining when the Next Control Parameter Set will be used by the In-Stroke Controller. The Control Target Function Generator takes input from the Demand Input 21, a Synchronisation Controller 27 and a Logging, Analytics and Diagnostic controller 22.
[0268] The Control Target Function Generator 26 within the Future-Stroke Controller 20 may also receive Current Limit Control Margin QCM values from the present stroke from the In-Stroke Controller 23 or may calculate these values from QFB values provided by the In-Stroke Controller 23 or may calculate these values based on Qm values measured from the LPS. The Next-Stroke Controller 20 may adjust the Next Target Control Variable Function and other constituents of the Next Control Parameter Set in order to ensure a sufficient Current Limit Control Margin QCM is maintained during future strokes.
[0269] The Control Target Function Generator 26 may also generate a ‘baseline’ Next Feed Forward Current Function (Abbreviated “QFF0(BV,CV)′”) corresponding to the expected current values that will be required to achieve the dynamic profile described by the Next Control Variable Target Function CVt(BV)′, before adaptations are applied by a Feed Forward Current Function Generator 28.
[0270] The Future-Stroke Controller 20 may also include a Feed Forward Current Function Generator 28, which may take input from a Control Variable Feedback Controller 33 within the In-Stroke Controller 23 to generate an adapted Next Feed Forward Current Function QFF(BV,CV)′, which is thereby modified in response to the operation of the In-Stroke Controller 23 over the course of multiple strokes. This modification may take the form of the addition of a proportion of QFB values to corresponding QFF terms within the Feed Forward Current Function QFF(BV,CV) for each set of QFB, BVm and/or CVm values that are together communicated by the Control Variable Feedback Controller 33 to the Feed Forward Current Function Generator 28.
[0271] The Future-Stroke Controller 20 may also include a Feedback Terms Function Generator 29, which may take input from the Feed Forward Current Function Generator 28 within the Future-Stroke Controller 20 to generate an adapted Next Feedback Terms Function FBT(BV,CV)′, modified in to take account of changes in the Next Feed Forward Current Function QFF(BV,CV)′ over the course of multiple strokes.
[0272] The Future-Stroke Controller 20 may generate one of more constituents of the Next Control Parameter Set by means of one or more control methods or processes utilising a Mean Value Model (MVM) based approach, MVM based approaches are well understood by persons skilled in the field, and typically neglect variations within each discrete stroke, instead and treating all processes and effects based on average values across one or more strokes.
[0273] The In-Stroke Controller 23 may include a Control Parameter Set Selector (30). Following an End of Stroke event the Control Parameter Set Selector 30 may replace the constituents of the Control Parameter Set presently used by the In-Stroke Controller 23 with corresponding constituents within the Next Control Parameter Set provided by the Future-Stroke Controller 20. This replacement may occur during the stroke following each End of Stroke event. Alternatively, this replacement may be executed after two or more strokes, following satisfaction of criteria set out in the COPS Transition Conditions presently in use by the In-Stroke Controller 23
[0274] A Stroke Transition Controller 27 uses the Stroke Threshold Function ST(BV,CV) with reference to a measured Base Variable BVm and/or a measured Control Variable CVm to determine the timing of End of Stroke events. The Stroke Transition Controller 27 may also determine the timing of an End of Stroke events based on a trigger event external to the In-Stroke Controller, for example a Synchronisation Trigger STR from a Synchronisation Controller or a Diagnostic Trigger DTR from a LAD Controller.
[0275] When the Stroke Transition Controller determines an End of Stroke event based on a Stroke Transition Trigger Condition or a Stroke Transition Threshold Condition, an End of Stroke signal EOS is sent to the Control Parameter Set Selector 30 and the Synchronisation Controller 27.
[0276] A Target Control Variable Calculation step 32 determines the Target Control Variable CVt based on a Target Control Variable Function CVt(BV) and with reference to a measured Base Variable BVm, and transmits one or more Target Control Variables CVt to a closed loop Control Variable Feedback Controller 33.
[0277] The CV Feedback Controller 33 calculates the QFB component of Current Demand Qt based on a Control Variable Error CVe, typically the difference between a Target Control Variable CVt and a Measured Control Variable CVm. The CV Feedback Controller 33 may be a ‘Proportional-Integral-Derivative’ (often referred to as a ‘PID’ controller) utilising Feedback Control Parameters generated from a Feedback Terms Function FBT(BV,CV). Alternatively the CV Feedback Controller may operate as one of several types of multiple-input multiple-output (MIMO) controller such as a state-space model based controller. In this way, two or more Target Control Variable Functions may be used in parallel to generate multiple QFB components of Current Demand Qt based on different measured Control Variables and/or measured Base Variables.
[0278] A Feed Forward Current calculation step 34 determines a Feed Forward current component QFF of Current Demand Qt based on a Feed Forward Current Function QFF(BV,CV) and with reference to a measured Base Variable BVm and/or measured Control Variable CVm. A Current Demand summation step 35 then adds QFF to one or more QFB values from the CV Feedback controller 33 to generate the total Current Demand Qt output from the In-Stroke Controller to the Current Controller 25.
[0279] A Current Feedback Controller 36 within the Current Controller 25 receives Current Demand Qt from the In-Stroke Controller. The Current Feedback Controller 36 receives measured current values Qm for each coil and/or phase within the LPS 1 and determines gate switching commands (Represented in
[0280] The Current Feedback Controller 36 may utilise a measured Base Variable BVm (For example, FPM position) in order to calculate commutated individual coil or phase current targets from an aggregate Current Demand value Qt. In addition, the Current Feedback Controller 36 may utilise a measured Base Variable BVm (For example, FPM position) to determine an optimum sequence of gate switching commands taking account of LEM characteristics such as coil-to-coil mutual inductance which may depend on BVm.
[0281] The Current Controller may include a Gate Controller 37 that applies a voltage to one or more current switching devices 38 such as a an Insulated Gate Bipolar Transistor (IGBT), a Field Effect Transistor (FET), a Triode for Alternating Current (TRIAC), a Solid State Relay (SSR) or other type of electrical power relay.
[0282] The Future-Stroke Controller 20, Synchronisation Controller 27, and LAD Controller 22, In-Stroke Controller 23 and Current Feedback Controller 36 are typically low voltage digital electronics with embedded firmware comprising an embedded control system. In contrast, the Gate Controller 37 is connected to the high voltage circuits, high current switches such as TRIACs (triode for alternating current) within one or more Current Switching Devices 38, and is preferably located close to the Stator coils whose currents are modulated by the Current Controller by for example pulse width modulation (PWM). It is preferable therefore that the Gate Controller 37 and Current Switching Devices 38 are separated physically from the other more sensitive digital embedded control system elements 20, 22, 23, 27, 36 so as to protect the latter from the harsh, electrically-noisy environment close to the Stator(s). In the preferred embodiment the Current Feedback Controller 36 and the Gate Controller 37 are separated and connected by a bidirectional serial communications link utilising differential signal circuit switching or optical fibre link for improved noise immunity.
[0283] In
[0284] In
[0285] The communications links for the Gate Controller 37 and Sensor Controller 36 may be independent or may be combined into a single bidirectional serial link typically having a serialiser/deserialiser 40 at each end and allowing for acknowledgements, error checking and correction.
[0286]
[0287]
[0288] During the initial 10 strokes QFB represents the majority of Current Demand Qt. Over the course of 50 strokes the Future-Stroke Controller adds a proportion of QFB recorded at each position in the stroke to the Next Feed Forward Current Function QFF(BV, CV)′. The effect of this adaptation is to progressively increase the contribution of QFF to Qt so that from stroke 40 to stroke 50 over 90% of Qt is provided by QFF.
[0289] In embodiments of the present invention where QFB is for example provided by a PID or PI controller, a consequence is reduced control range of QFB resulting in improved control accuracy with reduced Control Variable Error CVe, a reduced tendency to undershoot or overshoot, and an increased Current Demand Control Margin QCM.
[0290]
[0291]
[0292]
[0293]
[0294] There are of course many ways that such functions may be implemented for control purposes for example where the values are transposed into a logically wide table.
[0295] Each of the functions within the Next Control Parameter Set may also be generated according to an algorithm, simulation model or mathematical formulae that relates one or more Base Variables and/or Control Variables to Target Control Variables, Feed Forward Current Demand values, Stroke Threshold values and Feedback terms.
[0296]
[0306]
[0307] The Future-Stroke Controller, LAD Controller, Synchronisation Controller, In-Stroke controller, Current Controller and their constituent controllers calculations and steps described in this specification (including communications interfaces and protocols) may be implemented as integrated electronics, programmable logic, in part as analogue or digital circuits and embedded firmware on one or more printed circuit board assemblies and may incorporate one or more Application Specific Integrated Circuits (ASIC) for some or all of a controller's functionality or interface circuits.
[0308] The applicant hereby discloses in isolation each individual feature described herein and any combination of two or more such features, to the extent that such features or combinations are capable of being carried out based on the present specification as a whole in the light of the common general knowledge of a person skilled in the art, irrespective of whether such features or combinations of features solve any problems disclosed herein, and without limitation to the scope of the claims. The applicant indicates that aspects of the present invention may consist of any such individual feature or combination of features. In view of the foregoing description it will be evident to a person skilled in the art that various modifications may be made within the scope of the invention.