Design and Implementation of a Fuzzy Controller for a TRIGA Mark III Reactor

The design and testing of a fuzzy rule based controller to regulate the power of a TRIGA Mark III research nuclear reactor are presented. The design does not require the current exact parameters of the point kinetic equations of the reactor. Instead, from a qualitative analysis of the actions taken by the operators during the reactor’s operation, a set of control rules is derived. The rules cover the operation of the reactor from low levels of about dozens of watts up to its full power level of one megawatt. The controller is able to increase power from different initial values to a wide range of desired levels, maintaining constant levels for long periods of time. The controller’s output is the external reactivity, which is further converted to a control rod incremental movement. The fuzzy controller is implemented on the reactor’s digital operating console, and the results of a series of experiments are discussed.


Introduction
Fuzzy logic has its earliest roots in ancient Greece where Aristotle introduced the classical laws of thought.Plato showed the basics of what is now known as fuzzy or multivalent logic, indicating that there was a third region between true and false: the degrees of membership, which is supported by classical logic [1].
It was until the early twenty century when Lukasiewicz [2] proposed a systematic alternative to the bivalued logic of Aristotle: the logic of vagueness.He described it as the logic of the 3 values or trivalued, with the third value being "possible."However, the philosopher and mathematician Max Black, regarded as the precursor of fuzzy logic, defined in 1937 the first fuzzy set [3].In 1960, Lotfi Asker Zadeh created the "fuzzy logic", which combines the concepts of logic and Jan Łukasiewicz's sets by defining degrees of membership [4,7].
The 1980s and 1990s decades were an explosion of fuzzy logic based applications.One of the early works on power control in nuclear reactors presented a water level controller in a PWR steam generator [5].In 1998, a nuclear power reactor fuzzy controller simulator using Matlab was developed [6].An analysis of the safety aspects of fuzzy controller implementation in nuclear reactors was reported in 2000 [4,7].Also in this year, the results of a comparison study between a classical PID controller and a fuzzy controller applied to nuclear reactors were presented [8].Subsequent work has been done evaluating the strengths and weaknesses of fuzzy controllers applied to nuclear reactors [9].Most of the work on power control of nuclear reactors using fuzzy logic shows, through computer simulations, the feasibility of its implementation [10,11].The implementation of such innovative control schemes in nuclear power plants is not an easy task, mainly due to the strict requirements demanded by the national nuclear regulatory organisms.
For research nuclear reactors, however, the requirements to implement new control systems are relatively easier to meet.This is the case for the TRIGA reactor of the National Nuclear Center of Mexico, since its original analog control console was replaced by a computer based one in 2001.Thus, in automatic mode of the reactor operation, the increase, regulation, and decrease of power are carried out by a software module which implements a PID controller.The PID compares the power demanded by the operator with the current power measured by the nuclear channels.The output of the PID algorithm is a command sent to the Control Rod System to adjust the position of the Regulation Rod until the demanded level of power is attained.In this control module, the rate of power increase is limited to reduce the possibility of having reactor period values below 7 seconds, which is a design specification for this type of reactor.
The modular design of the hardware and software [12] of the operating console makes this reactor an ideal platform to test new control schemes.The PID control module can be replaced by a fuzzy control module without affecting the safety features established in the reactor safety report [13], approved by the National Commission of Nuclear Safety and Safeguards (CNSNSs), which is the Mexican nuclear regulatory body.The fuzzy control algorithm has been implemented on the reactor's digital control console, and a series of experimental results is reported.Likewise, these results convey conclusions about possible procedures to adjust the parameters of the different stages of the fuzzy controller which could lead to an improved performance of the closed loop system.
The paper is organized as follows.In Section 2, the reactor control using a Fuzzy Rule Based System is described.Section 3 presents and gives a brief explanation of the characteristics of the fuzzy sets associated to the inputs and the output of the fuzzy system.An analysis of the actions performed by the human operator to adjust the power of the reactor during different operational stages is described in Section 4. In Section 5, the reactivity defuzzification process is explained, followed, in Section 6, by the conversion of the reactivity to rod position.The control algorithm is illustrated by means of a flowchart in Section 7. A discussion of the main results obtained from the experiments performed on the reactor is given in Section 8. Finally, the conclusions are presented in Section 9.

