Instem Computer Systems,Walton Industrial Park, Stone,
Staffordshire, UK
Littlebrook D, Dartford, Kent, UK
Located on the south bank of the River Thames just west of the
Dartford tunnel in the South East of the UK, the Littlebrook power
station cost 600 million pound sterling to build. At the time of
the Instem Littelbrook project, the power station boasted three 660
MW (MegaWatt) generator sets. The last of the three generator sets
was commissioned in 1983. The three main oil-fired boilers each
consume 140 tonnes of oil per hour at full load. To handle this
fuel consumption, Littlebrook has storage enough for 550,000 tonnes
of oil. There were also three 35MW Gas turbines used to react
swiftly to changes in demand due to their swift startup time. This
power station is the fourth power station to be built on the site
since it was first used for electricity generation in 1935; the A,
B and C sites have been closed but some of the old buildings still
remain. Instem was awarded a contract to replace the obselete
monitoring and control computer system.
The Littlebrook project team was one of the best balanced teams
I have ever worked in. For every fresh graduate there was an older
developer experienced in the particular area in which the graduate
was working. The project manager was also an old software developer
and that made a big difference too.
The team included Simon Broad, Darren Lovatt, Chris Berendt,
Malcolm Jones, Andy Wale, Rob Green, and Tony Stubbs plus a few
others whose names I have forgotten.
The software development team was split into three
sub-teams:
I-Range to DMACs
Subsystem (IDS) Team
Responsible for interfacing Instem's I-Range Data Aquisition
Subsystem to the DMACs Commander software.
The
Commander Team
Responsible for enhancing the DMACS Commander software to support
the calculations, precision and event processing required by the
power station.
The
Engineering Computer System (ECS) Team
Responsible for collecting archive data from the computers
monitoring each turbine, populating a RDBMS with that data and
developing analysis programs to run against that data.
Original Computer System
The original computer system for the site consisted of a Honeywell
716 with 48K RAM for each of the main turbine sets; the same amount
of RAM as my ZX Spectrum micro-computer. There was also a standby
computer which could be used if one of the main units should fail
and a station services machine used to test spare or upgraded
equipment and software. The control centre had a number of
hi-resolution screeens but they were only monochrome. The Instem
system introduced hi-resolution screens capable of a stunning eight
different colours.
New Computer System
Each of the three turbine sets had approx. 1800 analogue inputs,
2000 digital( 2-state) inputs and 150 digital (2-state) outputs
connected via Instem's I-Range system to a MicroVax 3400 running
Commander. Commander was a realtime data presentation system
originally written in Fortran IV for the DEC PDP-11. Over the years
it had been enhanced and largely rewritten in VAX Fortran for the
DEV VAX VMS operating system.
ECS
The Engineeering Computer System was designed to read archived data
from each of the turbine computers into a relational database. This
data was then used to perfrom various analysis functions. The ECS
also stored the configuration details for all the i/o points
monitored by the three turbine computers. The computer consisted of
a MicroVax 3400 with 800Mb of disk and a 2.3 Gb tape drive used for
archiving data.
I-Range
In 1989, Instem's I-Range real-time data acquisition subsystem
provided advanced bulk i/o support for DEC Q-Bus computers. It's
memory mapped design provided analogue measurments and digital
state readings directly through Q-Bus memory without unduly loading
the bus. I-Range scanned analogue inputs at user selected rates,
reported changes in state of digital inputs via the Q-Bus's
interrupt mechanism and permitted the setting of digital outputs.
The Host Interface Module (HIM) plugged directly into the Q-Bus and
was connected to 19" racks of i/o modules by a 1 MBaud HDLC link
unofficially called the I-Way. Each i/o rack contained two
processor, one handling the communications with the HIM and the
other scanning the analogue inputs perfroming various
linearisations on the raw values. In each rack with digital outputs
there was an extra module called the watchdog that had to be
triggered at a regular rate by the host computer. If the watchdog
was not triggered it shutoff power to the digital outputs causing
connected equipment to 'fail-safe'.
IDS
I implemented IDS, the two-way software interface layer between
Instem's I-Range and Instem's Commander System. The IDS software
used data stored in the Commander System to configure the I-Range
subsystem, scanned the I-Range memory map for analogue input values
at various specified rates updating the Commander System's database
and checking for alarm conditions. IDS also received digital
switching events and hardware failure alerts from I-Range and again
updated the Commander System's database. IDS was was written in VAX
C and runs under VAX VMS.
On-Site
During the commissioning phase of the project I made several
trips one or two day trips to Littlebrook to work on site
addressing bugs and applying fixes. By coincidence, Dartford, Kent,
is where my parents used to live. As a family we often used to
visit my paternal grandparents' in Dartford; unfortuantely both had
died by the time of the Littlebrook project. Driving through the
edge of Dartford each day from our motel to the power station was a
strange experience; my first job had brought me to where my parents
had lived when they had their first jobs.
My first visit to Littlebrook was a day trip. Every month the
project manager, Simon Broad, would take two of the team went down
with for the monthly project status meeting. This way the whole
team got to visit the site at least once, met the customer's
engineers, and got a tour of the power station. This practise
increased each members understanding of the project and had a
positive effect on morale and quality of work especially the
younger members of the team.
Translating Corel and using meaningful variable names
I also helped translate the old Corel 66 control programs used by
the power station into VAX Fortran programs again integrating them
with the Commander System's database. Many of the old Corel
programs had variables named after characters from Winnie the Pooh;
struggling to understand these old programs, I learnt the hard way
the benefits of using meaningful variable names. It was hard to
determine that a loop something like:
for ( winnie = nohoney ; winnie < honeypot; winnie += honey) { ... }
meant loop through the pressure measuring inputs and ...