Design of a Microprocessor Control System for a Solid-Fuel Water Boiler

June 8, 2017 | Autor: Heikki Koivo | Categoria: Engineering, Control system, Real Time Operating System
Share Embed


Descrição do Produto

IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS, VOL. IE-31, NO. 3, AUGUST 1984

263

Design of a Microprocessor Control System for a Solid-Fuel Water Boiler LASSE JOHANSSON, HEIKKI N. KOIVO, AND ARTO S. PELTOMAA Abstract-A design of an industrial microcomputer control system for a 1.6-MW boiler using solid fuel is presented. Instrumentation and control philosophies for the boiler are discussed. The microcomputer system is based on standard iSBC microcomputer boards. The software consists of a real-time operating system RXM/80 and application tasks. The designed control system saves fuel and gives a more reliable over-all operation.

INTRODUCTION CARCE ENERGY RESOURCES have forced development of boiler technology, suited especially for the needs of rural areas. In Nordic countries, this means developing small robust boilers using solid fuels such as wood, wood chips, and sod peat. In addition to process technology, control of such hot water boilers has become an important economic issue. Combustion should be even, with no or very little air pollution, in spite of moisture in fuel, available air, etc. A natural solution is to use a microprocessor control system. This paper presents a design of an industrial microcomputer system for a 1.6-MW water boiler, which is used in the central heating of a village. The design consists of the following three phases: conceptual phase, hardware design phase, and software design phase. The paper is divided along these lines. A brief process description is given in Section II. Measurements, manipulated variables, and control philosophy are defined in Sections III and IV. The hardware design phase contains the determination of the configuration and specification of the computer system, instrumentation interface design, and panel design (Sections V and VI). In the software design phase, software structure is defined, and a brief description of the used real-time operating system, application tasks, and software configuration is given (Section VII).

ifeed

I.

primary oir

f tue

Fig. III.

I.

gas

Boiler structure.

PROPERTIES OF THE CONTROL SYSTEM

A. General The purpose of the control system is to keep the boiler efficiency high, to regulate the output water temperature, and to have unmanned boiler operation as much as possible. In addition, the system measures and displays important process variables, and gives alarms. The system does not perform startup or shutdown. This is done manually. The control system, however, continuously reads measurements, some of which are displayed on the control panel. The control system has the following two system states: the measurement state (manual operation) and the control state (automatic operation).

The measurement state includes the following actions: PROCESS DESCRIPTION 1) performing measurements, The process is shown in Fig. 1. It is a 1.6-MW water boiler 2) computation of momentary power, using solid fuels such as wood, wood chips, bark, and sod peat. 3) reading the state of switches, Compared with liquid fuels or gas, the heat content of these 4) updating displays, fuels is small, but they are the only domestic fuels available in 5) sounding buzzer. Finland-oil, natural gas, and coal have to be imported. The fuel is fed automatically from the top in small batches The control state includes all the mneasurement activities, at about 10-min intervals. The startup and shutdown are per- the determination of control actions, and sensibility checks. formed manually, but the shutdown may also be done in the Transition into the control state occurs by pushing the autoautomatic mode. Burning occurs in the firebox. matic switch, once all the measured values are between the set limits. Manuscript received May 27, 1983. Safe operation of the process must be ensured, especially if L. Johansson is with Prodycon Oy, Tampere, Finland. H. N. Koivo and A. Peltomaa are with the Department of Electrical it is unmanned. Night alarms are performed by phone. The Engineering, Tampere University of Technology, Tampere, Finland. alarms can be grouped into control pmel alarms, combined II.

0278-0046/84/0800-0263$01.00 O 1984 IEEE

264

IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS, VOL. IE-31, NO. 3, AUGUST 1984

control panel and phone alarm, and combined control panel and phone alarm together with shutdown. Because the process is fairly sensitive, the shutdown in automatic mode has been programmed. It is carried out if either the secondary blower or the damper is faulty, the underpressure is below a certain value for long enough, or the water flow has stopped. Since ash is formed in large quantities, it has to be shaken off the grates. The operator first estimates the ash content of the used solid fuel and turns the switch in the control panel to the corresponding position. Based on this, the microprocessor computes the time interval needed for shaking the ash off. The control system performs the shake-off automatically at the predetermined time. B. Measurements Table I shows the measurements made on the process. The microprocessor computes the momentary power from the water temperatures at the input and output, and the corresponding water flow. Table II lists the information/alarm LED's (light emitting diodes) in the panel. IV. CONTROL PRINCIPLES

