0:19
Hello and welcome to today’s webinar.
0:23
Today we will be looking at Canvas alarm handling for Cscape 10. Let’s look at our agenda for today.
0:30
We will start by discussing what alarm We will then go through the different alarm handling functions available in Canvas.
0:39
We will look at how to set up alarm handling, how to configure individual alarm messages for each alarm point, the difference between alarm summaries and alarm histories, the new Canvas ability to have variable alarm text, as well as a new object called the alarm pop-up banner.
0:57
There will be demonstrations throughout and we will finish with the Q &A session.
1:01
First, we will look at what we mean by alarm handling.
1:05
In terms of machine control, we are referring to a system for determining how machine exceptions are handled, how they are enunciated to the operator, how the operator is expected to respond and how exceptions are recorded historically.
1:20
These machine exceptions would include any condition which is outside of accepted limits.
1:25
For example, a temperature that has gone high or low would create a machine exception, which are basically calling an alarm.
1:33
Next we will discuss some of the enhancements in Canvas for Alarm Handling.
1:38
Alarm Handling has been available in Seascape and with every modern OCS for many years and that standard alarm capability allows you to configure a series of alarm triggers with one trigger bit per alarm.
1:50
You also have the ability with any OCS today to configure alarm summaries and histories as well as acknowledge and clear any alarm condition from the touchscreen.
2:00
With standard alarm handling, you also have some remote capability to use acknowledge and clear functions with the SCADA package, but only at mass, meaning you can only acknowledge or clear all current alarms so you don’t have control over individual remote acknowledge and clear functions.
2:18
With Canvas, we have added some additional functions.
2:21
We still have all the functions available with standard alarm handling, but we have also added a new alarm banner object which we will look at in more detail in our demonstration.
2:32
This object pops up on the screen when there’s an active alarm that hasn’t been acknowledged, and if there are multiple alarms, this object will scroll all the active alarm messages sequentially.
2:42
With Canvas, you can now also have real-time data embedded in your alarm text, so you are no longer restricted to a message that says high temperature, for example.
2:53
Instead, this can be an alarm that says high temperature that has exceeded X amount with an actual temperature of Y with real-time data filled in under X and Y.
3:03
You now have the ability to acknowledge and clear alarm points from a scatter package instead of only being able to apply these functions across all alarms.
3:12
Now, let’s look at the main general alarm configuration, which we will demonstrate in Cscape later.
3:19
First we will configure the number of alarms, and this will then automatically fill in alarm messages that are ready to be configured by double-clicking on them and configuring each individual message.
3:31
You can also copy and paste to Excel or a similar text editor to do this.
3:36
Then we will allocate a specific trigger register, which in this case is a word type register or a word type variable.
3:43
If you have more than 16 alarms you want to trigger then you will need to make these consecutive registers or into an array type word variable.
3:52
If you’re using variable-based advanced ladder you have the ability to set up history and remote media logging as well as change the coloring on the alarm history lists and summary lists to your liking.
4:03
You can also set up remote acknowledge and clear variables.
4:07
As you double click on an At the individual alarm point or an alarm message from the list, you have the ability to type in your alarm text, which can either be plain text or with Canvas real-time data fields.
4:20
We have also added a severity field and an alarm info text field. These are optional to fill in and can be used to provide extra information to the operator that appears along with the alarm text message.
4:32
So these are some enhancements to the configuration for each individual alarm point for Canvas.
4:38
Finally, when you’re placing alarm objects on the screen that the operator can use to see the status of your alarms, you have an alarm object that you can place on the screen and can be configured to one of five different types.
4:51
So this object can be a summary list, which is a list of all the current alarms on the screen.
4:56
This could also be a history list, which is a list of all the historical alarms.
5:01
Or if you just want an icon to appear on the screen that changes its color code, depending on whether you have any current alarms or not, you can put a summary button on the screen.
5:12
Then at runtime, when this button is pressed, it will pull up a full list of the alarms on the screen.
5:17
In the case of a summary button, it will pull up a list of all the current alarms, whereas a history button will pull up a list of all the historical alarms.
5:26
You also have a new option for a pop-up alarm banner.
5:29
The main configuration for the pop-up alarm banner is in the middle of the dialog box as shown, so you can configure options such as the rate and duty cycle, you want the banner to be floating and flashing across the screen.
5:42
Now we will demonstrate how to set up our alarm handling in Cscape 10.
5:47
Here we have a demo program that we’ve created to highlight some of the capabilities of the Canvas alarm handling.
5:53
To access the configuration for alarm handling, we will navigate to the ribbon toolbar on the top of our screen and select user interface.
6:02
Then from the systems group, we select alarm and we have a configuration dialog box for alarm handling.
6:08
First we need to decide how many alarms we want to support in our program.
6:13
We have chosen to support 12 in this example, however a typical machine will typically use a lot more than this.
6:19
Next we need to set an alarm trigger variable.
6:22
For this demonstration we are using variable-based advanced ladder, so this alarm trigger needs to be a word-based variable.
6:30
Because there are only 16 bits in a word, If you are using more than 16 alarms in your program, then you will need to make this trigger an array type variable so that you can support more than 16 alarms with your word type variable.
6:43
For example, if you have an array variable with a dimension of 4, then you can support up to 64 alarms in register-based advanced ladder.
6:52
So now we have set the number of alarms and our trigger variable.
6:56
Once we have filled in this alarm variable, Cscape has automatically filled in the alarm bit column with that specific bit that will trigger each of our 12 alarms.
7:06
So we are starting with word 0, bit 1, and counting up from there.
7:10
Next, we can configure an alarm message by double-clicking on any of the columns here.
7:16
For the alarm text, you can choose to make this fixed text if you want.
7:20
But with Canvas, you can also choose to embed some real-time data.
7:24
Here, we have embedded two data fields.
7:27
The first data field indicates what the alarm level was.
7:30
In other words, what the setpoint was for the alarm that we have violated.
7:34
The second data field tells us the current value of the alarm.
7:38
Usually, this value will be close to what the setpoint was, because that’s what it was when it exceeded it.
7:44
To configure these individual data fields, we position the cursor where we want to insert the data field, and then select the Insert Field button.
7:52
Once we do this, we can then double-click on the data field to get the configuration settings.
7:58
Here we have the variable we are mapping to that real-time location, and we have also set the size of the variable.
8:04
In this case, this is a floating point value, so we need to set the data size to 32 bits.
8:11
Then in terms of how we want this to be displayed, we have opted to have three decimals to the left of the decimal point, followed by the decimal point, and then one decimal to the right of the decimal point.
8:22
So this means we need a total of five digits, including the decimal point.
8:27
Then the decimal position is how many points to the right of the decimal point we want.
8:32
So in this case, we have made this one.
8:34
We also have options for the justification of the data field, either to the left or to the right.
8:40
So this is how we configured our alarm text with some embedded data.
8:44
Underneath this, we have an optional setting to set the severity of this alarm.
8:48
This will appear on the screen when the operator sees the alarm, so this can be set as Info, Warning, Low, Medium, High or Critical.
8:58
We have chosen Low for this particular alarm because we want this alarm to alert the operator if the oven has too low of a temperature, so we don’t need this to be urgent.
9:07
Then underneath this we have Alarm Info.
9:10
This is fixed text and can be used to give the operator further information that appears with the alarm message such as to check the user manual or a certain drawing page.
9:20
For this alarm, we have said to check the oven status to ensure the oven is on or if there is an issue with the oven if the oven temperature is too low.
9:29
So this is our alarm point configuration for this trigger bit.
9:33
Next, we will look at our remote acknowledgement and clear function settings.
9:37
So, if you are going to have someone from a SCADA package remotely acknowledge or clear an alarm, then you can allocate variables here to do this.
9:46
These are word type variables with individual bits assigned to each individual alarm for remotely acknowledging and clearing.
9:53
They appear in these last two columns in our table here, so we have the specific bits for acknowledge and clear in two separate columns, both from a remote standpoint.
10:03
We also have the ability to log everything that happens with our alarms to removable media, which is a very useful feature that we recommend you take advantage of.
10:13
To do this, you can simply enable Remote Media Logging, and then under RM Log, you can organize when new files will be created to store the log data.
10:22
By default, this is set to create a new file every day.
10:25
From here, you can also configure the format for the date and time, as well as the alarm log path.
10:31
This will be A colon slash if you are logging to a SD card or micro SD card, and B colon slash if you are logging to a USB card.
10:40
You can also put a subdirectory here instead of the root directory of the A or B drive.
10:46
We have decided to put this in SD under the root directory.
10:50
Under removable media logging, we also have a status variable.
10:55
This is a 32-bit variable, which we can use to look in the help file to see the details for the status.
11:02
Finally, underneath this we have the different default color combinations for when the complete list of alarms is on the screen.
11:09
This could appear when we press on the alarm banner or a summary or history button.
11:14
We also have the default colors for any summary buttons or history buttons. We also have a summary option.
11:21
If you want to return to normal to imply an acknowledge and not require an additional acknowledge, then you can do this Then under history options, you can decide if you want to record any acknowledge, clear and return to normal functions.
11:36
So this is our general alarm configuration.
11:40
Next, we will look at a screen we have created for this demo program.
11:44
In the middle of the screen, we have pushed editable data fields for each of the four oven zones, as well as the low and high alarm points.
11:52
We also have three alarm objects on our screen.
11:55
These are the alarm banner object at the top of the screen, as well as an alarm status or summary button and an alarm history button.
12:03
We have placed our banner object on top of a regular text field that says no unacknowledged alarms.
12:09
This is because with our configuration settings, the alarm banner object will only appear when there’s an unacknowledged alarm.
12:16
So when it’s not there, the operator will see some text that says that there aren’t any unacknowledged alarms.
12:22
and when there is an alarm, the alarm banner will cover this text.
12:27
Then in the corners of our screen, we have placed some extra buttons to simulate alarms for our demonstration.
12:33
If we double-click on the alarm summary button, we can see that we have set our button to change color whenever we have an active alarm, based on the default color codes that were in the general alarm configuration dialog box.
12:46
From here, we can also configure what groups we want this alarm summary button to be tied to, and we can have up to 16 groups.
12:54
Then at runtime, when we select this button, we will see a zoom in of all the current alarms.
13:00
Similarly, we have also placed a history button on our screen.
13:04
Once again, this button’s color codes will change based on historical alarms with a different set of color codes that were configured in the general alarm configuration.
13:14
For both of these buttons, we have the option to adjust the date and time formats and the groups that we want this button to be tied to.
13:21
We will also look at our banner object in more detail, which is the newest object for alarm handling for Canvas in Cscape 10.
13:29
Once again, this will only appear when we have active unacknowledged alarms.
13:34
We can also tie this object to specific groups if we choose.
13:38
We can choose the font style and size of the text for this object.
13:42
Then in the pop-up alarm banner options, we can add a separator between alarms, which is useful if we have multiple alarms active simultaneously which will be scrolling across the screen.
13:54
From here we can also control the flash range in which either the entire object or just the text is flashing on the screen. So this is the configuration of our alarm objects on our screen.
14:05
Finally we will switch to our main logic window and look at the latter logic we have used for our demo program.
14:12
We allocated the trigger bits as part of the general alarm configuration, so now we need to have logic that turns these bits on and off as desired.
14:21
So in our example, we have four oven zones with high and low alarms, and we have logic here that will compare the current temperature value against the alarm level, and then require this current temperature value to exceed that level for a certain amount of time before the alarm bit turns on.
14:38
We then have similar logic for turning that alarm bit off again.
14:42
We will also recommend you add some hysteresis to your logic.
14:46
if you’re looking for a certain level and your alarm level could potentially be dithering or your process variable could be dithering around that level.
14:54
So either a little bit of timing or a higher level to go above the alarm and a lower level to come out of the alarm and then return to normal. So this is our logic setup for our alarm trigger bits.
15:05
Now let’s look at our bench setup for this demonstration.
15:09
For demonstration purposes we have a four zone oven here with four different desired temperatures, as well as low and high alarm levels set for each of the zones.
15:18
Then we also have some extra buttons in the bottom corners that are being used to simulate alarms by forcing a temperature that is either too low or too high for the zone.
15:28
We also have a text object that we placed on the screen that says no unacknowledged alarms.
15:34
So now we will test our program by forcing an alarm.
15:37
We will force zone 1 to go to 80 degrees.
15:40
We have put logic in our program that requires 5 seconds below or above the set point in order for the alarm to go off.
15:48
So now we can see that our alarm banner has appeared here, covering up our no unacknowledged alarms text object and tells us as it scrolls across the screen that we have a low temperature alarm in zone 1.
16:00
There is also some real time data embedded here as well, which was not an option for standard alarm handling.
16:06
We will also note that our current alarm button has turned red.
16:10
If we select this, we can see our current alarm for the low temperature in Zone 1 under the alarm tab.
16:17
And if we select the Acknowledge tab, we can see some previously acknowledged alarms and not the current alarm.
16:23
We will exit this without acknowledging our current alarm.
16:27
If we select the alarm banner object on our main screen, we return to our current alarm screen.
16:32
We will select our current alarm from the Alarms tab and then select Acknowledge and return to our main screen again.
16:40
Once we do this, we can now see that our alarm banner is gone and we instead can see our No unacknowledged alarms message on our screen again.
16:48
We will re-select the red force low temperature button that we selected before to have our temperature for zone 1 return back to normal.
16:56
Next, let’s look at our alarm history button, which we will note has remained a light blue colour for our entire demonstration.
17:04
From our alarm history button, we can access a historical record of all the alarms that have occurred.
17:10
We can also scroll down to see older alarms.
17:13
From here we can see when the alarms were logged and when they returned to normal, and then under Acknowledged we can see which alarms have been acknowledged and at what time.
17:22
So this is just a quick demonstration of the alarm capability in Canvas for C-SCAPE 10.
17:29
That concludes our webinar for today.
17:31
Thank you so much for listening and the Q &A session will begin shortly.
17:47
Okay, so next week we will be dealing with Recibly Handling in C-SCAPE 10.
17:55
And there’s registration links for that and the upcoming webinars as well, as well as the past stuff here.
18:01
I’m not seeing anything in on questions, why isn’t that?
18:05So in that case, I will leave it there and thank you, I’ll see you next week.