Thickness Monitoring Deployment

Deploy Thickness Monitoring for the First Time

The following table outlines the steps that you must complete to deploy and configure this module for the first time. These instructions assume that you have completed the steps for deploying the basic system architecture.

These tasks may be completed by multiple people in your organization. GE Vernova recommends, however, that the tasks be completed in the order in which they are listed.

StepTaskNotes
1Review the TM data model to determine which relationship definitions you will need to modify to include your custom equipment families. Via Configuration Manager, modify the relationship definitions as needed.This step is required only if you store equipment and location information in families other than the baseline Equipment and Functional Location families.
2 Assign Security Users to one or more of the Security Roles used in TM.This step is required.

User must have permissions to the TM families in order to use the TM functionality.

3Assign Resource Roles to users by performing the following steps:
  1. Access the Human Resource record for each user.
  2. In the Role box, select TM Technician.
This step is required to allow a user (typically, a TM Inspector) to enter details in an Inspection record.
4 Configure Family Preference Application Settings. This step is required.

You must configure preferences for the families that will be used to store equipment data in Thickness Monitoring.

The following relationships must be defined:

  • For the Equipment family, the Asset to Subcomponent Relationship field must be set to Has TML Group, and the Component ID field must be set to Equipment ID. The Subcomponent to Asset Relationship field should be left blank.
  • For the TML Group family, the Subcomponent to Asset Relationship field must be set to Has TML Group, and the Component ID field must be set to TML Group ID. The Asset to Subcomponent Relationship field should be left blank.
5 Configure Global Preference Application Settings. This step is required only if you want to use custom reading preferences and Nominal T-Min preferences. Baseline reading preferences and Nominal T-Min preferences will be used if you do not define your own. You can also define additional, optional global preferences that are not defined in the baseline APM database.
6Configure the system to use custom TML Types. This step is required only if you want to use custom TML Types. You can define additional TML Types to use in your Corrosion Analyses.
7Manage Thickness Monitoring Rules Lookup records. This step is required only if you want to view or modify Thickness Monitoring Rules Lookup records whose values are used to perform certain TM calculations.
8Define additional fields that will be displayed in the header section of the TM Measurement Data Entry. This step is required only if default Thickness Measurement fields are displayed on the headings of these pages in the baseline APM database. You can specify that additional fields be displayed in the header section of these pages.
9Disable the Auto Manage Tasks setting. This step is required only if you are planning to use TM tasks.
10Install the Meridium Device Service on all of the machines that will connect to devices that will be used with Thickness Monitoring.This step is required only if you will use any device to collect data that you transfer to Thickness Monitoring. If you are using HTTPS to connect to APM, follow the instructions in KBA 000055071.
11Configure Thickness Monitoring ActiveMQ Settings for MIExecution Service.This step is optional. You can perform this step if you want to modify the default retries or concurrency settings.
12Ensure that the Meridium MIExecution Service is installed and running.If the basic APM system architecture is already installed, the Meridium MIExecution Service is automatically installed, and the service runs automatically.
13Install the drivers and supporting files for any devices on all of the machines that will connect to devices that will be used with Thickness Monitoring.This step is required only if you will use these devices to collect data that you transfer to Thickness Monitoring.

Use Custom TML Analysis Types

The baseline APM database includes the Thickness Measurement Location family, which contains the TML Analysis Type field. This field is used to classify TMLs based upon the collection method that will be used for recording Thickness Measurements at that location.

The TML Analysis Type field contains a list of values that is populated with the Corrosion Inspection Type values from all Corrosion Analysis Settings records that are associated with the asset or TML Group to which the Thickness Measurement Location record is linked.

The values that are used to populate the Corrosion Inspection Type field in the Corrosion Analysis Settings family are stored in the System Code Table CITP (Corrosion Inspection Type). In the baseline APM database, this table contains three System Codes: UT, RT, and TML. You can only create Thickness Measurement Location records with a given TML Analysis Type value if an associated Corrosion Analysis Settings record contains the same value in the Corrosion Inspection Type field.

Using the baseline functionality, you can separate Corrosion Analysis calculations into groups based upon TML Analysis Type. If you want to use this functionality, you will want to classify your TMLs as UT (measurements collected using ultrasonic thickness) or RT (measurements collected using radiographic thickness). This separation will be desirable for some implementations. Other implementations will prefer not to separate TMLs according to collection method and instead perform calculations on the entire group of TMLs that exists for an asset. For these implementations, you will want to classify all TMLs using the TML Analysis Type TML.

Depending upon your preferred implementation, you may choose to make one or more of the following changes to the System Code Table CITP (Corrosion Inspection Type):

  • Add System Codes if you want to classify TMLs using methods in addition to UT and RT.
  • Delete System Codes that you do not want to use.
  • Modify the IDs and descriptions of the System Codes so that the classification options are more intuitive to your users.