Fuzzy Controller for the TRIGA Mark III Reactor
A block diagram of the power control system, using a Fuzzy Rule Based System (FRBS), for the TRIGA Mark III reactor of the Nuclear Center of Mexico is shown in Figure 1.This closed loop control system is used when the reactor operates in automatic mode.The inputs to the FRBS are the instantaneous values of the reactor period, T, and the power error, PE, which is the difference between the current reactor power and the demanded power.The meaning of reactor period at time t is the time interval that is required by the reactor to increase power by an e factor (base of natural logarithm), considering that the power rate of change at time t remains constant.For the TRIGA reactor, the instantaneous reactor period is generated by the logarithmic channel (LOG) as a voltage signal in a range from −10 to +10 volts, corresponding to a reactor period interval from −3 s to +3 s.The demanded power is set by the operator as a percentage value, from 0 to 100%, of the scale of the Linear Power Channel (LPC) selected.The instantaneous reactor power is provided by the LPC as a voltage signal in the interval between 0 and 1.2 volts, which corresponds to a percentage value, from 0 to 120%, of the LPC scale.
The FRBS is a Mamdani-type fuzzy system, which internally carries out the following functions: input fuzzification, rule evaluation using a predetermined inference mechanism, activated consequent rule aggregation, and output defuzzification using the center of gravity, COG, and method [10,11].The output of the FRBS is the amount of reactivity that must be inserted in the reactor core.This value is converted to the corresponding position where the Regulation Rod must be placed.The motion of this rod is carried out by another modular block of the reactor control system, known as Control Rod System [14].

Fuzzy Sets Associated to the Inputs and Output of the FRBS
Based on the computer simulation of the open and closed loop system composed of the point kinetic equations, modeling the reactor dynamics, and the fuzzy controller, the number, shape, and domain of the fuzzy sets associated to each of the two inputs and the output of the Fuzzy Rule Based System have been predefined [15,16].The universes of discourse of the FRBS sets are defined according to the reactor operating parameters [13].The characteristics of these sets are described in the following subsections.

Power Error in Percentage of LPC Scale (%PE).
This input variable is defined as the difference between the measured reactor power and the demanded power.These two quantities are expressed as a percentage of the scale of the LPC selected by the operator.Thus, this input to the FRBS can be expressed as The range of values from −100% to 120% has been assigned to this input to include the safety shutdown of the reactor (SCRAM) by high power.For the TRIGA Mark III reactor, this SCRAM is fired when the measured instantaneous power is 10% above the demanded power level.In system control terms, this shutdown is visualized as an overshoot of power beyond the 10% limit.
Five fuzzy sets are associated to this variable and distributed along its universe of discourse.The initial shape and domain of each fuzzy set were defined through computer simulations of the control scheme [16].These features were adjusted during the testing on the real system.The resulting sets are shown in Figure 2.

Reactor Period.
The second input to the FRBS is the reactor period T, which, as seen in the previous section, is defined as the time interval required to increase the reactor power by an e factor (base of natural logarithm), considering that the power rate of change at time t remains constant.
The lower limit of this variable was set to one second to include the Period SCRAM value of 3 seconds.The universe of discourse spans four decades up to 10000 seconds, being this upper limit highly representative of a steady state reactor operation.
As for the other input, five fuzzy sets are associated to this variable and distributed along its universe of discourse, where their initial shapes and domains were defined through computer simulations [16].These features were adjusted during the testing on the real system.The resulting sets are shown in Figure 3.
The domains and labels of these sets are 1 to 5 s for CP (Critical Period), 3 to 10 s for LCP (Little Critical Period), 5 to 100 s for NP (Normal Period), 10 to 1000 s for BP (Big Period), and 100 to 10000 s for PTI (Period Tends to Infinity).The shapes of the membership functions are either triangular or trapezoidal and the curved lines appreciated in the figure are due to the logarithmic scale used for the T variable.The inflection points of these sets (see Figure 3) are specified at A = 1000 s (PTI), B = 100 s (BP), C = 10 s (NP), D = 5 s (LCP), and E = 3 s (CP).
As mentioned in Section 2, the logarithmic channel (LOG) generates voltage values in the range from −10 to 10 volts.The relation between the LOG voltage and the reactor period in time units is where T v and T s are the period values in voltage and time units, respectively.Thus, a zero voltage results in an infinite second reactor period.To avoid a possible division by zero, the programmed algorithm of the FRBS handles the reactor period using the voltage values.The inflection points of the fuzzy sets, expressing the reactor period in voltage units, are , and E = 10 V.

