24.08.2013 Views

Open Architecture for Condition Based Maintenance - Engineering ...

Open Architecture for Condition Based Maintenance - Engineering ...

Open Architecture for Condition Based Maintenance - Engineering ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ARL<br />

Penn State<br />

Slide 1<br />

OSA-CBM: OSA CBM: An <strong>Open</strong><br />

System <strong>Architecture</strong> <strong>for</strong><br />

Machinery Monitoring<br />

Structural Health Monitoring COE Inaugural Meeting<br />

– April 13 th 2007 -<br />

Contact at ARL<br />

Mitchell Lebold<br />

814.865.8958 (voice)<br />

814.863.0673 (Fax)<br />

Lebold@psu.edu<br />

http://www.arl.psu.edu


ARL<br />

Penn State<br />

Slide 2<br />

• <strong>Condition</strong> <strong>Based</strong> <strong>Maintenance</strong><br />

(CBM) Systems<br />

• OSA-CBM Development Team<br />

• OSA-CBM <strong>Architecture</strong><br />

– Data and Control<br />

– Data Models<br />

• UML<br />

• AIDL<br />

– Middleware Technologies<br />

• CORBA<br />

• COM/DCOM<br />

• XML over HTTP<br />

– Design Flexibility and Examples<br />

• OSA-CBM Website<br />

Health<br />

Assessment<br />

Faulty<br />

Uncertain<br />

Healthy<br />

<strong>Condition</strong><br />

Monitor<br />

Accelerometer<br />

Data<br />

Band-Pass<br />

Filter<br />

Band-Pass<br />

Filtered<br />

Signal<br />

Half-wave<br />

or<br />

Full-wave<br />

Rectifier<br />

Envelope Detector<br />

Rectified<br />

Signal<br />

Peak-Hold<br />

Smoothing<br />

Envelope<br />

Detected<br />

Signal<br />

Data<br />

Manipulation<br />

N<br />

4<br />

N∑<br />

( ri<br />

− r )<br />

i=<br />

1<br />

NA4<br />

=<br />

2<br />

⎧ m N<br />

1 ⎡<br />

2 ⎤⎫<br />

⎨ ∑∑ ⎢ ( rij<br />

− rj<br />

) ⎥⎬<br />

⎩m<br />

j=<br />

1⎣i= 1 ⎦⎭<br />

Overview<br />

Prognostics<br />

Distributed<br />

Computing<br />

Technology<br />

Data<br />

Acquisition<br />

Traditional<br />

Sensor<br />

Smart Sensor<br />

Decision<br />

Support<br />

Presentation


ARL<br />

Penn State<br />

Slide 3<br />

Typical <strong>Condition</strong> <strong>Based</strong><br />

<strong>Maintenance</strong> System Design


ARL<br />

Penn State<br />

Slide 4<br />

Complex<br />

System Complex<br />

System<br />

Data<br />

Acquisition<br />

Passive/<br />

Smart Sensor<br />

Array<br />

S1<br />

S2<br />

.<br />

.<br />

.<br />

SN<br />

Data<br />

Manipulation<br />

- Pre-processing<br />

- Feature<br />

Extraction<br />

- Signal<br />

Charact.<br />

i<br />

<strong>Condition</strong><br />

Monitor<br />

- Thresholds<br />

- Fuzzy Logic<br />

CBM Systems<br />

Typical CBM System Design:<br />

Health<br />

Assessment<br />

- Component<br />

Specific<br />

Feature<br />

Extraction<br />

- Anomaly &<br />

Diagnostic<br />

Reasoners<br />

Prognostics<br />

- Feature-<strong>Based</strong><br />

Prognostics<br />

- Model-<strong>Based</strong><br />

Prognostics<br />

Physical Models<br />

Automatic<br />

Decision<br />

Reasoning<br />

- Data<br />

Fusion<br />

- Classifier<br />

- Response<br />

Generator<br />

Mission Plans<br />

