Documentation
Fault Detection and Diagnostics Framework
vibeFDaD.framework© for iOS®/iPadOS®
- Version: 1.02
- Author: David Bukowitz
- Created: 7 Jan, 2011
- Update: 14 Oct, 2021
If you have any questions that are beyond the scope of this help file, Please feel free to email via info@rotovibes.com
Description
vibeFDaD© framework is an iOS®/iPadOS® library that contains experienced methods for rotating machine fault detection and diagnostrics, such as:
Installation
Follow the steps below to install the vibeAV.framework
- Drag and drop the vibeFDaD.framework file into your Xcode project
- Select the "Embed & Sign" option in the Framworks, Libraries and Embedded Content menu
Framework Anatomy
- Discrete Condition Detection (discreteFDaD module)
- Mechanical Degradation Indicators (degradation module)
...
//-------------------------------------------
//Condition Detection from vibration raw data
//-------------------------------------------
+(NSString*) computeConditionFromSignalRpm: (double)rpm withRawDataArrayAxisH:(NSArray*)rawDataArrayAxisH withRawDataArrayAxisV:(NSArray*)rawDataArrayAxisV withRawDataArrayAxisA:(NSArray*)rawDataArrayAxisA withSamplingRate:(int)sampRate withNumberOfSamples:(int)numSamples withThreshold:(double)vThreshold;
//-------------------------------------------
//Condition Detection from vibration spectrum
//-------------------------------------------
+(NSString*) computeConditionFromSpectrumRpm: (double)rpm withSpectrumArrayAxisH:(NSArray*)spectrumArrayAxisH withSpectrumArrayAxisV:(NSArray*)spectrumArrayAxisV withSpectrumArrayAxisA:(NSArray*)spectrumArrayAxisA withSamplingRate:(int)sampRate withNumberOfSamples:(int)numSamples withThreshold:(double)vThreshold;
//----------------------------------
//Running-Speed (RS) estimator (RPM)
//----------------------------------
+(double)rsEstimator:(NSArray*)rawData withSamplingRate:(int)sampRate withNumberOfSamples:(int)numSamples;
//-----------------------------
//Bearing Damage Indicator 0-10
//-----------------------------
+(int)bd_indicator:(NSArray*)rawData withSamplingRate:(int)sampRate withNumberOfSamples:(int)numSamples;
//-------------------------------------
//Fault Frequency Damage Indicator 0-10
//-------------------------------------
+(int)ff_indicator:(NSArray*)rawData withSamplingRate:(int)sampRate withNumberOfSamples:(int)numSamples withDiscreteFreqHz:(double)fault_freq withAccThreshold:(double)accLimit withVelThreshold:(double)velLimit;
//-----------------------------------------------------------------
//Bearing Damage Indicator (0-10) using bearing's fault frequencies
//-----------------------------------------------------------------
+(int)bd_ff_indicator:(NSArray*)rawData withSamplingRate:(int)sampRate withNumberOfSamples:(int)numSamples withBPFI:(double)x_bpfi withBPFO:(double)x_bpfo withBSF:(double)x_bsf withFTF:(double)x_ftf;
...
In your project import vibeFDaD/discreteFDaD.h and use as follow:
#import "vibeFDaD/discreteFDaD.h"
...
//sample use of the Condition Detection from vibration raw data
NSString *conditionStr = [discreteFDaD computeConditionFromSignalRpm: rpm withRawDataArrayAxisH:rawDataArrayAxisH withRawDataArrayAxisV:rawDataArrayAxisV withRawDataArrayAxisA:rawDataArrayAxisA withSamplingRate:sampRate withNumberOfSamples:numSamples withThreshold:vThreshold];
...
...
//-------------------------------
//Condition degradation indicator
//-------------------------------
+(double) degradationIndicatorWithLambda: (double)lambda withAccTrendArray:(NSArray*)accTrendArray withVelTrendArray:(NSArray*)velTrendArray;
//--------------------------------
//Mechanical degradation indicator
//--------------------------------
+(double) degradationIndicatorWithAccTrendArray: (NSArray*)accTrendArray withVelTrendArray:(NSArray*)velTrendArray;
...
In your project import vibeFDaD/degradation.h and use as follow:
#import "vibeFDaD/degradation.h"
...
double degradationIndicator = [degradation degradationIndicatorWithAccTrendArray:acc_array withVelTrendArray:vel_array];
...
Changelog
See what's new added, changed, fixed, improved or updated in the latest versions.
Version 1.02 (14 Oct, 2021)
- Updated Optimized for iOS®15
Version 1.01 (11 Nov, 2020)
- Added Support for simultaneous 3-axis data input
Version 1.0 (7 Jan, 2011)
Initial Release for iOS® based on previous developments: for C++/Windows