If you make changes to this System Code Table, keep in mind that the analysis types that are stored in the System Code Table CITP (Corrosion Inspection Type) will be used when you create Corrosion Analysis Settings records, and therefore, will determine the analysis types for which you can create Thickness Measurement Location records.

Additionally, in Thickness Measurement Location records, the TML Analysis Type field has a baseline Default Value rule that is coded to present UT as the default value when you have defined the UT TML Analysis Type in your Corrosion Analysis (i.e., you have created a Corrosion Analysis Settings record with a Corrosion Inspection Type of UT). You could modify this rule if, for example, you wanted RT to be presented as the default value when you have defined the RT TML Analysis Type in your Corrosion Analysis (i.e., you have created a Corrosion Analysis Settings record with a Corrosion Inspection Type of RT). To do this, you would modify the MI_TML_TYPE_CHR class as follows:


            <MetadataField("MI_TML_TYPE_CHR")>  _
            Public Class MI_TML_TYPE_CHR
                Inherits Baseline.MI_Thickness_Measurement_Location.MI_TML_TYPE_CHR
                Public Sub New(ByVal record As Meridium.Core.DataManager.DataRecord, ByVal field As Meridium.Core.DataManager.DataField)
                    MyBase.New(record, field)
                End Sub
                Public Overrides Function GetDefaultInitialValue() As Object
                    Return CStr("RT")
                End Function
            End Class
        
Note: For more information on customizing baseline rules, refer to the Rules section of the documentation.

Install the Meridium Device Service

About This Task

Important: You must repeat this procedure on every machine to which a datalogger will be connected.
Note: If you are using Cloud APM or the URL is secured (https), follow the instructions in KBA 000055071 to install the Meridium Device Service.

Procedure

  1. Access the TM Dataloggers page.
  2. In the Select TMLs pane, select the check box next to a TML, and then select Apply.
  3. Select Send To Device.
    Note: A datalogger does not need to be connected.
    The Meridium Device Service Not Found window appears.
  4. Select the Download link.
    MeridiumDevices.exe is downloaded.
  5. Run MeridiumDevices.exe, and then follow the instructions in the installer.
    The Meridium Device Service is installed.
  6. In the Meridium Device Service Not Found window, select Continue.
    Dataloggers can now be used with Thickness Monitoring.

Configure the Meridium Device Service

Procedure

  1. In Windows Explorer, navigate to C:\Program Files\Meridium\Services.
  2. Using a text editor, open the Meridium.Service.Devices.exe.config file.
  3. In the text editor, navigate to the appSettings section (lines 24 to 28).
    • On line 25, edit the port number used by the service.

      Note: The datalogger settings in Thickness Monitoring must be modified so that the port number matches the one defined in this step.
    • On line 26, edit the timeout value in milliseconds. By default, the value for this setting is 60000, or 1 minute.
    • On line 27, if your organization utilizes a different URL protocol for APM, edit the protocol the service should use. For example, http://* can be changed to https://*.
  4. Save the file, and then close the text editor.
  5. Restart the Meridium Device Service.

    The Meridium Device Service configuration settings are updated.

Configure Thickness Monitoring ActiveMQ Settings for MIExecution Service

The MIExecution Service,on each APM Server serves RBI, Inspection and Thickness Monitoring module queues. This service is configured to use a single shared ActiveMQ queue service across APM. Available queue configuration options include retries and concurrency limit.

Procedure

  1. On the APM Server, access the folder that contains the MIExecution Service files.
    Note: If you have installed APM in the default location, you can locate the folder in C:\Program Files\Meridium\ApplicationServer\mi-execution
  2. Access the appsettings.json file in an application that can be used to modify JSON files (for example, Notepad++).
  3. In the file, locate the following text:
    "Queue_Config": {
    	    "Queues": [
    	      {
    	        "Name": "MI_TM_Queue", 
    	        "ConcurrencyLimit": 100,
    	        "Retries": 5,
                   "LimitPerTenantRequired": true
    	      }
    	    ]
              }
    Note: ConcurrencyLimit indicates the maximum number of messages that will be consumed concurrently. Retries indicates the number of times it retries to send the messages to ActiveMQ if it fails. LimitPerTenantRequired indicates whether Maximum Concurrency limit per Tenant is specified in scheduler service for the queue.
  4. Update the key values as desired.
  5. Save and close the file.
    The updated settings will be applied when the MIExecution Service is stopped and restarted.

TM Functional Security Privileges

APM provides the following baseline Security Groups for use with Thickness Monitoring and provides baseline family-level privileges for these groups:

  • MI Thickness Monitoring Administrator
  • MI Thickness Monitoring Inspector
  • MI Thickness Monitoring User