The main control loops are presented in Fig. 2. These loops control the power, the excess air, and the underpressure. In addition, ash shake-off is carried'out at regular intervals. The manipulated variables are the airflows, the flue-gas flow, and the grate-iron positions. General control philosophies for boilers are outlined, e.g., in Shinskey [2] . In order to control the power, the input and output water temperatures, and water flow are measured. The goal in control is to keep the output' water temperature constant. The manipulated variables in- this control loop are the position of grate irons and the damper position. If more power is needed, the grate irons are opened in sequence starting from the bottom. In the opposite case, the grate irons are closed in sequence starting from the top. A PI-controller controls the amount of excess air based on the oxygen content of flue gas. The setpoint of oxygen' depends on the load, since the optimal value of excess air is determined by the momentary power. This will result in a lower amount of excess air at higher loads, which increases efficiency and in a higher amount of excess air at lower loads, which is necessary to maintain a good stable flame in the firebox. The manipulated variable in this control loop is the secondary air content. An underpressure transducer senses the boiler air underpressure. When the system is operating normally, the damper is always given a control command based on the underpressure measurement. The setpoint of the underpressure depends on the desired power: the greater the load, the greater the setpoint of the underpressure. V. MICROCOMPUTER SYSTEM The microcomputer system is assembled from standard Intel SBC (single-board computer) microcomputer boards. The system structure is shown in, Fig. 3. The CPU board is an iSBC 80/24 containing an 8-bit 8085A-2 central processor with up to 32K of EPROM, 4K

TABLE I

PROCESS MEASUREMENTS Flow of boiler water

Output-water temperature Input-water temperature

Boiler-water temperature Underpressure in the boiler

Flue-gas temperature Oxygen content in flue gas

Feedback from secondary blower Feedback from damper Feedback from grate irons

TABLE II

INFORMATION/ALARM LED'S IN THE PANEL Power Automatic mode Water flow Input-water temperature Output-water temperature Boiler-water temperature Underpressure in the boiler Flue-gas temperature Oxygen content of flue gas

Primary blower

Testing

Secondary blower

Damper

Grate irons Ash shake-off CPU Shutdown Phone alarm

Fig. 2. Main control loops of the boiler system.

=> 4

=

INTERNAL COMMUNICATION OF THE MICROCOMPUTER

= PROCESS INTERFACE

Fig. 3. Board structure of the microcomputer system.

JOHANSSON et al.: SOLID-FUEL WATER BOILER

Control of grate irons

Control of damper

265

Control of secondary blower

Ash shake-off

Fig. 4. Block diagram of the application software.

of RAM, and 6 programmable 8-bit I/O-ports, and a programmable interval timer. Optical separation and buffering of some binary lines is accomplished with a separate digital signal conditioning termination panel. An iSBX 328 which has a 12-bit digital-to-analog converter and 8 output channels is used for analog outputs. An ST 711 RLY-board is used as the analog input board. This has 16 separated analog input channels. Analog-to-digital conversion is performed with a 12-bit converter. This board is compatible with the iSBC boards. The 8-bit microprocessor is sufficiently accurate. Neither computational problems nor problems with speed were encountered. The sampling times varied from 500 ms for the air underpressure to 1 sec for the temperatures. VI. CONTROL PANEL A. General Description The control panel is the most important unit of the system regarding control, maintenance, and service of the boiler. All significant measurements are displayed on the four liquid crystal displays (LCD) of the panel. The measurements shown continuously are the momentary power, the output water temperature, and the flue-gas temperature. The fourth display can be used for one of the following: the outside temperature, water flow, return-water temperature, or underpressure. For diagnosis and service purposes, it is also possible to display other measurements and critical variables. The estimated ash content of the fuel is given to the computer with a switch having 11 different settings. Based on this and the boiler power, the microcomputer computes the right time interval for ash shake-off. The panel also includes LED's, which report activities and faults of different measurements and states (cf., Table II). The starting and stopping of the automatic mode is also done from the panel. By manual switches of the panel a measurement channel can be set constant. This is quite advantageous in service and repair functions.