Human -<br />

Computer<br />

Interface


ARL<br />

Penn State<br />

Slide 5<br />

Complex<br />

System Complex<br />

System<br />

Data<br />

Acquisition<br />

Passive/<br />

Smart Sensor<br />

Array<br />

S1<br />

S2<br />

.<br />

.<br />

.<br />

SN<br />

Data<br />

Manipulation<br />

- Pre-processing<br />

- Feature<br />

Extraction<br />

- Signal<br />

Charact.<br />

General<br />

Concerns:<br />

i<br />

<strong>Condition</strong><br />

Monitor<br />

- Thresholds<br />

- Fuzzy Logic<br />

Health<br />

Assessment<br />

- Component<br />

Specific<br />

Feature<br />

Extraction<br />

- Anomaly &<br />

Diagnostic<br />

Reasoners<br />

CBM Systems<br />

• Complex design<br />

• Propriety algorithms<br />

• Large amounts of data<br />

• Inflexible designs<br />

Prognostics<br />

- Feature-<strong>Based</strong><br />

Prognostics<br />

- Model-<strong>Based</strong><br />

Prognostics<br />

Physical Models<br />

Automatic<br />

Decision<br />

Reasoning<br />

- Data<br />

Fusion<br />

- Classifier<br />

- Response<br />

Generator<br />

Mission Plans<br />

Human -<br />

Computer<br />

Interface


ARL<br />

Penn State<br />

Slide 6<br />

Complex<br />

System Complex<br />

System<br />

Data<br />

Acquisition<br />

Passive/<br />

Smart Sensor<br />

Array<br />

S1<br />

S2<br />

.<br />

.<br />

.<br />

SN<br />

Data<br />

Manipulation<br />

- Pre-processing<br />

- Feature<br />

Extraction<br />

- Signal<br />

Charact.<br />

i<br />

<strong>Condition</strong><br />

Monitor<br />

- Thresholds<br />

- Fuzzy Logic<br />

CBM Systems<br />

Resulting in“Black Box” and<br />

“Stove Pipe” Solutions:<br />

Health<br />

Assessment<br />

- Component<br />

Specific<br />

Feature<br />

Extraction<br />

- Anomaly &<br />

Diagnostic<br />

Reasoners<br />

Prognostics<br />

- Feature-<strong>Based</strong><br />

Prognostics<br />

- Model-<strong>Based</strong><br />

Prognostics<br />

Physical Models<br />

Automatic<br />

Decision<br />

Reasoning<br />

- Data<br />

Fusion<br />

- Classifier<br />

- Response<br />

Generator<br />

Mission Plans<br />

Human -<br />

Computer<br />

Interface


ARL<br />

Penn State<br />

Slide 7<br />

OSA-CBM Development Team


ARL<br />

Penn State<br />

Slide 8<br />

OSA-CBM Development Team<br />

• 2001 - 2 year DUST program sponsored by ONR<br />

and PEO Carriers:<br />

– The Office of Naval Research under research grant<br />

number: N00014-00-1-0155 OSA-CBM Boeing DUST<br />

• Numerous team members and contributors:<br />

Boeing, Caterpillar, Rockwell Automation, Penn<br />

State/ARL, Newport News, Oceana Sensor<br />

Technologies, Rockwell Scientific, MIMOSA, RLW,<br />


ARL<br />

Penn State<br />

Slide 9<br />

OSA-CBM Focus<br />

<strong>Open</strong> System <strong>Architecture</strong> <strong>for</strong> <strong>Condition</strong> <strong>Based</strong> <strong>Maintenance</strong><br />

• Goals of the OSA-CBM program:<br />

– Define and Development open standards <strong>for</strong> distributed<br />

<strong>Condition</strong> <strong>Based</strong> <strong>Maintenance</strong><br />

– Define an open architecture not exclusive to any specific<br />

hardware implementations, operating systems, or software<br />

technology<br />

• Software <strong>Architecture</strong> Description<br />

