Once you've gathered the list of system processes, you essentially have all the information you require to plan for the tags you will need. For example, we know whether each process is an input or output process, we know the type of data read from or written to the I/O device, we know the I/O device addresses, and so forth. The only planning requirement left towards the configuration of the actual tags is to decide on a meaningful and consistent naming convention for the tags.
In the tutorial, we will follow a naming convention as follows:
Abbreviation of the tag type, followed by the equipment number (as labeled in the P&ID), followed by a sequential number to keep multiple processes for the same equipment separate.
For example, review the following entry from our process information table:
|
Equipment |
P&ID No. |
Processes |
Type of Data |
I/O Device Address |
Engineering Units |
Scaling Information |
|
Booster Pump |
10 |
State (Running/Stopped) |
Digital |
4 |
N/A |
N/A |
Based on this information, we know that we will require a digital input tag to read the status of the booster pump (as the status is an incoming value from the booster pump). The name of this first tag will therefore be "DI10_1", where "DI" is an abbreviation for the tag type (digital input), "10" is the number labeling the booster pump in the P&ID, and "_1" is used to separate this tag from other digital input tags related to the booster pump.
On its own, this name will be useful for you as the developer, but may not be meaningful for the operators of your system. This is where tag descriptions become important. In addition to the name we will provide for each tag, we will include a clear description of the process the tag represents. For example, based on our knowledge of the process that this tag will be monitoring, we might choose to describe the tag as "Booster Pump Status".
The next step in planning your application is to add the name and description for each tag to the table.
VTS provides you with a number of standard tag types, each of which has a different purpose. Basic I/O tags (analog input, digital input, analog output, and digital output) are used to read and write data to equipment. In order to do so, these tags require a chain of communications. They must have an I/O device driver tag to translate data and communicate it to the I/O device, and they must have a serial or ethernet port tag to facilitate communications between the I/O device and the I/O device driver tag. It is important to note these communications-related tags in your tag table.
Finally, there are two important attribute tag types: logger tags, and alarm tags. Logger tags are capable of recording the values of another tag to a data file on disk, while alarm tags are designed to monitor the value of other tags and signal an alarm in VTS's built-in alarm system if the tag being monitored reaches a user-defined value. In order to meet the special requirements outlined by the client, we will need 2 logger tags and 2 alarm tags. These tags have also been added to the table below.
Note: This table is referred to as a Tag Table. A Tag Table is a handy means of organizing your system and keeping track of the process information for each tag you will be creating. You will find yourself referring to this list often. Remember that a lot of pre-development planning and organization will actually help you to speed the development process.
|
Item |
P&ID No. |
Processes |
Data Type |
Tag Name |
Description |
Area |
I/O Addr. |
Units |
Scale |
|
Modicon PLC |
N/A |
Reads and writes data to the equipment |
Comm. |
Modbus1 |
Virtual Modicon PLC |
System |
N/A |
N/A |
N/A |
|
PC Serial Port |
N/A |
Facilitates communication between Modicon PLC and the application |
Comm. |
COM2 |
Port to Virtual Modicon PLC |
System |
N/A |
N/A |
N/A |
|
Booster Pump |
10 |
State (Running/Stopped) |
Digital |
DI10_1 |
Booster Pump Status |
Tank |
4 |
N/A |
N/A |
|
Booster Pump |
10 |
Mode (Auto/Manual) |
Digital |
DI10_2 |
Booster Pump Mode |
Tank |
3 |
N/A |
N/A |
|
Booster Pump |
10 |
Start |
Digital |
DO10_1 |
Booster Pump Start |
Tank |
1 |
N/A |
N/A |
|
Booster Pump |
10 |
Stop |
Digital |
DO10_2 |
Booster Pump Stop |
Tank |
2 |
N/A |
N/A |
|
Booster Pump |
10 |
Auto |
Digital |
DO10_3 |
Booster Pump Auto |
Tank |
3 |
N/A |
N/A |
|
Booster Tank |
20 |
Level |
Analog |
AI20_1 |
Booster Tank Level |
Tank |
40001 |
in |
120 inch |
|
Booster Tank |
20 |
Pressure |
Analog |
AI20_2 |
Booster Tank Pressure |
Tank |
40002 |
psi |
200 psi max |
|
Compressor |
30 |
State (Running/Stopped) |
Digital |
DI30_1 |
Compressor Status |
Tank |
5 |
N/A |
N/A |
|
Dry Chemical Feeder |
40 |
State (Running/Stopped) |
Digital |
DI40_1 |
Dry Chemical Feeder Status |
Chlorination |
6 |
N/A |
N/A |
|
Dry Chemical Feeder |
40 |
Feed Time |
Analog |
AO40_1 |
Feed Time |
Chlorination |
40003 |
sec |
5 sec min, 20 sec max |
|
Dry Chemical Mixer |
50 |
State (Running/Stopped) |
Digital |
DI50_1 |
Dry Chemical Mixer Status |
Chlorination |
7 |
N/A |
N/A |
|
Water Valve |
70 |
State (On/Off) |
Digital |
DI70_1 |
Water Valve Status |
Chlorination |
8 |
N/A |
N/A |
|
Mixing Tank Level |
80 |
Level |
Analog |
AI80_1 |
Mixing Tank Level |
Chlorination |
40004 |
in |
48 inch |
|
Booster Tank |
20 |
Record level |
Logger |
Log20_1 |
Log Booster Tank Level |
Tank |
N/A |
N/A |
N/A |
|
Booster Pump |
10 |
Record Status |
Logger |
Log10_1 |
Log Booster Pump Status |
Tank |
N/A |
N/A |
N/A |
|
Alarm System |
N/A |
Alarm priority |
Alarm Priority |
Alm_Pri_1 |
Critical |
System |
N/A |
N/A |
N/A |
|
Alarm System |
N/A |
Alarm priority |
Alarm Priority |
Alm_Pri_2 |
Urgent |
System |
N/A |
N/A |
N/A |
|
Booster Tank |
20 |
Monitor level (AI20_1) and signal when < 30 |
Alarm |
Alm20_1 |
Booster Tank Low Level |
Tank |
N/A |
N/A |
N/A |
|
Booster Tank |
20 |
Monitor level (AI20_1) and signal when < 20 |
Alarm |
Alm20_2 |
Booster Tank Low Level |
Tank |
N/A |
N/A |
N/A |
|
Booster Tank |
20 |
Generate weekly report including the total accumulated value of AI20_1 each day at 7 am for the previous week |
Report |
REP_BoosterTankLevel |
Weekly Daily Total Report on Booster Tank Levels |
|
N/A |
N/A |
N/A |