The panel electronics have been realized with CMOS circuits. Panel electronics consist of the display card, the manual mode cards, and the alarm cards. The display card includes four 4-figure LCD displays and their control. The coded number is brought to the display card via an I/O-port. Once the microprocessor has sent the address of data, it allows the data transfer to the 8-bit flipflop through a 4/16 decoder. The manual mode cards have three functions: 1) they allow a measurement, chosen with a switch, to be made constant or to remove the measurement from being constant; 2) they announce if a measurement has been made by lighting a LED; and 3) they allow reading the constant value of the measurement. The microcomputer knows the desired action based on the position of the key switch. The purpose of the alarm cards is to take care of all alarm actions. VII. SOFTWARE SPECIFICATION A. Software Development Principle

A real-time operating system RMX/80 by Intel [3] is used in program development. This sped up and eased the program development, because the system software needed to synchronize multiple real-time tasks did not have to be written. The programs, which are written in the PL/M language [41, can then be divided into independent, parallel, and separate tasks. More application tasks can easily be added to the system and the existing ones can easily be transferred to other applications. Program updating and servicing is managed with less expense. B. Software Structure

The software consists of two different entities: a real-time operating system and application software. The operating-system software controls the use of system

266

IEEE TRANSACTIONS ON INDUSTRIAL

Fig. 6.

Fig. 5. A typical software structure of RMS/80.

resources. The operating system forms the interface between the system hardware and application tasks. A brief account of RMX/80, used in this work, is given in Section VII-B-1. The other part of the software, application software, has been divided into separate tasks, for which the operating system allows the use of the processor according to requests and priorities. The tasks used in the system are shown in Fig. 4. They can be divided into three different levels: starting routines, measurement and control panel tasks, and control tasks. The starting routines include initialization and testing of software and hardware. They are always executed in startingup the system. Then the execution of the actual application software is allowed. If the automatic switch is off, only measurement and control panel tasks are executed, and if it is on, then the application tasks are also executed. Applications tasks are covered in Section VII-B-2-4. 1) RMX/80 Real-Time Operating System: The center of RMX/80 is its nucleus, which controls the extension programs of the operating system and the user's application tasks. A typical software structure of the RMX/80 operating system is illustrated in Fig. 5. Here only those parts of RMX/80 are discussed that are necessary for understanding how the tasks, presented in the sequel, work. More details of RMX/80 are given in the RMX/80 User's Guide [3]. a) Task states: The tasks to be executed can be divided in four different states: running, ready, waiting, or suspended. The states and their interactions are displayed in Fig. 6. Tasks are in a ready state when they are ready to run. The ready task having the highest priority is the one running. A task is waiting when it waits for a message from other tasks. Suspended tasks are those that have been prevented from competing for the use of the processor. The task can be suspended by another task or by itself. Self suspension is useful, e.g., in initialization. b) Task prorities: Each task has a predetermined priority so that when tasks compete for the use of the processor, the operating system can decide which task may use the processor. If the;competing tasks have the same priority, the task which has been ready first gets to use the processor. c) Communication between tasks: Communication between tasks in RMX/80 has been arranged by exchanges. There are five two-bit fields, of which four tell if there are tasks wait-

ELECTRONICS, VOL. IE-31, NO. 3, AUGUST 1984

Create Table Initial 0 Task Table 2

Task

Caunt

Task states and their transitions.

Initial Task Table STDO

Initial

EXchange Table 0

(Exchange Addresses) Exchange I Exchange 2

STO 2

Exchange Tabl tan

STO n

Exchange 'n

Fig. 7. Application task is described for the operating system with a create table, initial task table, and initial exchange table.

ing for messages, or if there are messages waiting to be received

by tasks.

There are many rules for using exchanges. A task can wait only in one exchange at a time and correspondingly a task can send a message to only one exchange during the same message operation. Only one task can receive the message, but there can be several messages, waiting to be sent, in an exchange. When a task requests a message via an exchange, it can also

set a maximum time which it is willing to wait for the message. If the message is not received in that time, the task is removed from the delay list and transferred to the ready list. A system

message infonns the waiting task if the time has expired. While task is waiting for a message it may not use the processor. The operating system also contains a command, with which one can check if the exchange has a message. With this command, several exchanges can be observed. Most applications can be managed with these three commands, that is, with waiting, sending, and inquiry commands. 2) Initialization of Software: The initialization task execution begins by initializing the operating system and the hardware. Next the memory circuits and the status of the I/O lines are tested. If this does not reveal a critical fault, measurement tasks are enabled. In a fault situation, the initialization of the operating system and the hardward is repeated. After execution, the initialization task suspends itself and measurement tasks with lower priorities are executed. 3) Measurement and I/O Tasks: These tasks are always run by the microcomputer when it has passed the initialization tests. An analog handler was built to be used in analog measurement tasks. a

