framework for cad/cam/pdm applications java and all java-based trademarks and logos are trademarks...
Post on 23-Dec-2015
224 Views
Preview:
TRANSCRIPT
Framework for CAD/CAM/PDM Applications
Java and all Java-based trademarks and logos are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries.
JSDAI is a trademark of LKSoftWare GmbH
Lothar Klein LKSoftWare GmbH http://www.lksoft.com
the Synergy of STEP and JavaTM Technology
News from the Standardization
ISO published
ISO/TS 10303-27:2000
"Implementation methods: Java programming language binding to the standard data access interface
with Internet/Intranet extensions"
Standard Data Access Interface(SDAI, ISO 10303-22)
• SDAI defined an Abstract Application Programming Interface (API) for EXPRESS defined data
• Programming Language bindings to• C++ ISO 10303-23• C ISO 10303-24• Fortran (canceled) ISO 10303-25• IDL (on hold) ISO 10303-26• complete Java (TS) ISO 10303-27• lightweight Java (no activity) ISO 10303-29
• Abstract Test Methods for SDAI Implementations (WD)ISO 10303-35
SDAI (Part 22+27) Extensions
applicationdata
dictionary+map data
SdaiSession
RORWROOpr
externalrepo
JSDAI-Server
part21-files
JSDAI-Applications
3D-Viewer
PDMBean
... Reusable SoftwareComponent (Beans)
3D-
JSDAI-Implementation
JSDAI - JDBCBridge
SQL Database
e.g. ORACLE
STEP-Book ... SdaiEdit
SdaiSession
SdaiRepository
SdaiModel
EEntity
owning_model(INV) instances
servers S[1:?]
ESchema_definition
EEntity_definition
parent_schema
underlying_schema
Core SDAI Structure
ECartesian_point EProduct...EAttribute
SDAI_dictionary_schemajsdai.dictionary
SDAI_session_schemajsdai.lang
latebinding
earlybinding
SchemaInstance
associated_models S[0:?]
An application schema
native_schema
(simplified)
Features of JSDAI
• unlimited number of SdaiRepositories, SdaiModels and SchemaInstances
• internet access to JSDAI-Server and JSDAI-SQL bridge
• transaction level 2 (commit, abort, underlying locking)
• JSDAI-Library based on EXPRESS short forms,includes almost all STEP & PLIB schemas (> 100)
• late binding for flexible schema support,based on full featured dictionary (meta data)
• early Binding for easy application programming
• ARM-AIM-Mapping Data + Mapping Operations
• Collaborative usage: SdaiEvent, -Source, -Listener
• 100% pure JavaTM
Repo A Repo B
Model A1,Schema X
Model B1,Schema X
SI AX, Schema XSI BX, Schema X
Model A2,Schema X
Model B1,Schema Y
SI BY, Schema Y
Repository
Model
Entity Instance
JSDAI-Client
known_serversS[1:*]
Persistentstorage
Extended SDAI with Network support
Repository
Model
Entity Instance
JSDAI-Server /JSDAI-SQL-BridgeNetwork
connection
Requirements for STEP databases
• STEP data can be more efficiently stored in specialized files• need to search for *some* kind of data; e.g. person, product,
product_definition_formation (version), product_definition (sub-types)
• no need to search for e.g. detailed geometry don't blow up database tables with instances of types such as cartesian_point
• but *all* data must be integrated together
• merge/extract tools needed from/to exchange structures(STEP-File part21, STEP-XML part28)
STEP DataBase an ongoing project at LKSoft
• a fixed set of 21 SQL tables, suitable for any kind of EXPRESS defined data, including the cumbersome SELECTs, all kind of AGGREGATEs and "complex" instances
• Access through JDBC (= Java SQL API)
• support distributed populations over several databases/repositories
• Based on a "late binding architecture" Fully compatible with - STEP-file (part21)- SDAI (part22)- STEP-XML (part28)
Late binding database architecture
• all entity instances are in one tableattributes are stored in separate tables
• all relations between entities are in one table:direct forward and inverse accessalso in the case of aggregates and selects
• some minimal set of dictionary information:single and complex entities, defined types
• explicit SDAI informationSdaiModel, SchemaInstance, Repository
• preliminary specification in ISO TC184/SC4/WG11/N144 (too be published)
JSDAI-SQL-Bridge
• a middle-tier to link JSDAI clients with STEP-database
• accessing of all entity instances in one SdaiModel at a time
• entity instances without query requirements (e.g. geometry) can be stored in binary large objects (blob) on SdaiModel basis
• just Java
JSDAIClient
RationalDatabase
JSDAI-SQLBridge
(under development)
Merging exchange structures into database
• Data, coming from STEP-File (part21) must be merged with data which is already in the data base
• merging data from different STEP schemas issupported through EXPRESS short forms
• data must be structured so that it can be extracted again into exchange structures. This can be done by
• some intelligent algorithm
• relating the individual instance to intended exchange structures
• grouping data according to SDAI in SdaiModelgrouping SdaiModels to SchemaInstances
Merge
Extract
Products Versions Assignments Persons
Database(integrated)
Exchange structures(STEP-File, -XML)Product-X
Version-1AssignmentPerson-A
Product-XVersion-2AssignmentPerson-A
X 1
2
A
Exchange I Exchange II
SchemaInstance-I SchemaInstance-II
3D-Viewer Bean
based on Java3DTM and IR42 (Geometry and topology)
Comparison of PCB data formats/models
GERBER,HP-GL,DXF
IPC- D350
ODB++,GenCAM
EDIF STEP-AP210
Functionality
Evolution
AP210 activities
• Reference examplesap210_pcb1.stp, a single sided PCBap210_pcb2.stp, a double sided PCB (under work)
• ConverterGERBER => CircuitCAM => AP210
• Development ToolSdaiEdit (AIM instances, ARM view)
• Viewer (editing later)STEP-Book AP210
• GERBER-X export
• visit http://www.ap210.com
AP210 - Reference examples
ap210_pcb1.stp(800 instances)
ap210_pcb2.stp(under work, ~ 1050 instances)
(GERBER=>) CircuitCAM => AP210 Converter
• A kind of re-engineeringGERBER has much less information than AP210 requires
• Restricted to single and double sided PCB
• Requires very "good" GERBER/GERBER-X data- flashed pads- tracks drawn with one aperture- power planes as polygon (not filled)
• Further data preparations needed in CircuitCAM
• 90% of the work done, some connectivity information missing
example: tutor (~7800 instances)
example: tutorCPU (66 000 instances)
STEP-Book AP210
• viewing AP210 data to end users
• intended to support any detail of AP210
• 2D and 3D
• PDM
• assembly, connectivity, different kind of views, ...
• work for local data and for data in remote databases
• need more AP210 data for further testing
• basis for a CAM station for manufacturing
• export to GERBER
• link to CircuitCAM
SdaiEdit
• developer tool to view and edit STEP data on EXPRESS-level
• full support of SDAI conceptsSdaiRepository, SdaiModel, SchemaInstance, Transaction
• walking through STEP data on AIM level
• walking through AIM-data on ARM level
top related