Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Ing. Martin Molhanec, CSc. Ing. Roman Mík

Podobné prezentace


Prezentace na téma: "Ing. Martin Molhanec, CSc. Ing. Roman Mík"— Transkript prezentace:

1 Ing. Martin Molhanec, CSc. Ing. Roman Mík
STEP / EXPRESS - Objektově orientovaný ISO standard pro výměnu výrobních dat. Seznámení se standardem Ing. Martin Molhanec, CSc. Ing. Roman Mík

2 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)

3 Hlavní cíle standardu vytvoření jednoho mezinárodního standardu pro celkovou výměnu dat mezi CAD/CAM systémy snaha o popis výrobku v celém jeho životním cyklu popis výrobku musí být nezávislý na jakémkoliv systému oddělení popisu výrobkových dat od jejich implementace

4

5 Metody popisu 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 je EXPRESS language (ISO ).

6 Příklad použití jazyka EXPRESS
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 *);

7 Metody implementace Popisují mapování mezi formální specifikací a reprezentací použitou pro implementaci standardu STEP. V současné době existují následující ISO části: 21 (STEP file format) 22 (Abstract STEP Data Access Interface – SDAI) 23 (C++ Language Binding to the SDAI) 24 (C Language Binding to the SDAI) 25 (Late FORTRAN Binding to the SDAI - nedokončeno) 26 (Interface Definition Language (IDL) Binding to SDAI) 27 (Java™ language-based SDAI) 28 (STEP data in XML) products are under development

8 Aplikační protokoly Aplikační protokoly (AP’s, části STEPu 2xx) definují formální modely pro konkrétní aplikační oblast komplexní datové modely používané k popisu specifického produktu (výrobku) obsahuje soubor schémat datových struktur jež mají být již dále používány v konkrétní oblasti Některé příklady aplikačních protokolů AP201 - Explicit Draughting (přímé rýsování) AP202 - Associative Draughting (asociativní rýsování) AP203: Configuration controlled 3D Design (3D projektování dle zadané konfigurace)

9 Jazyk EXPRESS Je objektově orientovaný Člověku srozumitelný
Vhodný pro počítačové zpracování Je podobný jiným OOPL (object oriented program language) – zejména jazykům definující strukturu objektově orientované databáze Datový model je podobný ERM (Entity-Relationship Model )

10 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)

11 Příklad jazyka EXPRESS-G (Graphical language)

12 Schema Je tvořeno souborem mezi sebou navzájem svázaných (vzájemně se odkazujících) objektů typu ENTITY, jejichž prostřednictvím je možno popsat danou předmětnou oblast. Je to také objekt nejvyšší úrovně zastřešující definice dalších objektů, např. entit.

13 Objekt ENTITY Základní informační objekt Soubor atributů a metod
Formát ENTITY name_of_entity; <text definice třídy> END_ENTITY; Rozlišujeme různé typy atributů explicitní (EXPLICIT) odvozené (DERIVED) inverzní (INVERSE)

14 EXPRESS language (definice bodu)
ENTITY Point; x: REAL; y: REAL; END_ENTITY;

15 EXPRESS language (definice 3D bodu)
ENTITY Point3D SUBTYPE OF (Point); z : REAL; END_ENTITY;

16 Typy dat Základní datové typy Vazby (relace, dědičnost)
prostá data (SIMPLE) agregovaná (AGGREGATE) vyjmenovaná (NAMED) generická (GENERIC) výčtová (ENUMERATION) výběrová (SELECT) Vazby (relace, dědičnost) Pravidla (UNIQUE, WHERE, RULE)

17 Agregované typy Bag : Netříděná kolekce. List : Tříděná kolekce.
Soubor prvků, který může obsahovat jak určitý, tak libovolný počet prvků, které se mohou opakovat. Hodnoty NULL nejsou dovoleny. Duplicitní hodnoty jsou dovoleny. List : Tříděná kolekce. Seznam prvků, který je určen pro definovaný nebo libovolný počet prvků s možností zakázat opakování stejných Hodnoty NULL nejsou dovoleny. Duplicitní hodnoty jsou dovoleny. Set : Netříděná kolekce. Nepřipouští se opakování. Nejsou dovoleny ani hodnoty NULL, ani duplicitní hodnoty. Array : Tříděná kolekce pevné velikosti. Jsou dovoleny hodnoty NULL i duplicitní hodnoty, možno zakázat opakování stejných prvků. a : ARRAY [0:3] OF ARRAY [1:17] OF OPTIONAL INTEGER

18 Více typů dědičnosti ONEOF –potomek může být pouze jednoho podtypu. Je to pouze muž nebo pouze žena. AND – potomek je vždy všemi podtypy. Je to student i zaměstnanec. ANDOR – nedefinuje žádná pravidla. Je to student nebo zaměstnanec nebo student i zaměstnanec.

