MES 3.0

Signals provide a method for notifying us of an out-of-control process or rule violation that may indicate an abnormal change in the process. The SPC module provides built-in signals that satisfy the standard Nelson and Western Electric Rules such as six points in a row that are increasing or decreasing, eight points in a row that are farther than one standard deviation away from the center line, or fourteen points in a row that are alternating up and down. The SPC module also lets you build your own custom signals or you can modify the ones provided for you.

When used properly, these signals can identify important changes that can help to improve or maintain the process.


Watch the Video





Default Signals

The following default control limits are provided when the SPC module is first installed:

SignalKindDescription
Individual Nelson Rule 1IndividualOne point is more than 3 standard deviations from the mean.
Individual Nelson Rule 2IndividualNine (or more) points in a row are on the same side of the mean.
Individual Nelson Rule 3IndividualSix (or more) points in a row are continually increasing (or decreasing).
Individual Nelson Rule 4IndividualFourteen (or more) points in a row alternate in direction, increasing then decreasing.
Individual Nelson Rule 5IndividualTwo (or three) out of three points in a row are more than 2 standard deviations from the mean in the same direction.
Individual Nelson Rule 6IndividualFour (or five) out of five points in a row are more than 1 standard deviation from the mean in the same direction.
Individual Nelson Rule 7IndividualFifteen points in a row are all within 1 standard deviation of the mean on either side of the mean.
Individual Nelson Rule 8IndividualEight points in a row exist, but none within 1 standard deviation of the mean, and the points are in both directions from the mean.
Individual OutsideIndividualA single sample point outside the defined control limits.
Median Nelson Rule 1MedianOne point is more than 3 standard deviations from the mean.
Out Of LimitsXBarXBar above 'XBar UCL' or below 'XBar LCL' control limits (those control limits must be set for this signal to work).
Outside LimitsRangeRange above 'Range UCL' or below 'Range LCL' control limits (those control limits must be set for this signal to work).
WE Zone Rule 1XBarAny single data point falls outside the 3σ limit from the centerline (i.e., any point that falls outside Zone A, beyond either the upper or lower control limit).
WE Zone Rule 2XBarTwo out of three consecutive points fall beyond the 2σ limit (in zone A or beyond), on the same side of the centerline.
WE Zone Rule 3XBarFour out of five consecutive points fall beyond the 1σ limit (in zone B or beyond), on the same side of the centerline.
WE Zone Rule 4XBarEight consecutive points fall on the same side of the centerline (in zone C or beyond).
XBar 8 Above Control LineXBarEight Consecutive points above control line signal calculation.
XBar 8 Below Control LineXBarEight Consecutive points below control line signal calculation.
XBar Nelson Rule 1XBarOne point is more than 3 standard deviations from the mean.
XBar Nelson Rule 2XBarNine (or more) points in a row are on the same side of the mean.
XBar Nelson Rule 3XBarSix (or more) points in a row are continually increasing (or decreasing).
XBar Nelson Rule 4XBarFourteen (or more) points in a row alternate in direction, increasing then decreasing.
XBar Nelson Rule 5XBarTwo (or three) out of three points in a row are more than 2 standard deviations from the mean in the same direction.
XBar Nelson Rule 6XBarFour (or five) out of five points in a row are more than 1 standard deviation from the mean in the same direction.
XBar Nelson Rule 7XBarFifteen points in a row are all within 1 standard deviation of the mean on either side of the mean.
XBar Nelson Rule 8XBarEight points in a row exist, but none within 1 standard deviation of the mean, and the points are in both directions from the mean.
c Nelson RulecOne point is more than 3 standard deviations from the mean (Nelson Rule 1).
np Nelson Rule 1npOne point is more than 3 standard deviations from the mean (Nelson Rule 1).
p Nelson RulepOne point is more than 3 standard deviations from the mean (Nelson Rule 1).
u Nelson RuleuOne point is more than 3 standard deviations from the mean (Nelson Rule 1).



Wikipedia has a nice visual description on the Nelson Rules and WE Zone Rules.


Signals can be configured so that they are evaluated every time new sample data is recorded. This allows for quick and automatic detection of out of control conditions. Once an out of control condition is detected, a a variety of actions can be performed, such as alerting of personnel via alarms, text messaging, even shutdown of a process until the process has been verified.