Reactivity.
The output of the FRBS is a value that represents the reactivity (ρ), expressed in the fractions of a dollar ($), to be inserted into the reactor core to increase or decrease the fission reaction such that the current reactor power approximates the demanded power.
A series of experiments was carried out to relate the reactor period to the reactivity.The critical values of the reactor period were obtained for different stepwise insertions of reactivity (see Figure 4).It was found that a 0.6$ of reactivity insertion results in a reactor period value of 4 s.Based on these experiments, the universe of discourse for the reactivity was defined from −0.6$ to 0.6$.Using this universe, the possibility of having a reactor period below the 3 s value is greatly reduced [17].
Six fuzzy sets are associated to the reactivity and distributed along its universe of discourse.Using the experience gained from simulations of this type of control scheme [18], the membership functions were defined in order to have smooth transitions of the power signal and to attain the demanded power in the intervals of time similar to those obtained with the PID controller.To reduce the amplitude of power oscillations, when the reactor operates at steady state, a narrow domain for set RZ (Reactivity, Zero) is assigned.
The six fuzzy sets associated to this variable are shown in Figure 5 and their domains and labels are −0.6 to −0.05$ for RBN (Reactivity, Big, Negative), −0.3 to 0$ for RSN (Reactivity, Small, Negative), −0.05 to 0.05$ for RZ (Reactivity, Zero), 0 to 0.3$ for RSP (Reactivity, Small, Positive), 0.05 to 0.5$ for RMP (Reactivity, Medium, Positive), and 0.3 to 0.6$ for RBP (Reactivity, Big, Positive).The inflection and end points are and H = 0.6$.As for the input variables, these points can be adjusted during the reactor operation.

Qualitative Analysis of Operator's Actions and Fuzzy Rules
An analysis of the actions taken by the reactor operator to adjust the power of the reactor was made during several sessions of the reactor operation.These actions can be categorized in six main cases, described next.
Case 1 (actions taken during reactor startup).The operator starts with the reactor at source level (a strongly subcritical state) with all control rods fully inserted into the core.The operator raises three noncontrolled rods to the position historically registered for the final required power level.Then, the increase in power is carried out by moving, exclusively, the Regulation Rod.The operator continuously monitors the reactor period, keeping this parameter above 5 seconds all over the time.It is worth mentioning that when this parameter falls below the 3 second limit, a corresponding SCRAM (safe shutdown of the reactor) is activated, as established in the Technical Operating Specifications of the reactor [17].
Case 2 (the operator increases power with more than a decade between final and initial power levels).Starting at the initial power level, the operator withdraws the regulating rod a length equivalent to a reactivity of 0.6$.This action results in period values of 4 to 5 seconds.It is worth mentioning that this ratio changes as the control rod burns out and also as the fuel temperature or the rod position is modified.When the power is close to its final value, the Regulation Rod is inserted into the core to avoid an excessive overshoot and reach smoothly the desired power level.
Case 3 (the operator increases power with less than a decade between final and initial power levels).The reactor operator withdraws slightly the Regulation Rod causing a slow increase of power.When the power is about to attain the desired level, the Regulation Rod is reinserted.Usually this small increase of power produces periods of 10 or more seconds.
Case 4 (the operator adjusts power drifts during long-term operations).The operator slightly changes the position of one control rod.The displacements of the control rods are of the order of 1 mm equivalent to a reactivity of about 1.2¢, and the purpose is to adjust the power drift that occurs during long-term operations of the reactor.
Case 5 (The operator decreases power within a decade).The operator inserts the control rod a few millimeters and waits for the stabilization of the power.If necessary this action is repeated until the desired lower power level is attained and maintained.
Case 6 (the operator decreases power with more than a decade between final and initial power levels).The operator inserts the control rod more than 10 mm.When the power approaches the desired level, the operator withdraws the rod to avoid an undershoot and to smoothly approach the desired level.
From these cases, the following criteria are inferred.
Criterion 1.When the power difference is less than a decade, the recommended insertion of reactivity is around the 24¢, which will produce periods of more than 10 seconds.
Criterion 2. When the power difference is greater than a decade, a reactivity insertion of around the 60¢ is recommended.This insertion will quickly adjust the power with periods near the 5 seconds (SCRAM limit = 3 s).
Criterion 3. The operator, or an automatic control system, should try to maintain the reactor period above 5 seconds at all times, thus reducing the possibility of an SCRAM, which occurs for periods below the 3-second limit value.
These criteria are taken into account for the generation of the FRBS control rules.
The antecedent of a fuzzy rule is formed by the intersection of one of the fuzzy sets associated to the power error (PE) and one of the fuzzy sets associated to the reactor period (T).Thus, 25 rules are generated.One of the fuzzy sets associated to the reactivity (ρ) is assigned as the consequent of each fuzzy rule.These rules are shown in Figure 6.The MinMax method is used to evaluate the set of fuzzy rules.

