0% found this document useful (0 votes)
54 views4 pages

Optimization of A Scada System Based On Clienteerve Mode

This document discusses optimizing a SCADA system based on a client-server model that was developed for a railway electrification power administration system. The system hardware configuration and software functions are introduced. The motivation for optimization is to reduce the impact of network bottlenecks and distribute the server's load more reasonably. Optimization aspects discussed include operating system choice, data structure definition, network administration, and reducing the server's load. The optimized system showed improved performance in many areas.

Uploaded by

FABIANCHO2210
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
54 views4 pages

Optimization of A Scada System Based On Clienteerve Mode

This document discusses optimizing a SCADA system based on a client-server model that was developed for a railway electrification power administration system. The system hardware configuration and software functions are introduced. The motivation for optimization is to reduce the impact of network bottlenecks and distribute the server's load more reasonably. Optimization aspects discussed include operating system choice, data structure definition, network administration, and reducing the server's load. The optimized system showed improved performance in many areas.

Uploaded by

FABIANCHO2210
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

OPTIMIZATION OF A SCADA SYSTEM BASED ON CLIENTEERVE MODE

Chen Qizhi Institute of Railway Electrification & Automation Southwest Jiaotong University Chengdu, Sichuan Province, China 6 10031
Abstract: In this paper a Supervisory Control and Data Acquisition(SCADA) system based on clientkener model is presented. It is developed for traction power administration system of Beijing-Zhengzhou electrified railway. The system hardware configuration. and software hnctions are introduced fust. Then the optimizsition of this SCADA system is discussed. The motivation of optimization is to diminish the affect of network bottleneck end allocate the server's load more reasonably. The optimization can be done from four aspects: 1) operating system choilsing, 2) data structure definition, 3) network administration, 4) the server's load reducing. After the optimization,'this SCADA system performs better 'than before i n inany field.
KeyvorL1s: SCADA, clienthener, optimization, network, load.

I. INTRODUCTION During last two decades, computer technology has made great successes. Because of applying of the modem computer system technology especially the network technology, the Supervisory Control and Data Acquisition (SCADA) system has made a great advance too. It has come from the muitiinachine stage before into its network era now. Aniong all kinds of the modern network technology. the clientlserver model, characterized as ' a n excellent computative structure, has been widely applied in distributive system applications. In the clienthewer scheme system functions are divided into several tasks, and separately processed1 by server computers and client computers. In other words the servers and clients finish all system tasks cooperatively. The relationship between the server and client is requirementkesponse. As the service provider the server maintains a global database and a set of service conventions. When client applications request services from a server process, the server makes a response for this requirement

and returns results to client applications. Depending on the situation, the protocol implemented at both sides of the client and server may be symmetric or asymmetric. In a symmetric protocol, either side may play the master or slave roles. In an asymmetric protocol. one side is immutably recognized as the master, with the other as the slave. No matter whether the specific protocol used in obtaining a service is symmetric or asymmetric. when accessing g a service there is a client process and a server process. A server process normally listens at a well hiown address for service request. That is. tlie server process remains dormant until a connection is requested by a client's connection to fhe server's address. At such a time the server process "wakes up" and ' services the client. performing whatever appropriate actions the client requests of it. This paper presents a practical SCADA system using clienvserver technology for electrified railway power system. As an illustration the system hardware configuration and software functions are introduced first. Because the server and clients finish system tasks distributively. this SCADA system has a cliaracter of high reliability and flexibility, easy exp'ansion and modification as well as easy connection to other systems. Besides all above benefits, this system still needs optimization from some aspects, such as network. administration. data structure definition etc. At the last of this paper. the optimization of this SCADA system is discussed. 11. IMPLEMENT OF A SCADA SYSTEM

USING THE CLIENT/SERVER MODEL TECHNIQUE