267

JOHANSSON et al.: SOLID-FUEL WATER BOILER

a) Power measurement task: The power measurement task performs the measurements of the input, output, and boiler water temperatures, and of the water flow. Alarm checks and filtering are performed in the task. When all the measurements in the control interval are completed, the task sends the information about the needed power change to the control task. Measurement results are updated for the LCD task after each measurement. If a measurement reveals that water flow has ceased in the boiler, a message is sent for the shutdown task. The shutdown is then carried out automatically if the automatic mode is on. b) Grate-iron position and blower measurement tasks: The grate-iron position measurements are inspected for alarm limits and filtered. The measurements are taken once every measurement interval, or more often, if the corresponding control task requests information about the control signal having been received. The request is done via an exchange. The grateiron position task waits for a message if it is not performing a measurement. Since both the secondary blower, the damper, and the underpressure are critical, the corresponding measurements are taken more often. If a critical fault is detected in any of them, a message is sent to the shutdown task. c) Alarm tasks: The measurement tasks send alarm mesto sages an exchange if a change has occurred in the alarm state of a measurement. The alarm tasks fetch messages from this exchange and interpret them. They also send the alarm message to the panel and to the task taking care of blinking alarm LED's. d) Switch task: This task is run with a high priority very often, since it inspects the automatic switch status. In addition to this, it checks both the alarm acknowledgments of LED's and the manual switch status. After detecting changes, the task sends information to the corresponding control task. After sensing that the automatic switch has been turned on, it enables the control programs and lights up the autoLED on the control panel. e) Other tasks: A separate task was used for the oxygen concentration measurement. This allows the measurement to be more easily adapted, tested, and suspended. Another reason for this solution was that it alone controls the secondary blower. The LCD task updates the liquid crystal displays on the panel using the values obtained from the measurement tasks. The measurement value is first coded in the task into a seven segment code for display. The three highest LCD's always receive the same measurements, but the fourth measurement can be chosen with a switch to be either the return water temperature, water flow, underpressure, or outside air temperature. The outside temperature is acquired from another task, which also measures the flue-gas temperature. Some other variables can be made available when the system is serviced. 4) Control Tasks: The control tasks are enabled by the switch task based on the position of the automatic switch. They will not, however, be executed before a measurement message comes from the measurement tasks or the set time has expired.

a) Control task of grate-iron positions: This task controls the boiler power by controlling the grate-iron positions. The power-measurement task gives the command to control and also tells about the magnitude of the change. The grate-iron position control task receives information via an exchange on the current position of the grate irons. It then computes the necessary changes of these and the needed control signals. The control tasks for the damper and the secondary blower are also informed of the power change. b) Control task of secondary blower: This task controls the secondary blower based on the measurement obtained from the oxygen measurement task, taking into account the current power. The task execution begins once the measurement signal is received, if the task is enabled. A check is also done to see if the control signal was received at the secondary blower. If it was not received, an alarm is sent to the alarm task, which decides if a shutdown is carried out. c) Control task of damper: A control change occurs in this task, if a control signal is received from one of the following tasks: the underpressure task, the power task, and the control task of the secondary blower. The control signal to the damper is computed from a discrete PI-algorithm, which depends on all three mentioned variables. If a critical fault situation is detected, the shutdown task is enabled. C. Software Configuration An application programmer has to describe the software structure to the operating system so that it can perform the initialization correctly. Every application task has to be described by a static task descriptor. The application programmer may also leave tasks to be created by application tasks. The same procedure applies when creating exchanges and interrupt exchanges. All static task descriptors created by the operating system have to be mentioned in the initial task table. Corresponding addresses of exchanges and interrupt exchanges have to be listed in the initial exchange table. Both the address of the original task table and the number of tasks, and the address of the original exchange table and the number of exchanges have to be marked in the create table. Fig. 7 illustrates the tables needed in the system initialization. In addition to the tables mentioned above, the RAM allocations for the task stacks, task descriptors, exchanges, and interrupt exchanges should be included in the system structure description. The nucleus of the operating system uses these definitions every time the system is initialized. After initializing tasks and exchanges, RMX/80 surrenders the execution to the task with the highest priority. VII. CONCLUSIONS