Access to certain functions in APM is determined by membership in these Security Groups. Note that in addition to the baseline family-level privileges that exist for these Security Groups, users will also need at least View privileges for all customer-defined predecessor or successor families that participate in the Thickness Monitoring relationships. Keep in mind that:

  • Users who will need to create new records in TM will need Insert privileges to these families.
  • Users who will need to modify records will need Update privileges to these families.
  • Any user who should be allowed to delete TM records will need Delete privileges to these families.

The following table summarizes the functional privileges associated with each group.

FunctionCan be done by members of the MI Thickness Monitoring Administrator Group?Can be done by members of the MI Thickness Monitoring Inspector Group?Can be done by members of the MI Thickness Monitoring User Group?
Configure Global PreferencesYesNoNo
Configure Family PreferencesYesNoNo
Use the T-Min CalculatorNoYesNo
Archive Corrosion RatesNoYesNo
Reset the Maximum Historical Corrosion Rate

Yes

NoNo
Exclude TMLsNoYesNo
Renew TMLsNoYesNo
Reset User PreferencesYesNoNo

APM provides the following baseline Security Groups for use with Thickness Monitoring and provides baseline family-level privileges for these groups:

  • MI Thickness Monitoring Administrator
  • MI Thickness Monitoring Inspector
  • MI Thickness Monitoring User

Access to certain functions in APM is determined by membership in these Security Groups. Note that in addition to the baseline family-level privileges that exist for these Security Groups, users will also need at least View privileges for all customer-defined predecessor or successor families that participate in the Thickness Monitoring relationships. Keep in mind that:

  • Users who will need to create new records in TM will need Insert privileges to these families.
  • Users who will need to modify records will need Update privileges to these families.
  • Any user who should be allowed to delete TM records will need Delete privileges to these families.

The following table summarizes the functional privileges associated with each group.

FunctionCan be done by members of the MI Thickness Monitoring Administrator Group?Can be done by members of the MI Thickness Monitoring Inspector Group?Can be done by members of the MI Thickness Monitoring User Group?
Configure Global PreferencesYesNoNo
Configure Family PreferencesYesNoNo
Use the T-Min CalculatorNoYesNo
Archive Corrosion RatesNoYesNo
Reset the Maximum Historical Corrosion Rate

Yes

NoNo
Exclude TMLsNoYesNo
Renew TMLsNoYesNo
Reset User PreferencesYesNoNo

TM Security Groups

The following table lists the baseline Security Groups available for users within this module, as well as the baseline Roles to which those Security Groups are assigned.

Important: Assigning a Security User to a Role grants that user the privileges associated with all of the Security Groups that are assigned to that Role. To avoid granting a Security User unintended privileges, before assigning a Security User to a Role, be sure to review all of the privileges associated with the Security Groups assigned to that Role. Also, be aware that additional Roles, as well as Security Groups assigned to existing Roles, can be added via Security Manager.
Security GroupRoles
MI Thickness Monitoring Administrator

MI Mechanical Integrity Administrator

MI Thickness Monitoring Inspector

MI Mechanical Integrity Administrator

MI Mechanical Integrity Power

MI Mechanical Integrity User

MI Thickness Monitoring User

MI Mechanical Integrity Administrator

MI Mechanical Integrity Power

MI Mechanical Integrity User

MI Thickness Monitoring Viewer

MI APM Viewer

MI Mechanical Integrity Viewer

The baseline family-level privileges that exist for these Security Groups are summarized in the following table.