Beijing-Zhengzhou Electrified Railway Traction & Power Dispatch & Administration System(JZDAS) is a SCADA system using the client/server model technique. Two control Enters are located in Shijiazhwmg and Zhengzhou separately. JZDAS monitors (md controls 15 substations(SS), 19 switching posts(SPs), 4 section switching posts(SSPs) and 64 stations along the about600-kilometer electrified railway from Songlidian. Hebei Province to Zhengzhou. In order to allocate remote control units(RTUs) equivalently, all RTUs are divided into several separate parts according to their geographic location. and each part is called " one group".
A . . System Hardware Configuration

0-780347544/98/$10.00

0 1998 IEEE

-1237-

The hardware of JZDAS consists of servers, clients and peripheral devices. The dual Motorola 8520 industrial minicomputers with 33 MHz clock frequency, 32M memory and 1G hard disk operate as the primary and back-up hosts, performing all SCADA functions, communication service with RTUs and administrating network services. The dual PRO-LOG industrial personal computersgc) act as operating graphical workstations (OGW), one printer as the flowing printer (LP) for each RTU group; one printer as report printer (RP), one mimic platform (MP) and one PRO-LOG personal computer as maintenance graphical workstation (MGW) for the whole system. In JZRAS all peripheral devices are connected to ethernet through Terminal Server (TS). TS is a very powerful T C P m product that supports either 4, 8 or 16 RS232-C ports for using terminals, modems or printers. It simply attaches to the TCP/IP network and allows lowspeed serial devices access to that network. The Zhengzhou system of JZDAS is given an example for illustration in this paper The capacity of controlled RTU of Zhengzhou system is two groups. Its hardware configuration is shown in Fig. 1.

by the server and clients. The server not only finishes all SCADA functions, but also conununicates with RTU, clients and all peripheral devices. The server software is developed by Delta Pro C++ R3.0.1 on Motorola UNIX SYSTEM VI88 operating system, and its supported network software is PC-Interface. The functions of the server are roughly summarized into three parts as follows: communication with RTUs in order to acquire all real-time information of controlled units, such as switch position, analogy values and event signals etc., processing all acquired data from RTUs for finishing all SCADA functions, 8 administration network services for response all requirements from clients. The client software is programmed by Microsoft Visual C+t on Chinese Windows 3.1 operating system. The OGW mainly finishes all kinds of remote operation graphical interface. They include one-line picture showing, remote operation interface, reports and event record showing and analog value showing etc The MGW not only a i m s on the input and modification of system database and pictures, but also the simulation or training of the system as well as monitoring the status of whole system. The system function of JZDAS is iliustrated in Fig 2

TW

R
to group0 channel

SCADAfunctions
I

I I
I

MMI

functions
1

bystem

maintenance
I

Lciataacquisitionl

monitoring

I1

control

I I event recording
simulation

database input to group1 channel

picture input

system status

Fig. 1

System Hardware Configuration

In this system the dual hosts act as network servers, and the quad OGWs and one MGW perform as clients. Through an intelligent communication board, modem and analog carrier channel, the dual servers communicate with RTUs. In the meantime, they are interconnected with clients and two TSs through two redundant ethemet. Each server is configured as the network router which can exchange data between two networks automaticalIy. The dual OGWs in the same group are redundant each other. They perform all man-machine interface (MMI) functions cooperatively. The MGW mainly finishes database construction and modification, system status monitoring and system simulation or training.

111. SYSTEM OPTIMIZATION Because of the application of clientherver modeling technique, JZDAS is characterized by its fast real-time response, easy expanding and maintenance, and friendly graphical user interface. But during the period of practical running, some shortcomings of this system are

B.

System Software Functions


All functions of JZDAS are implemented cooperatively

-1238-

exposed. The first imperfection is because all data exchanges between servers, clients and all peripheral devices are through network, the network transferring becomes the bottleneck of this syslem. The second, becaiise the server not only finishes all SCADA functions, but also administrates network services as ujell as communicates with RTUs and all peripheral devices, it has a h e a y load. So that the optimization goal of JZDAS mainly aims on settling network bottleneck problem and lessening the servers load.

A . Choosing Operating System for The Client PC