For automatic signal evaluation to be enabled, the Look Back Period must be set to something other than No Auto Evaluation, a Look Back Duration must be set, and the signal must be selected for the desired sample definitions. 



Adding and Editing Signals

Out of Control Signals can be added, edited or deleted on the Enterprise page in the designer under the Quality tab as shown . To add an out of control signal, right-click on the Out of Control Signals pane and select New from the drop-down menu. Select Edit to edit an existing Out of Control signal.



Out of Control Signals (Rules) are available in the MES Equipment Manager at the Enterprise level of the Production Model.

To add a new signal/rule, in the MES Equipment Manager, click on Out of Control Signals on the Enterprise level of the Production Model and click New (  ). A window will appear with several fields to be completed.

To edit an existing signal/rule, click on Out of Control Signals on the Enterprise level of the Production Model and click Edit (  ) next to the signal/rule to modify. Click Save when done making edits.





PropertyDescription

Signal Name

This is the required unique name of the signal as it will appear in selection lists and control charts. It is better to keep this short in length so that it will fit better on the control charts. 

Kind

Each type of control chart has signal kinds that it works with. If a signal will be used with a Individual control chart, then the Individual signal kind must be used.

Kind Description 
 XBarUse when displaying out of control signals on an XBar chart
 RangeUse when displaying out of control signals on the secondary range when measurement count is greater than 1. This signal is used for validation of a range of values within sub-group.
 HistogramUse with a Histogram chart
 IndividualUse with an Individual chart
 MRUse with the Median and Individual Chart for the secondary (lower Moving Range Chart) when the measurement count equals 1. This signal is used for validation of a range of values between sub-groups.
Standard Deviation
Median
p
np
u
c
Calculation Script
Because signal calculations can vary, the SPC module exposes how the calculation is performed as a python script. This allows the user to override the default calculation of a signal or create new signals that the SPC module does not provide by default. Additionally, they can be removed, cleaning up selection lists of signals that may never be used.

Signals are evaluated when viewing them on control charts or when new sample data is recorded. When either of these trigger the signals to be calculated, the script in the associated signal is executed. An event object is passed into the script that contains the information and data to calculate the signal state values. Refer to the Signal Evaluated Event object for more information.

Looking at the default signal calculations along with the Scripting section of this manual and the Scripting section in the Ignition manual is the best method to learn all the possibilities of calculating signals.

Default 8 consecutive points above control limit signal calculation script
#8 Consecutive points above control line signal calculation
consecutiveCount = 0
 
#Get the SPC data that the signal will be calculated for
ds = event.getData()
 
#Get the columnn indexes within the SPC data
xBarColNdx = ds.getColumnIndex("XBar")
xDBarColNdx = ds.getColumnIndex("XDBar")
resultColNdx = ds.getColumnIndex("XBar 8 Above Control Line")

#Cycle through each row and check signal
for row in range(ds.rowCount):

	#Get the values to compare
 	xBar = ds.getValueAt(row, xBarColNdx)
	xDBar = ds.getValueAt(row, xDBarColNdx)
 
	#Test if the x bar value is above x double bar value
	if xBar > xDBar:
		#Add to the consecutive count
		consecutiveCount = consecutiveCount + 1
 
		#Test if less than 8 consecutive x bar values are above x double bar
		if consecutiveCount < 8:
			#Write a zero to the result column, meaning we are in control
			ds.setValueAt(row, resultColNdx, 0)                                
		elif consecutiveCount == 8:
			#Now 8 consecutive x bar values are above the x double bar
			#Write a 1 into the last 8 row because, they are all out of control
			ndx = row
			while ndx > 0 and ndx > row - 8:
				ds.setValueAt(ndx, resultColNdx, 1)
				ndx = ndx - 1
		else:
			#Over 8 consecutive x bar values are above x double bar
			#Continue writing a 1 into the result because this row is still out of control
			ds.setValueAt(row, resultColNdx, 1)                
	else:
	#x bar value is below, reset the consecutive count
	#and write a zero to the result column, meaning we are in control
	consecutiveCount = 0
	ds.setValueAt(row, resultColNdx, 0)