The complete design of a control system for a 1.6-MW water boiler using solid fuel has been presented. The design includes both hardware and software aspects. First, systems engineering analysis was performed considering characteristics of the boiler process. Process measurements and control objectives were fixed.

268

IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS, VOL. IE-31., NO. 3,AUGUST

Based on systems analysis, iSBC microcomputer boards were chosen to form the hardware foundation. The control panel was designed using CMOS circuits. After the hardware design phase, software was specified. A real-time operating RMX/80 of Intel was used. The main effects of RMX/80 on the application programs have been briefly described.

1984

REFERENCES

[1] J. Shelton and A. Shapiro, Eds., The Woodburners Encyclopedia, 6th

[21 [31 [4]

Vernont: Crossroads Press, Inc., 1978. F. G. Shinskey, Energy Conservation through Control. New York: Academic Press, 1978. PLIM-80 Programming Manual, Intel, Inc., Santa Clara, CA, 1980. iRMX/80 User's Guide, Intel, Inc., Santa Clara, CA, 1980. ed.

A New Type of Analog Multiplier TEJMAL S. RATHORE, SENIOR MEMBER,

IEE, AND B. B.

Abstract-A new type of four-quadrant analog multiplier is proposed. Compared to the triangle-averaging and time-division type of multipliers it does not require a triangular-wave generator and thus it is quite simple. Unlike time-division multipliers based on the charge-equalization principle, it immediately acquires the steady state when one particular signal changes from one value to the other. Experimental results closely agree with the theoretical predictions. Improvements towards better accuracy

BHATTACHARYYA, SEmOR mEmBER, IEEE

quire steady state when the signal x changes. In this paper, another possible four-quadrant multiplier based on the above approach is proposed. It does not require a separate source of triangular wave. Further, the output responds immediately to any change in the signal x.

II. PROPOSED FOUR-QUADRANT MULTIPLIER The general block schematic of the proposed multiplier I. INTRODUCTION based on the above approach is shown in Fig. l(a) where the IN GENERAL analog multiplication of signals x and y can comparator has a noninverting symmetrical transfer characteristic as shown in Fig. l(b). Note that it makes a transition from be performed in the following three steps. one i) Generate a periodic pulse waveforn of time period T = level to the other whenever the input voltage exceeds a T1 + T2 such that fixed value VB. The waveforms are shown in Fig. l(c). The multiplier works as follows, When the comparator output V, is -V, the integrator outT1/T=K ±K2X, T21T=K1 T K2X

and faster response are suggested.

put VI follows the relation

where K1,2 are constants. (2) ii) Modulate the pulse amplitude of the above wavefonn Vj= [(V+X)/rjt- VB with the signal y. iii) Extract the dc value of the above amplitude modulated where r is the integrator time constant. Thus Vi increases signal. linearly at a rate (V + x)/r V/s. When it attains a value VB, Two known multipliers based on the above approach are: V, changes to V. Consequently, the integrator output now the time-division multiplier [11 and the charge-equalization follows the relation multiplier [2]. The first one requires a source of highly linear, symmetrical, sharp comered, stable-frequency triangular waves. V1= -[(V- x)/T] t + VB (3) The second one requires only a stable triangular wave. However, the multiplier output takes several time periods to ac- i.e., it decreases linearly from VB at a rate (V - x)/r. When it reaches a value - VB, the comparator output Vc again becomes Manuscript received May 3, 1984. This work was supported by the -V. The cycle of events then repeats itself. The integratorNational Science and Engineering Research Council of Canada, under grant comparator combination thus acts as an astable multivibrator. A7740, and by a grant from Le Programme de Formation de Chercheurs et From the waveforms of Fig. 1(c), it can easily be verified that d'Action Concertee, Government of Quebec, P.Q., Canada. The authors are with the Department of Electrical Engineering, Concordia T1-,2 and T satisfy (1) with the lower signs and K1 = 1/2 and University, Montreal, P.Q. H3G iM8, Canada. K2 = (1/2)/V. Note that T',2 are independent of T and VB. T. S. Rathore is on leave from UT, Bombay, India. From (3) it should be obvious that the maximum value of x

0278-0046/84/0800-0268$01.00

© 1984 IEEE

Lihat lebih banyak...

Comentários

Copyright © 2017 DADOSPDF Inc.