The application software of the client is developed on Chinese Windows 3.1. Because Windows 3.1 is a 16-bit operating system, it :has the constraint of 64K data block, which means data can not be allocated across one segment. When data transferred between the 32-bit UNIX system of the server and the client, this constraint must be considered in order to maintain the correction of data transferring. Just because of the above reason, to the vast data blocks which are larger than 64K, they must be divided into several small data blocks less than 64K. It means that these vast data must be rans sf erred many times through the network. This will ablate the rate of network utilization and affect the network eflkiency. On the other side, the length of the basic data structure for these vast data must be a factor of 64K, otherwise the data through network transferring will not be the same on the servers 32-bit system and clients Whit system. The optimization of choosing operating system is to choose 32-bit operating system such as Windows NT and OS/2 Warp for clients PC. If done this, the above disadvantage would be overcome and the network operation would be simplified.

developed by connection-based stream socket interface. No matter which side acts as the service requester, the server or clients establish a connection to the service provider first then send one message to it. It means that the data transferring between the server and clients is niessagebased mode. When a RTU has an available message to OGW or OGW has a service requirement, it will create one network connection and one message sending with limited data capacity. This decreases the benefit of network as a high-speed device. The optimization of this is changing the network transferring mode from messagebased to block-based. That is, the on-line Motorola 8520 server puts its data to a large buffer first, and when the network administration process is scheduled to run. all data in the buffer is transferred through the network at once. This will reduce the frequency of network connection and improve the efficiency of network transferring. The larger data package capacity is, the less network connections there are , and the more efficiently the network works. But the large data package will influence the realtime response of SCADA system. In order to settle the conflict of the network efficiency and real-time requirement. the server only transfers the usefiil information of the station whose picture is been showing on OGW now not all the dynamic data. The other optimization of network application software is the status testing for network nodes. At the sener side a process is established for checking the status of all network nodes periodically. Once a network node is power down or its application program nms incorrectly or stops running, the server diagnoses this status immediately. then closes this node automatically and stops sending message to it. The server open this node at once if the status of this node is recovered. This is very powerhl for reducing the time waste of useless network connections. so that it will improve the system real-time response and avoid useless network connections.
f The Senters Load D. Optimization o

B. Optimization o f Data Structure Definition


In order to maintgn the data unity, JZDAS does not distinguish the dynamic and static data. When data transferred between ihe server and clients, it includes not only the changed data but also a lot of unchanged data. The Optimization of data structure definition is defining the static data and dynamic data separately. When a client starts up its application, it transfers all static data from the on-line server first. 1)uring the system running, the server and clients only exchange the changed dynamic data. This will avoid the traffrc caused by a lot of unchanged data transferred between the server and clients, so that this will reduce the load of network transferring and diminish network congestion.
C

1). Reducing The Nuniber ofActive ProcesseJ


The server application software is developed on UNIX system. In the UNIX system, a process has three state: sleeping, ready and running. Only the process in running state can occupy the CPU time. The UNIX process scheduler only schedules those processes in ready state. so that the number of active process can be reduced by adjusting processes state. To those processes in JZDAS which have not any realtime requirement and do not run all the time. such as the timing task management (TTM) process and the overtime monitoring process, they can be put into the sleeping state by calling the sleep() system call and be woken up (after an appropriate period. To the upward message processing (UPP) process, this is implemented by using the message-

Optimization of Network Administration The network administration software of JZDAS is

-1239-

activated method. That is, the UPP process is in the sleeping state when no upward message is getting, but as soon as an upward message is arrived, it is woken up into the ready state and waits for being scheduled by process scheduler. M e r the above optimization, the active process number is reduced more than before. The value of runq-sz which means the number of processes waiting in memory to run can be abstained by using sar -q command. Before the optimization , the runq-sz is 10.1, but after the optimization it is 5.2. The optimization effect is very obvious
2). Reducing The Number of System Calls