In the example script, any lines that start with the pound (#) character are comments and are ignored when the script is executed.

  • Line 2 - Initializes a variable used to track how many consecutive calculated values (like the x bar value) are above the control line (like the x double bar value).
  • Line 5 - The event.getData() returns the samples that will be used to calculate the signal state values. It is a data set (see Ignition Dataset in scripting for more information) and contains a row of data for each sample. Each sample row includes measurement values, calculated values (such as xBar, standard deviation, etc), sample date and time and control limits. There is also a column named the sample as the signal to save the signal state value. By setting the value of this column to a zero (0), the sample is in control for this signal, and by setting the value of this column to a one (1), the sample is out of control.
  • Line 8 -10 - The ds.getColumnIndex returns the column number of the XBar, XDBar and signal result columns. This is done for speed reasons because it is faster to reference the column by number instead of finding the column by name.
  • Line 13 - Each sample row in the data set is cycled through.
  • Line 16 - reads the calculated value that in this case is the xBar value.
  • Line 17 - reads the average of the calculated values, which in this case is the xDBar value.
  • Line 20 - A test is performed for the xBar value being greater than the xDBar. If it is, further checking is done in lines 22 through 38. If it is not, then the consecutive count variable is reset and the signal state value is set to 0 for the sample in lines 42 and 43.
  • Line 22 - Adds to the consecutive count variable before checking if the threshold of 8 has been exceeded.
  • Line 25 - Checks if the consecutive count threshold has been exceed. If not, the signal state value for the sample is set to 0 and the consecutive count variable is left at its current value.
  • Line 28 - Checks if the consecutive count just exceeded the threshold. If it just did, the signal state values for the previous 8 samples are set to 1. This flags the current sample and the previous 7 samples as out of control.
  • Line 35 - The else statement checks if more than 8 consecutive xBar values exceed the xBar value. It sets the signal state value to 1 and leaves the consecutive count variable at its current value.

Look Back Period

 This property defines the time units of the Look Back Duration property.

PeriodDescription

No Auto Evaluation

Disable automatic signal evaluation after new sample data is recorded.

Seconds

Time in seconds to display as defined by the Look Back Duration property.

Minutes

Time in minutes to display as defined by the Look Back Duration property.

Hours

Time in hours to display as defined by the Look Back Duration property.

Days

Time in days to display as defined by the Look Back Duration property.

Months

Time in months to display as defined by the Look Back Duration property.
Sample Count

# of samples as defined by the Look Back Duration property.

Look Back DurationWhen automatic signal evaluation is used, this property, along with the Look Back Period property, defines the time range or count of samples to pass to the calculation script. The calculation script can then cycle through the range of samples to find out of control conditions.
Chart Point ColorThe color to display for sample values that are considered out-of-control on the control charts.

Chart Point Shape

This is the shape to display for sample values that are considered out-of-control on the control charts.


Delete Signals

To delete an out of control signal, select the item to be deleted. After selecting, right-click the item and select Delete from the drop-down menu. A window as shown below will appear confirming that you permanently want to delete the out of control signal.



Importing and Exporting Signals

Export

To export signal entries, right-click anywhere on the table containing signal entries and select the Export menu item. A dialog box will appear to allow for the selection of an existing file or the entry of a name for the new file to which the out of control signal entries are saved. If a file extension is not entered, then the default .csv will be used. The first line of the file must at least contain the property names separated by commas. If additional names exist, they will be ignored. The property names can be in any order. Below is a sample csv file showing multiple signal entries. The lines in the example shown below have been shortened.

Import

To import signal entries, right-click anywhere on signal entries and select the Import menu item. A dialog box will appear as shown below to allow selection of a comma separated values (csv) formatted file.



Rule Monitoring

Typically, SPC software requires that someone opens a screen and visually checks for out of control conditions. Just like the scheduling of samples, someone may be distracted by other pressing production issues and fail to complete the task. The Sepasoft SPC module has powerful features that will automatically evaluate out of control signals every time new sample data is recorded. This can be expanded to instantly inform all parties that should know of various out of control conditions. Any sample that goes out of control will cause the Signal Out of Control tag to go to true and will show up in the control chart. Depending on the rule you will see a colored shape on every point that is out of control.


The SPC module provides an Signal Out of Control tag that goes to true when an out of control condition is detected.

You can configure an alarm on this tag to notify people when the sample goes out of control.

Watch the Video


If you pull up the control chart, you will see an indication of the out of control sample. You have the ability to right click on the point and assign a cause and enter in a note.

Keep in mind that you only get one set of tags per location which will show the signal out of control, if any of the sample definitions are out of control.

  • No labels