250 likes | 389 Views
STEP/EXPRESS - Objektově orientovaný ISO standard pro výměnu výrobních dat a ještě o kousek víc!. Ing. Martin Molhanec, CSc. Co je to STEP?. ST andard for E xchange of P roduction data. STEP je standard pro výměnu výrobních dat Je to ISO standard ( ISO 10303 ).
E N D
STEP/EXPRESS - Objektově orientovaný ISO standard pro výměnu výrobních dat a ještě o kousek víc! Ing. Martin Molhanec, CSc.
Co je to STEP? • STandard for Exchange of Production data. • STEP je standard pro výměnu výrobních dat • Je to ISO standard (ISO 10303).
Description Methods • Definují jak popsat reálný svět – výrobní data. • Jsou postaveny na analytických metodách softwarového inženýrství. • Používají objektově orientované paradigma. • Základem jeEXPRESS language (ISO 10303-11).
Example of description SCHEMA materials; ENTITY linear_material; name : STRING; young_modulus : REAL; coef_thermal_expansion : REAL; shear_modulus : REAL; yield_stress : REAL; ultimate_stress : REAL; poissons_ratio : REAL; END_ENTITY; END_SCHEMA (* materials *);
Implementation Methods • Popisují mapování mezi formální specifikací a reprezentací použitou pro implementaci standardu STEP. • V současné době existují následující ISO 10303 části: • 21 (STEP file format) • 22 (Abstract STEP Data Access Interface – SDAI) [C++] • 27 (Java™ language-based SDAI) • 28 (STEP data in XML) products are under development
STEP file format ISO-10303-21; HEADER; /*---------------------------------------- * Exchange File generated by ST-DEVELOPER v1.4 * Conforms to ISO 10303-21 */ FILE_DESCRIPTION ((''), '1'); FILE_NAME ('materials_data', '1996-07-01T12:13:37-04:00', (''), (''), 'ST-DEVELOPER v1.4', '', ''); FILE_SCHEMA (('MATERIALS')); ENDSEC; DATA; #10 = LINEAR_MATERIAL ('Alumina', $ , 0.0000067, $ , $ , $, $ ); #20 = LINEAR_MATERIAL ('Ceramic', $ , 0.0000003, $ , $ , $, $ ); ENDSEC; END-ISO-10303-21;
Application Protocols • Aplikační protokoly (AP’s, part series 2xx) definují formální modely pro konkrétní aplikační oblast. • Některé příklady aplikačních protokolů • AP203: Configuration controlled design • AP210:Electronic assembly, interconnect and packaging design • AP212:Electrotechnical design and installation
EXPRESS language • Je objektově orientovaný • Člověku srozumitelný • Vhodný pro počítačové zpracování • Je podobný jiným OOPL (object oriented program language) • Datový model jepodobný ERM (Entity-relationship model)
EXPRESS language • EXPRESS-C (EXPRESS with static and behavioural modelling capabilities) • EXPRESS-G (Graphical language) • EXPRESS-I (Instantiation language) • EXPRESS-M (Mapping definition language) • EXPRESS-P (Process definition language) • EXPRESS-V (Extension of EXPRESS which enables the creation of views) • EXPRESS-X (Merger of M and V)
EXPRESS language(definice bodu) ENTITY Point; x: REAL; y: REAL; END_ENTITY;
EXPRESS language(definice 3D bodu) ENTITY Point3D SUBTYPE OF (Point); z : REAL; END_ENTITY;
Složitější příklad SCHEMA example; TYPE date = ARRAY [1:3] OF INTEGER; END_TYPE; FUNCTION years(d : date) : INTEGER; (* pocita vek *) END_FUNCTION; TYPE hair_type = ENUMERATION OF (brown, black, blonde, redhead, gray, white, bald); END_TYPE;
Složitější příklad ENTITY person; SUPERTYPE OF (ONEOF(male, female)); first_name : STRING; last_name : STRING; nickname : OPTIONAL STRING; birth_date : date; children : SET [0 : ?] OF person; DERIVE age : INTEGER := years(birth_date); INVERSE parents : SET [0 : 2] OF person FOR children; END_ENTITY;
Složitější příklad ENTITY female; SUBTYPE OF (person); husband : OPTIONAL male; maiden_name : OPTIONAL STRING; WHERE WI : (exists(maiden_name) ANDEXISTS(husband)) OR NOT EXISTS(maiden_name); END_ENTITY;
Složitější příklad ENTITY male; SUBTYPE OF (person); wife : OPTIONAL female; END_ENTITY; END_SCHEMA;
Agregované typy • Bag : Netříděná kolekce. Hodnoty NULL nejsou dovoleny. Duplicitní hodnoty jsou dovoleny. • List : Tříděná kolekce. Hodnoty NULL nejsou dovoleny. Duplicitní hodnoty jsou dovoleny. • Set : Netříděná kolekce. Nejsou dovoleny ani hodnoty NULL, ani duplicitní hodnoty. • Array : Tříděná kolekce pevné velikosti. Jsou dovoleny hodnoty NULL i duplicitní hodnoty.
Více typů dědičnosti • ONEOF – definuje, že subtypy jsou vzájemně vyloučeny (mutually exclusive). Entita může být pouze jedním ze subtypů. • AND – definuje, že všechny instance nadtypu vždy obsahují všechny podtypy. • ANDOR – nedefinuje žádná pravidla ohledně počtu subtypů obsažených v nadtypu
EXPRESS/STEP tools • WinSTEP (Version 3.0) • University of the Federal Armed Forces • J-SDAI • LKSoftWare GmbH • NIST Expresso • National Institute for Standards and Technology • EzExpress • free
Závěr • Standard STEP je asi nejvýznamnější krok v oblasti výměny výrobních dat. • Je podporován těmi nejvýznamnějšími výrobci zejména v USA a západní Evropě, např. firmou General Electric, a dalšími. • Nicméně by tento objektově orientovaný standard měl být také v oblasti zájmu všech zájemců o objektově orientované paradigma, protože rozsah a snaha o úplnost objektového modelu je překvapující.
Ing. Martin Molhanec, CSc. České vysoké učení technické Fakulta elektrotechnická Katedra elektrotechnologie Technická 2 166 27 PRAHA 6 Tel:. (++420) 224352118 Email: molhanec@fel.cvut.cz WWW: http://martin.feld.cvut.cz/~mmm