– Define classical CBM functions and behavior<br />

– Define module interfaces<br />

– Developed multiple middleware implementations


ARL<br />

Penn State<br />

Slide 10<br />

System<br />

Developer/Engineer:<br />

Project Manager:<br />

OEM / Company:<br />

Customer:<br />

Why OSA-CBM?<br />

• Only one non-priority interface to learn<br />

• Standardized in<strong>for</strong>mation exchange methods<br />

• Reduce integration issues<br />

• Increased security<br />

• Remote module instantiation<br />

• Broad choose of technologies<br />

• Reduce time-to-market<br />

• Increase profit margins<br />

• Scalability, upgradability, and<br />

interchangeability<br />

• Broader supplier community<br />

• Increased market competition resulting in<br />

decreased prices


ARL<br />

Penn State<br />

Slide 11<br />

OSA-CBM <strong>Architecture</strong>


ARL<br />

Penn State<br />

Slide 12<br />

<strong>Open</strong> System <strong>Architecture</strong> <strong>for</strong><br />

<strong>Condition</strong> <strong>Based</strong> <strong>Maintenance</strong><br />

• Standardized architecture<br />

<strong>for</strong> health and condition<br />

monitoring systems<br />

• Breaks monitoring system<br />

into functional layers<br />

• OSA-CBM standard<br />

defines I/O <strong>for</strong> each<br />

processing layer<br />

• Promotes scalability and<br />

upgradability<br />

• Modules not confined to<br />

one locale<br />

• Middleware technology<br />

independent<br />

• www.osacbm.org


ARL<br />

Penn State<br />

Slide 14<br />

Components of the<br />

OSA-CBM Framework


ARL<br />

Penn State<br />

Slide 15<br />

EP 1 EP 2<br />

Component<br />

EP 1 EP 2<br />

Component<br />

Generic Component Description<br />

EP 1 EP 2<br />

Component<br />

EP 1 EP 2<br />

Component<br />

OSA-CBM Software Components<br />

… implement the functionality of<br />

individual layers of the architecture<br />

… communicate in a client/server<br />

relationship<br />

… have EntryPoints that serve the<br />

in<strong>for</strong>mation needs of specific clients<br />

… provide access to synchronized data<br />

channel sets and to background<br />

in<strong>for</strong>mation through their interfaces


ARL<br />

Penn State<br />

Slide 16<br />

Interfaces<br />

- ReqXXData<br />

• GetXXData<br />

- GetXXExplanation<br />

- GetXXConfig<br />

EP 1 EP 2<br />

Component<br />

Generic Component Description<br />

Interface Descriptions<br />

Request Data: prompts a measurement or<br />

calculation update<br />

Get Data: returns dynamic measurement<br />

data or a calculated result to the client<br />

Get Explanation: returns a data structure<br />

which describes the input data and data<br />

trans<strong>for</strong>mation processes used in the<br />

calculation of the associated output data set<br />

Get Config.: returns static in<strong>for</strong>mation<br />

about the monitoring system and the<br />

monitored system configuration


ARL<br />

Penn State<br />

Slide 17<br />

<strong>Condition</strong> Monitor Module<br />

CM<br />

Configuration<br />

INI File<br />

OSA-CBM data model supports:<br />

Synchronous, Asynchronous,<br />

Service, and Subscription transfers<br />

OSA-CBM Implementation<br />

(5) Notify (3) Notify<br />

(6) Access (4) Access<br />

Data Manipulation Module<br />

(1) RequestData (2) RequestData<br />

DM<br />

Configuration<br />

INI File<br />

Data Acquisition Module<br />

DA<br />

Configuration<br />

INI File


ARL<br />

Penn State<br />

Slide 18<br />

OSA-CBM Models


ARL<br />

Penn State<br />

Slide 19<br />

Top Level UML Model<br />

util::MIMExtType<br />

+id : MIMKey3<br />

ProcStrType<br />

-child<br />

