Perform Accelerated Life Testing Data Analysis on External Data Source

From ReliaWiki
Jump to navigation Jump to search
APIWiki.png


<< Back to Tutorials Main Page

With the Synthesis API, you can leverage the ALTA analysis engine to perform accelerated life testing data analysis on an external data source. In this tutorial, you will use the API to create an ALTA data set and analyze it using a single stress model.

Note that this tutorial is for demonstration purposes only; it doesn't take efficiency into account and doesn't include any exception handling.

Tutorial: Accelerated Life Testing Data Analysis

This example demonstrates how to use the Synthesis API to analyze the following ALTA data set and obtain an estimate of the B10 life (i.e., time at which reliability is equal to 90%). A discussion of the example follows.

The VBA version of the code sample is available here.

Number in State State Time to F or S Temperature
1 F 245 353
5 S 250 353
1 F 110 373
1 F 180 373
1 F 200 373
3 S 250 373
1 F 50 393
1 F 70 393
1 F 88 393
1 F 112 393
1 F 140 393
1 F 160 393


VB.NET

Imports SynthesisAPI 

Module Module1
   Sub Main()

  'Declare a new ALTADataSet object.  
   Dim ADS As New ALTADataSet

  'Define a stress type with use stress level = 300.  
   ADS.AddStressDefinition("Stress1",,300)

  'Add the failure times to the data set. 
   ADS.AddFailure(245, 1, 353)
   ADS.AddFailure(110, 1, 373)
   ADS.AddFailure(180, 1, 373)  
   ADS.AddFailure(200, 1, 373)
   ADS.AddFailure(50, 1, 393)
   ADS.AddFailure(70, 1, 393)
   ADS.AddFailure(88, 1, 393)
   ADS.AddFailure(112, 1, 393)
   ADS.AddFailure(140, 1, 393)
   ADS.AddFailure(160, 1, 393)
   
  'Add the suspensions to the data set. 
   ADS.AddSuspension(250, 5, 353)   
   ADS.AddSuspension(250, 3, 373) 
 
  'Use the Arrhenius-Weibull model. Keep all other analysis settings at default. 
   ADS.AnalysisSettings.ModelType = ALTASolverModel.Arrhenius
   ADS.AnalysisSettings.Distribution = ALTASolverDistribution.Weibull
 
  'Analyze the data set. 
   ADS.Calculate()

  'Calculate the B10 life and display the result. 
   Dim r As Double
   r = ADS.FittedModel.Time(.90)
   MsgBox("B10 Life: " & r)

   End Sub
End Module

Discussion

The ALTADataSet class represents an ALTA data sheet for accelerated life testing data analysis. The class contains all the methods and properties that allow you to define a data set and fit a life-stress relationship and distribution to the data.

 'Declare a new ALTADataSet object.  
  Dim ADS As New ALTADataSet

Use the AddStressDefinition method to define the name and use stress level of the stress.

 'Define a stress type with use stress level = 300.  
  ADS.AddStressDefinition("Stress1",,300)

The data set can contain failures, suspensions or interval data. The following example shows how to use the AddFailure method to define failures and the AddSuspension method to define suspensions.

 'Add the failure times to the data set. 
  ADS.AddFailure(245, 1, 353)
  ADS.AddFailure(110, 1, 373)
  ADS.AddFailure(180, 1, 373)  
  ADS.AddFailure(200, 1, 373)
  ADS.AddFailure(50, 1, 393)
  ADS.AddFailure(70, 1, 393)
  ADS.AddFailure(88, 1, 393)
  ADS.AddFailure(112, 1, 393)
  ADS.AddFailure(140, 1, 393)
  ADS.AddFailure(160, 1, 393)
   
 'Add the suspensions to the data set. 
  ADS.AddSuspension(250, 5, 353)   
  ADS.AddSuspension(250, 3, 373) 

The AnalysisSettings property stores a reference to the ALTAAnalysisOptions object, which represents the analysis settings of the data set (i.e., settings that you might find in an ALTA folio's control panel). In this example, we use the property to change some of the attributes of the object.

 'Use the Arrhenius-Weibull model. Keep all other analysis settings at default. 
  ADS.AnalysisSettings.ModelType = ALTASolverModel.Arrhenius
  ADS.AnalysisSettings.Distribution = ALTASolverDistribution.Weibull

Use the Calculate method to analyze the data set.

 'Analyze the data set. 
  ADS.Calculate()

The FittedModel property gets the cModel object that represents the fitted model of the accelerated life testing data analysis. From the model, you can calculate useful metrics such as reliability, failure rate, mean time, etc. In this example, we use the cModel.Time method to calculate the B10 life.

 'Calculate the B10 life and display the result. 
  Dim r As Double
  r = ADS.FittedModel.Time(.90)
  MsgBox("B10 Life: " & r)


Notes

For analyses that require a two-stress model, you will need two stress definitions. You can then use the overloaded methods to add the data points. The following example shows two stress definitions and how the overloaded AddFailure method is used to define the data points:

 ... 
 'Add two stress definitions.  
  Dim ADS As New ALTADataSet
  ADS.AddStressDefinition("Temp",,328)
  ADS.AddStressDefinition("Voltage",,2)

 'Add failure times for Temp = 348 and Voltage = 3. 
  ADS.AddFailure(620, 1, 348, 3)
  ADS.AddFailure(632, 1, 348, 3)
 ... 

References