FamilyMI Thickness Monitoring AdministratorMI Thickness Monitoring InspectorMI Thickness Monitoring UserMI Thickness Monitoring Viewer
Entity Families
CorrosionView, Update, InsertView, Update, InsertView, Update, InsertView
DatapointView, Update, InsertView, Update, InsertView, Update, InsertView
Datapoint MeasurementView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, InsertView
EquipmentViewViewViewView
Human ResourceView, Update, Insert, DeleteViewViewView
Inspection TaskViewView, UpdateViewView
Inventory Group ConfigurationViewViewViewView
Materials of ConstructionViewViewViewView
Meridium Reference TablesView, Update, Insert, DeleteViewViewView
RBI Inspection Auto-Selection CriteriaViewViewViewView
Resource RoleView, Update, Insert, DeleteViewViewView
Security GroupViewViewViewView
Security UserViewViewViewView
SettingsView, Update, InsertView, Update, InsertViewView
Task ExecutionView, InsertView, InsertViewView
Thickness Monitoring TaskView, Update, Insert, DeleteView, Update, InsertView, Update, InsertView
TML GroupView, Update, Insert, DeleteView, Update, Insert, DeleteViewView
Relationship Families
Belongs to a UnitView, Update, Insert, DeleteView, Update, InsertView, Update, InsertView
Equipment Has EquipmentViewViewViewView
Group AssignmentViewViewViewView
Has Archived Corrosion AnalysesView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, Insert, DeleteView
Has Archived Corrosion Analysis SettingsView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, Insert, DeleteView
Has Archived Subcomponent Analysis SettingsView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, Insert, DeleteView
Has Archived Subcomponent Corrosion AnalysesView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, Insert, DeleteView
Has Corrosion AnalysesView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, Insert, DeleteView
Has Corrosion Analysis SettingsView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, Insert, DeleteView
Has DatapointsView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, Insert, DeleteView
Has InspectionsNoneNoneNoneView
Has MeasurementsView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, Insert, DeleteView
Has RolesView, Update, Insert, DeleteViewViewView
Has Task ExecutionView, InsertView, InsertViewView
Has Task RevisionView, InsertView, InsertViewView
Has TasksView, InsertView, InsertView, InsertView
Has TML GroupView, Update, Insert, DeleteView, Update, Insert, DeleteViewView
Is a UserViewViewViewView
User AssignmentViewViewViewView

The following table lists the baseline Security Groups available for users within this module, as well as the baseline Roles to which those Security Groups are assigned.

Important: Assigning a Security User to a Role grants that user the privileges associated with all of the Security Groups that are assigned to that Role. To avoid granting a Security User unintended privileges, before assigning a Security User to a Role, be sure to review all of the privileges associated with the Security Groups assigned to that Role. Also, be aware that additional Roles, as well as Security Groups assigned to existing Roles, can be added via Security Manager.
Security GroupRoles
MI Thickness Monitoring Administrator

MI Mechanical Integrity Administrator

MI Thickness Monitoring Inspector

MI Mechanical Integrity Administrator

MI Mechanical Integrity Power

MI Mechanical Integrity User

MI Thickness Monitoring User

MI Mechanical Integrity Administrator

MI Mechanical Integrity Power

MI Mechanical Integrity User

MI Thickness Monitoring Viewer

MI APM Viewer

MI Mechanical Integrity Viewer

The baseline family-level privileges that exist for these Security Groups are summarized in the following table.

FamilyMI Thickness Monitoring AdministratorMI Thickness Monitoring InspectorMI Thickness Monitoring UserMI Thickness Monitoring Viewer
Entity Families
CorrosionView, Update, InsertView, Update, InsertView, Update, InsertView
DatapointView, Update, InsertView, Update, InsertView, Update, InsertView
Datapoint MeasurementView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, InsertView
EquipmentViewViewViewView
Human ResourceView, Update, Insert, DeleteViewViewView
Inspection TaskViewView, UpdateViewView
Inventory Group ConfigurationViewViewViewView
Materials of ConstructionViewViewViewView
Meridium Reference TablesView, Update, Insert, DeleteViewViewView
RBI Inspection Auto-Selection CriteriaViewViewViewView
Resource RoleView, Update, Insert, DeleteViewViewView
Security GroupViewViewViewView
Security UserViewViewViewView
SettingsView, Update, InsertView, Update, InsertViewView
Task ExecutionView, InsertView, InsertViewView
Thickness Monitoring TaskView, Update, Insert, DeleteView, Update, InsertView, Update, InsertView
TML GroupView, Update, Insert, DeleteView, Update, Insert, DeleteViewView
Relationship Families
Belongs to a UnitView, Update, Insert, DeleteView, Update, InsertView, Update, InsertView
Equipment Has EquipmentViewViewViewView
Group AssignmentViewViewViewView
Has Archived Corrosion AnalysesView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, Insert, DeleteView
Has Archived Corrosion Analysis SettingsView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, Insert, DeleteView
Has Archived Subcomponent Analysis SettingsView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, Insert, DeleteView
Has Archived Subcomponent Corrosion AnalysesView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, Insert, DeleteView
Has Corrosion AnalysesView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, Insert, DeleteView
Has Corrosion Analysis SettingsView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, Insert, DeleteView
Has DatapointsView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, Insert, DeleteView
Has InspectionsNoneNoneNoneView
Has MeasurementsView, Update, Insert, DeleteView, Update, Insert, DeleteView, Update, Insert, DeleteView
Has RolesView, Update, Insert, DeleteViewViewView
Has Task ExecutionView, InsertView, InsertViewView
Has Task RevisionView, InsertView, InsertViewView
Has TasksView, InsertView, InsertView, InsertView
Has TML GroupView, Update, Insert, DeleteView, Update, Insert, DeleteViewView
Is a UserViewViewViewView
User AssignmentViewViewViewView