InPort<br />

-parent 0..1<br />

0..*<br />

MeasLocType<br />

1<br />

0..*<br />

0..*<br />

0..1<br />

-type<br />

0..*<br />

0..*<br />

-inPort<br />

Function -func<br />

+userTag : String<br />

-name : String<br />

0..*<br />

AlgPort<br />

+id : RemoteKey<br />

0..1<br />

PortType<br />

Asset<br />

-child<br />

-by<br />

AssetType<br />

+source<br />

0..*<br />

-outPort<br />

-portType<br />

0..*<br />

0..*<br />

0..1<br />

-serialNo : String<br />

1..*<br />

OutPort<br />

+lastUpdate : OSACBMTime<br />

-dataType : String<br />

-parent<br />

Item<br />

+id : MIMKey2<br />

+userTag : String<br />

1..*<br />

1<br />

0..*<br />

+outPort<br />

-dataEvent<br />

-topItem<br />

Algorithm<br />

+id : RemoteKey<br />

-name : String<br />

-version : String<br />

1<br />

+outPort<br />

0..1<br />

1<br />

+outPort<br />

1..* 1<br />

0..1<br />

-synchEvts 1..*<br />

DataEventSet<br />

+time : OSACBMTime<br />

1..*<br />

1..*<br />

+algorithm<br />

DataEvent<br />

+confid : Double<br />

0..*<br />

OSA-CBM UML Models<br />

+dataEvent<br />

-dataEvent<br />

OutPortSet<br />

1<br />

1<br />

0..1<br />

-eventSet<br />

Segment<br />

-segmGroup : Boolean<br />

SegmentType<br />

«singleton»<br />

Module<br />

1<br />

1..*<br />

+entryPoints<br />

EntryPoint<br />

+entryPtType : String<br />

1<br />

+expl<br />

1<br />

+outPortSet<br />

+eventData<br />

-type<br />

0..1<br />

Explanation<br />

1..*<br />

0..*<br />

0..1<br />

1<br />

-expl<br />

+EP<br />

EventData<br />

1..*<br />

+inputEP<br />

-expl<br />

0..*<br />

da<br />

measEv propEv<br />

dm cm ha pa<br />

data<br />

Organized in general, utility,<br />

and layer packages<br />

RED - Associated classes are exposed by<br />

the data interface<br />

GREEN - Associated classes are exposed<br />

by the explanation<br />

interface<br />

BLUE - Associated classes are exposed by<br />

the configuration interface<br />

BLACK - Associations which are utilized<br />

by all interfaces (common<br />

concepts)<br />

VIOLET - Represents a relationship<br />

between data elements<br />

which is not represented<br />

by the OSACBM<br />

interfaces.<br />

util


ARL<br />

Penn State<br />

Slide 20<br />

OSA-CBM UML Models<br />

UML Modules<br />

top – Top Module, Common Classes<br />

da – Data Acquisition Module<br />

dm – Data Manipulation Module<br />

sd – State Detection Module<br />

ha – Health Assessment Module<br />

pa – Prognostics Assessment Module<br />

ag – Advisory Generation Module<br />

measEv – Measurement Event Module<br />

propEv – Proposed Event Module<br />

data – Data Module<br />

util – Utility Module


ARL<br />

Penn State<br />

Slide 21<br />

UML<br />

enum EntryPointType {<br />

da, dm, cm, ha, pa, ds, other<br />

};<br />

Manual<br />

Conversion<br />

/* Entry point. */<br />

interface EntryPoint {<br />

/* Identification of OSA/CBM layer. */<br />

EntryPointType entryPtType;<br />

/* The set of ports served by this entry point. */<br />

[data] [config] [expl] [async]<br />

OutPortSet outPortSet;<br />

/* Explanation of what sources were used by this module <strong>for</strong> its output. */<br />

[expl]<br />

[optional] Explanation expl;<br />

};<br />

AIDL<br />

Abstract Interface<br />