The codes of UNIX system calls belong to the kernel. When user applications call them, the interchange between user processes and tlie kernel is implemented by software interrupt. The more system calls are called, the more exchange between the user state and the kernel there are. Tlus will cause CPU bound and affect the system performance. In order to reduce the number of system calls, the focus aims on tlie optimization for tlie process which administrates tlie communication between the server and RTUs The first optimization step is changing the working mode of serial ports whch are connected with RTU communication channel from the non-blocked method to the blocked method. In the meantime, the read operation is implemented by the block-based mode not by the bytebased mode. The sequence of reading s e n d ports is the four-byte synchronous bytes first, then the address byte and the message-length byte. and all the rest bytes last. The second IS tuning the values of parameter VMIN, VTIME in termio structure The values of VMIN and VTIME are set great than zero. In this case a read is not satisfied until at least VMIN characters have been received or the timeout value VTIME has expired. This allows fast bursts of input to be read efficiently and simplifies the program design as well as reduces the number of the read() system call. The result of above optimization can be seen through running sar -c command. The sar -c command can show the value of scalVs which means tlie mean system calls per second. Before the optimization, the value of scallh is about 20000, but the scalYs is about 12000 after it. It means that the number of system calls are reduced more 40% than before. The optimization result is very good.
3). Tuning The System Kernel Parameters

system kernel parameters must be tuned to satisfy those constraints. The first tuned kernel parameter is NBUF. It specifies how many physical VO buffers to allocate. One VO buffer is needed for each physical read oiwrite active. Because JZDAS have a lot of VO operation, The value of NPBUF is raised to 40 from the default 20 The second tuned parameter is NCALL. It specifies how many callout table entries to allocate. Each entry represents a function to be invoked at a later time by the clock handler portion of the kernel. Software driver may use call entries to check hardware device status. The default value IS 60 At this value setting, when the number of serial communication ports with RTUs increased, it would cause the callout table overflow, the system crashes and output the following messages on the system console: WARNING: CPUO-timeout table overflow. callout indes: xxx WARNING: Too many callout table overflows WARNING. Dynamic allocation of timeout table failed If tuning the NCALL from 60 to 100, and adding the optimization of 1) and 21, the above crash will be avoided.

IV. CONCLUSION
The clienthewer model has been successfully applied in the development of SCADA system. JZDAS is a successful example of thls application. It is characterized by its fast real-time response, easy expanding and modification. and friendly graphical user interface. Besides all these merits, JZDAS still has some shortcomings for perfection. The optimization of JZDAS on four aspects has been discussed in this paper As a result of optimization, JZDAS system performs better than before on the network utilization. real-time response and server's load allocation.
'

V. REFERENCES
Stenens, UNLY Network Programming. Englewood CliflL. NJ: Prentice Hall Inc., 1988 Motorola Inc. ,UNIX SYSTEM W88 Release 1.0: Nehvork Interfaces. 1992 Motorola Inc. , (/NIX SYSTEM VI88 Release 4.0: TCVIP Network Administration. 1992 Motorola Inc. , UNIX SYSTEM V/88 Release 4.0: Machine Monitoring and Tuning. 1992 Motorola Inc. , W E 3 3 2 J T Serial Intelligent Perrpheral Controller Firmware User S. Manual. 1992 R e n d , Introduction to ClienUServer System. John wiley &Sons, Inc. ,1991 C o m e r , D.L. Stevens, Internetworking with TCWIP Vol III: CliengServer Programming and Application. Englewood Cliffs. NJ: Prentice Hall, 1992 Chen Qizhi received her B.S., M.E. degrees from SouthwesT Jiaotong University, Chengdu, China, in 1991 and 1994. From 1994 IO now, she is working at Institute of Railway Electrification & Automation. Southwest Jiaotong University. Her research focus is on computer applications in eledrifEd railway power distribution system.

For most UNIX system applications, the default kernel configuration works well and satisfies the user's needs. However. when some special applications such as the SCADA system mentioned above include strict timing constraints and administrate many VO devices too, the

-1240-

You might also like