Aggregation and Defuzzification
The output of the FRBS is a fuzzy set formed by the aggregation of the activated output fuzzy sets.An activated set means that this particular set was fired by one or several rules, each with certain strength; when the MaxMin inference mechanism is used, the maximum of these strengths is selected as the firing intensity for that particular output set.The aggregation stage is a predefined form of combining all the activated fuzzy sets whose result is a fuzzy set, named the aggregated output set.Then, this fuzzy output is defuzzified by means of a specific defuzzification method.The outcome of this process is a crisp value of the FRBS output.In this application, the method chosen is the center of gravity (COG), and the crisp value of the reactivity (ρ) is given by [19]: where μ(y i ) represents the membership value of the reactivity value y i in the aggregated output fuzzy set defined on the interval [a,b].In each control cycle, the fuzzy controller yields an output value of reactivity between −0.6$ to +0.6$, which is then converted to a corresponding rod position.

Reactivity to Rod Position Conversion
The integral reactivity ρ i , which relates the current reactivity versus the control rod position, is given by (4) [20]: where H and R t are the total rod length and the reactivity, respectively, and i is the position.The plot obtained with ( 4) is an S-shaped curve as shown in Figure 7.
The relationship between reactivity and the control rod position can be linearized.Using a first order approximation, the rod position in terms of reactivity can be expressed as where K 1 and K 2 correspond to the slope and intersection, and their values vary as the control rod burns out.Therefore, these values are recalculated when a control rod calibration is performed.The S-shaped function that relates the reactivity worth to the changes in the rod position has very slight curvatures.For this reason, the relationship can be approximated very efficiently with a straight line for all the rod length.Figure 7 shows that the linear fitting given by ( 5) has a correlation of 99.1% to the S-shaped function.Since the implementation of the controller is done by software, and as the performance parameter values obtained with the PID can also be obtained with the fuzzy controller.Thus, the fuzzy controller can replace the PID controller, at least for this level of operation.

Increasing of Power with Thermal Effect.
In this experiment, the power is given a sudden change from 10 kW to 50 kW.The response the fuzzy controller is shown in Figure 11.There is an oscillation around the set point like in the increasing of power from 100 W to 500 W case.
To improve the behavior of the response, the values of the inflection points are modified as follows.The power error parameter C is set from −20% to −5%; the reactivity fuzzy parameters C and E are set to −0.2$ and 0.2$, respectively.The response of the reactor with the new parameter values is shown in Figure 12(a).The response behavior is improved, because the fuel begins to heat and the thermal effect becomes more important.Figure 12(b) shows the PID response of the actual PID controller that is in operation since 2001.
In this case, as can be seen in Figure 12, the power response obtained with the fuzzy controller has a smaller steady state power error, compared to its PID equivalent.The overshoot is approximately the same for both fuzzy and PID.The stabilization time, however, is longer on the fuzzy case.A general conclusion is that the fuzzy controller can replace the PID controller over the entire operational range.

Results.
The fuzzy controller with the initial set of parameters drives the power increase with an average period of 9.6 s.The oscillation observed around the set point is due to the regulating rod mechanism response time.The controller could not stabilize the power level with the initial set of parameters.
A first attempt to improve the response is done by setting the controller parameters as follows: EPC = −20, RC = −0.2, and RE = 0.2.With these values, the response could not reach the final power in the experiment of increasing power level from 100 W to 500 W. No other experiments are done with these values.A better tuning, setting the controller parameters to EPC = −5, RC = −0.2, and RE = 0.2, allows the response to reach the desired final power level.With these new values, the fuzzy controller stabilizes the response.The overshoot is around 10%.From Figures 10 and 12, it can be appreciated that the power response obtained with the fuzzy controller is very close to that obtained with the PID controller.This is an indication that the performance parameter values obtained with the PID can also be obtained with the fuzzy controller.Thus, the fuzzy controller can replace the PID controller.

Conclusions
This paper presents a fuzzy control approach to controlling/tracking/regulating the power of a nuclear research reactor.The power control is successfully achieved by using a set of rules that concentrate on the information obtained from two main sources: the knowledge of the operators based on the actions they take during the reactor operation and the nonlinearities introduced by the slow rod mechanisms and the changes in the temperature of the fuel elements.The concept of the inflection points, which are defined as the points where the slopes of the membership functions change, is exploited to allow the set of rules to be dynamically adjusted.The proposed fuzzy controller guarantees the smooth transitions between different power levels and the

Figure 3 :
Figure 3: Fuzzy sets associated to the reactor period.

Figure 4 :Figure 5 :
Figure 4: Period versus Reactivity insertion in the reactor core.

Figure 10 :
Figure 10: Sudden increase of power level from 100 W to 500 W. (a): Using tuned fuzzy controller.(b): Using PID controller.

Figure 11 :
Figure 11: Increasing power level from 10 kW to 50 kW.