Document Language<br />

Tags:<br />

• Interface<br />

[data][config]<br />

[expl][org]<br />

UML<br />

syntax<br />

• Class Type<br />

[abstract]<br />

• Multiplicity<br />

[sequence]<br />

[optional]<br />

AIDL Equivalent<br />

1 no optional tag, no sequence<br />

0..1 optional tag, no sequence<br />

1..* no optional tag, sequence<br />

0..* optional tag, sequence


ARL<br />

Penn State<br />

Slide 22<br />

UML<br />

enum EntryPointType {<br />

da, dm, cm, ha, pa, ds, other<br />

}; enum EntryPointType {<br />

da, dm, cm, ha, pa, ds, other<br />

/* Entry }; point. enum */ EntryPointType {<br />

interface EntryPoint da, dm, { cm, ha, pa, ds, other<br />

/* /* Identification Entry }; point. enum<br />

of */ OSA/CBM<br />

EntryPointType<br />

layer. */<br />

{<br />

interface EntryPoint EntryPointType<br />

da, dm, { cm, ha,<br />

entryPtType;<br />

pa, ds, other<br />

/* The /* set /* Identification Entry of ports<br />

}; point. served of */ OSA/CBM by this entry layer. point. */ */<br />

[data] [config] interface [expl] EntryPoint EntryPointType [async] { entryPtType;<br />

/* The /* set OutPortSet<br />

/* Identification Entry COM/DCOM<br />

of COM/DCOM<br />

ports point. served of */ OSA/CBM outPortSet; by this entry layer. point. */ */<br />

/* Explanation [data] [config] interface<br />

of what [expl] sources<br />

EntryPoint EntryPointType [async] were<br />

{<br />

used by entryPtType; this module <strong>for</strong> its output. */<br />

[expl] /* The /* set OutPortSet Identification of ports served of OSA/CBM outPortSet; by this entry layer. point. */ */<br />

[optional] /* Explanation [data] Explanation [config] of what expl; [expl] sources EntryPointType [async] were used by entryPtType; this module <strong>for</strong> its output. */<br />

}; [expl] /* The set OutPortSet of ports served outPortSet; by this entry point. */<br />

[optional] /* Explanation [data] Explanation [config] of what expl; [expl] sources [async] were used by this module <strong>for</strong> its output. */<br />

}; [expl]<br />

OutPortSet outPortSet;<br />

[optional] /* Explanation Explanation of what expl; sources were used by this module <strong>for</strong> its output. */<br />

}; [expl]<br />

[optional] Explanation expl;<br />

};<br />

enum EntryPointType {<br />

da, dm, cm, ha, pa, ds, other<br />

};<br />

AIDL<br />

/* Entry point. */<br />

interface EntryPoint {<br />

/* Identification of OSA/CBM layer. */<br />

EntryPointType entryPtType;<br />

/* The set of ports served by this entry point. */<br />

[data] [config] [expl] [async]<br />

OutPortSet outPortSet;<br />

/* Explanation of what sources were used by this module <strong>for</strong> its output. */<br />

[expl]<br />

[optional] Explanation expl;<br />

};<br />

enum EntryPointType {<br />

da, dm, cm, ha, pa, ds, other<br />

}; enum EntryPointType {<br />

da, dm, cm, ha, pa, ds, other<br />

/* Entry }; point. enum */ EntryPointType {<br />

interface EntryPoint da, dm, { cm, ha, pa, ds, other<br />

/* /* Identification Entry }; point. enum<br />

of */ OSA/CBM<br />

EntryPointType<br />

layer. */<br />

{<br />

interface EntryPoint EntryPointType<br />

da, dm, { cm, ha,<br />

entryPtType;<br />

pa, ds, other<br />

/* The /* set /* Identification Entry of ports<br />

}; point. served of */ OSA/CBM by this entry layer. point. */ */<br />

[data] [config] interface [expl] EntryPoint EntryPointType [async] { entryPtType;<br />

/* The /* set OutPortSet<br />

/* Identification Entry of ports point. served of */ OSA/CBM CORBA<br />

outPortSet; by this entry layer. point. */ */<br />

/* Explanation [data] [config] interface<br />

of what [expl] sources<br />

EntryPoint EntryPointType [async] were<br />

{<br />

used by entryPtType; this module <strong>for</strong> its output. */<br />

[expl] /* The /* set OutPortSet Identification of ports served of OSA/CBM outPortSet; by this entry layer. point. */ */<br />

[optional] /* Explanation [data] Explanation [config] of what expl; [expl] sources EntryPointType [async] were used by entryPtType; this module <strong>for</strong> its output. */<br />

}; [expl] /* The set OutPortSet of ports served outPortSet; by this entry point. */<br />

[optional] /* Explanation [data] Explanation [config] of what expl; [expl] sources [async] were used by this module <strong>for</strong> its output. */<br />

}; [expl]<br />

OutPortSet outPortSet;<br />

[optional] /* Explanation Explanation of what expl; sources were used by this module <strong>for</strong> its output. */<br />

}; [expl]<br />

[optional] Explanation expl;<br />

};<br />

AIDL<br />

AIDL provides the<br />

mechanism <strong>for</strong> porting<br />

to any Middleware<br />

Technologies<br />

Middleware Technologies<br />

enum EntryPointType {<br />

da, dm, cm, ha, pa, ds, other<br />

}; enum EntryPointType {<br />

da, dm, cm, ha, pa, ds, other<br />

/* Entry }; point. enum */ EntryPointType {<br />

interface EntryPoint da, dm, { cm, ha, pa, ds, other<br />

/* /* Identification Entry }; point. enum<br />

of */ OSA/CBM<br />

EntryPointType<br />

layer. */<br />

{<br />

interface EntryPoint EntryPointType<br />

da, dm, { cm, ha,<br />

entryPtType;<br />

pa, ds, other<br />

/* The /* set /* Identification Entry of ports<br />

}; point. served of */ OSA/CBM by this entry layer. point. */ */<br />

[data] [config] interface [expl] EntryPoint EntryPointType [async] XSD { entryPtType;<br />

/* The /* set OutPortSet<br />

/* Identification Entry of ports point. XSD using<br />

served of */ using<br />

OSA/CBM outPortSet; by this entry layer. point. */ */<br />

/* Explanation [data] [config] interface<br />

of what [expl] sources<br />

EntryPoint EntryPointType [async] were<br />

{<br />

used by entryPtType; this module <strong>for</strong> its output. */<br />

[expl] /* The /* set OutPortSet Identification of ports served of OSA/CBM outPortSet; by this entry layer. point. */ */<br />

[optional] /* Explanation [data] Explanation [config] of what expl; [expl] sources EntryPointType [async] were used by entryPtType; this module <strong>for</strong> its output. */<br />

}; [expl] /* Web The set OutPortSet of ports served outPortSet; by Services<br />

this entry point. */<br />

[optional] /* Explanation [data] Explanation [config] of what expl; [expl] sources [async] were used by this module <strong>for</strong> its output. */<br />

}; [expl]<br />

OutPortSet outPortSet;<br />

[optional] /* Explanation Explanation of what expl; sources were used by this module <strong>for</strong> its output. */<br />

}; [expl]<br />

[optional] Explanation expl;<br />

};


ARL<br />

Penn State<br />

Slide 23<br />

Middleware Technologies


ARL<br />

Penn State<br />

Slide 24<br />

Applications<br />

Data<br />

Acquisition<br />

Endsystem<br />

Data<br />

Manipulation<br />

<strong>Condition</strong><br />

Monitor<br />

Middleware Technology<br />

Health<br />

Assessment<br />

Applications<br />

Decision<br />

Support<br />

Domain-Specific Services<br />

Common Services<br />

Distribution Middleware<br />

Infrastructure Middleware<br />

COM/DCOM, CORBA, SOAP, JAVA-RMI,…<br />

}<br />

Benefits<br />

•Hide underlying complexity,<br />

•Share common services,<br />

•Synchronize program execution,<br />

•Balance system load,<br />

•Real-time solutions,<br />

•Cross-language, and<br />

•Cross-plat<strong>for</strong>m support<br />

Domain-Specific Services<br />

Common Services<br />

Distribution Middleware<br />

Infrastructure Middleware<br />

Wired/Wireless Networks<br />

Prognostic<br />

Assessment<br />

Middleware Middleware<br />

Operating System Operating System<br />

}<br />

Distributed Computing ‘Glue’<br />

Software layer between application and<br />

communication networking layer<br />

Endsystem


ARL<br />

Penn State<br />

Slide 25<br />

Middleware Technologies<br />

CORBA<br />

– Common Object Request Broker <strong>Architecture</strong><br />

(CORBA) is the Object Management Group's<br />

answer to the need <strong>for</strong> interoperability among the<br />

rapidly proliferating number of hardware and<br />

software products available today.<br />

– Introduced CORBA 1.1 in 1991<br />

– The OMG's CORBA is a specification, not a<br />

software implementation of a middleware.<br />

– Real-time version available


ARL<br />

Penn State<br />

Slide 26<br />

Middleware Technologies<br />

COM/DCOM<br />

– Component Object Model (COM)/ Distributed<br />

Component Object Model (DCOM) is a Microsoft<br />

Technology to replace Object Linking and<br />

Embedding (OLE) and Dynamic Data Exchange<br />

(DDE).<br />

– DCOM emerged to address COM's shortcomings in<br />

supporting remote components. DCOM is an<br />

extension to COM that allows networked<br />

interaction between two programs even if they are<br />

written in different programming languages.


ARL<br />

Penn State<br />

Slide 27<br />

Benefits of COM/DCOM<br />

• Increased Security<br />

• Remote Module Instantiation<br />

• Standardized In<strong>for</strong>mation<br />

Exchange<br />

• Client Control (lifetime, termination,<br />

Reference,...)<br />

• Internal Pinging Mechanism<br />

COM/DCOM Interfaces:<br />

• requestOutPortSet(id, sink)<br />

• notifyOutPortSet(id, data)<br />

• getTaskStatus(Seconds)<br />

• getExpl(expl)<br />

Use of ID’s:<br />

• Allow flexible/tailored design<br />

• Control how data is updated<br />

• Control how data is processed<br />

COM/DCOM<br />

Sink and Data Pointers:<br />

• Allows asynchronous<br />

communication between<br />

modules<br />

• Contains relevant in<strong>for</strong>mation<br />

about the data: Time, Eng.<br />

Units, Confid., asset and<br />

organizational info…


ARL<br />

Penn State<br />

Slide 28<br />

Gearbox Prognostic<br />

Application<br />

COM/DCOM<br />

Modules Developed:<br />

• DA<br />

• DM<br />

• CM<br />

• HA<br />

• PA<br />

• PL<br />

COM/DCOM


ARL<br />

Penn State<br />

Slide 29<br />

XML over HTTP<br />

Middleware Technologies<br />

– XML (eXtensible Markup Language) is not a<br />

middleware technology, it is simply a userdefinable<br />

data <strong>for</strong>mat<br />

– However, XML may be used with any networking<br />

technology <strong>for</strong> data transfer.<br />

– Tag structure <strong>for</strong>mat similar to HTML<br />

– XML started in 1996 and has been a World Wide<br />

Web Consortium (W3C) recommendation since<br />

February 1998<br />

– Use SOAP or Web Services to transfer data


ARL<br />

Penn State<br />

Slide 30<br />

SOAP Interfaces:<br />

• requestData(request)<br />

• <strong>for</strong>ceNewData(request)<br />

• getAvailableData(request)<br />

XML over SOAP<br />

Benefits of using SOAP<br />

• Plat<strong>for</strong>m Independence<br />

• Language Independence<br />

• Reduced Network<br />

Restrictions<br />

(uses port 80)<br />

• Standardized In<strong>for</strong>mation<br />

Exchange


ARL<br />

Penn State<br />

Slide 31<br />

OSA-CBM Design Flexibility


ARL<br />

Penn State<br />

Slide 32<br />

OSA-CBM Design Examples


ARL<br />

Penn State<br />

Slide 33<br />

Engine<br />

Monitoring<br />

Hardware<br />

<strong>Maintenance</strong> In<strong>for</strong>mation Backbone (MIB)<br />

Example<br />

MIB Demonstration System<br />

MIB Software


ARL<br />

Penn State<br />

Slide 34<br />

OSA-CBM Design Examples


ARL<br />

Penn State<br />

Slide 35<br />

MIMOSA (OSA-CBM) Website


ARL<br />

Penn State<br />

Slide 36<br />

WWW.OSACBM.ORG<br />

WWW.MIMOSA.ORG<br />

OSA-CBM Website<br />

• Documents and<br />

Presentations<br />

• OSA-CBM Models<br />

• UML<br />

• AIDL<br />

• COM/DCOM IDL<br />

• CORBA IDL<br />

• XML Schema<br />

• Training Material<br />

• Developer’s Tools<br />

and Example Code<br />

• Real-time Demo<br />

• Glossary<br />

• Useful References


ARL<br />

Penn State<br />

Slide 37<br />

• This work was supported by:<br />

Acknowledgements<br />

– The Office of Naval Research under research grant<br />

number: N00014-00-1-0155 OSA-CBM Boeing DUST<br />

• OSA/CBM team members and contributors<br />

include: Boeing, Caterpillar, Rockwell Automation,<br />

Penn State, Newport News, Oceana Sensor<br />

Technologies, Rockwell Scientific, MIMOSA…


ARL<br />

Penn State<br />

Slide 38<br />

OSA-CBM: OSA CBM: An <strong>Open</strong><br />

System <strong>Architecture</strong> <strong>for</strong><br />

Machinery Monitoring<br />

Structural Health Monitoring COE Inaugural Meeting<br />

– April 13 th 2007 -<br />

Contact at ARL<br />

Mitchell Lebold<br />

814.865.8958 (voice)<br />

814.863.0673 (Fax)<br />

Lebold@psu.edu<br />

http://www.arl.psu.edu


ARL<br />

Penn State<br />

Slide 39<br />

Backup Slides


ARL<br />

Penn State<br />

Slide 40<br />

MIMOSA and OSA-CBM<br />

MIMOSA is a standard <strong>for</strong> data exchange between<br />

Asset Management systems<br />

OSA-CBM is a specification <strong>for</strong> transactions<br />

between components within a <strong>Condition</strong>-<strong>Based</strong><br />

<strong>Maintenance</strong> system<br />

util::EngUnit<br />

0..1<br />

0..1<br />

-amplEU<br />

-xAxisEU<br />

0..*<br />

0..*<br />

-daAmpl<br />

-daXAxis<br />

WaveForm<br />

+xAxisDelta : Double<br />

#value : Double<br />

-xAxisStart : Double<br />

top::EventData<br />

DAEventData<br />

BLOB<br />

-MEvBlobType<br />

0..*<br />

1<br />

util::MIMExtType<br />

+id : MIMKey3<br />

0..1<br />

+data<br />

1<br />

MEventBlobType<br />

data::BLOB<br />

+contentType : Mime<br />

#data : byte<br />

• The core of the OSA-CBM standard is the<br />

Object Oriented data model, defined using<br />

UML (Unified Modeling Language) syntax<br />

• The OSA-CBM UML data model is a<br />

mapping of key concepts from the MIMOSA<br />

CRIS with extensions <strong>for</strong> diagnostics,<br />

prognostics and data transactions

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!