19 Složitější příklad (*Somerset house–místo, kde se zaznamenávají údaje o narození, sňatcích a úmrtích*) SCHEMA somerset_house; TYPE date = STRING; END_TYPE; TYPE official_number = STRING; END_TYPE; TYPE label = STRING; END_TYPE; TYPE male_or_female = ENUMERATION OF (stud, studmuffin); END_TYPE; (* osoba *) ENTITY subject; forename : label; surname : label; sex : male_or_female; birth_date : date; death_date : OPTIONAL date; DERIVE dead : BOOLEAN := EXISTS (death_date); (* odvozený atribut mrtvý *) WHERE (* pravidlo: osoba není mrtvá nebo zemřela později, než se narodila *) WR1 : NOT dead OR death_date > birth_date; END_ENTITY; pokračování >>

20 Složitější příklad (* všechny registrované sňatky *) ENTITY union;
license : official_number; wife : subject; husband : subject; start_date : date; end_date : optional date; DERIVE divorced : BOOLEAN := EXISTS (end_date); (* odvozený atribut rozvedený *) WHERE WR1 : NOT EXIST (end_date) OR end_date > start_date; WR2 : wife.sex = studmuffin; WR3 : husband.sex = stud; END_ENTITY; pokračování >>

21 Složitější příklad (* potomek *) ENTITY issue; child : subject;
mother : subject; marriage : OPTIONAL union; WHERE WR1 : NOT EXISTS (marriage) OR marriage.wife :=: mother; WR2 : mother.sex = studmuffin; WR3 : NOT EXISTS (marriage) OR marriage.start_date < child.birth_date; END_ENTITY; END_SCHEMA;

22 Příklad definice pohledu pomocí EXPRESS-X
VIEW mother_in_law; (* tchýně *) FROM him, her : subject, birth : issue, knot : union; WHERE knot.husband :=: him; knot.wife :=: her; birth.child :=: her; NOT EXISTS (knot.end_date); SELECT man : label := him.forename; woman : label := her.forename; mum_in_law : subject := birth.mother; END_VIEW;

23 Ukázka formátu souboru pro přenos dat (Physical File)
ISO ; HEADER; /* výměnný soubor */ FILE_DESCRIPTION(); FILE_NAME(); FILE_SCHEMA (('somerset_house')); ENDSEC; DATA; #10=SUBJECT ('George', 'Windsor', .stud., ' ', ' '); #20=SUBJECT ('Queen Mum', 'Something', .studmuffin., ' ', $); #30=SUBJECT ('Queen Elizabeth', 'Windsor', .studmuffin., ' ', $); #40=SUBJECT ('Philip', 'Windsor', .stud., ' ', $); #50=SUBJECT ('Margret', 'Windsor', .studmuffin., ' ', $); #60=SUBJECT ('Charles', 'Windsor', .stud., ' ', $); . . . pokračování >>

24 Ukázka formátu souboru pro přenos dat (Physical File)
#160=UNION ('123', #20, #10, ' ', $); #170=UNION ('345', #30, #40, ' ', $); . . . #210=ISSUE (#30, #20, #160); #220=ISSUE (#50, #20, #160); #230=ISSUE (#60, #30, #170); #380=MOTHER_IN_LAW ('Philip', 'Queen Mum', #20); ENDSEC; END-ISO ;

25 Vývojové nástroje Nástroje k modelování informací poskytují rychlou definici produktových modelů pomocí jazyka EXPRESS, který je základem STEPu. Vývojářské nástroje zjednodušují proces komunikace geometrie STEPu s existujícími databázovými formáty poskytnutím editorů, conformance tools, kompilerů EXPRESS a nástrojů pro definici schémat a rozhraní k ostatním běžným formátům produktových modelů např. k IGES a k programovacím jazykům jako jsou C++ a Java. Nástroje správy dat pomáhají zjednodušit proces výměny dat poskytnutím funkcí vizualizace, překladů, verifikace a opravy dat. Nástroje k publikování CAD dat ve formátu STEP na Internetu pomáhají snížit závislost na hardwarových platformách nebo CAD systémech a snižují náklady datové komunikace.

26 EXPRESS/STEP tools ST-Developer (aktuální verze 9.0)
software firmy STEP Tools, Inc. Slouží pro vytváření aplikací a práci se STEP daty, programování pomocí C/C++. ST-Viewer (aktuální verze 4.0) software firmy STEP Tools, Inc. Interaktivní nástroj pro zobrazování 3D dat produktu a poskytuje uživateli levný přístup k 3D CAD informacím WinSTEP (Version 3.0) University of the Federal Armed Forces J-SDAI LKSoftWare GmbH NIST Expresso National Institute for Standards and Technology EzExpress free

27 EzExpress (editor for STEP definition files)

28 Ukázka rozhraní programu ST-Developer 9.0

29 Ukázka rozhraní programu ST-Viewer 4.0

30 JSDAI STEP – Book AP210

31 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. Objektová bohatost a úplnost jazyka EXPRESS Budoucnost zajištěna integrací s informační oblastí – především jazyka XML 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í.

32 Ing. Martin Molhanec, CSc.
České vysoké učení technické Fakulta elektrotechnická Katedra elektrotechnologie Technická 2 PRAHA 6 Tel:. (++420) WWW:


Stáhnout ppt "Ing. Martin Molhanec, CSc. Ing. Roman Mík"

Podobné prezentace


Reklamy Google