System and method for functional validation of modular automatic control device for rotating apparatus
20180216664 ยท 2018-08-02
Inventors
Cpc classification
F04D19/048
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
G05B2219/23446
PHYSICS
F04D29/058
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F16C32/0455
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F16C32/0489
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F16C32/0474
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
International classification
F16C32/04
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
F04D29/058
MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
Abstract
Magnetic bearings are used to support high speed machinery, for example, pumps, compressors, motors and generators, and require active electronics and an automatic feedback control system to realize their function. This invention pertains to improvements of the design of automatic control systems for magnetic bearings to enable system performance validation without requiring all the external components of the rotating apparatus to be present.
Claims
1. An apparatus and method for complete functional validation of a magnetic bearing automatic controller comprising algorithms running on a real-time digital processor, data converters, analog signal processing, digital interfaces, and a non real-time digital processor all connected to the device under test in such a way that salient behavior of all external components and interfaces can be subsumed into the proposed apparatus, herein referred to as the simulation module.
2. The proposed apparatus of claim 1 further comprising real-time processing elements based on either a digital signal processor, a field programmable gate array or a micro-controller, including additional analog or digital electronic circuits to offload signal processing tasks from the processor.
3. The proposed method of claim 1 further comprising algorithms realized in hardware and software on the apparatus to reproduce the electromechanical behaviors of the rotating apparatus external to the magnetic bearing automatic controller such as rotordynamics of the rotating shaft, and electrodynamics of the magnetic bearing actuator and power amplifiers, and the means to inject disturbances such as shaft imbalance, electromagnetic interference and component failure.
4. The proposed method of claim 1 further comprising a method for arranging electronic components of an automatic control system for a magnetic bearing supported rotating apparatus for the purpose of heterogeneous composition and functional validation.
5. The system of claim 4, wherein: the communications interface between computation elements of the automatic control system (collectively referred to as the computation module) and both the power amplifiers and sensors (including but not limited to rotor shaft position, angular velocity, magnetic bearing current and flux) is accessible so that the power amplifiers and sensor may be mimicked by a second automatic control system (simulation module);
6. The system of claim 3, further comprising: a means to emulate electrical response of the magnetic bearing power amplifier connected to its inductive load; a means to emulate the force delivered by the magnetic bearing to the rotor; a means to emulate dynamic response of the rotor to force inputs from the magnetic bearing, residual unbalance, rotor weight, fluid-structure interaction, motor unbalanced magnetic pull; a means to vary to speed of the rotor to emulate operation under different conditions; a means to emulate rotor angular position and velocity transducer such as quadrature encoder or sine/cos resolver using a combination of analog and/or digital signal processing in electronic hardware and software signal processing; a means to vary parameters used to calculate any of the above effects; a means to inject fault conditions to the system;
7. The system of claim 6 and claim 2, wherein: continuous-time dynamic mathematical models are defined for the system electro-mechanical responses; the size or order of the continuous-time dynamic models are reduced to the minimum necessary for an accurate representation of the electro-mechanical response; reduced-order continuous-time dynamic models are discretized for implementation on a sampled discrete digital control system; discrete time models are transformed to realize structures optimal for fast execution on a fixed or floating point digital signal processor;
8. The system of claim 6 defining the magnetic bearing-power amplifier model, further comprising: in the case of analog power amplifiers, the model is implemented in a multitude of 1.sup.st, 2.sup.nd or 3.sup.rd order active low pass filters to offload work from the real-time processor, in the case of digital power amplifiers, the model uses counter/timers (either standalone circuits or part of the real-time computation) to first extract the duty cycle as a voltage command and then implement model with a multitude of 1.sup.st, 2.sup.nd or 3.sup.rd order active low pass filters to offload work from the real-time processor.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0012] For a more complete understanding of the invention, reference is made to the following description and accompanying drawings, in which:
[0013]
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0020] The arrangement in
[0021] The arrangement in
[0022] The functions of the computation module may be split into two parts, control algorithms [17] required for the feedback control system to function, and control interface [18] to interact with the human user [19] or the factory control system [22]. The control algorithms [17] may be implemented on a real-time computation platform. A real-time computation platform is characterized by being able to generate an output in response to each and every input within a fixed time deadline and where the penalty for missing the deadline is severe. On the other hand, control interface [18] may be implemented on a non real-time computation platform. A non real-time computation platform is not designed or intended to meet stringent task deadlines, and so long as an update is delivered on the order of a second, is well suited for human interaction and network communication tasks.
[0023] In further detail, the control interface [18] may be implemented on a second core of a multi-core central processing unit (CPU), or as the only CPU in the embedded computer system. Such a CPU or core is named the host processor. The processor executing the control algorithms [17] is named the target processor. The host and target are connected by digital communication channel. Commonly used industry standard digital communication channels are PCI (peripheral component interconnect), SRIO (serial rapid input output), PCI-Express, PXI, Ethernet, to name but a few. The choice of communication channel protocols and electrical design affects the data bandwidth and latency of the communication channel and hence the overall performance and features of the modular magnetic bearing control system. Tasks performed by the host processor include, but are not limited to, preparing the modular magnetic bearing control system for use from the moment electrical power is initially applied; establishing communication between the host and target; loading firmware image to target; establishing communication between the computation module and the other equipment; transmitting settings or parameters to the target system; operating a graphical user interface [20] or GUI so that the end user [19] may interact with the modular magnetic bearing control system.
[0024] Typical end-users of magnetic bearing supported rotating machines have a desire to monitor and co-ordinate the operation of the magnetic bearing control system with other equipment in a facility from a central location. This monitoring and co-ordination function is performed by a supervisory control and data acquisition [22] or SCADA system. The computation module communicates with the SCADA via the SCADA and CM interface [21]. The SCADA and CM interface [21] may be implemented using a hardwired transistor output digital signaling (for example open collector or drain schemes), or standard industrial communication technologies such as CANbus or Modbus RTU or ModBus TCP. CANbus describes both physical layer and protocol layers, where as Modbus is independent of the physical layer which could be RS232/RS485 or Ethernet.
[0025] The control algorithms [17] will be addressed in more detail later in this disclosure. However, at a high level the sort of actions performed may include reading of analog and digital inputs, application of signal processing to analog inputs and digital inputs (for example anti-alias filtering and gain/offset correction for analog signals, and galvanic isolation, debouncing, implementation of counters/timers for the digital signals); execution of multiple algorithms to compute output current/force needed to support the rotating apparatus of the magnetic bearing system, perform diagnostics, prognostics and condition monitoring, write analog and/or digital outputs to the power amplifiers and other equipment in the modular magnetic bearing system. The core algorithm for the computation module is the servo feedback control algorithm that supports the shaft. Since magnetic bearing systems are open-loop unstable, a feedback controller is mandatory for stable operation. The feedback control law may be based on classical frequency-domain based laws such as proportional-integral-derivative (PID) and lead-lag operations, or modern time-domain designs rooted in robust, adaptive or non-linear system design approaches. Another type of algorithm employed along side the feedback controller in magnetic bearing systems are feed-forward control laws. Feed-forward control laws are used minimize the impact of synchronous disturbances (such as mechanical shaft imbalance, mechanical and electrical runout) on the operation of the magnetic bearing. Since the rotating speed of the apparatus is known, so is the frequency and phase of these repetitive disturbances. Hence, with some adaptation it is possible to minimize their effect on the system.
[0026] The power amplifier module [10] or PAM, converts the low voltage, low power command output from the computation module to a high voltage signal capable of driving the required current through the windings of the active magnetic bearing [12] in-order to generate force. The output command may be an analog reference voltage, or a digital signal encoded with pulse width modulation. Switch mode power amplifiers are almost universally used because of their higher efficiency. However, careful design is needed to keep the electromagnetic interference generated by the switching action as low as possible. A typical PAM for a rotating apparatus with 2 radial and 1 thrust bearing contains either 5 or 10 amplifiers depending on how the constant bias for the magnetic bearings is generated, i.e. using electromagnets or permanent magnets. The signals exchanged between the PAM and CM are transmitted over the computation module and power amplifier module interface [9]. In addition the command output from the CM, the computation module and power amplifier module interface [9] transmits amplifier status information back to the CM. Amplifier status may include, but is not limited to, fault status, output enable status, supply voltage input status. The power amplifier and active magnetic bearing interface [11] is the electrical link between the PAM and the windings that make up the magnetic bearing actuator. The link may be a few cm to hundreds of meters in length, and thus its design must take into account electrical losses and electromagnetic interference. Not shown in
[0027] There are numerous sensors located throughout the modular magnetic bearing control system. Examples include, but are limited to, accelerometers for machine foundation monitoring, shaft angular velocity and angular displacement sensors (i.e. rotary encoders or resolvers), shaft radial and axial displacement sensors, magnetic bearing stator temperature sensors, electrical current sensors for the magnetic bearing windings, magnetic flux sensors for the magnetic bearing actuator. While the sensors are practically spread out in different physical locations, the purpose of the sensing module [15] or SEM is to logically organize the function that all sensors provide into a single block. For example the winding current sensors may be located in the power amplifier module [10], while the shaft radial displacement sensors are located in the vicinity of the rotating apparatus [1]. Sensor signal processing functions including, but not limit to, demodulation of the carrier frequency and temperature compensation in the displacement sensors, ratio-metric measurement for RTDs, and shaft resolver to digital conversion are performed in the SEM. The SEM block has an interface with the computation module [16] that provides electrical power to the sensors, and transmits the transducer outputs to the computation module via analog or digital signaling. The SEM also has an interface with the electromechanical hardware of the magnetic bearing system [14]. This physical interface includes sensors located in the power amplifier module [10] and on the shaft [1].
[0028] The arrangement in
[0029] The arrangement in
[0030] The arrangement in
[0031] The arrangement in
[0032] The subsequent action for the host is to initialize the external communications interface [54] abbreviated as XCOM. This interface to the system providing supervisory control and data acquisition [22] external to the magnetic bearing controller may be based upon communication standards or protocols such as CANbus and Modbus in addition to or rely upon low level digital interfaces such an open collector/drain transistor output schemes. Transistor output schemes are preferred for safety critical functions such as emergency off (EMO) and fault notification. It is desirable for low level status (for example system ON, system FAULT) and commands (for example TURN ON, EMERGENCY OFF, FAULT RESET) to be transmitted from the SCADA system to the target directly via low level digital interfacing which avoids software interfaces that may be less robust.
[0033] Even though the target may be running, it is not fully operational until the host provides the target with numeric values for parameters of the arithmetic and logic operations implemented to realize the control algorithms. These parameters, which may vary from one system to another, include but are not limited to control gains for the algorithm, gain/offset calibration values for any actuators or transducers. The load parameters [55] action provides this information to the target. Following this step, the activities on the target and host are now asynchronous and this is shown by a fork in the flow chart. The actions on the left are performed on the host, whilst the actions on the right are performed on the target.
[0034] The next six actions executed on the host repeat indefinitely with a period on the order of 1 second or less. The periodicity of the polling actions is such that data and commands may be exchanged between the host and target, and also between the host and the SCADA system via the XCOM interface. The first action is for the host to poll the target [56]. The target is alerted to this request with an interrupt. The host and target have a common memory space to allow for exchange of data. In response to the host, the target will populate the requested memory space with data so that in the next step the host is able to update the GUI [57]. The types of information shown on the GUI include and is not limited to, shaft displacement data, shaft speed, power amplifier current data, amplifier operational status, component temperature data, and various digital inputs/outputs. Since the GUI is intended for human use, often the next step after the host GUI update is for the user to use the GUI to issue commands to the host [58] or modify one or more calibration or operational parameters. The next action is for the host to write to the external communication interface [59] any status information retrieved from the target in a preceding step. The host subsequently reads back from the external communication interface [60] to determine what response to supply via the external communication interface on the next cycle. The final action in the repeating loop is for the host to send commands to the target [61] based on user input or an incoming request via the external communication interface.
[0035] Separately from the host loop, the following eight actions are executed on the target indefinitely with a period on the order of one hundred microseconds or less. The timing is tightly controlled by the system clock [33], which enforces deadlines for tasks on the real-time processor to be executed within. The timing is ensured through the use of interrupts. To ensure synchronization of reading sensor data and delivering an actuator response, the first step in the loop is to wait for the arrival of the interrupt [62] to generate an output. Once the servo interrupt is received, the first task is to read the analog and digital signals [63] inbound to the magnetic bearing controller. Analog input signals may include but are not limited to shaft displacement, component temperature, magnetic bearing winding current, magnetic bearing gap flux, et cetera. The analog signals are digitized by a sampled digital to analog converter and made available for processing. Digital input signals may include but are not limited to power amplifier module status, low level commands from the safety programmable logic controller (PLC) responsible for the rotating machinery apparatus, shaft mounted encoders or resolvers, key switches, emergency stop switches, et cetera. Some high speed digital signals, for example, shaft rotary encoder or resolver output, are typically fed into counter/timer circuits [64] that decode the data into frequency and or phase information which is made available for further processing by the control algorithm. The task that follows the collection of input data is the execution of the control algorithm [65]. This task may in practice be split into more than one discrete, synchronized sub-tasks who purpose is to perform real-time arithmetic and logic operations on the incoming data to generate output signals that will support the function of the magnetic bearing. The control algorithm may also be responsible for computing key performance indicators (KPIs) of the control system, and applying thresholds to these KPIs to determine where performance is or is not according to specification, and if necessary acting upon or alerting the host to act upon this information. Once all computations are completed, the subsequent task is for the target to update the analog and digital outputs [66]. Analog outputs may include but are not limited to command reference for analog based amplifiers in the power amplifier module. Digital outputs may include but are not limited to enable signals to relays controlling power supplies and amplifiers in the power amplifier module, pulse width modulated command reference for digital power amplifiers in the power amplifier module. The next task is for the target to read the command(s) [67] received when the host polled it [56]. This read action by the target is typically triggered by an interrupt sent by the host. The final step in the sequence is for the target to respond with status or other requested data to the host [68]. After this step completes, the target returns to wait for the next servo interrupt [62] to being processing inputs once more.
[0036] The arrangement in
[0037] For analog power amplifiers, an analog amplifier-winding model converts the amplifier command reference voltage [9] to the equivalent electrical current realized in the coil windings of the magnetic bearing. The parameters of the amplifier model include but are not limited to features of the magnetic bearing electrical construction e.g., electrical inductance and resistance, and features of the power amplifier construction, e.g., maximum voltage, maximum current, small signal bandwidth. For speed of execution the amplifier-winding dynamics can be represented with a first order model for each of the 5 control axes in the magnetic bearing system:
i=G.sub.amp(s)v,(1)
where G.sub.amp(s) is a continuous time transfer function from command voltage input v to resulting coil current i. As mentioned earlier, to offload the task of executing the amplifier model from the simulation module, G.sub.amp(s) may be implemented in electronic hardware instead of software. This hardware would be multiple 1.sup.st, 2.sup.nd or 3.sup.rd order active low pass filters that incorporate digital potentiometers to vary the circuit response to match the amplifier-winding dynamics.
[0038] If digital power amplifiers are used in the system, a different electronic hardware circuit from what is described above is employed to convert the pulse-width modulated amplifier command reference voltage to the equivalent electrical current realized in the coil windings of the magnetic bearing. The duty-cycle can be directly extracted for the 5 or 10 amplifiers in the system through the use of counter/timers to measure the duration of a high level and the period of the signal. This duty-cycle is directly proportional to the equivalent electrical current. This equivalent electrical current may then be passed through a similar low pass filter to that described in the previous paragraph to capture additional dynamics of the amplifier.
[0039] The rotor dynamics model may be specified in a general manner:
M.sub.r{umlaut over (q)}+G.sub.r{dot over (q)}+K.sub.rq=B.sub.extF.sub.ext+B.sub.magF.sub.mag
y.sub.s=C.sub.sq
y.sub.mag=C.sub.magq,(2)
where q is a displacement vector of points along the rotor, M.sub.r is a mass matrix, G.sub.r is gyroscopic matrix, K.sub.r is internal stiffness matrix, B.sub.ext specifies which locations in q space the external forces F.sub.ext will act, and similarly B.sub.mag specifies which location in q space the magnetic bearing force F.sub.mag is applied, is rotor angular velocity, y.sub.s is the rotor displacement at certain points of interest as defined by a coefficient distribution matrix C.sub.s, y.sub.mag is the rotor displacement at the magnetic bearing locations as defined by a coefficient distribution matrix C.sub.mag.
[0040] The force exerted on the rotor by the magnetic bearing model is represented by:
F.sub.mag=K.sub.iiK.sub.xy.sub.mag,(3)
where K.sub.i is the current gain parameter of the magnetic bearing, i is the current in the multiple magnetic bearing coil windings, K.sub.x is the negative stiffness parameter of the magnetic bearing. These two parameters are obtained by linearizing the force delivered by the magnetic bearing by considering the following: an opposing pair of bearings producing motion in a single degree of freedom; a bias current; and limiting the rotor displacement to small motions about the nominal center of the bearing clearance as explained in B1.
[0041] In addition to F.sub.mag, there are external forces F.sub.ext acting on the system that must be considered during operation. These include the weight of the rotor F.sub.w which may be considered to act at the center of gravity, forces due to fluid-structure interaction F.sub.fluid for example cross-coupled stiffness induced loads at seals, F.sub.unb force generated due to residual rotor unbalance and F.sub.UMP the unbalanced magnetic pull, if any, generated by the stator of an electric motor assembly directly attached to the rotor:
F.sub.ext=F.sub.fluid+F.sub.wF.sub.unbF.sub.UMP.(4)
[0042] Through mathematical operations to collect like terms, equations 1 through 4 may be combined into a single continuous time state-space model of the form
{dot over (x)}(t)=Ax(t)Bu(t)
z(t)=Cx(t)+Du(t),(5)
where A, B, C and D are matrices, t is the time operator, u is the input vector, z is the output vector. The order of the model may be optimized through truncation of higher order dynamic features beyond the control bandwidth of the magnetic bearing using modal truncation or singular value based methods. The resulting low-order model is then converted to discrete-time form using the bilinear (Tustin) methodology. The selection of the bilinear or any other continuous-discrete time conversion methods is based on a consideration of the underlying model dynamics. To improve numerical conditioning the discrete-time state space model in modal canonical form is then balanced based on diagonal similarity transformation, resulting in an optimized discrete time model
x.sub.k+1=A.sub.dx(k)+B.sub.du(k)
z(k)=C.sub.dx(k)+D.sub.du(k),(6)
where A.sub.d, B.sub.d, C.sub.d and D.sub.d are matrices and k is the index for the discrete time series. The purpose of the aforementioned steps is to increase the sparseness of the matrices, i.e. have more zeros because then a multiply-accumulate (MAC) step may be eliminated. The final step in preparation of the model is a conversion to the numeric format of the target real-time processor to further enhance the execution time on the target processor. Examples of optimal numeric formats include single precision floating point for the TMS320C6713 DSP from Texas Instruments, or fixed point for the TMS320C6455 DSP from Texas Instruments. Prior to executing the optimized dynamic model on the simulation module, the optimized model is validated against the un-optimized version to ensure their results are in full agreement. An optimized matrix-vector computation algorithm that utilizes the sparseness of the above matrices to reduce the number of MAC operations required per sampling interval allows for a 20.sup.th order simulation model with 5 inputs and 5 outputs, representing a typical 5 axis magnetic bearing system, to be executed within 16 microseconds on a Texas Instruments C6713 DSP, therefore enabling greater than 40 kHz sample rate of the simulation module.
[0043] The arrangement of electronic components in
[0044] It will thus be seen that the objects set forth above, among those made apparent from the preceding description, are efficiently attained and, because certain changes may be made in carrying out the above method and in the construction(s) set forth without departing from the spirit and scope of the invention, it is intended that all matter contained in the above description and shown in the accompanying drawings shall be interpreted as illustrative and not in a limiting sense.
[0045] It is also to be understood that the following claims are intended to cover all of the generic and specific features of the invention herein described and all statements of the scope of the invention which, as a matter of language, might be said to fall there-between.